:root{--paper:#FFF8F2;--white:#FFFFFF;--soft:#F3EBE3;--ink:#1A1230;--text:#2C2440;--muted:#5A5270;--quiet:#8A8298;--pink:#E11D8F;--indigo:#6366F1;--cyan:#0891B2;--amber:#D97706;--mint:#059669;--line:rgba(26,18,48,.10);--shadow:0 14px 34px rgba(26,18,48,.08)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;line-height:1.75;overflow-x:hidden}body.locked{overflow:hidden}a{color:inherit;text-decoration:none}img{display:block;max-width:100%;height:auto;object-fit:contain}.masthead{position:fixed;z-index:80;top:0;left:0;right:0;height:72px;background:rgba(255,248,242,.97);border-bottom:1px solid var(--line);backdrop-filter:blur(10px)}.masthead-inner{width:min(1160px,calc(100% - 32px));height:100%;margin:auto;display:grid;grid-template-columns:1fr auto 1fr;align-items:center}.square-btn,.text-btn,.close-btn{border:0;background:none;color:var(--ink);font:inherit;cursor:pointer}.square-btn{width:44px;height:44px;border:1px solid var(--line);border-radius:12px;font-size:20px}.brand{justify-self:center;display:flex;align-items:center;min-height:44px}.brand-logo{max-height:38px;max-width:220px}.brand-text{font-size:22px;font-weight:800;letter-spacing:.08em;color:var(--ink)}.head-actions{justify-self:end;display:flex;align-items:center;gap:10px}.text-btn,.app-mini{min-height:44px;display:inline-flex;align-items:center;justify-content:center;padding:0 14px;border-radius:999px}.text-btn{border:1px solid var(--line);background:#fff}.app-mini{color:#fff;background:linear-gradient(135deg,#6366F1 0%,#E11D8F 55%,#D97706 100%);font-weight:700}.chapter-bar{position:fixed;top:72px;left:0;right:0;height:46px;z-index:70;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:center;gap:34px}.chapter-bar a{height:46px;display:flex;align-items:center;position:relative;font-size:15px;color:var(--muted)}.chapter-bar a.active{color:var(--ink);font-weight:700}.chapter-bar a.active:after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;background:var(--pink);border-radius:3px 3px 0 0}main{padding-top:118px}.wrap{width:min(1160px,calc(100% - 32px));margin:auto}.section{padding:58px 0}.section+.section{border-top:1px solid var(--line)}.kicker{font-size:13px;letter-spacing:.16em;text-transform:uppercase;color:var(--pink);font-weight:800}.hero{padding:64px 0 50px}.hero-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr);gap:48px;align-items:center}.vertical-tag{writing-mode:vertical-rl;letter-spacing:.24em;font-weight:800;color:var(--pink);font-size:13px;float:left;margin:7px 20px 0 0}.hero h1,.page-hero h1{font-size:clamp(28px,4vw,34px);line-height:1.25;margin:8px 0 20px;color:var(--ink);letter-spacing:-.02em}.hero p,.page-hero p{font-size:16px;color:var(--muted)}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}.btn-primary,.btn-secondary{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 20px;border-radius:999px;font-weight:700}.btn-primary{background:linear-gradient(135deg,#6366F1 0%,#E11D8F 55%,#D97706 100%);color:#fff}.btn-secondary{background:#fff;color:var(--ink);border:1px solid var(--line)}.hero-media img{max-height:360px;margin:auto}.chips{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.chip-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:18px;box-shadow:var(--shadow);min-height:140px}.dot{width:10px;height:10px;border-radius:50%;display:inline-block;margin-right:8px}.dot.pink{background:var(--pink)}.dot.indigo{background:var(--indigo)}.dot.cyan{background:var(--cyan)}.dot.amber{background:var(--amber)}.chip-card h3,.card h3{margin:4px 0 8px;color:var(--ink);font-size:18px}.chip-card p,.card p{margin:0;color:var(--muted);font-size:14px}.text-link{display:inline-block;margin-top:10px;font-weight:700;color:var(--indigo)}.split{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.8fr);gap:38px;align-items:center}.split.reverse{grid-template-columns:minmax(280px,.8fr) minmax(0,1fr)}.split img{max-height:340px;margin:auto}.section-title{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:24px}.section-title h2{margin:0;color:var(--ink);font-size:28px}.section-title p{margin:0;color:var(--muted);max-width:620px}.number-list{display:grid;gap:10px;margin-top:22px}.number-row{display:grid;grid-template-columns:54px 1fr;gap:14px;align-items:start;padding:16px 0;border-top:1px solid var(--line)}.number-row b{font-size:26px;color:var(--pink);line-height:1}.cards-3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;align-items:start}.card{background:#fff;border:1px solid var(--line);border-radius:20px;padding:22px;box-shadow:var(--shadow)}.card img{max-height:220px;margin:0 auto 16px}.cards-3 .card:nth-child(2){margin-top:28px}.cards-3 .card:nth-child(3){margin-top:10px}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:24px}.step{background:#fff;border:1px solid var(--line);border-radius:18px;padding:20px}.step span{display:block;font-weight:900;color:var(--indigo);font-size:24px}.theme-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.theme-tile{border-radius:20px;padding:22px;color:#fff;min-height:150px}.theme-tile:nth-child(1),.theme-tile:nth-child(5){background:#E11D8F}.theme-tile:nth-child(2){background:#6366F1}.theme-tile:nth-child(3),.theme-tile:nth-child(6){background:#0891B2}.theme-tile:nth-child(4){background:#D97706}.theme-tile:nth-child(2),.theme-tile:nth-child(5){min-height:190px}.theme-tile h3{margin:0 0 8px}.shelf-list{background:#fff;border:1px solid var(--line);border-radius:20px;overflow:hidden}.shelf-item{display:grid;grid-template-columns:120px 1fr auto;gap:18px;align-items:center;padding:20px;border-bottom:1px solid var(--line)}.shelf-item:last-child{border-bottom:0}.shelf-item b{color:var(--ink)}.shelf-item small{color:var(--quiet)}.big-rank{display:grid;gap:12px}.rank-row{display:grid;grid-template-columns:90px 1fr;gap:20px;align-items:center;padding:18px 0;border-bottom:1px solid var(--line)}.rank-no{font-size:52px;font-weight:900;line-height:1;color:var(--pink)}.rank-row:nth-child(2) .rank-no{color:var(--indigo)}.rank-row:nth-child(3) .rank-no{color:var(--cyan)}.rank-row:nth-child(4) .rank-no{color:var(--amber)}.rank-row:nth-child(5) .rank-no{color:var(--mint)}.timeline{position:relative;margin-left:14px;padding-left:30px;border-left:2px solid var(--line)}.timeline article{position:relative;padding:0 0 28px}.timeline article:before{content:"";position:absolute;width:14px;height:14px;border-radius:50%;background:var(--pink);left:-38px;top:8px;box-shadow:0 0 0 5px var(--paper)}.status{display:inline-block;padding:4px 10px;border-radius:999px;background:#fff;border:1px solid var(--line);font-size:12px;color:var(--muted)}.page-hero{padding:58px 0 28px}.page-hero .lead{max-width:800px}.article-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.prose{background:#fff;border:1px solid var(--line);border-radius:20px;padding:26px;box-shadow:var(--shadow)}.prose h2,.prose h3{color:var(--ink);margin-top:0}.prose p{margin:0 0 16px;color:var(--text)}.prose p:last-child{margin-bottom:0}.index-list{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.index-item{background:#fff;border:1px solid var(--line);border-radius:18px;padding:20px}.index-item h2,.index-item h3{margin:0 0 8px;color:var(--ink)}.note{padding:18px 20px;border-left:4px solid var(--pink);background:#fff;border-radius:0 16px 16px 0;color:var(--muted)}.faq-list{display:grid;gap:14px}.faq-item{background:#fff;border:1px solid var(--line);border-radius:18px;padding:22px}.faq-item h2,.faq-item h3{font-size:18px;margin:0 0 10px;color:var(--ink)}.faq-item p{margin:0;color:var(--muted)}.site-footer{background:#1A1230;color:#F7EFE6;margin-top:50px;padding:54px 0 90px}.footer-inner{width:min(1160px,calc(100% - 32px));margin:auto}.footer-brand{display:flex;align-items:center;gap:16px;margin-bottom:34px}.footer-logo{max-height:36px;max-width:180px;filter:brightness(0) invert(1)}.footer-brand strong{display:block;font-size:20px}.footer-brand span{display:block;color:#cfc7dc;font-size:12px;letter-spacing:.12em}.footer-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}.footer-grid h2{font-size:14px;margin:0 0 10px;color:#fff}.footer-grid a{display:block;color:#d9d2e4;padding:4px 0}.footer-note{margin:32px 0 8px;color:#cfc7dc;max-width:820px}.copyright{margin:0;color:#aaa2ba;font-size:13px}.overlay{position:fixed;inset:0;background:rgba(26,18,48,.46);z-index:100;opacity:0;visibility:hidden;pointer-events:none;transition:.2s}.overlay.show{opacity:1;visibility:visible;pointer-events:auto}.book-menu,.search-panel{position:fixed;z-index:110;left:50%;top:50%;transform:translate(-50%,-48%) scale(.98);background:var(--paper);border:1px solid var(--line);box-shadow:0 24px 70px rgba(26,18,48,.24);opacity:0;visibility:hidden;pointer-events:none;transition:.2s}.book-menu.show,.search-panel.show{opacity:1;visibility:visible;pointer-events:auto;transform:translate(-50%,-50%) scale(1)}.book-menu{width:min(840px,calc(100% - 32px));max-height:82vh;overflow:auto;border-radius:22px}.book-head,.search-head{display:flex;align-items:center;justify-content:space-between;padding:18px 22px;border-bottom:1px solid var(--line)}.menu-brand{display:flex;align-items:center;gap:12px;font-weight:800}.menu-brand img{max-height:30px;max-width:150px}.close-btn{width:44px;height:44px;border-radius:50%;border:1px solid var(--line);background:#fff;font-size:24px}.book-pages{display:grid;grid-template-columns:1fr 1fr}.book-page{padding:22px}.book-page:first-child{border-right:1px solid var(--line)}.book-page h2{font-size:14px;color:var(--pink);margin:4px 0 10px}.book-page a{display:block;padding:10px 0;border-bottom:1px dashed var(--line)}.book-page a b{display:block;color:var(--ink)}.book-page a span{display:block;color:var(--muted);font-size:13px}.search-panel{width:min(620px,calc(100% - 32px));border-radius:22px;padding-bottom:22px}.search-head h2{font-size:20px;margin:0;color:var(--ink)}.search-look{margin:22px;border:1px solid var(--line);border-radius:999px;padding:14px 18px;color:var(--quiet);background:#fff}.preset-links{display:flex;flex-wrap:wrap;gap:10px;padding:0 22px}.preset-links a{padding:10px 14px;border-radius:999px;background:#fff;border:1px solid var(--line)}.mobile-bottom{display:none}.btn-primary:hover,.app-mini:hover{filter:brightness(.97)}a:focus-visible,button:focus-visible{outline:3px solid rgba(99,102,241,.3);outline-offset:3px}
@media(max-width:860px){.chapter-bar{display:none}main{padding-top:72px}.hero-grid,.split,.split.reverse{grid-template-columns:1fr}.hero-media{order:2}.chips{grid-template-columns:repeat(2,1fr)}.cards-3,.steps,.theme-grid,.article-grid,.index-list{grid-template-columns:1fr 1fr}.shelf-item{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr}.site-footer{padding-bottom:110px}.mobile-bottom{position:fixed;z-index:90;left:0;right:0;bottom:0;height:calc(50px + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);background:#fff;border-top:1px solid var(--line);display:grid;grid-template-columns:repeat(5,1fr)}.mobile-bottom a{display:flex;align-items:center;justify-content:center;min-height:50px;font-size:13px;color:var(--muted)}.mobile-bottom a.active{color:var(--pink);font-weight:800}.book-menu{max-height:86vh}.book-pages{grid-template-columns:1fr}.book-page:first-child{border-right:0;border-bottom:1px solid var(--line)}}
@media(max-width:600px){.masthead-inner{grid-template-columns:50px 1fr 92px;width:min(100% - 20px,1160px)}.search-trigger{display:none}.head-actions{gap:0}.app-mini{padding:0 12px;font-size:13px}.brand-logo{max-width:150px}.brand-text{font-size:19px}.section,.hero{padding:42px 0}.hero-grid{gap:28px}.hero-actions{flex-direction:column;align-items:stretch}.btn-primary,.btn-secondary{width:100%}.chips,.cards-3,.steps,.theme-grid,.article-grid,.index-list{grid-template-columns:1fr}.cards-3 .card:nth-child(2),.cards-3 .card:nth-child(3){margin-top:0}.footer-grid{grid-template-columns:1fr 1fr}.book-page{padding:18px}.book-menu{width:calc(100% - 20px)}.search-panel{width:calc(100% - 20px)}.section-title{display:block}.section-title p{margin-top:8px}.rank-row{grid-template-columns:64px 1fr}.rank-no{font-size:40px}}
