:root{--paper:#f7f5ef;--paper2:#efeee6;--ink:#1f2b28;--muted:#64716b;--red:#a0392c;--red-dark:#812a20;--line:#d7dbd2;--jade:#dfe8df;--white:#fffefb;--shadow:0 22px 65px rgba(24,43,34,.08);--sans:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;--serif:Georgia,"Iowan Old Style",serif;--cjk:"Microsoft YaHei UI","Microsoft YaHei","PingFang SC","Noto Sans CJK SC","Noto Sans SC",sans-serif}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 var(--sans);-webkit-font-smoothing:antialiased}
button,input,select,textarea{font:inherit}
button,a,summary{touch-action:manipulation}
button{cursor:pointer}
a{color:inherit;text-decoration:none}
a:hover{color:var(--red)}
:focus-visible{outline:3px solid #c65a3b;outline-offset:3px}
[hidden]{display:none!important}
::selection{background:#edc5b8;color:var(--ink)}
.skip-link{position:absolute;left:1rem;top:-5rem;z-index:20;padding:.6rem 1rem;background:var(--ink);color:#fff}.skip-link:focus{top:.5rem}
.site-header{position:relative;z-index:5;background:rgba(247,245,239,.95);border-bottom:1px solid var(--line)}
.header-inner{max-width:1460px;padding:0 clamp(20px,4vw,64px);margin:auto;min-height:84px;display:flex;align-items:center;justify-content:space-between;gap:2rem}
.brand{display:inline-flex;align-items:center;gap:.7rem;font-weight:780;font-size:1.4rem;letter-spacing:-.065em;white-space:nowrap}
.brand-seal{display:grid;place-items:center;width:34px;height:34px;border:2px solid var(--red);color:var(--red);position:relative;flex:none}.brand-seal::before,.brand-seal::after{content:'';position:absolute;background:currentColor}.brand-seal::before{width:3px;height:20px;left:14px;top:5px;transform:rotate(33deg)}.brand-seal::after{width:20px;height:3px;left:5px;top:15px;transform:rotate(-18deg)}
.brand-dot{color:var(--red)}
.desktop-nav{display:flex;align-items:center;gap:clamp(15px,2.1vw,32px);margin-left:auto}
.desktop-nav a{font-size:.84rem;font-weight:690;letter-spacing:.01em;white-space:nowrap;padding:12px 0;border-bottom:2px solid transparent}
.desktop-nav a:hover,.desktop-nav a.active{color:var(--red);border-color:var(--red)}
.header-side{display:flex;align-items:center}.header-note{font-size:.69rem;text-transform:uppercase;letter-spacing:.13em;color:var(--muted);border-left:1px solid var(--line);padding-left:24px;white-space:nowrap}
.mobile-menu{display:none}.mobile-menu summary{list-style:none;width:42px;height:42px;border:1px solid var(--line);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;background:var(--white)}.mobile-menu summary::-webkit-details-marker{display:none}.mobile-menu summary span{width:18px;height:2px;background:var(--ink)}.mobile-menu nav{position:absolute;right:16px;top:75px;min-width:245px;padding:10px;background:var(--white);border:1px solid var(--line);box-shadow:var(--shadow);display:flex;flex-direction:column}.mobile-menu nav a{padding:10px 12px;border-bottom:1px solid var(--line)}.mobile-menu nav a:last-child{border:0}
main{min-height:60vh}.eyebrow{font-size:.69rem;letter-spacing:.19em;font-weight:800;color:var(--red);text-transform:uppercase}.button{appearance:none;display:inline-flex;align-items:center;justify-content:center;gap:1rem;min-height:48px;padding:.65rem 1.15rem;border:1px solid var(--line);font-weight:740;font-size:.82rem;line-height:1.2;transition:background .18s,color .18s,border-color .18s,transform .18s}.button:hover{transform:translateY(-1px)}.button.primary{background:var(--red);color:#fff;border-color:var(--red)}.button.primary:hover{background:var(--red-dark);border-color:var(--red-dark);color:#fff}.button.ghost{background:transparent;color:var(--ink)}.button.ghost:hover{background:var(--jade);color:var(--ink)}.button.danger{color:var(--red);border-color:#d9b4ab}.text-link{color:var(--red);font-weight:750;font-size:.84rem;text-decoration:underline;text-underline-offset:4px}.text-link:hover{color:var(--red-dark)}
.breadcrumbs{max-width:1320px;margin:auto;padding:18px clamp(20px,4vw,64px) 0}.breadcrumbs ol{list-style:none;display:flex;flex-wrap:wrap;gap:.45rem;margin:0;padding:0;font-size:.72rem;color:var(--muted)}.breadcrumbs li:not(:last-child)::after{content:' /';padding-left:.45rem;color:#a4aaa2}.breadcrumbs a{text-decoration:underline;text-decoration-color:transparent}.breadcrumbs a:hover{text-decoration-color:currentColor}
.hero{max-width:1460px;margin:auto;padding:clamp(44px,6vw,92px) clamp(20px,4vw,64px) clamp(56px,7vw,100px);display:grid;grid-template-columns:1.08fr .92fr;gap:clamp(40px,5vw,84px);align-items:center}.hero-copy h1{font:clamp(3.5rem,6.6vw,7.3rem)/1.02 var(--serif);font-weight:400;letter-spacing:-.07em;margin:1.3rem 0 1.8rem;max-width:12ch}.hero-copy h1 i{font-weight:400;color:var(--red)}.hero-copy>p{max-width:580px;color:#52615a;font-size:clamp(1rem,1.3vw,1.16rem);line-height:1.8}.hero-meta{display:flex;gap:1.5rem;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:1.4rem;margin-top:3rem;color:var(--muted);text-transform:uppercase;letter-spacing:.1em;font-size:.62rem;font-weight:700}.hero-art{aspect-ratio:1/1.08;background:#e8e9df;border:1px solid #cdd5cb;box-shadow:var(--shadow);padding:clamp(22px,3vw,45px);position:relative;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden}.hero-art::before{content:'';position:absolute;inset:18px;border:1px solid #c5cec3;pointer-events:none}.hero-art::after{content:'';position:absolute;width:90%;height:45%;border-radius:50%;background:radial-gradient(ellipse at center,rgba(183,199,179,.4),transparent 70%);right:-15%;top:20%;pointer-events:none}.paper-top{position:relative;z-index:1;display:flex;justify-content:space-between;font-size:.57rem;letter-spacing:.17em;font-weight:800;color:#66776c}.hero-hanzi{position:relative;z-index:1;font:clamp(5.3rem,11vw,11.5rem)/1.2 var(--cjk);letter-spacing:.05em;text-align:center;color:#253c30;white-space:nowrap;text-shadow:1px 2px 0 rgba(26,52,34,.04)}.hero-pinyin{position:relative;z-index:1;text-align:center;letter-spacing:.07em;font-size:.85rem;color:#465d51;border-top:1px solid #b8c4b8;padding-top:1.25rem}.hero-pinyin span{color:var(--red);padding:0 .4rem}.paper-stamp{position:absolute;right:6%;bottom:18%;z-index:1;border:2px solid var(--red);color:var(--red);width:43px;height:43px;display:grid;place-items:center;font:30px/1 var(--cjk);transform:rotate(-8deg);opacity:.86}
.home-studio{background:#e9ede5;border-top:1px solid #d2dbce;border-bottom:1px solid #d2dbce;padding:78px clamp(20px,4vw,64px) 88px}.home-studio>.section-intro,.home-studio>.studio-form,.home-studio>.results{max-width:1180px;margin-left:auto;margin-right:auto}.section-intro{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:end;margin-bottom:2rem}.section-intro>.eyebrow{grid-column:1/-1;margin-bottom:-2rem}.section-intro h2,.home-method h2,.editorial-row h2{font:clamp(2rem,3.6vw,3.8rem)/1.15 var(--serif);letter-spacing:-.04em;font-weight:400;margin:0}.section-intro p{color:#52615a;margin:0;max-width:450px}
.studio-form{background:var(--white);border:1px solid #cbd4c8;padding:clamp(20px,3vw,45px);box-shadow:0 18px 40px rgba(33,54,40,.055)}.form-heading{display:flex;justify-content:space-between;gap:1rem;align-items:center;border-bottom:1px solid var(--line);padding-bottom:1rem;margin-bottom:1.5rem}.step-mark{font-size:.68rem;letter-spacing:.18em;color:var(--red);font-weight:800}.form-heading p{margin:0;color:var(--muted);font-size:.79rem}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.3rem 1.5rem}.field{display:flex;flex-direction:column;gap:.47rem}.field>span,.search-field>span{font-size:.78rem;font-weight:760;letter-spacing:.02em}.field em{font-style:normal;font-weight:400;color:var(--muted)}.field input,.field select,.search-field input,.reader-form input,.compare-note{width:100%;background:#fff;border:1px solid #cbd3c9;border-radius:0;color:var(--ink);min-height:48px;padding:.65rem .8rem;outline:none}.field input:focus,.field select:focus,.search-field input:focus,.compare-note:focus{border-color:var(--red);box-shadow:0 0 0 3px rgba(160,57,44,.13)}.field small{font-size:.69rem;color:var(--muted);line-height:1.5}.priority{border:0;margin:1.8rem 0 1.3rem;padding:0;display:flex;flex-wrap:wrap;align-items:center;gap:.55rem}.priority legend{font-size:.78rem;font-weight:760;margin-bottom:.6rem}.priority label{position:relative}.priority input{position:absolute;opacity:0;inset:0;width:100%;height:100%;cursor:pointer}.priority span{display:inline-flex;padding:.53rem .85rem;border:1px solid var(--line);font-size:.75rem;font-weight:680}.priority input:checked+span{background:var(--ink);border-color:var(--ink);color:#fff}.priority input:focus-visible+span{outline:3px solid #c65a3b;outline-offset:3px}.form-actions{display:flex;align-items:center;gap:.65rem;flex-wrap:wrap}.form-privacy{margin-left:auto;color:var(--muted);font-size:.7rem}.form-error{color:#9d2b1f;background:#fff1ed;border-left:3px solid var(--red);padding:.7rem 1rem;margin:1rem 0 0;font-size:.8rem}
.results{padding-top:2.5rem}.results-head{display:flex;justify-content:space-between;align-items:end;gap:2rem;padding-bottom:1.2rem;border-bottom:1px solid #c8d4c6}.results-head h2{font:2rem/1.2 var(--serif);margin:.25rem 0 0;letter-spacing:-.03em}.results-head p{max-width:430px;color:var(--muted);font-size:.8rem;margin:0}.result-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:1.4rem}.result-card{background:var(--white);border:1px solid #cad4ca;padding:1.5rem;min-width:0}.result-card .name-print{display:block;margin:.3rem 0 .1rem}.result-top{display:flex;justify-content:space-between;color:var(--muted);font-size:.63rem;letter-spacing:.11em;text-transform:uppercase;font-weight:750}.result-pinyin{color:var(--muted);font-size:.84rem}.result-card h3{font:1.35rem/1.3 var(--serif);margin:1rem 0 .55rem}.result-card p{font-size:.78rem;color:#4c5b54}.result-card .character-mini{display:flex;gap:.4rem;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:.9rem;margin-top:1rem}.character-mini span{font-size:.65rem;background:#edf0e9;padding:.25rem .45rem}.result-links{display:flex;gap:.6rem;flex-wrap:wrap;margin-top:1.2rem}.result-links .button{min-height:39px;font-size:.71rem;padding:.45rem .7rem}.results-note{color:#536259;font-size:.76rem;margin:1rem 0 0}.results-feedback{font-size:.78rem;color:var(--red);min-height:1.3rem}
.home-method{max-width:1320px;margin:auto;padding:100px clamp(20px,4vw,64px);display:grid;grid-template-columns:.9fr 1.1fr;gap:10%}.home-method h2{margin-top:1.4rem}.method-points{display:grid;gap:1.1rem}.method-points p{border-top:1px solid var(--line);padding:1.3rem 0;margin:0;color:#4b5a53}.method-points b{display:block;color:var(--ink);font-size:.92rem;margin-bottom:.3rem}.editorial-row{background:var(--ink);color:#f5f4eb;padding:95px max(20px,calc((100vw - 1192px)/2));display:grid;grid-template-columns:.9fr 1.1fr;gap:7%}.editorial-row h2{margin:1rem 0}.editorial-row p{color:#b9c8bd;max-width:350px}.feature-links{border-top:1px solid #53645a}.feature-link{display:grid;grid-template-columns:1fr auto;gap:.1rem;padding:1.1rem .2rem;border-bottom:1px solid #53645a}.feature-link:hover{color:#fff}.feature-link span{font-weight:740}.feature-link small{grid-column:1;color:#aec1b4}.feature-link b{grid-row:1/3;grid-column:2;color:#dcad9b}.home-note{max-width:1320px;margin:auto;padding:66px clamp(20px,4vw,64px);display:grid;grid-template-columns:90px 1fr auto;gap:2rem;align-items:center}.note-mark{font-size:5rem;font-family:var(--serif);color:#b1bbb0;line-height:1}.home-note h2{font:1.6rem var(--serif);margin:0 0 .3rem}.home-note p{font-size:.84rem;color:var(--muted);margin:0;max-width:680px}
.page-lead{max-width:830px;margin-bottom:2.4rem}.page-lead h1{font:clamp(2.7rem,4.5vw,5rem)/1.08 var(--serif);letter-spacing:-.055em;font-weight:400;margin:.7rem 0 1.1rem}.page-lead p{font-size:1.02rem;color:#536159;max-width:720px;margin:0}.directory-shell{max-width:1320px;padding:64px clamp(20px,4vw,64px) 100px;margin:auto}.directory-tools{border-block:1px solid var(--line);padding:18px 0;margin:1.5rem 0 2rem;display:flex;justify-content:space-between;align-items:end;gap:1rem;color:var(--muted);font-size:.7rem;text-transform:uppercase;letter-spacing:.09em}.search-field{display:flex;flex-direction:column;gap:.3rem;min-width:min(360px,100%);text-transform:none;letter-spacing:0;color:var(--ink)}.search-field input{min-height:43px;font-size:.86rem}.surname-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.surname-card{background:var(--white);border:1px solid var(--line);padding:1.4rem;display:flex;flex-direction:column;min-height:265px}.surname-head{display:flex;align-items:center;gap:1rem}.surname-glyph{display:grid;place-items:center;min-width:69px;height:69px;background:#e7ebe3;font:3rem/1 var(--cjk)}.surname-head h2{font:1.5rem var(--serif);margin:0}.surname-head small{font-size:.68rem;color:var(--muted)}.surname-card p{color:#546158;font-size:.78rem;flex:1}.card-actions{display:flex;gap:1rem;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:.7rem}.card-actions a{font-size:.72rem;font-weight:760;color:var(--red)}.card-actions a:hover{text-decoration:underline}.card-actions .prefill-link{color:var(--muted)}
.chip-row{display:flex;flex-wrap:wrap;gap:.5rem;margin:1.8rem 0}.chip{background:transparent;border:1px solid var(--line);padding:.58rem .8rem;font-size:.72rem;font-weight:760}.chip:hover,.chip.is-active{background:var(--ink);color:#fff;border-color:var(--ink)}.character-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.8rem}.char-card{background:var(--white);border:1px solid var(--line);padding:1.2rem;min-height:218px;display:flex;flex-direction:column;gap:.4rem}.char-card.linked:hover{border-color:var(--red);transform:translateY(-2px)}.char-glyph{font:3.6rem/1.2 var(--cjk);color:var(--ink)}.char-card h2{font:1.2rem var(--serif);margin:0}.char-card p{font-size:.77rem;margin:.1rem 0}.char-card small{font-size:.67rem;color:var(--muted);line-height:1.5}.char-card>a,.char-card.linked>span:last-child{font-size:.69rem;color:var(--red);font-weight:760;margin-top:auto}.directory-next{margin-top:2rem}.name-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem}.name-card{min-width:0;background:var(--white);border:1px solid var(--line);padding:.95rem 1.2rem;display:flex;align-items:center;gap:1rem}.name-card:hover{border-color:var(--red)}.name-card-meta{display:flex;flex-direction:column;min-width:0;flex:1}.name-card-meta b{font-size:.83rem}.name-card-meta small{color:var(--muted);font-size:.69rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.name-card>span:last-child{color:var(--red)}.name-print{font-family:var(--cjk);line-height:1.25;letter-spacing:.025em;white-space:nowrap}.name-print.small{font-size:2.1rem}.name-print.large{font-size:clamp(3.4rem,6vw,6.8rem)}.no-filter-results{padding:2rem;background:var(--white);border:1px solid var(--line)}
.tool-shell{max-width:1320px;margin:auto;display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:4rem;padding:66px clamp(20px,4vw,64px) 100px}.tool-main{min-width:0}.tool-aside,.profile-aside{display:flex;flex-direction:column;gap:1rem;padding-top:2rem}.aside-panel{background:var(--white);border:1px solid var(--line);padding:1.4rem;font-size:.79rem;color:#546259}.aside-panel.soft{background:#e7ebe3}.aside-panel h2{font:1.35rem/1.3 var(--serif);color:var(--ink);margin:.65rem 0}.aside-panel ol{padding-left:1.3rem}.aside-panel li{margin:.5rem 0}.aside-panel .button{margin-top:.9rem}.aside-link{display:block;border-top:1px solid var(--line);padding:.6rem 0;font-weight:700;color:var(--ink)}.tool-shell .page-lead{margin-bottom:2rem}.reader-form{background:var(--white);border:1px solid var(--line);padding:2rem}.reader-form input{font-size:1.5rem;letter-spacing:.08em}.reader-form .form-actions{margin-top:1.2rem}.reader-results{margin-top:2rem;background:#e9eee7;border:1px solid #cbd6c9;padding:1.5rem}.reader-results h2{font:1.8rem var(--serif);margin:.5rem 0}.reader-results .reader-name{font:clamp(3.6rem,7vw,5.6rem)/1.3 var(--cjk);display:block}.reader-results p{font-size:.86rem}.reader-parts{display:flex;gap:.7rem;flex-wrap:wrap}.reader-parts div{background:var(--white);padding:.7rem 1rem;border:1px solid var(--line)}.reader-parts b{display:block;font-size:.73rem}.reader-parts span{display:block;font-size:.68rem;color:var(--muted)}.reader-results .button{margin-top:1rem}
.compare-shell{max-width:1320px;margin:auto;padding:65px clamp(20px,4vw,64px) 110px}.compare-toolbar{display:flex;gap:.5rem;flex-wrap:wrap;margin:1.6rem 0}.compare-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(245px,1fr));gap:.9rem}.compare-card{background:var(--white);border:1px solid var(--line);padding:1.25rem;min-width:0}.compare-card .name-print{display:block;font-size:clamp(2.7rem,4vw,4.2rem)}.compare-card h2{font:1.25rem var(--serif);margin:.8rem 0}.compare-card p,.compare-card li{font-size:.76rem;color:#546259}.compare-card .field{margin-top:1rem}.compare-card textarea{min-height:100px;resize:vertical;font-size:.75rem}.compare-card button{margin-top:.6rem}.compare-empty{border:1px dashed #b9c7b8;padding:3rem;text-align:center}.compare-empty h2{font:2rem var(--serif);margin:.5rem}.compare-empty p{color:var(--muted)}.empty-symbol{font:4rem var(--cjk);color:#9fac9e}.storage-alert{background:#fff0ec;border-left:3px solid var(--red);padding:.7rem 1rem;color:#9b3026}.question-panel{margin-top:3rem;padding:2rem;background:#e7ece4;border:1px solid #ccd8c9}.question-panel h2{font:1.7rem var(--serif);margin:0}.question-panel ol{columns:2;column-gap:3rem;padding-left:1.2rem;font-size:.8rem}.question-panel li{break-inside:avoid;margin:.5rem 0}.question-panel p{font-size:.75rem;color:var(--muted)}
.profile-layout{max-width:1320px;margin:auto;padding:65px clamp(20px,4vw,64px) 110px;display:grid;grid-template-columns:minmax(0,1fr) 285px;gap:4rem}.profile-main{min-width:0}.surname-hero{display:flex;justify-content:space-between;align-items:center;gap:2rem;border-bottom:1px solid var(--line);padding-bottom:2rem}.surname-hero h1{display:flex;align-items:baseline;gap:1.5rem;margin:.7rem 0}.surname-hero h1 span{font:clamp(5rem,10vw,9rem)/1.1 var(--cjk)}.surname-hero h1 small{font:clamp(2rem,3vw,3.5rem)/1.2 var(--serif);letter-spacing:-.04em}.surname-hero p{color:var(--muted);max-width:650px}.profile-symbol{font:clamp(7rem,14vw,14rem)/1 var(--cjk);color:#cdd9cc;opacity:.55}.prose-block{padding:2rem 0;border-bottom:1px solid var(--line)}.prose-block h2,.source-list h2{font:clamp(1.5rem,2vw,2rem)/1.25 var(--serif);font-weight:400;margin:0 0 1rem;letter-spacing:-.02em}.prose-block p{max-width:750px;color:#48574e;font-size:.89rem}.fine-print{font-size:.73rem!important;color:var(--muted)!important}.inline-examples,.related-names{display:flex;gap:.5rem;flex-wrap:wrap;margin:1.2rem 0}.inline-examples a,.related-names a{border:1px solid var(--line);background:var(--white);padding:.55rem .85rem;display:flex;flex-direction:column}.inline-examples a:hover,.related-names a:hover{border-color:var(--red)}.inline-examples span,.related-names span{font:1.5rem var(--cjk)}.inline-examples small,.related-names small{font-size:.63rem;color:var(--muted)}.source-list{padding:2rem 0}.source-list ul{margin:0;padding-left:1.2rem;font-size:.78rem}.source-list a{color:var(--red);text-decoration:underline;text-underline-offset:3px}.source-list p{font-size:.72rem;color:var(--muted)}.article-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1rem}.action-feedback{font-size:.76rem;color:var(--red);min-height:1.4rem}
.character-layout{max-width:1180px;margin:auto;padding:65px clamp(20px,4vw,64px) 110px}.character-hero{border-bottom:1px solid var(--line);padding-bottom:2rem}.character-hero-row{display:flex;align-items:center;gap:3rem}.character-display{font:clamp(7rem,14vw,13rem)/1.1 var(--cjk);color:#2b4635}.character-hero h1{font:3.4rem/1.2 var(--serif);font-weight:400;margin:0}.character-hero h1 span{font-size:1.5rem;color:var(--muted)}.character-hero .definition{font:1.7rem var(--serif);margin:.4rem 0}.character-hero p{max-width:600px;color:var(--muted)}.article-columns{display:grid;grid-template-columns:minmax(0,1fr) 245px;gap:4rem}.article-columns .aside-panel{align-self:start;position:sticky;top:2rem;margin-top:2rem}.example-list{display:grid;gap:.4rem}.example-list a{display:flex;align-items:center;gap:1rem;border:1px solid var(--line);background:var(--white);padding:.5rem .8rem}.example-list a:hover{border-color:var(--red)}.example-list b{font:1.6rem var(--cjk)}.example-list a>span:nth-child(2){font-size:.75rem;flex:1}.example-list small{display:block;color:var(--muted)}.example-list a>span:last-child{color:var(--red)}
.dossier{max-width:1320px;margin:auto;padding:65px clamp(20px,4vw,64px) 110px}.dossier-header{display:grid;grid-template-columns:1fr .85fr;gap:3rem;align-items:center}.dossier-intro h1{font:clamp(2.8rem,4vw,4.8rem)/1.15 var(--serif);font-weight:400;letter-spacing:-.05em;margin:.9rem 0}.dossier-intro h1 span{display:block;font-size:clamp(1.6rem,2.5vw,2.5rem);color:var(--muted);letter-spacing:-.02em}.dossier-intro p{max-width:550px;color:#526158}.dossier-tags{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:1.5rem}.dossier-tags span{border:1px solid var(--line);padding:.3rem .6rem;font-size:.64rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.name-sheet{min-height:360px;background:#e7eae0;border:1px solid #cbd4c8;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;padding:2rem;text-align:center}.name-sheet::before{content:'';position:absolute;inset:13px;border:1px solid #c4cfc2}.name-sheet>*{position:relative}.sheet-label{position:absolute;top:29px;left:30px;font-size:.62rem;letter-spacing:.15em;font-weight:800;color:var(--muted)}.sheet-pinyin{font-size:.85rem;letter-spacing:.08em}.sheet-split{margin-top:1rem;border-top:1px solid #bdcaba;padding-top:.7rem;font-size:.66rem;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}.sheet-split i{font-style:normal;color:var(--red);padding:0 .3rem}.dossier-body{display:grid;grid-template-columns:minmax(0,1fr) 275px;gap:4rem;margin-top:3rem}.character-breakdown{border-top:1px solid var(--line)}.character-breakdown>div{display:grid;grid-template-columns:55px 1fr;gap:1.2rem;border-bottom:1px solid var(--line);padding:1rem 0}.character-breakdown>div>span{font:2.7rem var(--cjk)}.character-breakdown b{font-size:.82rem}.character-breakdown p{margin:.2rem 0 .4rem}.dossier-body .profile-aside{padding-top:0}
.guide-groups{display:grid;gap:4rem}.guide-group{display:grid;grid-template-columns:280px 1fr;gap:2rem}.group-heading{display:flex;gap:1rem}.group-number{font:2rem var(--serif);color:var(--red)}.group-heading h2{font:1.6rem var(--serif);margin:0}.group-heading p{font-size:.75rem;color:var(--muted)}.guide-list{border-top:1px solid var(--line)}.guide-list a{display:flex;justify-content:space-between;gap:1rem;align-items:center;padding:1.05rem .5rem;border-bottom:1px solid var(--line);font-size:.88rem;font-weight:690}.guide-list a:hover{background:#ecefe8}.guide-list a span:last-child{color:var(--red)}.reading-layout{max-width:1200px;margin:auto;padding:65px clamp(20px,4vw,64px) 110px}.reading-header{max-width:850px;border-bottom:1px solid var(--line);padding-bottom:2.5rem}.reading-header h1{font:clamp(2.8rem,5vw,5.5rem)/1.08 var(--serif);font-weight:400;letter-spacing:-.055em;margin:.8rem 0 1.2rem}.reading-header p{color:#526158;font-size:1.08rem}.reading-grid{display:grid;grid-template-columns:minmax(0,740px) 245px;gap:5rem}.reading-body section{position:relative;padding:2rem 0;border-bottom:1px solid var(--line)}.reading-body h2{font:2rem/1.2 var(--serif);margin:0 0 1rem;font-weight:400}.reading-body p{color:#435148;font-size:.96rem;line-height:1.85}.margin-number{position:absolute;left:-37px;top:2.2rem;color:var(--red);font-size:.65rem;font-weight:850}.reading-aside{padding-top:2rem}.reading-aside .aside-panel{position:sticky;top:2rem}.example-box{background:#e8ede5;padding:1.5rem 2rem;margin-top:2rem;border-left:3px solid var(--red)}.example-box span{font-size:.65rem;color:var(--red);letter-spacing:.15em;font-weight:800}.example-box p{font:1.2rem/1.55 var(--serif);margin:.6rem 0}.next-step{display:flex;gap:.5rem;flex-wrap:wrap;margin-top:1.7rem}
.case-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.case-card{padding:2rem;background:var(--white);border:1px solid var(--line);min-height:230px;display:flex;flex-direction:column}.case-card:hover{border-color:var(--red)}.case-index{font-size:.66rem;color:var(--red);font-weight:800;letter-spacing:.14em}.case-card h2{font:1.6rem/1.2 var(--serif);margin:.9rem 0}.case-card p{font-size:.8rem;color:var(--muted);flex:1}.case-layout{max-width:1100px;margin:auto;padding:65px clamp(20px,4vw,64px) 110px}.case-layout>header{max-width:780px}.case-layout h1{font:clamp(2.8rem,4.5vw,4.8rem)/1.1 var(--serif);font-weight:400;letter-spacing:-.05em;margin:.8rem 0}.case-layout>header p{color:var(--muted);font-size:1.06rem}.case-brief{display:grid;grid-template-columns:1fr 1fr;gap:3rem;border-block:1px solid var(--line);padding:2rem 0;margin:2.5rem 0}.case-brief>div>span{font-size:.68rem;color:var(--red);font-weight:800;letter-spacing:.14em}.case-brief p{color:#4d5b52}.case-options{display:flex;gap:.5rem;flex-wrap:wrap;margin-top:1rem}.case-options a{background:var(--white);border:1px solid var(--line);padding:.6rem .85rem;display:flex;flex-direction:column}.case-options a:hover{border-color:var(--red)}.case-options b{font:1.5rem var(--cjk)}.case-options small{font-size:.66rem;color:var(--muted)}.case-verdict{background:#e8ece3;padding:2rem}.verdict-name{display:flex;gap:1.5rem;align-items:center}.verdict-name b{font-size:.95rem}.verdict-name p{margin:0;color:var(--muted)}.case-verdict>p{max-width:750px;color:#435148}.case-check{margin-top:2rem}.case-check h2{font:1.7rem var(--serif)}.case-check p{color:var(--muted)}
.trust-page{max-width:980px;margin:auto;padding:65px clamp(20px,4vw,64px) 110px}.trust-content{border-top:1px solid var(--line);padding-top:2rem}.trust-content>p,.trust-content>h2,.trust-content>.notice{max-width:750px}.trust-content>p{font-size:.95rem;line-height:1.85;color:#47564c}.trust-content h2{font:1.7rem var(--serif);margin-top:2rem}.trust-content a:not(.button){color:var(--red);text-decoration:underline}.trust-next{display:flex;gap:.5rem;flex-wrap:wrap;margin-top:2.5rem}.notice{background:#fff0eb;border-left:3px solid var(--red);padding:1rem;color:#7d392e;font-size:.85rem}.not-found{min-height:55vh;max-width:800px;margin:auto;padding:100px 25px}.not-found h1{font:3.5rem var(--serif);margin:.8rem 0}.not-found p{color:var(--muted)}
.site-footer{background:#1c2a23;color:#f3f4eb;padding:70px clamp(20px,4vw,64px) 25px}.footer-grid,.footer-bottom{max-width:1332px;margin:auto}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:3rem}.site-footer .brand-seal{border-color:#d87860;color:#d87860}.site-footer .brand-dot{color:#d87860}.site-footer p{font-size:.76rem;color:#aebfb0;max-width:260px}.footer-grid>div:not(:first-child){display:flex;flex-direction:column;gap:.4rem}.footer-grid h2{color:#d9e4d8;font-size:.7rem;letter-spacing:.15em;text-transform:uppercase;margin:.15rem 0 .5rem}.footer-grid a:not(.brand){font-size:.75rem;color:#bac9bc}.footer-grid a:hover{color:#fff}.footer-small{font-size:.66rem!important;line-height:1.5}.footer-bottom{border-top:1px solid #415349;margin-top:55px;padding-top:18px;display:flex;justify-content:space-between;gap:1rem;font-size:.64rem;color:#9eb1a1}
.paper-stamp::before,.paper-stamp::after{content:'';position:absolute;background:currentColor}.paper-stamp::before{width:3px;height:25px;left:19px;top:7px;transform:rotate(33deg)}.paper-stamp::after{width:25px;height:3px;left:7px;top:19px;transform:rotate(-18deg)}.result-card details{border-top:1px solid var(--line);margin-top:1rem;padding-top:.7rem}.result-card summary{cursor:pointer;font-size:.76rem;font-weight:760;color:var(--ink);padding:.2rem 0}.result-card details[open] summary{color:var(--red)}.result-card details p{line-height:1.6}.result-card details a{color:var(--red);text-decoration:underline;text-underline-offset:3px}
@media(max-width:1100px){.header-note{display:none}.hero{gap:3rem}.surname-grid,.name-grid{grid-template-columns:repeat(2,1fr)}.character-grid{grid-template-columns:repeat(3,1fr)}.tool-shell,.profile-layout{gap:2rem}.editorial-row{padding-left:5vw;padding-right:5vw}}
@media(max-width:860px){.desktop-nav{display:none}.mobile-menu{display:block}.header-inner{min-height:72px}.hero{grid-template-columns:1fr 1fr;gap:2rem}.hero-copy h1{font-size:clamp(3rem,6vw,4.7rem)}.hero-hanzi{font-size:clamp(4.8rem,9vw,7rem)}.result-grid{grid-template-columns:repeat(2,1fr)}.tool-shell,.profile-layout,.article-columns,.dossier-body,.reading-grid{grid-template-columns:1fr}.tool-aside,.profile-aside,.reading-aside{padding-top:0}.article-columns .aside-panel,.reading-aside .aside-panel{position:static}.dossier-header{gap:1rem}.guide-group{grid-template-columns:220px 1fr}.footer-grid{grid-template-columns:2fr 1fr 1fr}.footer-grid>div:last-child{grid-column:2/4}.margin-number{position:static;display:block;margin-bottom:.4rem}}
@media(max-width:640px){.hero{grid-template-columns:1fr;padding-top:48px}.hero-copy h1{font-size:clamp(3.1rem,11vw,5rem);max-width:13ch}.hero-copy>p{font-size:.96rem}.hero-meta{gap:.6rem 1rem;margin-top:2rem}.hero-art{max-width:500px;aspect-ratio:1.2/1;margin:auto;width:100%}.hero-hanzi{font-size:clamp(5rem,18vw,7rem)}.paper-stamp{bottom:21%}.home-studio{padding:55px 20px 65px}.section-intro{display:block}.section-intro>.eyebrow{display:block;margin-bottom:.7rem}.section-intro p{margin-top:1rem}.field-grid{grid-template-columns:1fr}.form-heading{display:block}.form-heading p{margin-top:.5rem}.form-privacy{width:100%;margin:0}.result-grid{grid-template-columns:1fr}.results-head{display:block}.results-head p{margin-top:.6rem}.home-method,.editorial-row{grid-template-columns:1fr;gap:2rem;padding:65px 20px}.home-note{display:block;padding:55px 20px}.note-mark{line-height:.8}.home-note .text-link{display:inline-block;margin-top:1rem}.directory-shell,.tool-shell,.profile-layout,.character-layout,.dossier,.reading-layout,.case-layout,.trust-page,.compare-shell{padding-top:50px;padding-bottom:80px}.page-lead h1{font-size:clamp(2.5rem,10vw,3.5rem)}.directory-tools{display:block}.directory-tools>span{display:block;margin-top:1rem}.search-field{min-width:0}.surname-grid,.name-grid,.character-grid,.case-grid{grid-template-columns:1fr}.surname-card{min-height:0}.char-card{min-height:0}.dossier-header{grid-template-columns:1fr}.name-sheet{min-height:300px}.name-print.large{font-size:clamp(3.2rem,13vw,5.5rem)}.surname-hero{align-items:start}.profile-symbol{display:none}.surname-hero h1{display:block}.surname-hero h1 small{display:block}.character-hero-row{gap:1.2rem;align-items:start}.character-display{font-size:6rem}.character-hero h1{font-size:2.7rem}.character-hero h1 span{display:block;font-size:1.1rem}.guide-group{grid-template-columns:1fr;gap:.7rem}.guide-groups{gap:2.8rem}.case-brief{grid-template-columns:1fr;gap:1rem}.question-panel ol{columns:1}.footer-grid{grid-template-columns:1fr 1fr;gap:2rem}.footer-grid>div:first-child{grid-column:1/-1}.footer-grid>div:last-child{grid-column:2}.footer-bottom{display:block}.footer-bottom span{display:block;margin:.3rem 0}}
@media(max-width:380px){.hero-hanzi{font-size:4.4rem}.name-card .name-print.small{font-size:1.65rem}.character-hero-row{display:block}.character-display{font-size:5.5rem}.priority{display:grid;grid-template-columns:1fr 1fr}.priority legend{grid-column:1/-1}.priority label span{justify-content:center;width:100%}.article-actions .button{width:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition-duration:.01ms!important;animation-duration:.01ms!important}}

/* Ink-and-paper art direction. Kept separate from the structural stylesheet. */
:root{
  --paper:#f6f1e8;--paper2:#eee6da;--ink:#232824;--muted:#62635d;
  --red:#ad3428;--red-dark:#86251f;--line:#d6cbbd;--jade:#e9e1d3;
  --white:#fcf9f3;--shadow:0 24px 60px rgba(42,39,31,.11);
  --cjk:"Microsoft YaHei UI","Microsoft YaHei","PingFang SC","Noto Sans CJK SC","Noto Sans SC",sans-serif;
}
body{background:var(--paper);background-image:radial-gradient(circle at 12% 4%,rgba(255,255,255,.58),transparent 36%),radial-gradient(circle at 93% 35%,rgba(217,205,187,.18),transparent 32%);color:var(--ink)}
::selection{background:#e6b5a6;color:var(--ink)}
:focus-visible{outline-color:var(--red)}
.site-header{background:rgba(250,247,240,.97);border-color:var(--line)}
.header-inner{min-height:75px;max-width:1500px}
.brand{font-size:1.35rem;letter-spacing:-.065em;gap:.55rem}
.brand-seal{display:block;width:38px;height:38px;object-fit:contain;border:0;background:none}
.brand-dot{color:var(--red)}
.desktop-nav a{font-size:.78rem;font-weight:710;letter-spacing:.025em}
.header-note{color:#756c61;border-color:var(--line)}
.mobile-menu summary{background:var(--white)}
.mobile-menu nav{background:var(--white)}
.eyebrow{color:var(--red);letter-spacing:.18em}
.button{border-radius:2px;font-weight:720;letter-spacing:.01em}
.button.primary{box-shadow:0 8px 22px rgba(130,38,30,.14)}
.button.ghost{background:rgba(255,255,255,.24)}
.button.ghost:hover{background:#eee6da}
.text-link{color:var(--red)}
.breadcrumbs{border-bottom:1px solid rgba(148,130,108,.15);padding-bottom:15px}

/* The home page is a broad ink landscape rather than a split text-and-card hero. */
.ink-hero{position:relative;isolation:isolate;overflow:hidden;min-height:685px;display:grid;grid-template-rows:1fr auto;padding:80px clamp(20px,4vw,64px) 0;background:#f4efe5;border-bottom:1px solid #bbb3a4}
.ink-hero::before{content:"";position:absolute;z-index:-1;inset:0;background:radial-gradient(ellipse at 50% 16%,rgba(253,250,244,.84),rgba(253,250,244,.23) 52%,transparent 78%)}
.ink-hero-landscape{position:absolute;z-index:-2;inset:0;width:100%;height:100%;object-fit:cover;object-position:center bottom;pointer-events:none}
.ink-hero-content{position:relative;z-index:1;max-width:940px;margin:0 auto;text-align:center;align-self:start}
.ink-hero-content .eyebrow{display:inline-block;padding:0 0 9px;border-bottom:1px solid rgba(173,52,40,.4)}
.ink-hero-content h1{font:400 clamp(3.1rem,5.1vw,5.55rem)/1.1 var(--serif);letter-spacing:-.057em;margin:1.1rem 0 .9rem;text-wrap:balance}
.ink-hero-content h1 em{font-style:italic;font-weight:400;color:var(--red)}
.ink-hero-content p{font-size:clamp(.98rem,1.3vw,1.13rem);line-height:1.7;max-width:670px;margin:0 auto;color:#494f49;text-wrap:pretty}
.ink-hero-actions{display:flex;align-items:center;justify-content:center;gap:1.5rem;flex-wrap:wrap;margin-top:1.6rem}
.ink-hero-actions .button{min-height:50px;padding:.75rem 1.35rem}
.hero-secondary{font-size:.81rem;font-weight:740;border-bottom:1px solid var(--red);padding-bottom:.22rem;color:var(--ink)}
.hero-secondary:hover{color:var(--red)}
.hero-name-rail{position:relative;z-index:2;width:min(100%,1180px);margin:auto auto 0;display:flex;justify-content:space-between;align-items:center;gap:3rem;padding:.8rem clamp(1.2rem,4vw,3.2rem) .9rem;background:rgba(250,247,240,.95);border:1px solid #c9bbaa;border-bottom:0;box-shadow:0 -8px 34px rgba(51,54,45,.06);backdrop-filter:blur(6px)}
.hero-name-rail>div{display:flex;align-items:center;gap:1.5rem}
.rail-label{font-size:.64rem;color:#756c60;font-weight:800;letter-spacing:.15em;line-height:1.5;max-width:82px}
.rail-name{font:clamp(4.3rem,7.5vw,7.1rem)/1.1 var(--cjk);color:#26352b;white-space:nowrap;letter-spacing:.08em}
.hero-name-rail p{border-left:1px solid #d4c8b7;padding-left:2rem;margin:0;display:grid;gap:.3rem;min-width:270px;font-size:.76rem;color:#665f55}
.hero-name-rail p strong{font-size:1rem;letter-spacing:.035em;color:var(--ink)}
.hero-name-rail .text-link{font-size:.74rem;justify-self:start}

.home-studio{background:#e9e2d6;background-image:linear-gradient(115deg,rgba(255,255,255,.24),transparent 48%),radial-gradient(circle at 90% 10%,rgba(137,119,98,.07),transparent 34%);border-color:#d4c8b8;padding:80px clamp(20px,4vw,64px) 96px}
.home-studio>.section-intro,.home-studio>.studio-form,.home-studio>.results{max-width:1180px}
.section-intro{gap:2.5rem}
.section-intro h2,.home-method h2,.editorial-row h2{letter-spacing:-.045em}
.section-intro p{color:#5b5b53}
.studio-form{background:rgba(253,250,243,.97);border-color:#cfc2b0;box-shadow:0 18px 44px rgba(69,59,45,.08)}
.field input,.field select,.search-field input,.reader-form input,.compare-note{background:#fffdfa;border-color:#cec3b5}
.field input:focus,.field select:focus,.search-field input:focus,.compare-note:focus{box-shadow:0 0 0 3px rgba(173,52,40,.13)}
.priority span{background:#f7f2e9}
.priority input:checked+span{background:#2b342d;border-color:#2b342d}
.results-head{border-color:#c8bbab}
.result-card,.surname-card,.char-card,.name-card,.compare-card,.case-card,.aside-panel,.reader-form,.example-list a,.case-options a{background:var(--white);border-color:var(--line)}
.result-card{box-shadow:0 6px 20px rgba(54,49,41,.045)}
.result-card p,.surname-card p,.prose-block p,.reading-body p,.trust-content>p{color:#4d514a}
.result-card .character-mini span,.surname-glyph,.aside-panel.soft,.question-panel,.reader-results,.example-box,.case-verdict,.name-sheet{background:#ede6d9}
.result-card .name-print{color:#25362a}
.home-method{max-width:1250px;padding-top:105px;padding-bottom:110px;gap:8%}
.home-method h2{max-width:520px}
.method-points p{padding:1.2rem 0 1.35rem;color:#555950}
.method-points b{font-size:1rem;color:var(--ink)}
.editorial-row{background:#243027;color:#faf6ec;position:relative;overflow:hidden}
.editorial-row::before{content:"";position:absolute;right:-15%;bottom:-52%;width:90%;aspect-ratio:1;background:radial-gradient(ellipse,rgba(232,226,210,.1),transparent 65%);pointer-events:none}
.editorial-row>*{position:relative}
.editorial-row .eyebrow{color:#e1aa8c}
.editorial-row p{color:#c6c7b9}
.feature-links,.feature-link{border-color:#657067}
.feature-link small{color:#c4c7ba}
.feature-link b{color:#e2a98f}
.home-note{border-top:1px solid var(--line)}
.note-mark{color:#a79c8a}
.page-lead p,.dossier-intro p,.reading-header p,.case-layout>header p{color:#555950}
.surname-glyph{font-family:var(--cjk);color:#334337}
.char-glyph,.character-display,.profile-symbol,.inline-examples span,.related-names span,.example-list b,.character-breakdown>div>span,.case-options b,.empty-symbol{font-family:var(--cjk)}
.profile-symbol{color:#b8ad99}
.character-display{color:#314035}
.name-sheet{border-color:#c9baa6;background-image:radial-gradient(circle at 50% 50%,#f7f1e6,transparent 72%)}
.name-sheet::before{border-color:#cdbfac}
.sheet-split{border-color:#c7bba8}
.guide-list a:hover{background:#eee6da}
.source-list a,.card-actions a,.char-card>a{color:var(--red)}
.case-verdict{border-left:3px solid var(--red)}
.site-footer{background:#202b24;color:#f6f0e5}
.site-footer .brand-seal{border:0}
.site-footer p,.footer-grid a:not(.brand){color:#c4c8b9}
.footer-grid h2{color:#e2d6c3}
.footer-bottom{border-color:#536056;color:#b7bbaa}

@media(max-width:860px){
  .ink-hero{min-height:650px;padding-top:68px}
  .ink-hero-content h1{font-size:clamp(3rem,6.3vw,4.6rem)}
  .hero-name-rail{gap:1.5rem}
  .rail-name{font-size:clamp(3.8rem,8vw,5.4rem)}
}
@media(max-width:640px){
  .ink-hero{min-height:0;padding:52px 20px 0;grid-template-rows:auto auto}
  .ink-hero-landscape{object-fit:cover;object-position:55% bottom;opacity:.75}
  .ink-hero-content{padding-bottom:110px}
  .ink-hero-content h1{font-size:clamp(2.75rem,10vw,4.1rem);line-height:1.11}
  .ink-hero-content p{font-size:.95rem;max-width:390px}
  .ink-hero-actions{gap:1rem}
  .hero-name-rail{display:block;padding:.8rem 1rem 1rem;text-align:center;width:100%;}
  .hero-name-rail>div{display:flex;flex-direction:column;gap:.15rem}
  .rail-label{max-width:none;font-size:.58rem}
  .rail-name{font-size:clamp(4.4rem,18vw,6.4rem)}
  .hero-name-rail p{border:0;border-top:1px solid var(--line);min-width:0;padding:.55rem 0 0;gap:.15rem;justify-items:center}
  .home-studio{padding:60px 20px 70px}
  .home-method{padding:72px 20px}
  .editorial-row{padding:70px 20px}
}
@media(max-width:380px){
  .ink-hero-content h1{font-size:2.55rem}
  .ink-hero-actions .button{width:100%}
  .rail-name{font-size:4.2rem}
}

/* White / black / Chinese red palette with surname calligraphy as the hero image. */
:root{
  --paper:#fff;--paper2:#f6f6f4;--ink:#171717;--muted:#5a5a5a;
  --red:#bd1b20;--red-dark:#981217;--line:#dedede;--jade:#f5f5f3;
  --white:#fff;--shadow:0 24px 58px rgba(0,0,0,.09);
}
body{background:#fff;background-image:none;color:var(--ink)}
.site-header{background:rgba(255,255,255,.97);border-color:#e6e6e6}
.header-note{color:#5e5e5e}
.button.ghost:hover{background:#f3f3f3}
.breadcrumbs{border-color:#ededed}
.ink-hero{background:#fff;border-color:#d8d8d8}
.ink-hero::before{z-index:0;background:linear-gradient(90deg,rgba(255,255,255,.13),rgba(255,255,255,.77) 26%,rgba(255,255,255,.83) 50%,rgba(255,255,255,.76) 74%,rgba(255,255,255,.12))}
.ink-hero-landscape{z-index:-1;opacity:.46;object-position:center center}
.ink-hero-content p{color:#454545}
.surname-wash{position:absolute;z-index:0;inset:0;pointer-events:none;overflow:hidden;color:#141414;font-family:var(--cjk)}
.surname-wash span{position:absolute;display:block;white-space:nowrap;line-height:1.18;font-weight:400;mix-blend-mode:multiply}
.wash-left{left:3%;top:10%;writing-mode:vertical-rl;font-size:clamp(2.8rem,4.6vw,5.6rem);letter-spacing:.37em;opacity:.22;transform:rotate(-9deg)}
.wash-right{right:3.5%;top:13%;writing-mode:vertical-rl;font-size:clamp(2.7rem,4.2vw,5.1rem);letter-spacing:.4em;opacity:.19;transform:rotate(8deg)}
.wash-low{left:20%;bottom:14%;font-size:clamp(2.3rem,3.6vw,4.2rem);letter-spacing:.32em;opacity:.12;transform:rotate(-3deg)}
.hero-name-rail{background:rgba(255,255,255,.97);border-color:#d7d7d7;box-shadow:0 -8px 34px rgba(0,0,0,.045)}
.rail-label,.hero-name-rail p{color:#555}
.rail-name{color:#161616}
.hero-name-rail p{border-color:#ddd}
.home-studio{background:#f7f7f6;background-image:none;border-color:#e6e6e6}
.section-intro p,.page-lead p,.dossier-intro p,.reading-header p,.case-layout>header p{color:#525252}
.studio-form{background:#fff;border-color:#ddd;box-shadow:0 16px 40px rgba(0,0,0,.055)}
.field input,.field select,.search-field input,.reader-form input,.compare-note{background:#fff;border-color:#d2d2d2}
.priority span{background:#fff}
.priority input:checked+span{background:#191919;border-color:#191919}
.results-head{border-color:#d5d5d5}
.result-card,.surname-card,.char-card,.name-card,.compare-card,.case-card,.aside-panel,.reader-form,.example-list a,.case-options a{background:#fff;border-color:#dedede}
.result-card p,.surname-card p,.prose-block p,.reading-body p,.trust-content>p,.method-points p{color:#4d4d4d}
.result-card .character-mini span,.surname-glyph,.aside-panel.soft,.question-panel,.reader-results,.example-box,.case-verdict,.name-sheet{background:#f5f5f3}
.result-card .name-print,.surname-glyph,.character-display{color:#151515}
.home-method{position:relative;isolation:isolate;overflow:hidden}
.home-method::before{content:"";position:absolute;z-index:-1;right:0;bottom:-4rem;width:min(32vw,360px);height:100%;background:url('./ink-bamboo-v1.webp') no-repeat right bottom/contain;opacity:.14;pointer-events:none}
.editorial-row{background:#171717;color:#fff}
.editorial-row::before{background:radial-gradient(ellipse,rgba(255,255,255,.065),transparent 66%)}
.editorial-row .eyebrow{color:#ec928e}
.editorial-row p{color:#d2d2d2}
.feature-links,.feature-link{border-color:#5a5a5a}
.feature-link small{color:#cfcfcf}
.feature-link b{color:#eaa19b}
.note-mark{color:#a0a0a0}
.profile-symbol{color:#d7d7d7}
.name-sheet{border-color:#d9d9d9;background-image:radial-gradient(circle at center,#fff,#f4f4f2 76%)}
.name-sheet::before,.sheet-split{border-color:#ddd}
.guide-list a:hover{background:#f7f7f7}
.case-verdict{border-color:var(--red)}
.site-footer{background:#181818;color:#fff}
.site-footer p,.footer-grid a:not(.brand){color:#ccc}
.footer-grid h2{color:#eee}
.footer-bottom{border-color:#474747;color:#bbb}
@media(max-width:860px){
  .wash-left{left:0;opacity:.16}
  .wash-right{right:0;opacity:.15}
  .wash-low{opacity:.09}
}
@media(max-width:640px){
  .ink-hero::before{background:linear-gradient(90deg,rgba(255,255,255,.64),rgba(255,255,255,.83) 35%,rgba(255,255,255,.78) 65%,rgba(255,255,255,.61))}
  .ink-hero-landscape{opacity:.48;object-position:50% center}
  .wash-left{top:23%;left:-6px;font-size:2.55rem;opacity:.13}
  .wash-right{top:41%;right:-8px;font-size:2.5rem;opacity:.11}
  .wash-low{display:none!important}
  .home-method::before{width:43vw;right:-7vw;opacity:.09}
}

/* Searchable classical surname index and the name-library ordering control. */
.classic-section{margin-top:clamp(4rem,8vw,7rem);padding-top:2rem;border-top:2px solid var(--ink)}
.classic-intro{max-width:760px}
.classic-intro h2{font:clamp(2.3rem,4vw,3.7rem)/1.08 var(--serif);letter-spacing:-.045em;margin:.55rem 0 1rem}
.classic-intro p,.source-footnote{color:var(--muted);font-size:.86rem;line-height:1.7}
.classic-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:.65rem}
.classic-item{min-width:0;display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto auto;align-items:center;gap:.15rem .45rem;border:1px solid var(--line);padding:.7rem .8rem;background:#fff}
.classic-item[hidden]{display:none}
.classic-order{font-size:.61rem;color:#777;align-self:start}
.classic-han{font-family:var(--cjk);font-size:2.2rem;line-height:1.25;grid-column:2;grid-row:1/3}
.classic-reading{grid-column:1/-1;font-size:.71rem;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.classic-actions{grid-column:1/-1;display:flex;gap:.7rem;justify-content:space-between;border-top:1px solid var(--line);padding-top:.4rem;margin-top:.2rem;font-size:.67rem;font-weight:700}
.classic-actions a{color:var(--red)}
.classic-actions a:hover{text-decoration:underline}
.classic-pager{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;margin:1.5rem 0 0;color:var(--muted);font-size:.73rem}
.classic-pager button[hidden]{display:none}
.source-footnote{margin-top:1.5rem}
.source-footnote a{text-decoration:underline;text-underline-offset:2px}
.library-sort{display:flex;flex-direction:column;gap:.3rem;min-width:190px;color:var(--ink);font-size:.78rem;font-weight:700;letter-spacing:0;text-transform:none}
.library-sort select{min-height:43px;border:1px solid #d2d2d2;background:#fff;color:var(--ink);padding:.5rem}
.library-sort select:focus-visible{outline:3px solid var(--red);outline-offset:2px}
.custom-surname{border:1px solid var(--line);margin:1.35rem 0 0;background:#fafafa}
.custom-surname summary{cursor:pointer;padding:.85rem 1rem;font-size:.78rem;font-weight:750;color:var(--ink)}
.custom-surname summary:hover{color:var(--red)}
.custom-surname summary:focus-visible{outline:3px solid var(--red);outline-offset:2px}
.custom-surname .field-grid{padding:0 1rem 1.1rem}
@media(max-width:1100px){.classic-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:640px){.classic-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.classic-item{padding:.65rem}.classic-han{font-size:2rem}.directory-tools .library-sort{margin-top:1rem;width:100%}}
.name-entry{display:block;align-self:start;min-height:0}
.name-entry[open]{grid-column:1 / -1;border-color:var(--red);background:#fff}
.name-entry summary{display:flex;align-items:center;gap:1rem;cursor:pointer;list-style:none}
.name-entry summary::-webkit-details-marker{display:none}
.name-entry summary:focus-visible{outline:3px solid var(--red);outline-offset:4px}
.name-entry summary>span:last-child{color:var(--red);font-size:1.2rem}
.name-entry[open] summary>span:last-child{transform:rotate(45deg)}
.name-entry-body{border-top:1px solid var(--line);margin-top:.85rem;padding-top:.85rem;font-size:.9rem;line-height:1.65}
.name-entry-body p{margin:.35rem 0 .65rem}
.name-entry-body ul{padding-left:1.2rem;margin:.6rem 0}
.name-entry-body li{margin:.4rem 0}
.name-entry-body li span{font-family:var(--cjk);font-size:1.1em}
.name-entry-body li a{color:var(--red);text-decoration:underline;text-underline-offset:2px}
.name-entry-actions{display:flex;gap:.5rem;flex-wrap:wrap;margin-top:1rem}
.name-entry .action-feedback{margin-bottom:0;color:var(--red)}

/* One shared, data-backed character reader. */
.character-reader>.text-link{display:inline-block;margin-bottom:2rem}
.character-reader .character-hero{padding-bottom:2.5rem}
.character-reader .character-hero h1 span:first-child{font-family:var(--cjk);font-size:1.35em}
.character-reader .character-hero h1 span:last-child{font-family:var(--sans);font-size:.42em;letter-spacing:0;color:var(--muted);white-space:nowrap}
.character-reader .article-columns{grid-template-columns:minmax(0,1fr) 260px;gap:3rem}
.character-reader .prose-block p{line-height:1.8}
.character-reader .aside-panel{display:flex;flex-direction:column;gap:.8rem}
.character-reader .aside-panel h2,.character-reader .aside-panel p{margin:0}
.character-placeholder{padding:2rem 0;color:var(--muted)}
.character-examples{display:grid;gap:.65rem;margin:1.2rem 0}
.character-example{display:grid;grid-template-columns:minmax(95px,auto) minmax(0,1fr) auto;align-items:center;gap:1.2rem;padding:1rem 1.2rem;border:1px solid var(--line);background:#fff}
.character-example:hover,.character-neighbors a:hover{border-color:var(--red)}
.character-example>span:first-child{font:2.2rem/1.2 var(--cjk);white-space:nowrap}
.character-example>span:nth-child(2){display:grid;gap:.2rem;min-width:0}
.character-example b{font-size:.85rem}
.character-example small{font-size:.75rem;color:var(--muted)}
.character-example em{font-style:normal;font-size:.77rem;line-height:1.5}
.character-example>span:last-child{color:var(--red)}
.character-neighbors{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.6rem;margin:1.2rem 0}
.character-neighbors a{display:flex;flex-direction:column;gap:.4rem;padding:1rem;border:1px solid var(--line);background:#fff}
.character-neighbors span{font:2rem/1.2 var(--cjk)}
.character-neighbors b{font-size:.75rem}
.character-neighbors small{font-size:.72rem;line-height:1.5;color:var(--muted)}
.char-card .char-card-action{font-size:.69rem;color:var(--red);font-weight:760;margin-top:auto}
@media(max-width:860px){.character-reader .article-columns{grid-template-columns:1fr}.character-reader .article-columns .aside-panel{margin-top:0}}
@media(max-width:640px){.character-reader .character-hero-row{display:block}.character-reader .character-display{display:none}.character-reader .character-hero h1{display:flex;align-items:baseline;gap:.8rem;flex-wrap:wrap;margin:.5rem 0}.character-reader .character-hero h1 span:first-child{font-size:1.25em}.character-example{grid-template-columns:1fr auto;gap:.5rem}.character-example>span:first-child{grid-column:1/-1}.character-neighbors{grid-template-columns:1fr}}

/* The studio presents complete names as scannable horizontal rows. */
.results-toolbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin:1rem 0;color:var(--muted);font-size:.78rem}
.results-toolbar>div{display:flex;gap:.5rem;flex-wrap:wrap}
.results-toolbar .button{min-height:36px;padding:.4rem .7rem;font-size:.72rem}
.result-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:.75rem;margin-top:0}
.result-row{display:grid;grid-template-columns:minmax(180px,225px) minmax(0,1fr) 132px;gap:1.2rem 1.5rem;align-items:start;padding:1.25rem 1.4rem;box-shadow:none}
.result-row .name-print.large{font-size:clamp(2.6rem,3.8vw,4.25rem);margin:.4rem 0 .15rem;white-space:normal;overflow-wrap:anywhere}
.result-identity{min-width:0;display:flex;flex-direction:column}
.result-index{font-size:.64rem;line-height:1.4;font-weight:800;color:var(--red);text-transform:uppercase;letter-spacing:.09em}
.result-pinyin{font-size:.81rem}
.result-boundary{font-size:.68rem;color:var(--muted);margin-top:.25rem}
.result-summary{min-width:0}
.result-row h3{font:1.4rem/1.2 var(--serif);margin:.08rem 0 .35rem}
.result-row p{font-size:.79rem;line-height:1.6;margin:.4rem 0}
.result-row .match-reason{color:var(--muted)}
.result-row .study-preview{border-left:2px solid var(--red);padding-left:.75rem;margin:.65rem 0;color:#333}
.result-row .character-mini{border-top:0;padding:0;margin:.8rem 0 0}
.result-actions{display:flex;flex-direction:column;gap:.4rem;align-items:stretch}
.result-actions .button{min-height:38px;padding:.4rem .6rem;font-size:.72rem}
.result-exclude{background:none;border:0;color:var(--muted);font-size:.72rem;text-decoration:underline;text-underline-offset:3px;padding:.35rem;cursor:pointer}
.result-exclude:hover{color:var(--red)}
.result-row .result-explanation{grid-column:1/-1;margin:0;padding:.45rem 0 0;border-top:1px solid var(--line)}
.result-row .result-explanation summary{padding:.35rem 0;color:var(--red);font-size:.78rem}
.result-explanation-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem 2rem;margin-top:.8rem}
.result-explanation-grid section{border-top:1px solid var(--line);padding:.7rem 0}
.result-explanation-grid h4{font-size:.78rem;letter-spacing:.04em;text-transform:uppercase;margin:0 0 .35rem}
.result-explanation-grid p{font-size:.78rem;margin:.35rem 0}
.result-character-list{list-style:none;padding:0;margin:0}
.result-character-list li{display:grid;grid-template-columns:1.6rem 3.2rem 1fr;gap:.4rem .6rem;align-items:baseline;font-size:.75rem;padding:.4rem 0;border-bottom:1px solid var(--line)}
.result-character-list li>span:first-child{font:1.3rem var(--cjk)}
.result-character-list li>a{grid-column:3;font-size:.7rem}
.result-explanation a{color:var(--red);text-decoration:underline;text-underline-offset:3px}
.results-more{display:flex;justify-content:center;margin:1.4rem 0}
.results-more .button{min-width:220px}
@media(max-width:860px){.result-row{grid-template-columns:minmax(150px,190px) minmax(0,1fr);gap:1rem}.result-actions{grid-column:2;flex-direction:row;flex-wrap:wrap}.result-row .result-explanation{grid-column:1/-1}}
@media(max-width:640px){.result-row{grid-template-columns:1fr;padding:1rem}.result-identity{display:grid;grid-template-columns:1fr auto;align-items:end;column-gap:.8rem}.result-index,.result-identity .name-print{grid-column:1/-1}.result-boundary{grid-column:1/-1}.result-summary,.result-actions,.result-row .result-explanation{grid-column:1}.result-actions{display:flex;flex-direction:row}.result-explanation-grid{grid-template-columns:1fr}.results-toolbar{align-items:start}.result-row h3{font-size:1.3rem}}

.compare-questions{border-top:1px solid var(--line);margin-top:1.15rem;padding-top:.8rem}
.compare-questions h3{font:1.15rem/1.3 var(--serif);margin:.2rem 0 .8rem}
.compare-questions .field{margin:.8rem 0}
.compare-questions .field input{width:100%;min-height:42px;border:1px solid var(--line);background:#fff;padding:.55rem .7rem;color:var(--ink)}
.compare-questions .field input:focus{border-color:var(--red);outline:3px solid rgba(189,27,32,.18);outline-offset:1px}
.compare-questions textarea{min-height:82px}
.compare-checks{border:1px solid var(--line);padding:.65rem .8rem .8rem;margin:.9rem 0}
.compare-checks legend{font-size:.72rem;font-weight:760;padding:0 .25rem}
.compare-checks label{display:flex;align-items:start;gap:.5rem;font-size:.73rem;line-height:1.4;margin:.55rem 0;cursor:pointer}
.compare-checks input{accent-color:var(--red);margin:.2rem 0 0;flex:none}

.meaning-context-link,.guide-feature,.path-method{display:block;border:1px solid var(--line);background:#fafafa;padding:1.25rem 1.5rem}
.meaning-context-link{max-width:840px;margin:-.3rem 0 2rem}
.meaning-context-link p{margin:0 0 .55rem;font-size:.86rem;color:var(--muted)}
.guide-feature{max-width:870px;margin:0 0 3.5rem;border-left:3px solid var(--red)}
.guide-feature h2{font:clamp(1.55rem,2.7vw,2.3rem)/1.2 var(--serif);margin:.35rem 0}
.guide-feature p{font-size:.86rem;color:var(--muted);margin:.3rem 0 .8rem}
.guide-feature:hover{background:#f6f6f5;border-color:var(--red)}
.meaning-paths-page .page-lead{max-width:920px}
.path-nav{display:flex;gap:.45rem;flex-wrap:wrap;margin:2rem 0 2.5rem}
.path-nav a{border:1px solid var(--line);padding:.42rem .7rem;font-size:.72rem;font-weight:700}
.path-nav a:hover{color:#fff;background:var(--ink);border-color:var(--ink)}
.path-method{max-width:920px;margin:0 0 3.4rem}
.path-method h2{font:1.55rem var(--serif);margin:0 0 .5rem}
.path-method p{font-size:.84rem;color:var(--muted);margin:0;line-height:1.75}
.meaning-path{border-top:2px solid var(--ink);padding:2.3rem 0 3.5rem;scroll-margin-top:2rem}
.path-heading{max-width:870px}
.path-heading h2{font:clamp(1.9rem,3vw,2.75rem)/1.13 var(--serif);letter-spacing:-.03em;margin:.45rem 0 .7rem}
.path-heading p{font-size:.95rem;line-height:1.75;color:#444}
.path-contrasts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;margin:1.5rem 0}
.path-contrasts>div{border:1px solid var(--line);background:#fff;padding:1rem 1.1rem;display:flex;flex-direction:column;align-items:start}
.path-contrasts span{font:2.8rem var(--cjk);line-height:1.2}
.path-contrasts b{font-size:.77rem;margin-top:.35rem}
.path-contrasts p{font-size:.77rem;color:var(--muted);margin:.45rem 0 .8rem;flex:1}
.path-contrasts a{font-size:.69rem;color:var(--red);text-decoration:underline;text-underline-offset:3px}
.path-decision{display:grid;grid-template-columns:1fr 1fr;gap:2rem;border-block:1px solid var(--line);padding:1rem 0;margin:1.3rem 0}
.path-decision p{font-size:.83rem;color:#454545;margin:0}
.path-decision b{color:var(--ink)}
.path-examples{margin:1.35rem 0;max-width:720px}
.path-examples h3{font:1.2rem var(--serif);margin:0 0 .5rem}
.path-examples a{display:flex;gap:1rem;align-items:center;padding:.5rem .7rem;border:1px solid var(--line);margin:.35rem 0;background:#fff}
.path-examples a:hover{border-color:var(--red)}
.path-examples a>span:first-child{font:1.6rem var(--cjk);min-width:110px}
.path-examples a>span:nth-child(2){font-size:.78rem;flex:1}
.path-examples small{display:block;color:var(--muted)}
.path-examples a>span:last-child{color:var(--red)}
.path-endnote{font-size:.76rem;color:var(--muted);max-width:840px}
@media(max-width:760px){.path-contrasts{grid-template-columns:1fr}.path-contrasts>div{display:grid;grid-template-columns:3.5rem 1fr;gap:.2rem .8rem}.path-contrasts span{grid-row:1/4}.path-contrasts p{margin:.1rem 0}.path-contrasts a{grid-column:2}.path-decision{grid-template-columns:1fr;gap:.6rem}}
@media(max-width:420px){.path-examples a>span:first-child{min-width:0;font-size:1.35rem}.path-examples a{gap:.5rem}}

.practice-block{background:#fafafa;border:1px solid var(--line);border-left:3px solid var(--red);padding:1.4rem 1.7rem!important;margin-top:2rem}
.practice-block h2{margin:.35rem 0 .65rem}
.practice-block>p{margin:.35rem 0}
.practice-block ol{padding-left:1.25rem;margin:1rem 0}
.practice-block li{font-size:.87rem;line-height:1.7;color:#434343;margin:.6rem 0}
.practice-takeaway{border-top:1px solid var(--line);padding-top:.8rem}

.result-explanation-grid .result-study{grid-column:1/-1;background:#faf9f7;border-left:3px solid var(--red);padding:1rem 1.15rem}
.result-explanation-grid .result-study p{max-width:850px}
.result-explanation-grid section{scroll-margin-top:2rem}
.result-explanation-grid section>p:first-of-type{margin-top:.4rem}
.starter-guide{max-width:1050px;margin:0 auto 5rem;padding:0 2rem}
.starter-guide .reading-header{max-width:900px}
.starter-guide .reading-header h1{max-width:830px}
.starter-nav{display:flex;gap:.5rem;flex-wrap:wrap;border-block:1px solid var(--line);padding:1rem 0;margin:2rem 0 1rem}
.starter-nav a{padding:.45rem .7rem;font-size:.75rem;font-weight:700;border:1px solid var(--line)}
.starter-nav a:hover,.starter-nav a:focus-visible{border-color:var(--red);color:var(--red)}
.starter-section{display:grid;grid-template-columns:50px minmax(0,1fr);gap:1.5rem;padding:2.4rem 0;border-bottom:1px solid var(--line);scroll-margin-top:2rem}
.starter-section>.margin-number{position:static;font-size:.74rem;color:var(--red);font-weight:800;padding-top:.5rem}
.starter-section h2{font:clamp(1.6rem,3vw,2.3rem)/1.18 var(--serif);margin:0 0 1rem;letter-spacing:-.02em}
.starter-section p,.starter-section li{font-size:.92rem;line-height:1.8;max-width:780px;color:#373737}
.starter-section a.text-link{color:var(--red)}
.name-anatomy{display:grid;grid-template-columns:1fr 2fr;gap:.65rem;margin:1.5rem 0;max-width:740px}
.name-anatomy>div{display:flex;flex-direction:column;border:1px solid var(--line);border-top:3px solid var(--red);background:#fff;padding:1.1rem}
.name-anatomy b{font:clamp(2.2rem,5vw,3.5rem)/1.2 var(--cjk);color:var(--ink)}
.name-anatomy span{font-size:.82rem;font-weight:750;margin-top:.45rem}
.name-anatomy small{font-size:.73rem;color:var(--muted);line-height:1.5;margin-top:.25rem}
.meaning-layers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem;margin:1.6rem 0}
.meaning-layers>div{border:1px solid var(--line);padding:1.2rem;background:#fafafa}
.meaning-layers span:first-child{font-size:.64rem;letter-spacing:.08em;font-weight:800;color:var(--red)}
.meaning-layers h3{font:1.2rem/1.25 var(--serif);margin:.7rem 0}
.meaning-layers p{font-size:.79rem;line-height:1.7;margin:0}
.choice-steps{padding-left:1.35rem;max-width:770px}
.choice-steps li{margin:.75rem 0;padding-left:.3rem}
.starter-actions{display:flex;flex-wrap:wrap;gap:.65rem;margin:1.6rem 0}
.starter-guide>.source-list{margin-top:2rem}
.name-study{border-left:3px solid var(--red);padding-left:1.3rem!important;background:#fafafa;padding-block:1.4rem!important;padding-right:1.3rem!important}
.name-study h3{font:1.1rem/1.3 var(--serif);margin:1rem 0 .3rem}
.library-studies{display:grid;grid-template-columns:minmax(200px,300px) minmax(0,1fr);gap:2rem;border-block:2px solid var(--ink);padding:1.5rem 0 2rem;margin:1rem 0 2.5rem}
.library-studies h2{font:clamp(1.45rem,2.5vw,2rem)/1.2 var(--serif);margin:.4rem 0 .6rem}
.library-studies p{font-size:.83rem;line-height:1.7;color:var(--muted)}
.library-study-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.4rem}
.library-study-links a{display:grid;grid-template-columns:auto 1fr;column-gap:.5rem;align-items:center;border:1px solid var(--line);padding:.55rem .7rem;background:#fff}
.library-study-links a:hover,.library-study-links a:focus-visible{border-color:var(--red)}
.library-study-links a>span{font:1.25rem var(--cjk);grid-row:1/3}
.library-study-links b{font-size:.7rem}
.library-study-links small{font-size:.64rem;color:var(--muted)}
@media(max-width:760px){.starter-guide{padding:0 1rem}.starter-section{grid-template-columns:1fr;gap:.35rem;padding:1.7rem 0}.starter-section>.margin-number{padding:0}.meaning-layers{grid-template-columns:1fr}.name-anatomy{grid-template-columns:1fr 1.6fr}}
@media(max-width:760px){.library-studies{grid-template-columns:1fr;gap:.5rem}.library-study-links{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:420px){.name-anatomy{grid-template-columns:1fr}.starter-nav a{flex:1 1 42%;text-align:center}}

/* Long-form editorial work uses the same paper, ink, and red-rule system. */
.guide-feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.7rem;margin:0 0 3.5rem}
.guide-feature-grid .guide-feature{max-width:none;margin:0;min-width:0;padding:1.3rem;border-left:1px solid var(--line);border-top:3px solid var(--red)}
.guide-feature-grid .guide-feature h2{font:clamp(1.35rem,2vw,1.75rem)/1.18 var(--serif)}
.guide-feature-grid .guide-feature p{line-height:1.65}
.comparison-lab{max-width:1120px;padding:0 clamp(20px,4vw,64px) 6rem;margin:0 auto}
.comparison-lab .page-lead{max-width:890px}
.comparison-method{display:grid;grid-template-columns:minmax(0,240px) minmax(0,1fr);gap:1rem 2rem;padding:1.4rem 0;border-block:2px solid var(--ink);margin:2rem 0}
.comparison-method h2{font:1.65rem/1.2 var(--serif);margin:0}
.comparison-method ol{margin:0;padding-left:1.35rem}
.comparison-method li,.comparison-method p{font-size:.85rem;line-height:1.7;margin:0 0 .55rem}
.comparison-method p{grid-column:2;color:var(--muted)}
.comparison-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.4rem;margin:2rem 0 3.5rem}
.comparison-nav a{border:1px solid var(--line);padding:.65rem .8rem;font-size:.76rem;line-height:1.5}
.comparison-nav a:hover,.comparison-nav a:focus-visible{border-color:var(--red);color:var(--red)}
.comparison-case{border-top:2px solid var(--ink);padding:2.2rem 0 3rem;scroll-margin-top:1.5rem}
.comparison-case h2{font:clamp(1.65rem,3vw,2.4rem)/1.16 var(--serif);letter-spacing:-.025em;max-width:780px;margin:.5rem 0 1.3rem}
.comparison-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}
.comparison-option{display:flex;flex-direction:column;align-items:flex-start;background:#fff;border:1px solid var(--line);padding:1.3rem 1.5rem}
.comparison-option-label{font-size:.65rem;color:var(--red);letter-spacing:.12em;font-weight:800}
.comparison-option .name-print{font-size:clamp(2.2rem,4vw,3.2rem);margin:.55rem 0 .1rem}
.comparison-option>b{font-size:.81rem}
.comparison-option p{font-size:.83rem;line-height:1.7;margin:.9rem 0}
.comparison-option ul{width:100%;border-top:1px solid var(--line);padding:.65rem 0 0;margin:auto 0 .9rem;list-style:none}
.comparison-option li{font-size:.73rem;line-height:1.7;margin:.2rem 0}
.comparison-option li span{font:1.15rem var(--cjk)}
.comparison-option li a{color:var(--red);text-decoration:underline;text-underline-offset:2px;margin-left:.35rem}
.comparison-option>.text-link{font-size:.74rem}
.comparison-verdict{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem;border-block:1px solid var(--line);margin:1rem 0 .7rem;padding:1rem 0}
.comparison-verdict p,.comparison-caution{font-size:.83rem;line-height:1.7;margin:0}
.comparison-verdict b,.comparison-caution b{color:var(--ink)}
.comparison-caution{color:var(--muted)}
.comparison-next{background:#fafafa;border-left:3px solid var(--red);padding:1.5rem;margin:1rem 0 2rem}
.comparison-next h2{font:1.7rem var(--serif);margin:0 0 .5rem}
.comparison-next p{font-size:.87rem;line-height:1.7;max-width:720px}
.comparison-next .button{margin:.3rem .5rem .2rem 0}
.surname-story{background:#fafafa;border-left:3px solid var(--red);padding:1.5rem!important}
.surname-story h3{font:1.2rem/1.3 var(--serif);margin:1rem 0 .35rem}
.surname-story .story-limit{border-top:1px solid var(--line);padding-top:.85rem}
.story-sources{display:flex;flex-wrap:wrap;gap:.35rem .8rem;font-size:.73rem;margin-top:.9rem}
.story-sources a{color:var(--red);text-decoration:underline;text-underline-offset:2px}
.reading-body .speaker-field-notes{background:#fafafa;border-left:3px solid var(--red);padding:1.5rem 1.7rem;margin:1.5rem 0}
.speaker-field-notes h2{margin:.4rem 0 .7rem}
.speaker-field-notes h3{font:1.2rem/1.3 var(--serif);margin:1.2rem 0 .5rem}
.speaker-field-notes p,.speaker-field-notes li{font-size:.85rem;line-height:1.75}
.speaker-field-notes ol,.speaker-field-notes ul{padding-left:1.3rem}
.speaker-field-notes li{margin:.45rem 0}
.speaker-rounds{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin:1.2rem 0}
.speaker-rounds>div{border:1px solid var(--line);background:#fff;padding:1rem 1.1rem}
.speaker-rounds h3{margin:0 0 .5rem}
.speaker-record{border-top:1px solid var(--line);margin-top:1.2rem;padding-top:.3rem}
.speaker-record a{color:var(--red);text-decoration:underline;text-underline-offset:2px}
@media(max-width:860px){.guide-feature-grid{grid-template-columns:1fr 1fr}.guide-feature-grid .guide-feature:last-child{grid-column:1/-1}}
@media(max-width:640px){.guide-feature-grid,.comparison-options,.comparison-verdict,.comparison-nav,.comparison-method,.speaker-rounds{grid-template-columns:1fr}.guide-feature-grid .guide-feature:last-child,.comparison-method p{grid-column:1}.comparison-lab{padding:0 1rem 4rem}.comparison-option{padding:1rem}.comparison-case{padding:1.6rem 0 2.5rem}.reading-body .speaker-field-notes{padding:1.1rem}}

/* In the dedicated Studio, the explanation list may use the full page width. */
@media(min-width:861px){
  .tool-shell:has(>.tool-main>.studio-form){grid-template-columns:minmax(0,1fr) 280px;row-gap:2rem}
  .tool-shell:has(>.tool-main>.studio-form)>.tool-main{display:contents}
  .tool-shell:has(>.tool-main>.studio-form) .page-lead{grid-column:1;grid-row:1;margin-bottom:0}
  .tool-shell:has(>.tool-main>.studio-form) .studio-form{grid-column:1;grid-row:2}
  .tool-shell:has(>.tool-main>.studio-form) .tool-aside{grid-column:2;grid-row:1/3}
  .tool-shell:has(>.tool-main>.studio-form) .results{grid-column:1/-1;grid-row:3;padding-top:1rem}
}
