/* FreePDFEdit - Bright Gold Theme */
:root {
  --gold:    #C9A84C;
  --gold-l:  #E8C96A;
  --gold-d:  #9E7A2C;
  --gold-bg: rgba(201,168,76,.1);
  --bg:      #FBF7EE;      /* warm bright cream */
  --bg2:     #F5EDD8;
  --bg3:     #EDE0C4;
  --dark:    #1A1206;
  --dark2:   #2A1E0A;
  --surface: #FFFFFF;
  --surface2:#FFF8EC;
  --border:  #E0CFA0;
  --border2: #C9A84C55;
  --text:    #1A1206;
  --text2:   #4A3A1A;
  --text3:   #7A6640;
  --text4:   #A89060;
  --danger:  #D94040;
  --success: #2A9A52;
  --editor-bg: #D8CCB0;
  --toolbar-h: 52px;
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent}
html{scroll-behavior:smooth}
html,body{height:100%;font-family:'Inter',sans-serif;background:var(--bg);color:var(--text);overflow-x:hidden}
::selection{background:rgba(201,168,76,.3)}
a{text-decoration:none;color:inherit}
img{max-width:100%;display:block}

/* ── Scrollbar ─── */
::-webkit-scrollbar{width:7px;height:7px}
::-webkit-scrollbar-track{background:var(--bg3)}
::-webkit-scrollbar-thumb{background:var(--gold);border-radius:4px}

/* ── Pages ─── */
.page{display:none}
.page.active{display:block}
#pg-editor.active{display:flex;flex-direction:column;height:100vh;overflow:hidden}
#pg-admin.active{display:flex;height:100vh;overflow:hidden}

/* ══ LANDING ════════════════════════════════════════════════ */
.nav{display:flex;align-items:center;justify-content:space-between;padding:1rem 3rem;position:sticky;top:0;z-index:200;background:rgba(251,247,238,.95);backdrop-filter:blur(12px);border-bottom:1px solid var(--border);box-shadow:0 2px 16px rgba(201,168,76,.1)}
.logo{display:flex;align-items:center;gap:10px;cursor:pointer}
.logo-wordmark{height:42px;width:auto;max-width:min(260px,42vw);object-fit:contain}
.logo-text{display:flex;flex-direction:column;line-height:1}
.lb{font-family:'Playfair Display',serif;font-weight:700;font-size:1.1rem;color:var(--dark)}
.ls{font-size:.62rem;color:var(--gold);letter-spacing:.12em;text-transform:uppercase;font-weight:600;margin-top:1px}
.nav-links{display:flex;align-items:center;gap:1.5rem}
.nav-links a{font-size:.875rem;color:var(--text2);transition:color .2s}
.nav-links a:hover{color:var(--gold)}
.btn-outline{background:none;border:1.5px solid var(--gold-d);color:var(--gold-d);padding:.44rem 1rem;border-radius:8px;font-size:.84rem;font-weight:600;cursor:pointer;transition:all .2s;font-family:'Inter',sans-serif}
.btn-outline:hover{background:var(--gold-bg);border-color:var(--gold)}
.btn-gold{background:linear-gradient(135deg,var(--gold-l),var(--gold),var(--gold-d));color:var(--dark);border:none;padding:.46rem 1.1rem;border-radius:8px;font-size:.84rem;font-weight:700;cursor:pointer;transition:all .2s;font-family:'Inter',sans-serif;box-shadow:0 2px 10px rgba(201,168,76,.3)}
.btn-gold:hover{transform:translateY(-1px);box-shadow:0 4px 20px rgba(201,168,76,.45)}
.hamburger{display:none;background:none;border:none;cursor:pointer;padding:.3rem;color:var(--text2)}
.mobile-menu{display:none;position:fixed;inset:0;background:var(--bg2);z-index:300;flex-direction:column;align-items:center;justify-content:center;gap:1.5rem}
.mobile-menu.open{display:flex}
.mobile-menu a,.mobile-menu button{font-size:1.2rem;color:var(--text2);background:none;border:none;cursor:pointer;font-family:'Inter',sans-serif}
.mobile-menu button:hover{color:var(--gold)}
.w100{width:100%}

/* User nav state */
.nav-user-logged{display:flex;align-items:center;gap:.8rem}
.nav-avatar{width:34px;height:34px;background:var(--gold);border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;color:var(--dark);font-size:.82rem}
.nav-username{font-size:.84rem;font-weight:600;color:var(--text2)}
.nav-admin-link{font-size:.78rem;color:var(--gold);font-weight:600;cursor:pointer;border:1px solid var(--gold);border-radius:6px;padding:.25rem .6rem;transition:all .2s}
.nav-admin-link:hover{background:var(--gold-bg)}

