@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:wght@600;700&display=swap');
:root{--maroon:#6c1721;--maroon-dark:#3f0d14;--maroon-soft:#8f2934;--gold:#bd8a32;--gold-light:#e4c276;--ivory:#f7f2e8;--paper:#fffdf8;--ink:#27211f;--muted:#756b65;--line:#e8dcc8;--green:#237354;--red:#b13b42;--shadow:0 18px 48px rgba(61,32,20,.11);--radius:18px}*{box-sizing:border-box}html{font-size:16px}body{margin:0;font-family:'DM Sans',Arial,sans-serif;color:var(--ink);background:var(--ivory)}a{color:inherit}button,input,select,textarea{font:inherit}button{cursor:pointer}.auth-body{min-height:100vh;display:grid;place-items:center;padding:30px;background:radial-gradient(circle at 20% 10%,#fff6dc 0,transparent 32%),linear-gradient(135deg,#360b12,#6a1721 55%,#2b090e)}.auth-shell{width:min(1040px,100%);min-height:610px;display:grid;grid-template-columns:1.05fr .95fr;background:var(--paper);border-radius:28px;overflow:hidden;box-shadow:0 30px 100px rgba(0,0,0,.3)}.auth-visual{position:relative;padding:72px;color:#fff;background:linear-gradient(155deg,rgba(80,10,20,.97),rgba(117,28,36,.92)),url('../images/official-logo.png') center/82% no-repeat}.auth-visual:after{content:"";position:absolute;inset:22px;border:1px solid rgba(228,194,118,.42);border-radius:18px;pointer-events:none}.auth-visual img{width:92px;height:92px;object-fit:contain;background:#fff;border-radius:50%;padding:5px;box-shadow:0 10px 28px rgba(0,0,0,.25)}.auth-visual span,.eyebrow{display:block;margin-top:40px;color:var(--gold-light);font-size:.76rem;line-height:1.2;font-weight:700;letter-spacing:.18em;text-transform:uppercase}.auth-visual h1{margin:14px 0 18px;font-family:'Playfair Display',serif;font-size:3.15rem;line-height:1.02}.auth-visual p{max-width:400px;margin:0;color:#f3e6d2;font-size:1.05rem;line-height:1.7}.auth-card{padding:72px 64px;align-self:center}.auth-card .eyebrow{margin-top:0;color:var(--gold)}.auth-card h2{font-family:'Playfair Display',serif;font-size:2.25rem;margin:10px 0}.muted{color:var(--muted);line-height:1.6}.form-stack{display:grid;gap:18px;margin-top:28px}.form-stack label,.form-grid label{display:grid;gap:8px;color:#5a4d47;font-size:.88rem;font-weight:700}.form-stack input,.form-grid input,.form-grid select,.form-grid textarea,.searchbar input,.upload-inline input,.inline-form select{width:100%;border:1px solid var(--line);border-radius:11px;background:#fff;padding:12px 13px;min-height:46px;color:var(--ink);outline:none}.form-stack input:focus,.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus,.searchbar input:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(189,138,50,.14)}.form-grid textarea{min-height:110px;resize:vertical}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:11px;padding:11px 16px;min-height:43px;border:1px solid transparent;font-weight:700;text-decoration:none;transition:.18s}.btn.primary{background:linear-gradient(135deg,var(--maroon),var(--maroon-soft));color:#fff;box-shadow:0 8px 18px rgba(108,23,33,.2)}.btn.primary:hover{transform:translateY(-1px);box-shadow:0 12px 24px rgba(108,23,33,.25)}.btn.outline{background:#fff;border-color:var(--line);color:var(--maroon)}.btn.ghost{background:#f6efe2;color:var(--maroon)}.auth-note{margin:26px 0 0;color:var(--muted);font-size:.84rem}.auth-note a{color:var(--maroon);font-weight:700}.alert{margin:16px 0;border-radius:12px;padding:13px 15px;font-weight:600}.alert.success{background:#e8f7ef;color:#185e43;border:1px solid #bce4d0}.alert.danger{background:#fff0f0;color:#8c2028;border:1px solid #efc6c8}.admin-body{min-height:100vh;background:#f3efe7}.sidebar{position:fixed;z-index:30;inset:0 auto 0 0;width:280px;display:flex;flex-direction:column;background:linear-gradient(180deg,#4b0f17,#2f090e);color:#fff;box-shadow:10px 0 40px rgba(45,13,18,.1)}.brand{display:flex;align-items:center;gap:12px;padding:24px 22px 17px}.brand img{width:48px;height:48px;border-radius:50%;object-fit:contain;background:#fff;padding:2px}.brand div{display:grid}.brand strong{font-family:'Playfair Display',serif;font-size:1.1rem}.brand span{color:#dcbf83;font-size:.78rem}.portal-label{margin:0 20px 10px;padding:8px 10px;border:1px solid rgba(228,194,118,.25);border-radius:8px;text-align:center;color:#e4c276;font-size:.67rem;font-weight:700;letter-spacing:.13em;text-transform:uppercase}.sidebar nav{display:grid;gap:3px;padding:6px 12px 20px;overflow:auto}.sidebar nav a{display:flex;align-items:center;gap:11px;padding:10px 12px;border-radius:10px;color:#e9deda;text-decoration:none;font-size:.89rem;font-weight:600}.sidebar nav a:hover{background:rgba(255,255,255,.07)}.sidebar nav a.active{color:#401016;background:linear-gradient(90deg,#e0b969,#f2d894);box-shadow:0 8px 22px rgba(0,0,0,.16)}.nav-icon{width:20px;height:20px;display:grid;place-items:center;border:1px solid currentColor;border-radius:6px;opacity:.8}.nav-icon:before{content:"◆";font-size:.52rem}.user-card{margin:auto 16px 18px;padding:13px;display:flex;gap:11px;align-items:center;border:1px solid rgba(255,255,255,.11);border-radius:13px;background:rgba(255,255,255,.05)}.avatar{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:var(--gold);color:#351015;font-weight:800}.user-card>div:last-child{display:grid;min-width:0}.user-card strong{font-size:.84rem;overflow:hidden;text-overflow:ellipsis}.user-card span{color:#d2bfc0;font-size:.73rem;text-transform:capitalize}.main{min-height:100vh;margin-left:280px;display:flex;flex-direction:column}.topbar{position:sticky;top:0;z-index:20;min-height:86px;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:14px 30px;background:rgba(255,253,248,.92);border-bottom:1px solid var(--line);backdrop-filter:blur(14px)}.topbar>div{display:flex;align-items:center;gap:12px}.topbar span{display:block;color:var(--gold);font-size:.7rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.topbar h1{margin:3px 0 0;font-family:'Playfair Display',serif;font-size:1.75rem}.top-actions{display:flex;gap:9px}.menu-button,.mobile-close{display:none;border:0;background:transparent;color:inherit;font-size:1.5rem}.content{width:min(1500px,100%);margin:0 auto;padding:26px 30px 60px}.hero-panel{position:relative;overflow:hidden;display:flex;justify-content:space-between;align-items:center;gap:30px;padding:34px 38px;border-radius:22px;color:#fff;background:linear-gradient(120deg,#4a0d16,#7d1d29 65%,#9a5f25);box-shadow:var(--shadow)}.hero-panel:after{content:"";position:absolute;width:330px;height:330px;border:1px solid rgba(255,255,255,.17);border-radius:50%;right:-140px;top:-150px}.hero-panel .eyebrow{margin:0}.hero-panel h2{font-family:'Playfair Display',serif;font-size:2.15rem;max-width:760px;margin:9px 0 10px;line-height:1.15}.hero-panel p{max-width:780px;margin:0;color:#f4e9dc;line-height:1.6}.hero-seal{position:relative;z-index:1;flex:0 0 auto;width:120px;height:120px;border:1px solid rgba(255,255,255,.28);border-radius:50%;padding:10px}.hero-seal img{width:100%;height:100%;object-fit:contain;border-radius:50%;background:#fff}.hero-panel.compact{padding:28px 34px}.channel-count{position:relative;z-index:1;min-width:160px;text-align:center;padding:18px;border-radius:16px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2)}.channel-count strong{display:block;font-size:2.5rem;font-family:'Playfair Display',serif;color:#f0d598}.channel-count span{font-size:.75rem;text-transform:uppercase;letter-spacing:.1em}.metrics-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:15px;margin:20px 0}.metric{padding:18px 19px;border-radius:16px;background:var(--paper);border:1px solid var(--line);box-shadow:0 8px 24px rgba(65,41,28,.05)}.metric span,.metric small{display:block;color:var(--muted);font-size:.76rem}.metric strong{display:block;margin:7px 0 4px;font-size:1.8rem;color:var(--maroon)}.metric.gold strong{color:#9b6b1f}.metric.green strong{color:var(--green)}.metric.maroon{background:#651721;border-color:#651721}.metric.maroon span,.metric.maroon small{color:#ead6d7}.metric.maroon strong{color:#f2d389}.grid{display:grid;gap:18px;margin-top:18px}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.panel{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 8px 28px rgba(75,45,28,.055);overflow:hidden}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 22px;border-bottom:1px solid var(--line)}.panel-head span{color:var(--gold);font-size:.68rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.panel-head h3,.panel-head>h3{margin:3px 0 0;font-family:'Playfair Display',serif;font-size:1.32rem}.work-list{display:grid}.work-list a{display:grid;grid-template-columns:52px 1fr;align-items:center;gap:8px;padding:16px 22px;text-decoration:none;border-bottom:1px solid var(--line)}.work-list a:last-child{border:0}.work-list b{font-size:1.25rem;color:var(--maroon)}.work-list span{color:var(--muted)}.check-list{list-style:none;display:grid;gap:13px;margin:0;padding:22px}.check-list li{position:relative;padding-left:28px}.check-list li:before{content:"✓";position:absolute;left:0;top:-1px;width:19px;height:19px;display:grid;place-items:center;border-radius:50%;background:#e4f4ec;color:var(--green);font-size:.72rem;font-weight:900}.page-actions{display:flex;justify-content:space-between;gap:12px;margin-bottom:18px}.searchbar{display:flex;gap:9px;width:min(560px,100%)}.form-panel{margin-bottom:18px}.form-panel summary{padding:18px 22px;font-family:'Playfair Display',serif;font-size:1.28rem;font-weight:700;cursor:pointer;background:linear-gradient(90deg,#fffaf0,#fff)}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding:22px;border-top:1px solid var(--line)}.form-grid .wide{grid-column:1/-1}.form-grid fieldset{border:1px solid var(--line);border-radius:12px;padding:13px}.form-grid legend{padding:0 8px;color:var(--maroon);font-weight:700}.checks{display:flex;gap:18px;flex-wrap:wrap}.checks label{display:flex;align-items:center;gap:7px}.checks input{width:auto;min-height:auto}.form-grid small{font-weight:400;color:var(--muted)}.table-panel{margin-top:18px}.table-wrap{overflow:auto}.table-wrap table{width:100%;border-collapse:collapse;min-width:760px}.table-wrap th{padding:12px 16px;text-align:left;background:#f7f0e5;color:#66574f;font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}.table-wrap td{padding:14px 16px;border-top:1px solid var(--line);vertical-align:middle;font-size:.86rem}.table-wrap td b,.table-wrap td small{display:block}.table-wrap td small{margin-top:3px;color:var(--muted);font-size:.72rem}.actions{display:flex!important;gap:7px;align-items:center}.actions form{margin:0}.mini{border:1px solid #dccaa9;border-radius:8px;background:#fff9ed;color:var(--maroon);padding:7px 10px;font-size:.73rem;font-weight:800;white-space:nowrap}.mini.danger{background:var(--maroon);color:#fff;border-color:var(--maroon)}.inline-form{display:flex;gap:5px}.inline-form select{min-height:32px;padding:5px 7px;width:105px;font-size:.72rem}.status{display:inline-flex;padding:5px 8px;border-radius:999px;background:#eee6da;color:#64574f;font-size:.66rem;font-weight:800;text-transform:capitalize;white-space:nowrap}.status-verified,.status-approved,.status-active,.status-published,.status-opted_in,.status-delivered,.status-read{background:#def3e8;color:#176544}.status-draft,.status-review_required,.status-queued,.status-content_required,.status-approval_required{background:#fff0c7;color:#7d5916}.status-failed,.status-opted_out,.status-error,.status-rejected{background:#fde2e2;color:#922d36}.status-created_paused,.status-paused,.status-not_recorded{background:#e9e6f5;color:#5f4f89}.callout{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px}.callout .eyebrow{margin:0;color:var(--gold)}.callout h3{margin:7px 0;font-family:'Playfair Display',serif;font-size:1.5rem}.callout p{margin:0;color:var(--muted);line-height:1.55}.upload-inline{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.upload-inline input{width:auto;max-width:250px}.notice-strip{display:flex;gap:11px;align-items:center;padding:14px 18px;margin-bottom:18px;border-radius:13px;border-left:4px solid var(--gold);background:#fff5d8;color:#67501d}.notice-strip span{color:#7c6a43}.sync-form{padding:0 22px 22px}.link-card{display:grid;gap:15px;padding:22px}.link-card code,.media-card code,.field-note code{display:block;max-width:100%;overflow-wrap:anywhere;padding:9px;border-radius:8px;background:#f2eadc;color:#6b4e24;font-size:.72rem}.steps{display:grid;gap:12px;padding:18px 26px 23px;margin:0}.steps li{padding-left:6px;color:var(--muted)}.empty-state{padding:28px;color:var(--muted)}.media-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:18px}.media-card{overflow:hidden;border:1px solid var(--line);border-radius:15px;background:var(--paper);box-shadow:0 7px 20px rgba(70,40,20,.05)}.media-card>img,.file-tile{width:100%;aspect-ratio:4/3;object-fit:cover;background:#eadcc4}.file-tile{display:grid;place-items:center;color:var(--maroon);font-size:2rem;font-weight:800}.media-card>div:last-child{display:grid;gap:9px;padding:13px}.settings-layout{display:grid;gap:18px}.settings-layout .form-grid{border-top:0}.sticky-save{position:sticky;bottom:18px;justify-self:end;z-index:5}.connection-test{margin-top:14px}.field-note{align-self:end;color:var(--muted);font-size:.76rem}.error-text{color:var(--red)!important}.admin-footer{margin-top:auto;display:flex;justify-content:space-between;gap:16px;padding:17px 30px;color:var(--muted);border-top:1px solid var(--line);background:#eee7da;font-size:.76rem}.sidebar-backdrop{display:none}.mobile-close{margin-left:auto}.legal-body{background:linear-gradient(180deg,#f7f2e8,#fff);min-height:100vh}.legal-header{padding:22px 5vw;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:#fffdf8}.legal-brand{display:flex;align-items:center;gap:12px;text-decoration:none}.legal-brand img{width:54px;height:54px;object-fit:contain}.legal-brand strong{font-family:'Playfair Display',serif;color:var(--maroon);font-size:1.15rem}.legal-brand span{display:block;color:var(--muted);font-size:.75rem}.legal-main{width:min(900px,90vw);margin:50px auto 80px;background:#fff;border:1px solid var(--line);border-radius:22px;box-shadow:var(--shadow);padding:48px}.legal-main .eyebrow{margin:0;color:var(--gold)}.legal-main h1{font-family:'Playfair Display',serif;color:var(--maroon);font-size:2.7rem}.legal-main h2{margin-top:30px;color:var(--maroon);font-family:'Playfair Display',serif}.legal-main p,.legal-main li{color:#5f5651;line-height:1.75}.legal-main code{background:#f5eee2;padding:3px 6px;border-radius:5px}.legal-footer{text-align:center;padding:22px;color:var(--muted);font-size:.78rem}.install-shell{min-height:690px}
@media(max-width:1180px){.metrics-grid{grid-template-columns:repeat(3,1fr)}.media-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:900px){.sidebar{transform:translateX(-105%);transition:.22s}.sidebar.open{transform:translateX(0)}.sidebar.open+.sidebar-backdrop{display:block;position:fixed;z-index:25;inset:0;border:0;background:rgba(28,12,14,.5)}.main{margin-left:0}.menu-button,.mobile-close{display:block}.topbar{padding:13px 18px}.top-actions .ghost{display:none}.content{padding:20px 18px 45px}.grid.two{grid-template-columns:1fr}.metrics-grid{grid-template-columns:repeat(2,1fr)}.media-grid{grid-template-columns:repeat(2,1fr)}.auth-shell{grid-template-columns:1fr;max-width:620px}.auth-visual{padding:42px 48px}.auth-visual h1{font-size:2.4rem}.auth-card{padding:44px 48px}}
@media(max-width:600px){.auth-body{padding:12px}.auth-shell{border-radius:18px}.auth-visual{padding:32px}.auth-visual:after{inset:12px}.auth-visual img{width:70px;height:70px}.auth-visual span{margin-top:25px}.auth-visual h1{font-size:2rem}.auth-card{padding:32px 26px}.topbar{min-height:74px}.topbar h1{font-size:1.35rem}.topbar span{font-size:.57rem}.top-actions .outline{padding:8px 10px;font-size:.75rem}.hero-panel{padding:26px;align-items:flex-start}.hero-panel h2{font-size:1.65rem}.hero-seal{display:none}.metrics-grid{grid-template-columns:1fr 1fr;gap:10px}.metric{padding:14px}.metric strong{font-size:1.45rem}.page-actions,.callout{align-items:stretch;flex-direction:column}.searchbar{width:100%}.form-grid{grid-template-columns:1fr}.form-grid .wide{grid-column:auto}.media-grid{grid-template-columns:1fr}.admin-footer{flex-direction:column;padding:16px 18px}.legal-header{padding:15px 5vw}.legal-main{width:94vw;margin:22px auto 45px;padding:26px}.legal-main h1{font-size:2rem}.channel-count{display:none}.notice-strip{align-items:flex-start;flex-direction:column}}
.legal-header{justify-content:flex-start;gap:14px}.legal-header>a{display:block}.legal-header img{width:58px;height:58px;object-fit:contain}.legal-header>div{display:grid;gap:3px}.legal-header>div span{color:var(--gold);font-size:.68rem;font-weight:800;letter-spacing:.13em;text-transform:uppercase}.legal-header>div b{font-family:'Playfair Display',serif;color:var(--maroon);font-size:1.15rem}.legal-shell{width:min(900px,92vw);margin:50px auto 80px;padding:48px;background:#fff;border:1px solid var(--line);border-radius:22px;box-shadow:var(--shadow)}.legal-shell>.eyebrow{margin:0;color:var(--gold)}.legal-shell h1{margin:10px 0 4px;font-family:'Playfair Display',serif;color:var(--maroon);font-size:2.7rem}.legal-shell h2{margin:30px 0 7px;font-family:'Playfair Display',serif;color:var(--maroon);font-size:1.35rem}.legal-shell p{margin:0;color:#5f5651;line-height:1.75}.legal-shell a{color:var(--maroon);font-weight:700}.legal-date{color:var(--muted)!important;font-size:.85rem}.legal-links{display:flex;gap:10px;flex-wrap:wrap;margin-top:38px;padding-top:22px;border-top:1px solid var(--line)}.legal-links a{padding:9px 12px;border-radius:9px;background:#f5eee2;text-decoration:none;font-size:.82rem}@media(max-width:600px){.legal-shell{width:94vw;margin:22px auto 45px;padding:26px}.legal-shell h1{font-size:2rem}.legal-header img{width:46px;height:46px}.legal-header>div b{font-size:1rem}}

/* v2.2 WhatsApp Automation */
.compact-grid{margin-bottom:14px}.mini.danger{border-color:#b42318;color:#b42318}.mini.danger:hover{background:#fff1f0}.field-note code{word-break:break-all}.form-grid textarea+small{display:block;margin-top:6px;line-height:1.45;color:var(--muted,#6b7280)}button:disabled{opacity:.5;cursor:not-allowed}

/* WhatsApp v2.3 operations */
.wa-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 20px}.wa-tabs a{padding:9px 13px;border:1px solid #e6dcd2;border-radius:8px;background:#fff;color:#582b33;font-size:13px;text-decoration:none}.wa-tabs a.active{background:#711831;color:white;border-color:#711831}.wa-check{display:flex!important;align-items:flex-start;gap:10px;margin:12px 0}.wa-check input{width:auto!important;margin-top:4px;flex-shrink:0}.wa-preview{max-width:560px;white-space:normal;background:#eaf5ec;border:1px solid #cee1d3;border-radius:12px;padding:20px;margin:15px 0;overflow-wrap:anywhere}.wa-thread{display:flex;flex-direction:column;gap:12px;max-height:600px;overflow:auto;background:#f6f3ed;padding:16px;border-radius:12px;margin:16px 0}.wa-bubble{max-width:85%;border-radius:12px;background:#fff;padding:12px 16px;overflow-wrap:anywhere}.wa-bubble.outbound{align-self:flex-end;background:#e0f0e2}.wa-bubble p{margin:8px 0;white-space:normal}.wa-bubble small{font-size:11px;color:#666}.panel details{padding:12px 0;border-bottom:1px solid #eee}.panel h3,.panel h4{margin:12px 0}.panel code{overflow-wrap:anywhere}.btn:disabled{opacity:.5;cursor:not-allowed}.warning{background:#fff4d6;color:#78521c}.table-wrap td{max-width:320px;overflow-wrap:anywhere}
#wa-confirm-dialog{border:1px solid #e7d1b3;border-radius:16px;padding:28px;max-width:min(520px,90vw);color:#382f2c;box-shadow:0 20px 80px #0004}#wa-confirm-dialog::backdrop{background:#291d2466}
