:root{color-scheme:dark;--bg:#100f16;--panel:#1b1823;--text:#eeeaf2;--muted:#b3aabd;--gold:#d9bd87;--line:#35303e}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:radial-gradient(ellipse at 85% 8%,#292034 0,transparent 32%),var(--bg);color:var(--text);font-family:'Yu Gothic',Meiryo,sans-serif;line-height:1.85}a{color:inherit;text-decoration:none}button{font:inherit}img{max-width:100%;display:block}h1,h2,h3,p,figure{margin:0}p+p{margin-top:16px}h1,h2,h3{line-height:1.5}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:2px solid var(--gold);outline-offset:5px}.container{width:min(1160px,calc(100% - 64px));margin:auto}.site-header{border-bottom:1px solid var(--line);background:#100f16e8}.header-inner{width:min(1320px,calc(100% - 48px));margin:auto;min-height:94px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:12px;font-size:15px;letter-spacing:.12em;flex-shrink:0}.brand-mark{font-size:38px;color:var(--gold)}.brand small{display:block;font-size:10px;color:var(--muted);letter-spacing:.16em}nav{display:flex;gap:22px;font-size:12px}nav a{padding:12px 0;white-space:nowrap}nav a:hover,nav a[aria-current]{color:var(--gold)}.menu-toggle{display:none}.eyebrow{font-size:11px;letter-spacing:.2em;color:var(--gold);margin-bottom:22px}.hero{padding:64px 0 56px;display:grid;grid-template-columns:1.1fr 1fr;column-gap:64px;align-items:center}.hero-copy{grid-column:1;grid-row:1;align-self:end}.hero h1{font-family:'Yu Mincho','Hiragino Mincho ProN',serif;font-size:clamp(40px,4.8vw,64px);font-weight:500;letter-spacing:.035em;line-height:1.55}.hero h1 em{font-style:normal;color:var(--gold)}.hero-description{margin-top:24px;color:var(--muted);font-size:16px}.hero-art{grid-column:2;grid-row:1 / 3;position:relative;max-width:470px;justify-self:end;width:100%;padding:10px;border:1px solid #514334;background:#141219;box-shadow:0 24px 80px #0005}.hero-art img{width:100%;height:auto;aspect-ratio:1067/1474;object-fit:contain;object-position:center center}.hero-art figcaption{padding:14px 6px 4px;font-size:11px;color:var(--muted);display:flex;flex-wrap:wrap;gap:8px 16px}.hero-art figcaption span{color:var(--gold);letter-spacing:.18em}.hero-actions{grid-column:1;grid-row:2;align-self:start;display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:32px}.button{display:inline-flex;min-height:50px;padding:12px 20px;border:1px solid #635746;border-radius:4px;align-items:center;justify-content:space-between;gap:16px;font-size:13px;background:#211c27;transition:background .2s,transform .2s}.button span{color:var(--gold)}.button:hover{background:#332a3d;transform:translateY(-2px)}.button.primary{background:var(--gold);border-color:var(--gold);color:#201a14}.button.primary span{color:inherit}.button.primary:hover{background:#ead4ae}.availability{grid-column:1/-1;font-size:11px;color:var(--muted);margin-top:0}.journey{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:22px 0;color:var(--gold);font-size:11px;letter-spacing:.12em}.journey span{text-align:center}.journey b{color:var(--muted);margin-left:12px;font-size:13px;font-weight:400}.section{padding:72px 0;border-bottom:1px solid var(--line)}.section-heading{margin-bottom:24px}.section-heading .eyebrow{margin-bottom:12px}h2{font-size:clamp(23px,2.8vw,32px);font-weight:500}h3{font-size:19px;font-weight:500}.section>p,.section-intro{color:var(--muted);font-size:15px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:28px}.card{display:flex;flex-direction:column;padding:26px;background:linear-gradient(135deg,#251f2e,#17151e);border:1px solid var(--line);border-radius:6px;min-width:0;transition:border-color .2s,transform .2s}a.card:hover{border-color:#9c845c;transform:translateY(-3px)}.card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px;gap:10px}.number{font-family:Georgia,serif;font-size:26px;color:var(--gold)}.tag{font-size:11px;color:var(--gold);border:1px solid #64513b;padding:3px 9px;border-radius:30px}.card p{font-size:13px;color:var(--muted);margin:12px 0 24px}.card-foot{margin-top:auto;font-size:12px;color:var(--gold)}.whisper-section{margin-top:64px;padding:40px;border:1px solid #67533e;border-radius:6px;background:radial-gradient(ellipse at right,#35283d,transparent 75%),#1e1923}.whisper-content{display:grid;grid-template-columns:2fr 1fr;gap:32px;align-items:center}.quote{font-family:'Yu Mincho',serif;font-size:28px;color:#eadac2;margin-bottom:24px}.whisper-content p:not(.quote){font-size:14px;color:var(--muted)}.whisper-content .button{margin-top:24px}.orbit{border:1px solid #69543d;aspect-ratio:1;border-radius:50%;display:flex;flex-direction:column;justify-content:center;align-items:center;box-shadow:0 0 0 18px #bda57206,0 0 0 36px #bda57204;color:var(--gold);max-width:230px;width:100%;justify-self:center}.orbit span{font-size:80px;line-height:1.5}.orbit small{font-size:9px;letter-spacing:.17em}.topics{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:12px;margin:28px 0}.topics li{padding:12px 18px;border:1px solid var(--line);border-radius:4px;background:#1d1924;font-size:14px}.muted{color:var(--muted);font-size:13px}.section>.button{margin-top:20px}.philosophy h2{font-family:'Yu Mincho',serif;color:var(--gold)}.replay{display:flex;justify-content:space-between;gap:24px;align-items:center}.replay h3{font-family:Georgia,serif;font-size:30px;letter-spacing:.03em}.replay p{color:var(--muted);font-size:14px;margin-top:12px}button:disabled{color:var(--muted);opacity:.65;cursor:default;transform:none}.site-footer{padding:40px 0;background:#0c0b11}.footer-inner{display:flex;justify-content:space-between;gap:24px;align-items:center}.footer-inner strong{font-size:14px;letter-spacing:.14em}.footer-inner p,.footer-inner small,.footer-note{font-size:11px;color:var(--muted)}.footer-note{margin-top:24px}.page-intro{padding:72px 0 36px;max-width:850px}.page-intro h1{font-family:'Yu Mincho',serif;font-size:clamp(30px,4vw,48px);margin-bottom:24px}.page-intro>p:not(.eyebrow){color:var(--muted)}.notice{margin-top:32px;border-left:2px solid var(--gold);padding:16px 22px;background:var(--panel)}.notice p{font-size:14px;margin-top:12px;color:var(--muted)}.sub-content{padding-bottom:40px}.preview-panels{display:grid;grid-template-columns:1fr 1fr;gap:24px}.preview-panel{background:var(--panel);padding:28px;border:1px solid var(--line);border-radius:6px}.preview-panel h2{font-size:22px}.back-link{margin-bottom:72px}.skip-link{position:absolute;left:16px;top:-100px;background:var(--gold);color:#111;padding:12px;z-index:10}.skip-link:focus{top:8px}@media(max-width:1100px){nav{gap:12px;font-size:11px}.brand{font-size:12px}.hero{column-gap:32px}.hero-actions{grid-template-columns:1fr}.hero h1{font-size:48px}}@media(max-width:800px){.container{width:calc(100% - 36px)}.header-inner{width:calc(100% - 36px);min-height:78px;flex-wrap:wrap;gap:0}.brand{font-size:12px}.brand-mark{font-size:30px}.menu-toggle{display:flex;flex-direction:column;gap:5px;align-items:center;justify-content:center;width:48px;height:48px;border:1px solid var(--line);border-radius:4px;background:var(--panel);cursor:pointer}.menu-toggle span{width:20px;height:1px;background:var(--gold)}nav{display:none;width:100%;flex-direction:column;gap:0;padding:12px 0 20px;font-size:14px}nav.is-open{display:flex}nav a{padding:12px;border-bottom:1px solid var(--line)}.hero{padding:40px 0;grid-template-columns:1fr;gap:28px}.hero-copy{grid-column:1;grid-row:1}.hero h1{font-size:clamp(36px,9vw,52px)}.hero-description{font-size:15px}.hero-art{grid-column:1;grid-row:2;max-width:380px;justify-self:center}.hero-actions{grid-column:1;grid-row:3;margin-top:0;grid-template-columns:1fr}.button{font-size:14px;min-height:52px}.journey{grid-template-columns:1fr 1fr;gap:18px}.journey b{font-size:12px;margin-left:8px}.section{padding:44px 0}.cards{grid-template-columns:1fr}.card{padding:24px}.card-top{margin-bottom:16px}.whisper-section{padding:26px 22px;margin-top:40px}.whisper-content{grid-template-columns:1fr}.orbit{display:none}.quote{font-size:23px}.topics{gap:10px}.topics li{padding:10px 14px;font-size:14px}.replay,.footer-inner{flex-direction:column;align-items:flex-start}.replay .button{width:100%}.page-intro{padding-top:44px}.preview-panels{grid-template-columns:1fr}.eyebrow{font-size:10px;letter-spacing:.13em}.footer-note{font-size:11px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}


/* Homepage: static market scenery and a warm, character-led night lab. */
.home{background:radial-gradient(ellipse at 90% 0,#382b3c80,transparent 28%),radial-gradient(ellipse at 0 30%,#172c4380,transparent 30%),#0d1019}
.home .container{width:min(1320px,calc(100% - 64px))}
.home .site-header{background:#0c101bea;border-bottom-color:#b9946055}
.home .lab-compass{width:46px;height:46px;border:1px solid #b49362;border-radius:50%;display:grid;place-items:center;position:relative;font-size:32px}
.home .lab-compass::after{content:'';position:absolute;inset:6px;border:1px solid #b4936270;transform:rotate(45deg)}
.home .hero{position:relative;isolation:isolate;grid-template-columns:1fr 1.15fr;column-gap:20px;row-gap:0;padding:48px 0 28px;min-width:0}
.home .hero::before{content:'';position:absolute;z-index:-2;inset:0 -24px;background:linear-gradient(90deg,#0e111bef 0%,#0e111b88 40%,#0e111b10 65%),url('../assets/images/moluauna/moluauna-top.webp') center 48%/cover no-repeat;opacity:.55;border-bottom:1px solid #b6936044}
.home .hero::after{content:'';position:absolute;inset:0 -24px;z-index:-1;background:linear-gradient(0deg,#0d1019,transparent 30%),radial-gradient(ellipse at 40% 75%,#c5995425,transparent 50%);pointer-events:none}
.home .hero-copy{grid-row:1;grid-column:1;align-self:center;position:relative;z-index:2;padding:32px 0 68px}
.home .hero h1{font-size:clamp(36px,4.1vw,58px);line-height:1.55;letter-spacing:.025em;text-shadow:0 4px 24px #000}
.home .hero h1 em{color:#ecd6ad;display:inline-block}.home .hero-description{font-size:17px;color:#e2dce4;line-height:1.9;text-shadow:0 2px 10px #000}
.home .hero-copy .eyebrow{display:inline-block;font-size:10px;border:1px solid #b7986655;padding:6px 12px;border-radius:3px;background:#10121ac9;letter-spacing:.12em}
.home .market-labels{display:flex;flex-wrap:wrap;gap:8px;margin-top:26px;max-width:430px;color:#c6bba8;font-size:10px;letter-spacing:.1em}.home .market-labels span{background:#101825cc;padding:5px 10px;border:1px solid #a58a5944;border-radius:3px}.home .market-labels span:last-child{border:0;background:none;letter-spacing:0}
.home .market-scenery{position:absolute;inset:0;z-index:-1;pointer-events:none;overflow:hidden;color:#c8a777}.home .world-monitor{position:absolute;top:0;left:32%;width:320px;opacity:.65}.home .chart-monitor{position:absolute;bottom:170px;left:22%;width:390px;padding:12px;border:1px solid #b5966b55;background:#0c14217a;transform:perspective(900px) rotateY(-12deg);opacity:.5}.home .chart-monitor svg{width:100%;display:block}.home .chart-monitor span{font-size:10px;letter-spacing:.15em}
.home .hero-art{grid-column:2;grid-row:1;max-width:none;width:100%;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;overflow:hidden;align-self:end;position:relative}
.home .portrait-window{position:relative;overflow:hidden;isolation:isolate;aspect-ratio:1.18;background:transparent}
.home .portrait-window img{position:absolute;width:100%;max-width:none;height:100%;inset:0;aspect-ratio:auto;object-fit:cover;object-position:73% center;filter:brightness(.97) saturate(.9)}
.home .hero-art .portrait-window{height:510px;aspect-ratio:auto}.home .hero-art .portrait-window::after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,#10121bee,transparent 22%),linear-gradient(0deg,#10121b,transparent 30%)}
.home .hero-message{position:absolute;bottom:54px;right:20px;left:auto;max-width:240px;padding:14px 20px;border-left:1px solid #c8a87570;background:linear-gradient(90deg,#161623cc,#16162340);text-shadow:0 2px 15px #000}.home .hero-message .eyebrow{display:block;font-size:9px;margin-bottom:6px}.home .hero-message p{font-family:'Yu Mincho',serif;font-size:20px}.home .hero-art figcaption{position:absolute;bottom:20px;right:20px;left:20px;justify-content:flex-end;font-size:10px;background:none;padding:0}
.home .hero-actions{grid-column:1/-1;grid-row:2;position:relative;z-index:3;margin-top:-16px;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.home .button{border-radius:6px;border-color:#b99b6777;transition:transform .2s,box-shadow .2s,border-color .2s;background:linear-gradient(140deg,#343043,#151823);box-shadow:inset 0 0 0 3px #d0b58208,inset 0 1px #f9dcaa20}
.home .button:hover{transform:translateY(-3px);border-color:#e3c797;box-shadow:0 8px 30px #c5a16e25,inset 0 0 0 3px #d0b58210}.home .button:focus-visible{outline-color:#f1d8ab}
.home .hero-actions .button{--cta:#ab7ec6;position:relative;min-height:86px;padding:16px;gap:12px;border-color:var(--cta);background:linear-gradient(125deg,#63367d,#21152f);color:#f4eaf5;box-shadow:0 0 24px #8153a126,inset 0 0 0 3px #e1c2ea13;font-size:15px}.home .hero-actions .cta-learn{--cta:#719dc8;background:linear-gradient(125deg,#254a74,#121e35)}.home .hero-actions .cta-rule{--cta:#bb9c62;background:linear-gradient(125deg,#65502c,#251e16)}.home .hero-actions .cta-whisper{--cta:#bd8daa;background:linear-gradient(125deg,#593444,#271a29)}
.home .hero-actions .cta-icon{font-size:29px;color:#eed8c2;flex-shrink:0;line-height:1}.home .hero-actions .cta-text{color:inherit;flex:1;line-height:1.5}.home .cta-text small{display:block;font-size:10px;font-weight:400;color:#d2c6d3;margin-top:5px}.home .hero-actions .button>span:last-child{font-size:17px;color:#eed2a5}.home .hero-actions .button:hover{box-shadow:0 8px 30px #bd925430,inset 0 0 0 3px #e1c2ea26}.home .availability{font-size:10px;text-align:right;line-height:1.6;margin:0;grid-column:1/-1;color:#b4aabb}
.home .journey{border-color:#957b503b;background:#101522;border-radius:6px;padding:14px 0;margin-top:12px}.home .section{padding:46px 0}.home .section-heading{margin-bottom:18px}.home .section-heading h2{font-family:'Yu Mincho',serif;color:#ecd6b0;font-size:29px}.home .section-heading .eyebrow{margin-bottom:8px;color:#b99b6d;font-size:10px}
.home .cards{gap:16px;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:24px}.home .card{--accent:#d2a5de;--tint:#382345;position:relative;padding:0 20px 20px;border-radius:8px;overflow:hidden;background:radial-gradient(ellipse at 60% 0,var(--tint),transparent 70%),#111420;border-color:#b99c6766;min-width:0;transition:transform .2s,box-shadow .2s,border-color .2s}.home .card:hover{border-color:var(--accent);box-shadow:0 8px 30px #0006;transform:translateY(-4px)}
.home .mode-reset{--accent:#ddc292;--tint:#413b39}.home .mode-simple{--accent:#8cbce7;--tint:#173954}.home .mode-personality{--accent:#c9afe4;--tint:#352448}.home .mode-samurai{--accent:#e6af7f;--tint:#51251c}.home .mode-zodiac{--accent:#b6b8ec;--tint:#24244d}
.home .mode-art{height:auto;aspect-ratio:16/9;display:block;position:relative;margin:0 -20px 14px;background:radial-gradient(ellipse at 50% 50%,var(--tint),#0e142280 85%);border-bottom:1px solid #bda27133;overflow:hidden}.home .mode-art svg{width:100%;height:100%;display:block;color:var(--accent);transition:transform .35s;filter:drop-shadow(0 0 9px #d6b99222)}.home .card:hover .mode-art svg{transform:scale(1.06)}.home .mode-art::after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#10142088,transparent 40%);pointer-events:none}
.home .card-top{margin-bottom:10px;gap:4px}.home .number{font-size:16px;color:var(--accent)}.home .tag{font-size:10px;padding:2px 7px;color:var(--accent);border-color:#aa987b44}.home .card h3{font-family:'Yu Mincho',serif;font-size:19px}.home .mode-caption{font-size:12px;color:var(--accent);margin-top:8px}.home .card p{font-size:13px;line-height:1.8;margin:10px 0 18px}.home .card-foot{font-size:12px;color:#e2cba1;border-top:1px solid #aa987b33;padding-top:12px}
.home .whisper-section{padding:28px 32px;margin-top:12px;border-radius:8px;border:1px solid #b99c6777;background:radial-gradient(ellipse at 25% 100%,#a57a5438,transparent 60%),linear-gradient(130deg,#282034,#111724);position:relative;overflow:hidden;box-shadow:inset 0 0 0 5px #d0b58205}.home .whisper-section::after{content:'✧';position:absolute;right:18px;top:10px;font-size:76px;color:#eac99e18;pointer-events:none}
.home .whisper-content{grid-template-columns:1.5fr 1fr;gap:28px}.home .whisper-content .quote{font-size:25px;color:#f0dbbe;margin-bottom:18px}.home .whisper-content .mood-prompt{font-size:15px;color:#d6bedb}.home .mood-links{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:14px 0 18px}.home .mood-links a{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:10px 14px;min-height:48px;font-size:13px;border:1px solid #a993bb66;border-radius:6px;background:#0e121b88;transition:transform .2s,background .2s,border-color .2s}.home .mood-links a:hover{border-color:#d4b990;background:#4e384c;transform:translateY(-2px)}.home .mood-links span{color:#d9b782}.home .whisper-content p:not(.quote){font-size:13px}.home .whisper-content .button{margin-top:18px}.home .whisper-content .button.primary{color:#eedccc;background:linear-gradient(120deg,#634956,#291d30);border-color:#baa073}
.home .whisper-portrait{grid-column:2;grid-row:1;align-self:stretch;width:100%;max-width:none;border:1px solid #aa8b6366;border-radius:6px;overflow:hidden;position:relative}.home .whisper-portrait .portrait-window{height:100%;min-height:340px;aspect-ratio:auto}.home .whisper-portrait .portrait-window::after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#151421,transparent 40%)}.home .whisper-portrait figcaption{position:absolute;bottom:15px;left:20px;right:20px;display:flex;justify-content:space-between;font-size:10px;color:#e1c596;letter-spacing:.14em}
.home .learning-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:36px}.home .learning-panel{padding:28px;border:1px solid #b99c6766;border-radius:8px;background:linear-gradient(135deg,#182330,#14131e);min-width:0;display:flex;flex-direction:column;box-shadow:inset 0 0 0 4px #c0a57205}.home .learning-ai{background:radial-gradient(ellipse at 90% 20%,#4c315040,transparent 65%),#161624}.home .learning-panel h2{font-size:25px}.home .learning-panel>p{font-size:13px;line-height:1.85}.home .learning-panel>.button{margin-top:auto;align-self:flex-start}.home .lesson-monitor{position:relative;height:135px;overflow:hidden;background:linear-gradient(90deg,#101b2d,#1b283a);border:1px solid #788ca144;border-radius:5px;margin:0 0 20px;color:#bac8dc}.home .lesson-monitor svg{width:100%;height:100%;opacity:.8}.home .lesson-monitor>span{position:absolute;bottom:10px;left:14px;font-size:9px;letter-spacing:.12em;background:#121723c9;padding:4px 8px;color:#d1bd97}
.home .ai-dialogue{height:135px;border:1px solid #a98bbe55;border-radius:5px;background:radial-gradient(ellipse at 0 50%,#86639844,transparent 65%),#1f1c30;display:flex;align-items:center;gap:20px;padding:20px;margin-bottom:20px}.home .ai-dialogue>span{font-size:48px;color:#d0b3df}.home .ai-dialogue p{font-family:'Yu Mincho',serif;font-size:20px;color:#e3cee8}.home .ai-dialogue small{display:block;font-family:'Yu Gothic',sans-serif;font-size:10px;color:#bdafc7;margin-top:12px}
.home .lesson-cards{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:0;margin:20px 0 24px}.home .lesson-cards li{min-width:0}.home .lesson-cards a{height:100%;min-height:104px;padding:12px 10px;display:flex;flex-direction:column;align-items:flex-start;gap:5px;background:linear-gradient(145deg,#27344a,#141d2e);border:1px solid #8996ad55;border-radius:5px;font-size:12px;line-height:1.6;position:relative;transition:border-color .2s,background .2s}.home .learning-ai .lesson-cards a{background:linear-gradient(145deg,#362d49,#1b1a2b);border-color:#b098c355}.home .lesson-cards a:hover{border-color:#d5bb90;background:#3a3546}.home .lesson-icon{font-size:21px;color:#d3bc8e}.home .lesson-arrow{position:absolute;top:12px;right:10px;color:#c1ac82}.home .learning-panel>.muted{margin-bottom:20px}.home .philosophy h2{color:var(--gold)}
@media(min-width:1240px){.home .cards{grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}.home .card{padding:0 12px 16px}.home .mode-art{margin-left:-12px;margin-right:-12px;aspect-ratio:1.1}.home .mode-art svg{object-fit:cover}.home .card h3{font-size:16px}.home .mode-caption{font-size:11px}.home .card p{font-size:12px}.home .card-top{flex-wrap:wrap}.home .card .tag{font-size:9px}}
@media(max-width:1100px) and (min-width:801px){.home .hero h1{font-size:40px}.home .hero-art .portrait-window{height:470px}.home .hero-actions{gap:10px;grid-template-columns:repeat(2,minmax(0,1fr))}.home .hero-actions .button{font-size:15px}.home .lesson-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.home .hero-message{right:10px;padding:10px}.home .world-monitor{left:25%;width:250px}}
@media(max-width:800px){.home .container{width:calc(100% - 32px)}.home .hero{grid-template-columns:minmax(0,1fr);padding:26px 0 20px;gap:16px}.home .hero::before,.home .hero::after{left:-16px;right:-16px}.home .hero-copy{grid-row:1;padding:0;align-self:start}.home .hero h1{font-size:clamp(31px,7.8vw,46px)}.home .hero h1 em{display:inline}.home .hero-description{font-size:14px;margin-top:18px}.home .hero-copy .eyebrow{font-size:9px;letter-spacing:.04em;margin-bottom:18px}.home .market-labels{margin-top:16px;gap:5px;font-size:9px}.home .market-labels span:last-child{width:100%}.home .hero-art{grid-column:1;grid-row:2;width:100%;max-width:500px;justify-self:center;border:1px solid #c4a57a44;border-radius:8px}.home .hero-art .portrait-window{height:auto;aspect-ratio:1.05}.home .hero-art .portrait-window img{object-position:73% center}.home .hero-art .portrait-window::after{background:linear-gradient(0deg,#10121b,transparent 35%)}.home .hero-message{left:16px;right:auto;bottom:48px;padding:8px 12px;max-width:200px}.home .hero-message p{font-size:17px}.home .hero-art figcaption{left:16px;right:16px;bottom:15px;font-size:9px;justify-content:flex-start}.home .hero-art figcaption span{font-size:9px}.home .market-scenery .world-monitor{left:auto;right:-90px;top:25px;width:250px;opacity:.25}.home .chart-monitor{left:-30px;bottom:330px;width:280px;opacity:.2}.home .hero-actions{grid-column:1;grid-row:3;grid-template-columns:minmax(0,1fr);margin-top:0;gap:10px}.home .hero-actions .button{min-height:72px;padding:14px 18px;font-size:16px}.home .cta-text small{font-size:11px}.home .hero-actions .cta-icon{font-size:28px}.home .availability{text-align:left;font-size:10px}.home .journey{font-size:10px;padding:14px 8px;gap:12px}.home .journey b{font-size:11px}.home .section{padding:34px 0}.home .section-heading h2{font-size:24px}.home .section-intro{font-size:13px}.home .cards{grid-template-columns:minmax(0,1fr);gap:16px}.home .card{padding:0 20px 20px}.home .card h3{font-size:21px}.home .mode-art{aspect-ratio:2;margin:0 -20px 16px}.home .mode-art svg{height:100%;width:100%}.home .card p{font-size:14px}.home .mode-caption{font-size:13px}.home .whisper-section{padding:24px 20px;margin-top:8px}.home .whisper-content{grid-template-columns:minmax(0,1fr);gap:20px}.home .whisper-portrait{grid-column:1;grid-row:1;max-width:400px;justify-self:center;align-self:auto}.home .whisper-portrait .portrait-window{min-height:0;height:auto;aspect-ratio:1.4}.home .whisper-content .quote{font-size:22px}.home .mood-links{grid-template-columns:minmax(0,1fr)}.home .mood-links a{font-size:14px;min-height:50px}.home .learning-grid{grid-template-columns:minmax(0,1fr);gap:20px;margin-top:28px}.home .learning-panel{padding:22px}.home .learning-panel h2{font-size:23px}.home .lesson-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.home .lesson-cards a{font-size:13px;min-height:100px}.home .learning-panel>.button{width:100%;font-size:13px}.home .ai-dialogue{height:auto;min-height:125px;gap:12px;padding:16px}.home .ai-dialogue p{font-size:17px}.home .ai-dialogue>span{font-size:36px}}
@media(prefers-reduced-motion:reduce){.home .card:hover,.home .button:hover,.home .mood-links a:hover,.home .card:hover .mode-art svg{transform:none;transition:none}}
.home .cta-icon svg{display:block;width:32px;height:32px}.home .hero-actions .cta-icon{width:32px}

/* Shared demo layout: chart, controls, timer and results. */
[hidden]{display:none!important}
.available-mode{border-color:#b69962;background:linear-gradient(135deg,#302742,#172131)}
.game-container{max-width:960px;padding-bottom:48px}
.game-intro{padding:30px 0 24px}.game-back{font-size:12px;color:var(--gold);display:inline-block;padding:8px 0;margin-bottom:12px}.game-intro .eyebrow{margin-bottom:8px}.game-intro h1{font-family:'Yu Mincho',serif;font-size:32px}.game-intro>p:last-child{font-size:14px;color:var(--muted);margin-top:8px}
.game-panel{border:1px solid #726047;border-radius:12px;background:linear-gradient(135deg,#1d1a2b,#111827);padding:24px;box-shadow:0 20px 60px #0003;scroll-margin-top:12px;min-width:0}
.game-topline{display:flex;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid #343449;padding-bottom:16px}.game-symbol{color:var(--gold);letter-spacing:.12em;font-size:15px}.game-topline small{display:block;font-size:11px;color:var(--muted)}.timer-box{color:#bdb4c8;font-size:13px;white-space:nowrap}.timer-box strong{font-size:30px;color:#ead3a9;font-variant-numeric:tabular-nums;margin-left:8px}.timer-box strong.time-low{color:#ecac9f}
.game-ready{padding:20px 0}.game-ready>p:first-child{font-size:18px;color:#e8d4b3}.game-ready>p:nth-child(2){font-size:13px;color:var(--muted);max-width:600px;margin:8px 0 18px}.game-ready .button{cursor:pointer;min-height:54px;min-width:200px}
.price-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 0 12px;font-size:12px;color:var(--muted)}.price-row strong{font-size:23px;color:#f2e6d6;font-variant-numeric:tabular-nums;margin-left:8px}.game-chart{width:100%;background:#0d1421;border:1px solid #303849;border-radius:6px;overflow:hidden}.game-chart svg{display:block;width:100%;height:320px}.chart-key{display:flex;gap:12px;flex-wrap:wrap;font-size:10px;margin:8px 0 18px;color:#9da1b2}.chart-key span:first-child{color:#dfbd7e}.chart-key span:nth-child(2){color:#9c9ad7}
.game-stats,.result-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0}.game-stats>div,.result-stats>div{padding:12px;background:#ffffff04;border:1px solid #363347;border-radius:6px;min-width:0}.game-stats dt,.result-stats dt{font-size:11px;color:var(--muted)}.game-stats dd,.result-stats dd{margin:4px 0 0;font-size:16px;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.game-message{font-size:12px;color:#d8c2a1;min-height:42px;margin:16px 0 12px}
.game-controls{position:sticky;bottom:0;z-index:5;background:#181b2bf5;border:1px solid #57485c;border-radius:8px;padding:12px;backdrop-filter:blur(10px);padding-bottom:max(12px,env(safe-area-inset-bottom))}.trade-buttons{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.trade-button{min-height:60px;border:1px solid #a38b6544;border-radius:6px;font-size:18px;font-weight:600;cursor:pointer;color:#f1e9e1;transition:filter .15s,transform .15s}.trade-button:hover:not(:disabled){filter:brightness(1.18)}.trade-button:active:not(:disabled){transform:translateY(1px)}.trade-button.buy{background:linear-gradient(140deg,#806336,#44321c);border-color:#cba45e}.trade-button.sell{background:linear-gradient(140deg,#5f4a86,#292140);border-color:#a18abb}.trade-button.wait{background:linear-gradient(140deg,#36465c,#1c283b);border-color:#7089a8}.trade-button.close{background:linear-gradient(140deg,#405861,#243740);border-color:#8badb6;width:100%;margin-top:12px;min-height:50px;font-size:15px}.trade-button:disabled{opacity:.45;cursor:default}
.game-result{margin-top:24px;padding:28px;border:1px solid #b59764;border-radius:12px;background:radial-gradient(ellipse at top right,#54406355,transparent 60%),#1b1828;scroll-margin-top:20px}.game-result h2{font-family:'Yu Mincho',serif;color:var(--gold)}.result-comment{margin:16px 0 24px;color:#d7cadc}.result-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.result-profit{grid-column:1/-1}.result-profit dd{font-size:34px;color:#e4c99b}.game-result>.muted{margin-top:16px;font-size:11px}.result-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:24px}.result-actions button{cursor:pointer}.game-disclaimer{font-size:12px;color:var(--muted);margin-top:24px}.game-detail{font-size:11px;color:#968da3;margin-top:8px}
@media(max-width:600px){.game-container{width:calc(100% - 24px);padding-bottom:24px}.game-intro{padding:20px 0 18px}.game-intro h1{font-size:26px}.game-intro .eyebrow{font-size:9px}.game-panel{padding:12px;border-radius:8px}.game-topline{gap:10px}.game-symbol{font-size:13px}.timer-box{font-size:11px}.timer-box strong{font-size:26px;margin-left:4px}.game-topline small{font-size:10px}.game-chart svg{height:280px}.game-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.game-stats>div{padding:10px}.game-stats dd{font-size:14px}.game-stats dt{font-size:10px}.game-controls{padding:8px;padding-bottom:max(8px,env(safe-area-inset-bottom));bottom:4px}.trade-buttons{gap:8px}.trade-button{font-size:16px;min-height:58px}.trade-button.close{margin-top:8px}.game-message{font-size:11px;min-height:40px}.game-ready>p:first-child{font-size:16px}.game-ready .button{width:100%;justify-content:center}.game-result{padding:22px 16px}.result-actions{flex-direction:column}.result-actions .button{justify-content:center;width:100%}.game-result .eyebrow{font-size:9px}.result-stats dd{font-size:16px}.result-profit dd{font-size:30px}.chart-key{gap:8px;font-size:9px}}

/* Reset mode: calm action review, with profit kept secondary. */
.theme-reset{background:radial-gradient(ellipse at 80% 12%,#49354d55,transparent 50%),#11131f}
.theme-reset .game-panel{background:linear-gradient(135deg,#282135,#142032);border-color:#978266}
.theme-reset .trade-button.wait{background:linear-gradient(135deg,#6a536a,#342d4b);border-color:#c6aaac;box-shadow:0 0 18px #c3a1b812}
.theme-reset .game-ready .primary,.theme-reset .result-actions .primary{background:linear-gradient(135deg,#e2c8a0,#baa681);color:#241b22}
.reset-wait-note{font-size:12px;color:#d4c0ce;margin:12px 0 0}
.reset-result-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:24px;margin-top:24px;align-items:start;min-width:0}
.reset-review{min-width:0}.reset-score{border:1px solid #9b7f6755;border-radius:10px;padding:22px;background:radial-gradient(ellipse at top right,#9b718736,transparent 80%),#211e30;margin-bottom:16px}.reset-score>span{font-size:15px;color:#ead5bd}.reset-score p{margin:8px 0;line-height:1.2}.reset-score strong{font-family:Georgia,serif;font-size:64px;color:#ead3ad}.reset-score small,.reset-score p>span{color:var(--muted);font-size:12px}
.reset-result .result-stats dt{font-size:11px}.reset-result .result-stats dd{font-size:20px;color:#dcd1df}.reset-result .result-comment{font-size:12px;line-height:1.9}.reset-result .result-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px}.reset-result .result-actions .button{justify-content:center}
.reset-guide{margin:0;border:1px solid #ad927155;border-radius:12px;overflow:hidden;background:#1c1b2a;min-width:0}.reset-guide img{width:100%;height:280px;object-fit:cover;object-position:73% center}.reset-guide figcaption{padding:20px}.reset-guide .eyebrow{display:block;font-size:9px;letter-spacing:.1em;margin-bottom:12px}.reset-guide p{font-family:'Yu Mincho',serif;font-size:19px;line-height:1.9;color:#ead8c7}
.reset-mode-card{background:linear-gradient(135deg,#35283c,#1b2332);border-color:#bba192}
@media(max-width:600px){.reset-result-grid{grid-template-columns:minmax(0,1fr);gap:18px}.reset-score{padding:18px}.reset-score strong{font-size:56px}.reset-guide img{height:auto;aspect-ratio:1.25}.reset-guide figcaption{padding:18px}.reset-guide p{font-size:18px}.reset-result .result-actions{grid-template-columns:minmax(0,1fr)}.reset-result .result-stats dt{font-size:10px}.reset-result .result-stats dd{font-size:18px}.reset-wait-note{font-size:11px}}

/* Shared decision UI: keep the skip label readable on narrow screens. */
.trade-button.wait{font-size:16px;overflow-wrap:anywhere}
@media(max-width:600px){.trade-button.wait{font-size:12px}}

/* Luck: quiet stars and a behavior type, rather than a profit spotlight. */
.theme-luck{background:radial-gradient(ellipse at 85% 10%,#64407744,transparent 50%),#111322}
.theme-luck .game-panel{border-color:#bba074;background:linear-gradient(135deg,#292039,#152034)}
.theme-luck .game-result{background:radial-gradient(ellipse at top,#69517c44,transparent 70%),#1b1828}
.luck-type-panel{margin:22px 0;padding:24px;text-align:center;border:1px solid #c6a26c77;border-radius:12px;background:linear-gradient(130deg,#4b305633,#8c67331a)}
.luck-type-panel>span{font-size:32px;color:var(--gold)}.luck-type-panel h3{font-family:'Yu Mincho',serif;font-size:32px;color:#efdab1;margin:8px 0}.luck-type-panel p{font-size:12px;color:var(--muted)}
.luck-whisper{margin-top:24px;border-top:1px solid #b49b6555;padding:20px 0 0}.luck-whisper>p:last-child{font-family:'Yu Mincho',serif;font-size:19px;color:#e6cbdc;line-height:1.8}
.luck-mode-card{background:radial-gradient(ellipse at top right,#956ba34a,transparent 70%),#211e32}
@media(max-width:600px){.luck-type-panel{padding:18px 12px}.luck-type-panel h3{font-size:26px}.luck-whisper>p:last-child{font-size:17px}}

.theme-mbti{background:radial-gradient(ellipse at 85% 10%,#66508044,transparent 55%),#111322}
.theme-mbti .game-panel{border-color:#ac83b1;background:linear-gradient(135deg,#30243d,#172139)}
.theme-mbti .luck-type-panel{border-color:#b592c4;background:linear-gradient(135deg,#92679933,#527cad22)}
.theme-mbti .luck-type-panel h3{letter-spacing:.08em;color:#edcaef}
.mbti-axes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:20px 0}
.mbti-axes p{margin:0;border:1px solid #8f80b377;background:#35304766;border-radius:8px;padding:14px;font-size:13px;overflow-wrap:anywhere}
.mbti-mode-card{background:linear-gradient(135deg,#553c6044,#243448)}
@media(max-width:600px){.mbti-axes{grid-template-columns:minmax(0,1fr)}.theme-mbti .luck-type-panel h3{font-size:24px}}

/* Sengoku council meets the trading room; no historical crest is reproduced. */
.theme-sengoku{background:radial-gradient(ellipse at 85% 8%,#662d2744,transparent 60%),#15141a}
.theme-sengoku .game-panel{border-color:#b69467;background:linear-gradient(130deg,#322321,#151d2c)}
.theme-sengoku .game-result{background:repeating-linear-gradient(25deg,#e2c39104 0 1px,transparent 1px 6px),linear-gradient(135deg,#30211e,#161d2b)}
.theme-sengoku .luck-type-panel{border:1px solid #be9965;background:radial-gradient(ellipse,#813a2a33,transparent 80%)}
.theme-sengoku .luck-type-panel>span{display:inline-grid;place-items:center;border:2px double #b99a63;border-radius:50%;width:58px;height:58px}
.theme-sengoku .luck-type-panel h3{color:#edcd9a}.sengoku-reflection p{padding:14px;border-left:2px solid #a87a51;background:#ffffff04}.sengoku-reflection strong,.sengoku-reflection span{display:block}.sengoku-reflection span{font-size:13px;line-height:1.9;margin-top:6px}
.sengoku-gauges{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:20px 0}.sengoku-gauges>div{border:1px solid #a5815655;border-radius:6px;padding:12px}.sengoku-gauges strong{float:right;font-size:12px;color:#e2c291}.sengoku-gauges meter{display:block;width:100%;height:16px;margin-top:8px;accent-color:#c69c62}.sengoku-mode-card{background:linear-gradient(135deg,#62352c55,#222435)}
@media(max-width:600px){.sengoku-gauges{grid-template-columns:minmax(0,1fr)}.theme-sengoku .luck-type-panel h3{font-size:26px}}

/* Zodiac: full result artwork and a quiet night-sky lab. */
.theme-zodiac{background:radial-gradient(circle at 80% 12%,#5e447d44,transparent 55%),#11172a}
.theme-zodiac .game-panel{background:linear-gradient(135deg,#26213b,#142237);border-color:#a89879}
.theme-zodiac .game-result{background:radial-gradient(ellipse at top left,#6c548a33,transparent 70%),#171c30}
.zodiac-result-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:24px;margin-top:24px;align-items:start}
.zodiac-visual{margin:0;min-width:0;border:1px solid #b8996355;border-radius:14px;overflow:hidden;background:#101725;box-shadow:0 15px 35px #0004}
.zodiac-visual img{display:block;width:100%;height:auto;object-fit:contain;object-position:center}
.zodiac-visual figcaption{padding:12px;text-align:center;font-size:10px;color:var(--muted)}.zodiac-result-copy{min-width:0}.zodiac-result-copy .luck-type-panel{margin-top:0;border-color:#b6986a;background:radial-gradient(ellipse,#69448033,transparent 80%)}
.zodiac-result-copy .luck-type-panel h3{font-size:27px;color:#efd5aa}.zodiac-reflection p{padding:12px;border-left:2px solid #aa87b8;background:#ffffff03}.zodiac-reflection strong,.zodiac-reflection span{display:block}.zodiac-reflection span{font-size:12px;line-height:1.9;margin-top:6px}
.zodiac-gauges{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:18px 0}.zodiac-gauges>div{padding:10px;border:1px solid #aa95ba44;border-radius:6px;font-size:12px}.zodiac-gauges strong{float:right;font-size:10px;color:#e5c592}.zodiac-gauges meter{display:block;width:100%;height:16px;margin-top:8px;accent-color:#b798ca}.zodiac-mode-card{background:radial-gradient(ellipse at top,#8a659a33,transparent 75%),#17263b}
@media(max-width:700px){.zodiac-result-layout{grid-template-columns:minmax(0,1fr);gap:20px}.zodiac-visual{width:100%;max-width:440px;margin-inline:auto}.zodiac-result-copy .luck-type-panel h3{font-size:24px}}
@media(max-width:360px){.zodiac-gauges{grid-template-columns:minmax(0,1fr)}}

/* Phase 8: a quiet, accessible mood -> tone -> whisper flow. */
.whisper-page{background:radial-gradient(ellipse at 80% 10%,#58426744,transparent 55%),#111522}
.whisper-container{max-width:1040px;padding-bottom:40px}.whisper-step{padding:28px;border:1px solid #9f835755;border-radius:14px;background:linear-gradient(135deg,#282137,#172132);scroll-margin-top:20px}.whisper-step h2{font-family:'Yu Mincho',serif;color:#ecd6b5;margin:8px 0 12px;font-size:27px}.whisper-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:24px 0}.whisper-option{display:flex;align-items:center;justify-content:space-between;gap:14px;text-align:left;min-width:0;min-height:62px;padding:16px 20px;border:1px solid #8e739b66;border-radius:9px;background:linear-gradient(130deg,#40314d66,#202b4166);color:var(--text);cursor:pointer;transition:background .18s,border-color .18s,transform .18s;overflow-wrap:anywhere}.whisper-option span{color:var(--gold);font-size:22px}.whisper-option:hover{background:#493958;border-color:#c4a6ce}.whisper-option:active{transform:translateY(1px)}
.whisper-result{padding:28px;border:1px solid #b2966755;border-radius:14px;background:radial-gradient(ellipse at top,#51406444,transparent 70%),#1b2030;scroll-margin-top:20px;animation:whisper-arrive .35s ease-out}.whisper-result h2{font-family:'Yu Mincho',serif;color:var(--gold);margin-bottom:10px}.whisper-result-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:24px;margin-top:24px;align-items:start}.whisper-portrait{margin:0;border-radius:12px;overflow:hidden;background:#141c2b;border:1px solid #ac8a6555;min-width:0}.whisper-portrait img{width:100%;height:auto;aspect-ratio:1;object-fit:cover;object-position:73% center}.whisper-portrait>p{padding:40px 20px;color:#e2cba8;text-align:center;min-height:220px}.whisper-words{min-width:0}.whisper-words blockquote{margin:0 0 22px;font-family:'Yu Mincho',serif;font-size:25px;line-height:1.9;color:#f0dbca;overflow-wrap:anywhere}.whisper-words>.muted{font-size:13px}.whisper-action{margin:24px 0;padding:18px;border-left:2px solid #d2b582;background:#ffffff04;border-radius:4px}.whisper-action h3{font-size:12px;color:var(--muted);margin-bottom:8px}.whisper-action p{color:#e6d1b1;font-size:18px}.whisper-notice{font-size:12px;color:var(--muted);margin-top:24px}
@keyframes whisper-arrive{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
@media(max-width:650px){.whisper-container{width:calc(100% - 24px)}.whisper-step,.whisper-result{padding:20px 16px}.whisper-options{grid-template-columns:minmax(0,1fr);gap:10px}.whisper-option{min-height:60px;padding:14px 16px;font-size:14px}.whisper-result-grid{grid-template-columns:minmax(0,1fr);gap:20px}.whisper-portrait img{aspect-ratio:1.15;object-position:73% center}.whisper-words blockquote{font-size:22px}.whisper-step h2{font-size:24px}.whisper-result .result-actions{flex-direction:column}.whisper-result .button{width:100%;justify-content:center}.whisper-action p{font-size:17px}}
@media(prefers-reduced-motion:reduce){.whisper-result{animation:none}}

/* Phase 9: readable night-study pages, usable without lesson JavaScript. */
.learn-page{background:radial-gradient(ellipse at 85% 12%,#40335a33,transparent 50%),#111723}
.learn-container{max-width:1080px;padding-bottom:44px}.learn-step-nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:12px 0 36px}.learn-step-nav a{padding:14px;border:1px solid #99815b55;border-radius:8px;background:#22283a;font-size:13px;min-height:54px}
.learn-step{padding:28px 0;scroll-margin-top:20px}.learn-step h2{font-family:'Yu Mincho',serif;color:#e5ceac;margin:8px 0 20px}.learn-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.learn-topic-card{padding:22px;border:1px solid #7f718755;border-radius:10px;background:linear-gradient(135deg,#262335,#182333);min-width:0;transition:border-color .18s,background .18s}.learn-topic-card:hover{border-color:#c2a174;background:#2d293c}.learn-topic-card h3{font-size:19px;color:#ede0cd;margin:10px 0}.learn-topic-card p{font-size:14px;color:var(--muted);line-height:1.9}.learn-card-action{display:block;margin-top:18px;font-size:13px;color:var(--gold)}
.lesson-container{max-width:820px;padding-top:26px;padding-bottom:44px}.lesson-article{padding:32px;border:1px solid #91785755;border-radius:14px;background:linear-gradient(135deg,#202132,#142131);min-width:0;overflow-wrap:anywhere}.lesson-intro{margin-bottom:32px}.lesson-intro h1{font-family:'Yu Mincho',serif;font-size:32px;color:#efdfc5;margin-top:14px}.lesson-section{margin:30px 0}.lesson-section h2,.lesson-moluauna h2,.lesson-practice h2{font-size:20px;color:#e0c79f;margin-bottom:14px}.lesson-section p{font-size:17px;line-height:2}.lesson-section:nth-of-type(3){padding:20px;border:1px solid #a2896355;border-radius:8px;background:#ffffff03}.lesson-moluauna{padding:22px;border-left:2px solid #ae89bf;background:linear-gradient(135deg,#69416c22,#263e5d22);border-radius:6px}.lesson-moluauna p{font-family:'Yu Mincho',serif;font-size:20px;line-height:1.9;color:#edd4dc}
.lesson-navigation{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:20px}.lesson-navigation .button{font-size:13px;white-space:normal;justify-content:center;text-align:center;overflow-wrap:anywhere}.lesson-boundary{align-self:center;font-size:12px;color:var(--muted)}.lesson-practice{margin-top:30px;padding:20px;border:1px solid #9e835555;border-radius:8px}.lesson-practice p{font-size:14px;color:var(--muted);margin-bottom:16px}.learn-notice,.learn-sources{margin-top:24px;font-size:12px;color:var(--muted);overflow-wrap:anywhere}.learn-sources a{color:#d7bd8e;text-decoration:underline;text-underline-offset:3px}
.lesson-direction{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:20px}.lesson-direction>div{border:1px solid #aa8a6655;border-radius:8px;padding:16px;min-width:0;background:#142032}.lesson-direction strong{color:#d9bd87}.lesson-direction>div:nth-child(2) strong{color:#bca3d4}.lesson-direction p{font-size:14px!important}.lesson-caption{font-size:12px!important;color:var(--muted);margin-top:12px}.lesson-figure{margin:20px 0 0;border:1px solid #907d6555;border-radius:8px;padding:14px;background:#111b2a}.lesson-figure svg{display:block;width:100%;height:auto}.lesson-figure figcaption{font-size:13px;color:var(--muted)}
@media(max-width:800px){.learn-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.learn-step-nav{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.learn-container,.lesson-container{width:calc(100% - 24px)}.learn-cards{grid-template-columns:minmax(0,1fr)}.learn-topic-card{padding:20px}.lesson-article{padding:20px 16px}.lesson-intro h1{font-size:27px}.lesson-section h2,.lesson-moluauna h2{font-size:19px}.lesson-section p{font-size:16px}.lesson-section:nth-of-type(3){padding:16px}.lesson-navigation,.lesson-direction{grid-template-columns:minmax(0,1fr)}.lesson-navigation .button{min-height:54px}.lesson-moluauna{padding:18px}.lesson-moluauna p{font-size:18px}.lesson-figure{padding:8px}.learn-step-nav a{font-size:12px;padding:12px}.lesson-boundary{text-align:center}}
/* Phase 10: banner-led night library; scoped to the AI introduction. */
.ai-library-page{background:radial-gradient(ellipse at 80% 8%,#44315944,transparent 55%),#101724}
.library-container{max-width:1040px;padding-bottom:50px;overflow-wrap:anywhere}.library-intro{max-width:780px}.library-text-link{display:inline-block;color:var(--gold);padding:14px 0;text-decoration:underline;text-underline-offset:5px}
.library-series{margin:0 0 48px;scroll-margin-top:24px}.library-series-heading{max-width:800px;margin-bottom:24px}.library-series-heading h2,.library-guide h2{font-family:'Yu Mincho',serif;color:#eddbba;font-size:28px;margin:10px 0 16px}.library-series-heading p,.library-guide>p{font-size:16px;line-height:1.95;color:#d0c7d7}
.library-magazine{border:1px solid #bc9b6555;border-radius:12px;overflow:hidden;background:#171e2d;box-shadow:0 16px 40px #0003}.library-magazine img,.library-card img{display:block;width:100%;height:auto;object-fit:contain;object-position:center}.library-series-link{display:flex;align-items:center;gap:24px;margin:22px 0 30px}.library-series-link p{font-size:13px;color:var(--muted);flex:1}.library-series-link .button{flex-shrink:0}
.library-episodes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.library-card{display:flex;flex-direction:column;min-width:0;border:1px solid #89769566;border-radius:12px;overflow:hidden;background:linear-gradient(135deg,#252237,#172333);transition:border-color .2s,box-shadow .2s}.library-card:hover{border-color:#c4a474;box-shadow:0 8px 26px #0003}.library-card-body{display:flex;flex-direction:column;flex:1;min-width:0;padding:24px}.library-card-meta{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-bottom:14px}.library-label{font-size:11px;padding:3px 10px;border:1px solid #a58bb366;border-radius:20px;color:#d7c6e5;background:#674b7c22}.library-label.is-paid{color:#e2c99d;border-color:#af905a88;background:#a0794020}.library-card h3{font-family:'Yu Mincho',serif;font-size:23px;color:#efe1ca;margin-bottom:14px}.library-card-body>p{font-size:15px;line-height:1.95;color:#c9bfce}.library-card-body>.library-access-note{font-size:12px;color:#c4ad87;margin:18px 0}.library-actions{display:flex;flex-direction:column;gap:10px;margin-top:auto}.library-actions .button,.library-series-link .button{white-space:normal;text-align:center;justify-content:center;min-width:0;min-height:52px;font-size:14px}.ai-library-page .button.primary{background:linear-gradient(125deg,#745987,#382f50);border-color:#b29a79;color:#fff2dc}.ai-library-page .button:hover{border-color:#e0c49b;background-color:#40324f}
.library-guide{padding:30px;border:1px solid #91795366;border-radius:12px;background:linear-gradient(130deg,#202438,#151e2c);scroll-margin-top:24px}.library-steps{list-style:none;counter-reset:none;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:26px 0}.library-steps li{padding:20px;background:#ffffff03;border:1px solid #90799e44;border-radius:8px;min-width:0}.library-steps strong{display:block;color:#e2c499;font-size:15px;margin-bottom:10px}.library-steps p{font-size:14px;color:#ccc3d5;line-height:1.95}.library-guide>.library-hint{font-size:12px;color:var(--muted)}.library-prompts{margin:26px 0}.library-prompts h3{font-size:18px;color:#dec9ac}.library-prompts ul{padding-left:22px;margin-bottom:0}.library-prompts li{padding:6px 0;font-size:15px;color:#d2c5dc}.library-whisper{margin:28px 0 0;padding:20px;border-left:2px solid #b391c2;background:#5c3f6522;color:#eed6e3;font-family:'Yu Mincho',serif;font-size:20px;line-height:1.9}.library-whisper cite{display:block;font-size:12px;text-align:right;font-style:normal;color:var(--muted);margin-top:12px}.library-notice{margin:28px 0;font-size:12px;color:var(--muted)}.library-bottom-links{display:flex;flex-wrap:wrap;gap:12px}.library-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
@media(max-width:700px){.library-container{width:calc(100% - 24px)}.library-episodes,.library-steps{grid-template-columns:minmax(0,1fr)}.library-series-link{flex-direction:column;align-items:stretch;gap:14px}.library-card-body{padding:20px 16px}.library-series-heading h2,.library-guide h2{font-size:24px}.library-card h3{font-size:22px}.library-guide{padding:22px 16px}.library-steps li{padding:16px}.library-actions .button{font-size:13px;padding:12px;gap:8px}.library-whisper{padding:16px;font-size:18px}.library-bottom-links{flex-direction:column}.library-bottom-links .button{justify-content:center}}


/* Phase 11: practical rule form and readable, copyable reflection. */
.rule-builder-page{background:radial-gradient(ellipse at 85% 5%,#48345244,transparent 50%),#111826}
.rule-container{max-width:880px;padding-bottom:44px;overflow-wrap:anywhere}.rule-panel{margin:0 0 30px;padding:30px;border:1px solid #917b5c66;border-radius:12px;background:linear-gradient(140deg,#252239,#172334);scroll-margin-top:24px;min-width:0}.rule-panel h2{font-family:'Yu Mincho',serif;color:#e9d4b4;font-size:27px;margin:10px 0 16px}.rule-panel>p{font-size:15px;color:#cfc5d7;line-height:1.95}.rule-panel>.rule-progress{font-size:12px;color:var(--gold);margin:22px 0}.rule-field{margin:24px 0;padding-bottom:24px;border-bottom:1px solid #b7a0c322}.rule-field label{display:block;cursor:pointer}.rule-field label strong{display:block;font-size:18px;color:#eee0cb;margin:8px 0}.rule-field p{font-size:13px;color:var(--muted);margin-bottom:12px}.rule-field select{font:inherit;font-size:16px;width:100%;min-width:0;min-height:54px;color:var(--text);background:#152135;border:1px solid #8e779b88;border-radius:7px;padding:12px;cursor:pointer}.rule-field select:focus-visible,.rule-copy textarea:focus-visible{outline:2px solid var(--gold);outline-offset:3px}.rule-field select[aria-invalid=true]{border-color:#e3aaa7}.rule-error{color:#efbdb5;font-size:14px;margin:16px 0}.rule-builder-page .button.primary{background:linear-gradient(125deg,#75588b,#393148);color:#fff0d9;border-color:#b8986b}.rule-builder-page .button{min-height:54px;white-space:normal;justify-content:center;text-align:center}.rule-builder-page .button:disabled{opacity:.65;cursor:default}.rule-list{display:grid;grid-template-columns:minmax(0,140px) minmax(0,1fr);margin:26px 0}.rule-list dt,.rule-list dd{margin:0;padding:16px 12px;border-bottom:1px solid #ae9abb33}.rule-list dt{font-size:14px;color:var(--gold);background:#ffffff03}.rule-list dd{font-size:16px;line-height:1.95;min-width:0}.rule-review{padding:16px;background:#b1976820;border-radius:6px}.rule-moluauna{margin:24px 0;padding:18px;border-left:2px solid #b494c4;background:#64466622;color:#efd6e4;font-family:'Yu Mincho',serif;font-size:20px;line-height:1.95}.rule-moluauna cite{display:block;text-align:right;font-size:12px;font-style:normal;color:var(--muted);margin-top:10px}.rule-copy label{display:block;font-size:14px;color:#ddc4a1;margin-bottom:12px}.rule-copy textarea{display:block;font:inherit;font-size:15px;width:100%;max-width:100%;min-height:270px;padding:16px;resize:vertical;color:#ddd6e5;background:#121d2c;border:1px solid #8e779b88;border-radius:7px;line-height:1.9}.rule-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:18px}.rule-copy [role=status]{font-size:13px;color:var(--gold);margin-top:12px}.rule-detail{background:linear-gradient(135deg,#182536,#1a1b2a)}.rule-detail-topics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 22px;padding-left:22px;margin:20px 0;font-size:14px;color:var(--muted)}.rule-detail-card{border:1px solid #a88b5c55;border-radius:8px;padding:22px;background:#ffffff03}.rule-detail-card h3{font-size:20px;color:#e2ccab;margin-bottom:12px}.rule-detail-card p{font-size:14px;color:var(--muted);margin-bottom:16px}.rule-detail-card .tag{display:table;color:#d6bb8e}.rule-footnote{color:var(--muted);font-size:12px;margin:22px 0}
@media(max-width:600px){.rule-container{width:calc(100% - 24px)}.rule-panel{padding:22px 16px}.rule-panel h2{font-size:24px}.rule-field label strong{font-size:17px}.rule-field select{padding:12px 8px}.rule-list{grid-template-columns:minmax(0,1fr)}.rule-list dt{border-bottom:0;padding:12px 12px 4px}.rule-list dd{padding:4px 12px 16px}.rule-actions{flex-direction:column}.rule-actions .button,.rule-panel form>.button{width:100%}.rule-moluauna{font-size:18px;padding:16px}.rule-detail-card{padding:18px 14px}.rule-detail-topics{grid-template-columns:minmax(0,1fr)}}


/* Phase 12: small finishing touches; all artwork and game layout retained. */
.home .hero-message{width:max-content;max-width:calc(100% - 40px)}.home .hero-message p{font-size:18px;line-height:1.75;letter-spacing:0}.home .hero-message-line{white-space:nowrap}
.home .hero-actions .button{min-width:0;transition:transform .2s,box-shadow .2s,border-color .2s;box-shadow:0 0 22px #936bb52b,inset 0 0 0 3px #e1c2ea18}.home .hero-actions .cta-play{background:linear-gradient(125deg,#70428e,#281936)}.home .hero-actions .cta-learn{background:linear-gradient(125deg,#2c527e,#16243b)}.home .hero-actions .cta-rule{background:linear-gradient(125deg,#705932,#2c2319)}.home .hero-actions .cta-whisper{background:linear-gradient(125deg,#67404f,#30202f)}.home .hero-actions .cta-icon svg{stroke-width:1.6}.home .hero-actions .cta-text{min-width:0;overflow-wrap:anywhere}.home .hero-actions .cta-text small{font-size:11px;line-height:1.65}.home .hero-actions .button>span:last-child{flex-shrink:0}
.home .availability{display:flex;justify-content:flex-end;align-items:center;flex-wrap:wrap;gap:8px 12px;font-size:11px;padding-top:6px}.home .availability .availability-badge{display:inline-flex;align-items:center;gap:6px;color:#e5cc9e;border:1px solid #c8a76c66;background:#65503525;border-radius:20px;padding:5px 12px}.home .availability small{display:block;width:100%;font-size:10px;color:var(--muted)}
@media(hover:hover) and (pointer:fine){.home .hero-actions .button:hover{transform:translateY(-3px);border-color:#e3c99f;box-shadow:0 8px 28px #bd925437,inset 0 0 0 3px #e1c2ea26}.home .hero-actions .button:hover .cta-icon{color:#fff0d4}}
@media(max-width:800px){.home .hero-message{max-width:calc(100% - 32px)}.home .hero-message p{font-size:16px}.home .availability{justify-content:flex-start;text-align:left}.home .hero-actions .cta-text small{font-size:11px}.site-header .brand{min-width:0}}
@media(max-width:360px){.home .hero-actions .button{gap:10px;padding:14px}.home .hero-actions .cta-text{font-size:15px}.home .hero-actions .cta-text small{font-size:10px}.home .hero h1{letter-spacing:0}.game-topline{gap:8px}.timer-box strong{font-size:24px}.trade-button.wait{font-size:14px}.site-header .brand small{letter-spacing:.04em}}
@media(prefers-reduced-motion:reduce){.home .hero-actions .button:hover{transform:none;transition:none}}

/* Whisper image bank: stable frames for square and portrait artwork. */
.whisper-page .whisper-portrait img{object-position:center 35%}
/* The same random portrait sits behind both selection steps. */
.whisper-selection-frame{position:relative;isolation:isolate}
.whisper-page .whisper-selection-frame .whisper-preview{position:absolute;inset:0;width:100%;height:100%;margin:0;border:0;border-radius:14px;z-index:-1;pointer-events:none;background:#121b2b}
.whisper-page .whisper-selection-frame .whisper-preview img{width:100%;height:100%;aspect-ratio:auto;object-fit:cover;object-position:center 35%;opacity:.48}
.whisper-selection-frame .whisper-preview::after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,#101425a6,#101a3033 70%),linear-gradient(0deg,#121b2b88,transparent 60%)}
.whisper-selection-frame .whisper-preview>p{display:none}
.whisper-page .whisper-selection-frame .whisper-step{position:relative;background:transparent}
.whisper-selection-frame .whisper-option{background:#10192bb8;backdrop-filter:blur(3px);border-color:#c2acc280;color:#f3edf7}
.whisper-selection-frame .whisper-option:hover{background:#342a48e8;border-color:#d9b9df}
.whisper-selection-frame .muted{color:#ded7e5}
@media(max-width:650px){.whisper-page .whisper-selection-frame .whisper-preview img{object-position:58% 30%;opacity:.4}}
@media(max-width:650px){.whisper-page .whisper-portrait img{object-position:center 35%}}

/* Equal entry points for each AI learning series. */
.library-selector{margin-bottom:48px}.library-selector>h2{font-size:25px;color:#ead9b8;margin-bottom:22px}.library-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.library-choice{min-width:0;overflow:hidden;border:1px solid #89769566;border-radius:12px;background:linear-gradient(135deg,#252237,#172333)}.library-choice>img{display:block;width:100%;height:auto;aspect-ratio:1.9;flex:0 0 auto;object-fit:contain;background:#111a29}.library-choice-body{padding:20px;display:flex;flex-direction:column}.library-choice h3{font-family:'Yu Mincho',serif;font-size:21px;color:#efe1ca}.library-choice p{color:#c9bfce;font-size:14px;margin:10px 0 16px}.library-choice .library-actions{gap:8px}.library-choice .library-actions .button{min-height:46px;padding:10px 14px}.library-tools-guide{margin-top:24px}.library-tools-guide h3{font-size:18px;color:#dec9ac}.library-tools-guide p{font-size:14px;color:#ccc3d5;margin-top:12px}
@media(max-width:700px){.library-choices{grid-template-columns:minmax(0,1fr)}.library-choice-body{padding:20px 16px}.library-choice h3{font-size:22px}}

.library-choice{display:flex;flex-direction:column}.library-choice-body{flex:1}.library-choice-body .library-actions{margin-top:auto}.library-episodes .library-card>img{aspect-ratio:1.9;object-fit:contain;background:#111a29}

.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
