*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--primary: #1a3a5c;--primary-light: #2c5f8a;--accent: #e8a020;--bg: #f4f6fb;--bg-card: #ffffff;--border: #dce5f0;--text: #1e2a3a;--text-muted: #667788;--user-bubble: #1a3a5c;--bot-bubble: #ffffff;--shadow: 0 2px 12px rgba(26,58,92,.08);--header-h: 56px;--input-h: 72px;--sidebar-w: 260px}html,body,#root{height:100%;width:100%;overflow:hidden}body{font-family:Segoe UI,system-ui,-apple-system,sans-serif;background:var(--bg);color:var(--text);-webkit-text-size-adjust:100%}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}.md-answer p{margin-bottom:.45rem;line-height:1.65}.md-answer ul,.md-answer ol{margin:.35rem 0 .35rem 1.1rem}.md-answer li{margin-bottom:.2rem;line-height:1.55}.md-answer strong{font-weight:600}.md-answer table{border-collapse:collapse;width:100%;margin:.4rem 0;font-size:.82rem;display:block;overflow-x:auto}.md-answer th,.md-answer td{border:1px solid var(--border);padding:5px 8px;white-space:nowrap}.md-answer th{background:var(--primary);color:#fff}.md-answer tr:nth-child(2n) td{background:#f0f5fb}@keyframes blink{0%,80%,to{opacity:.2}40%{opacity:1}}.dot{display:inline-block;width:7px;height:7px;margin:0 2px;border-radius:50%;background:var(--primary-light);animation:blink 1.2s infinite}.dot:nth-child(2){animation-delay:.2s}.dot:nth-child(3){animation-delay:.4s}.app-shell{display:flex;height:100dvh;width:100%;overflow:hidden;position:relative}.sidebar{width:var(--sidebar-w);flex-shrink:0;background:var(--primary);color:#fff;display:flex;flex-direction:column;height:100%;overflow:hidden;transition:transform .28s ease;z-index:200}@media (max-width: 767px){.sidebar{position:absolute;top:0;left:0;height:100%;transform:translate(-100%);box-shadow:4px 0 20px #00000040}.sidebar.open{transform:translate(0)}.sidebar-overlay{display:block}}@media (min-width: 768px){.sidebar-overlay{display:none!important}}.sidebar-overlay{display:none;position:absolute;top:0;right:0;bottom:0;left:0;background:#0006;z-index:199}.sidebar-logo{padding:16px 14px 12px;border-bottom:1px solid rgba(255,255,255,.12);flex-shrink:0}.sidebar-logo-row{display:flex;align-items:center;gap:10px;margin-bottom:12px}.logo-icon{width:36px;height:36px;border-radius:9px;background:var(--accent);display:flex;align-items:center;justify-content:center;font-weight:800;font-size:17px;color:#fff;flex-shrink:0}.sidebar-info{padding:12px 14px;border-bottom:1px solid rgba(255,255,255,.12);flex-shrink:0;font-size:11.5px}.sidebar-suggestions{padding:12px 14px;flex:1;overflow-y:auto}.suggestion-btn{display:block;width:100%;text-align:left;background:#ffffff12;border:1px solid rgba(255,255,255,.12);border-radius:8px;padding:7px 10px;margin-bottom:5px;color:#fff;font-size:11.5px;cursor:pointer;line-height:1.4;transition:background .15s;font-family:inherit}.suggestion-btn:hover{background:#ffffff24}.sidebar-footer{padding:10px 14px;border-top:1px solid rgba(255,255,255,.1);font-size:10px;opacity:.4;flex-shrink:0}.main{flex:1;display:flex;flex-direction:column;overflow:hidden;min-width:0}.header{height:var(--header-h);background:#fff;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding:0 14px;gap:8px;flex-shrink:0;box-shadow:0 1px 4px #0000000d}.header-left{display:flex;align-items:center;gap:10px;min-width:0}.header-title{font-weight:700;font-size:15px;color:var(--primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.header-sub{font-size:11px;color:var(--text-muted);white-space:nowrap}@media (max-width: 480px){.header-sub{display:none}.header-title{font-size:14px}}.header-right{display:flex;align-items:center;gap:6px;flex-shrink:0}.menu-btn{background:none;border:none;cursor:pointer;font-size:20px;color:var(--primary-light);padding:4px 6px;border-radius:6px;line-height:1;flex-shrink:0}.clear-btn{background:none;border:1px solid var(--border);border-radius:8px;padding:5px 10px;cursor:pointer;font-size:11.5px;color:var(--text-muted);white-space:nowrap;font-family:inherit;transition:background .15s}.clear-btn:hover{background:var(--bg)}.status-dot{width:7px;height:7px;border-radius:50%;background:#43a047;flex-shrink:0}.lang-badge{display:flex;align-items:center;gap:4px;background:#f0f5fb;border:1px solid var(--border);border-radius:20px;padding:3px 8px;font-size:11.5px;color:var(--primary);white-space:nowrap}@media (max-width: 400px){.lang-badge{display:none}.clear-btn{padding:5px 7px;font-size:11px}}.messages{flex:1;overflow-y:auto;padding:16px 14px;background:var(--bg);-webkit-overflow-scrolling:touch}@media (min-width: 600px){.messages{padding:20px 24px}}.msg-row{display:flex;align-items:flex-start;gap:8px;margin-bottom:18px}.msg-row.user,.msg-row.rtl-bot{flex-direction:row-reverse}.msg-row.rtl-usr{flex-direction:row}.avatar{width:30px;height:30px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:11px;color:#fff;margin-top:2px}.avatar.user{background:var(--primary)}.avatar.bot{background:var(--accent)}.msg-content{max-width:80%;display:flex;flex-direction:column}@media (max-width: 480px){.msg-content{max-width:88%}}.msg-content.user{align-items:flex-end}.msg-content.bot{align-items:flex-start}.msg-content.rtl-bot{align-items:flex-end}.msg-content.rtl-usr{align-items:flex-start}.scope-badge{display:inline-flex;align-items:center;gap:5px;border-radius:5px;padding:2px 8px;margin-bottom:5px;font-size:10.5px;font-weight:600}.scope-badge.in{background:#e8f5e9;border:1px solid #66bb6a;color:#2e7d32}.scope-badge.out{background:#fff3e0;border:1px solid #f59e0b;color:#b45309}.bubble{padding:10px 13px;font-size:13.5px;line-height:1.6;word-break:break-word}.bubble.user{background:var(--user-bubble);color:#fff;border-radius:16px 4px 16px 16px;box-shadow:var(--shadow)}.bubble.bot{background:var(--bot-bubble);color:var(--text);border:1px solid var(--border);border-radius:4px 16px 16px;box-shadow:var(--shadow)}.msg-time{font-size:10px;color:var(--text-muted);margin-top:3px}.input-area{background:#fff;border-top:1px solid var(--border);padding:10px 14px 14px;flex-shrink:0}@media (min-width: 600px){.input-area{padding:12px 24px 16px}}.input-row{display:flex;align-items:flex-end;gap:8px;background:var(--bg);border:1.5px solid var(--border);border-radius:14px;padding:7px 7px 7px 13px}.input-row:focus-within{border-color:var(--primary-light)}.input-ta{flex:1;border:none;background:transparent;resize:none;outline:none;font-size:14px;line-height:1.5;color:var(--text);max-height:100px;overflow-y:auto;font-family:inherit;min-height:22px}.send-btn{width:36px;height:36px;border-radius:10px;border:none;display:flex;align-items:center;justify-content:center;font-size:16px;flex-shrink:0;cursor:pointer;transition:background .2s,transform .1s;color:#fff}.send-btn:active{transform:scale(.95)}.send-btn.active{background:var(--primary)}.send-btn.inactive{background:var(--border);cursor:not-allowed}.input-disclaimer{font-size:10.5px;color:var(--text-muted);margin-top:6px;text-align:center;line-height:1.4}.lang-selector{position:relative}.lang-trigger{display:flex;align-items:center;gap:6px;background:#ffffff1a;border:1px solid rgba(255,255,255,.25);border-radius:8px;padding:6px 9px;color:#fff;cursor:pointer;font-size:12px;font-family:inherit;transition:background .15s;width:100%}.lang-trigger:hover{background:#ffffff2e}.lang-dropdown{position:absolute;top:110%;left:0;z-index:999;background:#1a3a5c;border:1px solid rgba(255,255,255,.2);border-radius:10px;width:200px;max-height:280px;overflow-y:auto;box-shadow:0 8px 24px #00000059}.lang-option{display:flex;align-items:center;gap:9px;width:100%;padding:8px 12px;border:none;background:transparent;color:#fff;cursor:pointer;font-size:12.5px;text-align:left;font-family:inherit;transition:background .1s}.lang-option:hover{background:#ffffff1f}.lang-option.selected{background:#ffffff26}.lang-option-names{display:flex;flex-direction:column}.lang-option-native{font-size:12.5px;line-height:1.3}.lang-option-en{font-size:10px;opacity:.55}.lang-check{margin-left:auto;color:var(--accent);font-size:13px}@supports (padding-bottom: env(safe-area-inset-bottom)){.input-area{padding-bottom:calc(14px + env(safe-area-inset-bottom))}}
