.account-locked>.topbar,.account-locked>.tabs,.account-locked>main{display:none}
.account-locked{min-height:100dvh;display:grid;align-items:center;padding:40px 24px;background:var(--canvas)}
.account-gate{display:grid;grid-template-columns:1.15fr 1fr;width:100%;max-width:1100px;margin:0 auto;border:1px solid var(--line);border-radius:24px;background:var(--paper);overflow:hidden;box-shadow:0 20px 80px #203e3510}
.gate-content{padding:48px}
.gate-brand{display:flex;align-items:center;gap:12px;font-size:25px;font-weight:700;letter-spacing:-.7px;margin-bottom:56px}
.account-gate .section-eyebrow{color:var(--orange);font-size:11px}
.account-gate h1{font-size:clamp(30px,3vw,40px);letter-spacing:-1.6px;line-height:1.45;margin-bottom:20px}
.gate-intro{line-height:1.9;color:var(--muted);font-size:15px}
.gate-access{margin-top:32px;border-top:1px solid var(--line);padding-top:24px}
#login-message{font-size:13px;line-height:1.9;color:var(--muted);margin-bottom:16px;overflow-wrap:anywhere}
#google-signin:not(:empty){margin:16px 0}
.gate-access .button{width:100%;min-height:48px;justify-content:space-between;margin-top:8px}
.gate-footnote{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--muted);margin:28px 0 0}
.gate-footnote .icon{width:16px;height:16px}
.vault-location{margin-top:20px;padding:16px;background:var(--soft);border:1px solid var(--line);border-radius:10px;font-size:12px}
.vault-location p{margin:0 0 8px;color:var(--muted);line-height:1.8}
.vault-location code{display:block;overflow-wrap:anywhere;color:var(--ink)}
.vault-path-controls{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.vault-path-controls input{flex:1;min-width:180px;width:100%;font-family:Consolas,monospace;font-size:14px}
.button.danger{color:var(--danger);border-color:var(--danger)}
.button.danger:hover:not(:disabled){background:var(--danger-soft)}
.gate-art{display:flex;flex-direction:column;justify-content:center;padding:40px 24px;background:#19382f;color:#537663;position:relative}
.gate-art .section-eyebrow{color:#b8cfbd;text-align:center;font-size:10px;letter-spacing:1.4px}
.gate-map{width:100%;height:auto;max-height:420px;display:block;margin:24px auto}
.gate-art-caption{font-size:20px;line-height:1.9;color:#b8cfbd;text-align:center;letter-spacing:-.5px}
.gate-art-caption strong{font-size:24px;font-weight:500;color:#eff5e9}
.sync-card{margin-bottom:24px;padding:24px;border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);box-shadow:var(--shadow);overflow-wrap:anywhere}
.sync-card h2{margin:0 0 10px;font-size:19px}
.sync-card p{line-height:1.85;color:var(--muted);font-size:14px;max-width:85ch}
.sync-actions{display:flex;gap:10px;flex-wrap:wrap;margin:20px 0}
.device-row{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 0;border-top:1px solid var(--line)}
.device-row>div{min-width:0}
.device-row small{display:block;margin-top:6px;color:var(--muted);font-size:12px}
.device-actions{display:flex;gap:8px;flex-wrap:wrap}
.sync-card .sync-status{padding:16px;border-radius:9px;background:var(--accent);color:var(--orange);font-weight:600;max-width:none}
.sync-card code{display:block;overflow-wrap:anywhere;padding:16px;background:var(--soft);border-radius:8px;font-size:13px}
.sync-card details{margin-top:16px;border-top:1px solid var(--line);padding-top:6px}
.sync-card details p{font-size:13px}
.conflict-card{padding:20px;border:1px solid #c3924f;background:#fffcf5;border-radius:12px;margin:16px 0}
.conflict-card pre{white-space:pre-wrap;overflow-wrap:anywhere;max-height:200px;overflow:auto;font-size:13px;padding:14px;background:var(--paper);border:1px solid var(--line);border-radius:8px}
.account-name{max-width:180px;overflow-wrap:anywhere;text-align:left}
.capture-actions{display:flex;gap:12px}
.capture-actions>button{flex:1}
.test-note{border-top:1px solid var(--line);padding-top:20px;margin-top:24px;font-size:13px}
.test-note p{font-size:12px;color:var(--muted);overflow-wrap:anywhere}
.test-note .button{margin:4px 4px 0 0}
.security-dialog{max-width:540px;width:calc(100% - 32px)}
.security-dialog input:not([type=checkbox]),.security-dialog textarea{width:100%;margin:12px 0;padding:12px}
.security-check{display:flex;align-items:flex-start;gap:10px;margin-top:20px;font-size:14px;line-height:1.8;cursor:pointer}
.security-check input{margin-top:5px;width:18px;height:18px;flex-shrink:0}
#approval-pending{padding:20px;background:#fff5df;border:1px solid #e0c98f;border-radius:10px;color:#715318}
#device-fingerprint{margin-bottom:12px;font-size:13px;overflow-wrap:anywhere}
@media(max-width:1100px){.gate-content{padding:36px}.gate-brand{margin-bottom:40px}.account-name{max-width:150px}.device-row{align-items:flex-start;flex-direction:column;gap:12px}}
@media(max-width:760px){
 .account-locked{padding:24px 16px;display:block}.account-gate{display:block;max-width:520px;border-radius:18px}.gate-content{padding:28px 24px}.gate-brand{margin-bottom:40px}.account-gate h1{font-size:32px}.gate-intro br{display:none}.gate-intro{font-size:14px}.gate-art{display:none}.gate-footnote{font-size:12px;align-items:flex-start}.gate-footnote .icon{margin-top:3px}
 .sync-card{padding:20px}.sync-card h2{font-size:18px}.sync-card p{font-size:13px}.capture-actions{flex-direction:column}.sync-actions .button{flex:1 1 150px}.account-name{max-width:150px}.security-dialog{padding:24px}.security-dialog input:not([type=checkbox]),.security-dialog textarea{font-size:16px}
}
#direct-peer-form label{display:block;margin:12px 0 6px;font-size:14px;font-weight:600}#direct-peer-form .inline-controls{flex-wrap:wrap}#direct-peer-url{flex:1;min-width:180px}#direct-peer-form button{min-height:44px}
