:root {
  --base: #0b0b0b; --sizecolor: #f2f2f2; --clickcolor: #fe2c55; --contrast: #222; --contrast-2: #aaa;
}
body { background: #1a1a1a; margin: 0; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Microsoft YaHei", sans-serif; }
a { color: inherit; }

*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#FFF8FB;color:#51444C;font:16px/1.75 system-ui,-apple-system,"Segoe UI",sans-serif;overflow-x:hidden}a{color:inherit;text-decoration:none}button{font:inherit}.wrap{width:min(1200px,calc(100% - 40px));margin:auto}.notice{background:#FFF0F6;color:#7C6D76;font-size:13px}.notice-inner{min-height:34px;display:flex;align-items:center;justify-content:space-between;gap:20px}.notice-links{display:flex;gap:18px}.site-head{position:sticky;top:0;z-index:30}.main-nav{background:rgba(255,255,255,.96);border-bottom:1px solid rgba(255,93,158,.15);backdrop-filter:blur(12px)}.nav-inner{height:72px;display:flex;align-items:center;gap:26px}.brand{font-size:22px;font-weight:850;color:#D94C83;white-space:nowrap}.desktop-links{display:flex;gap:6px;margin:auto}.desktop-links a{padding:10px 14px;border-radius:999px;white-space:nowrap}.desktop-links a:hover,.desktop-links .is-active{background:#FFF0F6;color:#D94C83}.nav-actions{display:flex;align-items:center;gap:10px}.primary,.channel-btn,.ghost{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 20px;border-radius:999px;border:0;cursor:pointer;font-weight:750}.primary{color:#fff;background:linear-gradient(135deg,#FF8EAC 0%,#FF5D9E 52%,#8C76E8 100%);box-shadow:0 18px 46px rgba(217,76,131,.15)}.primary.small{min-height:42px;padding:0 16px}.channel-btn,.ghost{background:#fff;border:1px solid rgba(255,93,158,.18);color:#51444C}.mobile-menu{display:none}.hero{padding:72px 0 44px}.hero-grid{display:grid;grid-template-columns:1.15fr .72fr .8fr;gap:28px;align-items:center}.eyebrow{color:#D94C83;font-weight:800;letter-spacing:.08em}.hero h1,.page-hero h1{font-size:clamp(38px,5vw,68px);line-height:1.08;color:#32262D;margin:.2em 0}.lead{font-size:18px;color:#7C6D76;max-width:760px}.actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:26px}.phone-art{aspect-ratio:9/16;border-radius:38px;background:linear-gradient(160deg,#fff,#FFF0F6 48%,#F7F3FF);border:10px solid #fff;box-shadow:0 18px 46px rgba(217,76,131,.15);display:grid;place-items:center;padding:24px;text-align:center}.phone-art:before{content:'生活 · 兴趣 · 记录';font-weight:850;color:#D94C83}.stack{display:grid;gap:18px}.card,.feature,.faq details{background:#fff;border:1px solid rgba(255,93,158,.15);border-radius:22px;padding:24px;box-shadow:0 14px 36px rgba(76,48,66,.08)}.card h2,.card h3,.feature h3{margin-top:0;color:#32262D}.section{padding:54px 0}.soft{background:#FFF0F6}.lavender{background:#F7F3FF}.section-head{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:24px}.section-head h2{font-size:clamp(28px,4vw,42px);line-height:1.2;color:#32262D;margin:0}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.grid.four{grid-template-columns:repeat(4,1fr)}.grid.two{grid-template-columns:repeat(2,1fr)}.tags{display:flex;gap:8px;flex-wrap:wrap}.tag{padding:5px 10px;background:#FFF0F6;border-radius:999px;color:#D94C83;font-size:13px}.text-link{color:#D94C83;font-weight:800}.topic-strip{display:flex;gap:14px;overflow:auto;padding:4px 0 12px;scroll-snap-type:x proximity}.topic-strip .card{min-width:230px;scroll-snap-align:start}.page-hero{padding:68px 0 32px}.page-hero .lead{max-width:850px}.content-layout{display:grid;grid-template-columns:1fr 300px;gap:28px}.article{background:#fff;border-radius:26px;padding:34px;border:1px solid rgba(255,93,158,.15)}.article h2{color:#32262D;margin-top:1.6em}.article h2:first-child{margin-top:0}.article ul{padding-left:1.2em}.aside{display:grid;gap:16px;align-content:start}.aside .card{position:sticky;top:130px}.faq{display:grid;gap:12px}.faq details{padding:18px 22px}.faq summary{cursor:pointer;font-weight:800;color:#32262D}.footer{background:#30242B;color:#FFEAF2;padding:52px 0 110px}.footer-grid{display:grid;grid-template-columns:1.5fr repeat(4,1fr);gap:28px}.footer h2{font-size:15px;color:#fff}.footer a{display:block;color:#FFEAF2;margin:7px 0}.footer-brand{font-size:24px;font-weight:850}.footer-note{border-top:1px solid rgba(255,255,255,.12);margin-top:34px;padding-top:22px;color:#d9c5cd}.menu-mask{position:fixed;inset:0;background:rgba(48,36,43,.34);z-index:39;opacity:0;visibility:hidden;pointer-events:none;transition:.2s}.menu-mask.open{opacity:1;visibility:visible;pointer-events:auto}.channel-panel{position:fixed;z-index:40;left:50%;top:106px;transform:translate(-50%,-12px);width:min(1200px,calc(100% - 40px));max-height:calc(100vh - 130px);overflow:auto;background:#fff;border-radius:0 0 24px 24px;box-shadow:0 18px 46px rgba(76,48,66,.16);opacity:0;visibility:hidden;pointer-events:none;transition:.2s}.channel-panel.open{opacity:1;visibility:visible;pointer-events:auto;transform:translate(-50%,0)}.panel-head{display:flex;justify-content:space-between;align-items:center;padding:18px 22px;border-bottom:1px solid rgba(255,93,158,.15)}.panel-head button{border:0;background:#FFF0F6;border-radius:999px;padding:8px 14px}.drag{display:none}.panel-groups{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;padding:22px}.panel-groups h2{font-size:14px;color:#A09199}.panel-groups a{display:block;padding:10px;border-radius:14px}.panel-groups a:hover{background:#FFF8FB}.panel-groups b,.panel-groups span{display:block}.panel-groups span{font-size:13px;color:#7C6D76}.bottom-nav{display:none}.menu-open{overflow:hidden}:focus-visible{outline:3px solid #8C76E8;outline-offset:3px}@media(max-width:850px){.wrap{width:min(100% - 32px,1200px)}.notice-links a:first-child{display:none}.desktop-links,.desktop-menu{display:none}.mobile-menu{display:inline-flex}.nav-inner{height:64px;justify-content:space-between;gap:8px}.brand{font-size:19px}.nav-actions .primary{min-height:44px;padding:0 14px}.hero{padding-top:44px}.hero-grid,.content-layout{grid-template-columns:1fr}.hero-grid .phone-art{width:min(300px,78vw);margin:auto}.stack{grid-template-columns:1fr 1fr}.grid,.grid.four,.grid.two{grid-template-columns:1fr}.section{padding:40px 0}.article{padding:24px}.aside .card{position:static}.channel-panel{top:auto;bottom:0;left:0;transform:translateY(105%);width:100%;max-height:85vh;border-radius:26px 26px 0 0}.channel-panel.open{transform:translateY(0)}.panel-groups{grid-template-columns:1fr;padding:12px 18px 30px}.panel-groups section{display:contents}.panel-groups h2{display:none}.panel-groups a{min-height:52px;border-bottom:1px solid rgba(255,93,158,.1)}.drag{display:block;width:42px;height:5px;border-radius:999px;background:#e5d9df}.bottom-nav{position:fixed;z-index:25;left:0;right:0;bottom:0;display:grid;grid-template-columns:repeat(5,1fr);background:#fff;border-top:1px solid rgba(255,93,158,.15);padding-bottom:env(safe-area-inset-bottom)}.bottom-nav a{min-height:58px;display:grid;place-items:center;font-size:13px}.footer{padding-bottom:110px}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child{grid-column:1/-1}}@media(max-width:520px){.stack{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr}.footer-grid>div:first-child{grid-column:auto}.notice-inner{font-size:12px}.channel-btn{padding:0 12px}.hero h1,.page-hero h1{font-size:40px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

/* === shell layout (paired with target theme CSS above) === */
.header-box { width: 100%; }
.header {
  height: 70px; display: flex; align-items: center; justify-content: space-between;
  padding: 0 20px; position: sticky; top: 0; z-index: 1000;
  background: var(--base, #000); color: var(--sizecolor, #fff);
}
.logo img { height: 50px; width: auto; border-radius: 10px; }
.nav { display: flex; flex-wrap: wrap; gap: 14px 18px; align-items: center; }
.nav a { color: var(--sizecolor, #fff); text-decoration: none; font-size: 15px; }
.nav a:hover, .nav a.active { color: var(--clickcolor, #fe2c55); }
button.menu-btn {
  display: none; background: none; border: none; color: var(--sizecolor, #fff);
  font-size: 26px; cursor: pointer;
}
main {
  max-width: 1100px; margin: 16px auto; padding: 28px 24px;
  background: var(--base, #111); border-radius: 8px;
  color: var(--sizecolor, #eee);
}
.content a { color: var(--clickcolor, #fe2c55); font-weight: 600; }
.content h1, .content h2 {
  font-size: 20px; padding: 0.9em 1em; text-align: center; margin: 0 0 18px;
  background: #fff; color: #111;
}
.content h3 { margin: 1.2em 0 0.6em; font-size: 18px; }
.content p { margin: 0 0 1.2em; line-height: 1.75; }
.content ul, .content ol { margin: 0 0 1.2em 1.6em; }
.img-box { text-align: center; margin: 16px 0 22px; }
.img-box img, .content img {
  max-width: 860px; width: 100%; height: auto; border-radius: 12px; display: block; margin: 0 auto;
}
.footer {
  background: var(--base, #000); color: var(--sizecolor, #fff);
  padding: 28px 16px; margin-top: 28px; text-align: center;
}
.footer a { color: var(--sizecolor, #fff); margin: 0 10px 8px; display: inline-block; text-decoration: none; }
.footer-bottom { margin-top: 14px; font-size: 13px; opacity: 0.85; }
.overlay {
  position: fixed; inset: 0; background: rgba(0,0,0,0.55); display: none; z-index: 2000;
}
.overlay.is-open { display: block; }
.sidebar {
  width: 280px; height: 100%; background: var(--base, #111); padding: 20px; position: relative;
}
.sidebar .menu a {
  display: block; padding: 14px 8px; color: var(--sizecolor, #fff); text-decoration: none; font-size: 18px;
}
button.close-btn {
  position: absolute; top: 16px; right: -52px; width: 40px; height: 40px;
  background: #333; color: #fff; border: none; cursor: pointer;
}
.right-area { position: absolute; left: 280px; right: 0; top: 0; bottom: 0; }
.ads-top-bar { margin: 10px 0 22px; }
#applist {
  text-align: center; margin: 8px 0; padding: 14px 10px;
  border: 1px solid rgba(255,255,255,0.12); border-radius: 10px; background: rgba(0,0,0,0.35);
}
#applist .applist-title { font-weight: bold; margin-bottom: 10px; }
#ads { display: flex; justify-content: center; flex-wrap: wrap; gap: 8px; }
#ads .ads-item, #ads > div { width: 70px; text-align: center; }
#ads img { width: 65px; height: 65px; object-fit: cover; border-radius: 18px; display: block; margin: 0 auto; }
#ads .caption, #ads figcaption {
  font-size: 12px; max-width: 100px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; margin: 4px auto 0;
}
.related { margin-top: 28px; padding-top: 14px; border-top: 1px solid rgba(255,255,255,0.12); }
@media (max-width: 768px) {
  .nav { display: none !important; }
  button.menu-btn { display: block !important; }
}
