.auth-loading,.login-page{color:#24484b;background:radial-gradient(circle at 18% 15%,#2a847e21,#0000 30%),linear-gradient(145deg,#f4f8f7,#e9f1ef);place-items:center;min-height:100vh;display:grid}.site-page .login-page{background:0 0;flex:1;min-height:0;padding:48px 24px 64px}.auth-loading{align-content:center;gap:12px;font-size:13px}.login-card{background:#fff;border:1px solid #d4e0de;border-radius:18px;width:min(460px,100vw - 32px);overflow:hidden;box-shadow:0 24px 70px #1e404226}.login-brand{color:#fff;background:#225d5a;align-items:center;gap:12px;padding:22px 26px;display:flex}.login-brand>span{color:#225d5a;background:#fff;border-radius:12px;place-items:center;width:44px;height:44px;display:grid}.login-brand div,.login-heading div{gap:3px;display:grid}.login-brand strong{font-size:20px}.login-brand small{color:#dcebea;font-size:11px}.login-heading{align-items:flex-start;gap:12px;padding:26px 26px 12px;display:flex}.login-lock{color:#286d68;background:#e8f3f1;border-radius:10px;flex:0 0 36px;place-items:center;height:36px;display:grid}.login-heading h1{color:#173f42;margin:0;font-size:18px}.login-heading p{color:#687f80;margin:0;font-size:11px}.login-form{gap:16px;padding:14px 26px 26px;display:grid}.login-form label{gap:7px;display:grid}.login-form label>span{color:#385d5f;font-size:10px;font-weight:750}.login-form label>div{color:#698182;background:#fbfdfc;border:1px solid #cbd9d7;border-radius:10px;align-items:center;gap:9px;min-height:44px;padding:0 12px;display:flex}.login-form input{color:#173f42;min-width:0;font:inherit;background:0 0;border:0;outline:0;flex:1;font-size:13px}.login-form label button{color:#698182;cursor:pointer;background:0 0;border:0;padding:4px;display:grid}.login-error,.login-ok{border-radius:8px;padding:10px 12px;font-size:11px}.login-error{color:#8d3030;background:#fff2f2;border:1px solid #efc1c1}.login-ok{color:#14624a;background:#e3f6ee;border:1px solid #b7e2cf}.login-alt-actions{grid-template-columns:1fr 1fr;gap:8px;display:grid}.login-alt-actions button{color:#286d68;min-height:38px;font:inherit;cursor:pointer;background:#f7faf9;border:1px solid #d4e0de;border-radius:10px;justify-content:center;align-items:center;gap:6px;font-size:11px;font-weight:750;display:inline-flex}.login-alt-actions button:disabled{opacity:.6;cursor:wait}.login-submit{color:#fff;cursor:pointer;background:#286d68;border:0;border-radius:10px;justify-content:center;align-items:center;gap:8px;min-height:44px;font-size:12px;font-weight:800;display:flex}.login-submit:disabled{opacity:.6;cursor:wait}.login-card>footer{color:#718586;text-align:center;background:#f7faf9;border-top:1px solid #e4ecea;padding:12px 18px;font-size:10px;line-height:1.45}.login-card>footer a{color:#4b6f70;cursor:pointer;white-space:nowrap;font-weight:700;text-decoration:none}.login-card>footer a:hover{color:#225d5a;text-decoration:underline}.login-terms{cursor:pointer;color:#5c7374;align-items:flex-start;gap:8px;font-size:11px;font-weight:600;line-height:1.45;display:flex!important}.login-terms input{accent-color:#286d68;cursor:pointer;width:15px;height:15px;margin-top:2px;flex:none!important}.login-terms a{color:#286d68;cursor:pointer;font-weight:800;text-decoration:none}.login-terms a:hover{text-decoration:underline}.login-form .login-terms span{color:#5c7374;font-size:11px;font-weight:600}.site-footer-copy a{color:var(--pf-muted);cursor:pointer;font-size:.8rem;text-decoration:none}.site-footer-copy a:hover{color:var(--pf-fg);text-decoration:underline}.termos-page{padding:32px 24px 56px}.termos-page-card{border:1px solid var(--pf-border);background:linear-gradient(#ffffff08,#0000);border-radius:16px;width:min(760px,100%);margin:0 auto;padding:32px 34px 28px}.termos-kicker{color:var(--pf-muted);letter-spacing:.12em;text-transform:uppercase;margin:0 0 10px;font-size:11px;font-weight:700}.termos-page .termos-doc h2{color:var(--pf-fg);letter-spacing:-.02em;margin:0 0 18px;font-size:26px}.termos-doc section{margin:0 0 18px}.termos-doc h3{color:var(--pf-accent);margin:0 0 8px;font-size:14px;font-weight:800}.termos-doc p{color:var(--pf-muted);margin:0;font-size:14px;line-height:1.65}.termos-page-nav{border-top:1px solid var(--pf-border);margin:22px 0 0;padding-top:16px}.termos-page-nav a{color:var(--pf-accent);cursor:pointer;font-size:13px;font-weight:700;text-decoration:none}.termos-page-nav a:hover{text-decoration:underline}.termos-gate{z-index:90;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0a1d2094;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.termos-gate-card{background:#fff;border:1px solid #d4e0de;border-radius:16px;flex-direction:column;width:min(640px,100%);max-height:min(88vh,760px);display:flex;overflow:hidden;box-shadow:0 24px 70px #1e404238}.termos-gate-card header{border-bottom:1px solid #e8eeed;padding:18px 22px 12px}.termos-gate-card header p{color:#6b7f80;letter-spacing:.06em;text-transform:uppercase;margin:0 0 4px;font-size:11px;font-weight:800}.termos-gate-card header h2{color:#173f42;margin:0;font-size:18px}.termos-gate-body{max-height:46vh;padding:16px 22px;overflow:auto}.termos-gate .termos-doc h2{color:#173f42;font-size:16px}.termos-gate .termos-doc h3{color:#0f766e}.termos-gate .termos-doc p{color:#4b6162;font-size:13px}.termos-accept{color:#385d5f;cursor:pointer;align-items:flex-start;gap:10px;margin:0 22px 12px;font-size:13px;font-weight:650;line-height:1.4;display:flex}.termos-accept input{accent-color:#0f766e;cursor:pointer;width:16px;height:16px;margin-top:2px}.termos-gate-error{color:#8d3030;margin:0 22px 10px;font-size:12px}.termos-entendi{color:#fff;cursor:pointer;background:#286d68;border:0;border-radius:10px;min-height:44px;margin:0 22px 18px;font-size:13px;font-weight:800}.termos-entendi:hover:not(:disabled){background:#1f5854}.termos-entendi:disabled{opacity:.55;cursor:not-allowed}.app-footer a{color:inherit;cursor:pointer;text-decoration:none}.app-footer a:hover{text-decoration:underline}.sidebar-user{min-width:0}.sidebar-user>div{flex:1;min-width:0}.sidebar-user>div span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.sign-out-button{height:30px;color:inherit;cursor:pointer;background:0 0;border:1px solid #ffffff38;border-radius:8px;flex:0 0 30px;place-items:center;display:grid}.sign-out-button:hover{background:#ffffff1a}.session-actions{gap:7px;padding:4px 0 0;display:grid}.session-entry-button,.session-exit-button{cursor:pointer;border-radius:8px;justify-content:center;align-items:center;gap:7px;min-height:34px;padding:7px 10px;font-size:10px;font-weight:800;display:inline-flex}.session-entry-button{color:#14624a;background:#e3f6ee;border:1px solid #b7e2cf}.session-entry-button:hover:not(:disabled){background:#d5f0e4}.session-entry-button:disabled{opacity:.7;cursor:default}.session-exit-button{color:#fff;background:#b4453d;border:1px solid #9d3b34}.session-exit-button:hover:not(:disabled){background:#9d3b34}.session-exit-button:disabled{opacity:.65;cursor:wait}.topbar-session-button{white-space:nowrap;min-height:35px}.topbar .session-entry-button,.topbar .session-exit-button{font-size:10px}.site-page{--pf-bg:#0b0f14;--pf-fg:#e8eef5;--pf-muted:#8a97a6;--pf-accent:#14b8a6;--pf-accent-soft:#14b8a61a;--pf-accent-ring:#14b8a659;--pf-border:#ffffff14;--pf-radius:14px;--pf-max:1120px;min-height:100dvh;color:var(--pf-fg);background:var(--pf-bg);-webkit-font-smoothing:antialiased;flex-direction:column;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;display:flex}.site-header{max-width:var(--pf-max);justify-content:space-between;align-items:center;width:100%;margin:0 auto;padding:1.25rem 2rem;display:flex}.site-brand{color:inherit;align-items:center;gap:.6rem;font-weight:600;text-decoration:none;display:inline-flex}.site-brand-mark{border:1px solid var(--pf-border);width:34px;height:34px;color:var(--pf-accent);background:linear-gradient(135deg,#1d2733,#0e141b);border-radius:10px;place-items:center;display:grid}.site-brand-accent{color:var(--pf-accent)}.site-nav{gap:1.5rem;display:flex}.site-nav a{color:var(--pf-muted);font-size:.95rem;text-decoration:none;transition:color .2s}.site-nav a:hover,.site-nav a.is-active,.site-nav a[aria-current=page]{color:var(--pf-fg)}.site-main{flex:1}.site-hero{padding:6rem 2rem 4rem}.site-hero-inner{max-width:var(--pf-max);text-align:center;margin:0 auto}.site-kicker{text-transform:uppercase;letter-spacing:.18em;color:var(--pf-muted);margin:0 0 1rem;font-size:.75rem}.site-hero h1{letter-spacing:-.02em;margin:0 0 2.25rem;font-size:clamp(2.5rem,6vw,4.25rem);font-weight:700}.site-hero-accent{color:var(--pf-accent)}.site-hero-actions{flex-wrap:wrap;justify-content:center;gap:.75rem;display:flex}.site-cta{background:var(--pf-accent);color:#04121e;border:1px solid #0000;border-radius:999px;align-items:center;padding:.85rem 1.5rem;font-weight:600;text-decoration:none;transition:transform .15s,opacity .2s;display:inline-flex}.site-cta:hover{opacity:.92;transform:translateY(-1px)}.site-cta--ghost{color:var(--pf-fg);border:1px solid var(--pf-border);background:0 0}.site-modules{padding:4rem 2rem 6rem}.site-section-header{max-width:var(--pf-max);text-align:center;margin:0 auto 2.5rem}.site-section-header h2{letter-spacing:-.01em;margin:0;font-size:clamp(1.5rem,3vw,2rem)}.site-modules-grid{max-width:var(--pf-max);grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem;margin:0 auto;display:grid}.site-module-card{border-radius:var(--pf-radius);border:1px solid var(--pf-border);background:linear-gradient(#ffffff05,#0000);padding:1.75rem;transition:border-color .2s,transform .2s}.site-module-card:hover{border-color:var(--pf-accent-ring);transform:translateY(-2px)}.site-module-icon{background:var(--pf-accent-soft);width:40px;height:40px;color:var(--pf-accent);border-radius:10px;place-items:center;margin-bottom:1rem;font-size:1.15rem;display:grid}.site-module-card h3{margin:0 0 .5rem;font-size:1.05rem}.site-module-card p{color:var(--pf-muted);margin:0;font-size:.95rem;line-height:1.6}.site-footer{border-top:1px solid var(--pf-border);padding:1.75rem 2rem}.site-footer-inner{max-width:var(--pf-max);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin:0 auto;display:flex}.site-footer-brand{margin:0;font-weight:600}.site-footer-copy{color:var(--pf-muted);margin:0;font-size:.85rem}.site-footer-version{font-variant-numeric:tabular-nums}@media (max-width:720px){.site-header{flex-wrap:wrap;gap:12px;padding:1rem 1.25rem}.site-hero{padding:4rem 1.25rem 3rem}.site-modules{padding:3rem 1.25rem 4rem}}
