@charset "UTF-8";
:root{color-scheme:dark;--navy:#07172c;--text:#f6f2ec;--muted:#bac6d5;--line:rgba(163,192,222,.25);--gold:#f7c36d;--accent:linear-gradient(105deg,#f30b84 0%,#f44776 42%,#ff993f 80%,#ffd35a 100%);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:16px}
*{box-sizing:border-box}body{margin:0;background:var(--navy);color:var(--text);min-height:100svh}button,input,textarea{font:inherit}button,a,label,input,textarea,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{opacity:.6;cursor:wait}a{color:inherit;text-decoration:none}[hidden]{display:none!important}svg.icon{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}span[data-icon]{display:inline-flex;align-items:center;justify-content:center}button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid var(--gold);outline-offset:5px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.scenery{position:fixed;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(4,16,32,.48),rgba(5,17,34,.20) 45%,rgba(4,14,29,.70)),linear-gradient(0deg,#061326 0%,transparent 70%),url('/assets/twilight.png') center/cover no-repeat}.topbar{max-width:1320px;margin:auto;display:flex;justify-content:space-between;align-items:center;padding:30px 46px 0;gap:20px}.brand{display:flex;align-items:center;gap:8px}.brand-symbol{width:54px;height:48px;background:url('/assets/reference.png') -59px -15px/836px 470.5px no-repeat;flex-shrink:0}.wordmark{font:36px/1.05 Georgia,"Times New Roman",serif;letter-spacing:-1px;display:block}.tagline{display:block;font-size:10px;letter-spacing:3.7px;margin-top:8px;color:#d4d3e4}.private-badge,.quiet-button{display:flex;align-items:center;gap:9px;font-size:.875rem;color:#dddce1}.private-badge svg{color:var(--gold);width:16px}.quiet-button{border:1px solid var(--line);border-radius:12px;padding:10px 14px;background:rgba(24,46,69,.65);min-height:44px}.quiet-button svg{color:var(--gold)}
.layout{max-width:1230px;padding:44px 46px 34px;margin:auto;display:grid;grid-template-columns:1fr 490px;gap:60px;align-items:start}.welcome{padding-top:80px;position:sticky;top:60px}.eyebrow{font-size:.6875rem;letter-spacing:2.5px;line-height:1.6;font-weight:600;color:#d2dced;margin:0 0 12px}.welcome h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(3rem,5vw,4.8rem);line-height:1.12;letter-spacing:-2px;font-weight:400;margin:24px 0}.welcome h1 em{font-style:italic;font-weight:400;color:#ffedda}.welcome p{font-size:1.0625rem;line-height:1.7;color:#e0e4ea}.welcome-note{display:flex;align-items:center;gap:12px;margin-top:33px;font-size:.875rem;color:#d2d6df}.welcome-note svg{color:var(--gold)}.quote{font:italic 22px/1.5 Georgia,serif;color:#f3dbbf;margin-top:88px}.workspace{min-width:0}.glass{border:1px solid rgba(139,175,210,.26);background:linear-gradient(145deg,rgba(17,36,57,.88),rgba(6,21,40,.95));backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);box-shadow:0 20px 80px #0005,inset 0 1px 0 #ffffff0a;border-radius:24px;padding:30px}.glass h2{font:400 24px/1.25 Georgia,"Times New Roman",serif;margin:0 0 15px;letter-spacing:-.35px}.card-topline{display:flex;align-items:center;justify-content:space-between}.card-topline svg{width:18px;height:18px;color:var(--gold);margin-top:-12px}textarea{width:100%;display:block;resize:vertical;min-height:96px;border:1px solid #d9e5fa;border-radius:12px;background:linear-gradient(135deg,#e3e9f7,#c6d5eb);color:#243955;line-height:1.5;padding:14px 15px;font-size:.9375rem;box-shadow:0 0 20px #82aaff10;outline:none}textarea::placeholder{color:#556987;opacity:1}textarea:focus{border-color:var(--gold);box-shadow:0 0 0 3px #f7c36d25}.mood-meta{display:flex;justify-content:space-between;gap:14px;font-size:.6875rem;color:#a9b8ce;margin:8px 0 22px;line-height:1.5}.mood-meta span:first-child{font-size:.75rem}.mood-meta span:last-child{white-space:nowrap}fieldset{border:0;margin:0 0 22px;padding:0;min-width:0}legend{font:400 18px/1.4 Georgia,"Times New Roman",serif;padding:0;margin-bottom:10px}.choices{display:grid;gap:8px}.choice{position:relative;min-height:46px;border:1px solid rgba(143,181,213,.5);border-radius:11px;background:linear-gradient(145deg,#223b5266,#11273b66);display:flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;font-size:.875rem;transition:border-color .2s,background .2s;isolation:isolate}.choice:hover{border-color:#c4ccdf}.choice input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}.choice:has(input:checked){border-color:#ffc55e;background:linear-gradient(110deg,#b81065,#ae4e33 65%,#bd8a35);box-shadow:0 0 0 1px #ffc55e60,0 0 16px #ee80502b}.choice:has(input:focus-visible){outline:2px solid var(--gold);outline-offset:4px}.choice svg{width:20px;height:20px}.goal-grid{grid-template-columns:repeat(6,1fr)}.goal-grid .choice:nth-child(-n+2){grid-column:span 3}.goal-grid .choice:nth-child(n+3){grid-column:span 2}.duration-grid{grid-template-columns:repeat(5,1fr)}.duration-grid .choice{min-height:44px}.field-note{font-size:.75rem;color:#b3bed0;margin:7px 0 0;line-height:1.5}.sound-grid{grid-template-columns:repeat(4,1fr)}.sound-grid .choice{flex-direction:column;gap:7px;min-height:71px;font-size:.8125rem}.sound-grid .choice:has(input:checked){background:linear-gradient(145deg,#3b253e,#283243);box-shadow:0 0 0 1px #ffc55e60,0 0 19px #ff865634}.sound-grid .choice:has(input:checked) svg{color:#ffab8e}.sound-grid svg{height:24px;width:24px}.preparation{margin-bottom:22px}.preparation h3{font-size:.8125rem;font-weight:500;display:flex;align-items:center;gap:9px;margin:0 0 9px;color:#e7e7ee}.preparation h3 svg{width:18px;height:18px;color:#e6bb7e}.preparation ul{list-style:none;margin:0;padding:0;display:grid;gap:6px}.preparation li{font-size:.75rem;line-height:1.4;color:#d0d9e6;padding:8px 11px;border:1px solid #95b8db2b;border-radius:9px;background:#1c38524a;display:flex;align-items:center;gap:9px}.preparation li svg{width:15px;height:15px;color:#c2cad8}.primary{width:100%;min-height:52px;background:var(--accent);border:1px solid #ffc97a;color:white;display:flex;align-items:center;justify-content:center;gap:12px;padding:12px 14px;border-radius:18px;font-size:1rem;font-weight:600;text-shadow:0 1px 2px #713244;box-shadow:0 0 18px #ec43872e,inset 0 1px 1px #fff5;transition:filter .2s}.primary:hover{filter:brightness(1.08)}.primary svg:last-child{width:18px;margin-left:auto}.primary svg:first-child{margin-right:auto}.primary svg:only-child{margin-left:0;margin-right:0}.preview-note{color:#c0bdc9;font-size:.6875rem;text-align:center;margin:11px 0 0}.workspace-footer{text-align:center;font-size:.75rem;color:#c8ced8;padding:19px 10px 0;line-height:1.5}.workspace-footer>span{vertical-align:middle;margin-right:5px;color:var(--gold)}.workspace-footer svg{width:14px;height:14px}.workspace-footer p{font-size:.6875rem;color:#9faec2;margin:5px 0}.error{border:1px solid #edb6ad60;color:#ffe0d7;background:#8b383833;padding:11px;border-radius:9px;font-size:.875rem;line-height:1.5}.loading{text-align:center}.login-card{margin-top:70px;padding:39px 35px}.round-icon{border:1px solid #d2a66455;border-radius:50%;width:52px;height:52px;display:flex;justify-content:center;align-items:center;background:#bf914114;color:var(--gold);margin-bottom:25px}.round-icon svg{width:24px;height:24px}.login-card h2,.result-card h2{font-size:32px;line-height:1.22;margin-bottom:14px}.login-card .muted{color:var(--muted);margin:0 0 28px;font-size:.9375rem}.login-card label{display:block;font-size:.875rem;margin-bottom:9px}.password-field{position:relative;margin-bottom:20px}.password-field input{width:100%;border:1px solid #809db964;background:#15304985;color:var(--text);border-radius:11px;min-height:49px;padding:12px 52px 12px 13px;outline:none}.password-field input:focus{border-color:var(--gold);box-shadow:0 0 0 3px #f7c36d25}.show-password{position:absolute;right:3px;top:3px;width:44px;height:44px;display:flex;align-items:center;justify-content:center;border:0;background:none;color:#b6c9de}.login-note{font-size:.75rem;color:#b6c2d3;display:flex;align-items:center;justify-content:center;gap:8px;margin:24px 0 0;line-height:1.5}.login-note svg{width:16px;height:16px}.result-card{padding:32px}.result-summary{color:#e4bd82;font-size:.9375rem;line-height:1.5}.result-visual{height:120px;border:1px solid #96b8db30;border-radius:15px;display:flex;align-items:center;justify-content:center;margin:24px 0;background:linear-gradient(90deg,#27375850,#bb6a3720,#27375850)}.result-visual svg{width:110px;height:60px;color:#eec998;stroke-width:.8}.status-note{display:flex;gap:8px;align-items:center;font-size:.8125rem;color:#d2dce8}.status-note svg{width:16px;color:var(--gold)}.audio-note{font-size:.8125rem;line-height:1.5;color:#bac4d4;margin:12px 0 24px}.recipe-details{border-top:1px solid var(--line);margin:25px 0}.recipe-details summary{padding:15px 0;font-size:.875rem;cursor:pointer;color:#e7d4b7}.recipe-details dl{display:grid;grid-template-columns:1fr auto;gap:8px;font-size:.8125rem}.recipe-details dt{color:#b5c4d6}.recipe-details dd{margin:0;text-align:right}.recipe-details p{font-size:.75rem;line-height:1.6;color:#bfccd9}.result-card .primary{margin-top:24px}
@media(min-width:1450px){.layout{padding-top:66px;gap:100px;grid-template-columns:1fr 510px}.welcome{padding-top:110px}}
@media(max-width:1000px){.topbar{padding:24px 30px 0}.layout{padding:36px 30px 30px;gap:30px;grid-template-columns:1fr 450px}.welcome h1{font-size:3.2rem}.quote{margin-top:60px}}
@media(max-width:800px){.topbar{max-width:550px;padding:22px 22px 0}.layout{display:block;max-width:550px;padding:26px 22px 30px}.welcome{display:none}.scenery{background:linear-gradient(0deg,#061326 8%,rgba(5,17,34,.80) 55%,rgba(4,16,32,.45)),url('/assets/twilight.png') 58% top/auto 80svh no-repeat}.wordmark{font-size:29px}.brand-symbol{transform:scale(.82);transform-origin:left center;width:46px;margin-right:-5px}.tagline{font-size:8px;letter-spacing:2.8px;margin-top:5px}.private-badge{font-size:.75rem}.private-badge svg{width:14px}.glass{border-radius:19px;padding:24px}.login-card{margin-top:40px;padding:30px 26px}.quiet-button{padding:9px 11px;font-size:.8125rem}.quiet-button svg{width:18px}.login-card h2{font-size:30px}.workspace-footer{padding-top:19px}}
@media(max-width:420px){.topbar{padding:17px 18px 0}.layout{padding:22px 16px 26px}.glass{padding:21px 18px}.session-card h2{font-size:22px}.eyebrow{font-size:.625rem;letter-spacing:2px}legend{font-size:17px}.choices{gap:7px}.choice{font-size:.8125rem}.goal-grid .choice{gap:6px}.mood-meta span:first-child{font-size:.6875rem}.mood-meta{gap:7px}.private-badge{max-width:105px;line-height:1.5}.login-card{padding:28px 23px}.result-card{padding:26px 23px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}

/* M02: the website inside the final Hybrid reference is the visual target. */
body{position:relative;isolation:isolate;background:#041128}
.scenery{position:absolute;background:linear-gradient(90deg,rgba(2,13,31,.55) 0%,rgba(3,15,33,.32) 36%,rgba(3,15,33,.04) 68%,rgba(3,15,33,.08)),linear-gradient(0deg,#041128 0%,rgba(4,17,40,.64) 16%,transparent 43%),url('/assets/twilight.png') center center/cover no-repeat}
.topbar{position:relative;z-index:10;width:calc(100% - 112px);max-width:1300px;padding:26px 0 15px;min-height:108px;gap:35px}
.brand{gap:9px;flex-shrink:0}
.brand-symbol{display:block;background:none;object-fit:contain;width:56px;height:53px;margin:0;transform:scale(1.3)}
.wordmark{font:400 42px/1 "Baskerville","Iowan Old Style",Georgia,serif;letter-spacing:-1px}
.tagline{font-size:9px;letter-spacing:3.5px;line-height:1.5;margin-top:8px;color:#d3d8e6}
.main-nav{display:flex;align-items:center;justify-content:center;gap:29px;margin-left:auto}
.main-nav a,.main-nav button{position:relative;background:none;border:0;padding:12px 0;color:#e4e7ef;font-size:.875rem;font-weight:400;white-space:nowrap;line-height:1.5}
.main-nav a:hover,.main-nav button:hover{color:#fff3dc}
.main-nav a[aria-current="page"]::after{content:"";position:absolute;bottom:5px;left:0;right:0;height:1px;background:#e5b4709c}
.header-actions{display:flex;gap:14px;align-items:center}
.open-app{min-height:42px;min-width:126px;padding:10px 23px;border:1px solid #eec891a3;border-radius:13px;background:linear-gradient(120deg,#b29a735b,#9e719254);box-shadow:inset 0 1px 2px #fff2,0 0 14px #d9ab5620;color:#fff4ea;font-size:.875rem;white-space:nowrap;font-weight:400}
.open-app:hover{background:linear-gradient(120deg,#bd9b7780,#9e719274)}
.menu-toggle{display:none;border:1px solid #a4bbd43d;border-radius:9px;background:#0e23384d;color:#ede8e6;min-height:40px;width:40px;align-items:center;justify-content:center}
.home-view{max-width:1300px;width:calc(100% - 112px);margin:auto}
.hero-body{position:relative;min-height:570px;display:flex;align-items:center;padding:28px 0 42px}
.hero-copy{position:relative;z-index:1;width:52%;max-width:630px;padding-left:18px}
.hero-copy .eyebrow{font-size:.6875rem;letter-spacing:2.3px;line-height:1.7;margin-bottom:19px;color:#dee5f4}
.hero-copy h1{font:400 clamp(3.7rem,5.8vw,5.5rem)/1.035 "Baskerville","Iowan Old Style",Georgia,serif;letter-spacing:-1.5px;margin:0 0 25px;text-shadow:0 2px 16px #010b1a55}
.hero-description{font-size:1rem;font-weight:400;line-height:1.65;letter-spacing:.1px;color:#e4e4ef;margin:0 0 26px;text-shadow:0 2px 10px #04152acc}
.hero-cta{width:270px;border-radius:28px;min-height:54px;padding:12px 27px;font-weight:500;gap:20px;box-shadow:0 0 23px #ee168669,inset 0 1px 3px #fff4;font-size:1rem;background:linear-gradient(105deg,#f30988,#f3237b 45%,#ff963c 87%,#ffcc59)}
.hero-cta svg{width:20px;height:20px}
.hero-cta svg:last-child{margin:0}
.scene-signature{position:absolute;left:62%;top:60%;font:italic 42px/1.15 "Baskerville","Iowan Old Style",Georgia,serif;color:#efdbde;transform:rotate(-8deg);letter-spacing:.6px;text-align:center;text-shadow:0 1px 6px #13223e;margin:0;opacity:.85}
.benefits{display:grid;grid-template-columns:repeat(4,1fr);margin:0 5px;padding:24px 20px 18px;gap:30px;background:linear-gradient(90deg,#0411264d,#0b1b3773 46%,#04112638);border-radius:12px;text-align:center}
.benefit>span{display:flex;align-items:center;justify-content:center;width:45px;height:41px;margin:0 auto 12px;color:#efc17f}
.benefit svg.icon{width:36px;height:36px;stroke-width:1.15}
.benefit:nth-child(2)>span{color:#d3d9ec}
.benefit:nth-child(4)>span{color:#fc698b}
.benefit p{font-size:.9375rem;line-height:1.55;font-weight:400;margin:0;color:#f3edf1}
.benefit p span{color:#d3d9e7}
.hero-quote{display:flex;align-items:center;justify-content:center;gap:28px;min-height:78px;margin:5px auto 0;padding:0 12px 10px}
.hero-quote p{font:italic 21px/1.5 "Baskerville","Iowan Old Style",Georgia,serif;color:#dbd7e5;margin:0;white-space:nowrap}
.hero-quote>span{display:block;width:155px;height:1px;background:linear-gradient(90deg,transparent,#a9b6cc6e)}
.hero-quote>span:last-child{transform:rotate(180deg)}
.private-layout{max-width:560px;margin:25px auto 0;padding:0 22px 32px}
body[data-page="app"] .scenery{background:linear-gradient(0deg,#051329,rgba(5,18,39,.77)),url('/assets/twilight.png') 67% center/cover no-repeat}
.private-layout .login-card{margin-top:28px;padding:34px}
.back-home{display:block;min-height:44px;margin:15px auto -7px;padding:10px 12px;background:none;border:none;color:#c7c8d8;font-size:.8125rem}
.back-home:hover{color:#f1cc9a}
.info-dialog{position:fixed;color:var(--text);background:linear-gradient(145deg,#15263b,#07162a);border:1px solid #9fbbd04d;border-radius:23px;padding:36px;max-width:510px;width:calc(100% - 36px);max-height:calc(100svh - 60px);box-shadow:0 30px 100px #0009;overflow:auto}
.info-dialog::backdrop{background:#020b19a8;backdrop-filter:blur(7px)}
.info-dialog h2{font:400 30px/1.2 Georgia,serif;margin:15px 25px 23px 0}
.info-dialog p:not(.eyebrow){font-size:.9375rem;line-height:1.7;color:#d1d8e5}
.close-info{position:absolute;top:14px;right:14px;display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:none;border:none;color:#d9d7df}
.sound-descriptions{display:grid;grid-template-columns:66px 1fr;gap:15px;font-size:.875rem;line-height:1.55;margin:0 0 26px}
.sound-descriptions dt{color:#f1c388}.sound-descriptions dd{margin:0;color:#cfd9e9}
@media(min-width:1550px){.hero-body{min-height:630px}.hero-copy h1{font-size:84px}}
@media(min-width:1001px) and (min-height:940px){.hero-body{min-height:calc(100svh - 347px)}}
@media(max-width:1100px){.topbar,.home-view{width:calc(100% - 72px)}.topbar{gap:24px}.main-nav{gap:20px}.wordmark{font-size:34px}.hero-body{min-height:545px}.hero-copy h1{font-size:64px}.hero-copy{width:55%;padding-left:0}.hero-description{font-size:.9375rem}.scene-signature{left:62%;font-size:36px}.benefits{gap:20px}}
@media(max-width:900px){.topbar{gap:15px;min-height:96px}.main-nav{gap:15px}.main-nav a,.main-nav button{font-size:.8125rem}.brand-symbol{width:45px;height:46px}.wordmark{font-size:30px}.tagline{font-size:8px;letter-spacing:2.6px}.open-app{min-width:110px;padding:9px 17px}.hero-copy h1{font-size:57px}.hero-body{min-height:535px}.hero-copy{width:58%}.benefit p{font-size:.875rem}}
@media(max-width:760px){
  .scenery{background:linear-gradient(90deg,#031329b3,rgba(5,20,43,.24) 64%),linear-gradient(0deg,#041128 0%,#041128b3 16%,transparent 41%,#0313294d 90%),url('/assets/twilight.png') 80% 60px/auto 780px no-repeat;background-color:#041128}
  .topbar{width:calc(100% - 40px);min-height:85px;padding:16px 0 10px;gap:10px;max-width:none;align-items:center}
  .brand-symbol{width:38px;height:42px}.brand{gap:7px}.wordmark{font-size:29px}.tagline{font-size:7px;letter-spacing:2.7px;margin-top:5px}
  .header-actions{margin-left:auto;gap:8px}.open-app{min-width:0;padding:9px 13px;min-height:38px;font-size:.75rem;border-radius:10px}.quiet-button{font-size:.75rem;padding:7px 10px;gap:6px;min-height:38px}.quiet-button svg{width:16px}
  .menu-toggle{display:flex;min-height:38px;width:34px;flex-shrink:0}.menu-toggle svg{width:19px}
  .main-nav{display:none;position:absolute;top:79px;right:0;left:0;z-index:10;padding:15px 22px;background:#0b1a30f5;backdrop-filter:blur(16px);border:1px solid #9cb4d541;border-radius:14px;gap:5px;box-shadow:0 15px 50px #010a19aa;margin:0}
  .main-nav.is-open{display:grid}.main-nav a,.main-nav button{text-align:left;font-size:.9375rem;min-height:44px;padding:10px}.main-nav a[aria-current="page"]::after{display:none}
  .home-view{width:100%;max-width:none}.hero-body{min-height:585px;padding:30px 27px 110px;align-items:flex-start}
  .hero-copy{width:100%;max-width:none;padding:0}.hero-copy .eyebrow{font-size:.5625rem;letter-spacing:1.8px;margin:0 0 18px;line-height:1.7}
  .hero-copy h1{font-size:clamp(2.9rem,8.4vw,3.8rem);line-height:1.065;letter-spacing:-1.5px;margin-bottom:23px}
  .hero-description{font-size:.875rem;line-height:1.75;margin-bottom:26px;max-width:300px}.hero-cta{width:210px;min-height:50px;font-size:.9375rem;padding:11px 24px}
  .scene-signature{left:auto;right:28px;top:auto;bottom:20px;font-size:32px;opacity:.76}
  .benefits{grid-template-columns:repeat(2,1fr);padding:17px 22px 13px;margin:0 14px;gap:21px 18px;background:linear-gradient(145deg,#12213f60,#07162d40);border-radius:15px}
  .benefit>span{height:34px;margin-bottom:6px}.benefit svg.icon{width:29px;height:29px;stroke-width:1.3}.benefit p{font-size:.8125rem;line-height:1.5}
  .hero-quote{gap:12px;min-height:77px;padding:7px 24px 18px;margin-top:6px}.hero-quote p{font-size:18px}.hero-quote>span{width:45px}
  .private-layout{margin-top:20px;padding:0 17px 28px;max-width:550px}.private-layout .login-card{margin-top:26px;padding:30px 25px}
  .info-dialog{padding:30px 23px}.info-dialog h2{font-size:27px}.sound-descriptions{grid-template-columns:57px 1fr;gap:13px}
}
@media(max-width:380px){.topbar{width:calc(100% - 30px);gap:6px}.brand-symbol{width:32px;height:37px}.brand{gap:5px}.wordmark{font-size:26px}.tagline{letter-spacing:2.1px}.header-actions{gap:6px}.open-app{padding:8px 11px}.hero-body{padding-left:23px;padding-right:23px;min-height:566px}.hero-copy h1{font-size:43px;letter-spacing:-1.3px}.hero-copy .eyebrow{font-size:8px}.hero-description{font-size:.8125rem}.hero-quote{padding-left:20px;padding-right:20px;gap:9px}.hero-quote p{font-size:16px}}

/* M04: private render/player/feedback only; the approved landing page is frozen. */
.result-card .render-state{display:flex;align-items:center;gap:16px;border:1px solid #96b8db30;border-radius:15px;padding:23px 18px;margin:22px 0;background:linear-gradient(90deg,#27375850,#bb6a3720,#27375850)}
.render-state>.icon,.render-state>span>.icon{width:45px;height:45px;color:#eec998;flex-shrink:0;stroke-width:1.2}.render-state p{font-size:.875rem;line-height:1.6;margin:0;color:#d4dbe8}
.session-player{border:1px solid #96b8db38;border-radius:18px;background:linear-gradient(145deg,#23354b77,#0a203b66);padding:23px 18px;margin:24px 0}.session-name{text-align:center;font:italic 22px/1.4 Baskerville,Georgia,serif;color:#efdbc0;margin:0 0 20px}
.play-toggle{margin:0 auto 24px;display:flex;align-items:center;justify-content:center;gap:10px;min-width:156px;min-height:55px;border-radius:30px;border:1px solid #e7be8da8;background:linear-gradient(120deg,#a3396555,#b98a453d);color:#fff2e5;box-shadow:0 0 24px #ee966815;font-weight:500}.play-toggle:disabled{opacity:.55;cursor:wait}.play-toggle span:first-child{font-size:20px;width:24px}
.audio-progress{width:100%;height:28px;accent-color:#efb876;cursor:pointer;margin:0}.player-times{display:flex;justify-content:space-between;gap:9px;font-size:.6875rem;color:#aebed2;margin-top:6px}.player-times output{font-size:.8125rem;color:#ede6db;font-variant-numeric:tabular-nums}.session-player>.field-note{text-align:center;min-height:22px;margin-top:15px}.session-player .back-home{margin:6px auto -7px}
.session-aftercare{margin:25px 0;padding-top:20px;border-top:1px solid var(--line)}.session-aftercare h3,.session-feedback h3{font:400 23px/1.3 Baskerville,Georgia,serif;margin:0 0 13px}.session-aftercare ul{padding-left:19px;font-size:.8125rem;line-height:1.7;color:#d2dcea}
.session-feedback{border:1px solid #d5b58940;border-radius:15px;padding:20px;margin:24px 0;background:#ac844810}.session-feedback p{font-size:.8125rem;line-height:1.6;color:#c0cbd9;margin:0 0 14px}.feedback-buttons{display:flex;gap:12px}.feedback-buttons button{flex:1;min-height:48px;border:1px solid #9bb2cf66;border-radius:11px;background:#182e475c;color:#f3ebde;font-size:20px}.feedback-buttons span{font-size:.875rem;margin-left:7px}.feedback-buttons button[aria-pressed="true"]{border-color:#e7be8d;background:#79573f55}.session-feedback #feedback-status{color:#edd0a4;margin:14px 0 0}.session-feedback .error{margin-top:14px}
@media(max-width:380px){.session-player{padding:20px 12px}.session-feedback{padding:17px}.recipe-details dl{grid-template-columns:1fr;gap:5px}.recipe-details dd{text-align:left;margin-bottom:7px}}

/* M05: real audio-generation progress within the private session flow. */
.create-status{display:flex;align-items:center;justify-content:center;gap:10px;color:#edd3af;font-size:.8125rem;line-height:1.5;margin:15px 0 0}.create-spinner{width:17px;height:17px;flex-shrink:0;border:2px solid #edcba433;border-top-color:#efbb7c;border-radius:50%;animation:create-spin 1.2s linear infinite}
.result-card .render-state{padding:21px 18px;gap:18px}.render-progress{position:relative;width:80px;height:80px;flex-shrink:0}.render-progress svg{display:block;width:100%;height:100%;transform:rotate(-90deg)}.render-progress circle{fill:none;stroke-width:4;stroke-linecap:round}.render-track{stroke:#acc5e72b}#render-arc{stroke:#efb876;transition:stroke-dashoffset .5s ease}.render-progress>span{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:#f4d4aa;font-size:1rem;font-variant-numeric:tabular-nums}.render-progress.is-waiting .render-track{animation:create-pulse 1.6s ease-in-out infinite}.render-state.is-ready{padding:14px 18px}.render-state.is-ready .render-progress{width:52px;height:52px}.render-state.is-ready .render-progress>span{font-size:.75rem}.render-state.is-ready p{color:#edcfaa}
@keyframes create-spin{to{transform:rotate(360deg)}}@keyframes create-pulse{50%{stroke:#efb87699}}
@media(prefers-reduced-motion:reduce){.create-spinner,.render-progress.is-waiting .render-track{animation:none}#render-arc{transition:none}}

/* M06: optional day context and small companion cards, private app only. */
.daily-context{border:1px solid #a9bedb38;border-radius:15px;margin:0 0 24px;background:#20354b30;overflow:hidden}
.daily-context>summary{display:flex;align-items:center;gap:11px;padding:17px 15px;cursor:pointer;list-style:none;font:400 19px/1.3 Baskerville,Georgia,serif;color:#efe3d3}
.daily-context>summary::-webkit-details-marker{display:none}.daily-context>summary>.icon,.daily-context>summary>span>.icon{width:22px;height:22px;color:#e9bc82}
.daily-context>summary small{display:block;font:400 .6875rem/1.5 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#b6c4d7;margin-top:4px}
.context-chevron{margin-left:auto;font:20px/1 sans-serif;color:#c7b38f;transition:transform .2s}.daily-context[open] .context-chevron{transform:rotate(180deg)}
.context-content{padding:0 15px 17px;border-top:1px solid #a9bedb1c}.context-intro{font-size:.75rem;line-height:1.6;color:#bfcbdc;margin:15px 0 18px}
.context-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:17px 13px}
.context-field{min-width:0}.context-field>label{display:flex;align-items:center;gap:6px;min-height:34px;font-size:.75rem;line-height:1.4;color:#e4e6ed;margin:0 0 6px}
.context-field>label svg{width:16px;height:16px;color:#dab78a}
.context-field select{width:100%;min-width:0;min-height:44px;padding:9px 7px;border:1px solid #9db4d34d;border-radius:9px;background:#10273d;color:#e3e6ef;font:400 16px/1.3 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.context-field select:focus-visible,.context-content input:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
.context-field select:disabled,.context-content input:disabled{opacity:.55}
.context-amount{margin-top:5px;font-size:.6875rem;color:#b8c6da}.context-amount summary{min-height:32px;padding:7px 0;cursor:pointer}
.context-content input[type="number"]{width:85px;max-width:100%;min-height:42px;border:1px solid #9db4d34d;border-radius:8px;background:#10273d;padding:8px;color:#e3e6ef;font-size:16px}
.context-amount>span{display:block;margin-top:4px}.context-amount[open]{padding-bottom:6px}
.context-movement{margin:21px 0}.context-movement legend{display:flex;align-items:center;gap:7px;font:.8125rem/1.5 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#e4e6ed}.context-movement legend svg{width:17px;height:17px;color:#dab78a}
.movement-tags{display:flex;gap:7px;flex-wrap:wrap}.movement-tags label{position:relative;display:flex;align-items:center;justify-content:center;min-height:42px;flex:1;padding:8px;border:1px solid #9db4d34d;border-radius:10px;cursor:pointer;color:#d3dceb;font-size:.75rem}
.movement-tags input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}.movement-tags label:has(input:checked){border-color:#e9b775;background:#8c624328;color:#f6ddba}
.movement-tags label:has(input:focus-visible){outline:2px solid var(--gold);outline-offset:3px}
.context-check{display:flex;align-items:center;gap:9px;font-size:.75rem;line-height:1.5;min-height:40px;color:#c7d2e0}
.context-check input{width:17px;height:17px;accent-color:#e8b976;flex-shrink:0}.context-none{margin-top:6px;color:#b7c6d9}.context-use{margin-top:19px}
.context-minutes{display:grid;gap:9px;margin-top:5px}.context-minutes>label{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:.75rem;color:#cbd6e4}
.context-minutes>label>span{display:flex;align-items:center;gap:7px}.context-minutes small{font-size:.6875rem}
.context-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:16px}.context-actions .quiet-button{font-size:.75rem;min-height:42px;white-space:nowrap}
.context-skip{border:0;background:none;color:#bfcada;font-size:.75rem;line-height:1.5;min-height:42px;padding:7px 2px;flex:1;text-align:left}
.context-status{font-size:.75rem;line-height:1.5;color:#edcf9c;margin:12px 0 0}.context-status:empty{display:none}
.session-companions{margin:26px 0}.session-companions h3{font:400 23px/1.3 Baskerville,Georgia,serif;color:#f2e5d5;margin:0 0 8px}
.session-companions>ul{list-style:none;margin:16px 0 0;padding:0;display:grid;gap:10px}.session-companions li{display:flex;align-items:flex-start;gap:12px;padding:17px 14px;border:1px solid #c6ad883d;border-radius:13px;background:linear-gradient(120deg,#34425738,#af805014)}
.session-companions li>.icon{color:#e4be86;width:22px;height:22px;margin-top:2px}.session-companions h4{font:400 18px/1.3 Baskerville,Georgia,serif;margin:0 0 7px;color:#f1d9b7}.session-companions li p{font-size:.8125rem;line-height:1.65;color:#cdd6e3;margin:0}
@media(max-width:380px){.context-grid{grid-template-columns:1fr;gap:12px}.context-field>label{min-height:0}.context-content{padding-left:12px;padding-right:12px}.context-actions{display:grid}.context-minutes>label>span{gap:4px}.context-content input[type="number"]{width:72px}}
