/* Purpose: a working glacier guide and a persisted five-stage discovery path. */
.sr-only { position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap; }
.welcome-guide { display:flex;align-items:center;gap:20px;margin:22px 0 0; }
.welcome-guide img { width:132px;height:132px;object-fit:contain;filter:drop-shadow(0 10px 12px #0b3a5e12); }
.welcome-guide p { font-size:14px;line-height:1.6;color:var(--mute); }
.welcome-guide b { color:var(--deep);font-size:16px; }
.welcome .steps { margin-top:18px; }
.interview { max-width:1180px;margin-top:32px;padding:0 32px; }
.chat-heading { padding-bottom:22px; }
.chat-heading h1 { font-size:43px;line-height:1.05;letter-spacing:-.035em;margin:12px 0; }
.chat-heading h1 br { display:none; }
.chat-heading p { margin:10px 0 0; }
.journey { border-top:1px solid var(--frost);border-bottom:1px solid var(--frost);padding:22px 0;margin-bottom:35px; }
.journey ol { display:grid;grid-template-columns:repeat(5,1fr);list-style:none;gap:12px;margin:0;padding:0; }
.journey li { display:flex;align-items:center;gap:10px;color:#71889a;font-size:13px;position:relative; }
.step-number { width:29px;height:29px;display:flex;align-items:center;justify-content:center;background:#eaf0f5;border:1px solid var(--frost);border-radius:50%;font:500 10px 'Geist Mono',monospace;flex-shrink:0; }
.journey li.current { color:var(--deep);font-weight:600; }
.journey .current .step-number { border-color:var(--ice);background:var(--deep);color:white;box-shadow:0 0 0 4px #3fa6e814; }
.journey li.finished { color:#227a59; }
.journey .finished .step-number { background:#e3f6ed;color:#227a59;border-color:#c2e8d6; }
.interview-layout { display:grid;grid-template-columns:295px minmax(0,1fr);gap:64px;align-items:start; }
.firny-guide { --tool:#3fa6e8;position:sticky;top:28px;min-width:0;padding:8px 0 20px; }
.guide-meta { display:flex;align-items:center;gap:8px;font-size:16px;font-weight:600; }
.guide-online { width:7px;height:7px;background:var(--known);border-radius:50%;box-shadow:0 0 0 4px #2fb67c12; }
.guide-role { display:block;color:var(--mute);font-size:11px;font-weight:400;margin-left:auto; }
.mascot-scene { width:295px;height:295px;position:relative;margin:13px 0 0;isolation:isolate; }
.mascot { display:block;position:relative;z-index:2;width:100%;height:100%;object-fit:contain;animation:firny-breathe 5s ease-in-out infinite;transform-origin:50% 90%; }
.ground-shadow { position:absolute;z-index:-1;bottom:11px;left:20%;width:60%;height:18px;background:#0b3a5e12;border-radius:50%;filter:blur(9px); }
.orbit { position:absolute;z-index:-1;border:1px solid #bddcea;border-radius:50%;width:200px;height:200px;left:46px;top:40px;opacity:.5; }
.orbit-two { width:248px;height:248px;left:22px;top:16px;border-style:dashed;opacity:.3; }
.work-tool { position:absolute;z-index:3;right:-6px;top:24%;width:76px;min-height:91px;border:1px solid #65d9f2;border-radius:12px;padding:10px 8px 8px;color:#9aebff;background:linear-gradient(145deg,#123f5cf2,#061f35f5);box-shadow:0 7px 20px #0b3a5e24,0 0 20px #3fa6e821;transform:rotate(5deg); }
.work-tool::after { content:'';position:absolute;height:28px;width:1px;background:linear-gradient(#70e5ff,transparent);left:40%;top:100%;transform:rotate(22deg);transform-origin:top; }
.work-tool svg { display:block;width:35px;height:35px;margin:0 auto 6px; }
.work-tool>span:last-of-type { display:block;text-align:center;font:500 7px 'Geist Mono',monospace;letter-spacing:.04em;white-space:nowrap; }
.tool-indicator { display:block;width:4px;height:4px;border-radius:50%;background:#81edff;position:absolute;right:7px;top:6px;box-shadow:0 0 5px #81edff; }
.tool-signal { display:flex;align-items:flex-end;justify-content:center;gap:3px;height:9px;margin-top:5px; }
.tool-signal i { width:3px;height:4px;background:#70d6f5;border-radius:1px;opacity:.6; }
.tool-signal i:nth-child(2),.tool-signal i:nth-child(4) { height:6px; }
.tool-signal i:nth-child(3) { height:9px; }
.guide-caption { max-width:275px;margin:15px 0 0; }
.guide-caption .eyebrow { font-size:10px;letter-spacing:.1em; }
.guide-caption h2 { font-size:25px;line-height:1.13;letter-spacing:-.035em;margin:12px 0 10px; }
.guide-caption p { color:var(--mute);font-size:14px;line-height:1.6;margin:0; }
.guide-working { display:flex;align-items:center;gap:10px;font-size:11px;color:var(--mute);padding-top:18px;margin-top:18px;border-top:1px solid var(--frost); }
.working-dots { display:flex;gap:3px; }
.working-dots i { width:4px;height:4px;display:block;border-radius:50%;background:var(--ice);opacity:.55; }
.conversation { min-width:0; }
.chat-note { margin:3px 0 16px;padding:0 0 15px;font-size:13px; }
.messages { gap:15px;padding:6px 0; }
.bubble { max-width:100%;font-size:18px;padding:25px 28px;line-height:1.65;border-color:#d5e5ef; }
.bubble.assistant { border-radius:3px 20px 20px 20px;box-shadow:0 8px 28px #0b3a5e04;position:relative; }
.bubble.assistant .who { margin-bottom:12px;font-size:10px;letter-spacing:.08em; }
.bubble.user { font-size:15px;padding:13px 19px;border-radius:16px 3px 16px 16px;max-width:86%; }
.bubble.user .who { font-size:9px;margin-bottom:4px; }
.composer { margin-top:20px;border-radius:16px;background:#ffffffb3; }
.composer label { font-weight:500;font-size:13px; }
.composer textarea { background:white;line-height:1.55;border-color:#c8dbe8; }
.composer textarea:focus { outline:2px solid #3fa6e8;outline-offset:1px; }
.history { margin-bottom:16px;border-bottom:1px solid var(--frost);padding-bottom:12px; }
.history summary { cursor:pointer;color:var(--mute);font-size:12px;padding:4px 0; }
.history .messages { margin-top:16px; }
.history .bubble { font-size:14px;padding:15px 18px;box-shadow:none; }
.history .bubble .who { font-size:9px; }
.thinking { display:flex;align-items:center;gap:9px;font-size:12px;margin:14px 0 0; }
.thinking::before { content:'';width:6px;height:6px;border-radius:50%;background:var(--ice);animation:firny-pulse 1s ease-in-out infinite; }
.privacy-reminder { color:#71889a;font-size:11px;line-height:1.6;max-width:560px;margin:20px 0 0; }
.firny-guide.is-thinking .mascot { animation:firny-work 2s ease-in-out infinite; }
.firny-guide.is-thinking .working-dots i { animation:firny-pulse 1s ease-in-out infinite; }
.firny-guide.is-thinking .working-dots i:nth-child(2) { animation-delay:.15s; }
.firny-guide.is-thinking .working-dots i:nth-child(3) { animation-delay:.3s; }
.firny-guide.is-thinking .tool-signal i { animation:firny-pulse .8s ease-in-out infinite alternate; }
.firny-guide.is-thinking .tool-signal i:nth-child(even) { animation-delay:.25s; }
.firny-guide.is-changing .work-tool { animation:tool-arrive .65s ease both; }
.firny-guide[data-stage='3'] .orbit-one { border-color:#3fa6e8;box-shadow:0 0 22px #3fa6e812; }
.firny-guide.is-complete .work-tool { color:#b7f4d8;border-color:#6fdaae;box-shadow:0 8px 22px #2fb67c22; }
.firny-guide.is-complete .guide-online { box-shadow:0 0 0 5px #2fb67c12; }
@keyframes firny-breathe { 0%,100%{transform:translateY(0) rotate(-.4deg)}50%{transform:translateY(-4px) rotate(.4deg)} }
@keyframes firny-work { 0%,100%{transform:translateY(0) rotate(0)}50%{transform:translateY(-3px) rotate(-1deg)} }
@keyframes firny-pulse { 0%,100%{opacity:.35}50%{opacity:1} }
@keyframes tool-arrive { 0%{opacity:.1;transform:translateY(8px) rotate(0) scale(.9)}65%{transform:translateY(-2px) rotate(7deg) scale(1.03)}100%{opacity:1;transform:rotate(5deg) scale(1)} }
@media(min-width:1400px) { .interview-layout{grid-template-columns:315px minmax(0,1fr);gap:80px}.mascot-scene{width:315px;height:315px} }
@media(max-width:1000px) and (min-width:761px) { .interview-layout{grid-template-columns:230px minmax(0,1fr);gap:32px}.mascot-scene{width:230px;height:230px}.guide-role{font-size:9px}.work-tool{width:64px;right:-2px;min-height:80px;padding:8px 5px}.work-tool svg{width:29px;height:29px}.work-tool>span:last-of-type{font-size:6px}.guide-caption h2{font-size:23px}.guide-caption p{font-size:13px}.orbit{width:160px;height:160px;left:36px;top:28px}.orbit-two{width:200px;height:200px;left:16px;top:8px}.bubble{padding:20px;font-size:17px} }
@media(max-width:760px) {
  .interview{padding:0 22px;margin-top:22px}.chat-heading{gap:10px;padding-bottom:18px;align-items:flex-start}.chat-heading h1{font-size:33px;line-height:1.06;max-width:240px}.chat-heading h1 br{display:block}.chat-heading .eyebrow{font-size:9px;letter-spacing:.08em}.chat-heading p{font-size:12px;margin:9px 0 0}.saved{margin-top:8px;font-size:9px;gap:5px;white-space:normal;max-width:70px;line-height:1.4}.journey{padding:17px 0;margin-bottom:14px}.journey ol{gap:5px}.journey li{flex-direction:column;gap:7px;align-items:center;font-size:10px}.step-number{width:25px;height:25px;font-size:9px}.interview-layout{display:flex;flex-direction:column;gap:16px}.firny-guide{display:grid;grid-template-columns:138px minmax(0,1fr);column-gap:16px;position:relative;top:auto;width:100%;padding:0 0 14px;border-bottom:1px solid var(--frost)}.guide-meta{grid-column:1/-1;font-size:13px;gap:8px}.guide-role{font-size:10px;margin-left:3px}.mascot-scene{grid-column:1;grid-row:2;width:138px;height:148px;margin-top:10px}.mascot{width:138px;height:148px}.ground-shadow{bottom:5px;height:9px;filter:blur(6px)}.orbit{width:100px;height:100px;left:18px;top:22px}.orbit-two{width:124px;height:124px;left:6px;top:10px}.work-tool{width:48px;min-height:57px;padding:6px 3px 5px;right:-5px;top:37%;border-radius:7px}.work-tool svg{width:22px;height:22px;margin-bottom:3px}.work-tool>span:last-of-type{font-size:4.6px;letter-spacing:0}.tool-indicator{width:3px;height:3px;right:4px;top:4px}.tool-signal{height:5px;gap:2px;margin-top:3px}.tool-signal i{width:2px;height:3px}.tool-signal i:nth-child(2),.tool-signal i:nth-child(4){height:4px}.tool-signal i:nth-child(3){height:5px}.work-tool::after{height:15px}.guide-caption{grid-column:2;grid-row:2;align-self:center;margin:6px 0 0;min-width:0}.guide-caption .eyebrow{font-size:8px;line-height:1.5;letter-spacing:.04em}.guide-caption h2{font-size:21px;line-height:1.1;margin:9px 0 8px}.guide-caption p{font-size:11px;line-height:1.5}.guide-working{grid-column:1/-1;padding-top:5px;margin-top:0;border:0;font-size:10px}.conversation{width:100%}.chat-note{font-size:11px;margin:0 0 12px;padding:0;border:0}.bubble{font-size:16px;padding:19px 21px;line-height:1.6}.bubble.assistant .who{font-size:9px;margin-bottom:9px}.composer{padding:16px;margin-top:16px}.composer textarea{font-size:16px}.composer-bottom{gap:10px;align-items:flex-end}.composer-bottom .quiet{max-width:170px;font-size:10px}.composer .primary{font-size:13px;padding:11px 16px}.privacy-reminder{font-size:10px;margin-top:16px}.welcome-guide{margin-top:18px;gap:14px}.welcome-guide img{width:100px;height:100px}.welcome-guide p{font-size:12px}.welcome-guide b{font-size:14px}.welcome .steps{margin-top:10px}.history .bubble{font-size:13px;padding:14px 16px}
}
@media(prefers-reduced-motion:reduce) { .mascot,.is-thinking .mascot,.is-thinking .working-dots i,.is-thinking .tool-signal i,.thinking::before,.is-changing .work-tool{animation:none!important} }
@media(max-width:760px) { .work-tool { top:20%; } }
