:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#18324a;background:#f4f7fb;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}button,input,textarea,select{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}.app-frame{display:flex;min-height:100vh}.sidebar{width:260px;display:flex;flex-direction:column;gap:30px;padding:28px 18px 20px;color:#dbeafe;background:#102a43}.brand{display:flex;align-items:center;gap:12px;padding:0 10px;color:#fff}.brand strong,.brand small{display:block}.brand strong{letter-spacing:.13em;font-size:14px}.brand small{margin-top:4px;color:#9fb8cf;font-size:12px}.brand-mark{display:grid;width:38px;height:38px;place-items:center;border-radius:12px;color:#102a43;background:#7dd3fc;font-size:21px;font-weight:800}.nav-list{display:grid;gap:6px}.nav-link{padding:12px 14px;border-radius:10px;color:#aac1d6;font-size:14px;transition:.2s ease}.nav-link:hover,.nav-link.active{color:#fff;background:#1d4669}.sidebar-note{margin-top:auto;padding:16px;border:1px solid #285477;border-radius:14px;color:#aac1d6;background:#163a5b;font-size:12px;line-height:1.5}.sidebar-note p{margin:8px 0 0}.sidebar-logout{width:100%;color:#dbeafe;border-color:#3b6587}.main-content{flex:1;min-width:0}.topbar{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:22px 5vw;border-bottom:1px solid #e2eaf2;background:#ffffffd9}.topbar-title{margin:4px 0 0;font-size:14px;color:#5d7286}.session-pill{display:inline-flex;align-items:center;gap:8px;padding:8px 11px;border:1px solid #cbe4d6;border-radius:999px;color:#22613c;background:#f0fbf4;font-size:12px}.pulse{width:7px;height:7px;border-radius:50%;background:#36a269}.content-wrap{max-width:1380px;margin:0 auto;padding:38px 5vw 70px}.eyebrow{color:#688096;font-size:11px;font-weight:700;letter-spacing:.11em;text-transform:uppercase}.page-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:26px}.page-heading h1{margin:5px 0 0;color:#102a43;font-size:clamp(25px,3vw,36px);letter-spacing:-.035em}.page-heading p{max-width:700px;margin:8px 0 0;color:#698095;line-height:1.55}.heading-actions{display:flex;flex-wrap:wrap;gap:10px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:0 15px;border:1px solid transparent;border-radius:9px;color:#fff;background:#147d92;font-size:13px;font-weight:700;transition:.18s ease}.button:hover{filter:brightness(.94);transform:translateY(-1px)}.button:disabled{cursor:not-allowed;opacity:.55;transform:none}.button-secondary{color:#1b5468;border-color:#b9d3df;background:#edf8fb}.button-ghost{color:#45647c;border-color:#d6e1eb;background:transparent}.button-danger{color:#a53a3a;border-color:#f1caca;background:#fff7f7}.card{padding:22px;border:1px solid #e1e9f1;border-radius:16px;background:#fff;box-shadow:0 12px 30px #1c3d5a0d}.card h2,.card h3{margin:0;color:#173b5b}.card-header{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:18px}.card-header p{margin:5px 0 0;color:#71879a;font-size:13px;line-height:1.5}.stats-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:20px}.stat-card{padding:22px;border-radius:16px;color:#fff;background:linear-gradient(135deg,#147d92,#1d557c)}.stat-card:nth-child(2){background:linear-gradient(135deg,#2a8e70,#23646a)}.stat-card:nth-child(3){background:linear-gradient(135deg,#8e6c36,#7c4e49)}.stat-card .eyebrow{color:#ffffffb3}.stat-value{display:block;margin-top:14px;font-size:34px;font-weight:800}.stat-caption{color:#ffffffbd;font-size:12px}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:13px}th{padding:12px 10px;border-bottom:1px solid #dfe8f0;color:#698095;font-size:11px;letter-spacing:.06em;text-align:left;text-transform:uppercase;white-space:nowrap}td{padding:15px 10px;border-bottom:1px solid #edf2f6;vertical-align:middle}tr:last-child td{border-bottom:0}.table-primary{color:#173b5b;font-weight:700}.table-secondary{margin-top:4px;color:#7890a3;font-size:12px}.table-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px}.table-actions .button{min-height:32px;padding:0 10px;font-size:12px}.badge{display:inline-flex;padding:5px 9px;border-radius:999px;color:#23613f;background:#eaf8ef;font-size:11px;font-weight:700}.badge-inactive{color:#8a4e2e;background:#fff4e7}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.field{display:grid;gap:7px}.field-full{grid-column:1 / -1}.field label{color:#365872;font-size:12px;font-weight:700}.field input,.field textarea,.field select,.filter-row input,.filter-row select{width:100%;padding:11px 12px;border:1px solid #cbd9e5;border-radius:9px;color:#173b5b;background:#fff;outline:none}.field textarea{min-height:140px;resize:vertical;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px}.field input:focus,.field textarea:focus,.field select:focus,.filter-row input:focus,.filter-row select:focus{border-color:#147d92;box-shadow:0 0 0 3px #147d921f}.field-hint{color:#7890a3;font-size:12px;line-height:1.45}.checkbox-field{display:flex;align-items:center;gap:9px;min-height:40px;color:#365872;font-size:13px}.checkbox-field input{width:16px;height:16px}.form-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end;margin-top:24px}.filter-row{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:18px}.filter-row>*{min-width:150px;flex:1}.filter-row .button{flex:0 0 auto}.status{padding:28px;border-radius:13px;line-height:1.5}.status-loading{color:#587086;background:#f4f8fb}.status-empty{color:#587086;border:1px dashed #c9d8e4;background:#fbfdff;text-align:center}.status-error{color:#9b3e3e;border:1px solid #f2cccc;background:#fff7f7}.error-detail{margin-top:7px;color:#b35a5a;font-size:12px}.detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px 24px}.detail-item dt{color:#7890a3;font-size:11px;text-transform:uppercase;letter-spacing:.06em}.detail-item dd{margin:4px 0 0;color:#173b5b;font-weight:600;word-break:break-word}.code{padding:3px 6px;border-radius:5px;color:#365872;background:#f0f4f7;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px}.two-column{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(280px,.6fr);gap:18px}.info-list{display:grid;gap:12px;margin:0;padding:0;list-style:none}.info-list li{display:flex;justify-content:space-between;gap:16px;padding-bottom:12px;border-bottom:1px solid #edf2f6}.info-list li:last-child{padding-bottom:0;border-bottom:0}.muted{color:#7890a3}.login-page{display:grid;min-height:100vh;place-items:center;padding:24px;background:radial-gradient(circle at top left,#dff5f6 0,#f4f7fb 42%,#e8eef5)}.login-card{width:min(440px,100%);padding:36px;border:1px solid #dbe6ee;border-radius:20px;background:#fffffff0;box-shadow:0 24px 70px #18324a1f}.login-card h1{margin:12px 0 7px;color:#102a43;font-size:31px;letter-spacing:-.04em}.login-card>p{margin:0 0 26px;color:#71879a;line-height:1.5}.login-form{display:grid;gap:17px}.login-form .button{width:100%;min-height:46px;margin-top:5px}.notice{padding:13px 15px;border-radius:10px;color:#765026;background:#fff8e9;font-size:12px;line-height:1.5}.markdown-like{color:#4f697d;line-height:1.65}.markdown-like h3{margin:26px 0 7px;color:#173b5b}.markdown-like pre{overflow-x:auto;padding:15px;border-radius:10px;color:#d8f1f5;background:#102a43;font-size:12px;line-height:1.55}.playground{display:grid;gap:18px}.playground-toolbar{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-end}.playground-toolbar .field{min-width:180px;flex:1}.playground-log{min-height:130px;max-height:230px;overflow:auto;padding:14px;border-radius:10px;color:#d8e8f3;background:#102a43;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;white-space:pre-wrap}.playground-log p{margin:0 0 6px}.footer-note{margin-top:20px;color:#7890a3;font-size:12px}@media(max-width:900px){.app-frame{display:block}.sidebar{width:100%;gap:18px;padding:18px}.nav-list{display:flex;overflow-x:auto}.nav-link{white-space:nowrap}.sidebar-note,.sidebar-logout{display:none}.topbar{padding:18px 5vw}.stats-grid,.two-column{grid-template-columns:1fr}}@media(max-width:620px){.content-wrap{padding-top:25px}.page-heading{display:block}.heading-actions{margin-top:15px}.form-grid,.detail-grid{grid-template-columns:1fr}.field-full{grid-column:auto}.session-pill{display:none}}
