:root{font:100%/1.6 -apple-system,BlinkMacSystemFont,"Segoe UI","Microsoft YaHei",sans-serif;font-optical-sizing:auto;--bg:#f5f5f7;--surface:#fff;--text:#1d1d1f;--muted:#72727a;--line:#e4e4e9;--blue:#0071e3;--glass:rgba(250,250,252,.76);--soft:#eeeef2;--shadow:0 18px 55px #20203d0b;--ease-out:cubic-bezier(.23,1,.32,1);--ease-in-out:cubic-bezier(.77,0,.175,1)}*{box-sizing:border-box}html{scroll-padding-top:100px}body{margin:0;background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;transition:background-color 200ms ease,color 200ms ease}body.dark{color-scheme:dark;--bg:#101012;--surface:#1c1c1f;--text:#f5f5f7;--muted:#a0a0ab;--line:#333339;--blue:#68b1ff;--glass:rgba(24,24,28,.8);--soft:#27272d;--shadow:0 18px 55px #0003}a{color:inherit;text-decoration:none}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent;touch-action:manipulation}button{color:inherit;cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid var(--blue);outline-offset:5px}main:focus{outline:none}.skip-link{position:fixed;top:8px;left:12px;transform:translateY(-150%);z-index:100;background:var(--surface);padding:10px 20px;border-radius:12px}.skip-link:focus{transform:none}header{position:sticky;top:0;z-index:30;background:var(--glass);backdrop-filter:blur(24px) saturate(160%);-webkit-backdrop-filter:blur(24px) saturate(160%)}header:after{content:"";position:absolute;inset:auto 0 -16px;height:16px;background:linear-gradient(var(--bg),transparent);opacity:0;pointer-events:none;transition:opacity 200ms ease}header.scrolled:after{opacity:.75}.header-inner{max-width:1200px;padding:0 30px;margin:auto;height:76px;display:flex;align-items:center;gap:24px}.brand{display:flex;align-items:center;gap:10px;white-space:nowrap;font-size:16px;font-weight:650;letter-spacing:-.4px}.mark{display:grid;place-items:center;background:var(--text);color:var(--bg);width:29px;height:29px;border-radius:9px;font-size:17px}.brand-en{font-size:9px;font-weight:500;letter-spacing:1.7px;color:var(--muted);margin-left:10px}nav{position:relative;margin-left:auto;display:flex;gap:2px;padding:5px 0;border-radius:30px;background:var(--soft)}nav a{position:relative;z-index:1;font-size:12px;min-width:64px;text-align:center;padding:7px 15px;color:var(--muted);border-radius:24px;transition:color 160ms ease}nav a.active{color:var(--text)}.nav-indicator,.filter-indicator{position:absolute;top:5px;bottom:5px;left:0;background:var(--surface);border-radius:24px;box-shadow:0 2px 6px #00000008;transition:transform 250ms var(--ease-in-out);pointer-events:none}.theme{width:36px;height:36px;border:1px solid var(--line);background:var(--surface);border-radius:50%;display:grid;place-items:center;position:relative;transition:transform 120ms var(--ease-out)}.theme svg{grid-area:1/1;transition:transform 250ms var(--ease-out),opacity 200ms ease}.sun{opacity:0;transform:rotate(-70deg) scale(.8)}.dark .sun{opacity:1;transform:rotate(0) scale(1)}.dark .moon{opacity:0;transform:rotate(70deg) scale(.8)}main{min-height:70vh}main>section:not(.hero),main>.controls,main>.sample{max-width:1120px;margin-left:auto;margin-right:auto}.hero{overflow:hidden;position:relative;padding-top:70px;min-height:1040px}.hero-copy{text-align:center;position:relative;z-index:2}.eyebrow{color:var(--muted);font-size:11px;font-weight:600;letter-spacing:2px}.hero .eyebrow{display:inline-flex;align-items:center;gap:9px;letter-spacing:2.5px;font-size:12px}.eyebrow i{display:block;height:6px;width:6px;background:#4891d7;border-radius:50%;box-shadow:0 0 0 4px #4891d70e}h1,h2,h3,p{margin:0}h1{font-size:clamp(42px,5vw,72px);line-height:1.22;letter-spacing:-.05em;font-weight:650}.hero h1{margin:24px 0}.hero h1 span{background:linear-gradient(110deg,#1f5a9e 0%,#5288c6 55%,#91b4d9 100%);color:transparent;background-clip:text;-webkit-background-clip:text}.dark .hero h1 span{background-image:linear-gradient(110deg,#8fc3ff,#bed8ff 70%,#7b9bcb)}.hero p{font-size:17px;color:var(--muted);line-height:1.9;letter-spacing:.2px}.hero-actions{display:flex;justify-content:center;gap:12px;margin-top:28px}.button{display:inline-flex;align-items:center;justify-content:center;gap:25px;border-radius:28px;padding:12px 23px;font-size:13px;font-weight:500;transition:transform 120ms var(--ease-out),background-color 160ms ease}.primary{background:var(--text);color:var(--bg)}.secondary{color:var(--text);background:var(--surface);box-shadow:inset 0 0 0 1px var(--line)}.button span{font-size:16px;line-height:1}.button:active,.theme:active,.controls button:active{transform:scale(.97)}.hero-stage{position:relative;margin:22px auto 0;width:100%;height:550px;isolation:isolate}.stage-halo{position:absolute;z-index:-1;width:min(900px,100%);height:490px;left:50%;top:-5px;transform:translateX(-50%);background:radial-gradient(ellipse at 50% 50%,#cdddf2a8,transparent 67%);opacity:.75}.dark .stage-halo{background:radial-gradient(ellipse at 50% 50%,#20375b,transparent 68%);opacity:.8}.stage-caption{position:absolute;width:1040px;max-width:88%;left:50%;transform:translateX(-50%);bottom:80px;display:flex;justify-content:space-between;font-size:9px;color:var(--muted);letter-spacing:2px}.stage-caption span:last-child{letter-spacing:1.5px}.stage-composition{width:800px;height:380px;position:relative;margin:auto;top:48px;transform-origin:50% 50%}.float-card{display:block;position:absolute;border:1px solid #ffffff99;box-shadow:0 24px 60px #263b6020,0 2px 6px #263b6008}.float-card:focus-visible{outline-offset:10px}.note-object{width:315px;height:310px;left:10px;top:28px;background:#fffdf6;color:#393c43;border-radius:20px;padding:19px 25px;transform:rotate(-10deg);z-index:2}.object-toolbar{display:flex;align-items:center;justify-content:space-between;font-size:9px;color:#949594;border-bottom:1px solid #e9e8e3;padding-bottom:14px}.dots{display:flex;gap:4px}.dots i{width:5px;height:5px;background:#d2d0c7;border-radius:50%}.object-label{display:block;font-size:8px;letter-spacing:2px;color:#a1a196;margin-top:22px}.note-object h2{font-size:27px;line-height:1.4;font-weight:600;letter-spacing:-1px;margin-top:8px}.object-lines{margin-top:20px}.object-lines i{height:4px;background:#e9e7df;border-radius:2px;display:block;margin:10px 0}.object-lines i:nth-child(2){width:85%}.object-lines i:nth-child(3){width:55%}.object-footer{display:flex;align-items:center;gap:7px;font-size:8px;color:#8b8e85;margin-top:20px}.object-footer>span:last-child{margin-left:auto}.tiny-icon{width:20px;height:20px;background:#efede1;border-radius:6px;display:grid;place-items:center}.code-object{right:5px;top:40px;width:310px;height:280px;padding:22px;background:linear-gradient(140deg,#2b3347,#171e30);color:#d8dfeb;border-color:#6d78825c;border-radius:20px;transform:rotate(9deg);z-index:1}.code-title{display:flex;align-items:center;gap:10px;letter-spacing:1.5px;font-size:8px;color:#9fa9be}.code-title>span:last-child{margin-left:auto}.code-icon{font-size:19px;color:#bac5da}.code-content{display:flex;flex-direction:column;gap:7px;font:12px/1.5 Consolas,monospace;margin:19px 0 20px}.code-content .code-comment{color:#76839c;font-size:10px}.code-content em{font-style:normal;color:#a9b9fa}.code-content b{font-weight:normal;color:#9bc3b7}.code-bottom{font-size:8px;letter-spacing:1px;color:#8896b0;display:flex;gap:6px;align-items:center}.code-bottom i{height:4px;width:4px;border-radius:50%;background:#9ec3a9}.pixel-object{width:230px;height:230px;left:287px;top:111px;background:linear-gradient(145deg,#f5f8ffdd,#dce8fadd);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-radius:26px;z-index:3;padding:21px;transform:rotate(1deg);box-shadow:0 28px 65px #314b752e,0 1px 2px #fff8 inset}.pixel-kicker{font-size:7px;letter-spacing:1.4px;color:#7186aa;display:flex;justify-content:space-between}.pixel-bottom{display:block;font-size:9px;letter-spacing:2px;text-align:center;color:#7084a4}.sculpture{position:relative;width:150px;height:150px;margin:auto;transform:rotate(-30deg);filter:drop-shadow(10px 15px 12px #4977b329)}.sculpture i{position:absolute;width:92px;height:37px;background:linear-gradient(155deg,#f8fbff,#a6c4ef 50%,#5990d7);border-radius:14px;left:25px;box-shadow:inset 0 1px 3px #fff9,inset 0 -2px 3px #4674ad44;transform:skewX(-18deg)}.sculpture i:nth-child(1){top:25px;left:40px}.sculpture i:nth-child(2){top:52px;left:30px}.sculpture i:nth-child(3){top:79px;left:20px}.sculpture i:nth-child(4){top:106px;left:10px}.pixel-object .sculpture{transform:rotate(-30deg) scale(.85);height:155px}.scroll-cue{position:absolute;bottom:9px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:14px;font-size:10px;color:var(--muted);letter-spacing:1px}.scroll-line{display:block;width:30px;height:1px;background:var(--line)}.project-section{padding:65px 0 95px}.section-head{display:flex;align-items:end;justify-content:space-between;margin-bottom:34px;gap:25px}.section-head h2{font-size:36px;line-height:1.35;letter-spacing:-1.3px;font-weight:600;margin-top:10px}.section-head .eyebrow{font-size:9px;letter-spacing:2px}.text-link{display:inline-flex;align-items:center;gap:18px;font-size:13px;white-space:nowrap;color:var(--muted);padding:8px 0}.text-link span{font-size:18px}.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.project-card{display:block;background:var(--surface);border-radius:28px;box-shadow:var(--shadow);overflow:hidden;transition:transform 250ms var(--ease-out)}.project-art{height:275px;position:relative;display:grid;place-items:center;overflow:hidden}.art-pocket-notes{background:#e8e7e2}.art-daily-pixels{background:radial-gradient(ellipse at 40% 30%,#e7f0ff,#d1e1f5)}.art-my-lab{background:#e7e9ee}.dark .art-pocket-notes{background:#34332f}.dark .art-daily-pixels{background:radial-gradient(ellipse at 40% 30%,#344864,#20334d)}.dark .art-my-lab{background:#2a2d37}.project-info{padding:25px 26px 27px}.project-meta{font-size:9px;letter-spacing:1px;display:flex;justify-content:space-between;color:var(--muted)}.project-meta>span:last-child{color:#8c8c96;font-size:9px}.project-card h3{font-size:23px;letter-spacing:-.7px;font-weight:600;margin-top:10px;display:flex;align-items:center;justify-content:space-between;gap:10px}.project-card p{font-size:13px;color:var(--muted);line-height:1.85;margin:10px 0 22px}.project-tech{font-size:10px;color:var(--muted);letter-spacing:.3px}.round-arrow{border-radius:50%;display:grid;place-items:center;width:30px;height:30px;border:1px solid var(--line);font-size:16px;color:var(--muted);flex-shrink:0;transition:transform 200ms var(--ease-out),background-color 160ms ease,color 160ms ease}.mini-notebook{width:170px;height:208px;background:#fffef7;transform:rotate(-9deg) translateY(12px);box-shadow:12px 17px 28px #4e4e3f20,inset 3px 0 0 #d7d7ce;border-radius:5px 13px 13px 5px;padding:20px;color:#494b40;transition:transform 250ms var(--ease-out)}.mini-notebook>span{font-size:8px;display:flex;justify-content:space-between;color:#929385}.mini-notebook i{font-style:normal}.mini-notebook b{display:block;font:25px/1.15 Georgia,serif;margin-top:20px;letter-spacing:-1px}.paper-lines{height:30px;background:repeating-linear-gradient(transparent,transparent 9px,#e9e8df 10px,#e9e8df 11px);margin-top:10px}.mini-notebook small{font-size:6px;color:#939487}.project-art>.sculpture{transform:rotate(-30deg) scale(1.4);transition:transform 250ms var(--ease-out)}.lab-graphic{position:relative;width:210px;height:210px;display:grid;place-items:center;transform:rotate(-15deg);transition:transform 250ms var(--ease-out)}.lab-graphic>span{font-size:140px;line-height:1;color:#6a7590;text-shadow:1px 1px 0 #fff,8px 12px 20px #555b7730}.lab-ring{position:absolute;width:185px;height:185px;border:1px solid #9da8bf60;border-radius:50%;transform:scaleY(.48) rotate(40deg)}.lab-ring:nth-child(2){transform:scaleX(.48) rotate(40deg)}.lab-graphic small{position:absolute;bottom:0;font-size:7px;letter-spacing:1.6px;color:#8a94a9}.latest{padding:40px 0 90px}.post-row{display:flex;gap:28px;align-items:center;border-bottom:1px solid var(--line);padding:30px 4px;position:relative}.post-index{font-size:11px;color:var(--muted);align-self:flex-start;padding-top:4px;font-variant-numeric:tabular-nums}.post-copy{flex:1;min-width:0;transition:transform 200ms var(--ease-out)}.post-meta{font-size:10px;color:var(--muted);display:flex;gap:14px;margin-bottom:8px}.post-meta>span:last-child{color:#8c8c96}.post-row h3{font-size:21px;font-weight:550;letter-spacing:-.5px}.post-row p{font-size:13px;color:var(--muted);margin-top:8px}.date{font-size:11px;letter-spacing:.5px;color:var(--muted);font-variant-numeric:tabular-nums}.post-row .date{margin:0 18px 0 auto}.aside-note{isolation:isolate;position:relative;overflow:hidden;min-height:420px;text-align:center;background:var(--surface);border-radius:32px;padding:65px 25px;margin-bottom:100px!important}.aside-note h2{font-size:45px;line-height:1.3;letter-spacing:-1.8px;font-weight:600;margin:18px 0}.aside-note h2 span{color:var(--muted)}.aside-note p{font-size:14px;color:var(--muted);margin-bottom:25px}.aside-note .eyebrow{font-size:9px}.aside-orbit{position:absolute;font-size:350px;color:var(--soft);z-index:-1;left:-80px;top:5px;line-height:1;transform:rotate(12deg)}footer{max-width:1120px;margin:0 auto;padding-bottom:30px}.footer-top{display:flex;gap:20px;align-items:center;border-bottom:1px solid var(--line);padding:10px 0 30px}.footer-top>span{font-size:12px;color:var(--muted);margin-left:auto}.footer-top button{border:1px solid var(--line);background:transparent;width:34px;height:34px;border-radius:50%;font-size:18px;transition:transform 120ms var(--ease-out)}.footer-bottom{display:flex;justify-content:space-between;gap:20px;color:var(--muted);font-size:10px;padding-top:22px}.page-intro{padding:90px 0 50px}.page-intro h1{font-size:clamp(34px,4.2vw,58px);margin:20px 0}.page-intro p{color:var(--muted);font-size:17px}.listing{padding-bottom:110px}.controls{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:15px!important}.filters{position:relative;display:flex;padding:5px 0;background:var(--soft);border-radius:26px;gap:0}.filters button{position:relative;z-index:1;border:none;background:transparent;padding:8px 20px;font-size:12px;border-radius:22px;color:var(--muted)}.filters button.selected{color:var(--text)}.search{display:flex;align-items:center;gap:10px;color:var(--muted);padding:9px 15px;border:1px solid var(--line);border-radius:24px}.search input{color:var(--text);background:transparent;border:none;outline-offset:3px;width:165px;min-width:0;font-size:12px}.sample{font-size:12px;color:var(--muted);border-left:2px solid #b2c2d6;background:var(--soft);border-radius:0 8px 8px 0;padding:13px 18px;margin:15px 0 30px}.article{max-width:740px;margin:65px auto 100px}.back{display:inline-block;color:var(--muted);font-size:12px;margin-bottom:38px}.article>.eyebrow{font-size:10px}.article h1{font-size:43px;line-height:1.4;letter-spacing:-1.7px;margin:18px 0 16px}.article .date{margin-bottom:30px}.article-body{font-size:16px}.article-body h2{font-size:26px;font-weight:600;letter-spacing:-.7px;margin:36px 0 15px}.article-body p,.article-body li{line-height:2.05;color:var(--muted);margin-bottom:18px}.article-body ul{padding-left:24px}.article-body blockquote{font-size:24px;letter-spacing:-.5px;font-weight:500;margin:35px 0;padding:20px 0 20px 24px;border-left:2px solid var(--blue)}.article-nav{display:flex;justify-content:space-between;gap:25px;border-top:1px solid var(--line);padding-top:25px;margin-top:45px;font-size:12px;color:var(--muted)}.article-deck{font-size:18px;color:var(--muted);margin:10px 0 35px}.project-detail>.project-art{height:400px;border-radius:25px}.project-detail .mini-notebook{transform:rotate(-9deg) scale(1.35)}.project-spec{display:grid;grid-template-columns:1fr 2fr;font-size:12px;gap:14px;background:var(--surface);border-radius:16px;padding:25px;margin-top:30px}.project-spec span{color:var(--muted)}.project-spec b{font-weight:500}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center;padding:15px 0 110px}.about-copy h2{font-size:39px;line-height:1.4;letter-spacing:-1px;font-weight:600;margin:20px 0}.about-copy p{color:var(--muted);font-size:15px;line-height:2;margin-bottom:20px}.about-copy .button{margin-top:12px}.about-sign{position:relative;isolation:isolate;background:var(--surface);height:465px;border-radius:30px;display:flex;flex-direction:column;justify-content:center;align-items:center;overflow:hidden}.about-sign>span{font-size:59px;font-weight:600;line-height:1.1;letter-spacing:-3px}.about-sign small{font-size:8px;letter-spacing:2px;color:var(--muted);margin-top:40px}.about-symbol{position:absolute;font-size:300px;color:var(--soft);z-index:-1;right:-90px;top:-40px}.empty{padding:90px 20px;text-align:center;color:var(--muted)}.empty>span{font-size:38px}.empty h2{font-size:20px;font-weight:500}.empty p{font-size:13px;margin-top:10px}.tag{font-size:11px;color:var(--muted)}
/* Presentation entrances run once per view; reading content is never scroll-gated. */
.reveal-ready{opacity:0;transform:translateY(20px);transition:opacity 600ms var(--ease-out),transform 600ms var(--ease-out);transition-delay:var(--stagger,0ms)}.reveal-ready.is-visible{opacity:1;transform:translateY(0)}.reveal-ready:focus-within{opacity:1;transform:none}.first-entrance .hero-copy>.eyebrow,.first-entrance .hero-copy>h1,.first-entrance .hero-copy>p,.first-entrance .hero-actions{animation:arrive 600ms var(--ease-out) backwards}.first-entrance .hero-copy>h1{animation-delay:60ms}.first-entrance .hero-copy>p{animation-delay:120ms}.first-entrance .hero-actions{animation-delay:180ms}.first-entrance .hero-stage{animation:stage-arrive 800ms var(--ease-out) 160ms backwards}@keyframes arrive{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes stage-arrive{from{opacity:0;transform:translateY(30px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}
@media(hover:hover) and (pointer:fine){.button:hover{transform:translateY(-2px)}.theme:hover{transform:scale(1.06)}.project-card:hover{transform:translateY(-6px);transition-duration:250ms;transition-delay:0ms}.project-card:hover .round-arrow,.post-row:hover .round-arrow{transform:rotate(45deg);background:var(--text);color:var(--bg);border-color:transparent}.project-card:hover .mini-notebook{transform:rotate(-4deg) translateY(5px)}.project-card:hover .sculpture{transform:rotate(-22deg) scale(1.4)}.project-card:hover .lab-graphic{transform:rotate(0)}.post-row:hover .post-copy{transform:translateX(4px)}.post-row:hover h3,.text-link:hover,.back:hover{color:var(--blue)}}
body.keyboard-input .nav-indicator,body.keyboard-input .filter-indicator{transition:none}body.keyboard-input .reveal-ready{opacity:1;transform:none;transition:none}body.keyboard-input .first-entrance *{animation:none}
@media(min-width:1600px){.hero{padding-top:85px}.hero h1{font-size:80px}.hero-stage{margin-top:35px}.hero{min-height:1090px}}
@media(max-width:1240px){main>section:not(.hero),main>.controls,main>.sample,footer{max-width:calc(100% - 100px)}.article{max-width:min(740px,calc(100% - 100px))}.hero{padding-top:65px}.hero h1{font-size:64px}.project-art{height:240px}.project-info{padding:24px}.brand-en{font-size:8px}.section-head h2{font-size:33px}.project-card h3{font-size:21px}}
@media(max-width:900px){.brand-en{display:none}.hero{min-height:960px}.hero h1{font-size:56px}.stage-composition{transform-origin:50% 0;width:690px}.note-object{left:25px;width:285px}.code-object{right:20px;width:285px}.pixel-object{left:245px;width:210px;height:225px}.stage-caption{bottom:60px}.hero-stage{height:530px}.project-grid{gap:16px}.project-art{height:210px}.project-info{padding:20px}.project-meta{font-size:8px}.project-card h3{font-size:20px}.project-card p{font-size:12px}.project-tech{font-size:9px}.section-head h2{font-size:29px}.post-row{gap:20px}.post-row .date{margin-right:0}.about-grid{gap:35px}.about-sign{height:400px}.about-sign>span{font-size:48px}.about-copy h2{font-size:32px}.filters button{padding:8px 15px}}
@media(max-width:700px){.header-inner{height:68px;padding:0 22px;gap:14px}.brand{font-size:14px;gap:8px}.mark{width:26px;height:26px;font-size:15px;border-radius:8px}nav a{min-width:47px;padding:7px 10px;font-size:11px}.theme{width:33px;height:33px;flex-shrink:0}main>section:not(.hero),main>.controls,main>.sample,footer{max-width:calc(100% - 44px)}.hero{padding-top:52px;min-height:945px}.hero .eyebrow{font-size:10px}.hero h1{font-size:48px;letter-spacing:-2.2px;line-height:1.3;margin:23px 0 20px}.hero p{font-size:14px;line-height:1.9}.hero-actions{gap:10px;margin-top:25px}.button{font-size:12px;padding:11px 20px;gap:18px}.hero-stage{height:540px;margin-top:18px}.stage-composition{left:50%;margin-left:-345px;top:50px}.stage-composition .note-object{left:96px;top:24px;width:260px;height:290px}.note-object h2{font-size:24px}.stage-composition .code-object{right:78px;top:50px;width:240px;height:260px}.code-content{font-size:10px}.stage-composition .pixel-object{left:263px;top:150px;width:185px;height:206px;padding:17px}.pixel-object .sculpture{transform:rotate(-30deg) scale(.72);height:143px;width:145px}.pixel-bottom{font-size:8px}.stage-caption{bottom:75px;font-size:7px;width:88%;letter-spacing:1px}.scroll-cue{bottom:15px;font-size:9px}.project-grid{grid-template-columns:1fr;gap:24px}.project-section{padding:45px 0 65px}.project-art{height:300px}.project-info{padding:25px}.project-card h3{font-size:24px}.project-card p{font-size:14px}.project-meta{font-size:10px}.project-tech{font-size:10px}.mini-notebook{transform:rotate(-9deg) translateY(12px) scale(1.15)}.section-head{align-items:start;margin-bottom:28px;gap:15px}.section-head h2{font-size:28px;letter-spacing:-1px}.section-head .eyebrow{font-size:8px;letter-spacing:1.4px}.text-link{font-size:11px;gap:9px;padding-top:30px}.latest{padding-top:20px;padding-bottom:60px}.post-row{gap:15px;flex-wrap:wrap;padding:26px 0}.post-copy{flex-basis:calc(100% - 48px)}.post-row .date{display:none}.post-row .round-arrow{position:absolute;right:0;top:24px;width:25px;height:25px;font-size:13px}.post-meta{padding-right:26px}.post-row h3{font-size:18px;letter-spacing:-.3px}.post-row p{font-size:12px}.post-index{font-size:10px}.aside-note{padding:55px 20px;min-height:390px;margin-bottom:65px!important;border-radius:25px}.aside-note h2{font-size:34px;letter-spacing:-1px}.aside-orbit{font-size:260px;left:-95px;top:80px}.aside-note .eyebrow{font-size:8px;letter-spacing:1.2px}.aside-note p{font-size:12px}.footer-top{gap:16px}.footer-top>span{font-size:10px}.footer-bottom{flex-wrap:wrap;gap:12px;font-size:9px}.footer-bottom>span:nth-child(2){order:3;width:100%}.footer-bottom>span:last-child{margin-left:auto}.page-intro{padding:55px 0 35px}.page-intro h1{font-size:35px;line-height:1.4;letter-spacing:-1.2px}.page-intro p{font-size:14px}.page-intro .eyebrow{font-size:9px}.controls{flex-wrap:wrap;gap:15px}.filters{width:100%;justify-content:space-between}.filters button{padding:8px 17px;font-size:12px}.search{width:100%}.search input{width:100%;font-size:13px}.listing{padding-bottom:65px}.article{max-width:calc(100% - 44px);margin:40px auto 65px}.article h1{font-size:31px;line-height:1.45;letter-spacing:-1px}.article-body{font-size:15px}.article-body h2{font-size:23px}.article-body blockquote{font-size:21px}.sample{font-size:11px}.project-detail>.project-art{height:310px}.article-deck{font-size:16px}.about-grid{grid-template-columns:1fr;gap:40px;padding-bottom:70px}.about-copy h2{font-size:36px}.about-sign{height:350px}.about-sign>span{font-size:59px}.project-spec{grid-template-columns:1fr 1.6fr;padding:20px;font-size:11px}}
@media(max-width:380px){.header-inner{padding:0 14px;gap:10px}.brand{font-size:12px}nav a{min-width:41px;padding:7px 8px}.theme{width:30px;height:30px}.hero h1{font-size:40px}.filters button{padding:8px 13px}.section-head h2{font-size:25px}.stage-composition{margin-left:-345px}.hero-stage{transform:scale(.9);transform-origin:50% 0;margin-bottom:-45px}.hero{min-height:890px}}
@media(max-width:700px){.hero{min-height:800px}.hero h1{font-size:clamp(30px,9.6vw,42px);letter-spacing:-1.7px}.hero-stage{height:410px}.stage-composition{scale:.82;transform-origin:50% 0}.stage-caption{bottom:65px}}
@media(max-width:450px){.stage-composition{scale:.64}.hero-stage{height:355px}.hero{min-height:750px}.stage-caption{bottom:55px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;scroll-behavior:auto!important}.reveal-ready{opacity:1;transform:none;transition:opacity 120ms ease}.nav-indicator,.filter-indicator{transition:none}.project-card,.mini-notebook,.lab-graphic,.project-art>.sculpture,.round-arrow,.post-copy,.theme,.theme svg,.button{transition:opacity 120ms ease,color 120ms ease,background-color 120ms ease}.project-card:hover,.post-row:hover .post-copy,.post-row:hover .round-arrow,.project-card:hover .round-arrow,.theme:hover,.button:hover{transform:none}.project-card:hover .mini-notebook{transform:rotate(-9deg) translateY(12px)}.project-card:hover .sculpture{transform:rotate(-30deg) scale(1.4)}.project-card:hover .lab-graphic{transform:rotate(-15deg)}.hero-stage{transform:none}.stage-composition{transform:none!important}.float-card{transition:none}}
@media(prefers-reduced-transparency:reduce){header{background:var(--bg);backdrop-filter:none;-webkit-backdrop-filter:none}.pixel-object{background:#e1ebfb;backdrop-filter:none;-webkit-backdrop-filter:none}}
@media(prefers-contrast:more){:root{--muted:#4b4b52;--line:#88888e}.dark{--muted:#c5c5ce;--line:#9a9aa0}header{background:var(--bg);backdrop-filter:none}.project-card,.float-card{border:1px solid var(--muted)}.hero h1 span{background:none;color:var(--blue)}}

/* Long project-space branding and cards stay inside narrow text-mode viewports. */
html,body{max-inline-size:100%;overflow-x:clip}.header-inner{min-inline-size:0;max-inline-size:100%;gap:12px}.brand{min-inline-size:0;max-inline-size:100%;overflow-wrap:anywhere}.project-grid,.project-card,.post-row,.hero-copy{min-inline-size:0}.project-card,.post-copy{overflow-wrap:anywhere}img,video,canvas{max-inline-size:100%}
@media(max-width:580px){.header-inner{flex-wrap:wrap;justify-content:space-between}.brand{font-size:14px;letter-spacing:0}.brand-en{display:none}header nav{max-inline-size:100%;flex-wrap:wrap;gap:10px}}

.project-cover{width:100%;height:100%;min-height:220px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;background:linear-gradient(145deg,#f4f7fa,#e5edf5);color:var(--project-color);overflow:hidden}.project-monogram{display:grid;place-items:center;width:82px;height:82px;border:1px solid #ffffffc0;border-radius:24px;background:#ffffffb0;font-size:39px;font-weight:600;box-shadow:0 12px 35px #24384f0d}.project-cover small{font-size:10px;letter-spacing:2px;margin-top:9px}.project-cover strong{font-size:20px;letter-spacing:-.4px}.dark .project-cover{background:linear-gradient(145deg,#202b38,#151d29);color:#e6edf8}.dark .project-monogram{background:#ffffff0b;border-color:#ffffff1c}
.project-title-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.project-state{font-size:11px;border:1px solid var(--line);border-radius:20px;padding:5px 11px;color:var(--muted)}.project-formal-name{font-size:12px;color:var(--muted)}.project-detail-actions,.project-link-row{display:flex;flex-wrap:wrap;gap:10px;margin:24px 0}.project-detail .project-art{height:280px;border-radius:28px;overflow:hidden;margin:30px 0}.project-steps{list-style:decimal;padding-left:24px}.project-steps li{padding:8px 0 15px 10px}.project-steps h3{font-size:17px;margin:0 0 7px}.project-steps p{margin:0}.project-steps li::marker{font-weight:600;color:var(--muted)}#project-guide{scroll-margin-top:110px}.project-notes{padding:20px 24px;background:var(--soft,#eef2f6);border-radius:22px;margin:30px 0}.dark .project-notes{background:#ffffff08}.project-screenshots img{display:block;width:100%;height:auto;max-height:680px;object-fit:contain;border-radius:18px}.project-screenshots figcaption{font-size:12px;color:var(--muted);margin-top:10px}.header-inner>.view-mode{margin-left:auto}
@media(max-width:759px){.project-detail .project-art{height:230px}.project-detail-actions .button{font-size:12px;padding:11px 15px}.project-notes{padding:16px}.header-inner>.view-mode{font-size:10px}}

/* AirHand version choices and real media stay in the text view. */
.project-detail h1,.project-cover strong{overflow-wrap:anywhere}.project-cover strong{max-width:90%;text-align:center}.project-version-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.project-version{min-width:0;border:1px solid var(--line);border-radius:24px;padding:24px;overflow-wrap:anywhere}.project-version.recommended{border-color:var(--blue)}.version-label{font-size:11px;color:var(--muted)}.project-version.recommended .version-label{color:var(--blue)}.project-version h3{font-size:19px;line-height:1.5;margin:10px 0 14px}.project-version p,.project-version li{font-size:14px;line-height:1.8}.project-version ul{padding-left:18px}.project-version .version-note{color:var(--muted);font-size:12px}.project-version .button{max-width:100%;white-space:normal;text-align:center}.project-videos figure,.project-screenshots figure{margin:22px 0}.project-videos video{display:block;width:100%;height:auto;max-height:70vh;border-radius:20px;background:#121923}.project-videos figcaption{font-size:12px;color:var(--muted);margin-top:10px}.project-detail .article-body section{scroll-margin-top:110px}
@media(max-width:600px){.project-version-grid{grid-template-columns:1fr}.project-version{padding:20px}.project-videos video{border-radius:16px}}
.project-screenshot-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.project-screenshot-grid figure{min-width:0;margin:0}.project-screenshots .project-media-note{font-size:12px;line-height:1.8;color:var(--muted)}
@media(max-width:480px){.project-screenshot-grid{grid-template-columns:1fr;gap:28px}}
.project-version .version-file{font-size:11px;color:var(--muted);overflow-wrap:anywhere}.project-checksum{font-size:12px;margin-top:14px}.project-checksum summary{cursor:pointer;min-height:30px;padding:4px 0}.project-checksum summary:focus-visible{outline:2px solid var(--blue);outline-offset:4px;border-radius:4px}.project-checksum code{display:block;margin-top:9px;white-space:normal;overflow-wrap:anywhere;font-size:11px;line-height:1.8}
