.modifier-strip{border-bottom:1px solid #364049;background:#0d1518;padding:9px 10px;font-size:10px;line-height:1.55;color:#9aa6a3}.modifier-strip b{display:block;color:#d2b06d;letter-spacing:.1em;margin-bottom:3px}.system-warning{padding:8px 10px;border-bottom:1px solid #6d3941;background:#190d10;color:#ed8c96;font-size:10px;line-height:1.55;animation:warnPulse 1.2s steps(2,end) infinite}.trait-strip{padding:8px 10px;border-bottom:1px solid #29343b;background:#0b1014;color:#84918e;font-size:10px;line-height:1.5}.relationship-state{display:inline-block;margin:-3px 0 9px;padding:5px 7px;border:1px solid #45514b;color:#81bc8e;background:#0d1511;font-size:10px;letter-spacing:.08em}.cross-hook{margin:-2px 0 8px;padding:8px 9px;border-left:2px solid #e05a67;background:#160d10;color:#e99aa2;font-size:11px;line-height:1.55}.choices small.impact{display:none!important}.rfd-dev-show-impact .choices small.impact{display:block!important;margin-top:6px;color:#d2b06d;font-size:10px;line-height:1.5;letter-spacing:.04em;opacity:.95}.rfd-dev-show-impact .choices button{padding-bottom:10px}.choices button.unlocked-choice{border-color:#d2b06d;background:linear-gradient(90deg,#19170f,#11171c);box-shadow:inset 2px 0 #d2b06d}.choices button.unlocked-choice b::before{content:'◆ ';color:#d2b06d}.trait-result{margin-top:10px;padding:11px 12px;border:1px dashed #425057;color:#81bc8e;font-size:11px;line-height:1.65}.dex-terminal{max-height:min(88vh,720px);overflow:auto}.dex-content{display:grid;gap:12px;margin:14px 0}.dex-group{border:1px solid #303b42;padding:11px}.dex-group>b{display:block;color:#62c7c9;font-size:11px;letter-spacing:.1em;margin-bottom:8px}.dex-file{padding:9px 0;border-top:1px solid #242d32}.dex-file:first-of-type{border-top:0}.dex-file strong{display:block;font-family:"Noto Serif TC","Songti TC",serif;color:#efe4cc;font-size:15px}.dex-file small{display:block;color:#89928f;font-size:10px;margin-top:4px;line-height:1.55}.dex-file.rare strong{color:#ef9ca5}.pxbtn+.pxbtn{margin-top:8px}

.feedback{padding:11px 10px 12px}.feedback-note{color:#aab4b1;font-size:11px;line-height:1.55;margin-bottom:8px}.feedback-deltas{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.delta-chip{display:flex;justify-content:space-between;align-items:center;border:1px solid #344149;background:#0d1418;padding:9px 10px;min-height:45px}.delta-chip small{font-size:9px;letter-spacing:.08em;color:#8f9996}.delta-chip b{font-size:18px;line-height:1;color:#efe4cc}.delta-chip.up{border-color:#3b665d;background:#0d1715}.delta-chip.up b{color:#81bc8e}.delta-chip.down{border-color:#694049;background:#180f12}.delta-chip.down b{color:#ed8c96}.stat.score-pulse-up{animation:scoreUp .62s ease}.stat.score-pulse-down{animation:scoreDown .62s ease}.stat.score-pulse-up .fill{filter:brightness(1.7) saturate(1.3)}.stat.score-pulse-down .fill{filter:brightness(1.3) saturate(1.8)}

.result-radar-wrap{margin:14px 0 10px;border:1px solid #303b42;background:#0a1014;padding:11px 8px 7px}.result-radar-title{text-align:center;color:#62c7c9;font-size:11px;letter-spacing:.12em;margin-bottom:4px}.result-radar-wrap canvas{display:block;width:100%;height:auto;max-width:340px;margin:0 auto}

.studio-credit{margin:10px 0 14px;padding-top:10px;border-top:1px solid #263139;text-align:center;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.studio-credit b{display:block;color:#d2b06d;font-size:10px;letter-spacing:.14em}.studio-credit span{display:block;margin-top:4px;color:#7f8986;font-size:9px;letter-spacing:.08em;line-height:1.5}.start .studio-credit{margin:10px 0 12px;padding-top:0;border-top:0}.result-credit{margin-top:14px;margin-bottom:12px}.dex-credit{margin:14px 0 10px}.foot span:first-child{letter-spacing:.12em}

.overlay.end{align-items:flex-start;scroll-padding-top:20px}.result-terminal .rgrid,.result-terminal>.dex{display:none!important}

@keyframes scoreUp{0%{color:#81bc8e;text-shadow:0 0 0 rgba(129,188,142,0)}35%{color:#b7e0c1;text-shadow:0 0 12px rgba(129,188,142,.85)}100%{text-shadow:none}}@keyframes scoreDown{0%{color:#ed8c96;text-shadow:0 0 0 rgba(224,90,103,0)}35%{color:#ffc0c6;text-shadow:0 0 12px rgba(224,90,103,.85)}100%{text-shadow:none}}@keyframes warnPulse{50%{opacity:.72}}
@media(max-width:430px) and (max-height:900px){
  .modifier-strip{padding:5px 8px;font-size:9px;line-height:1.3}.modifier-strip b{margin-bottom:1px}
  .system-warning{padding:5px 8px;font-size:9px;line-height:1.3}
  .trait-strip{padding:5px 8px;font-size:9px;line-height:1.3}
  .relationship-state{margin:-1px 0 5px;padding:3px 5px;font-size:9px}
  .cross-hook{margin:-1px 0 5px;padding:5px 6px;font-size:9px;line-height:1.3}
  .rfd-dev-show-impact .choices small.impact{margin-top:3px;font-size:9px;line-height:1.25}
  .feedback{padding:7px 8px}.feedback-note{font-size:10px;line-height:1.35;margin-bottom:5px}.feedback-deltas{gap:4px}.delta-chip{padding:6px 7px;min-height:36px}.delta-chip small{font-size:8px}.delta-chip b{font-size:15px}
  .screen{-webkit-overflow-scrolling:touch;overscroll-behavior-y:contain}
  .os:has(.recap-panel:not(.hidden),.interaction-panel:not(.hidden)) .portrait,
  .os:has(.choices button:nth-child(4)) .portrait{height:166px}
  .os:has(.recap-panel:not(.hidden),.interaction-panel:not(.hidden)) .screen{padding:8px 9px 10px}
  .os:has(.recap-panel:not(.hidden),.interaction-panel:not(.hidden)) .dialog,
  .os:has(.choices button:nth-child(4)) .dialog{margin:8px 0;padding:11px 11px}
  .os:has(.recap-panel:not(.hidden),.interaction-panel:not(.hidden)) .who{font-size:20px;margin-bottom:7px;line-height:1.25}
  .os:has(.recap-panel:not(.hidden),.interaction-panel:not(.hidden)) .quote{font-size:17px;line-height:1.52}
  .os:has(.recap-panel:not(.hidden),.interaction-panel:not(.hidden)) .choices,
  .os:has(.choices button:nth-child(4)) .choices{gap:6px}
  .os:has(.recap-panel:not(.hidden),.interaction-panel:not(.hidden)) .choices button,
  .os:has(.choices button:nth-child(4)) .choices button{padding:10px 10px;min-height:52px}
  .os:has(.recap-panel:not(.hidden),.interaction-panel:not(.hidden)) .recap-panel{margin:10px 0 0;padding:12px 13px}
  .os:has(.recap-panel:not(.hidden),.interaction-panel:not(.hidden)) .recap-kicker{font-size:10px;margin-bottom:6px}
  .os:has(.recap-panel:not(.hidden),.interaction-panel:not(.hidden)) .recap-title{font-size:16px;margin-bottom:8px}
  .os:has(.recap-panel:not(.hidden),.interaction-panel:not(.hidden)) .recap-list{gap:7px}
  .os:has(.recap-panel:not(.hidden),.interaction-panel:not(.hidden)) .recap-entry{font-size:11px;line-height:1.7}
  .os:has(.recap-panel:not(.hidden),.interaction-panel:not(.hidden)) .interaction-panel{margin-top:10px;padding:14px 13px}
  .os:has(.recap-panel:not(.hidden),.interaction-panel:not(.hidden)) .interaction-kicker{margin-bottom:8px}
  .os:has(.recap-panel:not(.hidden),.interaction-panel:not(.hidden)) .interaction-speaker{margin-bottom:7px}
  .os:has(.recap-panel:not(.hidden),.interaction-panel:not(.hidden)) .interaction-text{font-size:18px;line-height:1.68}
  .os:has(.recap-panel:not(.hidden),.interaction-panel:not(.hidden)) .story-beat{margin-top:10px;padding:10px 11px;font-size:12px;line-height:1.7}
  .os:has(.recap-panel:not(.hidden),.interaction-panel:not(.hidden)) .continue-btn{margin-top:12px;padding:13px 10px}
}
@media(max-width:360px){.modifier-strip,.trait-strip,.system-warning{font-size:9px}.cross-hook{font-size:10px}.feedback-deltas{grid-template-columns:1fr 1fr}.delta-chip{padding:8px}.delta-chip b{font-size:17px}.studio-credit b{font-size:9px}.studio-credit span{font-size:8px}}
@media(max-width:360px) and (max-height:900px){.modifier-strip,.trait-strip,.system-warning{font-size:8px}.cross-hook{font-size:9px}.delta-chip{padding:5px}.delta-chip b{font-size:14px}}

.case-file-result{margin:16px 0 4px;border:1px solid #344149;background:linear-gradient(135deg,#0c1217,#0a0e11);padding:14px;color:#dce4df}.case-file-kicker{color:#d2b06d;font:700 11px/1.4 monospace;letter-spacing:.1em}.run-id{margin-top:5px;color:#758783;font:9px/1.4 monospace;letter-spacing:.08em}.case-file-title{margin:15px 0 8px;color:#62c7c9;font:700 12px/1.4 monospace;letter-spacing:.08em}.turning-point{display:grid;gap:4px;padding:10px 0;border-top:1px solid #253138;font-size:12px;line-height:1.55}.turning-point b{color:#d2b06d;font:700 9px/1.4 monospace}.turning-point em{font-style:normal;color:#b8c4bf}.turning-point small{color:#82918c;line-height:1.5}.receipt{display:grid;gap:5px;margin-top:12px;padding:11px;border:1px solid #293840;background:#11191d;color:#aab9b3;font-size:12px;line-height:1.55}.receipt b{color:#62c7c9;font:700 9px/1.4 monospace;letter-spacing:.08em}

.choices button.case-tool-choice{border-color:#3d8991;background:linear-gradient(90deg,#102126,#10181c);box-shadow:inset 2px 0 #62c7c9}.choices button.case-tool-choice b::before{content:'◇ ';color:#62c7c9}.choices button.choice-confirmed{animation:choiceConfirmed .42s cubic-bezier(.2,.8,.2,1)}.round-enter .portrait-wrap{animation:cardScan .42s ease-out}.round-enter .dialog{animation:cardRise .38s .04s both}.round-enter .choices{animation:cardRise .38s .10s both}.round-enter .event-visual{animation:eventSignal .48s steps(2,end)}.result-reveal .result-title,.result-reveal .class,.result-reveal #classDesc,.result-reveal .rgrid,.result-reveal .summary-line,.result-reveal .case-file-result,.result-reveal .trait-result,.result-reveal .result-actions{animation:resultRise .42s both}.result-reveal .class{animation-delay:.05s}.result-reveal #classDesc{animation-delay:.10s}.result-reveal .rgrid{animation-delay:.16s}.result-reveal .rbox{animation:resultBox .34s both}.result-reveal .rbox:nth-child(1){animation-delay:.22s}.result-reveal .rbox:nth-child(2){animation-delay:.30s}.result-reveal .rbox:nth-child(3){animation-delay:.38s}.result-reveal .rbox:nth-child(4){animation-delay:.46s}.result-reveal .summary-line{animation-delay:.53s}.result-reveal .case-file-result{animation-delay:.60s}.result-reveal .trait-result{animation-delay:.67s}.result-reveal .result-actions{animation-delay:.74s}.rfd-unlock-stack{position:fixed;z-index:78;left:50%;top:max(14px,env(safe-area-inset-top));width:min(410px,calc(100vw - 28px));transform:translateX(-50%);pointer-events:none}.rfd-unlock-note{margin-bottom:8px;padding:11px 12px;border:1px solid #62c7c9;background:rgba(8,15,18,.97);box-shadow:0 10px 30px rgba(0,0,0,.45);opacity:0;transform:translateY(-12px);transition:opacity .2s ease,transform .2s ease}.rfd-unlock-note.show{opacity:1;transform:translateY(0)}.rfd-unlock-note small,.rfd-unlock-note b,.rfd-unlock-note span{display:block}.rfd-unlock-note small{color:#62c7c9;font:700 8px/1.4 monospace;letter-spacing:.12em}.rfd-unlock-note b{margin-top:4px;color:#efe4cc;font:700 15px/1.4 "Noto Serif TC","Songti TC",serif}.rfd-unlock-note span{margin-top:3px;color:#9aa7a3;font-size:10px}.sfx-toggle{bottom:52px}.audio-toggle.sfx-toggle{color:#d2b06d}.audio-toggle.sfx-toggle.off{color:#687775}@keyframes choiceConfirmed{0%{transform:scale(1)}40%{transform:scale(.975);filter:brightness(1.45)}100%{transform:scale(1)}}@keyframes cardScan{0%{opacity:.35;transform:translateY(8px);filter:brightness(1.7)}100%{opacity:1;transform:none;filter:none}}@keyframes cardRise{0%{opacity:0;transform:translateY(8px)}100%{opacity:1;transform:none}}@keyframes eventSignal{0%,100%{filter:none}35%{filter:brightness(1.8) hue-rotate(25deg)}65%{filter:contrast(1.35)}}@keyframes resultRise{0%{opacity:0;transform:translateY(10px)}100%{opacity:1;transform:none}}@keyframes resultBox{0%{opacity:0;transform:scale(.94)}100%{opacity:1;transform:scale(1)}}

@media (min-width:861px) {
  html,body{height:100%;overflow:hidden}
  .wrap{width:min(100%,1180px);height:100dvh;min-height:100dvh;padding:14px 22px 10px}
  .brand-block{margin-bottom:8px;flex:0 0 auto}.os{flex:1;min-height:0;display:flex;flex-direction:column}.screen{display:grid;grid-template-columns:minmax(300px,.84fr) minmax(430px,1.16fr);grid-template-areas:"portrait dialog" "idline choices" "recap choices" "feedback feedback" "interaction interaction";column-gap:14px;row-gap:9px;align-content:start;overflow-y:auto}.portrait-wrap{grid-area:portrait}.portrait{width:auto;height:238px;max-width:100%;margin:0 auto;aspect-ratio:auto}.idline{grid-area:idline;margin-top:0;align-self:start}.dialog{grid-area:dialog;margin:0;min-height:0;align-self:stretch}.choices{grid-area:choices;gap:7px;align-content:start}.choices button{min-height:56px;padding:11px 12px}.recap-panel{grid-area:recap;margin:0}.feedback{grid-area:feedback;margin:0}.interaction-panel{grid-area:interaction;margin:0}.foot{flex:0 0 auto}
}
@media (min-width:861px) and (max-height:760px) {
  .wrap{padding-top:8px}.brand-block{display:none}.portrait{height:180px}.screen{grid-template-columns:minmax(255px,.8fr) minmax(400px,1.2fr);row-gap:6px}.dialog{padding:10px 12px}.dialog .who{font-size:19px;margin-bottom:5px}.dialog .quote{font-size:16px;line-height:1.46}.choices{gap:5px}.choices button{min-height:47px;padding:8px 10px}.choices b{font-size:13px;line-height:1.3}.choices small{font-size:10px;margin-top:3px}.modifier-strip,.trait-strip,.system-warning{padding:5px 8px}.foot{display:none}
}
