.sv-gate{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:20px;background:var(--bg,#f3f5f7);overflow:auto}
.sv-card{width:100%;max-width:360px;background:var(--surface,#fff);border:1px solid var(--line,#d5dce3);border-radius:12px;padding:28px 24px;display:grid;gap:12px;font-family:var(--f-body,system-ui)}
.sv-logo{width:64px;height:64px;border-radius:14px;justify-self:center}
.sv-card h1{margin:4px 0 0;font-size:20px;text-align:center}
.sv-sub{margin:0;color:var(--muted,#5c6b7a);font-size:14px}.sv-card .sv-sub{text-align:center;margin-bottom:6px}
.sv-card label,.sv-form label{display:grid;gap:4px;font-size:13px;color:var(--muted,#5c6b7a)}
.sv-card input,.sv-form input,.sv-in{font:inherit;font-size:16px;padding:10px 12px;border:1px solid var(--line,#d5dce3);border-radius:8px;background:var(--surface,#fff);color:var(--fg,#16212c);width:100%}
.sv-in{width:140px;font-size:14px;padding:6px 8px}
.sv-btn{appearance:none;font:600 15px var(--f-body,system-ui);padding:11px 16px;border-radius:8px;border:1px solid var(--line,#d5dce3);background:var(--surface,#fff);color:var(--fg,#16212c);cursor:pointer}
.sv-btn:disabled{opacity:.6}
.sv-primary{background:#CD2626;border-color:#CD2626;color:#fff}
.sv-danger{color:var(--out,#b2452b)}
.sv-sm{font-size:13px;padding:6px 10px}
.sv-link{appearance:none;border:0;background:none;color:var(--accent,#1d5fa8);font:500 14px var(--f-body,system-ui);cursor:pointer;padding:4px}
.sv-err{color:var(--out,#b2452b);margin:0;font-size:14px}.sv-ok{color:var(--in,#1f7a4d);margin:0;font-size:14px}
.sv-hint{font-size:13px;color:var(--muted,#5c6b7a);margin:0}
.sv-warn{font-size:14px;background:var(--warn-soft,#fbefcf);padding:8px 10px;border-radius:6px}
.sv-me{appearance:none;width:34px;height:34px;border-radius:50%;border:0;background:#CD2626;color:#fff;font:600 13px var(--f-body,system-ui);cursor:pointer;flex:0 0 auto}
.sv-mark{background:none!important;overflow:hidden}.sv-mark img{width:22px;height:22px;display:block;border-radius:5px}
.sv-ov{position:fixed;inset:0;z-index:90;background:rgba(10,15,20,.45);display:grid;place-items:start center;padding:max(60px,env(safe-area-inset-top)) 12px 20px;overflow:auto}
.sv-modal{position:relative;width:100%;max-width:420px;background:var(--surface,#fff);color:var(--fg,#16212c);border-radius:12px;padding:22px 20px;display:grid;gap:12px;font-family:var(--f-body,system-ui);box-shadow:0 10px 40px rgba(0,0,0,.25)}
.sv-wide{max-width:760px}
.sv-modal h2{margin:0;font-size:18px;padding-right:30px}.sv-modal p,.sv-modal ol{margin:0;font-size:14px}.sv-modal ol{padding-left:20px;display:grid;gap:4px}
.sv-x{position:absolute;top:8px;right:10px;appearance:none;border:0;background:none;font-size:26px;line-height:1;color:var(--muted,#5c6b7a);cursor:pointer;padding:4px 8px}
.sv-list{display:grid;gap:6px}
.sv-item{appearance:none;text-align:left;font:500 15px var(--f-body,system-ui);padding:12px 14px;border:1px solid var(--line,#d5dce3);border-radius:8px;background:var(--surface-2,#eaeef2);color:var(--fg,#16212c);cursor:pointer;text-decoration:none}
.sv-form{display:grid;gap:10px}
.sv-tbl{overflow-x:auto;border:1px solid var(--line,#d5dce3);border-radius:8px}
.sv-tbl table{width:100%;border-collapse:collapse;font-size:14px}.sv-tbl td{padding:8px 10px;border-top:1px solid var(--line,#d5dce3);vertical-align:middle}.sv-tbl tr:first-child td{border-top:0}
.sv-r{text-align:right;white-space:nowrap}.sv-small{font-size:12px;color:var(--muted,#5c6b7a)}
.sv-pass{background:var(--in-soft,#dcf0e4);border-radius:8px;padding:10px 12px;display:grid;gap:8px}.sv-pass pre{margin:0;white-space:pre-wrap;font:14px var(--f-mono,ui-monospace,monospace)}
