:root {
  --violet:#5f46f6; --purple:#8d2af6; --pink:#e45ad7; --ink:#27253b;
  --soft:#786f91; --white:#fff; --card:rgba(255,255,255,.94);
  --line:rgba(83,62,180,.10); --shadow:0 14px 36px rgba(70,38,150,.17);
  --danger:#ff614f; --good:#55d7bd;
}
*{box-sizing:border-box}
html,body{margin:0;min-height:100%;background:#eeeaf8;color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Hiragino Sans","Yu Gothic UI","Noto Sans JP",sans-serif}
button,textarea{font:inherit}
button{color:inherit}
button:focus-visible,textarea:focus-visible{outline:3px solid rgba(255,255,255,.8);outline-offset:2px}
.hidden{display:none!important}
.shell{min-height:100vh;padding:18px;display:flex;justify-content:center;align-items:flex-start;background:
radial-gradient(circle at 12% 10%,#fff 0 12%,transparent 35%),
radial-gradient(circle at 88% 90%,#f5e9ff 0 12%,transparent 38%),#eeeaf8}
.phone{width:min(100%,520px);min-height:min(900px,calc(100vh - 36px));border-radius:34px;overflow:hidden;position:relative;
background:linear-gradient(155deg,#5b4afa 0%,#782df5 47%,#d447dc 100%);box-shadow:0 30px 90px rgba(43,26,88,.23);
border:1px solid rgba(255,255,255,.65)}
.phone:before{content:"";position:absolute;inset:0;background:
radial-gradient(circle at 5% 8%,rgba(255,255,255,.24),transparent 31%),
radial-gradient(circle at 96% 76%,rgba(255,255,255,.16),transparent 34%);pointer-events:none}
.topbar{height:64px;padding:14px 18px 0;display:flex;align-items:center;justify-content:space-between;position:relative;z-index:20;color:white}
.brand{font-weight:850;font-size:13px;letter-spacing:.04em}
.topactions{display:flex;gap:8px;align-items:center}
.iconbtn{width:38px;height:38px;border:0;border-radius:50%;background:rgba(255,255,255,.15);color:white;cursor:pointer;display:grid;place-items:center;backdrop-filter:blur(10px)}
.progressTop{font-size:12px;font-weight:850;background:rgba(55,22,145,.25);border:1px solid rgba(255,255,255,.15);padding:8px 12px;border-radius:999px;color:white}
.screen{position:relative;z-index:2;padding:8px 18px 92px}
.selectTitle{color:#fff;margin:30px 4px 8px;font-size:30px;line-height:1.1;letter-spacing:-.035em}
.selectSub{color:rgba(255,255,255,.78);margin:0 4px 20px;font-size:13px;line-height:1.65}
.scenarioGrid{display:grid;gap:12px}
.scenarioCard{position:relative;overflow:hidden;border:0;border-radius:24px;background:rgba(255,255,255,.94);box-shadow:var(--shadow);padding:0;min-height:156px;cursor:pointer;text-align:left}
.scenarioImg{position:absolute;right:-6px;top:0;width:56%;height:100%;object-fit:cover;object-position:center;mix-blend-mode:multiply;opacity:.94}
.scenarioFade{position:absolute;inset:0;background:linear-gradient(90deg,#fff 0 43%,rgba(255,255,255,.88) 58%,rgba(255,255,255,.15) 100%)}
.scenarioCopy{position:relative;z-index:2;width:60%;padding:18px}
.kicker{font-size:10px;letter-spacing:.12em;font-weight:900;color:#8069da}
.scenarioName{font-size:23px;font-weight:900;margin-top:5px}
.scenarioMeta{font-size:11px;color:var(--soft);line-height:1.45;margin-top:7px}
.hot{display:inline-block;margin-top:11px;border-radius:999px;background:#fff0ec;color:#e5533f;padding:5px 8px;font-size:10px;font-weight:900}

.sceneWrap{position:relative}
.hero{height:285px;border-radius:28px;position:relative;overflow:hidden;background:rgba(255,255,255,.13);box-shadow:inset 0 0 0 1px rgba(255,255,255,.13)}
.heroImg{width:100%;height:100%;object-fit:cover;object-position:center;display:block;filter:saturate(.98) contrast(.98)}
.heroTint{position:absolute;inset:0;background:linear-gradient(180deg,rgba(91,68,246,.14),rgba(90,33,196,.05) 58%,rgba(92,43,215,.36))}
.sceneCount{position:absolute;top:13px;left:50%;transform:translateX(-50%);background:rgba(69,27,163,.55);border:1px solid rgba(255,255,255,.2);color:#fff;border-radius:999px;padding:7px 12px;font-size:12px;font-weight:850;backdrop-filter:blur(12px)}
.contextChip{position:absolute;left:12px;bottom:12px;max-width:76%;background:rgba(255,255,255,.86);border-radius:16px;padding:8px 10px;font-size:10.5px;color:#6c6282;line-height:1.45;box-shadow:0 7px 20px rgba(58,29,120,.12)}

.speech{position:relative;margin:-18px 10px 0;background:var(--card);border-radius:25px;padding:16px 17px 17px;box-shadow:var(--shadow);z-index:5;cursor:pointer;-webkit-tap-highlight-color:transparent}
.speech:active{transform:scale(.995)}
.speech:after{content:"";position:absolute;left:49px;bottom:-11px;border-left:12px solid transparent;border-right:12px solid transparent;border-top:13px solid rgba(255,255,255,.95)}
.speechHead{display:flex;justify-content:space-between;align-items:center;gap:10px}
.customerTag{font-size:10px;font-weight:900;color:#9145ca;background:#f4eaff;border-radius:999px;padding:5px 8px}
.replay{width:38px;height:38px;border:0;border-radius:50%;background:#f2eaff;color:#7735d4;cursor:pointer}
.customerLine{font-size:21px;font-weight:900;line-height:1.42;margin-top:8px;letter-spacing:-.02em}
.waveRow{height:56px;display:flex;align-items:center;justify-content:center;gap:2px;margin-top:12px;position:relative}
.wave{display:flex;gap:3px;align-items:center;height:38px}
.wave span{display:block;width:3px;border-radius:999px;background:rgba(255,255,255,.68);height:8px;transition:.2s}
.wave.active span{animation:wave .8s ease-in-out infinite}
.wave span:nth-child(2n){animation-delay:.11s} .wave span:nth-child(3n){animation-delay:.22s}
@keyframes wave{0%,100%{height:7px;opacity:.45}50%{height:32px;opacity:1}}
.micOrb{position:absolute;width:48px;height:48px;border-radius:50%;display:grid;place-items:center;border:1px solid rgba(255,255,255,.6);background:rgba(255,255,255,.17);color:#fff;font-size:20px;box-shadow:0 7px 18px rgba(48,18,128,.18)}
.prompt{text-align:center;color:rgba(255,255,255,.80);font-size:11px;margin:0 0 9px}

.choices{display:grid;gap:9px}
.choice{display:grid;grid-template-columns:42px 1fr 18px;gap:10px;align-items:center;border:1px solid rgba(255,255,255,.72);background:rgba(255,255,255,.94);border-radius:18px;padding:10px 12px;min-height:70px;text-align:left;cursor:pointer;box-shadow:0 9px 25px rgba(58,29,120,.12);transition:.16s ease}
.choice:hover{transform:translateY(-1px);box-shadow:0 13px 29px rgba(58,29,120,.16)}
.choice:disabled{opacity:.48;cursor:default;transform:none}
.badge{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;color:white;font-weight:900;background:linear-gradient(135deg,#ff68aa,#f15c8d)}
.choice:nth-child(2) .badge{background:linear-gradient(135deg,#829bff,#7470ef)}
.choice:nth-child(3) .badge{background:linear-gradient(135deg,#b06bff,#8b4be1)}
.ctitle{font-size:13px;font-weight:850;line-height:1.35}
.cline{font-size:10.5px;color:#81778f;line-height:1.4;margin-top:4px}
.arrow{color:#7458be;font-size:20px}
.otherPanel{margin-top:8px;background:rgba(255,255,255,.94);border-radius:18px;padding:11px;box-shadow:var(--shadow)}
textarea{width:100%;resize:none;border:1px solid #e4dcf4;background:#fff;border-radius:14px;padding:11px;color:#352d49;outline:none;min-height:64px}
.inputActions{display:flex;gap:8px;margin-top:8px}
.softBtn{flex:1;border:0;border-radius:999px;padding:10px;background:#eee7ff;color:#6544b3;font-weight:850;cursor:pointer}
.softBtn.send{background:linear-gradient(135deg,#7d57f5,#a33be8);color:white}
.softBtn.recording{background:#ffe6ec;color:#d74e70}

.mood{margin-top:12px;background:rgba(255,255,255,.18);border:1px solid rgba(255,255,255,.18);border-radius:22px;padding:10px;display:flex;align-items:center;gap:11px;color:white;backdrop-filter:blur(12px)}
.moodFace{width:54px;height:54px;border-radius:50%;background:#ffd06b;position:relative;box-shadow:inset 0 0 0 4px rgba(255,255,255,.28)}
.moodFace:before,.moodFace:after{content:"";position:absolute;top:20px;width:6px;height:6px;border-radius:50%;background:#5b452b}
.moodFace:before{left:14px} .moodFace:after{right:14px}
.mouth{position:absolute;left:50%;bottom:12px;transform:translateX(-50%);width:18px;height:8px;border-top:3px solid #5b452b;border-radius:18px 18px 0 0}
.moodFace.calm{background:#91e1c6} .moodFace.calm .mouth{border-top:0;border-bottom:3px solid #355c50;border-radius:0 0 18px 18px;bottom:14px}
.moodFace.hot{background:#ff8d7c}
.moodText{flex:1}
.moodLabel{font-size:10px;color:rgba(255,255,255,.7)} .moodState{font-size:14px;font-weight:900;margin-top:2px} .moodHint{font-size:10px;color:rgba(255,255,255,.73);margin-top:3px;line-height:1.4}
.turnState{text-align:center;color:rgba(255,255,255,.75);font-size:10px;letter-spacing:.12em;font-weight:800;margin-top:9px;min-height:14px}

.sheet{position:absolute;inset:0;background:rgba(31,15,73,.42);z-index:50;display:flex;align-items:flex-end;backdrop-filter:blur(4px)}
.sheetCard{width:100%;max-height:74%;overflow:auto;border-radius:28px 28px 0 0;background:#faf8ff;padding:18px 18px 28px;box-shadow:0 -16px 50px rgba(30,14,74,.25)}
.sheetHead{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}
.sheetTitle{font-weight:900;font-size:18px} .close{border:0;background:#ece7f6;width:36px;height:36px;border-radius:50%;cursor:pointer}
.logEntry{border-top:1px solid #ebe6f4;padding:10px 0;font-size:12px;line-height:1.55} .logEntry:first-child{border-top:0}
.logWho{display:inline-block;min-width:38px;font-weight:900;margin-right:8px} .logWho.customer{color:#c55072} .logWho.staff{color:#5a61c9}
.devGrid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px} .devItem{background:#f1edfa;border-radius:13px;padding:9px}
.devName{font-size:9px;color:#8b819d;letter-spacing:.06em} .devVal{font-size:19px;font-weight:900;color:#554873;margin-top:2px}
.review{padding-top:20px}
.endBadge{display:inline-block;background:rgba(255,255,255,.16);color:#fff;border:1px solid rgba(255,255,255,.22);border-radius:999px;padding:7px 10px;font-size:10px;font-weight:900}
.reviewTitle{color:white;font-size:28px;line-height:1.12;margin:10px 0 8px;letter-spacing:-.03em}
.reviewSub{color:rgba(255,255,255,.78);font-size:12px;line-height:1.6;margin-bottom:16px}
.reviewCards{display:grid;gap:9px}
.reviewCard{background:rgba(255,255,255,.94);border-radius:18px;padding:14px;box-shadow:var(--shadow)}
.reviewCard small{font-size:9px;letter-spacing:.12em;font-weight:900;color:#8a72d0} .reviewCard p{font-size:12px;line-height:1.6;margin:6px 0 0;color:#635a71}
.reviewActions{display:flex;gap:8px;margin-top:12px} .reviewActions button{flex:1;border:0;border-radius:999px;padding:12px;cursor:pointer;font-weight:900}
.retry{background:white;color:#6c45cb} .back{background:rgba(255,255,255,.18);color:white;border:1px solid rgba(255,255,255,.22)!important}

.bottomNav{position:absolute;left:14px;right:14px;bottom:12px;height:66px;border-radius:22px;background:rgba(255,255,255,.95);box-shadow:0 10px 30px rgba(53,26,112,.19);z-index:30;display:grid;grid-template-columns:repeat(4,1fr);padding:7px}
.navbtn{border:0;background:transparent;border-radius:16px;cursor:pointer;font-size:10px;color:#8a8199;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:3px}
.navicon{font-size:18px} .navbtn.active{color:#6f45dd;background:#f1ebff;font-weight:850}

.flash{position:absolute;inset:0;z-index:45;pointer-events:none;opacity:0;transition:opacity .15s}
.flash.good{background:rgba(77,220,184,.14);opacity:1} .flash.bad{background:rgba(255,86,72,.12);opacity:1}

@media (max-width:560px){
  .shell{padding:0;background:#7045ed} .phone{width:100%;min-height:100vh;border-radius:0;border:0;box-shadow:none}
  .topbar{padding-top:max(14px,env(safe-area-inset-top))}
  .screen{padding-bottom:94px}
}
@media (max-height:760px) and (min-width:561px){
  .hero{height:235px} .phone{min-height:calc(100vh - 22px)} .shell{padding:11px}
  .customerLine{font-size:19px} .choice{min-height:63px}
}


/* =========================================================
   v2 / AI PRESSURE UI — deliberately tense, not friendly.
   ========================================================= */
:root{
  --bg:#08090d;--panel:#11131a;--panel2:#171922;--paper:#f4f1eb;
  --acid:#ff5a3d;--acid2:#ff2f57;--violet:#7a5cff;--ice:#cfd3ff;
  --muted:#9297a6;--hair:rgba(255,255,255,.09);--danger:#ff4d3d;--good:#72dfbd;
}
html,body{background:#05060a;color:#f3f2f5;font-family:Inter,-apple-system,BlinkMacSystemFont,"Hiragino Sans","Yu Gothic UI","Noto Sans JP",sans-serif}
.shell{background:
  radial-gradient(circle at 20% 0%,rgba(122,92,255,.16),transparent 35%),
  radial-gradient(circle at 80% 100%,rgba(255,47,87,.12),transparent 32%),#05060a;
  padding:18px;align-items:flex-start}
.phone{background:#0b0c11;border:1px solid rgba(255,255,255,.10);box-shadow:0 40px 120px rgba(0,0,0,.58);border-radius:28px;position:relative;isolation:isolate}
.phone:before{background:linear-gradient(180deg,rgba(255,255,255,.025),transparent 18%,transparent 82%,rgba(122,92,255,.035));}
.ambientField{position:absolute;inset:0;z-index:0;pointer-events:none;overflow:hidden;border-radius:inherit}
.ambientAura{position:absolute;border-radius:50%;filter:blur(48px);opacity:.16;mix-blend-mode:screen;will-change:transform,opacity}
.ambientAura.a1{width:260px;height:260px;left:-70px;top:68px;background:radial-gradient(circle,rgba(122,92,255,.60) 0,rgba(122,92,255,.24) 34%,transparent 70%);animation:auroraA 18s ease-in-out infinite alternate}
.ambientAura.a2{width:220px;height:220px;right:-56px;top:178px;background:radial-gradient(circle,rgba(255,47,87,.46) 0,rgba(255,90,61,.18) 35%,transparent 72%);animation:auroraB 16s ease-in-out infinite alternate}
.ambientAura.a3{width:260px;height:260px;left:22%;bottom:-118px;background:radial-gradient(circle,rgba(118,221,255,.24) 0,rgba(122,92,255,.16) 34%,transparent 72%);animation:auroraC 22s ease-in-out infinite alternate}
.ambientGrid{position:absolute;inset:-24% -8% 12%;background-image:linear-gradient(rgba(255,255,255,.022) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px);background-size:26px 26px;opacity:.13;transform:perspective(720px) rotateX(78deg) translateY(31%);transform-origin:center top;animation:gridDrift 14s linear infinite}
.ambientNoise{position:absolute;inset:-20%;opacity:.08;background-image:radial-gradient(circle at 20% 30%,rgba(255,255,255,.26) 0 1px,transparent 1.2px),radial-gradient(circle at 78% 22%,rgba(255,255,255,.22) 0 1px,transparent 1.2px),radial-gradient(circle at 60% 72%,rgba(122,92,255,.24) 0 1px,transparent 1.2px),radial-gradient(circle at 38% 82%,rgba(255,90,61,.18) 0 1px,transparent 1.2px);background-size:210px 210px,280px 280px,240px 240px,190px 190px;animation:dustFloat 22s linear infinite}
.ambientSweep{position:absolute;inset:-15%;opacity:.12;background:conic-gradient(from 180deg at 50% 50%,transparent 0 36%,rgba(122,92,255,.28) 42%,transparent 48% 72%,rgba(255,90,61,.18) 79%,transparent 84% 100%);filter:blur(34px);animation:sweepRotate 22s linear infinite}
.screen,.bottomNav{position:relative;z-index:2}
.topbar{height:62px;background:rgba(8,9,13,.82);border-bottom:1px solid var(--hair);backdrop-filter:blur(18px);padding:13px 15px 0}
.brand{font-size:10px;letter-spacing:.13em;font-weight:800;display:flex;align-items:center;gap:7px;color:#fff}
.brand em{font-style:normal;color:#7f8390;font-weight:600}.brandMark{width:7px;height:7px;border-radius:50%;background:var(--acid);box-shadow:0 0 16px var(--acid)}
.iconbtn{background:#12141b;border:1px solid var(--hair);border-radius:11px;width:36px;height:36px;color:#d4d5dd;backdrop-filter:none}
.progressTop{background:#14161d;border:1px solid var(--hair);color:#d9dbe5;border-radius:9px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:10px}
.screen{padding:13px 15px 94px}
.selectEyebrow{margin:31px 2px 13px;font-size:9px;letter-spacing:.14em;color:#8e92a0;font-weight:800;display:flex;align-items:center;gap:8px}
.selectEyebrow span{width:6px;height:6px;border-radius:50%;background:var(--acid);box-shadow:0 0 12px var(--acid)}
.selectTitle{color:#f7f4ee;margin:0 2px 11px;font-size:35px;line-height:1.06;letter-spacing:-.055em;font-weight:900}
.selectTitle i{font-style:normal;color:#9a90ff}
.selectSub{color:#9196a3;margin:0 2px 25px;font-size:12px;line-height:1.75;max-width:430px}
.scenarioGrid{gap:10px}.scenarioCard{min-height:164px;background:#111319;border:1px solid var(--hair);border-radius:18px;box-shadow:none;color:#fff}
.scenarioCard:hover{border-color:rgba(255,90,61,.42);transform:translateY(-1px)}
.scenarioImg{right:0;width:58%;filter:grayscale(.28) contrast(1.12) brightness(.68);mix-blend-mode:normal;opacity:.9}
.scenarioFade{background:linear-gradient(90deg,#111319 0 44%,rgba(17,19,25,.92) 58%,rgba(17,19,25,.18) 100%)}
.scenarioCopy{width:63%;padding:19px}.kicker{color:#787e8f;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:9px}
.scenarioName{font-size:25px;letter-spacing:-.04em}.scenarioMeta{color:#a4a8b3}.hot{background:rgba(255,90,61,.12);color:#ff765e;border:1px solid rgba(255,90,61,.24);border-radius:7px;padding:5px 7px}
.sceneWrap{position:relative}.hero{height:300px;border-radius:19px;border:1px solid rgba(255,255,255,.10);background:#121319;box-shadow:0 24px 70px rgba(0,0,0,.35);position:relative;overflow:hidden}
.heroImg{filter:grayscale(.18) contrast(1.14) saturate(.74) brightness(.77);transform:scale(1.012);animation:heroDrift 18s ease-in-out infinite alternate;transform-origin:center center}
.heroTint{background:linear-gradient(180deg,rgba(8,9,13,.16),rgba(8,9,13,.02) 50%,rgba(9,10,15,.84) 100%),linear-gradient(90deg,rgba(122,92,255,.08),transparent 45%,rgba(255,47,87,.10));animation:tintPulse 10s ease-in-out infinite}
.heroGrain{position:absolute;inset:0;opacity:.17;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.88' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.32'/%3E%3C/svg%3E");mix-blend-mode:soft-light;animation:grainShift 2.2s steps(4) infinite}
.aiHud{position:absolute;left:12px;right:12px;top:12px;display:flex;justify-content:space-between;align-items:flex-start;z-index:6;pointer-events:none}
.aiHudLive{background:rgba(5,6,10,.72);border:1px solid rgba(255,255,255,.12);border-radius:8px;padding:7px 9px;color:#b9bdc8;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:8px;letter-spacing:.09em;backdrop-filter:blur(8px)}
.aiHudLive span{display:inline-block;width:5px;height:5px;border-radius:50%;background:#ff5a3d;box-shadow:0 0 10px #ff5a3d;margin-right:5px;animation:liveblink 1s steps(2) infinite}.aiHudLive b{color:#ff755f;margin-left:3px}
.aiHudPressure{text-align:right;background:rgba(5,6,10,.72);border:1px solid rgba(255,255,255,.12);border-radius:8px;padding:6px 8px;backdrop-filter:blur(8px)}
.aiHudPressure small{display:block;color:#7d8291;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:7px;letter-spacing:.13em}.aiHudPressure strong{font-size:22px;line-height:1;color:#fff;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}
.pressureRail{position:absolute;left:12px;right:12px;top:58px;height:3px;background:rgba(255,255,255,.12);z-index:7;overflow:hidden;border-radius:99px}.pressureRail i{display:block;height:100%;width:0;background:linear-gradient(90deg,#7a5cff,#ff5a3d,#ff2f57,#7a5cff);background-size:160% 100%;box-shadow:0 0 15px rgba(255,47,87,.55);transition:width .38s ease;animation:railFlow 3.3s linear infinite}
.sceneCount{top:auto;left:12px;bottom:12px;transform:none;background:rgba(8,9,13,.62);border:1px solid rgba(255,255,255,.12);border-radius:7px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:9px;letter-spacing:.08em}
.contextChip{left:auto;right:12px;bottom:12px;max-width:66%;background:rgba(8,9,13,.70);border:1px solid rgba(255,255,255,.10);border-radius:8px;color:#c3c5ce;box-shadow:none;backdrop-filter:blur(10px)}
.speech{margin:-7px 9px 0;background:#f0ede7;color:#101116;border-radius:14px;padding:15px 15px 17px;box-shadow:0 18px 45px rgba(0,0,0,.28);z-index:8;border:1px solid rgba(255,255,255,.35);animation:cardBreathe 7s ease-in-out infinite}
.speech:after{display:none}.customerTag{color:#7d2231;background:#ffe2dc;border-radius:5px;padding:5px 7px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:8px;letter-spacing:.06em}.customerTag i{display:inline-block;width:5px;height:5px;background:#ff4b3d;border-radius:50%;margin-right:4px}
.replay{background:#ded9d2;color:#17181c;border-radius:8px;width:34px;height:34px}.customerLine{font-size:23px;line-height:1.37;letter-spacing:-.035em;margin-top:10px;font-weight:900}
.waveRow{height:53px}.wave{gap:2px}.wave span{width:2px;background:#8b86ff}.wave.active span{background:#ff644d;box-shadow:0 0 8px rgba(255,90,61,.35);animation-duration:.52s}
.micOrb{width:42px;height:42px;background:#11131a;border:1px solid rgba(255,255,255,.14);box-shadow:0 0 0 7px rgba(122,92,255,.04);font-size:15px;color:#b4b0ff;animation:orbPulse 3.4s ease-in-out infinite}
.prompt{color:#8b8f9b;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:9px;letter-spacing:.045em;margin-bottom:10px}.prompt span{color:#ff705b;font-weight:900}
.choices{gap:8px}.choice{grid-template-columns:36px 1fr 15px;border:1px solid var(--hair);background:#13151c;color:#f0f1f4;border-radius:13px;padding:11px 11px;min-height:70px;box-shadow:none}.choice:hover{border-color:rgba(122,92,255,.48);background:#171923;box-shadow:0 12px 28px rgba(0,0,0,.22)}.choice:disabled{opacity:.34}
.badge,.choice:nth-child(2) .badge,.choice:nth-child(3) .badge{width:30px;height:30px;border-radius:7px;background:#222531;color:#aba6ff;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px}.ctitle{font-size:13px;color:#f2f1f5}.cline{color:#878c99;font-size:10px}.arrow{color:#676b78}
.otherPanel{background:#15171f;border:1px solid var(--hair);border-radius:12px;box-shadow:none}.otherPanel textarea,textarea{background:#0d0f14;border:1px solid rgba(255,255,255,.10);color:#eee;border-radius:9px}.softBtn{background:#242632;color:#c8c5ff}.softBtn.send{background:linear-gradient(135deg,#6c52ff,#9a4dff);color:#fff}
.mood{margin-top:11px;background:#0f1117;border:1px solid var(--hair);border-radius:13px;padding:10px;color:#fff;backdrop-filter:none}.moodFace{width:48px;height:48px;border-radius:10px;background:radial-gradient(circle,#ff624a 0 8%,transparent 9% 24%,rgba(255,98,74,.3) 25% 27%,transparent 28% 45%,rgba(122,92,255,.28) 46% 49%,transparent 50%),#171923;box-shadow:inset 0 0 0 1px rgba(255,255,255,.08);animation:radar 2.2s ease-in-out infinite}.moodFace:before,.moodFace:after,.mouth{display:none!important}.moodFace.calm{background:radial-gradient(circle,#72dfbd 0 8%,transparent 9% 24%,rgba(114,223,189,.24) 25% 27%,transparent 28% 45%,rgba(122,92,255,.18) 46% 49%,transparent 50%),#171923}.moodFace.hot{background:radial-gradient(circle,#ff3e42 0 8%,transparent 9% 22%,rgba(255,62,66,.40) 23% 27%,transparent 28% 45%,rgba(255,90,61,.22) 46% 50%,transparent 51%),#1a1215;box-shadow:inset 0 0 0 1px rgba(255,75,61,.22),0 0 20px rgba(255,47,87,.08)}
.moodLabel{font-size:8px;color:#6f7482;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.1em}.moodState{font-size:13px}.moodHint{color:#838896;font-size:9.5px}.turnState{color:#6f7482;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:8px;letter-spacing:.14em}.turnState.activeState{color:#aaa6ff}
.bottomNav{background:rgba(13,15,20,.94);border:1px solid rgba(255,255,255,.08);box-shadow:0 16px 40px rgba(0,0,0,.40);border-radius:15px;height:62px}.navbtn{color:#656a78}.navbtn.active{background:#1c1e28;color:#b0aaff}.navicon{font-size:15px}
.sheet{background:rgba(2,3,6,.72);backdrop-filter:blur(8px)}.sheetCard{background:#11131a;color:#f3f3f5;border-top:1px solid rgba(255,255,255,.12)}.close{background:#22242d;color:#fff}.logEntry{border-color:rgba(255,255,255,.08)}.logWho.customer{color:#ff7160}.logWho.staff{color:#9d95ff}.devItem{background:#191b23}.devName{color:#717684}.devVal{color:#f3f1f7}.reviewCard{background:#13151c;border:1px solid var(--hair);box-shadow:none}.reviewCard p{color:#a6abb6}.reviewCard small{color:#938aff}.reviewTitle{font-size:31px}.reviewSub{color:#8d92a0}.retry{background:#f0ede7;color:#14151a}.back{background:#181a22!important;color:#bbb7ff!important;border:1px solid var(--hair)!important}
.flash.good{background:rgba(114,223,189,.08)}.flash.bad{background:rgba(255,47,87,.18)}
.scanlines{position:absolute;inset:0;pointer-events:none;z-index:41;opacity:.15;background:repeating-linear-gradient(180deg,transparent 0 3px,rgba(255,255,255,.022) 4px 5px);mix-blend-mode:overlay}
.threatVignette{position:absolute;inset:0;pointer-events:none;z-index:40;opacity:0;box-shadow:inset 0 0 110px 30px rgba(255,29,62,.0);transition:.35s ease}.phone.threat-mid .threatVignette{opacity:.38;box-shadow:inset 0 0 90px 16px rgba(255,65,47,.12)}.phone.threat-hot .threatVignette{opacity:.9;box-shadow:inset 0 0 110px 24px rgba(255,25,56,.20)}
.impactLabel{position:absolute;z-index:60;left:50%;top:84px;transform:translate(-50%,-8px);opacity:0;pointer-events:none;background:#ff543e;color:#08090d;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:8px;font-weight:900;letter-spacing:.12em;padding:6px 8px;border-radius:4px;transition:.18s ease}.impactLabel.show{opacity:1;transform:translate(-50%,0)}
.phone.speaking-hot .hero{animation:microshake .18s steps(2) infinite}.phone.speaking-hot .customerLine{text-shadow:1px 0 rgba(255,48,73,.12),-1px 0 rgba(122,92,255,.10)}
.hero::before{content:"";position:absolute;inset:-10% -30%;pointer-events:none;background:linear-gradient(115deg,transparent 36%,rgba(255,255,255,.05) 48%,transparent 61%);opacity:.55;mix-blend-mode:screen;transform:translateX(-55%) skewX(-18deg);animation:heroSweep 9.5s ease-in-out infinite}
.phone.threat-mid .ambientAura{opacity:.20}.phone.threat-mid .ambientGrid{opacity:.16}.phone.threat-hot .ambientAura.a2{opacity:.28}.phone.threat-hot .ambientGrid{opacity:.20;animation-duration:9s}.phone.threat-hot .ambientSweep{opacity:.18;animation-duration:14s}
@keyframes microshake{0%{transform:translate(0,0)}25%{transform:translate(.45px,-.35px)}50%{transform:translate(-.45px,.25px)}75%{transform:translate(.3px,.4px)}100%{transform:translate(0,0)}}
@keyframes liveblink{50%{opacity:.35}}@keyframes radar{50%{filter:brightness(1.15);transform:scale(1.015)}}
@keyframes auroraA{0%{transform:translate3d(0,0,0) scale(1)}50%{transform:translate3d(42px,16px,0) scale(1.08)}100%{transform:translate3d(12px,58px,0) scale(.96)}}
@keyframes auroraB{0%{transform:translate3d(0,0,0) scale(1)}50%{transform:translate3d(-28px,42px,0) scale(1.1)}100%{transform:translate3d(-62px,12px,0) scale(.94)}}
@keyframes auroraC{0%{transform:translate3d(0,0,0) scale(1)}50%{transform:translate3d(28px,-30px,0) scale(1.06)}100%{transform:translate3d(-16px,-8px,0) scale(.98)}}
@keyframes gridDrift{0%{transform:perspective(720px) rotateX(78deg) translateY(31%) translateX(0)}100%{transform:perspective(720px) rotateX(78deg) translateY(34%) translateX(-26px)}}
@keyframes dustFloat{0%{transform:translate3d(0,0,0)}50%{transform:translate3d(-18px,-28px,0)}100%{transform:translate3d(10px,-60px,0)}}
@keyframes sweepRotate{0%{transform:rotate(0deg) scale(1)}100%{transform:rotate(360deg) scale(1.05)}}
@keyframes heroDrift{0%{transform:scale(1.035) translate3d(0,0,0)}50%{transform:scale(1.065) translate3d(-5px,-3px,0)}100%{transform:scale(1.048) translate3d(6px,4px,0)}}
@keyframes tintPulse{0%,100%{opacity:.92}50%{opacity:1}}
@keyframes grainShift{0%{transform:translate(0,0)}25%{transform:translate(-1.5%,1.2%)}50%{transform:translate(1.5%,-1%)}75%{transform:translate(.8%,1.3%)}100%{transform:translate(0,0)}}
@keyframes railFlow{0%{background-position:0% 50%}100%{background-position:160% 50%}}
@keyframes cardBreathe{0%,100%{transform:translateY(0)}50%{transform:translateY(-2px)}}
@keyframes orbPulse{0%,100%{box-shadow:0 0 0 7px rgba(122,92,255,.04),0 0 0 0 rgba(122,92,255,.00)}50%{box-shadow:0 0 0 9px rgba(122,92,255,.06),0 0 18px 0 rgba(122,92,255,.10)}}
@keyframes heroSweep{0%,16%{transform:translateX(-62%) skewX(-18deg);opacity:0}30%,55%{transform:translateX(8%) skewX(-18deg);opacity:.55}70%,100%{transform:translateX(52%) skewX(-18deg);opacity:0}}
@media(max-width:560px){.shell{background:#05060a}.phone{background:#0b0c11}.selectTitle{font-size:34px}.hero{height:292px}.customerLine{font-size:22px}.ambientGrid{opacity:.1}.ambientAura{filter:blur(42px)}}
@media (prefers-reduced-motion: reduce){.ambientAura,.ambientGrid,.ambientNoise,.ambientSweep,.heroImg,.heroTint,.heroGrain,.speech,.micOrb,.pressureRail i,.moodFace,.aiHudLive span,.phone.speaking-hot .hero,.hero::before{animation:none!important;transition:none!important}}
@keyframes stagePulse{to{transform:scale(1.25);filter:brightness(1.25)}}
@media(max-width:430px){}
@media (prefers-reduced-motion: reduce){}


/* v2.2 REFLEX — choices are spoken lines, not training labels */
.prompt{font-size:9.5px;line-height:1.55;margin:1px 1px 10px;color:#8d919d}.prompt span{display:inline-block;margin-right:5px}
.choices{gap:9px}
.choice{position:relative;display:grid;grid-template-columns:1fr 16px;gap:9px;align-items:center;min-height:64px;padding:13px 13px 13px 15px;border-radius:14px;background:#13151c;border:1px solid rgba(255,255,255,.095);overflow:hidden}
.choice::before{content:'“';position:absolute;left:9px;top:2px;color:rgba(154,144,255,.22);font:700 31px/1 Georgia,serif;pointer-events:none}
.choice:hover{background:#171923;border-color:rgba(154,144,255,.50)}
.choice:active{transform:scale(.992)}
.choice.selected{background:#1b1d29;border-color:rgba(154,144,255,.75);box-shadow:inset 3px 0 0 #8f83ff,0 10px 28px rgba(0,0,0,.22)}
.choice.faded{opacity:.18;transform:scale(.985)}
.spokenChoice{padding-left:8px;font-size:14px;font-weight:760;line-height:1.48;letter-spacing:-.018em;color:#f2f1f4}
.choiceArrow{font-size:18px;color:#666b78;text-align:right}
.reflexCard{border-color:rgba(154,144,255,.25);background:linear-gradient(180deg,#171923,#12141b)}
.reflexCard small{color:#b4acff}.reflexCard p{font-size:13px;color:#d6d4df}
.phone.choice-committed .choices{pointer-events:none}
/* V5 — AI COPILOT: the under-counter cue card */
.aiAssistWrap{margin-top:9px;display:grid;gap:8px}
.aiAssistBtn{width:100%;min-height:48px;border-radius:13px;border:1px solid rgba(142,131,255,.36);background:linear-gradient(180deg,rgba(31,29,50,.96),rgba(18,19,28,.98));color:#f2f0ff;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 13px;cursor:pointer;box-shadow:0 12px 32px rgba(0,0,0,.18),inset 0 1px 0 rgba(255,255,255,.04);transition:.18s ease}
.aiAssistBtn:hover{border-color:rgba(154,144,255,.72);transform:translateY(-1px)}
.aiAssistBtn:disabled{opacity:.42;cursor:default;transform:none}
.aiAssistBtn b{font:850 10px/1.2 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.11em}
.aiAssistBtn small{font-size:9px;color:#9c98ae;font-weight:700;text-align:right}
.aiAssistBtn .spark{font-size:16px;color:#a99fff;text-shadow:0 0 18px rgba(169,159,255,.5)}
.aiAssistPanel{display:none;position:relative;border:1px solid rgba(154,144,255,.27);background:radial-gradient(circle at 90% 0%,rgba(132,101,255,.12),transparent 34%),#12141c;border-radius:15px;padding:13px 13px 12px;overflow:hidden;box-shadow:0 18px 42px rgba(0,0,0,.22)}
.aiAssistPanel.show{display:block;animation:assistPop .34s cubic-bezier(.2,.8,.2,1) both}
.aiAssistTop{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:9px}
.aiAssistTop b{font:850 8px/1 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.14em;color:#aaa3ff}
.aiAssistStatus{font:800 7px/1 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.1em;color:#6f7482}
.aiAssistCue,.aiAssistNext,.aiAssistAvoid{font-size:9px;line-height:1.5;margin-top:7px;padding:8px 9px;border-radius:9px}
.aiAssistCue{color:#858a98;background:rgba(154,144,255,.045);border:1px solid rgba(154,144,255,.10);margin-bottom:7px}
.aiAssistCue::before{content:"INTENT";display:block;margin-bottom:4px;color:#756bd7;font:850 6.5px/1 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.14em}
.aiAssistSayLabel{display:block;margin-bottom:7px;color:#aaa3ff;font:900 7px/1 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.16em}
.aiAssistSuggestion{font-size:15px;line-height:1.62;font-weight:790;color:#faf9fc;letter-spacing:-.018em;padding:12px 12px 12px 13px;border-radius:11px;background:rgba(255,255,255,.035);border:1px solid rgba(154,144,255,.14);border-left:2px solid #8f83ff}
.aiAssistNext{margin-top:9px;padding:8px 9px;border-radius:9px;background:rgba(255,255,255,.025);border:1px solid rgba(255,255,255,.055);font-size:9px;line-height:1.5;color:#9297a5}
.aiAssistNext::before{content:"CHECK";display:block;margin-bottom:4px;color:#756bd7;font:850 6.5px/1 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.14em}
.aiAssistAvoid{margin-top:7px;padding:8px 9px;border-radius:9px;background:rgba(232,113,65,.055);border:1px solid rgba(232,113,65,.14);font-size:9px;line-height:1.5;color:#8b756c}
.aiAssistAvoid::before{content:"AVOID";display:block;margin-bottom:4px;color:#d36f45;font:850 6.5px/1 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.14em}
.aiAssistWhyFold{margin-top:8px;border-top:1px solid rgba(255,255,255,.055);padding-top:7px}
.aiAssistWhyFold summary{list-style:none;cursor:pointer;color:#686e7b;font:850 7px/1 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.13em;user-select:none}
.aiAssistWhyFold summary::-webkit-details-marker{display:none}
.aiAssistWhyFold summary::after{content:" +";color:#8178d8}
.aiAssistWhyFold[open] summary::after{content:" −"}
.aiAssistWhy{font-size:8.8px;line-height:1.58;color:#777c89;margin-top:7px;padding-right:3px}
.aiAssistPanel.live-ready{border-color:rgba(154,144,255,.44);box-shadow:0 18px 46px rgba(0,0,0,.26),0 0 0 1px rgba(144,126,255,.035) inset}
.aiAssistPanel.live-ready .aiAssistSuggestion{animation:assistLineIn .28s cubic-bezier(.2,.8,.2,1) both}
@keyframes assistLineIn{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}
.aiAssistActions{display:grid;grid-template-columns:1fr;gap:7px;margin-top:11px}
.aiAssistAction{min-height:42px;border-radius:10px;border:1px solid rgba(255,255,255,.09);background:#171921;color:#aeb2bf;font-size:9.5px;font-weight:850;cursor:pointer}
.aiAssistAction.primary{min-height:48px;background:linear-gradient(135deg,#7058ff,#9058ff);border-color:transparent;color:#fff;font-size:11px;box-shadow:0 10px 26px rgba(112,88,255,.18)}
.aiAssistThinking{display:flex;gap:5px;align-items:center;color:#9b97ab;font:800 8px/1 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.09em}
.aiAssistThinking i{width:5px;height:5px;border-radius:50%;background:#9b91ff;animation:liveblink .8s steps(2) infinite}
@keyframes assistPop{from{opacity:0;transform:translateY(7px) scale(.99)}to{opacity:1;transform:translateY(0) scale(1)}}
.phone.choice-committed .aiAssistWrap{pointer-events:none;opacity:.45}
@media(max-width:560px){.aiAssistBtn{min-height:46px}.aiAssistSuggestion{font-size:14px}.aiAssistActions{grid-template-columns:1fr}.aiAssistAction{min-height:42px}.aiAssistAction.primary{min-height:50px}}

@media(max-width:560px){.spokenChoice{font-size:13.5px}.choice{min-height:62px;padding-top:12px;padding-bottom:12px}}


/* =========================================================
   v3.0 HUMAN FLOW — attention choreography, not decoration
   ========================================================= */
#playScreen .hero,#playScreen .speech,#playScreen .prompt,#playScreen .choices,#playScreen .mood{transition:opacity .28s ease,filter .28s ease,transform .32s cubic-bezier(.2,.8,.2,1),box-shadow .32s ease}
.contextChip{display:grid;gap:3px;transition:.3s ease}
.contextChip small{font:800 7px/1 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.12em;color:#8c91a0}
.contextChip span{font-size:10px;line-height:1.45;color:#d0d2d9}
.contextChip.beat-pop{animation:beatPop .42s cubic-bezier(.2,.8,.2,1)}
.idleSignal{position:absolute;z-index:8;left:50%;top:70px;transform:translate(-50%,-5px);display:flex;align-items:center;gap:6px;padding:6px 8px;border-radius:7px;background:rgba(5,6,10,.70);border:1px solid rgba(255,255,255,.10);backdrop-filter:blur(8px);opacity:0;pointer-events:none;transition:.3s ease;font:700 7px/1 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.1em;color:#8b909d}
.idleSignal i{width:5px;height:5px;border-radius:50%;background:#8e85ff;box-shadow:0 0 9px rgba(142,133,255,.65)}
.idleSignal b{color:#b5b8c2;font-weight:800}.idleSignal em{font-style:normal;color:#898e9b}
.phone.thinking-idle .idleSignal{opacity:.88;transform:translate(-50%,0)}
.phone.thinking-idle .idleSignal i{animation:waitingDot 1.15s steps(2) infinite}
.phone.thinking-idle .ambientSweep{opacity:.16;animation-duration:17s}
.phone.thinking-idle .heroImg{animation-duration:12s}
.phone.thinking-pressure .idleSignal{border-color:rgba(255,90,61,.22);color:#b7bbc6}
.phone.thinking-pressure .idleSignal i{background:#ff604c;box-shadow:0 0 12px rgba(255,75,61,.75)}
.phone.thinking-pressure .ambientAura.a2{opacity:.27;animation-duration:10s}
.phone.thinking-pressure .ambientNoise{opacity:.14;animation-duration:12s}
.phone.thinking-pressure .pressureRail{box-shadow:0 0 14px rgba(255,63,72,.12)}
.phone.listening #playScreen .hero{transform:scale(1.006);border-color:rgba(255,91,66,.20);box-shadow:0 24px 70px rgba(0,0,0,.38),0 0 0 1px rgba(255,77,64,.06)}
.phone.listening #playScreen .speech{animation:none;transform:translateY(-3px) scale(1.006);box-shadow:0 23px 55px rgba(0,0,0,.36),0 0 28px rgba(255,82,61,.09)}
.phone.listening #playScreen .customerLine{animation:voiceFocus 1.25s ease-in-out infinite}
.phone.listening #playScreen .prompt,.phone.listening #playScreen .choices,.phone.listening #playScreen .mood{opacity:.34;filter:saturate(.65) brightness(.72);transform:translateY(2px)}
.phone.listening .hero::after{content:'';position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 50% 44%,transparent 0 22%,rgba(7,8,12,.08) 58%,rgba(7,8,12,.32) 100%);animation:listenVignette 1.6s ease-in-out infinite}
.choices:not(.choices-ready) .choice{opacity:0;transform:translateY(9px) scale(.988);pointer-events:none}
.choices.choices-ready .choice{animation:choiceReveal .38s cubic-bezier(.18,.84,.24,1) both;animation-delay:calc(var(--i,0) * 85ms)}
.choices.choices-ready .choice::after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(105deg,transparent 0 38%,rgba(255,255,255,.045) 50%,transparent 62%);transform:translateX(-120%);animation:choiceSheen .58s ease-out both;animation-delay:calc(100ms + var(--i,0) * 85ms)}
.phone.threat-hot .ambientAura.a2{opacity:.34}.phone.threat-hot .heroTint{filter:saturate(1.18)}.phone.threat-hot .speech{box-shadow:0 18px 48px rgba(0,0,0,.32),0 0 24px rgba(255,47,87,.055)}
@keyframes beatPop{0%{opacity:.3;transform:translateY(4px)}100%{opacity:1;transform:translateY(0)}}
@keyframes waitingDot{50%{opacity:.25;transform:scale(.8)}}
@keyframes voiceFocus{0%,100%{filter:brightness(1)}50%{filter:brightness(1.045)}}
@keyframes listenVignette{0%,100%{opacity:.64}50%{opacity:1}}
@keyframes choiceReveal{0%{opacity:0;transform:translateY(9px) scale(.988)}100%{opacity:1;transform:translateY(0) scale(1)}}
@keyframes choiceSheen{0%{transform:translateX(-120%)}100%{transform:translateX(120%)}}
@media (prefers-reduced-motion: reduce){.contextChip,.idleSignal,#playScreen .hero,#playScreen .speech,#playScreen .prompt,#playScreen .choices,#playScreen .mood,.choices.choices-ready .choice,.choices.choices-ready .choice::after,.phone.listening #playScreen .customerLine,.phone.listening .hero::after,.idleSignal i{animation:none!important;transition:none!important}}


/* =========================================================
   v3.7 EXPERIENCE DENSITY — replay, pressure, self-reflection
   ========================================================= */
.experienceModes{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:0 2px 18px}
.modeChip{border:1px solid rgba(255,255,255,.10);background:#11131a;color:#777d8b;border-radius:12px;padding:10px 11px;text-align:left;cursor:pointer;transition:.22s ease}
.modeChip b{display:block;color:#d2d4db;font:850 9px/1.2 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.08em}.modeChip small{display:block;margin-top:4px;font-size:9px;line-height:1.4;color:#707584}
.modeChip.active{background:linear-gradient(145deg,rgba(122,92,255,.16),rgba(255,255,255,.035));border-color:rgba(145,132,255,.46);box-shadow:0 9px 28px rgba(74,53,173,.12)}
.modeChip.active b{color:#c9c4ff}.modeChip.voice.active{border-color:rgba(255,90,61,.42);background:linear-gradient(145deg,rgba(255,90,61,.10),rgba(255,255,255,.03))}.modeChip.voice.active b{color:#ff8b77}
.modeHint{margin:-8px 3px 19px;font-size:9px;line-height:1.6;color:#6f7481}
.rightnessField{position:absolute;inset:62px 0 70px;z-index:1;pointer-events:none;overflow:hidden;opacity:.78;mask-image:linear-gradient(180deg,transparent 0,#000 10%,#000 86%,transparent 100%)}
.factGhost{position:absolute;display:grid;gap:2px;max-width:180px;opacity:.08;transform:rotate(var(--r,0deg)) scale(.96);animation:factArrive .7s cubic-bezier(.2,.8,.2,1) both;transition:opacity .5s ease,filter .5s ease}
.factGhost b{font:900 clamp(17px,5vw,30px)/.93 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:-.06em;color:#fff;text-transform:uppercase}.factGhost em{font-style:normal;font:750 7px/1.2 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.10em;color:#aaa7ff}
.phone.threat-mid .factGhost{opacity:.105}.phone.threat-hot .factGhost{opacity:.145;filter:drop-shadow(0 0 13px rgba(255,71,72,.12))}.phone.thinking-pressure .factGhost{opacity:.13}
.phone.threat-mid .heroImg{animation-name:heroDriftMid;animation-duration:13s}.phone.threat-hot .heroImg{animation-name:heroDriftHot;animation-duration:8s;filter:grayscale(.08) contrast(1.20) saturate(.82) brightness(.75)}
.repairBar{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:8px 1px 1px;padding:9px 10px;border:1px solid rgba(154,144,255,.22);border-radius:10px;background:rgba(122,92,255,.07);color:#8e93a0;font-size:9px;line-height:1.35;animation:repairIn .24s ease both}
.repairBar.hidden{display:none!important}.repairBar button{flex:0 0 auto;border:0;border-radius:8px;background:#242536;color:#d2cdff;padding:8px 10px;font-size:10px;font-weight:850;cursor:pointer}.repairBar button:hover{background:#303247}
.phone.voice-only .choices{display:none!important}.phone.voice-only #otherPanel{display:block!important}.phone.voice-only .prompt{color:#aaa6ff}.phone.voice-only .prompt span{color:#ff745f}.phone.voice-only #freeText{min-height:82px;font-size:14px}
.reflexTop{display:flex;align-items:center;justify-content:space-between;gap:10px}.reflexType{display:inline-flex;align-items:center;min-height:23px;padding:5px 8px;border-radius:999px;background:rgba(154,144,255,.12);border:1px solid rgba(154,144,255,.22);font:850 8px/1 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.08em;color:#c9c4ff;white-space:nowrap}
.decisiveCard{border-color:rgba(255,90,61,.22)!important;background:linear-gradient(180deg,#171518,#121319)!important}.decisionScene{display:grid;gap:8px;margin-top:9px}.decisionLine{padding:9px 10px;border-radius:9px;background:rgba(255,255,255,.035);font-size:11px;line-height:1.55;color:#c7c9d1}.decisionLine.customer{border-left:2px solid #ff6653}.decisionLine.staff{border-left:2px solid #958aff;color:#e2e0e9}.decisionWho{display:block;margin-bottom:3px;font:800 7px/1 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.12em;color:#707583}.decisionEffects{display:flex;flex-wrap:wrap;gap:5px;margin-top:2px}.decisionEffect{padding:5px 6px;border-radius:6px;background:#1d1f28;font:800 8px/1 ui-monospace,SFMono-Regular,Menlo,monospace;color:#aeb2bf}.decisionEffect.risk{color:#ff8370;background:rgba(255,90,61,.09)}.decisionEffect.good{color:#7ee2c0;background:rgba(114,223,189,.08)}
.replayNote{margin:9px 2px 0;font-size:9px;line-height:1.55;color:#747986}.replayNote b{color:#aaa5ff}
@keyframes factArrive{0%{opacity:0;transform:translateY(8px) rotate(var(--r,0deg)) scale(.93)}100%{transform:translateY(0) rotate(var(--r,0deg)) scale(.96)}}
@keyframes heroDriftMid{0%{transform:scale(1.055) translate3d(0,0,0)}50%{transform:scale(1.082) translate3d(-6px,-3px,0)}100%{transform:scale(1.064) translate3d(6px,4px,0)}}
@keyframes heroDriftHot{0%{transform:scale(1.075) translate3d(0,0,0)}35%{transform:scale(1.105) translate3d(-8px,-4px,0)}70%{transform:scale(1.092) translate3d(7px,5px,0)}100%{transform:scale(1.082) translate3d(2px,-2px,0)}}
@keyframes repairIn{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:430px){.experienceModes{grid-template-columns:1fr}.modeHint{margin-top:-9px}.factGhost b{font-size:20px}.reflexTop{align-items:flex-start;flex-direction:column}}
@media (prefers-reduced-motion: reduce){.factGhost,.repairBar,.phone.threat-mid .heroImg,.phone.threat-hot .heroImg{animation:none!important}}


/* =========================================================
   OPENING EXPERIENCE
   First tap is both narrative entry and mobile audio unlock.
   ========================================================= */

.brandSplash{position:absolute;inset:0;z-index:260;display:flex;align-items:center;justify-content:center;background:#000;overflow:hidden;pointer-events:none;animation:splashLayer 3.55s cubic-bezier(.22,1,.36,1) forwards}
.brandSplash::before{content:"";position:absolute;inset:-28%;background:radial-gradient(circle at 50% 50%,rgba(255,255,255,.018) 0,transparent 42%);filter:blur(24px)}
.brandSplashInner{position:relative;display:flex;align-items:center;justify-content:center;opacity:0;transform:scale(.965);animation:brandLuxury 3.15s cubic-bezier(.22,1,.36,1) .12s forwards}
.brandSplashLogo{width:min(47vw,190px);height:auto;display:block;filter:drop-shadow(0 0 18px rgba(255,255,255,.04))}
@keyframes brandLuxury{0%{opacity:0;transform:scale(.965)}28%{opacity:1;transform:scale(1)}67%{opacity:1;transform:scale(1.006)}100%{opacity:0;transform:scale(1.025)}}
@keyframes splashLayer{0%,78%{opacity:1;visibility:visible}100%{opacity:0;visibility:hidden}}
@media(max-width:430px){.brandSplashLogo{width:min(50vw,180px)}}
@media (prefers-reduced-motion: reduce){.brandSplashInner{animation:none!important;opacity:1;transform:none}.brandSplash{animation:splashLayerReduced 1.5s linear forwards}@keyframes splashLayerReduced{0%,65%{opacity:1;visibility:visible}100%{opacity:0;visibility:hidden}}}



/* =========================================================
   MOBILE POLISH / iPhone-first
   ========================================================= */
:root{
  --safe-top:env(safe-area-inset-top,0px);
  --safe-right:env(safe-area-inset-right,0px);
  --safe-bottom:env(safe-area-inset-bottom,0px);
  --safe-left:env(safe-area-inset-left,0px);
  --mobile-gutter:14px;
  --mobile-nav-h:64px;
  --visual-vh:100dvh;
}
html{height:100%;background:#05060a;-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{min-height:100%;background:#05060a;overscroll-behavior-x:none;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
button,.choice,.scenarioCard,.modeChip,.navbtn,.replay,.softBtn,.close{-webkit-tap-highlight-color:transparent;touch-action:manipulation}
button{user-select:none;-webkit-user-select:none}

@supports(height:100dvh){
  .shell{min-height:100dvh}
}

@media(max-width:560px){
  html,body{width:100%;min-height:100%;background:#05060a}
  body{min-height:var(--visual-vh);overflow-x:hidden}
  .shell{width:100%;min-height:var(--visual-vh);padding:0;background:#05060a;display:block}
  .phone{width:100%;min-height:var(--visual-vh);border-radius:0;border:0;box-shadow:none;background:#0b0c11;overflow:clip}
  .phone:before{position:fixed;inset:0}

  .brandSplash{position:fixed;inset:0;z-index:500}
  .brandSplashLogo{width:min(48vw,186px)}

  .topbar{
    min-height:calc(54px + var(--safe-top));height:auto;
    padding:calc(var(--safe-top) + 8px) max(var(--mobile-gutter),var(--safe-right)) 8px max(var(--mobile-gutter),var(--safe-left));
    align-items:flex-end;background:rgba(8,9,13,.86);
  }
  .brand{font-size:9px;letter-spacing:.115em;min-width:0;white-space:nowrap}
  .brand em{font-size:8px}
  .topactions{gap:6px}
  .iconbtn{width:42px;height:42px;min-width:42px;min-height:42px;border-radius:12px}
  .progressTop{min-height:36px;display:flex;align-items:center;padding:0 10px}

  .screen{
    width:100%;
    padding:10px max(var(--mobile-gutter),var(--safe-right)) calc(var(--mobile-nav-h) + var(--safe-bottom) + 34px) max(var(--mobile-gutter),var(--safe-left));
  }
  #selectScreen{padding-bottom:calc(24px + var(--safe-bottom))}
  .selectEyebrow{margin-top:20px}
  .selectTitle{font-size:clamp(30px,8.8vw,36px);line-height:1.03;margin-top:0}
  .selectSub{font-size:11.5px;line-height:1.65;margin-bottom:18px}
  .experienceModes{grid-template-columns:1fr 1fr;gap:7px;margin-bottom:14px}
  .modeChip{min-height:58px;padding:9px 9px;border-radius:11px}
  .modeChip b{font-size:8px}.modeChip small{font-size:8.5px;line-height:1.35}
  .modeHint{margin:-5px 2px 15px;font-size:8.5px}
  .scenarioGrid{gap:9px}
  .scenarioCard{min-height:146px;border-radius:16px}
  .scenarioCopy{padding:16px;width:64%}
  .scenarioName{font-size:23px}.scenarioMeta{font-size:10.5px}.hot{margin-top:9px;font-size:9px}

  .hero{height:clamp(224px,34dvh,292px);border-radius:17px}
  .aiHud{left:10px;right:10px;top:10px}
  .pressureRail{left:10px;right:10px;top:56px}
  .sceneCount{left:10px;bottom:10px}
  .contextChip{right:10px;bottom:10px;max-width:70%}
  .speech{margin:-6px 7px 0;padding:14px 14px 15px;border-radius:13px}
  .customerLine{font-size:clamp(19px,5.45vw,22px);line-height:1.36}
  .customerTag{font-size:7.5px}
  .replay{width:42px;height:42px;min-width:42px;min-height:42px}
  .waveRow{height:48px;margin-top:9px}
  .micOrb{width:40px;height:40px}
  .prompt{font-size:9px;line-height:1.5;margin-bottom:9px}
  .choices{gap:8px}
  .choice{min-height:62px;padding:12px 12px 12px 13px;border-radius:13px}
  .spokenChoice{font-size:13.5px;line-height:1.47}
  .repairBar{padding:8px 9px}.repairBar button{min-height:40px}
  .otherPanel{padding:10px}
  .otherPanel textarea,textarea{font-size:16px!important;line-height:1.45;min-height:78px;padding:12px;border-radius:11px}
  .inputActions{gap:8px}.softBtn{min-height:46px;padding:11px 10px}
  .mood{padding:9px;border-radius:12px}.moodFace{width:44px;height:44px;flex:0 0 44px}.moodState{font-size:12.5px}.moodHint{font-size:9px}

  .bottomNav{
    position:fixed!important;
    left:max(10px,var(--safe-left));right:max(10px,var(--safe-right));
    bottom:max(8px,var(--safe-bottom));
    width:auto;height:var(--mobile-nav-h);margin:0;
    padding:6px;border-radius:17px;z-index:180;
    background:rgba(13,15,20,.92);
    border:1px solid rgba(255,255,255,.09);
    backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);
    box-shadow:0 14px 34px rgba(0,0,0,.46);
  }
  .navbtn{min-height:50px;border-radius:12px;font-size:9px;gap:2px}.navicon{font-size:16px}
  body.keyboard-open .bottomNav{opacity:0;pointer-events:none;transform:translateY(calc(100% + var(--safe-bottom) + 18px))}
  .bottomNav{transition:opacity .18s ease,transform .22s cubic-bezier(.2,.8,.2,1)}

  .sheet{position:fixed;inset:0;z-index:240;align-items:flex-end}
  .sheetCard{max-height:min(82dvh,720px);padding:17px max(16px,var(--safe-right)) calc(20px + var(--safe-bottom)) max(16px,var(--safe-left));border-radius:24px 24px 0 0}
  .close{width:44px;height:44px;min-width:44px}

  .review{padding-top:14px}.reviewTitle{font-size:clamp(27px,8vw,32px)}.reviewActions button{min-height:48px}
}

@media(max-width:359px){
  :root{--mobile-gutter:11px}
  .brand em{display:none}
  .selectTitle{font-size:29px}
  .experienceModes{grid-template-columns:1fr}
  .hero{height:218px}
  .customerLine{font-size:18.5px}
  .spokenChoice{font-size:13px}
  .contextChip{max-width:74%}
}

@media(max-width:560px) and (max-height:720px){
  .topbar{min-height:calc(50px + var(--safe-top));padding-bottom:6px}
  .screen{padding-top:7px}
  .hero{height:clamp(205px,31dvh,238px)}
  .speech{padding-top:12px;padding-bottom:13px}
  .customerLine{font-size:19px;line-height:1.32;margin-top:7px}
  .waveRow{height:42px;margin-top:6px}
  .choice{min-height:57px;padding-top:10px;padding-bottom:10px}
  .spokenChoice{font-size:13px}
  .mood{margin-top:8px}
}

@media(max-width:900px) and (orientation:landscape) and (max-height:520px){
  .topbar{min-height:44px;padding-top:max(5px,var(--safe-top));padding-bottom:5px}
  .screen{padding-top:6px;padding-bottom:calc(var(--mobile-nav-h) + 24px)}
  .hero{height:172px}
  .customerLine{font-size:18px}
  .waveRow{height:34px}
  .mood{display:none}
}

@media(hover:none) and (pointer:coarse){
  .choice:hover{transform:none;box-shadow:none;background:#13151c;border-color:rgba(255,255,255,.095)}
  .scenarioCard:hover{transform:none;border-color:var(--hair)}
  .repairBar button:hover{background:#242536}
  .choice:active,.scenarioCard:active,.modeChip:active,.softBtn:active,.navbtn:active{transform:scale(.985);filter:brightness(1.06)}
}

@media (prefers-reduced-motion: reduce){
  .bottomNav{transition:none!important}
}


/* =========================================================
   VOICE / MICROPHONE PERMISSION UX
   Ask with context, never surprise the user with a browser prompt.
   ========================================================= */
.micGate{position:absolute;inset:0;z-index:230;display:grid;place-items:end center;padding:16px max(14px,env(safe-area-inset-right)) max(18px,calc(env(safe-area-inset-bottom) + 12px)) max(14px,env(safe-area-inset-left));background:rgba(2,3,6,.72);backdrop-filter:blur(13px);-webkit-backdrop-filter:blur(13px);transition:opacity .22s ease}
.micGate.hidden{display:none!important}
.micGateCard{width:min(100%,470px);border:1px solid rgba(255,255,255,.11);border-radius:20px;background:linear-gradient(180deg,rgba(22,24,32,.98),rgba(9,11,16,.99));box-shadow:0 28px 80px rgba(0,0,0,.62);padding:17px;position:relative;overflow:hidden;animation:micGateIn .32s cubic-bezier(.2,.85,.2,1) both}
.micGateCard::before{content:"";position:absolute;inset:-30% -10% auto;height:150px;background:radial-gradient(circle at 50% 40%,rgba(122,92,255,.15),transparent 62%);pointer-events:none}
.micGateTop,.micGateBody,.micGateActions{position:relative;z-index:1}.micGateTop{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:17px}.micGateEyebrow{font:850 8px/1 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.15em;color:#9b96ff}.micGateState{display:flex;align-items:center;gap:6px;font:800 8px/1 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.08em;color:#737986}.micGateState i{width:6px;height:6px;border-radius:50%;background:#777d89}.micGateState.ready{color:#7ee2c0}.micGateState.ready i{background:#72dfbd;box-shadow:0 0 10px rgba(114,223,189,.65)}.micGateState.denied{color:#ff806c}.micGateState.denied i{background:#ff6653;box-shadow:0 0 10px rgba(255,102,83,.5)}
.micGateIcon{width:52px;height:52px;margin-bottom:15px;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle,rgba(154,144,255,.20),rgba(154,144,255,.06) 55%,transparent 58%);border:1px solid rgba(154,144,255,.20);font-size:22px;color:#d4d0ff;box-shadow:0 0 30px rgba(122,92,255,.08);animation:micBreath 2.4s ease-in-out infinite}
.micGateTitle{margin:0;color:#f4f1eb;font-size:24px;line-height:1.12;letter-spacing:-.045em;font-weight:900}.micGateText{margin:10px 0 0;color:#969ba8;font-size:11px;line-height:1.75}.micGateText strong{color:#d8d6df}.micGatePrivacy{display:flex;align-items:flex-start;gap:8px;margin-top:14px;padding:10px 11px;border-radius:10px;background:rgba(255,255,255,.035);color:#747a87;font-size:9px;line-height:1.55}.micGatePrivacy b{color:#aeb2bd}.micGatePrivacy span{flex:0 0 auto;color:#72dfbd}
.micGateStatus{min-height:18px;margin:11px 1px 0;font-size:9px;line-height:1.5;color:#7c8290}.micGateStatus.error{color:#ff8a76}.micGateActions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:15px}.micGateBtn{border:1px solid rgba(255,255,255,.10);border-radius:11px;padding:13px 10px;background:#171922;color:#bfc2cc;font-size:11px;font-weight:850;cursor:pointer}.micGateBtn.primary{background:linear-gradient(135deg,#7058ff,#9554ff);border-color:transparent;color:#fff;box-shadow:0 10px 26px rgba(112,88,255,.16)}.micGateBtn:disabled{opacity:.45;cursor:default}.micGateBtn:active{transform:scale(.988)}
.micReadyBadge{display:none;align-items:center;gap:5px;margin-top:7px;color:#72dfbd;font:800 8px/1 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.08em}.phone.mic-ready .micReadyBadge{display:flex}.micReadyBadge i{width:5px;height:5px;border-radius:50%;background:#72dfbd;box-shadow:0 0 8px rgba(114,223,189,.7)}
@keyframes micGateIn{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}
@keyframes micBreath{0%,100%{transform:scale(1);box-shadow:0 0 24px rgba(122,92,255,.06)}50%{transform:scale(1.035);box-shadow:0 0 34px rgba(122,92,255,.12)}}
@media(max-width:430px){.micGate{padding-left:10px;padding-right:10px}.micGateCard{border-radius:18px;padding:16px}.micGateTitle{font-size:22px}.micGateActions{grid-template-columns:1fr}.micGateBtn{min-height:46px}}
@media(prefers-reduced-motion:reduce){.micGateCard,.micGateIcon{animation:none!important}.micGate{transition:none!important}}



/* =========================================================
   REFLEX REVEAL / result as confrontation
   ========================================================= */
.phone[data-screen="review"] .bottomNav{opacity:0!important;pointer-events:none!important;transform:translateY(calc(100% + 28px))!important}
#reviewScreen{padding:8px 12px calc(28px + var(--safe-bottom,0px));background:#08090d}

/* result reveal: an ending, not a dashboard */
.resultReveal{position:absolute;inset:0;z-index:185;display:flex;align-items:center;justify-content:center;background:#07080b;opacity:0;pointer-events:none;transition:opacity .18s ease;overflow:hidden}
.resultReveal.show{opacity:1;pointer-events:auto}
.resultReveal::before{content:"";position:absolute;width:70vw;height:70vw;max-width:500px;max-height:500px;border-radius:50%;background:radial-gradient(circle,rgba(125,92,255,.15),rgba(125,92,255,.035) 42%,transparent 68%);filter:blur(18px);animation:revealPulse 2.2s ease-in-out infinite}
.resultRevealInner{position:relative;z-index:2;width:100%;padding:28px;text-align:center}
.resultRevealScan{font:800 9px/1 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.18em;color:#707683;margin-bottom:18px}
.resultRevealScan i{display:inline-block;width:5px;height:5px;border-radius:50%;background:#9a84ff;box-shadow:0 0 12px rgba(154,132,255,.75);margin-right:8px;animation:revealBlink .7s steps(2) infinite}
.resultRevealWord{display:block;color:#f2efe9;font:950 clamp(46px,14vw,78px)/.84 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:-.085em;opacity:0;transform:scale(.95);filter:blur(8px)}
.resultReveal.word .resultRevealWord{animation:resultWordHit .65s cubic-bezier(.18,.86,.24,1) forwards}
.resultReveal.word .resultRevealScan{opacity:.35}

.resultPoster{position:relative;overflow:hidden;min-height:min(720px,calc(100dvh - 28px));border:1px solid rgba(255,255,255,.09);border-radius:26px;padding:18px;background:
  radial-gradient(circle at 84% 12%,rgba(128,91,255,.17),transparent 30%),
  radial-gradient(circle at -8% 92%,rgba(255,66,54,.10),transparent 33%),
  linear-gradient(180deg,#101119 0%,#090a0f 100%);box-shadow:0 30px 90px rgba(0,0,0,.52);animation:posterLand .72s cubic-bezier(.18,.86,.24,1) both}
.resultPoster::before{content:"";position:absolute;inset:-20%;pointer-events:none;background:conic-gradient(from 180deg at 50% 50%,transparent 0 24%,rgba(126,100,255,.045) 30%,transparent 38% 72%,rgba(255,75,63,.03) 80%,transparent 88%);animation:posterOrbit 18s linear infinite}
.resultPoster>*{position:relative;z-index:2}
.resultPosterTop{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:12px;border-bottom:1px solid rgba(255,255,255,.07)}
.resultPosterBrand{font:850 8px/1 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.17em;color:#757b87}.resultPosterBrand b{color:#d4d5da}
.resultScenario{max-width:58%;text-align:right;font-size:8.5px;line-height:1.35;color:#666c78}

.reflexStage{padding:28px 0 24px}
.reflexStageLabel{font:850 8px/1 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.2em;color:#8e83d7}
.resultReflexType{display:block;margin-top:11px;color:#f4f0ea;font:950 clamp(49px,14vw,76px)/.82 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:-.085em;text-wrap:balance}
.resultMirrorLine{margin:20px 0 0;max-width:390px;color:#dedbe3;font-size:clamp(18px,5.4vw,24px);line-height:1.38;letter-spacing:-.035em;font-weight:820;text-wrap:balance}
.resultMirrorLine em{font-style:normal;color:#b6a8ff}
.resultEndingMicro{display:flex;align-items:center;gap:8px;margin-top:16px;color:#6e7480;font:780 7.5px/1.3 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.1em}
.resultEndingMicro .endBadge{margin:0;padding:6px 8px;background:rgba(255,255,255,.045);border-color:rgba(255,255,255,.08);color:#9da2ad;font-size:7px}

.decisiveHero{margin-top:4px;padding:18px 17px 17px;border-radius:18px;background:#f0ede6;color:#111217;box-shadow:0 18px 50px rgba(0,0,0,.22)}
.decisiveHeroLabel{display:flex;align-items:center;justify-content:space-between;gap:10px;color:#862d35;font:900 7px/1 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.15em}
.decisiveHeroLabel span:last-child{color:#8b8885}
.decisiveQuote{margin:16px 0 0;color:#121318;font-size:clamp(20px,6vw,28px);line-height:1.28;letter-spacing:-.045em;font-weight:900;text-wrap:balance}
.decisiveImpact{margin:13px 0 0;padding-top:12px;border-top:1px solid rgba(17,18,23,.10);color:#5d5b5b;font-size:11.5px;line-height:1.5;font-weight:760}
.decisiveImpact.risk{color:#a3332f}.decisiveImpact.good{color:#23755f}

.resultTelemetry{margin-top:16px}
.resultTelemetryCaption{font:760 7px/1.5 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.09em;color:#5f6571;margin-bottom:6px}
.resultTelemetryRow{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;border:1px solid rgba(255,255,255,.065);border-radius:12px;overflow:hidden;background:rgba(255,255,255,.055)}
.resultTelemetryItem{background:#0c0d12;padding:10px 9px 9px}
.resultTelemetryItem small{display:block;color:#5f6571;font:760 6.5px/1 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.11em}
.resultTelemetryItem strong{display:block;margin-top:6px;color:#aeb2bc;font:900 15px/1 ui-monospace,SFMono-Regular,Menlo,monospace}.resultTelemetryItem.good strong{color:#9cd8c4}.resultTelemetryItem.risk strong{color:#e58b82}
.resultPosterFoot{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-top:15px;color:#555b67;font:760 6.5px/1.45 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.1em}.resultPosterFoot b{color:#868b96}
.resultPosterFoot .keep{max-width:120px;text-align:right;color:#777d89}



/* =========================================================
   CONVERSATION TRACE / NEXT PLAY
   MHLW-informed reflection, not a legal determination
   ========================================================= */
.resultFlow{margin-top:12px;display:grid;gap:12px}
.resultFlowPanel{overflow:hidden;border:1px solid rgba(255,255,255,.08);border-radius:19px;background:#0f1117;box-shadow:0 18px 55px rgba(0,0,0,.18)}
.flowHead{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:16px 16px 13px;border-bottom:1px solid rgba(255,255,255,.07)}
.flowEyebrow{font:850 7px/1 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.18em;color:#8174d7;text-transform:uppercase}
.flowTitle{margin-top:7px;color:#ece9e3;font-size:20px;line-height:1.06;letter-spacing:-.045em;font-weight:900}
.flowMeta{flex:none;padding-top:3px;color:#5f6570;font:780 7px/1.4 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.08em;text-align:right}

.conversationScene{position:relative;height:126px;overflow:hidden;background:#101118}
.conversationScene img{width:100%;height:100%;object-fit:cover;object-position:center 38%;filter:grayscale(.25) contrast(1.08) brightness(.62);transform:scale(1.025)}
.conversationScene::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(8,9,13,.04),rgba(8,9,13,.93)),linear-gradient(90deg,rgba(104,77,230,.17),transparent 52%)}
.conversationSceneCopy{position:absolute;z-index:2;left:15px;right:15px;bottom:12px;display:flex;align-items:flex-end;justify-content:space-between;gap:12px}
.conversationSceneCopy strong{display:block;color:#f0ede7;font-size:13px;line-height:1.2;font-weight:850}.conversationSceneCopy span{display:block;margin-top:4px;color:#969aa5;font-size:9px;line-height:1.35}
.sceneStamp{flex:none;color:#8174d7!important;font:820 7px/1 ui-monospace,SFMono-Regular,Menlo,monospace!important;letter-spacing:.15em!important}

.conversationViewport{max-height:min(52dvh,470px);overflow:auto;overscroll-behavior:contain;padding:11px 12px 14px;scrollbar-width:thin;scrollbar-color:#343743 transparent;background:linear-gradient(180deg,#0c0e13,#0a0c11)}
.conversationViewport::-webkit-scrollbar{width:4px}.conversationViewport::-webkit-scrollbar-thumb{background:#343743;border-radius:999px}
.conversationEntry{position:relative;margin:0 0 10px;padding-left:17px}
.conversationEntry::before{content:"";position:absolute;left:3px;top:7px;width:5px;height:5px;border-radius:50%;background:#555b67;box-shadow:0 0 0 3px rgba(255,255,255,.025)}
.conversationEntry::after{content:"";position:absolute;left:5px;top:15px;bottom:-13px;width:1px;background:rgba(255,255,255,.055)}
.conversationEntry:last-child::after{display:none}
.conversationWho{display:flex;align-items:center;gap:8px;margin-bottom:5px;color:#626874;font:820 6.5px/1 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.14em}.conversationWho b{font:inherit;color:#8f95a1}.conversationWho i{font-style:normal;color:#6b5cd5}
.conversationBubble{max-width:94%;padding:10px 11px;border-radius:12px;background:#151820;border:1px solid rgba(255,255,255,.055);color:#c8c9ce;font-size:11.5px;line-height:1.55;letter-spacing:-.012em}
.conversationEntry.staff{padding-left:38px}.conversationEntry.staff::before{background:#8c78ff;box-shadow:0 0 12px rgba(140,120,255,.35)}.conversationEntry.staff .conversationBubble{margin-left:auto;background:#191728;border-color:rgba(145,120,255,.15);color:#e2dfeb}.conversationEntry.staff .conversationWho{justify-content:flex-end}
.conversationEntry.idle .conversationBubble{color:#777d89;font-style:italic;background:#101218}.conversationEntry.idle::before{background:#8a4b50}
.conversationEntry.decisive .conversationBubble{border-color:rgba(218,197,130,.44);box-shadow:0 0 0 1px rgba(218,197,130,.08),0 12px 35px rgba(0,0,0,.18)}
.decisiveTag{display:inline-flex;margin-left:6px;padding:3px 5px;border-radius:999px;background:#e5d19a;color:#171616;font:900 5.8px/1 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.09em;vertical-align:middle}
.conversationHint{padding:10px 14px 13px;border-top:1px solid rgba(255,255,255,.055);color:#666c77;font-size:9px;line-height:1.5}.conversationHint b{color:#aaaeba}

.nextPlayPanel{background:radial-gradient(circle at 90% -10%,rgba(126,92,255,.12),transparent 38%),#101218}
.nextPlayIntro{padding:0 16px 14px;color:#8f949f;font-size:10px;line-height:1.55}.nextPlayIntro b{color:#d7d4dc}
.nextActionList{display:grid;gap:8px;padding:0 12px 12px;counter-reset:nextaction}
.nextAction{counter-increment:nextaction;position:relative;padding:14px 13px 13px 46px;border:1px solid rgba(255,255,255,.07);border-radius:14px;background:#0b0d12}
.nextAction::before{content:"0" counter(nextaction);position:absolute;left:13px;top:14px;color:#7164ca;font:900 10px/1 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.04em}
.nextAction small{display:block;color:#656b77;font:820 6.5px/1 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.13em}.nextAction strong{display:block;margin-top:6px;color:#efebe5;font-size:14px;line-height:1.2;letter-spacing:-.025em}.nextAction p{margin:7px 0 0;color:#969aa5;font-size:10px;line-height:1.55}.nextAction em{font-style:normal;color:#b6a8ff}
.nextPlayCTA{margin:0 12px 13px;width:calc(100% - 24px);min-height:49px;border:0;border-radius:13px;background:#ede9e2;color:#111318;font-size:11px;font-weight:900;letter-spacing:.01em;cursor:pointer}.nextPlayCTA:active{transform:scale(.99)}

.mhlwFrame{padding:14px 14px 13px;background:#0b0d12;border-top:1px solid rgba(255,255,255,.055)}
.mhlwFrameTop{display:flex;align-items:center;justify-content:space-between;gap:12px}.mhlwFrameTop strong{color:#a9a4cc;font:850 7px/1 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.14em}.mhlwFrameTop span{color:#555b66;font:760 6px/1 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.08em}
.mhlwAxes{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:11px}.mhlwAxis{padding:10px 8px;border-radius:10px;background:#13151b;border:1px solid rgba(255,255,255,.05)}.mhlwAxis b{display:block;color:#dad7dd;font-size:9px;line-height:1.25}.mhlwAxis span{display:block;margin-top:5px;color:#666c77;font-size:7.5px;line-height:1.35}
.mhlwNote{margin:10px 0 0;color:#565c67;font-size:7.5px;line-height:1.5}.mhlwNote b{color:#777d88}

@media(max-width:430px){.conversationScene{height:116px}.conversationViewport{max-height:48dvh}.flowTitle{font-size:18px}.mhlwAxes{grid-template-columns:1fr}.mhlwAxis{display:grid;grid-template-columns:105px 1fr;align-items:center;gap:8px}.mhlwAxis span{margin:0}.nextAction strong{font-size:13px}}
@media(max-width:359px){.flowHead{padding:14px 12px}.flowMeta{display:none}.conversationEntry.staff{padding-left:24px}.nextAction{padding-left:40px}}

/* full pedagogical explanation remains below the emotional result */
.reviewDetails{margin-top:12px;border:1px solid rgba(255,255,255,.08);border-radius:15px;background:#101219;overflow:hidden}.reviewDetails summary{list-style:none;display:flex;align-items:center;justify-content:space-between;min-height:51px;padding:0 14px;cursor:pointer;color:#c2c5ce;font-size:11px;font-weight:820}.reviewDetails summary::-webkit-details-marker{display:none}.reviewDetails summary::after{content:"＋";color:#777c89;font-size:17px;font-weight:400}.reviewDetails[open] summary::after{content:"−"}.reviewDetails[open] summary{border-bottom:1px solid rgba(255,255,255,.07)}.reviewDetails .reviewCards{padding:10px}.reviewDetails .decisiveCard{display:none}
.reviewActions{margin-top:10px;display:grid!important;grid-template-columns:1fr 1fr;gap:8px}.reviewActions button{border-radius:12px!important;min-height:48px}.retry{background:#f0ede7!important;color:#14151a!important}.back{background:#15171f!important}

/* legacy nodes used by review logic but intentionally not visible in poster */
#reviewTitle,#reviewSub,#resultReflexJa,#decisiveMoment{display:none!important}

@keyframes revealPulse{0%,100%{transform:scale(.92);opacity:.55}50%{transform:scale(1.08);opacity:1}}
@keyframes revealBlink{50%{opacity:.25}}
@keyframes resultWordHit{0%{opacity:0;transform:scale(.95);filter:blur(8px)}55%{opacity:1;transform:scale(1.015);filter:blur(0)}100%{opacity:1;transform:scale(1);filter:blur(0)}}
@keyframes posterLand{from{opacity:0;transform:translateY(14px) scale(.985)}to{opacity:1;transform:none}}
@keyframes posterOrbit{to{transform:rotate(360deg)}}
@media(max-width:430px){#reviewScreen{padding-left:10px;padding-right:10px}.resultPoster{min-height:calc(100dvh - 20px);border-radius:22px;padding:15px}.reflexStage{padding-top:24px}.decisiveHero{padding:16px 15px}.resultPosterFoot{font-size:6px}}
@media(max-width:359px){.resultTelemetryRow{grid-template-columns:1fr}.resultTelemetryItem{display:flex;align-items:center;justify-content:space-between}.resultTelemetryItem strong{margin-top:0}.resultReflexType{font-size:44px}.reviewActions{grid-template-columns:1fr}}
@media (prefers-reduced-motion: reduce){.resultReveal::before,.resultRevealWord,.resultPoster,.resultPoster::before{animation:none!important;transition:none!important}.resultReveal.word .resultRevealWord{opacity:1;transform:none;filter:none}}


.reflexStage::after{content:"このタイプは、今回のプレイで現れた反応傾向です。";display:block;margin-top:12px;font-size:9px;line-height:1.5;color:#6f7480;letter-spacing:.01em}


/* =========================================================
   v4.1 FINAL POLISH 08 — iPhone layout audit
   375 / 390 / 430px, safe-area, keyboard, review density
   ========================================================= */
@media(max-width:430px){
  :root{--mobile-gutter:13px;--mobile-nav-h:62px}
  .topbar{padding-left:max(13px,var(--safe-left));padding-right:max(13px,var(--safe-right))}
  .brand{max-width:calc(100vw - 122px);overflow:hidden;text-overflow:ellipsis}
  .screen{padding-left:max(13px,var(--safe-left));padding-right:max(13px,var(--safe-right));padding-bottom:calc(var(--mobile-nav-h) + var(--safe-bottom) + 30px)}
  .hero{height:clamp(218px,32dvh,274px)}
  .speech{margin-left:5px;margin-right:5px;padding-left:13px;padding-right:13px}
  .customerLine{font-size:clamp(19px,5.25vw,21.5px);line-height:1.34}
  .contextChip{max-width:68%}
  .choice{min-height:60px;padding:11px 11px 11px 12px}
  .spokenChoice{font-size:13.25px;line-height:1.45}
  .bottomNav{left:max(8px,var(--safe-left));right:max(8px,var(--safe-right));bottom:max(7px,var(--safe-bottom));height:var(--mobile-nav-h);border-radius:16px}
  .navbtn{min-height:48px}
  .review{padding-top:10px}
  .resultPoster{padding:16px 15px 14px;border-radius:19px}
  .reflexStage{padding:23px 0 20px}
  .resultReflexType{font-size:clamp(43px,13.4vw,60px);line-height:.86;letter-spacing:-.075em;overflow-wrap:anywhere}
  .resultMirrorLine{font-size:clamp(17px,5vw,21px);line-height:1.4;margin-top:17px}
  .decisiveHero{padding:16px 15px;border-radius:16px}
  .decisiveQuote{font-size:clamp(19px,5.7vw,24px)}
  .resultTelemetryItem{padding:9px 7px 8px}
  .resultTelemetryItem strong{font-size:14px}
  .flowHead{padding:14px 14px 12px;gap:10px}
  .flowTitle{font-size:18px}.flowMeta{font-size:6.5px}
  .conversationScene{height:112px}
  .conversationViewport{max-height:min(46dvh,390px);overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
  .conversationEntry{padding-left:12px;padding-right:12px}
  .conversationBubble{font-size:12.5px;line-height:1.55}
  .nextAction{padding:14px}
  .nextAction strong{font-size:15px}
}

@media(max-width:390px){
  :root{--mobile-gutter:12px}
  .brand em{display:none}
  .selectEyebrow{margin-top:16px}
  .selectTitle{font-size:32px}
  .selectSub{font-size:11px;margin-bottom:15px}
  .experienceModes{gap:6px;margin-bottom:12px}
  .modeChip{min-height:55px;padding:8px}
  .scenarioCard{min-height:138px}
  .scenarioCopy{padding:14px;width:66%}
  .scenarioName{font-size:21px}
  .hero{height:clamp(210px,31dvh,258px)}
  .aiHud{left:9px;right:9px;top:9px}
  .pressureRail{left:9px;right:9px;top:54px}
  .contextChip{font-size:9px;max-width:66%}
  .speech{padding-top:13px;padding-bottom:14px}
  .customerLine{font-size:20px}
  .waveRow{height:44px;margin-top:7px}
  .prompt{margin-bottom:8px}
  .choices{gap:7px}
  .choice{min-height:58px;padding-top:10px;padding-bottom:10px}
  .spokenChoice{font-size:13px}
  .mood{margin-top:8px}
  .resultPosterTop{gap:8px}
  .resultScenario{max-width:54%;font-size:7.8px}
  .resultReflexType{font-size:clamp(40px,13vw,52px)}
  .resultPosterFoot{font-size:6px}
  .resultPosterFoot .keep{max-width:96px}
}

@media(max-width:375px){
  :root{--mobile-gutter:11px;--mobile-nav-h:60px}
  .topbar{min-height:calc(51px + var(--safe-top));padding-top:calc(var(--safe-top) + 6px);padding-bottom:6px}
  .iconbtn{width:40px;height:40px;min-width:40px;min-height:40px}
  .screen{padding-top:7px;padding-bottom:calc(var(--mobile-nav-h) + var(--safe-bottom) + 27px)}
  .selectTitle{font-size:30px}
  .hero{height:clamp(202px,30dvh,242px);border-radius:15px}
  .customerLine{font-size:19px;line-height:1.32}
  .speech{margin-top:-5px;margin-left:4px;margin-right:4px}
  .choice{min-height:56px;border-radius:12px}
  .spokenChoice{font-size:12.8px}
  .moodFace{width:40px;height:40px;flex-basis:40px}
  .bottomNav{height:var(--mobile-nav-h);padding:5px}
  .navbtn{min-height:46px;font-size:8.5px}
  .navicon{font-size:15px}
  .resultPoster{padding:14px 13px}
  .reflexStage{padding:20px 0 18px}
  .resultReflexType{font-size:39px}
  .resultMirrorLine{font-size:17px}
  .decisiveHero{padding:14px 13px}
  .decisiveQuote{font-size:19px}
  .flowHead{padding:13px 12px 11px}
  .conversationViewport{max-height:min(43dvh,340px)}
}

@media(max-width:430px) and (max-height:760px){
  .hero{height:clamp(194px,28dvh,224px)}
  .speech{padding-top:11px;padding-bottom:12px}
  .customerLine{font-size:18.5px;line-height:1.31;margin-top:6px}
  .waveRow{height:39px;margin-top:5px}
  .choice{min-height:54px;padding-top:9px;padding-bottom:9px}
  .spokenChoice{font-size:12.7px}
  .mood{display:none}
}

body.keyboard-open #playScreen{padding-bottom:calc(18px + var(--safe-bottom))}
body.keyboard-open .otherPanel{scroll-margin-bottom:18px}
body.keyboard-open .hero{max-height:170px}
body.keyboard-open .mood{display:none}

@supports(padding:max(0px)){
  @media(max-width:560px){
    .sheetCard,.resultPoster,.resultFlowPanel{scroll-margin-bottom:calc(var(--safe-bottom) + 12px)}
  }
}


/* V5.3 — LIGHT ROOM / playtest polish */
:root{--paper:#f5f4f0;--paper2:#eeece6;--lightCard:#ffffff;--lightInk:#16171b;--lightSub:#686b73;--lightHair:rgba(18,20,25,.11)}
html,body{background:var(--paper)!important;color:var(--lightInk)!important}
.shell{background:var(--paper)!important}
.phone{background:var(--paper)!important;border-color:rgba(20,22,28,.10)!important;box-shadow:0 24px 70px rgba(20,22,28,.10)!important}
.phone:before,.ambientAura,.ambientGrid,.ambientNoise,.ambientSweep,.scanlines{opacity:0!important}
.topbar{color:var(--lightInk)!important}
.iconbtn{background:#fff!important;color:#22242a!important;border:1px solid var(--lightHair)!important}
.progressTop{background:#fff!important;border-color:var(--lightHair)!important;color:#3b3d45!important}
.selectTitle{color:#15161a!important}.selectSub{color:#73767d!important}.selectEyebrow{color:#767982!important}
.scenarioCard{background:#fff!important;border:1px solid var(--lightHair)!important;box-shadow:0 10px 30px rgba(20,22,28,.07)!important}
.scenarioFade{background:linear-gradient(90deg,#fff 0 43%,rgba(255,255,255,.90) 60%,rgba(255,255,255,.28) 100%)!important}
.hero{background:#e8e6e0!important;box-shadow:inset 0 0 0 1px rgba(20,22,28,.08)!important}
.contextChip{background:rgba(255,255,255,.93)!important;border:1px solid rgba(20,22,28,.10)!important;color:#555861!important;box-shadow:0 8px 24px rgba(20,22,28,.08)!important}
.speech{background:#fff!important;color:#111217!important;border-color:rgba(20,22,28,.10)!important;box-shadow:0 14px 36px rgba(20,22,28,.09)!important}
.customerTag{background:#fff0ed!important;color:#8a2931!important}.replay{background:#f0efeb!important;color:#4d4f57!important}
.prompt{color:#777a82!important}.prompt span{color:#7b58e8!important}
.wave span{background:#7469dc!important}.micOrb{background:#fff!important;border-color:rgba(20,22,28,.12)!important;color:#6458d7!important;box-shadow:0 0 0 7px rgba(100,88,215,.05)!important}
.choice{background:#fff!important;color:#17181d!important;border-color:rgba(20,22,28,.12)!important;box-shadow:0 7px 22px rgba(20,22,28,.055)!important}
.choice:hover{background:#fbfaf7!important;border-color:rgba(100,88,215,.34)!important;box-shadow:0 10px 26px rgba(20,22,28,.08)!important}.ctitle{color:#17181d!important}.cline{color:#767982!important}.arrow{color:#8a8d95!important}
.badge,.choice:nth-child(2) .badge,.choice:nth-child(3) .badge{background:#f0efeb!important;color:#665bd5!important}.otherPanel{background:#fff!important;border-color:rgba(20,22,28,.10)!important}.otherPanel textarea,textarea{background:#faf9f6!important;border-color:rgba(20,22,28,.12)!important;color:#17181d!important}
.aiAssistBtn{background:#fff!important;border-color:rgba(100,88,215,.26)!important;color:#322d62!important;box-shadow:0 8px 24px rgba(20,22,28,.06)!important}.aiAssistBtn small{color:#858891!important}.aiAssistPanel{background:#fff!important;border-color:rgba(100,88,215,.22)!important;box-shadow:0 14px 34px rgba(20,22,28,.08)!important}.aiAssistSuggestion{color:#17181d!important;background:#faf9f7!important;border-color:rgba(100,88,215,.14)!important}.aiAssistNext{background:#f7f6f2!important;border-color:rgba(20,22,28,.07)!important;color:#70737b!important}.aiAssistWhy{color:#777a82!important}
.mood{background:#fff!important;border-color:rgba(20,22,28,.10)!important;color:#17181d!important;box-shadow:0 7px 22px rgba(20,22,28,.05)!important}.moodFace,.moodFace.calm,.moodFace.hot{background:#f2f0eb!important;box-shadow:inset 0 0 0 1px rgba(20,22,28,.08)!important}.moodLabel{color:#8a8d95!important}.moodState{color:#191a1f!important}.moodHint{color:#73767e!important}.turnState,.turnState.activeState{color:#6661c8!important}
.bottomNav{background:rgba(255,255,255,.96)!important;border-color:rgba(20,22,28,.10)!important;box-shadow:0 14px 36px rgba(20,22,28,.10)!important}.navbtn{color:#8a8d95!important}.navbtn.active{background:#f1f0ec!important;color:#6259d2!important}
#reviewScreen{background:var(--paper)!important}.resultPoster{background:#fff!important;border-color:rgba(20,22,28,.10)!important;box-shadow:0 16px 42px rgba(20,22,28,.08)!important;min-height:0!important}.resultPoster::before{display:none!important}.resultPosterTop{border-color:rgba(20,22,28,.08)!important}.resultPosterBrand{color:#8a8d95!important}.resultPosterBrand b{color:#1a1b20!important}.reflexStageLabel{color:#7c7f87!important}.resultReflexType{color:#15161a!important}.resultMirrorLine{color:#5f626a!important}.resultTelemetryCaption{color:#8a8d95!important;margin-bottom:10px!important}.resultTelemetryRow{gap:8px!important;border:0!important;background:transparent!important;overflow:visible!important}.resultTelemetryItem{background:#f3f2ee!important;border:1px solid rgba(20,22,28,.08)!important;border-radius:12px!important;padding:13px 12px 12px!important}.resultTelemetryItem small{color:#7d8088!important}.resultTelemetryItem strong{font-size:clamp(34px,10vw,52px)!important;letter-spacing:-.06em!important;margin-top:7px!important;color:#262830!important}.resultTelemetryItem.risk strong{color:#b94b45!important}.resultTelemetryItem.good strong{color:#2c8b72!important}.resultPosterFoot{justify-content:flex-end!important;color:#8a8d95!important}.resultPosterFoot .keep{max-width:none!important;color:#8a8d95!important}
.resultFlowPanel,.reviewDetails{background:#fff!important;border-color:rgba(20,22,28,.10)!important;color:#17181d!important;box-shadow:0 10px 30px rgba(20,22,28,.05)!important}.flowEyebrow,.flowMeta{color:#8a8d95!important}.flowTitle{color:#191a1f!important}.conversationBubble,.nextAction{background:#f6f5f1!important;border-color:rgba(20,22,28,.08)!important;color:#2d2f35!important}.reviewDetails summary{color:#33353b!important}.reviewDetails .reviewCards{background:#fff!important}.reviewCard{background:#f7f6f2!important;border-color:rgba(20,22,28,.08)!important}.reviewCard p{color:#666970!important}.back{background:#fff!important;color:#5d54c7!important;border-color:rgba(20,22,28,.12)!important}.retry{background:#17181d!important;color:#fff!important}
.sheet{background:rgba(238,236,230,.72)!important}.sheetCard{background:#fff!important;color:#17181d!important;border-color:rgba(20,22,28,.10)!important}.close{background:#f1f0ec!important;color:#303238!important}.logEntry{border-color:rgba(20,22,28,.08)!important}.devItem{background:#f5f4f0!important}.devVal{color:#17181d!important}
.threatVignette{box-shadow:none!important}.phone.threat-mid .threatVignette,.phone.threat-hot .threatVignette{opacity:1!important;box-shadow:inset 0 0 65px 10px rgba(255,65,47,.045)!important}
@media(max-width:560px){.shell{background:var(--paper)!important}.phone{background:var(--paper)!important}}
@media(max-width:359px){.resultTelemetryItem strong{font-size:34px!important}}


/* =========================================================
   V5.4 — EXPERIENCE POLISH
   Tactile mode dial / editorial scenario cards / compact AV
   ========================================================= */
.modeSelector{margin:24px 0 22px;padding:0;position:relative}
.modeSelectorLabel{font:850 8px/1 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.18em;color:#858891;margin-bottom:9px}
.experienceModes{display:none!important}
.modeHint{display:none!important}
.modeDial{position:relative;height:142px;overflow:hidden;border-radius:22px;background:linear-gradient(140deg,#fbfaf7,#f2f1ed);border:1px solid rgba(20,22,28,.08);box-shadow:0 12px 34px rgba(20,22,28,.055);touch-action:pan-y}
.modeArc{position:absolute;width:264px;height:264px;border:1px solid rgba(30,32,38,.16);border-radius:50%;left:-151px;top:-64px}
.modeArc::after{content:"";position:absolute;width:7px;height:7px;border-radius:50%;background:#191a1f;right:-4px;top:128px;box-shadow:0 0 0 5px rgba(25,26,31,.05)}
.modeChip{position:absolute!important;display:flex!important;align-items:baseline!important;gap:10px!important;width:auto!important;min-height:0!important;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important;color:#b8b9bd!important;transition:transform .32s cubic-bezier(.2,.8,.2,1),color .25s ease,opacity .25s ease!important;text-align:left!important}
.modeChip small{display:none!important}.modeChip .modeNo{font:800 18px/1 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:-.05em}.modeChip b{font:900 18px/1 ui-sans-serif,system-ui,sans-serif;letter-spacing:-.035em}
.modeChip[data-play-mode="choice"]{left:55px;top:24px;transform:scale(.83);transform-origin:left center}
.modeChip[data-play-mode="voice"]{left:126px;top:84px;transform:scale(.83);transform-origin:left center}
.modeChip.active{color:#191a1f!important;transform:scale(1.22)!important;z-index:3}.modeChip.active .modeNo{font-size:25px}.modeChip.active b{font-size:25px}
.modeFocusDot{position:absolute;left:108px;top:68px;width:5px;height:5px;border-radius:50%;background:#6e62e8;box-shadow:0 0 0 6px rgba(110,98,232,.08)}
.modeDetail{display:flex;align-items:baseline;gap:11px;margin-top:10px;padding-left:2px}.modeDetail b{font-size:13px;letter-spacing:-.02em}.modeDetail span{font-size:11px;color:#777a82}

.scenarioGrid{gap:11px!important}.scenarioCard{min-height:178px!important;border-radius:22px!important;transition:transform .2s ease,box-shadow .2s ease!important}.scenarioCopy{width:64%!important;padding:21px 20px!important}.scenarioCard .kicker{font-size:12px!important;letter-spacing:.22em!important;color:#8278dd!important}.scenarioName{font-size:32px!important;line-height:.96!important;letter-spacing:-.055em!important;margin-top:10px!important}.scenarioMeta{margin-top:13px!important;display:grid;gap:3px;font-size:13px!important;line-height:1.38!important;color:#747780!important}.scenarioMeta b{font-size:14px;color:#27292f}.scenarioMeta span{font-size:12px}.scenarioArrow{position:absolute;left:20px;bottom:17px;font-size:22px;font-weight:300;color:#8b8e95}.scenarioImg{width:54%!important;opacity:.92!important}.hot{display:none!important}

/* Compact role-play: visual pressure stays central without making the page endless. */
#playScreen{padding-top:10px!important}.sceneWrap{padding-bottom:14px!important}.hero{height:150px!important;border-radius:20px!important}.speech{margin-top:-17px!important;position:relative;z-index:5;padding:12px 14px 13px!important;border-radius:16px!important}.customerLine{font-size:18px!important;line-height:1.34!important;margin-top:6px!important}.speechHead{margin-bottom:2px!important}
.waveRow{position:relative;height:82px!important;margin:7px 0 2px!important;border-radius:18px;overflow:hidden;background:radial-gradient(circle at 38% 52%,rgba(112,92,229,.11),transparent 28%),radial-gradient(circle at 60% 48%,rgba(255,97,110,.10),transparent 30%),radial-gradient(circle at 76% 50%,rgba(69,170,231,.10),transparent 31%),#fbfaf7;border:1px solid rgba(20,22,28,.07)}
.waveRow::before,.waveRow::after{content:"";position:absolute;left:20%;top:50%;width:58%;height:46px;transform:translateY(-50%);border-radius:52% 48% 49% 51%/45% 54% 46% 55%;filter:blur(.2px);opacity:.48;transition:.3s ease}.waveRow::before{background:linear-gradient(90deg,rgba(111,92,229,.25),rgba(245,92,111,.20));transform:translateY(-50%) rotate(3deg)}.waveRow::after{left:36%;width:48%;height:53px;background:linear-gradient(90deg,rgba(83,181,230,.20),rgba(111,92,229,.18));transform:translateY(-50%) rotate(-4deg)}
.wave{position:relative!important;z-index:3!important;height:72px!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:3px!important;flex:1!important;padding:0 20px!important}.wave span{width:2px!important;height:var(--h)!important;max-height:62px!important;border-radius:10px!important;background:#2f387d!important;opacity:.86!important;transform:scaleY(.72);transition:.18s ease;animation-delay:var(--d)!important}.wave.active span{animation:wavePulse .58s ease-in-out infinite alternate!important}.wave.active span:nth-child(3n){background:#6d58cf!important}.wave.active span:nth-child(4n){background:#d3627d!important}@keyframes wavePulse{from{transform:scaleY(.45);opacity:.55}to{transform:scaleY(1.05);opacity:.94}}
.micOrb{position:absolute!important;right:15px!important;top:50%!important;transform:translateY(-50%)!important;z-index:4!important;width:27px!important;height:27px!important;background:#fff!important;border:1px solid rgba(20,22,28,.10)!important;box-shadow:0 5px 14px rgba(20,22,28,.08)!important;color:#7065d9!important}
.responseState{margin:7px 0 8px!important;min-height:auto!important;text-align:left!important;font-family:ui-sans-serif,system-ui,sans-serif!important;font-size:16px!important;line-height:1.2!important;letter-spacing:-.025em!important;font-weight:850!important;color:#22242a!important}.responseState.activeState{color:#22242a!important}.choices{gap:7px!important}.choice{min-height:51px!important;padding:9px 12px!important;border-radius:13px!important}.spokenChoice{font-size:12.4px!important;line-height:1.42!important}.aiAssistWrap{margin-top:7px!important}.aiAssistBtn{min-height:44px!important}.mood{margin-top:8px!important;padding:9px 10px!important}.moodHint{display:none!important}.moodState{font-size:11.5px!important}.moodFace{width:31px!important;height:31px!important}.turnState{min-height:auto!important}

.micGateTop{justify-content:space-between!important}.micGateEyebrow{display:none!important}.micGateClose{appearance:none;border:0;background:transparent;color:#292b31;font-size:31px;line-height:1;font-weight:300;padding:0 6px 4px 0;cursor:pointer}.micGateCard{position:relative!important}.micGateTitle{margin-top:8px!important}

@media(max-width:560px){
  .selectSub{font-size:11px!important;line-height:1.55!important}.modeSelector{margin-top:18px}.modeDial{height:126px}.modeArc{width:238px;height:238px;left:-138px;top:-62px}.modeChip[data-play-mode="choice"]{left:47px;top:21px}.modeChip[data-play-mode="voice"]{left:112px;top:74px}.modeFocusDot{left:96px;top:60px}.scenarioCard{min-height:158px!important}.scenarioCopy{padding:18px!important}.scenarioName{font-size:28px!important}.scenarioMeta b{font-size:13px}.hero{height:136px!important}.customerLine{font-size:17px!important}.waveRow{height:74px!important}.wave{height:66px!important}.responseState{font-size:15px!important}.choice{min-height:48px!important}.mood{display:flex!important}
}
@media(max-width:430px) and (max-height:760px){.hero{height:120px!important}.speech{margin-top:-15px!important}.waveRow{height:64px!important}.wave{height:58px!important}.choice{min-height:45px!important}.mood{display:none!important}.aiAssistBtn{min-height:41px!important}}


/* V5.5 — AI ASSIST BEACON: the help should find you before you hunt for it */
.aiAssistWrap{position:relative!important;margin-top:11px!important;isolation:isolate}
.aiAssistBtn{
  position:relative!important;overflow:hidden!important;min-height:66px!important;padding:8px 14px 8px 10px!important;
  border:1px solid transparent!important;border-radius:999px!important;color:#16171b!important;
  background:linear-gradient(#fff,#fff) padding-box,conic-gradient(from 215deg,#efe4a7,#ffd36b,#73d7ff,#9d85ff,#ff9ac7,#f0cf65,#efe4a7) border-box!important;
  box-shadow:0 12px 34px rgba(56,48,21,.10),0 0 0 1px rgba(255,255,255,.78) inset,0 0 28px rgba(255,202,70,.12)!important;
  transform:translateZ(0);transition:transform .2s ease,box-shadow .2s ease!important
}
.aiAssistBtn::before{
  content:"";position:absolute;inset:-55%;pointer-events:none;opacity:.38;
  background:conic-gradient(from 0deg,transparent 0 24%,rgba(255,208,81,.36) 31%,rgba(100,218,255,.30) 41%,rgba(145,111,255,.31) 51%,rgba(255,142,197,.22) 60%,transparent 69% 100%);
  filter:blur(18px);animation:assistHaloSpin 8s linear infinite
}
.aiAssistBtn::after{
  content:"";position:absolute;top:-50%;bottom:-50%;width:28%;left:-34%;pointer-events:none;
  background:linear-gradient(100deg,transparent,rgba(255,255,255,.92),transparent);transform:skewX(-14deg);
  animation:assistSheen 4.8s cubic-bezier(.45,0,.25,1) infinite
}
.aiAssistBtn:hover{transform:translateY(-2px)!important;box-shadow:0 16px 38px rgba(56,48,21,.13),0 0 35px rgba(255,201,75,.18)!important}
.aiAssistBtn:active{transform:translateY(0) scale(.992)!important}
.aiAssistBtn:disabled{opacity:.72!important;cursor:default!important}
.assistMain{position:relative;z-index:2;display:flex;align-items:center;gap:10px;min-width:0;text-align:left}
.assistGlyph{width:43px;height:43px;flex:0 0 43px;border-radius:50%;display:grid;place-items:center;font-size:18px;color:#1d1d20;background:radial-gradient(circle at 34% 25%,#fff 0 18%,#f8f1cf 38%,#dbefff 65%,#ebe4ff 100%);box-shadow:0 5px 16px rgba(59,56,40,.10),0 0 0 1px rgba(34,31,27,.08) inset}
.assistCopy{display:grid;gap:3px;min-width:0}
.aiAssistBtn .assistCopy b{font:900 12px/1 ui-monospace,SFMono-Regular,Menlo,monospace!important;letter-spacing:.12em;color:#18191d!important}
.aiAssistBtn .assistCopy small{font:800 13px/1.25 ui-sans-serif,system-ui,sans-serif!important;letter-spacing:-.02em;color:#4d4f55!important;text-align:left!important}
.assistArrow{position:relative;z-index:2;margin-left:auto;width:30px;height:30px;display:grid;place-items:center;border-radius:50%;font-size:15px;color:#494a4f;background:rgba(247,247,245,.88);border:1px solid rgba(29,30,33,.08)}
.aiAssistBtn.is-thinking{box-shadow:0 14px 42px rgba(75,62,25,.14),0 0 38px rgba(110,201,255,.18),0 0 46px rgba(151,116,255,.14)!important}
.aiAssistBtn.is-thinking::before{opacity:.68;animation-duration:1.9s}
.aiAssistBtn.is-thinking .assistGlyph{animation:assistGlyphPulse 1.15s ease-in-out infinite}
.aiAssistPanel{border-radius:20px!important;padding:15px!important;background:rgba(255,255,255,.96)!important;border:1px solid rgba(44,44,49,.09)!important;box-shadow:0 20px 55px rgba(30,31,35,.11),0 0 0 1px rgba(255,255,255,.9) inset!important}
.aiAssistPanel.show{animation:assistPanelReveal .38s cubic-bezier(.2,.8,.2,1) both!important}
.aiAssistPanel.is-thinking::before{content:"";position:absolute;inset:0;height:4px;background:linear-gradient(90deg,#f1d46c,#7ed8ff,#a387ff,#ff9ec4,#f1d46c);background-size:220% 100%;animation:assistFlow 1.2s linear infinite;opacity:.9}
.aiAssistTop b{color:#2d2e33!important;font-size:8.5px!important}.aiAssistStatus{color:#9b7b22!important}
.aiAssistSayLabel{color:#8e6b0e!important}.aiAssistSuggestion{font-size:16px!important;line-height:1.58!important;font-weight:820!important;background:#fff!important;border:1px solid rgba(34,34,38,.08)!important;border-left:3px solid #e7be47!important;box-shadow:0 8px 26px rgba(35,35,40,.05)!important}
.aiAssistAction.primary{background:linear-gradient(135deg,#17181d,#2c2e35)!important;box-shadow:0 12px 28px rgba(17,18,22,.16)!important}
@keyframes assistHaloSpin{to{transform:rotate(360deg)}}
@keyframes assistSheen{0%,68%{left:-34%;opacity:0}74%{opacity:.85}90%{left:118%;opacity:.15}100%{left:118%;opacity:0}}
@keyframes assistGlyphPulse{0%,100%{transform:scale(1);box-shadow:0 5px 16px rgba(59,56,40,.10),0 0 0 1px rgba(34,31,27,.08) inset}50%{transform:scale(1.055);box-shadow:0 8px 22px rgba(77,68,39,.14),0 0 22px rgba(120,210,255,.22)}}
@keyframes assistPanelReveal{from{opacity:0;transform:translateY(-5px) scale(.985);filter:blur(3px)}to{opacity:1;transform:none;filter:none}}
@keyframes assistFlow{to{background-position:220% 0}}
@media(max-width:430px){.aiAssistBtn{min-height:62px!important}.assistGlyph{width:39px;height:39px;flex-basis:39px}.aiAssistBtn .assistCopy small{font-size:12.5px!important}.aiAssistSuggestion{font-size:15px!important}}
@media(prefers-reduced-motion:reduce){.aiAssistBtn::before,.aiAssistBtn::after,.aiAssistPanel.is-thinking::before,.aiAssistBtn.is-thinking .assistGlyph{animation:none!important}}


/* =============================================================
   CAWASU UI SYSTEM v1 — Carbon-inspired foundation
   Carbon is used as a structural reference: spacing, hierarchy,
   neutral layers, focus states and action clarity. CAWASU keeps
   its own AV language and AI ASSIST beacon.
   ============================================================= */
:root{
  --c-bg:#f4f4f4;
  --c-layer:#ffffff;
  --c-layer-2:#f4f4f4;
  --c-layer-hover:#e8e8e8;
  --c-text:#161616;
  --c-text-2:#525252;
  --c-text-3:#6f6f6f;
  --c-border:#e0e0e0;
  --c-border-strong:#8d8d8d;
  --c-focus:#0f62fe;
  --c-action:#0f62fe;
  --c-action-hover:#0353e9;
  --c-danger:#da1e28;
  --c-success:#198038;
  --c-gold:#c99a18;
  --c-space-01:2px;--c-space-02:4px;--c-space-03:8px;--c-space-04:12px;
  --c-space-05:16px;--c-space-06:24px;--c-space-07:32px;--c-space-08:40px;
  --c-space-09:48px;--c-space-10:64px;
  --c-radius:2px;
}
html,body{background:var(--c-bg)!important;color:var(--c-text)!important;font-family:"IBM Plex Sans","Noto Sans JP","Hiragino Sans","Yu Gothic UI",system-ui,-apple-system,BlinkMacSystemFont,sans-serif!important}
body{letter-spacing:0!important}
button,textarea{font-family:inherit!important}
button:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--c-focus)!important;outline-offset:2px!important}
.shell{padding:24px!important;background:var(--c-bg)!important;align-items:flex-start!important}
.phone{width:min(100%,760px)!important;min-height:calc(100vh - 48px)!important;border-radius:0!important;background:var(--c-layer)!important;border:1px solid var(--c-border)!important;box-shadow:0 4px 18px rgba(0,0,0,.08)!important;color:var(--c-text)!important}
.phone:before,.scanlines,.threatVignette,.ambientField{opacity:0!important;pointer-events:none!important}
.topbar{height:56px!important;padding:0 24px!important;background:var(--c-layer)!important;border-bottom:1px solid var(--c-border)!important;color:var(--c-text)!important}
.brand{font-size:14px!important;font-weight:600!important;letter-spacing:.02em!important}.brand em{color:var(--c-text-3)!important;font-size:11px!important;font-style:normal!important;font-weight:400!important}
.brandMark{background:var(--c-text)!important;box-shadow:none!important}
.iconbtn{width:48px!important;height:48px!important;border-radius:0!important;background:transparent!important;color:var(--c-text)!important;backdrop-filter:none!important}.iconbtn:hover{background:var(--c-layer-hover)!important}
.progressTop{border:0!important;border-radius:0!important;background:var(--c-layer-2)!important;color:var(--c-text)!important;padding:8px 12px!important;font-weight:600!important}
.screen{padding:32px 32px 72px!important}

/* HOME / hierarchy */
.selectEyebrow{margin:0!important;color:var(--c-text-3)!important;font-size:11px!important;letter-spacing:.08em!important;font-weight:600!important}.selectEyebrow span{background:var(--c-action)!important}
.selectTitle{margin:16px 0 10px!important;color:var(--c-text)!important;font-size:clamp(40px,7vw,64px)!important;line-height:.98!important;letter-spacing:-.045em!important;font-weight:400!important}.selectTitle i{font-style:normal!important;font-weight:600!important;color:var(--c-text)!important}
.selectSub{max-width:620px!important;margin:0 0 32px!important;color:var(--c-text-2)!important;font-size:14px!important;line-height:1.65!important}
#selectScreen{display:grid!important;grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr)!important;column-gap:16px!important;align-items:start!important}
#selectScreen>.selectEyebrow,#selectScreen>.selectTitle,#selectScreen>.selectSub{grid-column:1/-1!important}
.modeSelector{grid-column:1!important;margin:0!important;border-top:1px solid var(--c-border)!important;padding-top:16px!important}
.modeSelectorLabel{color:var(--c-text-3)!important;font-size:11px!important;letter-spacing:.08em!important;margin-bottom:12px!important;font-weight:600!important}
.modeDial{height:188px!important;border-radius:0!important;background:var(--c-layer-2)!important;border:0!important;box-shadow:none!important;overflow:hidden!important}
.modeArc{width:330px!important;height:330px!important;left:-190px!important;top:-70px!important;border:1px solid #bdbdbd!important}.modeArc::after{background:var(--c-action)!important;box-shadow:0 0 0 6px rgba(15,98,254,.12)!important}
.modeChip{color:#8d8d8d!important}.modeChip .modeNo{font-size:18px!important;font-weight:400!important}.modeChip b{font-size:20px!important;font-weight:400!important;letter-spacing:-.02em!important}
.modeChip[data-play-mode="choice"]{left:54px!important;top:36px!important}.modeChip[data-play-mode="voice"]{left:150px!important;top:116px!important}
.modeChip.active{color:var(--c-text)!important;transform:scale(1.16)!important}.modeChip.active .modeNo{font-size:24px!important;font-weight:600!important}.modeChip.active b{font-size:28px!important;font-weight:600!important}.modeFocusDot{left:126px!important;top:90px!important;background:var(--c-action)!important;box-shadow:0 0 0 6px rgba(15,98,254,.10)!important}
.modeDetail{padding:12px 0 0!important;margin:0!important;border-bottom:1px solid var(--c-border)!important;padding-bottom:16px!important}.modeDetail b{font-size:14px!important;font-weight:600!important}.modeDetail span{font-size:13px!important;color:var(--c-text-2)!important}
.scenarioGrid{grid-column:2!important;gap:1px!important;background:var(--c-border)!important;border:1px solid var(--c-border)!important}
.scenarioCard{min-height:206px!important;border:0!important;border-radius:0!important;background:var(--c-layer)!important;box-shadow:none!important;transition:background .15s ease!important}.scenarioCard:hover{transform:none!important;background:#f8f8f8!important}.scenarioCopy{width:62%!important;padding:24px!important}.scenarioCard .kicker{font-size:11px!important;letter-spacing:.08em!important;color:var(--c-text-3)!important;font-weight:600!important}.scenarioName{font-size:38px!important;line-height:.96!important;letter-spacing:-.045em!important;margin-top:12px!important;font-weight:400!important}.scenarioMeta{margin-top:14px!important;font-size:13px!important;color:var(--c-text-2)!important}.scenarioMeta b{font-size:15px!important;color:var(--c-text)!important;font-weight:600!important}.scenarioMeta span{font-size:13px!important}.scenarioArrow{left:24px!important;bottom:20px!important;color:var(--c-action)!important;font-size:24px!important}.scenarioImg{width:50%!important;right:0!important;filter:grayscale(.12) contrast(1.04)!important;mix-blend-mode:normal!important;opacity:.82!important}.scenarioFade{background:linear-gradient(90deg,#fff 0 48%,rgba(255,255,255,.94) 59%,rgba(255,255,255,.12) 100%)!important}

/* PLAY / compact operational layout */
#playScreen{background:var(--c-layer)!important}.sceneWrap{max-width:680px!important;margin:0 auto!important}.hero{height:188px!important;border-radius:0!important;background:#e8e8e8!important;box-shadow:none!important;border:1px solid var(--c-border)!important}.heroTint{background:linear-gradient(180deg,rgba(0,0,0,.04),rgba(0,0,0,.18))!important}.heroGrain{opacity:.04!important}.sceneCount{left:16px!important;top:16px!important;transform:none!important;border-radius:0!important;background:rgba(22,22,22,.88)!important;border:0!important;padding:7px 10px!important;font-size:11px!important;font-weight:600!important}.contextChip{left:16px!important;bottom:16px!important;border-radius:0!important;background:rgba(255,255,255,.94)!important;color:var(--c-text-2)!important;box-shadow:none!important;border-left:3px solid var(--c-action)!important;padding:8px 10px!important}.aiHud{top:12px!important;right:12px!important}.aiHudLive{background:#161616!important;border-radius:0!important;border:0!important}.aiHudPressure{background:#fff!important;color:#161616!important;border-radius:0!important;border:1px solid var(--c-border)!important}.pressureRail{background:rgba(255,255,255,.45)!important}.pressureRail i{background:var(--c-danger)!important}
.speech{margin:0!important;border-radius:0!important;padding:20px 0 16px!important;background:var(--c-layer)!important;box-shadow:none!important;border-bottom:1px solid var(--c-border)!important}.speech:after{display:none!important}.speechHead{margin-bottom:8px!important}.customerTag{padding:0!important;border-radius:0!important;background:transparent!important;color:var(--c-text-3)!important;font-size:11px!important;letter-spacing:.04em!important}.replay{width:40px!important;height:40px!important;border-radius:0!important;background:var(--c-layer-2)!important;color:var(--c-text)!important}.replay:hover{background:var(--c-layer-hover)!important}.customerLine{font-size:clamp(20px,3.8vw,28px)!important;font-weight:500!important;line-height:1.42!important;margin:0!important;letter-spacing:-.025em!important}
.waveRow{height:72px!important;margin:0!important;border-bottom:1px solid var(--c-border)!important;background:#fff!important;overflow:hidden!important}.wave{height:64px!important}.wave span{width:2px!important;border-radius:0!important;background:linear-gradient(180deg,#0f62fe,#8a3ffc,#ff7eb6)!important;opacity:.64!important}.micOrb{width:42px!important;height:42px!important;border-radius:50%!important;background:rgba(255,255,255,.88)!important;border:1px solid var(--c-border)!important;color:var(--c-text)!important;box-shadow:0 0 28px rgba(15,98,254,.12)!important}.responseState{margin:20px 0 12px!important;text-align:left!important;color:var(--c-text)!important;font-size:16px!important;letter-spacing:0!important;font-weight:600!important;min-height:0!important}
.choices{gap:1px!important;background:var(--c-border)!important;border:1px solid var(--c-border)!important}.choice{grid-template-columns:40px 1fr 20px!important;gap:12px!important;min-height:64px!important;padding:12px 16px!important;border:0!important;border-radius:0!important;background:var(--c-layer)!important;box-shadow:none!important;transition:background .12s ease!important}.choice:hover{transform:none!important;background:var(--c-layer-2)!important;box-shadow:none!important}.badge{width:32px!important;height:32px!important;border-radius:0!important;background:#161616!important;color:#fff!important;font-size:12px!important}.choice:nth-child(2) .badge,.choice:nth-child(3) .badge{background:#161616!important}.ctitle{font-size:14px!important;font-weight:500!important;line-height:1.42!important}.cline{font-size:12px!important;color:var(--c-text-2)!important}.arrow{color:var(--c-action)!important;font-size:20px!important}.otherPanel{margin-top:1px!important;border-radius:0!important;padding:16px!important;background:var(--c-layer-2)!important;border:1px solid var(--c-border)!important;box-shadow:none!important}textarea{border-radius:0!important;border:1px solid var(--c-border-strong)!important;color:var(--c-text)!important;background:#fff!important;padding:12px!important}.softBtn{border-radius:0!important;background:#393939!important;color:#fff!important;font-weight:500!important}.softBtn.send{background:var(--c-action)!important}.softBtn.send:hover{background:var(--c-action-hover)!important}
.mood{margin-top:16px!important;border-radius:0!important;background:var(--c-layer-2)!important;border:0!important;border-left:3px solid #8d8d8d!important;padding:12px 16px!important;color:var(--c-text)!important;backdrop-filter:none!important}.moodFace{display:none!important}.moodLabel{color:var(--c-text-3)!important;font-size:10px!important;letter-spacing:.08em!important}.moodState{font-size:15px!important;font-weight:600!important}.moodHint{color:var(--c-text-2)!important;font-size:12px!important}

/* AI ASSIST — intentionally breaks the neutral system */
.aiAssistWrap{margin-top:16px!important}.aiAssistBtn{min-height:72px!important;border-radius:0!important;background:linear-gradient(100deg,#fffef9 0%,#fff 42%,#fff8dd 100%)!important;border:1px solid rgba(201,154,24,.55)!important;padding:14px 16px!important;box-shadow:0 0 0 1px rgba(255,255,255,.9) inset,0 10px 32px rgba(201,154,24,.12),0 0 28px rgba(15,98,254,.06)!important}.aiAssistBtn:hover{transform:none!important;border-color:#b28600!important;box-shadow:0 12px 38px rgba(201,154,24,.18),0 0 34px rgba(15,98,254,.10)!important}.assistGlyph{border-radius:50%!important;background:#fff!important}.aiAssistBtn .assistCopy b{font-size:12px!important;letter-spacing:.08em!important;color:#6f5200!important}.aiAssistBtn .assistCopy small{font-size:15px!important;font-weight:500!important;color:var(--c-text)!important}.assistArrow{color:#8e6b0e!important}.aiAssistPanel{border-radius:0!important;background:#fff!important;border:1px solid var(--c-border)!important;border-top:3px solid var(--c-gold)!important;box-shadow:none!important;padding:16px!important}.aiAssistSuggestion{border-radius:0!important}.aiAssistActions{gap:1px!important}.aiAssistAction{border-radius:0!important}.aiAssistAction.primary{background:var(--c-action)!important;box-shadow:none!important}.aiAssistAction.primary:hover{background:var(--c-action-hover)!important}

/* RESULT / scan-first hierarchy */
#reviewScreen{background:var(--c-layer)!important}.resultPoster{border-radius:0!important;background:#fff!important;border:1px solid var(--c-border)!important;box-shadow:none!important}.resultPosterTop{border-bottom:1px solid var(--c-border)!important}.resultPosterBrand{color:var(--c-text-3)!important}.resultPosterBrand b{color:var(--c-text)!important}.reflexStage{padding:32px!important}.reflexStageLabel{font-size:11px!important;color:var(--c-text-3)!important;letter-spacing:.08em!important}.resultReflexType{font-size:clamp(44px,9vw,72px)!important;font-weight:400!important;letter-spacing:-.05em!important;color:var(--c-text)!important}.resultMirrorLine{font-size:17px!important;max-width:520px!important;color:var(--c-text-2)!important}.resultTelemetry{border-top:1px solid var(--c-border)!important;padding:24px 32px!important}.resultTelemetryCaption{font-size:11px!important;color:var(--c-text-3)!important}.resultTelemetryRow{gap:1px!important;background:var(--c-border)!important;border:1px solid var(--c-border)!important}.resultTelemetryItem{border:0!important;border-radius:0!important;background:#fff!important;padding:18px!important}.resultTelemetryItem small{color:var(--c-text-3)!important;font-size:11px!important}.resultTelemetryItem strong{font-size:clamp(44px,9vw,68px)!important;font-weight:400!important;color:var(--c-text)!important}.resultPosterFoot{border-top:1px solid var(--c-border)!important;color:var(--c-text-3)!important}
.resultFlow{gap:16px!important}.resultFlowPanel{border-radius:0!important;border:1px solid var(--c-border)!important;background:#fff!important;box-shadow:none!important}.flowEyebrow{color:var(--c-text-3)!important}.flowTitle{color:var(--c-text)!important}.nextPlayCTA,.retry{border-radius:0!important;background:var(--c-action)!important;color:#fff!important}.back{border-radius:0!important;background:#393939!important;color:#fff!important}.reviewDetails{border-radius:0!important;border:1px solid var(--c-border)!important;background:#fff!important}.reviewCard{border-radius:0!important;background:var(--c-layer-2)!important;border:0!important}

/* Sheets / permissions / system surfaces */
.sheet{background:rgba(22,22,22,.44)!important;backdrop-filter:blur(2px)!important}.sheetCard{border-radius:0!important;background:#fff!important;color:var(--c-text)!important}.sheetCard button{border-radius:0!important}.micGateTitle,.sheetTitle{color:var(--c-text)!important}.micGateCopy,.sheetCopy{color:var(--c-text-2)!important}

@media(max-width:720px){
  .shell{padding:0!important}.phone{width:100%!important;min-height:100svh!important;border:0!important;box-shadow:none!important}.topbar{padding:0 16px!important}.screen{padding:24px 16px 64px!important}
  #selectScreen{display:block!important}.selectTitle{font-size:44px!important;margin-top:14px!important}.selectSub{margin-bottom:24px!important}.modeSelector{margin-bottom:24px!important}.modeDial{height:150px!important}.modeArc{width:270px!important;height:270px!important;left:-158px!important;top:-61px!important}.modeChip[data-play-mode="choice"]{left:48px!important;top:28px!important}.modeChip[data-play-mode="voice"]{left:122px!important;top:90px!important}.modeFocusDot{left:105px!important;top:72px!important}.scenarioGrid{display:grid!important;grid-template-columns:1fr!important}.scenarioCard{min-height:174px!important}.scenarioName{font-size:32px!important}.scenarioCopy{padding:20px!important}.hero{height:164px!important}.customerLine{font-size:21px!important}.resultTelemetryRow{grid-template-columns:repeat(3,1fr)!important}.resultTelemetryItem{padding:14px 10px!important}.resultTelemetryItem strong{font-size:38px!important}
}
@media(max-width:390px){.selectTitle{font-size:38px!important}.modeChip.active b{font-size:24px!important}.scenarioName{font-size:29px!important}.customerLine{font-size:19px!important}.screen{padding-left:14px!important;padding-right:14px!important}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}.scenarioCard,.choice,.iconbtn,.aiAssistBtn{transition:none!important}}


/* =========================================================
   V5.7 — REFERENCE UI INTEGRATION
   Carbon discipline + tactile switch + WOVE arc +
   Common Voice AV + iridescent AI beacon.
   ========================================================= */
:root{
  --cawasu-blue:#0f62fe;
  --cawasu-cyan:#78d5f5;
  --cawasu-pink:#f67b8b;
  --cawasu-violet:#7667c9;
  --cawasu-paper:#fbfbfa;
  --cawasu-ink:#161616;
  --cawasu-line:#dedede;
}
html,body,.shell,.phone{background:var(--cawasu-paper)!important}
.phone{max-width:1180px!important;width:min(calc(100% - 40px),1180px)!important;border-radius:0!important;min-height:calc(100vh - 40px)!important;box-shadow:0 18px 60px rgba(22,22,22,.08)!important}
.topbar{background:rgba(251,251,250,.92)!important;border-bottom:1px solid #e6e6e6!important;color:#161616!important}
.brand{color:#161616!important}.brandMark{background:#161616!important;box-shadow:none!important}.brand em{color:#8d8d8d!important}
.screen{max-width:none!important}

/* HOME — tactile object, not a pair of SaaS buttons */
.modeSelector{display:grid!important;grid-template-columns:minmax(300px,520px) 1fr!important;column-gap:32px!important;align-items:center!important;margin:32px 0 56px!important}
.modeSelectorLabel{grid-column:1/-1!important;margin-bottom:14px!important;color:#6f6f6f!important}
.modeDial{
  width:min(100%,520px)!important;height:154px!important;border-radius:78px!important;overflow:visible!important;
  position:relative!important;padding:10px!important;background:linear-gradient(145deg,#dfe3e5,#f3f5f6)!important;
  border:1px solid rgba(22,22,22,.12)!important;
  box-shadow:inset 0 2px 4px rgba(255,255,255,.9),inset 0 -5px 10px rgba(50,60,68,.13),0 14px 28px rgba(22,22,22,.09)!important;
}
.modeDial::before{
  content:"";position:absolute;z-index:1;left:14px;top:14px;width:calc(50% - 18px);height:calc(100% - 28px);border-radius:999px;
  background:linear-gradient(145deg,#fff,#f2f2f0);box-shadow:0 10px 20px rgba(22,22,22,.16),inset 0 1px 1px rgba(255,255,255,1);
  transition:transform .46s cubic-bezier(.2,.9,.2,1),box-shadow .35s ease;
}
.modeDial.voice-active::before{transform:translateX(calc(100% + 8px));box-shadow:0 12px 22px rgba(15,98,254,.16),inset 0 1px 1px rgba(255,255,255,1)}
.modeDial::after{
  content:"";position:absolute;z-index:0;right:16px;top:16px;width:calc(50% - 20px);height:calc(100% - 32px);border-radius:999px;
  background:radial-gradient(circle at 50% 42%,#1688d6 0,#0877c2 64%,#0465aa 100%);box-shadow:inset 0 4px 9px rgba(0,0,0,.12);
}
.modeDial.voice-active::after{right:auto;left:16px}
.modeArc,.modeFocusDot{display:none!important}
.modeChip,.modeChip[data-play-mode="choice"],.modeChip[data-play-mode="voice"]{
  z-index:3!important;top:0!important;bottom:0!important;width:50%!important;height:100%!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:9px!important;
  color:#707070!important;transform:none!important;opacity:1!important;position:absolute!important;cursor:pointer!important;
}
.modeChip[data-play-mode="choice"]{left:0!important}.modeChip[data-play-mode="voice"]{left:50%!important}
.modeChip.active{color:#111!important;transform:none!important}.modeChip:not(.active){color:#fff!important;text-shadow:0 1px 5px rgba(0,45,83,.18)}
.modeChip .modeNo{font-size:12px!important;letter-spacing:.08em!important;opacity:.62}.modeChip b{font-size:19px!important;letter-spacing:.02em!important;font-weight:600!important}
.modeDetail{border:0!important;padding:0!important;margin:0!important;align-self:center!important;display:block!important}
.modeDetail b{display:block!important;font-size:clamp(32px,4vw,54px)!important;font-weight:400!important;letter-spacing:-.055em!important;line-height:.96!important}.modeDetail span{display:block!important;margin-top:13px!important;font-size:16px!important;color:#6f6f6f!important}

/* Scenario selection — WOVE-like arc/navigation DNA without sacrificing usability */
.scenarioGrid{position:relative!important;display:grid!important;grid-template-columns:1fr 1fr!important;gap:1px!important;background:#dedede!important;padding-left:82px!important;overflow:visible!important}
.scenarioGrid::before{content:"";position:absolute;left:-190px;top:-100px;width:330px;height:520px;border:1px solid #cfcfcf;border-radius:50%;pointer-events:none;background:transparent}
.scenarioCard{min-height:310px!important;overflow:hidden!important;background:#fff!important;position:relative!important}
.scenarioCard .kicker{position:absolute!important;left:-63px!important;top:50%!important;transform:translateY(-50%) rotate(-18deg)!important;font-size:42px!important;color:#b8b8b8!important;letter-spacing:-.08em!important;font-weight:500!important;z-index:5!important}
.scenarioCard:first-child .kicker{color:#262626!important}.scenarioCard:first-child::before,.scenarioCard:last-child::before{content:"";position:absolute;left:-85px;top:50%;width:8px;height:8px;border-radius:50%;background:#222;transform:translateY(-50%);z-index:6}
.scenarioCard:last-child::before{background:#bdbdbd}
.scenarioCopy{padding:32px!important}.scenarioName{font-size:clamp(42px,5vw,66px)!important;font-weight:400!important}.scenarioMeta{margin-top:20px!important;max-width:260px!important}.scenarioImg{width:56%!important;opacity:.72!important}.scenarioArrow{left:32px!important;bottom:30px!important}

/* PLAY — Common Voice inspired visual field */
#playScreen .sceneWrap{display:grid!important;grid-template-columns:minmax(0,1.05fr) minmax(340px,.95fr)!important;gap:24px!important;align-items:start!important}
#playScreen .hero{grid-column:1!important;grid-row:1!important;height:250px!important}
#playScreen .speech{grid-column:1!important;grid-row:2!important;margin:-54px 28px 0!important;z-index:8!important}
#playScreen .waveRow{grid-column:1!important;grid-row:3!important;height:190px!important;margin:0!important;position:relative!important;overflow:hidden!important;background:#fff!important;border:1px solid #e8e8e8!important;isolation:isolate!important}
.voiceShape{position:absolute;left:50%;top:50%;width:48%;height:58%;border-radius:45% 55% 50% 50% / 55% 45% 55% 45%;transform:translate(-50%,-50%);filter:saturate(.9);opacity:.75;mix-blend-mode:multiply;animation:voiceFloat 5.5s ease-in-out infinite alternate}
.voiceShapeA{background:rgba(246,123,139,.72);left:45%;transform:translate(-50%,-50%) rotate(-7deg)}
.voiceShapeB{background:rgba(120,213,245,.78);left:58%;transform:translate(-50%,-50%) rotate(8deg);animation-delay:-1.8s}
.voiceShapeC{background:rgba(118,103,201,.52);left:51%;width:55%;height:45%;transform:translate(-50%,-50%) rotate(3deg);animation-delay:-3.1s}
.voiceDotField{position:absolute;right:8%;top:18%;width:28%;height:64%;opacity:.38;background-image:radial-gradient(circle,#44526a 1px,transparent 1.3px);background-size:14px 14px;mask-image:linear-gradient(90deg,#000,transparent);-webkit-mask-image:linear-gradient(90deg,#000,transparent)}
.wave{position:absolute!important;z-index:4!important;left:14%!important;right:14%!important;top:50%!important;transform:translateY(-50%)!important;height:110px!important;display:flex!important;justify-content:space-between!important;align-items:center!important;gap:3px!important}
.wave span{width:3px!important;height:var(--h,20px)!important;background:#18306d!important;border-radius:0!important;opacity:.94!important;box-shadow:none!important}
.wave.active span{animation:commonVoiceWave .62s ease-in-out infinite alternate!important;animation-delay:var(--d,0s)!important}
.micOrb{z-index:5!important;width:48px!important;height:48px!important;left:50%!important;top:50%!important;transform:translate(-50%,-50%)!important;background:rgba(255,255,255,.86)!important;color:#1b2e62!important;border:1px solid rgba(24,48,109,.22)!important;box-shadow:0 8px 26px rgba(22,22,22,.12)!important}
#playScreen .turnState{grid-column:2!important;grid-row:1!important;margin:0!important;padding:20px 0 16px!important;text-align:left!important;font-size:clamp(24px,3vw,38px)!important;letter-spacing:-.04em!important;font-weight:400!important;color:#161616!important;border-bottom:1px solid #dedede!important;min-height:auto!important}
#playScreen .choices{grid-column:2!important;grid-row:2 / span 2!important;gap:1px!important;background:#dedede!important;border:1px solid #dedede!important;align-self:start!important}
#playScreen .choice{border:0!important;border-radius:0!important;box-shadow:none!important;min-height:86px!important;padding:16px!important}.choice:hover{transform:none!important;background:#f4f4f4!important}.badge{border-radius:50%!important;background:#f4f4f4!important;color:#525252!important}
#playScreen .aiAssistWrap{grid-column:2!important;grid-row:4!important;margin-top:0!important}
#playScreen .repairBar,#playScreen .otherPanel,#playScreen .mood{grid-column:2!important}

/* AI ASSIST — pearlescent / gold edge, one intentionally magical object */
.aiAssistBtn{
  position:relative!important;overflow:hidden!important;min-height:86px!important;border-radius:999px!important;border:0!important;padding:2px!important;
  background:conic-gradient(from var(--assist-angle,0deg),#233456,#fff2b8,#ff8fa3,#7dd7ff,#9f8aff,#f5c550,#233456)!important;
  box-shadow:0 18px 40px rgba(22,22,22,.12),0 0 32px rgba(102,161,255,.10)!important;
}
.aiAssistBtn::before{content:"";position:absolute;inset:2px;border-radius:inherit;background:rgba(255,255,255,.96);z-index:0}
.aiAssistBtn::after{content:"";position:absolute;inset:-80% -25%;background:linear-gradient(105deg,transparent 42%,rgba(255,255,255,.9) 49%,transparent 56%);transform:translateX(-38%);animation:assistSheen 6s ease-in-out infinite;z-index:1;pointer-events:none}
.aiAssistBtn>*{position:relative;z-index:2}.assistMain{padding-left:18px!important}.assistGlyph{width:42px!important;height:42px!important;border:1px solid rgba(46,70,110,.18)!important;background:radial-gradient(circle at 35% 30%,#fff,#f1f4f8)!important;box-shadow:inset 0 1px 0 #fff,0 5px 12px rgba(22,22,22,.08)!important}.aiAssistBtn .assistCopy b{font-size:15px!important;color:#242424!important;letter-spacing:.02em!important}.aiAssistBtn .assistCopy small{font-size:13px!important;color:#5d5d5d!important}.assistArrow{padding-right:20px!important;color:#424242!important}.aiAssistBtn.is-thinking{animation:assistThink 1.8s ease-in-out infinite!important}.aiAssistPanel{margin-top:8px!important;border-top:0!important;border-radius:28px!important;box-shadow:0 18px 42px rgba(22,22,22,.10)!important;overflow:hidden!important;position:relative!important}.aiAssistPanel::before{content:"";position:absolute;left:0;right:0;top:0;height:4px;background:linear-gradient(90deg,#f2c04e,#79d4f4,#9e8af8,#ef8095,#f2c04e);background-size:220% 100%;animation:assistFlow 3.2s linear infinite}

/* RESULT keeps Carbon's scan-first discipline */
#reviewScreen .resultPoster{max-width:900px!important;margin:0 auto!important}

@keyframes voiceFloat{0%{transform:translate(-50%,-50%) scale(.94) rotate(-4deg)}100%{transform:translate(-50%,-50%) scale(1.08) rotate(6deg)}}
@keyframes commonVoiceWave{0%{transform:scaleY(.35);opacity:.6}100%{transform:scaleY(1.15);opacity:1}}
@keyframes assistSheen{0%,62%{transform:translateX(-52%)}82%,100%{transform:translateX(52%)}}
@keyframes assistFlow{to{background-position:220% 0}}
@keyframes assistThink{50%{filter:brightness(1.05);box-shadow:0 20px 48px rgba(22,22,22,.15),0 0 42px rgba(102,161,255,.18)!important}}

@media(max-width:820px){
  .phone{width:100%!important;min-height:100svh!important}.modeSelector{grid-template-columns:1fr!important;gap:18px!important;margin-bottom:44px!important}.modeDial{height:126px!important}.modeDetail{display:flex!important;gap:12px!important;align-items:baseline!important}.modeDetail b{font-size:24px!important}.modeDetail span{margin-top:0!important;font-size:13px!important}
  .scenarioGrid{grid-template-columns:1fr!important;padding-left:58px!important}.scenarioGrid::before{left:-220px!important}.scenarioCard{min-height:220px!important}.scenarioCard .kicker{left:-47px!important;font-size:30px!important}.scenarioCard:first-child::before,.scenarioCard:last-child::before{left:-62px!important}.scenarioName{font-size:40px!important}.scenarioCopy{padding:24px!important}
  #playScreen .sceneWrap{display:block!important}.hero{height:180px!important}#playScreen .speech{margin:-32px 14px 0!important}#playScreen .waveRow{height:130px!important;margin-top:12px!important}#playScreen .turnState{margin-top:16px!important;padding:14px 0!important;font-size:24px!important}.choices{margin-top:0!important}.aiAssistWrap{margin-top:16px!important}
}
@media(max-width:430px){
  .modeDial{height:112px!important}.modeChip b{font-size:16px!important}.modeChip .modeNo{font-size:10px!important}.scenarioGrid{padding-left:44px!important}.scenarioCard .kicker{left:-39px!important}.scenarioCard:first-child::before,.scenarioCard:last-child::before{left:-48px!important}.scenarioCard{min-height:200px!important}.scenarioName{font-size:34px!important}.scenarioImg{width:58%!important}.waveRow{height:118px!important}.voiceDotField{display:none!important}.aiAssistBtn{min-height:78px!important}
}
@media(prefers-reduced-motion:reduce){.voiceShape,.aiAssistBtn::after,.aiAssistPanel::before{animation:none!important}.aiAssistBtn.is-thinking{animation:none!important}}


/* =========================================================
   CAWASU UI REFINE — Claude component reference integration
   Source ideas adapted, not copied as a dark-theme component sheet.
   ========================================================= */
@property --cawasu-iris-angle {
  syntax: '<angle>';
  initial-value: 0deg;
  inherits: false;
}
:root{
  --iris-1:#2847d8;
  --iris-2:#b44bdb;
  --iris-3:#ef7184;
  --iris-4:#f1c96a;
  --iris-5:#64cfd0;
}

/* SELECT / VOICE — soft 3D switch, white object on a recessed blue track */
.modeDial{
  background:#e5e8eb!important;
  border:0!important;
  box-shadow:
    inset 5px 5px 11px rgba(156,163,170,.52),
    inset -5px -5px 11px rgba(255,255,255,.94),
    0 12px 30px rgba(36,42,48,.07)!important;
}
.modeDial::before{
  background:linear-gradient(145deg,#ffffff,#eceff1)!important;
  box-shadow:
    7px 8px 18px rgba(149,156,163,.42),
    -4px -4px 12px rgba(255,255,255,.98),
    inset 0 1px 1px rgba(255,255,255,1)!important;
}
.modeDial::after{
  background:radial-gradient(circle at 38% 32%,#35a3ed 0,#1289da 48%,#0472be 100%)!important;
  box-shadow:inset 3px 4px 8px rgba(0,61,108,.18),inset -2px -2px 6px rgba(255,255,255,.18)!important;
}
.modeChip{transition:color .3s ease,opacity .3s ease!important}
.modeChip:not(.active){opacity:.93!important}

/* AI ASSIST — true iridescent edge only, keeping the interior calm and white */
.aiAssistBtn{
  padding:3px!important;
  background:transparent!important;
  isolation:isolate!important;
  box-shadow:0 18px 42px rgba(28,31,36,.10),0 0 26px rgba(105,176,255,.08)!important;
}
.aiAssistBtn::before{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  z-index:0!important;
  border-radius:inherit!important;
  padding:2px!important;
  background:conic-gradient(from var(--cawasu-iris-angle),var(--iris-1),var(--iris-2),var(--iris-3),var(--iris-4),var(--iris-5),var(--iris-1))!important;
  -webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0)!important;
  -webkit-mask-composite:xor!important;
  mask-composite:exclude!important;
  animation:cawasuIrisSpin 6.5s linear infinite!important;
  opacity:.86!important;
  pointer-events:none!important;
}
.aiAssistBtn::after{
  content:""!important;
  position:absolute!important;
  inset:3px!important;
  z-index:0!important;
  border-radius:inherit!important;
  background:
    linear-gradient(108deg,transparent 30%,rgba(255,255,255,.95) 46%,rgba(248,238,196,.35) 51%,transparent 63%),
    #fff!important;
  background-size:220% 100%!important;
  background-position:-120% 0!important;
  animation:cawasuAssistSheen 5.8s cubic-bezier(.45,0,.25,1) infinite!important;
  pointer-events:none!important;
}
.aiAssistBtn>*{position:relative!important;z-index:2!important}
.aiAssistBtn:hover{box-shadow:0 20px 50px rgba(28,31,36,.13),0 0 34px rgba(112,191,255,.13)!important}
.aiAssistBtn.is-thinking::before{animation-duration:1.9s!important;opacity:1!important}
.aiAssistBtn.is-thinking::after{animation-duration:1.45s!important}
.aiAssistBtn.is-thinking .assistGlyph{animation:cawasuGlyphBreathe 1.1s ease-in-out infinite!important}

/* AI response panel — aurora forms gather while thinking rather than a generic spinner */
.aiAssistPanel{isolation:isolate!important}
.aiAssistPanel.is-thinking{min-height:154px!important;overflow:hidden!important;background:rgba(255,255,255,.96)!important}
.aiAssistPanel.is-thinking::before{
  content:""!important;
  position:absolute!important;
  inset:-70%!important;
  height:auto!important;
  z-index:0!important;
  border-radius:50%!important;
  background:conic-gradient(from var(--cawasu-iris-angle),rgba(40,71,216,.80),rgba(180,75,219,.64),rgba(239,113,132,.66),rgba(241,201,106,.60),rgba(100,207,208,.68),rgba(40,71,216,.80))!important;
  filter:blur(38px)!important;
  opacity:.22!important;
  animation:cawasuAuroraTurn 5.2s linear infinite!important;
}
.aiAssistPanel.is-thinking::after{
  content:"";
  position:absolute;inset:10px;z-index:0;border-radius:22px;
  background:rgba(255,255,255,.72);backdrop-filter:blur(14px);pointer-events:none;
}
.aiAssistPanel.is-thinking .aiAssistTop,
.aiAssistPanel.is-thinking #aiAssistBody,
.aiAssistPanel.is-thinking .aiAssistActions{position:relative;z-index:2}
.aiAssistPanel.is-thinking .aiAssistThinking{
  display:flex!important;align-items:center!important;justify-content:center!important;
  min-height:74px!important;font-size:15px!important;font-weight:600!important;color:#34363a!important;
  letter-spacing:-.01em!important;
}
.aiAssistPanel.is-thinking .aiAssistThinking i{
  width:9px!important;height:9px!important;border-radius:50%!important;margin-right:10px!important;
  background:#fff!important;border:1px solid rgba(40,71,216,.28)!important;
  box-shadow:0 0 0 6px rgba(72,129,255,.08),0 0 24px rgba(139,106,255,.24)!important;
  animation:cawasuThinkingDot 1.2s ease-in-out infinite!important;
}

/* Common Voice field — softer layers, less dashboard-like */
#playScreen .waveRow{
  background:linear-gradient(180deg,#fff,#fbfbfa)!important;
  box-shadow:inset 0 0 0 1px rgba(22,22,22,.015)!important;
}
.voiceShape{filter:saturate(.86) blur(.15px)!important;mix-blend-mode:multiply!important}
.voiceShapeA{background:rgba(244,116,133,.66)!important}
.voiceShapeB{background:rgba(104,196,238,.72)!important}
.voiceShapeC{background:rgba(111,93,190,.43)!important}
.wave span{background:#163173!important;opacity:.9!important}

@keyframes cawasuIrisSpin{to{--cawasu-iris-angle:360deg}}
@keyframes cawasuAssistSheen{0%,66%{background-position:-120% 0}86%,100%{background-position:150% 0}}
@keyframes cawasuAuroraTurn{to{transform:rotate(360deg)}}
@keyframes cawasuGlyphBreathe{0%,100%{transform:scale(1)}50%{transform:scale(1.06);box-shadow:0 6px 18px rgba(30,45,65,.10),0 0 24px rgba(112,191,255,.18)!important}}
@keyframes cawasuThinkingDot{0%,100%{transform:scale(.82);opacity:.55}50%{transform:scale(1.12);opacity:1}}

@media(max-width:430px){
  .aiAssistPanel.is-thinking{min-height:138px!important}
  .aiAssistPanel.is-thinking .aiAssistThinking{min-height:62px!important;font-size:14px!important}
}
@media(prefers-reduced-motion:reduce){
  .aiAssistBtn::before,.aiAssistBtn::after,.aiAssistBtn.is-thinking .assistGlyph,
  .aiAssistPanel.is-thinking::before,.aiAssistPanel.is-thinking .aiAssistThinking i{animation:none!important}
}



/* =========================================================
   CAWASU SCENARIO SWITCH — WOVE-inspired spatial transition
   Two hospitality scenes move along one circular guide while
   the photographic world crossfades / resolves behind them.
   ========================================================= */
.scenarioGrid{
  display:block!important;padding:0!important;background:transparent!important;border:0!important;
  overflow:hidden!important;position:relative!important;min-height:clamp(430px,52vw,620px)!important;
}
.scenarioGrid::before{display:none!important}
.scenarioStage{
  --scene-ink:#202124;--scene-soft:#777a80;--scene-line:rgba(27,28,31,.16);
  position:relative;min-height:clamp(430px,52vw,620px);overflow:hidden;background:#efefec;
  border:1px solid #dededb;isolation:isolate;
}
.scenarioBg{position:absolute;inset:-7%;z-index:0;opacity:0;transform:scale(1.16);filter:blur(18px) saturate(.82);transition:opacity .7s cubic-bezier(.16,1,.3,1),transform .7s cubic-bezier(.16,1,.3,1),filter .7s cubic-bezier(.16,1,.3,1)}
.scenarioBg::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(249,249,247,.96) 0%,rgba(249,249,247,.78) 36%,rgba(249,249,247,.22) 72%,rgba(249,249,247,.08) 100%)}
.scenarioBg img{width:100%;height:100%;object-fit:cover;object-position:center;display:block}
.scenarioBg.is-active{opacity:1;transform:scale(1);filter:blur(0) saturate(.9)}
.scenarioStage[data-scene="restaurant"] .scenarioBg::after{background:linear-gradient(90deg,rgba(19,22,29,.90) 0%,rgba(19,22,29,.68) 36%,rgba(19,22,29,.20) 72%,rgba(19,22,29,.08) 100%)}
.scenarioStage[data-scene="restaurant"]{--scene-ink:#f7f7f4;--scene-soft:rgba(247,247,244,.66);--scene-line:rgba(255,255,255,.28)}
.scenarioStage::after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(255,255,255,.12),rgba(255,255,255,.28));pointer-events:none;transition:background .55s ease}
.scenarioStage[data-scene="restaurant"]::after{background:linear-gradient(180deg,rgba(8,10,15,.08),rgba(8,10,15,.24))}
.sceneArc{position:absolute;z-index:2;border:1px solid var(--scene-line);border-radius:50%;pointer-events:none;transition:border-color .45s ease}
.scenePuck{position:absolute;left:0;top:0;z-index:4;color:var(--scene-ink)}
.scenePuckDot{position:absolute;left:0;top:0;width:10px;height:10px;margin:-5px 0 0 -5px;border:0;border-radius:50%;background:rgba(120,120,120,.48);padding:0;cursor:pointer;transition:background .4s ease,box-shadow .4s ease}
.scenePuck.is-active .scenePuckDot{background:var(--scene-ink);box-shadow:0 0 0 5px rgba(255,255,255,.16)}
.scenePuckGhost{position:absolute;left:0;top:0;font-size:clamp(27px,4vw,48px);font-weight:500;letter-spacing:-.07em;color:var(--scene-soft);white-space:nowrap;cursor:pointer;user-select:none}
.scenePuckContent{position:absolute;left:0;top:0;display:flex;align-items:flex-start;gap:18px;white-space:nowrap;color:var(--scene-ink);cursor:pointer;transform-origin:left center}
.scenePuckNum{font-size:clamp(68px,9vw,112px);font-weight:400;letter-spacing:-.085em;line-height:.82}
.scenePuckCopy{white-space:normal;width:min(33vw,300px);padding-top:3px}
.scenePuckTag{font-size:clamp(28px,4.2vw,54px);font-weight:400;letter-spacing:-.055em;line-height:.94;margin:0}
.scenePuckJa{font-size:14px;font-weight:600;margin:14px 0 0}
.scenePuckDesc{font-size:13px;line-height:1.55;color:var(--scene-soft);margin:5px 0 0;max-width:260px}
.scenePuckStart{display:inline-flex;align-items:center;gap:12px;margin-top:22px;font-size:11px;letter-spacing:.12em;font-weight:600;text-transform:uppercase;border-bottom:1px solid currentColor;padding-bottom:5px}
.scenePuckStart i{font-style:normal;font-size:17px;line-height:1}
.sceneStageHint{position:absolute;z-index:5;right:24px;bottom:22px;color:var(--scene-soft);font-size:11px;letter-spacing:.08em;transition:color .45s ease}
.sceneStageTitle{position:absolute;z-index:5;left:24px;top:22px;color:var(--scene-soft);font-size:11px;letter-spacing:.14em;font-weight:600;transition:color .45s ease}
.scenarioStage.is-switching .scenarioBg.is-active{filter:blur(1px) saturate(.92)}
@media(max-width:820px){
  .scenarioGrid,.scenarioStage{min-height:520px!important}
  .scenePuckContent{gap:12px}.scenePuckCopy{width:210px}.scenePuckNum{font-size:68px}.scenePuckTag{font-size:34px}.scenePuckDesc{font-size:12px}.scenePuckStart{margin-top:17px}
}
@media(max-width:430px){
  .scenarioGrid,.scenarioStage{min-height:470px!important}
  .sceneStageTitle{left:18px;top:18px}.sceneStageHint{right:18px;bottom:18px}
  .scenePuckCopy{width:175px}.scenePuckNum{font-size:58px}.scenePuckTag{font-size:30px}.scenePuckJa{margin-top:10px;font-size:12px}.scenePuckDesc{font-size:11px;line-height:1.45}.scenePuckStart{font-size:10px;margin-top:14px}
}
@media(prefers-reduced-motion:reduce){.scenarioBg{transition:none!important}.scenePuckGhost,.scenePuckContent,.scenePuckDot{transition:none!important}}

/* Integration shell: WOVE owns the viewport while HOME is active. */
body.wove-home-active{overflow:hidden!important}

/* CAWASU LIVE / instrument surface */
#phone[data-screen="play"]{max-width:430px!important;background:#f2f0eb!important;color:#171918!important;box-shadow:0 26px 70px rgba(34,36,33,.18)!important}
#phone[data-screen="play"]>.topbar{display:none!important}
#playScreen.liveInstrument{min-height:100svh!important;padding:0 0 calc(92px + var(--safe-bottom))!important;background:
  radial-gradient(circle at 4% 44%,rgba(64,215,183,.10),transparent 30%),
  linear-gradient(180deg,#f7f5f0 0%,#efede7 100%)!important;color:#171918!important;overflow-x:hidden}
#playScreen .sceneWrap{width:100%!important;max-width:none!important;margin:0!important;padding:0 20px 24px!important;display:flex!important;flex-direction:column!important;gap:0!important}
.liveChrome{height:78px;display:grid;grid-template-columns:40px 1fr auto;align-items:center;border-bottom:1px solid rgba(20,24,22,.11);position:relative;z-index:8}
.liveBack{width:36px;height:36px;border:0;background:transparent;color:#171918;font-size:24px;line-height:1;cursor:pointer;text-align:left;padding:0}
.liveBrand{font-size:14px;font-weight:800;letter-spacing:.16em}.liveBrand small{font-size:7px;font-weight:600;letter-spacing:.18em;color:#737773;margin-left:7px}
.liveMeta{text-align:right;font:700 8px/1.35 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.14em;color:#777b77}.liveMeta b{display:block;margin-top:3px;font-size:11px;color:#202321}.liveMeta i{display:inline-block;width:6px;height:6px;border-radius:50%;background:#35d8b6;margin-left:6px;box-shadow:0 0 0 4px rgba(53,216,182,.09)}
#playScreen .speech{order:1!important;margin:22px 0 0!important;padding:0 0 20px!important;border:0!important;border-bottom:1px solid rgba(20,24,22,.12)!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;color:#171918!important;transform:none!important}
#playScreen .speech:after{display:none!important}
#playScreen .speechHead{margin-bottom:11px}.customerTag{padding:0!important;background:none!important;color:#676c68!important;font:700 8px/1.2 ui-monospace,SFMono-Regular,Menlo,monospace!important;letter-spacing:.15em!important}.customerTag i{background:#35d8b6!important;box-shadow:0 0 0 4px rgba(53,216,182,.09)}
#playScreen .customerLine{font-family:"Yu Mincho","Hiragino Mincho ProN",serif!important;font-size:clamp(21px,6vw,27px)!important;line-height:1.55!important;letter-spacing:-.035em!important;font-weight:400!important;color:#111311!important}
#playScreen .replay{border:0!important;background:transparent!important;color:#5f6560!important;font-size:14px!important}
#playScreen .hero{order:2!important;width:auto!important;align-self:stretch!important;grid-column:auto!important;height:190px!important;margin:10px -20px 0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;overflow:hidden!important;position:relative!important}
#playScreen .heroImg,#playScreen .heroTint,#playScreen .heroGrain{display:none!important}
#playScreen .hero:before,#playScreen .hero:after{content:""!important;display:block!important;position:absolute!important;border-radius:50%!important;pointer-events:none!important}
#playScreen .hero:before{width:330px!important;height:330px!important;left:-154px!important;top:-66px!important;inset:auto!important;border:1px solid rgba(24,31,28,.18)!important;background:repeating-conic-gradient(from -18deg,rgba(53,216,182,.62) 0 1deg,transparent 1deg 5deg)!important;-webkit-mask:radial-gradient(circle,transparent 0 57%,#000 57.5% 59%,transparent 59.5%)!important;mask:radial-gradient(circle,transparent 0 57%,#000 57.5% 59%,transparent 59.5%)!important;animation:liveDial 22s linear infinite!important}
#playScreen .hero:after{width:240px!important;height:240px!important;left:-109px!important;top:-21px!important;inset:auto!important;border:1px dashed rgba(30,40,36,.22)!important;box-shadow:0 0 0 34px rgba(53,216,182,.025),0 0 0 68px rgba(20,25,23,.025)!important}
@keyframes liveDial{to{transform:rotate(360deg)}}
#playScreen .aiHud{position:absolute!important;inset:0!important;display:block!important;padding:0!important}
#playScreen .aiHudLive{position:absolute!important;left:202px!important;top:22px!important;width:auto!important;height:auto!important;padding:0!important;border:0!important;background:transparent!important;color:#707570!important;font:700 8px/1.4 ui-monospace,SFMono-Regular,Menlo,monospace!important;letter-spacing:.13em!important}.aiHudLive span{background:#35d8b6!important}.aiHudLive b{color:#1c201e!important}
#playScreen .aiHudPressure{position:absolute!important;left:44px!important;top:41px!important;width:110px!important;height:110px!important;border-radius:50%!important;display:grid!important;place-content:center!important;text-align:center!important;background:linear-gradient(145deg,#fff,#e9e7e1)!important;border:1px solid rgba(32,39,36,.13)!important;box-shadow:0 12px 28px rgba(40,43,39,.14),0 0 0 7px rgba(53,216,182,.08)!important;color:#171918!important;z-index:3}
#playScreen .aiHudPressure small{font:700 7px/1 ui-monospace,SFMono-Regular,Menlo,monospace!important;letter-spacing:.14em!important;color:#777c78!important}
#playScreen .aiHudPressure strong{font:500 35px/1 "Times New Roman",serif!important;margin-top:6px!important}
.liveMetrics{position:absolute;right:20px;bottom:22px;width:188px;display:grid;grid-template-columns:1fr 1fr;gap:8px;border-top:1px solid rgba(22,28,25,.13);padding-top:10px}
.liveMetric{display:flex;justify-content:space-between;align-items:baseline;font:700 7px/1 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.11em;color:#747975}.liveMetric b{font:500 18px/1 "Times New Roman",serif;color:#202320}
#playScreen .pressureRail{position:absolute!important;left:202px!important;right:20px!important;top:53px!important;height:2px!important;background:rgba(20,24,22,.10)!important}.pressureRail i{background:#35d8b6!important;box-shadow:0 0 10px rgba(53,216,182,.45)!important}
#playScreen .idleSignal{position:absolute!important;left:202px!important;top:70px!important;color:#777c78!important}.idleSignal i{background:#35d8b6!important}
#playScreen .sceneCount{position:absolute!important;left:auto!important;right:20px!important;top:22px!important;bottom:auto!important;width:auto!important;height:auto!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;color:#858985!important;font-size:8px!important;line-height:1.2!important}
#playScreen #contextChip{display:none!important}
#playScreen .waveRow{order:3!important;width:auto!important;align-self:stretch!important;grid-column:auto!important;height:26px!important;margin:-34px 18px 12px 188px!important;position:relative!important;z-index:4!important;background:transparent!important;overflow:hidden!important}
#playScreen .voiceShape,#playScreen .voiceDotField,#playScreen .micOrb{display:none!important}
#playScreen #wave{height:26px!important;opacity:.55!important}.wave i{background:#35d8b6!important}
#playScreen .turnState{order:4!important;width:100%!important;align-self:stretch!important;grid-column:auto!important;margin:4px 0 12px!important;padding:0!important;text-align:left!important;color:#656a66!important;font:700 8px/1.4 ui-monospace,SFMono-Regular,Menlo,monospace!important;letter-spacing:.13em!important}.turnState:before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:#35d8b6;margin-right:8px;box-shadow:0 0 0 4px rgba(53,216,182,.08)}
#playScreen .choices{order:5!important;width:100%!important;align-self:stretch!important;grid-column:auto!important;grid-template-columns:1fr!important;display:grid!important;gap:9px!important;margin:0!important}
#playScreen .choice{min-height:82px!important;width:100%!important;padding:14px 14px 14px 74px!important;border:1px solid rgba(24,30,27,.12)!important;border-radius:14px!important;background:rgba(255,255,252,.70)!important;color:#1b1e1c!important;box-shadow:0 8px 20px rgba(35,39,35,.07)!important;position:relative!important;text-align:left!important;transform:none!important;overflow:visible!important}
#playScreen .choice{display:block!important;grid-template-columns:none!important;height:auto!important}
#playScreen .choice:before{display:none!important}
.choiceNode{position:absolute;left:12px;top:50%;transform:translateY(-50%);width:46px;height:46px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(145deg,#fff,#e8e6e0);border:1px solid rgba(25,31,28,.13);box-shadow:0 7px 15px rgba(31,36,32,.13);font:600 17px/1 ui-monospace,SFMono-Regular,Menlo,monospace;color:#272a28}
#playScreen .choice:hover,#playScreen .choice:focus-visible{border-color:rgba(53,216,182,.65)!important;box-shadow:0 10px 24px rgba(35,39,35,.10),0 0 0 4px rgba(53,216,182,.08)!important}
#playScreen .choice.selected{border-color:#35d8b6!important}.choice.selected .choiceNode{border-color:#35d8b6;box-shadow:0 7px 16px rgba(31,36,32,.14),0 0 0 5px rgba(53,216,182,.10)}
#playScreen .spokenChoice{display:block!important;width:auto!important;height:auto!important;grid-column:auto!important;font-size:12px!important;line-height:1.65!important;font-weight:500!important;color:#222522!important}.choiceArrow{position:absolute!important;right:14px!important;top:50%!important;transform:translateY(-50%)!important;color:#35bfa2!important}
#playScreen .aiAssistWrap{order:6!important;width:100%!important;align-self:stretch!important;grid-column:auto!important;display:block!important;margin:13px 0 0!important}
#playScreen .aiAssistBtn{min-height:68px!important;border:1px solid rgba(230,113,64,.34)!important;border-radius:16px!important;background:linear-gradient(120deg,rgba(255,255,253,.92),rgba(255,224,207,.60),rgba(232,231,255,.62))!important;color:#2a2422!important;box-shadow:0 12px 28px rgba(182,91,55,.10),inset 0 1px rgba(255,255,255,.8)!important}
#playScreen .assistGlyph{color:#e56f43!important}.assistCopy b{font-size:12px!important;letter-spacing:.13em!important}.assistCopy small{color:#785f55!important}.assistArrow{color:#d9663d!important}
#playScreen .aiAssistPanel{border-color:rgba(230,113,64,.25)!important;background:rgba(255,250,246,.96)!important;color:#201e1d!important;box-shadow:0 18px 38px rgba(71,52,43,.14)!important}
#playScreen .aiAssistAvoid{background:rgba(226,111,63,.055)!important;border-color:rgba(226,111,63,.18)!important;color:#705d55!important}
#playScreen .repairBar{order:7!important}#playScreen .otherPanel{order:9!important}#playScreen .mood{order:10!important}
#playScreen .mood{margin:18px 0 0!important;border-top:1px solid rgba(20,24,22,.11)!important;padding-top:14px!important}.moodFace{display:none!important}.moodText{padding:0!important}.moodLabel{color:#868a86!important}.moodState{color:#292c2a!important}.moodHint{color:#707470!important}
#phone.voice-only #playScreen .hero{height:230px!important}.phone.voice-only #playScreen .aiHudPressure{width:132px!important;height:132px!important;left:33px!important;top:42px!important;box-shadow:0 14px 30px rgba(40,43,39,.15),0 0 0 10px rgba(53,216,182,.10)!important}.phone.voice-only #playScreen .aiHudPressure:after{content:"VOICE";display:block;margin-top:8px;font:700 7px/1 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.16em;color:#22a98d}.phone.voice-only #playScreen .choices{display:none!important}.phone.voice-only #playScreen .otherPanel{border:1px solid rgba(53,216,182,.24)!important;background:rgba(255,255,252,.74)!important;border-radius:16px!important;padding:14px!important}.phone.voice-only #playScreen .micReadyBadge{color:#209b83!important}
@media(max-width:380px){#playScreen .sceneWrap{padding-inline:16px!important}.liveBrand small{display:none}#playScreen .customerLine{font-size:20px!important}#playScreen .choice{padding-left:66px!important}.choiceNode{width:42px;height:42px}.liveMetrics{right:16px;width:170px}}

/* Win against the baseline's high-specificity cinematic pseudo-elements. */
#phone[data-screen="play"] #playScreen.liveInstrument .hero:before{width:330px!important;height:330px!important;left:-154px!important;right:auto!important;top:-66px!important;bottom:auto!important;inset:auto!important;opacity:.72!important;border:1px solid rgba(24,31,28,.18)!important;background:repeating-conic-gradient(from -18deg,rgba(53,216,182,.62) 0 1deg,transparent 1deg 5deg)!important;-webkit-mask:radial-gradient(circle,transparent 0 57%,#000 57.5% 59%,transparent 59.5%)!important;mask:radial-gradient(circle,transparent 0 57%,#000 57.5% 59%,transparent 59.5%)!important}
#phone[data-screen="play"] #playScreen.liveInstrument .hero:after{width:240px!important;height:240px!important;left:-109px!important;right:auto!important;top:-21px!important;bottom:auto!important;inset:auto!important;opacity:1!important;border:1px dashed rgba(30,40,36,.22)!important;background:transparent!important;box-shadow:0 0 0 34px rgba(53,216,182,.025),0 0 0 68px rgba(20,25,23,.025)!important}

/* LIVE layout pass: one clear reading path, no competing telemetry. */
#playScreen.liveInstrument .liveChrome{height:68px!important;grid-template-columns:34px 1fr auto!important}
#playScreen.liveInstrument .liveBrand{font-size:13px!important;white-space:nowrap}
#playScreen.liveInstrument .liveMeta{min-width:62px}
#playScreen.liveInstrument .speech{margin-top:18px!important;padding-bottom:18px!important}
#playScreen.liveInstrument .speechHead{margin-bottom:9px!important}
#playScreen.liveInstrument .customerLine{font-size:clamp(19px,5.3vw,24px)!important;line-height:1.58!important;max-width:38em}
#playScreen.liveInstrument .hero{height:176px!important;margin-top:8px!important}
#playScreen.liveInstrument .aiHudLive{left:190px!important;right:20px!important;top:24px!important;width:auto!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
#playScreen.liveInstrument .sceneCount{top:48px!important;right:20px!important}
#playScreen.liveInstrument .pressureRail{left:190px!important;right:20px!important;top:69px!important}
#playScreen.liveInstrument .idleSignal{left:190px!important;right:20px!important;top:82px!important;width:auto!important;height:auto!important;padding:0!important;background:transparent!important;color:#727772!important;opacity:1!important;white-space:nowrap!important}
#playScreen.liveInstrument .idleSignal em{font-style:normal!important}
#playScreen.liveInstrument .liveMetrics{right:20px!important;bottom:23px!important;width:165px!important;grid-template-columns:1fr!important;gap:7px!important;padding-top:9px!important}
#playScreen.liveInstrument .liveMetric{width:100%!important;height:auto!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}
#playScreen.liveInstrument .liveMetric b{width:auto!important;height:auto!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;font-size:17px!important}
#playScreen.liveInstrument .waveRow{margin:-29px 18px 10px 176px!important}
#playScreen.liveInstrument .turnState{margin:0 0 10px!important;padding-top:10px!important;border-top:1px solid rgba(20,24,22,.10)!important}
#playScreen.liveInstrument .choices{gap:8px!important}
#playScreen.liveInstrument .choice{min-height:76px!important;padding-top:12px!important;padding-bottom:12px!important;border-radius:13px!important}
#playScreen.liveInstrument .spokenChoice{line-height:1.55!important}
#playScreen.liveInstrument .aiAssistWrap{margin-top:10px!important}
#playScreen.liveInstrument .aiAssistBtn{min-height:64px!important}
#playScreen.liveInstrument .mood{margin-top:14px!important;padding-top:12px!important}
#phone[data-screen="play"] #bottomNav{height:64px!important;padding:7px 12px calc(6px + var(--safe-bottom))!important;background:rgba(250,249,246,.94)!important;border-top:1px solid rgba(20,24,22,.10)!important;box-shadow:0 -8px 24px rgba(30,34,30,.06)!important}
#phone[data-screen="play"] #bottomNav .navicon{font-size:13px!important}
#phone[data-screen="play"] #bottomNav .navbtn{font-size:7px!important;color:#777b77!important}
#phone[data-screen="play"] #bottomNav .navbtn.active{color:#2b7566!important;background:rgba(53,216,182,.08)!important}
@media(max-width:380px){#playScreen.liveInstrument .aiHudLive,#playScreen.liveInstrument .idleSignal,#playScreen.liveInstrument .pressureRail{left:174px!important}#playScreen.liveInstrument .liveMetrics{width:150px!important}}

/* V6.2 — portrait instrument alignment and one-screen LIVE rhythm */
#playScreen.liveInstrument .customerLine{
  font-size:clamp(16px,4.45vw,19px)!important;
  line-height:1.55!important;
  letter-spacing:-.025em!important;
}
#phone[data-screen="play"] #playScreen.liveInstrument .hero:before{
  width:188px!important;height:188px!important;
  left:-6px!important;top:-10px!important;
  opacity:.66!important;
  -webkit-mask:radial-gradient(circle,transparent 0 61%,#000 61.5% 63%,transparent 63.5%)!important;
  mask:radial-gradient(circle,transparent 0 61%,#000 61.5% 63%,transparent 63.5%)!important;
}
#playScreen.liveInstrument .aiHudPressure{
  left:32px!important;top:28px!important;width:112px!important;height:112px!important;
}
#playScreen.liveInstrument .aiHudLive{left:176px!important;top:22px!important}
#playScreen.liveInstrument .sceneCount{top:43px!important}
#playScreen.liveInstrument .pressureRail{left:176px!important;top:63px!important}
#playScreen.liveInstrument .idleSignal{left:176px!important;top:75px!important}
#playScreen.liveInstrument .liveMetrics{
  right:20px!important;bottom:18px!important;width:162px!important;
  gap:8px!important;padding-top:8px!important;
}
#playScreen.liveInstrument .liveMetric{align-items:center!important;color:#696e69!important}
#playScreen.liveInstrument .liveMetric b{
  font-size:27px!important;line-height:.85!important;color:#111411!important;
  font-variant-numeric:tabular-nums;
}
/* SELECT is visually quiet: the audio field belongs to VOICE and no longer overlays the dial. */
#phone:not(.voice-only) #playScreen.liveInstrument .waveRow{display:none!important}
#phone.voice-only #playScreen.liveInstrument .waveRow{
  display:flex!important;margin:0 0 8px!important;height:38px!important;
  border-top:1px solid rgba(20,24,22,.09)!important;
  border-bottom:1px solid rgba(20,24,22,.09)!important;
}

@media(max-width:560px) and (orientation:portrait){
  #phone[data-screen="play"]{height:100svh!important;min-height:0!important;overflow:hidden!important}
  #phone[data-screen="play"] #playScreen{height:calc(100svh - 58px)!important;overflow:hidden!important;padding-bottom:6px!important}
  #playScreen.liveInstrument .sceneWrap{height:100%!important;padding:0 16px 4px!important;overflow:hidden!important;align-content:start!important}
  #playScreen.liveInstrument .liveChrome{height:54px!important;min-height:54px!important;margin-bottom:0!important}
  #playScreen.liveInstrument .speech{margin-top:7px!important;padding-bottom:11px!important}
  #playScreen.liveInstrument .speechHead{margin-bottom:6px!important}
  #playScreen.liveInstrument .customerLine{font-size:clamp(15px,4.15vw,17px)!important;line-height:1.48!important}
  #playScreen.liveInstrument .hero{height:142px!important;margin-top:6px!important;flex:none!important}
  #playScreen.liveInstrument .turnState{margin-bottom:6px!important;padding-top:6px!important}
  #playScreen.liveInstrument .choices{gap:5px!important}
  #playScreen.liveInstrument .choice{min-height:56px!important;padding-top:8px!important;padding-bottom:8px!important;padding-left:64px!important}
  #playScreen.liveInstrument .spokenChoice{font-size:11.5px!important;line-height:1.35!important}
  #playScreen.liveInstrument .choiceNode{width:40px;height:40px;left:10px;font-size:17px}
  #playScreen.liveInstrument .aiAssistWrap{margin-top:6px!important}
  #playScreen.liveInstrument .aiAssistBtn{min-height:50px!important}
  #playScreen.liveInstrument .mood{display:none!important}
  #phone[data-screen="play"] #bottomNav{height:58px!important;min-height:58px!important}
}
@media(max-width:560px) and (orientation:portrait) and (max-height:720px){
  #playScreen.liveInstrument .liveChrome{height:48px!important;min-height:48px!important}
  #playScreen.liveInstrument .speech{margin-top:3px!important;padding-bottom:8px!important}
  #playScreen.liveInstrument .customerLine{font-size:14.5px!important;line-height:1.42!important}
  #playScreen.liveInstrument .hero{height:128px!important;margin-top:4px!important}
  #playScreen.liveInstrument .aiHudPressure{width:98px!important;height:98px!important;left:26px!important;top:18px!important}
  #phone[data-screen="play"] #playScreen.liveInstrument .hero:before{width:166px!important;height:166px!important;left:-8px!important;top:-16px!important}
  #playScreen.liveInstrument .aiHudLive,#playScreen.liveInstrument .pressureRail,#playScreen.liveInstrument .idleSignal{left:150px!important}
  #playScreen.liveInstrument .liveMetric b{font-size:24px!important}
  #playScreen.liveInstrument .choice{min-height:50px!important;padding-top:6px!important;padding-bottom:6px!important}
  #playScreen.liveInstrument .spokenChoice{font-size:10.8px!important;line-height:1.28!important}
  #playScreen.liveInstrument .aiAssistBtn{min-height:44px!important}
}

/* NWTRL is the application boot signature, never a LIVE transition. */
#brandSplash{z-index:2147483647!important;pointer-events:auto!important}

/* V6.3 — RESULT uses the same quiet instrument language as HOME / LIVE. */
#reviewScreen{background:#f5f3ee!important;color:#171918!important;padding-top:12px!important}
#reviewScreen .resultPoster,
#reviewScreen .resultFlowPanel,
#reviewScreen .reviewDetails{
  border:1px solid rgba(25,31,28,.12)!important;
  border-radius:18px!important;
  background:rgba(255,255,252,.86)!important;
  box-shadow:0 14px 38px rgba(35,40,37,.07)!important;
}
#reviewScreen .resultPoster{overflow:hidden!important}
#reviewScreen .resultPosterTop{border-color:rgba(25,31,28,.11)!important}
#reviewScreen .resultPosterBrand b,
#reviewScreen .resultReflexType,
#reviewScreen .flowTitle{color:#151815!important}
#reviewScreen .reflexStageLabel,
#reviewScreen .flowEyebrow,
#reviewScreen .flowMeta{color:#747a75!important}
#reviewScreen .resultTelemetryItem{
  background:#f1f0eb!important;border-color:rgba(25,31,28,.08)!important;
}
#reviewScreen .resultTelemetryItem.good strong{color:#269b82!important}
#reviewScreen .resultTelemetryItem.risk strong{color:#202522!important}
#reviewScreen .nextPlayPanel{
  order:1;
  background:radial-gradient(circle at 92% 0,rgba(53,216,182,.12),transparent 34%),rgba(255,255,252,.92)!important;
  border-color:rgba(53,174,149,.25)!important;
}
#reviewScreen .reviewDetails{order:2;margin-top:0!important}
#reviewScreen .reviewActions{order:3}
#reviewScreen .conversationPanel{order:4}
#reviewScreen .resultReflexType{
  display:inline-flex!important;width:auto!important;margin-top:11px!important;padding:6px 9px!important;
  border:1px solid rgba(35,157,132,.25)!important;border-radius:999px!important;
  color:#247d6c!important;background:rgba(53,216,182,.08)!important;
  font:800 10px/1 ui-monospace,SFMono-Regular,Menlo,monospace!important;letter-spacing:.1em!important;
}
#reviewScreen .resultMirrorLine{margin-top:14px!important;font-size:clamp(22px,6vw,31px)!important;line-height:1.34!important;color:#171a18!important}
#reviewScreen .reflexSecondary{margin:10px 0 0;color:#747a75;font-size:11px;line-height:1.55}
#reviewScreen .reflexEvidence{margin:13px 0 0;padding:12px 14px;border-left:2px solid #35b99d;background:#f3f2ed;color:#555b56;font-size:12px;line-height:1.65}
#reviewScreen .reflexEvidence b{display:block;margin-bottom:3px;color:#247d6c;font:800 9px/1.2 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.1em}
#reviewScreen .resultReflexType,#reviewScreen .reflexSecondary{display:none!important}
#reviewScreen .resultFlow{counter-reset:result-section}
#reviewScreen .trajectoryPanel{order:0;padding:0 15px 16px!important}
#reviewScreen .trajectoryHead{display:flex;align-items:end;justify-content:space-between;gap:12px;padding:16px 0 12px}
#reviewScreen .trajectoryTitle{font-size:18px;font-weight:780;letter-spacing:-.035em;color:#171a18}
#reviewScreen .trajectoryMeta{font:750 8px/1.4 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.08em;color:#858a86;text-align:right}
#reviewScreen .trajectoryLegend{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:9px;color:#666c67;font:750 8px/1 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.06em}
#reviewScreen .trajectoryLegend span{display:flex;align-items:center;gap:5px}
#reviewScreen .trajectoryLegend i{width:13px;height:2px;background:var(--line);display:inline-block}
#reviewScreen .trajectoryChart{position:relative;border:1px solid rgba(25,31,28,.1);background:linear-gradient(rgba(25,31,28,.035) 1px,transparent 1px);background-size:100% 25%;overflow:hidden}
#reviewScreen .trajectoryChart svg{display:block;width:100%;height:auto;min-height:164px}
#reviewScreen .trajectoryChart .grid{stroke:rgba(25,31,28,.09);stroke-width:.7;stroke-dasharray:2 3}
#reviewScreen .trajectoryChart .pressureLine{stroke:#292d2a}.trajectoryChart .demandLine{stroke:#d27152}.trajectoryChart .boundaryLine{stroke:#25a88b}
#reviewScreen .trajectoryChart .trace{fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}
#reviewScreen .trajectoryChart .turnDot{fill:#fff;stroke-width:1.4;vector-effect:non-scaling-stroke}
#reviewScreen .trajectoryChart .turnMark{stroke:#171a18;stroke-width:1;stroke-dasharray:2 2;vector-effect:non-scaling-stroke}
#reviewScreen .trajectoryAxis{display:flex;justify-content:space-between;padding:7px 1px 0;color:#919692;font:700 7px/1 ui-monospace,SFMono-Regular,Menlo,monospace}
#reviewScreen .trajectoryTurning{margin:12px 0 0;padding:11px 12px;background:#f3f2ed;color:#565c57;font-size:11px;line-height:1.6}
#reviewScreen .trajectoryTurning b{display:block;margin-bottom:3px;color:#202421;font:800 8px/1.2 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.08em}

/* V6.5 — SELECT is guided TRAINING; VOICE is observational LIVE. */
#phone.training-mode #playScreen .liveBrand small{color:#247d6c}
#phone.training-mode #playScreen .aiHudLive span{background:#35d8b6!important}
#phone.training-mode #playScreen .idleSignal{display:none!important}
#phone.live-mode #playScreen .contextChip,
#phone.live-mode #playScreen .aiAssistWrap,
#phone.live-mode #playScreen .repairBar,
#phone.live-mode #playScreen .mood{display:none!important}
#phone.live-mode #playScreen .turnState{font-size:12px!important;letter-spacing:.04em!important;color:#747a75!important}
#phone.live-mode #playScreen .otherPanel{border-color:rgba(53,216,182,.23)!important;background:rgba(255,255,252,.9)!important}
#phone.live-mode #playScreen #micBtn{background:#171b19!important;color:#fff!important;border-color:#171b19!important}
#phone.training-mode #playScreen .choice{
  grid-template-columns:18px 1fr 14px!important;gap:10px!important;border-color:rgba(25,31,28,.12)!important;
  background:rgba(255,255,252,.88)!important;box-shadow:none!important;
}
#phone.training-mode #playScreen .choice:hover{border-color:rgba(25,31,28,.25)!important;background:#f5f4ef!important;transform:translateY(-1px)!important}
#phone.training-mode #playScreen .choiceNode{width:8px!important;height:8px!important;border:1px solid #7f8580!important;border-radius:50%!important;background:transparent!important;color:transparent!important;box-shadow:none!important}
#phone.training-mode #playScreen .choiceArrow{color:#868b87!important;font-size:15px!important}
#phone.training-mode #playScreen .choice.selected{border-color:#4c514d!important;background:#efeee9!important}
#phone.training-mode #playScreen .choice.selected .choiceNode{background:#454a46!important;border-color:#454a46!important}
#phone.training-mode #playScreen .choice.faded{opacity:.28!important;filter:none!important}
.choiceImpact{display:none;margin:0 0 9px;padding:10px 11px;border:1px solid rgba(25,31,28,.11);background:#f2f1ec;color:#525752}
.choiceImpact.show{display:block}
.choiceImpactTop{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:7px}
.choiceImpactTop b{color:#252925;font:800 9px/1.2 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.08em}
.choiceImpactTop span{color:#858a86;font:700 7px/1.2 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.07em}
.choiceImpactMetrics{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(25,31,28,.1);border:1px solid rgba(25,31,28,.1)}
.choiceImpactMetric{padding:7px 8px;background:#faf9f5}
.choiceImpactMetric small{display:block;color:#888d89;font:700 6px/1 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.06em}
.choiceImpactMetric strong{display:block;margin-top:4px;color:#252925;font:800 13px/1 ui-monospace,SFMono-Regular,Menlo,monospace}
.choiceImpactMetric.demand strong{color:#b65f45}.choiceImpactMetric.boundary strong{color:#258e78}
.choiceImpact p{margin:7px 0 0;font-size:10px;line-height:1.5;color:#666b67}
.decisionTension{display:none;margin:0 0 8px;padding:8px 10px;border-left:2px solid rgba(53,216,182,.55);background:rgba(241,242,237,.72);color:#686d68;font-size:10px;line-height:1.45}
#phone.training-mode .decisionTension{display:block}
#phone.live-mode .decisionTension{display:none!important}
.decisionTension b{display:block;margin-bottom:3px;color:#188c75;font:800 7px/1 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.13em}
#phone.live-mode .choiceImpact{display:none!important}

/* WHAT MOVED is an instrument readout, not another card or score panel. */
#phone.training-mode #playScreen .choiceImpact{
  margin:1px 0 10px!important;padding:9px 0 8px!important;
  border:0!important;border-top:1px solid rgba(25,31,28,.13)!important;
  border-bottom:1px solid rgba(25,31,28,.13)!important;
  border-radius:0!important;background:transparent!important;box-shadow:none!important;
}
#phone.training-mode #playScreen .choiceImpactTop{padding:0 2px!important;margin-bottom:8px!important}
#phone.training-mode #playScreen .choiceImpactTop b{font-size:7.5px!important;letter-spacing:.14em!important}
#phone.training-mode #playScreen .choiceImpactTop span{font-size:6.5px!important}
#phone.training-mode #playScreen .choiceImpactMetrics{
  gap:0!important;border:0!important;background:transparent!important;
}
#phone.training-mode #playScreen .choiceImpactMetric{
  position:relative;padding:5px 10px 4px!important;border:0!important;
  border-right:1px solid rgba(25,31,28,.12)!important;background:transparent!important;
}
#phone.training-mode #playScreen .choiceImpactMetric:first-child{padding-left:2px!important}
#phone.training-mode #playScreen .choiceImpactMetric:last-child{border-right:0!important}
#phone.training-mode #playScreen .choiceImpactMetric small{
  color:#777d78!important;font-size:6px!important;letter-spacing:.13em!important;
}
#phone.training-mode #playScreen .choiceImpactMetric strong{
  margin-top:5px!important;color:#202a26!important;
  font-family:"OCR A Std","OCR A Extended","Lucida Console",ui-monospace,SFMono-Regular,Menlo,monospace!important;
  font-size:22px!important;font-weight:500!important;line-height:.9!important;
  letter-spacing:-.10em!important;font-variant-numeric:tabular-nums slashed-zero!important;
  transform:scaleX(.82)!important;transform-origin:left center!important;
  text-shadow:0 0 9px rgba(53,216,182,.13)!important;
}
#phone.training-mode #playScreen .choiceImpactMetric.demand strong{color:#a95b45!important;text-shadow:0 0 9px rgba(210,113,82,.12)!important}
#phone.training-mode #playScreen .choiceImpactMetric.boundary strong{color:#16866f!important}
#phone.training-mode #playScreen .choiceImpact p{
  margin:8px 2px 0!important;padding:0!important;color:#69706b!important;
  font-size:9px!important;line-height:1.45!important;
}

/* V6.7 — free response and VOICE share the same quiet instrument language. */
#playScreen .otherPanel{border-radius:16px!important;background:rgba(255,255,252,.9)!important;box-shadow:0 14px 34px rgba(35,40,37,.07)!important}
#playScreen .otherPanel textarea{border-radius:12px!important;background:#f6f5f0!important;border:1px solid rgba(25,31,28,.13)!important;color:#1c201d!important;font-family:ui-sans-serif,system-ui,sans-serif!important}
#playScreen .otherPanel textarea::placeholder{color:#929692!important}
#playScreen .otherPanel .softBtn{border-radius:999px!important;background:#e9e8e2!important;color:#313632!important;font-weight:750!important}
#playScreen .otherPanel .softBtn.send{background:#171b19!important;color:#fff!important}
#playScreen .micReadyBadge{color:#247d6c!important}
#phone.live-mode #playScreen{height:100svh!important;min-height:0!important;overflow:hidden!important}
#phone.live-mode #playScreen .sceneWrap{height:calc(100svh - 58px)!important;min-height:0!important;padding:0 16px 10px!important;overflow:hidden!important}
#phone.live-mode #playScreen .liveChrome{height:54px!important;min-height:54px!important}
#phone.live-mode #playScreen .speech{margin-top:10px!important;padding-bottom:10px!important;max-height:164px!important;overflow:auto!important}
#phone.live-mode #playScreen .speechHead{margin-bottom:6px!important}
#phone.live-mode #playScreen .customerLine{font-size:clamp(17px,4.8vw,21px)!important;line-height:1.45!important}
#phone.live-mode #playScreen .hero{height:132px!important;min-height:132px!important;margin:5px -16px 0!important}
#phone.live-mode #playScreen .aiHudPressure{width:94px!important;height:94px!important;left:27px!important;top:20px!important}
#phone.live-mode #playScreen .aiHudPressure strong{font-size:30px!important}
#phone.live-mode #playScreen .aiHudPressure:after{margin-top:5px!important}
#phone.live-mode #playScreen .aiHudLive,#phone.live-mode #playScreen .pressureRail,#phone.live-mode #playScreen .idleSignal{left:145px!important;right:16px!important}
#phone.live-mode #playScreen .aiHudLive{top:17px!important}.phone.live-mode #playScreen .sceneCount{top:39px!important;right:16px!important}
#phone.live-mode #playScreen .pressureRail{top:59px!important}.phone.live-mode #playScreen .idleSignal{top:70px!important}
#phone.live-mode #playScreen .liveMetrics{right:16px!important;bottom:13px!important;width:150px!important}
#phone.live-mode #playScreen .waveRow{height:20px!important;margin:-22px 12px 5px 135px!important}
#phone.live-mode #playScreen #wave{height:20px!important}
#phone.live-mode #playScreen .turnState{margin:0 0 6px!important;padding-top:7px!important}
#phone.live-mode #playScreen .otherPanel{display:flex!important;flex-direction:column!important;min-height:0!important;margin:0!important;padding:10px!important;overflow:hidden!important}
#phone.live-mode #playScreen .otherPanel textarea{min-height:58px!important;max-height:72px!important;padding:9px 10px!important;font-size:14px!important;line-height:1.35!important;resize:none!important}
#phone.live-mode #playScreen .inputActions{margin-top:7px!important;gap:7px!important}
#phone.live-mode #playScreen .softBtn{min-height:42px!important;padding:8px!important}
#phone.live-mode #playScreen #micBtn{font-size:15px!important}
#phone.live-mode #playScreen #speechHint{margin-top:5px!important;font-size:8px!important;line-height:1.25!important}
#phone.live-mode #playScreen .micReadyBadge{margin-top:4px!important;font-size:7px!important}

#reviewScreen .reviewDetails>.reviewSectionTitle{padding:16px 15px 11px;border-bottom:1px solid rgba(25,31,28,.09)}
#reviewScreen .reviewSectionTitle b{display:block;color:#181b19;font-size:18px;letter-spacing:-.03em}
#reviewScreen .reviewSectionTitle span{display:block;margin-top:4px;color:#7a7f7b;font-size:10px}
#reviewScreen .conversationPanel>summary{list-style:none;cursor:pointer}
#reviewScreen .conversationPanel>summary::-webkit-details-marker{display:none}
#reviewScreen .conversationPanel>summary .flowHead{border-bottom:0!important}
#reviewScreen .conversationPanel>summary .flowMeta:after{content:" ＋";font-size:15px;color:#268d77}
#reviewScreen .conversationPanel[open]>summary .flowMeta:after{content:" −"}
#reviewScreen .conversationPanel:not([open]) .conversationBody{display:none}

/* V6.8 — restore numbered instrument nodes without implying a correct rank. */
#phone.training-mode #playScreen .choices{gap:10px!important}
#phone.training-mode #playScreen .choice{grid-template-columns:none!important;padding:12px 14px 12px 68px!important;min-height:72px!important}
#phone.training-mode #playScreen .choiceNode{
  position:absolute!important;left:13px!important;top:50%!important;transform:translateY(-50%)!important;
  width:42px!important;height:42px!important;border-radius:50%!important;
  display:grid!important;place-items:center!important;color:#252a27!important;
  background:linear-gradient(145deg,#fff,#e7e5df)!important;border:1px solid rgba(25,31,28,.15)!important;
  box-shadow:0 6px 14px rgba(31,36,32,.11)!important;
  font:750 14px/1 ui-monospace,SFMono-Regular,Menlo,monospace!important;letter-spacing:.02em!important;
}
#phone.training-mode #playScreen .choice.selected .choiceNode{color:#fff!important;background:#303531!important;border-color:#303531!important}

/* AI is an iridescent observation aperture, not a generic sparkle glyph. */
#playScreen .assistGlyph{position:relative!important;color:transparent!important;overflow:hidden!important;background:radial-gradient(circle at 35% 28%,#fff 0 18%,#eaf8f5 39%,#f6e8dd 65%,#ded9f5 100%)!important}
#playScreen .assistGlyph::before{content:"";position:absolute;inset:8px;border-radius:50%;background:conic-gradient(from 20deg,#35d8b6,#7cc9ef,#aa92e8,#ef9b79,#35d8b6);-webkit-mask:radial-gradient(circle,transparent 0 41%,#000 44% 61%,transparent 64%);mask:radial-gradient(circle,transparent 0 41%,#000 44% 61%,transparent 64%);animation:cawasuAiOrbit 7s linear infinite}
#playScreen .assistGlyph::after{content:"";position:absolute;left:50%;top:50%;width:6px;height:6px;transform:translate(-50%,-50%) rotate(45deg);border-radius:1px;background:#fff;box-shadow:0 0 0 1px rgba(31,36,33,.24),0 0 12px rgba(53,216,182,.8)}
@keyframes cawasuAiOrbit{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){#playScreen .assistGlyph::before{animation:none}}

/* The fourth route is deliberately separate: a direct{
  min-height:52px!important;margin-top:10px!important;padding:13px 16px!important;border:1px solid #171b19!important;
  border-radius:14px!important;background:#171b19!important;color:#fff!important;box-shadow:0 10px 24px rgba(24,28,25,.13)!important;
  font-size:12px!important;font-weight:760!important;letter-spacing:-.01em!important;text-align:left!important;
}
#phone.live-mode #playScreen .mood{display:none!important}

/* V6.9 — iPhone portrait: voice remains usable even when Safari's chrome
   reduces the visual viewport. Choices stay visible as quiet fallback routes. */
#phone[data-screen="play"] #playScreen .aiHudPressure strong{
  color:#e1f9f4!important;
  color:color-mix(in srgb,#fff 85%,#35d8b6 15%)!important;
  font-weight:750!important;
  -webkit-text-stroke:0!important;
  text-shadow:none!important;
}
#phone[data-screen="play"] #playScreen .pressureRail{display:none!important}
#phone[data-screen="play"] #playScreen .mood{display:none!important}
#playScreen .aiAssistBtn .assistMain{padding-left:0!important}
#playScreen .aiAssistBtn .assistArrow{
  box-sizing:border-box!important;padding:0!important;margin-left:auto!important;
  display:grid!important;place-items:center!important;text-align:center!important;
  line-height:1!important;text-indent:1px!important;
}
#phone.live-mode #playScreen .pressureRail{
  left:154px!important;right:18px!important;top:57px!important;
}
#phone.live-mode #playScreen .waveRow{
  height:18px!important;margin:2px 0 4px!important;
  border-top:0!important;border-bottom:1px solid rgba(20,24,22,.09)!important;
}
#phone.live-mode #playScreen .choices{
  display:grid!important;grid-template-columns:1fr!important;gap:4px!important;
  background:transparent!important;
}
#phone.live-mode #playScreen .choice{
  min-height:42px!important;padding:6px 28px 6px 48px!important;border-radius:10px!important;
  box-shadow:none!important;background:#fbfaf6!important;border-color:rgba(25,31,28,.11)!important;
}
#phone.live-mode #playScreen .choiceNode{
  left:8px!important;width:30px!important;height:30px!important;font-size:10px!important;
}
#phone.live-mode #playScreen .spokenChoice{font-size:9.5px!important;line-height:1.28!important}
#phone.live-mode #playScreen .choiceArrow{right:9px!important;font-size:13px!important}
#phone.live-mode #playScreen .otherPanel{margin-top:4px!important;padding:7px!important;flex:0 0 auto!important;overflow:visible!important}
#phone.live-mode #playScreen .otherPanel::before{
  content:"3つにない。自分ならこう返す";display:block;margin:0 2px 5px;
  color:#59605b;font:750 7px/1.2 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.08em;
}
#phone.live-mode #playScreen .otherPanel textarea{min-height:42px!important;max-height:48px!important;padding:7px 8px!important;font-size:13px!important}
#phone.live-mode #playScreen .inputActions{margin-top:5px!important}
#phone.live-mode #playScreen .softBtn{min-height:34px!important;padding:6px!important;font-size:10px!important}
#phone.live-mode #playScreen #speechHint{margin-top:3px!important}
#phone.live-mode #bottomNav{display:none!important}
#bottomNav.voice-hidden{display:none!important}
#phone[data-play-mode="voice"] #bottomNav,
#phone[data-play-mode="voice"] #choiceImpact{display:none!important}
#phone.voice-only #idleSignal{display:none!important}
#phone.live-mode #playScreen{height:var(--visual-vh)!important}
#phone.live-mode #playScreen .sceneWrap{height:var(--visual-vh)!important}

@media(max-width:430px) and (orientation:portrait){
  #phone.live-mode #playScreen .sceneWrap{height:var(--visual-vh)!important;padding-bottom:max(8px,var(--safe-bottom))!important}
  #phone.live-mode #playScreen .liveChrome{height:42px!important;min-height:42px!important}
  #phone.live-mode #playScreen .liveBack{width:32px!important;height:32px!important;font-size:21px!important}
  #phone.live-mode #playScreen .speech{margin-top:0!important;padding-top:5px!important;padding-bottom:6px!important;max-height:104px!important}
  #phone.live-mode #playScreen .speechHead{margin-bottom:3px!important}
  #phone.live-mode #playScreen .customerLine{font-size:14px!important;line-height:1.38!important}
  #phone.live-mode #playScreen .hero{height:104px!important;min-height:104px!important;margin-top:3px!important}
  #phone.live-mode #playScreen .aiHudPressure{width:78px!important;height:78px!important;left:22px!important;top:13px!important}
  #phone.live-mode #playScreen .aiHudPressure strong{font-size:27px!important;margin-top:3px!important}
  #phone.live-mode #playScreen .aiHudPressure:after{margin-top:3px!important}
  #phone.live-mode #playScreen .aiHudLive,#phone.live-mode #playScreen .idleSignal{left:120px!important;right:13px!important}
  #phone.live-mode #playScreen .aiHudLive{top:13px!important}
  #phone.live-mode #playScreen .sceneCount{top:32px!important;right:13px!important}
  #phone.live-mode #playScreen .pressureRail{left:120px!important;right:13px!important;top:48px!important}
  #phone.live-mode #playScreen .idleSignal{top:58px!important}
  #phone.live-mode #playScreen .liveMetrics{right:13px!important;bottom:9px!important;width:132px!important;gap:4px!important;padding-top:5px!important}
  #phone.live-mode #playScreen .liveMetric b{font-size:21px!important}
  #phone.live-mode #playScreen .turnState{margin-bottom:4px!important;padding-top:4px!important;font-size:7px!important}
  #phone.live-mode #playScreen .otherPanel textarea{min-height:38px!important;max-height:42px!important}
}
#reviewScreen .nextAction{
  background:#f3f2ed!important;border-color:rgba(25,31,28,.09)!important;
}
#reviewScreen .nextAction::before{color:#249d84!important}
#reviewScreen .nextAction small{color:#7a7f7b!important}
#reviewScreen .nextAction strong{color:#171a18!important}
#reviewScreen .nextAction p{color:#626762!important}
#reviewScreen .nextAction em{color:#247d6c!important}
#reviewScreen .nextPlayIntro{color:#666b67!important}
#reviewScreen .nextPlayIntro strong{color:#171a18!important}
#reviewScreen .nextPlayCTA,
#reviewScreen .retry{
  border-radius:999px!important;background:#171b19!important;color:#fff!important;
}
#reviewScreen .back{border-radius:999px!important;background:#fff!important;color:#277d6c!important}
#reviewScreen .conversationBubble{background:#f3f2ed!important;border-color:rgba(25,31,28,.08)!important}
@media(max-width:560px){
  #reviewScreen{padding-inline:10px!important}
  #reviewScreen .resultPoster,#reviewScreen .resultFlowPanel,#reviewScreen .reviewDetails{border-radius:15px!important}
  #reviewScreen .flowHead{padding:16px 15px 12px!important}
  #playScreen .aiAssistPanel.show{
    position:fixed!important;left:10px!important;right:10px!important;bottom:68px!important;
    z-index:175!important;max-height:calc(100svh - 92px)!important;overflow:auto!important;
    padding:14px!important;border-radius:17px!important;
    box-shadow:0 24px 70px rgba(38,31,27,.22),0 0 0 999px rgba(244,242,237,.58)!important;
  }
  #playScreen .aiAssistActions{grid-template-columns:1fr!important}
  #playScreen .aiAssistAction.primary{min-height:46px!important}
}

/* VOICE audio field — use the same restrained mint language as HOME. */
#phone.voice-only #playScreen.liveInstrument #wave span{
  background:linear-gradient(180deg,rgba(53,216,182,.32),rgba(35,143,121,.72))!important;
  opacity:.68!important;
  box-shadow:none!important;
}
#phone.voice-only #playScreen.liveInstrument #wave.active span{
  background:linear-gradient(180deg,#75ead2,#25b99b)!important;
  opacity:.92!important;
  box-shadow:0 0 7px rgba(53,216,182,.22)!important;
}
#phone.voice-only #playScreen.liveInstrument #wave.active span:nth-child(3n),
#phone.voice-only #playScreen.liveInstrument #wave.active span:nth-child(4n){
  background:linear-gradient(180deg,#9af1df,#35d8b6)!important;
}

/* Remove the legacy grey slab behind the three VOICE response cards. */
#phone.voice-only #playScreen.liveInstrument .choices{
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  padding:0!important;
}
#phone.voice-only #playScreen.liveInstrument .choice{
  background:rgba(255,255,252,.78)!important;
  border-color:rgba(25,31,28,.11)!important;
  box-shadow:none!important;
}
#phone.voice-only #playScreen.liveInstrument .choice:disabled{
  background:rgba(255,255,252,.58)!important;
}
