:root{color-scheme:light dark;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{margin:0}.app{max-width:820px;margin:0 auto;padding:24px;display:flex;flex-direction:column;min-height:100vh}header{display:flex;justify-content:space-between;align-items:center;padding-bottom:16px;border-bottom:1px solid #8884}.brand{display:flex;align-items:center;gap:10px}.logo{height:48px;width:auto}h1{margin:0;font-size:20px}.auth{display:flex;gap:12px;align-items:center;font-size:13px}button{font-family:inherit;padding:6px 14px;border-radius:6px;border:1px solid #8886;background:transparent;cursor:pointer}button:hover:not(:disabled){background:#8881}button:disabled{opacity:.5;cursor:default}.hint{color:#888;margin-top:24px}.chat{flex:1;display:flex;flex-direction:column;padding-top:16px}.turns{flex:1;display:flex;flex-direction:column;gap:24px;padding-bottom:16px}.turn{display:flex;flex-direction:column;gap:8px}.user-msg{align-self:flex-end;background:#0f4c81;color:#fff;padding:8px 12px;border-radius:12px;max-width:70%}.assistant{display:flex;flex-direction:column;gap:8px}.text{line-height:1.45}.text p{margin:.4em 0}.text h1,.text h2,.text h3{margin:.6em 0 .3em}.text h2{font-size:1.1em}.text h3{font-size:1em}.text ul,.text ol{margin:.3em 0;padding-left:1.4em}.text code{background:#8882;padding:1px 4px;border-radius:3px;font-size:.9em}.text pre{background:#8881;padding:10px;border-radius:6px;overflow-x:auto}.text pre code{background:none;padding:0}.text table{border-collapse:collapse;width:100%;margin:.6em 0;font-size:.9em}.text th,.text td{text-align:left;padding:6px 12px;border:1px solid #8884}.text th{background:#0f4c8118;font-weight:600;font-size:.85em;text-transform:uppercase;letter-spacing:.3px}.text tr:nth-child(2n){background:#8881}.text tr:hover{background:#0f4c8110}.text td:not(:first-child){text-align:right}.reasoning{border:1px solid #e0e0e0;border-radius:8px;background:#f8f8f8;overflow:hidden}.reasoning-header{display:flex;align-items:center;gap:8px;width:100%;padding:10px 12px;border:none;border-radius:0;background:transparent;cursor:pointer;font-family:inherit;text-align:left}.reasoning-header:hover{background:#f0f0f0}.reasoning-chevron{font-size:11px;color:#888;transition:transform .15s}.reasoning-chevron.open{transform:rotate(90deg)}.reasoning-label{font-size:13px;font-weight:600;color:#555}.reasoning-count{font-size:12px;color:#999}.reasoning-body{padding:4px 12px 10px 28px;display:flex;flex-direction:column;gap:4px}.reasoning-step{font-size:12px}.reasoning-step summary{display:flex;align-items:center;gap:6px;cursor:pointer;font-family:ui-monospace,monospace;list-style:none}.reasoning-step summary::-webkit-details-marker{display:none}.step-arrow{color:#888}.step-name{color:inherit}.step-check{color:#4caf50}.reasoning-step pre{margin:4px 0 4px 20px;font-size:11px;overflow-x:auto;max-height:200px;overflow-y:auto;background:#fff;padding:6px 8px;border-radius:4px;border:1px solid #eee}pre{margin:8px 0 0;overflow-x:auto;font-size:11px}.thinking{display:flex;align-items:center;gap:8px;color:#888;padding:6px 0}.thinking-dots{display:flex;gap:4px}.thinking-dots span{width:7px;height:7px;border-radius:50%;background:#0f4c81;opacity:.4;animation:pulse 1.4s ease-in-out infinite}.thinking-dots span:nth-child(2){animation-delay:.2s}.thinking-dots span:nth-child(3){animation-delay:.4s}@keyframes pulse{0%,80%,to{opacity:.4;transform:scale(1)}40%{opacity:1;transform:scale(1.3)}}.thinking-label{font-size:13px;animation:fade-text 2s ease-in-out infinite}@keyframes fade-text{0%,to{opacity:.5}50%{opacity:1}}.error{color:#c0392b;font-size:13px}.timing{margin-top:8px;font-size:12px}.timing table{border-collapse:collapse;width:100%;max-width:400px}.timing th,.timing td{text-align:left;padding:3px 10px;border-bottom:1px solid #8883}.timing th{font-weight:600;color:#888;font-size:11px;text-transform:uppercase;letter-spacing:.5px}.timing td:last-child,.timing th:last-child{text-align:right}.timing-total td{font-weight:600;border-top:2px solid #8886;border-bottom:none}.composer{display:flex;gap:8px;padding:12px 0;border-top:1px solid #8884;align-items:flex-end}.composer textarea{flex:1;font:inherit;padding:8px 12px;border-radius:8px;border:1px solid #8886;background:transparent;color:inherit;resize:vertical;min-height:2.8em;line-height:1.4}
