.access-shell{min-height:100svh;display:grid;grid-template-columns:minmax(0,1.08fr) minmax(420px,.92fr);background:var(--surface,#fff)}
.access-showcase{background:#173d32;color:#f4f7ee;padding:clamp(38px,5vw,88px);display:flex;flex-direction:column;position:relative;overflow:hidden}
.access-showcase:after{content:"";position:absolute;width:440px;height:440px;border:1px solid #ffffff12;border-radius:50%;right:-240px;bottom:90px;box-shadow:0 0 0 60px #ffffff04,0 0 0 120px #ffffff03;pointer-events:none}
.access-logo{font-size:27px;font-weight:650;letter-spacing:-1px;display:flex;align-items:center;gap:12px}.access-logo svg{width:32px;height:32px;stroke:#c4decf}
.access-copy{margin:auto 0;padding:65px 0 55px;max-width:590px;z-index:1}.access-kicker{text-transform:uppercase;letter-spacing:2px;font-size:12px;font-weight:650;color:#bad1c5}.access-copy h1{font-size:clamp(38px,4.1vw,66px);letter-spacing:-2px;line-height:1.08;font-weight:550;color:inherit;margin:22px 0}.access-copy p{font-size:18px;line-height:1.75;color:#c2d6ca;max-width:450px}
.access-features{display:grid;gap:25px;margin-top:45px}.access-feature{display:flex;gap:15px;align-items:flex-start}.access-feature>svg{width:23px;height:23px;flex-shrink:0;margin-top:3px;stroke:#b9d4c6}.access-feature strong{display:block;font-size:16px;font-weight:600}.access-feature small{display:block;font-size:14px;line-height:1.6;color:#abc7b7;margin-top:5px}.access-private{display:flex;align-items:center;gap:9px;color:#aac7b7;font-size:13px;z-index:1}.access-private svg{width:16px;height:16px}
.access-panel{padding:35px clamp(30px,5vw,90px);display:flex;flex-direction:column;min-width:0}.access-topbar{display:flex;justify-content:flex-end;margin-bottom:35px}.access-body{width:100%;max-width:410px;margin:auto; padding:40px 0 65px}.access-body .access-kicker{color:var(--muted)}.access-body h2{font-size:42px;letter-spacing:-1.5px;line-height:1.15;margin:16px 0;color:var(--ink)}.access-description{font-size:17px;line-height:1.65;color:var(--muted);margin:0 0 28px}.access-body .field label{font-size:15px;margin-bottom:10px}.access-body input{font-size:17px;min-height:54px;border-radius:12px;padding:14px 16px}.access-body input.access-code{font-size:27px;letter-spacing:7px;font-variant-numeric:tabular-nums}.access-body .btn{width:100%;min-height:52px;justify-content:center;border-radius:12px;font-size:16px;margin-top:10px}.access-body .btn.primary{background:#285b48;color:white}.access-divider{display:flex;gap:15px;align-items:center;color:var(--muted);font-size:13px;margin:24px 0}.access-divider:before,.access-divider:after{content:"";height:1px;background:var(--line);flex:1}.access-help{font-size:13px;line-height:1.6;color:var(--muted);margin-top:24px}.access-error{font-size:14px;line-height:1.55;color:#b7473e;min-height:22px;margin:14px 0 6px}.access-inline{background:none;border:0;padding:0;color:var(--green);font:inherit;text-decoration:underline;cursor:pointer}.access-actions{display:flex;justify-content:space-between;gap:16px;margin-top:20px;font-size:14px}.access-device{padding:20px;border:1px solid var(--line);border-radius:14px;margin:22px 0;background:var(--bg)}.access-device>svg{width:30px;height:30px;stroke:var(--green);margin-bottom:14px}.access-device strong{display:block;font-size:17px}.access-device p{font-size:14px;line-height:1.65;color:var(--muted);margin:8px 0 0}.access-mobile-brand{display:none}.access-body button:disabled{opacity:.55;cursor:wait}
html[data-theme=dark] .access-showcase{background:#102e25}html[data-theme=dark] .access-panel{background:var(--bg)}html[data-theme=dark] .access-body .btn.primary{background:#78c4a0;color:#102d23}html[data-theme=dark] .access-error{color:#f39c8e}
@media(min-width:1700px){.access-copy{max-width:700px}.access-body{max-width:450px}}
@media(max-width:850px){.access-shell{grid-template-columns:1fr}.access-showcase{display:none}.access-panel{min-height:100svh;padding:24px}.access-body{padding:30px 0 50px}.access-mobile-brand{display:flex;margin-bottom:42px;font-size:24px;color:var(--green)}.access-mobile-brand svg{stroke:var(--green)}.access-topbar{margin-bottom:0}.access-body h2{font-size:36px}}

.access-setup-note{padding:14px 16px;border:1px solid var(--line);border-radius:12px;background:var(--bg);color:var(--muted);font-size:14px;line-height:1.6;margin-top:20px}
