:root{--bg-deep:#051923;--bg-panel:#072a3a;--bg-panel-soft:#0a3550;--navy:#003554;--accent:#0582ca;--accent-strong:#2fa9ea;--accent-soft:#0582ca29;--gold:#ffc720;--ink:#eaf4fb;--ink-dim:#9db4c6;--border:#589bbf47;color:var(--ink);background:var(--bg-deep);font-family:Poppins,ui-sans-serif,system-ui,sans-serif}*{box-sizing:border-box}body{min-width:320px;margin:0}button{font:inherit}.shell{background:radial-gradient(680px 480px at 12% -10%, #0582ca59, transparent 60%), radial-gradient(720px 520px at 110% 10%, #ffc72014, transparent 55%), radial-gradient(1200px 800px at 50% 120%, #003554e6, transparent 60%), var(--bg-deep);place-items:center;min-height:100vh;padding:24px;display:grid;position:relative;overflow:hidden}.shell:before{content:"";pointer-events:none;background-image:linear-gradient(#eaf4fb0d 1px,#0000 1px),linear-gradient(90deg,#eaf4fb0d 1px,#0000 1px);background-size:42px 42px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(circle at 50% 30%,#000 0%,#0000 72%);mask-image:radial-gradient(circle at 50% 30%,#000 0%,#0000 72%)}.panel,.portal{background:linear-gradient(165deg, var(--bg-panel-soft), var(--bg-panel) 60%);border:1px solid var(--border);z-index:1;border-radius:24px;width:min(100%,760px);position:relative;box-shadow:0 30px 80px #010a128c,inset 0 1px #ffffff0f}.login-panel{max-width:480px;padding:48px 44px}.portal{padding:36px}.eyebrow{color:var(--accent-strong);letter-spacing:.32em;text-transform:uppercase;margin:0 0 10px;font-size:.72rem;font-weight:700}h1{color:#fff;letter-spacing:-.02em;margin:0 0 12px;font-size:clamp(1.75rem,4vw,2.35rem);font-weight:700}p{color:var(--ink-dim);line-height:1.6}button,a.quiet-button{background:var(--accent);color:#fff;cursor:pointer;font:inherit;border:0;border-radius:12px;padding:13px 18px;font-weight:600;transition:background .15s,transform .15s,box-shadow .15s}button:hover:not(:disabled),button:focus-visible{background:var(--accent-strong);outline:2px solid var(--gold);outline-offset:2px;transform:translateY(-1px);box-shadow:0 8px 24px #0582ca66}button:disabled{cursor:wait;opacity:.6}.login-panel button{width:100%;margin-top:8px}.portal-header{justify-content:space-between;align-items:start;gap:24px;margin-bottom:28px;display:flex}.portal-header h1{margin-bottom:4px}.portal-header p:not(.eyebrow){color:var(--ink);overflow-wrap:anywhere;opacity:.75;margin:0;font-size:.9rem}.header-actions{align-items:center;gap:10px;display:flex}.quiet-button{border:1px solid var(--border);color:var(--ink);white-space:nowrap;background:0 0}a.quiet-button{align-items:center;text-decoration:none;display:inline-flex}.quiet-button:hover:not(:disabled),.quiet-button:focus-visible{background:var(--accent-soft);box-shadow:none;transform:none}.application-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;display:grid}.application-card{border:1px solid var(--border);color:var(--ink);text-align:left;background:#eaf4fb08;justify-content:start;align-items:center;gap:14px;min-height:112px;padding:20px;display:flex}.application-card:hover:not(:disabled),.application-card:focus-visible{background:var(--accent-soft);border-color:var(--accent-strong);transform:translateY(-2px);box-shadow:0 12px 32px #0582ca40}.application-card span:last-child{gap:4px;display:grid}.application-card strong{color:#fff}.application-card small{color:var(--accent-strong);font-weight:600}.card-icon{background:linear-gradient(155deg, var(--accent), var(--navy));color:#fff;border-radius:12px;place-items:center;width:48px;height:48px;font-weight:800;display:grid}.access-page{width:min(100%,880px)}.access-management{gap:28px;display:grid}.access-section{border:1px solid var(--border);background:#eaf4fb09;border-radius:18px;gap:20px;padding:24px;display:grid}.section-heading{max-width:680px}.section-kicker{color:var(--accent-strong);letter-spacing:.16em;margin:0 0 10px;font-size:.68rem;font-weight:700;line-height:1}.access-section h2{color:#fff;letter-spacing:-.01em;margin:0 0 6px;font-size:1.2rem}.administrator-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.administrator-list li{color:var(--ink);background:#0217226b;border:1px solid #79b5d63d;border-radius:10px;padding:12px 14px}.section-heading>p:not(.section-kicker){margin:0;font-size:.92rem}.access-form{background:#0217226b;border:1px solid #79b5d63d;border-radius:12px;grid-template-columns:minmax(0,1.35fr) minmax(180px,.85fr) auto;align-items:end;gap:16px;padding:20px;display:grid}.access-form label{color:#bad0df;gap:8px;font-size:.78rem;font-weight:600;display:grid}.access-form input,.access-form select{color:var(--ink);font:inherit;background:#041d2a;border:1px solid #79b5d661;border-radius:10px;min-height:46px;padding:11px 13px}.access-form input:focus-visible,.access-form select:focus-visible{border-color:var(--accent-strong);outline:2px solid var(--gold);outline-offset:1px}.access-form button{white-space:nowrap;min-height:46px}.members-heading{justify-content:space-between;align-items:end;gap:24px;display:flex}.members-heading>p{max-width:30ch;margin:0;font-size:.86rem}.member-list{gap:12px;display:grid}.member-row{background:#031b287a;border:1px solid #79b5d638;border-radius:12px;gap:14px;padding:16px;display:grid}.member-identity{flex-wrap:wrap;align-items:baseline;gap:8px 14px;display:flex}.member-identity strong{color:#fff;overflow-wrap:anywhere;font-size:.92rem}.member-identity span{color:var(--ink-dim);font-size:.78rem}.member-apps{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;display:grid}.app-toggle{color:var(--ink);text-align:left;background:#eaf4fb06;border:1px solid #79b5d647;border-radius:10px;align-items:flex-start;gap:3px;min-height:62px;padding:11px 13px;font-size:.85rem;font-weight:600;display:grid}.app-toggle:hover:not(:disabled),.app-toggle:focus-visible{background:#0582ca2e;transform:none;box-shadow:0 0 0 1px #2fa9ea38}.app-toggle small{color:var(--ink-dim);font-size:.72rem;font-weight:600}.app-toggle.granted{border-color:var(--accent-strong);color:#fff;background:#0582ca33}.app-toggle.granted small{color:#a8dfff}.delete-member-button{color:#ffaaa2;background:0 0;border:1px solid #ff8a8080;justify-self:end}.delete-member-button:hover:not(:disabled),.delete-member-button:focus-visible{box-shadow:none;background:#ff52521f;border-color:#ff8a80;transform:none}.error{color:#ff8a80;margin:18px 0 0;font-weight:600}.empty{border:1px dashed var(--border);background:#eaf4fb08;border-radius:12px;margin:0;padding:20px}@media (width<=560px){.shell{padding:14px}.login-panel,.portal{padding:26px}.portal-header{flex-direction:column;align-items:stretch}.quiet-button{width:100%}.header-actions{flex-direction:column;width:100%}.access-form{grid-template-columns:1fr}.access-form button{width:100%}.members-heading{flex-direction:column;align-items:start;gap:8px}}@media (width<=440px){.access-section{padding:18px}.member-apps{grid-template-columns:1fr}}.member-deletion{margin-top:24px}.member-deletion fieldset{border:1px solid #ff8a8080;border-radius:12px;gap:12px;padding:16px;display:grid}.member-deletion label{align-items:center;gap:10px;display:flex}.member-deletion input[type=radio]{width:auto;margin:0}
