:root{--ink:#13251f;--ink-2:#203b32;--paper:#f3f5f2;--white:#fff;--line:#d9dfdb;--muted:#728079;--wine:#9d254d;--green:#0f7a64;--amber:#a96d0b;--red:#bd3140;--font:'DM Sans',sans-serif;--serif:'Libre Baskerville',serif}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font);letter-spacing:0}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}.auth-shell{min-height:100vh;display:grid;grid-template-columns:minmax(280px,42%) minmax(360px,1fr);background:var(--white)}.auth-brand{background:var(--ink);color:#fff;padding:56px;display:flex;align-items:center;align-content:flex-start;gap:15px;flex-wrap:wrap}.auth-brand strong,.logo strong{font-family:var(--serif);font-size:30px}.auth-brand small{width:100%;color:#9daaa4;margin-left:58px}.brand-mark{width:44px;height:44px;border:1px solid #53645d;display:grid;place-items:center}.brand-mark svg{width:22px}.login-panel{align-self:center;width:min(430px,calc(100% - 64px));margin:auto}.eyebrow{color:var(--wine);font-size:11px;font-weight:700;letter-spacing:1.8px}.login-panel h1,header h1{font-family:var(--serif);font-size:34px;margin:12px 0}.login-panel p,.section-head p{color:var(--muted);margin:0 0 28px}.login-panel label,.form-grid label{display:grid;gap:8px;font-size:12px;font-weight:700;color:#53645d;margin:18px 0}.login-panel input,.form-grid input,.form-grid select,.form-grid textarea{width:100%;border:1px solid var(--line);background:#fff;padding:12px 13px;outline:none;border-radius:4px}.login-panel input:focus,.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus{border-color:var(--green);box-shadow:0 0 0 3px #0f7a6415}.primary,.secondary,.icon-button{border:0;border-radius:4px;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:700}.primary{background:var(--wine);color:white;padding:11px 16px}.secondary{background:white;border:1px solid var(--line);padding:10px 16px}.primary svg,.secondary svg,.icon-button svg{width:16px}.login-panel .primary{width:100%;margin-top:8px}.form-error{color:var(--red);font-size:12px;min-height:18px;margin-top:10px}.app-shell{min-height:100vh;display:grid;grid-template-columns:230px 1fr}.sidebar{position:fixed;inset:0 auto 0 0;width:230px;background:var(--ink);color:#d9e0dc;padding:26px 18px;display:flex;flex-direction:column}.logo{display:flex;align-items:center;gap:12px;padding:0 8px 36px}.logo strong{display:block;font-size:20px;color:white}.logo small{font-size:10px;text-transform:uppercase;letter-spacing:1.5px;color:#8fa097}.logo .brand-mark{width:38px;height:38px}.sidebar nav{display:grid;gap:4px}.nav-item{border:0;background:none;color:#aebbb5;padding:11px 12px;display:flex;gap:11px;align-items:center;text-align:left;border-radius:4px}.nav-item svg{width:17px}.nav-item.active,.nav-item:hover{background:#ffffff12;color:#fff}.nav-item.active{box-shadow:inset 3px 0 var(--wine)}.sidebar-foot{margin-top:auto;border-top:1px solid #ffffff16;padding:18px 8px 0;display:flex;align-items:center;justify-content:space-between;font-size:11px;color:#9aaba3;overflow:hidden}.sidebar-foot span{overflow:hidden;text-overflow:ellipsis}.sidebar-foot button{border:0;background:none;color:#cbd4cf;padding:5px}.sidebar-foot svg{width:16px}.app-shell main{grid-column:2;padding:0 34px 50px;min-width:0}header{height:112px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);margin-bottom:28px}header h1{font-size:27px;margin:8px 0 0}.view{display:none}.view.active{display:block}.metrics{display:grid;grid-template-columns:repeat(6,minmax(110px,1fr));border:1px solid var(--line);background:#fff;margin-bottom:30px}.metric{padding:19px;border-right:1px solid var(--line)}.metric:last-child{border:0}.metric strong{font-family:var(--serif);font-size:27px;display:block}.metric span{font-size:10px;color:var(--muted);font-weight:700;text-transform:uppercase;letter-spacing:1px}.section-head{display:flex;justify-content:space-between;align-items:flex-end;margin:0 0 15px}.section-head h2{font-size:18px;margin:0 0 4px}.section-head p{font-size:13px;margin:0}.search{height:39px;width:280px;border:1px solid var(--line);background:white;display:flex;align-items:center;padding:0 11px;gap:8px}.search svg{width:15px;color:var(--muted)}.search input{border:0;outline:0;width:100%;font-size:13px}.data-table{width:100%;border-collapse:collapse;background:#fff;border:1px solid var(--line)}.data-table th{text-align:left;padding:11px 14px;background:#f8f9f7;border-bottom:1px solid var(--line);font-size:10px;color:var(--muted);letter-spacing:1px;text-transform:uppercase}.data-table td{padding:15px 14px;border-bottom:1px solid #e8ebe9;font-size:13px;vertical-align:middle}.data-table tr:last-child td{border-bottom:0}.data-table strong{display:block}.subtle{font-size:11px;color:var(--muted);margin-top:3px}.status{display:inline-flex;padding:4px 8px;border-radius:2px;font-size:10px;font-weight:700;text-transform:uppercase}.status.active{color:var(--green);background:#e5f4ef}.status.trial{color:#315e9c;background:#eaf0f9}.status.past_due{color:var(--amber);background:#fbf2df}.status.suspended,.status.cancelled{color:var(--red);background:#fae9eb}.table-action{border:1px solid var(--line);background:white;padding:7px 9px;border-radius:4px;display:inline-flex}.table-action svg{width:14px}.usage{display:flex;gap:12px;color:#526159}.usage span{white-space:nowrap}.empty{padding:40px;text-align:center;background:white;border:1px solid var(--line);color:var(--muted)}.plans-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.plan{background:#fff;border:1px solid var(--line);border-top:3px solid var(--ink);padding:23px}.plan h3{font-family:var(--serif);font-size:20px;margin:0}.plan-price{font-size:24px;font-weight:700;margin:22px 0}.plan-price small{font-size:11px;color:var(--muted)}.plan dl{margin:0}.plan dl div{display:flex;justify-content:space-between;padding:11px 0;border-top:1px solid #e6eae7;font-size:12px}.audit-row{display:grid;grid-template-columns:170px 1fr 160px;gap:20px;padding:15px 4px;border-bottom:1px solid var(--line);font-size:12px}.audit-row time,.audit-row small{color:var(--muted)}dialog{width:min(650px,calc(100% - 32px));border:0;padding:0;border-radius:6px;box-shadow:0 24px 80px #09151055}dialog::backdrop{background:#0d1d18aa}dialog form{padding:25px}.dialog-head{display:flex;justify-content:space-between;align-items:flex-start;border-bottom:1px solid var(--line);padding-bottom:18px}.dialog-head h2{font-family:var(--serif);font-size:21px;margin:7px 0 0}.icon-button{width:36px;height:36px;background:#f0f2f0}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}.form-grid .wide{grid-column:1/-1}.notice{display:flex;gap:9px;background:#eef5f2;padding:12px;font-size:12px;color:#456158}.notice svg{width:15px;flex:0 0 auto}.dialog-actions{display:flex;justify-content:flex-end;gap:9px;border-top:1px solid var(--line);padding-top:18px;margin-top:17px}#toast{position:fixed;right:24px;bottom:24px;background:var(--ink);color:white;padding:12px 16px;border-radius:4px;font-size:13px;opacity:0;pointer-events:none;transform:translateY(8px);transition:.2s}#toast.show{opacity:1;transform:none}@media(max-width:1000px){.metrics{grid-template-columns:repeat(3,1fr)}.metric:nth-child(3){border-right:0}.plans-grid{grid-template-columns:1fr}.data-table{min-width:760px}.view>div:last-child{overflow:auto}}@media(max-width:720px){.auth-shell{grid-template-columns:1fr}.auth-brand{padding:24px}.auth-brand small{margin-left:0}.login-panel{padding:50px 0}.app-shell{display:block}.sidebar{position:static;width:100%;height:auto;padding:14px}.sidebar .logo{padding:0 4px 14px}.sidebar nav{display:flex;overflow:auto}.nav-item{white-space:nowrap}.sidebar-foot{display:none}.app-shell main{padding:0 16px 35px}header{height:auto;padding:22px 0;gap:10px}header h1{font-size:21px}.metrics{grid-template-columns:repeat(2,1fr)}.metric:nth-child(odd){border-right:1px solid var(--line)}.section-head{align-items:flex-start;flex-direction:column;gap:13px}.search{width:100%}.form-grid{grid-template-columns:1fr}.form-grid .wide{grid-column:auto}.audit-row{grid-template-columns:1fr}.primary{padding:10px 12px}}
