@charset "UTF-8";:root{color-scheme:light;--brand: #3f7385;--brand-sky: #bed8e1;--brand-ink: #ffffff;--base: #ffffff;--sky: var(--brand-sky);--brand-soft: color-mix(in srgb, var(--brand) 9%, var(--base));--brand-line: color-mix(in srgb, var(--brand) 26%, var(--base));--brand-deep: color-mix(in srgb, var(--brand) 70%, #0b1c22);--link: var(--brand);--sky-soft: color-mix(in srgb, var(--sky) 35%, var(--base));--paper: color-mix(in srgb, var(--brand-sky) 14%, #fbfcfd);--surface: #ffffff;--subtle: #eef3f5;--subtle-2: #f5f8f9;--ink: #1b333d;--muted: #5b6f77;--faint: #8a9ba1;--line: #e1e9ec;--line-strong: #cfdbe0;--toast: #1b333d;--ok: #1f8a5c;--ok-soft: #e4f5ec;--bad: #c2412f;--bad-soft: #fcebe8;--warn: #a2640c;--warn-soft: #fbf1de;--c-blue: #1d5fa8;--c-blue-bg: #e3f0ff;--c-violet: #5b3aa6;--c-violet-bg: #efe9fb;--c-amber: #94600f;--c-amber-bg: #fdf0dc;--r-sm: 8px;--r-md: 14px;--r-lg: 20px;--shadow-sm: 0 1px 2px rgba(27, 51, 61, .05), 0 1px 1px rgba(27, 51, 61, .03);--shadow-md: 0 1px 2px rgba(27, 51, 61, .04), 0 8px 24px -10px color-mix(in srgb, var(--brand) 30%, transparent);--shadow-lg: 0 24px 60px -20px rgba(15, 35, 45, .35);--font: "Figtree", system-ui, sans-serif;--display: "Sora", "Figtree", system-ui, sans-serif;--title-font: "Sora", "Figtree", system-ui, sans-serif;--title-tracking: -.01em;--ease: cubic-bezier(.2, .8, .2, 1)}:root[data-theme=dark]{color-scheme:dark;--base: #15252c;--sky: color-mix(in srgb, var(--brand-sky) 16%, #15252c);--brand-soft: color-mix(in srgb, var(--brand) 22%, #15252c);--brand-line: color-mix(in srgb, var(--brand) 45%, #15252c);--brand-deep: color-mix(in srgb, var(--brand-sky) 70%, #ffffff);--link: color-mix(in srgb, var(--brand-sky) 80%, #ffffff);--sky-soft: color-mix(in srgb, var(--brand-sky) 12%, #15252c);--paper: #0d181d;--surface: #15252c;--subtle: #1c2f37;--subtle-2: #192b32;--ink: #e4ecef;--muted: #a1b3b9;--faint: #6f858d;--line: #243840;--line-strong: #314a54;--toast: #2d4650;--ok: #4cc993;--ok-soft: #12302a;--bad: #ff7d6e;--bad-soft: #3a1d1a;--warn: #e6b04f;--warn-soft: #33290f;--c-blue: #8dbdf3;--c-blue-bg: #172a40;--c-violet: #c0a8f3;--c-violet-bg: #261e3b;--c-amber: #e8b45e;--c-amber-bg: #33280f;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .3);--shadow-md: 0 1px 2px rgba(0, 0, 0, .3), 0 10px 26px -12px rgba(0, 0, 0, .6);--shadow-lg: 0 24px 60px -20px rgba(0, 0, 0, .7)}:root.theme-anim,:root.theme-anim *{transition:background-color .25s,border-color .25s,color .25s,fill .25s!important}*{box-sizing:border-box}html,body{margin:0;height:100%}body{font-family:var(--font);font-size:15px;line-height:1.5;color:var(--ink);background:var(--paper);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent}h1,h2,h3{font-family:var(--display);line-height:1.2;margin:0;letter-spacing:-.01em;color:var(--ink)}h1{font-family:var(--title-font);letter-spacing:var(--title-tracking);font-size:1.7rem;font-weight:600}[data-title-font=cinzel] h1{font-size:1.55rem;font-weight:600}h2{font-size:1.1rem;font-weight:600}h3{font-size:1rem;font-weight:600}p{margin:0}a{color:var(--link)}:focus-visible{outline:2px solid var(--brand);outline-offset:2px;border-radius:4px}::selection{background:color-mix(in srgb,var(--brand-sky) 60%,transparent)}router-outlet+*{display:block;animation:enter .32s var(--ease)}@keyframes enter{0%{opacity:0;transform:translateY(6px)}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font:600 14px/1 var(--font);padding:11px 16px;border-radius:var(--r-sm);border:1px solid var(--line-strong);background:var(--surface);color:var(--ink);cursor:pointer;text-decoration:none;white-space:nowrap;transition:background-color .15s,border-color .15s,box-shadow .15s,transform .08s}.btn:hover{border-color:var(--faint);background:var(--subtle-2)}.btn:active:not(:disabled){transform:translateY(1px) scale(.99)}.btn:disabled{opacity:.5;cursor:default}.btn.primary{background:var(--brand);border-color:var(--brand);color:var(--brand-ink);box-shadow:0 1px 2px #00000014,0 6px 16px -8px color-mix(in srgb,var(--brand) 70%,transparent)}.btn.primary:hover{background:var(--brand-deep);border-color:var(--brand-deep)}.btn.soft{background:var(--brand-soft);border-color:transparent;color:var(--brand-deep)}.btn.soft:hover{background:color-mix(in srgb,var(--brand) 15%,var(--base))}.btn.danger{color:var(--bad);border-color:color-mix(in srgb,var(--bad) 35%,var(--base))}.btn.danger:hover{background:var(--bad-soft)}.btn.ghost{border-color:transparent;background:transparent}.btn.ghost:hover{background:var(--brand-soft)}.btn.block{width:100%}.btn.lg{padding:15px 20px;font-size:16px;border-radius:12px}.btn.sm{padding:7px 11px;font-size:13px}.field{display:grid;gap:6px;margin-bottom:16px}.field>span{font-size:13px;font-weight:600;color:var(--muted)}.field>small{font-size:12.5px;color:var(--faint)}input,select,textarea{font:15px var(--font);color:var(--ink);width:100%;padding:11px 13px;border:1px solid var(--line-strong);border-radius:10px;background:var(--surface);transition:border-color .15s,box-shadow .15s}input::placeholder,select::placeholder,textarea::placeholder{color:var(--faint)}input:hover,select:hover,textarea:hover{border-color:var(--faint)}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 4px color-mix(in srgb,var(--brand) 14%,transparent)}textarea{min-height:90px;resize:vertical}.row{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.grow{flex:1}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:12px;align-items:start}.panel-pad>h2:first-child{margin-bottom:14px}.nowrap{flex-wrap:nowrap}@media (max-width: 560px){.grid2{grid-template-columns:1fr}}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);box-shadow:var(--shadow-sm)}.panel-pad{padding:20px 22px}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 22px;border-bottom:1px solid var(--line)}.muted{color:var(--muted)}.small{font-size:13px}.tnum{font-variant-numeric:tabular-nums}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:24px;flex-wrap:wrap}.page-head p{color:var(--muted);margin-top:6px;max-width:64ch}.stack{display:grid;gap:14px}.table{width:100%;border-collapse:collapse;font-size:14px}.table th{text-align:left;font-weight:600;color:var(--muted);font-size:12.5px;padding:11px 16px;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--sky) 12%,var(--subtle-2))}.table td{padding:12px 16px;border-bottom:1px solid var(--line);vertical-align:top}.table tr:last-child td{border-bottom:0}.table tbody tr{transition:background-color .12s}.table tr.clickable{cursor:pointer}.table tr.clickable:hover td{background:var(--brand-soft)}.table-wrap{overflow-x:auto}.pill{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;font-weight:600;padding:3px 10px;border-radius:999px;background:var(--subtle);color:var(--muted);white-space:nowrap}.pill:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}.pill.ok{background:var(--ok-soft);color:var(--ok)}.pill.bad{background:var(--bad-soft);color:var(--bad)}.pill.warn{background:var(--warn-soft);color:var(--warn)}.pill.brand{background:var(--brand-soft);color:var(--brand-deep)}.pill.plain:before{display:none}.sim{display:inline-flex;align-items:center;font-size:12px;font-weight:600;color:var(--warn);background:var(--warn-soft);border:1px dashed color-mix(in srgb,var(--warn) 45%,var(--base));padding:2px 8px;border-radius:6px}.empty{padding:44px 24px;text-align:center;color:var(--muted);display:grid;justify-items:center;gap:6px}.empty .empty-icon{width:52px;height:52px;border-radius:16px;display:grid;place-items:center;background:var(--sky-soft);color:var(--brand);margin-bottom:6px}.empty strong{color:var(--ink);font-size:15px}.error-box{background:var(--bad-soft);color:var(--bad);padding:11px 14px;border-radius:10px;font-size:14px;margin-bottom:14px}.skeleton{border-radius:8px;background:linear-gradient(90deg,var(--subtle) 0%,var(--subtle-2) 40%,var(--subtle) 80%);background-size:200% 100%;animation:shimmer 1.3s linear infinite}@keyframes shimmer{to{background-position:-200% 0}}.overlay{position:fixed;inset:0;background:#060e1280;backdrop-filter:blur(3px);display:grid;place-items:center;z-index:50;padding:16px;animation:fade .18s ease-out}.dialog{background:var(--surface);border-radius:var(--r-lg);width:min(520px,100%);max-height:calc(100vh - 32px);overflow:auto;padding:24px;box-shadow:var(--shadow-lg);animation:pop .24s var(--ease)}.dialog-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}@keyframes fade{0%{opacity:0}}@keyframes pop{0%{opacity:0;transform:translateY(10px) scale(.98)}}@media (max-width: 640px){.overlay.sheet,.overlay[style*="align-items:end"]{padding:0}.overlay.sheet .dialog,.overlay[style*="align-items:end"] .dialog{border-radius:22px 22px 0 0;width:100%;animation:sheet .28s var(--ease)}}@keyframes sheet{0%{transform:translateY(40px);opacity:.4}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation:none!important;transition:none!important}}@media (max-width: 640px){.table.stack-sm thead{display:none}.table.stack-sm tbody,.table.stack-sm tr,.table.stack-sm td{display:block}.table.stack-sm tr{padding:12px 14px;border-bottom:1px solid var(--line)}.table.stack-sm tr:last-child{border-bottom:0}.table.stack-sm td{padding:2px 0;border:0;text-align:left!important}.table.stack-sm td:first-child{margin-bottom:4px}.table.stack-sm td.empty{padding:30px 0}}
