.projects-surface[data-clarity]{position:relative}.projects-surface[data-clarity] .projects-chapter-title{text-align:center;color:#344746;letter-spacing:.12em;margin:0;font-size:30px;font-weight:500;position:absolute;top:clamp(78px,10vh,108px);left:0;right:0}.projects-surface[data-clarity] .stage-header>span{visibility:hidden}.projects-surface[data-clarity] .project-repository{color:#315e75;text-underline-offset:4px;margin-top:9px;padding:3px 8px;font-size:14px;text-decoration:underline;display:block}.projects-surface[data-clarity] .star-metric{opacity:.78}.projects-surface[data-clarity] .projects-folder-caption{min-height:58px}.competitions-surface[data-clarity] .competition-chapter-title{letter-spacing:.12em;color:#353e3a;margin:0 0 28px;font:500 30px/1.4 Wall Caption Serif,CompetitionBookSerif,serif}.competitions-surface[data-clarity] .competition-page[data-page=left]{padding-top:calc(var(--pad-top) - 58px)}.skills-study[data-clarity] .skills-chapter-title{letter-spacing:.12em;color:#435047;margin:0;font:500 26px/1.3 Skills Sans,sans-serif}.about-me-study[data-clarity] .about-me-heading .about-me-chapter-title{letter-spacing:.12em;color:#4a5555;margin:0 0 16px;font-size:20px;font-weight:450}.about-me-study[data-clarity] .about-me-study-bar>span{visibility:hidden}@media (height<=650px){.projects-surface[data-clarity] .projects-chapter-title{font-size:24px;top:65px}}@media (width<=900px){.competitions-surface[data-clarity] .competition-page[data-page=left]{padding-top:34px}.competitions-surface[data-clarity] .competition-chapter-title{margin-bottom:24px;font-size:27px}}@media (width<=700px){.projects-surface[data-clarity] .projects-chapter-title{margin:12px 0 0;font-size:26px;position:static}.projects-surface[data-clarity] .folder-dual{min-height:0}.skills-study[data-clarity] .skills-chapter-title{font-size:23px}}@font-face{font-family:LocalSerif;src:local(Noto Serif SC),local(Source Han Serif SC),local(SimSun);font-display:swap}:root{color:#36392f;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#ede9df;font-family:Segoe UI,Microsoft YaHei,sans-serif;font-weight:400}*{box-sizing:border-box}body{margin:0}button,a,select{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer}button:disabled{cursor:default}button:focus-visible,a:focus-visible,select:focus-visible{outline-offset:6px;outline:2px solid #9b6c40}button{background:0 0;border:0}a{color:inherit}::selection{color:#fff;background:#a5ad96}.app{--ink:#34382f;--muted:#77796c;--border:#d5d2c7;--paper:#ede9df;--stage:#ddd6c8;background:var(--paper);height:100dvh;min-height:500px;color:var(--ink);grid-template-rows:76px minmax(0,1fr) 60px;padding:0 36px;transition:background .65s,color .65s;display:grid;overflow:hidden}.app.theme-dark{--ink:#d6d9cf;--muted:#8b9389;--border:#2a2d27;--paper:#080a08;--stage:#020402}.site-header{border-bottom:1px solid var(--border);z-index:8;justify-content:space-between;align-items:center;gap:16px;display:flex;position:relative}.identity{letter-spacing:.1em;white-space:nowrap;align-items:center;gap:14px;font-size:14px;display:flex}.identity-mark{opacity:.75;border:1px solid;width:15px;height:15px;position:relative;transform:rotate(-5deg)}.identity-mark:after{content:"";border-top:1px solid;width:13px;position:absolute;top:6px;left:0}.identity-mark:before{content:"";border-left:1px solid;height:6px;position:absolute;top:0;left:6px}.identity-divider{border-left:1px solid var(--border);height:12px}.identity small{letter-spacing:.09em;color:var(--muted);font-family:Courier New,monospace;font-size:10px;font-weight:400}.site-header nav{align-items:center;gap:24px;display:flex}.icon-button{opacity:.75;width:32px;height:32px;padding:5px}.icon-button svg{width:21px;height:21px}.icon-button:hover{opacity:1}.language-button{letter-spacing:.04em;align-items:center;gap:9px;padding:7px 0;font-family:Courier New,Microsoft YaHei,monospace;font-size:11px;display:flex}.language-button span{opacity:.42}.language-button .active{opacity:1}.language-slash{font-size:10px}.header-text{letter-spacing:.05em;color:var(--muted);padding:10px 0;font-size:11px}.header-text span{margin-left:8px}.review-toggle{grid-template-columns:repeat(2,4px);gap:3px;padding:8px;display:grid}.review-toggle span{opacity:.55;background:currentColor;width:4px;height:4px}.review-toggle:hover span{opacity:1}.stage{background:var(--stage);isolation:isolate;min-height:0;margin-top:16px;position:relative;overflow:hidden;container-type:size}.wall-world,.room-world{transition:filter .5s,transform .6s;position:absolute;inset:0}.wall-world{background:#020302}.wall-world>div>canvas,.room-world>div>canvas{display:block}.world-reading{filter:blur(3px)brightness(.85);transform:scale(1.008)}.brick-labels{pointer-events:none;position:absolute;inset:0}.wall-edge{pointer-events:none;position:absolute;inset:0;box-shadow:inset 0 0 65px #61523d16,inset 0 0 0 1px #655b451c}.stage-hint{white-space:nowrap;letter-spacing:.12em;color:#6a6c5d;pointer-events:none;z-index:5;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#e9e3d6b8;border-radius:1px;align-items:center;gap:12px;padding:8px 14px;font-size:10px;display:flex;position:absolute;bottom:24px;left:50%;transform:translate(-50%)}.hint-line{opacity:.65;background:currentColor;width:18px;height:1px}.theme-dark .stage-hint{color:#c1c9bb;background:#080d09b0}.has-reader .stage-hint{opacity:0}.site-footer{letter-spacing:.1em;color:var(--muted);align-items:center;gap:24px;font-size:10px;display:flex}.chapter-track{align-items:center;gap:14px;display:flex}.chapter-track>span{opacity:.45;align-items:center;gap:9px;display:flex}.chapter-track>span.active{opacity:1;color:var(--ink)}.chapter-track small{letter-spacing:0;font-family:Courier New,monospace;font-size:9px}.chapter-track i{background:var(--border);width:26px;height:1px;margin-left:8px}.footer-note{letter-spacing:.12em;opacity:.65;margin:auto;font-size:9px}.footer-index{letter-spacing:.05em;font-family:Courier New,monospace}.choice-overlay{pointer-events:none;z-index:4;position:absolute;inset:0}.micro{letter-spacing:.17em;color:#8a9486;font-family:Courier New,Microsoft YaHei,monospace;font-size:9px}.pill-choice{pointer-events:auto;isolation:isolate;justify-content:center;align-items:center;width:90px;height:76px;display:flex;position:absolute;top:72%;transform:translate(-50%,-50%)}.pill-choice.red{--pill:#c53932;--pill-light:#ffa795;--pill-dark:#6b1315;left:calc(50% - 38cqh)}.pill-choice.blue{--pill:#2575ad;--pill-light:#91d4f1;--pill-dark:#073955;left:calc(50% + 38cqh)}.terminal{color:#6fe4ac;z-index:6;background:#020503;position:absolute;inset:0;overflow:hidden}.terminal-screen{transform-origin:50%;background:radial-gradient(at 45% 45%,#09211666,#0000 75%),#020503;position:absolute;inset:0}.terminal-lines{letter-spacing:.02em;text-shadow:0 0 7px #41f4a455;font-family:Courier New,Microsoft YaHei,monospace;font-size:clamp(20px,4.8cqh,46px);font-weight:400;line-height:1.65;position:absolute;top:32%;left:9%;right:8%}.terminal-lines p{white-space:pre-wrap;margin:0 0 8px}.terminal-cursor{vertical-align:-.12em;background:#90ffd0;width:.55em;height:1em;margin-left:6px;animation:1s step-end infinite cursor-blink;display:inline-block;box-shadow:0 0 10px #6effbe80}.scanlines{opacity:.3;pointer-events:none;background:repeating-linear-gradient(0deg,#0000 0 2px,#0003 3px,#0000 4px);position:absolute;inset:0}.terminal.is-closing .terminal-screen{animation:.7s cubic-bezier(.76,0,.24,1) forwards tv-collapse}.terminal.is-closing:after{content:"";background:#b7ffe0;width:70%;height:1px;animation:.7s both tv-line;position:absolute;top:50%;left:50%;box-shadow:0 0 10px #8effbd}.code-rain{z-index:10;will-change:clip-path;background:#020906;position:absolute;inset:0}.code-rain canvas{width:100%;height:100%;display:block}.is-off{grid-template-rows:1fr;min-height:0;padding:0;background:#000!important}.stage-off{background:#000;margin:0}.stage-off:after{content:"";z-index:50;background:#000;position:absolute;inset:0}.room-world{background:radial-gradient(at 50% 60%,#e0d9ca 0,#e8e3d7 48%,#eeeadf 100%)}.room-annotation{z-index:2;letter-spacing:.15em;color:#6f7362;align-items:center;gap:13px;font:9px Courier New,Microsoft YaHei,monospace;display:flex;position:absolute;top:30px;left:30px}.room-annotation>span:first-child{border:1px solid #a5a68e80;border-radius:50%;place-items:center;width:24px;height:24px;font-size:8px;display:grid}.room-hotspots{pointer-events:none;position:absolute;inset:0}.room-hotspot{pointer-events:auto;z-index:3;place-items:center;width:44px;height:44px;display:grid;position:absolute;top:-9999px;left:-9999px;transform:translate(-50%,-50%)}.hotspot-dot{background:#777e6480;border:1px solid #f2ecd9;border-radius:50%;width:9px;height:9px;transition:all .2s;display:block;box-shadow:0 0 0 5px #f5efda30}.hotspot-label{white-space:nowrap;letter-spacing:.05em;color:#434b38;opacity:0;pointer-events:none;background:#eee9dbef;align-items:center;gap:12px;padding:11px 14px;font-size:11px;transition:opacity .2s,transform .2s;display:flex;position:absolute;bottom:34px;left:50%;transform:translate(-50%,4px);box-shadow:0 6px 20px #332d1e12}.hotspot-label small{opacity:.55;font:8px Courier New,monospace}.hotspot-label i{font-style:normal}.room-hotspot:hover .hotspot-label,.room-hotspot:focus-visible .hotspot-label{opacity:1;transform:translate(-50%)}.room-hotspot:hover .hotspot-dot,.room-hotspot:focus-visible .hotspot-dot{background:#fff7df;box-shadow:0 0 0 7px #f5efda50}.composition-note{letter-spacing:.05em;color:#727765;pointer-events:none;font-size:9px;position:absolute;bottom:26px;right:22px}.reader{z-index:100;color:#353c2e;background:0 0;border:0;width:100%;max-width:none;height:100%;max-height:none;margin:0;padding:28px;position:fixed;inset:0;overflow:hidden}.reader[open]{justify-content:center;align-items:center;display:flex}.reader-paper{background:#f1ede3;border:1px solid #e0dacb;flex-direction:column;width:min(860px,100vw - 80px);height:min(840px,100dvh - 90px);animation:.4s cubic-bezier(.2,.8,.3,1) both reader-in;display:flex;position:relative;box-shadow:0 25px 100px #0003}.reader-top{border-bottom:1px solid #d7d4c6;justify-content:space-between;align-items:center;gap:20px;min-height:74px;margin:0 44px;display:flex}.reader-top .micro{color:#7a806b;font-size:9px;line-height:1.8}.close-button{align-items:center;gap:9px;padding:10px 0 10px 16px;display:flex}.close-button>span{font-size:27px;font-weight:200;line-height:1}.close-button small{color:#8c907d;font:8px Courier New,monospace}.reader-scroll{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#c2c5b3 transparent;flex:1;padding:45px 76px 36px;overflow-y:auto}.reader-heading{margin-bottom:38px}.reader-rule{background:#727e5f;width:34px;height:2px;margin-bottom:21px;display:block}.reader-heading h1{letter-spacing:.025em;margin:0 0 15px;font-family:LocalSerif,Georgia,serif;font-size:clamp(30px,4vw,48px);font-weight:400;line-height:1.4}.draft-tag{letter-spacing:.1em;color:#8b846c;border:1px solid #d8d0b9;padding:4px 8px;font:9px Courier New,Microsoft YaHei,monospace}.article-body{letter-spacing:.025em;color:#515743;font-family:LocalSerif,Georgia,serif;font-size:16px;line-height:2.15}.article-body section{margin:0 0 20px}.article-body h2{letter-spacing:.02em;color:#323d2c;margin:30px 0 8px;font-family:Segoe UI,Microsoft YaHei,sans-serif;font-size:19px;font-weight:500}.article-body p{margin:0}.article-body a{overflow-wrap:anywhere;border-bottom:1px solid #a1aa8d;padding-bottom:5px;font-family:Courier New,monospace;font-size:12px;text-decoration:none}.article-body a:hover{color:#83926b}.article-body img{max-width:100%;display:block}.reader-end{color:#7a816c;border-top:1px solid #d9d5c8;justify-content:space-between;align-items:center;margin-top:45px;padding-top:28px;font-size:11px;display:flex}.reader-end button{letter-spacing:.08em;padding:10px;font-size:11px}.reader-end button span{margin-left:16px}.reader-bottom{letter-spacing:.13em;color:#878d79;border-top:1px solid #d7d4c6;justify-content:space-between;align-items:center;min-height:43px;margin:0 44px;font-size:9px;display:flex}.reader-bottom>span:last-child{font-family:Courier New,Microsoft YaHei,monospace}.review-panel{z-index:40;color:#434b36;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);background:#f4f0e7f7;border:1px solid #d3cfbd;width:280px;padding:20px;position:fixed;top:87px;right:48px;box-shadow:0 15px 50px #151a1026}.review-heading{letter-spacing:.13em;justify-content:space-between;align-items:center;font:10px Courier New,monospace;display:flex}.review-heading button{padding:0 0 0 10px;font-size:22px}.review-panel p{color:#7d8470;margin:16px 0;font-size:11px;line-height:1.7}.review-buttons{gap:5px;display:grid}.review-buttons button{text-align:left;letter-spacing:.07em;border:1px solid #d9d6c8;padding:11px;font-size:11px}.review-buttons button:hover{background:#e2e4d4}.review-panel label{justify-content:space-between;align-items:center;margin:18px 0;font-size:10px;display:flex}.review-panel select{color:#50593e;background:#ebeade;border:1px solid #ceceba;padding:5px;font:11px monospace}.review-reset{border-bottom:1px solid #b8bea5;margin-bottom:18px;padding:8px 0;font-size:11px}.review-panel>small{color:#888c7d;font-size:10px;line-height:1.8;display:block}.loading-scene,.scene-fallback{letter-spacing:.1em;color:#697257;background:#e5e0d3;justify-content:center;align-items:center;gap:14px;font-size:12px;display:flex;position:absolute;inset:0}.loading-scene span{background:#8e987d;border-radius:50%;width:6px;height:6px;animation:1.5s infinite cursor-blink}.scene-fallback{flex-direction:column}.scene-fallback button{padding:16px;font-size:25px}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.portrait-advice{display:none}@keyframes cursor-blink{0%,49%{opacity:1}50%,to{opacity:.12}}@keyframes tv-collapse{0%{transform:scale(1)}65%{filter:brightness(3);transform:scaleY(.002)}to{filter:brightness(5);transform:scale(0,.001)}}@keyframes tv-line{0%,45%{opacity:0;transform:translate(-50%,-50%)scaleX(1)}65%{opacity:1;transform:translate(-50%,-50%)scaleX(1)}to{opacity:0;transform:translate(-50%,-50%)scaleX(0)}}@keyframes reader-in{0%{opacity:0;transform:translateY(8px)scale(.985)}to{opacity:1;transform:translateY(0)scale(1)}}@media (width>=1800px){.app{grid-template-rows:88px minmax(0,1fr) 70px;padding:0 54px}.stage{margin-top:22px}.identity{font-size:15px}.site-footer{font-size:11px}}@media (height<=650px) and (width>=800px){.app{grid-template-rows:53px minmax(0,1fr) 41px;min-height:350px;padding:0 22px}.stage{margin-top:10px}.stage-hint{padding:6px 10px;font-size:9px;bottom:12px}.composition-note{font-size:8px;bottom:14px}.pill-choice{height:55px}.reader-paper{height:calc(100dvh - 35px)}.reader-top{min-height:53px}.reader-scroll{padding-top:25px}.review-panel{top:63px;right:30px}}@media (width<=800px){.app{grid-template-rows:62px minmax(0,1fr) 48px;min-height:380px;padding:0 16px}.stage{margin-top:10px}.identity{gap:10px;font-size:12px}.identity small,.identity-divider{display:none}.site-header nav{gap:15px}.footer-note{display:none}.footer-index{margin-left:auto}.chapter-track{gap:9px}.chapter-track i{width:13px;margin-left:2px}.chapter-track>span{gap:5px;font-size:9px}.stage-hint{letter-spacing:.03em;gap:7px;padding:7px 9px;font-size:9px}.composition-note{font-size:8px;bottom:65px;right:12px}.room-annotation{gap:8px;font-size:8px;top:18px;left:16px}.header-text{font-size:10px}.reader{padding:0}.reader-paper{width:calc(100vw - 30px);height:calc(100dvh - 40px)}.reader-top{min-height:62px;margin:0 24px}.reader-scroll{padding:28px 28px 25px}.reader-heading{margin-bottom:25px}.article-body{font-size:15px;line-height:2}.reader-bottom{margin:0 24px}.review-panel{top:73px;right:25px}}@media (width<=600px) and (orientation:portrait){.stage{background:#e1dbcf}.stage-hint{white-space:normal;justify-content:center;min-width:75%;max-width:94%;line-height:1.8;bottom:48px}.portrait-advice{text-align:center;color:#777e6a;letter-spacing:.02em;pointer-events:none;z-index:9;font-size:9px;display:block;position:fixed;bottom:58px;left:0;right:0}.theme-dark .portrait-advice{color:#7f8f7e}.pill-choice.red{left:18%}.pill-choice.blue{left:82%}.pill-choice{top:72%}.terminal-lines{font-size:21px;top:35%;left:8%}.room-annotation{font-size:7px}.composition-note{display:none}.review-panel{width:250px}.identity-mark{display:none}}@media (height<=500px) and (orientation:landscape){.app{grid-template-rows:43px minmax(0,1fr) 32px;min-height:260px;padding:0 16px}.stage{margin-top:7px}.identity{font-size:11px}.site-header nav{gap:14px}.icon-button{width:28px;height:28px}.site-footer{font-size:8px}.stage-hint{padding:4px 8px;font-size:8px;bottom:9px}.room-annotation{font-size:7px;top:12px;left:15px}.composition-note{display:none}.pill-choice{height:44px}.reader-paper{width:min(760px,100vw - 40px);height:calc(100dvh - 20px)}.reader-top{min-height:47px}.reader-scroll{padding:20px 50px}.reader-heading h1{font-size:30px}.reader-bottom{min-height:30px}.review-panel{max-height:calc(100dvh - 65px);top:53px;overflow:auto}.portrait-advice{display:none}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}.reader-controls{flex-shrink:0;align-items:center;gap:20px;display:flex}.reader-controls .language-button{font-size:10px}.app.is-off{transition:none}.reading-failure{color:#343930;background:#fcfbf5;border:1px solid #d3d4ca;width:min(440px,100% - 32px);margin:auto;padding:28px}.reading-failure::backdrop{background:#23282066}.reading-failure h2{margin:0;font-size:20px}.reading-failure p{margin:12px 0 20px;line-height:1.65}.reading-failure div{flex-wrap:wrap;gap:10px;display:flex}.reading-failure button{min-height:44px;color:inherit;cursor:pointer;background:#eef0e8;border:1px solid #a9b1a2;padding:6px 14px}.reading-failure button:focus-visible{outline-offset:3px;outline:2px solid #485e49}.app:not([data-scene=room]){background:#e1d9cc;min-height:0;padding:0;display:block}.app:not([data-scene=room]) .stage{background:0 0;margin:0;position:absolute;inset:0}.app:not([data-scene=room]) .site-header{pointer-events:none;border:0;justify-content:flex-end;position:fixed;top:18px;left:25px;right:25px}.app:not([data-scene=room]) .site-header nav{pointer-events:auto;gap:19px}.app:not([data-scene=room]) .identity,.app[data-scene=terminal] .site-header,.app[data-scene=rain] .site-header{display:none}.app:not([data-scene=room]) .site-footer{pointer-events:none;z-index:5;opacity:.55;position:fixed;bottom:18px;left:25px;right:25px}.app:not([data-scene=room]) .footer-note,.app:not([data-scene=room]) .chapter-track{display:none}.app:not([data-scene=room]) .footer-index{margin-left:auto;font-size:9px}.app:not([data-scene=room]) .stage-hint{-webkit-backdrop-filter:none;backdrop-filter:none;letter-spacing:.13em;color:#7d7162;opacity:.7;background:0 0;padding:0;font-size:10px;bottom:16px}.app[data-scene=choice] .stage-hint{display:none}.pill-choice{width:85px;height:75px}.pill-choice:focus-visible{outline-offset:2px;border-radius:50%;outline:1px solid #a7a79d}.terminal,.terminal-screen{background:#000}.terminal-screen{background:radial-gradient(at 45% 20%,#07120b55,#0000 78%),#000}.terminal-lines{letter-spacing:.015em;color:#a1ffe0;text-shadow:0 0 2px #81ffb9,0 0 6px #08e493c9,0 0 13px #09ac785c;filter:blur(.18px);font-family:Courier New,monospace;font-size:clamp(22px,3.1vw,46px);font-weight:600;line-height:1.65;top:22%;left:6%;right:6%}.terminal-lines p{margin:0 0 8px}.terminal[data-pill=red][data-frame="2"] .terminal-lines{font-size:min(clamp(22px,3.1vw,46px),2.25vw)}.terminal-cursor{vertical-align:-.15em;background:#dbfff0;width:.66em;height:1.08em;margin-left:.08em;animation:1.05s step-end infinite cursor-blink;box-shadow:0 0 3px #adffdd,0 0 12px #06ff9dc0}.scanlines{opacity:.12;background:repeating-linear-gradient(0deg,#0000 0 2px,#0007 3px,#0000 4px)}.code-rain{background:#000}.reader::backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#11100ddd}.reader-paper{background:#eee8db;box-shadow:0 20px 100px #0005}@media (width<=600px) and (orientation:portrait){.app:not([data-scene=room]) .site-header{top:12px;left:16px;right:16px}.app:not([data-scene=room]) .stage-hint{min-width:0;max-width:90%;font-size:9px;bottom:60px}.terminal-lines{font-size:23px;top:25%}}@media (height<=500px) and (orientation:landscape){.app:not([data-scene=room]) .site-header{top:8px;right:16px}.app:not([data-scene=room]) .stage-hint{font-size:8px;bottom:6px}}.app.theme-dark:not([data-scene=room]){background:#000}.app:not([data-scene=room]) .portrait-advice{display:none}.app[data-scene=wall] .site-header nav{color:#514538}.icon-button,.language-button,.review-toggle{min-width:36px;min-height:44px}.stage,.wall-world{overflow:clip}.site-header{transition:color .6s}.wall-v3{background:#fff}.wall-v3:after{display:none}.brick-hit{transform:translate3d(var(--brick-x,-9999px),var(--brick-y,-9999px),0) translate(-50%,-50%);pointer-events:auto;background:0 0;border:0;min-width:44px;min-height:44px;padding:0;position:absolute;top:0;left:0}.brick-hit:disabled{pointer-events:none}.brick-hit:focus-visible{outline-offset:-3px;outline:1px solid #fff;box-shadow:0 0 14px #ffffffab}.brick-hit.is-fallen:focus-visible{box-shadow:0 0 20px #fff}.app:not([data-scene=room]) .site-header nav{color:#626665}.app[data-scene=choice] .site-header nav,.app[data-scene=selecting] .site-header nav{color:#c8cbc9}.app[data-scene=selecting] .site-header,.app[data-scene=selecting] .stage-hint,.app[data-scene=selecting] .site-footer{opacity:0;pointer-events:none;transition:opacity .35s}.app[data-scene=rain] .site-footer,.app[data-scene=terminal] .site-footer{display:none}.app:not([data-scene=room]) .stage-hint{color:#80857f;opacity:.68}.pill-anchor{will-change:transform;pointer-events:none;width:0;height:0;position:absolute;top:0;left:0}.pill-anchor .pill-choice{pointer-events:auto;border-radius:50%;width:88px;height:80px;position:absolute;transform:translate(-50%,-50%);top:0!important;left:0!important}.pill-anchor .pill-choice:focus-visible{outline-offset:3px;outline:1px solid #cbd6d4;box-shadow:0 0 18px #ffffff29}.pill-caption{color:#e6e9e8;text-align:center;letter-spacing:.01em;text-shadow:0 1px 8px #000;justify-content:center;align-items:flex-end;width:260px;height:58px;font-family:Georgia,Times New Roman,serif;font-size:19px;line-height:1.45;display:flex;position:absolute;bottom:43px;left:0;overflow:hidden;transform:translate(-50%);-webkit-mask-image:linear-gradient(#0000,#000 17% 89%,#0000);mask-image:linear-gradient(#0000,#000 17% 89%,#0000)}.pill-caption>span{padding-bottom:9px;animation:3.3s cubic-bezier(.22,.6,.3,1) both pill-caption-rise;display:block}@keyframes pill-caption-rise{0%{opacity:0;transform:translateY(25px)}18%,80%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-22px)}}.choice-interaction-study .pill-caption.is-interactive{opacity:0;pointer-events:none;transition:opacity .16s ease-out}.choice-interaction-study .pill-caption.is-active{opacity:1}.choice-interaction-study .pill-caption.is-interactive{text-wrap:pretty;width:330px;height:112px;overflow:hidden}.choice-interaction-study .pill-caption.is-interactive>span{animation:caption-spoken-cue var(--caption-duration) linear both;padding-bottom:9px}@keyframes caption-spoken-cue{0%{opacity:0;transform:translateY(7px)}10%,91%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-5px)}}.choice-interaction-study .pill-caption:not(.is-active)>span{animation:none}.choice-interaction-study .pill-caption.reduced{transition:none}.choice-interaction-study .pill-caption.reduced>span{animation:none}.selection-veil{z-index:5;opacity:0;pointer-events:auto;will-change:opacity;background:#020503;position:absolute;inset:0}.reader.is-projection{perspective:1600px}.reader.is-projection::backdrop{-webkit-backdrop-filter:blur(.6px);backdrop-filter:blur(.6px);background:#19231c24;transition:background .4s}.reader.is-projection .reader-paper{will-change:transform,opacity;transform-origin:50%;color:#333b34;background:#f9faf7;border:1px solid #fff;animation:none;box-shadow:0 4px 70px #ffffff4a,0 20px 80px #23292230}.reader.is-projection .article-body{color:#464e47}.reader.is-projection .reader-top,.reader.is-projection .reader-bottom{border-color:#dbe0d9}.reader.is-projection .reader-rule{background:#89958b}.reader.is-projection.is-projecting-back::backdrop{-webkit-backdrop-filter:blur();backdrop-filter:blur();background:#19231c00}.projection-origin{left:var(--source-x,50%);top:var(--source-y,50%);width:var(--source-w,90px);height:var(--source-h,44px);pointer-events:none;opacity:.45;border:1px solid #ffffff8a;position:absolute;transform:translate(-50%,-50%);box-shadow:0 0 35px 3px #ffffff8c}.reader.is-projecting-back .projection-origin{opacity:.8;transition:opacity .45s}.rain-v3{will-change:auto;overflow:hidden;background:0 0!important}.rain-v3 canvas{width:100%;height:100%;position:absolute;inset:0}.rain-fallback{display:flex;position:absolute;inset:0;overflow:hidden}.rain-fallback>span{color:#19d17b;word-break:break-all;writing-mode:vertical-rl;text-shadow:0 0 8px #17c374;min-width:0;clip-path:inset(calc(max(0,var(--rain-reveal)*128 - var(--offset)*20)*1%) 0 calc(max(0,100 - var(--rain-cover)*128 + var(--offset)*20)*1%) 0);background:#000;flex:1;font:18px/1.4 MatrixCode,monospace}@media (width<=600px){.choice-interaction-study .pill-caption.is-interactive{width:min(250px,100vw - 28px);height:104px}}@media (height<=500px) and (orientation:landscape){.choice-interaction-study .pill-caption.is-interactive{width:250px;height:85px}}@media (width<=600px){.pill-caption{width:165px;font-size:14px;bottom:39px}.reader.is-projection .reader-paper{width:calc(100vw - 30px)}}@media (height<=500px) and (orientation:landscape){.pill-caption{width:190px;height:48px;font-size:13px;bottom:24px}.pill-anchor .pill-choice{width:64px;height:58px}}@media (prefers-reduced-motion:reduce){.projection-origin{box-shadow:none}.pill-caption>span{animation:none}}
