*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:#0f0a0a;color:#f0e8e8;font:16px/1.75 system-ui,-apple-system,"Microsoft YaHei",sans-serif;overflow-x:hidden}body.panel-open{overflow:hidden}a{color:inherit;text-decoration:none}a:hover{color:#ff7478}button,input{font:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #ff8a8d;outline-offset:3px}img{max-width:100%;height:auto;object-fit:contain;vertical-align:middle}p{margin:0 0 1.25em}h1,h2,h3{line-height:1.3;overflow-wrap:anywhere}h1{font-size:clamp(28px,3.5vw,32px);color:#fff;margin:.38em 0 .7em}h2{font-size:clamp(23px,2.7vw,29px);color:#fff}h3{font-size:18px;color:#fff}.skip{position:fixed;left:10px;top:-80px;background:#fff;color:#111;z-index:300;padding:8px}.skip:focus{top:8px}.site-header{height:72px;position:sticky;top:0;z-index:100;background:rgba(10,7,7,.97);border-bottom:1px solid #c41e3a;backdrop-filter:blur(12px)}.header-inner{max-width:1220px;height:100%;margin:auto;padding:0 18px;display:flex;align-items:center;gap:22px;min-width:0}.brand{display:flex;align-items:center;gap:9px;flex:none;min-width:0}.brand-logo{max-height:38px;max-width:105px;width:auto;object-fit:contain}.brand-fallback{color:#ff4d4f;font-weight:800;font-size:20px;white-space:nowrap}.brand-text{display:grid;line-height:1.25;white-space:nowrap}.brand-text strong{font-size:18px;color:#fff}.brand-text small{font-size:9px;letter-spacing:.13em;color:#c4b0b0}.desktop-links{display:flex;align-items:stretch;gap:clamp(9px,1.6vw,23px);height:100%;margin-left:auto;white-space:nowrap}.desktop-links a{display:flex;align-items:center;border-bottom:2px solid transparent;font-size:14px}.desktop-links a.active{color:#fff;border-color:#ff4d4f}.header-actions{display:flex;align-items:center;gap:6px;margin-left:auto;white-space:nowrap}.header-button,.header-app{height:44px;display:inline-flex;justify-content:center;align-items:center;padding:0 10px;color:#fff;border:1px solid transparent;border-radius:9px;background:none;font-size:14px}.header-button:hover,.header-button[aria-expanded=true]{border-color:#e63946}.header-app{border-color:rgba(230,57,70,.55)}.main-wrap{max-width:1220px;margin:auto;padding:36px 20px 94px;min-height:50vh}.eyebrow,.section-kicker{font-size:12px;letter-spacing:.14em;color:#ff777d;font-weight:700}.breadcrumbs{display:flex;flex-wrap:wrap;gap:9px;color:#c4b0b0;font-size:13px;margin:0 0 20px}.breadcrumbs a{color:#fff}.page-heading{max-width:810px;margin-bottom:22px}.page-heading>p{font-size:17px;color:#c4b0b0}.page-art{max-width:790px;margin-bottom:25px}.page-art:empty{display:none}.content-picture{display:block;width:100%;max-height:220px;object-fit:contain;margin:auto}.reading-grid{display:grid;grid-template-columns:minmax(0,790px) minmax(0,250px);gap:clamp(26px,5vw,75px);align-items:start}.reading-body{min-width:0}.essay-section{border-top:1px solid rgba(230,57,70,.2);padding:26px 0 30px}.essay-section h2{margin:9px 0 19px}.essay-section p{font-size:16px;line-height:1.83}.essay-section .read-next{font-size:14px;color:#c4b0b0}.read-next a,.inline-link{color:#ff8388;text-decoration:underline;text-underline-offset:4px}.reading-side{background:#1a1212;border:1px solid rgba(230,57,70,.18);border-radius:13px;padding:20px;position:sticky;top:95px}.reading-side h2{font-size:19px}.reading-side p{font-size:14px;color:#c4b0b0}.side-link{display:block;border-top:1px solid #493131;padding:12px 0}.faq-list{max-width:820px}.faq-item{padding:20px 0;border-top:1px solid #493131}.faq-item h2{font-size:20px}.hero{display:grid;grid-template-columns:5fr 4fr;align-items:center;gap:clamp(24px,5vw,64px);padding:34px 0 55px;border-bottom:1px solid #4e292b}.hero h1{font-size:clamp(30px,4.3vw,49px);max-width:630px}.hero-copy>p{max-width:600px;font-size:17px;color:#e6dada}.hero-media{position:relative;min-width:0;text-align:center}.hero-image{max-height:300px;width:100%;object-fit:contain;position:relative;z-index:1}.hero-media:has(img) .image-fallback{display:none}.image-fallback{padding:25px 8px;border-top:3px solid #e63946;border-bottom:1px solid #6e3036;color:#ff4d4f;font-size:clamp(28px,5vw,58px);font-weight:800;line-height:1.1;letter-spacing:.11em}.image-fallback span{display:block;color:#c4b0b0;font-size:12px;margin-top:12px}.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:20px}.btn{display:inline-flex;justify-content:center;align-items:center;min-height:44px;padding:11px 19px;color:#fff!important;background:linear-gradient(135deg,#ff4d4f 0%,#c41e3a 100%);border-radius:9px;font-weight:700}.btn-secondary{background:#241818;border:1px solid #e63946}.home-section{padding:50px 0;border-bottom:1px solid #442729}.home-section>h2{margin:7px 0 20px}.home-section .lead{max-width:740px;color:#f0e8e8}.two-col,.split{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:25px;align-items:start}.text-tile{border-left:2px solid #e63946;padding:8px 18px;background:#1a1212}.text-tile h3{margin:0 0 8px}.text-tile p{margin:0}.genre-list>div,.line-list>div{padding:9px 0;border-bottom:1px solid #4e3232;display:flex;justify-content:space-between;gap:15px}.line-list span,.theme-mini span{color:#c4b0b0;font-size:14px}.image-split{align-items:center;grid-template-columns:7fr 5fr}.stacked p{border-left:2px solid #e63946;padding:8px 12px;background:#1a1212}.three-notes{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.three-notes>div{border-top:2px solid #e63946;padding:0 10px}.three-notes h3{font-size:16px}.theme-mini{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.theme-mini p{border-bottom:1px solid #523030;margin:0;padding:10px 0}.theme-mini span{display:block}.quick-links{display:flex;flex-wrap:wrap;gap:12px}.quick-links a{padding:13px 16px;background:#241818;border:1px solid #763839;border-radius:9px}.app-icon img{max-width:72px;max-height:72px;margin:10px 0}.site-footer{background:#080505;border-top:1px solid #642529}.footer-inner{max-width:1220px;margin:auto;padding:36px 20px 30px}.footer-brand{display:flex;gap:12px;align-items:center;margin-bottom:26px}.footer-brand>div{display:grid;line-height:1.4}.footer-brand strong{font-size:20px;color:#fff}.footer-brand small{font-size:10px;letter-spacing:.13em}.footer-nav{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:20px}.footer-group{min-width:0}.footer-group h2{font-size:17px;border-bottom:1px solid #722f34;padding-bottom:10px}.footer-group a{display:block;font-size:14px;color:#e3d2d2;padding:5px 0}.footer-notice{margin-top:30px;max-width:780px;color:#c4b0b0;font-size:14px}.copyright{color:#c4b0b0;font-size:13px;margin:12px 0}.overlay{position:fixed;inset:72px 0 0;background:rgba(0,0,0,.7);z-index:115}.floating-panel{position:fixed;top:72px;z-index:120;background:#1a1212;box-shadow:0 16px 40px rgba(0,0,0,.4);border:1px solid #703338;border-radius:0 0 13px 13px;max-height:calc(100dvh - 82px);overflow-y:auto;overscroll-behavior:contain;padding:22px}.floating-panel[hidden],.overlay[hidden],[hidden]{display:none!important}.menu-panel{left:50%;transform:translateX(-50%);width:min(1220px,100%)}.panel-top{display:flex;justify-content:space-between;align-items:center;gap:14px;border-bottom:1px solid #69373a;padding-bottom:14px;margin-bottom:17px}.panel-top h2{font-size:22px;margin:0}.panel-close{background:#241818;color:#fff;border:1px solid #ba4550;min-width:44px;min-height:44px;border-radius:8px}.menu-groups{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}.menu-group h3,.search-group h3{font-size:16px;color:#ff777d;margin:0 0 8px}.menu-group a{display:block;padding:9px 0;border-top:1px solid #4b3030}.menu-group strong,.menu-group span{display:block}.menu-group span{font-size:12px;color:#c4b0b0;line-height:1.5}.search-panel{right:max(12px,calc((100vw - 1220px)/2));width:min(540px,calc(100vw - 24px))}.search-panel label{display:block;margin-bottom:8px;font-size:14px}.search-panel input{width:100%;min-height:44px;border:1px solid #ad5359;background:#0f0a0a;color:#fff;padding:10px 12px;border-radius:8px}.search-results{margin-top:15px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.search-group a{display:block;padding:8px 0;border-top:1px solid #513030}.search-group a span{display:block;font-size:12px;color:#c4b0b0}.no-match{padding:10px 0;color:#fff}.search-bottom{margin:14px 0 0;color:#c4b0b0;font-size:13px}.search-bottom a{color:#fff;text-decoration:underline}.mobile-bottom{display:none}@media(max-width:1120px){.desktop-links{display:none}.header-actions{margin-left:auto}.menu-groups{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:780px){.reading-grid{grid-template-columns:1fr}.reading-side{position:static}.footer-nav{grid-template-columns:repeat(2,minmax(0,1fr))}.split,.two-col,.hero{grid-template-columns:1fr}.hero{padding-top:18px}.image-split{grid-template-columns:1fr}.menu-groups{grid-template-columns:repeat(2,minmax(0,1fr))}.main-wrap{padding:28px 16px 105px}.home-section{padding:36px 0}.hero-image{max-height:240px}.content-picture{max-height:220px}.mobile-bottom{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));position:fixed;bottom:0;left:0;right:0;z-index:90;background:#0a0707;border-top:1px solid #a02e36;min-height:calc(54px + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom)}.mobile-bottom a{display:flex;align-items:center;justify-content:center;border-top:2px solid transparent;color:#e8dede;font-size:13px;min-height:54px}.mobile-bottom a.active{color:#fff;border-top-color:#ff4d4f}.site-footer{padding-bottom:calc(65px + env(safe-area-inset-bottom))}.floating-panel{max-height:calc(100dvh - 82px - env(safe-area-inset-bottom))}.search-panel{right:0;width:100%;border-radius:0 0 10px 10px}}@media(max-width:480px){.brand-text small{font-size:8px}.brand-logo{max-width:80px;max-height:34px}.header-inner{padding:0 12px;gap:6px}.header-app{display:none}.header-button{padding:0 5px;font-size:13px}.header-actions{gap:2px}.search-trigger{order:2}.menu-trigger{order:1}.brand-text strong{font-size:15px}.brand-fallback{font-size:16px}.three-notes{grid-template-columns:1fr}.theme-mini{grid-template-columns:1fr}.menu-groups{grid-template-columns:1fr}.floating-panel{padding:16px}.search-results{grid-template-columns:1fr}.footer-nav{gap:13px}.genre-list>div,.line-list>div{flex-wrap:wrap}.header-inner{min-width:0}}@media(max-width:340px){.brand-text small{display:none}.brand-logo{max-width:60px}.header-button{font-size:12px}.brand-text strong{font-size:14px}}