/* Hero */
.hero{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:3rem;padding:4rem 3rem 5rem;min-height:calc(100vh - 69px);position:relative;overflow:hidden;max-width:1200px;margin:0 auto}
.hero-bg-rings{position:absolute;inset:0;pointer-events:none;overflow:hidden}
.ring{position:absolute;border-radius:50%;border:1px solid rgba(201,168,76,.15)}
.r1{width:600px;height:600px;top:-150px;right:-150px}
.r2{width:400px;height:400px;top:50px;right:50px}
.r3{width:800px;height:800px;bottom:-300px;left:-200px}
.hero-content{position:relative;z-index:1}
.pill{display:inline-block;background:var(--gold-bg);border:1px solid var(--border2);color:var(--gold-d);font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;font-weight:700;padding:.32rem .9rem;border-radius:100px;margin-bottom:1.4rem}
.hero h1{font-family:'Playfair Display',serif;font-size:clamp(2.2rem,4.5vw,4rem);font-weight:900;line-height:1.1;letter-spacing:-.02em;margin-bottom:1.2rem;color:var(--dark)}
.gold-text{color:var(--gold);display:block}
.hero-sub{font-size:1rem;color:var(--text3);line-height:1.75;margin-bottom:2rem;max-width:500px}
.hero-btns{display:flex;gap:1rem;flex-wrap:wrap;margin-bottom:1.5rem}
.hero-points{display:flex;gap:.55rem;flex-wrap:wrap;margin:0 0 1rem}
.hero-points span{background:var(--surface);border:1px solid var(--border);border-radius:999px;padding:.42rem .8rem;font-size:.74rem;color:var(--text2);font-weight:600;box-shadow:0 2px 8px rgba(0,0,0,.03)}
.btn-gold-lg{display:inline-flex;align-items:center;gap:.55rem;background:linear-gradient(135deg,var(--gold-l),var(--gold),var(--gold-d));color:var(--dark);padding:.9rem 1.8rem;border-radius:12px;font-size:.95rem;font-weight:700;border:none;cursor:pointer;transition:all .22s;font-family:'Inter',sans-serif;box-shadow:0 3px 16px rgba(201,168,76,.3);letter-spacing:.01em}
.btn-gold-lg:hover{transform:translateY(-2px);box-shadow:0 6px 28px rgba(201,168,76,.45)}
.btn-gold-lg.sm{padding:.65rem 1.3rem;font-size:.84rem;border-radius:9px}
.btn-outline-lg{background:none;border:2px solid var(--gold);color:var(--gold-d);padding:.88rem 1.6rem;border-radius:12px;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .22s;font-family:'Inter',sans-serif}
.btn-outline-lg:hover{background:var(--gold-bg);transform:translateY(-1px)}
.trust-row{display:flex;gap:1.2rem;flex-wrap:wrap;font-size:.78rem;color:var(--text3);font-weight:500}
.trust-row span{display:flex;align-items:center;gap:.3rem}

/* Hero visual */
.hero-visual{display:flex;align-items:center;justify-content:center}
.doc-preview-card{background:var(--surface);border:1px solid var(--border);border-radius:16px;box-shadow:0 16px 60px rgba(0,0,0,.12),0 4px 16px rgba(201,168,76,.1);overflow:hidden;width:320px}
.doc-preview-header{background:var(--bg3);padding:.6rem 1rem;display:flex;align-items:center;gap:.6rem;border-bottom:1px solid var(--border)}
.doc-dots{display:flex;gap:.35rem}
.doc-dots span{width:10px;height:10px;border-radius:50%;background:var(--border)}
.doc-preview-title{font-size:.75rem;color:var(--text3);font-weight:500}
.doc-preview-body{padding:1.5rem;display:flex;flex-direction:column;gap:.7rem}
.doc-line{height:8px;background:var(--bg3);border-radius:100px}
.w80{width:80%}.w60{width:60%}.w90{width:90%}.w70{width:70%}.w50{width:50%}
.hl-yellow{background:rgba(255,229,0,.5)}
.hl-gold{background:rgba(201,168,76,.4)}
.doc-sig{padding:.5rem 0}
.doc-sig svg{width:120px;height:40px}

