:root{color-scheme:dark;--bg:#07100f;--panel:#0d1917;--panel-2:#11211e;--line:#21332f;--text:#f3f7f5;--muted:#91a49e;--green:#5ee0a0;--green-dark:#173c2c;--amber:#f3bd67;--red:#ff7f86;--blue:#8ca9ff}*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at 80% 0,#15342b 0,transparent 28%),var(--bg);color:var(--text);font:15px/1.55 Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif}.shell{min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;width:250px;padding:28px 20px;border-right:1px solid var(--line);background:rgba(7,16,15,.92);display:flex;flex-direction:column}.brand{color:var(--text);text-decoration:none;display:flex;gap:12px;align-items:center;font-weight:750;letter-spacing:-.02em}.brand small{display:block;color:var(--muted);font-size:10px;letter-spacing:.1em;text-transform:uppercase}.brand-mark{display:grid;place-items:center;width:40px;height:40px;border-radius:12px;background:var(--green);color:#052014;font-weight:900}.brand-mark.large{width:52px;height:52px;border-radius:16px}.sidebar nav{display:grid;gap:6px;margin-top:42px}.sidebar nav a{padding:11px 12px;color:var(--muted);text-decoration:none;border-radius:10px}.sidebar nav a:hover{background:var(--panel-2);color:var(--text)}.sidebar-foot{margin-top:auto;padding-top:20px;border-top:1px solid var(--line);display:flex;justify-content:space-between;color:var(--muted)}.main{margin-left:250px;padding:48px;max-width:1500px}.login-main{margin:0;display:grid;place-items:center;min-height:100vh}.login-card{width:min(480px,calc(100% - 32px));padding:42px;border:1px solid var(--line);border-radius:24px;background:rgba(13,25,23,.94);box-shadow:0 30px 90px #0008}.eyebrow{color:var(--green);font-size:11px;font-weight:800;letter-spacing:.16em}.page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-bottom:30px}.page-head.compact{max-width:900px}.page-head h1,.login-card h1{font-size:clamp(32px,4vw,54px);line-height:1.05;letter-spacing:-.045em;margin:8px 0 12px}.page-head.compact h1{font-size:42px}.lede{max-width:680px;color:var(--muted);font-size:17px}.summary{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:28px 0 38px}.summary article{padding:22px;border:1px solid var(--line);border-radius:16px;background:var(--panel)}.summary span{color:var(--muted);display:block}.summary strong{font-size:36px;letter-spacing:-.04em}.workspace-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:16px}.workspace-card{display:block;padding:22px;border:1px solid var(--line);border-radius:18px;background:linear-gradient(145deg,var(--panel),#0b1514);color:var(--text);text-decoration:none;transition:.18s transform,.18s border-color}.workspace-card:hover{transform:translateY(-2px);border-color:#3b5a52}.workspace-card h3{font-size:21px;margin:24px 0 2px}.workspace-card p,.workspace-card small{color:var(--muted)}.card-top,.section-title,.metrics{display:flex;align-items:center;justify-content:space-between;gap:16px}.metrics{margin:24px 0 10px;justify-content:flex-start;gap:28px}.metrics span{color:var(--muted)}.metrics strong{color:var(--text);font-size:19px}.arrow{font-size:20px;color:var(--green)}.status{display:inline-flex;padding:5px 9px;border-radius:999px;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.status.success{background:var(--green-dark);color:var(--green)}.status.muted{background:#202a28;color:#b7c4c0}.status.warning{background:#3a2d16;color:var(--amber)}.status.danger{background:#3a1d20;color:var(--red)}.large-status{padding:8px 12px}.panel,.token-panel,.empty{margin-top:24px;padding:24px;border:1px solid var(--line);border-radius:18px;background:var(--panel)}.token-panel{background:linear-gradient(135deg,#153c2c,#12231f);border-color:#326b51}.token-panel code,.token-panel pre{display:block;padding:14px;margin:12px 0 0;border-radius:10px;background:#07100f;overflow:auto;color:var(--green)}.detail-grid{display:grid;grid-template-columns:1.3fr .7fr;gap:18px}.section-title h2{margin:0}.section-title span{color:var(--muted)}.stack{display:grid;gap:16px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;max-width:900px}.full{grid-column:1/-1}label{display:grid;gap:7px;color:#c4d0cc;font-weight:650}input,textarea{width:100%;padding:12px 13px;border:1px solid #2b403a;border-radius:10px;background:#081210;color:var(--text);font:inherit}input:focus,textarea:focus{outline:2px solid #4ea778;outline-offset:1px}.toggle{grid-template-columns:auto 1fr;align-items:center}.toggle input{width:auto}.primary,.secondary,.link-button,.danger-link{border:0;border-radius:10px;padding:11px 15px;font:inherit;font-weight:750;cursor:pointer}.primary{background:var(--green);color:#062216}.secondary{background:#1c2b28;color:var(--text);border:1px solid var(--line)}.button{display:inline-block;text-decoration:none}.link-button,.danger-link{padding:0;background:transparent;color:var(--muted)}.danger-link{color:var(--red)}.actions{display:flex;justify-content:flex-end;gap:10px}.inline-form{display:grid;grid-template-columns:1fr auto;gap:10px;margin:20px 0}.allow-list{list-style:none;padding:0;margin:0;display:grid;gap:3px}.allow-list li{display:flex;justify-content:space-between;padding:11px 4px;border-bottom:1px solid var(--line)}.allow-list small{margin-left:8px;color:var(--green)}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;margin-top:15px}th,td{text-align:left;padding:11px;border-bottom:1px solid var(--line)}th{color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.08em}.error,.flash{padding:13px 15px;margin:0 0 18px;border-radius:10px}.error{background:#3a1d20;color:#ffc4c7}.flash{background:var(--green-dark);color:var(--green)}.muted-text{color:var(--muted)}hr{border:0;border-top:1px solid var(--line);margin:24px 0}@media(max-width:900px){.sidebar{position:static;width:auto;height:auto}.sidebar nav{margin-top:20px;display:flex}.sidebar-foot{margin-top:20px}.main{margin:0;padding:28px 18px}.page-head{display:block}.page-head>.button,.large-status{margin-top:14px}.summary,.detail-grid,.form-grid{grid-template-columns:1fr}.full{grid-column:auto}}
