@import"https://fonts.googleapis.com/css2?family=IBM+Plex+Sans:wght@400;500;600;700&family=Manrope:wght@600;700;800&display=swap";.language-switcher{display:inline-flex;align-items:center;gap:4px;padding:2px;border-radius:999px;border:1px solid #23364c}.lang-btn{min-width:38px;border:none;background:transparent;color:#93a4b5;padding:8px 10px;border-radius:999px;font-size:11px;font-weight:700;cursor:pointer;transition:background .2s ease,color .2s ease}.lang-btn:hover{color:#f2f6fb}.lang-btn.active{background:#3294ee;color:#fff}.scenario-selector{width:100%}.progress-steps{display:flex;align-items:center;justify-content:center;gap:0}.step{display:flex;align-items:center}.step-inner{display:flex;flex-direction:column;align-items:center;gap:6px}.step-number{width:32px;height:32px;border-radius:999px;display:flex;align-items:center;justify-content:center;background:#111b28;border:1px solid #23364c;color:#8fa2b5;font-size:14px;font-weight:600}.step.active .step-number{background:#3294ee;border-color:transparent;color:#fff}.step-label{font-size:12px;font-weight:500;color:#8fa2b5}.step.active .step-label{color:#f2f6fb}.step-line{width:64px;height:1px;margin:0 16px 18px;background:#23364c}.step-line.active{background:#3294ee}.selection-container{margin-top:32px}.selection-header{text-align:center;margin-bottom:24px}.header-icon{width:24px;height:24px;color:#8fa2b5;margin-bottom:8px}.selection-header h2{margin:0;font-size:32px;font-weight:700;color:#f2f6fb;font-family:Manrope,Segoe UI,sans-serif}.selection-header p{margin-top:8px;font-size:14px;color:#9ba9b8}.roles-grid,.scenarios-grid{display:grid;gap:16px}.roles-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.scenarios-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.role-card,.scenario-card{width:100%;display:flex;flex-direction:column;gap:12px;text-align:left;padding:20px;border-radius:16px;border:1px solid #23364c;background:#111b28;color:inherit;cursor:pointer;transition:border-color .2s ease,background .2s ease}.role-card:hover,.scenario-card:hover,.role-card.selected,.scenario-card.selected{border-color:#3294ee66;background:#162233}.role-card-offender:hover,.role-card-offender.selected{border-color:#d06a6a61;background:#d06a6a14}.role-card-header,.scenario-header{display:flex;align-items:center;justify-content:space-between}.role-icon,.scenario-icon{width:36px;height:36px;border-radius:999px;display:flex;align-items:center;justify-content:center;border:1px solid #23364c;background:#1b2839}.role-card h3{margin:0;font-size:18px;font-weight:600}.scenario-card h3{margin:0;font-size:16px;font-weight:600}.role-card p,.scenario-card p{margin:0;font-size:14px;line-height:1.65;color:#9ba9b8}.personas{display:flex;flex-wrap:wrap;gap:6px}.persona-tag{padding:4px 10px;border-radius:999px;border:1px solid #23364c;background:#1b2839;color:#9ba9b8;font-size:12px}.arrow-icon{color:#7f90a2}.difficulty-badge{padding:4px 10px;border-radius:999px;font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.scenario-meta{margin-top:auto;font-size:13px;color:#9ba9b8}.action-buttons{display:flex;justify-content:center;gap:12px;margin-top:20px}.btn-primary,.btn-secondary{padding:10px 18px;border-radius:12px;font-size:14px;font-weight:600;cursor:pointer}.btn-primary{border:none;background:#3294ee;color:#fff}.btn-primary:disabled{opacity:.45;cursor:not-allowed}.btn-secondary{border:1px solid #23364c;background:transparent;color:#9ba9b8}.spinning{animation:scenarioSpin 1s linear infinite}@keyframes scenarioSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (max-width: 900px){.roles-grid,.scenarios-grid{grid-template-columns:1fr}.selection-header h2{font-size:28px}.action-buttons{flex-direction:column}}.academy-app{min-height:100vh;color:#f2f6fb;background:#0b121a}.academy-backdrop{display:none}.academy-topbar,.card-surface{position:relative}.academy-topbar{width:min(1300px,calc(100% - 32px));margin:16px auto 0;padding:14px 24px;display:flex;align-items:center;justify-content:space-between;gap:20px;border:1px solid #23364c;border-radius:18px;background:#111b28}.brand-lockup{display:flex;align-items:center;gap:12px}.brand-mark{width:44px;height:44px;border-radius:14px;display:flex;align-items:center;justify-content:center;background:#ffffff05;border:1px solid #23364c;overflow:hidden}.brand-logo{width:100%;height:100%;object-fit:cover}.brand-lockup h1{margin:2px 0 0;font-size:15px;font-weight:700;line-height:1.1;font-family:Manrope,Segoe UI,sans-serif}.eyebrow{margin:0;font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:#6f87a0}.academy-nav{display:flex;align-items:center;gap:6px}.nav-pill{border:none;border-radius:999px;padding:10px 18px;background:transparent;color:#93a4b5;font-size:14px;font-weight:600;cursor:pointer;transition:background .2s ease,color .2s ease}.nav-pill.active{background:#3294ee;color:#fff}.topbar-side{display:flex;align-items:center;gap:12px}.live-indicator{padding:8px 14px;border-radius:999px;border:1px solid rgba(50,148,238,.36);color:#49a3ff;background:transparent;font-size:13px;font-weight:600}.academy-main{width:min(1300px,calc(100% - 32px));margin:16px auto 0;padding-bottom:24px}.card-surface{border:1px solid #23364c;border-radius:18px;background:#111b28}.academy-training,.academy-analytics,.academy-debrief{display:grid;gap:20px}.academy-hero,.training-workspace,.analytics-header,.debrief-hero,.archive-sidebar,.archive-detail,.analytics-panel,.narrative-panel,.case-brief,.academy-chat{padding:24px}.academy-hero{display:block}.academy-hero-copy h1{margin:8px 0 10px;font-size:clamp(40px,5vw,56px);line-height:1.02;font-family:Manrope,Segoe UI,sans-serif}.hero-lead,.muted-copy,.brief-section p,.archive-summary p,.narrative-panel li,.analytics-header p{color:#9ba9b8;font-size:14px;line-height:1.7}.academy-hero-grid,.analytics-kpi-grid,.archive-kpis,.debrief-grid,.signal-grid,.brief-summary,.metric-panel,.analytics-columns{display:grid;gap:12px}.academy-hero-grid{margin-top:24px;grid-template-columns:repeat(3,minmax(0,1fr))}.analytics-kpi-grid,.archive-kpis,.metric-panel{grid-template-columns:repeat(4,minmax(0,1fr))}.brief-summary,.signal-grid{grid-template-columns:1fr}.analytics-columns,.debrief-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.mini-stat,.analytic-kpi,.brief-summary-item,.signal-card,.metric-tile{padding:16px;border-radius:14px;border:1px solid #24384f;background:#1b2839}.mini-stat span,.analytic-kpi span,.brief-summary-item span,.signal-card span,.metric-tile span{display:block;margin-bottom:8px;color:#7c91a7;font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.mini-stat strong,.analytic-kpi strong,.brief-summary-item strong,.signal-card strong,.metric-tile strong{display:block;font-size:34px;line-height:1;font-family:Manrope,Segoe UI,sans-serif}.brief-summary-item strong,.signal-card strong{font-size:22px;line-height:1.1}.mini-stat p{margin-top:8px;color:#95a5b5;font-size:12px}.compact strong{font-size:30px}.training-workspace{min-height:auto}.callout-error,.empty-panel{border-radius:14px;padding:16px}.callout-error{border:1px solid rgba(240,161,28,.4);background:#f0a11c14;color:#f7f9fb}.empty-panel{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:160px;text-align:center;color:#9ba9b8}.empty-panel.large{min-height:320px}.academy-live,.academy-archive{display:grid;gap:16px;align-items:start}.academy-live{grid-template-columns:300px minmax(0,1fr)}.academy-archive{grid-template-columns:360px minmax(0,1fr)}.case-brief{display:flex;flex-direction:column;gap:14px;padding:18px;max-height:calc(100vh - 110px);overflow-y:auto}.brief-heading,.archive-header,.archive-detail-header,.academy-chat-header,.analytics-row-top,.archive-item-top,.archive-item-meta{display:flex;align-items:center;justify-content:space-between;gap:12px}.brief-heading{align-items:flex-start}.brief-heading h2,.archive-header h2,.archive-detail-header h2,.analytics-header h2,.debrief-hero h2{margin:8px 0 0;font-size:22px;line-height:1.15;font-family:Manrope,Segoe UI,sans-serif}.brief-heading h2{font-size:18px}.brief-section,.archive-summary,.card-subsection{padding-top:16px;border-top:1px solid #223246}.brief-section h3,.archive-summary h3,.analytics-panel h3,.narrative-panel h3{display:flex;align-items:center;gap:8px;margin-bottom:10px;font-size:14px}.risk-chip,.tag,.officer-pill,.scenario-pill{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border-radius:999px;font-size:12px;font-weight:700}.officer-pill,.scenario-pill,.tag{border:1px solid #23364c;background:#1b2839;color:#c9d4df}.risk-chip.low{background:#2faa6f2e;color:#41c382}.risk-chip.medium{background:#f0a11c2e;color:#f0a11c}.risk-chip.high{background:#e62f2f2e;color:#ff6b6b}.risk-meter,.analytics-track{width:100%;height:8px;border-radius:999px;background:#1b2839;overflow:hidden}.risk-meter-fill.low{background:#2faa6f}.risk-meter-fill.medium{background:#f0a11c}.risk-meter-fill.high{background:#e62f2f}.risk-meter-fill,.analytics-fill{height:100%;border-radius:999px}.risk-caption,.analytics-footnote,.message-time,.archive-item-meta,.header-meta{color:#7f90a2;font-size:12px}.header-meta{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.signal-list{list-style:none;display:grid;gap:8px}.signal-list li,.transcript-row{padding:12px;border-radius:12px;background:#1b2839}.brief-actions,.debrief-actions,.action-buttons{display:flex;gap:12px}.brief-actions{margin-top:auto}.ghost-button,.danger-button,.primary-button,.btn-primary,.btn-secondary{border-radius:12px;padding:12px 18px;font-size:14px;font-weight:600;cursor:pointer;transition:background .2s ease,border-color .2s ease,color .2s ease}.ghost-button,.btn-secondary{border:1px solid #23364c;background:#1b2839;color:#d4deea}.primary-button,.btn-primary{border:none;background:#3294ee;color:#fff}.danger-button{width:100%;border:none;background:#e62f2f;color:#fff}.academy-chat{display:flex;flex-direction:column;min-height:720px}.academy-chat-header{padding-bottom:16px;border-bottom:1px solid #223246}.header-group{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.academy-chat-feed{flex:1;overflow-y:auto;padding:16px 0;display:flex;flex-direction:column;gap:12px}.academy-chat-feed-sparse{justify-content:flex-start}.message{display:flex;justify-content:flex-start}.message.user{justify-content:flex-end}.message-avatar{margin-top:2px;display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:999px;background:#3294ee29;color:#49a3ff;font-size:10px;font-weight:700;flex-shrink:0}.message.user .message-avatar{order:2;margin-left:8px;background:#1b2839;color:#a4b3c2}.message.bot .message-avatar{margin-right:8px}.message-body{display:flex;flex-direction:column;max-width:75%}.message-text{border-radius:12px;padding:12px 16px;font-size:14px;line-height:1.6;background:#1b2839;color:#eef3f8}.message.user .message-text{background:#3294ee;color:#fff}.message.user .message-time{text-align:right}.typing-indicator{display:inline-flex;gap:6px;padding:12px 14px;border-radius:12px;background:#1b2839}.typing-indicator span{width:6px;height:6px;border-radius:50%;background:#9fb4c7;animation:typingPulse 1.2s infinite}.typing-indicator span:nth-child(2){animation-delay:.15s}.typing-indicator span:nth-child(3){animation-delay:.3s}.academy-chat-composer{display:flex;align-items:center;gap:8px;padding-top:16px;border-top:1px solid #223246}.academy-chat-composer input,.search-field input{width:100%;border:1px solid #23364c;border-radius:14px;background:#1b2839;color:#eef3f8;padding:12px 16px;outline:none}.academy-chat-composer input:focus,.search-field input:focus{border-color:#3294ee}.academy-chat-composer button{width:44px;height:44px;border:none;border-radius:14px;background:#3294ee;color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer}.archive-count{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:999px;background:#3294ee;color:#fff;font-size:12px;font-weight:700}.search-field{position:relative;display:grid;grid-template-columns:18px 1fr;align-items:center;gap:10px;margin-top:16px}.archive-list,.transcript-list{display:grid;gap:8px;margin-top:16px}.archive-item{width:100%;border-radius:14px;border:1px solid #23364c;background:#1b2839;padding:14px;color:inherit;text-align:left;cursor:pointer}.archive-item.active{border-color:#3294ee;background:#3294ee1a}.archive-item-top strong{font-size:14px}.archive-item-top span{font-size:30px;font-family:Manrope,Segoe UI,sans-serif}.archive-badges{display:flex;gap:8px;flex-wrap:wrap}.transcript-row{display:flex;align-items:flex-start;gap:10px}.transcript-row.user{background:#3294ee1a}.transcript-row span{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:999px;background:#3294ee29;color:#49a3ff;font-size:10px;font-weight:700;flex-shrink:0}.transcript-row p{font-size:14px;line-height:1.6}.analytic-kpi{display:flex;flex-direction:column;gap:8px}.analytic-kpi strong{font-size:36px}.analytics-row+.analytics-row{margin-top:12px}.analytics-fill{background:#3294ee}.analytics-fill.alternate{background:#8fc6ff}.recent-sessions-panel{margin-top:4px}.recent-session-list{display:grid;gap:10px}.recent-session-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 0;border-top:1px solid #223246}.recent-session-row:first-child{border-top:none;padding-top:0}.recent-session-row strong{display:block;font-size:14px;margin-bottom:4px}.recent-session-row p{color:#8ea0b2;font-size:13px}.recent-session-meta{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px;color:#7f90a2;font-size:12px;text-align:right}.score-orb{width:112px;height:112px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#1b2839;color:#fff}.score-orb strong{font-size:42px;font-family:Manrope,Segoe UI,sans-serif}.debrief-hero{display:flex;align-items:center;justify-content:space-between;gap:32px;padding:28px 30px}.debrief-hero .hero-lead{max-width:760px;margin-top:10px}.debrief-grid{gap:16px;align-items:stretch}.metric-panel{gap:14px;padding:18px}.metric-tile{min-height:160px;display:flex;flex-direction:column;justify-content:space-between}.narrative-panel{padding:24px 26px}.narrative-panel h3+ul{margin-top:12px}.narrative-panel ul{margin:0;display:grid;gap:10px;padding-left:18px}.narrative-panel li+li{margin-top:0}.debrief-actions{flex-wrap:wrap;margin-top:4px}.debrief-actions .ghost-button,.debrief-actions .primary-button{min-width:190px}.spinning{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes typingPulse{0%,80%,to{transform:translateY(0);opacity:.45}40%{transform:translateY(-4px);opacity:1}}@media (max-width: 1100px){.academy-topbar,.academy-main{width:calc(100% - 24px)}.academy-hero-grid,.analytics-kpi-grid,.archive-kpis,.metric-panel,.analytics-columns{grid-template-columns:repeat(2,minmax(0,1fr))}.academy-live,.academy-archive{grid-template-columns:1fr}.case-brief{padding:24px;max-height:none}}@media (max-width: 760px){.academy-topbar{flex-direction:column;align-items:flex-start}.topbar-side,.academy-nav{flex-wrap:wrap}.academy-hero,.training-workspace,.analytics-header,.debrief-hero,.archive-sidebar,.archive-detail,.analytics-panel,.narrative-panel,.case-brief,.academy-chat{padding:18px}.academy-hero-grid,.analytics-kpi-grid,.archive-kpis,.metric-panel,.analytics-columns,.debrief-grid,.roles-grid,.scenarios-grid{grid-template-columns:1fr}.debrief-hero,.academy-chat-header,.archive-detail-header,.archive-header,.brief-heading{flex-direction:column;align-items:flex-start}.message-body{max-width:100%}.recent-session-row,.recent-session-meta{flex-direction:column;align-items:flex-start;text-align:left}}:root{font-family:IBM Plex Sans,Segoe UI,sans-serif;color:#eff5fb;background:#07111f;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{margin:0;padding:0;box-sizing:border-box}html,body,#root{min-height:100%}body{min-height:100vh;overflow-x:hidden;background:#07111a}button,input,textarea{font:inherit}a{color:inherit}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:#ffffff08}::-webkit-scrollbar-thumb{background:#7292b14d;border-radius:999px}::-webkit-scrollbar-thumb:hover{background:#82a5c76b}
