:root{--primary:#4a9eff;--primary-hover:#3a8eef;--success:#27ae60;--warning:#f39c12;--danger:#e74c3c;--info:#3498db;--bg:#1a1a1a;--surface:#2d2d2d;--surface-hover:#353535;--border:#404040;--text:#e0e0e0;--text-muted:#a0a0a0;--font:"Segoe UI", Tahoma, Geneva, Verdana, sans-serif;--input-bg:#1f1f1f;--input-border:#404040;--input-focus-ring:#3490db40;--radius-card:10px;--radius-btn:8px;--radius-input:8px;--radius-badge:20px;--shadow:0 4px 6px #0000004d;--shadow-lg:0 8px 24px #0006;--transition:.2s ease;--transition-card:transform .3s ease, background-color .3s ease;--z-toast:300;--space-xs:.25rem;--space-sm:.5rem;--space-md:1rem;--space-lg:1.5rem;--space-xl:2rem;--space-2xl:3rem;--navbar-height:60px;--sidebar-width:240px;--sidebar-width-collapsed:64px;--sidebar-current-width:var(--sidebar-width);--text-xs:.72rem;--text-sm:.8125rem;--text-md:.875rem;--text-base:.95rem;--text-lg:1.0625rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:1.75rem;--lh-tight:1.2;--lh-normal:1.45;--lh-relaxed:1.6;--fw-regular:400;--fw-medium:500;--fw-semibold:600;--fw-bold:700;--icon-xs:12px;--icon-sm:14px;--icon-md:16px;--icon-lg:20px;--icon-xl:24px;--bg-hover:#ffffff0a;--bg-active:#ffffff12;--bg-selected:#4a9eff1a;--bg-selected-strong:#4a9eff2e;--border-subtle:#ffffff0f;--border-strong:#ffffff24;--text-tertiary:silver;--opacity-disabled:.45;--opacity-hover-icon:.85;--row-xs:24px;--row-sm:28px;--row-md:32px;--row-lg:40px;--space-2xs:.125rem;--bg-sidebar:#131313;--bg-drawer:#171a21;--tree-guide:#ffffff0f;--tree-guide-strong:#ffffff1a}body.sidebar-collapsed{--sidebar-current-width:var(--sidebar-width-collapsed)}@media (width<=768px){:root{--sidebar-current-width:var(--sidebar-width-collapsed)}}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;font-size:16px}body{-webkit-font-smoothing:antialiased;line-height:1.5}img,picture,video,canvas,svg{max-width:100%;display:block}input,button,textarea,select{font:inherit}p,h1,h2,h3,h4,h5,h6{overflow-wrap:break-word}a{color:inherit;text-decoration:none}ul,ol{list-style:none}body{font-family:var(--font);background-color:var(--bg);color:var(--text);min-height:100vh}#root{flex-direction:column;min-height:100vh;display:flex}h1,h2,h3,h4,h5,h6{color:var(--text);line-height:1.3}h1{font-size:2rem}h2{font-size:1.5rem}h3{font-size:1.25rem}p{color:var(--text);line-height:1.6}.text-muted{color:var(--text-muted)}.text-primary{color:var(--primary)}.text-success{color:var(--success)}.text-warning{color:var(--warning)}.text-danger{color:var(--danger)}.page-content{padding:var(--space-lg);margin-top:var(--navbar-height);margin-left:var(--sidebar-current-width);transition:margin-left var(--transition);flex:1;min-width:0}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-sm{gap:var(--space-sm)}.gap-md{gap:var(--space-md)}.gap-lg{gap:var(--space-lg)}.mt-sm{margin-top:var(--space-sm)}.mt-md{margin-top:var(--space-md)}.mt-lg{margin-top:var(--space-lg)}.mb-md{margin-bottom:var(--space-md)}.mb-lg{margin-bottom:var(--space-lg)}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}.icon-btn{color:var(--text-muted);cursor:pointer;transition:color var(--transition), background-color var(--transition), border-color var(--transition);background:0 0;border:1px solid #0000;border-radius:6px;justify-content:center;align-items:center;padding:0;display:inline-flex}.icon-btn:hover:not(:disabled){color:var(--text);background-color:var(--bg-hover)}.icon-btn:focus-visible{border-color:var(--primary);box-shadow:0 0 0 2px var(--input-focus-ring);outline:none}.icon-btn:disabled{opacity:var(--opacity-disabled);cursor:not-allowed}.icon-btn--sm{width:22px;height:22px}.icon-btn--md{width:28px;height:28px}.icon-btn--danger:hover:not(:disabled){color:var(--danger);background-color:#e74c3c14}.icon-btn--primary{color:var(--primary)}.icon-btn--primary:hover:not(:disabled),.icon-btn--active{color:var(--primary);background-color:var(--bg-selected)}.icon-btn--active:hover:not(:disabled){background-color:var(--bg-selected-strong)}.spinner{border-style:solid;border-color:var(--border);border-top-color:var(--primary);border-radius:50%;flex-shrink:0;animation:.8s linear infinite spinner-rotate;display:inline-block}.spinner--sm{border-width:2px;width:16px;height:16px}.spinner--md{border-width:3px;width:24px;height:24px}.spinner--lg{border-width:3px;width:32px;height:32px}@keyframes spinner-rotate{to{transform:rotate(360deg)}}.qh-confirm__overlay{padding:var(--space-md);z-index:280;background-color:#0000008c;justify-content:center;align-items:center;animation:.14s ease-out qh-confirm-overlay-in;display:flex;position:fixed;inset:0}@keyframes qh-confirm-overlay-in{0%{opacity:0}to{opacity:1}}.qh-confirm{background-color:var(--bg-drawer);border-radius:var(--radius-card);border:1px solid #ffffff1a;flex-direction:column;width:100%;max-width:440px;animation:.18s cubic-bezier(.2,.8,.2,1) qh-confirm-in;display:flex;box-shadow:0 24px 48px #00000080,0 4px 12px #0000004d}@keyframes qh-confirm-in{0%{opacity:0;transform:translateY(8px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.qh-confirm__header{justify-content:space-between;align-items:flex-start;gap:var(--space-md);padding:var(--space-md) var(--space-lg);border-bottom:1px solid var(--border-subtle);display:flex}.qh-confirm__heading{align-items:center;gap:var(--space-sm);flex:1;min-width:0;display:flex}.qh-confirm__icon{width:28px;height:28px;color:var(--warning);background-color:#f39c121f;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.qh-confirm__title{font-size:var(--text-lg);font-weight:var(--fw-semibold);color:var(--text);line-height:var(--lh-tight);word-wrap:break-word}.qh-confirm__body{padding:var(--space-md) var(--space-lg)}.qh-confirm__description{font-size:var(--text-sm);color:var(--text-muted);line-height:var(--lh-normal)}.qh-confirm__footer{justify-content:flex-end;gap:var(--space-sm);padding:var(--space-sm) var(--space-lg) var(--space-md);display:flex}.qh-confirm__btn{border-radius:var(--radius-btn);font-size:var(--text-sm);font-weight:var(--fw-semibold);font-family:var(--font);cursor:pointer;transition:background-color var(--transition), border-color var(--transition), color var(--transition);border:1px solid #0000;align-items:center;gap:6px;padding:8px 16px;display:inline-flex}.qh-confirm__btn:disabled{cursor:not-allowed;opacity:.7}.qh-confirm__btn-spinner{border-color:color-mix(in srgb, currentColor 35%, transparent);border-top-color:currentColor}.qh-confirm__btn--ghost{color:var(--text-muted);background:0 0}.qh-confirm__btn--ghost:hover{background-color:var(--bg-hover);color:var(--text)}.qh-confirm__btn--ghost:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.qh-confirm__btn--default{background-color:var(--primary);border-color:var(--primary);color:#fff}.qh-confirm__btn--default:hover{background-color:var(--primary-hover);border-color:var(--primary-hover)}.qh-confirm__btn--default:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.qh-confirm__btn--danger{background-color:var(--danger);border-color:var(--danger);color:#fff}.qh-confirm__btn--danger:hover{background-color:#c0392b;border-color:#c0392b}.qh-confirm__btn--danger:focus-visible{outline:2px solid var(--danger);outline-offset:2px}@media (width<=600px){.qh-confirm{max-width:100%}.qh-confirm__footer{flex-direction:column-reverse}.qh-confirm__btn{justify-content:center;width:100%}}.qh-toast-viewport{bottom:var(--space-lg);right:var(--space-lg);gap:var(--space-sm);z-index:var(--z-toast);width:360px;max-width:calc(100vw - 2 * var(--space-md));pointer-events:none;flex-direction:column-reverse;margin:0;padding:0;list-style:none;display:flex;position:fixed}.qh-toast-viewport>*{pointer-events:auto}@media (width<=600px){.qh-toast-viewport{top:var(--space-md);bottom:auto;left:var(--space-md);right:var(--space-md);flex-direction:column;width:auto}}.qh-toast{align-items:flex-start;gap:var(--space-sm);padding:var(--space-md);background-color:var(--bg-drawer);border:1px solid var(--border-subtle);border-radius:var(--radius-card);box-shadow:var(--shadow-lg);color:var(--text);font-size:var(--text-sm);animation:.16s cubic-bezier(.2,.8,.2,1) qh-toast-in;display:flex;position:relative;overflow:hidden}.qh-toast:before{content:"";opacity:.7;background-color:currentColor;width:3px;position:absolute;inset:0 auto 0 0}.qh-toast--success{color:var(--success);border-color:#27ae6033}.qh-toast--error{color:var(--danger);border-color:#e74c3c33}.qh-toast--warning{color:var(--warning);border-color:#f39c1233}.qh-toast--info{color:var(--info);border-color:#3498db33}.qh-toast__icon{color:currentColor;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;display:inline-flex}.qh-toast--success .qh-toast__icon{background-color:#27ae601f}.qh-toast--error .qh-toast__icon{background-color:#e74c3c1f}.qh-toast--warning .qh-toast__icon{background-color:#f39c121f}.qh-toast--info .qh-toast__icon{background-color:#3498db1f}.qh-toast__body{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.qh-toast__title{font-size:var(--text-sm);font-weight:var(--fw-semibold);color:var(--text);line-height:var(--lh-tight);letter-spacing:-.005em;word-wrap:break-word}.qh-toast__description{font-size:var(--text-xs);color:var(--text-muted);line-height:var(--lh-normal);word-wrap:break-word}.qh-toast__action{color:currentColor;font-family:var(--font);font-size:var(--text-xs);font-weight:var(--fw-semibold);border-radius:var(--radius-btn);cursor:pointer;transition:background-color var(--transition), border-color var(--transition);background:0 0;border:1px solid #0000;align-self:flex-start;margin-top:2px;padding:4px 10px}.qh-toast__action:hover{border-color:var(--border-subtle);background-color:#ffffff0a}.qh-toast__action:focus-visible{outline-offset:2px;outline:2px solid}.qh-toast__close{width:22px;height:22px;color:var(--text-muted);cursor:pointer;transition:background-color var(--transition), color var(--transition);background:0 0;border:none;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;margin-top:-2px;margin-right:-4px;display:inline-flex}.qh-toast__close:hover{background-color:var(--bg-hover);color:var(--text)}.qh-toast__close:focus-visible{outline:2px solid var(--primary);outline-offset:1px}@keyframes qh-toast-in{0%{opacity:0;transform:translate(16px)scale(.96)}to{opacity:1;transform:translate(0)scale(1)}}.qh-toast--leaving{pointer-events:none;animation:.18s ease-in forwards qh-toast-out}@keyframes qh-toast-out{0%{opacity:1;max-height:200px;margin-bottom:0;transform:translate(0)scale(1)}to{opacity:0;max-height:0;margin-bottom:calc(var(--space-sm) * -1);border-top-width:0;border-bottom-width:0;padding-top:0;padding-bottom:0;transform:translate(16px)scale(.96)}}@media (prefers-reduced-motion:reduce){.qh-toast{animation:.12s ease-out qh-toast-fade-in}.qh-toast--leaving{animation:.12s ease-out forwards qh-toast-fade-out}@keyframes qh-toast-fade-in{0%{opacity:0}to{opacity:1}}@keyframes qh-toast-fade-out{0%{opacity:1}to{opacity:0}}}.card{background-color:var(--surface);border:1px solid var(--border-subtle);border-radius:var(--radius-card);transition:background-color var(--transition), border-color var(--transition), transform var(--transition)}.card--hoverable:hover{background-color:var(--surface-hover);border-color:var(--border-strong);transform:translateY(-1px)}.card__header{padding:var(--space-sm) var(--space-md);border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:center;gap:var(--space-md);min-height:44px;display:flex}.card__header-title{font-size:var(--text-md);font-weight:var(--fw-semibold);color:var(--text);align-items:center;gap:var(--space-sm);letter-spacing:.01em;display:flex}.card__body{padding:var(--space-md)}.card__footer{padding:var(--space-sm) var(--space-md);border-top:1px solid var(--border-subtle)}.tooltip-wrap{display:inline-flex;position:relative}.tooltip{--tooltip-bg:#232830;--tooltip-border:#ffffff1a;--tooltip-shift:6px;--tooltip-scale:.96;z-index:1000;pointer-events:none;align-items:center;gap:var(--space-sm);background-color:var(--tooltip-bg);color:var(--text);border:1px solid var(--tooltip-border);border-radius:var(--radius-card);font-family:var(--font);font-size:var(--text-sm);font-weight:var(--fw-regular);font-style:normal;line-height:var(--lh-normal);letter-spacing:normal;text-transform:none;white-space:nowrap;text-align:center;-webkit-backdrop-filter:blur(8px)saturate(1.2);opacity:0;visibility:hidden;padding:9px 13px;transition:opacity .16s ease-out,transform .18s cubic-bezier(.16,1,.3,1),visibility .16s ease-out;display:inline-flex;position:absolute;box-shadow:0 10px 28px #00000061,0 2px 8px #0000003d,inset 0 1px #ffffff0d}.tooltip--with-icon{padding:9px 14px 9px 10px}.tooltip__icon{color:var(--primary);opacity:var(--opacity-hover-icon);flex-shrink:0;align-items:center;display:inline-flex}.tooltip__text{display:inline-block}.tooltip--multiline{white-space:normal;text-align:left;text-wrap:pretty;width:max-content;max-width:300px;color:var(--text-tertiary)}.tooltip:after{content:"";background-color:var(--tooltip-bg);border-right:1px solid var(--tooltip-border);border-bottom:1px solid var(--tooltip-border);pointer-events:none;border-bottom-right-radius:2px;width:9px;height:9px;position:absolute}.tooltip--top{transform-origin:bottom;transform:translateX(-50%) translateY(var(--tooltip-shift)) scale(var(--tooltip-scale));bottom:calc(100% + 10px);left:50%}.tooltip--top.tooltip--visible{transform:translate(-50%)translateY(0)scale(1)}.tooltip--top:after{bottom:-5px;left:50%;transform:translate(-50%)rotate(45deg)}.tooltip--bottom{transform-origin:top;transform:translateX(-50%) translateY(calc(var(--tooltip-shift) * -1)) scale(var(--tooltip-scale));top:calc(100% + 10px);left:50%}.tooltip--bottom.tooltip--visible{transform:translate(-50%)translateY(0)scale(1)}.tooltip--bottom:after{top:-5px;left:50%;transform:translate(-50%)rotate(225deg)}.tooltip--left{transform-origin:100%;transform:translateY(-50%) translateX(var(--tooltip-shift)) scale(var(--tooltip-scale));top:50%;right:calc(100% + 10px)}.tooltip--left.tooltip--visible{transform:translateY(-50%)translate(0)scale(1)}.tooltip--left:after{top:50%;right:-5px;transform:translateY(-50%)rotate(-45deg)}.tooltip--right{transform-origin:0;transform:translateY(-50%) translateX(calc(var(--tooltip-shift) * -1)) scale(var(--tooltip-scale));top:50%;left:calc(100% + 10px)}.tooltip--right.tooltip--visible{transform:translateY(-50%)translate(0)scale(1)}.tooltip--right:after{top:50%;left:-5px;transform:translateY(-50%)rotate(135deg)}.tooltip--visible{opacity:1;visibility:visible}@media (prefers-reduced-motion:reduce){.tooltip{--tooltip-scale:1;transition:opacity,visibility}.tooltip--top,.tooltip--top.tooltip--visible,.tooltip--bottom,.tooltip--bottom.tooltip--visible{transform:translate(-50%)}.tooltip--left,.tooltip--left.tooltip--visible,.tooltip--right,.tooltip--right.tooltip--visible{transform:translateY(-50%)}}.info-tooltip__trigger{color:var(--text-muted);cursor:help;transition:color var(--transition);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;padding:0;line-height:0;display:inline-flex}.info-tooltip__trigger:hover,.info-tooltip__trigger:focus-visible{color:var(--text)}.metric-card{background:var(--surface);border-radius:var(--radius-card);border:1px solid var(--border-subtle);padding:var(--space-md);align-items:center;gap:var(--space-md);transition:background-color var(--transition), border-color var(--transition);display:flex}.metric-card:hover{background:var(--surface-hover);border-color:var(--border-strong)}.metric-card__icon{background:var(--bg-selected);width:36px;height:36px;color:var(--primary);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.metric-card--success .metric-card__icon{color:var(--success);background:#27ae601a}.metric-card--warning .metric-card__icon{color:var(--warning);background:#f39c121a}.metric-card--danger .metric-card__icon{color:var(--danger);background:#e74c3c1a}.metric-card--info .metric-card__icon{color:var(--info);background:#3498db1a}.metric-card__body{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.metric-card__label{font-size:var(--text-xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;font-weight:var(--fw-semibold);align-items:center;gap:4px;min-width:0;display:flex}.metric-card__label-text{white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.metric-card__value{font-size:var(--text-2xl);font-weight:var(--fw-bold);color:var(--text);letter-spacing:-.01em;font-variant-numeric:tabular-nums;line-height:1.15}.metric-card--success .metric-card__value{color:var(--success)}.metric-card--warning .metric-card__value{color:var(--warning)}.metric-card--danger .metric-card__value{color:var(--danger)}.metric-card--info .metric-card__value{color:var(--info)}.metric-card__detail{font-size:var(--text-xs);color:var(--text-muted);margin-top:2px}.phase-card{background:var(--surface);border-radius:var(--radius-card);border:1px solid var(--border-subtle);padding:var(--space-md);transition:background-color var(--transition), border-color var(--transition)}.phase-card:hover{background:var(--surface-hover);border-color:var(--border-strong)}.phase-card__header{margin-bottom:var(--space-sm);padding-bottom:var(--space-sm);border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:center;display:flex}.phase-card__phase{font-size:var(--text-md);font-weight:var(--fw-semibold);color:var(--text)}.phase-card__count{font-size:var(--text-xs);background:var(--bg-selected);color:var(--primary);border-radius:var(--radius-badge);font-weight:var(--fw-semibold);font-variant-numeric:tabular-nums;padding:2px 10px}.phase-card__costs{flex-direction:column;gap:6px;display:flex}.phase-card__row{justify-content:space-between;align-items:center;display:flex}.phase-card__cost-label{font-size:var(--text-sm);color:var(--text-muted)}.phase-card__cost-value{font-size:var(--text-sm);font-weight:var(--fw-semibold);color:var(--text);font-variant-numeric:tabular-nums}.phase-card__row--total{border-top:1px solid var(--border-subtle);margin-top:4px;padding-top:6px}.phase-card__row--total .phase-card__cost-label{font-weight:var(--fw-semibold);color:var(--text)}.phase-card__cost-value--total{font-size:var(--text-base);color:var(--warning)}.progress-card{background:var(--surface);border-radius:var(--radius-card);border:1px solid var(--border-subtle);padding:var(--space-md);transition:background-color var(--transition), border-color var(--transition)}.progress-card:hover{background:var(--surface-hover);border-color:var(--border-strong)}.progress-card__header{margin-bottom:var(--space-sm);justify-content:space-between;align-items:baseline;display:flex}.progress-card__label{font-size:var(--text-xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;font-weight:var(--fw-semibold);align-items:center;gap:4px;display:flex}.progress-card__value{font-size:var(--text-xl);font-weight:var(--fw-bold);color:var(--primary);font-variant-numeric:tabular-nums;letter-spacing:-.01em}.progress-card__bar-track{height:6px;margin-bottom:var(--space-sm);background:#ffffff0f;border-radius:3px;overflow:hidden}.progress-card__bar-fill{background:linear-gradient(90deg, var(--primary), #6cb4ff);border-radius:3px;height:100%;transition:width .6s}.progress-card__detail{font-size:var(--text-xs);color:var(--text-muted);font-variant-numeric:tabular-nums}.project-switcher{flex-direction:column;gap:4px;display:inline-flex;position:relative}.project-switcher__context-label{text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted);font-size:.6875rem;font-weight:var(--fw-semibold);padding-left:2px}.project-switcher__trigger{align-items:center;gap:var(--space-sm);background-color:var(--input-bg);height:40px;color:var(--text);border:1px solid var(--input-border);border-radius:var(--radius-btn);font-family:var(--font);font-size:var(--text-sm);font-weight:var(--fw-medium);cursor:pointer;transition:border-color var(--transition), background-color var(--transition);outline:none;padding:0 .75rem;display:inline-flex}.project-switcher__trigger:hover:not(:disabled){border-color:var(--border-strong);background-color:var(--bg-hover)}.project-switcher__trigger:focus-visible{border-color:var(--primary);box-shadow:0 0 0 3px var(--input-focus-ring)}.project-switcher__trigger:disabled{opacity:var(--opacity-disabled);cursor:not-allowed}.project-switcher--open .project-switcher__trigger{border-color:var(--primary);background-color:var(--bg-hover)}.project-switcher__avatar{background-color:var(--bg-selected-strong);width:22px;height:22px;color:var(--primary);font-size:var(--text-xs);font-weight:var(--fw-bold);letter-spacing:0;border-radius:5px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.project-switcher__icon{color:var(--text-muted);flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;display:inline-flex}.project-switcher__name{text-align:left;text-overflow:ellipsis;white-space:nowrap;font-weight:var(--fw-medium);flex:1;overflow:hidden}.project-switcher__chevron{color:var(--text-muted);transition:transform var(--transition);flex-shrink:0}.project-switcher--open .project-switcher__chevron{color:var(--primary);transform:rotate(180deg)}.project-switcher__menu{background-color:var(--bg-drawer);z-index:150;border:1px solid #ffffff1a;border-radius:8px;outline:none;min-width:240px;max-height:320px;margin:0;padding:4px;list-style:none;animation:.12s ease-out project-switcher-fade;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto;box-shadow:0 16px 32px #00000073}@keyframes project-switcher-fade{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.project-switcher__menu-label{text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted);font-size:.65rem;font-weight:var(--fw-semibold);padding:8px 10px 4px}.project-switcher__option{align-items:center;gap:var(--space-sm);cursor:pointer;font-size:var(--text-sm);color:var(--text);-webkit-user-select:none;user-select:none;transition:background-color var(--transition);border-radius:6px;padding:7px 10px;display:flex}.project-switcher__option--highlighted{background-color:var(--bg-hover)}.project-switcher__option--selected{background-color:var(--bg-selected)}.project-switcher__option--selected.project-switcher__option--highlighted{background-color:var(--bg-selected-strong)}.project-switcher__option-text{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.project-switcher__option-name{text-overflow:ellipsis;white-space:nowrap;font-weight:var(--fw-medium);overflow:hidden}.project-switcher__option-meta{font-size:var(--text-xs);color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.project-switcher__star{cursor:pointer;color:var(--text-muted);opacity:.55;transition:color var(--transition), opacity var(--transition), background-color var(--transition);background:0 0;border:none;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;padding:2px;display:inline-flex}.project-switcher__star:hover{opacity:1;color:var(--warning);background-color:var(--bg-hover)}.project-switcher__star--active{opacity:1;color:var(--warning)}.project-switcher__check{color:var(--primary);flex-shrink:0}@media (width<=600px){.project-switcher{flex:1;min-width:0!important}}.savings-breakdown{background:var(--surface);border-radius:var(--radius-card);border:1px solid var(--border-subtle);padding:var(--space-md);gap:var(--space-sm);transition:background-color var(--transition), border-color var(--transition);flex-direction:column;display:flex}.savings-breakdown:hover{background:var(--surface-hover);border-color:var(--border-strong)}.savings-breakdown__title{font-size:var(--text-md);font-weight:var(--fw-semibold);color:var(--text);padding-bottom:var(--space-sm);border-bottom:1px solid var(--border-subtle)}.savings-breakdown__rows{flex-direction:column;gap:6px;display:flex}.savings-breakdown__row{justify-content:space-between;align-items:center;display:flex}.savings-breakdown__label{font-size:var(--text-sm);color:var(--text-muted)}.savings-breakdown__value{font-size:var(--text-sm);font-weight:var(--fw-semibold);color:var(--success);font-variant-numeric:tabular-nums}.qh-select{flex-direction:column;width:100%;display:inline-flex;position:relative}.qh-select__trigger{justify-content:space-between;align-items:center;gap:var(--space-sm);background-color:var(--input-bg);width:100%;color:var(--text);border:1px solid var(--input-border);border-radius:var(--radius-input);font-family:var(--font);font-size:var(--text-sm);font-weight:var(--fw-medium);cursor:pointer;transition:border-color var(--transition), background-color var(--transition), box-shadow var(--transition);text-align:left;outline:none;display:inline-flex}.qh-select__trigger--md{height:36px;padding:0 .75rem}.qh-select__trigger--sm{height:30px;font-size:var(--text-xs);padding:0 .6rem}.qh-select__trigger:hover:not(.qh-select__trigger--disabled){border-color:var(--border-strong);background-color:var(--bg-hover)}.qh-select__trigger:focus-visible{border-color:var(--primary);box-shadow:0 0 0 3px var(--input-focus-ring)}.qh-select__trigger--open{border-color:var(--primary);background-color:var(--bg-hover);box-shadow:0 0 0 3px var(--input-focus-ring)}.qh-select__trigger--disabled{opacity:var(--opacity-disabled);cursor:not-allowed}.qh-select__trigger--placeholder .qh-select__trigger-label{color:var(--text-muted);font-weight:var(--fw-regular)}.qh-select__trigger-label{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.qh-select__chevron{color:var(--text-muted);transition:transform var(--transition), color var(--transition);flex-shrink:0}.qh-select__chevron--open{color:var(--primary);transform:rotate(180deg)}.qh-select__menu{background-color:var(--bg-drawer);z-index:250;border:1px solid #ffffff1a;border-radius:8px;flex-direction:column;max-height:320px;padding:4px;animation:.14s ease-out qh-select-pop;display:flex;position:absolute;top:calc(100% + 6px);left:0;right:0;box-shadow:0 16px 32px #00000073,0 2px 6px #0000004d}@keyframes qh-select-pop{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.qh-select__search{border-bottom:1px solid var(--border-subtle);color:var(--text-muted);align-items:center;gap:6px;padding:6px 8px;display:flex}.qh-select__search-input{color:var(--text);font-family:var(--font);font-size:var(--text-xs);background:0 0;border:none;outline:none;flex:1;padding:2px 0}.qh-select__search-input::placeholder{color:var(--text-muted)}.qh-select__list{outline:none;flex:1;padding:2px 0;overflow-y:auto}.qh-select__empty{color:var(--text-muted);font-size:var(--text-xs);text-align:center;padding:10px 12px}.qh-select__option{min-height:28px;font-size:var(--text-sm);color:var(--text);cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color var(--transition), color var(--transition);border-radius:6px;align-items:center;gap:8px;margin:1px 2px;padding:4px 10px;display:flex;position:relative}.qh-select__option--highlighted{background-color:var(--bg-hover)}.qh-select__option--selected{color:var(--primary);background-color:var(--bg-selected)}.qh-select__option--selected.qh-select__option--highlighted{background-color:var(--bg-selected-strong)}.qh-select__option--disabled{opacity:var(--opacity-disabled);cursor:not-allowed}.qh-select__option--null .qh-select__option-label{color:var(--text-muted);font-style:italic}.qh-select__option-label{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.qh-select__option-meta{font-size:var(--text-xs);color:var(--text-muted);font-variant-numeric:tabular-nums;flex-shrink:0}.qh-select__option-check{color:var(--primary);flex-shrink:0}.qh-select__list::-webkit-scrollbar{width:8px}.qh-select__list::-webkit-scrollbar-track{background:0 0}.qh-select__list::-webkit-scrollbar-thumb{background-color:#ffffff14;border-radius:4px}.qh-select__list::-webkit-scrollbar-thumb:hover{background-color:#ffffff29}.skeleton{--skeleton-width:100%;--skeleton-height:1rem;width:var(--skeleton-width);height:var(--skeleton-height);background-color:#ffffff0f;display:block;position:relative;overflow:hidden}.skeleton:after{content:"";background:linear-gradient(90deg,#0000,#ffffff14,#0000);animation:1.35s ease-in-out infinite skeleton-shimmer;position:absolute;inset:0;transform:translate(-100%)}.skeleton--text{--skeleton-height:.78rem}.skeleton--circle{--skeleton-width:var(--skeleton-height);border-radius:50%}.skeleton--radius-sm{border-radius:4px}.skeleton--radius-md{border-radius:var(--radius-input)}.skeleton--radius-full{border-radius:999px}.skeleton-text{flex-direction:column;gap:.45rem;display:flex}@keyframes skeleton-shimmer{to{transform:translate(100%)}}@media (prefers-reduced-motion:reduce){.skeleton:after{animation:none;display:none}}.dashboard{gap:var(--space-lg);flex-direction:column;display:flex}.dashboard__header{justify-content:space-between;align-items:flex-end;gap:var(--space-sm);padding-bottom:var(--space-sm);border-bottom:1px solid var(--border-subtle);flex-wrap:wrap;display:flex}.dashboard__header-text{flex-direction:column;gap:2px;display:flex}.dashboard__title{font-size:var(--text-xl);font-weight:var(--fw-semibold);line-height:var(--lh-tight);color:var(--text)}.dashboard__subtitle{color:var(--text-muted);font-size:var(--text-xs)}.dashboard__loading{justify-content:center;align-items:center;gap:var(--space-md);padding:var(--space-2xl);color:var(--text-muted);flex-direction:column;display:flex}.dashboard__spinner{border:3px solid var(--border);border-top-color:var(--primary);border-radius:50%;width:32px;height:32px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.dashboard__error{color:var(--danger);padding:var(--space-xs) var(--space-md);font-size:var(--text-sm);background:#e74c3c14;border:1px solid #e74c3c40;border-radius:8px}.dashboard__empty{align-items:center;gap:var(--space-sm);padding:var(--space-2xl);text-align:center;color:var(--text-muted);flex-direction:column;display:flex}.dashboard__empty h2{font-size:var(--text-lg);font-weight:var(--fw-medium);color:var(--text)}.dashboard__skeleton{gap:var(--space-lg);flex-direction:column;display:flex}.dashboard__skeleton-panel,.dashboard__skeleton-metric{border:1px solid var(--border-subtle);border-radius:var(--radius-card);background-color:var(--surface)}.dashboard__skeleton-panel{gap:var(--space-md);min-height:160px;padding:var(--space-md);flex-direction:column;display:flex}.dashboard__skeleton-metric{align-items:center;gap:var(--space-md);min-height:96px;padding:var(--space-md);display:flex}.dashboard__skeleton-metric-body{gap:var(--space-sm);flex-direction:column;flex:1;display:flex}.dashboard__section{gap:var(--space-sm);flex-direction:column;display:flex}.dashboard__section-title{font-size:.75rem;font-weight:var(--fw-semibold);color:var(--text-muted);text-transform:uppercase;letter-spacing:.1em;margin-bottom:4px;padding-bottom:4px}.dashboard__section-head{justify-content:space-between;align-items:center;gap:var(--space-md);flex-wrap:wrap;display:flex}.dashboard__section-head .dashboard__section-title{margin-bottom:0;padding-bottom:0}.dashboard__group-select{align-items:center;gap:var(--space-sm);display:flex}.dashboard__group-hint{font-size:var(--text-xs);color:var(--text-muted);white-space:nowrap}.dashboard__group-select .qh-select{min-width:240px}.dashboard__phase-block{gap:var(--space-sm);flex-direction:column;display:flex}.dashboard__phase-block+.dashboard__phase-block{margin-top:var(--space-lg)}.dashboard__block-title{font-size:var(--text-sm);font-weight:var(--fw-semibold);color:var(--text);margin-bottom:var(--space-sm)}.dashboard__grid-2{gap:var(--space-sm);grid-template-columns:repeat(2,1fr);display:grid}.dashboard__grid-3{gap:var(--space-sm);grid-template-columns:repeat(3,1fr);display:grid}@media (width<=900px){.dashboard__grid-3{grid-template-columns:repeat(2,1fr)}}@media (width<=640px){.dashboard__grid-2,.dashboard__grid-3{grid-template-columns:1fr}}.dashboard__chart-title{font-size:var(--text-sm);font-weight:var(--fw-semibold);margin-bottom:var(--space-sm);color:var(--text);letter-spacing:.01em}.dashboard__chart-wrap{height:220px;position:relative}.dashboard__phase-total{justify-content:flex-end;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);background:var(--surface);border-radius:var(--radius-card);border:1px solid var(--border-subtle);font-size:var(--text-sm);color:var(--text-muted);display:flex}.dashboard__phase-total strong{font-size:var(--text-base);color:var(--warning);font-variant-numeric:tabular-nums}.dashboard__info-alert{align-items:center;gap:var(--space-sm);padding:var(--space-xs) var(--space-md);font-size:var(--text-xs);color:var(--info);background:#3498db14;border:1px solid #3498db33;border-radius:8px;display:flex}.dashboard__no-config{align-items:flex-start;gap:var(--space-md);padding:var(--space-sm) var(--space-md);color:var(--warning);font-size:var(--text-sm);background:#f39c1214;border:1px solid #f39c1240;border-radius:8px;display:flex}.dashboard__no-config p{color:var(--text-muted);margin-top:4px}.dashboard__points-header{align-items:center;gap:var(--space-sm);margin-bottom:var(--space-sm);font-size:var(--text-sm);font-weight:var(--fw-semibold);display:flex}.dashboard__points-header--positive{color:var(--success)}.dashboard__points-header--atencao{color:var(--warning)}.dashboard__points-list{flex-direction:column;gap:6px;list-style:none;display:flex}.dashboard__points-item{font-size:var(--text-sm);line-height:var(--lh-normal);border-left:2px solid #0000;border-radius:6px;padding:8px 12px}.dashboard__points-item--positive{border-left-color:var(--success);color:var(--text);background:#27ae600f}.dashboard__points-item--atencao{border-left-color:var(--warning);color:var(--text);background:#f39c120f}.btn{border-radius:var(--radius-btn);cursor:pointer;transition:background-color var(--transition), opacity var(--transition), transform var(--transition);white-space:nowrap;border:none;outline:none;justify-content:center;align-items:center;gap:.5rem;padding:.65rem 1.4rem;font-size:.95rem;font-weight:600;display:inline-flex}.btn:focus-visible{box-shadow:0 0 0 3px var(--input-focus-ring)}.btn:active:not(:disabled){transform:translateY(1px)}.btn:disabled{opacity:.55;cursor:not-allowed}.btn--primary{background-color:var(--primary);color:#fff}.btn--primary:hover:not(:disabled){background-color:var(--primary-hover)}.btn--secondary{background-color:var(--surface-hover);color:var(--text);border:1px solid var(--border)}.btn--secondary:hover:not(:disabled){background-color:var(--border)}.btn--danger{background-color:var(--danger);color:#fff}.btn--danger:hover:not(:disabled){background-color:#c0392b}.btn--ghost{color:var(--text-muted);background-color:#0000;border:1px solid #0000}.btn--ghost:hover:not(:disabled){color:var(--text);background-color:var(--surface-hover)}.btn--sm{padding:.4rem .9rem;font-size:.85rem}.btn--full{width:100%}.btn__spinner{border:2px solid #ffffff4d;border-top-color:#fff;border-radius:50%;flex-shrink:0;width:16px;height:16px;animation:.7s linear infinite btn-spin}.btn--secondary .btn__spinner,.btn--ghost .btn__spinner{border-color:#ffffff2e;border-top-color:var(--text)}@keyframes btn-spin{to{transform:rotate(360deg)}}.input-wrapper{flex-direction:column;gap:.35rem;display:flex}.input-label{color:var(--text);font-size:.875rem;font-weight:600}.input-field{align-items:center;display:flex;position:relative}.input-field__icon{color:var(--text-muted);pointer-events:none;flex-shrink:0;align-items:center;display:flex;position:absolute;left:.85rem}.input-field__action{color:var(--text-muted);cursor:pointer;transition:color var(--transition);background:0 0;border:none;align-items:center;padding:0;line-height:0;display:flex;position:absolute;right:.85rem}.input-field__action:hover{color:var(--text)}.input-field input{background-color:var(--input-bg);border:2px solid var(--input-border);border-radius:var(--radius-input);width:100%;color:var(--text);transition:border-color var(--transition), box-shadow var(--transition);outline:none;padding:.7rem 1rem}.input-field--has-icon input{padding-left:2.6rem}.input-field--has-action input{padding-right:2.6rem}.input-field--sm input{font-size:var(--text-sm);border-width:1px;padding:.4rem .85rem}.input-field--sm.input-field--has-icon input{padding-left:2.2rem}.input-field--sm.input-field--has-action input{padding-right:2.2rem}.input-field input:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--input-focus-ring)}.input-field input::placeholder{color:var(--text-muted)}.input-field input:disabled{opacity:.55;cursor:not-allowed}.input-field--error input{border-color:var(--danger)}.input-field--error input:focus{box-shadow:0 0 0 3px #e74c3c40}.input-error{color:var(--danger);font-size:.8rem}.config-header{justify-content:space-between;align-items:flex-end;gap:var(--space-sm);margin-bottom:var(--space-xl);flex-wrap:wrap;display:flex}.config-header h1{margin-bottom:var(--space-xs);font-size:1.75rem;font-weight:700}.config-admin-badge{color:var(--primary);border-radius:var(--radius-badge);background:#4a9eff1f;border:1px solid #4a9eff40;align-items:center;gap:5px;padding:3px 10px;font-size:.75rem;font-weight:600;display:inline-flex}.config-alert{align-items:center;gap:var(--space-sm);border-radius:var(--radius-card);padding:var(--space-sm) var(--space-md);margin-bottom:var(--space-md);font-size:.875rem;display:flex}.config-alert--error{color:var(--danger);background:#e74c3c1a;border:1px solid #e74c3c4d}.config-alert--success{color:var(--success);background:#27ae601a;border:1px solid #27ae604d}.config-loading{justify-content:center;align-items:center;gap:var(--space-md);padding:var(--space-2xl);color:var(--text-muted);display:flex}.config-spinner{border:3px solid var(--border);border-top-color:var(--primary);border-radius:50%;width:28px;height:28px;animation:.8s linear infinite config-spin}@keyframes config-spin{to{transform:rotate(360deg)}}.config-form{gap:var(--space-xl);flex-direction:column;display:flex}.config-group__title{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--space-md);padding-bottom:var(--space-sm);border-bottom:1px solid var(--border);font-size:.85rem;font-weight:600}.config-group--stack{gap:var(--space-md);flex-direction:column;display:flex}.config-group__fields{gap:var(--space-md);grid-template-columns:repeat(3,1fr);display:grid}@media (width<=900px){.config-group__fields{grid-template-columns:repeat(2,1fr)}}@media (width<=560px){.config-group__fields{grid-template-columns:1fr}}.config-field{gap:var(--space-xs);flex-direction:column;display:flex}.config-field__label{color:var(--text-muted);font-size:.8rem;font-weight:500}.config-field--inline{align-items:center;gap:var(--space-sm);flex-direction:row}.config-textarea{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-card);color:var(--text);padding:var(--space-sm);resize:vertical;font-family:inherit;font-size:.85rem}.config-textarea:focus{border-color:var(--primary);outline:none}.config-textarea:disabled{opacity:.6}.config-actions{padding-top:var(--space-md);border-top:1px solid var(--border);justify-content:flex-end;display:flex}.config-actions--split{justify-content:space-between;gap:var(--space-sm);flex-wrap:wrap}.config-actions__triggers{gap:var(--space-sm);flex-wrap:wrap;display:flex}.config-readonly-note{color:var(--text-muted);text-align:center;padding:var(--space-md);background:var(--surface);border-radius:var(--radius-card);border:1px dashed var(--border);font-size:.8rem}.config-page{gap:var(--space-xl);flex-direction:column;display:flex}.config-snapshot-section{gap:var(--space-md);flex-direction:column;display:flex}.config-snapshot-intro{color:var(--text-muted);margin-bottom:var(--space-lg);font-size:.85rem;line-height:1.6}.config-period-badge{color:var(--success);border-radius:var(--radius-badge);background:#27ae601f;border:1px solid #27ae6040;padding:3px 10px;font-size:.75rem;font-weight:600}.config-group__fields--narrow{grid-template-columns:240px}.config-alert--with-action{align-items:center;gap:var(--space-sm);flex-wrap:wrap;display:flex}.config-alert__link{border-radius:var(--radius-btn);color:inherit;cursor:pointer;opacity:.85;transition:opacity var(--transition);background:0 0;border:1px solid;align-items:center;gap:5px;margin-left:auto;padding:3px 10px;font-size:.78rem;font-weight:600;display:inline-flex}.config-alert__link:hover{opacity:1}.projects{gap:var(--space-xl);flex-direction:column;display:flex}.projects__header{justify-content:space-between;align-items:flex-start;gap:var(--space-md);flex-wrap:wrap;display:flex}.projects__header h1{margin-bottom:var(--space-xs);font-size:1.75rem;font-weight:700}.projects__error{color:var(--danger);border-radius:var(--radius-card);padding:var(--space-md) var(--space-lg);background:#e74c3c1a;border:1px solid #e74c3c4d;font-size:.875rem}.projects__loading{align-items:center;gap:var(--space-md);padding:var(--space-2xl);color:var(--text-muted);flex-direction:column;display:flex}.projects__spinner{border:3px solid var(--border);border-top-color:var(--primary);border-radius:50%;width:36px;height:36px;animation:.8s linear infinite projects-spin}@keyframes projects-spin{to{transform:rotate(360deg)}}.projects__empty{align-items:center;gap:var(--space-md);padding:var(--space-2xl);text-align:center;color:var(--text-muted);flex-direction:column;display:flex}.projects__empty h2{font-size:1.1rem;font-weight:500}.projects__grid{gap:var(--space-md);grid-template-columns:repeat(auto-fill,minmax(260px,1fr));display:grid}.projects__card{align-items:flex-start;gap:var(--space-md);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-card);padding:var(--space-lg);cursor:pointer;text-align:left;transition:var(--transition-card);color:var(--text);font-family:var(--font);display:flex}.projects__card:hover{background:var(--surface-hover);border-color:var(--primary);transform:translateY(-2px)}.projects__card-icon{color:var(--primary);flex-shrink:0}.projects__card-body{flex-direction:column;gap:2px;min-width:0;display:flex}.projects__card-name{font-size:1rem;font-weight:600}.projects__card-client{color:var(--text-muted);font-size:.78rem}.projects__form{gap:var(--space-md);grid-template-columns:repeat(3,1fr);align-items:start;display:grid}@media (width<=768px){.projects__form{grid-template-columns:1fr}}.projects__form-field{gap:var(--space-xs);flex-direction:column;display:flex}.projects__label{color:var(--text-muted);font-size:.8rem;font-weight:500}.projects__field-hint{font-size:var(--text-xs);color:var(--text-muted);line-height:var(--lh-normal)}.projects__form-actions{grid-column:1/-1;justify-content:flex-end;align-items:flex-end;display:flex}.overview{gap:var(--space-lg);flex-direction:column;display:flex}.overview__header{padding-bottom:var(--space-sm);border-bottom:1px solid var(--border-subtle);flex-direction:column;gap:2px;display:flex}.overview__title{font-size:var(--text-xl);font-weight:var(--fw-semibold);line-height:var(--lh-tight);color:var(--text)}.overview__subtitle{color:var(--text-muted);font-size:var(--text-xs)}.overview__badges{margin-top:var(--space-sm);flex-wrap:wrap;gap:6px;display:flex}.overview__badge{border-radius:var(--radius-badge);color:var(--primary);font-size:var(--text-xs);font-weight:var(--fw-medium);cursor:pointer;transition:background-color var(--transition), border-color var(--transition);background-color:#4a9eff14;border:1px solid #4a9eff38;align-items:center;gap:6px;padding:3px 10px;display:inline-flex}.overview__badge:hover{background-color:#4a9eff24;border-color:#4a9eff66}.overview__loading{align-items:center;gap:var(--space-md);padding:var(--space-2xl);color:var(--text-muted);flex-direction:column;display:flex}.overview__spinner{border:3px solid var(--border);border-top-color:var(--primary);border-radius:50%;width:32px;height:32px;animation:.8s linear infinite spin}.overview__error{color:var(--danger);padding:var(--space-xs) var(--space-md);font-size:var(--text-sm);background:#e74c3c14;border:1px solid #e74c3c40;border-radius:8px}.overview__empty{align-items:center;gap:var(--space-sm);padding:var(--space-2xl);text-align:center;color:var(--text-muted);flex-direction:column;display:flex}.overview__empty h2{font-size:var(--text-lg);font-weight:var(--fw-medium);color:var(--text)}.overview__skeleton-panel,.overview__skeleton-metric{border:1px solid var(--border-subtle);border-radius:var(--radius-card);background-color:var(--surface)}.overview__skeleton-panel{gap:var(--space-md);min-height:160px;padding:var(--space-md);flex-direction:column;display:flex}.overview__skeleton-metric{align-items:center;gap:var(--space-md);min-height:96px;padding:var(--space-md);display:flex}.overview__skeleton-metric-body{gap:var(--space-sm);flex-direction:column;flex:1;display:flex}.overview__section{gap:var(--space-sm);flex-direction:column;display:flex}.overview__section-title{font-size:.7rem;font-weight:var(--fw-semibold);color:var(--text-muted);text-transform:uppercase;letter-spacing:.1em;margin-bottom:4px;padding-bottom:4px}.overview__phase-block{gap:var(--space-sm);flex-direction:column;display:flex}.overview__phase-block+.overview__phase-block{margin-top:var(--space-lg)}.overview__block-title{font-size:var(--text-sm);font-weight:var(--fw-semibold);color:var(--text);margin-bottom:var(--space-sm)}.overview__grid-2{gap:var(--space-sm);grid-template-columns:repeat(2,1fr);display:grid}.overview__grid-3{gap:var(--space-sm);grid-template-columns:repeat(3,1fr);display:grid}@media (width<=900px){.overview__grid-2,.overview__grid-3{grid-template-columns:1fr}}.overview__chart-title{font-size:var(--text-sm);font-weight:var(--fw-semibold);margin-bottom:var(--space-sm);color:var(--text);letter-spacing:.01em}.overview__chart-wrap{height:250px}.overview__info-alert{align-items:center;gap:var(--space-sm);padding:var(--space-xs) var(--space-md);color:var(--info);font-size:var(--text-xs);background:#3498db14;border:1px solid #3498db33;border-radius:8px;display:flex}.overview__phase-total{justify-content:flex-end;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);background:var(--surface);border-radius:var(--radius-card);border:1px solid var(--border-subtle);font-size:var(--text-sm);color:var(--text-muted);display:flex}.overview__phase-total strong{color:var(--warning);font-size:var(--text-base);font-variant-numeric:tabular-nums}.overview__clients-grid{gap:var(--space-sm);grid-template-columns:repeat(auto-fill,minmax(280px,1fr));display:grid}.overview__client-card{align-items:center;gap:var(--space-md);padding:var(--space-md);background-color:var(--surface);border:1px solid var(--border-subtle);border-radius:var(--radius-card);color:var(--text);cursor:pointer;transition:background-color var(--transition), border-color var(--transition), transform var(--transition);text-align:left;display:flex}.overview__client-card:hover{background-color:var(--surface-hover);border-color:var(--border-strong);transform:translateY(-1px)}.overview__client-icon{color:var(--primary);flex-shrink:0}.overview__client-body{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.overview__client-name{font-size:var(--text-md);font-weight:var(--fw-semibold)}.overview__client-status{font-size:var(--text-xs);color:var(--text-muted)}.overview__client-arrow{color:var(--text-muted);flex-shrink:0}.overview__table-wrap{overflow-x:auto}.overview__table{border-collapse:collapse;width:100%;font-size:var(--text-sm)}.overview__table th,.overview__table td{padding:8px var(--space-md);text-align:left;border-bottom:1px solid var(--border-subtle)}.overview__table th{color:var(--text-muted);text-transform:uppercase;font-size:.7rem;font-weight:var(--fw-semibold);letter-spacing:.08em}.overview__table tbody tr:hover{background-color:var(--bg-hover)}.overview__table tbody tr:last-child td{border-bottom:none}.overview__table--right{text-align:right;font-variant-numeric:tabular-nums}.overview__table-link{color:var(--primary);cursor:pointer;font-size:var(--text-xs);font-weight:var(--fw-medium);background:0 0;border:none;align-items:center;gap:4px;padding:0;display:inline-flex}.overview__table-link:hover{text-decoration:underline}.evolution{gap:var(--space-xl);flex-direction:column;display:flex}.evolution__header{gap:var(--space-xs);flex-direction:column;display:flex}.evolution__title{font-size:1.75rem;font-weight:700}.evolution__subtitle{color:var(--text-muted);font-size:.95rem}.evolution__empty{align-items:center;gap:var(--space-md);padding:var(--space-2xl);text-align:center;color:var(--text-muted);flex-direction:column;max-width:520px;margin:0 auto;display:flex}.evolution__empty svg{color:var(--primary)}.evolution__empty h2{color:var(--text);font-size:1.25rem;font-weight:600}.evolution__empty p{color:var(--text-muted);line-height:1.6}.evolution__toolbar{align-items:center;gap:var(--space-md);flex-wrap:wrap;display:flex}.evolution__range{align-items:center;gap:var(--space-sm);display:flex}.evolution__range-field{align-items:center;gap:var(--space-xs);display:flex}.evolution__range-label{font-size:var(--text-sm);color:var(--text-muted)}.evolution__range-input{background:var(--surface);border:1px solid var(--border-subtle);border-radius:var(--radius-input,8px);color:var(--text);padding:var(--space-xs) var(--space-sm);font-size:var(--text-sm);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}.evolution__range-input:focus{border-color:var(--primary);outline:none}.evolution__label{color:var(--text-muted);font-size:.875rem;font-weight:500}.evolution__select{background-color:var(--input-bg);color:var(--text);border:1px solid var(--input-border);border-radius:var(--radius-input);cursor:pointer;min-width:240px;transition:border-color var(--transition);padding:.5rem .85rem;font-size:.9rem}.evolution__select:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--input-focus-ring);outline:none}.evolution__select:disabled{opacity:.6;cursor:not-allowed}.evolution__loading{align-items:center;gap:var(--space-md);padding:var(--space-2xl);color:var(--text-muted);flex-direction:column;display:flex}.evolution__spinner{border:3px solid var(--border);border-top-color:var(--primary);border-radius:50%;width:36px;height:36px;animation:.8s linear infinite spin}.evolution__error{color:var(--danger);border-radius:var(--radius-card);padding:var(--space-md) var(--space-lg);background:#e74c3c1a;border:1px solid #e74c3c4d;font-size:.875rem}.evolution__info-alert{align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-card);color:var(--warning);background:#f39c1214;border:1px solid #f39c1240;font-size:.875rem;display:flex}.evolution__grid{gap:var(--space-md);grid-template-columns:repeat(2,1fr);display:grid}@media (width<=900px){.evolution__grid{grid-template-columns:1fr}}.evolution__chart-title{margin-bottom:var(--space-md);font-size:1rem;font-weight:600}.evolution__chart-wrap{height:260px}.reference{gap:var(--space-xl);flex-direction:column;display:flex}.reference__header{gap:var(--space-xs);flex-direction:column;display:flex}.reference__title{align-items:center;gap:var(--space-sm);font-size:1.75rem;font-weight:700;display:flex}.reference__subtitle{color:var(--text-muted);max-width:720px;font-size:.95rem;line-height:1.6}.reference__group{gap:var(--space-md);flex-direction:column;display:flex}.reference__group-title{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;padding-bottom:var(--space-sm);border-bottom:1px solid var(--border);font-size:1rem;font-weight:600}.reference__grid{gap:var(--space-md);grid-template-columns:repeat(auto-fill,minmax(360px,1fr));display:grid}.reference__metric-name{color:var(--text);margin-bottom:var(--space-sm);font-size:1rem;font-weight:600}.reference__formula{background-color:var(--input-bg);border:1px solid var(--border);border-radius:var(--radius-input);padding:var(--space-sm) var(--space-md);color:var(--primary);margin-bottom:var(--space-sm);white-space:pre-wrap;word-break:break-word;font-family:SF Mono,Menlo,Monaco,Consolas,Courier New,monospace;font-size:.82rem;display:block}.reference__description{color:var(--text-muted);font-size:.875rem;line-height:1.6}.qh-bulk-bar{z-index:150;align-items:center;gap:var(--space-sm);background-color:var(--bg-drawer);border-radius:var(--radius-card);border:1px solid #ffffff1a;padding:8px 12px;animation:.18s ease-out qh-bulk-bar-in;display:inline-flex;position:fixed;bottom:24px;left:50%;transform:translate(-50%);box-shadow:0 16px 32px #00000080,0 2px 6px #0000004d}@keyframes qh-bulk-bar-in{0%{opacity:0;transform:translate(-50%,12px)}to{opacity:1;transform:translate(-50%)}}.qh-bulk-bar__count{font-size:var(--text-sm);color:var(--text);font-variant-numeric:tabular-nums;padding:0 6px}.qh-bulk-bar__count strong{color:var(--primary);font-weight:var(--fw-semibold)}.qh-bulk-bar__divider{background-color:var(--border-subtle);width:1px;height:22px}.qh-bulk-bar__btn{font-size:var(--text-xs);font-weight:var(--fw-semibold);font-family:var(--font);cursor:pointer;transition:background-color var(--transition), border-color var(--transition), color var(--transition);border:1px solid #0000;border-radius:6px;align-items:center;gap:6px;padding:6px 12px;display:inline-flex}.qh-bulk-bar__btn:disabled{opacity:var(--opacity-disabled);cursor:not-allowed}.qh-bulk-bar__btn--primary{background-color:var(--primary);border-color:var(--primary);color:#fff}.qh-bulk-bar__btn--primary:hover:not(:disabled){background-color:var(--primary-hover);border-color:var(--primary-hover)}.qh-bulk-bar__btn--danger{color:var(--danger);background-color:#0000;border-color:#e74c3c59}.qh-bulk-bar__btn--danger:hover:not(:disabled){border-color:var(--danger);background-color:#e74c3c1a}.qh-bulk-bar__clear{color:var(--text-muted);font-size:var(--text-xs);font-family:var(--font);cursor:pointer;transition:color var(--transition), background-color var(--transition), border-color var(--transition);background:0 0;border:1px solid #0000;border-radius:6px;align-items:center;gap:4px;padding:4px 10px;display:inline-flex}.qh-bulk-bar__clear:hover:not(:disabled){color:var(--text);background-color:var(--bg-hover);border-color:var(--border-subtle)}.qh-bulk-bar__clear:disabled{opacity:var(--opacity-disabled);cursor:not-allowed}@media (width<=700px){.qh-bulk-bar{flex-wrap:wrap;justify-content:center;bottom:12px;left:12px;right:12px;transform:none}@keyframes qh-bulk-bar-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}}.qh-md{color:var(--text);font-size:var(--text-sm);line-height:var(--lh-relaxed);word-break:break-word;white-space:normal}.qh-md>:first-child{margin-top:0}.qh-md>:last-child{margin-bottom:0}.qh-md p{margin:0 0 var(--space-sm)}.qh-md h1,.qh-md h2,.qh-md h3,.qh-md h4,.qh-md h5,.qh-md h6{margin:var(--space-md) 0 var(--space-sm);font-weight:var(--fw-semibold);line-height:var(--lh-tight);color:var(--text)}.qh-md h1{font-size:var(--text-lg)}.qh-md h2{font-size:var(--text-md)}.qh-md h3,.qh-md h4,.qh-md h5,.qh-md h6{font-size:var(--text-sm)}.qh-md strong{font-weight:var(--fw-semibold);color:var(--text)}.qh-md em{font-style:italic}.qh-md del{color:var(--text-muted)}.qh-md a{color:var(--primary);text-underline-offset:2px;text-decoration:underline}.qh-md a:hover{color:var(--primary-hover)}.qh-md ul,.qh-md ol{margin:0 0 var(--space-sm);padding-left:var(--space-lg)}.qh-md ul{list-style:outside}.qh-md ol{list-style:decimal}.qh-md ul ul{list-style:circle}.qh-md li{margin:var(--space-2xs) 0}.qh-md li>p{margin:0}.qh-md code{border:1px solid var(--border-subtle);background-color:#ffffff0f;border-radius:4px;padding:1px 5px;font-family:SF Mono,Menlo,Monaco,Consolas,monospace;font-size:.85em}.qh-md pre{margin:0 0 var(--space-sm);padding:var(--space-sm) var(--space-md);background-color:var(--input-bg);border:1px solid var(--border);border-radius:6px;overflow-x:auto}.qh-md pre code{font-size:var(--text-sm);background:0 0;border:none;padding:0}.qh-md blockquote{margin:0 0 var(--space-sm);padding:var(--space-2xs) var(--space-md);border-left:3px solid var(--border-strong);color:var(--text-muted)}.qh-md hr{border:none;border-top:1px solid var(--border);margin:var(--space-md) 0}.qh-md table{border-collapse:collapse;margin:0 0 var(--space-sm);font-size:var(--text-sm);display:block;overflow-x:auto}.qh-md th,.qh-md td{border:1px solid var(--border);padding:var(--space-xs) var(--space-sm);text-align:left}.qh-md th{background-color:var(--surface);font-weight:var(--fw-semibold)}.qh-md input[type=checkbox]{margin-right:var(--space-xs);vertical-align:middle}.qh-md--steps>ol{counter-reset:qh-step;flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.qh-md--steps>ol>li{counter-increment:qh-step;padding:8px var(--space-sm) 8px 34px;border-radius:4px;margin:0;position:relative}.qh-md--steps>ol>li+li{border-top:1px solid #ffffff0a}.qh-md--steps>ol>li:before{content:counter(qh-step);left:var(--space-sm);min-width:22px;height:22px;font-family:SF Mono,Menlo,Monaco,Consolas,monospace;font-size:.7rem;font-weight:var(--fw-semibold);color:var(--text-tertiary);background-color:#ffffff0d;border:1px solid #ffffff14;border-radius:4px;justify-content:center;align-items:center;padding:0 6px;line-height:1;display:inline-flex;position:absolute;top:8px}.qh-md--steps>ol>li ul,.qh-md--steps>ol>li ol{margin:var(--space-2xs) 0 0;padding:0;list-style:none}.qh-md--steps>ol>li ul li,.qh-md--steps>ol>li ol li{margin:var(--space-2xs) 0 0;padding-left:var(--space-sm);color:var(--text-muted);font-size:var(--text-xs);line-height:var(--lh-relaxed);border-left:2px solid #ffffff14}.qh-md-editor{flex-direction:column;display:flex}.qh-md-editor__toolbar{gap:var(--space-2xs);padding:var(--space-2xs);background-color:var(--surface);border:1px solid var(--input-border);border-bottom:none;border-radius:6px 6px 0 0;display:flex}.qh-md-editor__tool{width:var(--row-xs);height:var(--row-xs);color:var(--text-muted);cursor:pointer;transition:background-color var(--transition), color var(--transition);background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;display:inline-flex}.qh-md-editor__tool:hover:not(:disabled){background-color:var(--bg-hover);color:var(--text)}.qh-md-editor__tool:disabled{opacity:var(--opacity-disabled);cursor:not-allowed}.qh-md-editor__textarea{background-color:var(--input-bg);width:100%;color:var(--text);border:1px solid var(--input-border);padding:var(--space-sm) var(--space-md);font-size:var(--text-sm);font-family:var(--font);resize:vertical;min-height:60px;line-height:var(--lh-normal);transition:border-color var(--transition), box-shadow var(--transition);border-radius:0 0 6px 6px}.qh-md-editor__textarea:focus{border-color:var(--primary);box-shadow:0 0 0 2px var(--input-focus-ring);outline:none}.qh-md-editor__textarea::placeholder{color:var(--text-muted)}.qh-md-editor__textarea:disabled{opacity:var(--opacity-disabled);cursor:not-allowed}.qh-md-editor__hint{font-size:var(--text-xs);color:var(--text-muted);line-height:var(--lh-normal);margin:6px 0 0}.qh-md-editor__hint code{background-color:#ffffff0d;border-radius:3px;padding:0 3px;font-family:SF Mono,Menlo,Monaco,Consolas,monospace;font-size:.9em}.upload-modal-overlay{padding:var(--space-md);z-index:200;background:#0000008c;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.upload-modal{background:var(--bg-drawer);border:1px solid #ffffff14;border-radius:10px;flex-direction:column;width:100%;max-width:680px;max-height:90vh;display:flex;overflow:hidden;box-shadow:0 24px 48px #00000073}.upload-modal__header{justify-content:space-between;align-items:flex-start;gap:var(--space-md);padding:var(--space-lg);border-bottom:1px solid #ffffff14;display:flex}.upload-modal__title{font-size:var(--text-lg);font-weight:var(--fw-semibold);color:var(--text);line-height:var(--lh-tight)}.upload-modal__subtitle{font-size:var(--text-xs);color:var(--text-muted);margin-top:2px}.upload-modal__subtitle code{background-color:#ffffff0a;border-radius:3px;padding:1px 4px;font-family:SF Mono,Menlo,Monaco,Consolas,monospace}.upload-modal__body{padding:var(--space-lg);gap:var(--space-lg);flex-direction:column;flex:1;display:flex;overflow-y:auto}.upload-modal__drop{align-items:center;gap:var(--space-xs);padding:var(--space-2xl) var(--space-md);border:2px dashed var(--border-strong);border-radius:var(--radius-card);background-color:var(--input-bg);cursor:pointer;color:var(--text-muted);text-align:center;transition:border-color var(--transition), background-color var(--transition);flex-direction:column;display:flex}.upload-modal__drop:hover,.upload-modal__drop--active{border-color:var(--primary);background-color:var(--bg-selected);color:var(--text)}.upload-modal__drop-title{font-size:var(--text-sm);color:var(--text);font-weight:var(--fw-medium)}.upload-modal__drop-hint{font-size:var(--text-xs);color:var(--text-muted);max-width:50ch}.upload-modal__file-list-header{justify-content:space-between;align-items:center;gap:var(--space-sm);flex-wrap:wrap;display:flex}.upload-modal__file-list-title{text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted);font-size:.7rem;font-weight:var(--fw-semibold)}.upload-modal__file-list-meta{align-items:center;gap:var(--space-sm);font-size:var(--text-xs);color:var(--text-muted);display:flex}.upload-modal__counter{font-variant-numeric:tabular-nums;font-family:SF Mono,Menlo,Monaco,Consolas,monospace}.upload-modal__counter-divider{color:var(--border-strong)}.upload-modal__warning{padding:var(--space-xs) var(--space-md);color:var(--warning);font-size:var(--text-sm);background:#f39c1214;border:1px solid #f39c1240;border-radius:6px}.upload-modal__file-list{border:1px solid var(--border-subtle);border-radius:var(--radius-input);background-color:var(--input-bg);flex-direction:column;max-height:240px;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.upload-modal__file-row{align-items:center;gap:var(--space-sm);border-bottom:1px solid var(--border-subtle);font-size:var(--text-xs);transition:background-color var(--transition);padding:6px 10px;display:flex}.upload-modal__file-row:last-child{border-bottom:none}.upload-modal__file-row:hover{background-color:var(--bg-hover)}.upload-modal__file-row--report{background-color:#4a9eff0f}.upload-modal__file-row--report:hover{background-color:#4a9eff1a}.upload-modal__file-radio{color:var(--text-muted);cursor:pointer;flex-shrink:0;align-items:center;gap:4px;display:inline-flex}.upload-modal__file-radio input[type=radio]{margin:0}.upload-modal__file-radio-icon{color:var(--text-muted)}.upload-modal__file-radio-icon--active{color:var(--primary)}.upload-modal__file-name{color:var(--text);white-space:nowrap;text-overflow:ellipsis;flex:1;font-family:SF Mono,Menlo,Monaco,Consolas,monospace;overflow:hidden}.upload-modal__file-badge{border-radius:var(--radius-badge);background-color:var(--bg-selected-strong);color:var(--primary);font-size:.65rem;font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:.04em;flex-shrink:0;padding:1px 6px}.upload-modal__file-size{color:var(--text-muted);font-variant-numeric:tabular-nums;white-space:nowrap;flex-shrink:0}.upload-modal__file-remove{color:var(--text-muted);cursor:pointer;border-radius:var(--radius-btn);width:22px;height:22px;transition:background-color var(--transition), color var(--transition);background:0 0;border:none;justify-content:center;align-items:center;display:inline-flex}.upload-modal__file-remove:hover:not(:disabled){color:var(--danger);background-color:#e74c3c1f}.upload-modal__file-remove:disabled{opacity:var(--opacity-disabled);cursor:not-allowed}.upload-modal__fields{gap:var(--space-sm) var(--space-md);grid-template-columns:1fr 1fr;display:grid}.upload-modal__field{gap:var(--space-xs);flex-direction:column;display:flex}.upload-modal__label{font-size:var(--text-xs);color:var(--text-muted);font-weight:var(--fw-medium)}.upload-modal__actions{justify-content:flex-end;gap:var(--space-sm);padding:var(--space-md) var(--space-lg);background-color:#0000001f;border-top:1px solid #ffffff14;display:flex}@media (width<=600px){.upload-modal__fields{grid-template-columns:1fr}}.automation-runs{gap:var(--space-md);flex-direction:column;display:flex}.automation-runs__top{justify-content:space-between;align-items:flex-start;gap:var(--space-md);padding-bottom:var(--space-sm);border-bottom:1px solid var(--border-subtle);display:flex}.automation-runs__top-titles{flex-direction:column;gap:2px;min-width:0;display:flex}.automation-runs__title{align-items:center;gap:var(--space-sm);font-size:var(--text-xl);font-weight:var(--fw-semibold);line-height:var(--lh-tight);color:var(--text);display:flex}.automation-runs__subtitle{font-size:var(--text-xs);color:var(--text-muted);max-width:60ch}.automation-runs__toolbar{align-items:center;gap:var(--space-sm);border:1px solid var(--border-subtle);border-radius:calc(var(--radius-btn) + 4px);background-color:#ffffff05;padding:4px;display:inline-flex}.automation-runs__toolbar>.btn{border-radius:var(--radius-btn);height:40px;font-size:var(--text-sm);font-weight:var(--fw-semibold);padding:0 1rem}.automation-runs__toolbar-divider{background-color:var(--border-subtle);width:1px;height:22px;margin:0}.automation-runs__chips{gap:var(--space-sm);flex-wrap:wrap;display:flex}.automation-runs__chip{border:1px solid var(--border-subtle);border-radius:var(--radius-badge);font-size:var(--text-xs);background-color:#ffffff08;align-items:baseline;gap:6px;padding:4px 12px;display:inline-flex}.automation-runs__chip-value{font-size:var(--text-md);font-weight:var(--fw-semibold);color:var(--text);font-variant-numeric:tabular-nums}.automation-runs__chip-label{color:var(--text-muted);letter-spacing:.02em}.automation-runs__chip--success .automation-runs__chip-value{color:var(--success)}.automation-runs__chip--danger .automation-runs__chip-value{color:var(--danger)}.automation-runs__chip--warning .automation-runs__chip-value{color:var(--warning)}.automation-runs__loading{padding:var(--space-xl);justify-content:center;display:flex}.automation-runs__empty{align-items:center;gap:var(--space-sm);padding:var(--space-2xl) var(--space-md);text-align:center;color:var(--text-muted);flex-direction:column;display:flex}.automation-runs__empty h2{font-size:var(--text-lg);font-weight:var(--fw-medium);color:var(--text)}.automation-runs__empty p{font-size:var(--text-sm);max-width:360px}.automation-runs__table-wrap{border:1px solid var(--border-subtle);border-radius:8px;overflow-x:auto}.automation-runs__table{border-collapse:collapse;width:100%;font-size:var(--text-sm)}.automation-runs__table thead{background-color:#ffffff05}.automation-runs__table th{text-align:left;text-transform:uppercase;letter-spacing:.08em;font-size:.7rem;font-weight:var(--fw-semibold);color:var(--text-muted);padding:10px var(--space-md);border-bottom:1px solid var(--border-subtle);white-space:nowrap}.automation-runs__th-num{text-align:right;width:90px}.automation-runs__row{cursor:pointer;transition:background-color var(--transition)}.automation-runs__row:hover{background-color:var(--bg-hover)}.automation-runs__row--skeleton{cursor:default;pointer-events:none}.automation-runs__row--skeleton:hover{background-color:#0000}.automation-runs__row td{padding:10px var(--space-md);border-bottom:1px solid var(--border-subtle);color:var(--text);vertical-align:middle}.automation-runs__table tbody tr:last-child td{border-bottom:none}.automation-runs__td-num{text-align:right;font-variant-numeric:tabular-nums;color:var(--text-muted)}.automation-runs__td-num .skeleton{margin-left:auto}.automation-runs__td-num--success{color:var(--success)}.automation-runs__td-num--danger{color:var(--danger)}.automation-runs__td-num--warning{color:var(--warning)}.automation-runs__td-date{font-size:var(--text-xs);color:var(--text-muted);white-space:nowrap}.automation-runs__td-action{text-align:right;white-space:nowrap}.automation-runs__open-link{color:var(--primary);font-size:var(--text-xs);font-weight:var(--fw-medium);opacity:.7;transition:opacity var(--transition);align-items:center;gap:4px;display:inline-flex}.automation-runs__row:hover .automation-runs__open-link{opacity:1}.automation-runs__identity{flex-direction:column;gap:2px;min-width:0;display:flex}.automation-runs__identity-line{color:var(--text);font-weight:var(--fw-medium);align-items:center;gap:6px;display:inline-flex}.automation-runs__identity-line--meta{font-size:var(--text-xs);color:var(--text-muted);font-weight:var(--fw-regular)}.automation-runs__identity-branch{font-weight:var(--fw-medium)}.automation-runs__identity-sep{color:var(--text-muted)}.automation-runs__identity-sha{font-family:SF Mono,Menlo,Monaco,Consolas,monospace;font-size:var(--text-xs);color:var(--text-muted)}.automation-runs__identity-trigger{color:var(--text-muted)}.automation-runs__identity-link{color:var(--primary);align-items:center;gap:3px;text-decoration:none;display:inline-flex}.automation-runs__identity-link:hover{text-decoration:underline}.automation-runs__pill{border-radius:var(--radius-badge);font-size:var(--text-xs);font-weight:var(--fw-medium);white-space:nowrap;align-items:center;gap:6px;padding:2px 10px;display:inline-flex}.automation-runs__pill-dot{border-radius:50%;width:6px;height:6px;display:inline-block}.automation-runs__pill--ready{color:var(--success);background-color:#27ae601a;border:1px solid #27ae6040}.automation-runs__pill--ready .automation-runs__pill-dot{background-color:var(--success)}.automation-runs__pill--processing{color:var(--info);background-color:#3498db1a;border:1px solid #3498db40}.automation-runs__pill--processing .automation-runs__pill-dot{background-color:var(--info)}.automation-runs__pill--failed{color:var(--danger);background-color:#e74c3c1a;border:1px solid #e74c3c40}.automation-runs__pill--failed .automation-runs__pill-dot{background-color:var(--danger)}.automation-runs__pill--flaky{color:var(--warning);background-color:#f39c121a;border:1px solid #f39c1240}.automation-runs__pill--flaky .automation-runs__pill-dot{background-color:var(--warning)}.automation-runs__pill--idle{color:var(--text-muted);background-color:#ffffff0a;border:1px solid #ffffff14}.automation-runs__pill--idle .automation-runs__pill-dot{background-color:var(--text-muted)}.automation-runs__pill-spin{animation:1s linear infinite automation-runs-spin}@keyframes automation-runs-spin{to{transform:rotate(360deg)}}@media (width<=768px){.automation-runs__top{flex-direction:column;align-items:stretch}.automation-runs__td-date,.automation-runs__th-num:nth-of-type(5),.automation-runs__td-num:nth-of-type(5){display:none}}.result-panel{top:var(--navbar-height);background-color:var(--bg-drawer);z-index:80;border-left:1px solid #ffffff14;flex-direction:column;width:480px;animation:.18s ease-out result-panel-slide;display:flex;position:fixed;bottom:0;right:0;box-shadow:-16px 0 32px #00000052}@keyframes result-panel-slide{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}.result-panel__header{justify-content:space-between;align-items:center;gap:var(--space-sm);padding:var(--space-md) var(--space-lg);border-bottom:1px solid #ffffff14;flex-shrink:0;display:flex}.result-panel__header-meta{align-items:center;gap:var(--space-sm);flex:1;min-width:0;display:flex}.result-panel__status{border-radius:var(--radius-badge);font-size:var(--text-xs);font-weight:var(--fw-semibold);white-space:nowrap;flex-shrink:0;align-items:center;gap:4px;padding:2px 8px;display:inline-flex}.result-panel__status--success{color:var(--success);background-color:#27ae6024}.result-panel__status--danger{color:var(--danger);background-color:#e74c3c24}.result-panel__status--warning{color:var(--warning);background-color:#f39c1224}.result-panel__status--neutral{color:var(--text-muted);background-color:#a0a0a01f}.result-panel__code{color:var(--text-tertiary);font-family:SF Mono,Menlo,Monaco,Consolas,monospace;font-size:var(--text-xs);letter-spacing:.02em;background-color:#ffffff0a;border:1px solid #ffffff14;border-radius:4px;flex-shrink:0;padding:2px 7px}.result-panel__path{font-family:SF Mono,Menlo,Monaco,Consolas,monospace;font-size:var(--text-xs);color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.result-panel__header-actions{flex-shrink:0;align-items:center;gap:2px;display:flex}.result-panel__counter{font-size:var(--text-xs);color:var(--text-muted);font-variant-numeric:tabular-nums;padding:0 4px}.result-panel__title-row{padding:var(--space-md) var(--space-lg) 0;gap:var(--space-xs);flex-direction:column;flex-shrink:0;display:flex}.result-panel__title{font-size:var(--text-lg);font-weight:var(--fw-semibold);color:var(--text);line-height:var(--lh-tight);word-break:break-word}.result-panel__title-meta{align-items:center;gap:var(--space-sm);font-size:var(--text-xs);color:var(--text-muted);flex-wrap:wrap;display:flex}.result-panel__duration{font-variant-numeric:tabular-nums;align-items:center;gap:3px;display:inline-flex}.result-panel__retry,.result-panel__browser{color:var(--text-muted)}.result-panel__tags{flex-wrap:wrap;gap:4px;display:flex}.result-panel__tag{border-radius:var(--radius-badge);border:1px solid var(--border-subtle);font-size:var(--text-xs);color:var(--text-muted);background-color:#ffffff0a;padding:2px 8px;font-family:SF Mono,Menlo,Monaco,Consolas,monospace}.result-panel__body{padding:var(--space-md) var(--space-lg) var(--space-xl);gap:var(--space-lg);flex-direction:column;flex:1;display:flex;overflow-y:auto}.result-panel__body::-webkit-scrollbar{width:8px}.result-panel__body::-webkit-scrollbar-track{background:0 0}.result-panel__body::-webkit-scrollbar-thumb{background-color:#ffffff14;border-radius:4px}.result-panel__body::-webkit-scrollbar-thumb:hover{background-color:#ffffff29}.result-panel__section{gap:var(--space-sm);flex-direction:column;display:flex}.result-panel__section-label{text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted);font-size:.7rem;font-weight:var(--fw-semibold);align-items:center;gap:6px;display:flex}.result-panel__section-actions{text-transform:none;letter-spacing:normal;align-items:center;gap:4px;margin-left:auto;display:inline-flex}.result-panel__inline-btn{border:1px solid var(--border-subtle);color:var(--text-muted);border-radius:var(--radius-badge);font-size:var(--text-xs);font-weight:var(--fw-medium);cursor:pointer;font-family:var(--font);transition:background-color var(--transition), color var(--transition);background:0 0;align-items:center;gap:4px;padding:2px 8px;display:inline-flex}.result-panel__inline-btn:hover:not(:disabled){background-color:var(--bg-hover);color:var(--text)}.result-panel__inline-btn:disabled{opacity:var(--opacity-disabled);cursor:not-allowed}.result-panel__no-error{font-size:var(--text-sm);color:var(--text-muted)}.result-panel__error-message{padding:var(--space-sm) var(--space-md);border-left:3px solid var(--danger);border-radius:0 var(--radius-input) var(--radius-input) 0;color:var(--text);font-size:var(--text-sm);word-break:break-word;white-space:pre-wrap;background-color:#e74c3c14}.result-panel__snippet,.result-panel__stack{padding:var(--space-sm) var(--space-md);background-color:var(--input-bg);border:1px solid var(--border-subtle);border-radius:var(--radius-input);color:var(--text);font-family:SF Mono,Menlo,Monaco,Consolas,monospace;font-size:var(--text-xs);line-height:var(--lh-normal);white-space:pre-wrap;max-height:320px;margin:0;overflow-x:auto}.result-panel__qh-card{align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);background-color:var(--input-bg);border:1px solid var(--border-subtle);border-radius:var(--radius-input);display:flex}.result-panel__qh-code{font-family:SF Mono,Menlo,Monaco,Consolas,monospace;font-size:var(--text-xs);font-weight:var(--fw-semibold);color:var(--primary);background-color:var(--bg-selected-strong);border-radius:var(--radius-badge);flex-shrink:0;padding:2px 8px}.result-panel__qh-title{font-size:var(--text-sm);color:var(--text);font-weight:var(--fw-medium);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.result-panel__qh-source{font-size:var(--text-xs);color:var(--text-muted)}.result-panel__qh-source code,.result-panel__qh-empty-hint code{background-color:#ffffff0a;border-radius:3px;padding:1px 4px;font-family:SF Mono,Menlo,Monaco,Consolas,monospace;font-size:.95em}.result-panel__qh-empty-hint{font-size:var(--text-xs);color:var(--text-muted);line-height:var(--lh-normal)}.result-panel__qh-input{background-color:var(--input-bg);border:1px solid var(--input-border);border-radius:var(--radius-input);width:100%;color:var(--text);font-size:var(--text-sm);padding:8px 12px}.result-panel__qh-input:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--input-focus-ring);outline:none}.result-panel__qh-empty{font-size:var(--text-xs);color:var(--text-muted);padding:var(--space-sm)}.result-panel__qh-results{border:1px solid var(--border-subtle);border-radius:var(--radius-input);background-color:var(--input-bg);max-height:240px;margin:0;padding:0;list-style:none;overflow-y:auto}.result-panel__qh-result{align-items:center;gap:var(--space-sm);border:none;border-bottom:1px solid var(--border-subtle);text-align:left;cursor:pointer;width:100%;transition:background-color var(--transition);background:0 0;padding:8px 12px;display:flex}.result-panel__qh-result:last-child{border-bottom:none}.result-panel__qh-result:hover:not(:disabled){background-color:var(--bg-hover)}.result-panel__qh-result-code{border-radius:var(--radius-badge);background-color:var(--bg-selected);color:var(--primary);font-family:SF Mono,Menlo,Monaco,Consolas,monospace;font-size:var(--text-xs);font-weight:var(--fw-semibold);flex-shrink:0;padding:2px 6px}.result-panel__qh-result-title{font-size:var(--text-sm);color:var(--text);text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.result-panel__qh-result-loading{align-items:center;gap:var(--space-xs);color:var(--text-muted);font-size:var(--text-sm);display:inline-flex}@media (width<=1080px){.result-panel{width:100%;box-shadow:none}}.result-panel__artifacts{gap:var(--space-sm);flex-direction:column;display:flex}.result-panel__artifact{gap:var(--space-xs);padding:var(--space-sm);background-color:var(--input-bg);border:1px solid var(--border-subtle);border-radius:var(--radius-input);flex-direction:column;display:flex}.result-panel__artifact-head{align-items:center;gap:var(--space-sm);display:flex}.result-panel__artifact-name{min-width:0;color:var(--text);font-size:var(--text-xs);text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.result-panel__artifact-meta{color:var(--text-muted);font-size:var(--text-xs);white-space:nowrap}.result-panel__artifact-media{object-fit:contain;background-color:var(--surface);border:1px solid var(--border-subtle);border-radius:var(--radius-input);width:100%;max-height:320px}.result-panel__artifact-loading{padding:var(--space-md);justify-content:center;display:flex}.result-panel__artifact-error{color:var(--danger);font-size:var(--text-xs)}.automation-detail{gap:var(--space-md);transition:padding-right var(--transition);min-height:calc(100vh - var(--navbar-height) - var(--space-lg) * 2);flex-direction:column;padding-right:0;display:flex}.automation-detail--with-panel{padding-right:480px}.automation-detail__loading,.automation-detail__empty{justify-content:center;align-items:center;gap:var(--space-md);padding:var(--space-2xl);color:var(--text-muted);flex-direction:column;display:flex}.automation-detail__top{justify-content:space-between;align-items:center;gap:var(--space-md);padding-bottom:var(--space-sm);border-bottom:1px solid var(--border-subtle);display:flex}.automation-detail__top-left{align-items:center;gap:var(--space-sm);flex:1;min-width:0;display:flex}.automation-detail__top-titles{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.automation-detail__title{font-size:var(--text-xl);font-weight:var(--fw-semibold);line-height:var(--lh-tight);color:var(--text);text-overflow:ellipsis;white-space:nowrap;flex-wrap:wrap;align-items:center;gap:6px;display:flex;overflow:hidden}.automation-detail__title-sep{color:var(--text-muted);font-weight:var(--fw-regular);margin:0 2px}.automation-detail__title-sha{font-family:SF Mono,Menlo,Monaco,Consolas,monospace;font-size:var(--text-sm);color:var(--text-muted)}.automation-detail__top-meta{font-size:var(--text-xs);color:var(--text-muted)}.automation-detail__top-right{align-items:center;gap:var(--space-sm);display:flex}.automation-detail__status-tag{border-radius:var(--radius-badge);font-size:var(--text-xs);font-weight:var(--fw-semibold);white-space:nowrap;align-items:center;padding:2px 10px;display:inline-flex}.automation-detail__status-tag--done{color:var(--success);background-color:#27ae6024}.automation-detail__status-tag--danger{color:var(--danger);background-color:#e74c3c24}.automation-detail__status-tag--warning{color:var(--warning);background-color:#f39c1224}.automation-detail__status-tag--idle{color:var(--text-muted);background-color:#ffffff0f}.automation-detail__chips{gap:var(--space-sm);flex-wrap:wrap;display:flex}.automation-detail__chip{border:1px solid var(--border-subtle);border-radius:var(--radius-badge);font-size:var(--text-xs);background-color:#ffffff08;align-items:baseline;gap:6px;padding:4px 12px;display:inline-flex}.automation-detail__chip--filter{cursor:pointer;transition:border-color var(--transition), background-color var(--transition);font-family:inherit}.automation-detail__chip--filter:focus-visible{border-color:var(--primary);box-shadow:0 0 0 2px var(--input-focus-ring);outline:none}.automation-detail__chip--filter:disabled{opacity:.5;cursor:default}.automation-detail__chip--active{border-color:var(--primary);background-color:#ffffff12}.automation-detail__chip--active .automation-detail__chip-label{color:var(--text)}.automation-detail__tree-empty-action{font:inherit;color:var(--primary);cursor:pointer;background:0 0;border:none;padding:0;text-decoration:underline}.automation-detail__chip-value{font-size:var(--text-md);font-weight:var(--fw-semibold);color:var(--text);font-variant-numeric:tabular-nums}.automation-detail__chip-label{color:var(--text-muted);letter-spacing:.02em}.automation-detail__chip--success .automation-detail__chip-value{color:var(--success)}.automation-detail__chip--danger .automation-detail__chip-value{color:var(--danger)}.automation-detail__chip--warning .automation-detail__chip-value{color:var(--warning)}.automation-detail__chip--muted .automation-detail__chip-value{color:var(--text-muted)}.automation-detail__chip--time{color:var(--text-muted);font-variant-numeric:tabular-nums;align-items:center}.automation-detail__alert{align-items:center;gap:var(--space-sm);padding:var(--space-xs) var(--space-md);font-size:var(--text-sm);border-radius:6px;display:flex}.automation-detail__alert--error{color:var(--danger);background:#e74c3c14;border:1px solid #e74c3c40}.automation-detail__warnings{padding:var(--space-xs) var(--space-md);font-size:var(--text-xs);background-color:#f39c120d;border:1px solid #f39c1233;border-radius:6px}.automation-detail__warnings summary{cursor:pointer;color:var(--warning);font-weight:var(--fw-medium)}.automation-detail__warnings pre{margin-top:var(--space-xs);font-family:SF Mono,Menlo,Monaco,Consolas,monospace;font-size:var(--text-xs);color:var(--text-muted);white-space:pre-wrap;word-break:break-word}.automation-detail__tree{gap:var(--space-xs);flex-direction:column;display:flex}.automation-detail__tree-empty{padding:var(--space-xl);text-align:center;color:var(--text-muted);font-size:var(--text-sm)}.automation-detail__file{flex-direction:column;display:flex}.automation-detail__file-header{align-items:center;gap:var(--space-sm);color:var(--text);cursor:pointer;text-align:left;width:100%;font-family:var(--font);transition:background-color var(--transition);background:0 0;border:none;border-radius:6px;padding:8px 10px;display:flex}.automation-detail__file-header:hover{background-color:var(--bg-hover)}.automation-detail--skeleton .automation-detail__file-header{cursor:default;pointer-events:none}.automation-detail--skeleton .automation-detail__file-header:hover{background-color:#0000}.automation-detail__file-chevron{width:16px;height:16px;color:var(--text-muted);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.automation-detail__file-icon{color:var(--text-muted);flex-shrink:0}.automation-detail__file-path{font-family:SF Mono,Menlo,Monaco,Consolas,monospace;font-size:var(--text-sm);color:var(--text);text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.automation-detail__file-summary{flex-shrink:0;align-items:center;gap:6px;display:inline-flex}.automation-detail__file-dots{align-items:center;gap:2px;display:inline-flex}.automation-detail__dot{border-radius:50%;width:6px;height:6px;display:inline-block}.automation-detail__dot--success{background-color:var(--success)}.automation-detail__dot--danger{background-color:var(--danger)}.automation-detail__dot--warning{background-color:var(--warning)}.automation-detail__file-count{font-size:var(--text-xs);color:var(--text-muted);font-variant-numeric:tabular-nums;border:1px solid var(--border-subtle);background-color:#ffffff0a;border-radius:4px;padding:1px 6px}.automation-detail__rows{margin:0;padding:0 0 0 18px;list-style:none;position:relative}.automation-detail__rows:before{content:"";border-left:1px solid var(--tree-guide);pointer-events:none;position:absolute;top:0;bottom:6px;left:14px}.automation-detail__row{align-items:center;gap:var(--space-sm);color:var(--text);cursor:pointer;font-size:var(--text-sm);min-height:var(--row-sm);transition:background-color var(--transition);border-radius:6px;padding:6px 10px;display:flex;position:relative}.automation-detail__row:hover{background-color:var(--bg-hover)}.automation-detail__row--skeleton{cursor:default;pointer-events:none}.automation-detail__row--skeleton:hover{background-color:#0000}.automation-detail__row--selected{background-color:var(--bg-selected)}.automation-detail__row--selected:before{content:"";background-color:var(--primary);border-radius:0 2px 2px 0;width:2px;position:absolute;top:4px;bottom:4px;left:-10px}.automation-detail__row-status{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:20px;height:20px;display:inline-flex}.automation-detail__row-status--success{color:var(--success);background-color:#27ae6026}.automation-detail__row-status--danger{color:var(--danger);background-color:#e74c3c26}.automation-detail__row-status--warning{color:var(--warning);background-color:#f39c1226}.automation-detail__row-status--neutral{color:var(--text-muted);background-color:#a0a0a026}.automation-detail__row-title{color:var(--text);text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.automation-detail__row-line{color:var(--text-muted);font-family:SF Mono,Menlo,Monaco,Consolas,monospace;font-size:var(--text-xs);margin-left:2px}.automation-detail__row-code{font-family:SF Mono,Menlo,Monaco,Consolas,monospace;font-size:var(--text-xs);color:var(--text-tertiary);border:1px solid var(--border-subtle);background-color:#ffffff0a;border-radius:4px;flex-shrink:0;padding:1px 6px}.automation-detail__row-duration{font-size:var(--text-xs);color:var(--text-muted);font-variant-numeric:tabular-nums;flex-shrink:0}@media (width<=1080px){.automation-detail--with-panel{padding-right:0}}.case-drawer__overlay{z-index:190;background-color:#00000073;animation:.18s ease-out case-drawer-fade-in;position:fixed;inset:0}@keyframes case-drawer-fade-in{0%{opacity:0}to{opacity:1}}.case-drawer{background-color:var(--bg-drawer);z-index:200;border-left:1px solid #ffffff14;flex-direction:column;width:min(480px,100vw);display:flex;position:fixed;top:0;bottom:0;right:0;box-shadow:-16px 0 32px #00000052}.case-drawer--enter{animation:.22s cubic-bezier(.2,.8,.2,1) case-drawer-slide-in}.case-drawer--resizing{-webkit-user-select:none;user-select:none;will-change:width}.case-drawer--resizing *{pointer-events:none}.case-drawer--resizing .case-drawer__resize-handle{pointer-events:auto}@keyframes case-drawer-slide-in{0%{opacity:.6;transform:translate(100%)}to{opacity:1;transform:translate(0)}}.case-drawer__resize-handle{cursor:col-resize;z-index:2;touch-action:none;width:6px;position:absolute;top:0;bottom:0;left:-3px}.case-drawer__resize-handle:after{content:"";background-color:#0000;width:2px;transition:background-color .15s;position:absolute;top:0;bottom:0;left:50%;transform:translate(-50%)}.case-drawer__resize-handle:hover:after,.case-drawer__resize-handle:focus-visible:after,.case-drawer--resizing .case-drawer__resize-handle:after{background-color:var(--primary)}.case-drawer__resize-handle:focus-visible{outline:none}.case-drawer__header{z-index:1;gap:var(--space-sm);padding:var(--space-md) var(--space-lg) var(--space-md);background-color:var(--bg-drawer);border-bottom:1px solid #ffffff14;flex-direction:column;flex-shrink:0;display:flex;position:sticky;top:0}.case-drawer__header-meta{align-items:center;gap:var(--space-sm);font-size:var(--text-xs);color:var(--text-muted);min-width:0;display:flex}.case-drawer__code{font-family:SF Mono,Menlo,Monaco,Consolas,monospace;font-size:var(--text-xs);color:var(--text-tertiary);letter-spacing:.02em;background-color:#ffffff0a;border:1px solid #ffffff14;border-radius:4px;flex-shrink:0;padding:2px 7px}.case-drawer__breadcrumb{text-overflow:ellipsis;white-space:nowrap;letter-spacing:.01em;overflow:hidden}.case-drawer__creation-meta{font-size:var(--text-xs);color:var(--text-muted);margin:0}.case-drawer__header-main{justify-content:space-between;align-items:flex-start;gap:var(--space-md);display:flex}.case-drawer__title{font-size:var(--text-xl);font-weight:var(--fw-semibold);line-height:var(--lh-tight);color:var(--text);word-break:break-word;flex:1;min-width:0}.case-drawer__title-input{flex:1}.case-drawer__loading{align-items:center;gap:var(--space-sm);font-size:var(--text-sm);font-weight:var(--fw-regular);color:var(--text-muted);display:inline-flex}.case-drawer__header-actions{flex-shrink:0;align-items:center;gap:2px;display:flex}.case-drawer__attrs{align-items:center;gap:var(--space-sm);row-gap:var(--space-sm);flex-wrap:wrap;margin-top:6px;display:flex}.case-drawer__chip{border-radius:var(--radius-badge);font-size:var(--text-xs);font-weight:var(--fw-medium);border:1px solid var(--border-subtle);color:var(--text-muted);background-color:#ffffff08;align-items:center;gap:4px;padding:2px 10px;display:inline-flex}.case-drawer__chip--priority-high{color:var(--danger);background-color:#e74c3c0f;border-color:#e74c3c40}.case-drawer__chip--priority-medium{color:var(--warning);background-color:#f39c120f;border-color:#f39c1240}.case-drawer__chip--priority-low{color:var(--success);background-color:#27ae600f;border-color:#27ae6040}.case-drawer__chip--type-manual{color:var(--text-muted)}.case-drawer__chip--type-automated{color:var(--primary);background-color:#4a9eff0f;border-color:#4a9eff40}.case-drawer__chip--type-to_automate{color:var(--warning);background-color:#f39c120f;border-color:#f39c1240}.case-drawer__chip--test_type-e2e{color:#16a085;background-color:#16a0850f;border-color:#16a08540}.case-drawer__chip--test_type-api{color:#9b59b6;background-color:#9b59b60f;border-color:#9b59b640}.case-drawer__attr-select{width:auto;min-width:160px}.case-drawer__body{padding:var(--space-md) var(--space-lg) var(--space-xl);flex-direction:column;flex:1;display:flex;overflow-y:auto}.case-drawer__body::-webkit-scrollbar{width:8px}.case-drawer__body::-webkit-scrollbar-track{background:0 0}.case-drawer__body::-webkit-scrollbar-thumb{background-color:#ffffff14;border-radius:4px}.case-drawer__body::-webkit-scrollbar-thumb:hover{background-color:#ffffff29}.case-drawer__alert{align-items:center;gap:var(--space-sm);padding:var(--space-xs) var(--space-md);font-size:var(--text-sm);margin-bottom:var(--space-md);border-radius:6px;display:flex}.case-drawer__alert--error{color:var(--danger);background:#e74c3c14;border:1px solid #e74c3c40}.case-drawer__alert--success{color:var(--success);background:#27ae6014;border:1px solid #27ae6040}.case-drawer__section{gap:var(--space-sm);padding:var(--space-md) 0;flex-direction:column;display:flex}.case-drawer__section+.case-drawer__section{border-top:1px solid #ffffff0d}.case-drawer__section-label{text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted);font-size:.7rem;font-weight:var(--fw-semibold);margin:0}.case-drawer__section-body{font-size:var(--text-sm);line-height:var(--lh-relaxed);color:var(--text)}.case-drawer__paragraph{color:var(--text);font-size:var(--text-sm);line-height:var(--lh-relaxed);white-space:pre-wrap;word-break:break-word}.case-drawer__empty-value{color:var(--text-muted);font-style:italic;font-size:var(--text-sm);opacity:.7}.case-drawer__pre{font-family:SF Mono,Menlo,Monaco,Consolas,monospace;font-size:var(--text-xs);line-height:var(--lh-normal);color:var(--text);white-space:pre-wrap;word-break:break-word;padding:var(--space-sm) var(--space-md);background-color:#ffffff06;border:1px solid #ffffff0f;border-radius:6px;margin:0}.case-drawer__expected{font-size:var(--text-sm);line-height:var(--lh-relaxed);color:var(--text);word-break:break-word;padding:var(--space-sm) var(--space-md);border:1px solid #4a9eff2e;border-left:2px solid var(--primary);background-color:#4a9eff0f;border-radius:6px}.case-drawer__textarea{background-color:var(--input-bg);width:100%;color:var(--text);border:1px solid var(--input-border);padding:var(--space-sm) var(--space-md);font-size:var(--text-sm);font-family:var(--font);resize:vertical;min-height:60px;line-height:var(--lh-normal);transition:border-color var(--transition), box-shadow var(--transition);border-radius:6px}.case-drawer__textarea:focus{border-color:var(--primary);box-shadow:0 0 0 2px var(--input-focus-ring);outline:none}.case-drawer__textarea::placeholder{color:var(--text-muted)}.case-drawer__automation-loading{padding:var(--space-sm);justify-content:center;display:flex}.case-drawer__automation-empty{font-size:var(--text-xs);color:var(--text-muted);margin:0}.case-drawer__footer{justify-content:flex-end;gap:var(--space-sm);padding:var(--space-sm) var(--space-lg);background-color:var(--bg-drawer);border-top:1px solid #ffffff14;flex-shrink:0;display:flex}@media (width<=600px){.case-drawer{box-shadow:none;border-left:none;width:100vw!important}.case-drawer__resize-handle{display:none}.case-drawer__header,.case-drawer__body,.case-drawer__footer{padding-left:var(--space-md);padding-right:var(--space-md)}}.case-drawer__exec{flex-direction:column;gap:10px;display:flex}.case-drawer__exec-source{font-weight:var(--fw-medium);letter-spacing:.01em;align-items:center;gap:4px;display:inline-flex}.case-drawer__exec-source--automation{color:var(--primary)}.case-drawer__exec-source--manual{color:var(--text-muted)}.case-drawer__exec-sep{color:#ffffff2e}.case-drawer__exec-latest{background-color:#ffffff09;border:1px solid #ffffff12;border-radius:8px;flex-direction:column;gap:4px;padding:10px 12px;display:flex;position:relative;overflow:hidden}.case-drawer__exec-latest:before{content:"";width:3px;position:absolute;inset:0 auto 0 0}.case-drawer__exec-latest--success:before{background-color:var(--success)}.case-drawer__exec-latest--danger:before{background-color:var(--danger)}.case-drawer__exec-latest--warning:before{background-color:var(--warning)}.case-drawer__exec-latest--neutral:before{background-color:#ffffff2e}.case-drawer__exec-latest-status{font-size:var(--text-sm);font-weight:var(--fw-semibold);letter-spacing:.01em;align-items:center;gap:6px;display:inline-flex}.case-drawer__exec-latest-status--success{color:var(--success)}.case-drawer__exec-latest-status--danger{color:var(--danger)}.case-drawer__exec-latest-status--warning{color:var(--warning)}.case-drawer__exec-latest-status--neutral{color:var(--text-muted)}.case-drawer__exec-latest-title{font-size:var(--text-base);font-weight:var(--fw-semibold);color:var(--text);line-height:var(--lh-tight);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.case-drawer__exec-latest-meta{font-size:var(--text-xs);color:var(--text-muted);font-variant-numeric:tabular-nums;flex-wrap:wrap;align-items:center;gap:6px;margin-top:2px;display:flex}.case-drawer__exec-metrics{grid-template-columns:1fr 1fr;gap:6px;display:grid}.case-drawer__exec-metric{background-color:#ffffff06;border:1px solid #ffffff0f;border-radius:6px;flex-direction:column;padding:8px 10px;display:flex}.case-drawer__exec-metric-value{font-size:var(--text-lg);font-weight:var(--fw-semibold);font-variant-numeric:tabular-nums;color:var(--text);letter-spacing:-.01em;line-height:1.15}.case-drawer__exec-metric--success .case-drawer__exec-metric-value{color:var(--success)}.case-drawer__exec-metric--danger .case-drawer__exec-metric-value{color:var(--danger)}.case-drawer__exec-metric-label{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);margin-top:2px;font-size:.65rem}.case-drawer__exec-accordion{border-top:1px solid #ffffff0d;padding-top:6px}.case-drawer__exec-accordion-trigger{cursor:pointer;width:100%;color:var(--text-muted);font-family:var(--font);text-transform:uppercase;letter-spacing:.1em;font-size:.7rem;font-weight:var(--fw-semibold);text-align:left;background:0 0;border:none;align-items:center;gap:6px;padding:4px 0;transition:color .15s;display:flex}.case-drawer__exec-accordion-trigger:hover{color:var(--text)}.case-drawer__exec-accordion-trigger:focus-visible{color:var(--text);outline:none}.case-drawer__exec-accordion-chevron{color:var(--text-tertiary);flex-shrink:0;transition:transform .18s}.case-drawer__exec-accordion--open .case-drawer__exec-accordion-chevron{transform:rotate(90deg)}.case-drawer__exec-accordion-content{margin-top:8px}.case-drawer__exec-timeline{margin:0;padding:0;list-style:none}.case-drawer__exec-tl-item{grid-template-columns:20px 1fr;gap:8px;padding:6px 0;display:grid;position:relative}.case-drawer__exec-tl-rail{justify-content:center;padding-top:2px;display:flex;position:relative}.case-drawer__exec-tl-item:not(:last-child) .case-drawer__exec-tl-rail:after{content:"";background-color:#ffffff14;width:1px;position:absolute;top:22px;bottom:-6px;left:50%;transform:translate(-50%)}.case-drawer__exec-tl-dot{background-color:var(--bg-drawer);z-index:1;width:20px;height:20px;color:var(--text-muted);border:1px solid #ffffff24;border-radius:50%;justify-content:center;align-items:center;display:inline-flex;position:relative}.case-drawer__exec-tl-dot--success{color:var(--success);background-color:#27ae6014;border-color:#27ae6073}.case-drawer__exec-tl-dot--danger{color:var(--danger);background-color:#e74c3c14;border-color:#e74c3c73}.case-drawer__exec-tl-dot--warning{color:var(--warning);background-color:#f39c1214;border-color:#f39c1273}.case-drawer__exec-tl-dot--neutral{color:var(--text-muted);background-color:#ffffff08}.case-drawer__exec-tl-body{border-radius:6px;flex-direction:column;gap:2px;min-width:0;padding:1px 6px 4px;transition:background-color .15s;display:flex}.case-drawer__exec-tl-item:hover .case-drawer__exec-tl-body{background-color:#ffffff08}.case-drawer__exec-tl-head{justify-content:space-between;align-items:center;gap:8px;min-width:0;display:flex}.case-drawer__exec-tl-name{font-size:var(--text-sm);font-weight:var(--fw-medium);color:var(--text);text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.case-drawer__exec-tl-link{color:var(--text-muted);opacity:0;flex-shrink:0;align-items:center;text-decoration:none;transition:opacity .15s,color .15s;display:inline-flex}.case-drawer__exec-tl-item:hover .case-drawer__exec-tl-link,.case-drawer__exec-tl-link:focus-visible{opacity:1}.case-drawer__exec-tl-link:hover{color:var(--primary)}.case-drawer__exec-tl-meta{font-size:var(--text-xs);color:var(--text-muted);font-variant-numeric:tabular-nums;flex-wrap:wrap;align-items:center;gap:5px;display:flex}.case-drawer__exec-tl-extra{font-size:var(--text-xs);color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:8px;margin-top:2px;display:flex}.case-drawer__exec-tl-retry{color:var(--warning);font-weight:var(--fw-medium);align-items:center;gap:3px;display:inline-flex}.case-drawer__exec-tl-executor{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.case-drawer__exec-tl-notes{font-size:var(--text-xs);color:var(--text-muted);white-space:pre-wrap;margin:2px 0 0}.case-drawer__exec-tl-more{width:100%;font-size:var(--text-xs);font-family:var(--font);color:var(--text-muted);cursor:pointer;background-color:#ffffff06;border:1px solid #ffffff12;border-radius:6px;justify-content:center;align-items:center;margin-top:6px;padding:7px 10px;transition:background-color .15s,color .15s,border-color .15s;display:flex}.case-drawer__exec-tl-more:hover{color:var(--text);background-color:#ffffff0d;border-color:#ffffff24}.case-drawer__exec-tl-more:focus-visible{border-color:var(--primary);box-shadow:0 0 0 2px var(--input-focus-ring);outline:none}.empty-state{text-align:center;color:var(--text-muted);justify-content:center;align-items:center;gap:var(--space-sm);flex-direction:column;display:flex}.empty-state--sm{padding:var(--space-lg) var(--space-md)}.empty-state--md{padding:var(--space-2xl) var(--space-lg)}.empty-state__icon{color:var(--text-muted);opacity:.75;display:inline-flex}.empty-state__title{font-size:var(--text-base);font-weight:var(--fw-semibold);color:var(--text);margin:0}.empty-state__description{font-size:var(--text-sm);line-height:var(--lh-relaxed);color:var(--text-muted);max-width:420px;margin:0}.empty-state__action{margin-top:var(--space-sm)}.qh-import{max-width:480px;min-height:0}.qh-import__error{border-radius:var(--radius-input);color:var(--danger);font-size:var(--text-sm);background-color:#e74c3c14;border:1px solid #e74c3c4d;align-items:center;gap:6px;padding:8px 12px;display:flex}.qh-import__select{gap:var(--space-sm);flex-direction:column;display:flex}.qh-import__dropzone{width:100%;padding:var(--space-xl) var(--space-md);background-color:var(--input-bg);border:2px dashed var(--input-border);border-radius:var(--radius-card);color:var(--text);font-family:var(--font);cursor:pointer;transition:border-color var(--transition), background-color var(--transition);flex-direction:column;justify-content:center;align-items:center;gap:6px;display:flex}.qh-import__dropzone:hover:not(:disabled){border-color:var(--primary);background-color:var(--bg-hover)}.qh-import__dropzone:focus-visible{border-color:var(--primary);box-shadow:0 0 0 3px var(--input-focus-ring);outline:none}.qh-import__dropzone:disabled{opacity:var(--opacity-disabled);cursor:not-allowed}.qh-import__dropzone-icon{color:var(--text-muted);margin-bottom:4px}.qh-import__dropzone:hover:not(:disabled) .qh-import__dropzone-icon{color:var(--primary)}.qh-import__file-name{font-size:var(--text-sm);font-weight:var(--fw-semibold)}.qh-import__file-meta{font-size:var(--text-xs);color:var(--text-muted)}.qh-import__file-input{display:none}.qh-import__preview{gap:var(--space-md);flex-direction:column;display:flex}.qh-import__format-row{justify-content:space-between;align-items:baseline;gap:var(--space-md);padding:var(--space-sm) var(--space-md);background-color:var(--bg-active);border:1px solid var(--border-subtle);border-radius:var(--radius-input);display:flex}.qh-import__format-label{text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted);font-size:.6875rem;font-weight:var(--fw-semibold)}.qh-import__format-value{font-size:var(--text-sm);font-weight:var(--fw-semibold);color:var(--primary)}.qh-import__stats{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.qh-import__stats li{font-size:var(--text-sm);color:var(--text);line-height:var(--lh-normal)}.qh-import__stats strong{font-variant-numeric:tabular-nums;color:var(--primary);font-weight:var(--fw-bold)}.qh-import__renames{padding:var(--space-sm) var(--space-md);border-radius:var(--radius-input);background-color:#f39c120f;border:1px solid #f39c1240;flex-direction:column;gap:6px;display:flex}.qh-import__renames-label{font-size:var(--text-xs);color:var(--warning);font-weight:var(--fw-semibold)}.qh-import__renames-list{flex-direction:column;gap:2px;max-height:180px;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.qh-import__renames-list li{font-size:var(--text-xs);color:var(--text-muted);font-family:var(--font);line-height:var(--lh-normal)}.qh-import__renames-more{color:var(--text-muted);padding-top:2px;font-style:italic}.qh-import__empty{padding:var(--space-sm) var(--space-md);border-radius:var(--radius-input);color:var(--success);font-size:var(--text-sm);background-color:#27ae600f;border:1px solid #27ae6040;align-items:center;gap:6px;display:flex}.qh-import__back{margin-right:auto}.clone-case-modal-overlay{padding:var(--space-md);z-index:300;background:#0009;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.clone-case-modal{background:var(--bg-drawer);border:1px solid var(--border-subtle);padding:var(--space-xl);gap:var(--space-sm);border-radius:12px;flex-direction:column;width:100%;max-width:460px;display:flex;box-shadow:0 16px 48px #00000080}.clone-case-modal__title{align-items:center;gap:var(--space-sm);font-size:var(--text-lg);font-weight:var(--fw-semibold);color:var(--text);display:flex}.clone-case-modal__title-icon{color:var(--primary);flex-shrink:0}.clone-case-modal__desc{font-size:var(--text-sm);color:var(--text-muted);line-height:1.6}.clone-case-modal__label{margin-top:var(--space-sm);font-size:var(--text-xs);font-weight:var(--fw-medium);color:var(--text-muted)}.clone-case-modal__empty{font-size:var(--text-sm);color:var(--text-muted);line-height:1.6}.clone-case-modal__actions{justify-content:flex-end;gap:var(--space-sm);margin-top:var(--space-lg);display:flex}.move-suite-modal-overlay{padding:var(--space-md);z-index:300;background:#0009;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.move-suite-modal{background:var(--bg-drawer);border:1px solid var(--border-subtle);padding:var(--space-xl);gap:var(--space-sm);border-radius:12px;flex-direction:column;width:100%;max-width:460px;display:flex;box-shadow:0 16px 48px #00000080}.move-suite-modal__title{align-items:center;gap:var(--space-sm);font-size:var(--text-lg);font-weight:var(--fw-semibold);color:var(--text);display:flex}.move-suite-modal__title-icon{color:var(--primary);flex-shrink:0}.move-suite-modal__desc{font-size:var(--text-sm);color:var(--text-muted);line-height:1.6}.move-suite-modal__desc strong{color:var(--text);font-weight:var(--fw-semibold)}.move-suite-modal__label{margin-top:var(--space-sm);font-size:var(--text-xs);font-weight:var(--fw-medium);color:var(--text-muted)}.move-suite-modal__actions{justify-content:flex-end;gap:var(--space-sm);margin-top:var(--space-lg);display:flex}.qh-bulk-checkbox{border:1.5px solid var(--border-strong);background-color:var(--input-bg);cursor:pointer;width:14px;height:14px;transition:border-color var(--transition), background-color var(--transition), opacity var(--transition);color:#fff;border-radius:3px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.qh-bulk-checkbox:hover{border-color:var(--primary)}.qh-bulk-checkbox:focus-visible{border-color:var(--primary);box-shadow:0 0 0 2px var(--input-focus-ring);outline:none}.qh-bulk-checkbox--checked,.qh-bulk-checkbox--indeterminate{background-color:var(--primary);border-color:var(--primary)}.qh-bulk-checkbox__dash{background-color:#fff;border-radius:1px;width:8px;height:2px;display:block}.repo{gap:var(--space-md);flex-direction:column;display:flex}.repo__page-header{justify-content:space-between;align-items:flex-start;gap:var(--space-md);padding-bottom:var(--space-xs);flex-wrap:wrap;display:flex}.repo__page-titles{flex-direction:column;gap:2px;min-width:0;display:flex}.repo__page-title{align-items:center;gap:var(--space-sm);font-size:var(--text-xl);font-weight:var(--fw-semibold);line-height:var(--lh-tight);color:var(--text);display:flex}.repo__page-subtitle{font-size:var(--text-xs);color:var(--text-muted)}.repo__page-counts{align-items:center;gap:var(--space-xs);margin-top:var(--space-xs);color:var(--text-muted);font-size:var(--text-sm);display:flex}.repo__count strong{color:var(--text-tertiary);font-weight:var(--fw-semibold);margin-right:4px}.repo__count-divider{color:var(--border-strong)}.repo__project-select{background-color:var(--input-bg);color:var(--text);border:1px solid var(--input-border);border-radius:var(--radius-input);font-size:var(--text-sm);cursor:pointer;min-width:220px;transition:border-color var(--transition);padding:.4rem .75rem}.repo__toolbar{align-items:center;gap:var(--space-sm);border:1px solid var(--border-subtle);border-radius:calc(var(--radius-btn) + 4px);background-color:#ffffff05;padding:4px;display:inline-flex}.repo__toolbar>.btn{border-radius:var(--radius-btn);height:40px;font-size:var(--text-sm);font-weight:var(--fw-semibold);padding:0 1rem}.repo__toolbar-divider{background-color:var(--border-subtle);width:1px;height:22px;margin:0}.repo__project-select:focus{border-color:var(--primary);box-shadow:0 0 0 2px var(--input-focus-ring);outline:none}.repo__search{align-items:center;gap:var(--space-sm);display:flex}.repo__search-input-wrap{flex:1;max-width:480px;position:relative}.repo__search-icon{color:var(--text-muted);pointer-events:none;position:absolute;top:50%;left:10px;transform:translateY(-50%)}.repo__search-input{width:100%;height:var(--row-md);background-color:var(--input-bg);color:var(--text);border:1px solid var(--input-border);border-radius:var(--radius-input);font-size:var(--text-sm);font-family:var(--font);padding:0 2rem}.repo__search-input::placeholder{color:var(--text-muted)}.repo__search-input:focus{border-color:var(--primary);box-shadow:0 0 0 2px var(--input-focus-ring);outline:none}.repo__search-clear{position:absolute;top:50%;right:4px;transform:translateY(-50%)}.repo__search-field{width:auto;min-width:160px}.repo__search-field .qh-select__trigger{height:var(--row-md)}.repo__status{align-items:center;gap:var(--space-xs);width:fit-content;min-height:28px;padding:0 var(--space-sm);border:1px solid var(--border-subtle);border-radius:var(--radius-badge);color:var(--text-muted);font-size:var(--text-xs);background-color:#ffffff06;display:inline-flex}.repo__filter{position:relative}.repo__filter-trigger{height:var(--row-md);background-color:var(--input-bg);color:var(--text);border:1px solid var(--input-border);border-radius:var(--radius-input);font-family:var(--font);font-size:var(--text-xs);font-weight:var(--fw-medium);cursor:pointer;transition:border-color var(--transition), background-color var(--transition), box-shadow var(--transition), color var(--transition);align-items:center;gap:6px;padding:0 .75rem;display:inline-flex}.repo__filter-trigger:hover{border-color:var(--border-strong);background-color:var(--bg-hover)}.repo__filter-trigger:focus-visible{border-color:var(--primary);box-shadow:0 0 0 3px var(--input-focus-ring);outline:none}.repo__filter-trigger--open,.repo__filter-trigger--active{color:var(--primary);background-color:var(--bg-selected);border-color:#4a9eff73}.repo__filter-trigger--open{box-shadow:0 0 0 3px var(--input-focus-ring)}.repo__filter-badge{background-color:var(--primary);color:#fff;min-width:18px;height:18px;font-size:.65rem;font-weight:var(--fw-bold);font-variant-numeric:tabular-nums;border-radius:9px;justify-content:center;align-items:center;padding:0 5px;display:inline-flex}.repo__filter-popover{background-color:var(--bg-drawer);min-width:280px;padding:var(--space-md);z-index:250;gap:var(--space-md);border:1px solid #ffffff1a;border-radius:8px;flex-direction:column;animation:.14s ease-out repo-filter-pop;display:flex;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 16px 32px #00000073,0 2px 6px #0000004d}@keyframes repo-filter-pop{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.repo__filter-group{gap:var(--space-sm);flex-direction:column;display:flex}.repo__filter-group-label{text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted);font-size:.6875rem;font-weight:var(--fw-semibold)}.repo__filter-chips{flex-wrap:wrap;gap:6px;display:flex}.repo__filter-chip{background-color:var(--input-bg);border:1px solid var(--border-subtle);border-radius:var(--radius-badge);color:var(--text-muted);font-family:var(--font);font-size:var(--text-xs);font-weight:var(--fw-medium);cursor:pointer;transition:background-color var(--transition), border-color var(--transition), color var(--transition);align-items:center;gap:5px;padding:4px 10px;display:inline-flex}.repo__filter-chip:hover{border-color:var(--border-strong);color:var(--text)}.repo__filter-chip:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.repo__filter-chip--priority-high.repo__filter-chip--active{color:var(--danger);background-color:#e74c3c1f;border-color:#e74c3c66}.repo__filter-chip--priority-medium.repo__filter-chip--active{color:var(--warning);background-color:#f39c121f;border-color:#f39c1266}.repo__filter-chip--priority-low.repo__filter-chip--active{color:var(--success);background-color:#27ae601f;border-color:#27ae6066}.repo__filter-chip--type-manual.repo__filter-chip--active{background-color:var(--bg-active);border-color:var(--border-strong);color:var(--text)}.repo__filter-chip--type-automated.repo__filter-chip--active{color:var(--primary);background-color:#4a9eff1f;border-color:#4a9eff66}.repo__filter-chip--type-to_automate.repo__filter-chip--active{color:var(--warning);background-color:#f39c121f;border-color:#f39c1266}.repo__filter-chip--test_type-e2e.repo__filter-chip--active{color:#16a085;background-color:#16a0851f;border-color:#16a08566}.repo__filter-chip--test_type-api.repo__filter-chip--active{color:#9b59b6;background-color:#9b59b61f;border-color:#9b59b666}.repo__filter-chip--source-ui.repo__filter-chip--active{color:#cbd5e1;background-color:#94a3b829;border-color:#94a3b880}.repo__filter-chip--source-mcp.repo__filter-chip--active{color:var(--primary);background-color:#4a9eff1f;border-color:#4a9eff66}.repo__filter-chip--source-import.repo__filter-chip--active{color:var(--warning);background-color:#f39c121f;border-color:#f39c1266}.repo__filter-footer{padding-top:var(--space-sm);border-top:1px solid var(--border-subtle);justify-content:flex-end;display:flex}.repo__filter-clear{color:var(--text-muted);font-family:var(--font);font-size:var(--text-xs);font-weight:var(--fw-semibold);cursor:pointer;transition:color var(--transition), background-color var(--transition);background:0 0;border:none;border-radius:6px;padding:4px 8px}.repo__filter-clear:hover:not(:disabled){color:var(--text);background-color:var(--bg-hover)}.repo__filter-clear:disabled{opacity:var(--opacity-disabled);cursor:not-allowed}@media (width<=600px){.repo__filter-popover{min-width:240px;max-width:calc(100vw - 32px);left:0;right:auto}}.repo__alert{align-items:center;gap:var(--space-sm);padding:var(--space-xs) var(--space-md);border-radius:var(--radius-input);color:var(--danger);font-size:var(--text-sm);background:#e74c3c14;border:1px solid #e74c3c4d;display:flex}.repo__layout{grid-template-columns:var(--repo-tree-width,260px) auto 1fr;min-height:calc(100vh - var(--navbar-height) - 200px);align-items:stretch;gap:0;display:grid}@media (width<=1000px){.repo__layout{grid-template-columns:1fr}.repo__resizer{display:none}}.repo__resizer{top:var(--navbar-height);height:calc(100vh - var(--navbar-height));cursor:col-resize;width:5px;transition:background-color var(--transition);touch-action:none;background-color:#0000;align-self:start;position:sticky}.repo__resizer:hover,.repo__resizer:focus-visible{background-color:var(--primary);outline:none}.repo__tree{top:var(--navbar-height);background-color:var(--bg-sidebar);border:none;border-right:1px solid var(--border-subtle);height:calc(100vh - var(--navbar-height));border-radius:0;align-self:start;padding:0;position:sticky;overflow-y:auto}.repo__tree-header{padding:10px var(--space-sm) 8px var(--space-md);border-bottom:1px solid var(--border-subtle);background-color:var(--bg-sidebar);z-index:1;justify-content:space-between;align-items:center;display:flex;position:sticky;top:0}.repo__tree-header-title{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.08em;font-weight:var(--fw-semibold);color:var(--text-muted)}.repo__tree-header-actions{align-items:center;gap:0;display:flex}.repo__inline-form{padding:4px var(--space-sm)}.repo__inline-form--in-section{margin-bottom:var(--space-xs);padding:0}.repo__inline-input{background-color:var(--input-bg);width:100%;color:var(--text);border:1px solid var(--primary);font-size:var(--text-sm);font-family:var(--font);border-radius:4px;padding:.25rem .5rem}.repo__inline-input:focus{box-shadow:0 0 0 2px var(--input-focus-ring);outline:none}.repo__inline-input:disabled{opacity:var(--opacity-disabled);cursor:wait}.repo__inline-status{align-items:center;gap:var(--space-xs);padding:var(--space-xs) 0 0;color:var(--text-muted);font-size:var(--text-xs);display:inline-flex}.repo__tree-body{padding:4px 0 var(--space-lg);flex-direction:column;display:flex}.repo__tree-empty{font-size:var(--text-sm);color:var(--text-muted);padding:var(--space-sm) var(--space-md)}.repo__tree-loading{align-items:center;gap:var(--space-xs);padding:var(--space-sm) var(--space-md);color:var(--text-muted);font-size:var(--text-sm);display:inline-flex}.repo__tree-skeleton{padding:8px var(--space-sm);flex-direction:column;gap:2px;display:flex}.repo__tree-skeleton-row{align-items:center;gap:var(--space-xs);height:var(--row-sm);grid-template-columns:14px minmax(0,1fr) 20px;display:grid}.repo__tree-skeleton-row--depth-0{padding-left:4px}.repo__tree-skeleton-row--depth-1{padding-left:18px}.repo__tree-skeleton-row--depth-2{padding-left:32px}.repo__tree-row{height:var(--row-sm);padding-right:var(--space-sm);cursor:pointer;transition:background-color var(--transition);border-radius:0;align-items:center;gap:1px;padding-left:4px;display:flex;position:relative}.repo__tree-row:hover{background-color:var(--bg-hover)}.repo__tree-row--active{background-color:var(--bg-selected)}.repo__tree-row--active:before{content:"";background-color:var(--primary);width:2px;position:absolute;top:0;bottom:0;left:0}.repo__tree-chevron{width:16px;height:16px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:2px;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.repo__tree-drag{width:14px;height:16px;color:var(--text-muted);cursor:grab;opacity:0;transition:opacity var(--transition);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.repo__tree-row:hover .repo__tree-drag{opacity:.6}.repo__tree-drag:hover{opacity:1;color:var(--text)}.repo__tree-drag:active{cursor:grabbing}.repo__tree-row--dragging{opacity:.4;background-color:var(--bg-hover)}.repo__tree-chevron:hover{color:var(--text)}.repo__tree-spacer{width:12px;display:inline-block}.repo__tree-label{justify-content:space-between;align-items:center;gap:var(--space-sm);color:var(--text);cursor:pointer;text-align:left;font-size:var(--text-sm);padding:0 var(--space-xs) 0 2px;background:0 0;border:none;flex:1;min-width:0;height:100%;display:flex}.repo__tree-name{text-overflow:ellipsis;white-space:nowrap;font-weight:var(--fw-regular);line-height:1.5;overflow:hidden}.repo__tree-row--active .repo__tree-name{color:var(--primary);font-weight:var(--fw-medium)}.repo__tree-count{color:var(--text-muted);opacity:.7;font-variant-numeric:tabular-nums;font-size:.65rem;font-weight:var(--fw-regular);flex-shrink:0}.repo__tree-row--active .repo__tree-count{color:var(--primary);opacity:.7}.repo__tree-children{padding-left:16px;position:relative}.repo__tree-children:before{content:"";background-color:var(--tree-guide);pointer-events:none;width:1px;position:absolute;top:0;bottom:0;left:11px}.repo__main{gap:var(--space-lg);min-width:0;padding-left:var(--space-lg);padding-top:var(--space-sm);flex-direction:column;display:flex}.repo__main-loading{justify-content:center;align-items:center;gap:var(--space-sm);min-height:220px;color:var(--text-muted);font-size:var(--text-sm);display:inline-flex}.repo__main-skeleton{gap:var(--space-lg);flex-direction:column;display:flex}.repo__section{background:0 0;border:none;flex-direction:column;padding:0;display:flex;position:relative}.repo__section--nested{padding-left:var(--space-md);margin-top:var(--space-sm)}.repo__section-header{align-items:center;gap:var(--space-xs);padding:var(--space-xs) 0;border-bottom:1px solid var(--border-subtle);margin-bottom:var(--space-2xs);display:flex}.repo__section-toggle{width:22px;height:22px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;display:inline-flex}.repo__section-toggle:hover{color:var(--text);background-color:var(--bg-hover)}.repo__section-title{font-weight:var(--fw-semibold);color:var(--text);text-overflow:ellipsis;white-space:nowrap;min-width:0;margin-left:var(--space-xs);flex:1;overflow:hidden}.repo__section-title--lg{font-size:var(--text-xl)}.repo__section-title--md{font-size:var(--text-lg)}.repo__section-title--sm{font-size:var(--text-base)}.repo__section-rename{align-items:center;gap:var(--space-2xs);min-width:0;margin-left:var(--space-xs);flex:1;display:flex}.repo__section-rename .repo__inline-input{flex:1;min-width:0}.repo__section-description{margin:0 0 var(--space-2xs) calc(22px + var(--space-xs));color:var(--text-muted);font-size:var(--text-sm);-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.repo__section-description p{margin:0}.repo__section-description-edit{margin:0 0 var(--space-xs) calc(22px + var(--space-xs))}.repo__section-actions{align-items:center;gap:2px;display:flex}.repo__section-refreshing{align-items:center;gap:var(--space-xs);color:var(--text-muted);font-size:var(--text-xs);flex-shrink:0;display:inline-flex}.repo__cases{flex-direction:column;display:flex}.repo__cases-loading{align-items:center;gap:var(--space-xs);padding:var(--space-sm) var(--space-md);color:var(--text-muted);font-size:var(--text-sm);justify-content:flex-start;display:flex}.repo__cases-empty{font-size:var(--text-sm);color:var(--text-muted);padding:var(--space-sm) var(--space-md);font-style:italic}.repo__case-list{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.repo__case-row{align-items:center;gap:var(--space-sm);width:100%;height:var(--row-md);padding:0 var(--space-sm);border-bottom:1px solid var(--border-subtle);color:var(--text);transition:background-color var(--transition);background:0 0;display:flex}.repo__case-list li:last-child .repo__case-row{border-bottom:none}.repo__case-row:hover{background-color:var(--bg-hover)}.repo__case-row--skeleton{cursor:default;pointer-events:none}.repo__case-row--skeleton:hover{background-color:#0000}.repo__case-row--selected{background-color:var(--bg-selected)}.repo__case-row--selected:hover{background-color:var(--bg-selected-strong)}.repo__case-row--bulk-selected{box-shadow:inset 2px 0 0 var(--primary);background-color:#4a9eff0f}.repo__case-row--bulk-selected:hover{background-color:#4a9eff1a}.repo__case-row--dragging{opacity:.4;background-color:var(--bg-hover)}.repo__case-drag{width:14px;height:16px;color:var(--text-muted);cursor:grab;opacity:0;transition:opacity var(--transition);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.repo__case-row:hover .repo__case-drag{opacity:.6}.repo__case-drag:hover{opacity:1;color:var(--text)}.repo__case-drag:active{cursor:grabbing}.repo__case-drag-overlay{align-items:center;gap:var(--space-sm);height:var(--row-md);padding:0 var(--space-sm);background:var(--surface);border:1px solid var(--primary);border-radius:var(--radius-card);cursor:grabbing;display:flex;box-shadow:0 4px 12px #00000059}.repo__case-row-body{align-items:center;gap:var(--space-sm);font-family:var(--font);font-size:var(--text-sm);color:inherit;text-align:left;cursor:pointer;background:0 0;border:none;flex:1;min-width:0;height:100%;padding:0;display:flex}.repo__case-marker{width:var(--icon-md);height:var(--icon-md);color:var(--text-muted);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.repo__case-marker--priority-high{color:var(--danger)}.repo__case-marker--priority-medium{color:var(--warning)}.repo__case-marker--priority-low{color:var(--success)}.repo__case-marker--type-manual{color:var(--text-muted)}.repo__case-marker--type-automated{color:var(--primary)}.repo__case-marker--type-to_automate{color:var(--warning)}.repo__case-marker--test_type-e2e{color:#16a085}.repo__case-marker--test_type-api{color:#9b59b6}.repo__case-code{color:var(--text-muted);font-size:var(--text-xs);flex-shrink:0;min-width:56px;font-family:SF Mono,Menlo,Monaco,Consolas,monospace}.repo__case-row--selected .repo__case-code{color:var(--primary)}.repo__case-title{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.repo__highlight{color:inherit;background-color:#ffd7002e;border-radius:3px;padding:0 2px}.repo__quick-create{align-items:center;gap:var(--space-sm);height:var(--row-md);padding:0 var(--space-sm);border-top:1px dashed var(--border-subtle);color:var(--text-muted);display:flex}.repo__quick-create-plus{color:var(--text-muted);font-size:var(--text-base);font-weight:var(--fw-regular);min-width:56px;font-family:SF Mono,Menlo,Monaco,Consolas,monospace;font-size:var(--text-xs)}.repo__quick-create-input{color:var(--text);font-size:var(--text-sm);font-family:var(--font);background:0 0;border:none;flex:1;padding:0;font-style:italic}.repo__quick-create-input::placeholder{color:var(--text-muted);font-style:italic}.repo__quick-create-input:focus{outline:none;font-style:normal}.repo__quick-create-input:disabled{cursor:wait;opacity:var(--opacity-disabled)}.repo__quick-create-status{align-items:center;gap:var(--space-xs);color:var(--text-muted);font-size:var(--text-xs);flex-shrink:0;display:inline-flex}.repo__section-children{gap:var(--space-md);margin-top:var(--space-sm);flex-direction:column;padding-left:16px;display:flex;position:relative}.repo__section-children:before{content:"";background-color:var(--tree-guide);pointer-events:none;width:1px;position:absolute;top:0;bottom:8px;left:7px}.repo__case-row .qh-bulk-checkbox{visibility:hidden;opacity:0;transition:visibility var(--transition), opacity var(--transition)}.repo__case-row:hover .qh-bulk-checkbox,.repo__case-row--bulk-selected .qh-bulk-checkbox,.qh-bulk-checkbox--checked,.qh-bulk-checkbox--indeterminate{visibility:visible;opacity:1}.repo__case-checkbox-spacer{flex-shrink:0;width:14px;display:inline-block}.repo__modal-overlay{padding:var(--space-md);z-index:200;background-color:#0000008c;justify-content:center;align-items:center;animation:.15s ease-out repo-modal-overlay-in;display:flex;position:fixed;inset:0}@keyframes repo-modal-overlay-in{0%{opacity:0}to{opacity:1}}.repo__modal{background-color:var(--bg-drawer);border:1px solid #ffffff1a;border-radius:10px;flex-direction:column;width:100%;max-width:520px;min-height:520px;max-height:calc(100vh - 48px);animation:.18s cubic-bezier(.2,.8,.2,1) repo-modal-in;display:flex;box-shadow:0 24px 48px #00000080,0 4px 12px #0000004d}.repo__modal--compact{max-width:440px;min-height:0}@keyframes repo-modal-in{0%{opacity:0;transform:translateY(8px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.repo__modal-header{justify-content:space-between;align-items:flex-start;gap:var(--space-md);padding:var(--space-md) var(--space-lg);border-bottom:1px solid #ffffff0f;display:flex}.repo__modal-title{font-size:var(--text-lg);font-weight:var(--fw-semibold);color:var(--text);line-height:var(--lh-tight)}.repo__modal-subtitle{font-size:var(--text-xs);color:var(--text-muted);letter-spacing:.01em;margin-top:2px}.repo__modal-body{padding:var(--space-md) var(--space-lg);gap:var(--space-md);flex-direction:column;flex:1;display:flex;overflow-y:auto}.repo__modal-helper{font-size:var(--text-xs);color:var(--text-muted);line-height:var(--lh-normal)}.repo__modal-subtitle-hint{color:var(--text-muted)}.repo__modal-fields{gap:var(--space-lg);flex-direction:column;display:flex}.repo__modal-field{flex-direction:column;gap:6px;min-width:0;display:flex}.repo__modal-field-label{text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted);font-size:.6875rem;font-weight:var(--fw-semibold)}.repo__modal-field-hint{font-size:var(--text-xs);color:var(--text-muted);line-height:var(--lh-normal)}.repo__modal-textarea{background-color:var(--input-bg);width:100%;color:var(--text);border:1px solid var(--input-border);border-radius:var(--radius-input);padding:var(--space-sm) var(--space-md);font-size:var(--text-sm);font-family:var(--font);resize:vertical;min-height:64px;line-height:var(--lh-normal);transition:border-color var(--transition), box-shadow var(--transition)}.repo__modal-textarea:focus{border-color:var(--primary);box-shadow:0 0 0 2px var(--input-focus-ring);outline:none}.repo__modal-textarea::placeholder{color:var(--text-muted)}.repo__modal-textarea:disabled{opacity:var(--opacity-disabled);cursor:not-allowed}.repo__modal-footer{justify-content:flex-end;gap:var(--space-sm);padding:var(--space-sm) var(--space-lg);border-top:1px solid #ffffff0f;display:flex}.repo__modal-btn{font-size:var(--text-sm);font-weight:var(--fw-semibold);font-family:var(--font);cursor:pointer;transition:background-color var(--transition), color var(--transition);border-radius:6px;align-items:center;gap:6px;padding:8px 16px;display:inline-flex}.repo__modal-btn--ghost{color:var(--text-muted);background:0 0;border:1px solid #0000}.repo__modal-btn--ghost:hover:not(:disabled){color:var(--text);background-color:var(--bg-hover)}.repo__modal-btn--primary{background-color:var(--primary);border:1px solid var(--primary);color:#fff}.repo__modal-btn--primary:hover:not(:disabled){background-color:var(--primary-hover)}.repo__modal-btn--danger{background-color:var(--danger);border:1px solid var(--danger);color:#fff}.repo__modal-btn--danger:hover:not(:disabled){background-color:#c0392b;border-color:#c0392b}.repo__modal-btn--danger:focus-visible{outline:2px solid var(--danger);outline-offset:2px}.repo__modal-btn:disabled{opacity:var(--opacity-disabled);cursor:not-allowed}@media (width<=600px){.repo__modal{min-height:0}.repo__modal-fields{gap:var(--space-md)}}.runs{gap:var(--space-md);flex-direction:column;display:flex}.runs__top{justify-content:space-between;align-items:flex-start;gap:var(--space-md);padding-bottom:var(--space-sm);border-bottom:1px solid var(--border-subtle);display:flex}.runs__top-titles{flex-direction:column;gap:2px;min-width:0;display:flex}.runs__title{align-items:center;gap:var(--space-sm);font-size:var(--text-xl);font-weight:var(--fw-semibold);line-height:var(--lh-tight);color:var(--text);display:flex}.runs__subtitle{font-size:var(--text-xs);color:var(--text-muted)}.runs__top-actions{align-items:center;gap:var(--space-sm);display:flex}.runs__toolbar{align-items:center;gap:var(--space-sm);border:1px solid var(--border-subtle);border-radius:calc(var(--radius-btn) + 4px);background-color:#ffffff05;padding:4px;display:inline-flex}.runs__toolbar>.btn{border-radius:var(--radius-btn);height:40px;font-size:var(--text-sm);font-weight:var(--fw-semibold);padding:0 1rem}.runs__toolbar-divider{background-color:var(--border-subtle);width:1px;height:22px;margin:0}.runs__chips{gap:var(--space-sm);flex-wrap:wrap;display:flex}.runs__chip{border:1px solid var(--border-subtle);border-radius:var(--radius-badge);font-size:var(--text-xs);background-color:#ffffff08;align-items:baseline;gap:6px;padding:4px 12px;display:inline-flex}.runs__chip-value{font-size:var(--text-md);font-weight:var(--fw-semibold);color:var(--text);font-variant-numeric:tabular-nums}.runs__chip-label{color:var(--text-muted);letter-spacing:.02em}.runs__chip--success .runs__chip-value{color:var(--success)}.runs__chip--danger .runs__chip-value{color:var(--danger)}.runs__chip--warning .runs__chip-value{color:var(--warning)}.runs__chip--primary .runs__chip-value{color:var(--primary)}.runs__chip--muted .runs__chip-value{color:var(--text-muted)}.runs__chip--filter{cursor:pointer;transition:border-color var(--transition), background-color var(--transition);font-family:inherit}.runs__chip--filter:focus-visible{border-color:var(--primary);box-shadow:0 0 0 2px var(--input-focus-ring);outline:none}.runs__chip--filter:disabled{opacity:.5;cursor:default}.runs__chip--active{border-color:var(--primary);background-color:#ffffff12}.runs__chip--active .runs__chip-label{color:var(--text)}.runs__alert{align-items:center;gap:var(--space-sm);padding:var(--space-xs) var(--space-md);font-size:var(--text-sm);border-radius:6px;display:flex}.runs__alert--error{color:var(--danger);background:#e74c3c14;border:1px solid #e74c3c40}.runs__loading{padding:var(--space-xl);justify-content:center;display:flex}.runs__empty{align-items:center;gap:var(--space-sm);padding:var(--space-2xl) var(--space-md);text-align:center;color:var(--text-muted);flex-direction:column;display:flex}.runs__empty h2{font-size:var(--text-lg);font-weight:var(--fw-medium);color:var(--text)}.runs__empty p{font-size:var(--text-sm);max-width:360px}.runs__empty-text{color:var(--text-muted);font-size:var(--text-sm);padding:var(--space-sm) 0}.runs__table-wrap{border:1px solid var(--border-subtle);border-radius:8px;overflow-x:auto}.runs__table{border-collapse:collapse;width:100%;font-size:var(--text-sm)}.runs__table thead{background-color:#ffffff05}.runs__table th{text-align:left;text-transform:uppercase;letter-spacing:.08em;font-size:.7rem;font-weight:var(--fw-semibold);color:var(--text-muted);padding:10px var(--space-md);border-bottom:1px solid var(--border-subtle);white-space:nowrap}.runs__th-name{min-width:200px}.runs__th-progress{width:240px}.runs__th-num{text-align:right;width:90px}.runs__th-check,.runs__td-check{width:32px;padding-left:var(--space-md);padding-right:0}.runs__row{cursor:pointer;transition:background-color var(--transition)}.runs__row:hover{background-color:var(--bg-hover)}.runs__row--skeleton{cursor:default;pointer-events:none}.runs__row--skeleton:hover{background-color:#0000}.runs__row--bulk-selected{box-shadow:inset 2px 0 0 var(--primary);background-color:#4a9eff0f}.runs__row--bulk-selected:hover{background-color:#4a9eff1a}.runs__row td{padding:10px var(--space-md);border-bottom:1px solid var(--border-subtle);color:var(--text);vertical-align:middle}.runs__table tbody tr:last-child td{border-bottom:none}.runs__row-name{color:var(--text);font-weight:var(--fw-medium)}.runs__td-num{text-align:right;font-variant-numeric:tabular-nums;color:var(--text-muted)}.runs__td-num .skeleton{margin-left:auto}.runs__td-num--success{color:var(--success)}.runs__td-num--danger{color:var(--danger)}.runs__td-date{font-size:var(--text-xs);color:var(--text-muted);white-space:nowrap}.runs__td-action{text-align:right;white-space:nowrap}.runs__open-link{color:var(--primary);font-size:var(--text-xs);font-weight:var(--fw-medium);opacity:.7;transition:opacity var(--transition);align-items:center;gap:4px;display:inline-flex}.runs__row:hover .runs__open-link{opacity:1}.runs__status-pill{border-radius:var(--radius-badge);font-size:var(--text-xs);font-weight:var(--fw-medium);white-space:nowrap;align-items:center;gap:6px;padding:2px 10px;display:inline-flex}.runs__status-dot{border-radius:50%;width:6px;height:6px;display:inline-block}.runs__status-pill--done{color:var(--success);background-color:#27ae601a;border:1px solid #27ae6040}.runs__status-pill--done .runs__status-dot{background-color:var(--success)}.runs__status-pill--inprogress{color:var(--warning);background-color:#f39c121a;border:1px solid #f39c1240}.runs__status-pill--inprogress .runs__status-dot{background-color:var(--warning)}.runs__status-pill--idle{color:var(--text-muted);background-color:#ffffff0a;border:1px solid #ffffff14}.runs__status-pill--idle .runs__status-dot{background-color:var(--text-muted)}.runs__progress{align-items:center;gap:var(--space-sm);min-width:140px;display:flex}.runs__progress-track{background-color:#ffffff0d;border-radius:2px;flex:1;height:4px;overflow:hidden}.runs__progress-fill{background-color:var(--warning);height:100%;transition:width var(--transition);border-radius:2px}.runs__progress-fill--done{background-color:var(--success)}.runs__progress-text{font-size:var(--text-xs);color:var(--text-muted);font-variant-numeric:tabular-nums;white-space:nowrap;text-align:right;flex-shrink:0;width:56px}.runs__modal-overlay{padding:var(--space-md);z-index:200;background:#0000008c;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.runs__modal{background:var(--bg-drawer);padding:var(--space-lg);gap:var(--space-md);border:1px solid #ffffff14;border-radius:10px;flex-direction:column;width:100%;max-width:600px;max-height:90vh;display:flex;overflow-y:auto;box-shadow:0 24px 48px #00000073}.runs__modal-title{font-size:var(--text-lg);font-weight:var(--fw-semibold);color:var(--text)}.runs__field{gap:var(--space-xs);flex-direction:column;display:flex}.runs__label{font-size:var(--text-xs);color:var(--text-muted);font-weight:var(--fw-medium);justify-content:space-between;align-items:center;display:flex}.runs__counter{font-family:SF Mono,Menlo,Monaco,Consolas,monospace;font-size:var(--text-xs);color:var(--text-tertiary);border:1px solid var(--border-subtle);background-color:#ffffff0a;border-radius:4px;padding:1px 6px}.runs__suite-tree{gap:var(--space-sm);border:1px solid var(--border-subtle);max-height:320px;padding:var(--space-sm);border-radius:6px;flex-direction:column;display:flex;overflow-y:auto}.runs__suite-block{flex-direction:column;gap:4px;display:flex}.runs__suite-children{gap:var(--space-sm);padding-left:var(--space-md);border-left:1px solid var(--border-subtle);flex-direction:column;margin-left:6px;display:flex}.runs__suite-header{align-items:center;gap:var(--space-sm);font-weight:var(--fw-medium);font-size:var(--text-sm);cursor:pointer;padding:4px 0;display:flex}.runs__suite-count{font-size:var(--text-xs);color:var(--text-muted);border:1px solid var(--border-subtle);font-variant-numeric:tabular-nums;background-color:#ffffff0a;border-radius:4px;margin-left:auto;padding:1px 6px}.runs__case-row{align-items:center;gap:var(--space-sm);font-size:var(--text-sm);color:var(--text);cursor:pointer;padding:3px 0 3px 24px;display:flex}.runs__modal-actions{justify-content:flex-end;gap:var(--space-sm);border-top:1px solid var(--border-subtle);padding-top:var(--space-md);display:flex}@media (width<=768px){.runs__top{flex-direction:column;align-items:stretch}.runs__top-actions{flex-wrap:wrap}.runs__th-progress,.runs__th-num:nth-of-type(4),.runs__td-num:nth-of-type(4),.runs__td-date{display:none}}.edit-run-modal-overlay{padding:var(--space-md);z-index:200;background:#0000008c;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.edit-run-modal{background:var(--bg-drawer);padding:var(--space-lg);gap:var(--space-md);border:1px solid #ffffff14;border-radius:10px;flex-direction:column;width:100%;max-width:520px;max-height:90vh;display:flex;overflow-y:auto;box-shadow:0 24px 48px #00000073}.edit-run-modal__title{font-size:var(--text-lg);font-weight:var(--fw-semibold);color:var(--text)}.edit-run-modal__field{gap:var(--space-xs);flex-direction:column;display:flex}.edit-run-modal__label{font-size:var(--text-xs);color:var(--text-muted);font-weight:var(--fw-medium)}.edit-run-modal__actions{justify-content:flex-end;gap:var(--space-sm);border-top:1px solid var(--border-subtle);padding-top:var(--space-md);display:flex}.manage-run-modal-overlay{padding:var(--space-md);z-index:200;background:#0000008c;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.manage-run-modal{background:var(--bg-drawer);padding:var(--space-lg);gap:var(--space-md);border:1px solid #ffffff14;border-radius:10px;flex-direction:column;width:100%;max-width:680px;max-height:90vh;display:flex;overflow-y:auto;box-shadow:0 24px 48px #00000073}.manage-run-modal__header{flex-direction:column;gap:2px;display:flex}.manage-run-modal__title{font-size:var(--text-lg);font-weight:var(--fw-semibold);color:var(--text)}.manage-run-modal__subtitle{font-size:var(--text-xs);color:var(--text-muted)}.manage-run-modal__field{gap:var(--space-xs);flex-direction:column;display:flex}.manage-run-modal__label{font-size:var(--text-xs);color:var(--text-muted);font-weight:var(--fw-medium);justify-content:space-between;align-items:center;display:flex}.manage-run-modal__counter{font-family:SF Mono,Menlo,Monaco,Consolas,monospace;font-size:var(--text-xs);color:var(--text-tertiary);border:1px solid var(--border-subtle);background-color:#ffffff0a;border-radius:4px;padding:1px 6px}.manage-run-modal__tree{gap:var(--space-sm);border:1px solid var(--border-subtle);max-height:420px;padding:var(--space-sm);border-radius:6px;flex-direction:column;display:flex;overflow-y:auto}.manage-run-modal__suite-block{flex-direction:column;gap:4px;display:flex}.manage-run-modal__children{gap:var(--space-sm);padding-left:var(--space-md);border-left:1px solid var(--border-subtle);flex-direction:column;margin-left:6px;display:flex}.manage-run-modal__suite-header{align-items:center;gap:var(--space-sm);font-weight:var(--fw-medium);font-size:var(--text-sm);padding:4px 0;display:flex}.manage-run-modal__suite-header--locked .manage-run-modal__suite-name{cursor:default;color:var(--text-muted)}.manage-run-modal__suite-name{cursor:pointer}.manage-run-modal__suite-count{font-size:var(--text-xs);color:var(--text-muted);border:1px solid var(--border-subtle);font-variant-numeric:tabular-nums;background-color:#ffffff0a;border-radius:4px;margin-left:auto;padding:1px 6px}.manage-run-modal__case-row{align-items:center;gap:var(--space-sm);font-size:var(--text-sm);color:var(--text);cursor:pointer;transition:background-color var(--transition);border-radius:4px;padding:4px 0 4px 24px;display:flex}.manage-run-modal__case-row:hover{background-color:var(--bg-hover)}.manage-run-modal__case-title{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.manage-run-modal__case-row--locked{cursor:not-allowed;color:var(--text-muted)}.manage-run-modal__case-row--locked:hover{background-color:#0000}.manage-run-modal__check--locked{opacity:.55;pointer-events:none}.manage-run-modal__status-tag{text-transform:uppercase;letter-spacing:.08em;font-size:.65rem;font-weight:var(--fw-semibold);border:1px solid var(--border-subtle);background-color:#ffffff08;border-radius:4px;margin-left:auto;padding:1px 6px}.manage-run-modal__status-tag--passed{color:var(--success);border-color:#27ae604d}.manage-run-modal__status-tag--failed{color:var(--danger);border-color:#e74c3c4d}.manage-run-modal__status-tag--blocked{color:var(--warning);border-color:#f39c124d}.manage-run-modal__status-tag--skipped{color:#b48fd1;border-color:#9b59b64d}.manage-run-modal__empty{color:var(--text-muted);font-size:var(--text-sm);padding:var(--space-sm) 0}.manage-run-modal__loading{padding:var(--space-xl);justify-content:center;display:flex}.manage-run-modal__hint{font-size:var(--text-xs);color:var(--text-muted);padding-left:var(--space-xs)}.manage-run-modal__actions{justify-content:flex-end;gap:var(--space-sm);border-top:1px solid var(--border-subtle);padding-top:var(--space-md);display:flex}.start-validation-modal-overlay{padding:var(--space-md);z-index:200;background:#0000008c;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.start-validation-modal{background:var(--bg-drawer);padding:var(--space-lg);gap:var(--space-md);border:1px solid #ffffff14;border-radius:10px;flex-direction:column;width:100%;max-width:760px;max-height:90vh;display:flex;overflow-y:auto;box-shadow:0 24px 48px #00000073}.start-validation-modal__header{flex-direction:column;gap:2px;display:flex}.start-validation-modal__title{font-size:var(--text-lg);font-weight:var(--fw-semibold);color:var(--text)}.start-validation-modal__subtitle{font-size:var(--text-xs);color:var(--text-muted)}.start-validation-modal__field{gap:var(--space-xs);flex-direction:column;display:flex}.start-validation-modal__label{font-size:var(--text-xs);color:var(--text-muted);font-weight:var(--fw-medium);justify-content:space-between;align-items:center;display:flex}.start-validation-modal__counter{font-family:SF Mono,Menlo,Monaco,Consolas,monospace;font-size:var(--text-xs);color:var(--text-tertiary);border:1px solid var(--border-subtle);background-color:#ffffff0a;border-radius:4px;padding:1px 6px}.start-validation-modal__tree{gap:var(--space-sm);border:1px solid var(--border-subtle);max-height:380px;padding:var(--space-sm);border-radius:6px;flex-direction:column;display:flex;overflow-y:auto}.start-validation-modal__suite-block{flex-direction:column;gap:4px;display:flex}.start-validation-modal__children{gap:var(--space-sm);padding-left:var(--space-md);border-left:1px solid var(--border-subtle);flex-direction:column;margin-left:6px;display:flex}.start-validation-modal__suite-header{align-items:center;gap:var(--space-sm);font-weight:var(--fw-medium);font-size:var(--text-sm);padding:4px 0;display:flex}.start-validation-modal__suite-name{cursor:pointer}.start-validation-modal__suite-count{font-size:var(--text-xs);color:var(--text-muted);border:1px solid var(--border-subtle);font-variant-numeric:tabular-nums;background-color:#ffffff0a;border-radius:4px;margin-left:auto;padding:1px 6px}.start-validation-modal__case-row{align-items:center;gap:var(--space-sm);font-size:var(--text-sm);color:var(--text);cursor:pointer;transition:background-color var(--transition);border-radius:4px;min-width:0;padding:4px 8px 4px 24px;display:flex}.start-validation-modal__case-row:hover{background-color:var(--bg-hover)}.start-validation-modal__case-code{font-family:SF Mono,Menlo,Monaco,Consolas,monospace;font-size:var(--text-xs);color:var(--text-tertiary);white-space:nowrap;flex-shrink:0}.start-validation-modal__case-title{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.start-validation-modal__hint{font-size:var(--text-xs);color:var(--text-muted);padding-left:var(--space-xs)}.start-validation-modal__empty{color:var(--text-muted);font-size:var(--text-sm);padding:var(--space-sm) 0}.start-validation-modal__actions{justify-content:flex-end;gap:var(--space-sm);border-top:1px solid var(--border-subtle);padding-top:var(--space-md);display:flex}.unsaved-modal-overlay{padding:var(--space-md);z-index:300;background:#0009;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.unsaved-modal{background:var(--bg-drawer);border:1px solid var(--border-subtle);padding:var(--space-xl);border-radius:12px;width:100%;max-width:420px;position:relative;box-shadow:0 16px 48px #00000080}.unsaved-modal__close{top:var(--space-md);right:var(--space-md);width:28px;height:28px;color:var(--text-tertiary);cursor:pointer;transition:color var(--transition), background-color var(--transition);background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;display:inline-flex;position:absolute}.unsaved-modal__close:hover:not(:disabled){color:var(--text);background-color:var(--bg-hover)}.unsaved-modal__close:focus-visible{color:var(--text);box-shadow:0 0 0 2px var(--input-focus-ring);outline:none}.unsaved-modal__close:disabled{opacity:.4;cursor:default}.unsaved-modal__title{align-items:center;gap:var(--space-sm);padding-right:var(--space-xl);font-size:var(--text-lg);font-weight:var(--fw-semibold);color:var(--text);letter-spacing:-.01em;display:flex}.unsaved-modal__title-icon{color:var(--warning);flex-shrink:0}.unsaved-modal__desc{margin-top:var(--space-sm);font-size:var(--text-md);color:var(--text-muted);line-height:1.6}.unsaved-modal__count{font-weight:var(--fw-semibold);color:var(--text);font-variant-numeric:tabular-nums}.unsaved-modal__actions{justify-content:flex-end;align-items:center;gap:var(--space-sm);margin-top:var(--space-xl);display:flex}.run-detail{gap:var(--space-md);transition:padding-right var(--transition);min-height:calc(100vh - var(--navbar-height) - var(--space-lg) * 2);flex-direction:column;padding-right:0;display:flex}.run-detail--with-panel{padding-right:var(--run-panel-width,460px)}.run-detail__top{justify-content:space-between;align-items:center;gap:var(--space-sm) var(--space-md);padding-bottom:var(--space-sm);border-bottom:1px solid var(--border-subtle);flex-wrap:wrap;display:flex}.run-detail__top-left{align-items:center;gap:var(--space-sm);flex:320px;min-width:0;display:flex}.run-detail__top-titles{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.run-detail__title-row{align-items:center;gap:var(--space-sm);min-width:0;display:flex}.run-detail__title-row .icon-btn{flex-shrink:0}.run-detail__title{font-size:var(--text-xl);font-weight:var(--fw-semibold);line-height:var(--lh-tight);color:var(--text);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.run-detail__top-meta{font-size:var(--text-xs);color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.run-detail__top-right{align-items:center;gap:var(--space-sm);flex-wrap:wrap;flex-shrink:0;margin-left:auto;display:flex}.run-detail__top-left>.icon-btn{flex-shrink:0}.run-detail__status-tag{border-radius:var(--radius-badge);font-size:var(--text-xs);font-weight:var(--fw-semibold);white-space:nowrap;flex-shrink:0;align-items:center;padding:2px 10px;display:inline-flex}.run-detail__status-tag--inprogress{color:var(--warning);background-color:#f39c121f}.run-detail__status-tag--done{color:var(--success);background-color:#27ae6024}.run-detail__progress-bar{align-items:center;gap:var(--space-md);display:flex}.run-detail__progress-track{background-color:#ffffff0f;border-radius:3px;flex:1;height:6px;overflow:hidden}.run-detail__progress-fill{background:linear-gradient(90deg, var(--primary), var(--success));height:100%;transition:width var(--transition);border-radius:3px}.run-detail__progress-label{font-size:var(--text-xs);color:var(--text-muted);font-variant-numeric:tabular-nums;white-space:nowrap}.run-detail__chips{gap:var(--space-sm);flex-wrap:wrap;display:flex}.run-detail__chip{border:1px solid var(--border-subtle);border-radius:var(--radius-badge);font-size:var(--text-xs);background-color:#ffffff08;align-items:baseline;gap:6px;padding:4px 12px;display:inline-flex}.run-detail__chip-value{font-size:var(--text-md);font-weight:var(--fw-semibold);color:var(--text);font-variant-numeric:tabular-nums}.run-detail__chip-label{color:var(--text-muted);letter-spacing:.02em}.run-detail__chip--success .run-detail__chip-value{color:var(--success)}.run-detail__chip--danger .run-detail__chip-value{color:var(--danger)}.run-detail__chip--warning .run-detail__chip-value{color:var(--warning)}.run-detail__chip--primary .run-detail__chip-value{color:var(--primary)}.run-detail__chip--muted .run-detail__chip-value{color:var(--text-muted)}.run-detail__chip--filter{cursor:pointer;transition:border-color var(--transition), background-color var(--transition);font-family:inherit}.run-detail__chip--filter:focus-visible{border-color:var(--primary);box-shadow:0 0 0 2px var(--input-focus-ring);outline:none}.run-detail__chip--filter:disabled{opacity:.5;cursor:default}.run-detail__chip--active{border-color:var(--primary);background-color:#ffffff12}.run-detail__chip--active .run-detail__chip-label{color:var(--text)}.run-detail__tabs{gap:var(--space-xs);border-bottom:1px solid var(--border-subtle);display:flex}.run-detail__tab{appearance:none;padding:var(--space-sm) var(--space-md);color:var(--text-muted);font-size:var(--text-sm);font-weight:var(--fw-medium);cursor:pointer;transition:color var(--transition), border-color var(--transition);background:0 0;border:none;border-bottom:2px solid #0000}.run-detail__tab:hover{color:var(--text)}.run-detail__tab--active{color:var(--primary);border-bottom-color:var(--primary);font-weight:var(--fw-semibold)}.run-detail__user-metrics{gap:var(--space-sm);padding:var(--space-md);border:1px solid var(--border-subtle);border-radius:var(--radius-card);background:#ffffff06;flex-direction:column;display:flex}.run-detail__user-metrics-header{justify-content:space-between;align-items:flex-start;gap:var(--space-md);display:flex}.run-detail__user-metrics-title{font-size:var(--text-sm);font-weight:var(--fw-semibold);color:var(--text);margin:0}.run-detail__user-metrics-subtitle{color:var(--text-muted);font-size:var(--text-xs);margin:2px 0 0}.run-detail__user-metrics-total{border-radius:var(--radius-badge);color:var(--primary);font-size:var(--text-xs);white-space:nowrap;background:#4a9eff14;align-items:baseline;gap:6px;padding:4px 10px;display:inline-flex}.run-detail__user-metrics-total strong{font-size:var(--text-md);font-weight:var(--fw-semibold);font-variant-numeric:tabular-nums}.run-detail__user-metrics-empty{color:var(--text-muted);font-size:var(--text-sm);margin:0}.run-detail__user-metrics-table-wrap{border:1px solid var(--border-subtle);border-radius:var(--radius-sm);overflow:auto}.run-detail__user-metrics-table{border-collapse:collapse;width:100%;font-size:var(--text-sm)}.run-detail__user-metrics-table th{text-align:left;font-size:var(--text-xs);font-weight:var(--fw-semibold);color:var(--text-muted);border-bottom:1px solid var(--border-subtle);white-space:nowrap;background:#ffffff08;padding:10px 12px}.run-detail__user-metrics-th-num,.run-detail__user-metrics-td-num{text-align:right;font-variant-numeric:tabular-nums}.run-detail__user-metrics-td-num{font-weight:var(--fw-semibold);color:var(--text)}.run-detail__user-metrics-table td{border-bottom:1px solid var(--border-subtle);vertical-align:middle;padding:10px 12px}.run-detail__user-metrics-row:last-child td{border-bottom:none}.run-detail__user-metrics-row--current{background:#4a9eff0f}.run-detail__user-metric-user{align-items:center;gap:var(--space-sm);min-width:0;display:inline-flex}.run-detail__user-metric-avatar{width:28px;height:28px;color:var(--text);font-size:var(--text-xs);font-weight:var(--fw-semibold);background:#ffffff12;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.run-detail__user-metrics-row--current .run-detail__user-metric-avatar{color:var(--primary);background:#4a9eff29}.run-detail__user-metric-name{color:var(--text);font-size:var(--text-sm);font-weight:var(--fw-semibold);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.run-detail__user-metric-you{font-weight:var(--fw-medium);color:var(--primary)}.run-detail__user-metric-email{color:var(--text-muted);font-size:var(--text-sm);text-overflow:ellipsis;white-space:nowrap;max-width:320px;overflow:hidden}.run-detail__validation-banner{align-items:center;gap:var(--space-sm);padding:6px var(--space-md);border:1px solid #4a9eff40;border-left:3px solid var(--primary);color:var(--primary);font-size:var(--text-sm);background-color:#4a9eff14;border-radius:6px;display:flex}.run-detail__validation-banner-text{font-weight:var(--fw-medium);flex:1}.run-detail__validation-banner-clear{color:var(--primary);border-radius:var(--radius-badge);font-size:var(--text-xs);font-weight:var(--fw-medium);cursor:pointer;font-family:var(--font);transition:background-color var(--transition);background:0 0;border:1px solid #4a9eff59;padding:2px 10px}.run-detail__validation-banner-clear:hover{background-color:#4a9eff1f}.run-detail__search{align-items:center;gap:var(--space-sm);margin-bottom:var(--space-sm);display:flex}.run-detail__search .input-wrapper{flex:1;min-width:0}.run-detail__search-meta{font-size:var(--text-xs);color:var(--text-muted);white-space:nowrap}.run-detail__alert{align-items:center;gap:var(--space-sm);padding:var(--space-xs) var(--space-md);font-size:var(--text-sm);border-radius:6px;display:flex}.run-detail__alert--error{color:var(--danger);background:#e74c3c14;border:1px solid #e74c3c40}.run-detail__tree{flex-direction:column;display:flex}.run-detail__empty{padding:var(--space-xl);text-align:center;color:var(--text-muted);font-size:var(--text-sm)}.run-detail__suite{flex-direction:column;display:flex}.run-detail__suite-header{align-items:center;gap:var(--space-sm);color:var(--text);cursor:pointer;text-align:left;width:100%;font-family:var(--font);transition:background-color var(--transition);background:0 0;border:none;border-radius:6px;padding:8px 10px;display:flex}.run-detail__suite-header:hover{background-color:var(--bg-hover)}.run-detail--skeleton .run-detail__suite-header{cursor:default;pointer-events:none}.run-detail--skeleton .run-detail__suite-header:hover{background-color:#0000}.run-detail__suite-chevron{width:16px;height:16px;color:var(--text-muted);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.run-detail__suite-name{font-size:var(--text-md);font-weight:var(--fw-semibold);color:var(--text);text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.run-detail__suite-header--depth-0 .run-detail__suite-name{font-size:var(--text-md)}.run-detail__suite-header--depth-1 .run-detail__suite-name{font-size:var(--text-sm);font-weight:var(--fw-medium)}.run-detail__suite-header--depth-2 .run-detail__suite-name,.run-detail__suite-header--depth-3 .run-detail__suite-name{font-size:var(--text-sm);font-weight:var(--fw-medium);color:var(--text-muted)}.run-detail__suite-summary{font-size:var(--text-xs);color:var(--text-muted);flex-shrink:0;align-items:center;gap:5px;display:inline-flex}.run-detail__suite-summary-num{font-variant-numeric:tabular-nums;font-weight:var(--fw-medium)}.run-detail__dot{border-radius:50%;width:6px;height:6px;display:inline-block}.run-detail__dot--success{background-color:var(--success)}.run-detail__dot--danger{background-color:var(--danger)}.run-detail__dot--warning{background-color:var(--warning)}.run-detail__suite-children{padding-left:18px;position:relative}.run-detail__suite-children:before{content:"";border-left:1px solid var(--tree-guide);pointer-events:none;position:absolute;top:0;bottom:6px;left:14px}.run-detail__row{align-items:center;gap:var(--space-sm);width:100%;color:var(--text);cursor:pointer;text-align:left;font-family:var(--font);font-size:var(--text-sm);min-height:var(--row-sm);transition:background-color var(--transition);background:0 0;border:none;border-radius:6px;padding:6px 10px;display:flex;position:relative}.run-detail__row:hover{background-color:var(--bg-hover)}.run-detail__row--skeleton{cursor:default;pointer-events:none}.run-detail__row--skeleton:hover{background-color:#0000}.run-detail__row--skeleton:before{display:none}.run-detail__row--selected{background-color:var(--bg-selected)}.run-detail__row:before{content:"";background-color:var(--primary);opacity:0;width:2px;transition:opacity var(--transition);border-radius:0 2px 2px 0;position:absolute;top:4px;bottom:4px;left:-10px}.run-detail__row--selected:before{opacity:1}.run-detail__row-code{font-family:SF Mono,Menlo,Monaco,Consolas,monospace;font-size:var(--text-xs);color:var(--text-tertiary);flex-shrink:0;min-width:60px}.run-detail__row-title{text-overflow:ellipsis;white-space:nowrap;color:var(--text);flex:1;overflow:hidden}.run-detail__row-executor{font-size:var(--text-xs);color:var(--text-muted);text-overflow:ellipsis;flex-shrink:0;max-width:120px;overflow:hidden}.run-detail__row-attempts{font-size:var(--text-xs);font-weight:var(--fw-semibold);color:var(--text-muted);border-radius:var(--radius-badge);border:1px solid var(--border-subtle);font-variant-numeric:tabular-nums;background-color:#ffffff0a;flex-shrink:0;padding:1px 6px}.run-detail__row--dirty{background-color:#f39c120f}.run-detail__row--dirty:hover{background-color:#f39c121a}.run-detail__row-dirty-dot{background-color:var(--warning);width:6px;height:6px;box-shadow:0 0 0 2px var(--bg);border-radius:50%;position:absolute;top:50%;left:2px;transform:translateY(-50%)}.run-detail__row--invalid{background-color:#e74c3c0f}.run-detail__row--invalid:hover{background-color:#e74c3c1a}.run-detail__row-invalid-icon{color:var(--danger);flex-shrink:0}.run-detail__panel-dirty-tag{font-size:var(--text-xs);font-weight:var(--fw-medium);color:var(--warning);border-radius:var(--radius-badge);white-space:nowrap;background-color:#f39c121a;border:1px solid #f39c1240;padding:2px 8px}.run-detail__panel-section-count{color:var(--text-tertiary);font-variant-numeric:tabular-nums;background-color:#ffffff0d;border-radius:4px;margin-left:6px;padding:1px 6px;font-size:.65rem}.run-detail__history-loading,.run-detail__history-empty{align-items:center;gap:var(--space-sm);padding:var(--space-sm) 0;font-size:var(--text-xs);color:var(--text-muted);display:flex}.run-detail__history-list{gap:var(--space-sm);flex-direction:column;margin:0;padding:0;list-style:none;display:flex;position:relative}.run-detail__history-list:before{content:"";background-color:var(--tree-guide);width:1px;position:absolute;top:14px;bottom:14px;left:13px}.run-detail__history-item{align-items:flex-start;gap:var(--space-sm);display:flex;position:relative}.run-detail__history-marker{background-color:var(--surface);border:1px solid var(--border-subtle);width:26px;height:26px;color:var(--text-muted);font-family:SF Mono,Menlo,Monaco,Consolas,monospace;font-size:.7rem;font-weight:var(--fw-semibold);z-index:1;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex;position:relative}.run-detail__history-item--current .run-detail__history-marker{background-color:var(--bg-selected-strong);border-color:var(--primary);color:var(--primary)}.run-detail__history-marker--pending{color:var(--warning);background-color:#f39c121f;border-color:#f39c1266}.run-detail__history-body{flex-direction:column;flex:1;gap:4px;min-width:0;padding-bottom:2px;display:flex}.run-detail__history-top{align-items:center;gap:var(--space-sm);flex-wrap:wrap;display:flex}.run-detail__history-time{font-size:var(--text-xs);color:var(--text-muted);font-variant-numeric:tabular-nums;margin-left:auto}.run-detail__history-meta{align-items:center;gap:var(--space-sm);font-size:var(--text-xs);color:var(--text-muted);display:flex}.run-detail__history-tag{border-radius:var(--radius-badge);font-size:var(--text-xs);font-weight:var(--fw-medium);white-space:nowrap;align-items:center;padding:1px 8px;display:inline-flex}.run-detail__history-tag--current{color:var(--primary);background-color:#4a9eff1a;border:1px solid #4a9eff40}.run-detail__history-tag--pending{color:var(--warning);background-color:#f39c121a;border:1px solid #f39c1240}.run-detail__history-notes{background-color:var(--input-bg);border:1px solid var(--border-subtle);border-radius:var(--radius-input);font-size:var(--text-xs);color:var(--text);white-space:pre-wrap;margin:0;padding:6px 10px}.run-detail__status-badge{border-radius:var(--radius-badge);font-size:.7rem;font-weight:var(--fw-medium);letter-spacing:.02em;flex-shrink:0;justify-content:flex-start;align-items:center;gap:5px;min-width:88px;padding:2px 8px;display:inline-flex}.run-detail__status-dot{border-radius:50%;width:5px;height:5px;display:inline-block}.run-detail__status-badge--not_run{color:var(--text-muted);background-color:#ffffff0a;border:1px solid #ffffff14}.run-detail__status-badge--not_run .run-detail__status-dot{background-color:var(--text-muted)}.run-detail__status-badge--passed{color:var(--success);background-color:#27ae601a;border:1px solid #27ae6040}.run-detail__status-badge--passed .run-detail__status-dot{background-color:var(--success)}.run-detail__status-badge--failed{color:var(--danger);background-color:#e74c3c1a;border:1px solid #e74c3c40}.run-detail__status-badge--failed .run-detail__status-dot{background-color:var(--danger)}.run-detail__status-badge--blocked{color:var(--warning);background-color:#f39c121a;border:1px solid #f39c1240}.run-detail__status-badge--blocked .run-detail__status-dot{background-color:var(--warning)}.run-detail__status-badge--skipped{color:#b48fd1;background-color:#9b59b614;border:1px solid #9b59b638}.run-detail__status-badge--skipped .run-detail__status-dot{background-color:#b48fd1}.run-detail__loading{padding:var(--space-2xl);justify-content:center;display:flex}.run-detail__panel{top:var(--navbar-height);width:var(--run-panel-width,460px);background-color:var(--bg-drawer);z-index:80;border-left:1px solid #ffffff14;flex-direction:column;animation:.18s ease-out panel-slide;display:flex;position:fixed;bottom:0;right:0;box-shadow:-16px 0 32px #00000052}@keyframes panel-slide{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}.run-detail__panel--resizing{-webkit-user-select:none;user-select:none;will-change:width;animation:none}body.run-panel-resizing .run-detail--with-panel{transition:none}.run-detail__panel--resizing *{pointer-events:none}.run-detail__panel--resizing .run-detail__panel-resize-handle{pointer-events:auto}.run-detail__panel-resize-handle{cursor:col-resize;z-index:2;touch-action:none;width:6px;position:absolute;top:0;bottom:0;left:-3px}.run-detail__panel-resize-handle:after{content:"";background-color:#0000;width:2px;transition:background-color .15s;position:absolute;top:0;bottom:0;left:50%;transform:translate(-50%)}.run-detail__panel-resize-handle:hover:after,.run-detail__panel-resize-handle:focus-visible:after,.run-detail__panel--resizing .run-detail__panel-resize-handle:after{background-color:var(--primary)}.run-detail__panel-resize-handle:focus-visible{outline:none}.run-detail__panel-header{justify-content:space-between;align-items:center;gap:var(--space-sm);padding:var(--space-md) var(--space-lg);border-bottom:1px solid #ffffff14;flex-shrink:0;display:flex}.run-detail__panel-meta{align-items:center;gap:var(--space-sm);min-width:0;font-size:var(--text-xs);color:var(--text-muted);display:flex}.run-detail__panel-code{color:var(--text-tertiary);letter-spacing:.02em;background-color:#ffffff0a;border:1px solid #ffffff14;border-radius:4px;flex-shrink:0;padding:2px 7px;font-family:SF Mono,Menlo,Monaco,Consolas,monospace}.run-detail__panel-breadcrumb{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.run-detail__panel-header-actions{flex-shrink:0;align-items:center;gap:2px;display:flex}.run-detail__panel-content{flex-direction:column;flex:1;min-height:0;animation:.16s ease-out panel-content-swap;display:flex}@keyframes panel-content-swap{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.run-detail__panel-content{animation:none}}.run-detail__panel-title-row{justify-content:space-between;align-items:flex-start;gap:var(--space-md);padding:var(--space-md) var(--space-lg) 0;flex-shrink:0;display:flex}.run-detail__panel-title{font-size:var(--text-lg);font-weight:var(--fw-semibold);color:var(--text);line-height:var(--lh-tight);word-break:break-word;flex:1;min-width:0}.run-detail__panel-body{padding:var(--space-md) var(--space-lg) var(--space-xl);gap:var(--space-lg);flex-direction:column;flex:1;display:flex;overflow-y:auto}.run-detail__panel-body::-webkit-scrollbar{width:8px}.run-detail__panel-body::-webkit-scrollbar-track{background:0 0}.run-detail__panel-body::-webkit-scrollbar-thumb{background-color:#ffffff14;border-radius:4px}.run-detail__panel-body::-webkit-scrollbar-thumb:hover{background-color:#ffffff29}.run-detail__panel-section{gap:var(--space-sm);flex-direction:column;display:flex}.run-detail__panel-section-label{text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted);font-size:.7rem;font-weight:var(--fw-semibold);align-items:center;gap:6px;display:inline-flex}.run-detail__panel-helper{font-size:var(--text-xs);color:var(--text-muted);margin-top:4px}.run-detail__status-grid{gap:var(--space-sm);grid-template-columns:repeat(2,1fr);display:grid}.run-detail__status-btn{align-items:center;gap:var(--space-sm);border:1px solid var(--border-subtle);color:var(--text);font-family:var(--font);font-size:var(--text-sm);font-weight:var(--fw-medium);cursor:pointer;text-align:left;transition:background-color var(--transition), border-color var(--transition), color var(--transition);background-color:#ffffff08;border-radius:8px;padding:10px 12px;display:flex;position:relative}.run-detail__status-btn:hover:not(:disabled){background-color:#ffffff0f}.run-detail__status-btn:disabled{opacity:var(--opacity-disabled);cursor:not-allowed}.run-detail__kbd{color:var(--text-muted);background-color:#ffffff0f;border:1px solid #ffffff1a;border-radius:3px;margin-left:auto;padding:1px 6px;font-family:SF Mono,Menlo,Monaco,Consolas,monospace;font-size:.7rem}.run-detail__status-btn--success{color:var(--success)}.run-detail__status-btn--success:hover:not(:disabled){background-color:#27ae601a;border-color:#27ae6059}.run-detail__status-btn--success.run-detail__status-btn--active{background-color:#27ae6024;border-color:#27ae6073}.run-detail__status-btn--danger{color:var(--danger)}.run-detail__status-btn--danger:hover:not(:disabled){background-color:#e74c3c1a;border-color:#e74c3c59}.run-detail__status-btn--danger.run-detail__status-btn--active{background-color:#e74c3c24;border-color:#e74c3c73}.run-detail__status-btn--warning{color:var(--warning)}.run-detail__status-btn--warning:hover:not(:disabled){background-color:#f39c121a;border-color:#f39c1259}.run-detail__status-btn--warning.run-detail__status-btn--active{background-color:#f39c1224;border-color:#f39c1273}.run-detail__status-btn--neutral{color:#b48fd1}.run-detail__status-btn--neutral:hover:not(:disabled){background-color:#9b59b61a;border-color:#9b59b659}.run-detail__status-btn--neutral.run-detail__status-btn--active{background-color:#9b59b624;border-color:#9b59b673}.run-detail__notes{background-color:var(--input-bg);width:100%;color:var(--text);border:1px solid var(--input-border);padding:var(--space-sm) var(--space-md);font-size:var(--text-sm);font-family:var(--font);resize:vertical;min-height:60px;line-height:var(--lh-normal);transition:border-color var(--transition);border-radius:6px}.run-detail__notes:focus{border-color:var(--primary);box-shadow:0 0 0 2px var(--input-focus-ring);outline:none}.run-detail__notes--invalid{border-color:var(--danger)}.run-detail__notes--invalid:focus{border-color:var(--danger);box-shadow:0 0 0 2px #e74c3c33}.run-detail__notes::placeholder{color:var(--text-muted)}.run-detail__notes:disabled{opacity:.7;cursor:not-allowed}.run-detail__notes-error{font-size:var(--text-xs);color:var(--danger);margin:6px 0 0}.run-detail__panel-section-required{color:var(--danger)}.run-detail__defect-list{gap:var(--space-sm);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.run-detail__defect-item{padding:var(--space-sm);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:var(--surface-raised,var(--surface));flex-direction:column;gap:6px;display:flex}.run-detail__defect-main{flex-wrap:wrap;align-items:center;gap:6px 10px;min-width:0;display:flex}.run-detail__defect-link{font-size:var(--text-sm);font-weight:var(--fw-semibold);color:var(--accent);align-items:center;gap:4px;text-decoration:none;display:inline-flex}.run-detail__defect-link:hover{text-decoration:underline}.run-detail__defect-title{min-width:0;font-size:var(--text-sm);color:var(--text);text-overflow:ellipsis;white-space:nowrap;flex:120px;overflow:hidden}.run-detail__defect-state{font-size:var(--text-xs);font-weight:var(--fw-medium);color:var(--warning,#b45309);background:color-mix(in srgb, var(--warning,#b45309) 12%, transparent);border-radius:var(--radius-sm);padding:2px 8px}.run-detail__defect-state--closed{color:var(--success,#15803d);background:color-mix(in srgb, var(--success,#15803d) 12%, transparent)}.run-detail__defect-actions{gap:var(--space-sm);display:flex}.run-detail__defect-action{font-size:var(--text-xs);color:var(--text-muted);cursor:pointer;background:0 0;border:none;padding:0}.run-detail__defect-action:hover:not(:disabled){color:var(--text);text-decoration:underline}.run-detail__defect-action--active{color:var(--accent);font-weight:var(--fw-medium)}.run-detail__defect-action--danger:hover:not(:disabled){color:var(--danger)}.run-detail__defect-action:disabled{opacity:.5;cursor:not-allowed}.run-detail__defect-form{margin-top:var(--space-sm);flex-direction:column;gap:6px;display:flex}.run-detail__defect-input-row{gap:var(--space-sm);align-items:center;display:flex}.run-detail__defect-input{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);min-width:0;height:32px;color:var(--text);font-size:var(--text-sm);flex:1;padding:0 10px}.run-detail__defect-submit{height:32px;font-size:var(--text-sm);flex-shrink:0;padding:0 14px}.run-detail__defect-input:focus{border-color:var(--accent);outline:none}.run-detail__case-block{gap:var(--space-md);flex-direction:column;display:flex}.run-detail__case-field-wrap{flex-direction:column;gap:4px;display:flex}.run-detail__case-field-label{font-size:var(--text-xs);color:var(--text-muted);font-weight:var(--fw-medium)}.run-detail__case-field{font-size:var(--text-sm);line-height:var(--lh-relaxed);color:var(--text);word-break:break-word}.run-detail__case-field--mono{font-family:SF Mono,Menlo,Monaco,Consolas,monospace;font-size:var(--text-xs);padding:var(--space-sm) var(--space-md);background-color:#ffffff06;border:1px solid #ffffff0f;border-radius:6px}.run-detail__case-field--highlight{padding:var(--space-sm) var(--space-md);border:1px solid #4a9eff2e;border-left:2px solid var(--primary);background-color:#4a9eff0f;border-radius:6px}.run-detail__case-empty{color:var(--text-muted);font-style:italic;font-size:var(--text-sm);opacity:.7}.run-detail__case-loading{align-items:center;gap:var(--space-sm);color:var(--text-muted);font-size:var(--text-sm);display:flex}@media (width<=1100px){.run-detail--with-panel{padding-right:0}.run-detail__panel{z-index:200;width:min(420px,100vw)}}@media (width<=700px){.run-detail__panel{width:100vw;top:var(--navbar-height);border-left:none}.run-detail__panel-resize-handle{display:none}.run-detail__top{flex-wrap:wrap}.run-detail__status-grid{grid-template-columns:1fr}}.defects{gap:var(--space-md);flex-direction:column;display:flex}.defects__top{justify-content:space-between;align-items:flex-start;gap:var(--space-md);padding-bottom:var(--space-sm);border-bottom:1px solid var(--border-subtle);display:flex}.defects__top-titles{flex-direction:column;gap:2px;min-width:0;display:flex}.defects__title{align-items:center;gap:var(--space-sm);font-size:var(--text-xl);font-weight:var(--fw-semibold);line-height:var(--lh-tight);color:var(--text);display:flex}.defects__subtitle{font-size:var(--text-xs);color:var(--text-muted)}.defects__toolbar{align-items:center;gap:var(--space-sm);border:1px solid var(--border-subtle);border-radius:calc(var(--radius-btn) + 4px);background-color:#ffffff05;padding:4px;display:inline-flex}.defects__toolbar>.btn{border-radius:var(--radius-btn);height:40px;font-size:var(--text-sm);font-weight:var(--fw-semibold);padding:0 1rem}.defects__toolbar-divider{background-color:var(--border-subtle);width:1px;height:22px;margin:0}.defects__chips{gap:var(--space-sm);flex-wrap:wrap;display:flex}.defects__chip{border-radius:var(--radius-sm);border:1px solid var(--border-subtle);background:var(--surface);align-items:baseline;gap:8px;padding:8px 12px;display:inline-flex}.defects__chip--clickable{cursor:pointer;font:inherit}.defects__chip--active{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.defects__chip-value{font-size:var(--text-lg);font-weight:var(--fw-semibold);color:var(--text)}.defects__chip-label{font-size:var(--text-xs);color:var(--text-muted)}.defects__chip--warning .defects__chip-value{color:var(--warning,#b45309)}.defects__chip--success .defects__chip-value{color:var(--success,#15803d)}.defects__chip--danger .defects__chip-value{color:var(--danger)}.defects__tabs{border-bottom:1px solid var(--border-subtle);gap:4px;display:flex}.defects__tab{font-size:var(--text-sm);color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;padding:8px 14px}.defects__tab--active{color:var(--text);font-weight:var(--fw-medium);border-bottom-color:var(--accent)}.defects__empty{justify-content:center;align-items:center;gap:var(--space-sm);color:var(--text-muted);text-align:center;flex-direction:column;padding:48px 24px;display:flex}.defects__empty h2{font-size:var(--text-lg);color:var(--text);margin:0}.defects__empty p{font-size:var(--text-sm);max-width:420px;margin:0}.defects__table-wrap{border:1px solid var(--border-subtle);border-radius:var(--radius-md);overflow:auto}.defects__table{border-collapse:collapse;width:100%;font-size:var(--text-sm)}.defects__table th{text-align:left;font-size:var(--text-xs);font-weight:var(--fw-semibold);color:var(--text-muted);background:var(--surface-raised,var(--surface));border-bottom:1px solid var(--border-subtle);white-space:nowrap;padding:10px 12px}.defects__table td{border-bottom:1px solid var(--border-subtle);vertical-align:top;padding:12px}.defects__row:last-child td{border-bottom:none}.defects__bug-cell{flex-direction:column;gap:2px;min-width:160px;display:flex}.defects__bug-link{font-weight:var(--fw-semibold);color:var(--accent);align-items:center;gap:4px;text-decoration:none;display:inline-flex}.defects__bug-link:hover{text-decoration:underline}.defects__bug-title{color:var(--text);text-overflow:ellipsis;white-space:nowrap;max-width:280px;overflow:hidden}.defects__ado-state{font-size:var(--text-xs);font-weight:var(--fw-medium);border-radius:var(--radius-sm);color:var(--warning,#b45309);background:color-mix(in srgb, var(--warning,#b45309) 12%, transparent);white-space:nowrap;padding:2px 8px;display:inline-block}.defects__ado-state--closed{color:var(--success,#15803d);background:color-mix(in srgb, var(--success,#15803d) 12%, transparent)}.defects__cases{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.defects__case{flex-wrap:wrap;align-items:center;gap:6px 10px;display:flex}.defects__case-code{font:inherit;font-weight:var(--fw-semibold);color:var(--accent);cursor:pointer;background:0 0;border:none;padding:0}.defects__case-code:hover{text-decoration:underline}.defects__case-title{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;max-width:240px;overflow:hidden}.defects__case--run{min-height:24px}.defects__run-link{font-size:var(--text-sm);font-weight:var(--fw-medium);color:var(--accent);text-decoration:none}.defects__run-link:hover{text-decoration:underline}.defects__run-empty{font-size:var(--text-sm);color:var(--text-muted)}.defects__status{font-size:var(--text-xs);font-weight:var(--fw-medium);border-radius:var(--radius-sm);padding:2px 8px}.defects__status--passed{color:var(--success,#15803d);background:color-mix(in srgb, var(--success,#15803d) 12%, transparent)}.defects__status--failed{color:var(--danger);background:color-mix(in srgb, var(--danger) 12%, transparent)}.defects__status--blocked{color:var(--warning,#b45309);background:color-mix(in srgb, var(--warning,#b45309) 12%, transparent)}.defects__status--skipped,.defects__status--muted{color:var(--text-muted);background:var(--surface-raised,var(--border-subtle))}.defects__retest-tag{font-size:var(--text-xs);font-weight:var(--fw-semibold);color:var(--danger);border:1px solid color-mix(in srgb, var(--danger) 40%, transparent);border-radius:var(--radius-sm);padding:1px 6px}.defects__bucket{font-size:var(--text-xs);font-weight:var(--fw-medium);white-space:nowrap}.defects__bucket--done{color:var(--success,#15803d)}.defects__bucket--banner{border-radius:var(--radius-sm);color:var(--warning,#b45309);background:color-mix(in srgb, var(--warning,#b45309) 12%, transparent);border:1px solid color-mix(in srgb, var(--warning,#b45309) 30%, transparent);align-items:center;padding:2px 8px;display:inline-flex}.defects__bucket--pending{color:var(--text-muted)}@media (width<=800px){.defects__top{flex-direction:column}.defects__toolbar{flex-wrap:wrap;width:100%}}.defects__person{flex-direction:column;gap:2px;min-width:0;display:flex}.defects__person-name{font-size:var(--text-sm);color:var(--text);text-overflow:ellipsis;white-space:nowrap;max-width:200px;overflow:hidden}.defects__person-email{font-size:var(--text-xs);color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;max-width:200px;overflow:hidden}.defects__person-empty{font-size:var(--text-sm);color:var(--text-muted)}.case-busca{justify-content:center;align-items:center;gap:8px;margin-bottom:14px;display:flex}.case-busca__label{color:var(--case-label);font-size:11px}.case-busca__input{width:240px}.case-table-wrapper{border:1px solid var(--case-border);overflow-x:auto}.case-table{border-collapse:collapse;white-space:nowrap;width:100%;font-size:11px}.case-table th,.case-table td{border:1px solid var(--case-border);text-align:left;padding:4px 8px}.case-table th{color:var(--case-label);background:#f1f1f1;font-weight:700}.case-table__row:nth-child(2n){background:#fafafa}.case-table__row--editing{background:#fff6d6}.case-table__empty{color:var(--case-disabled-text);text-align:center;padding:14px 8px}.case-table__actions{gap:10px;display:flex}.case-legacy{--case-bg:#fff;--case-border:#c8c8c8;--case-text:#333;--case-label:#444;--case-input-bg:#fff;--case-input-border:#a9a9a9;--case-button-bg:#f1f1f1;--case-disabled-bg:#ebebeb;--case-disabled-text:#8a8a8a;background:var(--case-bg);min-height:100vh;color:var(--case-text);padding:16px 24px 48px;font-family:Verdana,Geneva,Tahoma,sans-serif;font-size:12px;line-height:1.5}.case-title{text-align:center;letter-spacing:.5px;margin:8px 0 20px;font-size:15px;font-weight:700}.case-fieldset{border:1px solid var(--case-border);border-radius:0;margin-bottom:18px;padding:12px 16px 16px}.case-fieldset>legend{color:var(--case-label);padding:0 6px;font-size:11px}.case-filtro{flex-direction:column;gap:6px;margin-bottom:12px;display:flex}.case-field{align-items:center;gap:8px;margin-bottom:6px;display:flex}.case-field--centered{justify-content:center}.case-field__label{color:var(--case-label);text-align:right;flex:0 0 150px;font-size:11px}.case-field--centered .case-field__label{flex:none;min-width:90px}.case-input{border:1px solid var(--case-input-border);background:var(--case-input-bg);width:220px;color:var(--case-text);border-radius:0;padding:2px 4px;font-family:inherit;font-size:11px;line-height:18px}.case-input:disabled{background:var(--case-disabled-bg);color:var(--case-disabled-text)}.case-checkbox{width:13px;height:13px;margin:0}.case-actions{justify-content:center;gap:10px;margin-top:10px;display:flex}.case-actions--right{justify-content:flex-end}.case-button{border:1px solid var(--case-input-border);background:var(--case-button-bg);color:var(--case-text);cursor:pointer;border-radius:0;padding:3px 12px;font-family:inherit;font-size:11px}.case-button:hover{background:#e4e4e4}.case-link{color:#1a5fb4;cursor:pointer;background:0 0;border:none;padding:0;font-family:inherit;font-size:11px;text-decoration:underline}.case-mensagem{color:#1a5fb4;text-align:center;margin:10px 0 0;font-size:11px}.case-erros{color:#922;background:#fdf0f0;border:1px solid #d98b8b;margin:0 0 14px;padding:8px 8px 8px 28px;font-size:11px}.case-campos{max-width:460px;margin:0 auto}@media (width<=900px){.case-campos{max-width:none}.case-input{width:100%}}.qa-scores{gap:var(--space-lg);flex-direction:column;min-width:0;max-width:100%;display:flex;overflow-x:clip}.qa-scores__top{justify-content:space-between;align-items:flex-start;gap:var(--space-md);padding-bottom:var(--space-sm);border-bottom:1px solid var(--border-subtle);display:flex}.qa-scores__top-titles{flex-direction:column;gap:2px;min-width:0;display:flex}.qa-scores__title{align-items:center;gap:var(--space-sm);font-size:var(--text-xl);font-weight:var(--fw-semibold);line-height:var(--lh-tight);color:var(--text);display:flex}.qa-scores__title svg{color:var(--primary)}.qa-scores__subtitle{font-size:var(--text-xs);color:var(--text-muted)}.qa-scores__filters{align-items:center;gap:var(--space-md);max-width:100%;padding:var(--space-sm) var(--space-md);border:1px solid var(--border-subtle);border-radius:calc(var(--radius-btn) + 4px);background-color:#ffffff05;flex-wrap:wrap;display:flex}.qa-scores__filter{align-items:center;gap:var(--space-sm);min-width:0;display:flex}.qa-scores__filter-label{font-size:var(--text-xs);font-weight:var(--fw-semibold);color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;white-space:nowrap}.qa-scores__filters-divider{background-color:var(--border-subtle);width:1px;height:22px}.qa-scores__range{align-items:center;gap:var(--space-sm);flex-wrap:wrap;display:flex}.qa-scores__range-sep{font-size:var(--text-xs);color:var(--text-muted)}.qa-scores__range-input{background:var(--input-bg);border:1px solid var(--border-subtle);border-radius:var(--radius-input);color:var(--text);padding:var(--space-xs) var(--space-sm);font-size:var(--text-sm);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;transition:border-color var(--transition);font-family:inherit}.qa-scores__range-input:hover{border-color:var(--border-strong)}.qa-scores__range-input:focus-visible{border-color:var(--primary);box-shadow:0 0 0 2px var(--input-focus-ring);outline:none}@media (width<=720px){.qa-scores__filters{flex-direction:column;align-items:stretch}.qa-scores__filters-divider{display:none}.qa-scores__filter{flex-direction:column;align-items:flex-start}}.qa-scores__alert{padding:var(--space-xs) var(--space-md);font-size:var(--text-sm);color:var(--warning);background:#f39c1214;border:1px solid #f39c1240;border-radius:6px}.qa-scores__alert--error{color:var(--danger);background:#e74c3c14;border-color:#e74c3c40}.qa-scores__skeleton{gap:var(--space-lg);flex-direction:column;display:flex}.qa-scores__metrics{gap:var(--space-sm);grid-template-columns:repeat(auto-fit,minmax(210px,1fr));display:grid}.qa-scores__metrics>*>.metric-card,.qa-scores__metrics>.metric-card{height:100%;min-height:96px;padding:var(--space-md) var(--space-md)}.qa-scores__metrics>*{min-width:0}.qa-scores__section{gap:var(--space-sm);flex-direction:column;display:flex}.qa-scores__section-head{justify-content:space-between;align-items:baseline;gap:var(--space-md);flex-wrap:wrap;display:flex}.qa-scores__section-title{font-size:.75rem;font-weight:var(--fw-semibold);color:var(--text-muted);text-transform:uppercase;letter-spacing:.1em}.qa-scores__section-count{font-size:var(--text-xs);color:var(--text-muted);font-variant-numeric:tabular-nums}.qa-scores__panel,.qa-scores__table-wrap{border:1px solid var(--border-subtle);background-color:var(--surface);border-radius:8px}.qa-scores__table{table-layout:fixed;border-collapse:collapse;width:100%;font-size:var(--text-sm)}.qa-scores__table thead{background-color:#ffffff05}.qa-scores__table th{text-align:left;text-overflow:ellipsis;text-transform:uppercase;letter-spacing:.08em;font-size:.7rem;font-weight:var(--fw-semibold);color:var(--text-muted);padding:10px var(--space-md);border-bottom:1px solid var(--border-subtle);white-space:nowrap;overflow:hidden}.qa-scores__th-qa{width:auto}.qa-scores__th-num{text-align:left;width:13%}.qa-scores__row{transition:background-color var(--transition)}.qa-scores__row:hover{background-color:var(--bg-hover)}.qa-scores__row td{padding:10px var(--space-md);border-bottom:1px solid var(--border-subtle);color:var(--text);vertical-align:middle}.qa-scores__table tbody tr:last-child td{border-bottom:none}.qa-scores__row--current{box-shadow:inset 2px 0 0 var(--primary);background-color:#4a9eff0f}.qa-scores__row--current:hover{background-color:#4a9eff1a}.qa-scores__row--unassigned .qa-scores__user-name,.qa-scores__row--unassigned .qa-scores__user-meta{color:var(--text-muted)}.qa-scores__user{align-items:center;gap:var(--space-sm);min-width:0;display:inline-flex}.qa-scores__avatar{width:28px;height:28px;color:var(--text);font-size:var(--text-xs);font-weight:var(--fw-semibold);background:#ffffff12;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.qa-scores__row--current .qa-scores__avatar{color:var(--primary);background:#4a9eff29}.qa-scores__user-text{flex-direction:column;min-width:0;display:flex}.qa-scores__user-name{color:var(--text);font-size:var(--text-sm);font-weight:var(--fw-semibold);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.qa-scores__you{color:var(--primary);font-weight:var(--fw-regular)}.qa-scores__user-meta{max-width:260px;color:var(--text-muted);font-size:var(--text-xs);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.qa-scores__td-num{text-align:left;font-variant-numeric:tabular-nums;color:var(--text-muted)}.qa-scores__td-num--strong{color:var(--text);font-weight:var(--fw-semibold)}.qa-scores__num{flex-direction:column;align-items:flex-start;gap:1px;display:inline-flex}.qa-scores__num-value{font-variant-numeric:tabular-nums;line-height:1.2}.qa-scores__num-weekly{font-size:var(--text-xs);color:var(--text-muted);font-variant-numeric:tabular-nums;white-space:nowrap}.qa-scores__chip{border:1px solid var(--border-subtle);border-radius:var(--radius-badge);color:var(--text-muted);font-family:inherit;font-size:var(--text-xs);font-weight:var(--fw-medium);white-space:nowrap;cursor:pointer;transition:border-color var(--transition), background-color var(--transition), color var(--transition);background-color:#ffffff08;align-items:center;padding:6px 12px;display:inline-flex}.qa-scores__chip:hover{border-color:var(--border-strong);color:var(--text)}.qa-scores__chip:focus-visible{border-color:var(--primary);box-shadow:0 0 0 2px var(--input-focus-ring);outline:none}.qa-scores__chip--active{border-color:var(--primary);background-color:var(--bg-selected);color:var(--text)}.qa-scores__person{min-width:200px}@media (width<=720px){.qa-scores__person{width:100%}}.error-boundary{min-height:60vh;padding:var(--space-xl);justify-content:center;align-items:center;display:flex}.error-boundary__card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-card);width:100%;max-width:520px;padding:var(--space-xl);box-shadow:var(--shadow);color:var(--text)}.error-boundary__title{margin:0 0 var(--space-sm);font-size:var(--text-2xl);font-weight:var(--fw-semibold);color:var(--danger)}.error-boundary__message{margin:0 0 var(--space-md);color:var(--text-muted);line-height:var(--lh-relaxed)}.error-boundary__detail{margin:0 0 var(--space-lg);padding:var(--space-sm) var(--space-md);background:var(--input-bg);border:1px solid var(--border-subtle);border-radius:var(--radius-input);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:var(--text-sm);color:var(--text-muted);white-space:pre-wrap;word-break:break-word;max-height:160px;overflow:auto}.error-boundary__actions{gap:var(--space-sm);justify-content:flex-end;display:flex}.change-password-modal-overlay{padding:var(--space-md);z-index:200;background:#0000008c;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.change-password-modal{background:var(--bg-drawer);padding:var(--space-lg);gap:var(--space-md);border:1px solid #ffffff14;border-radius:10px;flex-direction:column;width:100%;max-width:420px;max-height:90vh;display:flex;overflow-y:auto;box-shadow:0 24px 48px #00000073}.change-password-modal__title{font-size:var(--text-lg);font-weight:var(--fw-semibold);color:var(--text)}.change-password-modal__actions{justify-content:flex-end;gap:var(--space-sm);border-top:1px solid var(--border-subtle);padding-top:var(--space-md);display:flex}.change-password-modal__toggle{cursor:pointer;color:var(--text-muted);transition:color var(--transition);background:0 0;border:none;align-items:center;padding:0;display:flex}.change-password-modal__toggle:hover{color:var(--text)}.navbar{height:var(--navbar-height);background-color:var(--surface);border-bottom:1px solid var(--border);z-index:100;padding:0 var(--space-lg);align-items:center;display:flex;position:fixed;top:0;left:0;right:0;box-shadow:0 2px 8px #0000004d}.navbar__inner{align-items:center;gap:var(--space-md);width:100%;display:flex}.navbar__brand-logo{object-fit:contain;width:26px;height:26px}.navbar__brand{color:var(--primary);letter-spacing:.3px;align-items:center;gap:var(--space-sm);transition:opacity var(--transition);font-size:1.1rem;font-weight:700;text-decoration:none;display:flex}.navbar__brand:hover{opacity:.85}.navbar__sections{align-items:center;gap:var(--space-xs);margin-left:var(--space-lg);display:flex}.navbar__section{color:var(--text-muted);transition:color var(--transition), background-color var(--transition);border-radius:8px;align-items:center;gap:.4rem;padding:.45rem .95rem;font-size:.875rem;font-weight:500;text-decoration:none;display:flex}.navbar__section:hover{color:var(--text);background-color:var(--surface-hover)}.navbar__section--active{color:var(--primary);background-color:#4a9eff1f}.navbar__actions{align-items:center;gap:var(--space-sm);margin-left:auto;display:flex}.navbar__user{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;max-width:160px;font-size:.8rem;overflow:hidden}@media (width<=600px){.navbar{padding:0 var(--space-md)}.navbar__user,.navbar__change-password-label{display:none}}.sidebar{top:var(--navbar-height);width:var(--sidebar-current-width);height:calc(100vh - var(--navbar-height));background-color:var(--bg-sidebar);border-right:1px solid var(--border-subtle);padding:var(--space-sm) 0;z-index:90;transition:width var(--transition);flex-direction:column;display:flex;position:fixed;left:0;overflow:hidden}.sidebar__nav{padding:0 var(--space-sm);flex-direction:column;flex:1;gap:1px;display:flex;overflow-y:auto}.sidebar__link{align-items:center;gap:var(--space-sm);font-size:var(--text-sm);font-weight:var(--fw-medium);color:var(--text-muted);transition:color var(--transition), background-color var(--transition);white-space:nowrap;border-radius:6px;min-height:32px;padding:.45rem .7rem;text-decoration:none;display:flex;position:relative}.sidebar__link:hover{color:var(--text);background-color:var(--bg-hover)}.sidebar__link--active{color:var(--primary);background-color:var(--bg-selected)}.sidebar__link--active:before{content:"";background-color:var(--primary);border-radius:0 2px 2px 0;width:2px;position:absolute;top:6px;bottom:6px;left:-8px}.sidebar__icon{flex-shrink:0;justify-content:center;align-items:center;width:18px;height:18px;display:inline-flex}.sidebar__label{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.sidebar__section-label{font-size:var(--text-xs);font-weight:var(--fw-semibold);color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;padding:var(--space-sm) .7rem 4px;margin-top:var(--space-xs);align-items:center;gap:6px;display:flex}.sidebar__section-label-icon{opacity:.7;display:inline-flex}.sidebar__footer{padding:var(--space-xs) var(--space-sm);border-top:1px solid var(--border-subtle);margin-top:var(--space-xs)}.sidebar__collapse-toggle{align-items:center;gap:var(--space-sm);width:100%;color:var(--text-muted);font-size:var(--text-sm);cursor:pointer;font-family:var(--font);transition:color var(--transition), background-color var(--transition);background:0 0;border:none;border-radius:6px;padding:.45rem .7rem;display:flex}.sidebar__collapse-toggle:hover{color:var(--text);background-color:var(--bg-hover)}.sidebar--collapsed .sidebar__link{justify-content:center;gap:0;padding:.45rem 0}.sidebar--collapsed .sidebar__label{display:none}.sidebar--collapsed .sidebar__section-label{padding:var(--space-sm) 0 4px;justify-content:center}.sidebar--collapsed .sidebar__section-label .sidebar__label{display:none}.sidebar--collapsed .sidebar__section-label:after{content:"";border-top:1px solid var(--border-subtle);width:22px;display:block}.sidebar--collapsed .sidebar__collapse-toggle{justify-content:center;padding:.45rem 0}.sidebar--collapsed .sidebar__link--active:before{left:-2px}@media (width<=768px){.sidebar__link{justify-content:center;gap:0;padding:.45rem 0}.sidebar__label{display:none}.sidebar__section-label{padding:var(--space-sm) 0 4px;justify-content:center}.sidebar__section-label .sidebar__label,.sidebar__footer{display:none}}.login-page{background-color:var(--bg);min-height:100vh;padding:var(--space-lg);justify-content:center;align-items:center;display:flex}.login-card{background-color:var(--surface);border:1px solid var(--border);border-radius:var(--radius-card);width:100%;max-width:420px;box-shadow:var(--shadow-lg);overflow:hidden}.login-card__header{padding:var(--space-xl) var(--space-xl) var(--space-lg);text-align:center;border-bottom:1px solid var(--border);background-color:var(--input-bg)}.login-card__logo{width:52px;height:52px;margin-bottom:var(--space-md);color:var(--primary);background-color:#4a9eff1f;border-radius:14px;justify-content:center;align-items:center;display:inline-flex}.login-card__title{color:var(--text);margin-bottom:var(--space-xs);font-size:1.5rem;font-weight:700}.login-card__subtitle{color:var(--text-muted);font-size:.875rem}.login-card__body{padding:var(--space-xl)}.login-form{gap:var(--space-md);flex-direction:column;display:flex}.login-alert{align-items:center;gap:var(--space-sm);padding:.75rem var(--space-md);color:var(--danger);background-color:#e74c3c1a;border:1px solid #e74c3c66;border-radius:10px;font-size:.875rem;line-height:1.4;display:flex}.login-alert__icon{flex-shrink:0}.login-submit{margin-top:var(--space-sm)}.login-card__footer{padding:var(--space-md) var(--space-xl);border-top:1px solid var(--border);text-align:center}.login-card__footer p{color:var(--text-muted);font-size:.8rem}.password-toggle{cursor:pointer;color:var(--text-muted);transition:color var(--transition);background:0 0;border:none;align-items:center;padding:0;display:flex}.password-toggle:hover{color:var(--text)}
