:root,:root[data-theme="light"]{
  color-scheme:light;
  --v-bg:#ffffff;--v-surface:#f3f4f6;--v-sunk:#e9ebee;
  --v-ink:#15181d;--v-ink-2:#3c424b;--v-ink-3:#5a6170;
  --v-line:#d3d6db;--v-line-strong:#767d89;
  --v-accent:#c22157;--v-accent-strong:#9f1647;--v-accent-text:#b51e50;--v-accent-tint:#fff0f5;
  --v-danger:#b42318;--v-danger-button:#b42318;--v-danger-tint:#fdecea;
  --v-warn:#7a4b00;--v-warn-tint:#fff1d6;--v-ok:#1f6b36;--v-ok-tint:#e6f4ea;--v-focus:#c22157;
  --v-font:"IBM Plex Sans",-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  --v-mono:"IBM Plex Mono",ui-monospace,Consolas,monospace;--v-radius:6px;
  --bg:var(--v-bg);--void:var(--v-bg);--panel:var(--v-bg);--panel2:var(--v-surface);--surface:var(--v-surface);
  --raised:var(--v-surface);--raise:var(--v-sunk);--well:var(--v-bg);--sunk:var(--v-sunk);
  --ink:var(--v-ink);--muted:var(--v-ink-2);--mut:var(--v-ink-2);--faint:var(--v-ink-3);
  --line:var(--v-line);--line2:var(--v-line-strong);--violet:var(--v-accent);--live-a:var(--v-accent);
  --mint:var(--v-accent-text);--live-b:var(--v-accent-text);--teal:var(--v-accent-text);--teal-2:var(--v-accent-strong);--aqua:var(--v-accent-text);--amber:var(--v-warn);--coral:var(--v-danger);--red:var(--v-danger);
  --action:var(--v-accent);--action-bg:var(--v-accent);--action-ink:#ffffff;--action-hover:var(--v-accent-strong);
  --ui:var(--v-font);--display:var(--v-font);--disp:var(--v-font);--mono:var(--v-mono);--shadow:none;--v-shadow:none;
}
:root:not([data-theme]),:root[data-theme="dark"]{
  color-scheme:dark;
  --v-bg:#111417;--v-surface:#1b1f24;--v-sunk:#23282e;
  --v-ink:#f4f5f7;--v-ink-2:#c5cad2;--v-ink-3:#9aa2ad;
  --v-line:#333a42;--v-line-strong:#8b93a0;
  --v-accent:#ff79a5;--v-accent-strong:#ff98ba;--v-accent-text:#ff9cbb;--v-accent-tint:#381522;
  --v-danger:#ff8a80;--v-danger-button:#d24537;--v-danger-tint:#3a1512;
  --v-warn:#f2c14e;--v-warn-tint:#3a2c0c;--v-ok:#7fd48f;--v-ok-tint:#12301a;--v-focus:#ff79a5;
  --bg:var(--v-bg);--void:var(--v-bg);--panel:var(--v-bg);--panel2:var(--v-surface);--surface:var(--v-surface);
  --raised:var(--v-surface);--raise:var(--v-sunk);--well:var(--v-bg);--sunk:var(--v-sunk);
  --ink:var(--v-ink);--muted:var(--v-ink-2);--mut:var(--v-ink-2);--faint:var(--v-ink-3);
  --line:var(--v-line);--line2:var(--v-line-strong);--violet:var(--v-accent);--live-a:var(--v-accent);
  --mint:var(--v-accent-text);--live-b:var(--v-accent-text);--teal:var(--v-accent-text);--teal-2:var(--v-accent-strong);--aqua:var(--v-accent-text);--amber:var(--v-warn);--coral:var(--v-danger);--red:var(--v-danger);
  --action:var(--v-accent);--action-bg:var(--v-accent);--action-ink:#2b101c;--action-hover:var(--v-accent-strong);
  --ui:var(--v-font);--display:var(--v-font);--disp:var(--v-font);--mono:var(--v-mono);--shadow:none;--v-shadow:none;
}
html{background:var(--v-bg);color:var(--v-ink);font:16px/1.5 var(--v-font)}
body{background-color:var(--v-bg)!important;color:var(--v-ink);font-family:var(--v-font)!important}
button,input,select,textarea{font:inherit;color:inherit}
:focus-visible{outline:2px solid var(--v-focus)!important;outline-offset:2px}
.vidi-global-shell *,.vidi-sheet *,.vidi-toast{box-sizing:border-box;letter-spacing:0;text-transform:none}
.vidi-global-shell{position:sticky;z-index:1000;top:0;height:64px;display:flex;align-items:center;gap:24px;padding:0 max(24px,calc((100vw - 1180px)/2));border-bottom:1px solid var(--v-line);background:var(--v-bg);color:var(--v-ink);font:16px/1.5 var(--v-font)}
.vidi-global-shell a{color:inherit;text-decoration:none}
.vidi-shell-brand{display:flex;align-items:center;gap:8px;font-size:20px;font-weight:600}
.vidi-shell-brand img{width:32px;height:32px;object-fit:contain}
.vidi-shell-nav{display:flex;align-items:center;gap:4px}
.vidi-shell-nav>a,.vidi-menu>summary{min-height:40px;display:flex;align-items:center;padding:0 12px;border:1px solid transparent;border-radius:var(--v-radius);color:var(--v-ink-2);cursor:pointer;list-style:none;font-size:16px;font-weight:400}
.vidi-menu>summary::-webkit-details-marker{display:none}
.vidi-shell-nav>a:hover,.vidi-shell-nav>a[aria-current="page"],.vidi-menu>summary:hover,.vidi-menu>summary[aria-current="page"],.vidi-menu[open]>summary{border-color:var(--v-line-strong);background:var(--v-surface);color:var(--v-ink)}
.vidi-menu{position:relative}
.vidi-menu-panel{position:absolute;z-index:1100;top:calc(100% + 4px);left:0;width:240px;padding:4px;border:1px solid var(--v-line-strong);border-radius:var(--v-radius);background:var(--v-bg)}
.vidi-menu-right{right:0;left:auto}
.vidi-menu-panel a,.vidi-menu-panel button{width:100%;min-height:44px;display:flex;align-items:center;padding:0 12px;border:0;border-radius:4px;background:transparent;color:var(--v-ink);text-align:left;text-decoration:none;font:16px/1.4 var(--v-font);cursor:pointer}
.vidi-menu-panel a:hover,.vidi-menu-panel button:hover{background:var(--v-surface)}
.vidi-shell-grow{flex:1}
.vidi-balance,.vidi-create,.vidi-queue{min-height:40px;padding:0 14px;border:1px solid var(--v-line-strong);border-radius:var(--v-radius);font:600 16px/1 var(--v-font);cursor:pointer}
.vidi-queue{display:flex;align-items:center;gap:8px;background:var(--v-bg);color:var(--v-ink);white-space:nowrap}
.vidi-queue:hover,.vidi-queue.active{border-color:var(--v-accent);background:var(--v-accent-tint)}
.vidi-queue-pulse{width:8px;height:8px;border-radius:50%;background:var(--v-ink-3)}
.vidi-queue.active .vidi-queue-pulse{background:var(--v-accent);box-shadow:0 0 0 4px color-mix(in srgb,var(--v-accent) 20%,transparent);animation:vidiQueuePulse 1.8s ease-in-out infinite}
.vidi-queue b{min-width:24px;height:24px;display:grid;place-items:center;border-radius:999px;background:var(--v-sunk);font-size:14px}
@keyframes vidiQueuePulse{50%{box-shadow:0 0 0 7px transparent}}
.vidi-balance{background:var(--v-bg);color:var(--v-ink)}
.vidi-balance:hover{background:var(--v-surface);border-color:var(--v-accent)}
.vidi-help-menu>summary{width:40px;justify-content:center;padding:0;border-color:var(--v-line-strong);background:var(--v-bg);color:var(--v-ink);font-weight:600}
.vidi-global-shell .vidi-create{display:flex;align-items:center;background:var(--v-accent);border-color:var(--v-accent);color:var(--action-ink)}
.vidi-create:hover{background:var(--v-accent-strong);border-color:var(--v-accent-strong)}
.vidi-account>summary{width:40px;padding:0;justify-content:center;border-color:var(--v-line-strong);background:var(--v-surface)}
.vidi-account>summary span{width:28px;height:28px;display:grid;place-items:center;border-radius:50%;background:var(--v-accent-tint);color:var(--v-accent-text);font-size:14px;font-weight:600}
/* Transitional containment while legacy page chrome is removed template by template. */
.vidi-global-shell~header.top,.vidi-global-shell~header.topbar,.vidi-global-shell~header.nav{display:none!important}
.vidi-global-shell~.app{height:calc(100vh - 64px)!important}
.vidi-global-shell~.app>header.top{display:none!important}
.vidi-global-shell~.app>.body{min-height:calc(100vh - 64px)!important;grid-template-columns:minmax(0,1fr)!important}
.vidi-global-shell~.app>.body>.rail{display:none!important}
.vidi-global-shell~.app>.body>.stage{grid-column:1!important;margin-left:0!important}
.vidi-global-shell~.feedback-float,.vidi-global-shell~.feedback{display:none!important}
.vidi-sheet-backdrop{position:fixed;z-index:2000;inset:0;background:rgba(0,0,0,.4);opacity:0;visibility:hidden;pointer-events:none;transition:opacity 120ms}
.vidi-sheet-backdrop.open{opacity:1;visibility:visible;pointer-events:auto}
.vidi-sheet{position:absolute;right:0;top:0;height:100%;width:min(480px,100%);display:flex;flex-direction:column;background:var(--v-bg);color:var(--v-ink);border-left:1px solid var(--v-line-strong);font:16px/1.5 var(--v-font)}
.vidi-sheet-head{display:flex;align-items:flex-start;gap:16px;padding:24px;border-bottom:1px solid var(--v-line)}
.vidi-sheet-head h2{flex:1;margin:0;font-size:24px;line-height:1.25;font-weight:600}
.vidi-sheet-close{width:40px;height:40px;border:1px solid var(--v-line-strong);border-radius:var(--v-radius);background:var(--v-bg);color:var(--v-ink);cursor:pointer}
.vidi-sheet-body{overflow:auto;padding:24px}
.vidi-sheet-balance{display:flex;align-items:end;justify-content:space-between;gap:16px;padding:16px;background:var(--v-surface);border:1px solid var(--v-line)}
.vidi-sheet-balance span{display:block;color:var(--v-ink-2);font-size:14px}
.vidi-sheet-balance b{display:block;margin-top:4px;font-size:24px;font-weight:600}
.vidi-sheet-balance a,.vidi-sheet-links a{color:var(--v-accent-text);text-decoration:underline}
.vidi-packs{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:16px 0}
.vidi-pack{min-height:88px;padding:14px;border:1px solid var(--v-line-strong);border-radius:var(--v-radius);background:var(--v-bg);color:var(--v-ink);text-align:left;cursor:pointer}
.vidi-pack:hover{background:var(--v-surface)}
.vidi-pack.selected{border:2px solid var(--v-accent);background:var(--v-accent-tint)}
.vidi-pack.selected:before{content:"✓ ";color:var(--v-accent-text);font-weight:600}
.vidi-pack b,.vidi-pack span{display:block}
.vidi-pack b{font-size:16px;font-weight:600}.vidi-pack span{margin-top:4px;color:var(--v-ink-2);font-size:14px}
.vidi-sheet-primary{width:100%;min-height:44px;border:1px solid var(--v-accent);border-radius:var(--v-radius);background:var(--v-accent);color:#fff;font-weight:600;cursor:pointer}
[data-theme="dark"] .vidi-sheet-primary{color:var(--action-ink)}
.vidi-sheet-primary:hover{background:var(--v-accent-strong)}
.vidi-sheet-primary:disabled{border-color:var(--v-line);background:var(--v-sunk);color:var(--v-ink-3);cursor:wait}
.vidi-sheet-foot{margin-top:12px;color:var(--v-ink-2);font-size:14px}
.vidi-sheet-links{display:flex;flex-wrap:wrap;gap:16px;margin-top:20px;padding-top:16px;border-top:1px solid var(--v-line)}
.vidi-queue-intro{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-bottom:16px;border-bottom:1px solid var(--v-line)}
.vidi-queue-intro p{margin:0;color:var(--v-ink-2);font-size:14px}.vidi-queue-intro a{flex:none;color:var(--v-accent-text);font-weight:600;text-decoration:none}
.vidi-queue-body h3{margin:24px 0 8px;font-size:14px;font-weight:600;color:var(--v-ink-2)}
.vidi-queue-row{display:grid;grid-template-columns:10px minmax(0,1fr) auto;gap:12px;align-items:center;padding:14px 0;border-bottom:1px solid var(--v-line);color:inherit;text-decoration:none}
.vidi-queue-row:hover .vidi-queue-copy b{color:var(--v-accent-text)}
.vidi-queue-state{width:8px;height:8px;border-radius:50%;background:var(--v-ink-3)}.vidi-queue-row.active .vidi-queue-state{background:var(--v-accent)}.vidi-queue-row.ready .vidi-queue-state{background:var(--v-ok)}.vidi-queue-row.error .vidi-queue-state{background:var(--v-danger)}
.vidi-queue-copy{min-width:0;display:block}.vidi-queue-copy b,.vidi-queue-copy span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vidi-queue-copy b{font-size:16px;font-weight:600}.vidi-queue-copy span{margin-top:2px;color:var(--v-ink-2);font-size:14px}.vidi-queue-copy i{display:block;height:3px;margin-top:9px;background:var(--v-sunk);overflow:hidden}.vidi-queue-copy i em{display:block;height:100%;background:var(--v-accent);transition:width .25s}
.vidi-queue-row.ready .vidi-queue-copy i em{background:var(--v-ok)}.vidi-queue-row.error .vidi-queue-copy i em{background:var(--v-danger)}
.vidi-queue-row>strong{color:var(--v-accent-text);font-size:14px;font-weight:600}.vidi-queue-empty{margin:0;padding:20px 0;color:var(--v-ink-2);font-size:14px}
.vidi-feedback-form label{display:block;margin:16px 0 6px;font-size:14px;font-weight:600}
.vidi-feedback-form select,.vidi-feedback-form textarea{width:100%;border:1px solid var(--v-line-strong);border-radius:var(--v-radius);background:var(--v-bg);color:var(--v-ink);padding:10px 12px;font:16px/1.5 var(--v-font)}
.vidi-feedback-form textarea{min-height:160px;resize:vertical}.vidi-feedback-form .vidi-sheet-primary{margin-top:16px}
.vidi-toast{position:fixed;z-index:3000;right:24px;bottom:24px;max-width:420px;padding:12px 16px;border:1px solid var(--v-ink);border-radius:var(--v-radius);background:var(--v-ink);color:var(--v-bg);font:600 16px/1.5 var(--v-font);opacity:0;visibility:hidden;pointer-events:none;transition:opacity 120ms}
.vidi-toast.show{opacity:1;visibility:visible}.vidi-toast.error{border-color:var(--v-danger-button);background:var(--v-danger-button);color:#fff}
@media(max-width:850px){
  .vidi-global-shell{height:56px;padding:0 12px;gap:8px}
  .vidi-shell-brand span{display:none}.vidi-queue{margin-left:auto;padding:0 10px;font-size:14px}.vidi-balance{margin-left:0;max-width:112px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px}
  .vidi-create{font-size:14px;padding:0 10px}.vidi-help-menu{display:none}
  .vidi-shell-nav{position:fixed;z-index:1000;left:0;right:0;bottom:0;height:60px;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;border-top:1px solid var(--v-line-strong);background:var(--v-bg)}
  .vidi-shell-nav>a,.vidi-channel>summary{height:60px;min-height:44px;justify-content:center;padding:0 6px;border:0;border-radius:0;font-size:14px}
  .vidi-channel-menu,.vidi-channel .vidi-menu-panel{top:auto;right:0;bottom:64px;left:auto;width:min(280px,92vw)}
  body{padding-bottom:60px!important}
}
@media(max-width:520px){
  .vidi-shell-nav>a,.vidi-channel>summary{font-size:14px;padding:0 2px}
  .vidi-balance{display:none}.vidi-queue [data-queue-label]{display:none}.vidi-queue{gap:6px;padding:0 8px}.vidi-queue-row{grid-template-columns:10px minmax(0,1fr)}.vidi-queue-row>strong{grid-column:2}
  .vidi-packs{grid-template-columns:1fr}.vidi-account>summary{width:36px}.vidi-account>summary span{width:26px;height:26px}
  .vidi-sheet{top:auto;bottom:0;height:min(84vh,760px);border-top:1px solid var(--v-line-strong);border-left:0}
}
@media(prefers-reduced-motion:reduce){.vidi-sheet-backdrop,.vidi-toast{transition-duration:.001ms!important}.vidi-queue.active .vidi-queue-pulse{animation:none}}
