:root{--m-amber-deep: #3a1f05;--m-amber: #d68a27;--m-amber-glow: rgba(214, 138, 39, .25);--m-amber-dim: rgba(214, 138, 39, .45);--m-ember: #ff9a3d;--m-cream: #f5d591;--m-malt: #8a4a12;--bg-warm: radial-gradient(ellipse at 50% 30%, #2a1405 0%, #0a0503 80%);--bg-warm-mid: radial-gradient(ellipse at 50% 40%, #1a0f08 0%, #060408 90%);--bg-warm-cool: linear-gradient(180deg, #0d0a10 0%, #050312 100%);--bg-cool-warm: linear-gradient(180deg, #060814 0%, #110a0f 100%);--bg-cool: var(--q-void);--bg-cool-deep: #020108}.mahou-body{background:var(--bg-warm);color:var(--q-text);transition:background 1.2s var(--ease-out-expo);overflow-x:hidden}.mahou-body[data-current-palette=warm]{background:var(--bg-warm)}.mahou-body[data-current-palette=warm-mid]{background:var(--bg-warm-mid)}.mahou-body[data-current-palette=warm-cool]{background:var(--bg-warm-cool)}.mahou-body[data-current-palette=cool-warm]{background:var(--bg-cool-warm)}.mahou-body[data-current-palette=cool]{background:var(--bg-cool)}.mahou-body[data-current-palette=cool-deep]{background:var(--bg-cool-deep)}.scroll-progress{position:fixed;top:0;left:0;height:2px;width:0%;background:linear-gradient(90deg,var(--m-amber) 0%,var(--q-cyan) 100%);z-index:2000;transition:width 80ms linear;box-shadow:0 0 8px #ffc8464d}.mahou-nav{position:fixed;top:0;left:0;right:0;z-index:1000;padding:12px 20px;display:flex;align-items:center;justify-content:space-between;background:#03010899;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid rgba(255,255,255,.05);transition:transform var(--duration-normal) var(--ease-out-expo)}.mahou-nav--hidden{transform:translateY(-100%)}.mahou-nav__back{display:flex;align-items:center;gap:8px;font-family:var(--font-mono);font-size:.7rem;letter-spacing:2px;color:var(--q-text-dim);text-decoration:none;text-transform:uppercase;transition:color var(--duration-fast)}.mahou-nav__back:hover{color:var(--q-cyan)}.mahou-nav__title{font-family:var(--font-mono);font-size:.7rem;letter-spacing:2px;color:var(--m-amber);text-transform:uppercase;opacity:.8}@media (max-width: 420px){.mahou-nav__back-text{display:none}.mahou-nav__title{font-size:.6rem}}.scene{min-height:100vh;min-height:100svh;display:flex;align-items:center;justify-content:center;padding:80px 20px 60px;position:relative;opacity:0;transform:translateY(30px);transition:opacity 1s var(--ease-out-expo),transform 1s var(--ease-out-expo)}.scene.scene--visible{opacity:1;transform:translateY(0)}.scene__inner{max-width:480px;width:100%;margin:0 auto}.scene__number{font-family:var(--font-mono);font-size:.65rem;letter-spacing:4px;color:var(--m-amber);text-transform:uppercase;opacity:.7;margin-bottom:12px}.scene__title{font-family:var(--font-display);font-size:clamp(2rem,8vw,3rem);font-weight:900;color:#fff;line-height:1.1;margin-bottom:24px;letter-spacing:-.01em}.scene__lead{font-size:1.1rem;line-height:1.6;color:var(--q-text);margin-bottom:20px}.scene__lead strong{color:var(--m-amber);font-weight:600}.scene__lead em{color:var(--m-cream);font-style:normal}.scene__text{font-size:1rem;line-height:1.7;color:var(--q-text);margin-bottom:16px}.scene__text strong{color:var(--q-cyan);font-weight:600}.scene__text em{color:var(--m-cream);font-style:normal}.scene__text--emphasis{font-size:1.1rem;color:#fff;border-left:2px solid var(--m-amber);padding-left:16px;margin:24px 0}.scene__outro{font-family:var(--font-mono);font-size:.8rem;color:var(--q-text-dim);line-height:1.7;margin-top:28px;padding:14px;background:#0000004d;border-left:2px solid var(--q-cyan-dim);border-radius:0 4px 4px 0}.scene__outro strong{color:var(--q-cyan);font-weight:600}.scene__outro em{color:var(--m-cream);font-style:normal}.scene--hero{padding:0 20px;overflow:hidden}.scene-hero__bubbles{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;z-index:0}.scene-hero__overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse at 50% 40%,rgba(214,138,39,.12) 0%,transparent 70%),linear-gradient(to bottom,transparent 0%,rgba(3,1,8,.6) 100%);z-index:1;pointer-events:none}.scene-hero__inner{position:relative;z-index:2;text-align:center;max-width:560px}.scene-hero__eyebrow{font-family:var(--font-mono);font-size:.7rem;letter-spacing:6px;color:var(--m-amber);text-transform:uppercase;margin-bottom:20px;opacity:.8}.scene-hero__title{font-family:var(--font-display);font-size:clamp(2.4rem,10vw,4.5rem);font-weight:900;line-height:1.05;color:#fff;margin-bottom:24px;text-shadow:0 0 60px rgba(214,138,39,.25)}.highlight-amber{color:var(--m-amber);text-shadow:0 0 30px rgba(255,154,61,.6)}.scene-hero__subtitle{font-family:var(--font-mono);font-size:.85rem;letter-spacing:2px;color:var(--q-text-dim);text-transform:uppercase;margin-bottom:48px}.scroll-hint{display:flex;flex-direction:column;align-items:center;gap:10px;animation:scroll-bounce 2.4s ease-in-out infinite}.scroll-hint span{font-family:var(--font-mono);font-size:.6rem;letter-spacing:4px;color:var(--q-text-muted);text-transform:uppercase}.scroll-hint__arrow{width:10px;height:10px;border-right:1px solid var(--q-text-muted);border-bottom:1px solid var(--q-text-muted);transform:rotate(45deg)}@keyframes scroll-bounce{0%,to{transform:translateY(0);opacity:.6}50%{transform:translateY(8px);opacity:1}}.scene-question__inner{text-align:center}.scene-question__lead{font-family:var(--font-display);font-size:clamp(1.5rem,5vw,2.2rem);font-weight:700;color:#fff;line-height:1.3;margin-bottom:40px}.scene-question__lead em{color:var(--m-amber);font-style:italic;font-weight:900}.scene-question__spoiler{font-family:var(--font-mono);font-size:.85rem;line-height:1.8;color:var(--q-text-dim);letter-spacing:1px}.hero-molecule{position:relative;display:flex;flex-direction:column;align-items:center;gap:12px;padding:24px;margin-top:20px;background:radial-gradient(ellipse at 50% 40%,rgba(214,138,39,.06) 0%,transparent 70%);border:1px solid rgba(214,138,39,.15);border-radius:12px}.hero-molecule__formula{font-family:var(--font-mono);font-size:1.2rem;color:var(--m-amber);letter-spacing:2px}.hero-molecule__canvas{width:100%;max-width:320px;height:320px;cursor:grab;touch-action:none}.hero-molecule__canvas:active{cursor:grabbing}.hero-molecule__hint{font-family:var(--font-mono);font-size:.65rem;letter-spacing:2px;color:var(--q-text-muted);text-transform:uppercase}.hero-molecule__stats{display:flex;justify-content:space-around;width:100%;margin-top:12px;padding-top:16px;border-top:1px solid rgba(255,255,255,.06)}.stat-item{display:flex;flex-direction:column;align-items:center;gap:4px}.stat-item__value{font-family:var(--font-display);font-size:1.3rem;font-weight:900;color:var(--m-amber)}.stat-item__label{font-family:var(--font-mono);font-size:.6rem;letter-spacing:1.5px;color:var(--q-text-muted);text-transform:uppercase}.hero-molecule__name{color:var(--m-amber)!important}.scene-bridge__inner{text-align:center}.frustration-table{display:flex;flex-direction:column;gap:10px;margin:24px 0;padding:16px;background:#00000040;border-radius:8px;border:1px solid rgba(255,255,255,.04)}.frustration-row{display:grid;grid-template-columns:1fr;gap:6px;padding:10px 0;border-bottom:1px solid rgba(255,255,255,.04)}.frustration-row:last-child{border-bottom:none}.frustration-row__molecule{font-family:var(--font-mono);font-size:.85rem;color:var(--q-text);display:flex;justify-content:space-between;align-items:baseline;gap:8px}.frustration-row__sub{font-size:.65rem;color:var(--q-text-muted);letter-spacing:1px}.frustration-row__bar{height:5px;background:#ffffff0a;border-radius:3px;overflow:hidden}.frustration-row__fill{height:100%;background:linear-gradient(90deg,var(--q-cyan-dim) 0%,var(--m-amber) 100%);border-radius:3px;transition:width 1.2s var(--ease-out-expo);width:0!important}.frustration-row.frustration-row--animated .frustration-row__fill{width:var(--target-width)!important}.frustration-row__time{font-family:var(--font-mono);font-size:.75rem;color:var(--q-text-dim);text-align:right;letter-spacing:1px}.frustration-row--hero{background:#d68a270a;border-radius:4px;padding:12px 8px}.frustration-row--hero .frustration-row__molecule{color:var(--m-amber)}.frustration-row--hero .frustration-row__fill{background:linear-gradient(90deg,var(--m-amber) 0%,var(--m-ember) 100%)}.frustration-row--danger .frustration-row__molecule{color:var(--q-danger)}.frustration-row--danger .frustration-row__fill{background:linear-gradient(90deg,var(--q-danger) 0%,#ff2a00 100%)}.valley-metaphor{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:32px 0}.valley-metaphor__side{padding:16px 10px;background:#0000004d;border-radius:8px;border:1px solid rgba(255,255,255,.05);display:flex;flex-direction:column;align-items:center;gap:10px;text-align:center}.valley-metaphor__label{font-family:var(--font-mono);font-size:.65rem;letter-spacing:3px;color:var(--q-text-muted);text-transform:uppercase}.valley-metaphor__side:last-child .valley-metaphor__label{color:var(--q-cyan)}.valley-svg{width:100%;height:auto}.valley-metaphor__text{font-family:var(--font-mono);font-size:.7rem;line-height:1.5;color:var(--q-text-dim)}.scene-outro__inner{text-align:left}.outro-actions{display:flex;gap:12px;flex-wrap:wrap;margin:32px 0}.outro-actions .q-btn{flex:1;min-width:180px;text-align:center}.mahou-footer{margin-top:40px;padding-top:24px;border-top:1px solid rgba(255,255,255,.05);font-family:var(--font-mono);font-size:.7rem;color:var(--q-text-muted);line-height:1.7}.mahou-footer__credits strong{display:block;color:var(--q-text-dim);letter-spacing:2px;text-transform:uppercase;font-size:.65rem;margin-bottom:8px}.mahou-footer__credits ul{list-style:none;padding:0;margin:0}.mahou-footer__credits li{margin-bottom:6px;padding-left:10px;border-left:1px solid rgba(255,255,255,.06)}.mahou-footer__credits code{color:var(--q-cyan);background:#00e5ff0f;padding:1px 6px;border-radius:3px}.mahou-footer__meta{display:flex;justify-content:space-between;margin-top:20px;font-size:.6rem;color:var(--q-text-muted);letter-spacing:2px;text-transform:uppercase}@media (min-width: 768px){.scene__inner{max-width:560px}.scene-hero__inner{max-width:680px}.frustration-row{grid-template-columns:minmax(160px,1.5fr) 2fr 1fr;gap:12px;align-items:center}.frustration-row__bar{height:6px}.frustration-row__time{text-align:right}}@media (prefers-reduced-motion: reduce){.scene{opacity:1;transform:none;transition:none}.scroll-hint{animation:none}.frustration-row__fill{transition:none}}
