
:root{--paper:#f0efeb;--ink:#262724;--muted:#757670;--accent:#e9512d;--line:#d6d5ce;--ease:cubic-bezier(.22,.8,.25,1)}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,"PingFang SC","Microsoft YaHei",sans-serif}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer}button:focus-visible,a:focus-visible{outline:3px solid var(--accent);outline-offset:6px}button{border:0;background:none}header{display:flex;align-items:center;justify-content:space-between;padding:30px 4vw}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:inherit}.brand strong{font-size:25px;letter-spacing:-2px}.brand small{font-size:10px;letter-spacing:2px;line-height:1.5;border-left:1px solid var(--line);padding-left:12px}.toplinks{display:flex;align-items:center;gap:28px;font-size:12px}.edition{color:var(--muted);font:10px monospace;letter-spacing:1px}.student{border-bottom:1px solid var(--ink);padding:8px 0}.student span{margin-left:18px}main{min-height:calc(100svh - 154px);display:flex;flex-direction:column;justify-content:center;padding:10px 0 20px}.intro{width:min(1050px,80vw);margin:0 auto 16px;display:flex;justify-content:space-between;font-size:11px;color:var(--muted);letter-spacing:1px}.intro p{margin:0}.count{font-family:monospace}.stage{position:relative;width:100%;height:clamp(340px,54vh,590px);overflow:hidden;touch-action:pan-y}.card{position:absolute;left:50%;top:0;width:min(1050px,80vw);height:100%;padding:clamp(24px,4vw,60px);background:#faf9f5;overflow:hidden;transform:translateX(-50%);transition:transform .65s var(--ease),opacity .45s;isolation:isolate}.card[data-position="left"]{transform:translateX(calc(-150% - 26px));opacity:.48;pointer-events:none}.card[data-position="right"]{transform:translateX(calc(50% + 26px));opacity:.48;pointer-events:none}.card[data-position="hidden"]{transform:translateX(calc(150% + 52px));opacity:0;pointer-events:none}.card[data-position="active"]{opacity:1;z-index:2}.eyebrow{font:10px monospace;letter-spacing:2px;text-transform:uppercase;position:relative;z-index:2}.card h1,.card h2{font-weight:500;font-size:clamp(42px,5.8vw,83px);line-height:1.16;letter-spacing:-.07em;margin:34px 0 20px;position:relative;z-index:2}.card p{font-size:13px;line-height:1.9;max-width:330px;position:relative;z-index:2;margin:0}.enter{position:absolute;bottom:36px;left:clamp(24px,4vw,60px);font-size:12px;padding:10px 0;border-bottom:1px solid currentColor;z-index:3}.enter span{margin-left:40px}.art{position:absolute;width:57%;height:100%;right:-2%;top:0;z-index:0}.art svg{width:100%;height:100%;overflow:visible}.big-no{position:absolute;right:25px;bottom:24px;font:10px monospace;letter-spacing:2px;z-index:2}.card.about .art{right:-3%;width:65%}.card.about h1{max-width:60%}.course{background:#e9512d;color:#231e18}.course .art{right:0;width:48%}.tools{background:#dfe5d5}.media{background:#282d2b;color:#f4f0e5}.contact{background:#e9dfd1}.controls{width:min(1050px,80vw);margin:24px auto 0;display:flex;align-items:center;gap:24px}.tabs{display:flex;flex:1;justify-content:space-between;gap:16px}.tab{position:relative;padding:13px 0;color:var(--muted);font-size:13px;white-space:nowrap}.tab small{font:9px monospace;margin-right:9px;opacity:.65}.tab[aria-selected="true"]{color:var(--ink)}.tab:after{content:"";position:absolute;bottom:0;left:0;width:100%;height:2px;background:var(--accent);transform:scaleX(0);transform-origin:left;transition:transform .4s var(--ease)}.tab[aria-selected="true"]:after{transform:scaleX(1)}.arrows{display:flex;gap:7px;border-left:1px solid var(--line);padding-left:24px}.arrow{border:1px solid var(--line);border-radius:50%;width:38px;height:38px;font-size:19px;transition:background .2s}.arrow:hover{background:#fff}.under{width:min(1050px,80vw);margin:19px auto 0;display:flex;justify-content:space-between;align-items:center}.under p{font-size:10px;color:var(--muted);margin:0}.marks{display:flex;gap:4px;align-items:end;height:14px}.marks i{width:2px;height:5px;background:#b7b8b0}.marks i:nth-child(3n){height:13px}.marks i:nth-child(4n){height:9px}footer{padding:18px 4vw;display:flex;justify-content:space-between;gap:15px;font:9px monospace;letter-spacing:1px;color:var(--muted)}dialog{border:1px solid var(--line);background:#faf9f5;color:var(--ink);width:min(760px,92vw);max-height:85svh;padding:38px;box-shadow:0 30px 100px #0002}dialog::backdrop{background:#26272466;backdrop-filter:blur(5px)}.dialog-head{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding-bottom:18px;font:11px monospace}.close{font-size:23px;width:38px;height:38px}dialog h2{font-weight:500;font-size:32px;margin:30px 0 15px;letter-spacing:-1px}dialog p{line-height:1.9;font-size:14px;color:#60615b}.detail-row{display:flex;justify-content:space-between;gap:20px;padding:18px 0;border-top:1px solid var(--line);font-size:14px}.detail-row span{font-size:12px;color:var(--muted)}.notice{padding:12px 15px;background:#eeeae2;font-size:12px!important}.mini-keys{display:flex;height:90px;margin:26px 0;gap:3px}.mini-keys button{flex:1;background:white;border:1px solid var(--line);position:relative;font-size:11px;padding-top:45px}.mini-keys button:hover,.mini-keys button:active{background:#e9512d;color:white}.mini-keys button:nth-child(2):before,.mini-keys button:nth-child(3):before,.mini-keys button:nth-child(5):before,.mini-keys button:nth-child(6):before,.mini-keys button:nth-child(7):before{content:"";position:absolute;width:45%;height:50%;background:#262724;left:-25%;top:0;pointer-events:none}
@media(min-width:1500px){.card h1,.card h2{font-size:85px}}@media(max-width:700px){header{padding:22px 6vw}.brand strong{font-size:24px}.edition{display:none}.toplinks{gap:0}.student{font-size:11px}main{min-height:calc(100svh - 150px);justify-content:center}.intro,.controls,.under{width:88vw}.intro{font-size:10px;margin-bottom:12px}.intro p{max-width:75%}.stage{height:clamp(390px,56svh,530px)}.card{width:88vw;padding:27px}.card h1,.card h2{font-size:43px;margin:27px 0 16px;letter-spacing:-.07em}.card.about h1{max-width:100%}.card p{max-width:80%;font-size:12px}.card .art,.card.about .art,.course .art{width:70%;height:63%;top:auto;bottom:-8%;right:-15%;opacity:.78}.card.about .art{width:88%;bottom:-15%;right:-20%}.enter{left:27px;bottom:25px;background:transparent}.big-no{right:18px;bottom:18px;font-size:8px}.controls{gap:10px;margin-top:13px;align-items:flex-start}.tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:0 16px}.tab{text-align:left;font-size:12px;padding:13px 0}.tab small{display:none}.arrows{padding-left:10px;margin-top:8px;gap:4px}.arrow{width:32px;height:32px}.under{margin-top:14px}.under p{font-size:9px}footer{padding:17px 6vw;font-size:8px}dialog{padding:23px}.detail-row{flex-direction:column;gap:7px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;animation:none!important}}

