:root{--surface: #0b1326;--surface-low: #131b2e;--surface-container: #171f33;--surface-high: #222a3d;--surface-highest: #2d3449;--surface-bright: #3a4460;--on-surface: #dae2fd;--on-surface-var: #c2c6d8;--on-surface-dim: #8a90a8;--primary: #b3c5ff;--primary-container: #0066ff;--primary-dim: #6b8ce8;--secondary-container: #1e3a6e;--tertiary: #ffb59d;--success: #6ee7b7;--warning: #fcd34d;--danger: #f87171;--ghost-border: rgba(66, 70, 86, .3);--btn-gradient: linear-gradient(135deg, #b3c5ff 0%, #0066ff 100%);--font-display: "Syne", sans-serif;--font-body: "DM Sans", sans-serif;--font-mono: "DM Mono", monospace}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{width:100%;height:100%}body{background:var(--surface);color:var(--on-surface);font-family:var(--font-body);font-size:14px;line-height:1.5}.login-page{display:flex;align-items:center;justify-content:center;width:100%;height:100vh;background:var(--surface)}.login-container{width:100%;max-width:360px;padding:0 24px}.login-header{text-align:center;margin-bottom:40px}.login-title{font-family:var(--font-display);font-size:28px;font-weight:700;color:var(--on-surface);margin-bottom:8px;letter-spacing:-.01em}.login-subtitle{font-size:14px;color:var(--on-surface-var)}.login-form{display:flex;flex-direction:column;gap:16px}.form-group{display:flex;flex-direction:column;gap:6px}.form-label{font-size:12px;font-weight:500;color:var(--on-surface-var);text-transform:uppercase;letter-spacing:.05em}.form-input{background:var(--surface-container);border:1px solid var(--ghost-border);border-radius:6px;padding:10px 12px;font-family:var(--font-body);font-size:14px;color:var(--on-surface);outline:none;transition:all .15s}.login-button{background:var(--btn-gradient);color:var(--surface);font-family:var(--font-display);font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:11px 20px;border:none;border-radius:6px;cursor:pointer;transition:opacity .15s;margin-top:8px}.login-button:hover:not(:disabled){opacity:.9}.login-button:disabled{opacity:.6;cursor:not-allowed}.login-error{background:rgba(248,113,113,.1);border:1px solid rgba(248,113,113,.3);color:var(--danger);padding:10px 12px;border-radius:6px;font-size:12px;margin-top:12px}.demo-credentials{background:var(--surface-container);border:1px solid var(--ghost-border);border-radius:6px;padding:12px;margin-top:24px;font-size:11px}.demo-credentials-label{font-weight:600;color:var(--on-surface-dim);text-transform:uppercase;letter-spacing:.05em;display:block;margin-bottom:6px}.demo-credentials-item{display:flex;gap:8px;font-family:var(--font-mono);color:var(--on-surface-var);margin:4px 0}.demo-credentials-key{color:var(--primary);min-width:60px}.loading{display:inline-block;width:16px;height:16px;border:2px solid rgba(179,197,255,.3);border-top-color:var(--primary);border-radius:50%;animation:spin .6s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.toast{position:fixed;bottom:24px;left:24px;background:var(--surface-high);border:1px solid var(--ghost-border);border-radius:6px;padding:12px 16px;font-size:13px;color:var(--on-surface);z-index:1000;animation:slideIn .3s ease}.toast.error{border-color:#f871714d;background:rgba(248,113,113,.1);color:var(--danger)}.toast.success{border-color:#6ee7b74d;background:rgba(110,231,183,.1);color:var(--success)}@keyframes slideIn{0%{transform:translate(-300px);opacity:0}to{transform:translate(0);opacity:1}}.dashboard{display:flex;height:100vh;background:var(--surface)}.dashboard-sidebar{width:200px;min-width:200px;background:var(--surface-low);padding:20px 0;border-right:1px solid var(--ghost-border);overflow-y:auto;display:flex;flex-direction:column}.sidebar-section{display:flex;flex-direction:column}.sidebar-label{font-size:10px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--on-surface-dim);padding:12px 16px;margin-top:16px}.sidebar-label:first-child{margin-top:0}.client-item{display:flex;align-items:center;gap:8px;padding:8px 16px;font-size:13px;color:var(--on-surface-var);cursor:pointer;position:relative;transition:all .15s}.client-item:hover{background:var(--surface-high);color:var(--on-surface)}.client-item.active{color:var(--primary);background:rgba(179,197,255,.07)}.client-item.active:before{content:"";position:absolute;left:0;top:0;bottom:0;width:2px;background:var(--primary);border-radius:0 2px 2px 0}.client-dot{width:6px;height:6px;border-radius:50%;background:var(--surface-bright)}.client-item.active .client-dot{background:var(--primary)}.dashboard-main{flex:1;display:flex;flex-direction:column;overflow:hidden}.dashboard-header{background:var(--surface-container);border-bottom:1px solid var(--ghost-border);padding:16px 24px;display:flex;justify-content:space-between;align-items:center}.client-info{display:flex;align-items:center;gap:12px}.client-name{font-family:var(--font-display);font-size:16px;font-weight:700;color:var(--on-surface)}.unsaved-badge{font-size:10px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;background:rgba(255,181,157,.15);color:var(--tertiary);border:1px solid rgba(255,181,157,.25);padding:4px 10px;border-radius:6px}.header-actions{display:flex;gap:8px}.tab-nav{display:flex;gap:0;border-bottom:1px solid var(--ghost-border);background:var(--surface);padding:0 24px}.tab-btn{font-family:var(--font-display);font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;padding:14px 18px;color:var(--on-surface-dim);cursor:pointer;border:none;background:none;border-bottom:2px solid transparent;margin-bottom:-1px;transition:all .15s}.tab-btn:hover{color:var(--on-surface-var)}.tab-btn.active{color:var(--primary);border-bottom-color:var(--primary)}.content-area{flex:1;padding:24px 24px 100px;overflow-y:auto}.form-section{margin-bottom:32px}.section-title{font-size:10px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--on-surface-dim);padding-bottom:12px;margin-bottom:16px;border-bottom:1px solid var(--ghost-border)}.form-group{display:grid;grid-template-columns:260px 1fr;gap:12px 20px;align-items:center;margin-bottom:12px}.form-group-vertical{display:flex;flex-direction:column;gap:6px;margin-bottom:12px}.form-label{font-size:12px;color:var(--on-surface-var);text-align:left;word-break:break-word}.form-label-vertical{font-size:12px;font-weight:500;color:var(--on-surface-var);text-transform:uppercase;letter-spacing:.05em}.form-input{background:var(--surface-container);border:1px solid var(--ghost-border);border-radius:6px;padding:9px 12px;font-family:var(--font-body);font-size:13px;color:var(--on-surface);outline:none;transition:all .15s}.form-input:focus{border-color:var(--primary-dim);box-shadow:0 0 0 3px #b3c5ff1a}.form-input::placeholder{color:var(--on-surface-dim)}.form-select{background:var(--surface-container);border:1px solid var(--ghost-border);border-radius:6px;padding:9px 32px 9px 12px;font-family:var(--font-body);font-size:13px;color:var(--on-surface);outline:none;transition:all .15s;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' fill='none'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%238a90a8' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center}.form-select:focus{border-color:var(--primary-dim)}.form-textarea{width:100%;background:var(--surface-container);border:1px solid var(--ghost-border);border-radius:6px;padding:12px;font-family:var(--font-mono);font-size:12px;color:var(--on-surface);outline:none;resize:vertical;min-height:200px;line-height:1.6;transition:all .15s}.form-textarea:focus{border-color:var(--primary-dim);box-shadow:0 0 0 3px #b3c5ff1a}.char-count{font-size:11px;color:var(--on-surface-dim);text-align:right;font-family:var(--font-mono);margin-top:4px}.quick-prompt-list{display:flex;flex-direction:column;gap:6px}.quick-prompt-item{display:flex;align-items:center;gap:10px;padding:8px 12px;background:var(--surface-high);border-radius:6px;font-size:13px;color:var(--on-surface-var);border:1px solid transparent;transition:all .15s}.quick-prompt-item:hover{border-color:var(--ghost-border)}.drag-handle{color:var(--on-surface-dim);cursor:grab;font-size:12px}.qp-delete{margin-left:auto;color:var(--on-surface-dim);cursor:pointer;font-size:16px;line-height:1}.qp-delete:hover{color:var(--danger)}.btn-row{display:flex;gap:10px;margin-top:24px}.btn-primary{background:var(--btn-gradient);color:var(--surface);font-family:var(--font-display);font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:10px 20px;border:none;border-radius:6px;cursor:pointer;transition:opacity .15s}.btn-primary:hover:not(:disabled){opacity:.9}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.btn-secondary{background:transparent;color:var(--primary);font-family:var(--font-display);font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;padding:10px 20px;border:1px solid rgba(179,197,255,.2);border-radius:6px;cursor:pointer;transition:all .15s}.btn-secondary:hover{background:rgba(179,197,255,.05)}.btn-sm{font-size:11px;padding:6px 12px}.prompt-section-header{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:500;color:var(--on-surface-var);cursor:pointer;padding:10px 12px;background:var(--surface-high);border:none;border-radius:6px;width:100%;transition:all .15s}.prompt-section-header:hover{background:rgba(179,197,255,.1)}.chevron{font-size:10px;color:var(--on-surface-dim)}.scenarios-manager{display:flex;flex-direction:column;height:100%}.scenarios-header{display:flex;justify-content:space-between;align-items:center;padding:24px;border-bottom:1px solid var(--ghost-border);background:var(--surface-container)}.scenarios-title{font-family:var(--font-display);font-size:18px;font-weight:700;color:var(--on-surface)}.scenarios-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:16px;padding:24px}.scenario-card{background:var(--surface-high);border:1px solid var(--ghost-border);border-radius:8px;padding:16px;display:flex;flex-direction:column;gap:12px;transition:all .15s}.scenario-card:hover{border-color:#b3c5ff4d;background:rgba(179,197,255,.05)}.scenario-card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.scenario-info{flex:1}.scenario-name{font-size:14px;font-weight:600;color:var(--on-surface);margin-bottom:4px}.scenario-description{font-size:12px;color:var(--on-surface-dim);line-height:1.4}.scenario-badge{font-size:11px;background:rgba(179,197,255,.15);color:var(--primary);padding:4px 8px;border-radius:4px;white-space:nowrap}.scenario-card-footer{display:flex;gap:8px;margin-top:8px}.empty-state{display:flex;align-items:center;justify-content:center;height:100%;min-height:300px}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(11,19,38,.8);display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background:var(--surface);border:1px solid var(--ghost-border);border-radius:8px;max-width:700px;width:90%;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 20px 60px #00000080}.scenario-builder{max-width:900px}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid var(--ghost-border);background:var(--surface-container)}.modal-title{font-family:var(--font-display);font-size:16px;font-weight:700;color:var(--on-surface);margin:0}.modal-close{background:transparent;border:none;color:var(--on-surface-dim);font-size:20px;cursor:pointer;padding:4px 8px;transition:color .15s}.modal-close:hover{color:var(--on-surface)}.modal-tabs{display:flex;border-bottom:1px solid var(--ghost-border);background:var(--surface);padding:0 24px}.modal-tab{font-size:12px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;padding:14px 18px;color:var(--on-surface-dim);border:none;background:none;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px;transition:all .15s}.modal-tab:hover{color:var(--on-surface-var)}.modal-tab.active{color:var(--primary);border-bottom-color:var(--primary)}.modal-body{flex:1;overflow-y:auto;padding:24px}.modal-footer{display:flex;gap:12px;justify-content:flex-end;padding:16px 24px;border-top:1px solid var(--ghost-border);background:var(--surface-container)}.commands-list{display:flex;flex-direction:column;gap:12px}.command-item{border:1px solid var(--ghost-border);border-radius:6px;background:var(--surface-high);overflow:hidden}.command-header{display:flex;align-items:center;gap:12px;padding:12px;cursor:pointer;background:var(--surface-high);transition:all .15s}.command-header:hover{background:rgba(179,197,255,.05)}.command-drag-handle{color:var(--on-surface-dim);font-size:12px;cursor:grab;flex-shrink:0}.command-preview{flex:1;display:flex;align-items:center;gap:8px;min-width:0}.command-type-badge{font-size:10px;font-weight:600;text-transform:uppercase;background:rgba(179,197,255,.2);color:var(--primary);padding:4px 8px;border-radius:3px;white-space:nowrap}.command-summary{font-size:12px;color:var(--on-surface-var);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.command-actions{display:flex;gap:6px;flex-shrink:0}.cmd-btn{background:transparent;border:1px solid rgba(179,197,255,.2);color:var(--primary);font-size:11px;padding:4px 8px;border-radius:3px;cursor:pointer;transition:all .15s}.cmd-btn:hover:not(:disabled){background:rgba(179,197,255,.1);border-color:#b3c5ff66}.cmd-btn:disabled{opacity:.4;cursor:not-allowed}.cmd-btn.delete{color:var(--danger);border-color:#f8717133}.cmd-btn.delete:hover:not(:disabled){background:rgba(248,113,113,.1);border-color:#f8717166}.command-content{padding:12px;background:var(--surface);border-top:1px solid var(--ghost-border);display:flex;flex-direction:column;gap:12px}.documents-manager{display:flex;flex-direction:column;height:100%}.documents-header{display:flex;justify-content:space-between;align-items:center;padding:24px;border-bottom:1px solid var(--ghost-border);background:var(--surface-container)}.documents-title{font-family:var(--font-display);font-size:18px;font-weight:700;color:var(--on-surface);margin:0}.documents-header-actions{display:flex;gap:8px}.document-uploader{padding:20px 24px;border-bottom:1px solid var(--ghost-border)}.upload-zone{border:2px dashed var(--ghost-border);border-radius:8px;padding:32px 24px;text-align:center;cursor:pointer;transition:all .15s;background:rgba(179,197,255,.02)}.upload-zone:hover{border-color:#b3c5ff66;background:rgba(179,197,255,.05)}.upload-zone.drag-over{border-color:var(--primary);background:rgba(179,197,255,.1)}.upload-icon{font-size:32px;margin-bottom:12px}.upload-text{display:flex;flex-direction:column;gap:4px}.upload-title{font-size:14px;font-weight:500;color:var(--on-surface)}.upload-hint{font-size:12px;color:var(--on-surface-dim)}.documents-table{display:flex;flex-direction:column;flex:1;overflow:hidden}.table-header{display:grid;grid-template-columns:1fr 120px 150px 180px;gap:16px;padding:12px 24px;background:var(--surface-container);border-bottom:1px solid var(--ghost-border);position:sticky;top:0}.table-body{flex:1;overflow-y:auto;display:flex;flex-direction:column}.table-row{display:grid;grid-template-columns:1fr 120px 150px 180px;gap:16px;padding:12px 24px;align-items:center;border-bottom:1px solid var(--ghost-border);transition:all .15s}.table-row:hover{background:rgba(179,197,255,.03)}.table-col{font-size:13px;color:var(--on-surface-var)}.filename-col{display:flex;align-items:center;min-width:0}.filename-with-icon{display:flex;align-items:center;gap:8px;min-width:0}.doc-icon{font-size:16px;flex-shrink:0}.doc-filename{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.size-col{text-align:right}.date-col{text-align:right;font-size:12px}.actions-col{display:flex;justify-content:flex-end}.documents-info{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:24px;border-top:1px solid var(--ghost-border);background:var(--surface-container)}.info-box{background:var(--surface);border:1px solid var(--ghost-border);border-radius:6px;padding:16px;display:flex;flex-direction:column;gap:8px}.info-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--on-surface-dim)}.info-value{font-size:16px;font-weight:700;color:var(--primary)}.tab-content{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.analytics-dashboard{display:flex;flex-direction:column;flex:1;min-height:0;overflow-y:auto}.analytics-header{display:flex;justify-content:space-between;align-items:center;padding:24px;border-bottom:1px solid var(--ghost-border);background:var(--surface-container)}.analytics-title{font-family:var(--font-display);font-size:18px;font-weight:700;color:var(--on-surface);margin:0}.date-filter{display:flex;gap:8px}.analytics-section{flex:none;display:flex;flex-direction:column;padding:24px;border-bottom:1px solid var(--ghost-border)}@media (min-width: 1200px){.analytics-section{padding:32px}}.section-header{margin-bottom:16px}.section-title{font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:var(--on-surface);margin:0}.metrics-overview{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;padding:24px;background:var(--surface-container)}@media (min-width: 1200px){.metrics-overview{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}}.metric-card{display:flex;align-items:center;gap:16px;padding:16px;background:var(--surface-high);border:1px solid var(--ghost-border);border-radius:8px;transition:all .15s}.metric-card:hover{border-color:#b3c5ff4d;transform:translateY(-2px)}.metric-icon{font-size:24px}.metric-content{flex:1}.metric-label{font-size:11px;font-weight:500;text-transform:uppercase;color:var(--on-surface-dim);letter-spacing:.05em;margin-bottom:4px}.metric-value{font-size:24px;font-weight:700;color:var(--primary)}.metric-sublabel{font-size:10px;color:var(--on-surface-dim);margin-top:2px}.activity-chart{display:flex;flex-direction:column;gap:16px}.chart-container{display:flex;align-items:flex-end;justify-content:space-around;gap:8px;flex:1;padding:20px;border:1px solid var(--ghost-border);border-radius:6px;background:rgba(179,197,255,.02);overflow-x:auto;min-height:200px}@media (min-width: 1200px){.chart-container{overflow-x:visible;justify-content:flex-start;gap:12px;padding:24px;min-height:240px}}.chart-bar-group{display:flex;flex-direction:column;align-items:center;gap:8px;flex:1;height:100%;min-width:40px}@media (min-width: 1200px){.chart-bar-group{min-width:50px;flex:0 1 50px}}.chart-bars-wrapper{display:flex;gap:4px;align-items:flex-end;height:100px;width:100%}@media (min-width: 1200px){.chart-bars-wrapper{height:140px}}.chart-bar{flex:1;max-width:25px;background:var(--primary);border-radius:3px 3px 0 0;transition:all .15s;cursor:pointer}.chart-bars-wrapper .chart-bar{width:100%}.chart-bar:hover{opacity:.8;background:var(--primary-dim)}.chart-label{font-size:10px;color:var(--on-surface-dim);text-align:center;white-space:nowrap}.chart-legend{display:flex;gap:16px;padding:12px 0}.legend-item{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--on-surface-var)}.legend-color{width:12px;height:12px;border-radius:2px}.activity-feed{display:flex;flex-direction:column;gap:12px}@media (min-width: 1200px){.activity-feed{max-height:500px;overflow-y:auto}}.activity-item{display:flex;gap:12px;padding:12px;background:var(--surface-high);border:1px solid var(--ghost-border);border-radius:6px;transition:all .15s}@media (min-width: 1200px){.activity-item{padding:14px;gap:14px}}.activity-item:hover{background:rgba(179,197,255,.05)}.activity-icon{font-size:18px;flex-shrink:0;line-height:1}.activity-content{flex:1;min-width:0}.activity-main{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:4px}.activity-type{font-size:12px;font-weight:600;color:var(--on-surface);text-transform:capitalize}.activity-time{font-size:11px;color:var(--on-surface-dim)}.activity-details{display:flex;flex-direction:column;gap:4px;margin-top:8px;padding-top:8px;border-top:1px solid var(--ghost-border)}.detail-item{font-size:11px;color:var(--on-surface-dim)}.detail-key{font-weight:600;color:var(--on-surface-var)}.detail-value{color:var(--on-surface-dim);word-break:break-word}.token-chart-svg{width:100%;height:auto;display:block}.chart-toggle{display:flex;gap:4px;margin-bottom:12px}.chart-toggle-btn{padding:4px 12px;font-size:12px;font-weight:500;color:var(--on-surface-dim);background:transparent;border:1px solid var(--ghost-border);border-radius:4px;cursor:pointer;transition:all .15s}.chart-toggle-btn:hover{border-color:#b3c5ff4d;color:var(--on-surface)}.chart-toggle-btn.active{background:var(--primary);border-color:var(--primary);color:var(--on-primary, #fff)}.token-distribution{display:flex;flex-direction:column;gap:8px;max-height:400px;overflow-y:auto}.token-dist-header,.token-dist-row{display:grid;grid-template-columns:180px 1fr 75px 75px 80px;align-items:center;gap:12px}.token-dist-header{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--on-surface-dim);padding-bottom:8px;border-bottom:1px solid var(--ghost-border);position:sticky;top:0;background:var(--surface);z-index:1}.token-dist-row{padding:8px 0;border-bottom:1px solid rgba(179,197,255,.05)}.token-dist-col-user{font-size:12px;color:var(--on-surface);font-family:monospace;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.token-dist-col-count{font-size:12px;color:var(--on-surface-var);text-align:right}.token-bar-wrapper{width:100%;height:8px;background:rgba(179,197,255,.08);border-radius:4px;overflow:hidden}.token-bar{height:100%;background:var(--primary);border-radius:4px;transition:width .3s ease}
