:root{--site-topbar-h: 58px;--ui-bg-1: #f5f8fc;--ui-bg-2: #eaf1fb;--ui-card: rgba(255, 255, 255, .92);--ui-border: #dbe4ef;--ui-border-soft: #e6edf5;--ui-text: #1f2937;--ui-muted: #64748b;--ui-primary: #0f4c81;--ui-primary-soft: #ebf3fb;--ui-accent: #c26b2a;--ui-topbar-bg: rgba(255, 255, 255, .95);--ui-input-bg: #ffffff;--ui-input-border: #cbd5e1;--ui-input-text: #111827;--ui-btn-bg: #ffffff;--ui-btn-border: #cbd5e1;--ui-btn-text: #0f172a;--ui-table-bg: #ffffff;--ui-table-head: #f3f7fc;--ui-table-row-alt: #fbfdff;--ui-shadow-soft: 0 10px 24px rgba(15, 23, 42, .06);--ui-shadow-card: 0 16px 34px rgba(15, 23, 42, .08);--ui-card-grad-a: rgba(255, 255, 255, .96);--ui-card-grad-b: rgba(251, 253, 255, .96);font-family:Segoe UI,Trebuchet MS,Arial,sans-serif;line-height:1.5;font-weight:400;color:var(--ui-text);background:radial-gradient(1100px 420px at -8% -6%,rgba(15,76,129,.12),transparent 55%),radial-gradient(900px 380px at 105% 0%,rgba(194,107,42,.12),transparent 50%),linear-gradient(180deg,var(--ui-bg-1) 0%,var(--ui-bg-2) 100%);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}:root[data-theme=dark]{--ui-bg-1: #0b1220;--ui-bg-2: #111b2e;--ui-card: rgba(17, 24, 39, .9);--ui-border: #233046;--ui-border-soft: #2b3a54;--ui-text: #e5e7eb;--ui-muted: #94a3b8;--ui-primary: #60a5fa;--ui-primary-soft: #1e293b;--ui-topbar-bg: rgba(10, 15, 24, .94);--ui-input-bg: #0f172a;--ui-input-border: #334155;--ui-input-text: #e2e8f0;--ui-btn-bg: #111827;--ui-btn-border: #334155;--ui-btn-text: #e2e8f0;--ui-table-bg: #0f172a;--ui-table-head: #1e293b;--ui-table-row-alt: #111b2f;--ui-shadow-soft: 0 10px 24px rgba(2, 6, 23, .45);--ui-shadow-card: 0 16px 34px rgba(2, 6, 23, .55);--ui-card-grad-a: rgba(19, 28, 43, .94);--ui-card-grad-b: rgba(15, 23, 38, .94);color-scheme:dark}*,*:before,*:after{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:inherit;color:inherit}#root{width:100%}.site-topbar{width:100%;margin:0;padding:10px 16px;min-height:var(--site-topbar-h);position:sticky;top:0;z-index:1000;border:1px solid var(--ui-border);border-left:0;border-right:0;border-top:0;border-radius:0;background:var(--ui-topbar-bg);display:flex;align-items:center;justify-content:space-between;gap:12px;box-shadow:var(--ui-shadow-soft)}.site-brand{display:inline-flex;align-items:center;gap:10px}.site-title{font-weight:900;letter-spacing:.08em;color:var(--ui-primary);line-height:1}.site-logo{width:64px;height:64px;display:block;object-fit:cover}.site-lang{display:inline-flex;align-items:center;gap:8px;color:var(--ui-muted);font-size:13px}.site-lang select{width:auto;min-width:112px;padding:6px 10px}.site-actions{display:inline-flex;align-items:center;gap:12px}.site-signin-btn{border-radius:8px;padding:8px 14px;font-weight:700;letter-spacing:.02em}.site-profile-btn{width:36px;height:36px;padding:0;border-radius:999px;overflow:hidden;border:1px solid #cbd5e1;background:#f8fafc;display:inline-flex;align-items:center;justify-content:center;font-weight:700;color:#334155}.site-profile-btn img{width:100%;height:100%;object-fit:cover}.signin-drawer-overlay{position:fixed;top:var(--site-topbar-h);right:0;bottom:0;left:0;background:#02081080;opacity:0;pointer-events:none;transition:opacity .18s ease;z-index:980}.signin-drawer-overlay.open{opacity:1;pointer-events:auto}.signin-drawer{position:fixed;top:var(--site-topbar-h);right:0;width:min(420px,96vw);height:calc(100vh - var(--site-topbar-h));padding:16px;background:linear-gradient(180deg,#163b58,#1d4b6e);border-left:1px solid rgba(147,197,253,.25);transform:translate(100%);transition:transform .22s ease;z-index:990;overflow-y:auto}.signin-drawer.open{transform:translate(0)}.signin-drawer-close{position:absolute;top:14px;right:14px;width:34px;height:34px;border-radius:999px;border:1px solid rgba(147,197,253,.5);background:#0b1c2bb8;color:#dbeafe;font-size:24px;line-height:1;padding:0}.signin-drawer-card{border:1px solid rgba(147,197,253,.25);background:#081f34b8;border-radius:12px;padding:16px;color:#eaf2ff}.signin-drawer .button-accent{background:linear-gradient(135deg,#5aa8ff,#3f8ddb)}.reset-flow-card{border:1px solid rgba(147,197,253,.24);border-radius:10px;background:#071b2eb3;padding:12px}.signup-inline-link{border:0;background:transparent;color:#b8dcff;text-decoration:underline;padding:0;display:inline;font:inherit}.signup-inline-link:hover:not(:disabled){color:#e0f1ff;background:transparent;border:0;box-shadow:none}.signin-drawer-admin{margin-top:auto;padding:12px;border:1px solid rgba(147,197,253,.2);border-radius:12px;background:#081f348c}.signup-modal-overlay{position:fixed;inset:0;background:#02081094;opacity:0;pointer-events:none;transition:opacity .18s ease;z-index:1090}.signup-modal-overlay.open{opacity:1;pointer-events:auto}.signup-modal{position:fixed;top:50%;left:50%;width:min(640px,calc(100vw - 24px));transform:translate(-50%,-46%);opacity:0;pointer-events:none;transition:transform .2s ease,opacity .2s ease;z-index:1100}.signup-modal.open{transform:translate(-50%,-50%);opacity:1;pointer-events:auto}.signup-modal .card-section{background:var(--ui-card);border:1px solid var(--ui-border);border-radius:14px;box-shadow:var(--ui-shadow-card)}a{color:var(--ui-primary);text-decoration:none}a:hover{text-decoration:underline}input,select,textarea{width:100%;max-width:100%;border:1px solid var(--ui-input-border);border-radius:10px;padding:10px 12px;background:var(--ui-input-bg);color:var(--ui-input-text);transition:border-color .16s ease,box-shadow .16s ease}input:focus,select:focus,textarea:focus{outline:none;border-color:#93c5fd;box-shadow:0 0 0 3px #93c5fd33}button{border:1px solid var(--ui-btn-border);border-radius:10px;padding:9px 14px;background:var(--ui-btn-bg);color:var(--ui-btn-text);cursor:pointer;transition:transform .12s ease,border-color .16s ease,background .16s ease,box-shadow .16s ease}button:hover:not(:disabled){border-color:#93c5fd;background:#f8fbff;box-shadow:0 6px 16px #0f172a14}button:active:not(:disabled){transform:translateY(1px)}button:disabled{opacity:.65;cursor:not-allowed}.app-shell,.auth-shell{width:min(1200px,calc(100% - 24px));margin:clamp(10px,2vw,28px) auto;padding:clamp(14px,2.2vw,28px);background:var(--ui-card);border:1px solid var(--ui-border);border-radius:16px;box-shadow:var(--ui-shadow-card);animation:appFadeIn .26s ease-out}.auth-shell{width:min(720px,calc(100% - 24px));display:grid;gap:20px}.app-shell>section,.auth-shell>section,.card-section{background:linear-gradient(180deg,var(--ui-card-grad-a),var(--ui-card-grad-b));border:1px solid var(--ui-border-soft);border-radius:14px;padding:clamp(12px,1.8vw,18px)}.app-shell h1,.app-shell h2,.app-shell h3,.auth-shell h1,.auth-shell h2,.auth-shell h3{margin-top:0;margin-bottom:8px;letter-spacing:-.01em}.app-shell h1,.auth-shell h1{font-size:clamp(1.55rem,2.6vw,2rem)}.app-shell h2,.auth-shell h2{font-size:clamp(1.22rem,2.1vw,1.5rem)}.app-shell h3,.auth-shell h3{font-size:clamp(1rem,1.8vw,1.2rem)}.app-header{padding:6px 4px}.app-tabs{background:var(--ui-primary-soft);border:1px solid var(--ui-border-soft);border-radius:12px;padding:8px}.app-tabs button{border-radius:999px;border-color:var(--ui-border);background:var(--ui-btn-bg);padding:8px 12px}.app-tabs button:disabled{background:var(--ui-primary-soft);border-color:#bfd4ec;color:var(--ui-primary);opacity:1;font-weight:600}.button-accent{border-color:transparent;background:linear-gradient(135deg,var(--ui-primary) 0%,#2a6ea5 100%);color:#fff}.button-accent:hover:not(:disabled){border-color:transparent;background:linear-gradient(135deg,#0d406c,#225d8c)}.app-shell table,.auth-shell table{border:1px solid var(--ui-border-soft);border-radius:12px;overflow:hidden;background:var(--ui-table-bg)}.app-shell thead tr,.auth-shell thead tr{background:var(--ui-table-head)!important}.app-shell tbody tr:nth-child(2n),.auth-shell tbody tr:nth-child(2n){background:var(--ui-table-row-alt)}@keyframes appFadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media(max-width:900px){.site-topbar{width:100%;padding:10px 12px}.site-actions{gap:8px}.app-shell,.auth-shell{width:min(100%,calc(100% - 14px));border-radius:12px;padding:14px}.app-tabs{gap:6px}.app-tabs button{padding:7px 10px;font-size:13px}.app-shell>section,.auth-shell>section,.card-section{padding:12px}.app-header button{width:100%}}