[hidden]{display:none!important}a{color:inherit}.brand strong{letter-spacing:-1px}.site-header .home-return{font-size:12px;text-decoration:none;border-bottom:1px solid var(--line);padding:7px 0}.hello-link{font-size:12px;text-decoration:none;border-bottom:1px solid var(--line);padding:7px 0}.card .enter{text-decoration:none}.card .art img{width:100%;height:100%;object-fit:cover}.card h1{white-space:pre-line}.card p{white-space:pre-line}.card.sheet{background:#e9dfd1}.card.analysis{background:#e9512d;color:#231e18}.gallery-main{min-height:calc(100svh - 200px)}.tab[aria-pressed="true"]{color:var(--ink)}.tab[aria-pressed="true"]:after{transform:scaleX(1)}.contact-strip{width:min(1050px,80vw);margin:24px auto 2px;display:flex;align-items:center;justify-content:space-between;gap:18px;padding-top:20px;border-top:1px solid var(--line);font-size:11px;color:#60615b}.contact-strip .wechat{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.wechat button{font-size:11px;padding:0;border-bottom:1px dotted var(--muted)}.socials{display:flex;gap:20px;align-items:center}.socials a{display:flex;gap:5px;align-items:center;text-decoration:none}.socials a:hover{color:var(--accent)}.social-icon{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.7}.social-icon.redbook{width:28px;stroke:none;fill:currentColor}.copy-status{font-size:10px;color:var(--muted)}footer{flex-wrap:wrap;line-height:1.8}footer a{text-decoration:none}.filing{display:flex;gap:14px;flex-wrap:wrap}.page{display:block;max-width:1140px;margin:30px auto 80px;padding:0 45px;min-height:65vh}.page-heading{border-bottom:1px solid var(--line);padding-bottom:35px;margin-bottom:35px}.page-heading .eyebrow{color:var(--muted)}.page-heading h1{font-size:clamp(36px,6vw,65px);font-weight:500;letter-spacing:-2px;margin:18px 0}.page-heading p{font-size:13px;color:var(--muted);line-height:1.9}.category-links{display:flex;gap:15px;flex-wrap:wrap;font-size:12px;margin-top:24px}.category-links a{text-decoration:none;padding:6px 0;border-bottom:1px solid var(--line)}.media-category{margin:0 0 50px;scroll-margin-top:20px}.category-title{display:flex;gap:12px;align-items:baseline;padding-bottom:15px;border-bottom:1px solid var(--line);font-size:20px;font-weight:500}.category-title small{font:10px monospace;color:var(--muted)}.video-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}.video-item h3{font-size:18px;font-weight:500;margin:17px 0 8px}.video-item p{font-size:12px;line-height:1.8;color:var(--muted);white-space:pre-line}.video-box{aspect-ratio:16/9;background:#dfe5d5;position:relative;overflow:hidden}.video-box iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.video-load{width:100%;height:100%;position:relative;display:grid;place-content:center;gap:12px;font-size:12px;isolation:isolate;overflow:hidden}.video-load:before{content:"";position:absolute;width:200px;height:200px;border-radius:50%;background:#e9512d;right:15%;top:12%;z-index:-1;opacity:.85}.video-load:after{content:"";position:absolute;width:70%;height:130%;border:1px solid #354f3955;transform:rotate(-30deg);left:12%;top:-15%;border-radius:50%;z-index:-1}.video-load img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-1}.play-symbol{display:grid;place-items:center;margin:auto;width:54px;height:54px;border:1px solid currentColor;border-radius:50%;background:#faf9f5df;font-size:21px}.video-load .play-label{background:#faf9f5e8;padding:7px 12px}.video-meta{display:flex;justify-content:space-between;gap:12px;align-items:center;font-size:11px;color:var(--muted)}.video-meta a{padding:7px 0}.empty{padding:60px 0;color:var(--muted);font-size:14px}.media-caption{font-size:11px;color:var(--muted)}noscript p{padding:10px;background:#e9dfd1;font-size:13px}
@media(max-width:700px){.tabs{grid-template-columns:repeat(2,1fr)}.contact-strip{width:88vw;flex-direction:column;align-items:flex-start;margin-top:22px;gap:18px}.socials{gap:22px}.gallery-main{min-height:0;padding-top:18px}.page{padding:0 6vw;margin-top:22px}.video-grid{grid-template-columns:1fr}.page-heading{padding-bottom:24px}.card h1{max-width:100%!important}.card .big-no{display:none}.filing{gap:8px}.intro p{letter-spacing:0}}
@media(max-width:700px){.tabs{grid-template-columns:repeat(3,minmax(0,1fr));gap:0 10px}.tab{font-size:11px}}

/* Stretched semantic links: the whole active card is clickable, keyboard accessible. */
.card .card-entry{position:static;border:0;padding:0;font-size:0}
.card .card-entry span{display:none}
.card-entry::after{content:"";position:absolute;inset:0;z-index:5;cursor:pointer}
.card-entry:focus-visible::after{outline:3px solid var(--accent);outline-offset:-5px}
.gallery-custom{position:absolute;inset:0;z-index:4;background:var(--paper);pointer-events:none}
.gallery-custom img,.gallery-custom iframe{display:block;width:100%;height:100%;border:0}
.card.about:has(.gallery-custom) #hello-explore{z-index:5;background:#faf9f5e8;padding:10px}
.card[data-position="active"]:has(.card-entry):hover{box-shadow:inset 0 0 0 2px #26272418}

.media-contact{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:14px;color:#757670;margin:20px 0}.media-contact button{border:0;background:transparent;color:inherit;cursor:pointer;font:inherit;padding:0}.media-contact svg{width:24px;height:24px}.site-header .brand strong{font-size:clamp(16px,2.2vw,24px)}

/* 1.0 candidate: quiet covers, explicit line breaks and focusable neighbours. */
.card h1,.card h2{font-size:clamp(32px,4.5vw,64px);line-height:1.2;letter-spacing:-.04em;white-space:nowrap;margin-top:35px}.card h1{white-space:pre-line;max-width:none!important}.card .card-entry .sr-only{display:block;position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.card[data-position="left"],.card[data-position="right"]{pointer-events:auto;cursor:pointer}.card:not([data-position="active"]) .card-entry::after{cursor:pointer}.gallery-motion{transform-box:view-box;transform-origin:50% 52%;animation:gallery-drift 16s ease-in-out infinite}.tools .gallery-motion{transform-origin:53.57% 54%;animation:gallery-orbit 70s linear infinite}.media .gallery-motion{animation-duration:19s}.sheet .gallery-motion{animation-duration:14s;animation-delay:-5s}.analysis .gallery-motion{animation-duration:18s;animation-delay:-8s}.card:not([data-position="active"]) .gallery-motion{animation-play-state:paused}@keyframes gallery-drift{0%,100%{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-10px) rotate(2deg)}}@keyframes gallery-orbit{to{transform:rotate(360deg)}}
@media(max-width:700px){.card h1,.card h2{font-size:clamp(27px,6.8vw,43px);margin-top:27px}.card .big-no{display:block;max-width:90%;font-size:7px;letter-spacing:1px}.card[data-position="left"]{transform:translateX(calc(-150% - 10px))}.card[data-position="right"]{transform:translateX(calc(50% + 10px))}}
@media(prefers-reduced-motion:reduce){.gallery-motion{animation:none}}
.contact-strip{flex-wrap:wrap}.contact-strip .student-entry{font-size:12px;white-space:nowrap;border-bottom:1px solid #aeb8a5;padding-bottom:3px}
