.rio-access{background:var(--rio-canvas);background-image:radial-gradient(ellipse at 12% 0%, var(--rio-glow-lilac), transparent 48%), radial-gradient(ellipse at 100% 18%, var(--rio-glow-sky), transparent 42%);min-height:100svh;color:var(--rio-ink);grid-template-columns:minmax(0,28rem);place-content:center;gap:1.5rem;padding:2.5rem 1rem;display:grid}.rio-access-intro{text-align:center;width:100%}.rio-access-intro>a{min-height:var(--rio-touch);border-radius:var(--rio-radius-input);align-items:center;display:inline-flex}.rio-access-intro img{width:190px;max-width:100%;height:auto;margin:0 auto;display:block}.rio-access-intro>span{color:var(--rio-muted);letter-spacing:.14em;margin-top:.75rem;font-size:.6875rem;font-weight:600;display:block}.rio-access-intro h2,.rio-access-intro>p{display:none}.rio-access-card{border:1px solid var(--rio-border);border-radius:var(--rio-radius-card);background:var(--rio-surface);width:100%;min-width:0;box-shadow:var(--rio-shadow-pop);padding:2rem}.rio-access-card>svg{color:var(--rio-primary);margin-bottom:1rem}.rio-access-card h1{color:var(--rio-primary);letter-spacing:-.025em;margin:0;font-size:clamp(1.625rem,4vw,2rem);font-weight:600;line-height:1.15}.rio-access-card>p{color:var(--rio-muted);margin:.75rem 0 1.5rem;font-size:.9375rem;line-height:1.6}.rio-access-card form{flex-direction:column;gap:.5rem;display:flex}.rio-access-card label{color:var(--rio-ink);margin-top:.5rem;font-size:.875rem;font-weight:600}.rio-access-card input{border:1px solid var(--rio-input-border);border-radius:var(--rio-radius-input);background:var(--rio-surface);width:100%;min-height:48px;color:var(--rio-ink);padding:.75rem;font-size:1rem}.rio-access-button{border:1px solid var(--rio-primary);border-radius:var(--rio-radius-input);background:var(--rio-primary);width:100%;min-height:48px;color:var(--rio-on-primary);font:inherit;cursor:pointer;justify-content:center;align-items:center;gap:.625rem;margin-top:.75rem;padding:.75rem 1rem;font-size:.9375rem;font-weight:600;line-height:1.4;text-decoration:none;display:inline-flex}.rio-access-button:hover:not(:disabled){background:var(--rio-primary-hover)}.rio-access-button:not(.is-secondary):not(:disabled){border-color:var(--rio-info-border);background:var(--rio-accent-gradient);color:var(--rio-primary)}.rio-access-button:not(.is-secondary):hover:not(:disabled){border-color:var(--rio-primary);background:var(--rio-accent-gradient)}.rio-access-button.is-secondary{border-color:var(--rio-input-border);background:var(--rio-surface);color:var(--rio-primary)}.rio-access-button.is-secondary:hover:not(:disabled){background:var(--rio-primary-tint)}.rio-access-password{position:relative}.rio-access-password input{padding-right:3.5rem}.rio-access-password button{width:var(--rio-touch);height:var(--rio-touch);border-radius:var(--rio-radius-input);color:var(--rio-primary);cursor:pointer;background:0 0;border:0;place-items:center;padding:0;display:grid;position:absolute;top:2px;right:3px}.rio-access-password button:hover{background:var(--rio-primary-tint)}.rio-access-back,.rio-access-text{min-height:var(--rio-touch);border-radius:var(--rio-radius-input);color:var(--rio-primary);text-underline-offset:3px;cursor:pointer;background:0 0;border:0;align-items:center;margin-top:1rem;padding:.5rem 0;font-size:.875rem;font-weight:600;text-decoration:underline;display:inline-flex}.rio-access-note,.rio-access-help{border:1px solid var(--rio-info-border);border-radius:var(--rio-radius-input);background:var(--rio-info-bg);color:var(--rio-info-ink);padding:.875rem 1rem;font-size:.875rem;line-height:1.6}.rio-access-help{margin-top:.75rem}.rio-access-error{border:1px solid var(--rio-danger-border);border-radius:var(--rio-radius-input);background:var(--rio-danger-bg);color:var(--rio-danger-ink);padding:.875rem 1rem;font-size:.875rem;line-height:1.6}.rio-access-qr{margin:1rem 0}.rio-access-qr img{width:180px;height:180px;margin:1rem auto}.rio-access-qr p{color:var(--rio-muted);font-size:.875rem;line-height:1.6}.rio-access-revalidation:not([hidden]){z-index:100;border:1px solid var(--rio-info-border);border-radius:var(--rio-radius-card);background:var(--rio-surface);width:min(92vw,38rem);color:var(--rio-ink);box-shadow:var(--rio-shadow-pop);padding:1rem 1.25rem;font-size:.875rem;position:fixed;top:1rem;left:50%;transform:translate(-50%)}.rio-access-revalidation .rio-access-button{margin-top:.75rem}@media (width<=480px){.rio-access{align-content:start;gap:1.25rem;padding:1.5rem 1rem}.rio-access-card{padding:1.5rem 1.25rem}}
