.access-page{min-height:100vh;padding:0 24px 60px;background:linear-gradient(180deg,#eef6ee,#f8f6ef 46%)}.access-page>nav{width:min(760px,100%);min-height:76px;margin:auto;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);color:var(--muted);font-size:.82rem}.access-card{width:min(540px,100%);margin:64px auto;padding:40px;border:1px solid var(--line);border-radius:30px;background:var(--white);box-shadow:var(--shadow)}.access-kicker{color:var(--green);font-size:.72rem;font-weight:850;text-transform:uppercase;letter-spacing:.13em}.access-card h1{margin:12px 0 10px;font-size:clamp(2rem,6vw,3.2rem);line-height:1;letter-spacing:-.055em}.access-card>p,.access-success p{color:var(--muted);line-height:1.6}.access-form{display:grid;gap:16px;margin-top:28px}.access-form label{display:grid;gap:7px;color:var(--muted);font-size:.82rem;font-weight:750}.access-form input{width:100%;min-height:50px;padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--ink);font:inherit}.access-form input:focus{outline:3px solid rgba(23,108,90,.18);border-color:var(--green)}.access-button-link,.access-form button{display:flex;align-items:center;justify-content:center;min-height:52px;margin-top:6px;border:0;border-radius:999px;background:var(--green);color:#fff;font:inherit;font-weight:850;cursor:pointer}.access-form button:disabled{cursor:not-allowed;opacity:.45}.access-error{margin:0;padding:12px 14px;border-radius:12px;background:#fdebe7;color:#8a2f25;font-size:.86rem;line-height:1.45}.access-links{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;margin-top:24px;padding-top:20px;border-top:1px solid var(--line);color:var(--green);font-size:.82rem;font-weight:800}.access-success{margin-top:28px;padding:22px;border-radius:16px;background:var(--mint)}.access-success strong{font-size:1.1rem}.access-success .access-button-link{margin-top:18px}.access-identity{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:24px;padding:12px 14px;border-radius:14px;background:#edf5f1;color:var(--ink);font-size:.88rem;font-weight:750}.access-identity button,.access-secondary{border:0;background:transparent;color:var(--green);font:inherit;font-weight:850;cursor:pointer}.access-choice,.access-flow{display:grid;gap:14px;margin-top:22px}.access-choice>p,.access-flow>p{margin:0;color:var(--muted);line-height:1.55}.access-choice>button{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:17px 18px;border:1px solid var(--line);border-radius:16px;background:#fff;color:var(--ink);font:inherit;font-weight:850;text-align:left;cursor:pointer}.access-choice>button:hover{border-color:var(--green);background:#f7fbf8}.access-choice small{color:var(--green);font-weight:750}.access-flow h2{margin:0;font-size:1.45rem;letter-spacing:-.03em}.access-flow-tag{color:var(--green);font-size:.73rem;font-weight:850;letter-spacing:.09em;text-transform:uppercase}.access-primary{min-height:52px;border:0;border-radius:999px;background:var(--green);color:#fff;font:inherit;font-weight:850;cursor:pointer}.access-primary:disabled{opacity:.45}.access-recovery{justify-self:start;color:var(--green);font-size:.82rem;font-weight:800}.access-success .access-secondary{margin-top:8px;padding:0}.access-success p{margin-bottom:10px}.access-loading{margin-top:28px;padding:24px;border-radius:18px;background:var(--mint);color:var(--green);font-weight:800;text-align:center}.access-error-panel{margin-top:28px}.access-error-panel>p{padding:14px;border-radius:14px;background:#fdebe7;color:#8a2f25;line-height:1.55}.access-error-panel .access-button-link{margin-top:18px}.first-access-card{width:min(600px,100%)}.authenticator-name{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 16px;border-radius:15px;background:#edf5f1}.authenticator-name small{color:var(--muted);font-weight:750}.authenticator-name strong{color:var(--green);letter-spacing:.04em}.totp-qr{display:block;width:min(240px,76vw);height:auto;margin:4px auto;padding:12px;border:1px solid var(--line);border-radius:20px;background:#fff}.totp-steps{margin:0;padding:18px 18px 18px 38px;border-radius:16px;background:#f7f7f3;color:var(--muted);line-height:1.6}.totp-code{text-align:center;font-size:1.3rem!important;font-weight:850;letter-spacing:.22em}.first-access-form{gap:18px}.authenticator-downloads{display:grid;grid-template-columns:1fr 1fr;gap:9px}.authenticator-downloads a{display:flex;align-items:center;justify-content:center;min-height:46px;padding:10px 13px;border:1px solid var(--line);border-radius:13px;background:#fff;color:var(--green);font-size:.82rem;font-weight:850;text-align:center}.authenticator-downloads a:hover{border-color:var(--green);background:#f7fbf8}.access-simple-steps{margin:0;padding:16px 18px 16px 38px;border-radius:15px;background:#f7f7f3;color:var(--muted);font-size:.9rem;line-height:1.65}.access-help-note{padding:13px 15px;border-left:4px solid var(--lime);border-radius:8px;background:#f7f7f3;font-size:.86rem}.authenticator-install,.setup-choice{display:grid;gap:8px;padding:17px;border-radius:16px;background:#f7f7f3}.authenticator-install>p,.setup-choice>p{margin:0;color:var(--muted);font-size:.88rem;line-height:1.55}.same-device-setup{padding:16px;border:1px solid var(--line);border-radius:16px;background:#fff}.same-device-setup summary{color:var(--green);font-weight:850;cursor:pointer}.same-device-setup>p{color:var(--muted);font-size:.86rem;line-height:1.55}.same-device-setup code{display:block;overflow-wrap:anywhere;padding:12px;border-radius:10px;background:#eef2ef;color:var(--ink);font-size:.78rem;line-height:1.5;user-select:all}.same-device-setup button{width:100%;min-height:44px;margin-top:10px;border:1px solid var(--green);border-radius:999px;background:#fff;color:var(--green);font:inherit;font-weight:850;cursor:pointer}.same-device-setup>p[role=status]{margin-bottom:0;color:var(--green);font-weight:750}@media(max-width:560px){.access-page{padding-inline:16px}.access-card{margin-top:36px;padding:30px 22px}.access-page>nav span{font-size:.72rem}.access-links{display:grid}}@media(max-width:430px){.authenticator-downloads{grid-template-columns:1fr}}