:root{--bg-primary:#0a0a0f;--bg-secondary:#12121a;--bg-card:#1a1a26;--bg-card-hover:#22223a;--border:#2a2a3e;--text-primary:#e4e4ef;--text-secondary:#8888a4;--accent:#6c5ce7;--accent-hover:#7c6cf7;--success:#00b894;--danger:#e17055;--warning:#fdcb6e;--info:#74b9ff;--radius:12px}*{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}body{background:var(--bg-primary);color:var(--text-primary);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;line-height:1.6}a{color:var(--accent);text-decoration:none}a:hover{color:var(--accent-hover)}button{cursor:pointer;font-family:inherit}input,select{font-family:inherit}.container{max-width:1200px;margin:0 auto;padding:0 24px}.sidebar{background:var(--bg-secondary);border-right:1px solid var(--border);z-index:100;flex-direction:column;width:240px;height:100vh;display:flex;position:fixed;top:0;left:0}.sidebar-brand{align-items:center;gap:10px;padding:20px 20px 16px;font-size:18px;font-weight:700;display:flex}.sidebar-brand span{background:linear-gradient(135deg,var(--accent),var(--info));-webkit-text-fill-color:transparent;-webkit-background-clip:text}.sidebar-nav{flex-direction:column;flex:1;gap:2px;padding:8px 12px;display:flex}.sidebar-nav-item{color:var(--text-secondary);cursor:pointer;border-radius:8px;align-items:center;gap:12px;padding:10px 12px;font-size:14px;font-weight:500;text-decoration:none;transition:all .15s;display:flex}.sidebar-nav-item:hover{background:var(--bg-card);color:var(--text-primary)}.sidebar-nav-item.active{color:var(--accent);background:#6c5ce726}.sidebar-nav-item.active svg{stroke:var(--accent)}.sidebar-submenu{flex-direction:column;gap:1px;padding:2px 0 4px 20px;display:flex}.sidebar-submenu-item{color:var(--text-secondary);cursor:pointer;border-radius:6px;align-items:center;gap:8px;padding:6px 12px;font-size:13px;text-decoration:none;transition:all .15s;display:flex;overflow:hidden}.sidebar-submenu-item:hover{background:var(--bg-card);color:var(--text-primary)}.sidebar-submenu-item.active{color:var(--accent);background:#6c5ce71a}.sidebar-submenu-dot{background:var(--text-secondary);opacity:.5;border-radius:50%;flex-shrink:0;width:6px;height:6px}.sidebar-submenu-item.active .sidebar-submenu-dot{background:var(--accent);opacity:1}.sidebar-submenu-label{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.sidebar-submenu-env{text-transform:uppercase;letter-spacing:.3px;border-radius:4px;flex-shrink:0;padding:1px 5px;font-size:10px;font-weight:600}.sidebar-submenu-env.staging{color:#fdcb6e;background:#fdcb6e26}.sidebar-submenu-env.production{color:#00b894;background:#00b89426}.sidebar-submenu-env.development{color:#74b9ff;background:#74b9ff26}.sidebar-footer{border-top:1px solid var(--border);padding:12px}.sidebar-user{border-radius:8px;align-items:center;gap:10px;padding:8px;display:flex}.sidebar-user-avatar{background:var(--accent);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:13px;font-weight:600;display:flex}.sidebar-user-info{flex:1;min-width:0}.sidebar-user-email{color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;font-size:13px;display:block;overflow:hidden}.sidebar-logout-btn{color:var(--text-secondary);background:0 0;border:none;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;padding:6px;transition:all .15s;display:flex}.sidebar-logout-btn:hover{background:var(--bg-card);color:var(--text-primary)}.app-layout{min-height:100vh;display:flex}.app-main{flex:1;min-height:100vh;margin-left:240px}.btn{border:none;border-radius:8px;align-items:center;gap:8px;padding:10px 20px;font-size:14px;font-weight:600;transition:all .2s;display:inline-flex}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover{background:var(--accent-hover);transform:translateY(-1px);box-shadow:0 4px 12px #6c5ce766}.btn-danger{color:var(--danger);border:1px solid var(--danger);background:0 0}.btn-danger:hover{background:var(--danger);color:#fff}.btn-ghost{color:var(--text-secondary);border:1px solid var(--border);background:0 0}.btn-ghost:hover{color:var(--text-primary);border-color:var(--text-secondary)}.btn-success{background:var(--success);color:#fff}.btn-success:hover{opacity:.9;transform:translateY(-1px)}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none!important}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:24px;transition:all .2s}.card:hover{border-color:var(--accent);box-shadow:0 4px 24px #6c5ce71a}.card-static:hover{border-color:var(--border);box-shadow:none}.form-group{margin-bottom:20px}.form-group label{color:var(--text-secondary);margin-bottom:6px;font-size:14px;font-weight:500;display:block}.form-input{background:var(--bg-primary);border:1px solid var(--border);width:100%;color:var(--text-primary);border-radius:8px;padding:12px 16px;font-size:15px;transition:border-color .2s}.form-input:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 3px #6c5ce726}.form-input::placeholder{color:var(--text-secondary);opacity:.5}select.form-input{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%238888a4' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-position:right 16px center;background-repeat:no-repeat;padding-right:40px}.badge{text-transform:uppercase;letter-spacing:.5px;border-radius:20px;align-items:center;gap:6px;padding:4px 12px;font-size:12px;font-weight:600;display:inline-flex}.badge-pending{color:var(--warning);background:#fdcb6e26}.badge-running{color:var(--info);background:#74b9ff26}.badge-passed{color:var(--success);background:#00b89426}.badge-failed,.badge-error{color:var(--danger);background:#e1705526}.badge-cancelled{color:var(--text-secondary);background:#b2bec326}.badge-staging{color:var(--info);background:#74b9ff26}.badge-production{color:var(--danger);background:#e1705526}.page-header{justify-content:space-between;align-items:center;margin:32px 0 24px;display:flex}.page-header h1{font-size:28px;font-weight:700}.project-grid{grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:20px;margin-bottom:32px;display:grid}.runs-table{border-collapse:collapse;width:100%}.runs-table th{text-align:left;text-transform:uppercase;letter-spacing:.5px;color:var(--text-secondary);border-bottom:1px solid var(--border);padding:12px 16px;font-size:12px}.runs-table td{border-bottom:1px solid var(--border);padding:14px 16px;font-size:14px}.runs-table tr:last-child td{border-bottom:none}.runs-table tr:hover td{background:inherit}.login-page{background:var(--bg-primary);justify-content:center;align-items:center;min-height:100vh;display:flex;position:relative;overflow:hidden}.login-bg-glow{pointer-events:none;background:radial-gradient(circle,#6c5ce71f 0%,#0000 70%);border-radius:50%;width:600px;height:600px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.login-card{background:var(--bg-card);border:1px solid var(--border);z-index:1;border-radius:16px;width:100%;max-width:420px;padding:40px;animation:.4s ease-out loginCardIn;position:relative;box-shadow:0 8px 32px #0000004d,0 0 0 1px #6c5ce70d}@keyframes loginCardIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.login-card-header{text-align:center;margin-bottom:32px}.login-logo{margin-bottom:16px;display:inline-flex}.login-card h1{background:linear-gradient(135deg,var(--accent),var(--info));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin-bottom:8px;font-size:24px}.login-card p{color:var(--text-secondary);margin-bottom:0;font-size:14px}.login-submit{justify-content:center;width:100%;margin-top:4px;padding:12px 20px;font-size:15px}.login-divider{color:var(--text-secondary);align-items:center;gap:16px;margin:24px 0;font-size:13px;display:flex}.login-divider:before,.login-divider:after{content:"";background:var(--border);flex:1;height:1px}.google-btn-wrapper{justify-content:center;display:flex}.form-group.has-error .form-input{border-color:var(--danger);box-shadow:0 0 0 3px #e170551f}.field-error{color:var(--danger);margin-top:6px;font-size:13px;animation:.2s ease-out fieldErrorIn;display:block}@keyframes fieldErrorIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.login-notification{z-index:2000;border-radius:10px;align-items:center;gap:10px;padding:14px 20px;font-size:14px;font-weight:500;animation:.3s ease-out notificationIn;display:flex;position:fixed;top:24px;right:24px;box-shadow:0 8px 24px #0000004d}@keyframes notificationIn{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}.login-notification-success{color:var(--success);background:#00b89426;border:1px solid #00b8944d}.login-notification-error{color:var(--danger);background:#e1705526;border:1px solid #e170554d}.login-notification-icon{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;font-size:12px;font-weight:700;display:inline-flex}.login-notification-success .login-notification-icon{background:#00b89433}.login-notification-error .login-notification-icon{background:#e1705533}.login-notification-close{color:inherit;opacity:.6;cursor:pointer;background:0 0;border:none;padding:0 0 0 8px;font-size:18px;line-height:1}.login-notification-close:hover{opacity:1}.error-message{border:1px solid var(--danger);color:var(--danger);background:#e170551a;border-radius:8px;margin-bottom:16px;padding:10px 16px;font-size:14px}.empty-state{text-align:center;color:var(--text-secondary);padding:64px 24px}.empty-state h3{color:var(--text-primary);margin-bottom:8px;font-size:20px}.modal-overlay{z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0009;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal{background:var(--bg-card);border:1px solid var(--border);border-radius:16px;width:100%;max-width:480px;padding:32px;box-shadow:0 16px 48px #0006}.modal h2{margin-bottom:24px;font-size:20px}.modal-actions{justify-content:flex-end;gap:12px;margin-top:24px;display:flex}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.animate-pulse{animation:2s infinite pulse}@keyframes spin{to{transform:rotate(360deg)}}.spinner{border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:16px;height:16px;animation:.6s linear infinite spin;display:inline-block}.project-detail-header{align-items:center;gap:16px;margin-bottom:8px;display:flex}.project-meta{color:var(--text-secondary);gap:16px;margin-bottom:24px;font-size:14px;display:flex}.project-meta span{align-items:center;gap:6px;display:flex}.stats-row{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:16px;margin-bottom:32px;display:grid}.stat-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);text-align:center;pointer-events:none;padding:20px}.stat-card .stat-value{margin-bottom:4px;font-size:32px;font-weight:700}.stat-card .stat-label{text-transform:uppercase;letter-spacing:.5px;color:var(--text-secondary);font-size:12px}.tc-filters{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:24px;display:flex}.tc-search-wrap{flex:1;min-width:200px;position:relative}.tc-search-wrap svg{pointer-events:none;position:absolute;top:50%;left:14px;transform:translateY(-50%)}.tc-search{padding-left:40px!important}.tc-file-filter{min-width:180px;width:auto!important}.tc-group-by-filter{min-width:170px;width:auto!important}.tc-result-count{color:var(--text-secondary);white-space:nowrap;padding:0 8px;font-size:13px}.tc-groups{flex-direction:column;gap:20px;margin-bottom:48px;display:flex}.tc-group{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.tc-group:hover{border-color:var(--border);box-shadow:none}.tc-group-header{border-bottom:1px solid var(--border);background:#6c5ce70a;justify-content:space-between;align-items:center;gap:12px;padding:16px 20px;display:flex}.tc-group-title{color:var(--text-primary);align-items:center;gap:10px;font-size:15px;font-weight:600;display:flex}.tc-group-title svg{color:var(--accent);flex-shrink:0}.tc-group-meta{flex-shrink:0;align-items:center;gap:12px;display:flex}.tc-group-file{color:var(--text-secondary);background:var(--bg-primary);border-radius:6px;padding:3px 10px;font-family:SF Mono,Fira Code,monospace;font-size:12px}.tc-group-count{color:var(--text-secondary);font-size:12px;font-weight:500}.tc-list{flex-direction:column;display:flex}.tc-item{border-bottom:1px solid var(--border);cursor:pointer;padding:14px 20px;transition:background .15s}.tc-item:last-child{border-bottom:none}.tc-item:hover{background:var(--bg-card-hover)}.tc-item-expanded{background:#6c5ce708}.tc-item-header{justify-content:space-between;align-items:center;gap:16px;display:flex}.tc-item-left{flex:1;align-items:center;gap:12px;min-width:0;display:flex}.tc-item-icon{width:30px;height:30px;color:var(--accent);background:#6c5ce71a;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.tc-item-name-wrap{align-items:center;gap:8px;min-width:0;display:flex}.tc-item-name{color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:500;overflow:hidden}.tc-modifier{text-transform:uppercase;letter-spacing:.3px;border-radius:4px;flex-shrink:0;padding:2px 6px;font-size:10px;font-weight:700}.tc-modifier-skip{color:var(--warning);background:#fdcb6e26}.tc-modifier-only{color:var(--info);background:#74b9ff26}.tc-modifier-fixme{color:var(--danger);background:#e1705526}.tc-item-right{flex-shrink:0;align-items:center;gap:12px;display:flex}.tc-item-page{color:var(--text-secondary);background:var(--bg-primary);text-overflow:ellipsis;white-space:nowrap;border-radius:6px;align-items:center;gap:5px;max-width:200px;padding:3px 10px;font-size:12px;display:flex;overflow:hidden}.tc-item-chevron{color:var(--text-secondary);flex-shrink:0;transition:transform .2s}.tc-item-chevron.open{transform:rotate(180deg)}.tc-item-details{background:var(--bg-primary);border:1px solid var(--border);border-radius:10px;margin-top:16px;padding:16px}.tc-detail-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.tc-detail-full{grid-column:1/-1}.tc-detail-section{flex-direction:column;gap:4px;display:flex}.tc-detail-label{text-transform:uppercase;letter-spacing:.5px;color:var(--text-secondary);align-items:center;gap:6px;font-size:11px;font-weight:600;display:flex}.tc-detail-value{color:var(--text-primary);word-break:break-all;font-size:13px}.tc-detail-mono{font-family:SF Mono,Fira Code,monospace;font-size:12px}.tc-page-link{color:var(--accent);word-break:break-all;align-items:center;gap:4px;padding:4px 0;font-size:13px;display:inline-flex}.tc-page-link:hover{color:var(--accent-hover)}.tc-page-link svg{flex-shrink:0}.tc-assertions{flex-direction:column;gap:6px;display:flex}.tc-assertion{border:1px solid var(--border);color:var(--text-primary);word-break:break-all;background:#6c5ce70f;border-radius:6px;padding:6px 10px;font-family:SF Mono,Fira Code,monospace;font-size:12px;display:block}.tcp-modal{flex-direction:column;max-width:640px;max-height:85vh;animation:.25s ease-out tcpSlideIn;display:flex}@keyframes tcpSlideIn{0%{opacity:0;transform:translateY(8px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.tcp-header{flex-shrink:0}.tcp-header-row{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.tcp-header-row h2{margin-bottom:0}.tcp-select-all{color:var(--text-secondary);cursor:pointer;border:1px solid var(--border);background:0 0;border-radius:8px;align-items:center;gap:8px;padding:6px 12px;font-size:13px;font-weight:500;transition:all .15s;display:flex}.tcp-select-all:hover{border-color:var(--accent);color:var(--text-primary)}.tcp-filter-row{align-items:stretch;gap:10px;margin-bottom:16px;display:flex}.tcp-filter-row .tcp-search{flex:1;margin-bottom:0}.tcp-groupby-select{min-width:170px;width:auto!important;padding:8px 12px!important;font-size:13px!important}.tcp-search{margin-bottom:16px;position:relative}.tcp-search svg{pointer-events:none;color:var(--text-secondary);position:absolute;top:50%;left:12px;transform:translateY(-50%)}.tcp-search input{background:var(--bg-primary);border:1px solid var(--border);width:100%;color:var(--text-primary);border-radius:8px;padding:10px 14px 10px 38px;font-size:14px;transition:border-color .2s}.tcp-search input:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 3px #6c5ce726}.tcp-search input::placeholder{color:var(--text-secondary);opacity:.5}.tcp-body{flex:1;min-height:0;margin:0 -32px;padding:0 32px;overflow-y:auto}.tcp-body::-webkit-scrollbar{width:6px}.tcp-body::-webkit-scrollbar-track{background:0 0}.tcp-body::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}.tcp-body::-webkit-scrollbar-thumb:hover{background:var(--text-secondary)}.tcp-category{border:1px solid var(--border);border-radius:10px;margin-bottom:12px;transition:border-color .2s;overflow:hidden}.tcp-category.tcp-category-selected{border-color:#6c5ce766}.tcp-category-header{cursor:pointer;-webkit-user-select:none;user-select:none;background:#6c5ce70a;align-items:center;gap:12px;padding:12px 16px;transition:background .15s;display:flex}.tcp-category-header:hover{background:#6c5ce714}.tcp-checkbox{border:2px solid var(--border);cursor:pointer;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:20px;height:20px;transition:all .15s;display:flex}.tcp-checkbox-checked{background:var(--accent);border-color:var(--accent)}.tcp-checkbox-partial{border-color:var(--accent)}.tcp-category-info{flex:1;min-width:0}.tcp-category-name{color:var(--text-primary);align-items:center;gap:8px;font-size:14px;font-weight:600;display:flex}.tcp-category-file{color:var(--text-secondary);margin-top:2px;font-family:SF Mono,Fira Code,monospace;font-size:11px}.tcp-category-count{color:var(--text-secondary);background:var(--bg-primary);border-radius:12px;flex-shrink:0;padding:2px 10px;font-size:12px;font-weight:500}.tcp-category-chevron{color:var(--text-secondary);flex-shrink:0;transition:transform .2s}.tcp-category-chevron.open{transform:rotate(180deg)}.tcp-tests{border-top:1px solid var(--border)}.tcp-test-item{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:12px;padding:10px 16px 10px 28px;transition:background .12s;display:flex}.tcp-test-item:hover{background:var(--bg-card-hover)}.tcp-test-item:not(:last-child){border-bottom:1px solid #2a2a3e80}.tcp-test-name{color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:13px;overflow:hidden}.tcp-test-modifier{text-transform:uppercase;letter-spacing:.3px;border-radius:4px;flex-shrink:0;padding:2px 6px;font-size:10px;font-weight:700}.tcp-footer{border-top:1px solid var(--border);flex-shrink:0;margin-top:16px;padding-top:16px}.tcp-summary{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.tcp-summary-text{color:var(--text-secondary);font-size:13px}.tcp-summary-count{color:var(--accent);font-weight:700}.tcp-step-indicator{align-items:center;gap:8px;margin-bottom:20px;display:flex}.tcp-step{color:var(--text-secondary);align-items:center;gap:6px;font-size:12px;font-weight:600;display:flex}.tcp-step-active{color:var(--accent)}.tcp-step-done{color:var(--success)}.tcp-step-num{border:1.5px solid var(--border);background:0 0;border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;font-size:11px;display:flex}.tcp-step-active .tcp-step-num{border-color:var(--accent);color:var(--accent);background:#6c5ce726}.tcp-step-done .tcp-step-num{border-color:var(--success);color:var(--success);background:#00b89426}.tcp-step-line{background:var(--border);border-radius:1px;width:24px;height:1.5px}.tcp-step-line-done{background:var(--success)}.code-modal{flex-direction:column;max-width:720px;max-height:85vh;animation:.25s ease-out tcpSlideIn;display:flex}.code-modal-header{flex-shrink:0;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px;display:flex}.code-modal-title{color:var(--text-primary);font-size:16px;font-weight:600;line-height:1.4}.code-modal-file{color:var(--text-secondary);background:var(--bg-primary);border-radius:6px;align-items:center;gap:6px;margin-top:8px;padding:3px 10px;font-family:SF Mono,Fira Code,monospace;font-size:12px;display:inline-flex}.code-modal-close{border:1px solid var(--border);color:var(--text-secondary);cursor:pointer;background:0 0;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;transition:all .15s;display:flex}.code-modal-close:hover{background:var(--bg-card-hover);color:var(--text-primary);border-color:var(--text-secondary)}.code-modal-body{flex:1;min-height:0;margin:0 -32px;padding:0 32px;overflow-y:auto}.code-modal-body::-webkit-scrollbar{width:6px}.code-modal-body::-webkit-scrollbar-track{background:0 0}.code-modal-body::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}.code-modal-body::-webkit-scrollbar-thumb:hover{background:var(--text-secondary)}.code-block{background:var(--bg-primary);border:1px solid var(--border);border-radius:10px;overflow:hidden}.code-block-header{border-bottom:1px solid var(--border);color:var(--text-secondary);background:#6c5ce70a;justify-content:space-between;align-items:center;padding:10px 16px;font-size:12px;display:flex}.code-block-lang{text-transform:uppercase;letter-spacing:.5px;font-family:SF Mono,Fira Code,monospace;font-weight:600}.code-block-copy{border:1px solid var(--border);color:var(--text-secondary);cursor:pointer;background:0 0;border-radius:6px;padding:3px 10px;font-family:inherit;font-size:11px;transition:all .15s}.code-block-copy:hover{border-color:var(--accent);color:var(--accent)}.code-block pre{color:var(--text-primary);tab-size:2;margin:0;padding:16px;font-family:SF Mono,Fira Code,Cascadia Code,JetBrains Mono,monospace;font-size:13px;line-height:1.7;overflow-x:auto}.code-block pre::-webkit-scrollbar{height:6px}.code-block pre::-webkit-scrollbar-track{background:0 0}.code-block pre::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}.code-block .syn-keyword{color:#c792ea}.code-block .syn-string{color:#c3e88d}.code-block .syn-comment{color:#546e7a;font-style:italic}.code-block .syn-function{color:#82aaff}.code-block .syn-number{color:#f78c6c}.code-block .syn-operator{color:#89ddff}.code-block .syn-property{color:#ffcb6b}.code-block .syn-punctuation,.code-block .syn-regex{color:#89ddff}.runs-table tr.clickable-row{cursor:pointer}.runs-table tr.clickable-row:hover td{background:var(--bg-card-hover)}.tc-source-code{grid-column:1/-1;margin-top:16px}.mobile-menu-btn{z-index:200;background:var(--bg-card);border:1px solid var(--border);color:var(--text-primary);cursor:pointer;border-radius:10px;justify-content:center;align-items:center;width:40px;height:40px;transition:all .15s;display:none;position:fixed;top:12px;left:12px}.mobile-menu-btn:hover{background:var(--bg-card-hover)}.sidebar-overlay{z-index:99;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#00000080;display:none;position:fixed;inset:0}.sidebar-overlay.visible{display:block}@media (max-width:1024px){.container{padding:0 16px}.stats-row{grid-template-columns:repeat(2,1fr)}.project-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.runs-table .col-file{display:none}}@media (max-width:768px){.mobile-menu-btn{display:flex}.sidebar{transition:transform .25s;transform:translate(-100%)}.sidebar.sidebar-open{transform:translate(0)}.app-main{margin-left:0;padding-top:56px}.container{padding:0 12px}.page-header{flex-wrap:wrap;gap:12px;margin:16px 0}.page-header h1{font-size:22px}.stats-row{grid-template-columns:repeat(2,1fr);gap:10px}.stat-card{padding:14px}.stat-card .stat-value{font-size:24px}.project-grid{grid-template-columns:1fr;gap:12px}.card.card-static{-webkit-overflow-scrolling:touch;overflow-x:auto}.runs-table{min-width:500px}.runs-table th,.runs-table td{padding:10px;font-size:13px}.runs-table td .test-name-cell{text-overflow:ellipsis;white-space:nowrap;max-width:200px;display:block;overflow:hidden}.modal{max-width:calc(100vw - 24px);margin:12px;padding:20px}.modal-overlay{padding:0}.code-modal,.tcp-modal{max-width:calc(100vw - 24px);max-height:90vh;margin:12px;padding:20px}.code-modal-body,.tcp-body{margin:0 -20px;padding:0 20px}.login-card{max-width:calc(100vw - 24px);margin:12px;padding:24px}.login-notification{font-size:13px;top:12px;left:12px;right:12px}.settings-name-grid{grid-template-columns:1fr!important}.tc-filters{flex-direction:column;gap:8px}.tc-search-wrap{min-width:unset;width:100%}.tc-file-filter,.tc-group-by-filter{min-width:unset!important;width:100%!important}.tc-group-header{flex-direction:column;align-items:flex-start;gap:8px;padding:12px 14px}.tc-group-meta{justify-content:space-between;width:100%}.tc-item-header{flex-direction:column;align-items:flex-start;gap:8px}.tc-item-right{justify-content:space-between;width:100%}.tc-detail-grid{grid-template-columns:1fr}.project-detail-header{flex-wrap:wrap;gap:8px}.project-meta{flex-wrap:wrap;gap:8px 16px}.run-report-header{flex-wrap:wrap}.admin-actions-cell{flex-wrap:wrap;gap:6px!important}.tcp-filter-row{flex-direction:column}}@media (max-width:480px){.stats-row{grid-template-columns:1fr}.page-header h1{font-size:20px}.btn{padding:8px 14px;font-size:13px}.runs-table{min-width:400px}.runs-table th,.runs-table td{padding:8px;font-size:12px}}
