/* Atmosphere borrows the homepage orbit language, scoped to interior screens only. */
.shell[data-screen=interview] .interview-panel,.shell[data-screen=quiz] .question-panel{isolation:isolate;position:relative}
.shell[data-screen=interview] .interview-panel{background:radial-gradient(ellipse at 95% 0%,color-mix(in srgb,var(--scene-glow) 11%,transparent),transparent 45%),linear-gradient(155deg,#20172d,#110e1b 54%,#191122);border-color:#63507866;box-shadow:0 22px 70px #0005,inset 0 1px 0 #c9a4ff19}
.shell[data-screen=interview] .interview-atmosphere{position:absolute;inset:0;overflow:hidden;z-index:-1;pointer-events:none;border-radius:inherit}
.shell[data-screen=interview] .atmosphere-ring{position:absolute;display:block;width:350px;height:350px;border:1px solid color-mix(in srgb,var(--scene-glow) 17%,transparent);border-radius:50%;top:-155px;right:-150px;animation:interior-turn 30s linear infinite}
.shell[data-screen=interview] .atmosphere-ring:after{content:"";position:absolute;left:48px;top:47px;width:5px;height:5px;border-radius:50%;background:var(--scene-glow);box-shadow:0 0 13px var(--scene-glow)}
.shell[data-screen=interview] .ring-two{width:430px;height:430px;top:-195px;right:-190px;border-style:dashed;opacity:.45;animation-direction:reverse;animation-duration:44s}
.shell[data-screen=interview] .atmosphere-mote{position:absolute;width:3px;height:3px;border-radius:50%;background:var(--scene-glow);box-shadow:0 0 10px var(--scene-glow);opacity:.3;animation:interior-drift 8s ease-in-out infinite}
.shell[data-screen=interview] .mote-one{right:10%;top:20%}.shell[data-screen=interview] .mote-two{left:8%;top:66%;animation-delay:-3s}.shell[data-screen=interview] .mote-three{right:17%;bottom:16%;animation-delay:-6s}
.shell[data-screen=interview] .host-avatar{animation:interior-hover 5s ease-in-out infinite}
.shell[data-screen=interview] .host-orbit{position:absolute;inset:-7px;border:1px solid #c8a1ff55;border-radius:50%;animation:interior-turn 11s linear infinite;pointer-events:none}
.shell[data-screen=interview] .host-orbit:after{content:"";position:absolute;left:7px;top:6px;width:4px;height:4px;background:#d5baff;border-radius:50%;box-shadow:0 0 10px #a779ff}
.shell[data-screen=interview] .chip{animation:chip-arrive .4s both;animation-delay:var(--arrival);transition:background .25s,border-color .25s,box-shadow .25s,transform .2s}
.shell[data-screen=interview] .chip.selected{box-shadow:0 0 20px color-mix(in srgb,var(--dot) 16%,transparent),inset 0 1px 0 #ffffff22}
.shell[data-screen=interview] .understanding.show{animation:reply-arrive .5s cubic-bezier(.2,.8,.2,1) both}
.shell[data-screen=interview] .interview-actions .primary{position:relative;overflow:hidden}
.shell[data-screen=interview] .interview-actions .primary:not(:disabled):after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 25%,#fff2 48%,transparent 70%);transform:translateX(-120%);animation:interior-sheen 5s ease-in-out infinite;pointer-events:none}
.shell[data-screen=quiz] .question-panel{background:radial-gradient(ellipse at 50% 0%,#9047ff1b,transparent 63%),linear-gradient(145deg,#1c1528f5,#100d18f5);border-color:#80619866;box-shadow:0 28px 70px #0006,inset 0 1px 0 #d6b7ff14;overflow:hidden;padding-top:15px;animation:question-arrive .42s cubic-bezier(.2,.8,.2,1) both}
.shell[data-screen=quiz] .question-panel:before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background-image:linear-gradient(#bb9bfa07 1px,transparent 1px),linear-gradient(90deg,#bb9bfa07 1px,transparent 1px);background-size:28px 28px;mask-image:linear-gradient(#000,transparent 72%)}
.shell[data-screen=quiz] .interior-orbit{position:relative;height:112px;width:190px;max-width:100%;margin:0 auto 8px;display:grid;place-items:center;pointer-events:none}
.shell[data-screen=quiz] .interior-orbit>img{position:relative;width:53px;height:53px;object-fit:contain;animation:interior-hover 4.6s ease-in-out infinite;filter:drop-shadow(0 8px 18px #0008)}
.shell[data-screen=quiz] .interior-halo{position:absolute;inset:0;background:radial-gradient(ellipse,#9047ff35,transparent 62%);animation:interior-breathe 5s ease-in-out infinite}
.shell[data-screen=quiz] .orbit-track{position:absolute;width:150px;height:88px;border:1px solid #bb90ff44;border-radius:50%;transform:rotate(-18deg)}
.shell[data-screen=quiz] .track-one{animation:interior-turn 24s linear infinite}
.shell[data-screen=quiz] .track-two{width:107px;height:107px;border-style:dashed;border-color:#c7aeff33;animation:interior-turn 18s linear reverse infinite}
.shell[data-screen=quiz] .track-three{width:170px;height:76px;border-color:#ff92c022;transform:rotate(22deg)}
.shell[data-screen=quiz] .orbit-track>i{position:absolute;top:12px;left:16px;width:4px;height:4px;border-radius:50%;background:#c2a3ff;box-shadow:0 0 9px #b38cff}.shell[data-screen=quiz] .track-two>i{left:auto;right:12px;top:15px;background:#8ce2e1;box-shadow:0 0 9px #8ce2e1}
.shell[data-screen=quiz] .question-id{margin-bottom:15px;color:#b39bd5}
.shell[data-screen=quiz] .question-panel h2{font-size:clamp(24px,5.8cqw,34px);line-height:1.4;min-height:100px;margin-bottom:12px}
.shell[data-screen=quiz] .scale-wrap{margin-top:22px}.shell[data-screen=quiz] .scale button{position:relative;overflow:hidden;background:linear-gradient(160deg,#ffffff08,#100d18);transition:border-color .2s,background .2s,box-shadow .2s}
.shell[data-screen=quiz] .scale button:after{content:"";position:absolute;inset:4px;border:1px solid #c59fff88;border-radius:10px;opacity:0;pointer-events:none}
.shell[data-screen=quiz] .scale button.selected{background:#352146;border-color:#c698ff;box-shadow:0 0 24px #9047ff3a}
.shell[data-screen=quiz] .scale button.selected:after{animation:answer-ripple .34s ease-out both}
.shell[data-screen=quiz] .scale button:disabled{opacity:1;cursor:default}.shell[data-screen=quiz] .answer-captured .scale button:not(.selected){opacity:.55}
.shell[data-screen=quiz] .answer-captured{animation:answer-depart .34s ease-in both}
.shell[data-screen=quiz] .progress{margin-bottom:22px}.shell[data-screen=quiz] .progress span{position:relative;overflow:hidden;animation:progress-arrive .5s ease-out both}
.shell[data-screen=quiz] .progress span:after{content:"";position:absolute;inset:0;width:50px;background:linear-gradient(90deg,transparent,#fff9,transparent);animation:progress-glint 3s ease-in-out infinite}
.shell[data-screen=generating] .loader-scene{isolation:isolate}.shell[data-screen=generating] .loader-scene:before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(circle,#9047ff30,transparent 66%);animation:interior-breathe 3s ease-in-out infinite}
.shell[data-screen=generating] .gathering-orbit{position:absolute;inset:0;border:1px solid #9f7ad433;border-radius:50%;animation:interior-turn 7s linear infinite;pointer-events:none}.shell[data-screen=generating] .gathering-orbit i{position:absolute;top:33px;left:32px;width:7px;height:7px;border-radius:50%;background:#c8a4ff;box-shadow:0 0 18px #bd8fff}
.shell[data-screen=generating] .gathering-two{inset:30px;animation-direction:reverse;animation-duration:5s;border-color:#6fe5e526}.shell[data-screen=generating] .gathering-two i{top:24px;left:23px;background:#a1e6df;box-shadow:0 0 14px #6fe5e5}
.shell[data-screen=generating] .gathering-wave{position:absolute;inset:38px;border:1px solid #af83f166;border-radius:50%;animation:gather-wave 2.2s ease-out infinite;pointer-events:none}
.shell[data-screen=generating] .build-milestones{display:flex;gap:8px;justify-content:center;margin:23px auto 0}.shell[data-screen=generating] .build-milestones i{height:3px;width:28px;border-radius:3px;background:#b18bff;animation:milestone-in .45s both}.shell[data-screen=generating] .build-milestones i:nth-child(2){animation-delay:.65s}.shell[data-screen=generating] .build-milestones i:nth-child(3){animation-delay:1.3s}.shell[data-screen=generating] .build-milestones i:nth-child(4){animation-delay:1.95s}
@keyframes interior-turn{to{transform:rotate(360deg)}}@keyframes interior-hover{50%{transform:translateY(-5px)}}@keyframes interior-breathe{50%{opacity:.5;transform:scale(.93)}}@keyframes interior-drift{50%{transform:translateY(-17px);opacity:.7}}@keyframes chip-arrive{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@keyframes reply-arrive{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:none}}@keyframes interior-sheen{0%,65%{transform:translateX(-120%)}90%,100%{transform:translateX(120%)}}@keyframes question-arrive{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@keyframes answer-ripple{from{opacity:.9;transform:scale(.6)}to{opacity:0;transform:scale(1.18)}}@keyframes answer-depart{0%,55%{opacity:1;transform:none}100%{opacity:0;transform:translateY(-7px)}}@keyframes progress-arrive{from{width:var(--previous-progress)}to{width:var(--progress)}}@keyframes progress-glint{from{transform:translateX(-60px)}to{transform:translateX(520px)}}@keyframes gather-wave{from{transform:scale(.75);opacity:0}30%{opacity:.5}to{transform:scale(1.5);opacity:0}}@keyframes milestone-in{from{opacity:.15;transform:scaleX(.3)}to{opacity:1;transform:scaleX(1)}}
@media(max-width:600px){.shell[data-screen=quiz] .question-panel{padding:12px 18px 23px}.shell[data-screen=quiz] .interior-orbit{height:108px}.shell[data-screen=quiz] .question-panel h2{font-size:25px}.shell[data-screen=quiz] .topline{margin-top:22px}}
@media(max-width:600px) and (max-height:700px){.shell[data-screen=quiz] .interior-orbit{height:73px;margin-bottom:10px}.shell[data-screen=quiz] .interior-orbit>img{width:39px;height:39px}.shell[data-screen=quiz] .orbit-track{width:112px;height:62px}.shell[data-screen=quiz] .track-two{width:72px;height:72px}.shell[data-screen=quiz] .track-three{width:127px;height:58px}.shell[data-screen=quiz] .question-panel h2{font-size:23px;min-height:96px}.shell[data-screen=quiz] .question-id{margin-bottom:10px}.shell[data-screen=quiz] .scale-wrap{margin-top:14px}.shell[data-screen=quiz] .topline{margin:12px 0}.shell[data-screen=quiz] .progress{margin-bottom:15px}.shell[data-screen=quiz] .quiz-note{margin-top:11px}.shell[data-screen=quiz] .question-panel{padding-bottom:18px}}
@media(prefers-reduced-motion:reduce){.shell[data-screen=interview] *,.shell[data-screen=interview] *:after,.shell[data-screen=quiz] *,.shell[data-screen=quiz] *:after,.shell[data-screen=generating] *{animation:none!important;transition:none!important}.shell[data-screen=quiz] .answer-captured{opacity:1;transform:none}}
/* Breathing answer rings keep their cyan-to-pink meaning and their fixed hit areas. */
.shell[data-screen=quiz] .scale button i{position:relative;border-radius:50%;box-shadow:0 0 4px color-mix(in srgb,currentColor 30%,transparent),inset 0 0 3px color-mix(in srgb,currentColor 10%,transparent);animation:choice-ring-breathe 7s ease-in-out infinite;animation-delay:var(--breath-delay,0s)}
.shell[data-screen=quiz] .scale button i:before{content:"";position:absolute;inset:-5px;border-radius:50%;background:radial-gradient(circle,transparent 30%,currentColor 52%,transparent 72%);opacity:.08;filter:blur(3px);animation:choice-aura-breathe 7s ease-in-out infinite;animation-delay:var(--breath-delay,0s);pointer-events:none}
.shell[data-screen=quiz] .scale button:nth-child(2){--breath-delay:-.4s}.shell[data-screen=quiz] .scale button:nth-child(3){--breath-delay:-.8s}.shell[data-screen=quiz] .scale button:nth-child(4){--breath-delay:-1.2s}.shell[data-screen=quiz] .scale button:nth-child(5){--breath-delay:-1.6s}
.shell[data-screen=quiz] .scale button.selected i{box-shadow:0 0 7px color-mix(in srgb,currentColor 55%,transparent),inset 0 0 4px color-mix(in srgb,currentColor 20%,transparent)}
@keyframes choice-ring-breathe{0%,100%{opacity:.82;transform:scale(1)}50%{opacity:.94;transform:scale(1.015);box-shadow:0 0 6px color-mix(in srgb,currentColor 42%,transparent),inset 0 0 4px color-mix(in srgb,currentColor 14%,transparent)}}
@keyframes choice-aura-breathe{0%,100%{opacity:.08;transform:scale(1)}50%{opacity:.15;transform:scale(1.03)}}
@media(prefers-reduced-motion:reduce){.shell[data-screen=quiz] .scale button i,.shell[data-screen=quiz] .scale button i:before{animation:none!important;transform:none;opacity:1}.shell[data-screen=quiz] .scale button i:before{opacity:.1}}
