*{box-sizing:border-box}
:root{--bg:#FFF5F8;--bg-deep:#FFEBF1;--surface:#FFFFFF;--surface-soft:#FFF0F5;--surface-hover:#FFE4EC;--title:#2D1B24;--text:#3D2A32;--muted:#6B4E58;--soft:#9A7A85;--brand:#FF6B9D;--brand-light:#FF8FAB;--brand-pale:#FFB3C6;--border:rgba(255,107,157,.15);--border-strong:rgba(255,107,157,.35);--shadow:0 12px 36px rgba(255,107,157,.12);--glow:0 10px 28px rgba(255,107,157,.18);--footer:#2D1B24;--footer-text:#FFD6E3;--max:1280px}
html{scroll-behavior:smooth;background:var(--bg)}
body{margin:0;background:var(--bg);color:var(--text);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.layer-open{overflow:hidden}
a{color:inherit;text-decoration:none}button,input{font:inherit}button{color:inherit}img{max-width:100%;height:auto;display:block}
.skip-link{position:fixed;left:12px;top:-80px;z-index:9999;background:var(--title);color:#fff;padding:10px 16px;border-radius:10px}.skip-link:focus{top:12px}
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.site-header{position:sticky;top:0;z-index:900;background:rgba(255,245,248,.92);backdrop-filter:blur(18px);border-bottom:1px solid var(--border)}
.header-inner{max-width:var(--max);height:72px;margin:0 auto;padding:0 20px;display:flex;align-items:center;gap:20px}
.brand{display:flex;align-items:center;flex:0 0 auto;min-width:132px}.brand-logo{width:auto;height:42px;max-width:170px;object-fit:contain}.brand-text{font-weight:900;font-size:24px;letter-spacing:-.5px;color:var(--brand)}
.desktop-nav{display:flex;align-items:center;gap:6px;min-width:0;flex:1}.desktop-nav a{display:flex;align-items:center;min-height:44px;padding:0 12px;border-radius:999px;font-size:15px;font-weight:700;color:var(--muted);white-space:nowrap}
.desktop-nav a:hover,.desktop-nav a:focus-visible,.desktop-nav a.is-active{background:var(--surface-hover);color:var(--brand)}
.header-actions{margin-left:auto;display:flex;align-items:center;gap:8px;flex:0 0 auto}
.text-button,.icon-button,.panel-close{border:1px solid var(--border-strong);background:var(--surface);min-height:44px;border-radius:999px;padding:0 15px;cursor:pointer}.text-button:hover,.panel-close:hover{background:var(--surface-hover)}
.app-button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 20px;border-radius:999px;background:linear-gradient(135deg,#FF8FAB 0%,#FF6B9D 100%);color:#fff;font-weight:800;box-shadow:var(--glow);white-space:nowrap}.app-button:hover{transform:translateY(-1px)}
.mobile-only{display:none}.site-main{min-height:60vh}.wrap{width:min(calc(100% - 40px),var(--max));margin:0 auto}
.page-hero{padding:58px 0 30px}.page-hero-grid{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(320px,.92fr);gap:36px;align-items:center}.eyebrow{margin:0 0 8px;color:var(--brand);font-size:14px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}
.page-hero h1,.home-copy h1{margin:0;color:var(--title);font-size:clamp(36px,5vw,68px);line-height:1.08;letter-spacing:-.04em}.page-hero .lead,.home-copy .lead{margin:20px 0 0;font-size:18px;color:var(--muted);max-width:760px}
.hero-art,.page-art{min-height:390px;border-radius:28px;overflow:hidden;background:radial-gradient(circle at 20% 18%,rgba(255,255,255,.9),transparent 28%),linear-gradient(145deg,#FFD9E5,#FFF8FB 55%,#FFC4D7);box-shadow:var(--shadow);display:flex;align-items:center;justify-content:center;position:relative}.hero-art img,.page-art img{width:100%;height:100%;object-fit:cover}
.hero-fallback,.art-fallback{padding:46px;text-align:center;color:var(--title)}.hero-fallback strong,.art-fallback strong{display:block;font-size:32px;margin-bottom:10px}.hero-fallback span,.art-fallback span{color:var(--muted)}
.button-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}.primary-button,.secondary-button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 22px;border-radius:999px;font-weight:800;white-space:nowrap}.primary-button{background:linear-gradient(135deg,#FF8FAB,#FF6B9D);color:#fff;box-shadow:var(--glow)}.secondary-button{border:1px solid rgba(255,107,157,.4);color:var(--brand);background:#fff}.primary-button:hover,.secondary-button:hover{transform:translateY(-1px)}
a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid rgba(255,107,157,.42);outline-offset:3px}
.home-hero{padding:34px 0 10px}.home-hero-grid{display:grid;grid-template-columns:minmax(0,1.86fr) minmax(300px,1fr);gap:24px;align-items:stretch}.home-media{min-height:520px;border-radius:30px;overflow:hidden;background:linear-gradient(145deg,#FFD9E5,#FFF4F8 52%,#FFB8CF);box-shadow:var(--shadow);position:relative;display:flex;align-items:center;justify-content:center}.home-media img{width:100%;height:100%;object-fit:cover}.home-copy{border-radius:30px;background:var(--surface);padding:36px;box-shadow:var(--shadow);display:flex;flex-direction:column;justify-content:center}.home-copy h1{font-size:clamp(34px,4.2vw,58px)}
.mini-recommendations{display:grid;gap:10px;margin-top:28px}.mini-recommendations a{padding:13px 15px;border:1px solid var(--border);border-radius:14px;background:var(--surface-soft)}.mini-recommendations a:hover{background:var(--surface-hover)}.mini-recommendations strong{display:block;color:var(--title)}.mini-recommendations span{font-size:14px;color:var(--muted)}
.quick-strip{width:min(calc(100% - 40px),var(--max));margin:24px auto 0;display:flex;gap:10px;overflow-x:auto;padding:8px 0 12px;scrollbar-width:thin}.quick-strip a{flex:0 0 auto;padding:10px 15px;border:1px solid var(--border);border-radius:999px;background:var(--surface-soft);color:var(--muted);font-weight:700}.quick-strip a:hover{color:var(--brand);background:var(--surface-hover)}
.section{padding:62px 0}.section.soft{background:var(--bg-deep)}.section-head{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:24px}.section-head>div{max-width:820px}.section h2{margin:0;color:var(--title);font-size:clamp(28px,3vw,42px);line-height:1.18;letter-spacing:-.02em}.section-intro{margin:10px 0 0;color:var(--muted);font-size:17px}
.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.card{background:var(--surface);border:1px solid var(--border);border-radius:18px;padding:24px;box-shadow:0 10px 28px rgba(255,107,157,.08)}.card:hover{border-color:var(--border-strong)}.card h3{margin:0 0 8px;color:var(--title);font-size:20px}.card p{margin:0;color:var(--muted)}.card .meta{display:inline-block;margin-bottom:10px;padding:5px 10px;border-radius:999px;background:var(--surface-soft);color:var(--brand);font-size:13px;font-weight:800}.card a.more{display:inline-flex;margin-top:16px;color:var(--brand);font-weight:800}
.two-col{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr);gap:24px;align-items:start}.feature-box{padding:30px;border-radius:22px;background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow)}.feature-box h2,.feature-box h3{margin-top:0;color:var(--title)}.feature-list{display:grid;gap:12px}.feature-list a,.feature-list .item{display:block;padding:17px 18px;border-radius:16px;background:var(--surface-soft);border:1px solid transparent}.feature-list a:hover{background:var(--surface-hover);border-color:var(--border)}.feature-list strong{display:block;color:var(--title);margin-bottom:3px}.feature-list span{color:var(--muted);font-size:14px}
.prose{max-width:900px}.prose p{margin:0 0 16px;color:var(--text)}.prose h2{margin:34px 0 14px}.notice{border-left:4px solid var(--brand);padding:18px 20px;background:var(--surface-soft);border-radius:0 14px 14px 0;color:var(--muted)}
.topic-track{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(250px,1fr);gap:16px;overflow-x:auto;padding-bottom:12px}.topic-track .card{min-height:180px}
.faq-list{display:grid;gap:12px}.faq-list details{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:0 20px}.faq-list summary{cursor:pointer;font-weight:850;color:var(--title);padding:18px 0}.faq-list details p{margin:0 0 20px;color:var(--muted)}
.callout{padding:28px;border-radius:22px;background:linear-gradient(135deg,#FFF0F5,#FFFFFF);border:1px solid var(--border)}.callout h2,.callout h3{margin-top:0;color:var(--title)}
.site-footer{background:var(--footer);color:var(--footer-text);padding:58px 0 calc(30px + env(safe-area-inset-bottom))}.footer-inner{width:min(calc(100% - 40px),var(--max));margin:0 auto}.footer-brand{max-width:620px}.footer-brand-link{display:inline-flex;align-items:center}.footer-logo{height:44px;width:auto;max-width:180px;object-fit:contain}.footer-en{font-weight:900;letter-spacing:.16em}.footer-brand p{color:#E9BCCB}.footer-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px;margin-top:36px;padding-top:30px;border-top:1px solid rgba(255,214,227,.16)}.footer-grid h2{font-size:16px;color:#fff;margin:0 0 12px}.footer-grid a{display:block;padding:6px 0;color:#FFD6E3}.footer-grid a:hover{color:#fff}.footer-note{margin-top:30px;padding-top:24px;border-top:1px solid rgba(255,214,227,.16);color:#D7A7B8;font-size:14px}
.site-overlay{position:fixed;inset:0;z-index:1100;background:rgba(45,27,36,.38);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .2s ease}.site-overlay.is-open{opacity:1;visibility:visible;pointer-events:auto}
.channel-panel{position:fixed;right:0;top:0;bottom:0;z-index:1200;width:min(460px,88vw);background:var(--surface);box-shadow:-18px 0 48px rgba(45,27,36,.16);transform:translateX(104%);visibility:hidden;pointer-events:none;transition:transform .24s ease,visibility .24s}.channel-panel.is-open{transform:translateX(0);visibility:visible;pointer-events:auto}
.panel-head{height:72px;padding:0 20px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border)}.panel-logo{height:40px;width:auto;max-width:160px;object-fit:contain}.panel-scroll{height:calc(100% - 72px);overflow-y:auto;padding:18px 20px 30px}.panel-group{margin-bottom:24px}.panel-group h2{margin:0 0 8px;font-size:15px;color:var(--brand)}.panel-group a{display:block;padding:13px 14px;border-radius:14px}.panel-group a:hover{background:var(--surface-soft)}.panel-group strong{display:block;color:var(--title)}.panel-group span{display:block;margin-top:2px;color:var(--muted);font-size:13px;line-height:1.55}
.search-panel{position:fixed;left:0;right:0;top:72px;z-index:1200;background:var(--surface);border-bottom:1px solid var(--border);box-shadow:0 20px 40px rgba(45,27,36,.12);transform:translateY(-16px);opacity:0;visibility:hidden;pointer-events:none;transition:.2s ease}.search-panel.is-open{transform:translateY(0);opacity:1;visibility:visible;pointer-events:auto}.search-inner{width:min(calc(100% - 40px),var(--max));margin:0 auto;padding:28px 0 34px}.search-head{display:flex;align-items:center;justify-content:space-between;gap:18px}.search-head h2{margin:0;color:var(--title)}.search-box{display:block;margin:22px 0}.search-box input{width:100%;height:56px;border:1px solid var(--border-strong);border-radius:16px;padding:0 18px;background:var(--bg);color:var(--title)}.search-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.search-links a{padding:16px;border-radius:14px;background:var(--surface-soft)}.search-links a:hover{background:var(--surface-hover)}.search-links strong{display:block;color:var(--title)}.search-links span{font-size:13px;color:var(--muted)}
.mobile-bottom-nav{display:none}
@media (max-width:1020px){.desktop-nav a{padding:0 8px;font-size:14px}.brand{min-width:auto}.home-hero-grid{grid-template-columns:1fr}.home-copy{order:-1}.home-media{min-height:440px}.page-hero-grid,.two-col{grid-template-columns:1fr}.cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:780px){body{padding-bottom:calc(58px + env(safe-area-inset-bottom))}.desktop-only,.desktop-nav{display:none!important}.mobile-only{display:inline-flex}.header-inner{height:64px;padding:0 15px;gap:8px;justify-content:space-between}.brand{position:absolute;left:50%;transform:translateX(-50%);min-width:0;max-width:44vw;justify-content:center}.brand-logo{height:36px;max-width:42vw}.brand-text{font-size:20px;white-space:nowrap}.header-actions{margin-left:auto}.app-button{min-height:44px;padding:0 15px}.icon-button{width:44px;padding:0;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:4px}.icon-button span{display:block;width:18px;height:2px;border-radius:2px;background:var(--title)}.wrap,.quick-strip,.footer-inner{width:min(calc(100% - 30px),var(--max))}.home-hero{padding-top:20px}.home-hero-grid{gap:16px}.home-copy{padding:26px 22px;border-radius:22px}.home-media{min-height:280px;border-radius:22px}.home-copy .button-row{flex-direction:column}.home-copy .primary-button,.home-copy .secondary-button{width:100%}.page-hero{padding:38px 0 22px}.page-hero h1{font-size:clamp(34px,10vw,50px)}.page-art{min-height:250px}.section{padding:46px 0}.section-head{display:block}.cards{grid-template-columns:1fr}.topic-track{grid-auto-columns:82vw}.footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.search-panel{top:0;bottom:0;overflow-y:auto}.search-inner{width:calc(100% - 30px);padding-top:20px}.search-links{grid-template-columns:1fr}.channel-panel{width:min(88vw,460px)}.mobile-bottom-nav{position:fixed;left:0;right:0;bottom:0;z-index:850;display:grid;grid-template-columns:repeat(5,1fr);min-height:58px;padding-bottom:env(safe-area-inset-bottom);background:rgba(255,255,255,.96);border-top:1px solid var(--border);backdrop-filter:blur(14px)}.mobile-bottom-nav a{display:flex;align-items:center;justify-content:center;min-height:48px;color:var(--muted);font-size:13px;font-weight:800}.mobile-bottom-nav a.is-active{color:var(--brand);background:var(--surface-soft)}}
@media (max-width:480px){.footer-grid{grid-template-columns:1fr}.home-copy h1{font-size:36px}.page-hero .lead,.home-copy .lead{font-size:16px}.card,.feature-box{padding:20px}}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
