.vv-page{--vv-bg:#0a0b0f;--vv-surface:#101219;--vv-surface-2:#151824;--vv-line:#ffffff1c;--vv-muted:#b7bdca;--vv-dim:#8e95a6;color:var(--text);background:var(--vv-bg);isolation:isolate;overflow:clip}.vv-page *{box-sizing:border-box}.vv-page :focus-visible{outline:2px solid var(--accent-2);outline-offset:4px}.vv-page a{text-decoration:none}.vv-shell{width:min(100% - 64px,1240px);margin-inline:auto}.vv-breadcrumb{color:var(--vv-dim);flex-wrap:wrap;align-items:center;gap:10px;padding-top:122px;font-size:13px;display:flex}.vv-breadcrumb a{color:var(--vv-muted);transition:color .2s}.vv-breadcrumb a:hover{color:var(--text)}.vv-breadcrumb [aria-current]{color:var(--accent)}.vv-hero{grid-template-columns:minmax(0,1.13fr) minmax(330px,.87fr);align-items:center;gap:clamp(36px,5vw,84px);padding:clamp(58px,6vw,100px) 0 72px;display:grid;position:relative}.vv-hero:before{content:"";filter:blur(50px);pointer-events:none;z-index:-1;background:radial-gradient(circle,#7781db2b,#0000 68%);border-radius:50%;width:45%;height:50%;position:absolute;inset:5% -6% auto auto}.vv-kicker,.vv-chapter-label,.vv-board-head,.vv-visual-top,.vv-visual-bottom,.vv-frame-time,.vv-toc>span,.vv-script-top,.vv-shotlist span,.vv-final-kicker{font:500 11px/1.5 var(--font-mono), ui-monospace, monospace;letter-spacing:.13em}.vv-kicker{color:var(--accent);align-items:center;gap:12px;margin-bottom:28px;display:flex}.vv-live-dot,.vv-visual-bottom i{background:var(--accent-2);border-radius:50%;width:7px;height:7px;display:inline-block;box-shadow:0 0 14px #6ee7d7a6}.vv-hero h1{letter-spacing:-.075em;max-width:10ch;margin:0 0 34px;font-size:clamp(3.5rem,6.5vw,7rem);font-weight:650;line-height:.98}.vv-h1-dot{color:var(--accent-2)}.vv-hero-lead{color:#c9ccd7;letter-spacing:-.025em;max-width:550px;margin:0;font-size:clamp(1.1rem,1.7vw,1.45rem);line-height:1.5}.vv-hero-lead em{color:var(--text);border-bottom:1px solid var(--accent-2);font-style:normal}.vv-hero-actions{flex-wrap:wrap;align-items:center;gap:24px;margin-top:36px;display:flex}.vv-button-primary{background:linear-gradient(110deg,#9aa5ff,#86c2ef 58%,#6ee7d7);border-radius:999px;justify-content:center;align-items:center;gap:26px;min-height:50px;padding:12px 22px;font-size:14px;font-weight:650;transition:transform .2s,box-shadow .2s;display:inline-flex;box-shadow:0 8px 35px #7d9bf033;color:#0a0b0f!important}.vv-button-primary:hover{transform:translateY(-2px);box-shadow:0 12px 45px #7d9bf04d}.vv-button-text{color:#c7cad3;border-bottom:1px solid #9aa5ff73;align-items:center;gap:12px;min-height:44px;font-size:14px;transition:color .2s,border-color .2s;display:inline-flex}.vv-button-text:hover{color:var(--text);border-color:var(--accent-2)}.vv-authorline{color:var(--vv-dim);margin:42px 0 0;font-size:13px}.vv-hero-visual{background:linear-gradient(145deg,#ffffff17,#ffffff05);border:1px solid #ffffff29;border-radius:29px;justify-self:end;width:min(100%,445px);padding:15px;transform:rotate(2deg);box-shadow:0 38px 100px #00000075,inset 0 1px #ffffff17}.vv-visual-top,.vv-visual-bottom{color:#a8adba;justify-content:space-between;gap:12px;padding:8px 10px 13px;font-size:10px;display:flex}.vv-visual-bottom{align-items:center;padding:13px 10px 7px}.vv-visual-bottom span:first-child{align-items:center;gap:8px;display:inline-flex}.vv-screen{aspect-ratio:4/4.4;background:radial-gradient(85% 70% at 50% 26%,#7781c84f,#0000 65%),linear-gradient(160deg,#151723 0%,#0b0d15 68%,#14232a 100%);border:1px solid #ffffff1f;border-radius:19px;place-items:center;display:grid;position:relative;overflow:hidden}.vv-screen:before,.vv-screen:after{content:"";z-index:2;border-color:#ffffff73;width:22px;height:22px;position:absolute}.vv-screen:before{border-top:1px solid;border-left:1px solid;top:20px;left:20px}.vv-screen:after{border-bottom:1px solid;border-right:1px solid;bottom:20px;right:20px}.vv-screen-grid{background:linear-gradient(90deg,#0000 33.2%,#ffffff0b 33.33%,#0000 33.5% 66.4%,#ffffff0b 66.66%,#0000 66.8%),linear-gradient(#0000 49.8%,#ffffff0a 50%,#0000 50.2%);position:absolute;inset:0}.vv-screen-center{text-align:center;flex-direction:column;align-items:center;gap:12px;width:80%;padding:50px 0;display:flex;position:relative}.vv-screen-center span{color:var(--accent-2);font:500 12px var(--font-mono),monospace;letter-spacing:.18em}.vv-screen-center strong{letter-spacing:-.055em;max-width:9ch;font-size:clamp(2.2rem,3vw,3.7rem);font-weight:630;line-height:1.02}.vv-screen-center small{color:#bec4d2;font-size:15px}.vv-screen-playhead{background:linear-gradient(90deg,transparent,var(--accent-2),transparent);height:1px;box-shadow:0 0 18px var(--accent-2);opacity:.7;animation:5s ease-in-out infinite alternate vv-scan;position:absolute;inset:auto 0 23%}@keyframes vv-scan{0%{opacity:.25;transform:translateY(-92px)}to{opacity:.7;transform:translateY(92px)}}.vv-storyboard{border:1px solid var(--vv-line);background:linear-gradient(160deg,#171a24,#10131a 72%);border-radius:24px;margin:0 0 95px;padding:22px;box-shadow:0 30px 90px #0003}.vv-board-head{color:var(--vv-dim);justify-content:space-between;gap:20px;margin-bottom:18px;display:flex}.vv-board-head span:first-child{color:var(--accent-2)}.vv-board-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.vv-frame{background:linear-gradient(145deg,#9aa5ff2b,#9aa5ff09);border:1px solid #ffffff1a;border-radius:14px;flex-direction:column;justify-content:space-between;min-height:218px;padding:19px;transition:transform .25s,border-color .25s;display:flex}.vv-frame:hover{border-color:#ffffff47;transform:translateY(-4px)}.vv-frame-blue{background:linear-gradient(145deg,#7ea7f82e,#7ea7f809)}.vv-frame-cyan{background:linear-gradient(145deg,#6ee7d729,#6ee7d706)}.vv-frame-mint{background:linear-gradient(145deg,#6ee7d71f,#9aa5ff0d)}.vv-frame-time{color:#d5d9e3;font-size:10px}.vv-frame strong{letter-spacing:-.04em;margin-top:18px;font-size:clamp(1.25rem,2vw,1.85rem);font-weight:620;line-height:1.12;display:block}.vv-frame p{color:#c0c6d2;margin:12px 0 0;font-size:13px;line-height:1.45}.vv-board-caption{color:var(--vv-dim);margin:16px 2px 0;font-size:12px}.vv-reading-layout{grid-template-columns:200px minmax(0,740px);justify-content:start;gap:clamp(48px,5vw,72px);padding-bottom:125px;display:grid}.vv-toc{align-self:start;padding-top:4px;position:sticky;top:110px}.vv-toc>span{color:var(--accent-2);padding:0 0 20px;display:block}.vv-toc a{color:#abb1bf;border-top:1px solid var(--vv-line);align-items:center;gap:14px;min-height:45px;font-size:13px;transition:color .2s,padding-left .2s;display:flex}.vv-toc a:last-child{border-bottom:1px solid var(--vv-line)}.vv-toc a:hover{color:var(--text);padding-left:4px}.vv-toc small{color:var(--accent);font:500 11px var(--font-mono),monospace}.vv-article{min-width:0}.vv-section{border-top:1px solid var(--vv-line);padding:34px 0 72px;scroll-margin-top:110px}.vv-section:first-child{border-top:2px solid var(--accent)}.vv-chapter-label{color:var(--accent-2);justify-content:space-between;gap:16px;margin-bottom:31px;display:flex}.vv-chapter-label span:last-child{color:var(--vv-dim)}.vv-article h2{letter-spacing:-.05em;max-width:17ch;margin:0 0 24px;font-size:clamp(2rem,3vw,3.1rem);font-weight:620;line-height:1.13}.vv-article h3{letter-spacing:-.025em;margin:0 0 9px;font-size:19px;font-weight:610;line-height:1.3}.vv-article p{color:#c7cbd5;margin:0 0 20px;font-size:17px;line-height:1.76}.vv-article .vv-lead{color:#e0e3eb;font-size:clamp(18px,1.8vw,21px);line-height:1.6}.vv-article a{color:#a9b7ff;text-underline-offset:4px;text-decoration:underline}.vv-article a:hover{color:var(--accent-2)}.vv-article strong{color:var(--text)}.vv-photo-guide{background:#151824;border:1px solid #ffffff29;border-radius:20px;margin:32px 0 36px;overflow:hidden;box-shadow:0 24px 60px #0003}.vv-photo-frame{aspect-ratio:3/2;background:#1a1e29;overflow:hidden}.vv-photo-frame img{object-fit:cover;width:100%;height:100%;display:block}.vv-photo-guide figcaption{border-top:1px solid #ffffff1a;grid-template-columns:1fr;gap:7px;padding:21px 25px 23px;display:grid}.vv-photo-guide figcaption span{color:var(--accent-2);font:500 11px/1.5 var(--font-mono), ui-monospace, monospace;letter-spacing:.13em}.vv-photo-guide figcaption strong{color:var(--text);letter-spacing:-.02em;font-size:18px;font-weight:610;line-height:1.4}.vv-photo-guide figcaption small{color:#adb7c6;font-size:14px;line-height:1.55}.vv-principle{background:linear-gradient(135deg,#9aa5ff24,#6ee7d70b);border:1px solid #9aa5ff4d;border-radius:20px;margin:32px 0;padding:26px 30px}.vv-principle span{color:var(--accent-2);font:500 11px var(--font-mono),monospace;letter-spacing:.15em}.vv-principle strong{letter-spacing:-.035em;margin:16px 0 13px;font-size:clamp(20px,2vw,27px);font-weight:600;line-height:1.3;display:block}.vv-principle p{margin:0;font-size:15px}.vv-script{background:#131721;border:1px solid #ffffff2b;border-radius:20px;margin:30px 0 26px;overflow:hidden;box-shadow:0 20px 65px #00000038}.vv-script-top{color:var(--accent-2);border-bottom:1px solid var(--vv-line);justify-content:space-between;gap:14px;padding:16px 22px;display:flex}.vv-script-top span:last-child{color:var(--vv-dim)}.vv-script ol{margin:0;padding:0 22px;list-style:none}.vv-script li{border-bottom:1px solid var(--vv-line);grid-template-columns:44px 1fr;gap:14px;padding:19px 0;display:grid}.vv-script li:last-child{border:0}.vv-script li>span{color:var(--accent);font:500 12px var(--font-mono),monospace;padding-top:4px}.vv-script li p{margin:0;font-size:16px;line-height:1.55}.vv-script b{color:#b8f1e7;font-weight:550}.vv-note{border-left:2px solid var(--accent-2);color:#c9ced9;margin:30px 0;padding:12px 0 12px 22px;font-size:15px;line-height:1.7}.vv-note strong{color:var(--text)}.vv-examples{gap:10px;margin:28px 0;display:grid}.vv-examples details,.vv-faq details{border:1px solid var(--vv-line);background:#12141c;border-radius:15px;overflow:hidden}.vv-examples summary{cursor:pointer;grid-template-columns:125px 1fr 24px;align-items:center;gap:12px;min-height:76px;padding:20px 22px;list-style:none;display:grid}.vv-examples summary::-webkit-details-marker{display:none}.vv-faq summary::-webkit-details-marker{display:none}.vv-examples summary>span:first-child{color:var(--accent);font:500 11px var(--font-mono),monospace;letter-spacing:.06em}.vv-examples summary strong{font-size:16px;font-weight:580}.vv-chevron{color:var(--accent-2);font-size:19px;transition:transform .2s}.vv-examples details[open] .vv-chevron{transform:rotate(90deg)}.vv-examples details>div{padding:0 22px 22px 159px}.vv-examples details p{margin:0 0 12px;font-size:16px;line-height:1.65}.vv-examples details small{color:#a9b2c2;font-size:13px;line-height:1.6;display:block}.vv-shotlist{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:28px 0;display:grid}.vv-shotlist>div{border:1px solid var(--vv-line);background:linear-gradient(145deg,#151824,#101219);border-radius:16px;padding:24px}.vv-shotlist span{color:var(--accent-2);margin-bottom:30px;display:block}.vv-shotlist h3{margin-bottom:10px}.vv-shotlist p{margin:0;font-size:15px;line-height:1.65}.vv-edit-order{border-top:1px solid var(--vv-line);margin:30px 0}.vv-edit-order>div{border-bottom:1px solid var(--vv-line);grid-template-columns:46px 180px 1fr;align-items:baseline;gap:12px;padding:21px 0;display:grid}.vv-edit-order span{color:var(--accent-2);font:500 12px var(--font-mono),monospace}.vv-edit-order strong{font-size:17px;font-weight:610;line-height:1.3}.vv-edit-order p{margin:0;font-size:15px;line-height:1.6}.vv-mistakes{border-top:1px solid var(--vv-line);margin:30px 0}.vv-mistakes>div{border-bottom:1px solid var(--vv-line);grid-template-columns:54px 1fr;gap:20px;padding:21px 0;display:grid}.vv-mistakes b{color:var(--accent);font:500 12px var(--font-mono),monospace}.vv-mistakes p{margin:0;font-size:15px;line-height:1.65}.vv-check{background:linear-gradient(130deg,#6ee7d717,#9aa5ff0b);border:1px solid #6ee7d73d;border-radius:18px;padding:26px 30px}.vv-check>strong{margin-bottom:14px;font-size:19px;display:block}.vv-check ul{color:#d0d6df;margin:0;padding-left:21px;line-height:1.65}.vv-check li{padding:5px 0}.vv-check li::marker{color:var(--accent-2)}.vv-faq details{margin:10px 0}.vv-faq summary{cursor:pointer;align-items:center;min-height:62px;padding:16px 22px;font-size:16px;font-weight:570;list-style:none;display:flex}.vv-faq summary:after{content:"+";font:20px var(--font-mono),monospace;color:var(--accent-2);margin-left:auto;padding-left:15px}.vv-faq details[open] summary:after{content:"−"}.vv-faq details p{margin:0;padding:0 22px 20px;font-size:15px;line-height:1.65}.vv-source{border-top:1px solid var(--vv-line);padding-top:25px}.vv-source strong{color:var(--accent-2);margin-bottom:9px;font-size:13px;display:block}.vv-source p{color:var(--vv-dim);font-size:13px;line-height:1.7}.vv-source a{color:var(--accent)!important}.vv-final{border-top:1px solid var(--vv-line);background:radial-gradient(circle at 80%,#6ee7d712,#0000 32%),linear-gradient(135deg,#161a27,#0d1017 72%)}.vv-final-grid{grid-template-columns:minmax(0,1fr) minmax(280px,.72fr);align-items:center;gap:clamp(40px,8vw,130px);padding-block:clamp(80px,9vw,135px);display:grid}.vv-final-kicker{color:var(--accent-2)}.vv-final h2{letter-spacing:-.065em;margin:26px 0;font-size:clamp(2.7rem,5vw,5rem);font-weight:630;line-height:1.04}.vv-final h2 em{color:var(--accent);font-style:normal}.vv-final p{color:#c1c6d1;max-width:560px;margin:0 0 28px;font-size:17px;line-height:1.7}.vv-final-card{background:linear-gradient(150deg,#9aa5ff1f,#ffffff08 65%);border:1px solid #ffffff29;border-radius:28px;flex-direction:column;justify-content:space-between;min-height:340px;padding:32px;display:flex;box-shadow:0 25px 75px #00000038}.vv-final-card>span{color:var(--accent-2);font:500 11px var(--font-mono),monospace;letter-spacing:.12em}.vv-final-card strong{letter-spacing:-.045em;margin-top:auto;font-size:clamp(1.7rem,2.3vw,2.5rem);font-weight:580;line-height:1.15;display:block}.vv-final-card p{margin:14px 0 25px;font-size:15px}.vv-final-card>div{font:11px var(--font-mono),monospace;color:var(--accent);border-top:1px solid var(--vv-line);letter-spacing:.04em;padding-top:14px}@media (max-width:950px){.vv-hero{grid-template-columns:1fr 330px;gap:25px}.vv-hero h1{font-size:clamp(3.7rem,7vw,6rem)}.vv-reading-layout{grid-template-columns:170px minmax(0,1fr);gap:38px}.vv-edit-order>div{grid-template-columns:42px 1fr}.vv-edit-order p{grid-column:2}}@media (max-width:720px){.vv-shell{width:min(100% - 36px,600px)}.vv-breadcrumb{padding-top:90px;font-size:12px}.vv-hero{grid-template-columns:1fr;gap:48px;padding:58px 0 52px}.vv-hero h1{max-width:none;margin-bottom:26px;font-size:clamp(3.2rem,10.5vw,5.2rem)}.vv-hero-visual{justify-self:center;width:min(100%,500px);transform:rotate(0)}.vv-screen{aspect-ratio:4/3.3}.vv-screen-center strong{font-size:clamp(2.1rem,7vw,3rem)}.vv-authorline{margin-top:25px}.vv-storyboard{margin-bottom:62px;padding:16px}.vv-board-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.vv-board-head span:last-child{display:none}.vv-frame{min-height:185px}.vv-reading-layout{padding-bottom:76px;display:block}.vv-toc{-webkit-overflow-scrolling:touch;gap:7px;margin-bottom:28px;padding:0 0 24px;display:flex;position:static;overflow-x:auto}.vv-toc>span{display:none}.vv-toc a,.vv-toc a:last-child{white-space:nowrap;border:1px solid var(--vv-line);background:#12141c;border-radius:100px;min-height:42px;padding:8px 12px}.vv-section{padding-bottom:58px;scroll-margin-top:80px}.vv-final-grid{grid-template-columns:1fr}.vv-final-card{min-height:270px}}@media (max-width:480px){.vv-hero-lead{font-size:17px}.vv-hero-actions{gap:15px}.vv-button-primary{justify-content:space-between;width:100%}.vv-hero-visual{border-radius:22px;padding:10px}.vv-screen{border-radius:15px}.vv-storyboard{width:calc(100% + 12px);margin-left:-6px;padding:12px}.vv-frame{min-height:185px;padding:13px}.vv-frame strong{font-size:20px}.vv-frame p{font-size:12px}.vv-frame-time{font-size:9px}.vv-board-caption{line-height:1.5}.vv-article h2{max-width:none}.vv-article p{font-size:16px}.vv-principle{padding:22px}.vv-script li{grid-template-columns:31px 1fr;gap:7px}.vv-script li p{font-size:15px}.vv-script-top{font-size:9px}.vv-examples summary{grid-template-columns:1fr 24px;gap:5px}.vv-examples summary>span:first-child,.vv-examples summary strong{grid-column:1}.vv-examples summary .vv-chevron{grid-area:1/2/span 2}.vv-examples details>div{padding:0 20px 20px}.vv-shotlist{grid-template-columns:1fr}.vv-shotlist span{margin-bottom:16px}.vv-photo-guide figcaption{padding:17px 18px 20px}.vv-photo-guide figcaption strong{font-size:16px}.vv-final-card{padding:23px}}@media (prefers-reduced-motion:reduce){.vv-screen-playhead{animation:none}.vv-page *,.vv-page :before,.vv-page :after{transition-duration:.01ms!important;animation-duration:.01ms!important}}
