:root{--bg:#FFF4F2;--deep:#F3D8D4;--card:#FFF8F6;--soft:#FBE6E2;--ink:#1A1012;--text:#2A1A1C;--muted:#6A3A42;--aux:#8A5A62;--red:#C41E3A;--rose:#E85A72;--apricot:#F4C4B8;--border:rgba(26,16,18,.12);--focus:rgba(196,30,58,.45);--shadow:0 12px 28px rgba(26,16,18,.08)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:system-ui,-apple-system,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;font-size:15px;line-height:1.7;overflow-x:hidden}a{color:inherit;text-decoration:none}button,input{font:inherit}button{cursor:pointer}.wrap{width:min(960px,calc(100% - 32px));margin:0 auto}.site-head{position:fixed;z-index:80;inset:0 0 auto;background:var(--card)}.top-strip{height:20px;background:var(--ink);color:var(--apricot);font-size:12px}.top-strip-inner{height:20px;display:flex;align-items:center;justify-content:space-between}.text-button{border:0;background:transparent;color:var(--apricot);padding:0 6px;height:20px}.brand-row{height:54px;border-bottom:1px solid var(--red)}.brand-inner{height:54px;display:flex;align-items:center;justify-content:space-between;gap:16px}.brand-link{display:flex;align-items:center;min-height:44px}.brand-logo,.footer-logo,.menu-logo{height:24px;width:auto;max-width:180px;object-fit:contain}.brand-text{font-size:16px;font-weight:800;color:var(--ink)}.brand-actions{display:flex;align-items:center;gap:8px}.header-app,.menu-button,.btn{min-height:42px;padding:0 16px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;font-size:14px;white-space:nowrap;transition:.22s ease;box-shadow:0 0 0 0 rgba(196,30,58,0)}.header-app,.btn.primary{background:linear-gradient(135deg,#1A1012 0%,#C41E3A 100%);color:#FFF8F6;border:1px solid transparent}.menu-button,.btn.secondary{background:#FFF8F6;color:var(--ink);border:1px solid var(--red)}.header-app:hover,.header-app:focus-visible,.menu-button:hover,.menu-button:focus-visible,.btn:hover,.btn:focus-visible,.quick-link.is-current:hover,.quick-link.is-current:focus-visible{box-shadow:0 0 18px rgba(196,30,58,.50),0 0 4px rgba(232,90,114,.35);outline:none}.header-app:active,.menu-button:active,.btn:active{box-shadow:0 0 26px rgba(196,30,58,.75)}.quick-nav{height:44px;background:var(--card);border-bottom:1px solid var(--border)}.quick-inner{height:44px;display:flex;align-items:center;gap:14px}.quick-link{height:34px;display:flex;align-items:center;gap:7px;padding:0 12px;border-radius:999px;color:var(--muted);font-size:13px}.quick-link.is-current{background:var(--red);color:var(--card);box-shadow:0 0 12px rgba(196,30,58,.35)}.heart-mark{width:16px;height:14px;display:inline-flex;align-items:center;justify-content:center;color:var(--rose);font-size:16px}.is-current .heart-mark{color:var(--card)}.site-main{padding-top:138px}.article{width:min(960px,calc(100% - 32px));margin:0 auto;padding:40px 0 72px}.hero{padding:28px 0 34px}.index-chip{display:inline-flex;align-items:center;gap:8px;padding:7px 12px;border:1px solid var(--focus);border-radius:999px;color:var(--red);font-size:13px}.hero h1,.page-head h1{font-size:24px;line-height:1.3;color:var(--ink);margin:16px 0 12px}.hero-lead{font-size:18px;font-weight:800;color:var(--red);margin:0 0 12px}.hero p,.page-head p{max-width:780px}.actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}h2{font-size:20px;line-height:1.35;color:var(--ink);margin:0 0 14px}h3{font-size:16px;color:var(--ink);margin:0 0 8px}p{margin:0 0 14px}.section{margin:0 0 28px}.panel{background:var(--card);border:1px solid var(--border);border-radius:16px;padding:22px;box-shadow:var(--shadow)}.warm-column{background:linear-gradient(180deg,var(--soft),var(--card));border-left:3px solid var(--red)}.media-slot{background:var(--card);border:1px solid var(--border);border-radius:16px;display:flex;align-items:center;justify-content:center;overflow:hidden}.media-slot img{width:100%;height:100%;object-fit:contain;object-position:center}.slot-176{height:176px}.slot-168{height:168px}.slot-160{height:160px}.heart-cut{width:200px;height:176px;margin:0 auto;background:var(--card);border:1px solid var(--focus);clip-path:polygon(50% 14%,60% 4%,74% 2%,87% 8%,96% 20%,99% 34%,96% 48%,88% 61%,76% 73%,50% 96%,24% 73%,12% 61%,4% 48%,1% 34%,4% 20%,13% 8%,26% 2%,40% 4%);display:flex;align-items:center;justify-content:center;overflow:hidden}.heart-cut img{width:100%;height:100%;object-fit:contain}.split-soft{display:grid;grid-template-columns:1fr 1fr;gap:16px}.stack-cards{display:grid;gap:14px}.topic-pair{display:grid;grid-template-columns:1fr 1fr;gap:16px}.period-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.period-grid>div{padding:18px;background:var(--soft);border-radius:16px;border-top:3px solid var(--red)}.status-list{display:grid;gap:10px}.status-row{display:grid;grid-template-columns:120px 1fr;gap:14px;align-items:center;padding:13px 16px;border:1px solid var(--border);border-radius:14px;background:var(--card)}.status-row strong{color:var(--red)}.wrap-heart{display:grid;grid-template-columns:260px 1fr;gap:22px;align-items:start}.app-visual{width:240px;height:320px;border-radius:28px;background:var(--card);border:1px solid var(--focus);position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden}.app-visual img{width:100%;height:100%;object-fit:contain}.app-icon{position:absolute;left:14px;bottom:14px;width:48px;height:48px;border-radius:12px;background:var(--card);border:1px solid var(--border);object-fit:contain}.reading-points{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.reading-points div{padding:18px;border-radius:16px;background:var(--card);border:1px solid var(--border)}.faq-mini{display:grid;gap:12px}.faq-mini details{background:var(--card);border:1px solid var(--border);border-radius:14px;padding:14px 16px}.faq-mini summary{font-weight:800;color:var(--ink);cursor:pointer}.page-head{padding:30px 0 20px;border-bottom:1px solid var(--border);margin-bottom:26px}.page-kicker{font-size:13px;color:var(--red);font-weight:800}.single-flow .section{max-width:780px}.cut-layout .focus-block{display:grid;grid-template-columns:220px 1fr;gap:22px;align-items:center}.notes-layout .note-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.plain-layout .section{border-bottom:1px solid var(--border);padding-bottom:22px}.period-layout .period-grid{margin-top:18px}.center-card .page-head{text-align:center}.center-card .panel{max-width:760px;margin-left:auto;margin-right:auto}.memo-list{display:grid;gap:12px}.memo-list li{list-style:none;padding:16px 18px;background:var(--card);border:1px solid var(--border);border-radius:14px}.memo-list li::before{content:'♥';color:var(--red);margin-right:8px}.method-list{counter-reset:item;display:grid;gap:16px}.method-list>section{padding:20px;background:var(--card);border-radius:16px;border:1px solid var(--border)}.method-list>section h2::before{counter-increment:item;content:counter(item) ' · ';color:var(--red)}.topic-list{display:grid;gap:14px}.topic-list article{padding:20px;background:var(--card);border-radius:16px;border-left:4px solid var(--rose)}.terms section{padding:0 0 20px;margin-bottom:22px;border-bottom:1px solid var(--border)}.related{margin-top:34px;padding-top:22px;border-top:1px solid var(--border)}.related-links{display:flex;flex-wrap:wrap;gap:10px}.related-links a{min-height:44px;padding:10px 14px;border-radius:999px;background:var(--card);border:1px solid var(--red);color:var(--red);display:flex;align-items:center}.banner-slot{height:200px;width:100%;background:var(--card);border:1px solid var(--border);border-radius:16px;display:flex;align-items:center;justify-content:center;overflow:hidden}.banner-slot img{width:100%;height:100%;object-fit:contain}.site-footer{background:var(--ink);color:var(--bg);border-top:1px solid var(--apricot);padding:34px 0 76px;font-size:13px}.footer-grid{display:grid;grid-template-columns:1.2fr repeat(4,1fr);gap:22px}.footer-brand{display:flex;flex-direction:column;gap:4px;color:var(--apricot)}.footer-grid nav{display:flex;flex-direction:column;gap:7px}.footer-grid h2{font-size:13px;color:var(--apricot);margin:0 0 4px}.footer-grid a{color:var(--bg)}.footer-note{border-top:1px solid rgba(244,196,184,.3);margin-top:24px;padding-top:18px;color:#f8e6e1}.overlay{position:fixed;inset:0;background:rgba(26,16,18,.42);z-index:90;opacity:0;visibility:hidden;pointer-events:none;transition:.22s ease}.overlay.open{opacity:1;visibility:visible;pointer-events:auto}.menu-panel{position:fixed;z-index:100;right:16px;bottom:64px;width:260px;max-height:380px;overflow:auto;background:var(--card);border:1px solid var(--focus);border-radius:20px;box-shadow:0 20px 50px rgba(26,16,18,.22);padding:14px;transform:translateY(20px);opacity:0;visibility:hidden;pointer-events:none;transition:.22s ease}.menu-panel.open{transform:translateY(0);opacity:1;visibility:visible;pointer-events:auto}.menu-head{display:flex;justify-content:space-between;align-items:center;gap:8px;padding-bottom:10px;border-bottom:1px solid var(--border)}.menu-head>div{display:flex;align-items:center;gap:8px}.menu-head button,.search-head button{min-height:44px;border:1px solid var(--red);background:var(--card);color:var(--red);border-radius:999px;padding:0 12px}.menu-groups section{padding:10px 0;border-bottom:1px solid var(--border)}.menu-groups h2{font-size:13px;color:var(--red);margin:0 0 6px}.menu-groups a{display:grid;grid-template-columns:76px 1fr;gap:8px;padding:6px 4px;border-radius:8px}.menu-groups a:hover{background:var(--soft)}.menu-groups b{font-size:13px;color:var(--ink)}.menu-groups span{font-size:12px;color:var(--muted)}.search-panel{position:fixed;z-index:100;top:78px;left:50%;width:min(720px,calc(100% - 32px));transform:translate(-50%,-12px);background:var(--card);border:1px solid var(--focus);border-radius:0 0 18px 18px;box-shadow:var(--shadow);padding:18px;opacity:0;visibility:hidden;pointer-events:none;transition:.22s ease}.search-panel.open{transform:translate(-50%,0);opacity:1;visibility:visible;pointer-events:auto}.search-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.search-panel label{display:block;color:var(--muted);margin-bottom:8px}.search-panel input{width:100%;min-height:44px;border:1px solid var(--border);border-radius:12px;padding:0 13px;background:white;color:var(--ink)}.search-panel input:focus{outline:2px solid var(--focus);border-color:var(--red)}.search-results{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.search-results a{padding:8px 12px;border-radius:999px;background:var(--soft);color:var(--red)}.mobile-bottom{display:none}.locked{overflow:hidden}.skip{position:absolute;left:-9999px}.policy-note{padding:16px;border-radius:14px;background:var(--deep);color:var(--ink)}@media(max-width:760px){.quick-nav{display:none}.site-main{padding-top:74px}.article{padding-top:26px;padding-bottom:88px}.hero{padding-top:18px}.split-soft,.topic-pair,.reading-points,.notes-layout .note-grid{grid-template-columns:1fr}.period-grid{grid-template-columns:1fr}.wrap-heart,.cut-layout .focus-block{grid-template-columns:1fr}.app-visual{margin:0 auto}.status-row{grid-template-columns:1fr;gap:4px}.footer-grid{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}.site-footer{padding-bottom:92px}.mobile-bottom{position:fixed;z-index:85;left:0;right:0;bottom:0;height:calc(48px + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);display:grid;grid-template-columns:repeat(4,1fr);background:var(--card);border-top:1px solid var(--border)}.mobile-bottom a{display:flex;align-items:center;justify-content:center;min-height:48px;font-size:13px}.mobile-bottom a.active{background:var(--red);color:var(--card)}.menu-panel{width:88%;right:6%;bottom:60px;max-height:72vh}.search-panel{inset:0;width:auto;height:100dvh;transform:none;border-radius:0;background:var(--ink);color:var(--apricot);padding:78px 18px 20px}.search-panel.open{transform:none}.search-head strong,.search-panel label{color:var(--apricot)}.search-panel input{background:var(--card)}.search-head button{background:transparent;color:var(--apricot);border-color:var(--apricot)}.brand-inner{width:calc(100% - 24px)}.brand-actions{gap:5px}.header-app,.menu-button{padding:0 12px;min-height:44px}.brand-link{min-width:0}.brand-text{font-size:15px;white-space:nowrap}.wrap{width:min(960px,calc(100% - 32px))}}
