:root{color-scheme:light;--ink:#292137;--purple:#261d36;--purple-soft:#3a304a;--paper:#fafbf9;--white:#fff;--muted:#626c6b;--line:#d7dedb;--teal:#446963;--mist:#eaf0ed;--gold:#d8bb78;--nav-h:4.7rem;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei","Noto Sans CJK SC",sans-serif;font-synthesis:none;font-size:16px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);line-height:1.75}img{display:block;max-width:100%;height:auto}a{color:inherit}p,h1,h2,h3,h4,figure,dl,dd{margin:0}p+p{margin-top:1rem}h1,h2,h3,h4{line-height:1.4;font-weight:650;overflow-wrap:anywhere}ul,ol{margin:0;padding:0}button,summary,a{-webkit-tap-highlight-color:transparent}a:focus-visible,summary:focus-visible{outline:3px solid var(--teal);outline-offset:5px}section[id]{scroll-margin-top:calc(var(--nav-h) + 1.5rem)}.frame{width:min(1320px,calc(100% - 6rem));margin-inline:auto}.skip-link{position:absolute;z-index:20;left:1rem;top:0;transform:translateY(-150%);padding:.7rem 1rem;background:var(--white);color:var(--ink)}.skip-link:focus{transform:none}
.masthead,.brand-hero{background:var(--purple);color:var(--paper)}.masthead-inner{min-height:5rem;display:flex;align-items:center;justify-content:space-between;gap:1.5rem;border-bottom:1px solid #51485f}.brand-small{font-size:1.125rem;font-weight:650;letter-spacing:.04em}.official-domain{color:#ccc7d4;font-size:.8125rem;font-variant-numeric:tabular-nums}.brand-hero{padding:3.5rem 0 3.25rem}.hero-brand{display:block;font-size:clamp(2.7rem,7.4vw,7.1rem);letter-spacing:-.025em;line-height:1.18;font-weight:700}.hero-subtitle{display:block;margin-top:1.5rem;font-size:clamp(1rem,1.35vw,1.25rem);letter-spacing:.07em;font-weight:500;color:#d7d0df}.hero-tagline{font-size:clamp(1.3rem,2vw,1.85rem);color:var(--gold);margin-top:2rem;font-weight:550}.hero-intro{max-width:50rem;margin-top:1.2rem;font-size:1.0625rem;color:#e2dce8;line-height:1.9}.hero-bottom{margin-top:2.4rem;padding-top:1.15rem;border-top:1px solid #51485f;display:flex;justify-content:space-between;align-items:center;gap:1.5rem;color:#ccc7d4;font-size:.875rem}.hero-bottom strong{color:#f4efdf;font-weight:500;letter-spacing:.12em}
.navigation-band{position:static;top:0;z-index:10;background:#fff;border-bottom:1px solid var(--line)}.nav-enhanced .navigation-band{position:sticky}.navigation-inner{min-height:4.7rem;display:flex;align-items:center}.menu{width:100%}.menu>summary{display:none;list-style:none;cursor:pointer;min-height:3.5rem;align-items:center;justify-content:space-between;font-size:1rem;font-weight:650}.menu>summary::-webkit-details-marker{display:none}.menu-sign{width:1.5rem;height:1.5rem;position:relative;flex-shrink:0}.menu-sign:before,.menu-sign:after{content:"";position:absolute;top:50%;left:15%;width:70%;height:2px;background:var(--ink)}.menu-sign:after{transform:rotate(90deg)}.menu[open] .menu-sign:after{transform:none}.main-nav{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:.4rem .7rem;padding:.75rem 0}.main-nav a{min-height:44px;min-width:44px;display:flex;align-items:center;justify-content:center;padding:.4rem .8rem;text-decoration:none;border:1px solid transparent;border-radius:4px;font-size:.9375rem;position:relative}.main-nav a:hover{background:var(--mist);color:#315950}.main-nav a[aria-current="location"]{background:#f5f0e4;border-color:#e0d0a8;color:#5b4215}.main-nav a[aria-current="location"]:before{content:"";width:5px;height:5px;background:#745720;display:block;margin-right:.55rem}.main-nav a:active{background:#dfd8c7}
.official-domain,.footer-inner span{overflow-wrap:anywhere;max-width:100%;min-width:0}
.menu:not([open])>summary{display:flex}
.section{padding:4.25rem 0}.section-header{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:end;gap:2rem;margin-bottom:2.3rem}.section-number{display:inline-flex;gap:.7rem;align-items:center;font-size:.8125rem;color:var(--muted);margin-bottom:.75rem;letter-spacing:.06em}.section-number span{color:var(--teal);font-variant-numeric:tabular-nums}.section-header h2{font-size:clamp(1.65rem,2.7vw,2.5rem);letter-spacing:-.025em}.section-header>p{color:var(--muted);max-width:38rem;font-size:1rem}.directory-note{border-left:3px solid #a79059;padding:.65rem 1rem;margin-bottom:2.1rem;font-size:.9375rem;color:var(--muted);background:#f0f0e9}
.directory-columns{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,23rem),1fr));gap:2.5rem}.directory-group{min-width:0}.directory-title{display:flex;gap:1rem;align-items:center;border-top:2px solid var(--purple);padding:1.2rem 0 1.35rem}.directory-title h3{font-size:1.375rem}.directory-title p{font-size:.8125rem;letter-spacing:.1em;color:var(--muted)}.directory-list{list-style:none}.directory-list>li{border-top:1px solid var(--line);padding:1.35rem 0}.directory-work{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.25fr);gap:1.15rem;align-items:start;min-width:0}.work-figure{min-width:0}.poster-link{display:block;position:relative;background:#e8e7e9;border:2px solid transparent;padding:2px;text-decoration:none;border-radius:2px;min-width:44px;min-height:44px;transition:border-color .16s ease,box-shadow .16s ease}.poster-link img{width:100%;height:auto;border-radius:1px}.poster-link:hover{border-color:#a78c4c;box-shadow:0 0 0 1px #a78c4c}.poster-link:focus-visible{outline:3px solid var(--teal);outline-offset:5px;border-color:var(--teal)}.poster-link:active{border-color:var(--purple);box-shadow:0 0 0 2px var(--purple)}.episode-badge{position:absolute;left:8px;bottom:8px;background:#261d36ef;color:#fff7de;border:1px solid #665774;border-radius:2px;font-size:.75rem;padding:.14rem .42rem;line-height:1.65;font-weight:600;font-variant-numeric:tabular-nums;max-width:calc(100% - 16px);overflow-wrap:anywhere}.poster-caption{padding-top:.7rem}.poster-caption h4,.poster-caption .poster-name{font-size:.975rem;font-weight:650;line-height:1.65}.work-tags{display:flex;flex-wrap:wrap;gap:.2rem .6rem;margin-top:.25rem;color:var(--teal);font-size:.75rem;line-height:1.65}.work-tags span{overflow-wrap:anywhere}.directory-copy{min-width:0}.work-premise{font-size:.875rem;line-height:1.85;color:#53605d;overflow-wrap:anywhere}.work-facts{margin-top:1rem;border-top:1px solid var(--line);padding-top:.75rem}.work-facts>div{display:flex;gap:.5rem;justify-content:space-between;align-items:baseline;margin-top:.15rem;font-size:.75rem;line-height:1.8;flex-wrap:wrap}.work-facts dt{color:var(--muted)}.work-facts dd{font-weight:550;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.work-facts .fact-wide{display:block;margin-top:.35rem}.work-facts .fact-wide dd{font-weight:400;color:var(--muted)}
.featured-section{background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.featured-work{padding:2.5rem 0;border-top:1px solid var(--line)}.featured-work:last-child{padding-bottom:0}.feature-opening{max-width:57rem;margin-bottom:1.75rem}.feature-opening h3{font-size:1.6rem;margin-bottom:.7rem}.feature-opening p{color:var(--muted);font-size:1.125rem}.feature-body{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2.8fr);gap:3rem;align-items:start}.feature-body .work-figure{max-width:19rem}.feature-body .poster-caption .poster-name{font-size:1.125rem}.feature-body .work-tags{font-size:.875rem}.feature-copy{min-width:0}.feature-label{font-size:.8125rem;letter-spacing:.05em;color:var(--teal);margin-bottom:.7rem}.feature-reading{font-size:1.15rem;line-height:1.9;max-width:46rem}.feature-role{margin-top:1.5rem}.feature-role h4{font-size:.9375rem;margin-bottom:.5rem;color:var(--muted)}.role-list{list-style:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,12rem),1fr));gap:.8rem 1.5rem}.role-list li{border-top:1px solid var(--line);padding-top:.55rem;font-size:.9375rem;overflow-wrap:anywhere}.role-list span{display:block;font-size:.8125rem;color:var(--muted)}.feature-status{display:flex;flex-wrap:wrap;gap:1rem 2rem;margin-top:1.75rem;padding:1rem 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:.875rem;font-variant-numeric:tabular-nums}.feature-status b{font-weight:600}
.reading-section .reading-layout{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:4rem}.reading-layout h2{font-size:clamp(1.65rem,2.7vw,2.5rem);margin-bottom:1.4rem}.reading-layout .lead{font-size:1.125rem;max-width:45rem}.service-scope{list-style:none;border-top:1px solid var(--purple)}.service-scope li{padding:1.15rem 0;border-bottom:1px solid var(--line)}.service-scope h3{font-size:1rem;margin-bottom:.3rem}.service-scope p{color:var(--muted);font-size:.9375rem}.classes-section{background:var(--mist);border-block:1px solid #d2ddda}.class-stack{list-style:none}.class-stack>li{padding:1.75rem 0;border-top:1px solid #bdceca;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2.7fr);gap:2.5rem}.class-stack h3{font-size:1.35rem;margin-bottom:.5rem}.class-stack .class-angle{color:var(--teal);font-size:.9375rem}.class-copy>p{font-size:1rem;max-width:50rem;color:#53645f}.class-names{display:flex;flex-wrap:wrap;gap:.6rem 1.3rem;list-style:none;margin-top:1.3rem;font-size:.875rem;line-height:1.8}.class-names li{padding-left:.85rem;position:relative}.class-names li:before{content:"";width:3px;height:3px;position:absolute;top:.8rem;left:0;background:#697f77}.serial-records{list-style:none}.serial-records li{padding:1rem 0;border-top:1px solid var(--line)}.serial-records time{font-variant-numeric:tabular-nums;font-size:.875rem;color:var(--teal)}.serial-records h3{margin:.4rem 0;font-size:1.125rem}.serial-records p{color:var(--muted)}
.devices-section{background:#fff;border-bottom:1px solid var(--line)}.device-steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,19rem),1fr));gap:2.5rem}.device-steps article{border-top:2px solid var(--purple);padding-top:1.1rem}.device-steps h3{font-size:1.125rem;margin-bottom:.8rem}.device-steps p{font-size:.9375rem;color:var(--muted);max-width:27rem}.device-steps .device-number{color:var(--teal);font-size:.8125rem;font-variant-numeric:tabular-nums;display:block;margin-bottom:.7rem}.faq-section{padding-bottom:0}.faq-title{font-size:1.75rem;margin-bottom:2rem}.faq-list{list-style:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,30rem),1fr));column-gap:4rem;row-gap:0}.faq-list li{border-top:1px solid var(--line);padding:1.35rem 0}.faq-list h3{font-size:1rem;margin-bottom:.65rem}.faq-list p{font-size:.9375rem;color:var(--muted)}.about-section{padding-top:3.5rem}.about-layout{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:4rem;align-items:start;border-top:2px solid var(--purple);padding-top:2.25rem}.about-layout h2{font-size:1.8rem;margin-bottom:1rem}.about-layout h3{font-size:1rem;margin-bottom:.7rem}.about-layout p{color:var(--muted);font-size:.9375rem;max-width:44rem}.page-footer{background:var(--purple);color:#e4deeb;padding:1.75rem 0}.footer-inner{display:flex;justify-content:space-between;gap:1rem;font-size:.8125rem;flex-wrap:wrap}.footer-inner span:last-child{font-variant-numeric:tabular-nums;color:#c4bccd}
@media(max-width:1100px){.frame{width:calc(100% - 4rem)}.main-nav{justify-content:flex-start}.feature-body{gap:2rem;grid-template-columns:minmax(0,1fr) minmax(0,2.2fr)}.reading-section .reading-layout{gap:2.5rem}}
@media(max-width:850px){.section-header{grid-template-columns:1fr;gap:1rem}.navigation-inner{display:block;min-height:0}.menu>summary{display:flex}.main-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));padding:.7rem 0 1rem;gap:.35rem}.main-nav a{justify-content:flex-start;font-size:1rem}.brand-hero{padding:2.75rem 0}.hero-bottom{align-items:start;flex-direction:column;gap:.6rem}.feature-body{grid-template-columns:minmax(0,1fr) minmax(0,1.5fr)}.reading-section .reading-layout,.about-layout{grid-template-columns:1fr;gap:2rem}.class-stack>li{grid-template-columns:1fr;gap:1rem}}
@media(max-width:600px){.frame{width:calc(100% - 2.5rem)}.masthead-inner{min-height:4.5rem;align-items:flex-start;padding:1.15rem 0;flex-direction:column;gap:.35rem}.brand-small{font-size:1rem}.brand-hero{padding:2rem 0 2.2rem}.hero-brand{font-size:clamp(2.6rem,10.8vw,4.3rem);letter-spacing:-.03em}.hero-subtitle{margin-top:1.1rem;line-height:1.8;letter-spacing:.02em}.hero-tagline{margin-top:1.5rem;font-size:1.25rem}.hero-intro{font-size:1rem}.hero-bottom{margin-top:1.75rem;font-size:.8125rem}.section{padding:2.7rem 0}.section-header{margin-bottom:1.7rem}.directory-columns{gap:2rem}.directory-work{grid-template-columns:minmax(0,.85fr) minmax(0,1.2fr);gap:1rem}.work-premise{font-size:.9375rem}.work-facts>div{font-size:.8125rem}.poster-caption h4,.poster-caption .poster-name{font-size:1rem}.work-tags{font-size:.8125rem}.feature-body{grid-template-columns:1fr;gap:1.7rem}.feature-body .work-figure{width:min(13.5rem,100%)}.feature-opening h3{font-size:1.35rem}.feature-opening p,.feature-reading{font-size:1rem}.feature-opening{margin-bottom:1.3rem}.featured-work{padding:1.7rem 0}.class-names{font-size:.9375rem}.faq-section{padding-bottom:0}.about-section{padding-top:2.5rem}.footer-inner{flex-direction:column}.main-nav a{padding-inline:.6rem}}
@media(max-width:380px){.directory-work{grid-template-columns:1fr}.directory-work .work-figure{width:min(10rem,100%)}.work-facts>div{font-size:.875rem}.work-facts .fact-wide{display:flex}.hero-brand{overflow-wrap:anywhere}.main-nav{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
