:root{--accent:#4f46e5;--accent-dark:#4338ca;--accent-soft:#eef2ff;--bg:#f5f7fb;--surface:#fff;--surface-2:#f8fafc;--text:#172033;--muted:#667085;--line:#e6eaf0;--shadow:0 8px 30px rgba(15,23,42,.06);--radius:14px;--sidebar:252px}
html[data-theme="indigo"]{--accent-dark:#4338ca;--accent-soft:#eef2ff}html[data-theme="emerald"]{--accent:#059669;--accent-dark:#047857;--accent-soft:#ecfdf5}html[data-theme="blue"]{--accent:#2563eb;--accent-dark:#1d4ed8;--accent-soft:#eff6ff}html[data-theme="violet"]{--accent:#7c3aed;--accent-dark:#6d28d9;--accent-soft:#f5f3ff}html[data-theme="rose"]{--accent:#e11d48;--accent-dark:#be123c;--accent-soft:#fff1f2}html[data-theme="amber"]{--accent:#d97706;--accent-dark:#b45309;--accent-soft:#fffbeb}html[data-theme="slate"]{--accent:#334155;--accent-dark:#1e293b;--accent-soft:#f1f5f9}html[data-theme="teal"]{--accent:#0f766e;--accent-dark:#115e59;--accent-soft:#f0fdfa}html{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif}*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at 75% -10%,var(--accent-soft),transparent 30%),var(--bg);color:var(--text);font-size:14px;line-height:1.5}aside{position:fixed;z-index:30;inset:0 auto 0 0;width:var(--sidebar);background:linear-gradient(180deg,#111827 0%,#0b1220 100%);color:#e5e7eb;padding:18px 13px;overflow:auto;box-shadow:12px 0 40px rgba(15,23,42,.08)}.brand{display:flex;align-items:center;gap:11px;padding:6px 10px 22px}.brand-mark{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;font-weight:800;color:#fff;background:linear-gradient(135deg,var(--accent),var(--accent-dark));box-shadow:0 8px 20px color-mix(in srgb,var(--accent) 30%,transparent)}.brand strong{display:block;font-size:16px;color:#fff}.brand small{display:block;color:#94a3b8;font-size:10px;margin-top:1px}nav a{display:flex;align-items:center;gap:10px;color:#aeb9cb;text-decoration:none;padding:10px 11px;border-radius:10px;margin:3px 0;font-weight:500;transition:.18s}nav a:hover{background:#1b2941;color:#fff;transform:translateX(2px)}nav a.active{background:linear-gradient(90deg,color-mix(in srgb,var(--accent) 25%,#172033),rgba(255,255,255,.04));color:#fff;box-shadow:inset 3px 0 0 var(--accent)}.nav-icon{width:22px;text-align:center;font-size:15px;color:#9aa8bd}.active .nav-icon{color:#fff}.sidebar-foot{position:sticky;bottom:0;margin:18px 5px 4px;padding:10px 11px;background:#111c2f;border:1px solid #22304a;border-radius:10px;color:#7f8da3;font-size:11px}.status-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#22c55e;margin-right:6px}main{margin-left:var(--sidebar);min-height:100vh}header{position:sticky;top:0;z-index:20;height:72px;background:rgba(255,255,255,.88);backdrop-filter:blur(16px);border-bottom:1px solid rgba(226,232,240,.8);padding:0 28px;display:flex;align-items:center;justify-content:space-between}.header-left{display:flex;align-items:center;gap:12px}.header-kicker{font-size:9px;letter-spacing:.14em;color:var(--accent);font-weight:800;margin-bottom:2px}.header-left b{font-size:15px}.menu-btn{display:none;border:1px solid var(--line);background:#fff;border-radius:9px;padding:8px 10px}.user-chip{display:flex;align-items:center;gap:9px}.avatar{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:var(--accent-soft);color:var(--accent);font-weight:800}.user-chip strong,.user-chip small{display:block}.user-chip strong{font-size:12px}.user-chip small{font-size:10px;color:var(--muted);margin-top:1px}section{padding:28px;max-width:1600px}.page-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:22px}.eyebrow{font-size:10px;letter-spacing:.15em;font-weight:800;color:var(--accent);margin-bottom:4px}h1{font-size:27px;line-height:1.15;margin:0 0 6px;letter-spacing:-.03em}h2{font-size:17px;margin:0 0 4px}h3{font-size:14px;margin:0 0 4px}.muted{color:var(--muted)}.small{font-size:12px}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:18px 0}.card,.panel{background:rgba(255,255,255,.96);border:1px solid var(--line);border-radius:var(--radius);padding:18px;box-shadow:var(--shadow)}.card{position:relative;overflow:hidden}.card:after{content:"";position:absolute;right:-25px;top:-25px;width:90px;height:90px;border-radius:50%;background:var(--accent-soft)}.metric{font-size:27px;font-weight:800;margin:7px 0;letter-spacing:-.03em}.grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.formgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}.field label{display:block;font-size:11px;font-weight:600;color:#667085;margin-bottom:6px}input,select,textarea{width:100%;padding:10px 11px;border:1px solid #d9dee7;background:#fff;border-radius:9px;font:inherit;color:var(--text);outline:none;transition:.15s}input:focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 12%,transparent)}.btn{border:1px solid #d7dde6;background:#fff;color:var(--text);border-radius:9px;padding:9px 13px;cursor:pointer;font:inherit;font-weight:600;transition:.15s}.btn:hover{transform:translateY(-1px);box-shadow:0 5px 14px rgba(15,23,42,.08)}.primary{background:var(--accent);color:#fff;border-color:var(--accent)}.primary:hover{background:var(--accent-dark)}.table{overflow:auto;border:1px solid var(--line);border-radius:11px}table{width:100%;border-collapse:collapse}th,td{padding:11px 12px;border-bottom:1px solid #edf0f4;text-align:left;white-space:nowrap}tr:last-child td{border-bottom:0}tbody tr:hover{background:var(--surface-2)}th{font-size:10px;color:#687386;background:#fafbfc;text-transform:uppercase;letter-spacing:.05em}.flash{padding:11px 13px;background:var(--accent-soft);color:var(--accent-dark);border:1px solid color-mix(in srgb,var(--accent) 18%,#fff);border-radius:9px;margin-bottom:15px}.flash.success{background:#ecfdf3;color:#047857;border-color:#b7ebd1}.actions{display:flex;gap:8px;flex-wrap:wrap}.btn.danger{background:#b42318;color:#fff}.btn.secondary{background:#eef2f6;color:#17202a}.toolbar{display:flex;justify-content:space-between;gap:12px;align-items:end;flex-wrap:wrap}.toolbar form{display:flex;gap:8px;align-items:end;flex-wrap:wrap}.badge{display:inline-block;padding:3px 8px;border-radius:999px;background:var(--accent-soft);color:var(--accent-dark);font-size:11px;font-weight:600}.right{text-align:right}.error{color:#b42318}.receipt{max-width:800px;margin:auto}.print-only{display:none}footer{padding:24px 28px;color:#98a2b3;font-size:11px}.settings-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(360px,.8fr);gap:18px}.settings-panel{margin-bottom:18px}.panel-title{display:flex;justify-content:space-between;align-items:start;margin-bottom:18px}.theme-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.theme-card{display:block;cursor:pointer;border:1px solid var(--line);border-radius:12px;padding:9px;background:#fff;transition:.15s}.theme-card:hover{transform:translateY(-2px);box-shadow:var(--shadow)}.theme-card.selected{border:2px solid var(--accent);padding:8px;box-shadow:0 0 0 3px var(--accent-soft)}.theme-card input{position:absolute;opacity:0;pointer-events:none}.theme-preview{display:block;height:72px;border-radius:8px;background:var(--preview-soft);position:relative;overflow:hidden;border:1px solid #eef1f5}.theme-preview:before{content:"";position:absolute;left:0;top:0;bottom:0;width:22%;background:var(--preview)}.theme-preview i,.theme-preview b,.theme-preview em,.theme-preview strong{position:absolute;display:block;background:#fff;border-radius:4px;height:10px}.theme-preview i{left:29%;right:8%;top:13px}.theme-preview b{left:29%;width:26%;top:31px;height:24px}.theme-preview em{left:59%;width:29%;top:31px;height:24px}.theme-preview strong{left:29%;right:8%;bottom:8px;height:6px;background:var(--preview)}.theme-name{display:block;font-weight:700;font-size:11px;margin-top:8px}.theme-card small{display:block;color:#98a2b3;font-size:9px;margin-top:2px}.custom-accent{display:flex;align-items:center;gap:10px;border-top:1px solid var(--line);margin-top:18px;padding-top:16px}.custom-accent>div{flex:1}.custom-accent input[type=color]{width:42px;height:34px;padding:2px;border-radius:8px;cursor:pointer}.custom-accent code{font-size:11px;color:var(--muted)}.choice-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.choice{display:flex;gap:10px;padding:13px;border:1px solid var(--line);border-radius:10px;cursor:pointer}.choice:has(input:checked){border-color:var(--accent);background:var(--accent-soft)}.choice input{width:auto;margin-top:3px;accent-color:var(--accent)}.choice span,.switch-row span:last-child{display:block}.choice small,.switch-row small{display:block;color:var(--muted);font-size:10px;margin-top:2px}.switch-row{display:flex;align-items:center;gap:10px;margin-top:12px;cursor:pointer}.switch-row input{display:none}.switch{width:38px;height:21px;border-radius:99px;background:#cbd5e1;position:relative;flex:none}.switch:after{content:"";position:absolute;width:17px;height:17px;left:2px;top:2px;border-radius:50%;background:#fff;transition:.15s;box-shadow:0 1px 3px #0002}.switch-row input:checked+.switch{background:var(--accent)}.switch-row input:checked+.switch:after{left:19px}.span2{grid-column:span 2}.settings-form textarea{resize:vertical}.preview-panel{display:flex;overflow:hidden;padding:0;min-height:205px}.preview-sidebar{width:82px;background:#111827;padding:13px}.preview-logo{width:34px;height:34px;border-radius:9px;background:var(--accent);color:#fff;display:grid;place-items:center;font-weight:800;font-size:10px;margin-bottom:22px}.preview-lines i{height:6px;background:#334155;display:block;border-radius:3px;margin:10px 0}.preview-lines i:first-child{background:var(--accent)}.preview-content{flex:1;background:#f8fafc}.preview-top{height:50px;background:#fff;border-bottom:1px solid var(--line);padding:0 14px;display:flex;align-items:center;justify-content:space-between;font-size:9px}.preview-top span{color:#98a2b3}.preview-body{padding:13px;display:grid;grid-template-columns:1fr 1fr;gap:8px}.preview-card{background:#fff;border:1px solid var(--line);border-radius:7px;padding:9px}.preview-card small{display:block;font-size:7px;color:#98a2b3}.preview-card strong{display:block;font-size:16px;margin-top:3px}.preview-chart{grid-column:1/-1;height:66px;background:#fff;border:1px solid var(--line);border-radius:7px;padding:10px;display:flex;align-items:end;gap:5px}.preview-chart span{flex:1;background:var(--accent);border-radius:3px 3px 0 0;opacity:.8}.preview-chart span:nth-child(1){height:30%}.preview-chart span:nth-child(2){height:55%}.preview-chart span:nth-child(3){height:40%}.preview-chart span:nth-child(4){height:75%}.preview-chart span:nth-child(5){height:60%}.preview-chart span:nth-child(6){height:90%}.sticky-actions{position:sticky;bottom:12px;display:flex;align-items:center;gap:12px;background:rgba(255,255,255,.93);backdrop-filter:blur(10px);border:1px solid var(--line);box-shadow:0 10px 35px #0f172a18;padding:11px 13px;border-radius:12px;margin-top:3px;z-index:10}
html[data-sidebar="compact"]{--sidebar:205px}html[data-compact="1"] th,html[data-compact="1"] td{padding:7px 9px}html[data-compact="1"] input,html[data-compact="1"] select,html[data-compact="1"] textarea{padding:8px 9px}.mobile-overlay{display:none}
@media(max-width:1100px){.cards{grid-template-columns:repeat(2,1fr)}.settings-layout{grid-template-columns:1fr}.theme-grid{grid-template-columns:repeat(4,1fr)}}
@media(max-width:900px){.formgrid,.grid{grid-template-columns:1fr 1fr}.menu-btn{display:block}aside{transform:translateX(-105%);transition:.2s}.nav-open aside{transform:translateX(0)}.nav-open .mobile-overlay{display:block;position:fixed;inset:0;z-index:25;background:#0f172a66}main{margin-left:0}header{padding:0 18px}section{padding:20px}}
@media(max-width:650px){.cards,.formgrid,.grid,.choice-row{grid-template-columns:1fr}.theme-grid{grid-template-columns:repeat(2,1fr)}.span2{grid-column:auto}.user-chip span:not(.avatar){display:none}.page-head h1{font-size:23px}.sticky-actions{align-items:flex-start;flex-direction:column}.preview-panel{display:none}section{padding:15px}footer{padding:18px 15px}}
@media print{aside,main>header,footer,.no-print,.sticky-actions{display:none!important}.print-only{display:block}.panel{box-shadow:none;border:1px solid #ddd}}

/* v1.9 visual system */
:root{--accent-rgb:79,70,229;--focus:color-mix(in srgb,var(--accent) 28%,transparent)}
.brand-logo{width:42px;height:42px;object-fit:contain;border-radius:12px;background:#fff;padding:4px;box-shadow:0 8px 24px rgba(0,0,0,.18)}
.brand-copy{min-width:0}.brand-copy strong{max-width:170px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.brand-copy small{max-width:170px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.header-actions{display:flex;align-items:center;gap:12px}.theme-pulse{width:34px;height:34px;border:1px solid var(--line);border-radius:50%;background:var(--surface);color:var(--accent);cursor:pointer;box-shadow:0 4px 14px rgba(15,23,42,.08);font-size:20px;line-height:1;transition:.2s}.theme-pulse:hover{transform:rotate(25deg) scale(1.06)}
button,.btn,input,select,textarea{transition:border-color .18s,box-shadow .18s,transform .18s}.btn:hover{transform:translateY(-1px)}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 4px var(--focus)}
.panel,.card{transition:transform .18s,box-shadow .18s}.panel:hover{box-shadow:0 12px 36px rgba(15,23,42,.08)}.card:hover{transform:translateY(-2px)}
.settings-layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);gap:20px}.settings-panel{margin-bottom:20px}.theme-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.theme-card{position:relative;cursor:pointer;padding:10px;border:1px solid var(--line);border-radius:16px;background:var(--surface);transition:.2s}.theme-card:hover{transform:translateY(-2px);box-shadow:0 10px 28px rgba(15,23,42,.08)}.theme-card.selected{border-color:var(--accent);box-shadow:0 0 0 3px var(--focus)}.theme-card input{position:absolute;opacity:0}.theme-preview{height:78px;display:block;border-radius:11px;background:linear-gradient(135deg,var(--preview-soft),#fff);border:1px solid color-mix(in srgb,var(--preview) 15%,#fff);padding:10px;position:relative;overflow:hidden}.theme-preview i{display:block;width:30%;height:100%;background:#172033;border-radius:6px;opacity:.95}.theme-preview b,.theme-preview em,.theme-preview strong{position:absolute;display:block;background:var(--preview);border-radius:5px}.theme-preview b{left:38%;top:12px;width:48%;height:9px}.theme-preview em{left:38%;top:30px;width:25%;height:22px;background:var(--preview);opacity:.18}.theme-preview strong{left:66%;top:30px;width:20%;height:22px}.theme-name{display:block;font-weight:700;margin-top:9px;font-size:12px}.theme-card small{color:var(--muted);font-size:10px}.custom-accent{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:18px;padding:14px;border:1px dashed var(--line);border-radius:14px;background:var(--surface-2)}.custom-accent input[type=color]{width:48px;height:38px;padding:3px;border:1px solid var(--line);border-radius:9px;background:#fff;cursor:pointer}.custom-accent code{font-size:11px;color:var(--muted)}
.choice-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.choice{display:flex;gap:10px;padding:14px;border:1px solid var(--line);border-radius:13px;cursor:pointer}.choice:has(input:checked){border-color:var(--accent);background:var(--accent-soft)}.choice input{accent-color:var(--accent)}.choice small,.switch-row small{display:block;color:var(--muted);margin-top:2px}.switch-row{display:flex;align-items:center;gap:10px;margin-top:12px;cursor:pointer}.switch-row input{display:none}.switch{width:42px;height:24px;border-radius:20px;background:#cbd5e1;position:relative}.switch:after{content:"";position:absolute;width:18px;height:18px;border-radius:50%;background:#fff;top:3px;left:3px;transition:.2s;box-shadow:0 2px 5px rgba(0,0,0,.15)}.switch-row input:checked+.switch{background:var(--accent)}.switch-row input:checked+.switch:after{left:21px}.preview-panel{display:flex;min-height:220px;overflow:hidden;padding:0}.preview-sidebar{width:28%;background:#111827;padding:16px}.preview-logo{width:34px;height:34px;border-radius:10px;background:var(--accent);color:#fff;display:grid;place-items:center;font-weight:800}.preview-lines{margin-top:20px}.preview-lines i{display:block;height:8px;background:#334155;border-radius:4px;margin:10px 0}.preview-content{flex:1;background:var(--bg);padding:14px}.preview-top{display:flex;justify-content:space-between;font-size:10px}.preview-top span{color:var(--muted)}.preview-body{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:18px}.preview-card{background:#fff;border:1px solid var(--line);border-radius:10px;padding:10px}.preview-card small{display:block;font-size:7px;color:var(--muted)}.preview-card strong{display:block;font-size:17px;margin-top:4px}.preview-chart{grid-column:1/-1;height:70px;background:#fff;border:1px solid var(--line);border-radius:10px;padding:10px;display:flex;align-items:flex-end;gap:7px}.preview-chart span{flex:1;background:var(--accent);border-radius:4px 4px 0 0;opacity:.8}.preview-chart span:nth-child(1){height:25%}.preview-chart span:nth-child(2){height:55%}.preview-chart span:nth-child(3){height:40%}.preview-chart span:nth-child(4){height:75%}.preview-chart span:nth-child(5){height:60%}.preview-chart span:nth-child(6){height:90%}.sticky-actions{position:sticky;bottom:10px;z-index:10;display:flex;align-items:center;gap:12px;padding:12px 14px;background:rgba(255,255,255,.92);backdrop-filter:blur(12px);border:1px solid var(--line);border-radius:14px;box-shadow:0 10px 30px rgba(15,23,42,.12);margin-top:10px}
html[data-sidebar="compact"]{--sidebar:82px}html[data-sidebar="compact"] .brand-copy,html[data-sidebar="compact"] nav a span:not(.nav-icon),html[data-sidebar="compact"] .sidebar-foot span:not(.status-dot){display:none}html[data-sidebar="compact"] .brand{justify-content:center}html[data-sidebar="compact"] nav a{justify-content:center}html[data-sidebar="compact"] .brand-mark{width:40px}
html[data-compact="1"] .table th,html[data-compact="1"] .table td{padding:7px 8px}html[data-compact="1"] .panel{padding:14px}
@media(max-width:900px){.settings-layout{grid-template-columns:1fr}.theme-grid{grid-template-columns:repeat(2,1fr)}.choice-row{grid-template-columns:1fr}.preview-panel{display:none}}
.brand-logo{width: 30px !important;}