/* 以纸张、森林绿和陶土色构成个人主页的视觉基调。 */
@font-face{font-family:LocalFallback;src:local("Microsoft YaHei");font-display:swap}
:root{--paper:#f6f5ef;--paper-alt:#efeee5;--ink:#233d33;--muted:#68736a;--line:#d9ded2;--accent:#c9653a;--green:#244639;--mint:#e3ebdf;--white:#fffef8;--header:rgba(246,245,239,.92);--shadow:0 20px 65px #29433313;color-scheme:light}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:"Segoe UI","PingFang SC","Microsoft YaHei",LocalFallback,sans-serif;font-size:16px;line-height:1.7;transition:background .5s,color .5s}button,a,input{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{font:inherit;color:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}button:disabled{cursor:default}img{display:block;max-width:100%}h1,h2,h3,p{margin:0}button{border:0}::selection{background:#ebce99;color:#243d32}:focus-visible{outline:3px solid var(--accent);outline-offset:6px}button:focus-visible{outline-offset:4px}.wrap{max-width:1328px;margin:auto;width:calc(100% - 112px)}.section-pad{padding-top:100px;padding-bottom:100px}.orange{color:var(--accent)}.serif-accent{font-family:"STKaiti","KaiTi","Noto Serif CJK SC",serif;font-weight:500}.eyebrow,.section-kicker,.art-coordinate,.hero-index,.project-label,.tech-note,.interest-index,.thought-label,.paper-front,.site-footer{font-family:"Consolas","SFMono-Regular","Microsoft YaHei",monospace}.eyebrow{font-size:12px;letter-spacing:2px;font-weight:600}.reading-progress{height:3px;position:fixed;top:0;left:0;width:100%;transform:scaleX(0);transform-origin:left;background:var(--accent);z-index:100}.skip-link{position:fixed;left:20px;top:-80px;padding:10px 20px;background:var(--ink);color:var(--paper);z-index:200}.skip-link:focus{top:10px}
.site-header{height:100px;padding:0 56px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:var(--header);position:sticky;top:0;z-index:50;backdrop-filter:blur(16px)}.brand{display:flex;align-items:center;gap:12px;font-size:17px;font-weight:650;line-height:1.1}.brand-mark{font-family:Georgia,serif;font-size:34px;color:var(--paper);background:var(--ink);width:44px;height:44px;line-height:40px;border-radius:13px;position:relative;text-align:center}.brand-en{display:block;font-size:8px;letter-spacing:1.5px;font-family:Consolas,monospace;margin-top:7px;font-weight:400}.main-nav{display:flex;gap:34px;margin-left:45px;font-size:13px}.main-nav a{position:relative;padding:10px 0}.main-nav a:after{content:"";height:2px;background:var(--accent);position:absolute;bottom:4px;left:0;width:100%;transform:scaleX(0);transform-origin:left;transition:transform .2s}.main-nav a:hover:after,.main-nav a[aria-current="location"]:after{transform:scaleX(1)}.theme-toggle{display:flex;align-items:center;gap:9px;background:none;border:1px solid var(--line);padding:7px 12px;border-radius:30px;font-size:11px;white-space:nowrap}.theme-icon{font-size:20px;line-height:1.4}.theme-toggle:hover{background:var(--mint)}
.hero{min-height:690px;height:calc(100svh - 100px);max-height:920px;display:grid;grid-template-columns:1fr 1.04fr;align-items:center;position:relative;padding-top:32px;padding-bottom:100px;gap:20px}.hero-copy{position:relative;z-index:2;padding-bottom:10px}.hero .eyebrow{display:flex;align-items:center;gap:12px}.small-line{width:25px;height:1px;background:var(--ink)}.hello-star{color:var(--accent);font-size:22px;margin-left:10px}.hero-name{font-size:22px;font-weight:550;margin:25px 0 14px;letter-spacing:1px}.hero h1{font-size:clamp(40px,4.1vw,64px);line-height:1.46;letter-spacing:-1.8px;font-weight:700;white-space:nowrap}.title-world{position:relative}.title-world svg{position:absolute;width:100%;height:15px;left:0;bottom:-7px;fill:none;stroke:var(--accent);stroke-width:3;stroke-linecap:round}.hero-description{font-size:15px;color:var(--muted);line-height:2.05;margin-top:30px;letter-spacing:.3px}.hero-actions{display:flex;align-items:center;gap:28px;margin-top:34px}.button{display:inline-flex;align-items:center;justify-content:center;gap:25px;min-height:52px;padding:12px 24px;font-size:13px;border-radius:5px;transition:transform .2s,box-shadow .2s,background .2s}.button:hover{transform:translateY(-3px);box-shadow:0 8px 16px #152b2326}.button span{font-size:22px;line-height:1}.button-dark{background:var(--ink);color:var(--paper)}.text-link{display:inline-flex;align-items:center;gap:16px;font-size:13px;padding:8px 0;background:transparent}.text-link span{font-size:20px;transition:transform .2s}.text-link:hover span{transform:translate(2px,-2px)}.identity-tags{display:flex;gap:10px;margin-top:32px;color:var(--muted);font-size:11px}.identity-tags span+span:before{content:"/";margin-right:10px;color:#a1a89f}.hero-art{position:relative;min-width:0;min-height:510px;display:flex;align-items:center;justify-content:center;isolation:isolate}.island-scene{width:124%;margin-left:-4%;flex-shrink:0;position:relative;transform:translate3d(0,0,0);will-change:transform;transition:transform .8s cubic-bezier(.2,.7,.1,1);z-index:1}.island-image{width:100%;height:auto;mix-blend-mode:multiply;transition:filter .7s,opacity .7s;animation:island-float 7s ease-in-out infinite}.art-coordinate{position:absolute;top:2%;right:0;font-size:9px;letter-spacing:1.5px;color:var(--muted)}.orbit{position:absolute;border:1px dashed #c9d3c3;border-radius:50%;width:88%;height:82%;transform:rotate(-24deg);z-index:0;opacity:.65}.orbit-two{width:75%;height:62%;transform:rotate(22deg);border-style:solid;opacity:.3}.island-note{position:absolute;z-index:4;display:flex;align-items:center;gap:10px;font-size:11px;background:var(--white);padding:11px 15px;border:1px solid var(--line);box-shadow:var(--shadow);border-radius:5px;transition:transform .25s,box-shadow .25s;white-space:nowrap}.island-note:hover{transform:translateY(-5px);box-shadow:0 12px 24px #1b34202a}.note-code{top:17%;left:1%;transform:rotate(-4deg)}.note-code>span:first-child{color:var(--accent);font-size:21px}.note-code>span:last-child{margin-left:8px;color:var(--muted)}.note-play{right:-2%;bottom:17%;transform:rotate(3deg)}.note-play img{image-rendering:pixelated}.island-caption{position:absolute;left:0;right:0;bottom:3%;text-align:center;font-size:11px;letter-spacing:1px;color:var(--muted);z-index:3;min-height:20px}.art-star{position:absolute;color:var(--accent);z-index:3;animation:slow-spin 30s linear infinite}.star-one{font-size:39px;top:5%;left:18%}.star-two{font-size:32px;right:2%;bottom:38%;font-weight:300}.hero-foot{position:absolute;bottom:0;height:70px;width:100%;display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);font-size:10px;color:var(--muted);letter-spacing:.5px}.hero-foot>span:first-child{display:flex;align-items:center;gap:10px}.hero-foot>a{display:flex;gap:24px;align-items:center}.hero-foot>a>span{font-size:18px}.status-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#6f8c4e;box-shadow:0 0 0 4px #83a55b16}.hero-index{font-size:9px;letter-spacing:1px}.night-sparkles{position:absolute;inset:0;opacity:0;transition:opacity .7s;pointer-events:none}.night-sparkles i{position:absolute;width:5px;height:5px;border-radius:50%;background:#ffe4a6;box-shadow:0 0 15px 4px #ffe4a655;animation:firefly 3s infinite alternate}.night-sparkles i:nth-child(1){top:30%;left:31%}.night-sparkles i:nth-child(2){top:60%;left:80%;animation-delay:1s}.night-sparkles i:nth-child(3){top:20%;left:70%;animation-delay:2s}.night-sparkles i:nth-child(4){top:69%;left:49%;animation-delay:.5s}.night-sparkles i:nth-child(5){top:42%;left:15%;animation-delay:1.7s}
.section-kicker{display:flex;align-items:center;justify-content:space-between;font-size:10px;letter-spacing:1.1px;color:var(--muted);margin-bottom:52px}.section-kicker>span:first-child{color:var(--accent)}h2{font-size:clamp(30px,3.1vw,44px);font-weight:600;line-height:1.6;letter-spacing:-1px}.about-grid{display:grid;grid-template-columns:1fr 1.05fr;gap:9%}.about-intro{margin-top:28px;color:var(--muted);font-size:14px;line-height:2}.hand-note{font-family:KaiTi,STKaiti,serif;font-size:20px;transform:rotate(-5deg);margin:44px 0 0 26px;display:flex;gap:16px;align-items:center;color:var(--accent)}.hand-note span{font-size:36px}.about-lead{font-size:19px;line-height:1.9;margin:3px 0 34px}.about-row{display:grid;grid-template-columns:25px 1fr 30px;gap:20px;padding:23px 0;border-top:1px solid var(--line)}.row-number{font:10px Consolas,monospace;color:var(--muted);padding-top:7px}.about-row h3{font-size:15px;font-weight:550;margin-bottom:8px}.about-row p{color:var(--muted);font-size:12px;line-height:1.9;max-width:420px}.row-symbol{font-size:23px;color:var(--accent)}.work-section{background:var(--paper-alt)}.section-heading{display:flex;justify-content:space-between;align-items:center;gap:30px;margin-bottom:44px}.section-heading>p{font-size:12px;color:var(--muted)}.featured-work{display:grid;grid-template-columns:38% 62%;background:#244639;color:#f1f4e9;border-radius:12px;overflow:hidden;min-height:450px;position:relative}.work-copy{padding:40px 38px;position:relative;z-index:2}.project-label{display:flex;align-items:center;gap:8px;font-size:10px;color:#d2ddc9}.project-label>span:last-child{margin-left:auto;opacity:.6;font-size:9px;letter-spacing:1.5px}.project-label .status-dot{background:#c3da91;box-shadow:none;width:5px;height:5px}.work-copy h3{font-size:37px;font-weight:550;letter-spacing:1px;line-height:1.5;margin-top:30px}.work-copy h3>span{display:block;font-size:16px;letter-spacing:2px;font-weight:400;margin-top:5px;color:#c4d3b9}.work-copy>p{font-size:12px;color:#d0ddca;line-height:1.95;margin-top:20px;max-width:320px}.project-tags{display:flex;gap:8px;margin:21px 0 28px}.project-tags>span{font-size:9px;border:1px solid #67816d;border-radius:3px;padding:3px 7px;color:#dbe5d4}.button-light{background:#e5ecd8;color:#244639;min-height:45px;padding:10px 17px;font-size:11px;gap:35px}.tech-note{font-size:8px;letter-spacing:1.1px;color:#a7bda6;margin-top:28px}.tech-note>span{display:block;letter-spacing:.2px;font-size:10px;margin-top:5px;color:#cfddc7}.work-preview{position:relative;min-height:400px;margin:22px 22px 22px 0;border-radius:7px;overflow:hidden}.work-preview>img{height:100%;width:100%;object-fit:cover;transition:transform 1s}.work-preview:hover>img{transform:scale(1.04)}.preview-top{position:absolute;top:0;left:0;right:0;background:#102d2599;backdrop-filter:blur(10px);display:flex;justify-content:space-between;align-items:center;padding:12px 16px;font-size:9px;letter-spacing:.8px}.preview-top>span:first-child{display:flex;gap:4px}.preview-top i{display:block;border-radius:50%;background:#d6dbbf99;width:5px;height:5px}.preview-caption{position:absolute;bottom:14px;left:16px;font-size:9px;background:#12382bba;color:#fff;padding:4px 8px;border-radius:3px}.preview-open{position:absolute;bottom:16px;right:16px;display:grid;place-items:center;font-size:26px;background:#f1f5e8;color:#244639;width:44px;height:44px;border-radius:50%;transition:transform .2s}.preview-open:hover{transform:rotate(45deg)}.work-bottom{display:flex;justify-content:space-between;font-size:11px;color:var(--muted);padding-top:24px;align-items:center}.work-bottom p{display:flex;align-items:center;gap:10px}.work-bottom p>span{font-size:19px;color:var(--accent)}
.notes-grid{display:grid;grid-template-columns:1fr 1.08fr;gap:10%}.notes-intro>p{font-size:13px;line-height:2;color:var(--muted);margin-top:24px}.notebook-art{height:250px;width:280px;position:relative;margin:30px 0 -10px 40px}.paper-back,.paper-front{width:185px;height:208px;position:absolute;top:25px;left:10px;border:1px solid #cbd2c2;border-radius:3px;background:#e7e8da;transform:rotate(-12deg)}.paper-front{transform:rotate(-4deg);background:#fbfaf3;left:28px;top:15px;padding:25px;color:#385747;box-shadow:5px 10px 15px #2943330a}.paper-front>span:first-child{font-size:9px;line-height:1.3;display:block;letter-spacing:1px}.paper-line{height:1px;background:#d1d8ca;margin-top:16px}.paper-line.short{width:65%}.paper-star{position:absolute;bottom:29px;right:24px;font-size:36px;color:#be6844}.paper-footer{position:absolute;bottom:17px;left:25px;font-size:5px;letter-spacing:.3px}.pencil{width:8px;height:145px;background:#ba6c45;position:absolute;right:45px;top:65px;transform:rotate(25deg);border-radius:3px 3px 0 0;border-left:2px solid #e0a07e}.pencil:after{content:"";position:absolute;bottom:-12px;left:-2px;border-left:4px solid transparent;border-right:4px solid transparent;border-top:12px solid #ceba86}.thought{border-top:1px solid var(--line)}.thought:last-child{border-bottom:1px solid var(--line)}.thought summary{list-style:none;cursor:pointer;padding:25px 45px 27px 0;position:relative}.thought summary::-webkit-details-marker{display:none}.thought-label{display:block;font-size:9px;color:var(--muted);letter-spacing:.4px;margin-bottom:11px}.thought-title{font-size:21px;line-height:1.7;font-weight:500}.thought-toggle{position:absolute;right:5px;top:50%;font-size:25px;color:var(--accent);font-weight:300;transition:transform .3s}.thought[open] .thought-toggle{transform:rotate(45deg)}.thought-body{font-size:13px;color:var(--muted);line-height:2;padding:0 40px 26px 0}.thought-body>p+p{margin-top:12px}.thought:hover .thought-title{color:var(--accent)}.beyond-section{background:var(--mint)}.interest-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.interest-card{position:relative;padding:32px 34px 35px;border:1px solid #a3b69e7a;border-radius:10px;overflow:hidden;min-height:335px}.interest-game{background:#eaf0df}.interest-learning{background:#f3f2e8}.interest-index{font-size:9px;letter-spacing:1px;color:#5d735a}.interest-card h3{font-size:22px;font-weight:500;color:#294633;position:relative;z-index:2;margin-top:170px}.interest-card p{font-size:12px;line-height:2;color:#63715e;margin-top:12px;position:relative;z-index:2}.companions{position:absolute;top:65px;right:12%;left:10%;display:flex;align-items:center;justify-content:center;gap:20px}.companions img{width:85px;height:85px;object-fit:contain;image-rendering:pixelated;filter:drop-shadow(0 15px 6px #3e603c15);animation:companion-bounce 4s infinite ease-in-out}.companions img:nth-child(2){animation-delay:-1.4s}.companions img:nth-child(3){animation-delay:-2.8s}.interest-action{position:absolute;right:30px;bottom:35px;width:39px;height:39px;border-radius:50%;display:grid;place-items:center;background:transparent;border:1px solid #a7b39b;color:#294633;font-size:22px;transition:background .2s,transform .2s;z-index:3}.interest-action:hover{background:#d7e2ca;transform:rotate(45deg)}.explore-art{position:absolute;top:36px;left:25%;height:175px;width:50%}.explore-orbit{border:1px solid #bfc9b6;position:absolute;width:200px;height:108px;top:35px;left:50%;margin-left:-100px;border-radius:50%;transform:rotate(-25deg)}.explore-orbit:after{content:"";position:absolute;width:180px;height:120px;border:1px dashed #bac9ae;border-radius:50%;transform:rotate(45deg)}.explore-cross{position:absolute;top:20px;left:50%;transform:translateX(-50%);font-size:95px;line-height:1.5;font-family:Georgia,serif;color:#c56c46}.explore-node{position:absolute;width:35px;height:35px;border:1px solid #b8c4ad;border-radius:50%;background:#f3f2e8;color:#426145;display:grid;place-items:center;font-family:Georgia,serif;font-size:20px}.node-a{left:3%;top:35px}.node-b{right:0;top:85px}.node-c{left:22%;bottom:5px}
.closing{text-align:center;padding-top:105px;padding-bottom:95px;position:relative}.closing>.eyebrow{font-size:9px;color:var(--muted);letter-spacing:2px;margin-bottom:24px}.closing h2{font-size:57px;line-height:1.5}.closing>p:not(.eyebrow){font-size:13px;color:var(--muted);margin:25px 0 22px;line-height:2}.closing-star{font-size:70px;position:absolute;left:18%;top:145px;color:var(--accent);animation:slow-spin 40s linear infinite}.closing>.text-link{border-bottom:1px solid var(--line);font-size:12px}.site-footer{border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:20px;min-height:105px;font-size:9px;color:var(--muted)}.footer-name{font-family:"Microsoft YaHei",sans-serif;font-size:15px;color:var(--ink);font-weight:600}.footer-name>span{font:7px Consolas,monospace;letter-spacing:1px;display:block;margin-top:2px}.motion-toggle{padding:8px 0;background:none;font-size:10px;color:var(--muted)}.site-footer>span:last-child{font-size:8px;letter-spacing:1px}.site-footer>span:last-child>span{font-size:16px;margin-left:10px}.project-dialog{padding:0;border:1px solid var(--line);border-radius:14px;width:min(780px,calc(100% - 48px));max-height:88svh;background:var(--paper);color:var(--ink);box-shadow:0 30px 100px #07120b66}.project-dialog::backdrop{background:#10251bbf;backdrop-filter:blur(8px)}.dialog-content{padding:38px;position:relative}.dialog-close{width:36px;height:36px;border-radius:50%;position:absolute;right:20px;top:18px;background:var(--mint);font-size:26px;line-height:1;display:grid;place-items:center}.dialog-content .eyebrow{font-size:9px;letter-spacing:1px;color:var(--accent)}.dialog-content h2{font-size:36px;margin-top:6px}.dialog-subtitle{font-size:13px;color:var(--muted);margin-top:4px}.project-tabs{display:flex;gap:22px;border-bottom:1px solid var(--line);margin:24px 0 20px}.project-tabs button{background:none;padding:10px 1px;font-size:12px;border-bottom:2px solid transparent;color:var(--muted);margin-bottom:-1px}.project-tabs button[aria-selected="true"]{border-bottom-color:var(--accent);color:var(--ink)}.dialog-landscape{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:7px}.project-panel h3{font-size:17px;margin:20px 0 10px}.project-panel>p{font-size:13px;line-height:1.9;color:var(--muted)}.dialog-footer{margin-top:26px;border-top:1px solid var(--line);padding-top:18px;display:flex;align-items:center;justify-content:space-between;font-size:10px;color:var(--muted)}.dialog-done{font-size:11px}.partner-stage{position:relative;aspect-ratio:16/9;border-radius:7px;overflow:hidden;background:#d7d2a6}.stage-bg{width:100%;height:100%;object-fit:cover}.partner-sprites{position:absolute;left:15%;right:15%;top:45%;display:flex;justify-content:center;gap:20px}.partner-sprites img{width:20%;height:auto;image-rendering:pixelated;object-fit:contain;filter:drop-shadow(0 10px 6px #264c2a30)}.partner-stage>span{position:absolute;left:20px;bottom:14px;font-size:9px;color:#38502d}.together-stage{aspect-ratio:16/9;background:var(--mint);border-radius:7px;display:flex;align-items:center;justify-content:center;gap:40px}.player-figure{display:flex;flex-direction:column;align-items:center;gap:16px;font-size:12px}.player-figure img{image-rendering:pixelated;width:90px;height:90px;object-fit:contain}.connection-line{font-size:19px;color:var(--accent)}.dialog-open{overflow:hidden}
.work-actions{display:flex;align-items:center;gap:20px;flex-wrap:wrap}.work-game-link{font-size:11px;color:#e5ecd8;white-space:nowrap;border-bottom:1px solid #839b7f;padding:4px 0}.work-game-link span{margin-left:5px}.work-game-link:hover{color:#fff}
/* 动画只增强展示，关闭动画或禁用脚本时仍保留全部内容。 */
.js-motion .reveal{opacity:0;transform:translateY(22px);transition:opacity .75s ease,transform .75s cubic-bezier(.2,.6,.2,1)}.js-motion .reveal.visible{opacity:1;transform:none}@keyframes island-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-9px)}}@keyframes slow-spin{to{transform:rotate(360deg)}}@keyframes companion-bounce{0%,75%,100%{transform:translateY(0)}85%{transform:translateY(-10px)}92%{transform:translateY(0)}}@keyframes firefly{from{opacity:.2;transform:translateY(0)}to{opacity:.95;transform:translateY(-12px)}}
/* 夜色使用同一套清晰的色彩层次，保留图片细节和文字对比。 */
html[data-theme="night"]{--paper:#172a23;--paper-alt:#1e352b;--ink:#e8eddf;--muted:#b2c0ad;--line:#3c5143;--accent:#efaa7a;--green:#2c4a3b;--mint:#233d30;--white:#2b4435;--header:rgba(23,42,35,.93);--shadow:0 15px 35px #0b1b1455;color-scheme:dark}html[data-theme="night"] .island-image{mix-blend-mode:normal;filter:brightness(.8) saturate(.72);mask-image:radial-gradient(ellipse 48% 45% at 50% 50%,#000 58%,transparent 100%)}html[data-theme="night"] .night-sparkles{opacity:1}html[data-theme="night"] .orbit{border-color:#718367}html[data-theme="night"] .interest-game{background:#ccdac0}html[data-theme="night"] .interest-learning{background:#e2e1cd}html[data-theme="night"] .work-copy .button-light{color:#244639}
html[data-motion="off"] *,html[data-motion="off"] *:before,html[data-motion="off"] *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}html[data-motion="off"] .reveal{opacity:1!important;transform:none!important}
@media(min-width:1600px){.site-header{padding-left:max(56px,calc((100vw - 1328px)/2));padding-right:max(56px,calc((100vw - 1328px)/2))}.hero{gap:32px}}
@media(max-width:1200px){.wrap{width:calc(100% - 72px)}.site-header{padding:0 36px;height:86px}.hero{height:calc(100svh - 86px);min-height:650px}.hero h1{font-size:45px}.hero-name{font-size:19px}.hero-art{min-height:450px}.main-nav{gap:24px;margin-left:0}.work-copy{padding:30px 26px}.work-copy h3{font-size:32px}.project-tags{gap:5px}.project-tags span{font-size:8px}.featured-work{grid-template-columns:40% 60%}.note-code{left:0;font-size:10px}.note-play{right:-1%;font-size:10px}.about-grid,.notes-grid{gap:7%}.companions{gap:10px}.companions img{width:72px;height:72px}.section-heading{align-items:flex-start}.section-heading>p{padding-top:20px;max-width:220px}.notebook-art{margin-left:10px}.closing-star{left:12%}}
@media(max-width:960px){.wrap{width:calc(100% - 48px)}.site-header{padding:0 24px}.main-nav{gap:18px;font-size:11px}.brand{font-size:15px;gap:8px}.brand-mark{width:38px;height:38px;font-size:30px;line-height:35px}.theme-text{display:none}.theme-toggle{padding:5px 10px}.hero{grid-template-columns:1fr 1fr;gap:0;min-height:620px}.hero h1{font-size:36px;letter-spacing:-1px}.hero-description{font-size:12px}.hero-name{font-size:17px}.hero-actions{gap:18px}.button{font-size:11px;padding:11px 17px;gap:15px}.hero-actions .text-link{font-size:11px;gap:8px}.hero-art{min-height:400px}.island-scene{width:119%}.note-play{padding:8px;bottom:14%;font-size:9px;gap:4px}.note-code{padding:7px;font-size:9px;top:20%;gap:5px}.art-coordinate{top:9%;font-size:8px}.star-one{font-size:28px;left:15%;top:8%}.island-caption{font-size:10px;bottom:2%}.section-pad{padding-top:75px;padding-bottom:75px}.section-kicker{margin-bottom:38px}.about-lead{font-size:16px}.about-row{gap:10px;grid-template-columns:20px 1fr 20px}.about-row h3{font-size:13px}.about-row p{font-size:11px}.about-intro{font-size:12px}.section-heading>p{font-size:10px}.work-copy{padding:28px 22px}.work-copy>p{font-size:11px}.work-copy h3{font-size:29px}.project-label{font-size:9px}.project-label>span:last-child{display:none}.project-tags{flex-wrap:wrap}.work-preview{margin:16px 16px 16px 0}.thought-title{font-size:18px}.interest-card{padding:25px}.interest-card h3{font-size:19px}.interest-card p{font-size:11px}.interest-action{right:20px;bottom:32px}.site-footer{gap:14px}.site-footer>span:last-child{display:none}.closing h2{font-size:50px}}
@media(max-width:700px){.site-header{height:76px}.main-nav{gap:14px;margin-left:auto;margin-right:15px}.main-nav a:nth-child(1),.main-nav a:nth-child(4){display:none}.brand-en{display:none}.hero{display:flex;flex-direction:column;align-items:stretch;height:auto;max-height:none;padding-top:55px;padding-bottom:90px;gap:16px}.hero-copy{z-index:3}.hero-name{margin:20px 0 12px}.hero h1{font-size:clamp(33px,7.3vw,48px)}.hero-description{margin-top:25px;font-size:13px}.hero-actions{margin-top:24px}.identity-tags{margin-top:22px}.hero-art{min-height:360px;max-width:520px;width:100%;align-self:center}.island-scene{width:110%;margin-left:0}.art-coordinate{right:5%;top:0}.note-code{left:3%;top:15%;font-size:10px}.note-play{bottom:17%;right:0;font-size:10px}.star-one{top:5%;left:19%}.island-caption{bottom:2%}.hero-foot{height:62px}.hero-index{display:none}.section-kicker{font-size:9px}.section-kicker>span:last-child{font-size:9px;letter-spacing:0}.about-grid,.notes-grid{grid-template-columns:1fr;gap:40px}.about-details{max-width:none}.about-lead{font-size:17px}.about-row p{font-size:12px}.about-intro{font-size:13px}.hand-note{margin-top:22px}.section-heading{display:block}.section-heading>p{max-width:none;padding-top:15px;font-size:12px}.featured-work{grid-template-columns:1fr}.work-copy{padding:30px}.work-copy>p{max-width:none;font-size:13px}.work-copy h3{font-size:34px}.project-label{font-size:10px}.project-label>span:last-child{display:inline}.project-tags span{font-size:10px}.tech-note{margin-top:22px}.tech-note>span{display:inline;margin-left:10px}.work-preview{margin:0 18px 18px;min-height:250px;aspect-ratio:4/3}.work-bottom>span{display:none}.notebook-art{display:none}.thought-title{font-size:20px}.thought-body{font-size:12px;padding-right:10px}.interest-grid{grid-template-columns:1fr}.interest-card{padding:30px;min-height:340px}.interest-card h3{font-size:22px;margin-top:160px}.interest-card p{font-size:12px}.companions img{width:85px;height:85px}.interest-action{bottom:35px;right:28px}.closing{padding-top:80px;padding-bottom:70px}.closing h2{font-size:44px}.closing-star{left:auto;right:4%;top:125px;font-size:35px}.closing>p:not(.eyebrow){font-size:12px}.site-footer{flex-wrap:wrap;padding-top:22px;padding-bottom:22px;gap:20px;font-size:8px}.site-footer .motion-toggle{margin-left:auto}.dialog-content{padding:28px 22px}.dialog-content h2{font-size:30px}.dialog-subtitle{font-size:12px}.project-tabs{gap:16px}.project-tabs button{font-size:11px}.together-stage{gap:14px}.player-figure img{width:65px;height:65px}.connection-line{font-size:12px}.player-figure{font-size:10px}.project-panel h3{font-size:15px}.project-panel>p{font-size:12px}.partner-sprites{gap:10px;left:12%;right:12%}.wide-only{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.js-motion .reveal{opacity:1;transform:none}}

/* 作品先给游玩入口，再展开玩法、角色和其他小游戏。 */
.mini-eyebrow{font-family:Consolas,"Microsoft YaHei",monospace;font-size:9px;letter-spacing:1.2px;color:var(--muted)}.work-copy>.work-personal-note{font-size:11px;border-left:2px solid #b6c993;padding-left:12px;line-height:1.8;margin-top:15px;color:#d4dfc7}.work-game-link{background:none}.gameplay-intro{margin-top:45px;margin-bottom:24px}.gameplay-intro h3,.more-games-heading h3{font-size:23px;letter-spacing:.2px;font-weight:500;margin-top:7px}.gameplay-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:25px}.gameplay-item{position:relative;border-top:1px solid var(--line);padding-top:21px}.gameplay-icon{font-size:27px;display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;line-height:1;color:var(--accent)}.gameplay-number{float:right;font:10px Consolas,monospace;color:var(--muted);padding-top:15px}.gameplay-item h4{font-size:15px;margin:14px 0 10px;font-weight:600}.gameplay-item p{font-size:12px;color:var(--muted);line-height:1.95;margin-bottom:19px}.gameplay-foot{font-size:9px;color:var(--muted);border-left:2px solid var(--accent);padding-left:9px;letter-spacing:1px}.companion-spotlight{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--line);background:var(--paper);border-radius:10px;overflow:hidden;margin-top:45px;min-height:385px}.companion-landscape{position:relative;overflow:hidden;display:grid;place-items:center;min-height:385px}.companion-backdrop{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;filter:saturate(.76)}.companion-visual-label{position:absolute;top:24px;left:28px;font:8px Consolas,monospace;letter-spacing:1.4px;color:#375735;z-index:2}.featured-companion{position:relative;z-index:3;width:145px;height:145px;object-fit:contain;image-rendering:pixelated;filter:drop-shadow(0 12px 0 #29472d0d);animation:companion-hover 4s ease-in-out infinite;transform:translateY(15px)}.companion-ground{position:absolute;width:130px;height:22px;background:#4b663a24;border-radius:50%;left:50%;top:calc(50% + 85px);transform:translateX(-50%);filter:blur(5px)}.companion-halo{position:absolute;width:230px;height:230px;border:1px solid #5e76423a;left:50%;top:50%;transform:translate(-50%,-50%);border-radius:50%}.companion-halo:after{content:"";position:absolute;inset:18px;border:1px dashed #5e76423a;border-radius:50%;animation:slow-spin 40s linear infinite}.companion-art-caption{position:absolute;bottom:20px;left:28px;z-index:2;color:#395332;font-size:9px;letter-spacing:1px}.companion-copy{padding:34px 38px}.companion-copy>h3{font-size:27px;line-height:1.55;font-weight:500;margin:9px 0 20px}.companion-choices{display:flex;gap:9px;margin-bottom:20px}.companion-choices button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;background:var(--paper-alt);border:1px solid var(--line);border-radius:5px;padding:7px 8px;min-width:66px;transition:background .2s,transform .2s,border-color .2s}.companion-choices img{object-fit:contain;image-rendering:pixelated}.companion-choices span{font-size:9px;white-space:nowrap}.companion-choices button[aria-pressed="true"]{background:var(--mint);border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.companion-choices button:hover{transform:translateY(-3px)}.companion-profile{min-height:90px}.companion-profile>div{display:flex;align-items:center;gap:12px}.companion-profile strong{font-size:17px;font-weight:550}.companion-profile span{font-size:10px;color:var(--accent)}.companion-profile p{font-size:12px;line-height:1.9;color:var(--muted);margin-top:9px;max-width:400px}.companion-copy>.text-link{font-size:11px;margin-top:6px}.more-games-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin:45px 0 24px}.more-games-heading>.text-link{font-size:11px}.mini-games{display:grid;grid-template-columns:1fr 1fr;gap:24px}.mini-game{display:grid;grid-template-columns:150px 1fr;gap:24px;align-items:center;border:1px solid var(--line);border-radius:7px;padding:22px;background:var(--paper);transition:transform .25s,border-color .25s}.mini-game:hover{transform:translateY(-3px);border-color:var(--accent)}.mini-game-art{aspect-ratio:1;background:#e0e9d7;border-radius:5px;display:grid;place-items:center;overflow:hidden;position:relative}.mini-game-art:before{content:"";position:absolute;inset:0;background-image:linear-gradient(#8ca07c12 1px,transparent 1px),linear-gradient(90deg,#8ca07c12 1px,transparent 1px);background-size:15px 15px}.mini-game-art svg{width:85%;position:relative;fill:none;stroke:#526e40;stroke-linecap:square;stroke-linejoin:round;stroke-width:9px}.snake-art circle{fill:#e1e9d7;stroke:none}.snake-art rect{fill:#c97850;stroke:none}.adventure-art{background:#e9dfca}.adventure-art svg{stroke:#9a7544;stroke-width:4px}.adventure-art svg>path:nth-child(2){fill:#c57854;stroke:#c57854;stroke-width:2px}.adventure-art svg>circle{fill:#385d4d;stroke:none}.adventure-art svg>path:last-child{stroke:#385d4d;stroke-width:4px}.mini-game h4{font-size:21px;font-weight:500;margin:5px 0 10px}.mini-game p{font-size:11px;color:var(--muted);line-height:1.85}.mini-play{display:inline-block;font-size:10px;margin-top:12px;color:var(--accent)}.play-guide{display:flex;align-items:center;gap:20px;padding:28px 0 0;margin-top:32px;border-top:1px solid var(--line)}.play-guide-icon{font-size:33px;color:var(--accent)}.play-guide strong{font-size:14px;font-weight:550}.play-guide p{font-size:11px;color:var(--muted);margin-top:5px}.play-guide>.button{margin-left:auto;flex-shrink:0;min-height:44px;font-size:11px}
/* 工具和兴趣分别说明做事的方法与创作之外的好奇心。 */
.toolbox{display:grid;grid-template-columns:27% 1fr;gap:30px;border-top:1px solid var(--line);padding-top:37px;margin-top:55px}.toolbox-intro h3{font-size:20px;line-height:1.7;margin:8px 0 0;font-weight:500}.toolbox-items{display:grid;grid-template-columns:repeat(2,1fr);gap:26px 24px}.toolbox-items>div{position:relative;padding-left:48px}.tool-symbol{width:35px;height:35px;display:grid;place-items:center;border:1px solid var(--line);border-radius:7px;font:18px Consolas,monospace;position:absolute;left:0;top:1px;color:var(--accent)}.toolbox-items strong{font-size:12px;font-weight:550}.toolbox-items p{font-size:10px;color:var(--muted);line-height:1.8;margin-top:6px}.making-process{display:flex;align-items:center;gap:30px;margin-top:38px;background:var(--paper-alt);padding:16px 20px;border-radius:5px;font-size:10px}.making-process>span{color:var(--muted);border-right:1px solid var(--line);padding-right:25px;flex-shrink:0}.making-process p{display:flex;gap:18px;align-items:center}.making-process i{font-style:normal;color:var(--accent)}.interest-grid{grid-template-columns:repeat(3,1fr);gap:20px}.interest-card{padding:25px 26px 32px;min-height:344px}.interest-card h3{font-size:20px;margin-top:158px}.interest-card p{font-size:11px}.companions{gap:10px;top:64px;left:7%;right:7%}.companions img{width:67px;height:67px}.interest-action{bottom:28px;right:24px;width:33px;height:33px;font-size:18px}.interest-learning .explore-art{top:36px;left:15%;width:70%;height:150px}.interest-tools{background:#e8e4d7}.tool-window{position:absolute;top:64px;left:50%;transform:translateX(-50%) rotate(-4deg);width:180px;height:115px;border:1px solid #9da78f;border-radius:6px;background:#f7f4e9;box-shadow:6px 7px 0 #8d997a15;padding:13px;color:#456146}.tool-window-dots{display:block;color:#a4ae99;font-size:6px;letter-spacing:4px}.tool-window-prompt{display:block;font:19px Consolas,monospace;margin-top:13px;color:#32543e}.tool-window-output{font:8px Consolas,monospace;display:block;margin-top:8px;color:#7b8971;letter-spacing:1px}.tool-window-star{position:absolute;right:12px;bottom:5px;color:#bd7854;font-size:28px}.notes-section{border-top:1px solid var(--line)}html[data-theme="night"] .interest-tools{background:#d8d5c2}
@keyframes companion-hover{0%,100%{transform:translateY(15px)}50%{transform:translateY(5px)}}
/* 较窄的桌面窗口收回小岛边缘，避免装饰图片撑出横向滚动条。 */
html[data-motion="off"]{scroll-behavior:auto}
.island-scene{width:116%}
@media(max-width:1200px){.island-scene{width:112%}}
@media(max-width:1200px){.gameplay-grid{gap:20px}.gameplay-item h4{font-size:14px}.companion-copy{padding:28px}.mini-game{grid-template-columns:120px 1fr;gap:18px;padding:18px}.interest-card h3{font-size:18px}.interest-card p{font-size:10px}.interest-card{padding:25px 24px 30px}.interest-action{right:18px;bottom:27px}}
@media(max-width:960px){.gameplay-grid{grid-template-columns:repeat(2,1fr);gap:25px}.companion-spotlight{grid-template-columns:44% 56%}.companion-copy{padding:24px}.companion-choices{gap:7px}.companion-choices button{min-width:54px;padding:5px}.companion-choices img{width:36px;height:36px}.companion-profile{min-height:105px}.companion-copy>h3{font-size:24px}.mini-game{grid-template-columns:80px 1fr;gap:15px;padding:18px 14px}.mini-game h4{font-size:18px}.mini-game p{font-size:10px}.mini-game-art{width:80px}.toolbox{grid-template-columns:1fr;gap:25px}.toolbox-intro h3 br{display:none}.toolbox-items{grid-template-columns:repeat(2,1fr)}.interest-grid{gap:14px}.interest-card{padding:22px 20px 30px}.interest-card h3{font-size:16px}.interest-card p{font-size:10px;max-width:175px}.companions{gap:4px;left:5%;right:5%}.companions img{width:52px;height:52px}.interest-action{bottom:20px;right:17px;width:29px;height:29px;font-size:17px}.interest-card{min-height:365px}.tool-window{width:160px}.play-guide{gap:14px}.play-guide p{max-width:400px}.making-process{gap:20px}.making-process p{gap:13px}}
@media(max-width:700px){.gameplay-grid{gap:24px 20px}.gameplay-item p{font-size:11px}.gameplay-foot{font-size:8px;letter-spacing:0}.gameplay-intro h3,.more-games-heading h3{font-size:20px}.companion-spotlight{grid-template-columns:1fr}.companion-landscape{min-height:290px}.companion-copy{padding:26px}.companion-copy>h3 br{display:none}.companion-choices{gap:12px}.companion-choices button{min-width:60px;padding:7px}.companion-choices img{width:42px;height:42px}.companion-profile{min-height:95px}.mini-games{grid-template-columns:1fr;gap:15px}.mini-game{grid-template-columns:100px 1fr;gap:22px;padding:18px}.mini-game-art{width:100px}.mini-game h4{font-size:21px}.mini-game p{font-size:11px}.more-games-heading{align-items:flex-start;flex-direction:column;gap:10px}.play-guide{flex-wrap:wrap;gap:15px}.play-guide>div{width:calc(100% - 55px)}.play-guide>.button{margin-left:48px}.toolbox-items{gap:22px 12px}.toolbox-items>div{padding-left:0;padding-top:45px}.toolbox-items strong{font-size:11px}.toolbox-items p{font-size:10px}.making-process{align-items:flex-start;flex-direction:column;gap:10px}.making-process>span{border-right:0;padding-right:0}.making-process p{display:block;font-size:10px;line-height:2.2}.making-process i{margin:0 8px}.interest-grid{grid-template-columns:1fr}.interest-card{min-height:340px;padding:28px}.interest-card h3{font-size:22px}.interest-card p{font-size:12px;max-width:none}.companions img{width:80px;height:80px}.companions{gap:15px}.interest-action{width:36px;height:36px;font-size:20px;right:26px;bottom:30px}.tool-window{width:190px;height:120px}.interest-learning .explore-art{width:50%;left:25%;height:160px}.project-dialog .dialog-footer>.button{font-size:11px;padding:10px 13px;min-height:43px;gap:12px}}
