@import "https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght@9..144,300..900&family=IBM+Plex+Sans:ital,wght@0,300;0,400;0,500;0,600;1,300&family=IBM+Plex+Mono:wght@400;500&display=swap";:root{--ink:#0b1a12;--muted:#0b1a12ad;--bg0:#f6fbf7;--bg1:#eef8f1;--card:#ffffffc7;--card2:#fffffff0;--stroke:#0b1a121f;--stroke2:#0b1a122e;--shadow:0 18px 46px #0b1a121f;--accent:#128a3a;--accent2:#1fbf65;--danger:#d93b5f;--ok:#158a46;--warn:#f0b429;--sans:"IBM Plex Sans", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--display:"Fraunces", ui-serif, "Georgia", serif;--mono:"IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-family:var(--sans);letter-spacing:.2px;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px;line-height:1.35}*{box-sizing:border-box}html,body{height:100%}body{color:var(--ink);background:radial-gradient(1200px 900px at 12% 6%, #1fbf6524, transparent 58%), radial-gradient(900px 600px at 78% 18%, #128a3a1f, transparent 60%), radial-gradient(820px 620px at 70% 82%, #0b1a120d, transparent 55%), linear-gradient(160deg, var(--bg0), var(--bg1));margin:0}body:before{content:"";pointer-events:none;opacity:.55;background:repeating-linear-gradient(0deg,#0b1a1208 0 1px,#0000 1px 7px),radial-gradient(circle at 30% 20%,#128a3a0f,#0000 48%),radial-gradient(circle at 80% 30%,#0b1a120d,#0000 52%);position:fixed;inset:0}body:after{content:"";pointer-events:none;filter:blur(18px);opacity:.8;background:radial-gradient(circle at 12% 10%,#1fbf6514,#0000 35%),radial-gradient(circle at 92% 30%,#128a3a12,#0000 35%),radial-gradient(circle at 50% 92%,#0b1a120a,#0000 45%);position:fixed;inset:-60px}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit;color:inherit}code,pre{font-family:var(--mono)}.app{width:min(1240px,100%);min-height:100svh;margin:0 auto;padding:22px;position:relative}.appFrame{min-height:100svh}.topnav{z-index:30;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:linear-gradient(#ffffffe0,#f6fbf7c2);border-bottom:1px solid #0b1a121a;width:100%;padding:14px 22px;position:sticky;top:0}.topnavInner{grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;width:min(1240px,100%);margin:0 auto;display:grid}@media (width<=980px){.topnavInner{grid-template-columns:1fr}}.topnavLinks{flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;display:flex}.topnavActions{justify-content:flex-end;display:flex}.topnavLinks a{color:#0b1a12e0;background:0 0;border:1px solid #0000;border-radius:999px;align-items:center;gap:10px;padding:10px 12px;display:inline-flex}.topnavLinks a:hover{background:#128a3a0f;border-color:#0b1a1224}.topnavLinks a[aria-current=page]{color:var(--ink);background:linear-gradient(#1fbf6529,#fffc);border-color:#128a3a42}.topnavMenu{position:relative}.topnavMenuSummary{color:#0b1a12e0;cursor:pointer;-webkit-user-select:none;user-select:none;background:#ffffffdb;border:1px solid #0b1a121f;border-radius:999px;align-items:center;gap:10px;padding:10px 12px;list-style:none;display:inline-flex}.topnavMenuSummary::-webkit-details-marker{display:none}.topnavMenu[open] .topnavMenuSummary{background:#128a3a0f;border-color:#0b1a1229}.topnavMenuSummary.active{color:var(--ink);background:linear-gradient(#1fbf6529,#fffc);border-color:#128a3a42}.topnavMenuPanel{width:260px;box-shadow:var(--shadow);background:#fffffff5;border:1px solid #0b1a121f;border-radius:16px;gap:8px;padding:10px;display:grid;position:absolute;top:calc(100% + 10px);left:50%;transform:translate(-50%)}.topnavMenuItem{background:#ffffffe6;border:1px solid #0b1a121f;border-radius:14px;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;display:inline-flex}.topnavMenuItem:hover{background:#128a3a0f;border-color:#0b1a1229}.topnavMenuItem[aria-current=page]{background:linear-gradient(#1fbf6529,#ffffffe6);border-color:#128a3a42}.modal{width:min(680px,100vw - 24px);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);color:var(--ink);background:linear-gradient(#fffffff5,#f6fbf7e0);border:1px solid #0b1a1224;border-radius:18px;padding:0}.modal::backdrop{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0b1a1247}.modalHeader{border-bottom:1px solid #0b1a121a;justify-content:space-between;align-items:center;gap:10px;padding:14px 16px;display:flex}.modalHeader h3{font-family:var(--display);letter-spacing:-.7px;margin:0}.modalBody{padding:16px}.modalClose{background:#128a3a0f;border:1px solid #0b1a1224;border-radius:999px;padding:8px 10px}.shell{grid-template-columns:280px 1fr;align-items:start;gap:18px;display:grid}@media (width<=980px){.shell{grid-template-columns:1fr}}.panel{background:linear-gradient(180deg, var(--card2), var(--card));border:1px solid var(--stroke);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:18px}.side{padding:18px;position:sticky;top:18px}@media (width<=980px){.side{position:relative;top:0}}.brand{align-items:center;gap:12px;padding:6px 8px 12px;display:flex}.sigil{background:radial-gradient(circle at 30% 30%,#1fbf65f2,#128a3a59 46%,#ffffffb3 78%),linear-gradient(160deg,#128a3a24,#ffffff4d);border:1px solid #0b1a1224;border-radius:12px;width:38px;height:38px;box-shadow:0 12px 28px #0b1a1229}.brand h1{font-family:var(--display);letter-spacing:-.6px;margin:0;font-size:18px;font-weight:650;line-height:1.05}.brand p{color:var(--muted);margin:2px 0 0;font-size:12.5px}.nav{flex-direction:column;gap:8px;margin-top:12px;display:flex}.nav a{color:#0b1a12db;background:0 0;border:1px solid #0000;border-radius:14px;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;display:flex}.nav a:hover{background:#128a3a0f;border-color:#0b1a1224}.nav a[aria-current=page]{color:var(--ink);background:linear-gradient(#1fbf6524,#fff9);border-color:#128a3a42}.pill{font-family:var(--mono);opacity:.85;opacity:1;background:#128a3a12;border:1px solid #0b1a1224;border-radius:999px;padding:3px 8px;font-size:11px}.main{padding:18px}.topbar{background:#ffffffb8;border:1px solid #0b1a121f;border-radius:16px;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.topbar h2{font-family:var(--display);letter-spacing:-.9px;margin:0;font-size:28px;font-weight:650}.meta{color:var(--muted);align-items:center;gap:10px;font-size:13px;display:flex}.chip{background:#128a3a0f;border:1px solid #0b1a121f;border-radius:999px;padding:7px 10px}.grid{grid-template-columns:repeat(12,1fr);gap:12px;margin-top:12px;display:grid}.card{background:#ffffffc7;border:1px solid #0b1a121f;border-radius:18px;grid-column:span 12;padding:14px}.card h3{letter-spacing:.6px;text-transform:uppercase;color:#0b1a129e;margin:0 0 8px;font-size:12.5px}.card .value{font-family:var(--display);letter-spacing:-1.2px;font-size:34px}@media (width>=880px){.card{grid-column:span 4}}.table{border-collapse:collapse;border:1px solid #0b1a121f;border-radius:16px;width:100%;margin-top:10px;overflow:hidden}.table th,.table td{text-align:left;vertical-align:top;border-bottom:1px solid #0b1a121a;padding:10px 12px}.table th{text-transform:uppercase;letter-spacing:.7px;color:#0b1a1299;background:#128a3a0f;font-size:12px}.table tr:hover td{background:#128a3a0a}.badge{background:#ffffffb8;border:1px solid #0b1a121f;border-radius:999px;align-items:center;gap:8px;padding:6px 10px;font-size:12.5px;display:inline-flex}.dot{background:#0b1a1259;border-radius:50%;width:8px;height:8px}.badge.ok .dot{background:var(--ok)}.badge.warn .dot{background:var(--warn)}.badge.danger .dot{background:var(--danger)}.row{grid-template-columns:1fr 1fr;gap:10px;display:grid}@media (width<=820px){.row{grid-template-columns:1fr}}.field{flex-direction:column;gap:6px;display:flex}.label{letter-spacing:.7px;text-transform:uppercase;color:#0b1a129e;font-size:12px}.input,.select,.textarea{background:#ffffffe6;border:1px solid #0b1a1229;border-radius:14px;outline:none;padding:10px 12px}.textarea{resize:vertical;min-height:104px}.input:focus,.select:focus,.textarea:focus{border-color:#128a3a6b;box-shadow:0 0 0 4px #128a3a24}.actions{flex-wrap:wrap;gap:10px;margin-top:12px;display:flex}.btn{cursor:pointer;background:#ffffffdb;border:1px solid #0b1a1224;border-radius:14px;align-items:center;gap:10px;padding:10px 12px;display:inline-flex}.btn:hover{background:#128a3a0f;border-color:#0b1a122e}.btn.primary{background:linear-gradient(#1fbf6547,#fffc);border-color:#128a3a4d}.btn.danger{background:linear-gradient(#d93b5f1f,#ffffffdb);border-color:#d93b5f47}.iconBtn{cursor:pointer;color:#0b1a12e0;background:#ffffffdb;border:1px solid #0b1a1224;border-radius:12px;justify-content:center;align-items:center;width:38px;height:38px;display:inline-flex}.iconBtn:hover{background:#128a3a0f;border-color:#0b1a122e}.iconBtn:disabled{opacity:.55;cursor:not-allowed}.iconBtn.danger{color:#d93b5ff2;background:#ffffffdb;border-color:#d93b5f47}.iconBtn.danger:hover{background:#d93b5f14}.btn:disabled{opacity:.55;cursor:not-allowed}.hint{color:#0b1a12a8;font-size:13px}.error{color:#d93b5feb;font-size:13px}.loginWrap{place-items:center;min-height:100svh;padding:28px;display:grid}.loginCard{width:min(520px,100%);padding:18px}.loginCard header{padding:10px 12px 16px}.loginCard header h1{font-family:var(--display);letter-spacing:-1.2px;margin:0;font-size:34px}.loginCard header p{color:var(--muted);margin-top:8px}
