:root{--color-primary: #1968ab;--color-primary-dark: #14548a;--color-primary-light: #e3f2fd;--color-selection-background: var(--color-primary-light);--color-selection-border: var(--color-link);--color-selection-text: var(--color-link-dark);--color-success: #4caf50;--color-success-light: #e8f5e9;--color-success-dark: #2e7d32;--color-error: #f44336;--color-error-light: #ffebee;--color-error-dark: #c62828;--color-warning: #ff9800;--color-warning-light: #fff3cd;--color-warning-dark: #856404;--color-info: #2196f3;--color-info-light: #d1ecf1;--color-info-dark: #0c5460;--color-background: #f5f5f5;--color-background-hover: #fafafa;--color-background-alt: #f9f9f9;--color-background-disabled: #f5f5f5;--color-surface: #ffffff;--color-text-primary: #333;--color-text-strong: #202124;--color-text-secondary: #666;--color-text-supporting: #59636e;--color-text-tertiary: #999;--color-text-muted: #6c757d;--color-text-placeholder: #64748b;--color-text-disabled: #adb5bd;--color-text-heading: #2c3e50;--color-text-emphasis: #495057;--color-link: #007bff;--color-link-dark: #0066cc;--color-brand-primary: #1866a7;--color-brand-primary-dark: #145a91;--color-brand-border-hover: #a9cae4;--color-brand-surface-soft: #f5f8fb;--color-brand-surface-hover: #eaf3fa;--color-accent-warm: #d9822b;--color-accent-warm-dark: #b96114;--color-accent-warm-focus: #d97706;--color-accent-warm-border: #e8b678;--color-accent-warm-surface: #fff8f0;--color-accent-warm-disabled: #f2dcc2;--color-accent-warm-disabled-text: #ad7942;--color-accent: #667eea;--color-accent-soft: #f0f4ff;--color-accent-soft-alt: #f8f9ff;--color-border: #ddd;--color-border-light: #eee;--color-border-muted: #dee2e6;--color-border-subtle: #eef0f2;--color-border-hover: #b0b8c1;--color-focus-border: #86b7fe;--color-divider: #e0e0e0;--color-surface-hover: #e9ecef;--color-primary-soft: #f8f9ff;--color-error-border: #f5c6cb;--color-error-bg-soft: #fef2f2;--color-error-border-soft: #fecaca;--color-error-text-contrast: #721c24;--color-admin-accent: #6c9bd1;--color-admin-accent-hover: #5785bc;--color-admin-accent-bg: #e8f0f8;--color-admin-accent-strong: #5a8bc4;--color-feedback-text: #6b7280;--color-feedback-text-dark: #9ca3af;--color-warning-border-strong: #ffeaa7;--color-success-bg-soft: #d4edda;--color-success-text-contrast: #155724;--color-success-border-soft: #c3e6cb;--color-preset-gold-bg: #f5ead2;--color-preset-gold-bg-hover: #ede0c3;--color-preset-gold-border: #c69563;--color-preset-badge-start: #28a745;--color-preset-badge-end: #20c997;--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 12px;--spacing-lg: 16px;--spacing-xl: 20px;--spacing-2xl: 24px;--border-radius: 4px;--border-radius-lg: 8px;--border-radius-pill: 12px;--shadow: 0 2px 4px rgba(0, 0, 0, .1);--shadow-lg: 0 10px 30px rgba(0, 0, 0, .3);--shadow-card-subtle: 0 1px 3px rgb(15 23 42 / .08);--shadow-accent-warm-input: 0 2px 8px rgb(180 105 35 / .1);--shadow-accent-warm-focus: 0 0 0 3px rgb(217 119 6 / .14);--transition: all .2s}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f5f5f5}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}*{box-sizing:border-box}#root{min-height:100vh}html,body{margin:0;padding:0;height:100%}#root{height:100%}.App{min-height:100vh;display:flex;flex-direction:column;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body.chat-active .App{height:100vh;height:100dvh;min-height:auto}.App-header{background-color:var(--color-link-dark);color:#fff;padding:1rem;box-shadow:0 2px 4px #0000001a}.App-header h1{margin:0;font-size:1.8rem;font-weight:600}.App-header p{margin:.5rem 0 0;font-size:1rem;opacity:.9}.App-main{flex:1;padding:2rem;display:flex;justify-content:center;align-items:flex-start;max-width:800px;margin:0 auto;width:100%;box-sizing:border-box}.chat-interface{width:100%;max-width:700px;box-shadow:0 4px 6px #0000001a;border-radius:8px;overflow:hidden;background:var(--color-surface)}@media (max-width: 768px){.App-main{padding:1rem}.App-header h1{font-size:1.5rem}.chat-interface{height:500px}}.loading{opacity:.6;pointer-events:none}.error{border-color:var(--color-error);background-color:var(--color-error-light)}.markdown-message{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.4;color:#202124;word-wrap:break-word;max-width:100%;overflow-wrap:break-word;min-width:0}.markdown-message strong{font-weight:600}.bot-message-container,.copilot-response{white-space:normal}.markdown-message .metric-list-item ul .metric-list-item,.markdown-message .metric-list-item ol .metric-list-item,.markdown-message li ul li,.markdown-message li ol li{margin:0!important;padding:0!important;line-height:1.4}.bot-message-container .markdown-message .metric-list,.bot-message-container .markdown-message ol,.bot-message-container .markdown-message ul{margin:4px 0;padding-left:20px}.bot-message-container .markdown-message .metric-list-item,.bot-message-container .markdown-message li{margin:0;padding:0;line-height:1.5}.bot-message-container{max-width:100%;padding:0}.copilot-response{margin-bottom:12px}.message-citations{margin-top:16px;border-top:1px solid #e8eaed;padding-top:12px}.message-citations summary{font-size:12px;color:#5f6368;cursor:pointer;font-weight:500;margin-bottom:8px;list-style:none;display:flex;align-items:center}.message-citations summary::-webkit-details-marker{display:none}.message-citations summary:before{content:"▶";font-size:10px;margin-right:6px;transition:transform .2s ease}.message-citations[open] summary:before{transform:rotate(90deg)}.citations-list{margin:0;padding:0;list-style:none}.citation-item{margin:6px 0;padding:8px;background:#f8f9fa;border-radius:4px;font-size:12px;border-left:3px solid #dadce0}.citation-content{color:#5f6368;font-size:inherit}.markdown-h1,.markdown-h2,.markdown-h3,.markdown-h4{margin:8px 0 2px;font-weight:600;color:#2f343a;border-bottom:1px solid #e8eaed;padding-bottom:2px}.markdown-message h1,.markdown-message h2,.markdown-message h3,.markdown-message h4,.markdown-message h5,.markdown-message h6{margin:4px 0 2px!important;font-weight:600;color:#1a73e8;border-bottom:1px solid #e8eaed;padding-bottom:2px}.markdown-h1,.markdown-message h1{font-size:1.25em;color:#2b3036;margin:6px 0 2px!important}.markdown-h2,.markdown-message h2{font-size:1.15em;color:#30363d;margin:4px 0 2px!important}.markdown-h3,.markdown-message h3{font-size:1.05em;color:#384047;margin:4px 0 2px!important}.markdown-h4,.markdown-message h4{font-size:1em;color:#414951;margin:4px 0 2px!important}.markdown-paragraph{margin:0 0 8px;line-height:1.5;white-space:normal}.markdown-paragraph:last-child{margin-bottom:0}.code-block{margin:8px 0;border-radius:6px;overflow:hidden;border:1px solid #dadce0;background:#f8f9fa;box-shadow:0 1px 2px #0000001a}.code-header{background:#e8eaed;padding:6px 12px;font-size:11px;font-weight:500;color:#5f6368;text-transform:uppercase;border-bottom:1px solid #dadce0;letter-spacing:.5px}.language-label{font-family:Roboto Mono,SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace}.code-block pre{margin:0;padding:12px;background:#fff;font-family:Roboto Mono,SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:13px;line-height:1;overflow-x:auto;color:#202124}.inline-code{background:#f1f3f4;padding:2px 4px;border-radius:3px;font-family:Roboto Mono,SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:85%;color:#202124;border:none}pre code.inline-code{display:block;background:#f8f9fa;border:1px solid #dadce0;border-radius:6px;padding:12px;font-size:13px;line-height:1.4;overflow-x:auto;white-space:pre;margin:8px 0;color:#202124;min-width:0;max-width:100%;box-sizing:border-box}pre code.inline-code:has-text("┤"),pre code.inline-code:has-text("┼"),pre code.inline-code:has-text("🔵"){font-family:SF Mono,Monaco,Inconsolata,Roboto Mono,Source Code Pro,monospace;letter-spacing:0}pre{background:#f8f9fa;border:1px solid #dadce0;border-radius:6px;padding:12px;margin:8px 0;overflow-x:auto;font-family:Roboto Mono,SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:13px;line-height:1.4;color:#202124;min-width:0;max-width:100%;box-sizing:border-box}pre code{background:transparent!important;border:none!important;padding:0!important;margin:0!important;border-radius:0!important;font-size:inherit!important;color:inherit!important}.table-container{overflow-x:auto;margin:8px 0;border:1px solid #dadce0;border-radius:8px;box-shadow:0 1px 3px #0000001a}.fleet-table{width:100%;border-collapse:collapse;font-size:13px;background:#fff;color:#202124}.fleet-table th,.fleet-table td{padding:12px;text-align:left;border-bottom:1px solid #e8eaed;vertical-align:top;color:inherit}.fleet-table th{background:#f8f9fa;font-weight:600;color:#3c4043;border-bottom:2px solid #dadce0;position:sticky;top:0;z-index:1}.fleet-table tbody tr:hover{background:#f8f9fa;transition:background-color .2s ease}.fleet-table tbody tr:last-child td{border-bottom:none}.fleet-table td:last-child,.fleet-table td:nth-last-child(2),.fleet-table td:nth-last-child(3){font-family:Roboto Mono,monospace;font-weight:500}.safety-alert{margin:8px 0;padding:10px 12px;background:#fef7e0;border-left:4px solid #f9ab00;border-radius:0 6px 6px 0;color:#b8860b;box-shadow:0 1px 3px #f9ab0033}.safety-alert p:last-child{margin-bottom:0}.safety-alert strong{color:#e37400}.safety-alert.critical{background:#fce8e6;border-left-color:#ea4335;color:#d93025}.safety-alert.critical strong{color:#b52d20}.safety-alert.success{background:#e6f4ea;border-left-color:#34a853;color:#137333}.safety-alert.success strong{color:#0d652d}.metric-list,.task-list{margin:2px 0;padding-left:20px}.metric-list li{margin:0;position:relative}.metric-list li::marker{color:#5f6368;font-weight:700}.task-list{list-style:none;padding-left:0}.task-list li{position:relative;padding-left:24px;margin:0}.task-list li:before{content:"□";position:absolute;left:0;color:#5f6368;font-weight:700}.task-list li.checked:before{content:"☑";color:#34a853}.markdown-link{color:#1a73e8;text-decoration:none;border-bottom:1px solid transparent;transition:all .2s ease}.markdown-link:hover{border-bottom-color:#1a73e8;background-color:#1a73e80d}.markdown-link:visited{color:#8e24aa}.markdown-link[target=_blank]{color:#1a73e8}.markdown-link[target=_blank]:after{font-size:.8em;opacity:.7;margin-left:2px}@media (max-width: 768px){.markdown-message{font-size:14px}.markdown-h1{font-size:1.2em}.markdown-h2{font-size:1.1em}.markdown-h3{font-size:1.05em}.markdown-h4{font-size:1em}.fleet-table{font-size:12px}.fleet-table th,.fleet-table td{padding:8px 6px}.code-block pre{padding:8px;font-size:12px}.code-header{padding:4px 8px;font-size:10px}.table-container{margin:8px 0}.safety-alert{padding:8px 12px;margin:8px 0}}@media (max-width: 480px){.fleet-table th,.fleet-table td{padding:6px 4px;font-size:11px}.code-block pre{font-size:11px}.inline-code{font-size:11px;word-break:break-all;overflow-wrap:break-word;white-space:pre-wrap}pre code.inline-code{font-size:11px;padding:8px;white-space:pre-wrap;word-break:break-all;overflow-wrap:break-word;overflow-x:visible;max-width:100%}}@media (max-width: 425px){.markdown-message{font-size:13px;min-width:0;overflow:hidden}.inline-code{font-size:10px;line-height:1.3;letter-spacing:-.02em;min-width:0;max-width:100%}pre code.inline-code{font-size:10px;padding:6px;line-height:1.3;letter-spacing:-.02em;white-space:pre-wrap;word-break:break-all;overflow-wrap:anywhere;min-width:0;max-width:100%}pre{padding:8px 6px;margin:6px 0;min-width:0;max-width:100%;box-sizing:border-box}.code-block{margin:6px 0;min-width:0;max-width:100%}.code-block pre{padding:6px;font-size:10px;min-width:0;max-width:100%}}.custom-message--incoming .markdown-message{color:#202124}.custom-message--incoming .markdown-h1{color:#2b3036}.custom-message--incoming .markdown-h2{color:#30363d}.custom-message--incoming .markdown-h3{color:#384047}.custom-message--incoming .markdown-h4{color:#414951}.custom-message--outgoing .markdown-message{color:#fff}.custom-message--outgoing .markdown-h1,.custom-message--outgoing .markdown-h2,.custom-message--outgoing .markdown-h3,.custom-message--outgoing .markdown-h4{color:#ffffffe6;border-bottom-color:#ffffff4d}.custom-message--outgoing .inline-code{background:#fff3;color:#ffffffe6;border-color:#ffffff4d}.custom-message--outgoing .markdown-link{color:#ffffffe6}.custom-message--outgoing .markdown-link:hover{border-bottom-color:#ffffffb3;background-color:#ffffff1a}.metric-value{font-family:Roboto Mono,monospace;font-weight:600;color:#1a73e8}.metric-trend-up{color:#34a853}.metric-trend-down{color:#ea4335}.metric-trend-neutral{color:#f9ab00}.status-good{color:#34a853;font-weight:500}.status-warning{color:#f9ab00;font-weight:500}.status-critical{color:#ea4335;font-weight:500}.driver-score-excellent{background:#e6f4ea;color:#137333;padding:2px 6px;border-radius:12px;font-weight:500;font-size:.85em}.driver-score-good{background:#fef7e0;color:#b8860b;padding:2px 6px;border-radius:12px;font-weight:500;font-size:.85em}.driver-score-poor{background:#fce8e6;color:#d93025;padding:2px 6px;border-radius:12px;font-weight:500;font-size:.85em}.themed-spinner{display:inline-block;box-sizing:border-box;aspect-ratio:1 / 1;transform-origin:center;border-radius:50%;border-style:solid;border-color:var(--color-border-muted);border-top-color:var(--color-primary);animation:themed-spinner-rotate .8s linear infinite}.themed-spinner--sm{width:14px;height:14px;border-width:2px}.themed-spinner--md{width:20px;height:20px;border-width:2px}.themed-spinner--lg{width:32px;height:32px;border-width:3px}@keyframes themed-spinner-rotate{to{transform:rotate(360deg)}}.loading-screen{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2);padding:1rem;animation:backgroundShift 15s ease-in-out infinite}@keyframes backgroundShift{0%,to{background:linear-gradient(135deg,#667eea,#764ba2)}50%{background:linear-gradient(135deg,#764ba2,#667eea)}}.loading-container{background:#fff;border-radius:16px;box-shadow:0 20px 40px #00000026;padding:3rem 2rem;text-align:center;max-width:400px;width:100%;animation:fadeInUp .8s ease-out;position:relative;overflow:hidden}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.loading-container:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#667eea,#764ba2)}.loading-animation{position:relative;margin-bottom:2rem}.loading-spinner{position:relative;width:120px;height:120px;margin:0 auto 1rem;display:flex;align-items:center;justify-content:center}.themed-spinner.loading-screen-spinner{width:100px;height:auto;border-width:6px}.loading-logo{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.logo-icon{font-size:2rem;animation:bounce 2s ease-in-out infinite}@keyframes bounce{0%,20%,50%,80%,to{transform:translateY(0)}40%{transform:translateY(-10px)}60%{transform:translateY(-5px)}}.loading-content{margin-bottom:2rem}.loading-title{color:#2c3e50;font-size:1.8rem;font-weight:700;margin-bottom:.5rem;letter-spacing:-.5px;animation:fadeIn 1s ease-out .3s both}.loading-subtitle{color:#667eea;font-size:.9rem;font-weight:600;text-transform:uppercase;letter-spacing:1px;margin-bottom:1.5rem;animation:fadeIn 1s ease-out .6s both}.loading-message{margin:1.5rem 0;min-height:3rem;display:flex;flex-direction:column;justify-content:center}.primary-message{color:#495057;font-size:1rem;font-weight:500;margin-bottom:.5rem;animation:fadeIn .5s ease-out;height:1.5rem;display:flex;align-items:center;justify-content:center}.sub-message{color:#6c757d;font-size:.85rem;margin:0;font-style:italic;animation:fadeIn .5s ease-out .2s both}.loading-progress{margin:1.5rem 0}.progress-bar{width:100%;height:4px;background-color:#e9ecef;border-radius:2px;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,#667eea,#764ba2);border-radius:2px;animation:progressFill 3s ease-in-out infinite}@keyframes progressFill{0%{width:0%;opacity:1}50%{width:70%;opacity:1}to{width:100%;opacity:.3}}.loading-footer{margin-top:1rem;padding-top:1rem;border-top:1px solid #e9ecef;animation:fadeIn 1s ease-out 1s both}.loading-footer p{color:#adb5bd;font-size:.75rem;margin:0;letter-spacing:.5px}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@media (max-width: 768px){.loading-container{padding:2rem 1.5rem;margin:1rem}.loading-spinner{width:84px;height:84px}.themed-spinner.loading-screen-spinner{width:72px;height:auto;border-width:5px}.loading-title,.logo-icon{font-size:1.5rem}}@media (max-width: 480px){.loading-container{padding:1.5rem 1rem}.loading-spinner{width:76px;height:76px}.themed-spinner.loading-screen-spinner{width:64px;height:auto;border-width:4px}.loading-title{font-size:1.3rem}.primary-message{font-size:.9rem}}@media (prefers-reduced-motion: reduce){.loading-spinner,.themed-spinner,.logo-icon,.progress-fill{animation:none}.loading-container{animation:fadeIn .3s ease-out}}@media (prefers-contrast: high){.loading-container{border:2px solid #000}.loading-title,.primary-message{color:#000}.loading-subtitle{color:#0056b3}}.server-error-screen{display:flex;align-items:center;justify-content:center;min-height:100vh;background:linear-gradient(135deg,#667eea,#764ba2);padding:20px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica,Arial,sans-serif}.error-container{background:#fff;border-radius:12px;box-shadow:0 20px 60px #0000004d;padding:40px;max-width:500px;width:100%;animation:slideUp .4s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.error-header{text-align:center;margin-bottom:32px}.error-icon-large{font-size:64px;margin-bottom:16px;animation:pulse 2s infinite;display:flex;justify-content:center;align-items:center;color:#667eea}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(.95)}}.error-title{margin:16px 0 8px;font-size:24px;font-weight:600;color:#1a202c;line-height:1.4}.error-subtitle{margin:0;font-size:14px;color:#718096}.error-message{background:#f7fafc;border-left:4px solid #ed8936;padding:16px;border-radius:4px;margin-bottom:24px}.error-message p{margin:0;font-size:14px;color:#2d3748;line-height:1.6}.error-suggestions{background:#edf2f7;padding:20px;border-radius:8px;margin-bottom:24px}.error-suggestions h3{margin:0 0 12px;font-size:14px;font-weight:600;color:#1a202c}.error-suggestions ul{margin:0;padding-left:20px;list-style:disc}.error-suggestions li{font-size:13px;color:#2d3748;line-height:1.6;margin-bottom:6px}.error-suggestions li:last-child{margin-bottom:0}.error-actions{display:flex;flex-direction:column;gap:12px}.action-button{display:flex;align-items:center;justify-content:center;gap:8px;padding:12px 20px;border:none;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease;outline:none}.retry-button{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.retry-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 16px #667eea66}.retry-button:active:not(:disabled){transform:translateY(0)}.retry-button:disabled{opacity:.7;cursor:not-allowed}.retry-button.loading{opacity:.8}.logout-button{background:#e2e8f0;color:#2d3748;border:1px solid #cbd5e0}.logout-button:hover:not(:disabled){background:#cbd5e0;transform:translateY(-2px)}.logout-button:active:not(:disabled){transform:translateY(0)}.logout-button:disabled{opacity:.5;cursor:not-allowed}.button-content{display:flex;align-items:center;justify-content:center;gap:8px}.button-icon{font-size:16px}.error-footer{text-align:center;padding-top:20px;border-top:1px solid #e2e8f0;color:#a0aec0;font-size:12px}@media (max-width: 480px){.error-container{padding:30px 20px}.error-icon-large{font-size:48px}.error-title{font-size:20px}.error-actions{flex-direction:column}.action-button{width:100%}}.chat-layout{height:100vh;height:100dvh;flex:1;display:flex;flex-direction:column;background-color:var(--cs-main-container-bg-color, #fff);overflow:hidden;position:relative}.chat-body{flex:1;display:flex;flex-direction:row;position:relative;overflow:hidden;min-height:0}body.chat-active{overflow:hidden!important;height:100vh;height:100dvh;touch-action:none}html.chat-active{overflow:hidden!important;height:100vh;height:100dvh}.chat-main{flex:1;overflow:hidden;display:flex;flex-direction:column;min-height:0;height:100%;max-width:58rem;margin:0 auto;width:calc(100% - 4rem);padding:0 2rem;background-color:var(--color-surface)}.chat-content{display:flex;flex:1;min-width:0}.chat-conversation{display:flex;flex:1;flex-direction:column;min-height:0}.chat-conversation .custom-message-list{flex:1 1 auto;min-height:0;height:auto}.chat-conversation .message-input-container{border-top:0}.coach-suggestions-right-panel{display:none}@keyframes coachSuggestionsRightPanelFadeIn{0%{opacity:0}to{opacity:1}}@media (min-width: 1280px){.chat-content{--chat-content-gutter: 3rem;--chat-main-max-width: 85rem;display:grid;grid-template-columns:minmax(var(--chat-content-gutter),1fr) minmax(0,var(--chat-main-max-width)) minmax(var(--chat-content-gutter),1fr)}.chat-content-with-right-panel{--chat-right-panel-gap: 2rem;--chat-right-panel-width: 20rem;grid-template-columns:minmax(var(--chat-content-gutter),1fr) minmax(0,var(--chat-main-max-width)) var(--chat-right-panel-gap) var(--chat-right-panel-width) minmax(var(--chat-content-gutter),1fr)}.chat-main{grid-column:2;width:100%;max-width:none;margin:0;padding:0}.coach-suggestions-right-panel{display:flex;flex-direction:column;grid-column:4;width:var(--chat-right-panel-width);align-items:stretch;justify-content:flex-start;gap:.625rem;overflow-y:auto;padding:1rem;animation:coachSuggestionsRightPanelFadeIn .3s ease-out both}.coach-suggestions-right-panel h2{margin:0;color:var(--color-text-primary);font-size:.875rem;font-weight:700}.coach-suggestions-right-panel .coach-suggestion-cards{grid-template-columns:minmax(0,1fr);width:100%}}@media (prefers-reduced-motion: reduce){.coach-suggestions-right-panel{animation:none}}.chat-header{min-height:40px;height:auto;background-color:var(--color-surface);color:var(--color-text-primary);display:flex;align-items:flex-start;padding:2px .75rem 2px .35rem;border-bottom:1px solid var(--color-border-muted);flex-shrink:0;gap:.75rem}.header-left{display:flex;align-items:center;gap:.75rem;flex:1 1 auto;min-width:0;flex-wrap:wrap;align-self:stretch}.header-right{display:flex;align-items:flex-start;gap:.5rem;flex:0 0 auto;align-self:stretch}.header-left h1{margin:0;font-size:1.25rem;font-weight:600}.header-button-group{display:flex;align-items:center;gap:0;flex-shrink:0;background-color:var(--color-background-alt);border-radius:8px;border:1px solid var(--color-border-muted);overflow:hidden;height:100%}.header-icon-btn{background:none;border:none;color:var(--color-text-primary);padding:.4rem;width:32px;height:100%;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:1rem;transition:all .2s ease;flex-shrink:0;position:relative}.header-icon-btn:not(:last-child){border-right:1px solid var(--color-border-muted)}.header-icon-btn:hover{background-color:var(--color-surface-hover);color:var(--color-link)}.header-icon-btn:active{background-color:var(--color-border-muted);transform:scale(.95)}.header-icon-btn img{width:16px;height:16px;filter:invert(.3);transition:filter .2s ease}.header-icon-btn:hover img{filter:invert(.1)}.logo-container{margin:0;padding:0;transition:opacity .2s;align-self:center}.logo-container:hover{opacity:.8}.chat-header .logo-container img,.chat-header .logo-image-large{display:block;margin:0;height:36px;width:auto;transform:none!important}.header-selectors{display:flex;align-items:center;gap:.35rem;flex:0 0 auto;flex-wrap:nowrap;min-width:0;margin-left:auto;justify-content:flex-end}.header-customer-selector,.header-fleet-selector{flex:0 0 auto;width:220px;max-width:300px;min-width:140px;align-self:center}.header-sidebar-btn{display:none}@media (max-width: 767px){.header-sidebar-btn{display:inline-flex}}.searchable-dropdown{position:relative}.searchable-dropdown.is-open{z-index:1300}.searchable-dropdown.is-open .searchable-dropdown-trigger{border-bottom-left-radius:0;border-bottom-right-radius:0}.searchable-dropdown-trigger{width:100%;min-height:34px;border:1px solid var(--color-border-muted);border-radius:6px;background-color:var(--color-surface);color:var(--color-text-primary);font-size:.85rem;font-weight:500;cursor:pointer;transition:all .15s ease-in-out;display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.4rem .6rem;text-align:left}.searchable-dropdown-trigger:hover{border-color:var(--color-border-hover);background-color:var(--color-background-alt)}.searchable-dropdown-trigger:focus{border-color:var(--color-focus-border);outline:0;box-shadow:0 0 0 .2rem #0d6efd26}.searchable-dropdown-selected{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.searchable-dropdown-adornment{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.searchable-dropdown-chevron{color:var(--color-text-muted);flex-shrink:0;font-size:.9rem}.searchable-dropdown-chevron svg{display:block;width:1.1em;height:1.1em}.searchable-dropdown-panel{position:absolute;top:calc(100% - 1px);left:0;right:0;z-index:1100;display:flex;flex-direction:column;isolation:isolate;border:1px solid var(--color-border-muted);border-radius:0 0 6px 6px;background:var(--color-surface);overflow:hidden;box-shadow:0 8px 24px #0000001f}.searchable-dropdown-search{width:100%;position:relative;z-index:2;background:var(--color-surface);border:none;border-bottom:1px solid var(--color-border-subtle);padding:.55rem 2rem .55rem .6rem;font-size:.85rem;outline:none}.searchable-dropdown-search-wrap{position:sticky;top:0;background:var(--color-surface);border-radius:0;z-index:4}.searchable-dropdown-search-icon,.searchable-dropdown-search-icon-btn{position:absolute;right:.6rem;top:50%;transform:translateY(-50%);color:var(--color-text-muted);display:inline-flex;align-items:center;justify-content:center;width:1rem;height:1rem;z-index:3}.searchable-dropdown-search-icon svg,.searchable-dropdown-search-icon-btn svg{width:1rem;height:1rem}.searchable-dropdown-search-icon-btn{border:none;background:transparent;padding:0;cursor:pointer}.searchable-dropdown-search-icon-btn:hover{color:var(--color-text-primary)}.searchable-dropdown-options{list-style:none;margin:0;padding:0;position:relative;z-index:1;border-radius:0 0 6px 6px;max-height:min(42svh,260px);background:var(--color-surface);overflow-y:auto;overscroll-behavior-y:none;-webkit-overflow-scrolling:auto}.searchable-dropdown-option{width:100%;padding-bottom:calc(.25rem + env(safe-area-inset-bottom,0px));text-align:left;border:none;background:transparent;color:var(--color-text-primary);min-height:40px;padding:.5rem .6rem;font-size:.85rem;cursor:pointer}.searchable-dropdown-option:hover{background:var(--color-background-alt)}.searchable-dropdown-option.is-selected{background:var(--color-selection-background);color:var(--color-selection-text);border-radius:0 0 6px 6px}.searchable-dropdown-empty{padding:.6rem;color:var(--color-text-muted);font-size:.8rem}.user-menu{position:relative;z-index:1000;height:100%}.header-button-group .user-menu-button{border-radius:0;border:none;background:none;padding:.5rem;width:40px;height:40px}.header-button-group .user-menu-button:hover{background-color:var(--color-surface-hover)}.user-menu-dropdown{position:absolute;top:100%;right:0;background:var(--color-surface);border-radius:12px;box-shadow:0 8px 24px #00000026;min-width:240px;max-width:90vw;margin-top:.5rem;z-index:1001;border:1px solid var(--color-surface-hover);overflow:visible;display:flex;flex-direction:column}.user-menu-dropdown>*{overflow:visible}.menu-section{padding:.75rem 0;border-bottom:1px solid var(--color-border-light)}.menu-header{padding:.75rem 1rem;font-size:.95rem;color:var(--color-text-primary);font-weight:600;border-bottom:1px solid var(--color-border-light)}.menu-info{padding:.5rem 1rem;font-size:.85rem;display:flex;flex-direction:column;gap:.25rem;background:none;cursor:default;border:none!important}.menu-info:hover{background:none!important}.info-label{color:var(--color-text-tertiary);font-weight:600;font-size:.7rem;text-transform:uppercase;letter-spacing:.5px;margin-bottom:.2rem}.info-value{color:var(--color-text-primary);font-weight:500;font-size:.9rem;word-break:break-word;line-height:1.4}.menu-item{padding:.75rem 1rem;cursor:pointer;background:none;border:none;width:100%;text-align:left;transition:background-color .2s ease;color:var(--color-text-primary);border-bottom:1px solid var(--color-background-alt);font-size:.9rem}.menu-item strong{display:inline-flex;align-items:center;gap:.5rem}.menu-item:last-child{border-bottom:none}.menu-item:hover{background-color:var(--color-background-alt)}.admin-menu-item{display:flex;align-items:center;gap:.75rem;text-decoration:none;color:var(--color-admin-accent);font-weight:500;padding:.75rem 1rem!important}.admin-menu-item:hover{background-color:var(--color-admin-accent-bg)!important;color:var(--color-admin-accent-hover)}.admin-menu-item .admin-icon{font-size:1rem;flex-shrink:0}.menu-divider{height:1px;background-color:var(--color-surface-hover);margin:.5rem 0}.logout-item{color:#fff!important;background-color:var(--color-admin-accent)!important;font-weight:600;padding:.75rem 1rem!important;display:flex;align-items:center;justify-content:center;gap:.75rem;border-radius:6px;margin:.75rem!important;transition:all .2s ease;cursor:pointer;border:none!important;outline:none;width:calc(100% - 1.5rem);box-sizing:border-box}.logout-item:hover{background-color:var(--color-admin-accent-strong)!important;color:#fff!important;transform:translateY(-1px);box-shadow:0 4px 8px #6c9bd14d}.logout-item:focus{outline:none;box-shadow:0 0 0 3px #6c9bd166}.logout-item:disabled{opacity:.75;cursor:not-allowed;transform:none;box-shadow:none}.menu-version{color:var(--color-text-tertiary);font-size:.7rem;font-weight:400;padding:0 1rem .75rem;text-align:center}.welcome-message{display:flex;align-items:center;justify-content:center;height:100%;padding:2rem}.welcome-content{text-align:center;max-width:600px;animation:welcomeContentFadeIn .5s ease-out}@keyframes welcomeContentFadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.welcome-text{font-size:1.25rem;color:var(--color-text-primary);margin-bottom:1.5rem;font-weight:500;line-height:1.6}.welcome-content h3{color:var(--color-link);margin-bottom:1rem;font-size:1.5rem}.welcome-content p{color:var(--color-text-secondary);margin-bottom:2rem;font-size:1.1rem}.quick-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem;margin-top:1.5rem}.quick-action-button{background:var(--color-surface);border:2px solid var(--color-surface-hover);border-radius:8px;padding:1rem;cursor:pointer;transition:all .2s ease;font-size:.95rem;font-weight:500;color:var(--color-text-primary)}.quick-action-button:hover{border-color:var(--color-link);background-color:var(--color-primary-soft);transform:translateY(-2px);box-shadow:0 4px 8px #007bff1a}.error-banner{background-color:var(--color-error-light);color:var(--color-error-dark);padding:.75rem 1rem;display:flex;align-items:center;gap:.5rem;border-top:1px solid var(--color-error-border)}.error-icon{font-weight:700}.error-text{flex:1;font-size:.875rem}.error-dismiss{background:none;border:none;color:var(--color-error-dark);cursor:pointer;font-size:1.25rem;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center}.error-dismiss:hover{background-color:#721c241a;border-radius:4px}@media (max-width: 500px){.chat-main{padding:0;width:100%}.chat-header{padding:2px .6rem 2px .35rem;min-height:56px}.header-left h1{font-size:1rem}.header-left{gap:.5rem}.header-customer-selector,.header-fleet-selector{font-size:.8rem;max-width:250px;min-width:100px}.header-selectors{gap:.25rem}.searchable-dropdown-trigger{font-size:.8rem;min-height:44px;padding:.3rem .45rem}.searchable-dropdown-search{min-height:44px;font-size:.9rem;padding-top:.65rem;padding-bottom:.65rem}.searchable-dropdown-search-icon,.searchable-dropdown-search-icon-btn{width:1.1rem;height:1.1rem}.searchable-dropdown-option{min-height:44px;font-size:.9rem}.searchable-dropdown-options{max-height:min(45svh,320px)}.header-button-group{gap:0;height:100%}.header-icon-btn{width:28px;height:100%;padding:.3rem;font-size:.9rem}.header-icon-btn img{width:14px;height:14px}.chat-header .logo-container img,.chat-header .logo-image-large{height:32px}}@media (max-width: 480px){.chat-header{padding:2px .5rem 2px .35rem;gap:.15rem;display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"logo right" "selectors selectors";align-items:center}.header-left{display:contents}.logo-container{grid-area:logo;align-self:center;justify-self:start}.header-right{grid-area:right;align-self:center;justify-self:end;min-height:30px}.header-selectors{grid-area:selectors;display:grid;grid-template-columns:auto minmax(0,1fr) minmax(0,1fr);align-items:center;width:100%;max-width:100%;margin-left:0;min-width:0;gap:.35rem;justify-content:stretch}.header-sidebar-btn{display:inline-flex;width:32px;min-width:32px;height:44px;border:1px solid var(--color-border-muted);border-radius:6px;background:var(--color-surface)}.header-sidebar-btn:hover{background-color:var(--color-background-alt)}.header-customer-selector,.header-fleet-selector{width:100%;min-width:0;max-width:100%;flex:1 1 auto;overflow:visible}.header-button-group{height:30px}.header-icon-btn{width:30px;height:30px;padding:.25rem;font-size:.85rem}.header-sidebar-btn.header-icon-btn{width:32px;min-width:32px;height:44px;min-height:44px;padding:0}.header-icon-btn img{width:13px;height:13px}.header-fleet-selector{font-size:.75rem;padding:.3rem 0rem .3rem 0}.chat-header .logo-container img,.chat-header .logo-image-large{height:42px}.user-menu-dropdown{right:-.5rem;left:auto;min-width:200px}}@supports (-webkit-appearance: none){.chat-layout,body.chat-active,html.chat-active{height:-webkit-fill-available}}.loading-spinner-message{display:flex;align-items:center;justify-content:center;padding:2rem}.chat-main.loading-session{position:relative}.chat-main.loading-session:after{content:"";position:absolute;inset:0;background-color:#fff9;-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);border-radius:0;z-index:100;pointer-events:none}.admin-dashboard{min-height:100vh;background:var(--color-background);padding:20px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}.card{background:var(--color-surface);border-radius:var(--border-radius-lg);box-shadow:var(--shadow);margin-bottom:20px}.card-padding{padding:20px}.btn{border:none;border-radius:var(--border-radius);cursor:pointer;font-size:14px;font-weight:500;transition:var(--transition);display:inline-flex;align-items:center;gap:6px}.btn-primary{background:var(--color-primary);color:#fff}.btn-primary:hover:not(:disabled){background:var(--color-primary-dark)}.btn-secondary{background:#757575;color:#fff}.btn-secondary:hover:not(:disabled){background:#616161}.btn-danger{background:var(--color-error);color:#fff}.btn-danger:hover:not(:disabled){background:#d32f2f}.btn-ghost{background:#fff;color:var(--color-primary);border:1px solid var(--color-border)}.btn-ghost:hover:not(:disabled){background:var(--color-background)}.btn-lg{padding:12px 20px}.btn-md{padding:8px 16px}.btn-sm{padding:6px 12px;font-size:12px}.btn:disabled{opacity:.5;cursor:not-allowed}.table-header{background:var(--color-background);padding:12px;text-align:left;font-weight:600;color:var(--color-text-primary);border-bottom:2px solid var(--color-border)}.table-cell{padding:12px;border-bottom:1px solid var(--color-border-light)}.table-row{cursor:pointer;-webkit-user-select:none;user-select:none}.table-row:hover{background:#fafafa}.table-row:active{background:#e3f2fd}.badge{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border-radius:var(--border-radius-pill);font-size:13px;font-weight:500}.badge-success{background:var(--color-success-light);color:var(--color-success-dark)}.badge-error{background:var(--color-error-light);color:var(--color-error-dark)}.badge-info{background:var(--color-primary-light);color:var(--color-primary)}.badge-success-light{background:var(--color-success-light);color:var(--color-success)}.status-badge{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:var(--border-radius-pill);font-size:12px;font-weight:500;white-space:nowrap}.status-badge.status-success{background:var(--color-success-light);color:var(--color-success-dark)}.status-badge.status-error{background:var(--color-error-light);color:var(--color-error-dark)}.status-badge.status-warning{background:var(--color-warning-light);color:var(--color-warning-dark)}.status-badge.status-info{background:var(--color-info-light);color:var(--color-info-dark)}.icon-with-text{display:flex;align-items:center;gap:6px}.icon-with-text svg{font-size:1.1em}.text-sm{font-size:12px}.text-md{font-size:14px}.text-primary{color:var(--color-text-primary)}.text-secondary{color:var(--color-text-secondary)}.text-tertiary{color:var(--color-text-tertiary)}.text-error{color:var(--color-error)}.text-success{color:var(--color-success)}.text-mono{font-family:Courier New,monospace}.admin-header{display:flex;justify-content:space-between;align-items:center;background:var(--color-surface);padding:var(--spacing-xl);border-radius:var(--border-radius-lg);margin-bottom:var(--spacing-xl);box-shadow:var(--shadow)}.admin-header h1{margin:0;font-size:24px;color:var(--color-text-primary);display:flex;align-items:center}.admin-header h1 svg{margin-right:var(--spacing-md);font-size:1.2em}.close-button{padding:8px 16px;border-radius:var(--border-radius);display:flex;align-items:center;gap:6px;background:var(--color-error);border:none;cursor:pointer;color:#fff;transition:var(--transition)}.close-button:hover{background:#d32f2f}.admin-tabs{display:flex;gap:10px;background:var(--color-surface);padding:10px;border-radius:var(--border-radius-lg);margin-bottom:var(--spacing-xl);box-shadow:var(--shadow)}.admin-tabs button{flex:1;padding:var(--spacing-md) var(--spacing-lg);border:1px solid var(--color-border);background:var(--color-surface);cursor:pointer;border-radius:var(--border-radius);font-size:14px;font-weight:500;transition:var(--transition);display:flex;align-items:center;justify-content:center;gap:6px}.admin-tabs button svg{font-size:1.1em}.admin-tabs button:hover{background:var(--color-background)}.admin-tabs button.active{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.admin-error{background:#ffebee;color:#c62828;padding:15px;border-radius:4px;margin-bottom:20px;border-left:4px solid #c62828}.admin-success{background:#e8f5e9;color:#2e7d32;padding:15px;border-radius:4px;margin-bottom:20px;border-left:4px solid #2e7d32;display:flex;flex-direction:column;gap:10px}.admin-success strong{display:flex;align-items:center;gap:8px;font-weight:600}.admin-success p{margin:0;font-size:14px;line-height:1.5}.admin-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;background:#fff;border-radius:8px}.trace-loading-spinner{margin-left:6px;vertical-align:middle}.admin-content{background:var(--color-surface);padding:var(--spacing-lg);border-radius:var(--border-radius-lg);box-shadow:var(--shadow)}.admin-content h2{margin:0 0 10px;font-size:20px;color:var(--color-text-primary)}.admin-content h3{margin:20px 0 10px;font-size:16px;color:var(--color-text-secondary)}.result-count,.period-info{color:var(--color-text-secondary);font-size:14px;margin-bottom:15px}.traces-table-container,.cost-table-container,.analytics-table-container,.sessions-list,.feedback-container{overflow-x:auto;margin:0;padding:20px}.traces-table,.cost-table,.analytics-table,.admin-table{width:100%;border-collapse:collapse;font-size:14px}.traces-table th,.cost-table th,.analytics-table th,.admin-table th{background:var(--color-background);padding:12px;text-align:left;font-weight:600;color:var(--color-text-primary);border-bottom:2px solid var(--color-border)}.traces-table td,.cost-table td,.analytics-table td,.admin-table td{padding:12px;border-bottom:1px solid var(--color-border-light)}.traces-table tr:hover,.cost-table tr:hover,.analytics-table tr:hover,.admin-table tr:hover{background:#fafafa}.traces-table .trace-row,.admin-table .session-row,.admin-table .feedback-row{cursor:pointer;-webkit-user-select:none;user-select:none}.traces-table .trace-row:active,.admin-table .session-row:active,.admin-table .feedback-row:active{background:#e3f2fd}.btn-small{padding:6px 12px;background:var(--color-primary);color:#fff;border:none;border-radius:var(--border-radius);cursor:pointer;font-size:12px;transition:var(--transition)}.btn-small:hover{background:var(--color-primary-dark)}.detail-button{background:var(--color-primary);color:#fff;border:none;padding:6px 12px;border-radius:var(--border-radius);cursor:pointer;font-size:13px;transition:var(--transition)}.detail-button:hover{background:var(--color-primary-dark)}.trace-button{background:#9c27b0;color:#fff;border:none;padding:6px 12px;border-radius:var(--border-radius);cursor:pointer;font-size:12px;transition:var(--transition);display:inline-flex;align-items:center;gap:4px}.trace-button:hover:not(:disabled){background:#7b1fa2}.trace-button:disabled{background:#ce93d8;cursor:not-allowed;opacity:.8}.analysis-button{border:none;padding:6px 10px;border-radius:var(--border-radius);cursor:pointer;font-size:13px;font-weight:600;transition:var(--transition);display:inline-flex;align-items:center;gap:6px;min-width:60px;justify-content:center}.analysis-button--high{background:#4caf50;color:#fff}.analysis-button--high:hover{background:#45a049}.analysis-button--high:active{background:#3d8b40}.analysis-button--low{background:#f44336;color:#fff}.analysis-button--low:hover{background:#da190b}.analysis-button--low:active{background:#ba0000}.analysis-icon{font-size:16px;line-height:1}.analysis-cell{text-align:center;padding:8px!important}.analysis-cell:empty:before{content:"—";color:var(--color-text-tertiary)}.analysis-json-container{margin-top:0;border-radius:var(--border-radius);background-color:var(--color-background);overflow:hidden;border:1px solid var(--color-border)}.analysis-json-box{margin:0;padding:12px;max-height:250px;overflow-y:auto;overflow-x:auto;background-color:var(--color-background-alt);border:none;font-size:12px;font-family:Courier New,Courier,monospace;line-height:1.5;color:#333;white-space:pre-wrap;word-wrap:break-word}.analysis-json-box code{font-family:Courier New,Courier,monospace;color:#333;font-size:12px;line-height:1.5}.analysis-json-box::-webkit-scrollbar{width:8px;height:8px}.analysis-json-box::-webkit-scrollbar-track{background:#f1f1f1}.analysis-json-box::-webkit-scrollbar-thumb{background:#888;border-radius:4px}.analysis-json-box::-webkit-scrollbar-thumb:hover{background:#555}.analysis-json-box .hljs-number{color:#d73a49}.analysis-json-box .hljs-attr{color:#24292e}.analysis-json-box .hljs-string{color:#22863a}.analysis-json-box .hljs-literal{color:#005cc5}.pagination{display:flex;justify-content:center;align-items:center;gap:20px;margin-top:20px;padding:15px;background:#f9f9f9;border-radius:var(--border-radius)}.pagination button{padding:8px 16px;background:var(--color-primary);color:#fff;border:none;border-radius:var(--border-radius);cursor:pointer;font-size:14px;transition:var(--transition)}.pagination button:hover:not(:disabled){background:var(--color-primary-dark)}.pagination button:disabled{background:#ccc;cursor:not-allowed}.pagination span{font-size:14px;color:var(--color-text-secondary)}.pagination-info{font-size:14px;color:var(--color-text-secondary);white-space:nowrap}.cost-aggregations{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:15px;margin:0;padding:20px;border-bottom:1px solid var(--color-border-light)}.stat-card{background:linear-gradient(135deg,#23743e,#38f9d7);color:#fff;padding:20px;border-radius:8px;box-shadow:0 4px 6px #0000001a}.stat-card:nth-child(2){background:linear-gradient(135deg,#937896,#b65965)}.stat-card:nth-child(3){background:linear-gradient(135deg,#4facfe,#02b3bd)}.stat-card:nth-child(4){background:linear-gradient(135deg,#667eea,#764ba2)}.stat-card h3{margin:0 0 10px;font-size:14px;font-weight:500;opacity:.9;color:#fff}.stat-value{margin:0;font-size:28px;font-weight:700}.detail-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:10px;margin:1px 0;font-size:14px}.detail-grid div{padding:10px;background:var(--color-background-alt);border-radius:var(--border-radius);word-wrap:break-word;overflow-wrap:break-word;word-break:break-word}.detail-grid>div{display:flex;flex-direction:column;gap:4px;padding:0;background:transparent}.detail-grid strong{font-weight:600;color:var(--color-text-primary);font-size:13px}.detail-grid code{background:var(--color-background);padding:2px 6px;border-radius:3px;font-family:Courier New,monospace;font-size:12px;word-break:break-all}.rating-display{display:inline-flex;align-items:center;gap:6px;font-weight:600;padding:4px 10px;border-radius:4px;margin-left:8px}.rating-display.rating-positive{background:var(--color-success-light);color:var(--color-success-dark)}.rating-display.rating-negative{background:var(--color-error-light);color:var(--color-error-dark)}.rating-display svg{font-size:16px}.message-content{background:var(--color-background-alt);padding:15px;border-radius:var(--border-radius);margin:10px 0;font-size:14px;line-height:1.6;word-wrap:break-word;overflow-wrap:break-word;word-break:break-word;white-space:pre-wrap}.feedback-modal .modal-body>div{margin-bottom:var(--spacing-xl)}.feedback-modal .modal-body>div:last-child{margin-bottom:0}.feedback-modal .modal-body>div:first-child>div{display:flex;gap:var(--spacing-md);flex-wrap:wrap}.feedback-modal .modal-body>div:first-child .btn{margin:0;padding:var(--spacing-sm) var(--spacing-lg);min-height:40px}.feedback-modal .modal-body>div:nth-child(2){display:flex;flex-direction:column;gap:var(--spacing-sm)}.feedback-modal .modal-body>div:nth-child(2) label{display:block;font-weight:600;color:var(--color-text-primary);margin-bottom:var(--spacing-xs)}.feedback-modal .modal-body>div:nth-child(2)>div:nth-child(2){display:flex;flex-direction:column;gap:var(--spacing-sm)}.feedback-modal textarea{width:100%;min-height:120px;padding:var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--border-radius);background:var(--color-background);color:var(--color-text-primary);font-family:inherit;font-size:14px;resize:vertical;max-height:300px}.feedback-modal textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #1976d21a}.feedback-modal textarea:disabled{background:var(--color-background-disabled);cursor:not-allowed;opacity:.6}.feedback-modal .modal-body>div:nth-child(2)>div:nth-child(2)>div:last-child{font-size:12px;color:var(--color-text-secondary);text-align:right}.feedback-modal .modal-body>div:nth-child(2)>div:nth-child(2)>div.error-message{color:var(--color-error);font-size:12px;padding:var(--spacing-sm);background:#f443361a;border-radius:var(--border-radius)}.truncation-indicator{color:var(--color-text-tertiary);font-style:italic;font-size:12px;margin-left:4px}.events-list{display:flex;flex-direction:column;gap:10px;margin:15px 0}.event-item{background:var(--color-background-alt);padding:12px;border-radius:var(--border-radius);border-left:3px solid var(--color-primary)}.event-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.event-sequence{font-size:11px;color:var(--color-text-secondary);background:var(--color-surface);border:1px solid var(--color-border);border-radius:10px;padding:2px 8px}.event-type{font-weight:600;color:var(--color-primary);font-size:13px}.event-duration{font-size:12px;color:var(--color-text-secondary)}.event-content{font-size:13px;color:var(--color-text-secondary);line-height:1.5;word-wrap:break-word;overflow-wrap:break-word;word-break:break-word}.event-reasoning{margin-top:10px;padding:10px;background:var(--color-surface);border:1px solid var(--color-divider);border-radius:var(--border-radius)}.event-reasoning strong{display:block;margin-bottom:8px;color:var(--color-primary);font-size:13px}.event-reasoning pre{margin:0;font-size:12px;font-family:Courier New,monospace;color:var(--color-text-primary);white-space:pre-wrap;word-wrap:break-word;line-height:1.5}.event-tool-details,.event-metadata-details{margin-top:12px;padding:10px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--border-radius)}.metadata-detail-row{margin:8px 0;font-size:13px}.metadata-detail-row strong{color:var(--color-primary);font-weight:600}.metadata-detail-row summary,.event-metadata-details summary{cursor:pointer;font-weight:500;font-size:13px;color:var(--color-primary);-webkit-user-select:none;user-select:none;margin:8px 0}.event-metadata-details summary::marker,.metadata-detail-row summary::marker{font-size:11px}.metadata-detail-row summary:hover,.event-metadata-details summary:hover{text-decoration:underline}.metadata-detail-row pre,.event-metadata-details pre{margin:8px 0 0;padding:8px;background:var(--color-background-alt);border:1px solid var(--color-border);border-radius:3px;overflow-x:auto;font-size:11px;line-height:1.4;white-space:pre-wrap;word-wrap:break-word;overflow-wrap:break-word;word-break:break-word}.tool-detail-row{margin:8px 0;font-size:13px}.tool-detail-row strong{color:var(--color-primary);font-weight:600}.tool-detail-row.error{color:var(--color-error-dark);background:var(--color-error-light);padding:8px;border-radius:var(--border-radius);margin:8px 0}.tool-detail-row summary{cursor:pointer;font-weight:500;color:var(--color-primary);-webkit-user-select:none;user-select:none;margin:8px 0}.tool-detail-row summary:hover{text-decoration:underline}.tool-detail-row pre{margin:8px 0 0;padding:8px;background:var(--color-background-alt);border:1px solid var(--color-border);border-radius:3px;overflow-x:auto;font-size:11px;line-height:1.4;white-space:pre-wrap;word-wrap:break-word;overflow-wrap:break-word;word-break:break-word}.tools-list{display:flex;flex-direction:column;gap:15px;margin:15px 0}.tool-item{background:var(--color-background-alt);padding:15px;border-radius:var(--border-radius);border-left:3px solid var(--color-success)}.tool-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;flex-wrap:wrap;gap:10px}.tool-name{font-weight:600;color:var(--color-text-primary);font-size:14px;display:flex;align-items:center;gap:6px}.tool-name svg{font-size:1.1em}.tool-status{font-size:12px;padding:4px 8px;border-radius:3px;display:flex;align-items:center;gap:4px}.tool-status svg{font-size:1.1em}.tool-status.success{background:var(--color-success-light);color:var(--color-success-dark)}.tool-status.error{background:var(--color-error-light);color:var(--color-error-dark)}.tool-duration{font-size:12px;color:var(--color-text-secondary)}.tool-details{margin-top:10px;font-size:13px}.tool-details summary{cursor:pointer;font-weight:500;color:var(--color-primary);-webkit-user-select:none;user-select:none}.trace-session-doc-details summary{line-height:1.7}.trace-session-doc-summary{display:inline-flex;align-items:center;gap:6px;min-width:0;vertical-align:middle}.trace-session-doc-summary svg{flex:0 0 auto;font-size:16px}.trace-session-doc-title{color:var(--color-text-primary);font-weight:400;overflow-wrap:anywhere}.tool-details pre{margin:10px 0 0;padding:10px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--border-radius);overflow-x:auto;font-size:12px;line-height:1.4;white-space:pre-wrap;word-wrap:break-word;overflow-wrap:break-word;word-break:break-word}.session-doc-details summary{display:inline-flex;align-items:center;gap:6px}.session-doc-list{display:flex;flex-direction:column;gap:10px;margin-top:10px}.session-doc-item{padding:10px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--border-radius)}.session-doc-header{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:6px}.session-doc-header span{font-size:11px;color:var(--color-primary);background:var(--color-background-alt);border:1px solid var(--color-border);border-radius:10px;padding:2px 8px}.session-doc-item p{margin:6px 0;font-size:13px;color:var(--color-text-secondary)}.session-doc-meta{display:flex;flex-direction:column;gap:4px;margin:8px 0;font-size:12px;color:var(--color-text-secondary)}.session-doc-json{margin-top:8px}.session-doc-json summary{color:var(--color-primary);font-size:12px}.session-docs-standalone{border-left-color:var(--color-primary)}.access-denied{text-align:center;padding:60px 20px;background:var(--color-surface);border-radius:var(--border-radius-lg);margin:40px auto;max-width:600px}.access-denied h1{color:#c62828;margin-bottom:10px}.access-denied p{color:var(--color-text-secondary);font-size:16px}@media (max-width: 768px){.admin-dashboard{padding:10px}.admin-header{flex-direction:column;gap:15px;text-align:center}.admin-tabs{flex-direction:column}.cost-aggregations,.detail-grid{grid-template-columns:1fr}.modal-content{max-height:95vh}.traces-table th,.traces-table td{padding:8px;font-size:12px}.btn-small{padding:4px 8px;font-size:11px}}.sessions-tab,.traces-tab,.feedback-tab,.cost-tab,.analytics-tab{background:var(--color-surface);padding:0;border-radius:0;box-shadow:none}.tab-header{display:flex;justify-content:space-between;align-items:center;padding:0 20px 15px;border-bottom:1px solid var(--color-border-light)}.tab-header h2{margin:0;font-size:20px;color:var(--color-text-primary)}.tab-header p,.result-count{margin:0;color:var(--color-text-secondary);font-size:14px}.header-controls{display:flex;align-items:center;gap:20px}.checkbox-label{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:14px;color:var(--color-text-secondary);-webkit-user-select:none;user-select:none}.checkbox-label input[type=checkbox]{cursor:pointer;margin:0;width:16px;height:16px}.checkbox-label:hover{color:var(--color-text-primary)}.export-button{background:var(--color-primary);color:#fff;border:none;padding:6px 12px;border-radius:var(--border-radius);cursor:pointer;font-size:13px;transition:var(--transition);display:inline-flex;align-items:center;gap:6px}.export-button:hover:not(:disabled){background:var(--color-primary-dark)}.export-button:disabled{opacity:.5;cursor:not-allowed}.export-icon{font-size:14px;display:inline-flex;align-items:center}.sessions-list,.feedback-container,.traces-table-container,.cost-table-container,.analytics-table-container{margin:0;padding:20px;overflow-x:auto}.customer-cell,.user-cell{font-size:13px;color:var(--color-text-secondary);max-width:300px;word-break:break-word}.message-preview{font-size:13px;color:var(--color-text-secondary);max-width:300px;word-break:break-word;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.session-id{font-family:Courier New,monospace;background:var(--color-background);padding:2px 6px;border-radius:3px;font-size:12px}.rating{font-size:12px;font-weight:500;gap:3px}.rating-positive{color:#2e7d32}.rating-negative{color:#c62828}.rating svg{font-size:1.4em}.comments{font-size:13px;color:var(--color-text-secondary);max-width:250px;word-break:break-word;text-align:left}.no-comments{color:var(--color-text-tertiary);font-style:italic}.id-paren{color:var(--color-text-tertiary);font-size:12px;font-weight:400;margin-left:3px}.no-data{color:var(--color-text-tertiary);font-style:italic}.empty-state{text-align:center;padding:40px 20px}.empty-state p{color:var(--color-text-tertiary);font-size:16px;margin:0}.feedback-tab .empty-state{text-align:center;padding:40px 20px}.feedback-tab .empty-state p{color:var(--color-text-tertiary);font-size:16px;margin:0}.session-detail-modal .modal-content{max-width:900px;max-height:90vh}.session-detail-modal .modal-body{overflow-y:hidden;display:flex;flex-direction:column}.session-detail-modal .session-detail{display:flex;flex-direction:column;overflow:hidden;height:100%}.messages-list{margin-top:15px;max-height:calc(90vh - 300px);overflow-y:auto;display:flex;flex-direction:column;gap:15px}.message-item{border:1px solid var(--color-border);border-radius:var(--border-radius-lg);padding:15px;background:var(--color-background-alt)}.message-item.message-user{border-left:4px solid var(--color-primary)}.message-item.message-assistant{border-left:4px solid var(--color-success)}.message-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;flex-wrap:wrap;gap:10px}.role-badge{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border-radius:var(--border-radius-pill);font-size:13px;font-weight:500}.role-badge.user{background:var(--color-primary-light);color:var(--color-primary)}.role-badge.assistant{background:var(--color-success-light);color:var(--color-success)}.message-meta{font-size:12px;color:var(--color-text-secondary)}.response-time,.fleet-name{color:var(--color-text-tertiary)}.message-footer{display:flex;justify-content:space-between;align-items:center;margin-top:10px;flex-wrap:wrap;gap:10px}.feedback-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;background:var(--color-background);border:1px solid var(--color-border);border-radius:var(--border-radius);font-size:13px;color:var(--color-text-secondary)}.feedback-comment-wrapper{display:flex;flex-direction:column;gap:8px}.feedback-badge-header{display:flex;align-items:center;gap:6px;padding:6px 12px;background:var(--color-background);border:1px solid var(--color-border);border-radius:var(--border-radius);font-size:13px;width:fit-content}.feedback-badge .feedback-icon{font-size:1.1em;margin-top:2px}.feedback-badge .thumbs-up{color:var(--color-success)}.feedback-badge .thumbs-down{color:var(--color-error)}.feedback-badge-header .thumbs-up{color:var(--color-success)}.feedback-badge-header .thumbs-down{color:var(--color-error)}.feedback-comment{color:var(--color-text-primary);display:block;white-space:pre-wrap;word-wrap:break-word;background:var(--color-background-alt);padding:15px;border-radius:var(--border-radius);margin:0;border:1px solid var(--color-border-light)}.feedback-header{display:flex;align-items:flex-start;gap:6px;margin-bottom:8px;font-size:12px;font-weight:600}.feedback-label{color:var(--color-text-primary);font-weight:600;font-size:13px}.session-analysis-modal .modal-content{max-width:800px;max-height:90vh}.session-analysis-modal .modal-body{overflow-y:auto;display:flex;flex-direction:column}.session-analysis-modal .session-analysis{display:flex;flex-direction:column;height:100%}.analysis-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:15px;margin:15px 0}.analysis-card{border:2px solid var(--color-border);border-radius:var(--border-radius-lg);padding:20px;text-align:center;background:var(--color-background-alt);transition:var(--transition)}.analysis-card:hover{border-color:var(--color-primary);box-shadow:0 2px 8px #0000001a}.analysis-score-label{font-size:12px;font-weight:600;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:10px}.analysis-score-value{font-size:32px;font-weight:700;color:var(--color-text-primary);display:flex;align-items:center;justify-content:center;gap:8px}.analysis-score-value.high{color:var(--color-success)}.analysis-score-value.low{color:var(--color-error)}.score-indicator{display:inline-flex;align-items:center;font-size:20px}.score-indicator .thumbs-icon{margin-top:2px}.score-indicator .thumbs-icon.up{color:var(--color-success)}.score-indicator .thumbs-icon.down{color:var(--color-error)}.validation-messages{background:var(--color-background);border:1px solid var(--color-border);border-radius:var(--border-radius);padding:15px;white-space:pre-wrap;word-wrap:break-word;font-family:Courier New,monospace;font-size:13px;color:var(--color-text-primary);max-height:200px;overflow-y:auto}@media (max-width: 1024px){.sessions-list{overflow-x:auto;-webkit-overflow-scrolling:touch}.admin-table{min-width:800px}.message-preview{max-width:200px}}@media (max-width: 768px){.sessions-tab{padding:12px}.admin-table{min-width:700px;font-size:13px}.admin-table th,.admin-table td{padding:8px}.message-preview{max-width:150px}.session-id{font-size:11px;max-width:120px;overflow:hidden;text-overflow:ellipsis;display:inline-block}}@media (max-width: 480px){.sessions-tab{padding:8px}.admin-table{min-width:600px;font-size:12px}.admin-table th,.admin-table td{padding:6px 4px}.message-preview{max-width:100px}.session-id{max-width:80px}.detail-button{padding:4px 8px;font-size:12px}}.action-buttons{display:flex;gap:8px;align-items:center;flex-wrap:nowrap}.action-buttons .detail-button,.action-buttons .delete-button{display:inline-flex;align-items:center;gap:4px;white-space:nowrap;height:32px;padding:6px 12px;font-size:13px}.delete-button{background:#dc3545;color:#fff;border:none;border-radius:var(--border-radius);cursor:pointer;transition:var(--transition)}.delete-button:hover{background:#c82333}.generate-report-button{background:#28a745;color:#fff;border:none;padding:10px 20px;border-radius:var(--border-radius);cursor:pointer;font-size:14px;font-weight:500;display:inline-flex;align-items:center;gap:6px;transition:var(--transition);box-shadow:0 2px 4px #0000001a}.generate-report-button:hover{background:#218838;box-shadow:0 4px 8px #00000026}.generate-report-button:active{background:#1e7e34;box-shadow:0 1px 2px #0000001a}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:6px;font-weight:500;color:var(--color-text);font-size:14px}.form-control{width:100%;padding:8px 12px;border:1px solid var(--color-border);border-radius:var(--border-radius);font-size:14px;background:var(--color-background);color:var(--color-text);transition:var(--transition)}.form-control:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #007bff1a}.form-control:disabled{background:var(--color-border-light);cursor:not-allowed}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:20px}.availability-check{padding:12px 16px;border-radius:var(--border-radius);display:flex;align-items:center;gap:8px;font-size:14px;margin-top:16px}.availability-check.loading{background:#f8f9fa;color:#6c757d}.availability-check.sufficient{background:#d4edda;color:#155724}.availability-check.insufficient{background:#fff3cd;color:#856404}.tool-output-button{margin-left:10px;padding:6px 12px;font-size:12px;background:var(--color-primary);color:#fff;border:none;border-radius:3px;cursor:pointer;display:inline-flex;align-items:center;gap:4px;transition:background-color .2s}.tool-output-button:hover{background:var(--color-primary-dark)}.tool-output-button.collapse{margin-top:10px;margin-left:0;display:block;width:100%}.tool-full-output{margin-top:10px;padding:10px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--border-radius)}.tool-full-output.loading-state,.tool-full-output.error-state{padding:20px;text-align:center;color:var(--color-text-secondary);font-style:italic}.tool-full-output.error-state{color:var(--color-error)}.tool-full-output pre{margin:0;padding:10px;background:var(--color-background-alt);border:1px solid var(--color-border);border-radius:3px;overflow-x:auto;font-size:12px;line-height:1.4;white-space:pre-wrap;word-wrap:break-word;overflow-wrap:break-word;word-break:break-word}.tool-output-modal{width:90%;max-width:1200px;height:80%;max-height:90vh;display:flex;flex-direction:column}.tool-output-modal .modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid var(--color-border);flex-shrink:0}.tool-output-modal .modal-header h2{margin:0;font-size:18px;color:var(--color-text-primary)}.header-actions{display:flex;gap:10px;align-items:center}.copy-button{padding:6px 12px;font-size:13px;background:var(--color-success);color:#fff;border:none;border-radius:3px;cursor:pointer;display:flex;align-items:center;gap:6px;transition:background-color .2s}.copy-button:hover{background:var(--color-success-dark)}.tool-output-body{flex:1;overflow-y:auto;padding:20px;display:flex;flex-direction:column}.tool-output-content{background:var(--color-background-alt);border:1px solid var(--color-border);border-radius:var(--border-radius);padding:15px;margin:0;font-size:12px;line-height:1.5;overflow:auto;white-space:pre-wrap;word-wrap:break-word;overflow-wrap:break-word;word-break:break-word;flex:1}.tool-output-body .loading-state,.tool-output-body .error-state,.tool-output-body .empty-state{padding:40px;text-align:center;color:var(--color-text-secondary)}.tool-output-body .error-state{color:var(--color-error)}.tool-output-body .error-state strong{color:var(--color-error-dark);display:block;margin-bottom:10px}pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}/*!
  Theme: GitHub
  Description: Light theme as seen on github.com
  Author: github.com
  Maintainer: @Hirse
  Updated: 2021-05-15

  Outdated base version: https://github.com/primer/github-syntax-light
  Current colors taken from GitHub's CSS
*/.hljs{color:#24292e;background:#fff}.hljs-doctag,.hljs-keyword,.hljs-meta .hljs-keyword,.hljs-template-tag,.hljs-template-variable,.hljs-type,.hljs-variable.language_{color:#d73a49}.hljs-title,.hljs-title.class_,.hljs-title.class_.inherited__,.hljs-title.function_{color:#6f42c1}.hljs-attr,.hljs-attribute,.hljs-literal,.hljs-meta,.hljs-number,.hljs-operator,.hljs-variable,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-id{color:#005cc5}.hljs-regexp,.hljs-string,.hljs-meta .hljs-string{color:#032f62}.hljs-built_in,.hljs-symbol{color:#e36209}.hljs-comment,.hljs-code,.hljs-formula{color:#6a737d}.hljs-name,.hljs-quote,.hljs-selector-tag,.hljs-selector-pseudo{color:#22863a}.hljs-subst{color:#24292e}.hljs-section{color:#005cc5;font-weight:700}.hljs-bullet{color:#735c0f}.hljs-emphasis{color:#24292e;font-style:italic}.hljs-strong{color:#24292e;font-weight:700}.hljs-addition{color:#22863a;background-color:#f0fff4}.hljs-deletion{color:#b31d28;background-color:#ffeef0}.coach-suggestion-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));gap:.625rem}.coach-suggestion-control{border:1px solid var(--color-border-muted);border-radius:8px;background:var(--color-surface);color:var(--color-text-primary);cursor:pointer;font:inherit;text-align:left}.coach-suggestion-control:hover:not(:disabled){border-color:var(--color-selection-border);background:var(--color-selection-background)}.coach-suggestion-control:focus-visible{outline:2px solid var(--color-focus-border);outline-offset:2px}.coach-suggestion-control:disabled{cursor:wait;opacity:.58}.coach-suggestion-control-card,.coach-suggestion-control-list,.coach-suggestion-control-compact{display:flex;align-items:flex-start;gap:.625rem}.coach-suggestion-control-card{min-height:7rem;padding:.75rem;border-color:var(--color-border-muted);box-shadow:var(--shadow-card-subtle)}.coach-suggestion-control-list{width:100%;padding:.625rem}.coach-suggestion-control-compact{width:100%;padding:.5rem}.coach-suggestion-control-icon{flex:0 0 auto;width:1.125rem;height:1.125rem;margin-top:.125rem;color:var(--color-brand-primary)}.coach-suggestion-control-copy{display:grid;min-width:0;gap:.25rem}.coach-suggestion-control-title{color:var(--color-text-strong);font-size:.875rem;font-weight:600;line-height:1.25}.coach-suggestion-control-chip .coach-suggestion-control-title,.coach-suggestion-control-compact .coach-suggestion-control-title,.coach-suggestion-control-list .coach-suggestion-control-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.coach-suggestion-control-description{color:var(--color-text-supporting);font-size:.8125rem;line-height:1.35}.coach-suggestion-chips{display:flex;flex-wrap:wrap;gap:.375rem;justify-content:center}@media (prefers-reduced-motion: no-preference){.coach-generated-suggestion-chips{animation:coachGeneratedSuggestionGroupIn .2s cubic-bezier(.22,1,.36,1) both}.coach-generated-suggestion-chips .coach-suggestion-control-chip{animation:coachGeneratedSuggestionChipIn .4s cubic-bezier(.22,1,.36,1) both}}@keyframes coachGeneratedSuggestionGroupIn{0%{opacity:0}to{opacity:1}}@keyframes coachGeneratedSuggestionChipIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.coach-suggestion-chips.is-shuffling .coach-suggestion-control-chip{animation:coachSuggestionChipIn .24s ease-out both}.coach-suggestion-chips.is-shuffling .coach-suggestion-control-chip:nth-child(2){animation-delay:.04s}.coach-suggestion-chips.is-shuffling .coach-suggestion-control-chip:nth-child(3){animation-delay:.08s}@keyframes coachSuggestionChipIn{0%{opacity:0;transform:translateY(.35rem)}to{opacity:1;transform:translateY(0)}}.coach-suggestion-control-chip{display:inline-flex;align-items:center;gap:.375rem;min-height:2.25rem;padding:.375rem .625rem;border-radius:999px;border-color:var(--color-border-muted);background:var(--color-brand-surface-soft);color:var(--color-text-emphasis);font-size:.8125rem;font-weight:500}.coach-suggestion-control-chip:hover:not(:disabled){border-color:var(--color-brand-border-hover);background:var(--color-brand-surface-hover);color:var(--color-brand-primary-dark)}.coach-suggestion-control-chip .coach-suggestion-control-title{color:inherit}.coach-suggestion-control-chip .coach-suggestion-control-icon{width:1rem;height:1rem;margin-top:0}.coach-suggestion-compact-list{display:grid;gap:.375rem}.coach-suggestion-control-compact .coach-suggestion-control-title{font-size:.8125rem}.coach-suggestions-panel{display:flex;flex-direction:column}.coach-suggestions-category{display:grid;gap:.5rem;margin-bottom:1rem}.coach-suggestions-category h3{margin:0;color:var(--color-text-secondary);font-size:.75rem;font-weight:700;text-transform:uppercase}.coach-suggestions-category-list{display:grid;gap:.5rem}.coach-suggestions-state{padding:2rem 1rem;color:var(--color-text-muted);font-size:.875rem;text-align:center}.coach-suggestions-error{color:var(--color-error-dark)}.coach-suggestions-error p{margin:0 0 .75rem}.coach-suggestions-retry,.coach-suggestions-revalidation-error button{border:0;border-radius:6px;background:transparent;color:inherit;cursor:pointer;font:inherit;font-weight:600;padding:.25rem;text-decoration:underline}.coach-suggestions-revalidation-error{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.75rem;color:var(--color-error-dark);font-size:.8125rem}@media (max-width: 500px){.coach-suggestion-cards{grid-template-columns:1fr}}@media (prefers-reduced-motion: reduce){.coach-suggestion-chips.is-shuffling .coach-suggestion-control-chip{animation:none}}.welcome-panel{display:flex;align-items:center;justify-content:center;height:100%;padding:2rem;background-color:#fff;animation:welcomePanelFadeIn .5s ease-out}@keyframes welcomePanelFadeIn{0%{opacity:0}to{opacity:1}}@keyframes welcomePanelFadeOut{0%{opacity:1}to{opacity:0;pointer-events:none}}.welcome-panel.fade-out{animation:welcomePanelFadeOut .5s ease-out forwards}.welcome-panel-content{display:flex;flex-direction:column;gap:1.5rem;max-width:600px;width:100%;animation:contentSlideUp .5s ease-out}@keyframes contentSlideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes inputJiggle{0%{transform:scale(1)}25%{transform:scale(1.02)}50%{transform:scale(1)}75%{transform:scale(1.02)}to{transform:scale(1)}}.welcome-panel-message{text-align:center}.welcome-suggestions-area{position:relative}.welcome-suggestions-area:not(.is-loading){min-block-size:7rem}.welcome-suggestion-placeholder{min-block-size:7rem;border:1px solid var(--color-border-muted);border-radius:8px;background:var(--color-surface);box-shadow:var(--shadow-card-subtle);opacity:.45}.welcome-suggestions-status{display:flex;align-items:center;justify-content:center;position:absolute;inset:0;z-index:1;gap:.5rem;color:var(--color-text-secondary);font-size:.875rem}.welcome-suggestions-error{color:var(--color-error-dark)}.welcome-panel-text{font-size:1.5rem;color:var(--color-text-strong);font-weight:500;line-height:1.6}.welcome-panel-input-wrapper{margin-top:0;animation:inputJiggle .5s ease-in-out .4s}.welcome-panel-input-wrapper .message-input-container{border-top:none!important}@media (prefers-reduced-motion: no-preference){.welcome-suggestion-cards{animation:coachGeneratedSuggestionGroupIn .2s cubic-bezier(.22,1,.36,1) both}.welcome-suggestion-cards .coach-suggestion-control-card{animation:coachGeneratedSuggestionChipIn .4s cubic-bezier(.22,1,.36,1) both}.welcome-suggestion-cards .coach-suggestion-control-card:nth-child(1){animation-delay:.18s}.welcome-suggestion-cards .coach-suggestion-control-card:nth-child(2){animation-delay:.36s}.welcome-suggestion-cards .coach-suggestion-control-card:nth-child(3){animation-delay:.54s}}@media (max-width: 768px){.welcome-panel{padding:1.5rem}.welcome-panel-content{gap:1rem}.welcome-panel-text{font-size:1.25rem}}@media (max-width: 480px){.welcome-panel{padding:1rem}.welcome-panel-content{gap:.75rem;max-width:100%}.welcome-panel-text{font-size:1.2rem}}.copy-markdown-button:not(.message-action-button){background:#2196f3;color:#fff;border:none;padding:6px 12px;border-radius:4px;cursor:pointer;font-size:12px;transition:background-color .2s ease;display:inline-flex;align-items:center;gap:4px}.copy-markdown-button:not(.message-action-button):hover{background:#1976d2}.copy-markdown-button:not(.message-action-button).copied{background:#4caf50}.copy-markdown-button.message-action-button.copied{color:var(--color-success-dark)}.message-actions{display:flex;align-items:center;justify-content:flex-start;gap:8px;flex-wrap:wrap}.message-actions .message-feedback-buttons{margin-top:0;padding-top:0;border-top:0}.pdf-export-button:not(.message-action-button){background:#455a64;color:#fff;border:none;padding:6px 12px;border-radius:4px;cursor:pointer;font-size:12px;transition:background-color .2s ease,opacity .2s ease;display:inline-flex;align-items:center;gap:4px}.pdf-export-button--icon-only:not(.message-action-button){justify-content:center;min-width:36px;height:32px;padding:6px}.pdf-export-button--icon-only:not(.message-action-button) svg{font-size:16px}.pdf-export-button:not(.message-action-button):hover:not(:disabled){background:#263238}.pdf-export-button:not(.message-action-button):disabled{cursor:not-allowed;opacity:.65}.pdf-export-button:not(.message-action-button) .pdf-export-button__spinner{border-color:#ffffff73;border-top-color:#fff}.pdf-export-error{color:var(--color-error-dark);font-size:12px;margin-left:8px}.pdf-export-stage{position:fixed;left:0;top:0;width:7.6in;pointer-events:none;opacity:0;overflow:hidden;background:#fff;z-index:-1}.pdf-export-map-canvas .map-display-container{border:1px solid #d9e2ec;border-radius:0;box-shadow:none;margin:0;overflow:hidden}.pdf-export-map-canvas .map-display-container .leaflet-container{border-radius:0}.pdf-export-map-canvas .leaflet-tile{opacity:1!important;transition:none!important}.pdf-export-map-canvas .leaflet-control-zoom{display:none}.pdf-export-map-loading{color:#607d8b;font-size:10px;border:1px solid #d9e2ec;padding:24px;text-align:center}.message-action-button{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;width:44px;height:44px;padding:10px;border:none;border-radius:4px;background:transparent;color:var(--color-text-secondary);cursor:pointer;transition:background-color .2s ease,color .2s ease}.message-action-button:hover:not(:disabled){background:var(--color-border-muted);color:var(--color-text-primary)}.message-action-button:active:not(:disabled){background:var(--color-border-hover)}.message-action-button:focus-visible{outline:2px solid var(--color-focus-border);outline-offset:2px}.message-action-button:disabled{cursor:not-allowed;opacity:.65}.message-action-button svg{width:22px;height:22px}.message-action-button .themed-spinner{border-color:var(--color-border-muted);border-top-color:var(--color-text-secondary)}.save-prompt-from-response-action{display:flex;flex-direction:column;align-items:flex-start;gap:4px}.save-prompt-from-response-error{color:var(--color-error-dark);font-size:12px}.custom-message-list{display:flex;flex-direction:column;gap:12px;padding:16px;height:calc(100vh - 120px);overflow-y:auto;overflow-x:hidden;background-color:#fff;overscroll-behavior-y:contain;-webkit-overflow-scrolling:auto}.custom-message-list::-webkit-scrollbar{width:8px}.custom-message-list::-webkit-scrollbar-track{background:transparent}.custom-message-list::-webkit-scrollbar-thumb{background-color:transparent;border-radius:4px;height:120px!important}.custom-message-list::-webkit-scrollbar-thumb:hover{background-color:#999}.custom-message-list::-webkit-scrollbar-button{display:none}.custom-message-list.scrolling::-webkit-scrollbar-thumb{background-color:#c7e0fdaf}.custom-message-list.scrolling::-webkit-scrollbar-thumb:hover{background-color:#c7e0fd}.messages-end-anchor{display:block;flex-shrink:0}.message-conversation-suggestions{margin-top:.875rem}.message-conversation-suggestions .coach-suggestion-chips{justify-content:flex-start}.message-conversation-suggestions--loading{display:flex;align-items:center}.chat-conversation.is-response-loading .message-conversation-suggestions:not(.message-conversation-suggestions--loading){opacity:.5}.chat-conversation.is-response-loading .coach-generated-suggestion-chips{cursor:not-allowed;pointer-events:none}.custom-message{display:flex;gap:8px;animation:fadeIn .3s ease-in-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.custom-message--incoming{justify-content:flex-start;align-items:flex-start}.custom-message--outgoing{justify-content:flex-end;align-items:flex-end;margin:0}.custom-message__content-wrapper{display:flex;flex-direction:column;max-width:80%;word-wrap:break-word}.custom-message--incoming .custom-message__content-wrapper{max-width:80%}.custom-message--incoming.custom-message--with-map .custom-message__content-wrapper{width:min(80%,48rem)}.custom-message--outgoing .custom-message__content-wrapper{align-items:flex-end}.message-content{padding:8px 12px;margin:0;border-radius:12px;line-height:1.5;word-wrap:break-word;overflow-wrap:break-word}.custom-message--incoming .message-content{background-color:#ebf1f8;color:#333;border-radius:0 12px 12px;border:none}.custom-message--outgoing .message-content{background-color:#c7e0fd;color:#333;border-radius:12px 12px 0;border:none;padding:8px 12px}.message-content p{margin:0;padding:0}.message-content[data-loading=true]{opacity:.7}.bot-message-container{display:flex;flex-direction:column;gap:12px}.stream-events-panel{margin:0}.stream-events-summary-content{display:inline-flex;align-items:flex-start;gap:8px}.stream-events-summary{cursor:pointer;font-size:12px;font-weight:600;list-style:none}.stream-events-summary::-webkit-details-marker{display:none}.stream-events-list{display:flex;flex-direction:column;gap:4px;margin-top:6px}.stream-event-item{display:flex;align-items:center;gap:6px;flex-wrap:wrap;font-size:12px;opacity:.8}.stream-event-icon{font-size:12px;flex-shrink:0}.stream-event-text{line-height:1.3}.copilot-response{font-size:14px;line-height:1.6}.message-citations{margin-top:8px;padding:8px;background-color:#0000000d;border-radius:6px;cursor:pointer}.message-citations summary{font-size:12px;font-weight:600;color:#0009;-webkit-user-select:none;user-select:none}.message-citations[open] summary{margin-bottom:8px}.citations-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:6px}.citation-item{padding:6px 8px;background-color:#ffffff80;border-radius:4px;font-size:12px}.citation-content{font-size:12px;margin:0}.message-feedback-buttons{display:contents}.message-avatar{border-radius:50%;object-fit:cover;flex-shrink:0}.message-avatar--sm{width:28px;height:28px}.message-avatar--md{width:36px;height:36px}.message-avatar--lg{width:48px;height:48px}.custom-message--incoming .message-avatar{width:42px;height:42px}.custom-message--outgoing .message-avatar{width:36px;height:36px}.typing-indicator{display:flex;align-items:center;gap:12px;padding:12px 16px;border-radius:12px;width:fit-content}.typing-indicator--inline{padding:4px 8px 4px 0;gap:6px;border-radius:999px}.typing-dots{display:flex;gap:4px;align-items:center}.typing-dots .dot{width:8px;height:8px;border-radius:50%;background-color:#999;animation:typingBounce 1.4s infinite}.typing-dots .dot:nth-child(2){animation-delay:.2s}.typing-dots .dot:nth-child(3){animation-delay:.4s}@keyframes typingBounce{0%,60%,to{transform:translateY(0);opacity:.7}30%{transform:translateY(-10px);opacity:1}}.typing-text{font-size:12px;color:#666;margin:0}.message-input-container{display:flex;gap:8px;padding:12px 16px;background-color:var(--color-surface);border-top:1px solid var(--color-divider);flex-shrink:0;position:relative}.message-input-container.disabled{opacity:.6}.message-input-field{flex:1;padding:12px 54px 12px 14px;border:1.5px solid var(--color-accent-warm-border);border-radius:12px;font-size:15px;font-family:inherit;resize:none;min-height:48px;max-height:200px;line-height:1.4;color:var(--color-text-strong);background-color:var(--color-accent-warm-surface);box-shadow:var(--shadow-accent-warm-input);overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;scrollbar-color:var(--color-accent-warm-border) transparent;scrollbar-width:thin;field-sizing:content;transition:background-color .2s ease,border-color .2s ease,box-shadow .2s ease}.message-input-field::-webkit-scrollbar{width:8px}.message-input-field::-webkit-scrollbar-track{background:transparent}.message-input-field::-webkit-scrollbar-thumb{border:2px solid transparent;border-radius:999px;background-color:var(--color-accent-warm-border);background-clip:content-box}.message-input-field::-webkit-scrollbar-thumb:hover{background-color:var(--color-accent-warm)}.message-input-field::placeholder{color:var(--color-text-placeholder)}.message-input-field:focus{outline:none;border-color:var(--color-accent-warm-focus);background-color:var(--color-surface);box-shadow:var(--shadow-accent-warm-focus)}.message-input-field:disabled{background-color:var(--color-background-disabled);cursor:not-allowed}.message-send-button{position:absolute;right:22px;bottom:18px;display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;background-color:var(--color-accent-warm);color:var(--color-surface);border:none;border-radius:50%;font-size:18px;cursor:pointer;transition:background-color .2s ease,box-shadow .2s ease}.message-send-button:hover:not(:disabled){background-color:var(--color-accent-warm-dark)}.message-send-button:focus-visible{outline:2px solid var(--color-accent-warm-focus);outline-offset:2px}.message-send-button:disabled{background-color:var(--color-accent-warm-disabled);color:var(--color-accent-warm-disabled-text);cursor:not-allowed}.loading-spinner-message{display:flex;justify-content:center;align-items:center;padding:40px;width:100%}.loading-spinner{display:flex;flex-direction:column;align-items:center;gap:16px}.loading-spinner p{color:#666;font-size:14px;margin:0}@media (max-width: 500px){.custom-message-list{height:calc(100vh - 140px);padding:12px;gap:8px}.custom-message__content-wrapper{max-width:95%}.custom-message--incoming .custom-message__content-wrapper{max-width:100%}.custom-message--incoming.custom-message--with-map .custom-message__content-wrapper{width:100%}.message-input-container{padding:8px 12px;gap:6px}.message-input-field{min-height:44px;font-size:16px}.message-avatar{display:none!important}.custom-message{gap:0}.message-send-button{right:17px;bottom:13px;width:34px;height:34px;font-size:18px}.message-citations{max-width:100%}.citation-item{font-size:11px}}.session-dialog-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:2000;padding:1rem}.session-dialog{background-color:#fff;border-radius:8px;box-shadow:0 4px 16px #0003;display:flex;flex-direction:column;max-width:800px;width:100%;max-height:90vh;overflow:hidden}.session-dialog-header{display:flex;align-items:flex-start;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid #dee2e6;background-color:#f8f9fa;flex-shrink:0}.session-dialog-info{flex:1;min-width:0;margin-right:1rem}.session-dialog-title{font-size:1.125rem;font-weight:600;color:#333;margin:0 0 .25rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.session-dialog-date{font-size:.875rem;color:#6c757d}.session-dialog-actions{display:flex;gap:.5rem;flex-shrink:0}.session-delete-btn,.session-close-btn,.session-delete-confirm-btn,.session-delete-cancel-btn{width:36px;height:36px;border:none;background-color:transparent;color:#666;cursor:pointer;border-radius:4px;display:flex;align-items:center;justify-content:center;transition:background-color .2s ease,color .2s ease}.session-delete-btn:hover{background-color:#dc3545;color:#fff}.session-close-btn:hover{background-color:#e9ecef;color:#333}.session-delete-confirm-btn,.session-delete-cancel-btn{width:auto;padding:.5rem 1rem;font-size:.875rem;font-weight:500}.session-delete-confirm-btn{background-color:#dc3545;color:#fff}.session-delete-confirm-btn:hover:not(:disabled){background-color:#bb2d3b}.session-delete-cancel-btn{background-color:#6c757d;color:#fff}.session-delete-cancel-btn:hover:not(:disabled){background-color:#5c636a}.session-delete-confirm-btn:disabled,.session-delete-cancel-btn:disabled{opacity:.6;cursor:not-allowed}.session-dialog-body{flex:1;overflow-y:auto;overflow-x:hidden;background-color:#fff;position:relative}.session-message-list{height:100%!important;min-height:400px;padding:16px 24px;display:flex;flex-direction:column;gap:12px}.session-dialog-body::-webkit-scrollbar{width:8px}.session-dialog-body::-webkit-scrollbar-track{background:#f8f9fa}.session-dialog-body::-webkit-scrollbar-thumb{background-color:#dee2e6;border-radius:4px}.session-dialog-body::-webkit-scrollbar-thumb:hover{background-color:#ced4da}@media (max-width: 768px){.session-dialog-overlay{padding:1rem;align-items:flex-start;justify-content:center;overflow-y:auto}.session-dialog{max-width:100%;max-height:calc(100vh - 2rem);border-radius:8px;margin:1rem 0}.session-dialog-header{padding:.75rem 1rem}.session-dialog-title{font-size:1rem}.session-dialog-actions button{width:32px;height:32px}.session-delete-confirm-btn,.session-delete-cancel-btn{font-size:.8125rem;padding:.4rem .75rem}}.bot-message-container{display:flex;flex-direction:column;gap:.25rem}.message-footer{display:flex;gap:.5rem;margin-top:.5rem}.chat-sidebar{display:flex;flex:0 0 auto;width:372px;height:100%;background-color:var(--color-background-alt);border-right:1px solid var(--color-border-muted);overflow:hidden;transition:width .2s ease}.chat-sidebar.is-collapsed{width:52px}.sidebar-rail{display:flex;flex:0 0 52px;flex-direction:column;align-items:center;gap:.35rem;padding:.5rem .35rem;border-right:1px solid var(--color-border-muted);background-color:var(--color-background-alt)}.sidebar-nav-button,.sidebar-collapse-button{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;padding:0;border:1px solid transparent;border-radius:var(--border-radius);background:transparent;color:var(--color-text-secondary);cursor:pointer;font-size:1rem}.sidebar-nav-button:hover,.sidebar-collapse-button:hover{background-color:var(--color-surface-hover);color:var(--color-text-primary)}.sidebar-new-session-button{background-color:var(--color-primary);color:#fff;font-size:1.375rem}.sidebar-new-session-button:hover{background-color:var(--color-primary-dark);color:#fff}.sidebar-new-session-button:disabled{background-color:var(--color-primary);color:#fff;cursor:wait}.sidebar-new-session-button .themed-spinner{border-color:#ffffff73;border-top-color:#fff}.sidebar-return-to-safety-center-button{margin-top:auto;color:var(--color-primary);font-size:1.375rem}.sidebar-nav-button:focus-visible,.sidebar-collapse-button:focus-visible,.history-item:focus-visible,.history-load-more:focus-visible{outline:2px solid var(--color-focus-border);outline-offset:2px}.sidebar-nav-button.is-active{border-color:var(--color-selection-border);background-color:var(--color-selection-background);color:var(--color-selection-text)}.sidebar-panel{display:flex;flex:0 0 320px;flex-direction:column;min-width:0;background-color:var(--color-background-alt)}.sidebar-panel-header{display:flex;flex:0 0 auto;align-items:center;justify-content:space-between;min-height:52px;padding:.5rem .75rem .5rem 1rem;border-bottom:1px solid var(--color-border-muted);background-color:var(--color-surface)}.sidebar-panel-header h2{margin:0;color:var(--color-text-primary);font-size:1.125rem;font-weight:600}.sidebar-panel-title{display:inline-flex;align-items:center;gap:.5rem;min-width:0}.sidebar-panel-body{display:flex;flex:1;flex-direction:column;min-height:0;overflow:hidden}.sidebar-panel-scroll{flex:1;min-height:0;overflow-x:hidden;overflow-y:auto;padding:.5rem;scrollbar-color:var(--color-border-muted) transparent;scrollbar-width:thin}.history-empty{padding:2rem 1rem;color:var(--color-text-muted);font-size:.875rem;text-align:center}.history-list-loading{pointer-events:none}.history-item,.saved-prompt-row{padding:.75rem;margin-bottom:.5rem;border:1px solid var(--color-border-muted);border-radius:var(--border-radius);background-color:var(--color-surface);cursor:pointer;transition:background-color .2s ease,border-color .2s ease,box-shadow .2s ease}.history-item:hover,.saved-prompt-row:hover:not(:disabled){border-color:var(--color-border-hover);background-color:var(--color-background-alt);box-shadow:var(--shadow)}.history-item-loading,.saved-prompt-row.is-mutating{background-color:var(--color-background-alt);cursor:wait}.history-item-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.25rem}.history-item-date,.history-item-time{color:var(--color-text-muted);font-size:.75rem}.history-item-date{font-weight:500}.history-item-time{color:var(--color-text-tertiary)}.history-item-description{overflow:hidden;color:var(--color-text-primary);font-size:.875rem;line-height:1.4;text-overflow:ellipsis;white-space:nowrap}.history-load-more-wrap{margin-bottom:.5rem}.history-load-more{width:100%;padding:.75rem;border:1px solid var(--color-border-muted);border-radius:var(--border-radius);background-color:var(--color-surface);color:var(--color-link);cursor:pointer;font-size:.875rem;font-weight:500}.history-load-more:hover:not(:disabled){border-color:var(--color-border-hover);background-color:var(--color-background-alt)}.history-load-more:disabled{cursor:not-allowed;opacity:.6}.sidebar-panel-scroll::-webkit-scrollbar{width:6px}.sidebar-panel-scroll::-webkit-scrollbar-track{background:transparent}.sidebar-panel-scroll::-webkit-scrollbar-thumb{border-radius:3px;background-color:var(--color-border-muted)}.sidebar-panel-scroll::-webkit-scrollbar-thumb:hover{background-color:var(--color-border-hover)}.settings-panel{display:flex;flex-direction:column}.settings-panel-state{padding:2rem 1rem;color:var(--color-text-muted);font-size:.875rem;text-align:center}.settings-panel-state[role=alert]{color:var(--color-error-dark)}.settings-controls{display:grid;gap:1.25rem}.settings-control{display:grid;gap:.4rem}.settings-control label{color:var(--color-text-primary);font-size:.875rem;font-weight:600}.settings-dropdown .searchable-dropdown-trigger{width:100%;min-height:40px;padding:.5rem .875rem}.settings-dropdown .searchable-dropdown-trigger:focus-visible,.settings-retry-button:focus-visible{outline:2px solid var(--color-focus-border);outline-offset:2px}.settings-dropdown .searchable-dropdown-trigger:disabled{cursor:wait;opacity:.7}.settings-control-error{display:flex;align-items:center;justify-content:space-between;gap:.5rem;border:1px solid var(--color-error-border);border-radius:var(--border-radius);background-color:var(--color-error-light);color:var(--color-error-dark);font-size:.8125rem;padding:.5rem .625rem}.settings-retry-button{flex:0 0 auto;border:0;border-radius:var(--border-radius);background:transparent;color:inherit;cursor:pointer;font:inherit;font-weight:600;padding:.125rem .25rem;text-decoration:underline}.saved-prompts-panel{display:flex;flex:1;flex-direction:column;min-height:0}.guided-tours-panel{display:flex;flex:1;flex-direction:column;min-height:0;animation:guided-tours-enter .32s ease-out both}.guided-tours-list{display:grid;gap:.5rem}.guided-tour-card{display:grid;gap:.875rem;padding:1rem;border:1px solid var(--color-selection-border);border-radius:8px;background-color:var(--color-selection-background)}.guided-tour-card-copy{display:grid;gap:.375rem}.guided-tour-card h3,.guided-tour-card p{margin:0}.guided-tour-card h3{color:var(--color-text-primary);font-size:1rem}.guided-tour-card p{color:var(--color-text-secondary);font-size:.875rem;line-height:1.4}.guided-tour-status{color:var(--color-selection-text)!important;font-weight:600}.guided-tour-start-button,.guided-tours-retry-button{min-height:40px;border:1px solid var(--color-primary);border-radius:8px;background-color:var(--color-primary);color:#fff;cursor:pointer;font:inherit;font-weight:600}.guided-tour-start-button:hover,.guided-tours-retry-button:hover{background-color:var(--color-primary-dark)}.guided-tour-start-button:focus-visible,.guided-tours-retry-button:focus-visible{outline:2px solid var(--color-focus-border);outline-offset:2px}.guided-tours-state{padding:2rem 1rem;color:var(--color-text-muted);font-size:.875rem;text-align:center}.guided-tours-state[role=alert],.guided-tours-completion-error{color:var(--color-error-dark)}.guided-tours-completion-error{margin:.5rem 0 0;padding:.75rem;border:1px solid var(--color-error-border);border-radius:8px;background-color:var(--color-error-light);font-size:.875rem}@keyframes guided-tours-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion: reduce){.guided-tours-panel{animation:none}}.saved-prompts-toolbar{display:flex;align-items:center;gap:.25rem;padding:.5rem 1rem .75rem}.saved-prompts-toolbar-spacer{flex:1;min-width:0}.saved-prompts-icon-button:focus-visible,.saved-prompt-row:focus-visible,.saved-prompts-retry-button:focus-visible{outline:2px solid var(--color-focus-border);outline-offset:2px}.saved-prompts-icon-button{display:inline-flex;flex:0 0 40px;align-items:center;justify-content:center;width:40px;height:40px;border:1px solid var(--color-border-muted);border-radius:var(--border-radius);background-color:var(--color-surface);color:var(--color-text-secondary);cursor:pointer;font-size:1rem}.saved-prompts-icon-button:hover:not(:disabled){border-color:var(--color-border-hover);background-color:var(--color-surface-hover);color:var(--color-text-primary)}.saved-prompts-send-button{border-color:var(--color-primary);background-color:var(--color-primary);color:var(--color-surface)}.saved-prompts-send-button:hover:not(:disabled){border-color:var(--color-primary-dark);background-color:var(--color-primary-dark);color:var(--color-surface)}.saved-prompts-icon-button:disabled,.saved-prompt-row:disabled{cursor:not-allowed;opacity:.55}.saved-prompts-state{display:flex;flex:1;align-items:center;justify-content:center;gap:.5rem;min-height:4rem;padding:1.5rem 1rem;color:var(--color-text-muted);font-size:.875rem;text-align:center}.saved-prompts-error{flex-direction:column;color:var(--color-error-dark)}.saved-prompts-error p{margin:0}.saved-prompts-retry-button{border:0;border-radius:var(--border-radius);background:transparent;color:var(--color-link);cursor:pointer;font:inherit;font-weight:600;padding:.25rem .5rem;text-decoration:underline}.saved-prompt-row{display:flex;align-items:flex-start;gap:.625rem;width:100%;min-height:4.25rem;padding:.625rem;border-radius:8px;color:var(--color-text-primary);font:inherit;font-size:.875rem;font-weight:400;text-align:left;white-space:normal}.saved-prompt-row-icon{flex:0 0 auto;width:1.125rem;height:1.125rem;margin-top:.125rem;color:var(--color-brand-primary)}.saved-prompt-row-copy{display:grid;min-width:0;gap:.25rem}.saved-prompt-row-title{overflow:hidden;color:var(--color-text-strong);font-size:.875rem;font-weight:600;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.saved-prompt-row-description{display:-webkit-box;overflow:hidden;color:var(--color-text-supporting);font-size:.8125rem;line-height:1.35;-webkit-box-orient:vertical;-webkit-line-clamp:2}.saved-prompt-row.is-selected,.saved-prompt-row.is-selected:hover:not(:disabled){border-color:var(--color-selection-border);background-color:var(--color-selection-background);color:var(--color-selection-text);box-shadow:var(--shadow)}.saved-prompt-action-error{margin:.5rem 1rem;border:1px solid var(--color-error-border);border-radius:var(--border-radius);background-color:var(--color-error-light);color:var(--color-error-dark);font-size:.75rem;padding:.375rem .5rem}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}@media (max-width: 767px){.chat-sidebar{position:absolute;z-index:1200;width:min(100vw,380px);box-shadow:var(--shadow-lg)}.chat-sidebar.is-collapsed{display:none}.sidebar-panel{flex:1 1 auto;width:calc(min(100vw,380px) - 52px)}}.modal-overlay{position:fixed;inset:0;z-index:2100;display:flex;align-items:center;justify-content:center;background:#0000007f;padding:var(--spacing-lg)}.modal-content{display:flex;flex-direction:column;width:100%;max-width:900px;max-height:90vh;overflow:hidden;border-radius:var(--border-radius-lg);background:var(--color-surface);box-shadow:var(--shadow-lg)}.modal-content.form-modal{max-width:400px}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-md) var(--spacing-lg);border-bottom:1px solid var(--color-border-light)}.modal-header h2{margin:0;color:var(--color-text-primary);font-size:20px}.modal-close{display:flex;align-items:center;justify-content:center;width:30px;height:30px;padding:0;border:0;background:none;color:var(--color-text-secondary);cursor:pointer;font-size:24px;transition:var(--transition)}.modal-close svg{font-size:1.3em}.modal-close:hover{color:var(--color-error)}.modal-body{flex:1;overflow-y:auto;padding:var(--spacing-md) var(--spacing-lg) var(--spacing-lg)}.modal-body h3{margin-top:var(--spacing-md);margin-bottom:var(--spacing-md);color:var(--color-text-primary);font-size:16px;font-weight:600}.modal-body h3:first-child{margin-top:0}.modal-body p{margin:0 0 var(--spacing-md);color:var(--color-text-primary)}.modal-actions{display:flex;justify-content:flex-end;gap:var(--spacing-md);padding:var(--spacing-lg);border-top:1px solid var(--color-border)}.modal-footer{display:flex;justify-content:flex-end;gap:var(--spacing-md);padding:var(--spacing-lg);border-top:1px solid var(--color-border-light);background:var(--color-surface)}.dialog-content{max-width:640px}.dialog-close:focus-visible{outline:2px solid var(--color-focus-border);outline-offset:2px}@media (max-width: 767px){.modal-overlay{padding:1rem}.dialog-content{width:calc(100vw - 2rem);max-height:calc(100dvh - 2rem)}}.saved-prompt-editor-dialog{max-width:640px}.saved-prompt-editor-form{display:grid;gap:1rem}.saved-prompt-editor-field{display:grid;gap:.375rem}.saved-prompt-editor-field label{color:var(--color-text-primary);font-size:.875rem;font-weight:600}.saved-prompt-editor-field input,.saved-prompt-editor-field textarea{box-sizing:border-box;width:100%;border:1px solid var(--color-border-muted);border-radius:var(--border-radius);background:var(--color-surface);color:var(--color-text-primary);font:inherit;padding:.625rem}.saved-prompt-editor-field textarea{min-height:180px;resize:vertical}.saved-prompt-editor-field input:focus-visible,.saved-prompt-editor-field textarea:focus-visible,.dialog-button:focus-visible{outline:2px solid var(--color-focus-border);outline-offset:2px}.saved-prompt-editor-field input:disabled,.saved-prompt-editor-field textarea:disabled,.dialog-button:disabled{cursor:not-allowed;opacity:.6}.saved-prompt-character-count{color:var(--color-text-muted);font-size:.75rem;text-align:right}.saved-prompt-editor-error{border:1px solid var(--color-error-border);border-radius:var(--border-radius);background:var(--color-error-light);color:var(--color-error-dark);font-size:.875rem;padding:.625rem}.dialog-button{min-height:36px;border:1px solid transparent;border-radius:var(--border-radius);cursor:pointer;font:inherit;font-weight:600;padding:.5rem .875rem}.dialog-button-primary{background:var(--color-primary);color:var(--color-surface)}.dialog-button-primary:hover:not(:disabled){background:var(--color-primary-dark)}.dialog-button-secondary{border-color:var(--color-border-muted);background:var(--color-surface);color:var(--color-text-primary)}.dialog-button-secondary:hover:not(:disabled){border-color:var(--color-border-hover);background:var(--color-surface-hover)}.dialog-button-danger{background:var(--color-error);color:var(--color-surface)}.dialog-button-danger:hover:not(:disabled){background:var(--color-error-dark)}.driver-popover{all:unset;font-family:var(--driver-popover-font-family,"Helvetica Neue", Inter, ui-sans-serif, "Apple Color Emoji", Helvetica, Arial, sans-serif);box-sizing:border-box;color:#2d2d2d;z-index:1000000000;background-color:#fff;border-radius:5px;min-width:250px;max-width:300px;margin:0;padding:15px;position:fixed;top:0;right:0;box-shadow:0 1px 10px #0006}.driver-popover-title{zoom:1;margin:0;font-size:19px;font-weight:700;line-height:1.5;display:block;position:relative}.driver-popover-close-btn{all:unset;cursor:pointer;color:#d2d2d2;z-index:1;text-align:center;width:32px;height:28px;font-size:18px;font-weight:500;transition:color .2s;position:absolute;top:0;right:0}.driver-popover-close-btn:hover,.driver-popover-close-btn:focus{color:#2d2d2d}.driver-popover-title[style*=block]+.driver-popover-description{margin-top:5px}.driver-popover-description{zoom:1;margin-bottom:0;font-size:14px;font-weight:400;line-height:1.5}.driver-popover-footer{text-align:right;zoom:1;justify-content:space-between;align-items:center;margin-top:15px;display:flex}.driver-popover-progress-text{color:#727272;zoom:1;font-size:13px;font-weight:400}.driver-popover-footer-btn{all:unset;box-sizing:border-box;color:#2d2d2d;cursor:pointer;zoom:1;background-color:#fff;border:1px solid #ccc;border-radius:3px;outline:0;padding:3px 7px;font-size:12px;line-height:1.3;text-decoration:none;display:inline-block}.driver-popover-footer .driver-popover-btn-disabled{opacity:.5;pointer-events:none}.driver-popover-footer-btn:hover,.driver-popover-footer-btn:focus{background-color:#f7f7f7}.driver-popover-navigation-btns{flex-grow:1;justify-content:flex-end;display:flex}.driver-popover-navigation-btns button+button{margin-left:4px}.driver-popover-arrow{content:"";border:5px solid #fff;position:absolute}.driver-popover-arrow-side-over{display:none}.driver-popover-arrow-side-left{border-top-color:#0000;border-bottom-color:#0000;border-right-color:#0000;left:100%}.driver-popover-arrow-side-right{border-top-color:#0000;border-bottom-color:#0000;border-left-color:#0000;right:100%}.driver-popover-arrow-side-top{border-bottom-color:#0000;border-left-color:#0000;border-right-color:#0000;top:100%}.driver-popover-arrow-side-bottom{border-top-color:#0000;border-left-color:#0000;border-right-color:#0000;bottom:100%}.driver-popover-arrow-side-center,.driver-popover-arrow-none{display:none}.driver-active .driver-overlay{pointer-events:none}.driver-active.driver-no-scroll{overflow:hidden}.driver-active *{pointer-events:none}.driver-active .driver-active-element,.driver-active .driver-active-element *,.driver-popover,.driver-popover *{pointer-events:auto}@keyframes animate-fade-in{0%{opacity:0}to{opacity:1}}.driver-fade .driver-overlay{animation:animate-fade-in var(--driver-animation-duration,.4s) ease-in-out}.driver-fade .driver-popover{animation:animate-fade-in var(--driver-animation-duration,.4s)}.driver-active-element-parent-no-scroll{overflow:hidden!important}.driver-no-interaction,.driver-no-interaction *{pointer-events:none!important}.driver-popover.coach-tour-popover{--coach-tour-orange: #f28c28;--coach-tour-orange-hover: #d96f12;--coach-tour-orange-surface: #fff1e3;--coach-tour-text: #000;box-sizing:border-box;width:min(22.5rem,calc(100vw - 2rem));min-width:0;max-width:calc(100vw - 2rem);border:2px solid var(--coach-tour-orange);border-radius:8px;background:var(--coach-tour-orange-surface);color:var(--coach-tour-text);font-family:inherit;box-shadow:0 12px 28px #f28c283d;animation:coach-tour-popover-enter .32s cubic-bezier(.2,.8,.2,1) both}.coach-tour-popover .driver-popover-title{max-width:calc(100% - 3.5rem);color:var(--coach-tour-text);font-size:1.125rem;line-height:1.3;overflow-wrap:anywhere}.coach-tour-popover .driver-popover-description{color:var(--coach-tour-text);font-size:.9375rem;line-height:1.5;overflow-wrap:anywhere}.coach-tour-popover .driver-popover-close-btn{position:absolute;top:0;right:0;display:inline-flex;align-items:center;justify-content:center;width:2.5rem;min-width:2.5rem;height:2.5rem;margin:.5rem;border-radius:var(--border-radius);color:var(--coach-tour-text);font-size:1.5rem}.coach-tour-popover .driver-popover-close-btn:hover,.coach-tour-popover .driver-popover-close-btn:focus-visible{background:#fff;color:var(--coach-tour-text)}.coach-tour-popover .driver-popover-footer{align-items:flex-end;gap:.5rem;justify-content:flex-end}.coach-tour-popover .driver-popover-progress-text{align-self:flex-end;background:transparent;color:var(--coach-tour-text);font-size:.875rem;font-weight:700;line-height:1.2;padding:0 0 .25rem}.coach-tour-popover .driver-popover-footer-btn{display:inline-flex!important;align-items:center;justify-content:center;min-width:4.5rem;min-height:2.25rem;border:1px solid var(--coach-tour-orange);border-radius:var(--border-radius);background:#fff;color:var(--coach-tour-text);font:inherit;font-size:.8125rem;font-weight:700;padding:.375rem .625rem;text-align:center;line-height:1.2}.coach-tour-popover .driver-popover-next-btn,.coach-tour-popover .driver-popover-done-btn{background:var(--coach-tour-orange);color:var(--coach-tour-text)}.coach-tour-popover .driver-popover-prev-btn{background:#fff;color:var(--coach-tour-text)}.coach-tour-popover .driver-popover-footer-btn:hover,.coach-tour-popover .driver-popover-footer-btn:focus-visible{background:var(--coach-tour-orange-surface)}.coach-tour-popover .driver-popover-next-btn:hover,.coach-tour-popover .driver-popover-next-btn:focus-visible,.coach-tour-popover .driver-popover-done-btn:hover,.coach-tour-popover .driver-popover-done-btn:focus-visible{border-color:var(--coach-tour-orange-hover);background:var(--coach-tour-orange-hover);color:var(--coach-tour-text)}.coach-tour-popover .driver-popover-prev-btn:hover,.coach-tour-popover .driver-popover-prev-btn:focus-visible{background:var(--coach-tour-orange-surface);color:var(--coach-tour-text)}.coach-tour-popover .driver-popover-close-btn:focus-visible,.coach-tour-popover .driver-popover-footer-btn:focus-visible{outline:2px solid var(--coach-tour-orange-hover);outline-offset:2px}.coach-tour-popover .driver-popover-arrow-side-left{border-left-color:var(--coach-tour-orange-surface)}.coach-tour-popover .driver-popover-arrow-side-right{border-right-color:var(--coach-tour-orange-surface)}.coach-tour-popover .driver-popover-arrow-side-top{border-top-color:var(--coach-tour-orange-surface)}.coach-tour-popover .driver-popover-arrow-side-bottom{border-bottom-color:var(--coach-tour-orange-surface)}.coach-tour-popover .driver-popover-arrow{border-width:9px}.chat-sidebar.driver-active-element .sidebar-panel{position:relative;z-index:10002;clip-path:inset(-10px -10px -10px 0);box-shadow:0 0 10px #1967abd9}@keyframes coach-tour-popover-enter{0%{opacity:0;transform:translateY(10px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@media (prefers-reduced-motion: reduce){.driver-popover.coach-tour-popover{animation:none}}
