:root{--c-primary: #7eb62b;--c-primary-deep: #5c8c1e;--c-accent: #44c54d;--c-highlight: #ab24db;--c-highlight-deep: #8419b0;--c-bg: #fafbf8;--c-surface: #ffffff;--c-text: #252c1b;--c-text-2: #6e7a5c;--c-border: #e1e6db;--c-ink-soft: rgba(37, 44, 27, .55);--radius: 8px;--font-head: "Noto Serif SC", "Songti SC", Georgia, "Times New Roman", serif;--font-body: system-ui, -apple-system, "PingFang SC", "Microsoft YaHei", "Segoe UI", sans-serif;--shadow-soft: 0 8px 24px rgba(37, 44, 27, .08);--shadow-lift: 0 16px 40px rgba(37, 44, 27, .16);--paper-lines: rgba(110, 122, 92, .05)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:var(--font-body);color:var(--c-text);background:var(--c-bg);background-image:linear-gradient(var(--paper-lines) 1px,transparent 1px),linear-gradient(90deg,var(--paper-lines) 1px,transparent 1px);background-size:44px 44px;line-height:1.7;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}img,svg{display:block;max-width:100%}h1,h2,h3,h4{font-family:var(--font-head);line-height:1.35;margin:0}p{margin:0}a{color:inherit;text-decoration:none}button{font-family:inherit;cursor:pointer}::selection{background:#ab24db2e}.fx{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:90}.fx-grain{opacity:.4;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='200'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.82' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}.fx-vignette{z-index:91;background:radial-gradient(ellipse at center,transparent 52%,rgba(98,78,28,.2) 100%)}.fx-warm{z-index:89;background:radial-gradient(ellipse at 18% 0%,rgba(248,186,105,.14),transparent 58%),radial-gradient(ellipse at 100% 90%,rgba(126,182,43,.08),transparent 55%);mix-blend-mode:multiply}.film-strip{position:fixed;top:0;left:0;right:0;height:14px;z-index:92;background:repeating-linear-gradient(90deg,#252c1b 0 26px,transparent 26px 34px);border-bottom:1px solid rgba(255,255,255,.12);opacity:.92}.site-header{position:sticky;top:14px;z-index:50;background:#fafbf8e6;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--c-border)}.header-inner{max-width:1120px;margin:0 auto;padding:12px 22px;display:flex;align-items:center;justify-content:space-between;gap:18px}.brand{display:flex;align-items:center;gap:12px}.brand-mark{font-size:30px;filter:drop-shadow(0 2px 4px rgba(37,44,27,.2));transition:transform .35s ease}.brand:hover .brand-mark{transform:rotate(-6deg) scale(1.08)}.brand-text{display:flex;flex-direction:column;line-height:1.2}.brand-text strong{font-family:var(--font-head);font-size:19px;font-weight:900;letter-spacing:1px;color:var(--c-text)}.brand-text strong b{color:var(--c-primary);font-weight:900}.brand-text em{font-style:normal;font-size:12px;color:var(--c-text-2);letter-spacing:2px}.site-nav{display:flex;align-items:center;gap:6px}.site-nav a{display:inline-flex;align-items:center;gap:7px;padding:8px 14px;border-radius:var(--radius);font-size:15px;color:var(--c-text-2);border:1px solid transparent;transition:all .25s ease}.site-nav a:hover{color:var(--c-primary-deep);background:#7eb62b1a}.site-nav a.active{color:var(--c-text);background:var(--c-surface);border-color:var(--c-border);box-shadow:var(--shadow-soft);font-weight:700}.site-nav a.active .nav-ico{transform:scale(1.12)}.nav-ico{font-size:16px;transition:transform .25s ease}.menu-toggle{display:none;flex-direction:column;gap:5px;background:none;border:1px solid var(--c-border);border-radius:var(--radius);padding:10px 11px;background:var(--c-surface)}.menu-toggle span{width:20px;height:2px;background:var(--c-text);border-radius:2px;transition:all .25s ease}.menu-toggle.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}.menu-toggle.open span:nth-child(2){opacity:0}.menu-toggle.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.site-main{min-height:68vh}.btn{display:inline-flex;align-items:center;gap:8px;padding:12px 22px;border-radius:var(--radius);border:1px solid transparent;font-size:15px;font-weight:700;letter-spacing:1px;transition:transform .18s ease,box-shadow .25s ease,background .25s ease,color .25s ease}.btn:active{transform:translateY(1px) scale(.98)}.btn-primary{background:var(--c-primary);color:#fff;box-shadow:0 6px 18px #7eb62b59}.btn-primary:hover{background:var(--c-primary-deep);transform:translateY(-2px);box-shadow:0 10px 24px #7eb62b6b}.btn-accent{background:var(--c-highlight);color:#fff;box-shadow:0 6px 18px #ab24db52}.btn-accent:hover{background:var(--c-highlight-deep);transform:translateY(-2px);box-shadow:0 10px 24px #ab24db66}.btn-ghost{background:var(--c-surface);border-color:var(--c-border);color:var(--c-text);box-shadow:var(--shadow-soft)}.btn-ghost:hover{border-color:var(--c-primary);color:var(--c-primary-deep);transform:translateY(-2px)}.btn-block{width:100%;justify-content:center}.section{padding:64px 22px}.wrap{max-width:1120px;margin:0 auto}.section-title{font-size:28px;font-weight:900;letter-spacing:2px;color:var(--c-text)}.section-title:after{content:"";display:block;width:92px;height:10px;margin-top:10px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 92 10'%3E%3Cpath d='M2 7 Q 12 2 22 7 T 42 7 T 62 7 T 82 7' fill='none' stroke='%23ab24db' stroke-width='3' stroke-linecap='round'/%3E%3C/svg%3E") no-repeat}.section-sub{margin-top:10px;color:var(--c-text-2);font-size:15px;letter-spacing:1px}.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:26px;flex-wrap:wrap}.section-more{font-size:14px;color:var(--c-highlight);font-weight:700;display:inline-flex;align-items:center;gap:4px;transition:gap .2s ease}.section-more:hover{gap:9px}.reveal{opacity:0;transform:translateY(26px);transition:opacity .75s ease,transform .75s cubic-bezier(.2,.7,.2,1)}.reveal.in{opacity:1;transform:none}.hero{padding:56px 22px 30px;position:relative}.hero-inner{max-width:1120px;margin:0 auto;display:grid;grid-template-columns:1.15fr .85fr;gap:40px;align-items:center}.hero-kicker{display:inline-flex;align-items:center;gap:8px;font-size:13px;letter-spacing:3px;color:var(--c-primary-deep);background:#7eb62b1f;border:1px dashed var(--c-primary);border-radius:999px;padding:6px 14px;margin-bottom:18px}.hero-title{font-size:clamp(32px,5vw,52px);font-weight:900;letter-spacing:3px}.hero-title .hl{position:relative;color:var(--c-primary-deep);white-space:nowrap}.hero-title .hl:after{content:"";position:absolute;left:0;right:0;bottom:-6px;height:12px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 92 10'%3E%3Cpath d='M2 7 Q 12 2 22 7 T 42 7 T 62 7 T 82 7' fill='none' stroke='%23ab24db' stroke-width='3.4' stroke-linecap='round'/%3E%3C/svg%3E") no-repeat;background-size:100% 100%}.hero-sub{margin-top:26px;color:var(--c-text-2);font-size:16px;max-width:46ch;letter-spacing:.5px}.hero-cta{display:flex;gap:14px;margin-top:30px;flex-wrap:wrap}.hero-note{margin-top:18px;font-size:13px;color:var(--c-text-2);display:flex;align-items:center;gap:6px}.hero-reel{position:relative;background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--radius);box-shadow:var(--shadow-lift);padding:18px 14px 10px;transform:rotate(1.2deg);transition:transform .4s ease}.hero-reel:hover{transform:rotate(0)}.hero-reel:before{content:"♥ 本周热映 · 情绪放映厅 ♥";display:block;text-align:center;font-family:var(--font-head);font-size:13px;letter-spacing:3px;color:var(--c-text-2);margin-bottom:12px}.reel-track{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}.reel{display:flex;gap:14px;width:max-content;animation:reel 42s linear infinite}.reel-track:hover .reel{animation-play-state:paused}@keyframes reel{to{transform:translate(-50%)}}.reel-card{width:118px;flex:none;background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--radius);padding:10px;text-align:center;box-shadow:var(--shadow-soft);transition:transform .25s ease,box-shadow .25s ease}.reel-card:hover{transform:translateY(-5px) rotate(-2deg);box-shadow:var(--shadow-lift)}.reel-cover{height:96px;border-radius:6px;display:flex;align-items:center;justify-content:center;font-size:44px;background:linear-gradient(150deg,var(--cover-a),var(--cover-b))}.reel-name{margin-top:8px;font-size:13px;font-weight:700}.reel-tag{font-size:11px;color:var(--c-text-2)}.stats{margin-top:46px}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.stat{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--radius);padding:18px 12px;text-align:center;box-shadow:var(--shadow-soft);transition:transform .25s ease}.stat:hover{transform:translateY(-4px)}.stat b{display:block;font-family:var(--font-head);font-size:26px;color:var(--c-primary-deep)}.stat span{font-size:13px;color:var(--c-text-2)}.emotion-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.emotion-card{position:relative;background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--radius);padding:22px 20px;box-shadow:var(--shadow-soft);overflow:hidden;transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease}.emotion-card:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 90% 10%,var(--emo-c, rgba(171,36,219,.1)),transparent 60%);pointer-events:none}.emotion-card:hover{transform:translateY(-6px);border-color:var(--emo-c);box-shadow:var(--shadow-lift)}.emotion-top{display:flex;align-items:center;gap:12px;margin-bottom:12px}.emotion-emoji{width:48px;height:48px;border-radius:var(--radius);display:flex;align-items:center;justify-content:center;font-size:26px;background:var(--emo-bg, rgba(171,36,219,.1));border:1px solid var(--emo-c, transparent);transition:transform .3s ease}.emotion-card:hover .emotion-emoji{transform:scale(1.14) rotate(-6deg)}.emotion-name{font-family:var(--font-head);font-size:19px;font-weight:700}.emotion-count{font-size:12px;color:var(--c-text-2)}.emotion-desc{font-size:14px;color:var(--c-text-2)}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;counter-reset:step}.step{position:relative;background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--radius);padding:30px 22px 24px;box-shadow:var(--shadow-soft);transition:transform .28s ease}.step:hover{transform:translateY(-6px)}.step:before{counter-increment:step;content:counter(step,decimal-leading-zero);position:absolute;top:14px;right:16px;font-family:var(--font-head);font-size:40px;font-weight:900;color:transparent;-webkit-text-stroke:1.5px var(--c-border)}.step-ico{font-size:40px;margin-bottom:14px;filter:drop-shadow(0 3px 6px rgba(37,44,27,.18))}.step h3{font-size:19px;margin-bottom:8px}.step p{font-size:14px;color:var(--c-text-2)}.quote-card{position:relative;background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--radius);padding:40px 34px;box-shadow:var(--shadow-lift);text-align:center;overflow:hidden}.quote-card:before,.quote-card:after{content:"❝";position:absolute;font-family:Georgia,serif;font-size:90px;color:var(--c-primary);opacity:.16;top:-6px;left:16px;line-height:1}.quote-card:after{content:"❞";top:auto;bottom:-30px;right:16px}.quote-text{font-family:var(--font-head);font-size:21px;letter-spacing:2px;max-width:56ch;margin:0 auto}.quote-by{margin-top:16px;font-size:13px;letter-spacing:3px;color:var(--c-text-2)}.book-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.book-card{position:relative;background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow-soft);cursor:pointer;transition:transform .3s ease,box-shadow .3s ease}.book-card:hover{transform:translateY(-8px) rotate(-.6deg);box-shadow:var(--shadow-lift)}.cover-art{position:relative;height:200px;display:flex;align-items:center;justify-content:center;background:linear-gradient(150deg,var(--cover-a),var(--cover-b));overflow:hidden}.cover-art:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.5'/%3E%3C/svg%3E");opacity:.35;mix-blend-mode:overlay;pointer-events:none}.cover-art:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;box-shadow:inset 0 0 60px #252c1b59;pointer-events:none}.cover-emoji{font-size:76px;filter:drop-shadow(0 8px 14px rgba(37,44,27,.28));transition:transform .4s cubic-bezier(.34,1.56,.64,1)}.book-card:hover .cover-emoji{transform:scale(1.12) rotate(-4deg)}.cover-tag{position:absolute;top:12px;left:12px;font-size:12px;font-weight:700;color:#fff;letter-spacing:1px;padding:4px 10px;border-radius:999px;box-shadow:0 3px 8px #252c1b40}.cover-reel{position:absolute;bottom:10px;right:12px;font-size:16px;opacity:.8;animation:wiggle 3s ease-in-out infinite}@keyframes wiggle{0%,to{transform:rotate(0)}50%{transform:rotate(8deg)}}.book-info{padding:16px 18px 18px}.book-title{font-size:20px;font-weight:900;letter-spacing:1px}.book-meta{margin-top:6px;font-size:12px;color:var(--c-text-2);letter-spacing:1px}.book-desc{margin-top:10px;font-size:13.5px;color:var(--c-text-2);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.book-cta{display:inline-flex;align-items:center;gap:5px;margin-top:14px;font-size:14px;font-weight:700;color:var(--c-highlight)}.book-card:hover .book-cta{gap:9px}.frame-corners{position:relative}.frame-corners:before,.frame-corners:after{content:"";position:absolute;width:16px;height:16px;border:2px solid var(--c-ink-soft);z-index:3;pointer-events:none}.frame-corners:before{top:8px;left:8px;border-right:none;border-bottom:none}.frame-corners:after{bottom:8px;right:8px;border-left:none;border-top:none}.page-hero{padding:46px 22px 26px;text-align:center}.page-hero h1{font-size:clamp(30px,4vw,42px);font-weight:900;letter-spacing:4px}.page-hero p{margin-top:12px;color:var(--c-text-2);max-width:58ch;margin-inline:auto}.filter-bar{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin:26px 0 4px}.filter-chip{padding:8px 16px;border-radius:999px;border:1px solid var(--c-border);background:var(--c-surface);font-size:14px;color:var(--c-text-2);transition:all .22s ease}.filter-chip:hover{border-color:var(--c-primary);color:var(--c-primary-deep);transform:translateY(-2px)}.filter-chip.on{background:var(--c-primary);color:#fff;border-color:var(--c-primary);box-shadow:0 5px 14px #7eb62b4d}.reader-shell{padding:30px 22px 60px}.reader-bar{max-width:880px;margin:0 auto 22px;display:flex;align-items:center;gap:14px;flex-wrap:wrap}.back-btn{display:inline-flex;align-items:center;gap:6px;background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--radius);padding:9px 14px;font-size:14px;font-weight:600;box-shadow:var(--shadow-soft);transition:all .22s ease}.back-btn:hover{border-color:var(--c-primary);color:var(--c-primary-deep);transform:translate(-3px)}.reader-title-block{flex:1;min-width:200px}.reader-title-block h1{font-size:24px;font-weight:900;letter-spacing:1px}.reader-tags{display:flex;gap:8px;margin-top:6px;flex-wrap:wrap}.pill{font-size:12px;font-weight:700;padding:3px 10px;border-radius:999px;color:#fff;letter-spacing:1px}.reader-frame{max-width:880px;margin:0 auto;background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--radius);box-shadow:var(--shadow-lift);padding:26px}.tabs{display:flex;gap:8px;margin-bottom:22px;flex-wrap:wrap}.tab{flex:1;min-width:120px;padding:12px 10px;border-radius:var(--radius);border:1px solid var(--c-border);background:var(--c-bg);font-size:15px;font-weight:700;color:var(--c-text-2);transition:all .22s ease}.tab:hover{border-color:var(--c-primary)}.tab.on{background:var(--c-primary);color:#fff;border-color:var(--c-primary);box-shadow:0 6px 16px #7eb62b4d}.tab .tab-dot{display:inline-block;margin-right:5px}.story-page{text-align:center;animation:pageIn .5s ease both}@keyframes pageIn{0%{opacity:0;transform:translate(26px)}to{opacity:1;transform:none}}.story-illust{width:min(360px,82vw);aspect-ratio:4 / 3;margin:0 auto 22px;border-radius:var(--radius);display:flex;align-items:center;justify-content:center;font-size:clamp(72px,16vw,120px);background:linear-gradient(150deg,var(--cover-a),var(--cover-b));border:1px solid var(--c-border);position:relative;overflow:hidden;box-shadow:inset 0 0 40px #252c1b40}.story-illust:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.5'/%3E%3C/svg%3E");opacity:.3;mix-blend-mode:overlay;pointer-events:none}.story-illust .il-emoji{filter:drop-shadow(0 10px 18px rgba(37,44,27,.3));animation:floaty 4s ease-in-out infinite}@keyframes floaty{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.story-text{font-family:var(--font-head);font-size:21px;letter-spacing:1.5px;max-width:56ch;margin:0 auto;line-height:2}.story-pageno{margin-top:14px;font-size:13px;color:var(--c-text-2);letter-spacing:2px}.story-nav{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:24px}.dots{display:flex;gap:7px;justify-content:center;flex:1;flex-wrap:wrap}.dot{width:9px;height:9px;border-radius:50%;background:var(--c-border);transition:all .25s ease}.dot.on{background:var(--c-highlight);transform:scale(1.35)}.progress-track{height:6px;background:var(--c-border);border-radius:999px;overflow:hidden;margin-bottom:18px}.progress-fill{height:100%;background:linear-gradient(90deg,var(--c-primary),var(--c-accent));border-radius:999px;transition:width .45s ease}.talk-list{display:grid;gap:14px}.talk-item{display:flex;gap:12px;align-items:flex-start;background:var(--c-bg);border:1px solid var(--c-border);border-radius:var(--radius);padding:16px;transition:all .25s ease}.talk-item:hover{border-color:var(--c-primary)}.talk-emoji{font-size:24px}.talk-item p{font-size:16px;font-family:var(--font-head)}.talk-check{margin-left:auto;width:24px;height:24px;flex:none;border:2px solid var(--c-border);border-radius:var(--radius);display:flex;align-items:center;justify-content:center;font-size:13px;color:#fff;transition:all .22s ease;cursor:pointer;-webkit-user-select:none;user-select:none}.talk-item.done{background:#7eb62b14;border-color:var(--c-primary)}.talk-item.done .talk-check{background:var(--c-primary);border-color:var(--c-primary)}.talk-tip{margin-top:18px;padding:16px 18px;background:#ab24db12;border:1px dashed var(--c-highlight);border-radius:var(--radius);font-size:14px;color:var(--c-text-2)}.talk-tip b{color:var(--c-highlight)}.game-shell{text-align:center}.game-title{font-size:24px;font-weight:900;letter-spacing:1px;margin-bottom:6px}.game-desc{color:var(--c-text-2);margin-bottom:20px}.arena{position:relative;height:340px;background:radial-gradient(circle at 50% 0%,rgba(126,182,43,.1),transparent 65%),var(--c-bg);border:1px solid var(--c-border);border-radius:var(--radius);overflow:hidden}.game-item{position:absolute;font-size:42px;cursor:pointer;animation:floaty 5s ease-in-out infinite;filter:drop-shadow(0 5px 8px rgba(37,44,27,.25));transition:transform .15s ease;-webkit-user-select:none;user-select:none}.game-item:hover{transform:scale(1.25)}.game-item.pop{animation:pop .4s ease both;pointer-events:none}@keyframes pop{40%{transform:scale(1.6) rotate(15deg);opacity:1}to{transform:scale(0);opacity:0}}.arena-done{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;background:#fafbf8eb;animation:fadeUp .5s ease both}.arena-done .big{font-size:66px;animation:wiggle 1.2s ease-in-out infinite}.arena-done h4{font-size:22px;font-weight:900}.arena-done p{color:var(--c-text-2);font-size:14px}@keyframes fadeUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}.game-progress{max-width:340px;margin:18px auto 0}.game-progress .label{display:flex;justify-content:space-between;font-size:13px;color:var(--c-text-2);margin-bottom:6px}.breath-stage{display:flex;flex-direction:column;align-items:center;gap:20px;padding:18px 0}.breath-ring-wrap{position:relative;width:220px;height:220px;display:flex;align-items:center;justify-content:center}.breath-ring{position:absolute;border-radius:50%;background:radial-gradient(circle at 35% 30%,#44c54de6,#7eb62bbf);box-shadow:0 0 40px #7eb62b59;transition:width 1s ease,height 1s ease}.breath-core{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:center;width:92px;height:92px;border-radius:50%;background:var(--c-surface);border:2px solid var(--c-accent);box-shadow:var(--shadow-soft)}.breath-core .t{font-family:var(--font-head);font-weight:900;font-size:18px;color:var(--c-primary-deep)}.breath-core .n{font-size:13px;color:var(--c-text-2)}.breath-count{font-size:15px;color:var(--c-text-2)}.breath-count b{color:var(--c-highlight);font-size:18px}.match-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;max-width:620px;margin:0 auto}.match-card{min-height:84px;border-radius:var(--radius);border:2px solid var(--c-border);background:var(--c-surface);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:12px;font-size:14px;font-weight:600;transition:all .2s ease;cursor:pointer;-webkit-user-select:none;user-select:none}.match-card .m-e{font-size:34px}.match-card.kind-a{background:#ab24db0d;border-color:#ab24db59}.match-card.kind-b{background:#7eb62b0d;border-color:#7eb62b59}.match-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-soft)}.match-card.selected{border-color:var(--c-highlight);box-shadow:0 0 0 3px #ab24db33;transform:scale(1.03)}.match-card.done{opacity:.55;border-style:dashed;cursor:default;pointer-events:none}.match-card.done:after{content:"✓ 配对成功";font-size:12px;color:var(--c-primary-deep);font-weight:700}.audio-player{display:inline-flex;align-items:center;gap:12px;background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--radius);padding:8px 16px 8px 8px;box-shadow:var(--shadow-soft)}.audio-btn{width:40px;height:40px;border-radius:var(--radius);border:none;background:var(--c-primary);color:#fff;font-size:15px;display:flex;align-items:center;justify-content:center;transition:all .22s ease;box-shadow:0 4px 10px #7eb62b4d}.audio-btn:hover{background:var(--c-primary-deep);transform:scale(1.06)}.audio-meta{display:flex;flex-direction:column;gap:2px}.audio-label{font-size:13px;font-weight:700;letter-spacing:1px}.eq{display:flex;gap:3px;align-items:flex-end;height:14px}.eq i{width:3px;background:var(--c-highlight);border-radius:2px;height:5px}.is-playing .eq i{animation:eq .9s ease-in-out infinite}.is-playing .eq i:nth-child(2){animation-delay:.15s}.is-playing .eq i:nth-child(3){animation-delay:.3s}.is-playing .eq i:nth-child(4){animation-delay:.45s}.is-playing .eq i:nth-child(5){animation-delay:.6s}@keyframes eq{0%,to{height:4px}50%{height:14px}}.diary-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:20px;align-items:start}.panel{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--radius);box-shadow:var(--shadow-soft);padding:22px}.panel h3{font-size:18px;font-weight:900;letter-spacing:1px;margin-bottom:4px}.panel .p-sub{font-size:13px;color:var(--c-text-2);margin-bottom:16px}.emotion-picker{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.emo-pick{display:flex;flex-direction:column;align-items:center;gap:4px;padding:12px 6px;border-radius:var(--radius);border:2px solid var(--c-border);background:var(--c-bg);transition:all .2s ease;cursor:pointer}.emo-pick .e{font-size:30px;transition:transform .25s cubic-bezier(.34,1.56,.64,1)}.emo-pick .t{font-size:12.5px;font-weight:600;color:var(--c-text-2)}.emo-pick:hover{transform:translateY(-3px);border-color:var(--pick-c, var(--c-primary))}.emo-pick:hover .e{transform:scale(1.2)}.emo-pick.on{background:var(--pick-bg, rgba(126,182,43,.12));border-color:var(--pick-c, var(--c-primary))}.emo-pick.on .e{transform:scale(1.18)}.emo-pick.on .t{color:var(--pick-c, var(--c-primary-deep));font-weight:700}.stars{display:flex;gap:6px;font-size:26px}.stars button{background:none;border:none;padding:0;font-size:26px;filter:grayscale(1) opacity(.4);transition:all .2s ease}.stars button.on{filter:none;transform:scale(1.15)}.stars button:hover{transform:scale(1.2)}.field-label{font-size:13px;font-weight:700;color:var(--c-text-2);margin:16px 0 8px;display:block}.note-input{width:100%;resize:none;min-height:74px;border:1px solid var(--c-border);border-radius:var(--radius);padding:12px;font-family:var(--font-body);font-size:15px;color:var(--c-text);background:var(--c-bg);transition:border-color .2s ease,box-shadow .2s ease}.note-input:focus{outline:none;border-color:var(--c-primary);box-shadow:0 0 0 3px #7eb62b26}.note-count{font-size:12px;color:var(--c-text-2);text-align:right;margin-top:4px}.diary-list{display:flex;flex-direction:column;gap:10px;margin-top:6px}.diary-row{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:var(--radius);background:var(--c-bg);border:1px solid var(--c-border);transition:all .2s ease}.diary-row:hover{border-color:var(--c-primary)}.diary-row .d-emoji{font-size:26px}.diary-row .d-info{flex:1;min-width:0}.diary-row .d-date{font-size:12px;color:var(--c-text-2)}.diary-row .d-note{font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.diary-row .d-star{font-size:13px;color:var(--c-highlight)}.chart-box{width:100%;height:300px}.empty-tip{text-align:center;padding:40px 10px;color:var(--c-text-2)}.empty-tip .big{font-size:52px;margin-bottom:10px}.summary-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.summary-item{text-align:center;padding:14px 8px;background:var(--c-bg);border:1px solid var(--c-border);border-radius:var(--radius)}.summary-item b{display:block;font-family:var(--font-head);font-size:22px;color:var(--c-primary-deep)}.summary-item span{font-size:12px;color:var(--c-text-2)}.danger-link{background:none;border:none;color:var(--c-text-2);font-size:13px;text-decoration:underline}.danger-link:hover{color:#d1493a}.toast{position:fixed;bottom:26px;left:50%;transform:translate(-50%) translateY(20px);background:var(--c-primary-deep);color:#fff;padding:12px 22px;border-radius:var(--radius);box-shadow:var(--shadow-lift);z-index:99;font-size:15px;font-weight:700;opacity:0;transition:all .35s ease;pointer-events:none}.toast.show{opacity:1;transform:translate(-50%) translateY(0)}.guide-grid{display:grid;gap:14px;max-width:860px;margin:0 auto}.acc-item{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow-soft)}.acc-head{width:100%;text-align:left;display:flex;align-items:center;gap:14px;padding:18px 20px;background:none;border:none;font-size:17px;font-weight:700;font-family:var(--font-head);letter-spacing:1px;transition:background .22s ease}.acc-head:hover{background:#7eb62b0f}.acc-head .acc-ico{font-size:24px}.acc-head .acc-arrow{margin-left:auto;font-size:14px;color:var(--c-highlight);transition:transform .3s ease}.acc-item.open .acc-arrow{transform:rotate(180deg)}.acc-body{max-height:0;overflow:hidden;transition:max-height .4s ease}.acc-inner{padding:0 20px 20px;color:var(--c-text-2);font-size:15px}.acc-inner p{margin-bottom:10px}.acc-inner ul{margin:8px 0;padding-left:20px;display:grid;gap:6px}.acc-inner li::marker{color:var(--c-accent)}.acc-inner b{color:var(--c-text)}.checklist{display:grid;gap:12px}.check-row{display:flex;gap:12px;align-items:center;padding:14px 16px;background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--radius);cursor:pointer;transition:all .22s ease}.check-row:hover{border-color:var(--c-accent);transform:translate(4px)}.check-row .box{width:26px;height:26px;flex:none;border-radius:var(--radius);border:2px solid var(--c-border);display:flex;align-items:center;justify-content:center;color:#fff;font-size:14px;transition:all .22s ease}.check-row.checked .box{background:var(--c-accent);border-color:var(--c-accent)}.check-row.checked p{text-decoration:line-through;color:var(--c-text-2)}.site-footer{border-top:1px solid var(--c-border);margin-top:40px;position:relative}.site-footer:before{content:"";position:absolute;top:-1px;left:0;right:0;height:14px;background:repeating-linear-gradient(90deg,#252c1b 0 26px,transparent 26px 34px);opacity:.5}.footer-inner{max-width:1120px;margin:0 auto;padding:46px 22px 54px;text-align:center}.footer-brand{font-family:var(--font-head);font-weight:900;font-size:20px;letter-spacing:3px}.footer-tag{margin-top:8px;color:var(--c-text-2);font-size:14px;letter-spacing:2px}.footer-meta{margin-top:18px;font-size:12px;color:var(--c-text-2);opacity:.8}.to-top{position:fixed;right:22px;bottom:24px;z-index:49;width:44px;height:44px;border-radius:var(--radius);border:1px solid var(--c-border);background:var(--c-surface);box-shadow:var(--shadow-lift);font-size:18px;opacity:0;pointer-events:none;transform:translateY(10px);transition:all .3s ease}.to-top.show{opacity:1;pointer-events:auto;transform:none}.to-top:hover{background:var(--c-primary);color:#fff}@media (max-width: 900px){.hero-inner{grid-template-columns:1fr}.hero-reel{max-width:480px}.emotion-grid,.book-grid,.steps{grid-template-columns:repeat(2,1fr)}.diary-grid{grid-template-columns:1fr}.stats-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 640px){.menu-toggle{display:flex}.site-nav{position:absolute;top:calc(100% + 1px);left:0;right:0;flex-direction:column;align-items:stretch;gap:4px;background:var(--c-bg);border-bottom:1px solid var(--c-border);padding:10px 16px 16px;display:none;box-shadow:var(--shadow-lift)}.site-nav.open{display:flex}.site-nav a{padding:12px 14px}.section{padding:44px 16px}.emotion-grid,.book-grid,.steps,.match-grid{grid-template-columns:1fr}.hero{padding-top:40px}.hero-title .hl{white-space:normal}.story-text{font-size:18px}.summary-grid{grid-template-columns:1fr}.emotion-picker{grid-template-columns:repeat(4,1fr)}.reader-frame{padding:18px}.stats-grid{grid-template-columns:repeat(2,1fr);gap:10px}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}html{scroll-behavior:auto}}
