*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#FFF7FA;color:#5C2A3E;font:15px/1.7 -apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;overflow-x:hidden}a{color:inherit;text-decoration:none}button{font:inherit}img{display:block;max-width:100%;object-fit:contain;object-position:center}.shell{width:min(960px,calc(100% - 32px));margin:0 auto}.topline{position:fixed;z-index:80;top:0;left:0;right:0;height:18px;background:#C43B6E;color:#fff;font-size:12px}.topline-inner{height:18px;display:flex;align-items:center;justify-content:space-between}.text-btn{border:0;background:transparent;color:#fff;padding:0;cursor:pointer}.brandbar{position:fixed;z-index:79;top:18px;left:0;right:0;height:54px;background:#fff;border-bottom:1px solid rgba(232,90,139,.16)}.brandbar-inner{height:54px;display:flex;align-items:center;justify-content:space-between}.brandmark{display:flex;align-items:center;min-height:44px;font-weight:700;color:#4A1630;font-size:16px}.brandmark img{height:24px;width:auto}.brand-actions{display:flex;align-items:center;gap:8px}.plain-link,.wing-btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 14px;border-radius:999px}.plain-link{color:#C43B6E;font-weight:700}.wing-btn{border:1px solid rgba(232,90,139,.24);background:#FFE1EC;color:#C43B6E;font-weight:700;cursor:pointer}.grainbar{position:fixed;z-index:78;top:72px;left:0;right:0;height:44px;background:#FFEAF2;border-bottom:1px solid rgba(232,90,139,.16)}.grainbar-inner{height:44px;display:flex;align-items:center;gap:26px}.grain{display:inline-flex;align-items:center;gap:8px;font-size:13px;color:#8A4A62;min-height:44px}.grain span{width:10px;height:10px;border-radius:50%;border:2px solid #E85A8B}.grain.active{color:#4A1630;font-weight:700}.grain.active span{background:#C43B6E;border-color:#fff;box-shadow:0 0 0 2px #C43B6E}.site-main{padding-top:148px;padding-bottom:72px}.hero,.section,.note-box,.article{margin:0 0 24px;background:#fff;border:1px solid rgba(232,90,139,.16);border-radius:14px;box-shadow:0 12px 28px rgba(196,59,110,.10);padding:24px}.hero.soft,.section.soft{background:#FFEAF2}.kicker{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}.kicker a,.pill{display:inline-flex;align-items:center;min-height:32px;padding:0 12px;border-radius:999px;border:1px solid rgba(232,90,139,.22);background:#fff;color:#C43B6E;font-size:13px}.hero h1,.article h1{font-size:24px;line-height:1.3;color:#4A1630;margin:0 0 10px}.hero .lead{font-size:18px;line-height:1.55;color:#4A1630;margin:0 0 10px;font-weight:700}.hero p,.article p,.section p{margin:0 0 12px}.actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 18px;border-radius:999px;font-size:14px;font-weight:700}.btn.primary{background:linear-gradient(135deg,#FF7AA8 0%,#E85A8B 55%,#C43B6E 100%);color:#fff}.btn.secondary{background:#fff;color:#C43B6E;border:1px solid rgba(232,90,139,.22)}.btn:hover,.plain-link:hover,.grain:hover,.footer-grid a:hover,.wing-groups a:hover{text-decoration:underline}.btn:focus-visible,.wing-btn:focus-visible,.text-btn:focus-visible,a:focus-visible,.icon-close:focus-visible{outline:3px solid rgba(232,90,139,.35);outline-offset:2px}.section h2,.article h2{font-size:20px;color:#4A1630;margin:0 0 12px}.section h3,.article h3{font-size:16px;color:#4A1630;margin:16px 0 8px}.split{display:grid;grid-template-columns:1fr 1fr;gap:18px;align-items:start}.split.wide-left{grid-template-columns:1.2fr .8fr}.media-slot,.media-compact,.media-tall,.media-banner,.media-grain{display:flex;align-items:center;justify-content:center;background:#FFE1EC;border-radius:14px;overflow:hidden}.media-slot{width:100%;height:168px}.media-compact{width:100%;height:160px}.media-grain{width:240px;height:176px}.media-tall{width:240px;height:320px}.media-banner{width:100%;height:200px}.media-slot img,.media-compact img,.media-grain img,.media-tall img,.media-banner img{width:100%;height:100%}.grain-cut{display:grid;grid-template-columns:260px 1fr;gap:22px;align-items:center}.dual-pink{display:grid;grid-template-columns:1fr 1fr;gap:16px}.dual-pink article{background:#FFEAF2;border-radius:14px;padding:18px}.crumb-pages{display:grid;grid-template-columns:1fr 1fr;gap:18px}.crumb-pages article{border-left:4px solid #E85A8B;padding:4px 0 4px 16px}.gaze-card{display:grid;grid-template-columns:.8fr 1.2fr;gap:18px;align-items:center}.story-flow p:first-of-type::first-letter{float:left;font-size:44px;line-height:1;padding-right:8px;color:#E85A8B;font-weight:700}.steps{counter-reset:step;display:grid;gap:12px}.step{position:relative;padding:16px 16px 16px 62px;background:#FFF7FA;border:1px solid rgba(232,90,139,.16);border-radius:14px}.step:before{counter-increment:step;content:counter(step);position:absolute;left:16px;top:16px;width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#E85A8B;color:#fff;font-weight:700}.mood-list,.status-list,.week-list,.faq-list{display:grid;gap:12px}.mood-item,.status-item,.week-item,.faq-item{padding:16px;border-radius:14px;background:#FFF7FA;border:1px solid rgba(232,90,139,.16)}.mood-item h3,.status-item h3,.week-item h3,.faq-item h3{margin-top:0}.wrap-app{display:grid;grid-template-columns:1fr 240px;gap:24px;align-items:start}.app-art{position:relative}.app-art .icon-badge{position:absolute;left:-26px;top:24px;width:64px;height:64px;border-radius:18px;background:#fff;padding:8px;box-shadow:0 12px 28px rgba(196,59,110,.10)}.app-art .icon-badge img{width:48px;height:48px}.rules{display:grid;gap:12px}.rule{padding:16px;border-left:4px solid #C43B6E;background:#FFEAF2;border-radius:10px}.site-footer{background:#4A1630;color:#F8D6E4;border-top:1px solid rgba(255,255,255,.08);padding:30px 0 68px}.footer-brandline{display:flex;align-items:center;gap:10px;margin-bottom:22px}.footer-brandline img{height:24px;width:auto}.footer-brandline strong{color:#fff}.footer-brandline span{font-size:12px}.footer-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.footer-grid section{display:grid;gap:6px}.footer-grid h2{font-size:14px;color:#fff;margin:0 0 6px}.footer-grid a{font-size:13px}.footer-note,.copyright{font-size:13px;margin:20px 0 0}.overlay{position:fixed;z-index:90;inset:0;background:rgba(74,22,48,.32);opacity:0;visibility:hidden;pointer-events:none;transition:.2s}.overlay.show{opacity:1;visibility:visible;pointer-events:auto}.wing-panel{position:fixed;z-index:100;right:16px;top:84px;width:min(42vw,520px);max-height:72vh;overflow:auto;background:#fff;border-radius:16px;box-shadow:0 24px 70px rgba(74,22,48,.24);padding:18px;transform:translateX(calc(100% + 32px));visibility:hidden;pointer-events:none;transition:.22s}.wing-panel.show{transform:translateX(0);visibility:visible;pointer-events:auto}.wing-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:12px;border-bottom:1px solid rgba(232,90,139,.16)}.wing-brand{display:flex;align-items:center;gap:8px}.wing-brand img{height:24px;width:auto}.icon-close{min-height:40px;border:1px solid rgba(232,90,139,.2);background:#FFEAF2;color:#C43B6E;border-radius:999px;padding:0 14px;cursor:pointer}.wing-groups{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:14px}.wing-groups h2{font-size:14px;color:#4A1630;margin:0 0 8px}.wing-groups a{display:block;padding:10px 0;border-top:1px solid rgba(232,90,139,.12)}.wing-groups a b{display:block;color:#4A1630;font-size:14px}.wing-groups a span{display:block;color:#8A4A62;font-size:12px;line-height:1.5}.search-panel{position:fixed;z-index:101;left:50%;top:84px;transform:translateX(-50%) translateY(-14px);width:min(760px,calc(100% - 32px));opacity:0;visibility:hidden;pointer-events:none;transition:.2s}.search-panel.show{opacity:1;visibility:visible;pointer-events:auto;transform:translateX(-50%) translateY(0)}.search-card{background:#fff;border-radius:16px;padding:18px;box-shadow:0 24px 70px rgba(74,22,48,.24)}.search-head{display:flex;align-items:center;justify-content:space-between}.search-head strong{color:#4A1630}.search-presets{display:flex;gap:10px;flex-wrap:wrap}.search-presets a{display:inline-flex;align-items:center;min-height:40px;padding:0 14px;border-radius:999px;background:#FFE1EC;color:#C43B6E}.mobile-bottom{display:none}.locked{overflow:hidden}.quote{padding:16px 18px;border-radius:14px;background:#FFEAF2;color:#4A1630}.muted{color:#8A4A62}.compact-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.compact-grid .note-box{margin:0}.info-table{width:100%;border-collapse:collapse}.info-table th,.info-table td{text-align:left;vertical-align:top;padding:12px;border-bottom:1px solid rgba(232,90,139,.16)}.info-table th{color:#4A1630;width:28%}
@media(max-width:760px){.grainbar{display:none}.site-main{padding-top:92px;padding-bottom:88px}.brandbar-inner{gap:8px}.brand-actions{gap:2px}.plain-link,.wing-btn{padding:0 10px}.split,.split.wide-left,.dual-pink,.crumb-pages,.gaze-card,.grain-cut,.wrap-app,.compact-grid{grid-template-columns:1fr}.grain-cut{align-items:start}.media-grain,.media-tall{width:100%}.media-grain{height:176px}.media-tall{height:320px}.wrap-app .media-tall{width:240px;max-width:100%;margin-left:auto}.app-art .icon-badge{left:auto;right:8px}.footer-grid{grid-template-columns:1fr 1fr}.site-footer{padding-bottom:88px}.wing-panel{top:80px;right:16px;width:88%;max-height:72vh}.wing-groups{grid-template-columns:1fr}.search-panel{inset:0;width:100%;transform:none;background:#C43B6E;padding:72px 16px 16px}.search-panel.show{transform:none}.search-card{height:100%;background:#C43B6E;color:#fff;box-shadow:none}.search-head strong,.search-card p{color:#fff}.search-presets a{background:#fff;color:#C43B6E}.search-card .icon-close{background:#fff}.mobile-bottom{display:grid;position:fixed;z-index:75;bottom:0;left:0;right:0;grid-template-columns:repeat(4,1fr);height:calc(48px + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);background:#fff;border-top:1px solid rgba(232,90,139,.16)}.mobile-bottom a{display:flex;align-items:center;justify-content:center;min-height:48px;font-size:13px}.mobile-bottom a.active{background:#E85A8B;color:#fff}.hero,.section,.article,.note-box{padding:18px}.shell{width:calc(100% - 32px)}.hero h1,.article h1{font-size:24px}}