/* Sections */
.section{padding:5rem 3rem}
.sc-inner{max-width:1100px;margin:0 auto}
.section-tag{display:inline-block;background:var(--gold-bg);border:1px solid var(--border2);color:var(--gold-d);font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;font-weight:700;padding:.28rem .85rem;border-radius:100px;margin-bottom:1rem}
.section-h{font-family:'Playfair Display',serif;font-size:clamp(1.7rem,3.5vw,2.6rem);font-weight:700;color:var(--dark);line-height:1.2;margin-bottom:2.5rem}
.section-h em{font-style:italic;color:var(--gold)}
.feat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:1.4rem}
.feat-card{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:1.8rem;transition:all .25s;box-shadow:0 2px 12px rgba(0,0,0,.04)}
.feat-card:hover{border-color:var(--gold);transform:translateY(-4px);box-shadow:0 8px 30px rgba(201,168,76,.15)}
.feat-ico{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:12px;background:var(--gold-bg);border:1px solid var(--border2);color:var(--gold-d);font-size:.9rem;margin-bottom:.9rem;font-weight:800;letter-spacing:.04em}
.feat-card h3{font-family:'Playfair Display',serif;font-size:1rem;font-weight:700;margin-bottom:.5rem;color:var(--dark)}
.feat-card p{font-size:.82rem;color:var(--text3);line-height:1.7}
.alt-section{background:var(--bg2);border-top:1px solid var(--border);border-bottom:1px solid var(--border)}
.seo-copy{display:grid;grid-template-columns:1.1fr .9fr;gap:1.5rem}
.seo-copy p{font-size:.92rem;color:var(--text3);line-height:1.9}
.steps{display:flex;align-items:center;justify-content:center;gap:.8rem;flex-wrap:wrap}
.step{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:2.2rem 1.8rem;max-width:230px;text-align:center;flex:1;min-width:160px}
.step-n{font-family:'Playfair Display',serif;font-size:2.8rem;font-weight:900;color:var(--gold);opacity:.4;line-height:1;margin-bottom:.8rem}
.step h3{font-size:.95rem;font-weight:600;margin-bottom:.4rem;color:var(--dark)}
.step p{font-size:.8rem;color:var(--text3);line-height:1.6}
.step-arr{font-size:1.8rem;color:var(--gold);opacity:.35;flex-shrink:0}
.faq-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.2rem}
.faq-card{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:1.5rem;box-shadow:0 2px 10px rgba(0,0,0,.04)}
.faq-card h3{font-family:'Playfair Display',serif;font-size:1rem;font-weight:700;margin-bottom:.65rem;color:var(--dark)}
.faq-card p{font-size:.82rem;color:var(--text3);line-height:1.75}

