:root{--bg:#f4f7fa;--panel:#fff;--panel-2:#f3f6fb;--line:#e4eaf2;--ink:#0d1b2a;--ink-dim:#54657c;--ink-faint:#8b99ad;--brand:#0e7c86;--brand-ink:#fff;--brand-soft:#e1f1f1;--pos:#0fa97f;--neg:#e85d6e;--shadow:0 12px 34px #0d1b2a14;--shadow-sm:0 4px 14px #0d1b2a0f;--radius:16px;--surface-dark:#0d1b2a}@media (prefers-color-scheme:dark){:root{--bg:#0b121c;--panel:#131e2c;--panel-2:#182535;--line:#26364b;--ink:#eaf1fb;--ink-dim:#9aacc4;--ink-faint:#617590;--brand:#2fb6bf;--brand-ink:#04181a;--brand-soft:#123033;--pos:#38c08f;--neg:#f0788a;--shadow:0 14px 34px #0006;--shadow-sm:0 4px 14px #0000004d;--surface-dark:#0f1b29}}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--bg);color:var(--ink);font-family:IBM Plex Sans Thai,system-ui,-apple-system,Segoe UI,sans-serif;line-height:1.5}a{color:inherit}.num{font-variant-numeric:tabular-nums;letter-spacing:-.01em}.login{place-items:center;min-height:100dvh;padding:24px;display:grid}.login-card{background:var(--panel);border:1px solid var(--line);width:min(420px,100%);box-shadow:var(--shadow);border-radius:22px;padding:34px 30px}.logo{background:linear-gradient(140deg,var(--brand),#0a5f68);color:#fff;border-radius:13px;place-items:center;width:48px;height:48px;margin-bottom:18px;font-size:20px;font-weight:800;display:grid}.login-card h1{margin:0 0 4px;font-size:22px}.login-card p{color:var(--ink-dim);margin:0 0 24px;font-size:14px}label.fld{color:var(--ink-dim);margin-bottom:6px;font-size:13px;font-weight:600;display:block}.input{background:var(--panel-2);border:1px solid var(--line);width:100%;color:var(--ink);border-radius:11px;margin-bottom:16px;padding:12px 13px;font-family:inherit;font-size:15px}.input:focus{outline:2px solid var(--brand);outline-offset:1px;border-color:#0000}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}input[type=date]{color-scheme:normal;appearance:none}input[type=date]::-webkit-calendar-picker-indicator{filter:invert(.5)}.btn{background:var(--brand);width:100%;color:var(--brand-ink);box-shadow:var(--shadow-sm);cursor:pointer;border:none;border-radius:11px;padding:13px;font-size:15px;font-weight:700}.btn:disabled{opacity:.6;cursor:not-allowed}.err{background:color-mix(in srgb,var(--neg) 14%,transparent);color:var(--neg);border-radius:10px;margin-bottom:16px;padding:10px 12px;font-size:13px}.wrap{max-width:1080px;margin:0 auto;padding:24px 16px 60px}.topbar{border-bottom:1px solid var(--line);align-items:center;gap:12px;max-width:1080px;height:62px;margin:0 auto;padding:0 16px;display:flex}.brand{align-items:center;gap:10px;font-weight:700;display:flex}.brand .logo{border-radius:9px;width:30px;height:30px;margin:0;font-size:15px}.ghost{border:1px solid var(--line);background:var(--panel);color:var(--ink-dim);cursor:pointer;border-radius:10px;padding:8px 14px;font-size:13px;font-weight:600}.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm);margin-top:16px;padding:22px}.seg{border:1px solid var(--line);background:var(--panel);border-radius:999px;display:inline-flex;overflow:hidden}.seg button{color:var(--ink-faint);cursor:pointer;background:0 0;border:none;padding:7px 14px;font-family:inherit;font-size:13px;font-weight:700}.seg button.on{background:var(--brand);color:var(--brand-ink)}
