/* Master-only interface. Public website and client portal retain their identity. */
html[data-clientportal=true],html[data-admin=login]{color-scheme:light;--bg:#f4f5fa;--panel:#fff;--panel2:#f2f0fa;--text:#222636;--muted:#626a7b;--gold:#673de6;--accent:#7044ed;--line:#e4e7ef;--danger:#b52c48;--radius:12px;font-family:"Segoe UI",system-ui,sans-serif}
html[data-clientportal=true] body,html[data-admin=login] body{background:var(--bg);color:var(--text)}
.admin-topbar{height:76px;padding:0 30px;display:flex;align-items:center;justify-content:space-between;gap:20px;background:#1e1e26;color:#f7f5ef;border-bottom:1px solid #383640}
.admin-brand{display:flex;align-items:center;gap:12px;min-width:0}.admin-brand img{display:block;width:52px;height:52px;object-fit:contain;filter:brightness(1.35) contrast(1.08)}.admin-brand strong{font-size:17px;letter-spacing:.01em}.admin-brand span{display:block;color:#c2b9d7;font-size:11px;letter-spacing:.13em;text-transform:uppercase;line-height:1.5}
.admin-top-actions{display:flex;align-items:center;gap:14px;font-size:13px}.admin-test{color:#dfc77e;border:1px solid #776542;border-radius:6px;padding:3px 8px;font-size:10px;white-space:nowrap}.admin-topbar .locale,.admin-topbar .btn.secondary{background:transparent;color:#f7f5ef;border:1px solid #565160;box-shadow:none;padding:6px 11px;border-radius:7px}.admin-topbar a:hover{color:#ddcfff}
html[data-clientportal=true] .admin-workspace{width:100%;max-width:none;margin:0;padding:0;display:grid;grid-template-columns:222px minmax(0,1fr);gap:0;min-height:calc(100vh - 76px)}
html[data-clientportal=true] .sidebar{background:#252431;color:#edeaf5;border:0;border-radius:0;padding:27px 14px;position:sticky;top:0;height:calc(100vh - 76px);overflow-y:auto;box-shadow:none}
html[data-clientportal=true] .sidebar-label{font-size:10px;letter-spacing:.14em;color:#aca4c4;padding:0 13px;margin-bottom:17px}
html[data-clientportal=true] .sidebar button{display:flex;align-items:center;gap:12px;width:100%;border:0;border-radius:8px;padding:10px 13px;margin:4px 0;text-align:left;background:transparent;color:#ded9eb;font-size:13px;line-height:1.35;transition:background .18s,color .18s}
html[data-clientportal=true] .sidebar button:hover{background:#353144;color:#fff}html[data-clientportal=true] .sidebar button.active{background:#7044df;color:#fff;box-shadow:0 4px 12px #110a2729}.sidebar svg{width:18px;height:18px;flex-shrink:0}html[data-clientportal=true] .aside-info{color:#bfb6cf;font-size:11px;padding:16px 12px;border-top:1px solid #443d53;margin-top:24px}
html[data-clientportal=true] .content{padding:28px 32px;min-width:0;max-width:1550px;width:100%;margin:0 auto}html[data-clientportal=true] .workspace-title{margin:0 0 24px;align-items:center}html[data-clientportal=true] .workspace-title h1{font-size:26px;letter-spacing:-.035em;line-height:1.2;margin:0 0 5px;color:#222636}html[data-clientportal=true] .workspace-title p{font-size:13px;color:var(--muted);margin:0}
html[data-clientportal=true] h2{font-size:18px;color:var(--text);margin:0 0 16px}html[data-clientportal=true] h3{font-size:17px;margin:7px 0 8px;color:var(--text)}
.admin-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:19px}.admin-metric{position:relative;display:grid;grid-template-columns:40px minmax(0,1fr);grid-template-rows:auto auto;gap:4px 12px;text-align:left;padding:19px;background:#fff;color:var(--text);border:1px solid var(--line);border-radius:12px;box-shadow:0 4px 16px #242c4906;transition:transform .18s,box-shadow .18s}.admin-metric:hover{transform:translateY(-2px);box-shadow:0 8px 20px #242c4911}.metric-icon{grid-row:1/3;display:flex;align-items:center;justify-content:center;background:#f0eafb;color:#7646dd;border-radius:10px;width:40px;height:44px}.metric-icon svg{width:22px;height:22px}.admin-metric:nth-child(2) .metric-icon{background:#e5f7f3;color:#148b78}.admin-metric:nth-child(3) .metric-icon{background:#fff5df;color:#ab7613}.admin-metric:nth-child(4) .metric-icon{background:#ebf1ff;color:#426dcc}.metric-label{font-size:11px;line-height:1.4;color:var(--muted);padding-right:10px}.admin-metric strong{font-size:27px;font-weight:700;line-height:1.2}.metric-arrow{position:absolute;right:12px;top:12px;color:#99a0af;font-size:12px}
.admin-notice{font-size:12px;border-left:3px solid #a48be6;background:#eeebf7;color:#514671;border-radius:0 8px 8px 0;padding:10px 14px;margin-bottom:22px;line-height:1.6}.admin-section{background:white;border:1px solid var(--line);border-radius:12px;padding:20px;margin-bottom:18px}.admin-section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.admin-section-heading h2{margin:0}.admin-overview-bottom{display:grid;grid-template-columns:1fr 1fr;gap:18px}.admin-kicker{text-transform:uppercase;font-size:10px;color:#786493;letter-spacing:.1em}.admin-db{margin:14px 0 0;text-align:right}
html[data-clientportal=true] .card{background:#fff;border:1px solid var(--line);box-shadow:0 4px 16px #242c4905;border-radius:12px;padding:22px}html[data-clientportal=true] .card p{font-size:13px}html[data-clientportal=true] .banner{background:#efedf8;border:1px solid #ded8ed;color:#514671;border-radius:9px;font-size:13px;padding:13px 16px}html[data-clientportal=true] .empty{background:#fafbfe;border:1px dashed #dce0eb;border-radius:9px;padding:30px 20px;color:var(--muted);font-size:13px}html[data-clientportal=true] .empty h3{font-size:15px;color:#485268}
html[data-clientportal=true] .table-wrap{border:1px solid var(--line);border-radius:10px;background:#fff;overflow:auto}html[data-clientportal=true] table{font-size:12px;white-space:normal}html[data-clientportal=true] th{background:#f7f8fb;color:#677085;font-size:11px;letter-spacing:.02em;padding:12px 15px}html[data-clientportal=true] td{padding:13px 15px;border-color:#edf0f5;vertical-align:middle}html[data-clientportal=true] tr:hover td{background:#faf9fe}
html[data-clientportal=true] .btn,html[data-admin=login] .btn{background:#7044df;color:#fff;border:1px solid #7044df;border-radius:8px;box-shadow:none;font-size:13px;padding:10px 16px}html[data-clientportal=true] .btn:hover,html[data-admin=login] .btn:hover{background:#5d30c8;color:#fff}html[data-clientportal=true] .btn.secondary{background:#fff;color:#6040ab;border:1px solid #d9d1ec}html[data-clientportal=true] .btn.danger{background:#fff1f3;color:#a42c45;border-color:#f0cdd5}html[data-clientportal=true] .admin-topbar .btn.secondary{background:transparent;color:#f7f5ef;border-color:#565160}html[data-clientportal=true] .btn.small{padding:6px 11px;font-size:11px}
html[data-clientportal=true] input,html[data-clientportal=true] select,html[data-clientportal=true] textarea,html[data-admin=login] input{background:#fff;border:1px solid #d5dae6;border-radius:8px;color:#252a3a;padding:10px 12px;font-size:14px}html[data-clientportal=true] label,html[data-admin=login] label{font-size:12px;font-weight:600;color:#465065}html[data-clientportal=true] .code{background:#f3f1fa;color:#403758;overflow-wrap:anywhere}html[data-clientportal=true] .settings-list{font-size:13px}html[data-clientportal=true] .setting{border-color:var(--line);overflow-wrap:anywhere}html[data-clientportal=true] .pill{font-size:10px;border-radius:6px}html[data-clientportal=true] .pill.gold{background:#fff4dd;color:#956409;border-color:#eddfbb}html[data-clientportal=true] .security-grid{gap:18px}html[data-clientportal=true] dialog{background:#fff;color:var(--text);border-color:var(--line)}html[data-clientportal=true] .close{color:var(--text)}
html[data-admin=login] #main{min-height:calc(100vh - 76px);display:flex;align-items:flex-start;padding:40px 16px;background:radial-gradient(ellipse at top,#eee7fa,transparent 65%),#f4f5fa}html[data-admin=login] #main>.wrap{width:100%;max-width:430px}html[data-admin=login] .master-auth{display:block;width:100%;max-width:none;margin:0;background:#fff;border:1px solid #e3e0ec;border-radius:16px;box-shadow:0 12px 40px #31244910;overflow:hidden}html[data-admin=login] .auth-copy{text-align:center;padding:26px 28px 0}html[data-admin=login] .auth-copy h1{font-size:25px;line-height:1.25;letter-spacing:-.035em;margin:5px 0 9px;color:#222636}html[data-admin=login] .auth-eyebrow{font-size:10px;letter-spacing:.15em;color:#7755bb;margin:0}html[data-admin=login] .auth-copy .lead{font-size:13px;line-height:1.5;margin:0;color:#677085}html[data-admin=login] .auth-copy .small-text{display:none}html[data-admin=login] .auth-card{border:0;box-shadow:none;border-radius:0;padding:22px 28px 25px;background:white}html[data-admin=login] .form{gap:13px}html[data-admin=login] .help{font-size:11px;line-height:1.5;color:#737c8e;margin:0}html[data-admin=login] .access-help{margin-top:15px;padding-top:13px;border-top:1px solid #eeeaf4}html[data-admin=login] .password-toggle{font-size:11px;color:#6841b9;text-align:left;background:transparent;border:0;padding:0}html[data-admin=login] .form>.btn{width:100%;margin-top:3px}html[data-admin=login] .banner{font-size:12px;background:#f6f1ff;color:#51436c;border:1px solid #ddd3ef}html[data-admin=login] .form-error{color:#b32948;font-size:12px}
@media(min-width:1600px){html[data-clientportal=true] .content{padding:32px 48px}}
@media(max-width:1100px){.admin-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}html[data-clientportal=true] .content{padding:24px}html[data-clientportal=true] .admin-workspace{grid-template-columns:195px minmax(0,1fr)}}
@media(max-width:760px){.admin-topbar{height:66px;padding:0 16px;gap:8px}.admin-brand strong{font-size:14px}.admin-brand img{width:39px;height:42px}.admin-brand{gap:8px}.admin-top-actions{gap:7px}.admin-site-link,.admin-test{display:none}html[data-clientportal=true] .admin-workspace{display:block;min-height:calc(100vh - 66px)}html[data-clientportal=true] .sidebar{position:static;height:auto;display:flex;flex-wrap:nowrap;overflow-x:auto;gap:5px;padding:10px;border-radius:0}html[data-clientportal=true] .sidebar button{flex:0 0 auto;width:auto;padding:9px 12px;margin:0;font-size:12px}html[data-clientportal=true] .sidebar-label,html[data-clientportal=true] .aside-info{display:none}html[data-clientportal=true] .content{padding:22px 16px}.admin-overview-bottom{grid-template-columns:1fr}html[data-clientportal=true] .security-grid{grid-template-columns:1fr}.admin-metrics{gap:10px}.admin-metric{padding:15px;gap:5px 9px}.admin-section{padding:16px}html[data-admin=login] #main{padding:24px 12px;min-height:calc(100vh - 66px)}}
@media(max-width:450px){.admin-brand span{font-size:9px}.admin-top-actions .btn{font-size:11px;padding:6px 9px}.admin-metric{display:grid;grid-template-columns:1fr;padding:14px}.metric-icon{grid-row:auto;width:33px;height:33px;margin-bottom:4px}.metric-label{font-size:10px}.admin-metric strong{font-size:24px}.admin-section-heading .btn{max-width:130px}html[data-clientportal=true] .workspace-title{flex-direction:row;gap:10px}html[data-admin=login] .auth-copy{padding:22px 22px 0}html[data-admin=login] .auth-card{padding:20px 22px}html[data-admin=login] .auth-copy h1{font-size:23px}}
@media(prefers-reduced-motion:reduce){.admin-metric,html[data-clientportal=true] .sidebar button{transition:none}.admin-metric:hover{transform:none}}
html[data-admin=login] .auth-card .form{gap:13px}html[data-admin=login] .auth-card .help{font-size:11px;line-height:1.5;color:#737c8e}

/* Purchase and customer workspace */
html[data-clientportal=true]{color-scheme:light;--bg:#f4f5fa;--panel:#fff;--panel2:#f2f0fa;--text:#222636;--muted:#626a7b;--gold:#673de6;--accent:#7044ed;--line:#e4e7ef;--danger:#b52c48}html[data-clientportal=true] body{background:#f4f5fa;color:#222636}html[data-clientportal=true] #main{min-height:calc(100vh - 128px)}
.checkout-page{padding:32px 0 38px;max-width:1000px}.checkout-heading{margin-bottom:25px}.checkout-heading h1{font-size:29px;letter-spacing:-.035em;line-height:1.25;margin:4px 0 8px}.checkout-heading p{font-size:13px;color:#677085;margin:0;max-width:700px}.checkout-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:22px}.checkout-page .card{background:white;border:1px solid #e4e7ef;border-radius:14px;box-shadow:0 6px 24px #242c4908;padding:26px}.checkout-page h2{font-size:18px;margin:0 0 18px}.checkout-page .form{gap:16px}.checkout-page .help{font-size:11px;line-height:1.6;color:#6c7384}.checkout-page .checkout-notice{padding:13px 14px;background:#f4f0fc;color:#615178;border-radius:8px;margin:20px 0 0}.checkout-account{font-size:13px;margin:0 0 22px}.checkout-price{font-size:32px;font-weight:700;line-height:1.3;margin:16px 0 3px;color:#6134bf}.checkout-price small{font-size:12px;color:#737b8e}.checkout-summary p{font-size:12px}.checkout-summary dl{display:grid;grid-template-columns:1fr 1fr;gap:12px;font-size:12px;padding:18px 0;border-top:1px solid #eeeaf4}.checkout-summary dd{margin:0;text-align:right;color:#454d62}.checkout-summary dt{color:#757c8b}.checkout-summary .btn{display:block;text-align:center}.purchase-page{max-width:700px}.purchase-page h1{font-size:26px;line-height:1.3;margin:8px 0 12px;overflow-wrap:anywhere}.purchase-page .password-toggle{color:#633ca4;border:0;background:transparent;font-size:12px;justify-self:start;padding:0}.service-progress{padding:14px 16px;border:1px solid #e4e7ef;border-radius:10px;background:#faf9fd;margin:16px 0}.service-progress ol{list-style:none;display:flex;flex-wrap:wrap;gap:9px 18px;margin:0;padding:0;font-size:11px;color:#7b7f8d}.service-progress li::before{content:'○';margin-right:6px;color:#a3a5b0}.service-progress li.done{color:#258071}.service-progress li.done::before{content:'✓';color:#258071}.service-progress p{font-size:11px;color:#6b7385;margin:10px 0 0}.selected-plan-note{font-size:11px;border-radius:8px;padding:10px 12px;background:#f4f0fb;color:#684aa0;margin:14px 0 0}.portal-toolbar{display:flex;justify-content:flex-end;margin:-10px 0 15px}html[data-clientportal=true] .stats{gap:15px}html[data-clientportal=true] .stat{background:white;border:1px solid #e4e7ef;border-radius:12px;padding:18px;box-shadow:0 4px 16px #242c4906}html[data-clientportal=true] .stat .value{color:#6540b8;font-size:27px}html[data-clientportal=true] .stat .label{font-size:12px;color:#667084}html[data-clientportal=true] .detail-grid{font-size:12px}html[data-clientportal=true] .client-auth-footer{display:none}html[data-clientportal=true] .admin-workspace{min-height:calc(100vh - 76px)}html[data-clientportal=true] .radio-actions{gap:8px;flex-wrap:wrap}html[data-view=public] .plan-order{display:block;width:100%;background:#7135cc;color:#fff}
@media(max-width:760px){.checkout-grid{grid-template-columns:1fr}.checkout-page{width:calc(100% - 28px);padding-top:24px}.checkout-heading h1{font-size:25px}.checkout-page .card{padding:22px}.checkout-summary{order:-1}.checkout-summary dl{margin:14px 0}.service-progress ol{flex-direction:column;gap:8px}html[data-clientportal=true] .stats{grid-template-columns:repeat(3,minmax(0,1fr))}html[data-clientportal=true] .stat{padding:12px;display:block}html[data-clientportal=true] .stat .label{font-size:10px}html[data-clientportal=true] .stat .value{font-size:22px}html[data-clientportal=true] .admin-workspace{min-height:calc(100vh - 66px)}}
