.lang-switcher{--lumo-size-m:32px;font-size:var(--lumo-font-size-s)}.lang-switcher::part(input-field){padding:0 var(--lumo-space-xs)}@media (max-width:768px){vaadin-app-layout::part(navbar){padding:0 var(--lumo-space-s)}.header-logo-text{display:none}.header-logo-image{width:40px !important}.logout-button{font-size:var(--lumo-font-size-s);padding:var(--lumo-space-xs) var(--lumo-space-s)}}@media (max-width:600px){vaadin-grid{font-size:var(--lumo-font-size-s)}vaadin-grid::part(cell){padding:var(--lumo-space-xs) var(--lumo-space-s)}.mobile-hidden{display:none !important}}@media (max-width:768px){vaadin-form-layout{--vaadin-form-layout-column-spacing:var(--lumo-space-s)}vaadin-text-field,vaadin-text-area,vaadin-combo-box,vaadin-date-picker,vaadin-number-field,vaadin-email-field,vaadin-password-field,vaadin-select{width:100%}}@media (max-width:768px){vaadin-dialog-overlay::part(overlay){width:95vw !important;max-width:95vw !important;margin:var(--lumo-space-s)}vaadin-dialog-overlay::part(content){padding:var(--lumo-space-m)}}@media (max-width:480px){.button-layout{flex-direction:column !important;gap:var(--lumo-space-s) !important}.button-layout>vaadin-button{width:100%}}vaadin-app-layout[overlay] vaadin-drawer-toggle{min-width:44px;min-height:44px}vaadin-side-nav-item{min-height:44px}.scroll-container{-webkit-overflow-scrolling:touch;overflow-y:auto}.status-badge{display:inline-flex;align-items:center;padding:var(--lumo-space-xs) var(--lumo-space-s);border-radius:var(--lumo-border-radius-m);font-size:var(--lumo-font-size-s);font-weight:500}.status-badge.success{background-color:var(--lumo-success-color-10pct);color:var(--lumo-success-text-color)}.status-badge.warning{background-color:var(--lumo-warning-color-10pct);color:var(--lumo-warning-text-color)}.status-badge.error{background-color:var(--lumo-error-color-10pct);color:var(--lumo-error-text-color)}.status-badge.info{background-color:var(--lumo-primary-color-10pct);color:var(--lumo-primary-text-color)}@supports (padding-top:env(safe-area-inset-top)){vaadin-app-layout::part(navbar){padding-top:env(safe-area-inset-top);padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}vaadin-app-layout::part(drawer){padding-bottom:env(safe-area-inset-bottom);padding-left:env(safe-area-inset-left)}}.chat-bubble{padding:var(--lumo-space-m);border-radius:var(--lumo-border-radius-l);max-width:80%;white-space:pre-wrap;word-wrap:break-word;line-height:1.5}.chat-bubble.user{background:var(--lumo-primary-color-10pct);margin-left:auto}.chat-bubble.assistant{background:var(--lumo-contrast-5pct);margin-right:auto}.chat-bubble.thinking{font-style:italic;color:var(--lumo-secondary-text-color)}.stat-card{background:var(--lumo-contrast-5pct);border-radius:var(--lumo-border-radius-l);min-width:180px;padding:var(--lumo-space-m)}.stat-card .stat-value{font-size:var(--lumo-font-size-xxl);font-weight:bold}.stat-card .stat-subtitle{font-size:var(--lumo-font-size-xs);color:var(--lumo-secondary-text-color)}.hint-card{padding:var(--lumo-space-s) var(--lumo-space-m);background:var(--lumo-contrast-5pct);border-radius:var(--lumo-border-radius-m);cursor:pointer;max-width:600px;width:100%;text-align:center;font-size:var(--lumo-font-size-s);transition:background 0.15s ease}.hint-card:hover{background:var(--lumo-contrast-10pct)}.model-badge{display:inline-block;font-size:var(--lumo-font-size-xxs);color:var(--lumo-secondary-text-color);padding:2px var(--lumo-space-xs);border-radius:var(--lumo-border-radius-s);background:var(--lumo-contrast-5pct);margin-top:var(--lumo-space-xs)}@media (max-width:600px){.chat-bubble{max-width:95%}}.chat-bubble.assistant h1,.chat-bubble.assistant h2,.chat-bubble.assistant h3,.chat-bubble.assistant h4,.chat-bubble.assistant h5,.chat-bubble.assistant h6{margin:var(--lumo-space-s) 0 var(--lumo-space-xs) 0;line-height:1.3}.chat-bubble.assistant h1{font-size:1.4em}.chat-bubble.assistant h2{font-size:1.25em}.chat-bubble.assistant h3{font-size:1.1em}.chat-bubble.assistant p{margin:var(--lumo-space-xs) 0}.chat-bubble.assistant ul,.chat-bubble.assistant ol{margin:var(--lumo-space-xs) 0;padding-left:1.5em}.chat-bubble.assistant li{margin-bottom:2px}.chat-bubble.assistant blockquote{margin:var(--lumo-space-xs) 0;padding:var(--lumo-space-xs) var(--lumo-space-m);border-left:3px solid var(--lumo-primary-color);background:var(--lumo-contrast-5pct);border-radius:0 var(--lumo-border-radius-s) var(--lumo-border-radius-s) 0}.chat-bubble.assistant pre{background:var(--lumo-contrast-10pct);padding:var(--lumo-space-s);border-radius:var(--lumo-border-radius-m);overflow-x:auto;margin:var(--lumo-space-xs) 0;font-size:var(--lumo-font-size-s);line-height:1.4}.chat-bubble.assistant pre code{background:none;padding:0;border-radius:0;font-family:'JetBrains Mono','Fira Code','Cascadia Code',monospace}.chat-bubble.assistant code{background:var(--lumo-contrast-10pct);padding:2px 5px;border-radius:3px;font-family:'JetBrains Mono','Fira Code','Cascadia Code',monospace;font-size:0.9em}.chat-bubble.assistant table{border-collapse:collapse;width:100%;margin:var(--lumo-space-xs) 0;font-size:var(--lumo-font-size-s)}.chat-bubble.assistant th,.chat-bubble.assistant td{border:1px solid var(--lumo-contrast-20pct);padding:var(--lumo-space-xs) var(--lumo-space-s);text-align:left}.chat-bubble.assistant th{background:var(--lumo-contrast-10pct);font-weight:600}.chat-bubble.assistant tr:nth-child(even){background:var(--lumo-contrast-5pct)}.chat-bubble.assistant a{color:var(--lumo-primary-color);text-decoration:none}.chat-bubble.assistant a:hover{text-decoration:underline}.chat-bubble.assistant hr{border:none;border-top:1px solid var(--lumo-contrast-20pct);margin:var(--lumo-space-s) 0}.chat-bubble.assistant strong{font-weight:600}.chat-bubble.assistant em{font-style:italic}