:root{--color-primary:#202020;--color-primary-text:#fff;--color-accent:#ffcd11;--color-page:#ecebe7;--color-surface:#fff;--color-surface-secondary:#f5f4f0;--color-header:#202020;--color-header-text:#fff;--color-text:#242424;--color-text-muted:#62625e;--color-border:#c8c7c1;--color-input-border:#a5a49e;--color-message-assistant:#e5e5e2;--color-message-user:#ffe49a;--color-status-bg:#ffcd11;--color-status-text:#202020;color:var(--color-text);background:var(--color-page);font-synthesis:none;font-family:system-ui,-apple-system,Segoe UI,sans-serif}*{box-sizing:border-box}body{margin:0}[hidden]{display:none!important}button,input,select{font:inherit}button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid var(--color-accent);outline-offset:2px}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.app{background:var(--color-surface);flex-direction:column;width:100%;max-width:960px;min-height:100dvh;margin:0 auto;display:flex;box-shadow:0 8px 35px #182c4914}.header{background:var(--color-header);color:var(--color-header-text);border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:12px;padding:16px 20px;display:flex}.header-identity{flex-direction:column;gap:4px;min-width:0;display:flex}.header-brand{align-items:center;gap:10px;min-width:0;display:flex}.header-brand strong{overflow-wrap:anywhere}.header-identity>span{color:var(--color-header-text);opacity:.85;font-size:12px}.client-logo{object-fit:contain;flex-shrink:0;width:auto;max-width:120px;height:auto;max-height:40px;display:block}#logout{background:var(--color-status-bg);color:var(--color-status-text);cursor:pointer;border:0;border-radius:30px;flex-shrink:0;padding:7px 12px;font-weight:600}#logout:disabled{opacity:.55;cursor:not-allowed}.access{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:18px;padding:24px;display:flex}.access button{background:var(--color-primary);color:var(--color-primary-text);cursor:pointer;border:0;border-radius:10px;padding:13px 20px}.access button:disabled{opacity:.55;cursor:wait}.private-area{flex-direction:column;flex:1;min-height:0;display:flex}.session-bar{background:var(--color-surface-secondary);border-bottom:1px solid var(--color-border);flex-direction:column;align-items:stretch;gap:9px;padding:11px 20px;font-size:13px;display:flex}#user-label{overflow-wrap:anywhere}.chat{flex-direction:column;flex:1;gap:12px;min-height:240px;padding:20px;display:flex;overflow:hidden auto}.message{background:var(--color-message-assistant);overflow-wrap:anywhere;border-radius:15px;align-self:flex-start;min-width:0;max-width:min(88%,680px);padding:12px 15px}.message.user{background:var(--color-message-user);align-self:flex-end}.message>strong{color:var(--color-text-muted);margin-bottom:6px;font-size:11px;font-weight:650;display:block}.message-content{overflow-wrap:anywhere;white-space:normal;min-width:0;font-size:14px;line-height:1.5}.message.user .message-content{white-space:pre-wrap}.message-content>:first-child{margin-top:0}.message-content>:last-child{margin-bottom:0}.message-content p{margin:0 0 8px}.message-content strong{font-size:inherit;color:inherit;font-weight:700}.message-content ul,.message-content ol{margin:7px 0 9px;padding-left:22px}.message-content li{margin:3px 0;padding:0}.message-content li p{margin:0}.message-content li::marker{color:var(--color-text-muted)}.message-content h1,.message-content h2,.message-content h3{margin:10px 0 6px;font-weight:650;line-height:1.3}.message-content h1{font-size:1.25rem}.message-content h2{font-size:1.12rem}.message-content h3{font-size:1rem}.message-content a{color:#365acb;overflow-wrap:anywhere;text-decoration:underline}.message-content :not(pre)>code{background:#f1f3f7;border-radius:4px;padding:2px 4px;font-family:Consolas,monospace;font-size:.92em}.message-content pre{background:#f1f3f7;border-radius:8px;max-width:100%;margin:8px 0;padding:10px;overflow-x:auto}.message-content pre code{font-family:Consolas,monospace;font-size:.92em}.message-content table{border-collapse:collapse;max-width:100%;margin:8px 0;display:block;overflow-x:auto}.message-content th,.message-content td{text-align:left;border:1px solid #d6dbe4;padding:6px 8px}.message-content th{background:#f1f3f7}.message-content blockquote{border-left:3px solid var(--color-accent);background:#f7f8fb;margin:9px 0;padding:7px 11px}.consent-actions{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.consent-actions button{color:#263247;cursor:pointer;background:#fff;border:1px solid #d6dbe4;border-radius:8px;padding:9px 14px}.consent-actions button:hover:not(:disabled){background:#f0f3f8}.composer{border-top:1px solid var(--color-border);flex-shrink:0;gap:9px;padding:13px 20px;display:flex}.composer input{border:1px solid var(--color-input-border);background:var(--color-surface);min-width:0;color:var(--color-text);border-radius:10px;flex:1;padding:12px 14px}.composer button{background:var(--color-primary);color:var(--color-primary-text);cursor:pointer;border:0;border-radius:10px;padding:0 18px}.composer button:disabled{opacity:.55;cursor:wait}footer{color:var(--color-text-muted);text-align:center;flex-shrink:0;padding:0 15px 12px;font-size:11px}@media (min-width:700px){.app{border-radius:16px;height:calc(100dvh - 48px);min-height:0;margin:24px auto;overflow:hidden}.chat{min-height:0}}@media (max-width:480px){.header{padding:13px 14px}.header-brand{gap:8px}.client-logo{max-width:80px;max-height:30px}.session-bar{padding:10px 14px}.chat{padding:14px}.message{max-width:94%}.composer{padding:11px 12px}}@media (max-width:699px){html,body{width:100%;height:100%;margin:0;overflow:hidden}.app{border-radius:0;flex-direction:column;width:100%;max-width:none;height:100dvh;min-height:0;margin:0;display:flex;overflow:hidden}.header{flex:none}.private-area{flex-direction:column;flex:auto;min-height:0;display:flex;overflow:hidden}.session-bar{flex:none}.chat{overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch;flex:auto;min-height:0;overflow:hidden auto}.composer,.private-area footer{flex:none}}.message.assistant:has(.consent-actions){border:1px solid var(--color-border);background:var(--color-surface);border-radius:14px;width:min(100%,440px);max-width:100%;padding:18px}.consent-description{color:var(--color-text);margin:12px 0 8px;line-height:1.5}.consent-explanation{color:var(--color-text-muted);margin:0 0 14px;font-size:12px;line-height:1.5}.consent-actions{gap:10px;margin-top:14px;display:flex}.consent-actions button{min-width:0;font:inherit;cursor:pointer;border-radius:9px;flex:1;padding:11px 14px;font-size:13px;font-weight:600}.consent-actions button:first-child{background:var(--color-primary);color:var(--color-primary-text);border:1px solid var(--color-primary)}.consent-actions button:not(:first-child){background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border)}.consent-actions button:disabled{opacity:.55;cursor:not-allowed}@media (max-width:480px){.message.assistant:has(.consent-actions){padding:14px}.consent-actions{flex-wrap:wrap}}.analytics-chart{background:var(--color-surface-secondary);box-sizing:border-box;border:1px solid #71774a1f;border-radius:12px;width:100%;min-width:0;margin-top:14px;padding:16px}.analytics-indicator{flex-direction:column;gap:8px;margin:8px 0;display:flex}.analytics-indicator-value{font-variant-numeric:tabular-nums;overflow-wrap:anywhere;margin:0;font-size:clamp(1.625rem,6vw,1.875rem);font-weight:700;line-height:1.15}.analytics-indicator-label{color:var(--color-text);overflow-wrap:anywhere;font-size:15px;font-weight:600}.analytics-card-header{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px 12px;margin-bottom:12px;display:flex}.analytics-card-header .analytics-chart-title{overflow-wrap:anywhere;flex:1;min-width:0;margin:0}.analytics-view-toggle{border:1px solid var(--color-input-border);background:var(--color-surface);color:var(--color-text);cursor:pointer;border-radius:8px;flex-shrink:0;padding:5px 10px;font-size:12px}.analytics-view-toggle:hover{background:var(--color-surface-secondary)}.analytics-chart-title{color:#243047;margin:0 0 12px;font-size:15px;font-weight:600}.analytics-chart-container{width:100%;min-width:0;height:320px;position:relative}.analytics-chart-container canvas{display:block;width:100%!important;height:100%!important}@media (max-width:640px){.analytics-chart{padding:12px}.analytics-chart-container{min-width:0;height:320px}.analytics-chart-title{font-size:14px}}.analytics-table-wrapper{background:#fff;border:none;border-radius:12px;width:-moz-fit-content;width:fit-content;max-width:100%;overflow-x:auto;box-shadow:0 2px 8px #19232d0a}.message-content table.analytics-table{width:max-content;max-width:none;margin:0;display:table;overflow:visible}.analytics-table{border-collapse:collapse;table-layout:auto;color:#334155;background:#fff;font-size:13px}.message-content .analytics-table th,.message-content .analytics-table td{vertical-align:middle;text-align:left;white-space:nowrap;border:none;border-bottom:1px solid #f0f1f2;padding:14px 16px;line-height:1.5}.message-content .analytics-table th{letter-spacing:.025em;color:#fff;background:#343b37;border-bottom-color:#0000;padding-top:12px;padding-bottom:12px;font-size:12px;font-weight:600}.message-content .analytics-table td:first-child{white-space:normal;color:#303740;font-weight:500}.message-content .analytics-table td.analytics-table-number{color:#202730;white-space:nowrap;font-weight:600}.analytics-table tbody tr:last-child td{border-bottom:none}.analytics-table tbody tr:nth-child(2n){background:#fff}.analytics-table tbody tr:hover{background:#fafaf9}.analytics-conclusion{margin-top:12px;line-height:1.5}.analytics-conclusion p:last-child{margin-bottom:0}.message-content .analytics-table th.analytics-table-number,.message-content .analytics-table td.analytics-table-number{text-align:right;font-variant-numeric:tabular-nums}@media (max-width:640px){.message-content .analytics-table th,.message-content .analytics-table td{padding:12px}}.message.assistant.has-analytics{box-sizing:border-box;width:min(100%,760px);max-width:100%}.message.assistant.has-analytics .message-content{box-sizing:border-box;width:100%;min-width:0}.message.assistant.has-analytics .analytics-chart{box-sizing:border-box;width:100%;max-width:100%}@media (max-width:640px){.message.assistant.has-analytics{width:100%;max-width:100%}.message.assistant.has-analytics .analytics-chart{padding:12px}}
