:root{--bg-primary: #0a0a0c;--bg-secondary: #16161a;--bg-tertiary: #1e1e24;--text-primary: #f8f9fa;--text-secondary: #9aa0a6;--accent-blue: #4285f4;--accent-blue-bright: #8ab4f8;--accent-green: #34a853;--accent-yellow: #fbbc04;--accent-red: #ea4335;--border-color: rgba(255, 255, 255, .1);--glass-bg: rgba(22, 22, 26, .7);--font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Open Sans", "Helvetica Neue", sans-serif}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-primary);color:var(--text-primary);font-family:var(--font-family);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow:hidden}.app-container{display:flex;flex-direction:column;height:100vh;width:100vw;overflow:hidden}.sidebar{width:320px;background-color:var(--bg-secondary);border-right:1px solid var(--border-color);display:flex;flex-direction:column;flex-shrink:0;height:100%;position:relative;z-index:10}.sidebar-header{padding:24px;border-bottom:1px solid var(--border-color)}.sidebar-header h1{font-size:1.25rem;font-weight:700;color:var(--accent-blue-bright);display:flex;align-items:center;gap:12px}.run-list{flex:1;overflow-y:scroll;padding:16px;scrollbar-width:thin;scrollbar-color:var(--bg-tertiary) transparent}.run-list::-webkit-scrollbar{width:6px}.run-list::-webkit-scrollbar-track{background:transparent}.run-list::-webkit-scrollbar-thumb{background-color:var(--bg-tertiary);border-radius:4px}.run-list::-webkit-scrollbar-thumb:hover{background-color:var(--text-secondary)}.run-item{padding:12px 16px;border-radius:8px;margin-bottom:8px;cursor:pointer;transition:all .2s ease;border:1px solid transparent}.run-item:hover{background-color:var(--bg-tertiary)}.run-item.active{background-color:#4285f41a;border-color:var(--accent-blue)}.run-item .run-name{font-weight:600;font-size:.9rem;margin-bottom:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.run-item .run-meta{font-size:.75rem;color:var(--text-secondary);display:flex;gap:8px}.main-content{flex:1;overflow:hidden;display:flex;flex-direction:column;min-width:0}.dashboard-container{padding:20px 24px;display:flex;flex-direction:column;gap:24px;height:100%}.header-bar{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.header-bar h2{font-size:1.5rem;font-weight:600}.action-buttons{display:flex;gap:12px}button{padding:8px 16px;border-radius:6px;font-weight:600;font-size:.875rem;cursor:pointer;border:none;transition:all .2s ease;display:flex;align-items:center;gap:8px}button.primary{background-color:var(--accent-blue);color:#fff}button.primary:hover{background-color:#3367d6}button.secondary{background-color:var(--bg-tertiary);color:var(--text-primary);border:1px solid var(--border-color)}button.secondary:hover{background-color:#2c2c31}.dashboard-grid{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:auto auto;gap:24px}.card{background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:20px;display:flex;flex-direction:column;gap:16px}.card-title{font-size:.875rem;font-weight:700;text-transform:uppercase;color:var(--text-secondary);letter-spacing:.05em;display:flex;align-items:center;gap:8px}.video-container{aspect-ratio:16/9;background-color:#000;border-radius:8px;overflow:hidden;position:relative}.video-container video{width:100%;height:100%;object-fit:contain}.chart-container{height:300px}.critique-box{background:linear-gradient(135deg,#4285f40d,#8ab4f80d);border:1px solid rgba(66,133,244,.2)}.critique-text{font-size:.95rem;line-height:1.6;color:var(--text-primary);font-style:italic}.param-diff{display:flex;flex-wrap:wrap;gap:16px}.param-item{background-color:var(--bg-tertiary);padding:8px 12px;border-radius:6px;font-size:.875rem}.param-label{color:var(--text-secondary);margin-right:8px}.param-value{font-family:Fira Code,Courier New,monospace;color:var(--accent-blue-bright)}.badge{padding:2px 8px;border-radius:999px;font-size:.7rem;font-weight:700;text-transform:uppercase}.badge-video{background-color:#34a8531a;color:var(--accent-green)}.badge-history{background-color:#4285f41a;color:var(--accent-blue-bright)}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.animate-in{animation:fadeIn .4s ease forwards}
