/* c10 polish layer */
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
:focus-visible{outline:3px solid #3b82f6;outline-offset:2px;border-radius:6px}
.muted,small,.vl-small{color:#4b5565}
body.dark .muted,body.dark small,body.dark .vl-small{color:#b6c2d1}
/* signed-out header */
.hjoin{display:none}
body.vl-out #top .bal,body.vl-out #reset{display:none!important}
body.vl-out .hjoin{display:inline-flex}
@media(max-width:560px){body.vl-out .hjoin{display:none}}
/* team badges */
.tbadge{display:block;flex:none}
.pm .tbadge{width:36px;height:36px}
/* filters */
.fltbtn{display:none}
@media(max-width:760px){
 #tools .fltbtn{display:inline-flex;align-items:center;gap:6px;margin-top:10px;padding:8px 14px;border-radius:999px;border:1px solid var(--line,#d6dbe3);background:transparent;color:inherit;font:inherit;font-weight:700}
 #tools:not(.fopen)>*:not(.srch):not(.fltbtn){display:none!important}
 #tools.fopen .fltbtn{background:#3b6cf0;color:#fff;border-color:#3b6cf0}
}
/* tables */
.vl-tbl-wrap{overflow-x:auto;margin:12px 0}
.vl-tbl{width:100%;border-collapse:collapse;font-size:14px}
.vl-tbl th,.vl-tbl td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--line,#e3e7ee);vertical-align:top}
.vl-tbl thead th{font-size:12px;text-transform:uppercase;letter-spacing:.04em}
.vl-tiers{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px;margin-bottom:14px}
.vl-tier{display:flex;flex-direction:column;gap:6px;padding:20px}
.vl-size{font-size:30px;font-weight:800}.vl-price{font-weight:700;color:#3b6cf0}
.vl-tier ul{margin:6px 0 10px;padding-left:18px}
.vl-steps li{margin-bottom:8px}
.vl-pcnew{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-end;margin-top:12px}
.vl-pcnew label{display:flex;flex-direction:column;gap:4px;font-weight:600;font-size:14px}
.vl-pcnew input{font:inherit;padding:9px 10px;border:1px solid var(--line,#d6dbe3);border-radius:8px;background:var(--card,#fff);color:inherit}
#vlPromoAdm,#vlInteg,#vlTrust{margin-top:14px;padding:18px}
/* footer */
.vl-footx{border-top:1px solid var(--line,#e3e7ee);margin-top:18px;padding:14px 0 6px;font-size:13px;text-align:center}
.vl-social{display:flex;gap:16px;justify-content:center;flex-wrap:wrap;margin-bottom:8px}
.vl-social a{font-weight:700}
.vl-co{font-weight:600;margin-bottom:4px}
.vl-disc{margin:4px auto;max-width:720px;color:#4b5565}
body.dark .vl-disc{color:#b6c2d1}
.vl-bld{opacity:.55;font-size:11px;margin:6px 0 0}
/* debug readout only with ?debug=1 */
#vlDbg{display:none}
html.vl-debug #vlDbg{display:block}
/* signin/signup header button */
.si-top .right{display:flex;align-items:center}
.si-top .hbtn2{display:inline-flex;align-items:center;min-height:36px;margin-left:0;padding:8px 14px;font-size:14px;line-height:1.2;white-space:nowrap;border-radius:999px;width:auto}
@media(max-width:480px){.si-top .hbtn2{padding:7px 12px;font-size:13px}}
.si-build{text-align:center;font-size:11px;opacity:.55;padding:4px 0 18px}
/* c12: add funds */
body.vl-out #acsw{display:none!important}
#top .right{gap:8px}
#top .bal{min-width:0;margin-left:4px}
#top .bal small{white-space:nowrap}
.upd{white-space:nowrap;margin-right:14px}
#top .bal small{font-size:9px;letter-spacing:.3px}
.addf{display:none;align-items:center;justify-content:center;width:32px;height:32px;border-radius:999px;border:1px solid rgba(255,255,255,.35);background:#3b6cf0;color:#fff;cursor:pointer;padding:0;flex:none}
.addf:hover{background:#2f5ad6}
body.vl-in .addf{display:inline-flex}
.vl-mback{position:fixed;inset:0;background:rgba(6,10,16,.55);z-index:1000;display:flex;align-items:center;justify-content:center;padding:16px}
.vl-mback[hidden]{display:none}
.vl-modal{background:var(--card,#fff);color:inherit;width:100%;max-width:440px;border-radius:16px;padding:22px;box-shadow:0 20px 60px rgba(0,0,0,.35);position:relative;max-height:90vh;overflow:auto}
body.dark .vl-modal{background:#141c27;color:#e7edf5}
.vl-modal h2{margin:0 0 4px;font-size:20px}
.vl-mx{position:absolute;top:12px;right:12px;width:34px;height:34px;border-radius:999px;border:0;background:transparent;color:inherit;cursor:pointer;display:flex;align-items:center;justify-content:center}
.vl-mx:hover{background:rgba(127,127,127,.15)}
.vl-ftier{display:flex;justify-content:space-between;align-items:center;border:1px solid var(--line,#e3e7ee);border-radius:12px;padding:12px 14px;margin-top:10px}
.vl-ftier b{font-size:18px}.vl-ftier span{font-weight:700;color:#3b6cf0}
.vl-fnote{font-size:13px;margin:12px 0 0;line-height:1.45}
.vl-mtg{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:16px;width:100%;text-decoration:none}
@media(max-width:560px){.addf{width:30px;height:30px}#top .right{gap:6px}}
/* c13: header layout — balance pill never shrinks, username truncates, nothing overlaps */
#top .bar{min-width:0}
#top .right{min-width:0;flex:1 1 auto;justify-content:flex-end;flex-wrap:nowrap}
#top .right>*{flex:none}
#top #acctBtn{flex:0 1 auto;min-width:0;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:inline-block;line-height:34px;height:36px}
.vl-fpill{display:none;align-items:center;gap:6px;flex:none;border:1px solid rgba(255,255,255,.18);border-radius:999px;padding:3px 3px 3px 12px;background:rgba(255,255,255,.04)}
body.vl-in .vl-fpill{display:inline-flex}
.vl-fpill .bal{margin:0!important;position:static!important;flex:none;min-width:max-content}
.vl-fpill .bal b{white-space:nowrap;font-variant-numeric:tabular-nums}
#dcBtn .vl-dci{display:none}
.gf .hbtn2,.gf-acts .hbtn2{display:inline-flex!important;align-items:center;justify-content:center;text-align:center;line-height:1.2}
.vl-themerow{display:flex;align-items:center;justify-content:space-between;gap:12px}
@media(max-width:520px){
 #top .bar{gap:6px;padding-left:10px;padding-right:10px}
 #top .right{gap:6px}
 #top .logo span{display:none}
 #dcBtn{font-size:0!important;width:36px;height:36px;padding:0!important;justify-content:center}
 #dcBtn .lg{display:none}
 #dcBtn .vl-dci{display:block}
 body.vl-in #theme,body.vl-in #helpBtn,body.vl-in #upd,body.vl-in #reset{display:none!important}
 #top #acctBtn{max-width:none;padding:0 10px!important;font-size:12px}
 .vl-fpill{padding:2px 2px 2px 9px;gap:5px}
 .vl-fpill .bal small{display:none}
 .vl-fpill .bal b{font-size:13px}
 .addf{width:30px;height:30px}
}
@media(max-width:340px){#top .right{gap:4px}#bellBtn{width:32px}.vl-fpill .bal b{font-size:12px}#top #acctBtn{padding:0 8px!important}}
/* c14: fit-driven header (independent of media queries / Safari zoom) */
#top .bar{display:flex;align-items:center;flex-wrap:nowrap;overflow:hidden}
#top .logo{flex:0 1 auto;min-width:30px;overflow:hidden;white-space:nowrap}
#top .logo svg{flex:none}
#top .logo span{overflow:hidden;text-overflow:clip}
body.vl-f1 #dcBtn{font-size:0!important;width:36px;height:36px;padding:0!important;justify-content:center;display:inline-flex;align-items:center}
body.vl-f1 #dcBtn .lg{display:none}
body.vl-f1 #dcBtn .vl-dci{display:block}
body.vl-f2 #top .logo span,body.vl-f2 #switch{display:none!important}
body.vl-f3 #theme,body.vl-f3 #helpBtn,body.vl-f3 #upd,body.vl-f3 #reset{display:none!important}
body.vl-f4 .vl-fpill .bal small{display:none}
body.vl-f4 #top .right{gap:4px}
