.conversation-list{width:300px;background:var(--color-gray-100);border-right:1px solid var(--color-gray-400);display:flex;flex-direction:column}.logo-section{padding:var(--spacing-xl);border-bottom:1px solid var(--color-gray-400);display:flex;align-items:center;justify-content:center;background:var(--color-gray-100)}.logo{width:160px;height:auto}.conversation-header{padding:var(--spacing-lg) var(--spacing-xl);border-bottom:1px solid var(--color-gray-400);display:flex;justify-content:space-between;align-items:center;background:var(--color-gray-100)}.conversation-header h2{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-primary)}.header-actions{display:flex;gap:var(--spacing-sm)}.btn-new{width:var(--spacing-3xl);height:var(--spacing-3xl);border:none;background:var(--color-primary);color:var(--color-white);border-radius:var(--radius-md);font-size:var(--spacing-xl);cursor:pointer;display:flex;align-items:center;justify-content:center}.btn-new:hover{background:var(--color-primary-hover)}.btn-close{width:var(--spacing-3xl);height:var(--spacing-3xl);border:none;background:var(--color-gray-800);color:var(--color-white);border-radius:var(--radius-md);font-size:var(--font-size-2xl);cursor:pointer;display:none;align-items:center;justify-content:center;line-height:1}.btn-close:hover{background:#5a6268}.conversation-items{flex:1;overflow-y:auto;padding:var(--spacing-sm) 0}.conversation-item{padding:var(--spacing-md) var(--spacing-lg);margin:6px var(--spacing-md);background:var(--color-white);border-radius:var(--radius-lg);cursor:pointer;transition:var(--transition-fast);border:1px solid transparent}.conversation-item:hover{background:var(--color-white);box-shadow:var(--shadow-card)}.conversation-item.active{background:var(--color-white);border:1px solid var(--color-primary);box-shadow:var(--shadow-sm)}.conversation-item.active .conversation-project-tag{color:var(--color-gray-700)}.conversation-item.active .conversation-title{color:var(--color-primary);font-weight:var(--font-weight-semibold)}.conversation-item.active .conversation-date{color:var(--color-gray-700)}.conversation-project-tag{font-size:var(--font-size-xs);color:var(--color-gray-700);font-weight:var(--font-weight-medium);letter-spacing:var(--letter-spacing-wide);margin-bottom:var(--spacing-xs);text-transform:uppercase}.conversation-title{font-weight:var(--font-weight-medium);margin-bottom:6px;color:var(--color-text-primary);font-size:var(--font-size-base)}.conversation-meta{display:flex;align-items:center;gap:var(--spacing-sm);font-size:var(--font-size-sm)}.conversation-project{color:var(--color-primary);background:var(--color-primary-light);padding:2px var(--spacing-sm);border-radius:var(--radius-sm);font-weight:var(--font-weight-medium);text-transform:uppercase;font-size:var(--font-size-xs);letter-spacing:var(--letter-spacing-wide)}.conversation-date{color:var(--color-gray-700);font-size:var(--font-size-xs)}.widget-mode .conversation-list{position:absolute;top:0;left:0;bottom:0;width:100%;transform:translate(-100%);transition:transform .3s ease;z-index:1000;box-shadow:none}.widget-mode .conversation-list.open{transform:translate(0)}.widget-mode .logo-section{display:none}.widget-mode .btn-close{display:flex}@media (max-width: 768px){.conversation-list{position:fixed;top:0;left:0;bottom:0;width:280px;transform:translate(-100%);transition:transform .3s ease;z-index:var(--z-dropdown);box-shadow:2px 0 8px #0000001a}.conversation-list.open{transform:translate(0)}.btn-close{display:flex}}@media (max-width: 480px){.conversation-list{width:260px}.conversation-header{padding:var(--spacing-lg)}.conversation-header h2{font-size:var(--font-size-lg)}}.btn{padding:var(--spacing-md) var(--spacing-2xl);border:none;border-radius:var(--radius-md);font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);cursor:pointer;transition:var(--transition-fast)}.btn-primary{background:var(--color-primary);color:var(--color-white);box-shadow:var(--shadow-md)}.btn-primary:hover:not(:disabled){background:var(--color-primary-hover);box-shadow:var(--shadow-lg);transform:translateY(-1px)}.btn-primary:active:not(:disabled){transform:translateY(0)}.btn-secondary{padding:10px var(--spacing-2xl);background:transparent;color:var(--color-gray-800);border:1px solid var(--color-gray-400);font-weight:var(--font-weight-medium)}.btn-secondary:hover{background:var(--color-gray-100);border-color:var(--color-gray-800);color:var(--color-gray-900)}.btn-danger{padding:10px var(--spacing-2xl);background:transparent;color:var(--color-danger);font-weight:var(--font-weight-medium)}.btn-danger:hover{color:var(--color-danger-hover)}.btn-ghost{background:var(--color-gray-100);color:var(--color-gray-900)}.btn-ghost:hover{background:#e9ecef}.btn:disabled{background:var(--color-gray-800);cursor:not-allowed}.btn-small{width:40px;height:40px;padding:0;font-size:var(--spacing-xl);display:flex;align-items:center;justify-content:center}@media (max-width: 768px){.btn-danger,.btn-secondary,.btn-primary{width:100%;padding:var(--spacing-md)}}.chat-header{padding:var(--spacing-lg) var(--spacing-xl);border-bottom:1px solid var(--color-gray-300);display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-md);background:var(--color-white)}.hamburger-btn{display:none}.chat-header-left{flex:1;min-width:0}.chat-header h3{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);cursor:pointer;margin:0;color:var(--color-text-primary);line-height:var(--line-height-tight)}.chat-header h3:hover{color:var(--color-primary);transition:color .2s ease}.chat-header-project-tag{display:inline-flex;align-items:center;background:var(--color-primary);color:var(--color-white);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);letter-spacing:var(--letter-spacing-wide);padding:var(--spacing-xs) var(--spacing-md);border-radius:var(--radius-2xl);margin-top:6px;text-transform:uppercase;box-shadow:var(--shadow-sm)}.chat-header input{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);border:1px solid var(--color-primary);border-radius:var(--radius-sm);padding:var(--spacing-xs) var(--spacing-sm)}.token-count{font-size:13px;font-weight:var(--font-weight-normal);color:var(--color-gray-700)}@media (max-width: 768px){.hamburger-btn{display:flex}.chat-header{padding:var(--spacing-lg)}.chat-header h3{font-size:var(--font-size-md)}.chat-header-project{font-size:var(--font-size-sm)}}@media (max-width: 480px){.chat-header{padding:var(--spacing-md)}.chat-header h3{font-size:15px}.token-count{display:none}}.message{max-width:75%;padding:var(--spacing-md) var(--spacing-lg);line-height:var(--line-height-normal);font-size:var(--font-size-base);word-wrap:break-word;margin:var(--spacing-sm) 0}.message-content{word-wrap:break-word}.message-content p{margin:0 0 var(--spacing-sm) 0}.message-content p:last-child{margin-bottom:0}.message-content code{background:#0000001a;padding:2px 6px;border-radius:3px;font-family:Courier New,monospace;font-size:.9em;color:#1f2937}.message.user .message-content code{background:#fff3;color:#fff}.message-content pre{background:#1e1e1e;padding:var(--spacing-md);border-radius:var(--radius-md);overflow-x:auto;margin:var(--spacing-sm) 0}.message.user .message-content pre{background:#1e1e1e}.message-content pre code{background:none;padding:0;border-radius:0;font-size:.85em;color:#d4d4d4}.message.user .message-content pre code{color:#d4d4d4}.message-content ul,.message-content ol{margin:var(--spacing-sm) 0;padding-left:var(--spacing-xl)}.message-content li{margin:var(--spacing-xs) 0}.message-content h1,.message-content h2,.message-content h3,.message-content h4,.message-content h5,.message-content h6{margin:var(--spacing-md) 0 var(--spacing-sm) 0;font-weight:var(--font-weight-bold)}.message-content h1{font-size:1.5em}.message-content h2{font-size:1.3em}.message-content h3{font-size:1.1em}.message-content a{color:inherit;text-decoration:underline}.message.user .message-content a{color:var(--color-white)}.message-content blockquote{border-left:3px solid rgba(0,0,0,.2);padding-left:var(--spacing-md);margin:var(--spacing-sm) 0;font-style:italic}.message.user .message-content blockquote{border-left-color:#ffffff80}.message-content hr{border:none;border-top:1px solid rgba(0,0,0,.1);margin:var(--spacing-md) 0}.message.user .message-content hr{border-top-color:#ffffff4d}.message-content table{border-collapse:collapse;width:100%;margin:var(--spacing-sm) 0}.message-content th,.message-content td{border:1px solid rgba(0,0,0,.1);padding:var(--spacing-xs) var(--spacing-sm);text-align:left}.message.user .message-content th,.message.user .message-content td{border-color:#ffffff4d}.message-content th{background:#0000000d;font-weight:var(--font-weight-bold)}.message.user .message-content th{background:#ffffff26}.message.user{align-self:flex-end;background:var(--color-primary);color:var(--color-white);border-radius:var(--radius-2xl) var(--radius-2xl) var(--radius-sm) var(--radius-2xl);box-shadow:var(--shadow-sm);margin-left:auto}.message.assistant{align-self:flex-start;background:var(--color-gray-200);color:var(--color-text-primary);border-radius:var(--radius-2xl) var(--radius-2xl) var(--radius-2xl) var(--radius-sm);box-shadow:0 1px 3px #00000014;margin-right:auto}.message.loading{opacity:.7}.tool-indicator{margin-top:var(--spacing-sm);padding:var(--spacing-xs) var(--spacing-sm);background:var(--color-primary-light);color:var(--color-primary);font-size:var(--font-size-sm);border-radius:var(--radius-sm);display:inline-block;cursor:pointer;font-weight:var(--font-weight-medium)}.tool-indicator:hover{background:var(--color-primary-lighter)}@media (max-width: 768px){.message{max-width:85%}}@media (max-width: 480px){.message{max-width:90%;padding:10px var(--spacing-md);font-size:var(--font-size-base)}}pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}/*!
  Theme: GitHub Dark
  Description: Dark theme as seen on github.com
  Author: github.com
  Maintainer: @Hirse
  Updated: 2021-05-15

  Outdated base version: https://github.com/primer/github-syntax-dark
  Current colors taken from GitHub's CSS
*/.hljs{color:#c9d1d9;background:#0d1117}.hljs-doctag,.hljs-keyword,.hljs-meta .hljs-keyword,.hljs-template-tag,.hljs-template-variable,.hljs-type,.hljs-variable.language_{color:#ff7b72}.hljs-title,.hljs-title.class_,.hljs-title.class_.inherited__,.hljs-title.function_{color:#d2a8ff}.hljs-attr,.hljs-attribute,.hljs-literal,.hljs-meta,.hljs-number,.hljs-operator,.hljs-variable,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-id{color:#79c0ff}.hljs-regexp,.hljs-string,.hljs-meta .hljs-string{color:#a5d6ff}.hljs-built_in,.hljs-symbol{color:#ffa657}.hljs-comment,.hljs-code,.hljs-formula{color:#8b949e}.hljs-name,.hljs-quote,.hljs-selector-tag,.hljs-selector-pseudo{color:#7ee787}.hljs-subst{color:#c9d1d9}.hljs-section{color:#1f6feb;font-weight:700}.hljs-bullet{color:#f2cc60}.hljs-emphasis{color:#c9d1d9;font-style:italic}.hljs-strong{color:#c9d1d9;font-weight:700}.hljs-addition{color:#aff5b4;background-color:#033a16}.hljs-deletion{color:#ffdcd7;background-color:#67060c}.chat-messages{flex:1;overflow-y:auto;padding:var(--spacing-xl);display:flex;flex-direction:column;gap:var(--spacing-lg)}.loading-dots{display:flex;gap:var(--spacing-xs);align-items:center}.loading-dots span{width:var(--spacing-sm);height:var(--spacing-sm);background:var(--color-gray-900);border-radius:var(--radius-full);animation:loading-bounce 1.4s infinite ease-in-out both}.loading-dots span:nth-child(1){animation-delay:-.32s}.loading-dots span:nth-child(2){animation-delay:-.16s}@keyframes loading-bounce{0%,80%,to{transform:scale(0)}40%{transform:scale(1)}}@media (max-width: 768px){.chat-messages{padding:var(--spacing-lg);gap:var(--spacing-md)}}@media (max-width: 480px){.chat-messages{padding:var(--spacing-md)}}.chat-input{padding:var(--spacing-xl);border-top:1px solid var(--color-gray-400);display:flex;gap:var(--spacing-md)}.chat-input input{flex:1;padding:var(--spacing-md) var(--spacing-lg);border:1px solid var(--color-gray-400);border-radius:var(--radius-md);font-size:var(--font-size-base);outline:none;transition:var(--transition-fast);background:var(--color-white)}.chat-input input:focus{border-color:var(--color-primary);box-shadow:var(--shadow-focus)}.chat-input input::placeholder{color:var(--color-gray-600)}@media (max-width: 768px){.chat-input{padding:var(--spacing-lg);gap:var(--spacing-sm)}.chat-input input{padding:var(--spacing-md);font-size:var(--font-size-md)}}@media (max-width: 480px){.chat-input{padding:var(--spacing-md)}}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;z-index:var(--z-dropdown)}.settings-modal{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background:var(--color-white);border-radius:var(--radius-lg);box-shadow:var(--shadow-modal);z-index:var(--z-modal);min-width:400px;max-width:800px;min-height:600px;max-height:90vh;display:flex;flex-direction:column}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-xl) var(--spacing-2xl);border-bottom:1px solid #e0e0e0}.modal-header h4{margin:0;font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold)}.close-btn{background:none;border:none;font-size:var(--font-size-3xl);color:var(--color-gray-800);cursor:pointer;padding:0;width:var(--spacing-3xl);height:var(--spacing-3xl);display:flex;align-items:center;justify-content:center;line-height:1}.close-btn:hover{color:var(--color-text-primary)}.modal-content{padding:var(--spacing-2xl);display:flex;flex-direction:column;gap:var(--spacing-xl);overflow-y:auto;flex:1}.modal-footer{padding:var(--spacing-xl) var(--spacing-2xl);border-top:1px solid #e0e0e0;display:flex;justify-content:space-between;align-items:center}.modal-footer:has(>.modal-footer-actions:only-child){justify-content:flex-end}.modal-footer-actions{display:flex;gap:var(--spacing-md);align-items:center}@media (max-width: 768px){.settings-modal{min-width:auto;width:90%;max-width:500px;min-height:auto;max-height:85vh}.modal-header,.modal-content{padding:var(--spacing-lg)}.modal-footer{padding:var(--spacing-lg);flex-direction:column;gap:var(--spacing-md)}.modal-footer.create-mode{flex-direction:column}.modal-footer-actions{width:100%;flex-direction:column}}@media (max-width: 480px){.settings-modal{width:95%;max-height:90vh}.modal-header h4{font-size:var(--font-size-md)}}.setting-group{display:flex;flex-direction:column;gap:var(--spacing-sm)}.setting-group label{font-weight:var(--font-weight-medium);font-size:13px;color:var(--color-gray-800);text-transform:uppercase;letter-spacing:var(--letter-spacing-wide)}.setting-group input,.setting-group select,.setting-group textarea{padding:10px var(--spacing-md);border:1px solid var(--color-gray-500);border-radius:var(--radius-md);font-size:var(--font-size-base);font-family:inherit}.setting-group input:focus,.setting-group select:focus,.setting-group textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:var(--shadow-focus)}.setting-group textarea{resize:vertical;min-height:100px;line-height:var(--line-height-normal)}.field-error{color:var(--color-danger);font-size:var(--font-size-sm);margin-top:calc(-1 * var(--spacing-xs))}@media (max-width: 480px){.setting-group input,.setting-group select,.setting-group textarea{font-size:var(--font-size-md)}}.project-selector{position:relative;margin-top:var(--spacing-sm)}.project-selected{padding:10px var(--spacing-md);border:1px solid var(--color-gray-500);border-radius:var(--radius-md);background:var(--color-white);cursor:pointer;font-size:var(--font-size-base);color:var(--color-gray-900)}.project-selected:hover{border-color:var(--color-primary)}.project-dropdown{position:absolute;top:100%;left:0;right:0;margin-top:var(--spacing-xs);background:var(--color-white);border:1px solid var(--color-gray-500);border-radius:var(--radius-md);box-shadow:var(--shadow-dropdown);z-index:var(--z-dropdown)}.project-search{width:100%;padding:10px var(--spacing-md);border:none;border-bottom:1px solid #e0e0e0;border-radius:var(--radius-md) var(--radius-md) 0 0;font-size:var(--font-size-base)}.project-search:focus{outline:none;border-bottom-color:var(--color-primary)}.project-list{max-height:240px;overflow-y:auto}.project-item{padding:10px var(--spacing-md);cursor:pointer;font-size:var(--font-size-base);color:var(--color-gray-900);border-bottom:1px solid #f0f0f0}.project-item:last-child{border-bottom:none}.project-item:hover{background:var(--color-gray-100)}.project-mode-selector{display:flex;flex-direction:column;gap:10px;margin-bottom:var(--spacing-md)}.radio-option{display:flex;align-items:center;gap:var(--spacing-sm);cursor:pointer;font-size:var(--font-size-base);color:var(--color-gray-900)}.radio-option input[type=radio],.radio-option span{cursor:pointer}.tool-call-item{padding:var(--spacing-lg);background:var(--color-gray-100);border-radius:var(--radius-md);margin-bottom:var(--spacing-md)}.tool-call-item:last-child{margin-bottom:0}.tool-call-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md)}.tool-call-header strong{font-size:var(--font-size-base);color:var(--color-text-primary)}.tool-use-id{font-size:var(--font-size-xs);color:var(--color-gray-800);font-family:monospace}.tool-call-section{margin-bottom:var(--spacing-md)}.tool-call-section:last-child{margin-bottom:0}.tool-call-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-gray-900);margin-bottom:var(--spacing-xs)}.tool-call-data{background:var(--color-white);border:1px solid var(--color-gray-400);border-radius:var(--radius-sm);padding:var(--spacing-sm);font-size:var(--font-size-sm);font-family:monospace;overflow-x:auto;margin:0;color:var(--color-text-primary)}.token-usage{font-size:var(--font-size-sm);font-weight:var(--font-weight-normal);color:var(--color-gray-700);margin-top:var(--spacing-xs)}.chat-interface{flex:1;display:flex;flex-direction:column;background:var(--color-white);position:relative}.chat-interface.empty{align-items:center;justify-content:center;background:var(--color-gray-100);position:relative}.empty-state{color:var(--color-text-secondary);font-size:var(--font-size-md)}.mobile-only{display:none}.widget-mode .modal-overlay{position:absolute;background:transparent}.widget-mode .settings-modal{position:absolute;top:0;left:0;right:0;bottom:0;transform:none;min-width:auto;max-width:none;min-height:auto;max-height:none;width:100%;height:100%;border-radius:0;box-shadow:none;overflow-y:auto}.widget-mode .close-btn,.widget-mode .token-count,.widget-mode .token-usage{display:none}.widget-mode .hamburger-btn{display:flex;width:var(--spacing-3xl);height:var(--spacing-3xl);font-size:var(--font-size-lg)}.widget-mode .mobile-only{display:flex;position:absolute;top:var(--spacing-lg);left:var(--spacing-lg)}.widget-mode .chat-interface{flex:1;height:100%;overflow:hidden;display:flex;flex-direction:column}.widget-mode .chat-header{padding:var(--spacing-md) var(--spacing-lg);border-bottom:1px solid var(--color-gray-300);flex-shrink:0}.widget-mode .chat-header h3{font-size:var(--font-size-base);margin-bottom:var(--spacing-xs)}.widget-mode .chat-header-project-tag{font-size:10px;padding:3px 10px;margin-top:var(--spacing-xs)}.widget-mode .settings-btn{padding:6px;width:var(--spacing-3xl);height:var(--spacing-3xl)}.widget-mode .chat-messages{padding:var(--spacing-lg);gap:var(--spacing-md);flex:1;overflow-y:auto;min-height:0}.widget-mode .message{max-width:85%}.widget-mode .chat-input{padding:var(--spacing-md);gap:var(--spacing-sm);flex-shrink:0}.widget-mode .chat-input input{padding:10px var(--spacing-md);font-size:var(--font-size-base)}.widget-mode .chat-input .btn{padding:10px var(--spacing-md)!important;font-size:var(--font-size-base)}.widget-mode .modal-header{padding:var(--spacing-lg)}.widget-mode .modal-content{padding:var(--spacing-lg);flex:1;overflow-y:auto}.widget-mode .modal-footer{padding:var(--spacing-lg)}.widget-mode .modal-footer .btn{padding:10px var(--spacing-md);font-size:var(--font-size-base)}@media (max-width: 768px){.hamburger-btn,.mobile-only{display:flex}.mobile-only{position:absolute;top:var(--spacing-lg);left:var(--spacing-lg)}}@media (max-width: 480px){.mobile-only{top:var(--spacing-md);left:var(--spacing-md);width:36px;height:36px;font-size:var(--font-size-lg)}}.app{display:flex;height:100vh;background:var(--color-gray-50);position:relative}.sidebar-overlay{display:none}.loading{display:flex;align-items:center;justify-content:center;font-size:var(--font-size-lg);color:var(--color-text-secondary)}.app.widget-mode{position:relative;height:100%;flex:1;flex-direction:column;background:var(--color-white)}.app.widget-mode .sidebar-overlay{display:block;position:absolute;top:0;left:0;right:0;bottom:0;background:#00000080;z-index:999}@media (max-width: 768px){.sidebar-overlay{display:block;position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;z-index:999}}:root{--color-primary: #4A5DCC;--color-primary-hover: #3D47CC;--color-primary-light: #E8EAFF;--color-primary-lighter: #D4D7FF;--color-gray-50: #FAFAFA;--color-gray-100: #F8F9FA;--color-gray-200: #F1F3F4;--color-gray-300: #E8EAED;--color-gray-400: #DEE2E6;--color-gray-500: #CED4DA;--color-gray-600: #9095C1;--color-gray-700: #868e96;--color-gray-800: #6C757D;--color-gray-900: #495057;--color-text-primary: #212529;--color-text-secondary: #666;--color-white: #FFFFFF;--color-danger: #dc3545;--color-danger-hover: #c82333;--color-background-light: #F8F9FA;--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 12px;--spacing-lg: 16px;--spacing-xl: 20px;--spacing-2xl: 24px;--spacing-3xl: 32px;--radius-sm: 4px;--radius-md: 6px;--radius-lg: 8px;--radius-xl: 12px;--radius-2xl: 16px;--radius-full: 50%;--shadow-sm: 0 1px 2px rgba(74, 93, 204, .15);--shadow-md: 0 2px 8px rgba(74, 93, 204, .2);--shadow-lg: 0 4px 12px rgba(74, 93, 204, .3);--shadow-xl: 0 8px 24px rgba(74, 93, 204, .3);--shadow-2xl: 0 12px 32px rgba(74, 93, 204, .4);--shadow-card: 0 2px 4px rgba(0, 0, 0, .05);--shadow-modal: 0 8px 32px rgba(0, 0, 0, .12);--shadow-dropdown: 0 4px 12px rgba(0, 0, 0, .15);--shadow-widget: 0 12px 48px rgba(0, 0, 0, .15);--shadow-focus: 0 0 0 3px rgba(74, 93, 204, .1);--font-size-xs: 11px;--font-size-sm: 12px;--font-size-base: 14px;--font-size-md: 16px;--font-size-lg: 18px;--font-size-xl: 20px;--font-size-2xl: 24px;--font-size-3xl: 28px;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--letter-spacing-normal: .3px;--letter-spacing-wide: .5px;--line-height-tight: 1.4;--line-height-normal: 1.5;--transition-fast: all .2s ease;--transition-normal: all .3s ease;--z-dropdown: 1000;--z-modal: 1001;--z-widget: 9999}body{font-family:Libre Franklin,-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--color-text-primary)}.flex-center{display:flex;align-items:center;justify-content:center}.flex-between{display:flex;align-items:center;justify-content:space-between}.flex-column{display:flex;flex-direction:column}.gap-sm{gap:var(--spacing-sm)}.gap-md{gap:var(--spacing-md)}.gap-lg{gap:var(--spacing-lg)}.input-base{padding:10px 12px;border:1px solid var(--color-gray-500);border-radius:var(--radius-md);font-size:var(--font-size-base);transition:var(--transition-fast);font-family:inherit}.input-base:focus{outline:none;border-color:var(--color-primary);box-shadow:var(--shadow-focus)}.modal-overlay-base{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080}.btn-icon-base{display:flex;align-items:center;justify-content:center;border:none;cursor:pointer;transition:var(--transition-fast);background:none}*{margin:0;padding:0;box-sizing:border-box}#root{height:100vh;display:flex;flex-direction:column}
