.vault{padding:40px 16px 0}.vault-header{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:24px;padding-bottom:20px;border-bottom:1px solid var(--color-border)}.vault-sys{font-family:var(--font-family-mono);font-size:10px;letter-spacing:.3em;color:var(--color-accent);text-transform:uppercase;display:block;margin-bottom:8px}.vault-h1{font-family:var(--font-family-display);font-size:clamp(24px,4vw,48px);font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--color-text-primary);line-height:1;margin:0}.vault-foot{display:flex;align-items:center;flex-wrap:wrap;gap:12px 14px;margin:0 4px;padding:20px 12px 56px;border-top:1px solid var(--color-border)}.vault-foot-sys{font-family:var(--font-family-mono);font-size:10px;letter-spacing:.3em;text-transform:uppercase;color:var(--color-text-dim);margin-right:auto}.vault-user{font-family:var(--font-family-mono);font-size:11px;color:var(--color-text-dim);letter-spacing:.05em}.vault-btn{font-family:var(--font-family-mono);font-size:11px;letter-spacing:.2em;text-transform:uppercase;background:transparent;color:var(--color-text-primary);border:1px solid var(--color-border-bright);padding:9px 18px;cursor:pointer;transition:border-color .15s,color .15s;min-height:44px}.vault-btn:hover{border-color:var(--color-accent);color:var(--color-accent)}.vault-btn--dim{color:var(--color-text-dim);border-color:var(--color-border);font-size:10px}.pw-modal{position:fixed;inset:0;z-index:1000;background:#060c0fd9;display:flex;align-items:center;justify-content:center}.pw-box{background:var(--color-surface);border:1px solid var(--color-border-bright);padding:28px 32px;display:flex;flex-direction:column;gap:12px;min-width:300px;max-width:380px;width:90%}.pw-title{font-family:var(--font-family-mono);font-size:11px;letter-spacing:.3em;color:var(--color-accent);margin-bottom:4px}.pw-input{font-family:var(--font-family-mono);font-size:13px;background:var(--color-bg);color:var(--color-text-primary);border:1px solid var(--color-border-bright);padding:10px 12px;outline:none;width:100%}.pw-input:focus{border-color:var(--color-accent)}.pw-error{font-family:var(--font-family-mono);font-size:11px;color:var(--color-accent);letter-spacing:.05em}.pw-row{display:flex;gap:8px}.vault-upload-zone{margin-bottom:16px}.vault-drop{display:flex;align-items:center;gap:16px;padding:18px 20px;border:1px dashed var(--color-border-bright);background:var(--color-surface);cursor:pointer;transition:border-color .2s,background .2s}.vault-drop:hover,.vault-drop.drag{border-color:var(--color-accent);background:color-mix(in srgb,var(--color-accent) 5%,var(--color-surface))}.vault-drop-label{font-family:var(--font-family-mono);font-size:10px;letter-spacing:.3em;color:var(--color-accent);border:1px solid var(--color-border-bright);padding:5px 9px;white-space:nowrap;flex-shrink:0}.vault-drop-hint{font-family:var(--font-family-mono);font-size:11px;color:var(--color-text-dim);letter-spacing:.06em}.vault-drop-hint u{color:var(--color-status-live);text-decoration:none;border-bottom:1px solid var(--color-status-live)}.vault-queue{margin-top:6px;display:flex;flex-direction:column;gap:3px}.vault-queue-item{display:flex;justify-content:space-between;gap:12px;padding:6px 12px;background:var(--color-surface);border:1px solid var(--color-border);font-family:var(--font-family-mono);font-size:10px;letter-spacing:.06em;color:var(--color-text-dim)}.vault-queue-item .q-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vault-queue-item .q-status{flex-shrink:0}.vault-queue-item .q-status.ok{color:var(--color-status-live)}.vault-queue-item .q-status.err{color:var(--color-accent)}.vault-controls{display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding:8px 12px;background:var(--color-surface);border:1px solid var(--color-border);margin-bottom:8px;font-family:var(--font-family-mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--color-text-dim)}.vault-bar-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0;background:var(--color-status-live);box-shadow:0 0 6px var(--color-status-live);animation:blink 2.4s infinite}@keyframes blink{0%,92%,to{opacity:1}95%{opacity:.25}}.vc-label{color:var(--color-text-dim)}.vc-count{color:var(--color-status-live);font-weight:700}.vc-sep{color:var(--color-border-bright)}.vc-status{color:var(--color-text-dim);margin-left:auto}.vc-btn{font-family:var(--font-family-mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;background:var(--color-surface-elev);color:var(--color-text-primary);border:1px solid var(--color-border-bright);padding:6px 12px;cursor:pointer;transition:border-color .15s,color .15s}.vc-btn:hover{border-color:var(--color-accent);color:var(--color-accent)}.vc-btn.on{border-color:var(--color-status-live);color:var(--color-status-live)}.vc-btn--danger{color:var(--color-text-dim);border-color:var(--color-border)}.vc-btn--danger:hover{color:var(--color-accent);border-color:var(--color-accent)}.vc-slider-wrap{display:flex;align-items:center;gap:8px;border:1px solid var(--color-border);padding:5px 10px;background:var(--color-surface-elev)}.vc-slider-wrap input[type=range]{-webkit-appearance:none;appearance:none;width:100px;height:3px;background:var(--color-border-bright);cursor:pointer}.vc-slider-wrap input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:12px;height:16px;background:var(--color-accent);border:1px solid #000}.vc-slider-wrap input[type=range]::-moz-range-thumb{width:12px;height:16px;border-radius:0;background:var(--color-accent);border:1px solid #000}.vault-gallery{width:100%;display:flex;flex-direction:column;padding:0 0 80px}.vault-row{display:flex}.vault-tile{position:relative;overflow:hidden;background:var(--color-surface);border:1px solid var(--color-border);min-width:0;cursor:pointer;transition:border-color .2s;animation:tile-in .3s ease both}.vault-tile:hover{border-color:var(--color-accent);z-index:2}@keyframes tile-in{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}.vault-tile img{display:block;width:100%;height:100%;object-fit:cover;filter:saturate(.92);transition:filter .2s,transform .35s;user-select:none;-webkit-user-drag:none;-webkit-user-select:none}.vault-tile:hover img{filter:saturate(1.05);transform:scale(1.025)}.vault-kill{position:absolute;top:6px;right:6px;width:26px;height:26px;line-height:1;border:1px solid var(--color-border-bright);background:#060c0fb8;color:var(--color-text-dim);font-size:16px;cursor:pointer;opacity:0;transition:opacity .18s,color .15s,border-color .15s;z-index:2}.vault-tile:hover .vault-kill{opacity:1}.vault-kill:hover{color:var(--color-accent);border-color:var(--color-accent)}.vault-like{position:absolute;top:6px;left:6px;display:flex;align-items:center;gap:5px;border:1px solid var(--color-border-bright);background:#060c0fb8;color:var(--color-text-primary);font-family:var(--font-family-mono);font-size:11px;font-weight:500;padding:4px 8px 4px 6px;cursor:pointer;line-height:1;opacity:0;transition:opacity .18s,border-color .15s;z-index:2}.vault-tile:hover .vault-like{opacity:1}.vault-like.liked{opacity:.35}.vault-tile:hover .vault-like.liked{opacity:1}.vault-like:hover{border-color:var(--color-accent)}.vault-like.liked{border-color:var(--color-accent);color:var(--color-accent)}.vault-like.liked .vl-heart{transform:scale(1.15);display:inline-block}.vl-heart{transition:transform .15s}.vl-num{min-width:8px}.vl-num.hide{display:none}.vault-tile-meta{position:absolute;bottom:0;left:0;right:0;display:flex;justify-content:space-between;gap:8px;padding:6px 9px 5px;font-family:var(--font-family-mono);font-size:9px;letter-spacing:.07em;text-transform:uppercase;color:var(--color-text-primary);background:linear-gradient(transparent,#060c0fe0);opacity:0;transition:opacity .2s;z-index:2}.vault-tile:hover .vault-tile-meta{opacity:1}.vault-tile-meta span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.vtm-dim{color:var(--color-status-live);flex-shrink:0}.vault-lb{position:fixed;inset:0;z-index:9000;background:#060c0ff2;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;cursor:zoom-out}.vault-lb-img{max-width:95vw;max-height:88vh;object-fit:contain;display:block;cursor:default;box-shadow:0 0 60px #000c;user-select:none;-webkit-user-drag:none;-webkit-user-select:none;pointer-events:none}.vault-lb-meta{font-family:var(--font-family-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--color-text-dim)}.vault-lb-close{position:fixed;top:16px;right:20px;font-size:28px;line-height:1;background:none;border:none;color:var(--color-text-dim);cursor:pointer;transition:color .15s}.vault-lb-close:hover{color:var(--color-accent)}.vault-lb-fs{position:fixed;top:18px;right:60px;width:30px;height:30px;line-height:1;display:flex;align-items:center;justify-content:center;font-size:18px;background:none;border:none;color:var(--color-text-dim);cursor:pointer;z-index:9100;transition:color .15s}.vault-lb-fs:hover{color:var(--color-accent)}.vault-lb.is-fs .vault-lb-fs{color:var(--color-status-live)}.vault-lb-img{opacity:1;transition:opacity .35s ease}.vault-lb.is-fs{gap:0}.vault-lb.is-fs .vault-lb-img{width:100vw;height:100vh;max-width:100vw;max-height:100vh}.vault-lb.is-fs .vault-lb-meta{position:fixed;bottom:16px;left:50%;transform:translate(-50%);background:#060c0fb8;padding:4px 10px;white-space:nowrap}.vault-lb-nav{position:fixed;top:50%;transform:translateY(-50%);width:48px;height:64px;display:flex;align-items:center;justify-content:center;background:#060c0f80;border:1px solid var(--color-border-bright);color:var(--color-text-primary);font-size:28px;line-height:1;cursor:pointer;z-index:9100;transition:color .15s,border-color .15s,background .15s}.vault-lb-nav:hover{color:var(--color-accent);border-color:var(--color-accent);background:#060c0fc7}.vault-lb-prev{left:16px}.vault-lb-next{right:16px}.vault-lb-play{position:fixed;bottom:64px;left:50%;transform:translate(-50%);font-family:var(--font-family-mono);font-size:10px;letter-spacing:.2em;text-transform:uppercase;background:#060c0f99;color:var(--color-text-dim);border:1px solid var(--color-border-bright);padding:8px 16px;min-height:44px;cursor:pointer;z-index:9100;transition:color .15s,border-color .15s}.vault-lb-play:hover{color:var(--color-accent);border-color:var(--color-accent)}@media (max-width: 600px){.vault-lb-nav{width:40px;height:56px;font-size:24px}.vault-lb-prev{left:6px}.vault-lb-next{right:6px}}@media (prefers-reduced-motion: reduce){.vault-lb-img{transition:none}.vault-tile,.vault-bar-dot{animation:none}}.vault-empty{font-family:var(--font-family-mono);font-size:11px;letter-spacing:.25em;text-transform:uppercase;color:var(--color-text-dim);text-align:center;padding:60px 16px;border:1px dashed var(--color-border);margin:0 4px}
