:root{--ink:#102433;--ink-soft:#3d5363;--paper:#f3f7f4;--foam:#fff;--sea:#0f6e6a;--sea-deep:#0a4f4c;--sand:#d8c3a5;--coral:#c45c3e;--line:#1024331f;--shadow:0 24px 60px #10243324;--radius:18px;--font-display:"Fraunces", Georgia, serif;--font-body:"Source Sans 3", "Segoe UI", sans-serif}*,:before,:after{box-sizing:border-box}html,body,#root{min-height:100%}body{color:var(--ink);font-family:var(--font-body);background:radial-gradient(circle at 12% 18%, #0f6e6a2e, transparent 42%), radial-gradient(circle at 88% 8%, #d8c3a573, transparent 36%), linear-gradient(160deg, #e8f1ee 0%, var(--paper) 48%, #e7eee8 100%);margin:0}button,input,select{font:inherit}a{color:var(--sea-deep)}h1,h2,.brand{font-family:var(--font-display);letter-spacing:-.02em;font-weight:700}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.alert{border:1px solid #0000;border-radius:12px;margin:0 0 1rem;padding:.85rem 1rem}.alert-error{color:#7a2f1d;background:#c45c3e1a;border-color:#c45c3e59}.alert-info{color:var(--sea-deep);background:#0f6e6a1a;border-color:#0f6e6a47}.alert-success{color:var(--sea-deep);background:#0f6e6a1f;border-color:#0f6e6a4d}.field{gap:.35rem;margin-bottom:.95rem;display:grid}.field label{color:var(--ink-soft);font-size:.92rem;font-weight:600}.field input,.field select{border:1px solid var(--line);background:var(--foam);width:100%;color:var(--ink);border-radius:12px;padding:.75rem .9rem}.field input:focus,.field select:focus{border-color:var(--sea);outline:2px solid #0f6e6a59}.field-hint{color:var(--ink-soft);margin:0;font-size:.82rem;line-height:1.35}.field-hint code{font-size:.8em}.password-field{display:grid;position:relative}.password-field input{padding-right:2.85rem}.password-toggle{width:2.25rem;height:2.25rem;color:var(--ink-soft);cursor:pointer;background:0 0;border:0;border-radius:999px;place-items:center;display:inline-grid;position:absolute;top:50%;right:.35rem;transform:translateY(-50%)}.password-toggle:hover{color:var(--sea-deep);background:#0f6e6a14}.btn{appearance:none;cursor:pointer;border:0;border-radius:999px;padding:.8rem 1.25rem;font-weight:700;transition:transform .16s,background .16s,opacity .16s}.btn:disabled{opacity:.6;cursor:wait}.btn-primary{background:var(--sea);color:#fff}.btn-primary:hover:not(:disabled){background:var(--sea-deep);transform:translateY(-1px)}.btn-ghost{color:var(--ink-soft);border:1px solid var(--line);background:0 0}.btn-ghost:hover:not(:disabled){background:#ffffff8c}.stack-actions{flex-wrap:wrap;gap:.75rem;margin-top:.5rem;display:flex}.access-shell{grid-template-columns:1.1fr .9fr;min-height:100vh;display:grid}.access-visual{color:#f7fbf9;background:linear-gradient(145deg,#0a4f4ceb,#102433c7),url("data:image/svg+xml,%3Csvg width='160' height='160' viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 80c40-30 80-30 160 0M0 120c40-30 80-30 160 0' fill='none' stroke='rgba(255,255,255,0.08)' stroke-width='2'/%3E%3C/svg%3E"),linear-gradient(#0f6e6a,#102433);padding:3.5rem clamp(1.5rem,4vw,4rem);position:relative;overflow:hidden}.access-visual .brand{margin:0 0 1rem;font-size:clamp(2.4rem,5vw,4rem);animation:.7s both rise}.access-visual p{color:#f7fbf9e0;max-width:28rem;font-size:1.15rem;line-height:1.55;animation:.9s both rise}.access-panel{place-items:center;padding:2rem 1.25rem;display:grid}.access-card{border-radius:var(--radius);width:min(100%,420px);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffdb;border:1px solid #ffffffb3;padding:1.75rem;animation:.65s both rise}.access-card h1{margin:0 0 .35rem;font-size:1.85rem}.access-card .lede{color:var(--ink-soft);margin:0 0 1.35rem}.app-shell{grid-template-rows:auto 1fr;min-height:100vh;display:grid}.app-topbar{border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffc7;justify-content:space-between;align-items:center;gap:1rem;padding:1rem clamp(1rem,3vw,2rem);display:flex}.app-topbar .brand{margin:0;font-size:1.35rem}.app-main{padding:clamp(1.25rem,3vw,2.25rem)}.panel{border-radius:var(--radius);box-shadow:var(--shadow);background:#ffffffd6;border:1px solid #ffffffb3;max-width:720px;padding:1.5rem}.meta-grid{gap:.75rem;margin:1.25rem 0 0;display:grid}.meta-item{border-bottom:1px solid var(--line);justify-content:space-between;gap:1rem;padding:.75rem 0;display:flex}.meta-item:last-child{border-bottom:0}.meta-item span{color:var(--ink-soft)}.unit-list{gap:.75rem;margin:1rem 0 0;display:grid}.unit-option{text-align:left;border:1px solid var(--line);background:var(--foam);cursor:pointer;border-radius:14px;width:100%;padding:1rem}.unit-option:hover,.unit-option:focus-visible{border-color:var(--sea);outline:none;box-shadow:0 0 0 3px #0f6e6a26}.unit-option strong{margin-bottom:.2rem;display:block}.unit-option span{color:var(--ink-soft);font-size:.92rem}@keyframes rise{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media (width<=900px){.access-shell{grid-template-columns:1fr}.access-visual{min-height:220px;padding:2rem 1.25rem}}
