@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&family=Sora:wght@600;700;800&display=swap";.toast-container{z-index:999999;pointer-events:none;flex-direction:column;gap:12px;display:flex;position:fixed;bottom:24px;right:24px}.toast{background:var(--color-surface);border:1px solid var(--color-border);pointer-events:auto;border-radius:12px;align-items:center;gap:12px;min-width:280px;max-width:400px;padding:14px 18px;animation:.35s cubic-bezier(.16,1,.3,1) forwards toastSlideIn;display:flex;position:relative;overflow:hidden;box-shadow:0 12px 32px #0000001f}[data-theme=dark] .toast{box-shadow:0 12px 32px #0006}.toast.toast-closing{animation:.25s ease-in forwards toastFadeOut}.toast-icon{flex-shrink:0;justify-content:center;align-items:center;display:flex}.toast-success .toast-icon{color:#10b981}.toast-error .toast-icon{color:#f43f5e}.toast-info .toast-icon{color:#3b82f6}.toast-content{flex-direction:column;flex:1;display:flex}.toast-title{color:var(--color-text-primary);margin:0 0 2px;font-size:14px;font-weight:600}.toast-desc{color:var(--color-text-secondary);margin:0;font-size:13px;line-height:1.4}.toast-close{color:var(--color-text-tertiary);cursor:pointer;background:0 0;border:none;border-radius:6px;margin:-4px;padding:4px;transition:background-color .2s,color .2s;display:flex}.toast-close:hover{background:var(--color-bg);color:var(--color-text-primary)}@keyframes toastSlideIn{0%{opacity:0;transform:translate(100%)scale(.95)}to{opacity:1;transform:translate(0)scale(1)}}@keyframes toastFadeOut{0%{opacity:1;margin-bottom:0;transform:scale(1)}to{opacity:0;margin-bottom:-60px;transform:scale(.9)}}@media (width<=640px){.toast-container{align-items:center;bottom:16px;left:16px;right:16px}.toast{width:100%;max-width:none}@keyframes toastSlideIn{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}}:root{--color-primary:#0fa7ba;--color-primary-dark:#0a8797;--color-primary-light:#d6f1f4;--color-primary-xlight:#edf9fb;--color-bg:#f1f4f7;--color-surface:#fff;--color-border:#d9dee6;--color-border-light:#e7ebf0;--color-text-primary:#232a34;--color-text-secondary:#566173;--color-text-tertiary:#8b94a3;--color-text-inverse:#fff;--color-link:#2563eb;--color-link-hover:#1d4ed8;--color-danger:#ef4444;--color-danger-light:#fef2f2;--color-success:#10b981;--color-warning:#f59e0b;--sidebar-width:272px;--sidebar-bg:#f5f8fb;--sidebar-border:#d7dde6;--panel-width:352px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--radius-sm:8px;--radius-md:10px;--radius-lg:14px;--radius-xl:18px;--radius-bubble:16px;--radius-full:9999px;--shadow-sm:0 4px 10px #1323420f;--shadow-md:0 10px 26px #13234217;--shadow-lg:0 18px 42px #1323421f;--shadow-panel:-10px 0 24px #14203614;--font-sans:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-display:"Sora", "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-size-xs:11px;--font-size-sm:13px;--font-size-base:14px;--font-size-md:15px;--font-size-lg:16px;--font-size-xl:18px;--font-size-2xl:22px;--line-height-tight:1.3;--line-height-base:1.5;--line-height-relaxed:1.7;--motion-ease-standard:cubic-bezier(.2, 0, 0, 1);--motion-ease-emphasized:cubic-bezier(.16, 1, .3, 1);--motion-ease-enter:cubic-bezier(.22, 1, .36, 1);--motion-duration-fast:.14s;--motion-duration-base:.22s;--motion-duration-slow:.36s;--transition-fast:var(--motion-duration-fast) var(--motion-ease-standard);--transition-base:var(--motion-duration-base) var(--motion-ease-standard);--transition-slow:var(--motion-duration-slow) var(--motion-ease-emphasized);--z-dropdown:100;--z-modal:200;--z-tooltip:300}[data-theme=dark]{--color-primary:#22c5d9;--color-primary-dark:#19a8bb;--color-primary-light:#1a3a40;--color-primary-xlight:#131f24;--color-bg:#0b0f19;--color-surface:#111827;--color-border:#1e293b;--color-border-light:#182030;--color-text-primary:#f8fafc;--color-text-secondary:#94a3b8;--color-text-tertiary:#64748b;--color-text-inverse:#0f172a;--color-link:#60a5fa;--color-link-hover:#93bbfd;--color-danger:#f87171;--color-danger-light:#451a1a;--color-success:#34d399;--color-warning:#fbbf24;--sidebar-bg:#0b0f19;--sidebar-border:#1e293b;--shadow-sm:0 4px 10px #0000004d;--shadow-md:0 10px 26px #0006;--shadow-lg:0 18px 42px #00000080;--shadow-panel:-10px 0 24px #00000059}[data-theme=dark] body{background:radial-gradient(circle at 0% 0%, #22c5d90f 0%, #22c5d900 34%), radial-gradient(circle at 100% 0%, #60a5fa0d 0%, #60a5fa00 30%), var(--color-bg)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;font-size:14px}body{font-family:var(--font-sans);font-size:var(--font-size-base);color:var(--color-text-primary);background:radial-gradient(circle at 0% 0%, #0fa7ba14 0%, #0fa7ba00 34%), radial-gradient(circle at 100% 0%, #2563eb12 0%, #2563eb00 30%), var(--color-bg);line-height:var(--line-height-base);height:100vh;overflow:hidden}#root{flex-direction:column;height:100vh;display:flex}a{color:var(--color-link);transition:color var(--transition-fast);text-decoration:none}a:hover{color:var(--color-link-hover)}button{font-family:var(--font-sans);cursor:pointer;transition:color var(--transition-base), background-color var(--transition-base), border-color var(--transition-base), box-shadow var(--transition-base), transform var(--transition-fast), filter var(--transition-base);background:0 0;border:none;outline:none}button:active:not(:disabled){transform:scale(.97)translateY(1px)}:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}input,textarea{font-family:var(--font-sans);border:none;outline:none}img{max-width:100%;display:block}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--color-text-tertiary)}@keyframes pageSoftEnter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}:where(.chat-page,.admin-dashboard,.incident-search-page,.pipeline-page,.guide-page,.hb-layout){animation:pageSoftEnter var(--motion-duration-slow) var(--motion-ease-enter) both}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}.btn{justify-content:center;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);border-radius:var(--radius-md);font-size:var(--font-size-sm);cursor:pointer;transition:transform .4s cubic-bezier(.34, 1.56, .64, 1), box-shadow var(--transition-base), background-color var(--transition-base), border-color var(--transition-base), color var(--transition-base), filter var(--transition-base);white-space:nowrap;-webkit-user-select:none;user-select:none;border:1px solid #0000;font-weight:500;display:inline-flex}.btn:hover:not(:disabled){transform:translateY(-1px)}.btn:active:not(:disabled){transform:translateY(0)scale(.94)}.btn-primary{color:var(--color-text-inverse);background:linear-gradient(135deg,#0fa7ba 0%,#2d8ee3 100%)}.btn-primary:hover{filter:brightness(1.04);box-shadow:0 8px 18px #2563eb42}.btn-secondary{color:var(--color-text-primary);background:var(--color-surface);border-color:var(--color-border)}.btn-secondary:hover:not(:disabled){color:var(--color-primary);background:var(--color-border-light);border-color:var(--color-primary)}.btn-secondary:disabled{opacity:.55;cursor:not-allowed}.btn-ghost{color:var(--color-text-secondary);background:0 0}.btn-ghost:hover{background:var(--color-border-light);color:var(--color-text-primary)}.btn-danger{color:var(--color-danger)}.btn-danger:hover{background:var(--color-danger-light)}.btn-icon{padding:var(--space-2);color:var(--color-text-secondary);background:0 0;border-radius:8px;justify-content:center;align-items:center;transition:transform .4s cubic-bezier(.34,1.56,.64,1),background-color .2s,color .2s;display:inline-flex}.btn-icon:hover{background:var(--color-border-light);color:var(--color-text-primary)}.btn-icon:active{transform:scale(.92)}.btn-sm{padding:4px var(--space-3);font-size:var(--font-size-xs)}.input{width:100%;padding:var(--space-2) var(--space-3);border:1.5px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-base);color:var(--color-text-primary);background:var(--color-surface);transition:border-color var(--transition-fast), box-shadow var(--transition-fast), background-color var(--transition-fast)}.input:focus{border-color:#9fc6d8;box-shadow:0 0 0 3px #2d8ee31f}.input::placeholder{color:var(--color-text-tertiary)}.search-wrap{position:relative}.search-wrap .search-icon{left:var(--space-3);color:var(--color-text-tertiary);pointer-events:none;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.search-wrap .input{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-full);font-size:var(--font-size-sm);padding-left:32px}.search-wrap .input:focus{box-shadow:none;border-color:#c9cdd3}.card{background:var(--color-surface);border-radius:var(--radius-lg);border:1px solid var(--color-border);box-shadow:var(--shadow-sm);transition:transform var(--transition-base), box-shadow var(--transition-base), border-color var(--transition-base)}.card:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.badge{border-radius:var(--radius-sm);font-size:var(--font-size-xs);align-items:center;padding:2px 6px;font-weight:600;display:inline-flex}.badge-primary{color:var(--color-link);background:#2563eb14}.badge-primary:hover{cursor:pointer;background:#2563eb29}.divider{background:var(--color-border);height:1px;margin:var(--space-3) 0}.section-label{font-size:var(--font-size-xs);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.06em;font-weight:600}.dropdown-menu{z-index:var(--z-dropdown);background:var(--color-surface);border:1px solid var(--color-border);transform-origin:100% 0;min-width:196px;animation:menuEnter var(--motion-duration-fast) var(--motion-ease-enter) both;border-radius:14px;padding:8px;position:absolute;overflow:hidden;box-shadow:0 14px 28px #19284829}.dropdown-item{color:var(--color-text-primary);cursor:pointer;transition:background-color var(--transition-fast), color var(--transition-fast), transform var(--transition-fast);text-align:left;background:0 0;border:none;border-radius:8px;align-items:center;gap:10px;width:100%;padding:10px;font-size:14px;display:flex}.dropdown-item:hover{background:#eef1f3;transform:translate(2px)}.dropdown-item.danger{color:var(--color-danger)}.dropdown-item.danger:hover{background:#f7ecec}.spinner{border:2px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;width:18px;height:18px;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.icon-spin{animation:1.2s linear infinite spin}.typing-dots{align-items:center;gap:4px;padding:4px 0;display:flex}.typing-dots span{background:var(--color-text-tertiary);border-radius:50%;width:6px;height:6px;animation:1.2s ease-in-out infinite bounce}.typing-dots span:nth-child(2){animation-delay:.2s}.typing-dots span:nth-child(3){animation-delay:.4s}@keyframes bounce{0%,60%,to{opacity:.4;transform:translateY(0)}30%{opacity:1;transform:translateY(-5px)}}.toast-wrap{z-index:var(--z-modal);gap:var(--space-2);flex-direction:column;display:flex;position:fixed;bottom:24px;right:24px}.toast{padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);font-size:var(--font-size-sm);box-shadow:var(--shadow-md);animation:slideInRight var(--motion-duration-base) var(--motion-ease-enter);color:#fff}.toast.success{background:var(--color-success)}.toast.error{background:var(--color-danger)}@keyframes slideInRight{0%{opacity:0;transform:translate(60px)}to{opacity:1;transform:translate(0)}}@keyframes menuEnter{0%{opacity:0;transform:translateY(-4px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}[data-theme=dark] .dropdown-menu{border-color:var(--color-border);background:#1a1e2b;box-shadow:0 14px 28px #00000073}[data-theme=dark] .dropdown-item{color:var(--color-text-primary)}[data-theme=dark] .dropdown-item:hover{background:#252a37}[data-theme=dark] .dropdown-item.danger:hover{background:#2a1717}[data-theme=dark] .btn-icon{color:var(--color-text-secondary)}[data-theme=dark] .btn-icon:hover{color:var(--color-text-primary);background:#252a37}body{min-height:100vh}
