@import "https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&family=Plus+Jakarta+Sans:wght@500;600;700;800&display=swap";@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap";*,:before,:after{box-sizing:border-box}html,body,#root{min-height:100%}html{scroll-behavior:smooth}body{color:#2c3432;background:#eef5f1;margin:0;font-family:Manrope,system-ui,sans-serif;overflow-x:hidden}button,textarea,input{font:inherit}button{cursor:pointer}img,svg{max-width:100%;display:block}:root{--white:#fff;--bg:#f4f6f9;--surface:#fff;--border:#e5e9f0;--border-focus:#22c55e;--accent:#22c55e;--accent-dark:#16a34a;--accent-light:#dcfce7;--accent-send:#22c55e;--user-bg:#22c55e;--user-text:#fff;--bot-bg:#f0fdf4;--bot-border:#bbf7d0;--text:#1a1a2e;--text-2:#52525b;--text-3:#a1a1aa;--text-4:#d4d4d8;--online:#22c55e;--offline:#ef4444;--checking:#f59e0b;--radius-xl:20px;--radius-lg:14px;--radius-md:10px;--radius-sm:7px;--radius-pill:999px;--shadow-sm:0 1px 3px #0000000f, 0 1px 2px #0000000a;--shadow-md:0 4px 12px #00000014;--shadow-lg:0 8px 24px #0000001a;--font:"Inter", system-ui, sans-serif;--ease:.18s ease}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%}body{font-family:var(--font);background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased}.app-wrapper{background:var(--surface);border-left:1px solid var(--border);border-right:1px solid var(--border);max-width:780px;height:100vh;box-shadow:var(--shadow-lg);flex-direction:column;margin:0 auto;display:flex}.chat-header{background:var(--white);border-bottom:1px solid var(--border);box-shadow:var(--shadow-sm);flex-shrink:0;justify-content:space-between;align-items:center;padding:14px 20px;display:flex}.header-left{align-items:center;gap:12px;display:flex}.header-icon{border-radius:var(--radius-md);background:var(--accent-light);border:1.5px solid var(--bot-border);flex-shrink:0;justify-content:center;align-items:center;width:42px;height:42px;font-size:1.4rem;display:flex}.header-info h1{color:var(--text);letter-spacing:-.01em;font-size:1rem;font-weight:700;line-height:1.2}.header-subtitle{color:var(--text-2);margin-top:1px;font-size:.72rem;font-weight:400}.header-right{align-items:center;gap:10px;display:flex}.status-dot{border-radius:50%;flex-shrink:0;width:9px;height:9px}.status-dot.ok{background:var(--online);animation:2s infinite pulse}.status-dot.checking{background:var(--checking);animation:1.2s infinite pulse}@keyframes pulse{0%,to{opacity:1}50%{opacity:.45}}.clear-btn{border:1.5px solid var(--border);color:var(--text-2);border-radius:var(--radius-pill);font-size:.78rem;font-family:var(--font);cursor:pointer;transition:all var(--ease);background:0 0;padding:5px 13px;font-weight:500}.clear-btn:hover{border-color:var(--accent);color:var(--accent-dark);background:var(--accent-light)}.chat-main{scroll-behavior:smooth;background:var(--bg);flex-direction:column;flex:1;gap:0;padding:24px 20px 12px;display:flex;overflow-y:auto}.chat-main::-webkit-scrollbar{width:4px}.chat-main::-webkit-scrollbar-track{background:0 0}.chat-main::-webkit-scrollbar-thumb{background:var(--text-4);border-radius:4px}.messages-container{flex-direction:column;flex:1;gap:14px;display:flex}.message-row{align-items:flex-end;gap:9px;animation:.25s both fadeUp;display:flex}.message-row.user{flex-direction:row-reverse}@keyframes fadeUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.avatar{border:1.5px solid var(--border);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:1rem;display:flex}.bot-avatar{background:var(--accent-light);border-color:var(--bot-border)}.user-avatar{background:var(--surface);border-color:var(--border)}.bubble{border-radius:var(--radius-lg);max-width:72%;box-shadow:var(--shadow-sm);padding:11px 15px;font-size:.875rem;line-height:1.7}.bubble-user{background:var(--user-bg);color:var(--user-text);border-bottom-right-radius:4px;font-weight:450}.bubble-bot{background:var(--white);color:var(--text);border:1px solid var(--border);border-bottom-left-radius:4px}.msg-body{flex-direction:column;gap:8px;display:flex}.msg-p{margin:0;line-height:1.7}.msg-ul,.msg-ol{flex-direction:column;gap:4px;margin:0;padding-left:18px;display:flex}.msg-ul{list-style:outside}.msg-ol{list-style:decimal}.msg-ul li,.msg-ol li{padding-left:2px;line-height:1.65}.msg-body.typing:after{content:"▍";color:var(--accent);vertical-align:middle;margin-left:1px;font-size:.85em;animation:.7s step-end infinite blink-cursor;display:inline-block}@keyframes blink-cursor{0%,to{opacity:1}50%{opacity:0}}.msg-body strong,.msg-p strong{color:var(--accent-dark);font-weight:600}.msg-heading{color:var(--text);border-bottom:1.5px solid var(--bot-border);margin:0;padding-bottom:2px;font-size:.875rem;font-weight:700}.msg-quote{border-left:3px solid var(--accent);background:var(--accent-light);border-radius:0 var(--radius-sm) var(--radius-sm) 0;flex-direction:column;gap:4px;padding:6px 10px;display:flex}.msg-quote .msg-p,.msg-quote .msg-ul,.msg-quote .msg-ol{font-size:.85rem}.sources-detail{border-top:1px solid var(--border);margin-top:10px;padding-top:9px}.sources-detail summary{color:var(--accent-dark);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:4px;font-size:.76rem;font-weight:600;list-style:none;display:flex}.sources-detail summary::-webkit-details-marker{display:none}.sources-detail[open] summary{margin-bottom:8px}.sources-list{flex-direction:column;gap:5px;list-style:none;display:flex}.sources-list li{background:var(--accent-light);border-radius:var(--radius-sm);border-left:3px solid var(--accent);flex-direction:column;gap:2px;padding:6px 9px;display:flex}.source-badge{text-transform:uppercase;letter-spacing:.05em;color:var(--accent-dark);font-size:.68rem;font-weight:700}.source-q{color:var(--text-2);font-size:.77rem}.typing-dots{align-items:center;gap:5px;padding:3px 2px;display:flex}.typing-dots span{background:var(--text-3);border-radius:50%;width:7px;height:7px;animation:1.1s ease-in-out infinite dot-bounce}.typing-dots span:nth-child(2){animation-delay:.18s}.typing-dots span:nth-child(3){animation-delay:.36s}@keyframes dot-bounce{0%,80%,to{opacity:.4;transform:translateY(0)}40%{opacity:1;transform:translateY(-5px)}}.error-banner{color:#b91c1c;border-radius:var(--radius-md);background:#fef2f2;border:1px solid #fecaca;padding:9px 13px;font-size:.82rem;font-weight:500;animation:.25s fadeUp}.suggestions-label{color:var(--text-2);margin-bottom:8px;font-size:.75rem;font-weight:500}.chips-row{flex-wrap:wrap;gap:7px;display:flex}.chip{background:var(--white);border:1.5px solid var(--border);color:var(--text-2);border-radius:var(--radius-pill);font-size:.79rem;font-family:var(--font);cursor:pointer;transition:all var(--ease);text-align:left;box-shadow:var(--shadow-sm);padding:6px 13px;font-weight:500}.chip:hover:not(:disabled){border-color:var(--accent);color:var(--accent-dark);background:var(--accent-light);box-shadow:var(--shadow-md);transform:translateY(-1px)}.chip:disabled{opacity:.5;cursor:not-allowed}.chat-footer{background:var(--white);border-top:1px solid var(--border);flex-shrink:0;padding:12px 16px 14px}.input-wrapper{background:var(--bg);border:1.5px solid var(--border);border-radius:var(--radius-xl);transition:border-color var(--ease), box-shadow var(--ease);align-items:flex-end;gap:9px;padding:8px 8px 8px 16px;display:flex}.input-wrapper:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px #22c55e1f}.chat-input{color:var(--text);font-family:var(--font);resize:none;background:0 0;border:none;outline:none;flex:1;max-height:110px;font-size:.875rem;line-height:1.5;overflow-y:auto}.send-btn{background:var(--accent-send);color:#fff;cursor:pointer;width:38px;height:38px;transition:all var(--ease);border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:1rem;display:flex;box-shadow:0 2px 8px #22c55e59}.send-btn:hover:not(:disabled){background:var(--accent-dark);transform:scale(1.06)}.send-btn:disabled{background:var(--text-4);box-shadow:none;cursor:not-allowed}.send-btn.loading{animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.footer-note{text-align:center;color:var(--text-3);letter-spacing:.01em;margin-top:8px;font-size:.7rem}@media (width<=600px){.app-wrapper{max-width:100%;box-shadow:none;border:none}.bubble{max-width:88%}}:root{--bg:#eef5f1;--surface:#f7faf8;--surface-container-lowest:#f7faf8b8;--surface-container-low:#eef5f0;--surface-container:#e3eee8;--surface-container-high:#d6e5dd;--surface-container-highest:#fff;--primary:#2d6a52;--primary_dim:#1f5d46;--primary_container:#b1f0d1;--on_primary:#f8fff9;--on_surface:#2c3432;--on_surface_variant:#58615f;--outline_variant:#abb4b138;--shadow-aura:0 12px 32px #2c34320f;--shadow-soft:0 18px 48px #2c343214;--font-display:"Plus Jakarta Sans", system-ui, sans-serif;--font-body:"Manrope", system-ui, sans-serif}.app-shell{min-height:100vh;color:var(--on_surface);background:radial-gradient(circle at 0 0,#b1f0d194,#0000 34%),radial-gradient(circle at 82% 14%,#2d6a521f,#0000 24%),linear-gradient(#f9fcfa 0%,#edf4ef 100%);padding:28px;position:relative;overflow:hidden}.ambient{filter:blur(18px);pointer-events:none;opacity:.9;border-radius:999px;position:absolute}.ambient-one{background:#b1f0d17a;width:260px;height:260px;top:-80px;left:-90px}.ambient-two{background:#2d6a5214;width:220px;height:220px;top:140px;right:-70px}.experience{z-index:1;grid-template-columns:minmax(280px,.95fr) minmax(380px,1.05fr);align-items:stretch;gap:28px;max-width:1400px;margin:0 auto;display:grid;position:relative}.hero-panel,.chat-card{border-radius:28px}.hero-panel{box-shadow:var(--shadow-aura);background:linear-gradient(#f7faf8eb,#e6efe9d1);flex-direction:column;justify-content:space-between;min-height:100%;padding:clamp(28px,4vw,44px);display:flex}.eyebrow{text-transform:uppercase;letter-spacing:.12em;color:var(--primary);font-size:.74rem;font-weight:700;font-family:var(--font-display);margin:0 0 14px}.hero-panel h1{font-family:var(--font-display);letter-spacing:-.03em;color:var(--on_surface);max-width:10.5ch;margin:0;font-size:clamp(2.5rem,4.4vw,4.5rem);line-height:.98}.hero-copy{max-width:54ch;font-family:var(--font-body);color:var(--on_surface_variant);margin:18px 0 0;font-size:clamp(1rem,1.2vw,1.1rem);line-height:1.8}.hero-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:30px;display:grid}.stat-card{box-shadow:var(--shadow-aura);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#ffffff9e;border-radius:22px;padding:18px 18px 20px}.stat-card strong,.stat-card p,.stat-kicker{display:block}.stat-kicker{font-family:var(--font-display);letter-spacing:.12em;color:var(--primary);margin-bottom:14px;font-size:.76rem;font-weight:800}.stat-card strong{font-family:var(--font-display);color:var(--on_surface);font-size:1rem;line-height:1.35}.stat-card p{font-family:var(--font-body);color:var(--on_surface_variant);margin-top:8px;font-size:.92rem;line-height:1.65}.hero-chips{flex-wrap:wrap;gap:10px;margin-top:28px;display:flex}.hero-chip{color:var(--primary_dim);font-family:var(--font-body);box-shadow:var(--shadow-aura);background:#ffffff94;border-radius:999px;padding:10px 14px;font-size:.86rem;font-weight:600}.chat-card{background:var(--surface-container-lowest);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);box-shadow:var(--shadow-soft);flex-direction:column;display:flex;overflow:hidden}.chat-header{box-shadow:none;background:#f7faf8c7;border-bottom:none;justify-content:space-between;align-items:center;gap:20px;padding:22px 24px 18px;display:flex}.header-left{align-items:center;gap:14px}.header-icon{background:linear-gradient(135deg, var(--primary), var(--primary_dim));width:52px;height:52px;color:var(--on_primary);border:none;border-radius:18px;font-size:1.2rem;box-shadow:0 10px 24px #2d6a522e}.header-info h2{font-family:var(--font-display);letter-spacing:-.02em;color:var(--on_surface);margin:0;font-size:1.02rem}.header-kicker{font-family:var(--font-display);letter-spacing:.14em;text-transform:uppercase;color:var(--primary);margin:0 0 3px;font-size:.72rem}.header-subtitle{color:var(--on_surface_variant);margin-top:4px;font-size:.88rem}.header-right{gap:12px}.status-chip{color:var(--on_surface_variant);box-shadow:var(--shadow-aura);background:#ffffffb8;border-radius:999px;align-items:center;gap:8px;padding:10px 14px;font-size:.82rem;font-weight:700;display:inline-flex}.status-chip.ok{color:var(--primary_dim)}.status-chip.error{color:#915e52}.status-chip.checking{color:#8a6b18}.status-dot{border:none;border-radius:50%;width:9px;height:9px}.status-dot.ok{background:#3db16f}.status-dot.error{background:#c67c67}.status-dot.checking{background:#d8a93c}.clear-btn{color:var(--on_surface);font-family:var(--font-display);box-shadow:var(--shadow-aura);background:#ffffff9e;border:none;border-radius:999px;padding:10px 16px;font-size:.82rem;font-weight:700}.clear-btn:hover{color:var(--primary_dim);background:#ffffffe0}.chat-main{background:linear-gradient(#fff3,#edf4efd1);flex-direction:column;flex:1;gap:18px;padding:0 24px 24px;display:flex;overflow:hidden}.messages-container{flex-direction:column;flex:1;gap:16px;min-height:460px;padding:18px 0 6px;display:flex;overflow-y:auto}.messages-container::-webkit-scrollbar{width:4px}.messages-container::-webkit-scrollbar-thumb{background:#58615f38;border-radius:999px}.avatar{width:36px;height:36px;color:var(--primary_dim);box-shadow:var(--shadow-aura);background:#ffffffb3;border:none}.bubble{max-width:78%;box-shadow:var(--shadow-aura);font-family:var(--font-body);border:none;border-radius:22px;padding:14px 16px;line-height:1.75}.bubble-user{background:linear-gradient(135deg, var(--primary), var(--primary_dim));color:var(--on_primary)}.msg-body{gap:10px}.msg-p,.msg-ul li,.msg-ol li{font-family:var(--font-body);color:inherit}.msg-p{line-height:1.75}.msg-heading{color:var(--primary_dim);border-bottom:none;padding-bottom:0}.msg-body strong,.msg-p strong{color:var(--primary_dim)}.msg-quote{background:#b1f0d14d;border-left:none;border-radius:16px;padding:12px 14px}.error-banner{color:#915e52;box-shadow:var(--shadow-aura);background:#c67c6726;border:none}.suggestions{padding:0}.suggestions-label{font-family:var(--font-display);letter-spacing:.12em;text-transform:uppercase;color:var(--on_surface_variant);margin-bottom:10px;font-size:.74rem}.chips-row{gap:10px}.chip{color:var(--primary_dim);box-shadow:var(--shadow-aura);background:#ffffffb8;border:none}.chip:hover:not(:disabled){background:var(--surface-container-high);color:var(--primary_dim);transform:translateY(-1px)}.chat-footer{background:0 0;border-top:none;padding:0 0 4px}.input-wrapper{border:1px solid var(--outline_variant);box-shadow:var(--shadow-aura);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#ffffffb8;border-radius:24px;padding:10px 10px 10px 18px}.input-wrapper:focus-within{box-shadow:0 0 0 4px #b1f0d159, var(--shadow-soft);border-color:#2d6a523d}.chat-input{font-family:var(--font-body);color:var(--on_surface)}.chat-input::placeholder{color:var(--on_surface_variant)}.send-btn{background:linear-gradient(135deg, var(--primary), var(--primary_dim));border-radius:999px;width:44px;height:44px;box-shadow:0 12px 26px #2d6a522e}.send-btn:hover:not(:disabled){transform:translateY(-1px)}.footer-note{display:none}@media (width<=1120px){.experience{grid-template-columns:1fr}.hero-panel h1{max-width:14ch}.messages-container{min-height:380px}}@media (width<=720px){.app-shell{padding:14px}.hero-panel,.chat-card{border-radius:24px}.hero-stats{grid-template-columns:1fr}.chat-header,.chat-main{padding-left:16px;padding-right:16px}.chat-header{flex-direction:column;align-items:flex-start}.header-right{flex-wrap:wrap;justify-content:space-between;width:100%}.bubble{max-width:92%}.messages-container{min-height:320px}}.app-shell{background:radial-gradient(circle at 18% 14%,#b1f0d161,#0000 22%),linear-gradient(#f7fbf8 0%,#eef5f1 100%);min-height:100vh;padding:0}.topbar{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#f9fcfae6;justify-content:space-between;align-items:center;padding:18px 28px;display:flex;box-shadow:0 1px #2c34320a}.brand-mark{align-items:center;gap:12px;display:inline-flex}.brand-mark-icon{width:32px;height:32px;color:var(--primary_dim);background:#b1f0d1b3;border-radius:12px;justify-content:center;align-items:center;font-size:.95rem;display:inline-flex}.brand-mark-text{font-family:var(--font-display);color:var(--primary_dim);letter-spacing:-.02em;font-size:1.1rem;font-weight:800}.topbar-avatar{background:#58615f14;border-radius:50%;width:34px;height:34px}.dashboard{grid-template-columns:minmax(250px,.72fr) minmax(0,1.82fr);gap:28px;max-width:1440px;margin:0 auto;padding:30px 28px 28px;display:grid}.sidebar{flex-direction:column;justify-content:space-between;min-height:calc(100vh - 116px);padding-top:10px;display:flex}.prompt-rail{flex-direction:column;gap:18px;display:flex}.rail-kicker{text-transform:uppercase;letter-spacing:.16em;color:var(--on_surface_variant);margin:0;font-size:.72rem;font-weight:800}.prompt-rail h1{max-width:11ch;font-family:var(--font-display);letter-spacing:-.04em;color:var(--primary_dim);margin:0;font-size:clamp(2rem,3.1vw,3.1rem);line-height:1.02}.prompt-list{flex-direction:column;gap:14px;display:flex}.prompt-card{width:100%;box-shadow:var(--shadow-aura);color:var(--on_surface);text-align:left;font-family:var(--font-body);background:#f8faf8c2;border:none;border-radius:24px;justify-content:space-between;align-items:center;gap:16px;padding:18px 18px 18px 20px;font-size:.98rem;font-weight:700;line-height:1.4;display:flex}.prompt-card:hover:not(:disabled){background:#fffffff2;transform:translateY(-1px)}.prompt-arrow{color:var(--primary_dim);flex-shrink:0;font-size:1.45rem;line-height:1}.side-note{box-shadow:var(--shadow-aura);background:#f7faf8db;border-radius:22px;flex-direction:column;gap:14px;max-width:250px;padding:20px;display:flex}.side-note-quote{font-family:var(--font-body);color:var(--on_surface_variant);margin:0;font-size:.88rem;line-height:1.7}.side-note-footer{align-items:center;gap:10px;display:inline-flex}.side-note-badge{background:var(--primary_dim);width:34px;height:34px;color:var(--on_primary);border-radius:50%;justify-content:center;align-items:center;display:inline-flex;box-shadow:0 10px 24px #2d6a522e}.side-note-label{font-family:var(--font-display);color:var(--primary_dim);font-size:.82rem;font-weight:800}.chat-card{background:#f7faf8d1;border-radius:32px;min-height:calc(100vh - 116px);overflow:hidden;box-shadow:0 16px 42px #2c343212}.chat-header{background:#eef4efe0;padding:18px 22px 16px}.header-icon{border-radius:50%;width:44px;height:44px;font-size:1.05rem}.header-info h2{font-family:var(--font-display);color:var(--on_surface);margin:0;font-size:1.18rem;line-height:1.1}.header-subtitle{margin-top:2px;font-size:.78rem}.chat-main{background:#ffffffc7;padding:22px 22px 18px}.messages-container{min-height:520px;padding:4px 0 8px}.message-row{gap:14px}.message-row.user{margin-left:auto}.bubble{border-radius:24px;max-width:min(74%,620px);padding:16px 18px;box-shadow:0 10px 26px #2c343212}.bubble-bot{color:var(--on_surface);background:#d8e0dc}.bubble-user{color:#225744;background:#a6f0c8}.avatar{width:28px;height:28px;color:var(--primary_dim);background:#b1f0d1d6;font-size:.88rem}.msg-body,.msg-p,.msg-ul,.msg-ol{font-size:.95rem}.msg-heading{font-size:.92rem;font-weight:800}.msg-quote{background:#ffffff59}.chat-footer{background:0 0;padding:14px 0 0}.input-wrapper{background:#f3f7f4f5;border:none;border-radius:999px;padding:12px 12px 12px 18px;box-shadow:0 10px 26px #2c34320f}.input-icon{width:24px;height:24px;color:var(--primary_dim);flex-shrink:0;justify-content:center;align-items:center;font-size:.98rem;display:inline-flex}.input-icon.muted{color:#2c34328f}.chat-input{min-height:24px;padding:3px 2px;font-size:.96rem}.send-btn{width:44px;height:44px;box-shadow:0 12px 24px #2d6a5238}.suggestions,.footer-note{display:none}.status-chip{background:#ffffff8f}@media (width<=1180px){.dashboard{grid-template-columns:1fr}.sidebar,.chat-card{min-height:auto}.side-note{max-width:none}}@media (width<=720px){.topbar,.dashboard,.chat-header,.chat-main{padding-left:16px;padding-right:16px}.topbar{padding-top:14px;padding-bottom:14px}.chat-header{flex-direction:column;align-items:flex-start}.header-right{flex-wrap:wrap;justify-content:space-between;width:100%}.bubble{max-width:90%}}.auth-wrapper{background:linear-gradient(135deg,#022c22 0%,#064e3b 50%,#022c22 100%);justify-content:center;align-items:center;min-height:100vh;padding:20px;display:flex;position:relative;overflow:hidden}.auth-wrapper:before{content:"";background:radial-gradient(circle,#d9770626 0%,#0000 70%);border-radius:50%;width:300px;height:300px;position:absolute;top:-100px;right:-50px}.auth-wrapper:after{content:"";background:radial-gradient(circle,#22c55e1f 0%,#0000 70%);border-radius:50%;width:400px;height:400px;position:absolute;bottom:-150px;left:-100px}.auth-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:var(--radius-xl);z-index:10;background:#fffffff2;border:1px solid #fff3;flex-direction:column;width:100%;max-width:440px;padding:40px;display:flex;box-shadow:0 20px 40px #0000004d}.auth-brand{justify-content:center;align-items:center;gap:10px;margin-bottom:24px;display:flex}.auth-brand-icon{font-size:2rem}.auth-brand-text{background:linear-gradient(135deg, var(--accent-dark) 0%, #d97706 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;font-size:1.8rem;font-weight:700}.auth-title{color:var(--text);text-align:center;margin-bottom:8px;font-size:1.4rem;font-weight:600}.auth-subtitle{color:var(--text-2);text-align:center;margin-bottom:32px;font-size:.9rem}.auth-form{flex-direction:column;gap:20px;display:flex}.auth-group{flex-direction:column;gap:6px;display:flex}.auth-group label{color:var(--text-2);font-size:.85rem;font-weight:500}.auth-input-wrapper{align-items:center;display:flex;position:relative}.auth-input{border:1px solid var(--border);border-radius:var(--radius-md);width:100%;transition:var(--ease);color:var(--text);outline:none;padding:12px 16px;font-size:.95rem}.auth-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-light)}.auth-submit-btn{background:var(--accent);color:#fff;border-radius:var(--radius-md);cursor:pointer;width:100%;transition:var(--ease);border:none;justify-content:center;align-items:center;gap:8px;margin-top:10px;padding:14px;font-size:1rem;font-weight:600;display:flex;box-shadow:0 4px 12px #22c55e33}.auth-submit-btn:hover:not(:disabled){background:var(--accent-dark);box-shadow:0 6px 16px #16a34a4d}.auth-submit-btn:disabled{background:var(--text-4);cursor:not-allowed;box-shadow:none}.auth-toggle-hint{text-align:center;color:var(--text-2);margin-top:24px;font-size:.85rem}.auth-toggle-btn{color:var(--accent-dark);cursor:pointer;background:0 0;border:none;padding:0 4px;font-weight:600;text-decoration:underline}.auth-toggle-btn:hover{color:var(--accent)}.auth-note{border-radius:var(--radius-md);color:#b45309;background:#d9770614;border:1px dashed #d977064d;margin-top:24px;padding:12px 16px;font-size:.8rem;line-height:1.4}.auth-note strong{font-weight:600}.auth-error{border-radius:var(--radius-md);color:#ef4444;text-align:center;background:#fef2f2;border:1px solid #fee2e2;padding:10px 14px;font-size:.85rem}.sidebar-header{border-bottom:1px solid var(--border);background:var(--white);justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.user-profile{flex-direction:column;gap:2px;display:flex}.user-profile-name{color:var(--text);white-space:nowrap;text-overflow:ellipsis;max-width:120px;font-size:.95rem;font-weight:600;overflow:hidden}.user-profile-role{color:#d97706;text-transform:uppercase;letter-spacing:.5px;font-size:.75rem;font-weight:500}.logout-icon-btn{border:1px solid var(--border);cursor:pointer;width:32px;height:32px;color:var(--text-2);transition:var(--ease);background:0 0;border-radius:50%;justify-content:center;align-items:center;display:flex}.logout-icon-btn:hover{color:#ef4444;background:#fee2e2;border-color:#fca5a5}.new-chat-button-container{padding:16px 20px 8px}.new-chat-btn{background:var(--white);border:1.5px dashed var(--accent);width:100%;color:var(--accent-dark);border-radius:var(--radius-md);cursor:pointer;transition:var(--ease);justify-content:center;align-items:center;gap:8px;padding:12px;font-size:.9rem;font-weight:600;display:flex}.new-chat-btn:hover{background:var(--accent-light);border-color:var(--accent-dark);color:var(--accent-dark)}.session-rail{flex-direction:column;flex:1;gap:8px;padding:12px 20px;display:flex;overflow-y:auto}.session-rail-title{color:var(--text-3);text-transform:uppercase;letter-spacing:.5px;margin-bottom:4px;font-size:.75rem;font-weight:600}.session-list{flex-direction:column;gap:6px;max-height:280px;padding-right:2px;display:flex;overflow-y:auto}.session-list::-webkit-scrollbar{width:4px}.session-rail::-webkit-scrollbar{width:4px}.session-list::-webkit-scrollbar-thumb{background:var(--text-4);border-radius:var(--radius-pill)}.session-rail::-webkit-scrollbar-thumb{background:var(--text-4);border-radius:var(--radius-pill)}.session-item{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-md);cursor:pointer;transition:var(--ease);text-align:left;justify-content:space-between;align-items:center;padding:10px 12px;display:flex;position:relative}.session-item:hover{border-color:var(--accent);background:var(--white)}.session-item.active{background:var(--accent-light);border-color:var(--accent);box-shadow:var(--shadow-sm)}.session-info{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.session-title{color:var(--text);white-space:nowrap;text-overflow:ellipsis;font-size:.85rem;font-weight:500;overflow:hidden}.session-item.active .session-title{color:var(--accent-dark);font-weight:600}.session-date{color:var(--text-3);font-size:.7rem}.session-delete-btn{cursor:pointer;color:var(--text-3);border-radius:var(--radius-sm);transition:var(--ease);opacity:0;background:0 0;border:none;justify-content:center;align-items:center;padding:4px;display:flex}.session-item:hover .session-delete-btn{opacity:1}.session-delete-btn:hover{color:#ef4444;background:#ef44441a}.admin-shell{background:var(--bg);flex-direction:column;height:100vh;display:flex}.admin-topbar{color:#fff;box-shadow:var(--shadow-md);background:#064e3b;justify-content:space-between;align-items:center;padding:16px 32px;display:flex}.admin-brand{align-items:center;gap:12px;display:flex}.admin-brand-icon{font-size:1.6rem}.admin-brand-text{letter-spacing:.5px;font-size:1.3rem;font-weight:700}.admin-badge{color:#fff;border-radius:var(--radius-pill);text-transform:uppercase;vertical-align:middle;background:#d97706;margin-left:8px;padding:2px 8px;font-size:.7rem;font-weight:600}.admin-user-menu{align-items:center;gap:16px;display:flex}.admin-username{color:#ffffffe6;font-size:.95rem;font-weight:500}.admin-logout-btn{color:#fff;border-radius:var(--radius-md);cursor:pointer;transition:var(--ease);background:#ffffff26;border:1px solid #fff3;padding:8px 16px;font-size:.85rem;font-weight:500}.admin-logout-btn:hover{background:#ef4444cc;border-color:#ef4444}.admin-container{flex-direction:column;flex:1;gap:32px;width:100%;max-width:1200px;margin:0 auto;padding:32px;display:flex;overflow-y:auto}.admin-metrics-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px;display:grid}.admin-metric-card{background:var(--white);border:1px solid var(--border);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);transition:var(--ease);align-items:center;gap:20px;padding:24px;display:flex}.admin-metric-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.metric-icon-wrapper{border-radius:var(--radius-lg);background:var(--accent-light);width:56px;height:56px;color:var(--accent-dark);justify-content:center;align-items:center;font-size:1.5rem;display:flex}.metric-icon-wrapper.yellow{color:#d97706;background:#d977061a}.metric-info{flex-direction:column;display:flex}.metric-value{color:var(--text);font-size:2.2rem;font-weight:700;line-height:1.1}.metric-label{color:var(--text-2);margin-top:4px;font-size:.9rem}.dataset-manager-card{background:var(--white);border:1px solid var(--border);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);flex-direction:column;display:flex;overflow:hidden}.card-header-actions{border-bottom:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:24px 32px;display:flex}.card-header-actions h2{color:var(--text);font-size:1.25rem;font-weight:600}.dataset-actions{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.search-input-wrapper{align-items:center;display:flex;position:relative}.search-icon{color:var(--text-3);font-size:.9rem;position:absolute;left:12px}.search-bar{border:1px solid var(--border);border-radius:var(--radius-md);min-width:260px;transition:var(--ease);outline:none;padding:10px 16px 10px 36px;font-size:.9rem}.search-bar:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-light)}.add-dataset-btn{background:var(--accent);color:#fff;border-radius:var(--radius-md);cursor:pointer;transition:var(--ease);border:none;align-items:center;gap:8px;padding:10px 20px;font-size:.9rem;font-weight:600;display:flex}.add-dataset-btn:hover{background:var(--accent-dark)}.table-responsive{max-height:520px;overflow-x:auto}.dataset-table{border-collapse:collapse;text-align:left;width:100%;font-size:.9rem}.dataset-table th{background:var(--bg);color:var(--text-2);border-bottom:1px solid var(--border);z-index:10;padding:16px 24px;font-weight:600;position:sticky;top:0}.dataset-table td{border-bottom:1px solid var(--border);color:var(--text);vertical-align:top;padding:18px 24px}.dataset-table tr:hover td{background:#f4f6f980}.col-id{width:60px}.col-category{width:140px}.col-q{width:280px}.col-a{width:380px}.col-tags{width:160px}.col-actions{width:120px}.badge-cat{color:#1d4ed8;border-radius:var(--radius-sm);background:#eff6ff;border:1px solid #dbeafe;padding:4px 8px;font-size:.75rem;font-weight:600;display:inline-block}.tags-container{flex-wrap:wrap;gap:4px;display:flex}.badge-tag-pill{color:#4b5563;border-radius:var(--radius-sm);background:#f3f4f6;border:1px solid #e5e7eb;padding:2px 6px;font-size:.7rem}.actions-cell{gap:8px;display:flex}.row-edit-btn,.row-delete-btn{border-radius:var(--radius-sm);border:1px solid var(--border);cursor:pointer;background:var(--white);width:32px;height:32px;transition:var(--ease);justify-content:center;align-items:center;display:flex}.row-edit-btn{color:#1e3a8a}.row-edit-btn:hover{color:#2563eb;background:#eff6ff;border-color:#93c5fd}.row-delete-btn{color:#ef4444}.row-delete-btn:hover{color:#dc2626;background:#fef2f2;border-color:#fca5a5}.table-empty{text-align:center;color:var(--text-3);padding:48px;font-size:.95rem}.reindexing-status{border-radius:var(--radius-md);color:#d97706;background:#fffbeb;border:1px solid #fde68a;align-items:center;gap:8px;padding:10px 20px;font-size:.85rem;font-weight:500;animation:1.5s infinite pulse-border;display:flex}@keyframes pulse-border{0%{border-color:#fde68a}50%{border-color:#fbbf24}to{border-color:#fde68a}}.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;background:#00000080;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal-content{background:var(--white);border-radius:var(--radius-xl);width:100%;max-width:600px;box-shadow:var(--shadow-lg);flex-direction:column;animation:.25s cubic-bezier(.16,1,.3,1) modal-enter;display:flex;overflow:hidden}@keyframes modal-enter{0%{opacity:0;transform:scale(.95)translateY(10px)}to{opacity:1;transform:scale(1)translateY(0)}}.modal-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:20px 28px;display:flex}.modal-header h3{color:var(--text);font-size:1.15rem;font-weight:600}.modal-close-btn{cursor:pointer;color:var(--text-3);transition:var(--ease);background:0 0;border:none;font-size:1.5rem;line-height:1}.modal-close-btn:hover{color:var(--text)}.modal-body-form{flex-direction:column;gap:20px;padding:28px;display:flex}.form-group{flex-direction:column;gap:8px;display:flex}.form-group label{color:var(--text-2);font-size:.85rem;font-weight:600}.form-input{border:1px solid var(--border);border-radius:var(--radius-md);width:100%;transition:var(--ease);color:var(--text);outline:none;padding:10px 14px;font-size:.9rem}.form-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-light)}.form-textarea{border:1px solid var(--border);border-radius:var(--radius-md);width:100%;transition:var(--ease);resize:vertical;min-height:100px;color:var(--text);outline:none;padding:10px 14px;font-family:inherit;font-size:.9rem}.form-textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-light)}.modal-footer{border-top:1px solid var(--border);background:var(--bg);justify-content:flex-end;gap:12px;padding:20px 28px;display:flex}.btn-cancel{background:var(--white);border:1px solid var(--border);color:var(--text-2);border-radius:var(--radius-md);cursor:pointer;transition:var(--ease);padding:10px 20px;font-size:.9rem;font-weight:500}.btn-cancel:hover{background:var(--bg);color:var(--text)}.btn-save{background:var(--accent);color:#fff;border-radius:var(--radius-md);cursor:pointer;transition:var(--ease);border:none;padding:10px 20px;font-size:.9rem;font-weight:600}.btn-save:hover{background:var(--accent-dark)}@media (width<=900px){.admin-container{padding:16px}.card-header-actions{padding:16px 20px}.dataset-table th,.dataset-table td{padding:12px 16px}}@media (width>=1181px){.app-shell{flex-direction:column;height:100vh;display:flex;overflow:hidden}.topbar{flex-shrink:0}.dashboard{flex:1;height:calc(100vh - 72px);padding:16px 28px;overflow:hidden;grid-template-columns:minmax(280px,.72fr) minmax(0,1.82fr)!important}.sidebar{flex-direction:column;justify-content:flex-start;gap:12px;height:100%;padding-top:0;display:flex;overflow:hidden;min-height:auto!important}.sidebar-header{flex-shrink:0}.new-chat-button-container{flex-shrink:0;padding:0}.session-rail{flex-direction:column;flex:1;min-height:0;padding:0;display:flex;overflow:hidden}.session-list{flex:1;overflow-y:auto;max-height:none!important}.side-note{flex-shrink:0;margin-top:auto}.chat-card{flex-direction:column;height:100%;display:flex;overflow:hidden;min-height:auto!important}.chat-main{flex-direction:column;flex:1;min-height:0;padding:16px 20px 12px;display:flex;overflow:hidden}.messages-container{flex:1;padding-right:8px;overflow-y:auto;min-height:0!important}}@media (width<=1180px){.chat-card{flex-direction:column;height:75vh;display:flex}.chat-main{flex-direction:column;flex:1;display:flex;overflow:hidden}.messages-container{flex:1;overflow-y:auto;min-height:250px!important}}.admin-loading-overlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:99999;pointer-events:all;background:#064e3bb3;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.admin-loading-spinner-card{background:var(--white);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);text-align:center;border:1px solid var(--border);flex-direction:column;align-items:center;gap:16px;width:90%;max-width:440px;padding:40px;animation:.3s cubic-bezier(.16,1,.3,1) modal-enter;display:flex}.admin-loading-spinner-card .spinner{border:4px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:48px;height:48px;margin-bottom:8px;animation:1s linear infinite spin}.admin-loading-spinner-card .loading-text{color:var(--text);margin:0;font-size:1.2rem;font-weight:700}.admin-loading-spinner-card .loading-subtext{color:var(--text-2);margin:0;font-size:.85rem;line-height:1.5}.custom-notification-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:100000;background:#0006;justify-content:center;align-items:center;animation:.2s fade-in;display:flex;position:fixed;inset:0}.custom-notification-card{background:var(--white);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);text-align:center;border:1px solid var(--border);flex-direction:column;align-items:center;gap:16px;width:90%;max-width:400px;padding:32px 40px;animation:.25s cubic-bezier(.16,1,.3,1) modal-enter;display:flex}.notification-icon-container{border-radius:50%;justify-content:center;align-items:center;width:64px;height:64px;font-size:2rem;display:flex}.custom-notification-card.success .notification-icon-container{background:#22c55e1a}.custom-notification-card.error .notification-icon-container{background:#ef44441a}.notification-message{color:var(--text);margin:0;font-size:1rem;font-weight:600;line-height:1.5}.notification-btn{color:#fff;border-radius:var(--radius-md);cursor:pointer;transition:var(--ease);border:none;width:100%;padding:10px 24px;font-size:.9rem;font-weight:600}.custom-notification-card.success .notification-btn{background:var(--accent);box-shadow:0 4px 12px #22c55e33}.custom-notification-card.success .notification-btn:hover{background:var(--accent-dark)}.custom-notification-card.error .notification-btn{background:#ef4444;box-shadow:0 4px 12px #ef444433}.custom-notification-card.error .notification-btn:hover{background:#dc2626}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.app-shell-modern{width:100vw;height:100vh;font-family:var(--font-body);background:#f8faf9;display:flex;overflow:hidden}.dashboard-modern{width:100%;height:100%;display:flex;overflow:hidden}.sidebar-modern{border-right:1px solid var(--border);z-index:1000;background:#fff;flex-direction:column;flex-shrink:0;width:280px;height:100%;transition:transform .3s cubic-bezier(.16,1,.3,1);display:flex}.sidebar-brand-container{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:24px;display:flex}.brand-mark-modern{align-items:center;gap:10px;display:flex}.brand-mark-icon-modern{font-size:1.5rem}.brand-mark-text-modern{font-family:var(--font-display);color:var(--primary_dim);font-size:1.3rem;font-weight:800}.sidebar-close-btn-modern{color:var(--text-2);cursor:pointer;background:0 0;border:none;font-size:1.2rem;display:none}.new-chat-button-container-modern{padding:20px 24px}.new-chat-btn-modern{border-radius:var(--radius-md);border:1.5px solid var(--primary);width:100%;color:var(--primary);font-family:var(--font-display);cursor:pointer;transition:all var(--ease);background:0 0;justify-content:center;align-items:center;gap:8px;padding:12px;font-size:.9rem;font-weight:700;display:flex}.new-chat-btn-modern:hover{background:var(--primary);color:#fff;box-shadow:0 4px 12px #2d6a5226}.session-rail-modern{flex-direction:column;flex:1;padding:0 16px 20px;display:flex;overflow:hidden}.session-rail-title-modern{text-transform:uppercase;letter-spacing:.08em;color:var(--text-3);margin-bottom:10px;padding-left:8px;font-size:.72rem;font-weight:800}.session-list-modern{flex-direction:column;flex:1;gap:6px;display:flex;overflow-y:auto}.session-item-modern{border-radius:var(--radius-md);text-align:left;cursor:pointer;width:100%;transition:all var(--ease);background:0 0;border:none;justify-content:space-between;align-items:center;padding:12px 14px;display:flex}.session-item-modern:hover{background:var(--surface-container-low)}.session-item-modern.active{background:var(--surface-container)}.session-info-modern{flex-direction:column;flex:1;gap:2px;display:flex;overflow:hidden}.session-title-modern{font-family:var(--font-body);color:var(--on_surface);white-space:nowrap;text-overflow:ellipsis;font-size:.88rem;font-weight:600;overflow:hidden}.session-date-modern{color:var(--text-3);font-size:.7rem}.session-delete-btn-modern{cursor:pointer;opacity:0;transition:opacity var(--ease);background:0 0;border:none;padding:4px;font-size:.85rem}.session-item-modern:hover .session-delete-btn-modern{opacity:1}.sidebar-footer-modern{border-top:1px solid var(--border);background:#fff;justify-content:space-between;align-items:center;margin-top:auto;padding:20px 24px;display:flex}.user-profile-modern{align-items:center;gap:10px;display:flex}.avatar-user-sidebar{background:var(--surface-container-low);border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;font-size:.9rem;display:flex}.user-profile-info-modern{flex-direction:column;display:flex}.user-profile-name-modern{color:var(--on_surface);font-size:.88rem}.user-profile-role-modern{color:var(--text-3);font-size:.7rem}.logout-btn-modern{color:#ef4444;font-family:var(--font-display);cursor:pointer;border-radius:var(--radius-sm);transition:background var(--ease);background:0 0;border:none;align-items:center;gap:4px;padding:6px 12px;font-size:.85rem;font-weight:700;display:flex}.logout-btn-modern:hover{background:#fef2f2}.chat-card-modern{background:#fcfdfe;flex-direction:column;flex:1;height:100%;display:flex;overflow:hidden}.chat-header-modern{border-bottom:1px solid var(--border);background:#fff;justify-content:space-between;align-items:center;padding:16px 28px;display:flex}.header-left-modern{align-items:center;gap:12px;display:flex}.hamburger-btn-modern{cursor:pointer;color:var(--primary_dim);background:0 0;border:none;padding:4px;font-size:1.4rem;display:none}.header-icon-modern{background:var(--primary_container);width:40px;height:40px;color:var(--primary_dim);border-radius:12px;justify-content:center;align-items:center;font-size:1.1rem;display:flex}.header-info-modern h2{font-family:var(--font-display);color:var(--on_surface);margin:0;font-size:1rem;font-weight:800}.header-subtitle-modern{color:var(--on_surface_variant);margin:0;font-size:.75rem}.status-chip-modern{background:var(--surface-container-low);color:var(--on_surface_variant);border-radius:999px;align-items:center;gap:6px;padding:6px 12px;font-size:.75rem;font-weight:700;display:flex}.status-chip-modern.ok{color:var(--primary_dim)}.status-dot-modern{border-radius:50%;width:8px;height:8px}.status-dot-modern.ok{background:#22c55e}.status-dot-modern.checking{background:#f59e0b}.status-dot-modern.error{background:#ef4444}.chat-main-modern{background:#f9fbf9;flex-direction:column;flex:1;display:flex;overflow:hidden}.messages-container-scroll-modern{flex:1;padding:24px 28px;overflow-y:auto}.messages-wrapper-centered-modern{flex-direction:column;gap:16px;width:100%;max-width:800px;margin:0 auto;display:flex}.chat-footer-wrapper-modern{background:linear-gradient(#f9fbf900 0%,#f9fbf9 50%);width:100%;padding:16px 28px 24px}.suggestions-chips-container-modern{width:100%;max-width:800px;margin:0 auto 12px;overflow:hidden}.suggestions-scroll-modern{gap:8px;padding-bottom:6px;display:flex;overflow-x:auto}.suggestions-scroll-modern::-webkit-scrollbar{height:4px}.suggestions-scroll-modern::-webkit-scrollbar-thumb{background:#58615f26;border-radius:999px}.suggestion-chip-modern{border-radius:var(--radius-pill);border:1px solid var(--border);color:var(--primary_dim);font-family:var(--font-body);cursor:pointer;transition:all var(--ease);background:#fff;flex-shrink:0;padding:8px 14px;font-size:.8rem;font-weight:600;box-shadow:0 2px 6px #00000005}.suggestion-chip-modern:hover{border-color:var(--primary);background:var(--surface-container-low);transform:translateY(-1px)}.chat-footer-modern-input-row{width:100%;max-width:800px;margin:0 auto}.input-wrapper-modern{border:1px solid var(--border);transition:border-color var(--ease), box-shadow var(--ease);background:#fff;border-radius:28px;align-items:flex-end;gap:10px;padding:8px 8px 8px 18px;display:flex;box-shadow:0 10px 30px #0000000a}.input-wrapper-modern:focus-within{border-color:#2d6a5259;box-shadow:0 10px 30px #2d6a5214}.send-btn-modern{background:linear-gradient(135deg, var(--primary), var(--primary_dim));color:#fff;cursor:pointer;width:36px;height:36px;transition:all var(--ease);border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.9rem;display:flex}.send-btn-modern:hover:not(:disabled){transform:scale(1.06)}.send-btn-modern:disabled{background:var(--border);color:var(--text-3);cursor:not-allowed}.sidebar-overlay-bg{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:999;background:#0006;animation:.25s fade-in;position:fixed;inset:0}@media (width<=900px){.sidebar-modern{position:fixed;top:0;bottom:0;left:0;transform:translate(-100%)}.sidebar-modern.open{transform:translate(0);box-shadow:0 0 30px #00000026}.sidebar-close-btn-modern,.hamburger-btn-modern{display:block}.chat-header-modern{padding:14px 20px}.messages-container-scroll-modern{padding:16px 20px}.chat-footer-wrapper-modern{padding:12px 20px 20px}}.chat-hero-landing{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;width:100%;max-width:820px;margin:0 auto;padding:32px 24px;animation:.35s both fadeUp;display:flex}.hero-badge-icon{background:linear-gradient(135deg,#dcfce7 0%,#bbf7d0 100%);border:1.5px solid #86efac;border-radius:20px;justify-content:center;align-items:center;width:64px;height:64px;margin-bottom:20px;font-size:2.2rem;display:flex;box-shadow:0 10px 25px -5px #22c55e33}.hero-title{font-family:var(--font-display,inherit);color:var(--text);letter-spacing:-.02em;max-width:620px;margin-bottom:12px;font-size:1.85rem;font-weight:700;line-height:1.3}.hero-subtitle{color:var(--text-2);max-width:580px;margin-bottom:36px;font-size:.95rem;line-height:1.6}.hero-cards-grid{grid-template-columns:repeat(2,1fr);gap:14px;width:100%;max-width:680px;display:grid}@media (width<=640px){.hero-cards-grid{grid-template-columns:1fr}.hero-title{font-size:1.45rem}}.hero-suggestion-card{border:1px solid var(--border);text-align:left;cursor:pointer;background:#fff;border-radius:14px;align-items:flex-start;gap:14px;padding:16px 18px;transition:all .2s cubic-bezier(.16,1,.3,1);display:flex;box-shadow:0 2px 6px #00000008}.hero-suggestion-card:hover{border-color:var(--accent);background:#f0fdf4;transform:translateY(-2px);box-shadow:0 8px 20px -4px #22c55e26}.hero-card-icon{padding-top:2px;font-size:1.5rem;line-height:1}.hero-card-text{flex-direction:column;gap:3px;display:flex}.hero-card-text strong{color:var(--text);font-size:.92rem;font-weight:600}.hero-card-text span{color:var(--text-2);font-size:.8rem;line-height:1.35}.header-auth-buttons{align-items:center;gap:8px;display:flex}.header-login-btn{border:1px solid var(--border);color:var(--text);cursor:pointer;background:#fff;border-radius:8px;padding:7px 15px;font-size:.85rem;font-weight:600;transition:all .2s}.header-login-btn:hover{background:#f4f6f8;border-color:#cbd5e1}.header-register-btn{color:#fff;cursor:pointer;background:#22c55e;border:none;border-radius:8px;padding:7px 15px;font-size:.85rem;font-weight:600;transition:all .2s;box-shadow:0 2px 6px #22c55e40}.header-register-btn:hover{background:#16a34a;box-shadow:0 4px 12px #22c55e59}.header-admin-quick-btn{color:#ea580c;cursor:pointer;background:#fff7ed;border:1px solid #fed7aa;border-radius:8px;padding:6px 12px;font-size:.82rem;font-weight:600;transition:all .2s}.header-admin-quick-btn:hover{background:#ffedd5;border-color:#fdba74}.admin-link-badge-btn{color:#ea580c;cursor:pointer;text-align:left;background:0 0;border:none;padding:0;font-size:.72rem;font-weight:600;text-decoration:underline}.sidebar-guest-box{text-align:center;background:#f8fafc;border:1px dashed #cbd5e1;border-radius:12px;flex-direction:column;align-items:center;margin:8px 4px;padding:24px 16px;display:flex}.sidebar-guest-icon{margin-bottom:8px;font-size:2rem}.sidebar-guest-title{color:var(--text);margin-bottom:6px;font-size:.9rem;font-weight:700}.sidebar-guest-desc{color:var(--text-2);margin-bottom:16px;font-size:.78rem;line-height:1.45}.sidebar-guest-btn{color:#fff;cursor:pointer;background:#22c55e;border:none;border-radius:8px;width:100%;padding:9px 14px;font-size:.82rem;font-weight:600;transition:all .2s}.sidebar-guest-btn:hover{background:#16a34a}.sidebar-auth-actions{gap:8px;width:100%;display:flex}.sidebar-auth-login-btn,.sidebar-auth-reg-btn{cursor:pointer;text-align:center;border-radius:8px;flex:1;padding:8px 10px;font-size:.8rem;font-weight:600;transition:all .2s}.sidebar-auth-login-btn{border:1px solid var(--border);color:var(--text);background:#fff}.sidebar-auth-login-btn:hover{background:#f1f5f9}.sidebar-auth-reg-btn{color:#fff;background:#22c55e;border:none}.sidebar-auth-reg-btn:hover{background:#16a34a}.auth-modal-overlay{-webkit-backdrop-filter:blur(8px);z-index:9999;background:#022c2299;justify-content:center;align-items:center;padding:20px;animation:.2s fade-in;display:flex;position:fixed;inset:0}.auth-modal-content{background:#fff;border:1px solid #fff6;border-radius:20px;width:100%;max-width:440px;padding:32px 36px;animation:.25s both fadeUp;position:relative;box-shadow:0 25px 50px -12px #00000040}.auth-modal-close-btn{border:1px solid var(--border);width:32px;height:32px;color:var(--text-2);cursor:pointer;background:#f8fafc;border-radius:50%;justify-content:center;align-items:center;font-size:1rem;transition:all .15s;display:flex;position:absolute;top:18px;right:18px}.auth-modal-close-btn:hover{color:var(--text);background:#e2e8f0}.auth-modal-tabs{background:#f1f5f9;border-radius:10px;margin-bottom:18px;padding:4px;display:flex}.auth-modal-tab{color:var(--text-2);cursor:pointer;background:0 0;border:none;border-radius:8px;flex:1;padding:8px 12px;font-size:.88rem;font-weight:600;transition:all .2s}.auth-modal-tab.active{color:var(--text);background:#fff;box-shadow:0 2px 6px #00000014}
