/* Shared-password gate for the test build only. */
html.password-gate-locked,html.password-gate-locked body{overflow:hidden}
.password-gate{position:fixed;inset:0;z-index:9999;display:grid;place-items:center;padding:24px;background:rgba(5,6,10,.88);backdrop-filter:blur(14px) saturate(.8)}
.password-gate-card{width:min(100%,390px);padding:34px 28px 30px;border:1px solid rgba(226,54,54,.62);background:linear-gradient(145deg,rgba(20,13,18,.98),rgba(7,9,14,.98));box-shadow:0 24px 80px rgba(0,0,0,.58),0 0 28px rgba(226,54,54,.16);text-align:center}
.password-gate-kicker{margin:0 0 14px;color:#e23636;font:10px/1 monospace;letter-spacing:.24em}
.password-gate h1{margin:0;color:#f4f4f4;white-space:nowrap;font:italic 900 clamp(30px,9vw,58px)/.9 Impact,Haettenschweiler,"Arial Narrow Bold","Microsoft YaHei",sans-serif;letter-spacing:-.06em;text-shadow:0 6px 0 rgba(0,0,0,.45)}
.password-gate p{margin:16px 0 22px;color:#9b9ca4;font-size:13px;line-height:1.7}
.password-gate-form{display:grid;gap:10px}
.password-gate-form input{width:100%;box-sizing:border-box;min-height:46px;padding:0 14px;border:1px solid rgba(240,240,240,.2);background:rgba(0,0,0,.42);color:#fff;font:14px monospace;outline:none}
.password-gate-form input:focus{border-color:#e23636;box-shadow:0 0 0 3px rgba(226,54,54,.14)}
.password-gate-form button{min-height:46px;border:1px solid #e23636;background:#8f1f27;color:#fff;cursor:pointer;font:700 12px monospace;letter-spacing:.12em}
.password-gate-form button:active{transform:translateY(1px)}
.password-gate-error{min-height:18px;margin:10px 0 0!important;color:#ff7777!important;font-size:12px!important}
@media (max-width:420px){.password-gate{padding:14px}.password-gate-card{padding:28px 20px 24px}}
