@font-face{font-family:geistSans;src:url(../media/Geist_Variable-s.p.0mrjj4bg00-he.woff2)format("woff2");font-display:swap;font-weight:100 900}@font-face{font-family:geistSans Fallback;src:local(Arial);ascent-override:94.56%;descent-override:27.76%;line-gap-override:0.0%;size-adjust:106.28%}.geistsans_bd693000-module__ckR-yq__className{font-family:geistSans,geistSans Fallback}.geistsans_bd693000-module__ckR-yq__variable{--font-geist-sans:"geistSans", "geistSans Fallback"}
@font-face{font-family:geistMono;src:url(../media/GeistMono_Variable-s.p.3ms9vq719j3f8.woff2)format("woff2");font-display:swap;font-weight:100 900}@font-face{font-family:geistMono Fallback;src:local(Arial);ascent-override:76.43%;descent-override:22.43%;line-gap-override:0.0%;size-adjust:131.49%}.geistmono_e440b2c1-module__ayGZiq__className{font-family:geistMono,geistMono Fallback}.geistmono_e440b2c1-module__ayGZiq__variable{--font-geist-mono:"geistMono", "geistMono Fallback"}
:root{--bg-gradient:linear-gradient(135deg, #0f172a 0%, #1e1b4b 100%);--surface-bg:#1e293bb3;--surface-border:#ffffff1a;--surface-card:#0f172a8c;--text-primary:#f8fafc;--text-secondary:#94a3b8;--primary:#2563eb;--primary-hover:#1d4ed8;--error:#ef4444;--success:#10b981;--warning:#f59e0b;--focus-ring:#93c5fd;--radius-sm:.5rem;--radius-md:.75rem;--radius-lg:1rem;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-6:1.5rem;--space-8:2rem}*{box-sizing:border-box}body{font-family:var(--font-geist-sans), system-ui, sans-serif;background:var(--bg-gradient);color:var(--text-primary);flex-direction:column;min-height:100vh;margin:0;padding:0;display:flex}.app-main{flex-direction:column;flex:1;min-width:0;display:flex}:where(a,button,input,select,textarea,[tabindex]):focus-visible{outline:3px solid var(--focus-ring);outline-offset:3px}.skip-link{z-index:10000;top:var(--space-2);left:var(--space-2);padding:var(--space-3) var(--space-4);border-radius:var(--radius-sm);color:#0f172a;background:#fff;position:fixed;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}.ui-button{min-height:2.75rem;padding:var(--space-3) var(--space-4);border-radius:var(--radius-sm);font:inherit;cursor:pointer;border:1px solid #0000;font-weight:700}.ui-button--primary{color:#fff;background:var(--primary)}.ui-button--primary:hover{background:var(--primary-hover)}.ui-button--secondary{color:var(--text-primary);background:var(--surface-card);border-color:var(--surface-border)}.ui-button--danger{color:#fff;background:#b91c1c}.ui-button:disabled,button:disabled{cursor:not-allowed;opacity:.55}.ui-modal-backdrop{z-index:1000;padding:var(--space-4);background:#000c;place-items:center;display:grid;position:fixed;inset:0;overflow-y:auto}.ui-modal-panel{width:100%;max-height:calc(100vh - 2rem);overflow-y:auto}.ui-modal-header{justify-content:space-between;align-items:start;gap:var(--space-4);display:flex}.ui-modal-header h2{margin:0 0 var(--space-6);font-size:1.25rem}.ui-modal-close{border:1px solid var(--surface-border);min-width:2.75rem;min-height:2.75rem;color:var(--text-primary);background:var(--surface-card);cursor:pointer;border-radius:50%;font-size:1.5rem}.table-scroll{max-width:100%;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 (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.glass-panel{background:var(--surface-bg);-webkit-backdrop-filter:blur(12px);border:1px solid var(--surface-border);border-radius:16px;padding:2.5rem;box-shadow:0 4px 30px #0000001a}.input-field{border:1px solid var(--surface-border);width:100%;color:var(--text-primary);box-sizing:border-box;background:#0f172a99;border-radius:8px;padding:.75rem 1rem;font-family:inherit;font-size:1rem;transition:all .3s}.input-field:focus{border-color:var(--primary);outline:none;box-shadow:0 0 0 2px #3b82f633}.btn-primary{background:var(--primary);color:#fff;cursor:pointer;border:none;border-radius:8px;width:100%;padding:.875rem;font-size:1rem;font-weight:600;transition:background .3s,transform .1s}.btn-primary:hover{background:var(--primary-hover)}.btn-primary:active{transform:scale(.98)}.container-center{flex:1;justify-content:center;align-items:center;padding:2rem;display:flex}.auth-form{width:100%;max-width:400px}.auth-form h1{margin-top:0;margin-bottom:.5rem;font-size:1.75rem}.auth-form p{color:var(--text-secondary);margin-bottom:2rem}.form-group{margin-bottom:1.5rem}.form-group label{color:var(--text-secondary);margin-bottom:.5rem;font-size:.875rem;font-weight:500;display:block}.error-message{color:var(--error);margin-top:.5rem;font-size:.875rem}.text-center{text-align:center}.mb-4{margin-bottom:1rem}.mt-4{margin-top:1rem}.btn-primary.btn-gated-ready{background:var(--success)}.btn-primary.btn-gated-ready:hover{background:#059669}.btn-gated-done{color:#6ee7b7;min-height:2.25rem;font:inherit;background:#10b98124;border:1px solid #10b98173;border-radius:8px;padding:.5rem 1rem;font-size:.8rem;font-weight:700}.btn-gated-done:disabled{opacity:1;cursor:default}.cal-ghost-btn{border:1px solid var(--surface-border);min-height:2.25rem;color:var(--text-primary);font:inherit;cursor:pointer;background:#0f172a99;border-radius:8px;padding:0 .75rem;font-size:.85rem;font-weight:600;transition:background .15s,border-color .15s}.cal-ghost-btn:hover{background:#ffffff14;border-color:#ffffff38}.cal-ghost-btn:active{transform:translateY(1px)}.cal-seg{border:1px solid var(--surface-border);background:#0f172a99;border-radius:8px;gap:2px;padding:2px;display:inline-flex}.cal-seg button{color:var(--text-secondary);font:inherit;cursor:pointer;background:0 0;border:none;border-radius:6px;padding:6px 14px;font-size:.8rem;font-weight:600;transition:background .15s,color .15s}.cal-seg button:hover{color:var(--text-primary)}.cal-seg button.active{background:var(--primary);color:#fff}.cal-cell{cursor:pointer;background:0 0;border:none;width:100%;margin:0;padding:0;transition:background .15s;display:block}.cal-cell:hover{background:#93c5fd14}.cal-block{transition:filter .15s,box-shadow .15s}.cal-block:hover{filter:brightness(1.2);z-index:5;box-shadow:0 4px 14px #0006}.cal-row{cursor:pointer;transition:background .15s}.cal-row:hover{background:#ffffff0d}.cal-drawer{animation:.2s cubic-bezier(.16,1,.3,1) cal-drawer-in}@keyframes cal-drawer-in{0%{opacity:0;transform:translate(24px)}to{opacity:1;transform:none}}.cal-fade{animation:.15s cal-fade-in}@keyframes cal-fade-in{0%{opacity:0}to{opacity:1}}
