:root{--ink:#14233c;--muted:#6c7a90;--line:#dbe3ed;--paper:#fff;--bg:#f4f7fb;--blue:#2556a6;--blue-dark:#173c7a;--mint:#e8f5f0;--danger:#b64949;--shadow:0 20px 60px rgba(22,45,79,.08);font-family:"IBM Plex Sans","Avenir Next",system-ui,sans-serif;color:var(--ink);background:var(--bg)}*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at 88% 0%,#e7efff 0,transparent 36rem),var(--bg);color:var(--ink)}button,input,select{font:inherit}button{cursor:pointer}.app-shell{min-height:100vh}.topbar{height:74px;background:rgba(255,255,255,.9);border-bottom:1px solid rgba(219,227,237,.8);display:flex;align-items:center;justify-content:space-between;padding:0 clamp(20px,5vw,76px);position:sticky;top:0;z-index:10;backdrop-filter:blur(18px)}.brand{display:flex;gap:12px;align-items:center;color:var(--ink);text-decoration:none}.brand-mark{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:var(--blue);color:#fff;font-weight:800;letter-spacing:-.05em}.brand strong{display:block;font-size:15px;letter-spacing:-.02em}.brand small{display:block;margin-top:2px;color:var(--muted);font-size:11px}.brand-centered{justify-content:center}.topbar-user{display:flex;align-items:center;gap:18px;color:var(--muted);font-size:13px}.page-content{max-width:1320px;margin:0 auto;padding:54px clamp(20px,5vw,76px) 90px}.page-heading{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:30px}.eyebrow{color:var(--blue);font-size:11px;text-transform:uppercase;letter-spacing:.14em;font-weight:800;margin:0 0 7px}.page-heading h1{font-size:clamp(34px,4vw,56px);line-height:1;margin:0;letter-spacing:-.06em}.lede{max-width:590px;color:var(--muted);font-size:16px;line-height:1.6;margin:16px 0 0}.status-pill{display:inline-flex;align-items:center;gap:7px;border:1px solid #c7e4d9;background:var(--mint);color:#34745b;border-radius:999px;padding:8px 13px;font-size:12px;font-weight:700;white-space:nowrap}.status-pill i,.state-dot:before{display:inline-block;width:7px;height:7px;border-radius:50%;background:#b5c0cc;content:""}.status-pill i{background:#45a87e}.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:48px}.stat-card,.dashboard-section{background:rgba(255,255,255,.86);border:1px solid rgba(219,227,237,.9);box-shadow:var(--shadow);border-radius:22px}.stat-card{padding:20px 22px}.stat-card span,.stat-card small{display:block;color:var(--muted);font-size:12px}.stat-card strong{display:block;font-size:32px;letter-spacing:-.05em;margin:8px 0 3px}.dashboard-section{padding:29px;margin-top:18px}.section-heading{display:flex;justify-content:space-between;align-items:start;gap:20px;margin-bottom:23px}.section-heading h2{font-size:23px;letter-spacing:-.04em;margin:0}.section-note{color:var(--muted);font-size:12px;margin-top:10px;text-align:right}.two-column{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px}.panel-form,.panel-list{background:#fbfcfe;border:1px solid var(--line);border-radius:17px;padding:20px}.panel-form h3,.panel-list h3{margin:0 0 17px;font-size:15px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.form-grid label,.stack-form label,.panel-form>label:not(.check-row){display:grid;gap:6px;color:#53627a;font-size:12px;font-weight:700}.form-grid input,.form-grid select,.stack-form input,.panel-form input,.panel-form select{width:100%;min-width:0;border:1px solid var(--line);border-radius:10px;background:#fff;padding:10px 11px;color:var(--ink);outline:none;font-size:13px}.form-grid input:focus,.form-grid select:focus,.stack-form input:focus{border-color:#7193ce;box-shadow:0 0 0 3px #eaf0fb}.check-row{display:flex!important;align-items:center;gap:8px;color:#596981!important;font-size:12px!important;font-weight:600!important;margin:15px 0}.check-row input{width:15px;height:15px;accent-color:var(--blue)}.button{border:0;border-radius:10px;padding:10px 14px;font-size:13px;font-weight:750;transition:.15s ease}.button:hover{transform:translateY(-1px)}.button-primary{background:var(--blue);color:#fff;box-shadow:0 7px 16px rgba(37,86,166,.18)}.button-primary:hover{background:var(--blue-dark)}.button-ghost{background:transparent;color:var(--muted);border:1px solid var(--line);padding:7px 10px}.button-wide{width:100%;padding:13px}.button-row{display:flex;gap:9px}.record-card{border-bottom:1px solid var(--line);padding:13px 0}.record-card:last-child{border-bottom:0}.record-card summary{display:flex;justify-content:space-between;align-items:center;cursor:pointer;list-style:none}.record-card summary::-webkit-details-marker{display:none}.record-card summary span{display:grid;gap:3px}.record-card summary small,.token-row small{color:var(--muted);font-size:11px}.state-dot{display:inline-flex;align-items:center;gap:5px;color:#77849a;font-size:11px}.state-dot.is-on{color:#398060}.state-dot.is-on:before{background:#48aa7d}.compact-form{padding:18px 0 0}.delete-form{margin-top:9px}.text-button{border:0;background:none;padding:0;font-size:11px;font-weight:700}.danger{color:var(--danger)}.empty-state{padding:22px 4px;color:var(--muted);font-size:13px}.inline-panel{margin-bottom:18px}.table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:15px;background:#fff}table{width:100%;border-collapse:collapse;min-width:650px;font-size:13px}th{text-align:left;color:#7b8799;text-transform:uppercase;letter-spacing:.1em;font-size:10px;font-weight:800;background:#f8fafc}th,td{padding:13px 15px;border-bottom:1px solid #edf1f5}tbody tr:last-child td{border-bottom:0}.empty-cell{text-align:center;color:var(--muted);padding:26px}.token-reveal{display:grid;gap:8px;background:#eef5ff;border:1px solid #c6d8f2;border-radius:13px;padding:15px;margin-bottom:17px}.token-reveal code{overflow:auto;background:#fff;border:1px solid #d6e2f4;border-radius:8px;padding:10px;color:var(--blue);font-size:12px}.token-reveal small{color:var(--muted)}.token-row{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:12px 0;border-bottom:1px solid var(--line)}.token-row:last-child{border-bottom:0}.token-row span{display:grid;gap:3px}.api-endpoints{display:flex;flex-wrap:wrap;gap:9px;align-items:center;margin-top:18px;color:var(--muted);font-size:11px}.api-endpoints code{background:#edf2f8;border:1px solid var(--line);border-radius:7px;padding:6px 8px;color:var(--blue)}.flash{border-radius:12px;padding:12px 15px;margin-bottom:18px;font-size:13px}.flash-success{background:#eaf7f0;border:1px solid #c6e8d5;color:#317657}.flash-error{background:#fff0f0;border:1px solid #f0caca;color:#9a4141}.auth-page{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at 50% 0,#e6efff 0,transparent 38rem),var(--bg)}.login-card{width:min(100%,460px);background:rgba(255,255,255,.9);border:1px solid var(--line);border-radius:26px;padding:38px;box-shadow:var(--shadow)}.login-intro{margin:46px 0 25px}.login-intro h1{font-size:33px;line-height:1.08;letter-spacing:-.05em;margin:0}.login-intro p:not(.eyebrow){color:var(--muted);line-height:1.55;font-size:14px}.stack-form{display:grid;gap:16px}.stack-form label{color:#53627a;font-size:12px;font-weight:700}.stack-form input{padding:12px}.stack-form .check-row{margin:0}.stack-form .button{margin-top:5px}
@media (max-width:900px){.stat-grid{grid-template-columns:repeat(2,1fr)}.two-column{grid-template-columns:1fr}.page-heading{align-items:start;flex-direction:column}.section-heading{flex-direction:column}.section-note{text-align:left;margin-top:0}}
@media (max-width:560px){.topbar{height:66px;padding:0 17px}.topbar-user>span{display:none}.page-content{padding:35px 15px 60px}.page-heading h1{font-size:39px}.stat-grid{gap:9px;margin-bottom:30px}.stat-card{padding:15px}.stat-card strong{font-size:26px}.dashboard-section{padding:18px;margin-top:12px;border-radius:17px}.form-grid{grid-template-columns:1fr}.panel-form,.panel-list{padding:15px}.login-card{padding:27px 22px}.login-intro{margin:38px 0 22px}}
