.vvs-grain{pointer-events:none;opacity:.04;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='128' height='128'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='128' height='128' filter='url(%23n)'/%3E%3C/svg%3E");background-size:128px 128px;position:absolute;inset:0}.dark .vvs-grain{opacity:.07}.vvs-vignette{pointer-events:none;background:radial-gradient(120% 90% at 50% 45%,#0000 55%,#0000001a 100%);position:absolute;inset:0}.dark .vvs-vignette{background:radial-gradient(120% 90% at 50% 45%,#0000 50%,#00000073 100%)}@keyframes vvs-shimmer-sweep{0%{background-position:-200% 0}to{background-position:200% 0}}.vvs-shimmer{background:linear-gradient(100deg,#0000000d 35%,#0000001a 50%,#0000000d 65%) 0 0/200% 100%;animation:1.6s ease-in-out infinite vvs-shimmer-sweep}.dark .vvs-shimmer{background:linear-gradient(100deg,#ffffff0d 35%,#ffffff1a 50%,#ffffff0d 65%) 0 0/200% 100%}@keyframes vvs-pulse-soft{0%,to{opacity:1}50%{opacity:.35}}.vvs-pulse-soft{animation:1.8s ease-in-out infinite vvs-pulse-soft}@keyframes vvs-enter-up{0%{opacity:0;transform:translateY(14px)}}@keyframes vvs-enter-down{0%{opacity:0;transform:translateY(-10px)scale(.97)}}@keyframes vvs-enter-left{0%{opacity:0;transform:translate(16px)}}@keyframes vvs-enter-fade{0%{opacity:0}}@keyframes vvs-enter-pop{0%{opacity:0;transform:scale(.94)}}.vvs-enter-up{animation:.45s cubic-bezier(.22,1,.36,1) backwards vvs-enter-up}.vvs-enter-down{animation:.28s cubic-bezier(.22,1,.36,1) backwards vvs-enter-down}.vvs-enter-left{animation:.4s cubic-bezier(.22,1,.36,1) backwards vvs-enter-left}.vvs-enter-fade{animation:.25s ease-out backwards vvs-enter-fade}.vvs-enter-pop{animation:.3s cubic-bezier(.22,1,.36,1) backwards vvs-enter-pop}@media (prefers-reduced-motion:reduce){.vvs-enter-up,.vvs-enter-down,.vvs-enter-left,.vvs-enter-fade,.vvs-enter-pop{animation:none}}
:root{--stage-bg:#ececef;--stage-deep:#e2e3e7;--stage-island:#fcfcfdf0;--stage-island-solid:#f8f9fa;--stage-panel:#f3f4f6;--stage-stroke:#d4d7dd;--stage-stroke-strong:#b9bdc6;--stage-text-hi:#15171c;--stage-text-mid:#4b515c;--stage-text-low:#868d99;--stage-signal:#e05f10;--stage-signal-ink:#2b1303;--stage-signal-soft:#e05f101a;--stage-ok:#178a4c;--stage-warn:#b97509;--stage-danger:#c93434;--stage-selection:#e05f1080}.dark{--stage-bg:#0a0b0d;--stage-deep:#060709;--stage-island:#101216eb;--stage-island-solid:#101216;--stage-panel:#14161b;--stage-stroke:#23262d;--stage-stroke-strong:#32363f;--stage-text-hi:#eceef2;--stage-text-mid:#9aa2b1;--stage-text-low:#5c6370;--stage-signal:#ff7a2e;--stage-signal-ink:#210e02;--stage-signal-soft:#ff7a2e1f;--stage-ok:#3fb36b;--stage-warn:#e0a32e;--stage-danger:#e25c5c;--stage-selection:#ff7a2e8c}.stage-island{background:var(--stage-island);border:1px solid var(--stage-stroke);border-radius:10px}.stage-panel{background:var(--stage-panel);border:1px solid var(--stage-stroke);border-radius:8px}.stage-divider{border-color:var(--stage-stroke)}.stage-focus{outline:none}.stage-focus:focus-visible{outline:2px solid var(--stage-selection);outline-offset:1px}.stage-scroll{scrollbar-width:thin;scrollbar-color:var(--stage-stroke-strong) transparent}.stage-scroll::-webkit-scrollbar{width:8px;height:8px}.stage-scroll::-webkit-scrollbar-thumb{background:var(--stage-stroke-strong);background-clip:content-box;border:2px solid #0000;border-radius:4px}.stage-scroll::-webkit-scrollbar-track{background:0 0}@keyframes stage-rise{0%{opacity:0;transform:translateY(10px)}}@keyframes stage-fall{0%{opacity:0;transform:translateY(-8px)scale(.985)}}@keyframes stage-fade{0%{opacity:0}}.stage-rise{animation:.4s cubic-bezier(.22,1,.36,1) backwards stage-rise}.stage-fall{animation:.26s cubic-bezier(.22,1,.36,1) backwards stage-fall}.stage-fade{animation:.22s ease-out backwards stage-fade}@keyframes stage-pulse{0%,to{opacity:1}50%{opacity:.35}}.stage-pulse{animation:1.9s ease-in-out infinite stage-pulse}@keyframes vvs-render-bar{0%{transform:translate(-120%)}to{transform:translate(320%)}}.vvs-render-bar{animation:1.4s ease-in-out infinite vvs-render-bar}@media (prefers-reduced-motion:reduce){.stage-rise,.stage-fall,.stage-fade,.vvs-render-bar{animation:none}}