/* Footer */
.footer{background:var(--dark);padding:3rem 2rem;border-top:3px solid var(--gold)}
.footer-inner{max-width:1100px;margin:0 auto;display:flex;flex-direction:column;align-items:center;gap:1.4rem;text-align:center}
.footer-brand{display:flex;align-items:center;gap:.9rem}
.footer-wordmark{height:44px;width:auto;max-width:240px;object-fit:contain}
.fb-name{font-family:'Playfair Display',serif;font-weight:700;font-size:.95rem;color:#F0E8D5}
.fb-tag{font-size:.67rem;color:var(--gold);letter-spacing:.1em;text-transform:uppercase}
.footer-links{display:flex;gap:1.5rem;flex-wrap:wrap;justify-content:center}
.footer-links a{font-size:.8rem;color:#8A7A58;transition:color .2s}
.footer-links a:hover{color:var(--gold-l)}
.footer-copy{font-size:.72rem;color:#5A4C2A}

/* ══ EDITOR ═════════════════════════════════════════════════ */
.editor-shell{display:flex;flex-direction:column;height:100vh;overflow:hidden}

/* Toolbar */
.toolbar{display:flex;align-items:center;height:var(--toolbar-h);background:var(--dark2);border-bottom:2px solid var(--gold);padding:0 .8rem;gap:.4rem;overflow-x:auto;overflow-y:hidden;flex-shrink:0}
.tb-left{display:flex;align-items:center;gap:.3rem;flex-shrink:0}
.tb-center{display:flex;align-items:center;gap:2px;flex:1;justify-content:center}
.tb-right{display:flex;align-items:center;gap:.5rem;flex-shrink:0}
.tb-logo{display:flex;align-items:center;gap:.4rem;font-family:'Playfair Display',serif;font-weight:700;font-size:.88rem;color:var(--gold-l);flex-shrink:0;cursor:pointer}
.tb-logo img{border-radius:6px}
.tb-sep{width:1px;height:22px;background:#4A3A1A;margin:0 .3rem;flex-shrink:0}
.tb-divider{width:1px;height:20px;background:#4A3A1A;margin:0 2px;flex-shrink:0}
.tb-btn{display:flex;align-items:center;gap:.3rem;background:none;border:none;color:#C8B48A;font-size:.73rem;cursor:pointer;padding:.34rem .65rem;border-radius:6px;transition:all .14s;white-space:nowrap;font-family:'Inter',sans-serif}
.tb-btn:hover{background:#3A2A0E;color:var(--gold-l)}
.tb-tool{display:flex;align-items:center;gap:.3rem;background:none;border:1px solid transparent;color:#C8B48A;font-size:.72rem;cursor:pointer;padding:.36rem .65rem;border-radius:6px;transition:all .14s;white-space:nowrap;font-family:'Inter',sans-serif}
.tb-tool:hover{background:#3A2A0E;color:var(--gold-l);border-color:#5A4A20}
.tb-tool.active{background:rgba(201,168,76,.18);border-color:var(--gold-d);color:var(--gold-l)}
.tb-tool.active svg{stroke:var(--gold-l)}
label.tb-tool svg,.tb-tool svg{stroke:currentColor}
.tb-opts{display:flex;align-items:center;gap:.4rem;padding:0 .4rem;border-left:1px solid #4A3A1A;margin-left:.2rem}
.tb-num{width:44px;background:#2A1E0A;border:1px solid #5A4A20;color:#F0E0B0;padding:.2rem .3rem;border-radius:5px;font-size:.72rem;text-align:center;font-family:'Inter',sans-serif}
.tb-num:focus{outline:none;border-color:var(--gold)}
.tb-color{width:26px;height:26px;border:1px solid #5A4A20;cursor:pointer;border-radius:5px;background:none;padding:0}
.tb-mini{background:#2A1E0A;border:1px solid #5A4A20;color:#C8B48A;width:28px;height:28px;border-radius:5px;cursor:pointer;font-size:.78rem;display:flex;align-items:center;justify-content:center;transition:all .14s;font-weight:700}
.tb-mini.active{background:var(--gold);color:var(--dark);border-color:var(--gold)}
.tb-sel{background:#2A1E0A;border:1px solid #5A4A20;color:#C8B48A;padding:.2rem .3rem;border-radius:5px;font-size:.7rem;font-family:'Inter',sans-serif;max-width:100px}
.tb-range{accent-color:var(--gold);width:68px}
.tb-label{font-size:.68rem;color:#8A7A58;white-space:nowrap}
.hl-dot{width:18px;height:18px;border-radius:50%;border:2px solid transparent;cursor:pointer;transition:all .13s;flex-shrink:0}
.hl-dot.active,.hl-dot:hover{border-color:#fff;transform:scale(1.2)}
.tb-fname{font-size:.7rem;color:#8A7A58;max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.tb-edits{background:#2A1E0A;border:1px solid #5A4A20;color:#8A7A58;font-size:.63rem;padding:.1rem .4rem;border-radius:100px;white-space:nowrap}
.tb-user{display:flex;align-items:center;gap:.28rem;background:rgba(201,168,76,.12);border:1px solid var(--gold-d);color:var(--gold-l);font-size:.7rem;padding:.28rem .65rem;border-radius:100px;white-space:nowrap}
.btn-done{display:flex;align-items:center;gap:.32rem;background:linear-gradient(135deg,var(--gold-l),var(--gold),var(--gold-d));color:var(--dark);border:none;padding:.44rem .95rem;border-radius:7px;font-weight:700;font-size:.78rem;cursor:pointer;font-family:'Inter',sans-serif;box-shadow:0 2px 8px rgba(201,168,76,.35);white-space:nowrap}
.btn-done:hover{box-shadow:0 4px 16px rgba(201,168,76,.5);transform:translateY(-1px)}

/* Editor body */
.editor-body{display:flex;flex:1;overflow:hidden}

/* Pages pane */
.pages-pane{width:170px;flex-shrink:0;background:var(--dark);border-right:1px solid #3A2A0E;display:flex;flex-direction:column;overflow:hidden}
.pane-hdr{font-size:.62rem;letter-spacing:.12em;text-transform:uppercase;color:#6A5A3A;padding:.6rem .9rem;border-bottom:1px solid #3A2A0E;font-weight:600}
#thumbs-wrap{flex:1;overflow-y:auto;padding:.5rem;display:flex;flex-direction:column;gap:.4rem}
.thumb-item{cursor:pointer;border:2px solid #3A2A0E;border-radius:5px;overflow:hidden;background:#fff;position:relative;transition:border-color .2s}
.thumb-item:hover{border-color:var(--gold-d)}
.thumb-item.active{border-color:var(--gold)}
.thumb-item canvas{width:100%;height:auto;display:block}
.thumb-num{position:absolute;bottom:2px;left:50%;transform:translateX(-50%);background:rgba(0,0,0,.55);color:#fff;font-size:.58rem;padding:1px 5px;border-radius:3px}
.pane-ftr{padding:.5rem;border-top:1px solid #3A2A0E}
.new-pdf-btn{display:flex;align-items:center;gap:.35rem;width:100%;background:#2A1E0A;border:1px dashed #5A4A20;color:#8A7A58;padding:.46rem .55rem;border-radius:6px;font-size:.7rem;cursor:pointer;transition:all .14s;font-family:'Inter',sans-serif}
.new-pdf-btn:hover{border-color:var(--gold);color:var(--gold)}

/* Canvas pane */
.canvas-pane{flex:1;overflow:auto;background:var(--editor-bg);padding:2rem 1.5rem;display:flex;flex-direction:column;align-items:center;position:relative}
#pdf-viewer{display:flex;flex-direction:column;align-items:center;gap:0}
.page-strip-lbl{background:rgba(0,0,0,.35);color:#C8A878;font-size:.62rem;padding:.18rem .6rem;border-radius:100px 100px 0 0;margin-top:1.8rem;align-self:center;letter-spacing:.05em}
.page-strip-lbl:first-child{margin-top:0}
.page-wrap{position:relative;background:#fff;box-shadow:0 6px 30px rgba(0,0,0,.25),0 1px 3px rgba(0,0,0,.1);margin-bottom:2rem;display:block}
.page-wrap.placing{cursor:crosshair!important}
.page-wrap.placing *{cursor:crosshair!important}
.pdf-page-cnv{display:block}
.overlay-cnv{position:absolute;top:0;left:0;pointer-events:none}
.empty-canvas{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;pointer-events:all}
.empty-canvas.hidden{display:none}
.empty-canvas p{color:var(--text3);font-size:.9rem}

/* Placed elements */
.placed-el{position:absolute;z-index:20;cursor:move;user-select:none}
.placed-el:hover{outline:1.5px dashed var(--gold)}
.placed-el .rh{position:absolute;bottom:-5px;right:-5px;width:14px;height:14px;background:var(--gold);border:2px solid var(--dark);border-radius:3px;cursor:se-resize;z-index:25;display:none}
.placed-el:hover .rh{display:block}

/* Text boxes */
.txt-box{position:absolute;z-index:15;cursor:move;border:1.5px dashed rgba(201,168,76,.7);background:rgba(255,255,255,.01);min-height:24px;display:flex;align-items:flex-start;overflow:hidden}
.txt-box.selected{border-color:var(--gold);border-style:solid}
.txt-box textarea{width:100%;border:none;outline:none;background:transparent;resize:none;font-family:Helvetica,sans-serif;padding:2px 4px;overflow:hidden;min-height:24px}
.txt-box .txt-drag-handle{position:absolute;top:-16px;left:0;right:0;height:16px;background:var(--gold);border-radius:4px 4px 0 0;cursor:grab;display:none;align-items:center;justify-content:center;font-size:.6rem;color:var(--dark);font-weight:700;letter-spacing:.06em}
.txt-box:hover .txt-drag-handle{display:flex}

/* Edit-text overlay */
.edit-text-overlay{position:absolute;z-index:18;border:1.5px solid var(--gold);border-radius:2px;cursor:text;background:transparent}
.edit-text-overlay textarea{width:100%;height:100%;border:none;outline:none;background:#fff;font-family:Helvetica,sans-serif;padding:1px 2px;line-height:1.1;resize:none;overflow:hidden}

/* Props pane */
.props-pane{width:210px;flex-shrink:0;background:var(--dark);border-left:1px solid #3A2A0E;display:flex;flex-direction:column;overflow:hidden}
.props-body-inner{padding:.8rem;overflow-y:auto;flex:1}
.props-hint{font-size:.75rem;color:#6A5A3A;text-align:center;margin-top:2rem;line-height:1.6}
.prop-group{margin-bottom:1rem}
.prop-gl{font-size:.62rem;text-transform:uppercase;letter-spacing:.1em;color:#6A5A3A;margin-bottom:.38rem;font-weight:600}
.prop-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:.42rem;gap:.4rem}
.prop-row label{font-size:.72rem;color:#9A8A6A;flex-shrink:0}
.prop-inp{background:#2A1E0A;border:1px solid #5A4A20;color:#F0E0B0;padding:.22rem .35rem;border-radius:5px;font-size:.72rem;font-family:'Inter',sans-serif;flex:1;min-width:0}
.prop-inp:focus{outline:none;border-color:var(--gold)}
.prop-color{width:30px;height:26px;border:1px solid #5A4A20;border-radius:5px;cursor:pointer;background:none;padding:0}
.prop-range{accent-color:var(--gold);width:100%}
.prop-swatches{display:flex;gap:.3rem;flex-wrap:wrap;margin-top:.3rem}
.p-swatch{width:20px;height:20px;border-radius:50%;border:2px solid transparent;cursor:pointer;transition:all .13s}
.p-swatch.active,.p-swatch:hover{border-color:var(--gold-l);transform:scale(1.1)}

/* Loading veil */
.loading-veil{position:absolute;inset:0;background:rgba(26,18,6,.88);display:flex;align-items:center;justify-content:center;z-index:100}
.loading-box{display:flex;flex-direction:column;align-items:center;gap:.9rem}
.spin{width:34px;height:34px;border:3px solid #3A2A0E;border-top-color:var(--gold);border-radius:50%;animation:spin .7s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
.loading-veil p{font-size:.82rem;color:#9A8A6A}

/* Canvas scrollbar */
.canvas-pane::-webkit-scrollbar{width:7px;height:7px}
.canvas-pane::-webkit-scrollbar-track{background:var(--editor-bg)}
.canvas-pane::-webkit-scrollbar-thumb{background:var(--gold-d);border-radius:4px}

/* ══ MODALS ═════════════════════════════════════════════════ */
.overlay{position:fixed;inset:0;z-index:400;background:rgba(26,18,6,.82);backdrop-filter:blur(7px);display:flex;align-items:center;justify-content:center;padding:1rem}
.modal{background:var(--surface);border:1px solid var(--border);border-radius:18px;width:100%;max-width:500px;overflow:hidden;box-shadow:0 20px 60px rgba(0,0,0,.3),0 0 0 1px rgba(201,168,76,.1) inset}
.modal-hdr{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.3rem;border-bottom:1px solid var(--border)}
.modal-hdr h2{font-family:'Playfair Display',serif;font-size:1rem;font-weight:700;color:var(--dark)}
.modal-x{background:none;border:none;font-size:1.35rem;cursor:pointer;color:var(--text3);line-height:1;transition:color .15s}
.modal-x:hover{color:var(--dark)}
.modal-tabs{display:flex;border-bottom:1px solid var(--border)}
.mtab{flex:1;padding:.58rem .4rem;background:none;border:none;color:var(--text3);font-family:'Inter',sans-serif;font-size:.76rem;cursor:pointer;border-bottom:2px solid transparent;transition:all .14s}
.mtab.active{color:var(--gold-d);border-bottom-color:var(--gold)}
.modal-ftr{display:flex;justify-content:flex-end;gap:.55rem;padding:.85rem 1.2rem;border-top:1px solid var(--border)}

/* Sig modal */
.sig-colors{display:flex;gap:.5rem;padding:.7rem 1.2rem .3rem}
.sc{width:26px;height:26px;border-radius:50%;border:2.5px solid transparent;cursor:pointer;transition:all .14s}
.sc.active,.sc:hover{border-color:var(--gold);transform:scale(1.1)}
#sig-canvas{display:block;width:100%;touch-action:none;background:#fff;border-top:1px solid var(--border);border-bottom:1px solid var(--border);cursor:crosshair}
.sig-hint-line{text-align:center;font-size:.7rem;color:#bbb;padding:.28rem;background:#f9f9f9;border-bottom:1px solid var(--border)}
.link-btn{display:block;margin:.4rem auto;background:none;border:none;color:var(--gold-d);font-size:.74rem;cursor:pointer;font-family:'Inter',sans-serif}
.link-btn:hover{text-decoration:underline}
.sig-type-inp{width:100%;margin:.75rem 0 .35rem;padding:.8rem 1.2rem;background:none;border:none;border-bottom:2px solid var(--border);color:var(--dark);font-size:1.25rem;font-family:'Dancing Script',cursive;outline:none;transition:border-color .2s}
.sig-type-inp:focus{border-bottom-color:var(--gold)}
.sig-font-btns{display:flex;gap:.38rem;padding:0 1.2rem .55rem;flex-wrap:wrap}
.sfb{background:var(--bg2);border:1px solid var(--border);color:var(--text2);padding:.22rem .6rem;border-radius:5px;font-size:.72rem;cursor:pointer;transition:all .14s;font-family:'Inter',sans-serif}
.sfb.active{border-color:var(--gold);color:var(--gold-d);background:var(--gold-bg)}
#sig-preview{display:block;width:100%;height:100px;background:#fff;border-top:1px solid var(--border)}
.import-zone{display:flex;flex-direction:column;align-items:center;gap:.45rem;padding:1.4rem;margin:.8rem 1.2rem;border:2px dashed var(--border);border-radius:10px;cursor:pointer;transition:border-color .2s;color:var(--text3);text-align:center}
.import-zone:hover{border-color:var(--gold);color:var(--text2)}
.import-zone span{font-size:.8rem}
.import-zone small{font-size:.68rem;color:var(--text4)}

/* Auth modal */
.auth-modal{max-width:400px}
.auth-brand{display:flex;align-items:center;gap:.9rem;padding:1.3rem 1.3rem .8rem;border-bottom:1px solid var(--border)}
.auth-brand b{font-family:'Playfair Display',serif;font-size:1rem;font-weight:700;color:var(--dark)}
.auth-brand small{font-size:.7rem;color:var(--text3)}
#auth-login,#auth-reg{padding:1.3rem}
.auth-h{font-family:'Playfair Display',serif;font-size:1.2rem;font-weight:700;color:var(--dark);margin-bottom:1.1rem}
.auth-field{margin-bottom:.9rem}
.auth-field label{display:block;font-size:.72rem;color:var(--text3);margin-bottom:.35rem;letter-spacing:.02em;font-weight:500}
.auth-field input{width:100%;background:var(--bg2);border:1.5px solid var(--border);color:var(--dark);padding:.72rem .95rem;border-radius:9px;font-size:.86rem;font-family:'Inter',sans-serif;outline:none;transition:border-color .2s}
.auth-field input:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(201,168,76,.12)}
.auth-err{font-size:.75rem;color:var(--danger);min-height:1.1em;margin-bottom:.4rem}
.btn-gold.lg{padding:.8rem 1rem;font-size:.9rem;border-radius:9px}
.auth-sw{font-size:.75rem;color:var(--text3);text-align:center;margin-top:.9rem}
.auth-sw button{background:none;border:none;color:var(--gold-d);cursor:pointer;font-family:'Inter',sans-serif;font-size:.75rem;font-weight:600;text-decoration:underline}

/* ══ ADMIN ══════════════════════════════════════════════════ */
.admin-shell{display:flex;width:100%;height:100%;overflow:hidden}
.admin-nav{width:220px;flex-shrink:0;background:var(--dark2);border-right:2px solid var(--gold);display:flex;flex-direction:column;padding:1rem 0;overflow:hidden}
.admin-brand{display:flex;align-items:center;gap:.7rem;padding:.7rem 1rem 1.2rem;border-bottom:1px solid #3A2A0E;margin-bottom:.5rem;font-family:'Playfair Display',serif;font-weight:700;font-size:.9rem;color:var(--gold-l)}
.anav-btn{display:block;width:100%;text-align:left;padding:.65rem 1.1rem;background:none;border:none;border-left:3px solid transparent;color:#9A8A6A;font-size:.82rem;cursor:pointer;transition:all .15s;font-family:'Inter',sans-serif}
.anav-btn:hover,.anav-btn.active{background:#2A1E0A;color:var(--gold-l);border-left-color:var(--gold)}
.anav-btn.danger{color:#E07070}
.anav-btn.danger:hover{background:#3A1010;border-left-color:var(--danger)}
.anav-bottom{margin-top:auto;border-top:1px solid #3A2A0E;padding-top:.5rem}
.admin-main{flex:1;overflow-y:auto;padding:2rem;background:var(--bg)}
.atab{display:none}
.atab.active{display:block}
.atab h1{font-family:'Playfair Display',serif;font-size:1.6rem;font-weight:700;color:var(--dark);margin-bottom:1.5rem;border-bottom:2px solid var(--gold);padding-bottom:.6rem;display:inline-block}
.stat-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:1.1rem;margin-bottom:2rem}
.stat-card{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:1.5rem;text-align:center;box-shadow:0 2px 10px rgba(0,0,0,.05);transition:all .2s}
.stat-card:hover{border-color:var(--gold);box-shadow:0 4px 20px rgba(201,168,76,.12)}
.stat-val{font-family:'Playfair Display',serif;font-size:2.2rem;font-weight:900;color:var(--gold);line-height:1}
.stat-lbl{font-size:.75rem;color:var(--text3);margin-top:.4rem;font-weight:500}
.atab-hdr{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem;flex-wrap:wrap;gap:.8rem}
.admin-search{background:var(--surface);border:1.5px solid var(--border);color:var(--text);padding:.55rem 1rem;border-radius:9px;font-size:.82rem;font-family:'Inter',sans-serif;width:260px;outline:none;transition:border-color .2s}
.admin-search:focus{border-color:var(--gold)}
.admin-table-wrap{overflow-x:auto;border-radius:12px;border:1px solid var(--border);box-shadow:0 2px 10px rgba(0,0,0,.05)}
.admin-table{width:100%;border-collapse:collapse;background:var(--surface)}
.admin-table th{background:var(--bg3);padding:.65rem 1rem;text-align:left;font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;color:var(--text3);font-weight:600;border-bottom:1px solid var(--border);white-space:nowrap}
.admin-table td{padding:.65rem 1rem;font-size:.8rem;color:var(--text2);border-bottom:1px solid var(--bg2);vertical-align:middle}
.admin-table tr:last-child td{border-bottom:none}
.admin-table tr:hover td{background:var(--bg2)}
.badge{display:inline-block;padding:.18rem .55rem;border-radius:100px;font-size:.65rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}
.badge-active{background:#D4F5E0;color:#1A6A3A}
.badge-suspended{background:#FDEAEA;color:#A03030}
.badge-admin{background:#FFF3CC;color:#7A5A0A}
.badge-user{background:var(--bg3);color:var(--text3)}
.act-btns{display:flex;gap:.3rem;flex-wrap:nowrap}
.act-btn{padding:.25rem .55rem;border-radius:6px;font-size:.68rem;font-weight:600;cursor:pointer;border:none;transition:all .15s;font-family:'Inter',sans-serif;white-space:nowrap}
.act-btn-suspend{background:#FFF0CC;color:#9A6A00}
.act-btn-suspend:hover{background:#FFE08A}
.act-btn-activate{background:#D4F5E0;color:#1A6A3A}
.act-btn-activate:hover{background:#A8ECC4}
.act-btn-delete{background:#FDEAEA;color:#A03030}
.act-btn-delete:hover{background:#F5C0C0}
.act-btn-admin{background:#EEE8D5;color:#6A5A2A}
.act-btn-admin:hover{background:#E0D0A0}
.act-btn-view{background:var(--gold-bg);color:var(--gold-d)}
.act-btn-view:hover{background:rgba(201,168,76,.2)}

/* ══ TOAST ══════════════════════════════════════════════════ */
.toast{position:fixed;bottom:2rem;left:50%;transform:translateX(-50%) translateY(120px);background:var(--dark2);border:1px solid var(--gold-d);color:#F0E8D5;padding:.62rem 1.3rem;border-radius:100px;font-size:.8rem;z-index:600;transition:transform .35s cubic-bezier(.34,1.56,.64,1);white-space:nowrap;pointer-events:none;box-shadow:0 6px 24px rgba(0,0,0,.3)}
.toast.show{transform:translateX(-50%) translateY(0)}
.toast.success{border-color:var(--success);color:#2A9A52}
.toast.error{border-color:var(--danger);color:var(--danger)}
.toast.gold{border-color:var(--gold);color:var(--gold-l)}

/* ══ RESPONSIVE ═════════════════════════════════════════════ */
@media(max-width:960px){.hero{grid-template-columns:1fr;text-align:center;padding:3rem 1.5rem}.hero-visual{display:none}.props-pane{display:none}.seo-copy{grid-template-columns:1fr}.hero-points{justify-content:center}}
@media(max-width:700px){.nav{padding:.8rem 1.2rem}.nav-links{display:none}.hamburger{display:block}.logo-wordmark{height:34px;max-width:190px}.editor-body{flex-direction:column}.tb-center{overflow-x:auto;justify-content:flex-start}.tb-tool span{display:none}.tb-tool{padding:.38rem .5rem}.tb-fname,.tb-user{display:none!important}.pages-pane{width:100%;height:118px;border-right:none;border-bottom:1px solid #3A2A0E}.pane-hdr{padding:.45rem .75rem}.pane-ftr{display:none}#thumbs-wrap{flex-direction:row;overflow-x:auto;overflow-y:hidden;padding:.45rem;gap:.45rem;align-items:flex-start}.thumb-item{min-width:70px;max-width:70px;flex:0 0 70px}.canvas-pane{padding:.85rem .35rem;align-items:stretch}.page-strip-lbl{margin-top:1rem}.admin-nav{width:60px}.admin-brand span,.anav-btn{font-size:.7rem}.atab h1{font-size:1.3rem}}
@media(max-width:480px){.toolbar{height:auto;min-height:var(--toolbar-h);flex-wrap:wrap;align-items:flex-start;padding:.4rem;gap:.3rem}.tb-left,.tb-center,.tb-right{width:100%}.tb-left{justify-content:space-between}.tb-center{justify-content:flex-start}.tb-right{justify-content:space-between}.tb-btn,.tb-tool{font-size:.68rem}.tb-sep,.tb-divider{display:none}.tb-opts{padding:0;border-left:none;margin-left:0}.tb-logo span{font-size:.8rem}.btn-done{padding:.42rem .8rem;font-size:.74rem}.pages-pane{height:108px}.canvas-pane{padding:.65rem .2rem}.modal{max-height:92vh;overflow:auto}.auth-modal,.modal{border-radius:16px 16px 0 0;position:fixed;bottom:0;max-width:100%}.toast{max-width:calc(100vw - 2rem);white-space:normal;text-align:center}}
