*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#FFF8F2;color:#2C2440;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Hiragino Sans GB","Microsoft YaHei",Arial,sans-serif;line-height:1.75;overflow-x:hidden}body.no-scroll{overflow:hidden}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto;display:block}button,input{font:inherit}.masthead{position:fixed;top:0;left:0;right:0;height:72px;background:#FFF8F2;border-bottom:1px solid rgba(26,18,48,.08);z-index:1000}.masthead__inner{max-width:1160px;height:100%;margin:0 auto;padding:0 20px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center}.brand{justify-self:center;display:flex;align-items:center;min-height:44px}.brand__logo{max-height:38px;width:auto}.brand__fallback{font-weight:900;font-size:24px;letter-spacing:.08em;color:#1A1230}.icon-button{width:46px;height:46px;border:1px solid rgba(26,18,48,.12);background:#fff;color:#1A1230;border-radius:14px;display:inline-grid;place-items:center;cursor:pointer}.menu-trigger{justify-self:start;padding:11px}.menu-trigger span{display:block;width:20px;height:2px;background:#1A1230;margin:2px 0;border-radius:2px}.masthead__actions{justify-self:end;display:flex;gap:10px;align-items:center}.search-trigger{font-size:26px;line-height:1}.app-button,.primary-button,.secondary-button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;border-radius:999px;padding:10px 18px;font-weight:800;transition:.2s ease}.app-button,.primary-button{background:linear-gradient(135deg,#6366F1 0%,#E11D8F 55%,#D97706 100%);color:#fff;box-shadow:0 10px 24px rgba(99,102,241,.2)}.secondary-button{background:#fff;color:#1A1230;border:1px solid rgba(26,18,48,.12)}a:hover,.icon-button:hover,.close-button:hover{transform:translateY(-1px)}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid rgba(8,145,178,.35);outline-offset:3px}.chapter-bar{position:fixed;top:72px;left:0;right:0;height:46px;background:#fff;border-bottom:1px solid rgba(26,18,48,.1);z-index:990;display:flex;align-items:center;justify-content:center;gap:34px}.chapter-bar a{height:46px;display:flex;align-items:center;position:relative;color:#5A5270;font-weight:700;font-size:15px}.chapter-bar a.is-active{color:#1A1230}.chapter-bar a.is-active:after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;background:#E11D8F;border-radius:4px 4px 0 0}.site-main{padding-top:118px;min-height:70vh}.container{max-width:1160px;margin:0 auto;padding:0 20px}.section{padding:64px 0}.section.compact{padding:42px 0}.surface{background:#fff;border:1px solid rgba(26,18,48,.1);border-radius:22px;box-shadow:0 14px 34px rgba(26,18,48,.08)}.soft{background:#F3EBE3}.eyebrow{display:inline-block;font-size:13px;font-weight:900;letter-spacing:.14em;color:#E11D8F;text-transform:uppercase;margin-bottom:8px}.page-hero{padding:56px 0 28px}.page-hero__grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);gap:36px;align-items:center}.page-hero h1,.cover-copy h1{margin:0 0 18px;color:#1A1230;font-size:clamp(28px,4vw,34px);line-height:1.25;letter-spacing:-.02em}.lede{font-size:17px;color:#5A5270;max-width:760px;margin:0}.hero-art,.cover-art{min-height:240px;border-radius:22px;background:linear-gradient(135deg,rgba(99,102,241,.12),rgba(225,29,143,.1) 50%,rgba(217,119,6,.12));display:grid;place-items:center;overflow:hidden;border:1px solid rgba(26,18,48,.08)}.hero-art img,.cover-art img{width:100%;max-height:360px;object-fit:contain}.cover{padding:52px 0 40px}.cover-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:34px;align-items:center}.cover-copy{padding:16px 4px}.cover-kicker{writing-mode:vertical-rl;float:left;margin-right:16px;padding:10px 6px;border-left:3px solid #E11D8F;font-weight:900;letter-spacing:.18em;color:#1A1230}.cover-copy p{font-size:17px;color:#5A5270;margin:0 0 24px}.button-row{display:flex;gap:12px;flex-wrap:wrap}.tag-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.tag-card{background:#fff;border:1px solid rgba(26,18,48,.1);border-radius:18px;padding:18px;min-height:150px}.tag-card .dot{width:10px;height:10px;border-radius:50%;display:inline-block;margin-right:8px}.dot.pink{background:#E11D8F}.dot.indigo{background:#6366F1}.dot.cyan{background:#0891B2}.dot.amber{background:#D97706}.tag-card h2,.tag-card h3{font-size:18px;margin:7px 0 8px;color:#1A1230}.tag-card p{font-size:14px;color:#5A5270;margin:0 0 10px}.text-link{font-weight:850;color:#1A1230;border-bottom:1px solid rgba(26,18,48,.25)}.section-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:24px}.section-head h2{margin:0;color:#1A1230;font-size:28px;line-height:1.25}.section-head p{margin:0;color:#5A5270;max-width:640px}.feature-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:24px;align-items:stretch}.feature-copy{padding:28px}.feature-copy p{margin-top:0}.number-list{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-top:20px}.number-item{border-top:1px solid rgba(26,18,48,.1);padding-top:14px}.number-item strong{display:block;color:#E11D8F;font-size:13px;letter-spacing:.1em}.number-item h3{margin:3px 0 4px;font-size:17px;color:#1A1230}.number-item p{margin:0;font-size:14px;color:#5A5270}.masonry-three{display:grid;grid-template-columns:1.1fr .9fr 1fr;gap:18px;align-items:start}.content-card{padding:24px;overflow:hidden}.content-card:nth-child(2){margin-top:32px}.content-card img{border-radius:16px;margin-bottom:18px;max-height:220px;object-fit:cover;width:100%}.content-card h3{margin:0 0 8px;font-size:23px;color:#1A1230}.content-card p{margin:0 0 12px;color:#5A5270}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.step{padding:20px;background:#fff;border-radius:18px;border:1px solid rgba(26,18,48,.1)}.step .step-no{display:inline-grid;place-items:center;width:34px;height:34px;border-radius:10px;background:#1A1230;color:#fff;font-weight:900}.step h3{margin:12px 0 6px;color:#1A1230}.step p{margin:0;color:#5A5270;font-size:14px}.theme-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.theme-tile{padding:22px;background:#fff;border:1px solid rgba(26,18,48,.1);border-radius:18px;min-height:160px}.theme-tile:nth-child(2),.theme-tile:nth-child(5){min-height:200px}.theme-tile h3{margin:0 0 8px;color:#1A1230}.theme-tile p{margin:0 0 12px;color:#5A5270}.shelf-list{background:#fff;border-radius:22px;border:1px solid rgba(26,18,48,.1);overflow:hidden}.shelf-row{display:grid;grid-template-columns:100px 1fr auto;gap:18px;align-items:center;padding:20px 22px;border-bottom:1px solid rgba(26,18,48,.09)}.shelf-row:last-child{border-bottom:0}.shelf-row .shelf-label{font-weight:900;color:#6366F1}.shelf-row h3{margin:0 0 4px;color:#1A1230}.shelf-row p{margin:0;color:#5A5270;font-size:14px}.rank-list{display:grid;gap:12px}.rank-item{display:grid;grid-template-columns:90px 1fr;gap:20px;padding:20px 22px;background:#fff;border:1px solid rgba(26,18,48,.1);border-radius:18px;align-items:start}.rank-no{font-size:40px;line-height:1;font-weight:950;color:#E11D8F}.rank-item:nth-child(2) .rank-no{color:#6366F1}.rank-item:nth-child(3) .rank-no{color:#0891B2}.rank-item:nth-child(4) .rank-no{color:#D97706}.rank-item:nth-child(5) .rank-no{color:#059669}.rank-item h3{margin:0 0 5px;color:#1A1230}.rank-item p{margin:0;color:#5A5270}.timeline{position:relative;margin-left:14px;padding-left:30px}.timeline:before{content:"";position:absolute;left:5px;top:8px;bottom:8px;width:2px;background:rgba(99,102,241,.25)}.timeline-item{position:relative;padding:0 0 26px}.timeline-item:before{content:"";position:absolute;left:-30px;top:7px;width:12px;height:12px;border-radius:50%;background:#6366F1;box-shadow:0 0 0 6px #FFF8F2}.timeline-item h3{margin:0;color:#1A1230}.timeline-item p{margin:6px 0 0;color:#5A5270}.status{display:inline-block;padding:4px 9px;border-radius:999px;background:#fff;border:1px solid rgba(26,18,48,.12);font-size:12px;font-weight:800;color:#5A5270}.app-panel{display:grid;grid-template-columns:.9fr 1.1fr;gap:26px;padding:28px;align-items:center}.app-visual{display:flex;align-items:center;justify-content:center;gap:16px;min-height:260px;background:#F3EBE3;border-radius:18px;overflow:hidden}.app-visual img{max-height:320px;object-fit:contain}.app-icon{width:72px!important;height:72px!important;border-radius:18px}.app-copy h2{margin:0 0 12px;color:#1A1230}.app-copy p{color:#5A5270}.article-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.article-card{padding:24px;background:#fff;border:1px solid rgba(26,18,48,.1);border-radius:18px}.article-card h2,.article-card h3{margin:0 0 8px;color:#1A1230}.article-card p{margin:0;color:#5A5270}.prose{max-width:850px}.prose h2{margin:38px 0 10px;color:#1A1230;font-size:24px}.prose h3{margin:28px 0 8px;color:#1A1230;font-size:19px}.prose p{margin:0 0 16px}.prose ul{padding-left:1.2em}.prose li{margin:8px 0}.notice{padding:18px 20px;border-left:4px solid #E11D8F;background:#fff;border-radius:0 16px 16px 0;color:#5A5270}.editor-note{display:inline-block;background:#1A1230;color:#fff;border-radius:999px;padding:5px 10px;font-size:12px;font-weight:850;margin-bottom:10px}.faq-list{display:grid;gap:14px}.faq-item{background:#fff;border:1px solid rgba(26,18,48,.1);border-radius:18px;padding:22px}.faq-item h2{font-size:18px;margin:0 0 8px;color:#1A1230}.faq-item p{margin:0;color:#5A5270}.contact-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.contact-card{padding:24px;background:#fff;border-radius:18px;border:1px solid rgba(26,18,48,.1)}.contact-card h2{margin:0 0 8px;color:#1A1230}.contact-card p{margin:0;color:#5A5270}.site-footer{background:#1A1230;color:#F7EFE6;margin-top:70px;padding:50px 0 calc(54px + env(safe-area-inset-bottom))}.footer-inner{max-width:1160px;margin:0 auto;padding:0 20px}.footer-brand{max-width:580px}.footer-logo-link{display:inline-block}.footer-logo{max-height:38px;width:auto;filter:brightness(0) invert(1)}.footer-brand strong{font-size:25px}.footer-en{font-size:12px;letter-spacing:.18em;opacity:.72}.footer-columns{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;margin:34px 0}.footer-columns section{display:flex;flex-direction:column;gap:7px}.footer-columns h2{font-size:15px;margin:0 0 6px;color:#fff}.footer-columns a{color:#F7EFE6;opacity:.78}.footer-columns a:hover{opacity:1}.footer-note{border-top:1px solid rgba(255,255,255,.14);padding-top:20px;font-size:13px;opacity:.72}.overlay{position:fixed;inset:0;background:rgba(26,18,48,.48);z-index:1200;opacity:0;visibility:hidden;pointer-events:none;transition:.2s}.overlay.is-visible{opacity:1;visibility:visible;pointer-events:auto}.book-menu,.search-layer{position:fixed;left:50%;top:50%;transform:translate(-50%,-48%) scale(.98);z-index:1210;background:#FFF8F2;border-radius:22px;box-shadow:0 28px 80px rgba(26,18,48,.26);opacity:0;visibility:hidden;pointer-events:none;transition:.2s}.book-menu.is-visible,.search-layer.is-visible{opacity:1;visibility:visible;pointer-events:auto;transform:translate(-50%,-50%) scale(1)}.book-menu{width:min(840px,calc(100% - 32px));max-height:calc(100vh - 42px);overflow:auto}.book-menu__head{position:sticky;top:0;z-index:2;background:#FFF8F2;display:flex;align-items:center;justify-content:space-between;padding:18px 20px;border-bottom:1px solid rgba(26,18,48,.1)}.book-brand{display:flex;align-items:center;gap:12px}.book-brand img{max-height:34px;width:auto}.book-brand div{display:flex;flex-direction:column}.book-brand strong{color:#1A1230}.book-brand span{font-size:11px;letter-spacing:.16em;color:#8A8298}.close-button{width:44px;height:44px;border:1px solid rgba(26,18,48,.12);background:#fff;color:#1A1230;border-radius:14px;font-size:24px;cursor:pointer}.book-spread{display:grid;grid-template-columns:1fr 1fr}.book-page{padding:22px 26px}.book-page:first-child{border-right:1px solid rgba(26,18,48,.1)}.menu-group+.menu-group{margin-top:24px}.menu-group h2{font-size:13px;letter-spacing:.15em;color:#E11D8F;margin:0 0 10px}.menu-group a{display:block;padding:11px 0;border-bottom:1px solid rgba(26,18,48,.08)}.menu-group strong{display:block;color:#1A1230}.menu-group span{display:block;color:#5A5270;font-size:13px;margin-top:2px}.search-layer{width:min(620px,calc(100% - 32px));padding:24px}.search-card__head{display:flex;align-items:start;justify-content:space-between;gap:20px}.search-card__head h2{margin:0 0 14px;color:#1A1230;font-size:25px}.search-card label{display:block;font-weight:800;color:#1A1230;margin:10px 0 6px}.search-card input{width:100%;height:52px;padding:0 16px;border-radius:14px;border:1px solid rgba(26,18,48,.15);background:#fff;color:#1A1230}.search-presets{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:14px}.search-presets a{min-height:44px;display:grid;place-items:center;background:#fff;border:1px solid rgba(26,18,48,.1);border-radius:14px;font-weight:750}.search-tip{font-size:13px;color:#8A8298;margin:12px 0 0}.mobile-bottom{display:none}.visual-slot{min-height:220px;border-radius:18px;border:1px dashed rgba(26,18,48,.18);background:linear-gradient(135deg,rgba(99,102,241,.06),rgba(225,29,143,.05));overflow:hidden}.visual-slot img{width:100%;height:100%;object-fit:cover}.index-notes{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.index-notes article{padding:24px}.index-notes h2{font-size:22px;margin:0 0 8px;color:#1A1230}.index-notes p{margin:0;color:#5A5270}.pill-row{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0}.pill{display:inline-block;padding:5px 10px;border-radius:999px;background:#F3EBE3;color:#5A5270;font-size:12px;font-weight:800}.index-columns{display:grid;grid-template-columns:1fr 1fr;gap:18px}.index-columns>article{padding:24px}.index-columns h2{margin-top:0;color:#1A1230}.compact-list{display:grid;gap:12px}.compact-list a{padding:14px 0;border-bottom:1px solid rgba(26,18,48,.1)}.compact-list a:last-child{border-bottom:0}.compact-list strong{display:block;color:#1A1230}.compact-list span{font-size:13px;color:#5A5270}.mini-note{font-size:13px;color:#8A8298}
@media(max-width:900px){.tag-grid{grid-template-columns:repeat(2,1fr)}.steps{grid-template-columns:repeat(2,1fr)}.theme-grid{grid-template-columns:repeat(2,1fr)}.masonry-three{grid-template-columns:1fr 1fr}.content-card:nth-child(2){margin-top:0}.content-card:nth-child(3){grid-column:1/-1}.page-hero__grid,.cover-grid,.feature-grid,.app-panel{grid-template-columns:1fr}.hero-art,.cover-art{min-height:220px}.article-grid,.index-notes,.index-columns{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.masthead__inner{padding:0 16px;grid-template-columns:52px 1fr 74px}.masthead__actions{gap:0}.desktop-search{display:none}.app-button{padding:8px 12px;font-size:13px;white-space:nowrap}.brand__logo{max-width:150px;max-height:34px}.brand__fallback{font-size:20px}.chapter-bar{display:none}.site-main{padding-top:72px}.section{padding:46px 0}.page-hero{padding-top:36px}.container{padding:0 16px}.cover{padding-top:34px}.cover-kicker{float:none;writing-mode:horizontal-tb;display:inline-block;border-left:0;border-bottom:3px solid #E11D8F;padding:0 0 4px;margin:0 0 12px}.tag-grid,.steps,.theme-grid,.masonry-three,.article-grid,.contact-grid,.index-notes,.index-columns{grid-template-columns:1fr}.content-card:nth-child(3){grid-column:auto}.number-list{grid-template-columns:1fr}.section-head{align-items:start;flex-direction:column}.shelf-row{grid-template-columns:1fr}.shelf-row .shelf-label{font-size:13px}.rank-item{grid-template-columns:58px 1fr}.rank-no{font-size:32px}.book-menu{width:calc(100% - 24px);max-height:calc(100vh - 24px)}.book-spread{grid-template-columns:1fr}.book-page{padding:18px}.book-page:first-child{border-right:0;border-bottom:1px solid rgba(26,18,48,.1)}.search-layer{width:calc(100% - 24px);padding:18px}.search-presets{grid-template-columns:repeat(2,1fr)}.footer-columns{grid-template-columns:1fr 1fr}.site-footer{padding-bottom:calc(80px + env(safe-area-inset-bottom))}.mobile-bottom{display:grid;position:fixed;left:0;right:0;bottom:0;z-index:900;grid-template-columns:repeat(5,1fr);height:calc(50px + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);background:#fff;border-top:1px solid rgba(26,18,48,.1);box-shadow:0 -8px 24px rgba(26,18,48,.06)}.mobile-bottom a{display:grid;place-items:center;font-size:12px;font-weight:800;color:#5A5270;min-height:50px}.mobile-bottom a.is-active{color:#E11D8F}.overlay{z-index:1200}.book-menu,.search-layer{z-index:1210}}
@media(max-width:420px){.footer-columns{grid-template-columns:1fr}.masthead__inner{grid-template-columns:50px 1fr 68px}.brand__fallback{font-size:18px}.app-button{font-size:12px;padding:8px 9px}.search-presets{grid-template-columns:1fr}}
