@charset "UTF-8";
:root{--bg:#FFF9F8;--white:#fff;--pale:#FBE5EC;--pink:#EB7295;--light-pink:#F4B7C8;--yellow:#FFF1BF;--soft-yellow:#F6DE8F;--dark:#171316;--text:#393237;--sub:#72666D;--muted:#968A90;--line:rgba(35,22,28,.12);--shadow:0 12px 30px rgba(80,35,50,.08)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:0;color:var(--text);background:var(--bg);font-family:system-ui,-apple-system,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;font-size:15px;line-height:1.75;overflow-wrap:anywhere}body.panel-open{overflow:hidden}a{color:inherit;text-decoration:none}button,input{font:inherit}button{cursor:pointer}img{display:block;max-width:100%;height:auto}figure{margin:0}h1,h2,h3,p{margin:0}h1,h2,h3{line-height:1.35;color:var(--dark);font-weight:750}h1{font-size:30px;letter-spacing:-.02em}h2{font-size:22px}h3{font-size:17px}p+p{margin-top:14px}a,button{transition:color .18s ease,background .18s ease,box-shadow .18s ease,transform .18s ease}a:hover{color:#BA4169}button:active,.btn:active{transform:scale(.98)}:focus-visible{outline:2px solid var(--pink);outline-offset:2px}.wrap{width:min(1140px,calc(100% - 48px));margin-inline:auto}.skip{position:absolute;left:10px;top:-90px;z-index:200;background:#fff;padding:9px 16px}.skip:focus{top:10px}.top-strip{background:var(--dark);color:#fff;font-size:12px}.top-inner{min-height:32px;display:flex;align-items:center;justify-content:space-between;gap:15px}.top-name{white-space:nowrap}.top-right{display:flex;align-items:center;gap:15px;color:var(--yellow)}.icon-button{width:44px;height:44px;border:0;background:transparent;font-size:25px;color:inherit;line-height:1}.top-search{height:32px;width:32px}.site-header{background:#fff;border-bottom:1px solid var(--pale);position:relative;z-index:10}.header-inner{display:flex;align-items:center;gap:28px;min-height:64px}.brand{display:flex;align-items:center;flex:0 0 auto;min-width:125px;color:var(--dark)}.brand strong{font-size:17px}.brand-logo{width:auto;max-width:180px;height:28px;object-fit:contain}.primary{display:flex;align-items:stretch;gap:23px;margin:auto}.primary a{display:flex;align-items:center;min-height:64px;border-bottom:2px solid transparent;white-space:nowrap;font-size:14px}.primary a.active,.primary a:hover{color:#B63E65;border-bottom-color:var(--pink)}.header-actions{display:flex;align-items:center;gap:12px;margin-left:auto}.app-entry{font-size:13px;white-space:nowrap}.menu-trigger{background:var(--yellow);border:1px solid var(--line);border-radius:9px;min-height:44px;padding:0 12px;font-size:13px;color:var(--dark);white-space:nowrap}.menu-trigger span{margin-left:6px}.mobile-search{display:none}.category-nav{background:#fffcf5;border-bottom:1px solid var(--line)}.category-inner{display:flex;align-items:center;flex-wrap:wrap;column-gap:22px;row-gap:0;min-height:47px}.category-link{display:flex;align-items:center;min-height:44px;font-size:13px;white-space:nowrap}.category-link.active{color:#B63E65;font-weight:700}.mobile-only{display:none}.main-content{min-height:50vh}.eyebrow{display:inline-block;font-size:12px;font-weight:760;letter-spacing:.08em;color:#A3365B;margin-bottom:11px}.media{min-width:0;max-width:100%;display:flex;align-items:center;justify-content:center;background:#fff7f8;border:1px solid var(--line);border-radius:14px;padding:8px}.media img{display:block;max-width:100%;width:100%;height:100%;object-fit:contain;object-position:center}.media-wide{height:225px}.media-hero{height:300px;max-width:500px}.media-brand{height:255px}.media-app{width:260px;height:410px;max-width:100%}.media-icon{width:64px;height:64px;flex-shrink:0;padding:3px}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 18px;font-size:14px;font-weight:680;border-radius:10px;border:1px solid var(--line)}.primary-btn{background:#BC4069;color:#fff;border-color:#BC4069}.primary-btn:hover{color:#fff;background:#A9325A;box-shadow:var(--shadow)}.secondary-btn{background:var(--yellow);color:var(--dark)}.secondary-btn:hover{color:var(--dark);box-shadow:var(--shadow)}.text-link{display:inline-flex;align-items:center;min-height:44px;color:#AA345E;font-weight:700;font-size:14px}.action-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:25px}.home-section{margin-block:62px}.hero{display:grid;grid-template-columns:minmax(0,56fr) minmax(0,44fr);align-items:center;gap:35px;padding:56px 0 18px}.hero h1{max-width:650px}.hero-copy>p{margin-top:23px;max-width:620px;line-height:1.85}.hero .media{width:100%}.section-title{margin-bottom:22px}.feature-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:18px}.feature-primary{background:var(--pale);border-radius:15px;padding:26px}.feature-primary .media{height:250px}.feature-secondary{display:grid;grid-template-rows:1fr 1fr;gap:16px}.feature-secondary>div{display:grid;grid-template-columns:42% minmax(0,1fr);gap:8px 17px;align-content:center;background:#fff;padding:18px;border:1px solid var(--line);border-radius:14px}.feature-secondary .media{grid-row:span 3;height:100%;min-height:170px}.feature-grid h3{margin-top:13px}.feature-secondary h3{margin:0}.feature-grid p{margin-top:8px}.picks-block{border:1px solid var(--line);background:#fff;border-radius:16px;overflow:hidden}.picks-block .media{border:0;border-radius:0;height:260px;background:var(--pale)}.picks-content{max-width:920px;padding:28px 32px 34px}.picks-content p{margin-top:15px}.split-block{display:grid;grid-template-columns:minmax(0,42%) minmax(0,1fr);gap:38px;align-items:center}.split-block.reverse{grid-template-columns:minmax(0,1fr) minmax(0,42%)}.split-block.reverse .media{order:2}.split-block .media{height:235px}.split-copy p{margin-top:17px}.rise-band{display:grid;grid-template-columns:39% minmax(0,1fr);align-items:center;gap:32px;padding:22px;background:var(--yellow);border-radius:15px}.rise-band .media{height:215px;background:#fff9e4}.rise-band p{margin-top:13px}.mystery-section{display:grid;grid-template-columns:1fr 40%;gap:34px;align-items:center}.mystery-section>.media{height:245px}.mystery-section p{margin-top:14px}.observations{border-left:3px solid var(--pink);padding-left:18px;margin-top:14px}.rhythm{background:var(--pale);padding:30px;border-radius:16px}.rhythm-columns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px;margin-top:22px}.rhythm-columns>div+div{border-left:1px solid var(--line);padding-left:24px}.rhythm p{margin-top:10px}.mobile-feature{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,35%);gap:35px;align-items:center;background:#fff;padding:25px;border:1px solid var(--line);border-radius:16px}.mobile-copy p{margin-top:15px}.mobile-pics{display:flex;align-items:flex-end;gap:12px;justify-content:center}.mobile-pics .media-app{width:230px;height:340px}.adults{background:var(--yellow);padding:26px 30px;border-radius:15px}.adults p{margin-top:12px}.questions-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:20px}.questions-grid>div{padding-bottom:15px;border-bottom:1px solid var(--line)}.questions-grid p{font-size:14px;margin-top:9px;color:var(--sub)}.support-links{display:flex;flex-wrap:wrap;column-gap:24px;margin-top:14px}.inside-page{padding:22px 0 55px}.breadcrumbs{display:flex;align-items:center;gap:10px;font-size:13px;color:var(--sub);margin-bottom:24px}.page-intro{max-width:850px;margin-bottom:28px}.page-intro h1{margin-bottom:13px}.lead{font-size:16px;line-height:1.85;color:#51474D}.inside-page>.media-wide,.inside-page>.media-brand{margin-bottom:32px}.article-layout{display:grid;grid-template-columns:minmax(0,820px) minmax(0,1fr);gap:48px;align-items:start}.article-section{padding:25px 0;border-bottom:1px solid var(--line)}.article-section:first-child{padding-top:0}.article-section h2{margin-bottom:15px}.article-section p{line-height:1.9}.side-links{background:#fff;border:1px solid var(--line);border-radius:14px;padding:18px;position:sticky;top:16px}.side-links h2{font-size:17px;margin-bottom:8px}.side-links a{display:flex;border-bottom:1px solid var(--line)}.side-links a:last-child{border:0}.note{padding:16px 18px;margin-top:22px;background:var(--yellow);border-left:3px solid #BA9251;border-radius:8px}.app-visual{display:flex;align-items:flex-end;gap:22px;margin-bottom:35px}.faq-page{max-width:1140px}.faq-list{max-width:850px}.faq-item{border-bottom:1px solid var(--line);padding:22px 0}.faq-item:first-child{padding-top:0}.faq-item h2{font-size:18px;margin-bottom:11px}.faq-item p{line-height:1.9}.quick-links{padding-block:25px;display:flex;flex-wrap:wrap;align-items:center;gap:16px 24px;border-top:1px solid var(--line)}.quick-links a{font-size:14px;min-height:44px;display:flex;align-items:center}.site-footer{background:var(--dark);color:#E9DFE3;padding:43px 0 28px}.footer-brand{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:24px}.footer-brand a{display:flex;align-items:center;gap:12px;color:#fff}.footer-logo{width:auto;max-width:160px;height:28px;object-fit:contain}.footer-brand strong{font-size:17px}.footer-brand>span{font-size:12px;color:var(--soft-yellow)}.footer-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:25px}.footer-grid h2{color:#fff;font-size:16px;margin-bottom:11px}.footer-grid a{display:block;color:#DED1D7;font-size:13px;padding:5px 0}.footer-grid a:hover{color:var(--soft-yellow)}.footer-disclaimer{border-top:1px solid #493F45;margin-top:26px;padding-top:19px;color:#D5C5CC;font-size:13px}.footer-disclaimer p+p{margin-top:6px}.overlay{position:fixed;inset:0;background:rgba(20,13,17,.42);z-index:80;visibility:hidden;opacity:0;pointer-events:none;transition:opacity .18s}.overlay.is-open{visibility:visible;opacity:1;pointer-events:auto}.floating-panel{position:fixed;z-index:90;left:50%;top:120px;transform:translateX(-50%);width:min(900px,calc(100vw - 40px));max-height:68vh;overflow-y:auto;background:white;border-top:3px solid var(--pink);box-shadow:0 16px 45px #1e0e1745;padding:20px 24px;visibility:hidden;pointer-events:none;opacity:0;transition:opacity .18s}.floating-panel.is-open{visibility:visible;pointer-events:auto;opacity:1}.panel-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.panel-heading h2{font-size:20px}.close-button{height:44px;width:44px;border:0;background:var(--pale);font-size:25px;border-radius:9px}.directory-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px 32px}.directory-group h3{font-size:14px;color:#A4365C;margin:7px 0}.directory-group a{display:flex;gap:10px;align-items:baseline;padding:6px 0;border-bottom:1px solid var(--line);font-size:13px;min-height:44px}.directory-group a strong{font-size:14px;white-space:nowrap;color:var(--dark)}.directory-group a span{color:var(--sub)}.search-panel{width:min(640px,calc(100vw - 32px))}.search-panel label{display:block;font-size:13px;margin-bottom:7px}.search-panel input{height:45px;width:100%;border:1px solid #B7AAB0;border-radius:9px;padding:10px 12px;background:#fff}.search-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 10px;margin-top:16px}.search-results a{display:flex;align-items:center;min-height:44px;padding:8px 12px;background:#FFF9F8;border-radius:7px;font-size:14px}.search-results a[hidden]{display:none}.search-empty{margin-top:14px;color:var(--sub)}
@media(max-width:960px){.primary{gap:13px}.header-inner{gap:15px}.article-layout{grid-template-columns:minmax(0,1fr) 190px;gap:26px}.feature-secondary>div{grid-template-columns:1fr}.feature-secondary .media{grid-row:auto;height:170px}.app-entry{display:none}}
@media(max-width:700px){.wrap{width:calc(100% - 32px)}h1{font-size:26px}h2{font-size:20px}.top-name{font-size:11px}.top-right{font-size:11px;gap:6px}.top-search{display:none}.header-inner{min-height:58px}.brand-logo{height:27px;max-width:150px}.primary,.app-entry{display:none}.mobile-search{display:block}.menu-trigger{padding:0 9px}.menu-trigger span{margin-left:2px}.category-inner{gap:0 18px;min-height:66px;align-content:center}.category-link{display:none}.category-link.lian,.category-link.wan,.category-link.mobile-only{display:flex;min-height:34px}.category-link.mobile-only{order:-1}.category-link.lian{order:0}.category-link.wan{order:1}.hero{grid-template-columns:1fr;gap:22px;padding:37px 0 6px}.hero-copy>p{margin-top:16px}.hero .media-hero{height:210px}.home-section{margin-block:40px}.feature-grid,.split-block,.split-block.reverse,.rise-band,.mystery-section,.mobile-feature{grid-template-columns:1fr}.feature-secondary{grid-template-rows:auto}.feature-secondary>div{grid-template-columns:41% minmax(0,1fr);gap:8px 13px}.feature-secondary .media{grid-row:span 3;min-height:135px;height:100%}.feature-primary{padding:17px}.feature-primary .media{height:210px}.picks-block .media{height:200px}.picks-content{padding:18px}.split-block,.mystery-section{gap:15px}.split-block.reverse .media{order:0}.split-block .media,.mystery-section>.media{height:200px}.rise-band{gap:13px;padding:17px}.rise-band .media{height:195px}.rhythm{padding:19px}.rhythm-columns{grid-template-columns:1fr;gap:15px}.rhythm-columns>div+div{padding:14px 0 0;border-left:0;border-top:1px solid var(--line)}.mobile-feature{gap:20px;padding:18px}.mobile-pics .media-app{width:215px;height:350px}.adults{padding:20px}.questions-grid{grid-template-columns:1fr;gap:12px}.inside-page{padding:18px 0 40px}.article-layout{grid-template-columns:1fr;gap:22px}.side-links{position:static}.media-wide{height:200px}.media-brand{height:180px}.app-visual .media-app{width:220px;height:350px}.app-visual{gap:12px}.footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:23px}.floating-panel{top:95px;width:calc(100vw - 24px);max-height:72vh;padding:15px 17px}.directory-grid{grid-template-columns:1fr;gap:7px}.directory-group a{display:block;min-height:44px}.directory-group a strong{display:block}.directory-group a span{display:block;font-size:12px}.search-panel{width:calc(100vw - 32px)}.quick-links{gap:0 20px}.quick-links strong{flex-basis:100%}}
@media(max-width:360px){.brand strong{font-size:15px}.menu-trigger{font-size:12px}.category-inner{gap:0 11px}.category-link{font-size:12px}.feature-secondary>div{grid-template-columns:1fr}.feature-secondary .media{grid-row:auto;height:170px}.search-results{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important}}

/* Keep text full width when optional art is absent. */
.hero:not(:has(.media)),.split-block:not(:has(.media)),.split-block.reverse:not(:has(.media)),.rise-band:not(:has(.media)),.mystery-section:not(:has(.media)){grid-template-columns:minmax(0,1fr)}
.mobile-feature:not(:has(.media)){grid-template-columns:minmax(0,1fr)}
.feature-secondary>div:not(:has(.media)){grid-template-columns:minmax(0,1fr)}
