*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#FDECEC;color:#5A3030;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Microsoft YaHei",Arial,sans-serif;font-size:15px;line-height:1.7;overflow-x:hidden;padding-top:120px}body.locked{overflow:hidden}a{color:inherit;text-decoration:none}button,input{font:inherit}.wrap{width:min(960px,calc(100% - 32px));margin:0 auto}.top-strip{position:fixed;z-index:50;top:0;left:0;right:0;height:20px;background:#C45A5A;color:#FFF8F6;font-size:12px}.top-strip-inner{height:20px;display:flex;align-items:center;justify-content:space-between}.text-button{border:0;background:transparent;color:#FFF8F6;padding:0 8px;min-width:44px;height:20px;cursor:pointer}.brand-bar{position:fixed;z-index:49;top:20px;left:0;right:0;height:54px;background:#FFF8F6;border-bottom:1px solid rgba(196,90,90,.18)}.brand-bar-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{height:24px;max-width:180px;object-fit:contain;object-position:center}.brand-name{font-weight:800;color:#4A2020;font-size:16px}.brand-actions{display:flex;align-items:center;gap:8px}.header-app,.drawer-toggle,.btn{display:inline-flex;align-items:center;justify-content:center;height:42px;min-width:44px;padding:0 16px;border-radius:12px;border:1px solid #C45A5A;font-size:14px;white-space:nowrap;transition:.2s}.header-app{background:#FFF8F6;color:#C45A5A}.drawer-toggle{background:linear-gradient(135deg,#E88888 0%,#C45A5A 100%);color:#FFF8F6;cursor:pointer}.leaf-nav{position:fixed;z-index:48;top:74px;left:0;right:0;height:46px;background:#F4D4D4;border-bottom:1px solid rgba(196,90,90,.18)}.leaf-nav-inner{height:46px;display:flex;align-items:center;justify-content:center;gap:10px}.leaf-link{height:34px;min-width:88px;padding:0 18px;display:flex;align-items:center;justify-content:center;border-radius:0 18px 18px 0;color:#4A2020;background:#FFF8F6;border:1px solid rgba(196,90,90,.18);font-size:13px}.leaf-link.is-active{background:#C45A5A;color:#FFF8F6}.site-main{min-height:70vh}.page{padding:44px 0 64px}.eyebrow{font-size:12px;color:#8A5858;letter-spacing:.08em;margin-bottom:8px}.hero-copy{max-width:760px}.hero-copy h1,.page-head h1{font-size:24px;line-height:1.3;margin:0 0 14px;color:#4A2020}.hero-copy .lead,.page-head .lead{font-size:16px;color:#5A3030;margin:0 0 20px}.btn{border:0;background:linear-gradient(135deg,#E88888 0%,#C45A5A 100%);color:#FFF8F6;box-shadow:0 8px 18px rgba(74,32,32,.08)}.btn.secondary{background:#FFF8F6;color:#4A2020;border:1px solid #C45A5A}.btn:hover,.header-app:hover,.drawer-toggle:hover,.leaf-link:hover{transform:translateY(-1px)}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid rgba(232,136,136,.5);outline-offset:2px}.section{margin-top:34px}.section h2{font-size:20px;color:#4A2020;margin:0 0 14px}.section h3{font-size:16px;color:#4A2020;margin:0 0 8px}.section p{margin:0 0 12px}.heart-index{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:22px}.heart-index a{background:#FFF8F6;border:1px solid rgba(196,90,90,.18);border-radius:999px;padding:7px 14px;font-size:13px}.spread{display:grid;grid-template-columns:1fr 1fr;background:#FFF8F6;border:1px solid rgba(196,90,90,.18);border-radius:18px;overflow:hidden;box-shadow:0 12px 28px rgba(74,32,32,.08)}.spread>div{padding:24px}.spread>div+div{border-left:1px solid rgba(196,90,90,.18)}.image-slot{background:#F4D4D4;border:1px solid rgba(196,90,90,.18);border-radius:16px;min-height:120px;display:flex;align-items:center;justify-content:center}.image-slot img{max-width:100%;height:auto;object-fit:contain;object-position:center}.slot-168{height:168px;min-height:168px}.slot-200{height:200px;min-height:200px}.slot-app{height:320px;min-height:220px}.slot-app img{max-height:100%}.slot-icon{width:48px;height:48px;min-height:48px;border-radius:12px}.slot-icon img{width:48px;height:48px}.story-strips{display:grid;gap:14px}.story-strip{display:grid;grid-template-columns:180px 1fr;gap:18px;align-items:center;background:#FFF8F6;border:1px solid rgba(196,90,90,.18);border-radius:16px;padding:16px}.story-strip.no-image{grid-template-columns:1fr}.cards-2{display:grid;grid-template-columns:1fr 1fr;gap:16px}.card{background:#FFF8F6;border:1px solid rgba(196,90,90,.18);border-radius:18px;padding:20px;box-shadow:0 12px 28px rgba(74,32,32,.05)}.card.soft{background:#F8E8E6}.status-list,.memo-list{display:grid;gap:10px}.status-row,.memo-item{background:#FFF8F6;border-left:4px solid #E88888;padding:14px 16px;border-radius:0 14px 14px 0}.period-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.period{background:#FFF8F6;border-top:4px solid #C4A070;border-radius:14px;padding:18px}.app-layout{display:grid;grid-template-columns:1.3fr .7fr;gap:24px;align-items:center;background:#FFF8F6;border:1px solid rgba(196,90,90,.18);border-radius:20px;padding:24px}.app-badge{display:flex;align-items:center;gap:12px;margin-bottom:14px}.page-head{margin-bottom:24px}.prose{max-width:800px}.prose p{margin:0 0 14px}.prose h2{margin-top:28px}.center-card{max-width:760px;margin:0 auto;text-align:center;background:#FFF8F6;border-radius:20px;padding:28px;border:1px solid rgba(196,90,90,.18)}.center-card p{text-align:left}.list-plain{padding-left:1.2em}.list-plain li{margin:8px 0}.topic-list{display:grid;gap:12px}.topic-item{background:#FFF8F6;border:1px solid rgba(196,90,90,.18);border-radius:16px;padding:18px}.terms{display:grid;gap:16px}.terms section{background:#FFF8F6;border-radius:16px;padding:20px;border:1px solid rgba(196,90,90,.18)}.faq{display:grid;gap:14px}.faq article{background:#FFF8F6;border-radius:16px;padding:18px;border:1px solid rgba(196,90,90,.18)}.faq h2{font-size:16px;margin:0 0 8px}.site-footer{background:#3A1818;color:#FDECEC;border-top:1px solid rgba(255,248,246,.25);padding:36px 0 calc(30px + env(safe-area-inset-bottom));font-size:13px}.footer-grid{display:grid;grid-template-columns:1.6fr repeat(3,1fr);gap:26px}.footer-brand{display:flex;flex-direction:column;align-items:flex-start}.footer-logo{height:24px;max-width:180px;object-fit:contain;margin-bottom:8px}.footer-brand strong{font-size:16px}.footer-brand span{opacity:.75}.footer-brand p{max-width:420px}.site-footer h2{font-size:14px;color:#FFF8F6;margin:0 0 8px}.site-footer a{display:block;padding:3px 0;color:#FDECEC}.footer-bottom{margin-top:26px;padding-top:16px;border-top:1px solid rgba(255,248,246,.18);opacity:.8}.overlay{position:fixed;z-index:70;inset:0;background:rgba(58,24,24,.36);opacity:0;visibility:hidden;pointer-events:none;transition:.2s}.overlay.is-open{opacity:1;visibility:visible;pointer-events:auto}.drawer{position:fixed;z-index:80;right:24px;bottom:24px;width:320px;max-height:420px;overflow:auto;background:#FFF8F6;border:1px solid rgba(196,90,90,.18);border-radius:20px;box-shadow:0 12px 28px rgba(74,32,32,.18);padding:16px;transform:translateY(20px);opacity:0;visibility:hidden;pointer-events:none;transition:.2s}.drawer.is-open{transform:translateY(0);opacity:1;visibility:visible;pointer-events:auto}.drawer-head,.search-head{display:flex;justify-content:space-between;align-items:center;gap:12px}.drawer-brand{display:flex;align-items:center;gap:8px;font-weight:700;color:#4A2020}.drawer-brand img{height:24px;max-width:140px;object-fit:contain}.close-button{min-height:44px;padding:0 12px;border:1px solid #C45A5A;border-radius:10px;background:#FFF8F6;color:#4A2020;cursor:pointer}.drawer-section{margin-top:14px}.drawer-section h2{font-size:13px;margin:0 0 4px;color:#8A5858}.drawer-section a{display:block;padding:8px 0;border-bottom:1px solid rgba(196,90,90,.12)}.drawer-section b{display:block;color:#4A2020}.drawer-section span{display:block;color:#8A5858;font-size:12px}.search-panel{position:fixed;z-index:81;top:82px;left:50%;transform:translate(-50%,-10px);width:min(720px,calc(100% - 32px));background:#FFF8F6;border:1px solid rgba(196,90,90,.18);border-radius:18px;padding:22px;box-shadow:0 12px 28px rgba(74,32,32,.18);opacity:0;visibility:hidden;pointer-events:none;transition:.2s}.search-panel.is-open{transform:translate(-50%,0);opacity:1;visibility:visible;pointer-events:auto}.search-head h2{margin:0;color:#4A2020;font-size:20px}.search-label{display:block;color:#8A5858;font-size:13px}.search-label input{display:block;width:100%;height:44px;margin-top:6px;border:1px solid rgba(196,90,90,.35);border-radius:12px;padding:0 12px;background:#FFF8F6;color:#4A2020}.search-links{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}.search-links a{min-height:40px;display:flex;align-items:center;padding:0 14px;background:#F8E8E6;border-radius:10px}.mobile-bottom{display:none}.banner-wrap{margin-bottom:24px}.note{font-size:13px;color:#8A5858}.rule{height:1px;background:rgba(196,90,90,.18);margin:24px 0}
@media(max-width:700px){body{padding-top:74px;padding-bottom:64px}.leaf-nav{display:none}.page{padding:28px 0 44px}.top-strip .wrap{width:calc(100% - 32px)}.brand-bar-inner{width:calc(100% - 32px)}.brand-actions{gap:4px}.header-app,.drawer-toggle{padding:0 10px}.spread,.cards-2,.period-grid,.app-layout{grid-template-columns:1fr}.spread>div+div{border-left:0;border-top:1px solid rgba(196,90,90,.18)}.story-strip{grid-template-columns:1fr}.slot-168{height:168px}.slot-app{height:300px}.footer-grid{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}.drawer{right:6%;bottom:66px;width:88%;max-height:72vh}.search-panel{top:0;left:0;transform:none;width:100%;height:100dvh;border-radius:0;background:#C45A5A;color:#FFF8F6;padding:26px 18px}.search-panel.is-open{transform:none}.search-head h2,.search-panel p,.search-panel .search-label{color:#FFF8F6}.search-label input{background:#FFF8F6}.search-links a{background:#FFF8F6;color:#4A2020}.mobile-bottom{position:fixed;z-index:60;left:0;right:0;bottom:0;height:calc(48px + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);background:#FFF8F6;border-top:1px solid rgba(196,90,90,.18);display:grid;grid-template-columns:repeat(4,1fr)}.mobile-bottom a{display:flex;align-items:center;justify-content:center;font-size:13px;min-height:48px}.mobile-bottom a.is-active{background:#C45A5A;color:#FFF8F6}.site-footer{padding-bottom:84px}.hero-copy h1,.page-head h1{font-size:24px}}
@media(max-width:430px){.footer-grid{grid-template-columns:1fr}.brand-name{font-size:15px}.wrap{width:calc(100% - 32px)}}
.image-slot img{max-width:100%;max-height:100%;width:auto;height:auto;display:block}.card>.image-slot,.prose>.image-slot,.center-card>.image-slot,.spread .image-slot{margin-bottom:14px}
