:root{color:#18251f;font-synthesis:none;background:#f1f4ed;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{background:radial-gradient(circle at 15% 10%,#bcd8c38c,#0000 34rem),linear-gradient(145deg,#f7f8f3 0%,#e8eee7 100%);min-height:100vh;margin:0}main:not(.auth-shell){width:min(100% - 2rem,48rem);margin-inline:auto;padding-block:4rem}h1{margin-block:0 .75rem}p{margin:0;line-height:1.5}button,input{font:inherit}.auth-shell{place-items:center;min-height:100vh;padding:1.25rem;display:grid}.auth-card{-webkit-backdrop-filter:blur(1rem);backdrop-filter:blur(1rem);background:#fffffceb;border:1px solid #2a47381f;border-radius:1.5rem;width:min(100%,28rem);padding:clamp(1.5rem,6vw,2.75rem);box-shadow:0 1.5rem 4rem #1d32271f}.auth-brand{color:#214e39;letter-spacing:-.02em;align-items:center;gap:.625rem;font-size:1.05rem;font-weight:750;display:flex}.auth-brand-mark{color:#f8fff8;background:#286447;border-radius:.7rem;place-items:center;width:2rem;height:2rem;display:grid;box-shadow:inset 0 0 0 1px #fff3}.auth-eyebrow{color:#517160;letter-spacing:.12em;text-transform:uppercase;margin-top:2.5rem;font-size:.75rem;font-weight:750}.auth-card h1{color:#16271e;letter-spacing:-.045em;margin:.45rem 0 0;font-size:clamp(1.9rem,8vw,2.45rem);line-height:1.08}.auth-description{color:#5b6d63;margin-top:.85rem}.login-form{gap:1.15rem;margin-top:2rem;display:grid}.login-field{gap:.45rem;display:grid}.login-field label{color:#24382d;font-size:.875rem;font-weight:700}.login-field input{color:#15251c;background:#fff;border:1px solid #b9c7bf;border-radius:.75rem;outline:none;width:100%;min-height:3rem;padding:.75rem .9rem;transition:border-color .14s,box-shadow .14s}.login-field input:hover{border-color:#789486}.login-field input:focus-visible{border-color:#286447;box-shadow:0 0 0 .22rem #2864472e}.login-error{color:#7a2b23;background:#fff4f1;border:1px solid #e8b8b1;border-radius:.75rem;padding:.75rem .9rem;font-size:.9rem}.login-submit{color:#f8fff9;cursor:pointer;background:#286447;border:0;border-radius:.8rem;min-height:3.15rem;font-weight:750;transition:background .14s,box-shadow .14s,transform .14s;box-shadow:0 .55rem 1.2rem #28644733}.login-submit:hover:not(:disabled){background:#1f543a;transform:translateY(-1px);box-shadow:0 .7rem 1.4rem #28644742}.login-submit:focus-visible{outline-offset:.18rem;outline:.2rem solid #9bc4aa}.login-submit:disabled{cursor:wait;opacity:.7}.auth-footnote{color:#718078;text-align:center;margin-top:1.75rem;font-size:.78rem}@media (max-width:30rem){.auth-shell{align-items:start;padding:.75rem}.auth-card{border-radius:1.15rem;margin-top:.75rem}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important}}.session-navigation{align-items:center;gap:.4rem;padding:1rem clamp(1rem,4vw,2rem) 0;display:flex}.session-navigation-link{color:#244837;border-radius:999px;padding:.65rem .85rem;font-weight:700;text-decoration:none}.session-navigation-link:hover,.session-navigation-link:focus-visible{background:#bcd8c361}.session-navigation-spacer{flex:1}.logout-control{flex-direction:column;align-items:flex-end;gap:.4rem;display:flex}.logout-button{color:#18251f;cursor:pointer;font:inherit;background:0 0;border:1px solid #2a473847;border-radius:999px;min-height:2.75rem;padding:.55rem 1rem;font-weight:700}.logout-button:hover:not(:disabled){background:#bcd8c359}.logout-button:disabled{cursor:wait;opacity:.65}.logout-error{color:#9f2d25;text-align:right;max-width:18rem;margin:0;font-size:.875rem}.institutions-page{width:min(100% - 2rem,64rem)}.institutions-heading{margin-bottom:2rem}.institutions-heading>p:last-child,.institution-card p{color:#5b6d63}.institutions-eyebrow{color:#517160;letter-spacing:.12em;text-transform:uppercase;margin-bottom:.45rem;font-size:.75rem;font-weight:750}.institutions-manager{gap:1.5rem;display:grid}.institution-form{gap:1rem;display:grid}.institution-create-form{background:#fffffce6;border:1px solid #2a473824;border-radius:1rem;grid-template-columns:minmax(0,1fr) minmax(0,.8fr) auto;align-items:end;padding:1.25rem}.institution-field{gap:.4rem;display:grid}.institution-field label{color:#24382d;font-size:.875rem;font-weight:700}.institution-field input{color:#15251c;background:#fff;border:1px solid #b9c7bf;border-radius:.65rem;min-width:0;min-height:2.8rem;padding:.65rem .75rem}.institution-field input:focus-visible{border-color:#286447;outline:.2rem solid #2864472e}.institution-field input[aria-invalid=true]{border-color:#b94a3e}.institution-field-error{color:#8e3028;font-size:.82rem}.institution-primary-button,.institution-secondary-button,.institution-filter-button{cursor:pointer;font:inherit;border-radius:.65rem;min-height:2.8rem;padding:.6rem .9rem;font-weight:700}.institution-primary-button{color:#fff;background:#286447;border:1px solid #286447}.institution-secondary-button,.institution-filter-button{color:#244837;background:#fff;border:1px solid #2a47383d}.institution-primary-button:disabled,.institution-secondary-button:disabled{cursor:wait;opacity:.62}.institution-filters,.institution-card-actions{flex-wrap:wrap;gap:.55rem;display:flex}.institution-filter-button[aria-pressed=true]{background:#d9e8dc;border-color:#70947d}.institution-status{color:#456354;min-height:1.5rem;font-size:.9rem}.institution-list{gap:.8rem;margin:0;padding:0;list-style:none;display:grid}.institution-card{background:#fffffce0;border:1px solid #2a473824;border-radius:.9rem;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.1rem;display:flex}.institution-card h2{margin:0 0 .25rem;font-size:1rem}.institution-edit-form{grid-template-columns:minmax(0,1fr) minmax(0,.8fr) auto;width:100%}@media (max-width:42rem){.institution-create-form,.institution-edit-form{grid-template-columns:1fr}.institution-card{flex-direction:column;align-items:stretch}.session-navigation{flex-wrap:wrap}}
