/* THE VAULT UI — themeable via custom properties on .vlt (defaults = MonsterData) */
.vlt{--vlt-bg:#05070C;--vlt-panel:#0D141F;--vlt-panel2:#121C2B;--vlt-line:rgba(71,209,178,.22);--vlt-text:#fff;--vlt-muted:#9AA5B5;
  --vlt-accent:#47D1B2;--vlt-accent2:#39E19B;--vlt-grad:linear-gradient(90deg,#41B6D7,#47D1B2,#39E19B);--vlt-on-accent:#04120a;
  --vlt-red:#ff5d6c;--vlt-font:Manrope,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;
  font-family:var(--vlt-font);color:var(--vlt-text);text-align:left}
.vlt *{box-sizing:border-box}
.vlt-in{background:var(--vlt-panel);border:1px solid var(--vlt-line);border-radius:18px;padding:18px;position:relative;overflow:hidden}
.vlt-drop{display:flex;gap:16px;align-items:center;border:2px dashed var(--vlt-line);border-radius:14px;padding:22px 20px;cursor:pointer;transition:border-color .2s,background .2s;background:rgba(255,255,255,.015)}
.vlt-drop:hover,.vlt-drop:focus-visible,.vlt-drop.over{border-color:var(--vlt-accent);background:rgba(71,209,178,.06);outline:none}
.vlt-lock{flex:0 0 auto;width:56px;height:56px;border-radius:14px;display:grid;place-items:center;color:var(--vlt-on-accent);background:var(--vlt-grad)}
.vlt-dt b{display:block;font-size:18px;font-weight:800;line-height:1.25}
.vlt-dt span{display:block;color:var(--vlt-muted);font-size:14.5px;margin-top:2px}
.vlt-dt u{color:var(--vlt-accent);text-underline-offset:3px}
.vlt-dt small{display:block;color:var(--vlt-accent2);font-weight:700;font-size:13px;margin-top:6px}
.vlt-demos{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:14px}
.vlt-demos>span{color:var(--vlt-muted);font-size:13.5px;flex:1 1 100%}
.vlt-demo{flex:1 1 180px;text-align:left;cursor:pointer;background:var(--vlt-bg);border:1px solid var(--vlt-line);border-radius:12px;padding:11px 14px;color:var(--vlt-text);font:inherit;min-height:52px;transition:border-color .15s,transform .15s}
.vlt-demo:hover,.vlt-demo:focus-visible{border-color:var(--vlt-accent);transform:translateY(-1px);outline:none}
.vlt-demo b{display:block;font-size:14.5px}.vlt-demo small{color:var(--vlt-muted);font-size:12.5px}
.vlt-stage{margin-top:18px;scroll-margin-top:90px}
.vlt-meta{display:flex;flex-wrap:wrap;gap:8px 16px;justify-content:space-between;align-items:center;font-size:13px;color:var(--vlt-muted)}
.vlt-meta code{color:var(--vlt-text);font-size:12px}
.vlt-net{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border-radius:999px;border:1px solid var(--vlt-accent2);color:var(--vlt-text)}
.vlt-net i{width:8px;height:8px;border-radius:50%;background:var(--vlt-accent2);box-shadow:0 0 10px var(--vlt-accent2)}
.vlt-net.bad{border-color:#e6b84f}.vlt-net.bad i{background:#e6b84f;box-shadow:none}
.vlt-counters{display:grid;grid-template-columns:repeat(6,1fr);gap:8px;margin:12px 0}
.vlt-ct{background:var(--vlt-bg);border:1px solid var(--vlt-line);border-radius:12px;padding:10px 8px;text-align:center;transition:border-color .3s}
.vlt-ct b{display:block;font-size:26px;font-weight:800;line-height:1.1;font-variant-numeric:tabular-nums;background:var(--vlt-grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.vlt-ct span{font-size:11.5px;color:var(--vlt-muted);font-weight:700;text-transform:uppercase;letter-spacing:.04em}
.vlt-ct.on{border-color:var(--vlt-accent)}
.vlt-phase{min-height:24px;font-size:14.5px;font-weight:700;color:var(--vlt-text);margin:4px 0 10px}
.vlt-done{color:var(--vlt-accent2)}.vlt-err{color:var(--vlt-red)}
.vlt-tw{overflow:auto;max-height:430px;border:1px solid var(--vlt-line);border-radius:12px;background:var(--vlt-bg);-webkit-overflow-scrolling:touch}
.vlt-t{border-collapse:separate;border-spacing:0;font-size:12.5px;min-width:100%;white-space:nowrap}
.vlt-t th,.vlt-t td{padding:0;border-bottom:1px solid rgba(255,255,255,.05);vertical-align:top}
.vlt-t th>div,.vlt-t td>div{padding:7px 10px;max-width:260px;overflow:hidden;text-overflow:ellipsis;transition:max-width .5s ease,padding .5s ease,opacity .4s ease,filter .4s ease,color .3s}
.vlt-t th{position:sticky;top:0;background:var(--vlt-panel2);z-index:1;text-align:left;font-weight:800;color:var(--vlt-text)}
.vlt-hn{display:block}
.vlt-tag{display:block;font-style:normal;font-size:10.5px;font-weight:800;letter-spacing:.03em;margin-top:3px;opacity:0;transition:opacity .3s;text-transform:uppercase}
.vlt-tagged .vlt-tag{opacity:1}
.vlt-tag[data-a=REMOVE]{color:var(--vlt-red)}.vlt-tag[data-a=GENERALIZE]{color:#e6b84f}.vlt-tag[data-a=KEEP]{color:var(--vlt-accent2)}
.vlt-t td>div{color:#d9e1ea}
.vlt-hit>div{background:rgba(255,93,108,.16);color:#fff;box-shadow:inset 0 0 0 1px rgba(255,93,108,.55)}
.vlt-strike>div{text-decoration:line-through;text-decoration-color:var(--vlt-red);text-decoration-thickness:2px;filter:blur(3px);opacity:.6}
.vlt-gone>div{max-width:0!important;padding-left:0!important;padding-right:0!important;opacity:0}
.vlt-gen>div{background:rgba(230,184,79,.12);color:#ffe7a8}
.vlt-scrubbed>div{background:rgba(57,225,155,.07)}
.vlt-t mark{background:rgba(255,93,108,.18);color:#ff9aa4;border-radius:4px;padding:0 3px}
.vlt-clean td>div{color:#e8eef5}
.vlt-h{font-size:22px;margin:4px 0 2px;font-family:var(--vlt-font)!important;letter-spacing:0!important;font-weight:800!important}
.vlt-sub{color:var(--vlt-muted);font-size:14px;margin:0 0 10px}
.vlt-plan h4,.vlt-reid h4{font-size:15px;margin:16px 0 8px;font-weight:800}
.vlt-plan small{color:var(--vlt-muted);font-weight:600}
.vlt-chips{display:flex;flex-wrap:wrap;gap:6px}
.vlt-chip{cursor:pointer;font:inherit;text-align:left;background:var(--vlt-bg);color:var(--vlt-text);border:1px solid var(--vlt-line);border-radius:10px;padding:6px 10px;min-height:44px}
.vlt-chip b{display:block;font-size:12.5px}.vlt-chip span{font-size:11.5px;font-weight:700}
.vlt-chip[data-a=REMOVE] span{color:var(--vlt-red)}.vlt-chip[data-a=GENERALIZE] span{color:#e6b84f}.vlt-chip[data-a=KEEP] span{color:var(--vlt-accent2)}
.vlt-reid ul{margin:0;padding-left:18px;font-size:14px}.vlt-reid li{margin:4px 0}
.vlt-warn{color:#ffb4a8}.vlt-low{color:var(--vlt-muted)}.vlt-okp{color:var(--vlt-accent2);font-size:14px;margin:0}
.vlt-acts{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}
.vlt-btn{cursor:pointer;font:700 14.5px var(--vlt-font);padding:12px 16px;min-height:46px;border-radius:999px;border:1px solid var(--vlt-line);background:transparent;color:var(--vlt-text)}
.vlt-btn:hover,.vlt-btn:focus-visible{border-color:var(--vlt-accent);outline:none}
.vlt-pri{background:var(--vlt-grad);color:var(--vlt-on-accent);border:0}
.vlt-fine{color:var(--vlt-muted);font-size:12.5px;margin:10px 0 0}
@media(max-width:720px){.vlt-counters{grid-template-columns:repeat(3,1fr)}.vlt-ct b{font-size:22px}.vlt-drop{padding:16px 14px}.vlt-lock{width:46px;height:46px}.vlt-in{padding:12px}.vlt-acts .vlt-btn{flex:1 1 46%}}
@media(prefers-reduced-motion:reduce){.vlt *{transition:none!important;animation:none!important}}
