:root{--bg-base: #0f1115;--bg-surface: #1a1d24;--bg-surface-hover: #232730;--text-primary: #f8fafc;--text-secondary: #94a3b8;--text-muted: #64748b;--accent-primary: #3b82f6;--accent-primary-hover: #2563eb;--status-success: #10b981;--status-success-bg: rgba(16, 185, 129, .1);--status-warning: #f59e0b;--status-warning-bg: rgba(245, 158, 11, .1);--status-error: #ef4444;--status-error-bg: rgba(239, 68, 68, .1);--status-info: #3b82f6;--status-info-bg: rgba(59, 130, 246, .1);--border-color: #2b303b;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-full: 9999px;--font-sans: "Inter", system-ui, -apple-system, sans-serif}body{margin:0;padding:0;background-color:var(--bg-base);color:var(--text-primary);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}.glass{background:#1a1d24b3;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.05)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-base)}::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}a{color:var(--accent-primary);text-decoration:none;transition:color .2s ease}a:hover{color:var(--accent-primary-hover)}.layout-container{display:flex;min-height:100vh;width:100%}.sidebar{width:260px;flex-shrink:0;display:flex;flex-direction:column;border-right:1px solid var(--border-color);z-index:10}.sidebar-header{height:70px;display:flex;align-items:center;padding:0 24px;border-bottom:1px solid var(--border-color);gap:12px}.logo-icon{background:linear-gradient(135deg,var(--accent-primary),#60a5fa);color:#fff;width:32px;height:32px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;font-weight:800;font-size:14px}.logo-text{font-weight:600;font-size:18px;letter-spacing:-.02em}.sidebar-nav{padding:24px 16px;display:flex;flex-direction:column;gap:8px}.nav-item{display:flex;align-items:center;gap:12px;padding:12px 16px;border-radius:var(--radius-md);color:var(--text-secondary);font-weight:500;transition:all .2s ease}.nav-item:hover{background:var(--bg-surface-hover);color:var(--text-primary)}.nav-item.active{background:#3b82f626;color:var(--accent-primary)}.nav-icon{opacity:.8}.main-content{flex-grow:1;display:flex;flex-direction:column;background-color:var(--bg-surface);min-width:0}.topbar{height:70px;display:flex;align-items:center;justify-content:space-between;padding:0 32px;border-bottom:1px solid var(--border-color);background:var(--bg-base)}.topbar-actions{display:flex;align-items:center;gap:16px}.avatar{width:36px;height:36px;border-radius:var(--radius-full);background:var(--bg-surface-hover);display:flex;align-items:center;justify-content:center;font-weight:600;color:var(--text-muted);cursor:pointer;transition:background .2s}.avatar:hover{background:var(--border-color)}.page-content{padding:32px;flex-grow:1;overflow-y:auto}.ui-card{background:var(--bg-base);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;display:flex;flex-direction:column}.pad-none{padding:0}.pad-sm{padding:12px}.pad-md{padding:24px}.pad-lg{padding:32px}.ui-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.ui-card-title{margin:0;font-size:16px;font-weight:600;color:var(--text-primary);letter-spacing:-.01em}.ui-card-content{flex-grow:1}.metric-card{transition:transform .2s ease,box-shadow .2s ease}.metric-card:hover{transform:translateY(-2px);box-shadow:0 10px 15px -3px #0003,0 4px 6px -2px #0000001a}.metric-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.metric-title{margin:0;font-size:14px;font-weight:500;color:var(--text-secondary)}.metric-icon{color:var(--accent-primary);opacity:.8}.metric-body{display:flex;align-items:baseline;gap:12px}.metric-value{margin:0;font-size:28px;font-weight:700;letter-spacing:-.02em}.metric-trend{font-size:13px;font-weight:600}.trend-up{color:var(--status-success)}.trend-down{color:var(--status-error)}.modal-overlay{position:fixed;inset:0;background-color:#0009;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .15s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-content{background-color:var(--bg-surface);border-radius:var(--radius-lg);width:90%;max-width:500px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 25px 50px -12px #00000080;animation:slideIn .2s cubic-bezier(.16,1,.3,1)}@keyframes slideIn{0%{opacity:0;transform:translateY(10px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid var(--border-color)}.modal-title{margin:0;font-size:18px;font-weight:600;color:var(--text-primary)}.modal-close{background:transparent;border:none;color:var(--text-muted);cursor:pointer;padding:4px;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;transition:all .2s}.modal-close:hover{background:var(--bg-surface-hover);color:var(--text-primary)}.modal-body{padding:24px;overflow-y:auto}.new-run-form{display:flex;flex-direction:column;gap:20px}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{font-size:13px;font-weight:500;color:var(--text-secondary)}.form-group input,.form-group textarea{background-color:var(--bg-base);border:1px solid var(--border-color);color:var(--text-primary);border-radius:var(--radius-md);padding:12px 14px;font-family:inherit;font-size:14px;transition:border-color .2s,box-shadow .2s}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--accent-primary);box-shadow:0 0 0 3px #3b82f626}.form-group input:disabled,.form-group textarea:disabled{opacity:.6;cursor:not-allowed}.form-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:10px}.btn-secondary{background:transparent;color:var(--text-primary);border:1px solid var(--border-color);padding:10px 16px;border-radius:var(--radius-md);font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-secondary:hover:not(:disabled){background:var(--bg-surface-hover)}.btn-secondary:disabled{opacity:.5;cursor:not-allowed}.form-error{background:var(--status-error-bg);color:var(--status-error);padding:12px;border-radius:var(--radius-md);font-size:13px;border:1px solid rgba(239,68,68,.2)}.dashboard-container{display:flex;flex-direction:column;gap:32px}.page-header{display:flex;justify-content:space-between;align-items:flex-start}.page-title{margin:0 0 8px;font-size:24px;font-weight:700;letter-spacing:-.02em}.page-subtitle{margin:0;color:var(--text-secondary);font-size:14px}.primary-button{display:inline-flex;align-items:center;gap:8px;background-color:var(--accent-primary);color:#fff;border:none;padding:10px 16px;border-radius:var(--radius-md);font-size:14px;font-weight:600;cursor:pointer;transition:background-color .2s,transform .1s;box-shadow:0 2px 4px #3b82f633}.primary-button:hover{background-color:var(--accent-primary-hover);transform:translateY(-1px)}.primary-button:active{transform:translateY(0)}.metrics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px}.recent-runs-section h2{font-size:18px;font-weight:600;margin:0 0 16px;padding-bottom:12px;border-bottom:1px solid var(--border-color)}.recent-runs-placeholder{height:300px;display:flex;align-items:center;justify-content:center;color:var(--text-muted)}.runs-table{width:100%;border-collapse:collapse;text-align:left}.runs-table th{padding:16px 24px;background-color:#0003;color:var(--text-secondary);font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--border-color)}.runs-table td{padding:16px 24px;border-bottom:1px solid rgba(255,255,255,.05);font-size:14px}.runs-table tr:last-child td{border-bottom:none}.runs-table tr:hover td{background-color:var(--bg-surface-hover)}.font-medium{font-weight:500;color:var(--text-primary)}.text-muted{color:var(--text-muted)}.ui-badge{display:inline-flex;align-items:center;padding:4px 10px;border-radius:var(--radius-full);font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.badge-default{background:var(--bg-surface-hover);color:var(--text-secondary)}.badge-success{background:var(--status-success-bg);color:var(--status-success)}.badge-warning{background:var(--status-warning-bg);color:var(--status-warning)}.badge-error{background:var(--status-error-bg);color:var(--status-error)}.badge-info{background:var(--status-info-bg);color:var(--status-info)}.run-details-container{display:flex;flex-direction:column;gap:24px}.run-header{padding:24px 32px;border-radius:var(--radius-lg);display:flex;flex-direction:column;gap:12px}.back-link{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:500;color:var(--text-secondary);transition:color .2s}.back-link:hover{color:var(--text-primary)}.run-title-row{display:flex;align-items:center;gap:16px}.run-title-row h1{margin:0;font-size:24px;font-weight:700;letter-spacing:-.02em}.run-meta{display:flex;align-items:center;gap:20px;font-size:13px;color:var(--text-muted)}.run-meta span{display:inline-flex;align-items:center;gap:6px}.cost-tag{color:#a78bfa;font-weight:600}.run-content-grid{display:grid;grid-template-columns:1fr 320px;gap:24px}.content-viewer-card{min-height:500px}.content-placeholder{display:flex;align-items:center;justify-content:center;height:100%;border:2px dashed rgba(255,255,255,.05);border-radius:var(--radius-md);background:var(--bg-base)}.observability-sidebar h3{margin:0 0 4px;font-size:16px}.event-list{margin-top:16px;display:flex;flex-direction:column;gap:12px}.event-item{padding:12px;border-radius:var(--radius-md);display:flex;gap:12px}.event-icon{margin-top:2px;color:var(--accent-primary)}.event-details{display:flex;flex-direction:column;gap:4px;flex-grow:1}.event-time{font-size:11px;color:var(--text-muted)}.event-type{font-size:13px;font-weight:600;color:var(--text-primary)}.event-actor{font-size:12px;color:var(--accent-primary)}.event-metrics{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}.event-metrics .metric{font-size:11px;padding:2px 6px;background:#ffffff0d;border-radius:var(--radius-sm);color:var(--text-secondary)}.event-metrics .metric.cost{color:#34d399;background:#34d3991a}
