@import url(https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600;700&display=swap);:root{--color-primary:#0a4576;--color-primary-light:#1a5a8a;--color-primary-dark:#063354;--color-idealyst-green:#7bbf32;--color-spade-silver:#d2dce5;--color-clear-skies:#99dff9;--color-spring-green:#c2d500;--color-sunflower:#ffda00;--color-barn-red:#d7282f;--color-accent:#7bbf32;--color-accent-light:#8fd044;--color-accent-dark:#5a9a1f;--color-success:#7bbf32;--color-warning:#ffda00;--color-error:#d7282f;--color-info:#99dff9;--color-confidence-high:#7bbf32;--color-confidence-medium:#ffda00;--color-confidence-low:#d7282f;--color-white:#fff;--color-gray-50:#f7fafc;--color-gray-100:#edf2f7;--color-gray-200:#e2e8f0;--color-gray-300:#cbd5e0;--color-gray-400:#a0aec0;--color-gray-500:#718096;--color-gray-600:#4a5568;--color-gray-700:#2d3748;--color-gray-800:#1a202c;--color-gray-900:#171923;--color-black:#000;--bg-primary:var(--color-gray-900);--bg-secondary:var(--color-gray-800);--bg-tertiary:var(--color-gray-700);--bg-card:var(--color-gray-800);--bg-input:var(--color-gray-700);--bg-hover:var(--color-gray-600);--text-primary:var(--color-white);--text-secondary:var(--color-gray-300);--text-muted:var(--color-gray-500);--text-accent:var(--color-accent-light);--border-color:var(--color-gray-600);--border-color-light:var(--color-gray-700);--border-color-focus:var(--color-accent);--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;--shadow-lg:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;--shadow-xl:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;--space-xs:0.25rem;--space-sm:0.5rem;--space-md:1rem;--space-lg:1.5rem;--space-xl:2rem;--space-2xl:3rem;--radius-sm:0.25rem;--radius-md:0.5rem;--radius-lg:0.75rem;--radius-xl:1rem;--radius-full:9999px;--font-size-xs:0.75rem;--font-size-sm:0.875rem;--font-size-base:1rem;--font-size-lg:1.125rem;--font-size-xl:1.25rem;--font-size-2xl:1.5rem;--font-size-3xl:1.875rem;--font-size-4xl:2.25rem;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--line-height-tight:1.25;--line-height-normal:1.5;--line-height-relaxed:1.75;--sidebar-width:280px;--header-height:64px;--report-panel-width:320px;--transition-fast:150ms ease;--transition-normal:250ms ease;--transition-slow:350ms ease;--z-dropdown:100;--z-sticky:200;--z-modal:300;--z-tooltip:400}.mode-intelligence{--mode-color:var(--color-accent);--mode-bg:#3182ce1a}.mode-planning{--mode-color:var(--color-success);--mode-bg:#38a1691a}:root{--font-heading:"Montserrat",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--font-body:"Segoe UI",-apple-system,BlinkMacSystemFont,Roboto,"Helvetica Neue",sans-serif;--font-mono:"SF Mono","Monaco","Inconsolata","Fira Mono","Droid Sans Mono",monospace}body{font-family:Segoe UI,-apple-system,BlinkMacSystemFont,Roboto,Helvetica Neue,sans-serif}.heading,h1,h2,h3,h4,h5,h6{font-family:Montserrat,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-family:var(--font-heading);font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight);margin:0}.h1,h1{font-size:var(--font-size-4xl)}.h1,.h2,h1,h2{font-weight:var(--font-weight-bold)}.h2,h2{font-size:var(--font-size-3xl)}.h3,h3{font-size:var(--font-size-2xl)}.h4,h4{font-size:var(--font-size-xl)}.h5,h5{font-size:var(--font-size-lg)}.h6,h6{font-size:var(--font-size-base)}.text-xs{font-size:var(--font-size-xs)}.text-sm{font-size:var(--font-size-sm)}.text-base{font-size:var(--font-size-base)}.text-lg{font-size:var(--font-size-lg)}.text-xl{font-size:var(--font-size-xl)}.text-2xl{font-size:var(--font-size-2xl)}.font-normal{font-weight:var(--font-weight-normal)}.font-medium{font-weight:var(--font-weight-medium)}.font-semibold{font-weight:var(--font-weight-semibold)}.font-bold{font-weight:var(--font-weight-bold)}.font-heading{font-family:Montserrat,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-family:var(--font-heading)}.font-body{font-family:Segoe UI,-apple-system,BlinkMacSystemFont,Roboto,Helvetica Neue,sans-serif;font-family:var(--font-body)}.font-mono{font-family:SF Mono,Monaco,Inconsolata,Fira Mono,Droid Sans Mono,monospace;font-family:var(--font-mono)}.logo-text{font-family:Montserrat,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-family:var(--font-heading);font-weight:var(--font-weight-bold)}.label,.logo-text{letter-spacing:.05em}.label{font-family:Segoe UI,-apple-system,BlinkMacSystemFont,Roboto,Helvetica Neue,sans-serif;font-family:var(--font-body);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);text-transform:uppercase}.code,code,pre{font-family:SF Mono,Monaco,Inconsolata,Fira Mono,Droid Sans Mono,monospace;font-family:var(--font-mono);font-size:.9em}*{box-sizing:border-box;margin:0;padding:0}#root,body,html{height:100%;width:100%}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:var(--bg-primary);color:var(--text-primary);font-family:var(--font-body);font-size:var(--font-size-base);font-weight:var(--font-weight-normal);line-height:var(--line-height-normal)}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight);margin:0}p{margin:0}a{color:var(--color-accent);text-decoration:none}a:hover{text-decoration:underline}code,pre{font-family:var(--font-mono);font-size:.9em}button{cursor:pointer}button,input,select,textarea{font-family:inherit;font-size:inherit}:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}::-webkit-scrollbar{height:8px;width:8px}::-webkit-scrollbar-track{background:var(--bg-secondary)}::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:var(--radius-sm)}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}::selection{background:var(--color-accent-light);color:var(--color-accent-dark)}.App,.loading-screen{align-items:center;display:flex;justify-content:center;min-height:100vh;width:100%}.loading-screen{background:linear-gradient(135deg,var(--bg-primary) 0,var(--color-primary-dark) 100%);flex-direction:column;gap:var(--space-md)}.loading-screen .spinner{animation:spin .8s linear infinite;border:3px solid var(--border-color);border-radius:50%;border-top-color:var(--color-accent);height:50px;width:50px}.loading-text{color:var(--text-secondary);font-family:var(--font-heading);font-size:var(--font-size-lg);font-weight:var(--font-weight-medium)}.login-screen{align-items:center;background:linear-gradient(135deg,var(--bg-primary) 0,var(--color-primary-dark) 100%);display:flex;justify-content:center;min-height:100vh;padding:var(--space-lg)}.login-card{background:var(--bg-card);border:1px solid var(--border-color-light);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);max-width:420px;padding:var(--space-2xl);width:100%}.logo-section{margin-bottom:var(--space-2xl);text-align:center}.logo-icon{color:var(--color-accent-light);height:64px;margin:0 auto var(--space-md);width:64px}.logo-icon svg{height:100%;width:100%}.logo-title{color:var(--text-primary);font-size:var(--font-size-4xl);font-weight:var(--font-weight-bold);letter-spacing:.05em;margin:0 0 var(--space-xs)}.logo-subtitle,.logo-title{font-family:var(--font-heading)}.logo-subtitle{color:var(--color-accent-light);font-size:var(--font-size-lg);font-weight:var(--font-weight-medium);margin:0 0 var(--space-sm)}.logo-tagline{color:var(--text-secondary);font-size:var(--font-size-sm);margin:0}.login-buttons{flex-direction:column;margin-bottom:var(--space-lg)}.login-button,.login-buttons{display:flex;gap:var(--space-md)}.login-button{align-items:center;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg);color:var(--text-primary);cursor:pointer;font-family:var(--font-body);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);justify-content:center;padding:var(--space-md) var(--space-lg);transition:all var(--transition-fast);width:100%}.login-button:hover:not(:disabled){background:var(--bg-hover);border-color:var(--border-color-focus);transform:translateY(-1px)}.login-button:active:not(:disabled){transform:translateY(0)}.login-button:disabled{cursor:not-allowed;opacity:.6}.button-icon{flex-shrink:0;height:20px;width:20px}.microsoft-button:hover:not(:disabled){border-color:#00a4ef}.google-button:hover:not(:disabled){border-color:#4285f4}.loading-indicator{align-items:center;color:var(--text-secondary);display:flex;font-size:var(--font-size-sm);gap:var(--space-sm);justify-content:center;padding:var(--space-md)}.spinner{animation:spin .8s linear infinite;border:2px solid var(--border-color);border-radius:50%;border-top-color:var(--color-accent);height:20px;width:20px}.error-message{align-items:center;background:#e53e3e1a;border:1px solid var(--color-error);border-radius:var(--radius-md);color:var(--color-error);display:flex;font-size:var(--font-size-sm);gap:var(--space-sm);margin-bottom:var(--space-md);padding:var(--space-md)}.error-icon{flex-shrink:0;height:18px;width:18px}.login-footer{border-top:1px solid var(--border-color-light);padding-top:var(--space-lg);text-align:center}.login-footer p{color:var(--text-muted);font-size:var(--font-size-xs);margin:0}@media (max-width:480px){.login-card{padding:var(--space-xl)}.logo-title{font-size:var(--font-size-3xl)}.logo-icon{height:48px;width:48px}}.layout{background:var(--bg-primary);display:flex;flex-direction:column;height:100vh;overflow:hidden;width:100%}.layout-body,.layout-main{display:flex;flex:1 1;overflow:hidden}.layout-main{background:var(--bg-secondary);border-left:1px solid var(--border-color-light);border-right:1px solid var(--border-color-light);flex-direction:column}.layout-main.admin-mode{border-left:none;border-right:none}.layout-right-panel{background:var(--bg-card);border-left:1px solid var(--border-color-light);display:flex;flex-direction:column;position:relative;transition:width var(--transition-normal);width:280px}.layout-right-panel.collapsed{width:40px}.right-panel-content{flex:1 1;overflow-y:auto;padding:var(--space-md)}.panel-toggle{align-items:center;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;display:flex;height:24px;justify-content:center;position:absolute;top:var(--space-md);transition:all var(--transition-fast);width:24px;z-index:10}.panel-toggle:hover{background:var(--bg-hover);color:var(--text-primary)}.right-toggle{left:-12px}.panel-section{margin-bottom:var(--space-lg)}.panel-section-title{border-bottom:1px solid var(--border-color-light);color:var(--text-primary);font-family:var(--font-heading);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);letter-spacing:.05em;margin:0 0 var(--space-sm);padding-bottom:var(--space-xs);text-transform:uppercase}.panel-section-content{color:var(--text-secondary);font-size:var(--font-size-sm)}.placeholder-text{color:var(--text-muted);font-style:italic;margin:0}.panel-section-title .badge{background:var(--color-idealyst-green);border-radius:var(--radius-sm);color:#fff;display:inline-block;font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);letter-spacing:0;margin-left:var(--space-xs);padding:2px 6px;text-transform:none}.panel-list{list-style:none;margin:0;padding:0}.panel-list-item{background:var(--bg-secondary);border-left:3px solid var(--border-color);border-radius:var(--radius-sm);margin-bottom:var(--space-xs);padding:var(--space-sm)}.panel-list-item .item-category,.panel-list-item .item-priority,.panel-list-item .item-type{background:var(--bg-hover);border-radius:var(--radius-sm);color:var(--text-secondary);display:inline-block;font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);margin-bottom:var(--space-xs);padding:2px 6px;text-transform:uppercase}.panel-list-item .item-title{color:var(--text-primary);display:block;font-weight:var(--font-weight-medium);margin-bottom:var(--space-xs)}.panel-list-item .item-text{color:var(--text-secondary);display:block;font-size:var(--font-size-sm);line-height:1.4}.panel-list-item .item-summary{color:var(--text-muted);font-size:var(--font-size-xs);margin:var(--space-xs) 0 0}.panel-list-item .item-timeframe{color:var(--text-muted)}.confidence-badge,.panel-list-item .item-timeframe{display:inline-block;font-size:var(--font-size-xs);margin-left:var(--space-xs)}.confidence-badge{border-radius:var(--radius-sm);font-weight:var(--font-weight-semibold);padding:2px 6px;text-transform:uppercase}.confidence-badge.high{background:#7bbf3233;color:var(--color-idealyst-green)}.confidence-badge.medium{background:#ffda0033;color:#b8a200}.confidence-badge.low{background:#d7282f33;color:var(--color-barn-red)}.panel-list-item.priority-high{border-left-color:var(--color-barn-red)}.panel-list-item.priority-high .item-priority{background:#d7282f26;color:var(--color-barn-red)}.panel-list-item.priority-medium{border-left-color:var(--color-sunflower)}.panel-list-item.priority-medium .item-priority{background:#ffda0026;color:#b8a200}.panel-list-item.priority-low{border-left-color:var(--color-idealyst-green)}.panel-list-item.priority-low .item-priority{background:#7bbf3226;color:var(--color-idealyst-green)}.panel-list-item.criticality-high{border-left-color:var(--color-barn-red)}.panel-list-item.criticality-medium{border-left-color:var(--color-sunflower)}.panel-list-item.criticality-low{border-left-color:var(--color-idealyst-green)}.validation-status{font-size:var(--font-size-sm)}.validation-status .confidence-indicator{align-items:center;background:var(--bg-secondary);border-radius:var(--radius-sm);display:flex;justify-content:space-between;margin-bottom:var(--space-sm);padding:var(--space-sm)}.validation-status .confidence-indicator.high{border-left:3px solid var(--color-idealyst-green)}.validation-status .confidence-indicator.medium{border-left:3px solid var(--color-sunflower)}.validation-status .confidence-indicator.low{border-left:3px solid var(--color-barn-red)}.validation-status .label{color:var(--text-secondary);font-size:var(--font-size-sm)}.validation-status .value{color:var(--text-primary);font-weight:var(--font-weight-semibold)}.validation-status .confidence-factors{color:var(--text-muted);font-size:var(--font-size-xs);font-style:italic;margin:var(--space-xs) 0 var(--space-sm)}.validation-status .validation-details{grid-gap:var(--space-sm);display:grid;gap:var(--space-sm);grid-template-columns:1fr 1fr;margin-bottom:var(--space-sm)}.validation-status .detail-item{background:var(--bg-secondary);border-radius:var(--radius-sm);padding:var(--space-xs) var(--space-sm)}.validation-status .uncertainties{margin-top:var(--space-sm)}.validation-status .uncertainties ul{margin:var(--space-xs) 0 0;padding-left:var(--space-md)}.validation-status .uncertainties li{color:var(--text-secondary);font-size:var(--font-size-xs);margin-bottom:var(--space-xs)}@media (max-width:1200px){.layout-right-panel{width:240px}}@media (max-width:992px){.layout-right-panel{display:none}}@media (max-width:768px){.layout-body{flex-direction:column}}.sidebar{background:var(--bg-card);border-right:1px solid var(--border-color-light);display:flex;flex-direction:column;overflow:hidden;position:relative;transition:width var(--transition-normal);width:260px}.sidebar.collapsed{width:40px}.sidebar-toggle{align-items:center;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;display:flex;height:24px;justify-content:center;position:absolute;right:-12px;top:var(--space-md);transition:all var(--transition-fast);width:24px;z-index:10}.sidebar-toggle:hover{background:var(--bg-hover);color:var(--text-primary)}.sidebar-content{flex:1 1;overflow-y:auto;padding:var(--space-md)}.sidebar-logo{align-items:center;border-bottom:1px solid var(--border-color-light);display:flex;gap:var(--space-sm);margin-bottom:var(--space-lg);padding:var(--space-md)}.sidebar-logo .logo-icon{color:var(--color-accent);height:32px;width:32px}.sidebar-logo .logo-icon svg{height:100%;width:100%}.sidebar-logo .logo-text{color:var(--text-primary);font-family:var(--font-heading);font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);letter-spacing:.02em}.sidebar-section{margin-bottom:var(--space-md)}.section-header{background:none;border:none;border-radius:var(--radius-sm);cursor:pointer;padding:var(--space-sm) var(--space-xs);transition:all var(--transition-fast);width:100%}.section-header:hover{background:var(--bg-hover)}.section-header-left{align-items:center;color:var(--text-primary);display:flex;font-family:var(--font-heading);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);gap:var(--space-sm);letter-spacing:.05em;text-transform:uppercase}.section-icon{color:var(--text-secondary)}.chevron{color:var(--text-muted);transition:transform var(--transition-fast)}.chevron.expanded{transform:rotate(180deg)}.section-content{padding:var(--space-sm) 0 var(--space-sm) var(--space-xl)}.section-list{list-style:none;margin:0;padding:0}.section-item{border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;font-size:var(--font-size-sm);padding:var(--space-xs) var(--space-sm);transition:all var(--transition-fast)}.section-item:hover{background:var(--bg-hover);color:var(--text-primary)}.section-item.active{background:var(--color-primary-light);color:var(--color-primary)}.empty-message{color:var(--text-muted);font-size:var(--font-size-sm);font-style:italic;margin:var(--space-xs) 0}.section-item{align-items:center;display:flex;justify-content:space-between}.section-item .item-title{flex:1 1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.section-item .item-meta{color:var(--text-muted);font-size:var(--font-size-xs);margin-left:var(--space-xs)}.section-item .item-delete{background:none;border:none;color:var(--text-muted);cursor:pointer;flex-shrink:0;margin-left:var(--space-xs);opacity:.5;padding:4px;transition:all var(--transition-fast)}.section-item:hover .item-delete{opacity:1}.section-item .item-delete:hover{background:#d7282f1a;border-radius:var(--radius-sm);color:var(--color-error)}.section-item.project-item{cursor:pointer}.section-item.project-item.active{background:#7bbf3226;border-left:3px solid var(--color-idealyst-green);padding-left:calc(var(--space-sm) - 3px)}.section-item.project-item.active .item-title{color:var(--color-idealyst-green);font-weight:var(--font-weight-semibold)}.section-item .item-count{background:var(--color-primary);border-radius:10px;color:#fff;font-size:var(--font-size-xs);margin-left:auto;margin-right:var(--space-xs);padding:2px 6px}.section-item.priority-high{border-left:3px solid var(--color-error);padding-left:calc(var(--space-sm) - 3px)}.section-item.priority-medium{border-left:3px solid var(--color-sunflower);padding-left:calc(var(--space-sm) - 3px)}.section-item.priority-low{border-left:3px solid var(--color-idealyst-green);padding-left:calc(var(--space-sm) - 3px)}.section-count{background:var(--text-muted);border-radius:8px;color:#fff;font-size:var(--font-size-xs);margin-left:var(--space-xs);padding:1px 6px}.section-item.file-item{align-items:center;display:flex;gap:var(--space-xs)}.section-item.file-item .file-icon{flex-shrink:0;font-size:14px}.projects-list{padding:0}.project-container{margin-bottom:var(--space-xs)}.project-expand-btn{align-items:center;background:none;border:none;color:var(--text-muted);cursor:pointer;display:flex;flex-shrink:0;justify-content:center;padding:4px}.project-expand-btn:hover{color:var(--text-primary)}.chevron-small{transition:transform var(--transition-fast)}.chevron-small.expanded{transform:rotate(90deg)}.project-details{border-left:1px solid var(--border-color-light);margin-left:20px;padding:var(--space-xs) 0;padding-left:var(--space-sm)}.project-subsection{margin-bottom:var(--space-sm)}.subsection-header{color:var(--text-muted);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);letter-spacing:.03em;margin-bottom:var(--space-xs);text-transform:uppercase}.subsection-list{list-style:none;margin:0;padding:0}.subsection-item{align-items:center;border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;display:flex;font-size:var(--font-size-xs);gap:var(--space-xs);padding:var(--space-xs);transition:all var(--transition-fast)}.subsection-item:hover{background:var(--bg-hover);color:var(--text-primary)}.subsection-item .file-icon{flex-shrink:0;font-size:12px}.subsection-item .file-name{flex:1 1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.subsection-item.conversation-item{cursor:pointer}.subsection-item .conv-title{flex:1 1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.subsection-item .conv-date{color:var(--text-muted);flex-shrink:0;font-size:10px}.subsection-item .item-delete{background:none;border:none;color:var(--text-muted);cursor:pointer;flex-shrink:0;opacity:0;padding:2px;transition:all var(--transition-fast)}.subsection-item:hover .item-delete{opacity:1}.subsection-item .item-delete:hover{color:var(--color-error)}.subsection-empty,.subsection-loading{color:var(--text-muted);font-size:var(--font-size-xs);font-style:italic;padding:var(--space-xs)}.project-upload-btn{align-items:center;background:none;border:1px dashed var(--border-color);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;display:flex;font-size:var(--font-size-xs);gap:var(--space-xs);margin-top:var(--space-xs);padding:var(--space-xs) var(--space-sm);transition:all var(--transition-fast);width:100%}.project-upload-btn:hover{background:var(--bg-hover);border-color:var(--color-idealyst-green);color:var(--color-idealyst-green)}.project-upload-btn:disabled{cursor:not-allowed;opacity:.6}.add-form{margin-top:var(--space-sm)}.add-form input{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-primary);font-family:var(--font-body);font-size:var(--font-size-sm);padding:var(--space-xs) var(--space-sm);width:100%}.add-form input:focus{border-color:var(--color-idealyst-green);outline:none}.add-form-buttons{display:flex;gap:var(--space-xs);margin-top:var(--space-xs)}.add-form-buttons button{border:none;border-radius:var(--radius-sm);cursor:pointer;flex:1 1;font-size:var(--font-size-xs);padding:var(--space-xs) var(--space-sm);transition:all var(--transition-fast)}.add-form-buttons .btn-confirm{background:var(--color-idealyst-green);color:#fff}.add-form-buttons .btn-confirm:hover{background:var(--color-accent-dark)}.add-form-buttons .btn-cancel{background:var(--bg-secondary);border:1px solid var(--border-color);color:var(--text-secondary)}.add-form-buttons .btn-cancel:hover{background:var(--bg-hover)}.add-button{align-items:center;background:none;border:1px dashed var(--border-color);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;display:flex;font-size:var(--font-size-sm);gap:var(--space-xs);margin-top:var(--space-sm);padding:var(--space-xs) var(--space-sm);transition:all var(--transition-fast);width:100%}.add-button:hover{background:var(--bg-hover);border-color:var(--color-idealyst-green);color:var(--color-idealyst-green)}@media (max-width:768px){.sidebar{bottom:0;left:0;position:fixed;top:0;transform:translateX(-100%);z-index:100}.sidebar:not(.collapsed){box-shadow:var(--shadow-xl);transform:translateX(0)}}.app-header{align-items:center;background:var(--color-primary);border-bottom:1px solid var(--color-primary-dark);display:flex;flex-shrink:0;height:64px;justify-content:space-between;padding:var(--space-sm) var(--space-lg)}.header-left{flex:1 1}.header-brand{align-items:center;display:flex;gap:var(--space-md)}.brand-logo{background:#fff;border-radius:var(--radius-sm);height:40px;object-fit:contain;padding:4px 8px;width:auto}.brand-divider{background:#ffffff4d;height:32px;width:1px}.brand-text{display:flex;flex-direction:column}.brand-name{color:var(--color-white);font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);letter-spacing:.02em;line-height:1.2}.brand-name,.brand-tagline{font-family:var(--font-heading)}.brand-tagline{color:var(--color-idealyst-green);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);letter-spacing:.05em;line-height:1}.header-center{display:flex;flex:2 1;justify-content:center}.mode-toggle{background:#ffffff1a;border:1px solid #fff3;border-radius:var(--radius-lg);padding:var(--space-xs)}.mode-button{align-items:center;background:#0000;border:none;border-radius:var(--radius-md);color:var(--color-primary-dark);cursor:pointer;display:flex;font-family:var(--font-body);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);gap:var(--space-sm);padding:var(--space-sm) var(--space-lg);transition:all var(--transition-fast)}.mode-button svg{stroke:var(--color-primary-dark)}.mode-button:hover{background:#ffffff4d;color:var(--color-primary)}.mode-button:hover svg{stroke:var(--color-primary)}.mode-button.active{background:var(--color-idealyst-green);box-shadow:var(--shadow-sm);color:#fff}.mode-button.active svg{stroke:#fff}.mode-button.admin-button.active{background:var(--color-sunflower);color:var(--color-primary-dark)}.mode-button.admin-button.active svg{stroke:var(--color-primary-dark)}.header-right{flex:1 1;gap:var(--space-md);justify-content:flex-end}.header-right,.user-info{align-items:center;display:flex}.user-info{border-radius:var(--radius-md);gap:var(--space-sm);padding:var(--space-xs) var(--space-sm);transition:background var(--transition-fast)}.user-avatar{border:2px solid #ffffff4d;border-radius:50%;height:36px;object-fit:cover;width:36px}.user-avatar-placeholder{align-items:center;background:var(--color-idealyst-green);border-radius:50%;color:var(--color-white);display:flex;font-family:var(--font-heading);font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);height:36px;justify-content:center;width:36px}.user-details{display:flex;flex-direction:column}.user-name{color:var(--color-white);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);line-height:1.2}.user-email{color:#ffffffb3;font-size:var(--font-size-xs);line-height:1.2}.logout-button{align-items:center;background:#ffffff1a;border:1px solid #fff3;border-radius:var(--radius-md);color:#ffffffb3;cursor:pointer;display:flex;height:40px;justify-content:center;transition:all var(--transition-fast);width:40px}.logout-button:hover{background:#fff3;border-color:#fff6;color:var(--color-white)}@media (max-width:992px){.user-details{display:none}}@media (max-width:768px){.app-header{padding:var(--space-sm) var(--space-md)}.brand-text,.mode-button span{display:none}.mode-button{padding:var(--space-sm)}}.intelligence-view{display:flex;flex-direction:column;height:100%;overflow:visible}.intelligence-toolbar{background:var(--bg-card);border-top:1px solid var(--border-color-light);overflow:visible;padding:var(--space-sm) var(--space-lg);position:relative;z-index:100}.intelligence-content{display:flex;flex:1 1;overflow:hidden}.intelligence-content .chat-interface{border-radius:0;box-shadow:none;height:100%;max-width:none}.intelligence-content .chat-header{display:none}@media (max-width:768px){.intelligence-toolbar{padding:var(--space-sm) var(--space-md)}}.chat-interface{background:#fff;box-shadow:0 0 60px #0003;display:flex;flex-direction:column;height:100vh;max-width:1200px;width:100%}.chat-header{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 2px 10px #0000001a;color:#fff;display:flex;justify-content:space-between;padding:20px 30px}.header-left{align-items:baseline;display:flex;gap:15px}.header-title{font-size:28px;font-weight:700;margin:0}.header-subtitle{font-size:14px;opacity:.9}.header-actions{display:flex;gap:10px}.logout-button,.new-chat-button,.save-button{align-items:center;background:#fff3;border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;height:40px;justify-content:center;transition:all .3s ease;width:40px}.logout-button:hover,.new-chat-button:hover,.save-button:hover:not(:disabled){background:#ffffff4d;transform:translateY(-2px)}.save-button:disabled{cursor:not-allowed;opacity:.5}.save-button.success{background:#7bbf32;background:var(--color-idealyst-green,#7bbf32)}.save-button .spinning{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.chat-messages{background:#f5f7fa;flex:1 1;overflow-y:auto;padding:30px}.welcome-message{color:#666;padding:48px 20px;text-align:center}.welcome-message h2{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#0a4576,#1a5a8a);background:linear-gradient(135deg,var(--color-primary,#0a4576) 0,var(--color-primary-light,#1a5a8a) 100%);-webkit-background-clip:text;background-clip:text;font-size:24px;margin-bottom:8px}.welcome-message p{font-size:15px;margin-bottom:32px}.example-questions{background:#fff;border-radius:12px;box-shadow:0 4px 20px #00000014;margin:0 auto;max-width:600px;padding:24px;text-align:left}.example-questions p{color:#333;font-size:14px;font-weight:600;margin-bottom:12px}.example-questions ul{list-style:none;padding:0}.example-questions li{background:#f5f7fa;border-left:3px solid #0a4576;border-left:3px solid var(--color-primary,#0a4576);border-radius:8px;color:#555;cursor:pointer;font-size:14px;margin-bottom:8px;padding:10px 14px;transition:all .2s ease}.example-questions li:hover{background:#e8ecf1;border-left-color:#7bbf32;border-left-color:var(--color-idealyst-green,#7bbf32)}.example-questions li button{background:none;border:none;color:inherit;cursor:pointer;font:inherit;margin:0;padding:0;text-align:left;width:100%}.message{animation:messageSlideIn .3s ease-out;display:flex;gap:15px;margin-bottom:25px}@keyframes messageSlideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.message-avatar{align-items:center;display:flex;flex-shrink:0;font-size:28px;height:40px;justify-content:center;width:40px}.message-content{flex:1 1;max-width:800px}.message.user .message-content{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:18px 18px 5px 18px;color:#fff;padding:15px 20px}.message.assistant .message-content{background:#fff;border-radius:18px 18px 18px 5px;box-shadow:0 2px 10px #00000014;color:#333;padding:15px 20px}.message.error .message-content{background:#fff5f5;border-left:4px solid #fc8181;border-radius:18px;color:#c53030;padding:15px 20px}.message-text{word-wrap:break-word;line-height:1.6}.message.assistant .message-text{white-space:normal}.message.assistant .message-text p{margin:0 0 12px}.message.assistant .message-text p:last-child{margin-bottom:0}.message.assistant .message-text h1,.message.assistant .message-text h2,.message.assistant .message-text h3,.message.assistant .message-text h4,.message.assistant .message-text h5,.message.assistant .message-text h6{color:#0a4576;color:var(--color-primary,#0a4576);font-weight:600;line-height:1.3;margin:20px 0 12px}.message.assistant .message-text h1:first-child,.message.assistant .message-text h2:first-child,.message.assistant .message-text h3:first-child{margin-top:0}.message.assistant .message-text h1{font-size:1.5em}.message.assistant .message-text h2{font-size:1.3em}.message.assistant .message-text h3{font-size:1.15em}.message.assistant .message-text h4{font-size:1em}.message.assistant .message-text ol,.message.assistant .message-text ul{margin:12px 0;padding-left:24px}.message.assistant .message-text li{margin-bottom:6px}.message.assistant .message-text li:last-child{margin-bottom:0}.message.assistant .message-text code{background:#f1f5f9;border-radius:4px;color:#e11d48;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.9em;padding:2px 6px}.message.assistant .message-text pre{background:#1e293b;border-radius:8px;color:#e2e8f0;margin:12px 0;overflow-x:auto;padding:16px}.message.assistant .message-text pre code{background:none;color:inherit;font-size:.85em;padding:0}.message.assistant .message-text blockquote{background:#f8fafc;border-left:4px solid #7bbf32;border-left:4px solid var(--color-idealyst-green,#7bbf32);border-radius:0 8px 8px 0;color:#475569;font-style:italic;margin:12px 0;padding:8px 16px}.message.assistant .message-text blockquote p{margin:0}.message.assistant .message-text table{border-collapse:collapse;font-size:.9em;margin:12px 0;width:100%}.message.assistant .message-text td,.message.assistant .message-text th{border:1px solid #e2e8f0;padding:10px 12px;text-align:left}.message.assistant .message-text th{background:#0a4576;background:var(--color-primary,#0a4576);color:#fff;font-weight:600}.message.assistant .message-text tr:nth-child(2n){background:#f8fafc}.message.assistant .message-text a{border-bottom:1px solid #7bbf32;border-bottom:1px solid var(--color-idealyst-green,#7bbf32);color:#0a4576;color:var(--color-primary,#0a4576);text-decoration:none;transition:all .2s ease}.message.assistant .message-text a:hover{color:#7bbf32;color:var(--color-idealyst-green,#7bbf32)}.message.assistant .message-text hr{border:none;border-top:2px solid #e2e8f0;margin:16px 0}.message.assistant .message-text strong{color:#1e293b;font-weight:600}.message.assistant .message-text em{font-style:italic}.message.user .message-text{white-space:pre-wrap}.typing-indicator{gap:6px;padding:15px 20px}.status-text{font-size:14px;margin-top:10px}.chat-input-form{background:#fff;border-top:1px solid #e0e0e0;padding:20px 30px;position:relative}.loaded-conversation-notice{align-items:center;background:linear-gradient(135deg,#667eea1a,#764ba21a);border:1px solid #667eea4d;border-radius:8px;display:flex;font-size:13px;justify-content:space-between;margin-bottom:12px;padding:10px 14px}.loaded-conversation-notice span{color:#0a4576;color:var(--color-primary,#0a4576);font-weight:500}.loaded-conversation-notice button{background:#7bbf32;background:var(--color-idealyst-green,#7bbf32);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:12px;font-weight:500;padding:6px 12px;transition:background .2s}.loaded-conversation-notice button:hover{background:#6aad28}.input-error{background:#fff5f5;border-left:4px solid #fc8181;border-radius:8px;color:#c53030;font-size:14px;margin-bottom:15px;padding:12px 15px}.input-wrapper{align-items:flex-end;display:flex;gap:10px}.chat-input{border:2px solid #e0e0e0;border-radius:12px;flex:1 1;font-family:inherit;font-size:16px;max-height:150px;min-height:50px;outline:none;padding:15px 20px;resize:none;transition:all .3s ease}.chat-input:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.chat-input:disabled{background:#f5f5f5;cursor:not-allowed}.send-button{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:12px;color:#fff;cursor:pointer;display:flex;flex-shrink:0;height:50px;justify-content:center;transition:all .3s ease;width:50px}.send-button:hover:not(:disabled){box-shadow:0 5px 15px #667eea66;transform:translateY(-2px)}.send-button:active:not(:disabled){transform:translateY(0)}.send-button:disabled{cursor:not-allowed;opacity:.5}.chat-messages::-webkit-scrollbar{width:8px}.chat-messages::-webkit-scrollbar-track{background:#f1f1f1}.chat-messages::-webkit-scrollbar-thumb{background:#888;border-radius:4px}.chat-messages::-webkit-scrollbar-thumb:hover{background:#555}.file-selector{flex-direction:column;padding:8px 0;padding:var(--space-sm,8px) 0}.file-selector,.selected-files{display:flex;gap:8px;gap:var(--space-sm,8px)}.selected-files{align-items:flex-start;flex-wrap:wrap}.selected-label{color:#666;color:var(--text-secondary,#666);font-size:13px;font-size:var(--font-size-sm,13px);padding-top:4px}.selected-chips{align-items:center;display:flex;flex-wrap:wrap;gap:4px;gap:var(--space-xs,4px)}.file-chip{align-items:center;background:#0a45761a;background:var(--color-primary-light,#0a45761a);border:1px solid #0a4576;border:1px solid var(--color-primary,#0a4576);border-radius:6px;border-radius:var(--radius-md,6px);color:#0a4576;color:var(--color-primary,#0a4576);display:inline-flex;font-size:12px;font-size:var(--font-size-xs,12px);gap:4px;padding:4px 8px}.file-chip .file-icon{font-size:12px}.file-chip .file-name{max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-chip .remove-file{align-items:center;background:none;border:none;color:#0a4576;color:var(--color-primary,#0a4576);cursor:pointer;display:flex;justify-content:center;opacity:.7;padding:2px;transition:opacity .2s}.file-chip .remove-file:hover{opacity:1}.clear-all{background:none;border:none;color:#999;color:var(--text-muted,#999);cursor:pointer;font-size:12px;font-size:var(--font-size-xs,12px);padding:4px 8px;text-decoration:underline}.clear-all:hover{color:#d7282f;color:var(--color-error,#d7282f)}.add-files-button{align-items:center;align-self:flex-start;background:#f5f7fa;background:var(--bg-secondary,#f5f7fa);border:1px dashed #ddd;border:1px dashed var(--border-color,#ddd);border-radius:6px;border-radius:var(--radius-md,6px);color:#666;color:var(--text-secondary,#666);cursor:pointer;display:inline-flex;font-size:13px;font-size:var(--font-size-sm,13px);gap:4px;gap:var(--space-xs,4px);padding:6px 12px;transition:all .2s}.add-files-button:hover{background:#7bbf320d;border-color:#7bbf32;border-color:var(--color-idealyst-green,#7bbf32);color:#7bbf32;color:var(--color-idealyst-green,#7bbf32)}.add-files-button .file-count{background:#0a4576;background:var(--color-primary,#0a4576);border-radius:10px;color:#fff;font-size:10px;font-weight:600;padding:2px 6px}.file-picker{background:#fff;background:var(--bg-card,#fff);border:1px solid #ddd;border:1px solid var(--border-color,#ddd);border-radius:12px;border-radius:var(--radius-lg,12px);bottom:100%;box-shadow:0 4px 20px #00000026;box-shadow:var(--shadow-lg,0 4px 20px #00000026);display:flex;flex-direction:column;left:0;margin-bottom:8px;margin-bottom:var(--space-sm,8px);max-height:300px;position:absolute;right:0;z-index:100}.picker-header{border-bottom:1px solid #eee;border-bottom:1px solid var(--border-color-light,#eee);color:#333;color:var(--text-primary,#333);font-size:13px;font-size:var(--font-size-sm,13px);font-weight:600;justify-content:space-between;padding:8px 16px;padding:var(--space-sm,8px) var(--space-md,16px)}.close-picker,.picker-header{align-items:center;display:flex}.close-picker{background:none;border:none;color:#999;color:var(--text-muted,#999);cursor:pointer;justify-content:center;padding:4px}.close-picker:hover{color:#333;color:var(--text-primary,#333)}.picker-content{flex:1 1;overflow-y:auto;padding:8px;padding:var(--space-sm,8px)}.file-group{margin-bottom:8px;margin-bottom:var(--space-sm,8px)}.group-header{color:#999;color:var(--text-muted,#999);font-size:12px;font-size:var(--font-size-xs,12px);font-weight:600;letter-spacing:.05em;margin-bottom:4px;margin-bottom:var(--space-xs,4px);text-transform:uppercase}.file-option,.group-header{padding:4px 8px;padding:var(--space-xs,4px) var(--space-sm,8px)}.file-option{align-items:center;border-radius:4px;border-radius:var(--radius-sm,4px);cursor:pointer;display:flex;gap:8px;gap:var(--space-sm,8px);transition:background .2s}.file-option:hover{background:#0000000d;background:var(--bg-hover,#0000000d)}.file-option input[type=checkbox]{accent-color:#7bbf32;accent-color:var(--color-idealyst-green,#7bbf32);height:16px;width:16px}.file-option .file-icon{font-size:16px}.file-option .file-details{display:flex;flex:1 1;flex-direction:column;min-width:0}.file-option .file-name{color:#333;color:var(--text-primary,#333);font-size:13px;font-size:var(--font-size-sm,13px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-option .file-size{font-size:11px;font-size:var(--font-size-xs,11px)}.file-option .file-size,.no-files{color:#999;color:var(--text-muted,#999)}.no-files{font-size:13px;font-size:var(--font-size-sm,13px);padding:24px;padding:var(--space-lg,24px);text-align:center}.picker-footer{border-top:1px solid #eee;border-top:1px solid var(--border-color-light,#eee);display:flex;justify-content:flex-end;padding:8px 16px;padding:var(--space-sm,8px) var(--space-md,16px)}.done-button{background:#7bbf32;background:var(--color-idealyst-green,#7bbf32);border:none;border-radius:6px;border-radius:var(--radius-md,6px);color:#fff;cursor:pointer;font-size:13px;font-size:var(--font-size-sm,13px);font-weight:500;padding:6px 16px;transition:background .2s}.done-button:hover{background:#6aad28;background:var(--color-accent-dark,#6aad28)}.agent-tabs{align-items:center;display:flex;flex-wrap:wrap;gap:var(--space-md)}.agent-tabs-label{color:var(--text-secondary);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);white-space:nowrap}.agent-tabs-container{display:flex;flex-wrap:wrap;gap:var(--space-sm)}.agent-tab{align-items:center;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;display:flex;font-family:var(--font-body);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);gap:var(--space-xs);padding:var(--space-xs) var(--space-md);transition:all var(--transition-fast)}.agent-tab:hover:not(:disabled){background:var(--bg-hover);border-color:var(--border-color-focus);color:var(--text-primary)}.agent-tab.active{background:var(--color-idealyst-green);border-color:var(--color-idealyst-green);color:#fff}.agent-tab.active svg{stroke:#fff}.agent-tab.disabled{cursor:not-allowed;opacity:.6}.coming-soon-badge{background:var(--color-sunflower);border-radius:var(--radius-sm);color:var(--color-primary-dark);font-size:10px;font-weight:var(--font-weight-semibold);letter-spacing:.05em;padding:2px 6px;text-transform:uppercase}.agent-tab-dropdown-container{position:relative}.dropdown-arrow{margin-left:var(--space-xs);transition:transform var(--transition-fast)}.dropdown-arrow.open{transform:rotate(180deg)}.agent-dropdown{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);bottom:100%;box-shadow:var(--shadow-lg);left:0;margin-bottom:var(--space-sm);max-height:400px;min-width:280px;overflow-y:auto;position:absolute;z-index:var(--z-dropdown)}.dropdown-section{padding:var(--space-xs) 0}.dropdown-section:not(:last-child){border-bottom:1px solid var(--border-color-light)}.dropdown-section-header{color:var(--text-muted);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);letter-spacing:.05em;padding:var(--space-xs) var(--space-md);text-transform:uppercase}.dropdown-item{align-items:center;background:#0000;border:none;color:var(--text-primary);cursor:pointer;display:flex;font-family:var(--font-body);font-size:var(--font-size-sm);justify-content:space-between;padding:var(--space-sm) var(--space-md);text-align:left;transition:background var(--transition-fast);width:100%}.dropdown-item:hover{background:var(--bg-hover)}.dropdown-item.selected{background:#7bbf3226;color:var(--color-idealyst-green)}.dropdown-item-name{font-weight:var(--font-weight-medium)}.dropdown-item-model{background:var(--bg-secondary);border-radius:var(--radius-sm);color:var(--text-muted);font-size:var(--font-size-xs);padding:2px 8px}.dropdown-item.selected .dropdown-item-model{background:#7bbf3233;color:var(--color-accent-dark)}.agent-mode-description{color:var(--text-muted);font-size:var(--font-size-xs);font-style:italic;margin-top:var(--space-xs);width:100%}@media (max-width:768px){.agent-tabs{align-items:flex-start;flex-direction:column}.agent-tabs-container{width:100%}.agent-tab{flex:1 1;justify-content:center}.agent-dropdown{left:0;min-width:auto;right:0}}.planning-view{align-items:center;background:var(--bg-secondary);display:flex;height:100%;justify-content:center;padding:var(--space-xl)}.coming-soon-container{background:var(--bg-card);border:1px solid var(--border-color-light);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);max-width:500px;padding:var(--space-2xl);text-align:center}.coming-soon-icon{align-items:center;background:var(--color-primary-light);border-radius:50%;color:var(--color-accent);display:flex;height:100px;justify-content:center;margin:0 auto var(--space-lg);width:100px}.coming-soon-title{color:var(--text-primary);font-family:var(--font-heading);font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);margin:0 0 var(--space-xs)}.coming-soon-subtitle{color:var(--color-accent);font-family:var(--font-heading);font-size:var(--font-size-lg);font-weight:var(--font-weight-medium);letter-spacing:.05em;margin:0 0 var(--space-lg)}.coming-soon-description{color:var(--text-secondary);font-size:var(--font-size-base);line-height:var(--line-height-relaxed);text-align:left}.coming-soon-description p{margin:0 0 var(--space-md)}.feature-list{list-style:none;margin:0;padding:0}.feature-list li{align-items:flex-start;color:var(--text-secondary);display:flex;font-size:var(--font-size-sm);gap:var(--space-sm);padding:var(--space-sm) 0}.feature-list li svg{color:var(--color-success);flex-shrink:0;margin-top:2px}.coming-soon-footer{border-top:1px solid var(--border-color-light);margin-top:var(--space-xl);padding-top:var(--space-lg)}.coming-soon-footer p{color:var(--text-muted);font-size:var(--font-size-sm);font-style:italic;margin:0}@media (max-width:768px){.coming-soon-container{padding:var(--space-xl)}.coming-soon-title{font-size:var(--font-size-2xl)}}.admin-panel{background:#f5f7fa;color:#333;display:flex;flex-direction:column;height:100%;width:100%}.admin-header{background:#fff;border-bottom:1px solid #e0e0e0;justify-content:space-between;padding:15px 25px}.admin-header,.agent-selector{align-items:center;display:flex}.agent-selector{gap:12px}.agent-selector label{color:#333;font-weight:600}.agent-selector select{background:#fff;border:2px solid #e0e0e0;border-radius:8px;cursor:pointer;font-size:15px;min-width:280px;outline:none;padding:10px 15px;transition:border-color .2s}.agent-selector select:focus{border-color:#667eea}.agent-info{display:flex;gap:15px}.agent-model{background:#f0f0f0;border-radius:6px;color:#666;font-size:14px;padding:8px 15px}.admin-content{gap:20px;padding:20px}.admin-content,.sandbox-section{display:flex;flex:1 1;overflow:hidden}.sandbox-section{background:#fff;border-radius:12px;box-shadow:0 2px 10px #00000014;flex-direction:column}.section-header{align-items:center;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;padding:15px 20px}.section-header h3{color:#333;font-size:16px;margin:0}.sandbox-controls{align-items:center;display:flex;gap:15px}.mode-toggle{background:#f5f7fa;border-radius:6px;display:flex;overflow:hidden}.mode-toggle label{align-items:center;color:#333;cursor:pointer;display:flex;font-size:13px;gap:6px;padding:8px 14px;transition:all .2s}.mode-toggle label:hover{background:#e8e8e8}.mode-toggle label.active{background:#667eea;color:#fff}.mode-toggle label.disabled{background:#e0e0e0;cursor:not-allowed;opacity:.5}.mode-toggle label.disabled:hover{background:#e0e0e0}.mode-toggle input{display:none}.clear-btn{background:#f0f0f0;border:none;border-radius:6px;cursor:pointer;font-size:13px;padding:6px 12px;transition:background .2s}.clear-btn:hover{background:#e0e0e0}.mode-description{background:#f8f9fa;border-bottom:1px solid #e0e0e0;color:#666;font-size:13px;font-style:italic;padding:10px 20px}.sandbox-messages{flex:1 1;overflow-y:auto;padding:15px 20px}.sandbox-welcome{color:#888;padding:40px 20px;text-align:center}.sandbox-welcome p{margin:0 0 10px}.sandbox-welcome .hint{color:#aaa;font-size:13px}.sandbox-message{display:flex;gap:12px;margin-bottom:15px}.sandbox-message .message-avatar{align-items:center;display:flex;flex-shrink:0;font-size:22px;height:32px;justify-content:center;width:32px}.sandbox-message .message-content{flex:1 1;max-width:90%}.sandbox-message.user .message-content{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px 12px 4px 12px;color:#fff;padding:12px 16px}.sandbox-message.assistant .message-content{background:#f5f7fa;border-radius:12px 12px 12px 4px;padding:12px 16px}.sandbox-message.error .message-content{background:#fff5f5;border-left:3px solid #fc8181;border-radius:12px;color:#c53030;padding:12px 16px}.sandbox-message .message-content pre{word-wrap:break-word;font-family:inherit;font-size:14px;line-height:1.5;margin:0;white-space:pre-wrap}.sandbox-message.loading .message-content{background:#f5f7fa;border-radius:12px;padding:12px 16px}.typing-indicator{display:flex;gap:5px}.typing-indicator span{animation:typing 1.4s infinite;background:#667eea;border-radius:50%;height:8px;width:8px}.typing-indicator span:nth-child(2){animation-delay:.2s}.typing-indicator span:nth-child(3){animation-delay:.4s}@keyframes typing{0%,60%,to{opacity:.7;transform:translateY(0)}30%{opacity:1;transform:translateY(-6px)}}.status-text{color:#666;font-size:13px;font-style:italic;margin-top:8px}.sandbox-input-form{background:#fafafa;border-top:1px solid #e0e0e0;display:flex;gap:10px;padding:15px 20px}.sandbox-input-form input{border:2px solid #e0e0e0;border-radius:8px;flex:1 1;font-size:14px;outline:none;padding:12px 16px;transition:border-color .2s}.sandbox-input-form input:focus{border-color:#667eea}.sandbox-input-form input:disabled{background:#f0f0f0;cursor:not-allowed}.sandbox-input-form button{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:12px 24px;transition:all .2s}.sandbox-input-form button:hover:not(:disabled){box-shadow:0 4px 12px #667eea66;transform:translateY(-1px)}.sandbox-input-form button:disabled{cursor:not-allowed;opacity:.5}.instructions-section{background:#fff;border-radius:12px;box-shadow:0 2px 10px #00000014;display:flex;flex:1 1;flex-direction:column;overflow:hidden}.instructions-actions{display:flex;gap:10px}.reset-btn,.save-btn{border:none;border-radius:6px;cursor:pointer;font-size:13px;padding:8px 16px;transition:all .2s}.save-btn{background:#e0e0e0;color:#666}.save-btn.has-changes{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.save-btn:hover:not(:disabled).has-changes{box-shadow:0 4px 12px #667eea66;transform:translateY(-1px)}.save-btn:disabled{cursor:not-allowed;opacity:.5}.reset-btn{background:#f0f0f0;color:#666}.reset-btn:hover:not(:disabled){background:#e0e0e0}.reset-btn:disabled{cursor:not-allowed;opacity:.5}.save-success{background:#d4edda;color:#155724}.save-error,.save-success{font-size:13px;padding:10px 20px}.save-error{background:#f8d7da;color:#721c24}.unsaved-warning{background:#fff3cd;color:#856404;font-size:13px;padding:10px 20px}.instructions-editor{display:flex;flex:1 1;overflow:hidden}.instructions-editor textarea{background:#fafafa;border:none;color:#333;flex:1 1;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:13px;line-height:1.6;outline:none;padding:20px;resize:none}.loading-instructions{align-items:center;color:#888;display:flex;flex:1 1;justify-content:center}.instructions-editor textarea::-webkit-scrollbar,.sandbox-messages::-webkit-scrollbar{width:8px}.instructions-editor textarea::-webkit-scrollbar-track,.sandbox-messages::-webkit-scrollbar-track{background:#f1f1f1}.instructions-editor textarea::-webkit-scrollbar-thumb,.sandbox-messages::-webkit-scrollbar-thumb{background:#ccc;border-radius:4px}.instructions-editor textarea::-webkit-scrollbar-thumb:hover,.sandbox-messages::-webkit-scrollbar-thumb:hover{background:#aaa}@media (max-width:1200px){.admin-content{flex-direction:column}.instructions-section,.sandbox-section{flex:none;height:50%}}
/*# sourceMappingURL=main.80abaffa.css.map*/