:root{color:#1e293b;background:#fff;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:#f1f5f9}button,input,select,textarea{font:inherit}button{border:0}.app-shell{max-width:1280px;margin:0 auto;display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,420px);gap:24px;min-height:100vh;padding:24px}.workspace{min-width:0}.topbar,.control-band,.job-panel,.preview-strip,.details-panel,.player-shell{border:1px solid #e2e8f0;border-radius:12px;background:#fff;box-shadow:0 1px 3px #0000000f;overflow:hidden}.topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:16px}.topbar-brand{display:flex;align-items:center;gap:10px}.topbar-logo{width:32px;height:32px;flex-shrink:0}.topbar-actions{display:flex;align-items:center;gap:8px}.topbar h1,.job-header h2,.section-title h2,.player-toolbar h2,.song-card h3{margin:0;letter-spacing:0}.topbar h1{font-size:clamp(1.6rem,2.6vw,2.4rem);line-height:1.1;color:#0f172a;font-weight:800;letter-spacing:-.02em}.topbar .eyebrow{margin-bottom:6px;font-size:.78rem}.topbar .swarm-status-row{margin-top:10px}.eyebrow,.kind{margin:0 0 4px;color:#64748b;font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.control-band{display:grid;grid-template-columns:minmax(190px,260px) minmax(210px,320px) auto;align-items:end;gap:14px;margin-top:18px;padding:16px}label{display:grid;gap:6px;color:#475569;font-size:.82rem;font-weight:600}select,input,textarea{width:100%;border:1px solid #e2e8f0;border-radius:8px;color:#0f172a;background:#fff;outline:none}select,input{min-height:42px;padding:0 12px}textarea{min-height:108px;resize:vertical;padding:12px}select:focus,input:focus,textarea:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.library{margin-top:22px}.preset-library{margin-top:28px}.section-title{display:flex;align-items:center;gap:8px;margin-bottom:12px;color:#475569}.song-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:12px}.song-card{position:relative;display:grid;gap:18px;min-height:120px;padding:16px;border:1px solid #e2e8f0;border-radius:10px;background:#fff;box-shadow:0 1px 2px #0000000a}.song-card h3{color:#0f172a;font-size:.95rem;line-height:1.25}.preset-card{border-color:#fde68a;background:#fffbeb}.preset-card h3{padding-right:22px}.preset-kind{color:#d97706}.preset-meta,.preset-time,.status-message{margin:6px 0 0;color:#64748b;font-size:.84rem;line-height:1.3}.preset-time{color:#94a3b8}.preset-delete{position:absolute;top:10px;right:10px;display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border:1px solid #fde68a;border-radius:999px;color:#d97706;background:#fff;cursor:pointer}.preset-delete:hover{color:#fff;background:#d97706}.status-message{margin-top:16px;color:#2563eb}.song-actions,.ready-actions,.playback-controls{display:flex;align-items:center;flex-wrap:wrap;gap:10px;opacity:0;transition:opacity .25s ease}.player-shell .player-toolbar{position:absolute;top:0;left:0;right:0;z-index:10;padding:12px 16px;background:#1a1d23;border-bottom:1px solid #2d333b;border-radius:12px 12px 0 0}.player-shell .player-toolbar h2{color:#f1f5f9}.player-shell .player-toolbar .eyebrow{color:#94a3b8}.player-shell .playback-controls{position:absolute;bottom:0;left:0;right:0;z-index:10;padding:12px 16px;background:#1a1d23;border-top:1px solid #2d333b;border-radius:0 0 12px 12px}.player-shell .secondary-action,.player-shell .icon-button{border-color:#3b4252;color:#cbd5e1;background:#272b33}.player-shell .secondary-action:hover,.player-shell .icon-button:hover{background:#323842;border-color:#4a5568}.player-shell:hover .player-toolbar,.player-shell:hover .playback-controls{opacity:1}.primary-action,.secondary-action,.icon-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;border-radius:8px;color:#fff;cursor:pointer;font-weight:600;font-size:.88rem}.primary-action{padding:0 16px;background:#2563eb;font-weight:700}.primary-action:hover{background:#1d4ed8}.secondary-action,.icon-button{border:1px solid #e2e8f0;color:#475569;background:#fff}.secondary-action:hover{background:#f8fafc;border-color:#cbd5e1}.compact{min-height:36px;padding-inline:11px;font-size:.82rem}button:disabled{cursor:not-allowed;opacity:.48}.preview-strip{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:18px;padding:14px 16px}.preview-strip audio{width:min(460px,100%)}.job-panel{margin-top:18px;padding:18px}.job-header,.player-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px}.player-shell .player-toolbar{opacity:0;transition:opacity .25s ease}.player-shell:hover .player-toolbar{opacity:1}.status-pill{display:inline-flex;align-items:center;gap:6px;min-width:90px;justify-content:center;border:1px solid #e2e8f0;border-radius:999px;padding:6px 12px;color:#475569;background:#fff;text-transform:capitalize;font-size:.82rem;font-weight:600}.status-pill.ready,.status-pill.playing{color:#fff;background:#2563eb;border-color:#2563eb}.status-pill.failed{color:#dc2626;background:#fef2f2;border-color:#fecaca}.progress-area{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;margin-top:20px}.progress-track{height:10px;overflow:hidden;border-radius:999px;background:#e2e8f0}.progress-fill{height:100%;border-radius:999px;background:linear-gradient(90deg,#3b82f6,#2563eb);transition:width .16s ease}.ready-actions,.refine-box{margin-top:20px}.refine-box{display:grid;gap:12px}.details-panel{position:sticky;top:24px;align-self:start;max-height:calc(100vh - 48px);overflow:auto;padding:16px}.details-intro{margin:-4px 0 14px;color:#64748b;font-size:.86rem;line-height:1.4}.event-list{display:grid;gap:8px}.event-row{display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid #f1f5f9;padding-bottom:8px;color:#334155;text-transform:capitalize;font-size:.84rem}.event-row time{color:#94a3b8;font-size:.76rem}.conversation{display:grid;gap:10px;margin-top:16px}.message{border:1px solid #e2e8f0;border-radius:8px;padding:12px;background:#f8fafc}.message span{color:#d97706;font-size:.72rem;font-weight:800;text-transform:uppercase}.message p{max-height:260px;overflow:auto;margin:8px 0 0;color:#475569;font-size:.84rem;line-height:1.45;white-space:pre-wrap}.error-banner{margin-top:14px;border:1px solid #fecaca;border-radius:8px;padding:12px 14px;color:#dc2626;background:#fef2f2;font-size:.86rem}.player-shell{display:grid;grid-template-rows:1fr;min-height:auto;padding:0;position:relative}.swarm-preview{min-height:340px;max-height:520px}.swarm-status-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px;align-items:center}.swarm-header-description{margin:8px 0 0;max-width:640px;color:#64748b;font-size:.95rem;line-height:1.5}.demo-chip{border-color:#f59e0b;background:#fffbeb;color:#92400e;font-weight:600}.meta-chip{display:inline-flex;align-items:center;justify-content:center;padding:6px 10px;border-radius:999px;border:1px solid #e2e8f0;background:#f8fafc;color:#475569;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em}.player-embedded{flex:1;min-height:0;height:100%;padding:0;border:none;background:transparent;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;grid-template-rows:1fr}.player-embedded .player-canvas{min-height:200px;border-radius:12px}.choreography-embed{margin-top:18px;min-height:480px}.player-canvas{flex:1;min-height:0;height:100%;overflow:hidden;border-radius:12px;background:#1a1d23}.player-canvas canvas{display:block;width:100%;height:100%;image-rendering:auto;border-radius:12px}.timeline{flex:1 1 220px;accent-color:#2173f8}.timecode{min-width:110px;color:#d6e4dd;font-variant-numeric:tabular-nums;font-size:.82rem}.spin{animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.tab-bar{display:flex;gap:4px;margin-bottom:18px;padding:4px;border:1px solid #e2e8f0;border-radius:12px;background:#fff;box-shadow:0 1px 3px #0000000f}.tab{flex:1;padding:10px 20px;border:0;border-radius:8px;color:#64748b;background:transparent;font-size:.84rem;font-weight:700;cursor:pointer;text-transform:uppercase;letter-spacing:.04em;transition:color .12s,background .12s}.tab:hover{color:#1e293b;background:#f1f5f9}.tab.active{color:#fff;background:#2563eb}.swarm-lab.app-shell{grid-template-columns:1fr;max-width:1440px;padding:24px;gap:20px}.swarm-layout{display:grid;grid-template-columns:minmax(280px,340px) minmax(0,2fr);gap:24px;margin-top:20px}.swarm-layout.has-results{grid-template-columns:minmax(240px,300px) minmax(0,1fr) minmax(260px,340px)}.swarm-layout.has-results.sidebar-collapsed{grid-template-columns:52px minmax(0,1fr) minmax(260px,340px)}.swarm-controls{display:grid;gap:14px;align-content:start}.swarm-controls-collapsed-bar{display:none}.swarm-layout.sidebar-collapsed .swarm-controls .swarm-controls-collapsed-bar{display:flex;flex-direction:column;align-items:center;gap:10px;padding:8px 4px}.swarm-controls-expand-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:1px solid #e2e8f0;border-radius:6px;background:#fff;cursor:pointer;color:#64748b;transition:background .15s,border-color .15s}.swarm-controls-expand-btn:hover{background:#f1f5f9;border-color:#cbd5e1}.swarm-controls-collapsed-label{font-size:.6rem;font-weight:700;color:#94a3b8;text-transform:uppercase;letter-spacing:.06em;writing-mode:vertical-rl;text-orientation:mixed;-webkit-user-select:none;user-select:none}.swarm-layout.sidebar-collapsed .swarm-controls .preset-strip,.swarm-layout.sidebar-collapsed .swarm-controls .swarm-section,.swarm-layout.sidebar-collapsed .swarm-controls .swarm-start{display:none}.swarm-section{border:1px solid #e2e8f0;border-radius:12px;padding:14px;background:#fff;box-shadow:0 1px 3px #0000000f}.swarm-section .section-title{margin-bottom:12px}.swarm-advanced-toggle{cursor:pointer;border:none;background:none;padding:0;width:100%;text-align:left;font:inherit;color:inherit}.swarm-advanced-body{padding-top:8px}.swarm-slider{display:grid;gap:4px;margin-bottom:10px;color:#475569;font-size:.8rem;font-weight:600}.swarm-slider-row{display:flex;align-items:center;gap:10px}.swarm-slider-row input[type=range]{flex:1;min-height:6px;height:6px;padding:0;border:0;border-radius:999px;background:#e2e8f0;accent-color:#3b82f6;-webkit-appearance:none;appearance:none;cursor:pointer}.swarm-slider-row input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:16px;height:16px;border-radius:50%;background:#2563eb;cursor:pointer}.swarm-slider-value{min-width:36px;color:#2563eb;font-size:.82rem;font-weight:700;text-align:right;font-variant-numeric:tabular-nums}.swarm-start{margin-top:4px}.swarm-error{margin:10px 0 0;color:#dc2626;font-size:.84rem}.swarm-preview{position:relative;display:flex;flex-direction:column;border:none;border-radius:0;background:#f1f5f9;min-height:720px;height:72vh;max-height:none;overflow:hidden;box-shadow:0 12px 40px #0000001f}.swarm-preview-toolbar{position:absolute;top:0;left:0;right:0;z-index:10;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:12px 16px;border-bottom:1px solid #2d333b;background:#1a1d23;flex-shrink:0;color:#cbd5e1;border-radius:12px 12px 0 0;opacity:0;transition:opacity .25s ease}.swarm-preview:hover .swarm-preview-toolbar{opacity:1}.swarm-preview-toolbar .eyebrow{margin:0;color:#94a3b8}.swarm-preview-toolbar .secondary-action{border-color:#3b4252;color:#cbd5e1;background:#272b33}.swarm-preview-toolbar .secondary-action:hover{background:#323842;border-color:#4a5568}.swarm-preview:fullscreen,.swarm-preview:-webkit-full-screen{min-height:100vh;height:100vh;border:0;border-radius:0;background:#f1f5f9}.swarm-preview:fullscreen .swarm-preview-toolbar,.swarm-preview:-webkit-full-screen .swarm-preview-toolbar{background:#1a1d23;border-color:#2d333b}.swarm-preview:fullscreen .swarm-preview-toolbar .eyebrow,.swarm-preview:-webkit-full-screen .swarm-preview-toolbar .eyebrow{color:#94a3b8}.swarm-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;flex:1;min-height:0;color:#94a3b8;text-align:center;padding:16px}.swarm-placeholder p{margin:0;font-size:.95rem;max-width:240px;line-height:1.4;color:#475569}.swarm-stats{display:flex;gap:20px;margin-top:18px;padding:12px 16px;border:1px solid #e2e8f0;border-radius:10px;background:#fff;color:#64748b;font-size:.82rem;font-weight:600;box-shadow:0 1px 2px #0000000a}.swarm-stats span{display:flex;align-items:center;gap:6px}@media(max-width:980px){.app-shell{grid-template-columns:1fr;padding:14px}.details-panel{position:static;max-height:none}.control-band,.swarm-layout{grid-template-columns:1fr}.swarm-preview{min-height:480px}.swarm-preview-toolbar{padding:10px 12px}}@media(max-width:620px){.topbar,.preview-strip,.job-header,.player-toolbar{align-items:stretch;flex-direction:column}.swarm-lab.app-shell{padding:12px;gap:12px}.topbar{padding:12px}.topbar h1{font-size:1.2rem}.swarm-status-row{gap:8px;margin-top:10px}.meta-chip{font-size:.68rem;padding:5px 8px}.swarm-section{padding:12px}.swarm-slider-row{flex-wrap:wrap;align-items:center}.swarm-slider-row input[type=range]{width:100%}.swarm-slider-value{min-width:auto;text-align:left}.swarm-preview{min-height:360px}.swarm-preview-toolbar{flex-direction:column;align-items:flex-start}.swarm-preview-toolbar .secondary-action.compact{width:100%;justify-content:center}.primary-action,.secondary-action{width:100%}.song-grid{grid-template-columns:1fr}.playback-controls{align-items:stretch}}.swarm-progress{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;flex:1;min-height:0;padding:32px 24px}.swarm-progress-header{display:flex;align-items:center;gap:12px;color:#2563eb}.swarm-progress-phase{font-size:1.1rem;font-weight:700;color:#0f172a}.swarm-progress-pct{font-size:.85rem;font-weight:600;color:#64748b;font-variant-numeric:tabular-nums}.swarm-progress-track{width:100%;max-width:400px;height:8px;border-radius:999px;background:#e2e8f0;overflow:hidden}.swarm-progress-fill{height:100%;border-radius:999px;background:linear-gradient(90deg,#3b82f6,#2563eb);transition:width .2s ease}.swarm-progress-steps{display:flex;gap:8px;align-items:flex-start;justify-content:center;flex-wrap:wrap}.swarm-progress-step{display:flex;flex-direction:column;align-items:center;gap:6px;min-width:72px;opacity:.35;transition:opacity .2s}.swarm-progress-step.done{opacity:.7}.swarm-progress-step.current{opacity:1}.swarm-progress-dot{width:10px;height:10px;border-radius:50%;background:#cbd5e1;transition:background .2s}.swarm-progress-step.done .swarm-progress-dot{background:#2563eb}.swarm-progress-step.current .swarm-progress-dot{background:#2563eb;box-shadow:0 0 0 3px #2563eb33}.swarm-progress-step-label{font-size:.68rem;font-weight:600;color:#475569;text-align:center;text-transform:uppercase;letter-spacing:.03em}.report-toast{position:fixed;top:20px;left:50%;transform:translate(-50%);z-index:999;background:#eb2c25;color:#fff;padding:12px 28px;border-radius:8px;font-size:.9rem;font-weight:700;box-shadow:0 4px 20px #eb252559;pointer-events:none}.report-panel{margin-top:16px;border:1px solid #e2e8f0;border-radius:12px;background:#fff;box-shadow:0 1px 3px #0000000f;overflow:hidden}.report-toggle{display:flex;align-items:center;gap:8px;width:100%;padding:14px 16px;border:none;background:none;cursor:pointer;color:inherit;font:inherit;text-align:left}.report-toggle .eyebrow{margin:0;font-size:.82rem}.report-toggle:hover{background:#f8fafc}.report-body{padding:0 16px 16px;display:grid;gap:18px}.report-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px}.report-card{display:flex;flex-direction:column;gap:4px;padding:12px 14px;border:1px solid #f1f5f9;border-radius:8px;background:#f8fafc}.report-card-label{font-size:.7rem;font-weight:700;color:#64748b;text-transform:uppercase;letter-spacing:.04em}.report-card-value{font-size:1.15rem;font-weight:800;color:#0f172a;font-variant-numeric:tabular-nums}.report-card-unit{font-size:.72rem;font-weight:600;color:#94a3b8}.report-timeline{display:grid;gap:8px}.report-timeline-bars{display:flex;align-items:flex-end;gap:2px;height:60px}.report-timeline-bar{flex:1;min-width:3px;border-radius:2px 2px 0 0;background:#2563eb;transition:height .2s}.report-timeline-bar:hover{background:#1d4ed8}.report-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.report-actions-separator{width:1px;height:24px;background:#e2e8f0;margin:0 4px}.report-section-heading{font-size:.75rem;font-weight:700;color:#334155;text-transform:uppercase;letter-spacing:.05em;margin:0;padding:8px 0 2px;border-bottom:1px solid #e2e8f0}.report-chart-tabs{display:flex;gap:4px;border-bottom:1px solid #e2e8f0;padding-bottom:0}.report-chart-tab{padding:8px 16px;border:none;background:none;cursor:pointer;font-size:.78rem;font-weight:600;color:#94a3b8;border-bottom:2px solid transparent;transition:color .15s,border-color .15s}.report-chart-tab:hover{color:#475569}.report-chart-tab.active{color:#0f172a;border-bottom-color:#2563eb}.report-charts-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}@media(max-width:900px){.report-charts-grid{grid-template-columns:1fr}}.report-chart-section{display:flex;flex-direction:column;gap:6px;border:1px solid #f1f5f9;border-radius:10px;padding:12px;background:#fafbfc}.report-chart-title{font-size:.7rem;font-weight:700;color:#64748b;text-transform:uppercase;letter-spacing:.04em}.report-chart-wrapper{flex:1;min-height:0}.report-coverage-summary{display:flex;gap:24px;justify-content:space-around;padding:16px 0}.report-coverage-stat{display:flex;flex-direction:column;align-items:center;gap:4px}.report-coverage-value{font-size:1.5rem;font-weight:800;color:#0f172a;font-variant-numeric:tabular-nums}.report-coverage-label{font-size:.68rem;font-weight:600;color:#94a3b8;text-transform:uppercase;letter-spacing:.04em}.bench-section{display:flex;flex-direction:column;gap:14px}.bench-empty{display:flex;flex-direction:column;align-items:center;gap:8px;padding:32px 16px;color:#94a3b8;font-size:.82rem}.bench-loading{padding:12px;font-size:.78rem;color:#64748b;text-align:center}.bench-banner{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border:1px solid;border-radius:10px}.bench-banner-left{display:flex;align-items:center;gap:10px}.bench-banner-right{display:flex;gap:6px}.bench-platform-pill{padding:2px 10px;border-radius:6px;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.bench-device-name{font-size:.82rem;font-weight:600;color:#0f172a}.bench-tag{padding:2px 8px;border-radius:4px;font-size:.68rem;font-weight:600}.bench-compare-section{display:flex;flex-direction:column;gap:8px;padding:14px;border:1px solid #e2e8f0;border-radius:10px;background:#fafafa}.bench-compare-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.bench-compare-col{padding:10px 12px;border-radius:8px;display:flex;flex-direction:column;gap:4px}.bench-compare-gpu{background:#fef2f2;border:1px solid #fecaca}.bench-compare-cpu{background:#f1f5f9;border:1px solid #e2e8f0}.bench-compare-heading{font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#64748b}.bench-compare-value{font-size:1.15rem;font-weight:700;color:#0f172a;font-variant-numeric:tabular-nums}.bench-compare-sub{font-size:.68rem;color:#94a3b8;font-weight:500}.bench-compare-speedup{display:flex;align-items:center;justify-content:center;gap:8px;padding:8px;margin-top:4px;border-top:1px solid #e2e8f0}.bench-speedup-label{font-size:.72rem;font-weight:600;color:#64748b}.bench-speedup-value{font-size:1rem;font-weight:800;color:#16a34a;font-variant-numeric:tabular-nums}.bench-history-section{display:flex;flex-direction:column;gap:8px}.bench-history-header{display:flex;align-items:baseline;justify-content:space-between}.bench-history-count{font-size:.68rem;color:#94a3b8;font-weight:600}.bench-history-table-wrap{overflow-x:auto;border:1px solid #f1f5f9;border-radius:8px}.bench-history-table{width:100%;border-collapse:collapse;font-size:.75rem}.bench-history-table th{padding:8px 10px;text-align:left;font-size:.65rem;font-weight:700;color:#64748b;text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid #e2e8f0;background:#f8fafc}.bench-history-table td{padding:7px 10px;color:#334155;border-bottom:1px solid #f1f5f9}.bench-history-table tr:last-child td{border-bottom:none}.bench-mono{font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,monospace;font-feature-settings:"tnum"}.bench-platform-badge{display:inline-block;padding:1px 6px;border-radius:4px;font-size:.65rem;font-weight:600;background:#f1f5f9;color:#475569}.bench-why-section{padding:14px;border:1px solid #e2e8f0;border-radius:10px;background:#f8fafc}.bench-why-section p{margin:8px 0 0;font-size:.75rem;line-height:1.55;color:#64748b}.swarm-export-actions{display:flex;gap:8px;flex-wrap:wrap}.swarm-obj-upload{display:flex;flex-direction:column;gap:8px;margin-top:8px}.swarm-obj-status{font-size:.78rem;color:#10b981}.param-label-row{display:inline-flex;align-items:center;gap:5px}.param-tooltip-wrap{position:relative;display:inline-flex;align-items:center}.param-tooltip-icon{display:inline-flex;align-items:center;justify-content:center;width:15px;height:15px;border-radius:50%;border:1px solid #cbd5e1;color:#94a3b8;font-size:9px;font-weight:700;cursor:help;line-height:1;flex-shrink:0}.param-tooltip-icon:hover{border-color:#3b82f6;color:#2563eb;background:#eff6ff}.param-tooltip-body{position:absolute;left:22px;bottom:-6px;z-index:100;min-width:200px;max-width:280px;padding:10px 14px;border-radius:8px;background:#0f172a;color:#f1f5f9;font-size:.76rem;font-weight:400;line-height:1.5;white-space:pre-line;pointer-events:none;opacity:0;transition:opacity .15s;box-shadow:0 4px 16px #0003}.param-tooltip-body:before{content:"";position:absolute;left:-10px;bottom:10px;border:5px solid transparent;border-right-color:#0f172a}.param-tooltip-wrap:hover .param-tooltip-body{opacity:1}.onboard-backdrop{position:fixed;inset:0;z-index:1000;background:#0f172a99;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center}.onboard-card{background:#fff;border-radius:20px;padding:52px 48px 32px;max-width:520px;width:92%;text-align:center;box-shadow:0 24px 72px #0003;position:relative}.onboard-step-icon{color:#2563eb;margin-bottom:20px}.onboard-step-icon svg{width:48px;height:48px}.onboard-step-title{font-size:1.4rem;font-weight:800;color:#0f172a;margin:0 0 12px;letter-spacing:-.02em}.onboard-step-body{font-size:.95rem;color:#475569;line-height:1.6;margin:0 0 28px}.onboard-dots{display:flex;gap:8px;justify-content:center;margin-bottom:24px}.onboard-dot{width:8px;height:8px;border-radius:50%;background:#cbd5e1;transition:background .15s}.onboard-dot.active{background:#2563eb;width:24px;border-radius:4px}.onboard-actions{display:flex;gap:10px;justify-content:center;align-items:center}.onboard-actions .primary-action.compact,.onboard-actions .secondary-action.compact{padding:8px 18px;font-size:.85rem}.onboard-actions .primary-action.compact{display:inline-flex;align-items:center;gap:6px}.onboard-skip{margin-top:16px;background:none;border:none;color:#94a3b8;font-size:.75rem;cursor:pointer;font-weight:600}.onboard-skip:hover{color:#64748b}.preset-strip{display:flex;gap:8px;flex-wrap:wrap;padding-bottom:12px;border-bottom:1px solid #f1f5f9}.preset-chip{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:999px;border:1px solid #e2e8f0;background:#fff;font-size:.78rem;font-weight:600;color:#475569;cursor:pointer;transition:border-color .15s,background .15s,color .15s;white-space:nowrap}.preset-chip:hover{border-color:#2563eb;background:#eff6ff;color:#2563eb}.preset-chip.recommended{border-color:#2563eb;background:#2563eb;color:#fff}.preset-chip.recommended:hover{background:#1d4ed8;border-color:#1d4ed8}.report-tabs{display:flex;flex-direction:column;border:1px solid #e2e8f0;border-radius:12px;background:#fff;box-shadow:0 1px 3px #0000000f;overflow:hidden;height:72vh;min-height:720px}.report-tab-nav{display:flex;border-bottom:1px solid #e2e8f0;flex-shrink:0;overflow-x:auto}.report-tab-btn{display:flex;align-items:center;gap:6px;padding:10px 12px;border:none;background:none;cursor:pointer;font-size:.75rem;font-weight:600;color:#94a3b8;border-bottom:2px solid transparent;transition:color .15s,border-color .15s;white-space:nowrap;flex-shrink:0}.report-tab-btn:hover{color:#475569}.report-tab-btn.active{color:#0f172a;border-bottom-color:#2563eb}.report-tab-content{flex:1;overflow-y:auto;padding:12px}.report-tab-content::-webkit-scrollbar{width:4px}.report-tab-content::-webkit-scrollbar-thumb{background:#e2e8f0;border-radius:4px}.report-tab-metrics{display:grid;gap:8px}.report-tab-metrics .report-card{padding:10px 12px}.report-tab-metrics .report-card-value{font-size:1.05rem}.report-tab-charts{display:grid;gap:10px}.report-tab-content .report-section-heading{font-size:.72rem;font-weight:700;color:#334155;text-transform:uppercase;letter-spacing:.05em;display:flex;align-items:center;gap:6px;padding:8px 0 2px;border-bottom:1px solid #e2e8f0}.report-tab-export{display:grid;gap:12px}.report-tab-export-grid{display:grid;gap:8px}.report-export-btn{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:12px;border:1px solid #e2e8f0;border-radius:8px;background:#f8fafc;cursor:pointer;font:inherit;color:#0f172a;text-align:left;transition:background .15s,border-color .15s}.report-export-btn:hover{background:#f1f5f9;border-color:#cbd5e1}.report-export-btn span{font-size:.82rem;font-weight:700}.report-export-btn small{font-size:.7rem;color:#94a3b8}.report-chart-section.compact{padding:8px}.report-chart-section.compact .report-chart-title{font-size:.68rem}.report-tab-benchmarks .bench-empty{padding:24px 16px}@media(max-width:1200px){.swarm-layout.has-results{grid-template-columns:minmax(220px,260px) minmax(0,1fr) minmax(240px,280px)}.swarm-layout.has-results.sidebar-collapsed{grid-template-columns:48px minmax(0,1fr) minmax(240px,280px)}}@media(max-width:980px){.swarm-layout.has-results,.swarm-layout.has-results.sidebar-collapsed{grid-template-columns:1fr}.report-tabs{height:auto;min-height:auto;max-height:600px}}
