:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--color-bg:#f4f7fb;--color-surface:#fff;--color-surface-2:#eef2f8;--color-border:#dce3ed;--color-border-strong:#c3cddb;--color-text:#1d2c38;--color-text-muted:#55646f;--color-text-subtle:#626f7d;--color-accent:#2058bf;--color-accent-strong:#17429a;--color-on-accent:#fff;--color-highlight:#fcb900;--color-highlight-strong:#e0a500;--color-on-highlight:#1d2c38;--color-success:#1f8f5f;--color-warning:#fcb900;--color-danger:#d23f43;--color-info:#06b6d4;--color-info-fg:#0e7490;--color-warning-fg:#96690a;--font-display:var(--font-kanit), "Segoe UI", system-ui, sans-serif;--font-sans:var(--font-poppins), ui-sans-serif, system-ui, -apple-system, sans-serif;--font-mono:ui-monospace, "SF Mono", "Cascadia Mono", monospace;--text-xs:clamp(.72rem, .7rem + .1vw, .78rem);--text-sm:clamp(.8rem, .77rem + .15vw, .875rem);--text-base:clamp(1rem, .96rem + .2vw, 1.0625rem);--text-lg:clamp(1.15rem, 1.05rem + .4vw, 1.35rem);--text-h2:clamp(1.5rem, 1.2rem + 1.2vw, 2rem);--text-h1:clamp(2rem, 1.4rem + 2.6vw, 3.25rem);--leading:1.6;--tracking-tight:-.015em;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-6:1.5rem;--space-8:2rem;--space-section:clamp(2.5rem, 1.6rem + 4.5vw, 6rem);--radius-sm:6px;--radius:10px;--radius-lg:16px;--shadow-sm:0 1px 2px #1d2c3814;--shadow-md:0 10px 30px #1d2c381f;--ease-out-expo:cubic-bezier(.16, 1, .3, 1);--duration-fast:.15s;--duration-normal:.28s}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--color-bg:#16222c;--color-surface:#1d2c38;--color-surface-2:#263745;--color-border:#384a58;--color-border-strong:#4a5f70;--color-text:#eef3f8;--color-text-muted:#a9b6c4;--color-text-subtle:#909dab;--color-accent:#4f86e6;--color-accent-strong:#6f9ff0;--color-on-accent:#0e1a24;--color-highlight:#fcb900;--color-highlight-strong:#ffca38;--color-on-highlight:#1d2c38;--color-success:#35b07a;--color-warning:#fcb900;--color-danger:#ea5a5e;--color-info-fg:#67e8f9;--color-warning-fg:var(--color-highlight);--shadow-sm:0 1px 2px #0006;--shadow-md:0 12px 32px #00000080}}@media (prefers-reduced-motion:reduce){:root{--duration-fast:0s;--duration-normal:0s}}
*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{height:100%}body{background:var(--color-bg);min-height:100%;color:var(--color-text);font-family:var(--font-sans);font-size:var(--text-base);line-height:var(--leading);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;flex-direction:column;display:flex}h1,h2,h3{font-family:var(--font-display);letter-spacing:var(--tracking-tight);font-weight:600;line-height:1.12}h1{font-size:var(--text-h1)}h2{font-size:var(--text-h2)}a{color:var(--color-accent);text-decoration:none}a:hover{text-decoration:underline}:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px;border-radius:4px}.app-header{z-index:10;align-items:center;gap:var(--space-4);padding:var(--space-4) var(--space-6);background:var(--color-surface);border-bottom:1px solid var(--color-border);display:flex;position:sticky;top:0}.app-footer{align-items:center;gap:var(--space-4);padding:var(--space-6);border-top:1px solid var(--color-border);color:var(--color-text-muted);font-size:var(--text-sm);background:var(--color-surface);justify-content:space-between;margin-top:auto;display:flex}.app-footer-brand{color:var(--color-text);font-weight:500}.app-brand{font-family:var(--font-display);font-weight:700;font-size:var(--text-lg);letter-spacing:var(--tracking-tight);color:var(--color-text)}.app-brand:hover{text-decoration:none}.app-brand .app-brand-mark{color:var(--color-accent)}.app-nav{gap:var(--space-6);font-size:var(--text-sm);color:var(--color-text-muted);margin-left:auto;font-weight:500;display:flex}.app-nav a{color:inherit;transition:color var(--duration-fast) ease;border-bottom:2px solid #0000;padding-bottom:2px}.app-nav a:hover{color:var(--color-accent);border-bottom-color:var(--color-accent);text-decoration:none}.app-nav a[data-active=true]{color:var(--color-text);border-bottom-color:var(--color-accent);font-weight:600}.app-account{align-items:center;gap:var(--space-3);margin-left:var(--space-6);padding-left:var(--space-6);border-left:1px solid var(--color-border);display:flex}.app-avatar{background:color-mix(in srgb, var(--color-accent) 14%, transparent);width:2rem;height:2rem;color:var(--color-accent-strong);border:1px solid color-mix(in srgb, var(--color-accent) 30%, transparent);font-size:var(--text-xs);letter-spacing:.02em;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-weight:700;display:inline-flex}.app-account-name{font-size:var(--text-sm);color:var(--color-text);text-overflow:ellipsis;white-space:nowrap;max-width:16ch;font-weight:500;overflow:hidden}.app-signout{font-family:inherit;font-size:var(--text-sm);color:var(--color-text-muted);border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:var(--space-1) var(--space-3);cursor:pointer;transition:color var(--duration-fast) ease, border-color var(--duration-fast) ease;background:0 0;font-weight:500}.app-signout:hover{color:var(--color-danger);border-color:color-mix(in srgb, var(--color-danger) 45%, transparent)}.app-main{width:100%;max-width:1080px;padding:var(--space-8) var(--space-6) var(--space-section);flex:1;margin-inline:auto}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:var(--space-6)}.btn{justify-content:center;align-items:center;gap:var(--space-2);min-height:2.75rem;padding:var(--space-2) var(--space-6);border-radius:var(--radius);font-family:inherit;font-size:var(--text-sm);white-space:nowrap;cursor:pointer;transition:background var(--duration-fast) ease, border-color var(--duration-fast) ease, color var(--duration-fast) ease, filter var(--duration-fast) ease;border:1px solid #0000;font-weight:600;line-height:1.2;text-decoration:none;display:inline-flex}.btn:hover{text-decoration:none}.btn:disabled,.btn[aria-disabled=true]{opacity:.55;cursor:default;pointer-events:none}.btn-primary{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-on-accent)}.btn-primary:hover{background:var(--color-accent-strong);border-color:var(--color-accent-strong)}.btn-secondary{background:var(--color-surface);border-color:var(--color-border-strong);color:var(--color-text)}.btn-secondary:hover{background:var(--color-surface-2);border-color:var(--color-border-strong)}.btn-ghost{color:var(--color-accent);background:0 0;border-color:#0000}.btn-ghost:hover{background:var(--color-surface-2)}.btn-danger{border-color:color-mix(in srgb, var(--color-danger) 45%, transparent);color:var(--color-danger);background:0 0}.btn-danger:hover{background:color-mix(in srgb, var(--color-danger) 12%, transparent);border-color:var(--color-danger)}.btn-danger-solid{background:var(--color-danger);border-color:var(--color-danger);color:#fff}.btn-danger-solid:hover{filter:brightness(1.06)}.btn-sm{min-height:2.25rem;padding:var(--space-1) var(--space-3);font-size:var(--text-sm)}input:not([type=checkbox],[type=radio],[type=submit],[type=button],[type=reset]),select,textarea{font-family:inherit;font-size:var(--text-base);color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);padding:var(--space-3)}input:not([type=checkbox],[type=radio],[type=submit],[type=button],[type=reset]):focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--color-accent);outline-offset:1px;border-color:var(--color-accent)}.empty-state{padding:var(--space-8) var(--space-6);text-align:center;color:var(--color-text-muted)}.table-scroll{overflow-x:auto}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (max-width:640px){.app-header{padding:var(--space-3) var(--space-4);gap:var(--space-2) var(--space-3);flex-wrap:wrap}.app-nav{gap:var(--space-4);order:3;width:100%;margin-left:0}.app-account{padding-left:var(--space-3);margin-left:auto}.app-account-name{display:none}.app-main{padding:var(--space-6) var(--space-4) var(--space-8)}.app-footer{align-items:flex-start;gap:var(--space-1);padding:var(--space-4);flex-direction:column}}
