:root{--bg:#0e0c1e;--surface:#1a1730;--surface-raised:#231f3a;--primary:#eeedfe;--accent:#afa9ec;--accent-bright:#7b74e0;--text-primary:#eeedfe;--text-secondary:#afa9ec;--border:#afa9ec26;--risk-low:#4ade80;--risk-elevated:#fbbf24;--risk-high:#f87171;color-scheme:light dark}[data-theme=light]{--bg:#f8f7ff;--surface:#fff;--surface-raised:#f0eef9;--primary:#1a1730;--accent:#6b63cc;--accent-bright:#4b44a8;--text-primary:#1a1730;--text-secondary:#6b63cc;--border:#6b63cc26}*{box-sizing:border-box;margin:0;padding:0}body{background:#0e0c1e;background:var(--bg);color:#eeedfe;color:var(--text-primary);color-scheme:light;font-family:system-ui,-apple-system,sans-serif;height:100vh;overflow:hidden}#root{height:100vh}#root,.sidebar{display:flex;flex-direction:column}.sidebar{background:var(--surface);border-left:1px solid var(--border);gap:20px;overflow-y:auto;padding:20px;width:320px}.sidebar-empty{align-items:center;color:var(--text-secondary);display:flex;flex:1 1;flex-direction:column;font-size:13px;gap:12px;justify-content:center}.sidebar-header{text-align:center}.player-name{color:var(--text-primary);font-size:18px;font-weight:600;margin-bottom:4px}.tour-badge{background:var(--accent-bright);border-radius:4px;color:#fff;display:inline-block;font-size:11px;font-weight:600;letter-spacing:.1em;padding:2px 10px}.signals{display:flex;flex-direction:column;gap:12px}.signal-card{background:var(--surface-raised);border:1px solid var(--border);border-radius:8px;padding:12px}.signal-header{align-items:center;display:flex;gap:8px;margin-bottom:6px}.signal-dot{border-radius:50%;height:8px;width:8px}.signal-label{color:var(--text-secondary);font-size:11px;letter-spacing:.08em;text-transform:uppercase}.signal-value{color:var(--text-primary);font-size:28px;font-weight:700;line-height:1;margin-bottom:4px}.signal-tier{color:var(--text-secondary);font-size:12px}.sidebar-badges{display:flex;flex-wrap:wrap;gap:8px}.badge{border-radius:4px;font-size:10px;font-weight:600;letter-spacing:.05em;padding:3px 8px}.sidebar-radar{margin-top:4px}.sidebar-section-label{color:var(--text-secondary);font-size:9px;letter-spacing:.15em;margin-bottom:4px;opacity:.7;text-transform:uppercase}.badge-context{background:#4ade8026;border:1px solid #4ade804d;color:var(--risk-low)}.badge-market{background:#7b74e026;border:1px solid #7b74e04d;color:var(--accent-bright)}.badge-no-market{background:#f871711a;border:1px solid #f8717133;color:var(--risk-high)}.sidebar-close-mobile{align-self:flex-end;background:none;border:none;color:var(--text-secondary);cursor:pointer;display:none;font-size:13px;margin-bottom:12px;padding:4px 8px}@media (max-width:768px){.sidebar-close-mobile{display:block}}.app{display:flex;flex-direction:column;height:100vh}.header{background:var(--surface);border-bottom:1px solid var(--border);height:64px;justify-content:space-between;padding:0 24px;position:sticky;top:0;z-index:100}.header,.header-left{align-items:center;display:flex}.header-left{flex-wrap:nowrap;gap:12px}.logo-wordmark{display:flex;flex-direction:column;gap:2px;justify-content:center;line-height:1}.logo-text{color:var(--text-primary);font-size:16px;font-weight:700;letter-spacing:.3em}.logo-subtitle,.logo-text{font-family:Trebuchet MS,sans-serif}.logo-subtitle{color:var(--accent);font-size:11px;font-weight:300;letter-spacing:.15em;opacity:.75}.header-right{gap:16px}.header-right,.theme-toggle{align-items:center;display:flex}.theme-toggle{background:none;border:none;color:var(--accent);cursor:pointer;opacity:.7;padding:4px}.theme-toggle:hover{opacity:1}.header-subtitle{color:var(--accent);font-size:12px;letter-spacing:.1em}.chat-panel,.main{display:flex;flex:1 1;overflow:hidden}.chat-panel{border-right:1px solid var(--border);flex-direction:column;min-width:0}.messages{display:flex;flex:1 1;flex-direction:column;gap:16px;overflow-x:hidden;overflow-y:auto;padding:24px 24px 16px;scroll-behavior:smooth}.welcome-screen{align-items:flex-start;display:flex;flex:1 1;justify-content:center;padding:24px 20px;width:100%}.welcome-messages{display:flex;flex-direction:column;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Noto Sans,Noto Sans Arabic,Noto Sans SC,Noto Sans JP,Noto Sans Devanagari,Noto Sans Bengali,Noto Sans Thai,Noto Sans Hebrew,Noto Sans Sinhala,Noto Sans Ethiopic,system-ui,sans-serif;gap:4px;list-style:none;margin:0;max-width:860px;padding:0;width:100%}.welcome-messages li{grid-gap:10px;align-items:baseline;color:var(--text-secondary);display:grid;font-size:13px;gap:10px;grid-template-columns:68px 1fr;line-height:1.45;padding:3px 0;transition:opacity .2s ease}.welcome-messages li:hover,.welcome-messages li:hover .msg-lang{opacity:1}.welcome-messages .msg-lang{align-items:center;display:inline-flex;flex-shrink:0;gap:5px;opacity:.72;transition:opacity .2s ease}.welcome-messages .msg-flag{font-size:15px;line-height:1}.welcome-messages .msg-code{color:var(--accent);font-size:10px;font-weight:500;letter-spacing:.08em;min-width:38px}.welcome-messages .msg-text{color:var(--text-primary);opacity:.88}.welcome-messages li.is-rtl .msg-text{text-align:right}.welcome-messages li[lang=zh-TW] .msg-text,.welcome-messages li[lang=zh] .msg-text{font-family:-apple-system,PingFang SC,Hiragino Sans GB,Noto Sans SC,Microsoft YaHei,sans-serif;letter-spacing:.02em}.welcome-messages li[lang=ja] .msg-text{font-family:-apple-system,Hiragino Sans,Yu Gothic,Noto Sans JP,sans-serif}.welcome-messages li[lang=ko] .msg-text{font-family:-apple-system,Apple SD Gothic Neo,Malgun Gothic,Noto Sans KR,sans-serif}.welcome-messages li[lang=ar] .msg-text,.welcome-messages li[lang=fa] .msg-text,.welcome-messages li[lang=ur] .msg-text{font-family:-apple-system,SF Arabic,Geeza Pro,Noto Sans Arabic,Noto Nastaliq Urdu,sans-serif;font-size:14px}.welcome-messages li[lang=th] .msg-text{font-family:-apple-system,Thonburi,Noto Sans Thai,sans-serif}.welcome-messages li[lang=he] .msg-text{font-family:-apple-system,Arial Hebrew,Noto Sans Hebrew,sans-serif;font-size:14px}.welcome-messages li[lang=bn] .msg-text,.welcome-messages li[lang=hi] .msg-text{font-family:-apple-system,Kohinoor Devanagari,Noto Sans Devanagari,Noto Sans Bengali,sans-serif}.welcome-messages li[lang=si] .msg-text{font-family:-apple-system,Noto Sans Sinhala,Iskoola Pota,sans-serif}.welcome-messages li[lang=am] .msg-text{font-family:-apple-system,Kefa,Noto Sans Ethiopic,sans-serif}.welcome-messages li[lang=bg] .msg-text,.welcome-messages li[lang=mn] .msg-text,.welcome-messages li[lang=ru] .msg-text,.welcome-messages li[lang=sr] .msg-text,.welcome-messages li[lang=uk] .msg-text{font-feature-settings:none;font-variant-ligatures:none}@media (max-width:768px){.welcome-screen{padding:16px 10px}.welcome-messages{gap:5px}.welcome-messages li{font-size:12px;grid-template-columns:56px 1fr;padding:2px 0}.welcome-messages .msg-flag{font-size:14px}.welcome-messages .msg-code{font-size:9px;min-width:32px}.welcome-messages li[lang=ar] .msg-text,.welcome-messages li[lang=fa] .msg-text,.welcome-messages li[lang=he] .msg-text,.welcome-messages li[lang=ur] .msg-text{font-size:13px}}.message{display:flex}.message-user{justify-content:flex-end}.message-assistant{justify-content:flex-start}.message-bubble{border-radius:12px;font-size:14px;line-height:1.6;max-width:75%;padding:12px 16px}.message-user .message-bubble{background:var(--accent-bright);border-bottom-right-radius:4px;color:#fff}.message-assistant .message-bubble{background:var(--surface);border-bottom-left-radius:4px;border-left:3px solid var(--accent);max-width:100%}.message-text{overflow-wrap:break-word;word-break:break-word}.message-error .message-bubble{border-left-color:var(--risk-elevated);opacity:.8}.feedback-widget{color:var(--text-secondary);font-size:11px;margin-top:8px}.feedback-stars{align-items:center;cursor:pointer;display:flex;gap:2px}.feedback-star{color:var(--border);font-size:14px;transition:color .1s}.feedback-star.active{color:var(--accent-bright)}.feedback-label{color:var(--text-secondary);font-size:11px;margin-left:6px}.feedback-expanded{display:flex;flex-direction:column;gap:6px;margin-top:6px;max-width:400px}.feedback-chart-q{align-items:center;color:var(--text-secondary);display:flex;font-size:11px;gap:8px}.feedback-chart-q label{align-items:center;cursor:pointer;display:flex;gap:3px}.feedback-notes{background:var(--surface-raised);border:1px solid var(--border);border-radius:6px;color:var(--text-primary);font-family:inherit;font-size:11px;padding:6px 8px;resize:none;width:100%}.feedback-submit{align-self:flex-start;background:var(--accent-bright);border:none;border-radius:4px;color:var(--bg);cursor:pointer;font-size:11px;padding:3px 12px}.feedback-submit:disabled{cursor:not-allowed;opacity:.4}.feedback-done{color:var(--text-secondary);font-size:11px;margin-top:8px}.export-pdf-btn{background:#0000;border:1px solid var(--accent);border-radius:4px;color:var(--accent);cursor:pointer;font-size:11px;padding:3px 10px;transition:all .15s;vertical-align:middle;white-space:nowrap}.export-pdf-btn:hover{background:var(--surface-raised)}.export-pdf-btn:disabled{cursor:not-allowed;opacity:.4}.message-text h2,.message-text h3{color:var(--primary);font-weight:600;margin:16px 0 8px}.message-text h2{font-size:16px}.message-text h3{font-size:14px}.message-text strong{color:var(--primary)}.message-text p{line-height:1.6;margin:8px 0}.message-text hr{border:none;border-top:1px solid var(--border);margin:12px 0}.message-text ol,.message-text ul{margin:8px 0;padding-left:20px}.message-text li{margin:4px 0}.message-text table{-webkit-overflow-scrolling:touch;border-collapse:collapse;display:block;font-size:13px;margin:12px 0;max-width:100%;overflow-x:auto;white-space:nowrap}.message-text th{background:var(--surface-raised);color:var(--accent);font-weight:600}.message-text td,.message-text th{border:1px solid var(--border);padding:6px 10px;text-align:left;vertical-align:top;white-space:nowrap}.message-text code,.message-text tr:nth-child(2n){background:var(--surface-raised)}.message-text code{border-radius:3px;font-size:13px;padding:2px 6px}.message-text pre{background:var(--surface-raised);border-radius:6px;margin:8px 0;overflow-x:auto;padding:12px}.message-text pre code{background:none;padding:0}.typing{align-items:center;color:var(--text-secondary);display:flex;font-style:italic;gap:8px}.spin{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.input-area{align-items:center;background:var(--surface);border-top:1px solid var(--border);display:flex;gap:12px;height:88px;padding:0 16px}.input-area input{background:var(--surface-raised);border:1px solid var(--accent);border-radius:10px;color:var(--text-primary);flex:1 1;font-size:15px;height:56px;outline:none;padding:0 18px;transition:border-color .15s,box-shadow .15s}.input-area input::placeholder{color:var(--text-secondary);opacity:.6}.input-area input:focus{border-color:var(--accent-bright);box-shadow:0 0 0 3px #7b74e038}.send-btn{align-items:center;background:var(--accent-bright);border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;height:40px;justify-content:center;width:40px}.send-btn:disabled{cursor:not-allowed;opacity:.4}.chart-container{background:var(--surface-raised);border:1px solid var(--border);border-radius:8px;margin-top:12px;padding:16px;width:100%}.chart-title{color:var(--text-secondary);font-size:11px;letter-spacing:.1em;margin-bottom:12px;text-transform:uppercase}.mic-btn{align-items:center;background:none;border:none;border-radius:50%;color:var(--accent);cursor:pointer;display:flex;flex-shrink:0;padding:8px;transition:all .2s}.mic-btn:hover{background:var(--surface-raised)}.mic-btn.active{animation:pulse 1s infinite;background:#f871711a;color:#f87171}@keyframes pulse{0%{opacity:1}50%{opacity:.5}to{opacity:1}}.language-toggle{align-items:center;display:flex;gap:4px}.lang-btn{background:#0000;border:1px solid var(--accent);border-radius:6px;color:var(--accent);cursor:pointer;font-size:12px;padding:4px 10px;transition:all .15s}.lang-btn.active{background:var(--accent-bright);border-color:var(--accent-bright);color:var(--bg);font-weight:600}.lang-btn:hover:not(.active),.sidebar-toggle-mobile{background:var(--surface-raised)}.sidebar-toggle-mobile{border:1px solid var(--border);border-radius:14px;color:var(--accent);cursor:pointer;display:none;font-size:12px;padding:4px 10px;white-space:nowrap}@media (max-width:768px){.app{display:flex;flex-direction:column;height:100vh;height:calc(var(--vh, 1vh)*100);left:0;overflow:hidden;position:fixed;top:0;width:100%}.header{flex-shrink:0;height:52px;min-height:52px;padding:0 16px;position:relative;z-index:10}.chat-panel,.main{display:flex;flex:1 1;flex-direction:column;min-height:0;overflow:hidden}.chat-panel{order:1}.messages{-webkit-overflow-scrolling:touch;flex:1 1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:12px 16px 80px}.input-area{background:var(--surface);border-top:1px solid var(--border);bottom:0;height:80px;left:0;padding:0 12px env(safe-area-inset-bottom,0);position:fixed;right:0;z-index:100}.input-area input{font-size:16px;height:52px}.sidebar{display:none;height:100vh;height:calc(var(--vh, 1vh)*100);left:0;overflow-y:auto;position:fixed;top:0;width:100%;z-index:200}.sidebar.mobile-open{display:flex}.message-user .message-bubble{max-width:85%}.message-assistant .message-bubble{max-width:95%}.chart-container{margin-left:-4px;max-width:100%;overflow-x:hidden;padding:8px 4px 8px 0}.header-subtitle{display:none}.sidebar-toggle-mobile{display:flex!important}}.login-page{align-items:center;background:var(--bg);display:flex;height:100vh;justify-content:center}.login-card{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:40px 32px;text-align:center;width:340px}.login-card h1{color:var(--text-primary);font-family:Trebuchet MS,sans-serif;font-size:22px;letter-spacing:.3em;margin:0}.login-subtitle{color:var(--accent);font-size:12px;letter-spacing:.15em;margin:4px 0 24px;opacity:.7}.login-card form{display:flex;flex-direction:column;gap:12px}.login-card input{background:var(--surface-raised);border:1px solid var(--border);border-radius:8px;color:var(--text-primary);font-size:14px;height:40px;outline:none;padding:0 14px}.login-card input:focus{border-color:var(--accent-bright)}.login-card button{background:var(--accent-bright);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;height:40px;letter-spacing:.05em}.login-card button:disabled{cursor:not-allowed;opacity:.5}.login-error{color:#f87171;font-size:13px;padding:4px 0}.admin-page{display:flex;flex-direction:column;height:100vh}.admin-content{flex:1 1;overflow-y:auto;padding:24px}.admin-toolbar{align-items:center;display:flex;justify-content:space-between;margin-bottom:16px}.admin-toolbar h2{color:var(--text-primary);font-size:18px;margin:0}.admin-toolbar button{background:none;border:1px solid var(--accent);border-radius:6px;color:var(--accent);cursor:pointer;font-size:13px;padding:8px 16px}.admin-form{align-items:center;background:var(--surface-raised);border-radius:8px;display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px;padding:16px}.admin-form input,.admin-form select{background:var(--surface);border:1px solid var(--border);border-radius:6px;color:var(--text-primary);font-size:13px;height:36px;padding:0 12px}.admin-form button{background:var(--accent-bright);border:none;border-radius:6px;color:#fff;cursor:pointer;height:36px;padding:0 16px}.admin-table{border-collapse:collapse;font-size:13px;width:100%}.admin-table th{border-bottom:2px solid var(--border);color:var(--accent);font-weight:600;padding:10px 12px;text-align:left}.admin-table td{border-bottom:1px solid var(--border);color:var(--text-primary);padding:8px 12px}.admin-table tr.inactive td{opacity:.4}.role-badge{border-radius:10px;font-size:11px;font-weight:600;letter-spacing:.05em;padding:2px 8px;text-transform:uppercase}.role-admin{background:#a855f726;color:#a855f7}.role-operator{background:#3b82f626;color:#3b82f6}.role-viewer{background:#6b728026;color:#9ca3af}.btn-small{background:none;border:1px solid var(--border);border-radius:4px;color:var(--text-secondary);cursor:pointer;font-size:12px;padding:4px 10px}.breaks-filters{align-items:center;display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.breaks-filters input,.breaks-filters select{background:var(--surface-raised);border:1px solid var(--border);border-radius:6px;color:var(--text-primary);font-size:13px;height:36px;outline:none;padding:0 12px}.breaks-filters input{min-width:180px}.breaks-list{display:flex;flex-direction:column;gap:12px}.break-card{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:16px}.break-card.verified{border-left:3px solid #4ade80}.break-card.unverified{border-left:3px solid #fbbf24}.break-card-header{align-items:center;display:flex;flex-wrap:wrap;gap:8px;margin-bottom:8px}.break-player{color:var(--text-primary);font-size:15px;font-weight:600}.break-card-body{color:var(--text-secondary);font-size:13px;line-height:1.6}.break-meta{display:flex;flex-wrap:wrap;gap:16px;margin-bottom:8px}.break-meta strong{color:var(--text-primary)}.break-article{background:var(--surface-raised);border:1px solid var(--border);border-radius:6px;margin:8px 0;padding:10px 12px}.break-article-source{color:var(--accent);font-size:11px;letter-spacing:.05em;margin-bottom:4px;text-transform:uppercase}.break-article-title{color:var(--text-primary);font-size:13px;font-weight:500}.break-article-excerpt{font-style:italic;margin-top:4px}.break-article-excerpt,.break-reasoning{color:var(--text-secondary);font-size:12px}.break-reasoning{margin-top:6px}.break-card-actions{align-items:center;display:flex;gap:8px;margin-top:10px}.break-notes{background:var(--surface-raised);border:1px solid var(--border);border-radius:6px;color:var(--text-primary);flex:1 1;font-size:12px;height:32px;outline:none;padding:0 10px}.break-verify-btn{background:var(--accent-bright);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:12px;font-weight:600;height:32px;padding:0 16px;white-space:nowrap}.break-verify-btn.is-verified{background:var(--surface-raised);border:1px solid #4ade8044;color:#4ade80}.break-verify-btn:disabled{opacity:.5}.breaks-pagination{align-items:center;display:flex;gap:16px;justify-content:center;margin-top:16px;padding:12px 0}.breaks-pagination button{background:var(--surface-raised);border:1px solid var(--border);border-radius:6px;color:var(--text-primary);cursor:pointer;font-size:12px;padding:6px 14px}.breaks-pagination button:disabled{cursor:not-allowed;opacity:.3}.breaks-pagination span{color:var(--text-secondary);font-size:12px}.val-reliability{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:20px 24px}.val-reliability-main{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between}.val-reliability-scores{border-top:1px solid var(--border);display:flex;gap:32px;margin-top:12px;padding-top:12px}.val-label-badge{border-radius:12px;font-size:13px;font-weight:700;letter-spacing:.05em;padding:4px 12px;text-transform:uppercase}.val-panels{display:flex;gap:16px;min-height:400px}.val-snapshots{flex-shrink:0;width:320px}.val-predictions{flex:1 1;min-width:0}.val-snap-list{display:flex;flex-direction:column;gap:8px;max-height:500px;overflow-y:auto}.val-snap-card{background:var(--surface);border:1px solid var(--border);border-radius:8px;cursor:pointer;padding:12px;transition:border-color .15s}.val-snap-card:hover{border-color:var(--accent)}.val-snap-card.selected{border-color:var(--accent-bright);border-width:2px}.val-snap-header{align-items:center;display:flex;justify-content:space-between}@media (max-width:900px){.val-panels{flex-direction:column}.val-snapshots{width:100%}.val-reliability-scores{gap:16px}}.ermene-loader{align-items:center;display:flex;justify-content:center;padding:12px 8px}.ermene-loader-svg{display:block;height:100px;width:84px}.ermene-loader-ring-active{animation:ermenePulse .9s ease-in-out infinite}.ermene-loader-core{animation:ermeneCoreGlow 1.8s ease-in-out infinite;transform-origin:100px 120px}@keyframes ermenePulse{0%,to{opacity:1}50%{opacity:.55}}@keyframes ermeneCoreGlow{0%,to{opacity:.8}50%{opacity:1}}.ermene-loader-streaming-cursor{animation:ermeneCursorBlink .9s steps(2,start) infinite;color:#afa9ec;color:var(--accent,#afa9ec);display:inline-block;font-size:.9em;margin-left:2px;opacity:.7}@keyframes ermeneCursorBlink{0%,49%{opacity:.8}50%,to{opacity:0}}@media (prefers-reduced-motion:reduce){.ermene-loader-core,.ermene-loader-ring-active,.ermene-loader-streaming-cursor{animation:none!important}}
/*# sourceMappingURL=main.0243b959.css.map*/