:root{--accent: #ec5e29;--accent-hover: #d94f1f;--accent-soft: rgba(236, 94, 41, .12);--brand-navy: #244a73;--sidebar-bg: #0c0c0e;--sidebar-border: #1d1d20;--sidebar-hover: #1a1a1d;--sidebar-active: #201d1a;--sidebar-text: #d3d4d8;--sidebar-text-dim: #6c6e74;--sidebar-section: #5a5c62;--bg: #ffffff;--bg-subtle: #fafafa;--panel: #ffffff;--text: #14151a;--text-muted: #6b7280;--text-faint: #9ca3af;--border: #ececef;--border-strong: #dcdce0;--green: #16a34a;--green-bg: #e8f6ec;--red: #c0392b;--red-bg: #fdecec;--amber: #b45309;--amber-bg: #fef3e2;--blue: #2563eb;--blue-bg: #e8f0fe;--gray-bg: #f1f2f4;--radius: 12px;--radius-sm: 8px;--shadow: 0 1px 2px rgba(16, 24, 40, .04), 0 1px 3px rgba(16, 24, 40, .06);--shadow-lg: 0 10px 30px rgba(16, 24, 40, .12);--sidebar-w: 232px;--font: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif}*{box-sizing:border-box}html,body{margin:0;padding:0;height:100%}body{font-family:var(--font);color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;font-size:14px;line-height:1.5}a{color:inherit;text-decoration:none}h1,h2,h3{margin:0;font-weight:700;letter-spacing:-.01em}.page{max-width:1180px;margin:0 auto;padding:8px 4px 64px}.page-title{font-size:30px;font-weight:800;letter-spacing:-.02em;margin-bottom:6px}.page-subtitle,p.sub{color:var(--text-muted);margin:0 0 22px;max-width:760px}.section-label{font-size:13px;font-weight:700;color:var(--text);margin:26px 0 10px}.row-between{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.spacer{flex:1}.muted{color:var(--text-muted)}.error{color:var(--red);margin:0 0 16px}.empty{padding:56px 20px;text-align:center;color:var(--text-faint)}code,.mono{font-family:SFMono-Regular,ui-monospace,Menlo,monospace}code{background:var(--gray-bg);padding:1px 6px;border-radius:5px;font-size:13px}.toolbar{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-bottom:16px}.field{display:flex;flex-direction:column;gap:6px}.field-row{display:flex;gap:16px;flex-wrap:wrap}.field-row>div{flex:1;min-width:200px}label{display:block;font-size:12px;font-weight:600;color:var(--text-muted);margin:14px 0 5px}input,select,textarea,.input,.select{appearance:none;width:100%;background:var(--panel);border:1px solid var(--border-strong);border-radius:var(--radius-sm);padding:9px 13px;font-size:14px;font-family:inherit;color:var(--text);outline:none;transition:border-color .15s,box-shadow .15s}textarea{resize:vertical;min-height:84px}select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2.5'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:34px}input:focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}input:disabled,select:disabled,textarea:disabled{background:var(--bg-subtle);color:var(--text-faint)}button,.btn,a.btn{display:inline-flex;align-items:center;gap:7px;border:1px solid var(--border-strong);background:var(--panel);color:var(--text);border-radius:var(--radius-sm);padding:9px 15px;font-size:14px;font-weight:600;font-family:inherit;cursor:pointer;transition:background .15s,border-color .15s,transform .05s}button:hover,.btn:hover,a.btn:hover{background:var(--bg-subtle)}button:active,.btn:active{transform:translateY(1px)}button:disabled{opacity:.5;cursor:not-allowed}.btn.primary,.btn-primary{background:var(--accent);border-color:var(--accent);color:#fff}.btn.primary:hover,.btn-primary:hover{background:var(--accent-hover)}.btn.ghost{border-color:transparent;background:transparent}.btn.sm,.btn-sm{padding:6px 11px;font-size:13px}.btn-danger{color:var(--red);border-color:#e7c3c0}.btn-danger:hover{background:var(--red-bg)}.card,.panel{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow)}.panel{padding:20px 22px;margin-bottom:18px}.card-pad{padding:20px 22px}.card-head{font-weight:700;font-size:15px;padding:16px 20px;border-bottom:1px solid var(--border)}.table-wrap{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden;margin-bottom:18px}table{width:100%;border-collapse:collapse}table thead th,table.tbl thead th{text-align:left;font-size:11px;letter-spacing:.07em;text-transform:uppercase;color:var(--text-faint);font-weight:600;padding:14px 18px;border-bottom:1px solid var(--border);white-space:nowrap}table tbody td,table.tbl tbody td{padding:14px 18px;border-bottom:1px solid var(--border);font-size:14px;vertical-align:middle}table tbody tr:last-child td{border-bottom:none}table tbody tr.clickable,table tbody tr:hover{background:var(--bg-subtle)}.td-strong{font-weight:600}.badge{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;padding:4px 10px;border-radius:999px;white-space:nowrap}.badge.green,.badge.Passed{background:var(--green-bg);color:var(--green)}.badge.red,.badge.Failed{background:var(--red-bg);color:var(--red)}.badge.amber,.badge.Running{background:var(--amber-bg);color:var(--amber)}.badge.blue{background:var(--blue-bg);color:var(--blue)}.badge.gray,.badge.none{background:var(--gray-bg);color:var(--text-muted)}.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:22px}.stat{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);padding:18px 20px;box-shadow:var(--shadow)}.stat .label{font-size:12px;color:var(--text-muted);font-weight:600}.stat .num{font-size:30px;font-weight:800;letter-spacing:-.02em;margin-top:6px}.stat .sub{font-size:12px;color:var(--text-faint);margin-top:2px}
