:root{--canvas:#f2f5fc;--surface:#fff;--ink:#17284a;--muted:#586981;--accent:#264be6;--line:#dce4fa}*{box-sizing:border-box}body{color:var(--ink);background:var(--canvas);-webkit-font-smoothing:antialiased;margin:0;font-family:Segoe UI,system-ui,sans-serif}a{color:inherit;text-underline-offset:4px}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid var(--accent);outline-offset:5px}.shell{flex-direction:column;max-width:1280px;min-height:100svh;margin:0 auto;padding:0 48px;display:flex}.site-header{justify-content:space-between;align-items:center;gap:24px;padding:36px 0;display:flex}.brand{letter-spacing:-1px;align-items:center;gap:12px;font-size:24px;font-weight:750;text-decoration:none;display:inline-flex}.brand-suffix{font-weight:400}.environment{border:1px solid var(--line);color:var(--muted);border-radius:8px;padding:8px 12px;font:12px/1.4 Cascadia Mono,Consolas,monospace}.header-actions{align-items:center;gap:24px;display:flex}.account-nav{align-items:center;gap:20px;display:flex}.account-link{white-space:nowrap;font-size:14px;font-weight:650}main{flex:1;align-content:center;padding:30px 0 48px;display:grid}.welcome{border:1px solid var(--line);background:var(--surface);border-radius:28px;grid-template-columns:minmax(0,1fr) 30%;align-items:center;gap:16px;padding:72px 56px;display:grid}.eyebrow{color:var(--accent);margin:0 0 24px;font-size:14px;font-weight:650}h1{letter-spacing:-1.7px;margin:0;font-family:Aptos Display,Segoe UI,system-ui,sans-serif;font-size:clamp(32px,4vw,54px);font-weight:650;line-height:1.12}h1 span{color:var(--accent)}.intro{max-width:450px;color:var(--muted);margin:28px 0 0;font-size:17px;line-height:1.7}.development-note{color:var(--muted);margin:48px 0 0;font-size:12px;line-height:1.7}.connection-art svg{width:100%;display:block}.orbit{stroke:var(--line);stroke-width:1.5px}.connection-path{stroke:var(--accent);stroke-width:5px;stroke-linecap:round}.connection-node{fill:var(--surface);stroke:var(--accent);stroke-width:5px}.connection-hub{fill:var(--accent)}.hub-mark{stroke:var(--surface);stroke-width:3px;stroke-linecap:round}.site-footer{color:var(--muted);justify-content:space-between;gap:20px;padding:24px 0 32px;font-size:12px;line-height:1.6;display:flex}.site-footer a{-webkit-text-decoration-color:var(--line);text-decoration-color:var(--line)}.site-footer a:hover{color:var(--accent)}.page-message{padding:48px 0;line-height:1.7}.page-message h1{font-size:32px}.button{color:var(--surface);background:var(--accent);font:inherit;cursor:pointer;border:0;border-radius:8px;justify-content:center;align-items:center;padding:12px 18px;text-decoration:none;display:inline-flex}.button:hover{filter:brightness(.92)}.button:disabled{opacity:.65;cursor:wait}.welcome-actions{margin-top:30px}.welcome-actions .form-hint{max-width:340px;margin-top:16px}.auth-panel{border:1px solid var(--line);background:var(--surface);border-radius:24px;width:100%;max-width:560px;margin:0 auto;padding:44px}.auth-panel h1{letter-spacing:-1px;font-size:clamp(28px,4vw,38px)}.auth-panel .eyebrow{margin-bottom:18px}.auth-intro{color:var(--muted);margin:20px 0 0;font-size:16px;line-height:1.65}.auth-form{margin-top:30px}.auth-form fieldset{border:0;min-width:0;margin:0;padding:0}.form-field{margin-bottom:24px}.form-field label{margin-bottom:9px;font-size:14px;font-weight:650;display:block}.form-field input,.form-field textarea{border:1px solid var(--line);width:100%;min-height:48px;color:var(--ink);background:var(--canvas);border-radius:8px;padding:12px 14px;font:16px/1.4 Segoe UI,system-ui,sans-serif;display:block}.form-field textarea{resize:vertical}.form-field input:disabled,.form-field textarea:disabled{opacity:.7}.form-hint{color:var(--muted);margin:9px 0 0;font-size:13px;line-height:1.55}.auth-submit{width:100%;min-height:48px}.form-error{color:#822332;overflow-wrap:anywhere;background:#fff3f4;border-left:3px solid #a22c3a;padding:13px 15px;font-size:14px;line-height:1.6}.auth-footnote{color:var(--muted);margin:24px 0 0;font-size:14px;line-height:1.6}.auth-footnote a,.invitation-missing a{color:var(--accent)}.invitation-missing{margin-top:28px;line-height:1.7}.account-summary{border-bottom:1px solid var(--line);margin-top:32px;padding-bottom:24px}.account-caption{color:var(--muted);font-size:13px}.account-email{overflow-wrap:anywhere;margin:8px 0 0;font-size:20px;font-weight:650}.account-logout{margin-top:28px}.account-panel{max-width:880px}.operator-panel{max-width:700px}.subscriptions{margin-top:32px}.section-heading{justify-content:space-between;align-items:baseline;gap:20px;margin-bottom:18px;display:flex}.section-heading h2,.grant-success h2{letter-spacing:-.4px;margin:0;font-size:23px;font-weight:650}.text-button{color:var(--accent);font:inherit;text-underline-offset:4px;cursor:pointer;background:0 0;border:0;padding:8px 0;font-size:14px;text-decoration:underline}.text-button:disabled{color:var(--muted);cursor:wait}.subscription-empty{border:1px dashed var(--line);border-radius:12px;padding:24px}.subscription-empty p{margin:0}.subscription-empty .form-hint{margin-top:10px}.subscription-empty .button{margin-top:22px}.subscription-list{gap:16px;display:grid}.subscription-card{border:1px solid var(--line);background:var(--canvas);border-radius:12px;padding:24px}.subscription-heading{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.subscription-heading h3{overflow-wrap:anywhere;margin:0;font-size:19px;font-weight:650;line-height:1.4}.subscription-status{border-radius:5px;flex-shrink:0;padding:4px 8px;font-size:12px;line-height:1.5}.subscription-status-active{color:var(--accent);background:var(--surface);border:1px solid var(--line)}.subscription-status-expired{color:var(--muted);border:1px solid var(--line)}.subscription-facts{grid-template-columns:1fr 1fr auto;gap:20px;margin:24px 0 0;display:grid}.subscription-facts dt{color:var(--muted);font-size:12px}.subscription-facts dd{margin:8px 0 0;font-size:14px;line-height:1.6}.grant-numbers{grid-template-columns:1fr 1fr;gap:24px;display:grid}.grant-form .auth-submit{margin-top:6px}.operator-message{margin-top:28px}.grant-success{margin-top:32px}.grant-recipient{color:var(--muted);overflow-wrap:anywhere;margin:14px 0 24px;line-height:1.6}.grant-recipient strong{color:var(--ink);font-weight:600}.grant-actions{flex-wrap:wrap;align-items:center;gap:20px;margin-top:28px;display:flex}.visually-hidden{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{background:var(--surface);padding:12px;position:absolute;top:-100px;left:20px}.skip-link:focus{z-index:1;top:12px}@media (max-width:760px){.shell{padding:0 22px}.site-header{flex-wrap:wrap;gap:12px;padding:24px 0}.brand{gap:8px;font-size:22px}.environment{padding:7px 9px;font-size:10px}.header-actions{gap:14px;margin-left:auto}.account-link{font-size:13px}.account-nav{gap:14px}main{padding:16px 0 24px}.welcome{border-radius:20px;grid-template-columns:1fr;padding:36px 24px 20px}h1{letter-spacing:-1px;font-size:clamp(29px,6.7vw,44px)}.intro{font-size:16px}.development-note{margin-top:28px}.connection-art{justify-self:end;width:144px}.site-footer{flex-wrap:wrap;gap:10px;padding-top:12px}.auth-panel{border-radius:20px;padding:30px 24px}.subscription-card{padding:20px}.subscription-facts{grid-template-columns:1fr 1fr;gap:16px}.subscription-facts div:last-child{grid-column:1/-1}}@media (max-width:420px){.site-header{flex-wrap:wrap}.header-actions{justify-content:space-between;width:100%}.grant-numbers,.subscription-facts{grid-template-columns:1fr}.grant-numbers{gap:0}.subscription-heading{flex-direction:column;gap:10px}}
