.app{filter:none}
.app.locked{pointer-events:none;user-select:none;filter:blur(7px) saturate(.7);opacity:.28}
.gate{position:fixed;inset:0;z-index:80;display:none;align-items:center;justify-content:center;padding:24px;background:radial-gradient(900px 480px at 50% 0%,rgba(26,212,176,.14),transparent 55%),rgba(4,12,10,.82);backdrop-filter:blur(10px)}
.gate.show{display:flex}
.gatecard{width:min(440px,100%);background:#0c1f1a;border:1px solid #1b4338;border-radius:18px;padding:22px 22px 18px;box-shadow:0 24px 80px rgba(0,0,0,.45)}
.gatebrand{display:flex;gap:12px;align-items:center;margin-bottom:16px}
.gatebrand img{width:64px;height:64px;object-fit:contain}
.tabs{display:flex;background:#081612;border:1px solid #16352c;border-radius:12px;padding:4px;margin:14px 0 16px;gap:4px}
.tabs button{all:unset;flex:1;text-align:center;cursor:pointer;padding:10px 8px;border-radius:9px;font-size:13.5px;font-weight:700;color:#8fb3a8}
.tabs button.on{background:#0e8f78;color:#04150f}
label{display:block;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:#8fb3a8;margin:10px 0 6px}
input[type=email],input[type=password],input[type=text]{width:100%;background:#071410;border:1px solid #16352c;color:#e7f4ef;border-radius:10px;padding:11px 12px;font-size:14px}
input:focus{outline:1px solid #1ad4b0;border-color:#1ad4b0}
.err{min-height:18px;color:#ef6b6b;font-size:12px;margin-top:8px}
.ok{color:#3ee0a4}
.btnblock{width:100%;margin-top:12px;padding:12px;font-size:14px}
.ghost{background:transparent;color:#e7f4ef;border:1px solid #16352c}
.fine{font-size:12px;color:#5e7f76;margin-top:12px;line-height:1.5}
.plans{display:grid;gap:8px;margin-top:12px}
.plan{border:1px solid #16352c;border-radius:12px;padding:12px;cursor:pointer;background:#0a1a16}
.plan:hover{border-color:#1ad4b0}
.plan b{display:block;font-size:15px}
.plan span{color:#8fb3a8;font-size:12px}
.trialchip{font-size:12px;border:1px solid #1b4338;color:#1ad4b0;padding:6px 10px;border-radius:99px}
.trialchip.warn{color:#f0c36a;border-color:#5a4720}
.trialchip.dead{color:#ef6b6b;border-color:#5a2a2a}
.lockpage{display:none;padding:18px 20px}
.lockpage.on{display:block}
.lockcard{max-width:560px}
.acct{font-size:12px;color:#8fb3a8;line-height:1.45}
.acct button{all:unset;cursor:pointer;color:#1ad4b0;font-weight:700}
.hidden{display:none!important}
.check{display:flex;gap:8px;align-items:flex-start;margin-top:12px;font-size:12px;color:#8fb3a8;text-transform:none;letter-spacing:0}
.check input{margin-top:2px}
