:root{font-family:Segoe UI,Trebuchet MS,sans-serif;line-height:1.5;font-weight:400;color:#f8f5eb;background:radial-gradient(circle at top,rgba(233,181,76,.2),transparent 36%),linear-gradient(180deg,#0b1d1b,#122923 52%,#091411);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}body.session-focus-mode{overflow:hidden}button,input,textarea,select{font:inherit}#root{min-height:100vh}.app-shell{width:min(1120px,calc(100vw - 2rem));margin:0 auto;padding:2rem 0 3rem}.app-shell.session-app-shell{width:min(1480px,calc(100vw - 1rem));padding:.85rem 0 1rem}.top-nav{display:flex;gap:.6rem;padding:.6rem;margin-bottom:1rem}.session-app-shell .top-nav{margin-bottom:.75rem}.top-nav-link{text-decoration:none;color:#f6eed8;padding:.75rem 1rem;border-radius:14px;background:#ffffff0a}.top-nav-link.active{background:#dabc6c2e;color:#fff3cb}.panel{background:#0a1713d1;border:1px solid rgba(220,185,110,.18);border-radius:28px;box-shadow:0 24px 60px #00000047}.landing-panel,.summary-panel{padding:2rem}.session-shell{display:grid;gap:.85rem;min-height:calc(100vh - 8rem)}.session-shell.focus-mode{min-height:100dvh;padding:.75rem;background:radial-gradient(circle at top,rgba(224,180,74,.12),transparent 32%),linear-gradient(180deg,#081311,#11241f)}.session-hud{display:flex;justify-content:space-between;gap:1rem;align-items:start;padding:1rem 1.15rem}.session-hud-copy{display:grid;gap:.35rem}.session-subcopy{margin:0;max-width:56ch}.session-hud-tools{display:grid;gap:.8rem;justify-items:end}.session-meta{display:flex;flex-wrap:wrap;justify-content:end;gap:.65rem;color:#dbcfa8;font-size:.92rem}.session-chip,.trust-pill,.stage-status-chip{display:inline-flex;align-items:center;gap:.35rem;padding:.4rem .7rem;border-radius:999px;font-size:.82rem;letter-spacing:.03em}.session-chip{background:#ffffff0d;border:1px solid rgba(255,255,255,.06);color:#f5ebd0}.session-chip.approved-playable,.trust-pill.approved-playable{background:#89d9a71f;color:#cff7d1;border:1px solid rgba(137,217,167,.2)}.session-chip.provisional-demo,.trust-pill.provisional-demo{background:#f0bd7821;color:#f6deb1;border:1px solid rgba(240,189,120,.2)}.session-focus-button{margin-top:0;display:inline-flex;align-items:center;gap:.55rem}.focus-key-hint{display:inline-grid;place-items:center;min-width:1.45rem;min-height:1.45rem;border-radius:10px;background:#ffffff14;font-size:.82rem;font-weight:700}.eyebrow{text-transform:uppercase;letter-spacing:.2em;font-size:.74rem;color:#d9c06f}h1,h2{margin:0}h1{font-size:clamp(2rem,3vw,3.2rem);line-height:1.02}h2{font-size:1.15rem;margin-bottom:.85rem}.lead,.muted,.prompt-copy{color:#d8ddcf}.lead{max-width:60ch;font-size:1.08rem}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;margin:1.5rem 0}.mode-chooser{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1rem;margin:1.75rem 0}.mode-card{padding:1.35rem;display:grid;gap:1rem}.mode-card.starter-card{background:radial-gradient(circle at top right,rgba(135,198,164,.18),transparent 36%),#0a1713e6}.mode-card.trainer-card{background:radial-gradient(circle at top right,rgba(221,180,86,.16),transparent 38%),#0a1713e6}.mode-card-header{display:flex;justify-content:space-between;gap:1rem;align-items:start}.mode-badge{align-self:start;padding:.45rem .7rem;border-radius:999px;background:#87c6a42e;color:#dff6e1;font-size:.8rem;font-weight:700}.mode-badge.subtle{background:#dfba6124;color:#f6e5b1}.mode-card-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.85rem}.mini-stat{background:#fdf4d90d;border:1px solid rgba(253,244,217,.08);border-radius:18px;padding:.9rem;min-height:116px}.mode-inset{background:#ffffff05}.stat-card{background:#fdf4d90d;border:1px solid rgba(253,244,217,.08);border-radius:20px;padding:1rem;min-height:128px}.stat-label{color:#dbcfa8;display:block;font-size:.9rem}.stat-value{display:block;margin:.35rem 0 .5rem;font-size:1.55rem}.stat-detail{color:#acb7aa;font-size:.92rem}.landing-layout,.summary-layout{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1rem}.inset-panel{padding:1.15rem}.summary-preview{margin-top:1rem}.session-glance{display:flex;flex-wrap:wrap;gap:.85rem 1.25rem;margin-bottom:.75rem;color:#f3e4bc}.number-list,.key-list,.plain-list{margin:0;padding-left:1.15rem;color:#dce3d8}.pack-toggle{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin:.9rem 0 .75rem}.pack-button{border:1px solid rgba(245,220,150,.25);border-radius:16px;background:#ffffff0a;color:#f5edd6;padding:.85rem 1rem;text-align:left;cursor:pointer}.pack-button.selected{background:linear-gradient(135deg,#dbbf7340,#80b89f38);border-color:#f5dc9699}.primary-button,.secondary-button,.action-button{border:0;border-radius:18px;cursor:pointer;transition:transform .16s ease,box-shadow .16s ease,opacity .16s ease}.primary-button,.secondary-button{padding:.9rem 1.2rem}.route-button{text-decoration:none;display:inline-flex;align-items:center;justify-content:center}.primary-button{margin-top:1rem;background:linear-gradient(135deg,#d5ab4d,#f0d18a);color:#162219;font-weight:700}.secondary-button{background:#ffffff14;color:#f8f5eb}.primary-button:hover,.secondary-button:hover,.action-button:hover:not(:disabled){transform:translateY(-1px)}.primary-button:disabled,.secondary-button:disabled{opacity:.55;cursor:not-allowed}.stimulus-panel{overflow:hidden}.session-viewport{display:grid;gap:1rem;padding:1rem;min-height:calc(100vh - 12rem)}.session-viewport-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(290px,340px);grid-template-areas:"stage side" "caption side" "rail rail";gap:1rem;align-items:stretch}.session-stage-frame{grid-area:stage;position:relative;display:grid;place-items:center;min-height:min(50vh,520px);border-radius:30px;overflow:hidden;background:radial-gradient(circle at 50% 40%,rgba(220,195,129,.14),transparent 30%),linear-gradient(180deg,#102a1ff0,#08120efa);border:1px solid rgba(245,220,150,.1);box-shadow:inset 0 0 0 1px #ffffff05}.session-stage-frame:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:radial-gradient(circle at center,transparent 58%,rgba(6,14,11,.36) 100%),linear-gradient(180deg,#0a181314,#0a181357)}.session-stage-overlay{position:absolute;top:.8rem;left:.8rem;right:.8rem;display:flex;justify-content:space-between;gap:.5rem;z-index:1}.stage-status-chip{background:#091512a3;color:#fff0c2;border:1px solid rgba(255,241,194,.15)}.three-scene-shell,.three-scene-fallback{position:relative;width:100%;height:100%;min-height:min(50vh,520px)}.three-scene-loading{display:grid;place-items:center;width:100%;height:100%;min-height:min(50vh,520px);color:#f4ead0;background:radial-gradient(circle at center,rgba(242,219,148,.12),transparent 28%),linear-gradient(180deg,#122d22f5,#0a1611fa)}.three-scene-canvas{width:100%!important;height:100%!important;cursor:grab}.three-scene-shell:active .three-scene-canvas{cursor:grabbing}.three-scene-overlay{position:absolute;left:.85rem;right:.85rem;bottom:.85rem;display:flex;justify-content:space-between;gap:.75rem;padding:.55rem .7rem;border-radius:16px;background:#07100da3;border:1px solid rgba(255,243,203,.1);color:#f4ead0;font-size:.84rem;z-index:1}.three-scene-fallback{display:grid;place-items:center}.scenario-image{display:block;width:100%;height:auto;object-fit:cover}.scenario-image-live{width:100%;height:100%;max-height:min(50vh,520px);object-fit:contain;position:relative;z-index:0}.session-stage-caption{grid-area:caption;display:grid;gap:.7rem;padding:.1rem .2rem 0}.session-prompt-copy{margin:0;font-size:clamp(1rem,1.2vw,1.16rem);color:#f8efdb}.session-sidecard{grid-area:side;display:grid;align-content:start;gap:.95rem;padding:1rem;border-radius:24px;background:linear-gradient(180deg,#ffffff0a,#ffffff05),#08120fbf;border:1px solid rgba(255,255,255,.08);min-width:0}.session-sidecard-block{display:grid;gap:.45rem}.session-help-copy{margin:0}.tag-row{display:flex;flex-wrap:wrap;gap:.6rem}.tag-row.compact{gap:.45rem}.tag-chip{padding:.35rem .65rem;border-radius:999px;background:#f5d27c1f;color:#f1d994;font-size:.82rem}.fixation{width:84px;height:84px;position:relative;animation:fixationPulse .9s ease-in-out infinite}.fixation span{position:absolute;top:0;right:0;bottom:0;left:0;margin:auto;background:#f6dd90;border-radius:999px}.fixation span:first-child{width:84px;height:8px}.fixation span:last-child{width:8px;height:84px}.action-pad{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.7rem}.action-button{padding:.85rem .75rem;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.25rem;color:#102014;background:#efe4c2;font-weight:700;min-height:78px;border:1px solid rgba(8,18,15,.12);box-shadow:inset 0 1px #ffffff2e}.action-button:disabled{opacity:.5;cursor:not-allowed}.action-icon{font-size:1.15rem}.action-keep{background:linear-gradient(135deg,#e0bc6f,#e8d18d)}.action-pass{background:linear-gradient(135deg,#8ac3a0,#d4e8bf)}.action-contact{background:linear-gradient(135deg,#d27d59,#f0be8f)}.action-scan{background:linear-gradient(135deg,#87a6cf,#c9d8f1)}.session-rail{grid-area:rail;display:grid;gap:.7rem;padding-top:.15rem;border-top:1px solid rgba(255,255,255,.08)}.session-rail-copy{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.7rem 1rem;align-items:center}.compact-result{display:grid;gap:.55rem}.compact-result p,.feedback-result p,.session-feedback-note{margin:0}.feedback-result.correct strong{color:#8ee4a8}.feedback-result.incorrect strong{color:#ffb38b}.legend-inline{display:flex;flex-wrap:wrap;gap:.85rem;color:#dbcfa8}.session-legend{gap:.55rem .85rem;font-size:.92rem}.button-row{display:flex;flex-wrap:wrap;gap:.85rem;margin-top:1.25rem}.button-row.compact,.button-row .primary-button,.button-row .secondary-button,.button-row .route-button{margin-top:0}.field-label{display:grid;gap:.4rem;color:#dbcfa8;font-size:.92rem}.field-label input,.field-label select,.field-label textarea{width:100%;background:#ffffff0d;border:1px solid rgba(255,255,255,.08);border-radius:14px;color:#f8f5eb;padding:.8rem .9rem}.error-banner,.error-copy{color:#ffba9f}.error-banner{padding:1rem 1.2rem;margin-bottom:1rem}.generator-shell{display:grid;gap:1rem}.generator-header{display:flex;justify-content:space-between;gap:1rem;padding:1.4rem}.generator-badges{display:flex;flex-wrap:wrap;gap:.6rem;align-content:start}.generator-layout{display:grid;grid-template-columns:280px minmax(0,1fr);gap:1rem}.generator-main{display:grid;gap:1rem}.scene-list-panel,.generator-editor,.publish-preview-panel,.candidate-gallery-panel{padding:1.2rem}.scene-list{display:grid;gap:.7rem}.scene-list-item{border:1px solid rgba(255,255,255,.08);background:#ffffff0a;color:#f6eed8;border-radius:16px;padding:.9rem;text-align:left;display:grid;gap:.25rem}.scene-list-item.selected{border-color:#f5dc9680;background:#d6b96e24}.editor-head,.publish-preview{display:flex;justify-content:space-between;gap:1rem}.stage-meta{display:grid;gap:.35rem;color:#dbcfa8;font-size:.9rem}.prompt-editor,.candidate-notes{min-height:160px;resize:vertical}.scene-brief-card{margin:1rem 0 1.25rem;padding:1rem;border-radius:22px;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);display:grid;gap:1rem}.manual-import-panel{margin-top:1.25rem;padding:1rem;border-radius:22px;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);display:grid;gap:1rem}.manual-import-head{display:flex;justify-content:space-between;gap:1rem}.manual-import-grid,.manual-import-preview{display:grid;gap:.9rem}.scene-brief-head{display:flex;justify-content:space-between;gap:1rem;align-items:start}.scene-brief-grid,.scene-brief-lists{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.9rem}.feedback-capture-panel{display:grid;gap:1rem}.feedback-capture-head{display:flex;justify-content:space-between;gap:1rem;align-items:start}.feedback-capture-glance{display:flex;flex-wrap:wrap;gap:.5rem;color:#f3e4bc}.feedback-capture-glance span{padding:.35rem .6rem;border-radius:999px;background:#f5dc961f}.feedback-form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.9rem}.feedback-notes-field{grid-column:1 / -1}.feedback-notes{min-height:120px;resize:vertical}.feedback-status-group{display:grid;gap:.25rem}.brief-block{display:grid;gap:.45rem}.brief-label{color:#f3e4bc;font-size:.86rem;letter-spacing:.08em;text-transform:uppercase}.source-link-list{display:flex;flex-wrap:wrap;gap:.65rem}.source-link{color:#d9e8cb;text-decoration:none;border-bottom:1px solid rgba(217,232,203,.4)}.source-link:hover{color:#fff3cb;border-bottom-color:#fff3cbbf}.candidate-notes{min-height:90px}.generator-controls,.candidate-review-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem;margin-top:1rem}.publish-copy{display:grid;gap:.35rem}.candidate-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1rem}.candidate-card{background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:22px;padding:.9rem;display:grid;gap:.8rem}.candidate-preview{width:100%;aspect-ratio:16 / 10;object-fit:cover;border-radius:16px;background:#ffffff0a}.candidate-meta{display:grid;gap:.2rem;color:#dbcfa8}@keyframes fixationPulse{0%,to{transform:scale(.94);opacity:.74}50%{transform:scale(1);opacity:1}}@media(max-width:820px){.app-shell{width:min(100vw - 1rem,100%);padding-top:1rem}.app-shell.session-app-shell{width:min(100vw - 1rem,100%)}.landing-panel,.summary-panel{padding:1rem}.session-shell{min-height:auto}.session-hud,.session-hud-tools,.session-rail-copy{grid-template-columns:1fr;flex-direction:column;align-items:stretch}.session-viewport-grid{grid-template-columns:1fr;grid-template-areas:"stage" "rail" "side" "caption";gap:.8rem}.session-meta{justify-content:start}.session-viewport{min-height:auto;padding:.7rem}.session-stage-frame{min-height:240px;border-radius:24px}.scenario-image-live{max-height:33vh}.session-stage-caption{padding:0;gap:.55rem}.session-prompt-copy{font-size:.98rem;line-height:1.35}.session-sidecard{gap:.7rem;padding:.85rem;border-radius:22px}.session-help-copy,.compact-result p{font-size:.96rem;line-height:1.4}.session-rail{padding-top:0;border-top:0;margin-top:-.05rem}.three-scene-overlay{flex-direction:column;align-items:start}.action-pad{grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem}.action-button{min-height:72px;border-radius:20px}.action-icon{font-size:1rem}.pack-toggle{grid-template-columns:1fr}.mode-card-header{flex-direction:column}.generator-header,.generator-layout,.editor-head,.scene-brief-head,.manual-import-head,.feedback-capture-head,.publish-preview,.generator-controls,.candidate-review-fields{grid-template-columns:1fr;flex-direction:column}.generator-layout{display:grid}}
