@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-cyrillic-ext-400-normal-BQZuk6qB.woff2)format("woff2"),url(/assets/inter-cyrillic-ext-400-normal-DQukG94-.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-cyrillic-400-normal-obahsSVq.woff2)format("woff2"),url(/assets/inter-cyrillic-400-normal-HOLc17fK.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-greek-ext-400-normal-DGGRlc-M.woff2)format("woff2"),url(/assets/inter-greek-ext-400-normal-KugGGMne.woff)format("woff");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-greek-400-normal-B4URO6DV.woff2)format("woff2"),url(/assets/inter-greek-400-normal-q2sYcFCs.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-vietnamese-400-normal-DMkecbls.woff2)format("woff2"),url(/assets/inter-vietnamese-400-normal-Bbgyi5SW.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-latin-ext-400-normal-C1nco2VV.woff2)format("woff2"),url(/assets/inter-latin-ext-400-normal-77YHD8bZ.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-latin-400-normal-C38fXH4l.woff2)format("woff2"),url(/assets/inter-latin-400-normal-CyCys3Eg.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-cyrillic-ext-500-normal-B0yAr1jD.woff2)format("woff2"),url(/assets/inter-cyrillic-ext-500-normal-BmqWE9Dz.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-cyrillic-500-normal-BasfLYem.woff2)format("woff2"),url(/assets/inter-cyrillic-500-normal-CxZf_p3X.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-greek-ext-500-normal-C4iEst2y.woff2)format("woff2"),url(/assets/inter-greek-ext-500-normal-2j5mBUwD.woff)format("woff");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-greek-500-normal-BIZE56-Y.woff2)format("woff2"),url(/assets/inter-greek-500-normal-Xzm54t5V.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-vietnamese-500-normal-DOriooB6.woff2)format("woff2"),url(/assets/inter-vietnamese-500-normal-mJboJaSs.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-latin-ext-500-normal-CV4jyFjo.woff2)format("woff2"),url(/assets/inter-latin-ext-500-normal-BxGbmqWO.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-latin-500-normal-Cerq10X2.woff2)format("woff2"),url(/assets/inter-latin-500-normal-BL9OpVg8.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-cyrillic-ext-600-normal-Dfes3d0z.woff2)format("woff2"),url(/assets/inter-cyrillic-ext-600-normal-Bcila6Z-.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-cyrillic-600-normal-CWCymEST.woff2)format("woff2"),url(/assets/inter-cyrillic-600-normal-4D_pXhcN.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-greek-ext-600-normal-DRtmH8MT.woff2)format("woff2"),url(/assets/inter-greek-ext-600-normal-B8X0CLgF.woff)format("woff");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-greek-600-normal-plRanbMR.woff2)format("woff2"),url(/assets/inter-greek-600-normal-BZpKdvQh.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-vietnamese-600-normal-Cc8MFFhd.woff2)format("woff2"),url(/assets/inter-vietnamese-600-normal-BuLX-rYi.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-latin-ext-600-normal-D2bJ5OIk.woff2)format("woff2"),url(/assets/inter-latin-ext-600-normal-CIVaiw4L.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-latin-600-normal-LgqL8muc.woff2)format("woff2"),url(/assets/inter-latin-600-normal-CiBQ2DWP.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-cyrillic-ext-700-normal-BjwYoWNd.woff2)format("woff2"),url(/assets/inter-cyrillic-ext-700-normal-LO58E6JB.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-cyrillic-700-normal-CjBOestx.woff2)format("woff2"),url(/assets/inter-cyrillic-700-normal-DrXBdSj3.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-greek-ext-700-normal-qfdV9bQt.woff2)format("woff2"),url(/assets/inter-greek-ext-700-normal-BoQ6DsYi.woff)format("woff");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-greek-700-normal-C3JjAnD8.woff2)format("woff2"),url(/assets/inter-greek-700-normal-BUv2fZ6O.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-vietnamese-700-normal-DlLaEgI2.woff2)format("woff2"),url(/assets/inter-vietnamese-700-normal-BZaoP0fm.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-latin-ext-700-normal-Ca8adRJv.woff2)format("woff2"),url(/assets/inter-latin-ext-700-normal-TidjK2hL.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-latin-700-normal-Yt3aPRUw.woff2)format("woff2"),url(/assets/inter-latin-700-normal-BLAVimhd.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}.App{width:100%;height:100%}.context-bars{z-index:100;position:sticky;top:0;box-shadow:0 2px 8px #00000026}.context-bar{color:#fff;justify-content:space-between;align-items:center;padding:6px 20px;font-size:13px;animation:.3s ease-out slideDown;display:flex}@keyframes slideDown{0%{opacity:0;transform:translateY(-100%)}to{opacity:1;transform:translateY(0)}}.discovery-bar{background:var(--gradient-discovery);border-bottom:1px solid #ffffff1a;padding:8px 20px}.analysis-bar{background:var(--gradient-analysis);border-bottom:1px solid #ffffff1a;padding:5px 20px;font-weight:600}.summary-bar{background:var(--gradient-summary);padding:5px 20px}.context-bar-content{flex:1;align-items:center;gap:24px;display:flex}.context-bar-label{font-weight:500}.context-item{align-items:center;gap:6px;font-size:13px;display:flex}.context-item strong{opacity:.9;font-weight:600}.context-bar-close{color:#fff;cursor:pointer;background:#fff3;border:1px solid #ffffff4d;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;transition:all .2s;display:flex}.context-bar-close:hover{background:#ffffff4d;border-color:#ffffff80;transform:scale(1.1)}.context-bar-close:active{transform:scale(.95)}@media (width<=768px){.context-bar{padding:8px 16px}.context-bar-content{flex-direction:column;align-items:flex-start;gap:8px}.context-item{text-overflow:ellipsis;max-width:100%;font-size:12px;overflow:hidden}.context-bar-close{width:32px;height:32px}}.login-wrapper{background:var(--gradient-login);justify-content:center;align-items:center;min-height:100vh;font-family:Segoe UI,Roboto,sans-serif;display:flex}.login-card{background:var(--surface);text-align:center;border:1px solid #fffc;border-radius:12px;width:100%;max-width:420px;padding:48px;transition:transform .3s;box-shadow:0 10px 25px #0000000d,0 4px 10px #00000008}.login-card:hover{transform:translateY(-2px);box-shadow:0 15px 30px #00000014}.login-header h2{color:var(--text-primary);letter-spacing:-.5px;margin:0 0 8px;font-size:24px;font-weight:600}.login-header p{color:var(--text-secondary);margin:0 0 32px;font-size:14px;line-height:1.5}.microsoft-button{color:#fff;cursor:pointer;background-color:#2f2f2f;border:1px solid #0000;border-radius:6px;justify-content:center;align-items:center;gap:12px;width:100%;height:48px;font-size:15px;font-weight:600;transition:all .2s cubic-bezier(.2,0,.2,1);display:flex;box-shadow:0 2px 4px #0000001a}.microsoft-button:hover:not(:disabled){background-color:var(--text-primary);transform:translateY(-1px);box-shadow:0 4px 8px #00000026}.microsoft-button:active:not(:disabled){background-color:#000;transform:translateY(0)}.microsoft-button:disabled{cursor:not-allowed;box-shadow:none;background-color:#ccc}.ms-logo{width:21px;height:21px}.login-footer{color:var(--text-secondary);border-top:1px solid var(--border-color);margin-top:32px;padding-top:24px;font-size:12px}.copyright{margin-bottom:4px;display:block}.version{color:var(--text-secondary)}.form-group label{text-align:left;color:var(--text-primary);font-size:13px;font-weight:600}.form-group input{border:1px solid var(--border-color);background:var(--bg-secondary);height:44px;transition:all .2s}.form-group input:focus{border-color:var(--color-primary);background:var(--surface);box-shadow:0 0 0 3px #3f51b51a}.login-btn-primary{background-color:var(--color-primary);color:#fff;cursor:pointer;border:none;border-radius:6px;height:44px;font-weight:600;transition:background .2s}.login-btn-primary:hover:not(:disabled){background-color:#303f9f}.login-btn-primary:disabled{opacity:.6;cursor:not-allowed}.login-divider{color:var(--text-secondary);align-items:center;margin:20px 0;font-size:13px;display:flex}.login-divider:before,.login-divider:after{content:"";background:var(--border-color);flex:1;height:1px}.login-divider span{padding:0 12px}.passkey-button{background:var(--surface);border:1px solid var(--border-color);width:100%;height:44px;color:var(--text-primary);cursor:pointer;border-radius:6px;justify-content:center;align-items:center;gap:10px;font-size:14px;font-weight:600;transition:all .2s;display:flex}.passkey-button:hover:not(:disabled){background:var(--bg-secondary);border-color:var(--color-primary);color:var(--color-primary)}.passkey-button:disabled{opacity:.6;cursor:not-allowed}.forgot-password-link{width:100%;color:var(--color-primary);cursor:pointer;background:0 0;border:none;margin-top:16px;font-size:13px;text-decoration:none;display:block}.forgot-password-link:hover{text-decoration:underline}.back-link{width:100%;color:var(--color-primary);cursor:pointer;background:0 0;border:none;margin-top:16px;font-size:13px;display:block}.back-link:hover{text-decoration:underline}.success-message{background:var(--success-bg);color:var(--success-green);border:1px solid var(--success-border);border-radius:6px;margin-bottom:16px;padding:12px 16px;font-size:14px}.error-message{background:var(--error-banner-bg);color:var(--error-red);border:1px solid var(--error-border);border-radius:6px;margin-bottom:16px;padding:12px 16px;font-size:14px}.mfa-selection{flex-direction:column;gap:12px;margin-top:8px;display:flex}.mfa-option-button{background:var(--surface);border:2px solid var(--border-color);cursor:pointer;border-radius:8px;flex-direction:column;align-items:center;gap:4px;padding:20px;transition:all .2s;display:flex}.mfa-option-button:hover:not(:disabled){border-color:var(--color-primary);background:var(--bg-secondary)}.mfa-option-button:disabled{opacity:.6;cursor:not-allowed}.mfa-option-icon{font-size:28px;line-height:1}.mfa-option-label{color:var(--text-primary);font-size:15px;font-weight:600}.mfa-option-desc{color:var(--text-secondary);font-size:12px}.login-card .qr-container{justify-content:center;margin:16px 0;display:flex}.login-card .qr-code{border:1px solid var(--border-color);border-radius:8px}.login-card .secret-key{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:6px;margin:12px 0 20px;padding:12px}.login-card .secret-label{color:var(--text-secondary);margin-bottom:4px;font-size:11px;display:block}.login-card .secret-value{color:var(--text-primary);word-break:break-all;-webkit-user-select:all;user-select:all;font-size:13px}.password-requirements{color:var(--text-secondary);text-align:left;margin-top:15px;font-size:12px}.password-requirements ul{margin-top:5px;padding-left:20px}@media (width<=768px){.login-card{border-radius:8px;max-width:100%;margin:0 12px;padding:32px 20px}.login-header h2{font-size:20px}.form-group input{font-size:16px}}@media (width<=480px){.login-card{margin:0 8px;padding:24px 16px}}.settings-overlay{z-index:1000;background:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.settings-modal{background:var(--surface);border-radius:12px;flex-direction:column;width:100%;max-width:520px;max-height:80vh;display:flex;overflow:hidden;box-shadow:0 20px 60px #00000026}.settings-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.settings-header h2{color:var(--text-primary);margin:0;font-size:20px;font-weight:600}.settings-close{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;padding:0;font-size:24px;line-height:1}.settings-close:hover{color:var(--text-primary)}.settings-tabs{border-bottom:1px solid var(--border-color);padding:0 24px;display:flex}.settings-tab{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;padding:12px 16px;font-size:14px;font-weight:500;transition:all .2s}.settings-tab:hover{color:var(--color-primary)}.settings-tab.active{color:var(--color-primary);border-bottom-color:var(--color-primary)}.settings-body{flex:1;padding:24px;overflow-y:auto}.settings-section h3{color:var(--text-primary);margin:0 0 16px;font-size:16px;font-weight:600}.settings-field{margin-bottom:16px}.settings-field label{color:var(--text-primary);margin-bottom:6px;font-size:13px;font-weight:600;display:block}.settings-field input{border:1px solid var(--border-color);background:var(--bg-secondary);width:100%;height:40px;color:var(--text-primary);border-radius:6px;padding:0 12px;font-size:14px;transition:all .2s}.settings-field input:focus{border-color:var(--color-primary);background:var(--bg-primary);outline:none;box-shadow:0 0 0 3px #3f51b51a}.settings-value{color:var(--text-primary);font-size:14px}.settings-btn{background:var(--color-primary);color:#fff;cursor:pointer;border:none;border-radius:6px;height:38px;padding:0 20px;font-size:14px;font-weight:600;transition:background .2s;display:inline-block}.settings-btn:hover:not(:disabled){background:var(--color-primary)}.settings-btn:disabled{opacity:.6;cursor:not-allowed}.settings-btn-secondary{background:var(--bg-primary);height:38px;color:var(--text-primary);border:1px solid var(--border-color);cursor:pointer;border-radius:6px;padding:0 20px;font-size:14px;font-weight:500;transition:all .2s;display:inline-block}.settings-btn-secondary:hover:not(:disabled){border-color:var(--color-primary);color:var(--color-primary)}.settings-btn-secondary:disabled{opacity:.5;cursor:not-allowed}.settings-error{background:var(--error-banner-bg);color:var(--error-red);border:1px solid var(--error-border);border-radius:6px;margin-top:12px;padding:10px 14px;font-size:13px}.settings-success{background:var(--success-bg);color:var(--success-green);border:1px solid var(--success-border);border-radius:6px;margin-top:12px;padding:10px 14px;font-size:13px}.settings-description{color:var(--text-secondary);margin:0 0 16px;font-size:14px}.settings-loading,.settings-empty{color:var(--text-secondary);font-size:14px;font-style:italic}.mfa-actions{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.mfa-status{font-weight:600}.totp-setup-inline{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;margin-top:16px;padding:16px}.passkey-list{flex-direction:column;gap:8px;display:flex}.passkey-item{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:6px;justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.passkey-info{flex-direction:column;gap:2px;display:flex}.passkey-name{color:var(--text-primary);font-size:14px;font-weight:500}.passkey-date{color:var(--text-secondary);font-size:12px}.passkey-delete{border:1px solid var(--error-border);color:var(--error-red);cursor:pointer;background:0 0;border-radius:4px;padding:4px 12px;font-size:12px;transition:all .2s}.passkey-delete:hover:not(:disabled){background:var(--error-banner-bg)}.passkey-delete:disabled{opacity:.5;cursor:not-allowed}.settings-modal .qr-container{justify-content:center;margin:16px 0;display:flex}.settings-modal .qr-code{border:1px solid var(--border-color);border-radius:8px}.settings-modal .secret-key{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:6px;margin:12px 0 20px;padding:12px}.settings-modal .secret-label{color:var(--text-secondary);margin-bottom:4px;font-size:11px;display:block}.settings-modal .secret-value{color:var(--text-primary);word-break:break-all;-webkit-user-select:all;user-select:all;font-size:13px}@media (width<=600px){.settings-modal{border-radius:0;max-width:100%;max-height:100vh;margin:0}.settings-body{padding:16px}.mfa-actions{flex-direction:column}}.theme-toggle{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;gap:4px;padding:4px;display:inline-flex}.theme-toggle-option{appearance:none;cursor:pointer;color:var(--text-secondary);background:0 0;border:none;border-radius:6px;padding:6px 14px;font-size:13px;font-weight:500;transition:background .15s,color .15s}.theme-toggle-option:hover{color:var(--text-primary)}.theme-toggle-option.active{background:var(--color-primary);color:var(--color-primary-contrast)}:root{--mitek-blue:#3f51b5;--mitek-blue-dark:#303f9f;--mitek-blue-light:#5c6bc0;--mitek-gold:#ffc72c;--mitek-silver:silver;--color-primary:#3f51b5;--color-primary-contrast:#fff;--text-primary:#000000de;--text-secondary:#0009;--bg-primary:#fff;--bg-secondary:#f5f7fa;--bg-card:#f8f9fa;--surface:#fff;--border-color:#d1d5db;--divider-color:#0000001f;--success-green:#059669;--error-red:#dc2626;--card-tint-bg:#3f51b51a;--card-tint-border:#3f51b573;--card-accent:var(--color-primary);--badge-bg:var(--color-primary);--badge-text:var(--color-primary-contrast);--description-bg:#f0f1f8;--description-border:#3f51b573;--radius-card:12px;--radius-badge:5px;--user-bubble-bg:#e0e7ff;--user-bubble-text:#1e3a8a;--user-bubble-border:#c7d2fe;--send-button-bg:#1e3a8a;--send-button-disabled:#a5b4e0;--error-banner-bg:#fef2f2;--header-bg:var(--mitek-blue);--footer-bg:var(--mitek-blue);--gradient-discovery:linear-gradient(135deg, #667eea 0%, #764ba2 100%);--gradient-analysis:linear-gradient(135deg, #5a67d8 0%, #6b46c1 100%);--gradient-summary:linear-gradient(135deg, #4c51bf 0%, #5b21b6 100%);--gradient-login:linear-gradient(135deg, #f5f7fa 0%, #e4e8f0 100%);--qa-surface:linear-gradient(to bottom right, #fff, #f0fdf4);--confirmation-surface:linear-gradient(to bottom right, #fff, #f8fbff);--skeleton-gradient:linear-gradient(90deg, #f0f4f8 25%, #e2e8f0 50%, #f0f4f8 75%);--success-bg:#ecfdf5;--success-border:#a7f3d0;--error-border:#fecaca;--usaf-blue:var(--mitek-blue);--usaf-blue-dark:var(--mitek-blue-dark);--usaf-blue-light:var(--mitek-blue-light);--usaf-gold:var(--mitek-gold);--usaf-silver:var(--mitek-silver);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;font-family:Inter,Segoe UI,system-ui,-apple-system,sans-serif;font-weight:400;line-height:1.5}[data-theme=dark]{--color-primary:#7986cb;--color-primary-contrast:#000000de;--text-primary:#fff;--text-secondary:#ffffffb3;--bg-primary:#121821;--bg-secondary:#0d131b;--bg-card:#1b2433;--surface:#1b2433;--border-color:#ffffff1f;--divider-color:#ffffff1f;--header-bg:#1f2a66;--footer-bg:#2f3d66;--success-green:#34d399;--error-red:#f87171;--card-tint-bg:#7986cb2e;--card-tint-border:#7986cb73;--badge-bg:#9fa8da;--badge-text:#000000de;--description-bg:#7986cb1a;--description-border:#7986cb66;--user-bubble-bg:#7986cb38;--user-bubble-text:#e8eaf6;--user-bubble-border:#7986cb66;--send-button-bg:#5c6bc0;--send-button-disabled:#7986cb66;--error-banner-bg:#f871711f;--gradient-discovery:linear-gradient(135deg, #3c4476 0%, #432a5e 100%);--gradient-analysis:linear-gradient(135deg, #363d80 0%, #3c2868 100%);--gradient-summary:linear-gradient(135deg, #2e3270 0%, #341561 100%);--gradient-login:linear-gradient(135deg, #0e0e12 0%, #1a1a2e 100%);--qa-surface:linear-gradient(to bottom right, var(--surface), #34d3991a);--confirmation-surface:linear-gradient(to bottom right, var(--surface), #7986cb1f);--skeleton-gradient:linear-gradient(90deg, #ffffff0a 25%, #ffffff17 50%, #ffffff0a 75%);--success-bg:#34d3991f;--success-border:#34d39959;--error-border:#f8717159}*{box-sizing:border-box}body{background:var(--bg-primary);min-width:320px;min-height:100vh;margin:0}#root{flex-direction:column;width:100%;height:100vh;display:flex}.app-layout{background:var(--bg-primary);flex-direction:column;width:100%;height:100vh;display:flex}.main-header{background:var(--header-bg);color:#fff;z-index:100;justify-content:flex-start;align-items:center;gap:16px;height:52px;padding:0 20px;display:flex;box-shadow:0 2px 4px #0000001a}.logo-container{flex-shrink:0;align-items:center;padding:14px 0;display:flex}.logo-image{object-fit:contain;width:100px;height:24px;display:block}.header-title{color:#fff;text-align:left;flex:1;min-width:0;padding:0;font-size:16px;font-weight:500}.header-actions{flex-shrink:0;align-items:center;gap:16px;min-width:0;display:flex}.header-actions svg{color:#fff;cursor:pointer;transition:opacity .2s}.header-actions svg:hover{opacity:.8}.settings-button{cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;padding:4px;transition:background .2s;display:flex}.settings-button:hover{background:#ffffff26}.user-email{color:#fff;font-size:14px}.main-content{background:var(--bg-primary);flex-direction:column;flex:1;display:flex;overflow:hidden}.main-footer{background:var(--footer-bg);color:#fff;padding:12px 20px;box-shadow:0 -2px 4px #0000001a}.footer-content{text-align:center;color:#fff;font-size:12px}.App{flex-direction:column;width:100%;height:100%;display:flex}.chat-interface{background:var(--bg-primary);flex-direction:column;width:100%;height:100%;display:flex;overflow:hidden}.chat-header{background:var(--bg-primary);color:var(--text-primary);border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:16px 32px;display:flex;box-shadow:0 1px 3px #0000000d}.chat-header h1{letter-spacing:.5px;text-transform:uppercase;color:var(--text-primary);margin:0;font-size:20px;font-weight:600}.clear-button{color:#fff;cursor:pointer;text-transform:uppercase;letter-spacing:.5px;background:#ffffff26;border:1px solid #ffffff4d;border-radius:4px;padding:8px 16px;font-size:13px;font-weight:500;transition:all .2s}.clear-button:hover:not(:disabled){border-color:var(--usaf-gold);background:#ffffff40}.clear-button:disabled{opacity:.4;cursor:not-allowed}.chat-messages{background:var(--bg-secondary);flex-direction:column;flex:1;gap:8px;padding:8px 16px;display:flex;overflow-y:auto}.empty-state{text-align:center;height:100%;color:var(--text-secondary);flex-direction:column;justify-content:center;align-items:center;display:flex}.empty-icon{color:var(--usaf-blue);margin-bottom:20px}.empty-state h3{color:var(--text-primary);margin:0 0 10px;font-size:22px;font-weight:600}.empty-state p{color:var(--text-secondary);max-width:500px;margin:0;font-size:15px}.message-list{flex-direction:column;gap:8px;width:100%;max-width:1400px;margin:0 auto;display:flex}.message{flex-direction:column;width:100%;scroll-margin-top:80px;display:flex}.message.user{align-items:flex-end}.message.assistant{align-items:flex-start}.message-header{align-items:center;gap:8px;margin-bottom:4px;display:flex}.message-avatar{color:#fff;border-radius:4px;justify-content:center;align-items:center;width:24px;height:24px;font-weight:600;display:flex;box-shadow:0 2px 4px #0000001a}.message.user .message-avatar{background:var(--usaf-blue-light)}.message.assistant .message-avatar{background:var(--usaf-blue-dark)}.message-meta{flex-direction:column;gap:2px;display:flex}.message-role{color:var(--text-primary);text-transform:uppercase;letter-spacing:.5px;font-size:13px;font-weight:600}.message-time{color:var(--text-secondary);font-size:11px}.message-content{background:var(--surface);color:var(--text-primary);border:1px solid var(--border-color);border-radius:8px;padding:8px 12px;font-size:14px;line-height:1.5;position:relative;box-shadow:0 1px 2px #0000000d}.message.user .message-content{background:var(--user-bubble-bg);color:var(--user-bubble-text);border-color:var(--user-bubble-border);max-width:70%}.message.assistant .message-content{width:100%;min-width:320px;max-width:85%}.message-text{overflow-wrap:break-word;font-size:14px;line-height:1.6}.message-text ul,.message-text ol{margin:8px 0;padding-left:20px}.message-text li{margin:0;line-height:1.5}.message-text p{margin:6px 0}.message-text h1,.message-text h2,.message-text h3,.message-text h4{margin-top:12px;margin-bottom:4px;font-weight:600;line-height:1.3}.message-text h1,.message-text h2{font-size:16px}.message-text h3{font-size:15px}.message-text h4{font-size:14px}.message-text p:first-child{margin-top:0}.message-text p:last-child{margin-bottom:0}.message-citations{border-top:2px solid var(--usaf-gold);margin-top:20px;padding-top:20px}.message-citations h4{color:var(--text-primary);text-transform:uppercase;letter-spacing:.5px;margin:0 0 16px;font-size:14px;font-weight:700}.citation{background:var(--bg-secondary);border:1px solid var(--border-color);border-left:3px solid var(--usaf-blue);border-radius:4px;margin-bottom:10px;padding:12px;transition:all .2s}.citation:hover{border-left-color:var(--usaf-gold);box-shadow:0 2px 8px #00000014}.citation-header{align-items:flex-start;gap:8px;margin-bottom:10px;display:flex}.citation-icon{color:var(--usaf-blue);flex-shrink:0;margin-top:2px}.citation-title{color:var(--text-primary);flex:1;font-size:14px;font-weight:600;line-height:1.4}.citation-link{background:var(--usaf-blue);color:#fff;cursor:pointer;text-transform:uppercase;letter-spacing:.5px;border:none;border-radius:4px;flex-shrink:0;align-items:center;gap:4px;padding:6px 12px;font-size:11px;font-weight:600;transition:all .2s;display:flex}.citation-link:hover{background:var(--usaf-blue-dark);transform:translateY(-1px);box-shadow:0 2px 4px #0003}.citation-excerpt{color:var(--text-secondary);background:var(--surface);border:1px solid var(--border-color);border-radius:4px;padding:12px;font-size:13px;font-style:italic;line-height:1.5}.citation-highlight{background:var(--usaf-gold);color:var(--text-primary);border-radius:2px;padding:2px 4px;font-style:normal;font-weight:600}.citation-score{color:var(--text-secondary);margin-top:8px;font-size:11px;font-weight:500}.loading-message{background:var(--surface);border:1px solid var(--border-color);border-radius:6px;align-items:center;gap:12px;max-width:200px;padding:8px 12px;display:flex;box-shadow:0 1px 3px #0000001a}.loading-avatar{background:var(--usaf-blue-dark);color:#fff;border-radius:4px;justify-content:center;align-items:center;width:24px;height:24px;display:flex}.loading-text{color:var(--text-primary);font-size:14px;font-weight:500}.typing-indicator{align-items:center;gap:3px;padding:0;display:flex}.typing-dot{background-color:var(--surface);border-radius:50%;width:4px;height:4px;animation:1.4s ease-in-out infinite both typing}.typing-dot:first-child{animation-delay:0s}.typing-dot:nth-child(2){animation-delay:.2s}.typing-dot:nth-child(3){animation-delay:.4s}@keyframes typing{0%,80%,to{opacity:.4;transform:scale(.6)}40%{opacity:1;transform:scale(1)}}.spinning{animation:1s linear infinite spin}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.error-banner{background:var(--error-banner-bg);border-bottom:2px solid var(--error-red);color:var(--error-red);align-items:center;gap:12px;padding:12px 32px;font-size:13px;font-weight:500;display:flex}.retry-button{background:var(--error-red);color:#fff;cursor:pointer;text-transform:uppercase;letter-spacing:.5px;border:none;border-radius:4px;align-items:center;gap:4px;padding:6px 12px;font-size:11px;font-weight:600;transition:all .2s;display:flex}.retry-button:hover{background:#b91c1c;transform:translateY(-1px)}.chat-input{background:var(--surface);border-top:1px solid var(--border-color);z-index:2000;padding:6px 20px;position:relative}.query-input-wrapper{justify-content:flex-end;max-width:1400px;margin:0 auto;display:flex;position:relative}.query-input-form{flex-direction:column;gap:0;width:70%;display:flex}.query-input-container{background:var(--user-bubble-bg);border:1px solid var(--user-bubble-border);border-radius:6px;align-items:center;gap:6px;padding:4px 10px;transition:all .2s;display:flex}.query-input-container:focus-within{border-color:var(--usaf-blue);background:var(--user-bubble-bg);box-shadow:0 0 0 2px #3f51b526}.query-textarea{resize:none;min-height:20px;max-height:80px;color:var(--user-bubble-text);background:0 0;border:none;outline:none;flex:1;font-family:inherit;font-size:14px;line-height:1.4}.query-textarea::placeholder{color:var(--text-secondary)}.send-button{background:var(--send-button-bg);color:#fff;cursor:pointer;border:none;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;transition:all .2s;display:flex}.send-button:hover:not(:disabled){background:var(--usaf-blue-dark)}.send-button:disabled{background:var(--send-button-disabled);cursor:not-allowed}.query-input-footer{color:var(--text-secondary);justify-content:space-between;align-items:center;padding:0 2px;font-size:10px;display:flex}.char-count{font-weight:500}.input-hint{margin-left:auto;font-style:italic}.suggestions-dropdown{background:var(--surface);border:1px solid var(--border-color);z-index:1000;border-top:none;border-radius:0 0 6px 6px;max-height:300px;margin-top:-8px;padding:4px 0;position:absolute;top:100%;left:0;right:0;overflow-y:auto;box-shadow:0 4px 12px #00000026}.suggestions-dropdown.suggestions-above{border-top:1px solid var(--border-color);border-bottom:none;border-radius:6px 6px 0 0;margin-top:0;margin-bottom:-8px;top:auto;bottom:100%;box-shadow:0 -4px 12px #00000026}.suggestion-item{cursor:pointer;color:var(--text-primary);border-left:3px solid #0000;padding:12px 16px;font-size:14px;transition:all .15s}.suggestion-item:hover,.suggestion-item.selected{background:var(--bg-secondary);border-left-color:var(--usaf-blue);color:var(--usaf-blue-dark)}.suggestion-item:first-child{margin-top:4px}.suggestion-item:last-child{margin-bottom:4px}.suggestions-loading{background:var(--surface);border:1px solid var(--border-color);color:var(--text-secondary);z-index:1000;border-top:none;border-radius:0 0 6px 6px;align-items:center;gap:8px;margin-top:-8px;padding:12px 16px;font-size:13px;display:flex;position:absolute;top:100%;left:0;right:0}.suggestions-loading .spinning{color:var(--usaf-blue)}.chat-messages::-webkit-scrollbar{width:8px}.chat-messages::-webkit-scrollbar-track{background:var(--bg-secondary)}.chat-messages::-webkit-scrollbar-thumb{background:var(--usaf-silver);border-radius:4px}.chat-messages::-webkit-scrollbar-thumb:hover{background:var(--usaf-blue)}.sign-out-button{color:#fff;cursor:pointer;text-transform:uppercase;letter-spacing:.5px;background:#ffffff26;border:1px solid #ffffff4d;border-radius:4px;padding:6px 12px;font-size:12px;font-weight:500;transition:all .2s}.sign-out-button:hover{border-color:var(--mitek-gold);background:#ffffff40}.login-container{background:var(--bg-primary);flex-direction:column;justify-content:center;align-items:center;min-height:100%;padding:40px 20px;display:flex}.login-container>h2{color:var(--text-primary);text-transform:uppercase;letter-spacing:1px;margin-bottom:32px;font-size:28px;font-weight:600}.form-group{width:100%;max-width:400px;margin-bottom:20px}.form-group label{color:var(--text-primary);letter-spacing:.5px;margin-bottom:8px;font-size:14px;font-weight:500;display:block}.form-group input{border:2px solid var(--border-color);background:var(--bg-primary);width:100%;color:var(--text-primary);border-radius:6px;padding:12px;font-size:14px;transition:all .2s}.form-group input:focus{border-color:var(--mitek-blue);background:var(--bg-primary);outline:none}.form-group input::placeholder{color:var(--text-secondary)}.form-group input:disabled{opacity:.5;cursor:not-allowed}.login-container button[type=submit]{background:var(--mitek-blue);border:2px solid var(--mitek-blue);color:#fff;cursor:pointer;text-transform:uppercase;letter-spacing:1px;border-radius:6px;width:100%;max-width:400px;padding:14px;font-size:14px;font-weight:600;transition:all .2s}.login-container button[type=submit]:hover:not(:disabled){background:var(--mitek-blue-dark);transform:translateY(-2px);box-shadow:0 4px 12px #0030874d}.login-container button[type=submit]:disabled{opacity:.6;cursor:not-allowed;transform:none}.login-container p{color:var(--text-secondary);margin-top:24px;font-size:14px}.link-button{color:var(--mitek-blue);cursor:pointer;background:0 0;border:none;font-size:14px;font-weight:600;text-decoration:underline;transition:all .2s}.link-button:hover{color:var(--mitek-blue-dark)}.error-message{color:var(--error-red);background:#dc26261a;border:1px solid #dc26264d;border-radius:4px;width:100%;max-width:400px;margin-bottom:16px;padding:10px;font-size:13px}.loading{min-height:100%;color:var(--text-primary);justify-content:center;align-items:center;font-size:16px;display:flex}.selection-list{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:6px;margin-top:20px;padding:16px}.selection-list-title{color:var(--text-primary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:12px;font-size:14px;font-weight:600}.selection-items{flex-direction:column;gap:8px;display:flex}.selection-item{background:var(--surface);border:2px solid var(--border-color);cursor:pointer;color:var(--text-primary);text-align:left;border-radius:4px;padding:12px 16px;font-size:14px;font-weight:500;transition:all .2s}.selection-item:hover{background:var(--mitek-blue);color:#fff;border-color:var(--mitek-blue);transform:translate(4px)}.selection-item:active{transform:translate(2px)}.selection-item-description{color:var(--text-secondary);font-size:13px;font-weight:400}.selection-item:hover .selection-item-description{color:#ffffffe6}.message-text details{border-left:3px solid var(--mitek-blue);background:var(--bg-secondary);cursor:pointer;border-radius:4px;margin:8px 0;display:block;overflow:hidden}.message-text details summary{color:var(--mitek-blue);-webkit-user-select:none;user-select:none;align-items:center;padding:8px 12px;font-size:14px;font-weight:600;list-style:none;transition:all .2s;display:flex}.message-text details summary::-webkit-details-marker{display:none}.message-text details summary::marker{display:none}.message-text details summary:before{content:"[+]";margin-right:8px;font-size:12px;font-weight:700}.message-text details[open] summary:before{content:"[-]"}.message-text details summary:hover{background:#3f51b50d}.message-text details summary strong{font-weight:600}.message-text details[open] summary{border-bottom:none;margin-bottom:0;padding-bottom:8px}.message-text details ul{background:var(--surface);border:1px solid var(--border-color);border-radius:4px;margin:0 8px 8px;padding:12px 16px}.message-text details li{color:var(--text-primary);margin:2px 0;font-size:14px}@media (width<=768px){.main-header{flex-wrap:wrap;min-height:auto;padding:12px 16px}.logo-container{flex-shrink:0;min-width:auto}.logo-image{height:40px}.header-title{order:3;width:100%;margin-top:8px;padding:0;font-size:14px}.header-actions{flex-shrink:0;gap:12px}.user-email{display:none}.chat-header{padding:12px 16px}.chat-header h1{font-size:16px}.chat-messages{padding:16px}.message.user .message-content{max-width:85%}.chat-input{padding:16px}.message-list{max-width:100%}.login-container{padding:16px}.main-footer{padding:12px 16px}.footer-content{font-size:12px}}.issue-excerpt{border-left:3px solid var(--usaf-blue);background:var(--bg-secondary);border-radius:4px;margin-top:12px;overflow:hidden}.issue-excerpt summary{cursor:pointer;-webkit-user-select:none;user-select:none;color:var(--usaf-blue-dark);align-items:center;gap:8px;padding:10px 14px;font-size:14px;font-weight:500;list-style:none;transition:all .2s;display:flex}.issue-excerpt summary::-webkit-details-marker{display:none}.issue-excerpt summary:hover{color:var(--usaf-blue);background:#3f51b50d}.excerpt-icon{flex-shrink:0;width:16px;height:16px;transition:transform .2s;display:inline-block}.excerpt-icon:before{content:"[+]";color:var(--usaf-blue);font-size:14px;font-weight:700}.issue-excerpt[open] .excerpt-icon:before{content:"[-]"}.issue-excerpt[open] .excerpt-icon{transform:rotate(0)}.excerpt-label{flex:1}.excerpt-text{background:var(--surface);color:var(--text-primary);border:1px solid var(--border-color);border-radius:4px;margin:0 10px 10px;padding:14px;font-size:14px;line-height:1.6;box-shadow:inset 0 1px 2px #0000000d}.issue-excerpt .excerpt-text:before{content:"\"";color:var(--usaf-blue);opacity:.3;vertical-align:top;margin-right:4px;font-size:24px;line-height:1}.issue-excerpt .excerpt-text:after{content:"\"";color:var(--usaf-blue);opacity:.3;vertical-align:bottom;margin-left:4px;font-size:24px;line-height:1}.kpi-tooltip-wrapper{cursor:help;vertical-align:middle;align-items:center;margin-left:6px;display:inline-flex;position:relative}.kpi-tooltip-wrapper .tooltip-trigger{color:var(--usaf-blue);opacity:.7;transition:opacity .2s,transform .2s;display:inline-flex}.kpi-tooltip-wrapper .tooltip-trigger svg{width:14px;height:14px}.kpi-tooltip-wrapper:hover .tooltip-trigger{opacity:1;color:var(--usaf-blue-dark);transform:scale(1.1)}.kpi-tooltip-wrapper .tooltip-content{z-index:10000;background:var(--usaf-blue-dark);color:#fff;opacity:0;visibility:hidden;white-space:normal;overflow-wrap:break-word;border:1px solid #ffffff1a;border-radius:8px;min-width:min(600px,90vw);max-width:min(1600px,90vw);margin-bottom:0;padding:16px 20px;font-size:14px;line-height:1.6;transition:opacity .2s,visibility .2s;position:fixed;bottom:120px;left:50%;right:auto;transform:translate(-50%);box-shadow:0 4px 20px #00000040}.kpi-tooltip-wrapper:hover .tooltip-content{opacity:1;visibility:visible}.kpi-tooltip-wrapper .tooltip-content:after{display:none}.analysis-params-tooltip-wrapper{cursor:help;align-items:center;margin-left:8px;display:inline-flex;position:relative}.analysis-params-tooltip-wrapper .tooltip-trigger{opacity:.7;font-size:16px;transition:opacity .2s}.analysis-params-tooltip-wrapper:hover .tooltip-trigger{opacity:1}.analysis-params-tooltip-wrapper .tooltip-content{z-index:1000;background:var(--usaf-blue-dark);color:#fff;opacity:0;visibility:hidden;white-space:pre-wrap;overflow-wrap:break-word;border-radius:8px;min-width:300px;max-width:min(1600px,90vw);padding:20px 16px 12px;font-size:12px;line-height:1.5;transition:opacity .2s,transform .2s,visibility .2s;position:absolute;top:100%;left:50%;transform:translate(-50%)translateY(4px);box-shadow:0 4px 16px #0003}.analysis-params-tooltip-wrapper:hover .tooltip-content{opacity:1;visibility:visible;transform:translate(-50%)translateY(0)}.analysis-params-tooltip-wrapper .tooltip-content:before{content:"";border-style:solid;border-width:0 6px 6px;border-color:transparent transparent var(--usaf-blue-dark);position:absolute;top:2px;left:50%;transform:translate(-50%)}.kpi-tree{flex-direction:column;gap:8px;margin-bottom:4px;display:flex}.kpi-tree-part-description{color:var(--color-primary);border-bottom:1px solid #0000001f;margin-bottom:8px;padding-bottom:6px;font-size:14px;font-weight:600}.kpi-tree-part-description p{margin:0}.kpi-tree-part-description strong{font-weight:inherit;color:inherit}.kpi-tree-title{padding:2px 0;font-size:14px;font-weight:400}.kpi-tree-segment{border-left:3px solid var(--accent-color,#4a6fa5);flex-direction:column;gap:2px;padding-left:10px;display:flex}.kpi-tree-segment-header{padding:2px 0;font-size:14px;font-weight:700}.kpi-tree-category{flex-direction:column;gap:1px;margin-left:12px;display:flex}.kpi-tree-category-header{color:var(--text-primary);padding:1px 0;font-size:14px;font-weight:600}.kpi-tree-engines{grid-template-columns:minmax(180px,auto) auto;justify-content:start;gap:2px 16px;margin-left:12px;display:grid}.kpi-tree-engine{align-items:center;gap:6px;display:flex}.kpi-tree-engine-label{color:var(--text-secondary);white-space:nowrap;font-size:14px;font-weight:500}.kpi-tree-engine-flags{flex-wrap:wrap;align-items:center;gap:2px;display:flex}.kpi-tree-flag{display:block}.kpi-tree-flag.red{color:#d32f2f}.kpi-tree-flag.yellow{color:#c09800}.kpi-tree-engine-status{color:var(--text-tertiary,#999);font-size:12px;font-style:italic}.kpi-feedback-section{border-top:1px solid var(--border-color,#e5e7eb);margin-top:12px;padding-top:10px}.kpi-feedback-btn{color:var(--mitek-blue);border:1px solid var(--mitek-blue);cursor:pointer;background:0 0;border-radius:4px;align-items:center;gap:6px;padding:6px 12px;font-size:13px;transition:background .15s,color .15s;display:inline-flex}.kpi-feedback-btn:hover{background:var(--mitek-blue);color:#fff}.feedback-modal-overlay{z-index:1000;background:#0006;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.feedback-modal{background:var(--surface);color:var(--text-primary);border-radius:8px;width:480px;max-width:90vw;padding:24px;box-shadow:0 8px 32px #0003}.feedback-modal-title{color:var(--text-primary,#1a1a1a);margin:0 0 16px;font-size:16px}.feedback-modal-textarea{border:1px solid var(--border-color,#d1d5db);resize:vertical;box-sizing:border-box;background:var(--bg-secondary);width:100%;color:var(--text-primary);border-radius:4px;padding:10px;font-family:inherit;font-size:14px}.feedback-modal-textarea::placeholder{color:var(--text-secondary)}.feedback-modal-textarea:focus{border-color:var(--color-primary);outline:none}.feedback-modal-actions{justify-content:flex-end;gap:8px;margin-top:16px;display:flex}.feedback-modal-cancel{border:1px solid var(--border-color,#d1d5db);cursor:pointer;color:var(--text-secondary,#6b7280);background:0 0;border-radius:4px;padding:8px 16px;font-size:13px}.feedback-modal-cancel:hover{background:var(--bg-secondary,#f3f4f6)}.feedback-modal-submit{background:var(--mitek-blue);color:#fff;cursor:pointer;border:none;border-radius:4px;padding:8px 16px;font-size:13px}.feedback-modal-submit:hover:not(:disabled){background:var(--mitek-blue-dark,#303f9f)}.feedback-modal-submit:disabled{opacity:.5;cursor:not-allowed}.feedback-modal-error{color:var(--error-red);background:#b71c1c14;border-radius:4px;margin-top:8px;padding:8px;font-size:13px}.part-header-separator{border:none;border-top:1px solid var(--border-color,#e5e7eb);margin:4px 0 8px}.part-description-header{color:var(--text-primary);align-items:center;gap:6px;margin-bottom:4px;font-size:14px;display:flex}.part-description-header p{margin:0}.search-query-info{color:var(--text-secondary,#6b7280);cursor:help;flex-shrink:0;align-items:center;display:inline-flex;position:relative}.search-query-info:hover{color:var(--usaf-blue-dark,#003087)}.search-query-tooltip{z-index:1000;background:var(--usaf-blue-dark);color:#fff;opacity:0;visibility:hidden;white-space:pre-wrap;overflow-wrap:break-word;border-radius:8px;min-width:200px;max-width:min(600px,90vw);padding:20px 16px 12px;font-size:12px;font-weight:400;line-height:1.5;transition:opacity .2s,transform .2s,visibility .2s;position:absolute;top:100%;left:50%;transform:translate(-50%)translateY(4px);box-shadow:0 4px 16px #0003}.search-query-info:hover .search-query-tooltip{opacity:1;visibility:visible;transform:translate(-50%)translateY(0)}.search-query-tooltip:before{content:"";border-style:solid;border-width:0 6px 6px;border-color:transparent transparent var(--usaf-blue-dark);position:absolute;top:2px;left:50%;transform:translate(-50%)}.analysis-summary{border-top:1px solid var(--border-color);margin-top:24px;padding-top:24px}.analysis-summary h4{color:var(--color-primary);text-transform:uppercase;letter-spacing:.5px;align-items:center;gap:8px;margin:0 0 16px;font-size:14px;font-weight:600;display:flex}.analysis-summary h4:before{content:"📊";font-size:16px}.analysis-summary p{color:var(--text-primary);margin:0 0 12px;font-size:14px;line-height:1.7}.analysis-summary p:last-child{margin-bottom:0}.analysis-summary ul,.analysis-summary ol{margin:12px 0;padding-left:20px;list-style-type:disc}.analysis-summary li{margin:6px 0;font-size:14px;line-height:1.6}.analysis-summary.loading{border-top:1px solid var(--border-color);justify-content:center;align-items:center;min-height:80px;padding:32px 0;display:flex}.recommendations-container{border-top:1px dashed var(--border-color);flex-direction:column;margin-top:16px;padding-top:12px;display:flex}.prescribed-action-container{flex-direction:column;gap:12px;margin-top:16px;display:flex}.prescribed-action-card{background-color:var(--card-tint-bg);border:1px solid var(--card-tint-border);border-left:6px solid var(--card-accent);border-radius:0 var(--radius-card) var(--radius-card) 0;color:var(--text-primary);padding:16px 16px 16px 20px;position:relative}.prescribed-action-badge{background-color:var(--badge-bg);color:var(--badge-text);text-transform:uppercase;letter-spacing:.08em;border-radius:var(--radius-badge);margin-bottom:10px;padding:4px 10px;font-size:12px;font-weight:700;display:inline-block}.prescribed-action-title{color:var(--text-primary);margin:0 0 8px;font-size:14px;font-weight:600}.prescribed-action-body{flex-wrap:wrap;gap:8px 32px;display:flex}.prescribed-action-body p{flex:380px;margin:0;font-size:14px;line-height:1.62}.show-recs-button{border:1px solid var(--usaf-blue);color:var(--usaf-blue);cursor:pointer;background-color:#0000;border-radius:4px;align-self:flex-start;margin-bottom:8px;padding:8px 16px;font-size:14px;font-weight:600;transition:all .2s}.show-recs-button:hover{background-color:var(--usaf-blue);color:#fff}.actionable-recommendations{color:var(--text-primary);margin-top:12px}.actionable-recommendations h4{color:var(--text-primary);text-transform:uppercase;letter-spacing:.5px;align-items:flex-start;gap:8px;margin:0 0 8px;font-size:14px;font-weight:600;display:flex}.actionable-recommendations h4:before{content:"💡";font-size:14px;line-height:1.4}.actionable-recommendations p{margin:0 0 12px;font-size:14px;line-height:1.6}.actionable-recommendations ul,.actionable-recommendations ol{margin:8px 0;padding-left:20px;list-style-type:disc}.actionable-recommendations li{margin:4px 0;font-size:14px;line-height:1.5}.summary-loading-indicator{flex-direction:column;justify-content:center;align-items:center;gap:16px;width:100%;padding:24px 0;display:flex}.thinking-text-shimmer{color:var(--mitek-blue-dark);letter-spacing:.5px;-webkit-text-fill-color:transparent;text-align:center;background:linear-gradient(90deg,#6b7db3 20%,#3f51b5 40% 60%,#6b7db3 80%) 0 0/200%;-webkit-background-clip:text;background-clip:text;width:100%;min-height:20px;font-size:14px;font-weight:500;animation:2s linear infinite shimmer-text;display:block}.summary-skeleton{flex-direction:column;gap:12px;width:100%;margin-top:16px;display:flex}.skeleton-line{background:var(--skeleton-gradient);background-size:200% 100%;border-radius:6px;height:12px;animation:1.5s linear infinite skeleton-shimmer}.skeleton-line.short{width:60%}.skeleton-line.medium{width:85%}@keyframes shimmer-text{to{background-position:200%}}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.message.qa-mode .message-content{background:var(--qa-surface);border:1px solid var(--success-green);border-left:4px solid var(--success-green);box-shadow:0 4px 6px #0596691a}.message.qa-mode .message-avatar{background:var(--success-green)!important}.message.qa-mode .message-text{font-size:15px}.message.qa-mode strong{color:var(--color-primary);font-weight:600}.message-text table{border-collapse:collapse;background:var(--surface);border:1px solid var(--border-color);width:100%;margin:16px 0;font-size:14px}.message-text th,.message-text td{border:1px solid var(--border-color);text-align:left;vertical-align:top;padding:12px}.message-text th{background:var(--bg-secondary);color:var(--text-primary);border-bottom:2px solid var(--border-color);font-weight:600}.message-text tr:nth-child(2n){background-color:var(--bg-card)}.message-text tr:hover{background-color:#00000005}.message-parts-list{border-top:1px dashed var(--border-color);margin-top:8px;padding-top:8px}.message-parts-list h4{color:var(--usaf-blue-dark);text-transform:uppercase;letter-spacing:.5px;align-items:center;gap:6px;margin:0 0 6px;font-size:13px;font-weight:700;display:flex}.message-parts-list h4:before{content:"🔍";font-size:14px}.parts-list{flex-direction:column;gap:2px;margin:0;padding-left:20px;list-style-type:disc;display:flex}.part-item{color:var(--text-primary);font-size:14px;line-height:1.4}.message.confirmation .message-content{background:var(--confirmation-surface);border-left:4px solid var(--usaf-blue);border-bottom-right-radius:0;border-bottom-left-radius:0;padding:12px 16px}.message.confirmation .message-parts-list{border-top:1px solid var(--divider-color);margin-top:10px;padding-top:10px}.message.confirmation .part-item{margin-bottom:2px}.message.confirmation{margin-bottom:-1px}.message.confirmation+.message.assistant .message-content{border-top-left-radius:0;border-top-right-radius:0}.source-icon-link{width:20px;height:20px;color:var(--text-secondary);vertical-align:text-bottom;cursor:pointer;background-color:#1e293b15;border-radius:50%;justify-content:center;align-items:center;margin-left:6px;text-decoration:none;transition:all .2s;display:inline-flex}.source-icon-link:hover{color:#fff;background-color:#1e293b;transform:scale(1.1)}.source-icon-link svg{display:block}.command-hint-wrapper{align-items:center;gap:2px;display:inline-flex}.command-hint-btn{cursor:pointer;color:var(--text-secondary);opacity:.7;vertical-align:text-bottom;background:#00000008;border:1px solid #0000000d;border-radius:3px;justify-content:center;align-items:center;margin-left:4px;padding:2px;transition:opacity .15s,color .15s,background .15s;display:inline-flex}.command-hint-btn:hover{opacity:1;color:var(--mitek-blue);background:#3f51b51a;border-color:#3f51b533}.chat-controls{background:var(--bg-secondary);border-bottom:1px solid var(--border-color);justify-content:flex-end;gap:12px;padding:8px 16px;display:flex}.copy-toggle-btn{border:1px solid var(--mitek-blue);color:var(--mitek-blue);cursor:pointer;text-transform:uppercase;letter-spacing:.5px;background:0 0;border-radius:12px;padding:4px 12px;font-size:11px;font-weight:600;transition:all .2s}.copy-toggle-btn:hover{background:#3f51b50d}.copy-toggle-btn.active{background:var(--mitek-blue);color:#fff}.copyable-wrapper{white-space:nowrap;align-items:center;gap:2px;display:inline-flex;position:relative}.copy-btn{cursor:pointer;color:var(--text-secondary);opacity:.5;vertical-align:text-bottom;background:#00000008;border:1px solid #0000000d;border-radius:3px;justify-content:center;align-items:center;margin-left:4px;padding:2px;transition:all .2s;display:inline-flex}.copy-btn:hover{opacity:1;color:var(--mitek-blue);background:#3f51b51a;border-color:#3f51b533}.check-icon{color:var(--success-green)}@media (width<=1024px){.query-input-form{width:90%}.kpi-quadrant-grid{grid-template-columns:48px 1fr 1fr}}@media (width<=768px){.main-header{flex-wrap:nowrap;gap:8px;height:auto;min-height:44px;padding:8px 12px}.header-title{white-space:nowrap;text-overflow:ellipsis;order:0;width:auto;margin-top:0;font-size:13px;overflow:hidden}.sign-out-button{min-height:44px;padding:8px 10px;font-size:11px}.main-footer{padding:6px 12px}.footer-content{font-size:10px}.query-input-form{width:100%}.chat-input{padding:6px 8px}.query-input-container{padding:8px 10px}.query-textarea{font-size:16px}.send-button{border-radius:8px;width:44px;height:44px}.send-button svg{width:20px;height:20px}.input-hint{display:none}.message.assistant .message-content{min-width:0;max-width:100%}.message.user .message-content{max-width:90%}.chat-messages{padding:8px}.message-text table{-webkit-overflow-scrolling:touch;max-width:100%;display:block;overflow-x:auto}.message-text th,.message-text td{white-space:nowrap;padding:8px;font-size:13px}.kpi-quadrant-grid{grid-template-columns:1fr}.kpi-quadrant-corner,.kpi-quadrant-col-label{display:none}.kpi-quadrant-row-label{writing-mode:horizontal-tb;text-align:left;border-right:none;border-bottom:1px solid var(--border-color);padding:8px 12px;font-size:11px;transform:none}.kpi-quadrant-cell{border-left:none;border-top:1px solid var(--border-color);min-height:44px;padding:12px}.kpi-quadrant-cell:before{content:attr(data-column);text-transform:uppercase;letter-spacing:1px;color:var(--text-secondary);margin-bottom:4px;font-size:9px;font-weight:700;display:block}.kpi-quadrant-cell.has-red{border-bottom:3px solid #d32f2f;border-left:none}.kpi-quadrant-cell.has-yellow{border-bottom:3px solid #f5c800;border-left:none}.kpi-tooltip-wrapper .tooltip-content{width:90vw;min-width:0;max-width:none;position:fixed;inset:50% 5vw auto;transform:translateY(-50%)}.selection-item{min-height:44px;padding:14px 16px}.citation-link{min-height:44px;padding:8px 14px}.context-clear-btn{min-width:44px;min-height:44px}.retry-button{min-height:44px;padding:10px 16px}.copy-btn{min-width:32px;min-height:32px;padding:6px}.message-text details summary{min-height:44px;padding:12px}.issue-excerpt summary{min-height:44px;padding:12px 14px}.show-recs-button{text-align:center;width:100%;min-height:44px}}@media (width<=480px){.logo-image{width:72px;height:18px}.header-title{font-size:12px}.main-footer{padding:4px 8px}.footer-content{font-size:9px}.chat-messages{padding:4px}.message-content{padding:8px}.message-text{font-size:13px}.empty-state h3{font-size:18px}.empty-state p{font-size:13px}.kpi-quadrant-kpi-list li{padding:3px 6px;font-size:11px}}@supports (padding-bottom:env(safe-area-inset-bottom)){.chat-input{padding-bottom:calc(6px + env(safe-area-inset-bottom))}.main-footer{padding-bottom:calc(12px + env(safe-area-inset-bottom))}}
