:root{color:#edf7f8;background:#071d30;font-family:Inter,ui-sans-serif,system-ui,sans-serif}*{box-sizing:border-box}body{margin:0}[hidden]{display:none!important}.page{display:grid;min-height:100svh;place-items:center;padding:1.5rem;background:radial-gradient(circle at 80% 12%,#1c5878 0,transparent 36%),#071d30}.auth-card{width:min(100%,28rem);padding:2.6rem;text-align:center;border:1px solid rgb(126 222 208 / 30%);background:#08263fe0;box-shadow:0 28px 70px #0000004d}.mark{display:grid;width:3rem;height:3rem;margin:0 auto 1.25rem;place-items:center;border:1px solid #49d7c5;color:#49d7c5;font-size:1.3rem;font-weight:800}.eyebrow{margin:0;color:#83dfd4;font-size:.72rem;font-weight:800;letter-spacing:.18em}h1{margin:.6rem 0 .7rem;font-size:1.75rem;letter-spacing:-.04em}#description{margin:0 0 .8rem;color:#b9ced8;line-height:1.55}.access-note{margin:0 0 1.5rem;color:#b9ced8;font-size:.88rem;line-height:1.6}.login-title{margin:0 0 .4rem;font-size:1.15rem}.login-description{margin:0 0 1rem;color:#b9ced8;font-size:.9rem;line-height:1.5}.google-button{display:inline-flex;width:100%;align-items:center;justify-content:center;gap:.7rem;padding:.9rem 1rem;border:0;background:#fff;color:#18344a;cursor:pointer;font:inherit;font-weight:750;transition:filter .18s,transform .18s}.google-button:hover:not(:disabled){filter:brightness(.96);transform:translateY(-1px)}.google-button:disabled,button:disabled{cursor:wait;opacity:.7}.google-button svg{width:1.2rem;height:1.2rem}.message{margin:1.2rem 0 0;color:#96e6da;font-size:.86rem;line-height:1.45}.message.error,.dashboard-message.error{color:#ffb4ae}.privacy-link{display:inline-block;margin-top:1.35rem;color:#a9d7d2;font-size:.8rem}.privacy-link:hover{color:#fff}.support-link{display:block;margin-top:.7rem;color:#a9d7d2;font-size:.8rem}.support-link:hover{color:#fff}.restricted-app{min-height:100svh;background:#f3f7f8;color:#193447}.app-header{display:flex;min-height:5rem;align-items:center;justify-content:space-between;gap:1rem;padding:1rem clamp(1.25rem,5vw,4rem);background:#071d30;color:#edf7f8}.brand{color:#83dfd4;font-size:.9rem;font-weight:850;letter-spacing:.18em;text-decoration:none}.account{display:flex;align-items:center;gap:.85rem;font-size:.85rem}.role-badge{padding:.35rem .6rem;border-radius:999px;background:#49d7c526;color:#83dfd4;font-size:.75rem;font-weight:750}.secondary-button,.primary-button,.remove-button{border:0;cursor:pointer;font:inherit;font-weight:700}.secondary-button{padding:.55rem .8rem;border:1px solid rgb(131 223 212 / 45%);background:transparent;color:#edf7f8}.dashboard{width:min(100%,58rem);margin:0 auto;padding:clamp(2rem,6vw,4rem) 1.25rem}.dashboard .eyebrow{color:#187d76}.dashboard h1{margin-top:.5rem;color:#102d40}.welcome-message,.panel-description{color:#4c6472;line-height:1.6}.dashboard-message{padding:.75rem 1rem;border:1px solid #cbdcdd;background:#fff;color:#187d76;font-size:.9rem}.admin-panel{margin-top:2rem;padding:clamp(1.25rem,4vw,2rem);border:1px solid #d9e4e8;background:#fff;box-shadow:0 8px 24px #071d300f}.panel-heading h2{margin:.45rem 0 0;color:#102d40;font-size:1.35rem}.panel-description{margin:.75rem 0 1.5rem;font-size:.9rem}.allowlist-form{display:grid;grid-template-columns:minmax(12rem,1fr) minmax(9rem,.65fr) auto;align-items:end;gap:.8rem}.allowlist-form label{display:grid;gap:.4rem;color:#345366;font-size:.8rem;font-weight:700}.allowlist-form input,.allowlist-form select{width:100%;min-height:2.8rem;padding:.6rem .7rem;border:1px solid #cbd9df;border-radius:0;background:#fff;color:#193447;font:inherit}.primary-button{min-height:2.8rem;padding:.65rem .95rem;background:#126f6b;color:#fff}.primary-button:hover:not(:disabled){background:#0e5d59}.table-scroll{overflow-x:auto;margin-top:1.5rem}table{width:100%;border-collapse:collapse;text-align:left}th,td{padding:.8rem .55rem;border-bottom:1px solid #e2eaed;font-size:.88rem}th{color:#657b88;font-size:.75rem;text-transform:uppercase;letter-spacing:.04em}td:last-child,th:last-child{text-align:right}.remove-button{padding:.45rem .65rem;background:#fff1ef;color:#a3332a;font-size:.8rem}.remove-button:hover:not(:disabled){background:#ffe2de}.dashboard-privacy-link{display:inline-block;margin-top:2rem;color:#187d76;font-size:.85rem}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;clip-path:inset(50%)}@media(max-width:680px){.app-header{align-items:flex-start;flex-direction:column}.account{width:100%;flex-wrap:wrap}.allowlist-form{grid-template-columns:1fr}.primary-button{width:100%}}
