:root{color-scheme:dark;--bg:#090b10;--panel:#11151d;--panel2:#171c26;--line:#252c39;--text:#f4f6fb;--muted:#8e98aa;--accent:#8b5cf6;--accent2:#6d3ee8;--good:#36d399;--warn:#fbbf24;--bad:#fb7185;font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif}*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at 80% 0,#20123b 0,transparent 32rem),var(--bg);color:var(--text);min-height:100vh}button,input,select,textarea{font:inherit}button{cursor:pointer}.hidden{display:none!important}.login-shell{min-height:100vh;display:grid;place-items:center;padding:1.5rem}.login-card{width:min(420px,100%);background:rgba(17,21,29,.94);border:1px solid var(--line);border-radius:24px;padding:2.25rem;box-shadow:0 28px 80px #0009}.login-card h1{margin:.25rem 0}.login-card label{display:grid;gap:.5rem;margin:1rem 0;color:#ccd2de}.brand-mark{width:52px;height:52px;border-radius:15px;background:linear-gradient(135deg,#a78bfa,#6d28d9);display:grid;place-items:center;font-weight:900;font-size:1.5rem;box-shadow:0 12px 34px #8b5cf650}.brand-mark.small{width:38px;height:38px;border-radius:11px;font-size:1rem}.eyebrow{font-size:.7rem;letter-spacing:.18em;color:#a78bfa;font-weight:800;margin:0}.muted{color:var(--muted);margin:.3rem 0}.error-text{color:var(--bad);min-height:1.2rem}.app-shell{display:grid;grid-template-columns:250px 1fr;min-height:100vh}.sidebar{position:sticky;top:0;height:100vh;padding:1.25rem;background:#0d1017e8;backdrop-filter:blur(20px);border-right:1px solid var(--line);display:flex;flex-direction:column}.sidebar-brand{display:flex;align-items:center;gap:.8rem;padding:.35rem .5rem 1.6rem}.sidebar-brand small{display:block;color:var(--muted)}nav{display:grid;gap:.35rem}nav button{border:0;background:transparent;color:#aab3c2;text-align:left;padding:.8rem 1rem;border-radius:10px}nav button:hover,nav button.active{background:#8b5cf61f;color:#ddd4ff}.sidebar-foot{margin-top:auto;border-top:1px solid var(--line);padding-top:1rem;display:grid;gap:.5rem;color:var(--muted)}main{padding:2rem clamp(1rem,3vw,3rem);min-width:0}header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.75rem}header h1{font-size:clamp(1.6rem,3vw,2.25rem);margin:.2rem 0}.pills{display:flex;gap:.5rem;flex-wrap:wrap}.pill,.badge{display:inline-flex;align-items:center;border:1px solid var(--line);border-radius:999px;padding:.28rem .55rem;font-size:.75rem;color:var(--muted)}.pill.good,.badge.good{color:var(--good);border-color:#36d39940;background:#36d39910}.pill.warn,.badge.warn{color:var(--warn);border-color:#fbbf2440;background:#fbbf2410}.pill.bad,.badge.bad{color:var(--bad);border-color:#fb718540;background:#fb718510}.view{display:none}.view.active{display:block}.stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;margin-bottom:1rem}.stat,.panel{background:linear-gradient(145deg,#141923,#0f131b);border:1px solid var(--line);border-radius:16px}.stat{padding:1.25rem}.stat span{display:block;color:var(--muted);font-size:.82rem}.stat strong{display:block;font-size:1.8rem;margin-top:.4rem}.panel{padding:1.25rem;margin-bottom:1rem}.panel-title{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem}.panel-title h2{margin:0;font-size:1.05rem}.primary,.secondary,.ghost{border-radius:9px;padding:.68rem 1rem;border:1px solid transparent;color:white}.primary{background:linear-gradient(135deg,var(--accent),var(--accent2))}.secondary{background:var(--panel2);border-color:var(--line)}.ghost{background:transparent;border-color:var(--line);color:var(--muted);padding:.5rem}.danger{color:var(--bad)!important}.small-btn{padding:.4rem .6rem;border-radius:7px;border:1px solid var(--line);background:#171c26;color:#dce1ea;margin:.15rem}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;white-space:nowrap}th{text-align:left;color:var(--muted);font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;padding:.7rem;border-bottom:1px solid var(--line)}td{padding:.8rem .7rem;border-bottom:1px solid #202632;font-size:.86rem}tr:last-child td{border:0}input,select,textarea{width:100%;background:#0c1017;color:var(--text);border:1px solid var(--line);border-radius:9px;padding:.72rem;outline:0}input:focus,select:focus,textarea:focus{border-color:#8b5cf690;box-shadow:0 0 0 3px #8b5cf615}.inline-form,.stack-form{padding:1rem;background:#0c1017;border:1px solid var(--line);border-radius:12px;margin-bottom:1rem}.inline-form{display:grid;grid-template-columns:1fr 1fr 1.5fr auto auto;gap:.7rem;align-items:center}.stack-form{display:grid;gap:.7rem}.form-row{display:grid;grid-template-columns:1fr 2fr 1fr;gap:.7rem}.check{display:flex;align-items:center;gap:.4rem;color:var(--muted);white-space:nowrap}.check input{width:auto}.price-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.price-card{border:1px solid var(--line);border-radius:12px;padding:1rem;background:#0c1017}.price-card h3{margin:0 0 .8rem}.price-card .row{display:grid;grid-template-columns:1fr 1fr auto;gap:.5rem;margin-top:.5rem}.flash{position:fixed;right:1.2rem;top:1.2rem;z-index:10;padding:.85rem 1.1rem;border-radius:10px;background:#232a38;border:1px solid var(--line);box-shadow:0 16px 50px #0008}.flash.bad{border-color:#fb718580;color:#fecdd3}dialog{background:#11151d;color:var(--text);border:1px solid var(--line);border-radius:16px;width:min(520px,90vw);padding:1.5rem}dialog::backdrop{background:#000b;backdrop-filter:blur(4px)}dialog form{display:grid;gap:1rem}dialog code{display:block;padding:1rem;border-radius:10px;background:#090b10;overflow-wrap:anywhere;color:#c4b5fd}.service-list{display:grid;grid-template-columns:repeat(4,1fr);gap:.7rem}.service-item{background:#0c1017;border-radius:10px;padding:.9rem;border:1px solid var(--line)}@media(max-width:1000px){.stat-grid{grid-template-columns:repeat(2,1fr)}.inline-form{grid-template-columns:1fr 1fr}.price-grid{grid-template-columns:1fr}.service-list{grid-template-columns:1fr 1fr}}@media(max-width:720px){.app-shell{display:block}.sidebar{position:relative;height:auto;border-right:0;border-bottom:1px solid var(--line)}nav{grid-template-columns:repeat(2,1fr)}.sidebar-foot{display:flex;justify-content:space-between}.stat-grid{grid-template-columns:1fr 1fr}header{align-items:flex-start}.inline-form,.form-row{grid-template-columns:1fr}.service-list{grid-template-columns:1fr}.panel{padding:.85rem}main{padding:1rem}}@media(max-width:430px){.stat-grid{grid-template-columns:1fr}nav{grid-template-columns:1fr 1fr}nav button{padding:.65rem;font-size:.78rem}}
