:root{--bg: #0f172a;--panel: #ffffff;--line: #e2e8f0;--line-strong: #cbd5e1;--text: #1e293b;--muted: #64748b;--accent: #2563eb;--accent-dark: #1d4ed8;--warn: #b45309;--warn-bg: #fef3c7;--head: #1e293b;--row-alt: #f8fafc;--row-hover: #eff6ff}*{box-sizing:border-box}body{margin:0;background:#f1f5f9;color:var(--text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:14px}.app{max-width:1500px;margin:0 auto;padding:18px 20px 12px}.topbar{display:flex;align-items:center;justify-content:space-between;background:var(--head);color:#fff;padding:16px 22px;border-radius:12px;box-shadow:0 4px 14px #0f172a2e}.brand{display:flex;align-items:center;gap:14px}.logo{font-size:26px;background:var(--warn-bg);color:var(--warn);width:46px;height:46px;border-radius:10px;display:flex;align-items:center;justify-content:center}.topbar h1{margin:0;font-size:20px;letter-spacing:.2px}.sub{margin:3px 0 0;font-size:12px;color:#94a3b8;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.topbar-right{display:flex;align-items:center;gap:22px}.clock{display:flex;align-items:center;gap:8px;background:#ffffff1a;border:1px solid rgba(255,255,255,.18);padding:6px 10px;border-radius:10px}.clock-val{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:13.5px;font-weight:700;color:#fff;letter-spacing:.3px;white-space:nowrap}.clock-abbr{font-size:11px;font-weight:800;color:#fbbf24;letter-spacing:.3px}.clock-sel{background:#ffffff1f;border:1px solid rgba(255,255,255,.25);color:#fff;border-radius:8px;padding:3px 7px;font-size:12px;font-weight:700;cursor:pointer}.clock-sel:hover{background:#fff3}.clock-sel option{color:#1e293b}.user-chip{display:flex;flex-direction:column;align-items:flex-end;gap:4px}.user-name{font-size:13px;font-weight:600;color:#e2e8f0}.logout-btn{background:#ffffff1f;border:1px solid rgba(255,255,255,.25);color:#fff;padding:4px 12px;border-radius:8px;font-size:12px;font-weight:600}.logout-btn:hover{background:#ffffff38}.login-wrap{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;background:linear-gradient(160deg,#0f172a,#1e293b);padding:20px}.login-loading{color:#cbd5e1;font-size:15px}.login-card{background:#fff;border-radius:16px;padding:34px 30px;width:360px;max-width:100%;display:flex;flex-direction:column;gap:12px;box-shadow:0 20px 60px #0006}.login-logo{align-self:center;width:56px;height:56px;border-radius:14px;background:var(--warn-bg);color:var(--warn);font-size:30px;display:flex;align-items:center;justify-content:center}.login-logo-img{align-self:center;width:220px;max-width:80%;height:auto;margin-bottom:4px}.login-card h1{margin:6px 0 0;text-align:center;font-size:21px;color:var(--text)}.login-sub{margin:0 0 6px;text-align:center;color:var(--muted);font-size:13px}.login-card label{display:flex;flex-direction:column;gap:5px;font-size:12px;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.login-card input{padding:10px 12px;border:1px solid var(--line-strong);border-radius:8px;font-size:15px;color:var(--text)}.login-card input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #2563eb26}.pw-field{position:relative;display:flex}.pw-field input{flex:1;padding-right:42px;width:100%}.pw-toggle{position:absolute;right:4px;top:50%;transform:translateY(-50%);background:none;border:0;padding:6px;cursor:pointer;color:var(--muted);display:flex;align-items:center;justify-content:center}.pw-toggle:hover{color:var(--accent)}.login-card .primary{margin-top:8px;background:var(--accent);color:#fff;padding:11px;font-size:15px;border-radius:8px}.login-card .primary:hover:not(:disabled){background:var(--accent-dark)}.login-error{background:#fee2e2;color:#b91c1c;border:1px solid #fecaca;padding:9px 12px;border-radius:8px;font-size:13px}.login-foot{color:#64748b;font-size:12px}.stat-num{display:block;font-size:28px;font-weight:700;color:#fbbf24;line-height:1}.stat-label{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:#94a3b8}.menu-tabs{display:flex;gap:4px;margin-top:16px;border-bottom:2px solid var(--line-strong)}.menu-tab{background:transparent;border:0;color:var(--muted);padding:11px 22px;font-size:15px;font-weight:700;border-radius:8px 8px 0 0;border-bottom:3px solid transparent;margin-bottom:-2px}.menu-tab:hover{color:var(--text);background:#eef2f7}.menu-tab.active{color:var(--accent);border-bottom-color:var(--accent)}.menu-tab{transition:background .18s ease,color .18s ease,border-color .18s ease,transform .12s ease,box-shadow .18s ease}.menu-tab:hover{transform:translateY(-2px);box-shadow:0 4px 10px #0f172a1a}.menu-tab:active{transform:translateY(0) scale(.96)}.menu-tab.active{box-shadow:0 3px 8px -2px #2563eb59}@media (prefers-reduced-motion: reduce){.menu-tab{transition:background .18s ease,color .18s ease,border-color .18s ease}.menu-tab:hover,.menu-tab:active{transform:none}}.menu-tab .cnt{display:inline-flex;align-items:center;justify-content:center;margin-left:8px;min-width:24px;height:22px;padding:0 9px;border-radius:999px;color:#1d4ed8;background:linear-gradient(135deg,#e7f0ff,#cfe0ff);box-shadow:0 1px 3px #2563eb1f;font-size:11.5px;font-weight:800;line-height:1;vertical-align:middle;transition:box-shadow .15s ease,transform .15s ease}.menu-tab:hover .cnt{transform:translateY(-1px)}.menu-tab.active .cnt{box-shadow:0 2px 7px #2563eb38}.placeholder-panel{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:80px 20px;margin-top:20px;background:#fff;border:1px dashed var(--line-strong);border-radius:12px;color:var(--muted)}.placeholder-panel .logo{background:none;font-size:40px;width:auto;height:auto}.placeholder-panel h2{margin:0;color:var(--text)}.placeholder-panel p{margin:0}.status-tabs{display:flex;flex-wrap:wrap;gap:14px 8px;margin-top:14px}.status-tab{display:inline-flex;align-items:center;gap:8px;background:#fff;border:1px solid var(--line-strong);color:var(--text);padding:8px 14px;border-radius:10px;font-size:13px;font-weight:600}.status-tab:hover{background:#f1f5f9;border-color:#94a3b8}.status-tab.active{background:var(--head);color:#fff;border-color:var(--head)}.status-tab .step-no{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%;font-size:11px;font-weight:700;background:#e2e8f0;color:#475569}.status-tab.active .step-no{background:#ffffff40;color:#fff}.status-tab .cnt{background:#0f172a1a;padding:1px 8px;border-radius:999px;font-size:12px;font-weight:700}.status-tab.active .cnt{background:#fbbf24;color:#1e293b}.status-tab .cnt-breakdown{margin-left:4px;padding:1px 7px;border-radius:999px;font-size:10px;font-weight:600;letter-spacing:.01em;background:#0f172a0f;color:var(--muted)}.status-tab.active .cnt-breakdown{background:#ffffff4d;color:#78350f}.step-status-tabs .cnt{animation:step-cnt-pop .3s ease}@keyframes step-cnt-pop{0%{transform:scale(1.35)}to{transform:scale(1)}}@media (prefers-reduced-motion: reduce){.step-status-tabs .cnt{animation:none}}.status-tab{transition:background .18s ease,border-color .18s ease,color .18s ease,transform .12s ease,box-shadow .18s ease}.status-tab:hover{transform:translateY(-2px);box-shadow:0 4px 10px #0f172a1f}.status-tab:active{transform:translateY(0) scale(.96)}.status-tab.active{box-shadow:0 3px 10px #2563eb4d}@media (prefers-reduced-motion: reduce){.status-tab{transition:background .18s ease,border-color .18s ease,color .18s ease}.status-tab:hover,.status-tab:active{transform:none}}.controls{display:flex;gap:14px;align-items:flex-end;flex-wrap:wrap;background:var(--panel);padding:16px 18px;border-radius:12px;margin-top:16px;border:1px solid var(--line)}.field{display:flex;flex-direction:column;gap:5px}.field.grow{flex:1;min-width:220px}.field label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}.field input{padding:9px 11px;border:1px solid var(--line-strong);border-radius:8px;font-size:14px;background:#fff;color:var(--text)}.field input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #2563eb26}.btns{display:flex;gap:8px}button{cursor:pointer;font-size:14px;padding:9px 16px;border-radius:8px;border:1px solid transparent;font-weight:600;transition:background .12s,border-color .12s}button.primary{background:var(--accent);color:#fff}button.primary:hover:not(:disabled){background:var(--accent-dark)}button.ghost{background:#fff;border-color:var(--line-strong);color:var(--text)}button.ghost:hover{background:#f1f5f9}button:disabled{opacity:.55;cursor:not-allowed}.meta-row{display:flex;align-items:center;justify-content:space-between;margin:16px 2px 8px;color:var(--muted);font-size:13px;flex-wrap:wrap;gap:8px}.meta-right{display:flex;align-items:center;gap:16px}.muted{color:var(--muted);font-size:12px}.pagesize{display:flex;align-items:center;gap:6px;font-size:12px}.pagesize select{padding:5px 8px;border-radius:6px;border:1px solid var(--line-strong)}.error{background:#fee2e2;color:#b91c1c;border:1px solid #fecaca;padding:12px 14px;border-radius:8px;margin:8px 0;font-weight:500}.lab-dup-warning{display:flex;align-items:flex-start;gap:12px;background:#dc2626;border:1px solid #b91c1c;padding:14px 16px;border-radius:10px;margin:10px 0;box-shadow:0 2px 10px #dc262659}.lab-dup-warning-icon{font-size:20px;line-height:1.4;flex-shrink:0;color:#fff}.lab-dup-warning-text{flex:1;color:#fff;font-size:14px;font-weight:600;line-height:1.5}.lab-dup-warning-text strong{font-weight:800}.lab-dup-warning-note{margin-top:4px;font-size:12.5px;font-weight:500;font-style:italic;color:#ffffffd9}.lab-dup-warning-close{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:24px;height:24px;margin:0;padding:0;box-sizing:border-box;background:#fff3;color:#fff;border:none;border-radius:6px;font-size:12px;line-height:1;cursor:pointer}.lab-dup-warning-close:hover{background:#ffffff59}.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:12px;background:#fff;box-shadow:0 1px 3px #0f172a0d;max-height:68vh}.matching-view .table-wrap{max-height:88vh}.empty-panel{background:#fff;border:1px dashed var(--line-strong);border-radius:12px;padding:40px 24px;text-align:center;color:var(--text);margin-top:8px}.empty-panel p{margin:4px 0}.lab-controls{align-items:center;gap:10px;flex-wrap:wrap}.lab-datelbl{font-weight:700;color:var(--text);font-size:13px}.lab-controls input[type=date]{background:#fff;border:1px solid var(--line-strong);border-radius:8px;padding:5px 9px;font-size:13px;color:var(--text)}.lab-toggle{display:inline-flex;gap:4px;margin-left:4px}.meta-actions{display:inline-flex;gap:8px}.lab-stats{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:4px 0 2px}.lab-stat{display:inline-flex;align-items:center;gap:7px;background:#eef4ff;border:1px solid #c7d6ef;border-radius:999px;padding:3px 12px}.lab-stat-lbl{font-size:12px;font-weight:700;color:#33507e}.lab-stat-val{font-size:13px;font-weight:800;color:#1d4ed8}.lab-stats-sep{width:1px;align-self:stretch;background:var(--line-strong);margin:2px 4px}button.lab-stat{cursor:pointer;font:inherit}.lab-stat.clickable:hover{filter:brightness(.96)}.lab-stat.stat-on{outline:2px solid #2563eb;outline-offset:1px}.lab-stat-ok.stat-on{outline-color:#128a43}.lab-stat-fail.stat-on{outline-color:#d02525}.lab-stat-neutral.stat-on{outline-color:#64748b}.lab-stat-ok{background:#e7f8ee;border-color:#a7e0be}.lab-stat-ok .lab-stat-lbl{color:#1b6b3a}.lab-stat-ok .lab-stat-val{color:#128a43}.lab-stat-fail{background:#fdecec;border-color:#f3b4b4;max-width:340px}.lab-stat-fail .lab-stat-lbl{color:#a12020;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lab-stat-fail .lab-stat-val{color:#d02525}.lab-stat-neutral{background:#f1f5f9;border-color:#cbd5e1}.lab-stat-neutral .lab-stat-lbl{color:#475569}.lab-stat-neutral .lab-stat-val{color:#334155}.lab-stat-nee{background:#e0f2fe;border-color:#bae0fb}.lab-stat-nee .lab-stat-lbl,.lab-stat-nee .lab-stat-val{color:#075985}.lab-stat-nhpe{background:#dcfce7;border-color:#b7e6c8}.lab-stat-nhpe .lab-stat-lbl,.lab-stat-nhpe .lab-stat-val{color:#166534}.lab-stat-nee.stat-on{outline-color:#0284c7}.lab-stat-nhpe.stat-on{outline-color:#16a34a}tbody tr.row-fail{background:#fff0f0!important}tbody tr.row-fail:hover{background:#ffe1e1!important}tbody tr.row-fail td{color:#7a1414}tbody tr.row-unproc{background:#f4f6f9!important}tbody tr.row-unproc:hover{background:#e9edf3!important}tbody tr.row-unproc td{color:#556;font-style:italic}.lab-info-btn{width:22px;height:22px;border-radius:50%;border:1px solid #93b4e6;background:#eef4ff;color:#1d4ed8;font-weight:800;font-style:italic;font-family:Georgia,Times New Roman,serif;cursor:pointer;line-height:1;display:inline-flex;align-items:center;justify-content:center;margin-left:4px}.lab-info-btn:hover{background:#dbe7ff}.modal.lab-info-modal{width:min(560px,100%);background:#fff;color:#1e293b}.lab-info-modal .modal-head{background:#eef4ff;border-bottom:1px solid #d5e0f2}.lab-info-modal .modal-title{color:#14223b}.lab-info-modal .modal-head .ghost{color:#33507e;border-color:#c7d6ef;background:#fff}.lab-info-body{padding:16px;color:#1e293b;font-size:13.5px}.lab-info-body p{margin:0 0 10px;color:#1e293b}.lab-info-body .muted{color:#64748b}.lab-info-body code{background:#eef2f7;color:#14223b;padding:1px 5px;border-radius:4px;font-size:12.5px}.lab-info-table{width:100%;border-collapse:collapse;margin:10px 0}.lab-info-table th,.lab-info-table td{text-align:left;border:1px solid #d7dee8;padding:6px 9px;font-size:12.5px;color:#1e293b}.lab-info-table th{background:#f1f5f9;color:#14223b}.lab-info-legend li{color:#1e293b}.lab-msg-input{width:100%;box-sizing:border-box;border:1px solid #93b4e6;border-radius:6px;padding:4px 7px;font-size:12.5px;color:#14223b;background:#fff}.lab-msg-input:focus{outline:2px solid #2563eb;outline-offset:0}.lab-info-legend{list-style:none;padding:0;margin:10px 0;display:flex;flex-direction:column;gap:6px}.lab-info-legend li{display:flex;align-items:baseline;gap:8px}.lg-dot{width:11px;height:11px;border-radius:3px;flex:0 0 auto;transform:translateY(1px)}.lg-dot.ok{background:#128a43}.lab-checklist-btn{position:relative;overflow:hidden;isolation:isolate;transition:background .3s ease,border-color .3s ease,box-shadow .3s ease}button.ghost.lab-checklist-btn{border-color:#dc2626;border-width:2px;box-shadow:inset 0 0 10px #dc262640}.lab-checklist-fill{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;background:linear-gradient(90deg,#bfdbfe,#93c5fd);transition:width .5s ease}.lab-checklist-label{position:relative;z-index:1;display:inline-flex;align-items:center;gap:6px}.lab-checklist-pct{font-size:10.5px;font-weight:800;background:#0f172a24;padding:1px 6px;border-radius:999px}.lab-checklist-btn.overdue{background:#fee2e2;color:#7f1d1d;animation:checklist-pulse 2.2s ease-in-out infinite}button.ghost.lab-checklist-btn.overdue{border-color:#dc2626}.lab-checklist-btn.overdue .lab-checklist-fill{background:linear-gradient(90deg,#fecaca,#fca5a5)}.lab-checklist-btn.overdue .lab-checklist-pct{background:#7f1d1d29}@media (prefers-reduced-motion: reduce){.lab-checklist-btn.overdue{animation:none}}button.ghost.lab-checklist-btn.complete{border-color:#22c55e;box-shadow:inset 0 0 10px #22c55e40}@keyframes checklist-pulse{0%,to{box-shadow:0 0 #f8717173}50%{box-shadow:0 0 0 6px #f8717100}}.modal.checklist-modal{width:min(620px,100%);background:#fff;color:#1e293b}.checklist-modal .modal-head{background:#eef4ff;border-bottom:1px solid #d5e0f2}.checklist-modal .modal-title{color:#14223b;display:flex;align-items:center;gap:10px;flex-wrap:wrap}.checklist-modal .modal-head .ghost{color:#33507e;border-color:#c7d6ef;background:#fff}.checklist-modal .modal-head .ghost.active{background:#2563eb;color:#fff;border-color:#2563eb}.checklist-history-badge{font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.03em;background:#fef3c7;color:#92400e;padding:2px 8px;border-radius:999px}.checklist-body{padding:14px 16px;color:#1e293b;font-size:13.5px;overflow:auto}.checklist-body .muted{color:#64748b}.checklist-body .pad{padding:10px 2px}.checklist-missed-warning{background:#fef2f2;border:1px solid #fca5a5;color:#7f1d1d;padding:9px 12px;border-radius:8px;font-size:12.5px;margin-bottom:10px}.checklist-missed-warning .link-btn{color:#b91c1c;text-decoration:underline}.checklist-history-row{display:flex;align-items:center;gap:8px;margin-bottom:10px}.checklist-history-row label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.checklist-history-row input[type=date]{padding:5px 8px;border-radius:6px;border:1px solid #c7d6ef;font-size:12.5px}.checklist-progress{display:flex;align-items:center;gap:10px;margin-bottom:12px}.checklist-progress-track{flex:1;height:14px;border-radius:999px;background:#e2e8f0;border:1px solid #cbd5e1;overflow:hidden;position:relative}.checklist-progress-fill{height:100%;border-radius:999px 0 0 999px;background:linear-gradient(90deg,#60a5fa,#2563eb);transition:width .5s cubic-bezier(.34,1.4,.64,1)}.checklist-progress-fill.complete{border-radius:999px;background:linear-gradient(90deg,#34d399,#059669)}.checklist-progress-label{font-size:11.5px;font-weight:700;color:#334155;white-space:nowrap}.checklist-list{list-style:none;padding:0;margin:0 0 12px;display:flex;flex-direction:column;gap:2px}.checklist-row{display:flex;align-items:center;gap:10px;padding:8px 4px;border-bottom:1px solid #eef1f6}.checklist-item{display:flex;align-items:center;gap:8px;cursor:pointer;flex:1;min-width:0}.checklist-item input[type=checkbox]{width:17px;height:17px;cursor:pointer;flex-shrink:0}.checklist-item span{word-break:break-word}.checklist-item.checked span{color:#64748b;text-decoration:line-through}.checklist-meta{font-size:11.5px;white-space:nowrap}.checklist-item-actions{display:flex;gap:4px;flex-shrink:0}.checklist-edit-input{flex:1;min-width:0;border:1px solid #93b4e6;border-radius:6px;padding:5px 8px;font-size:13px;color:#14223b;background:#fff}.checklist-edit-input:focus{outline:2px solid #2563eb;outline-offset:0}.checklist-add-row{display:flex;gap:8px;margin-top:6px;padding-top:10px;border-top:1px dashed #d7dee8}.checklist-submit-row{margin-top:14px;display:flex;justify-content:flex-end}.checklist-log{margin-top:14px;border-top:1px solid #e2e8f0;padding-top:10px}.checklist-log-title{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;margin-bottom:6px}.checklist-log-table{width:100%;border-collapse:collapse;font-size:12px}.checklist-log-table th,.checklist-log-table td{text-align:left;border:1px solid #e2e8f0;padding:5px 8px;color:#1e293b}.checklist-log-table th{background:#f1f5f9;color:#14223b}.lg-dot.fail{background:#d02525}.lg-dot.neutral{background:#94a3b8}.cell-sno{color:var(--muted);text-align:right;width:44px}.lab-loc{display:inline-block;padding:1px 11px;border-radius:999px;font-size:12px;font-weight:700}.lab-loc-nee{background:#e0f2fe;color:#075985}.lab-loc-nhpe{background:#dcfce7;color:#166534}td.cell-icd_codes{white-space:normal!important;max-width:340px;overflow:visible!important;text-overflow:clip!important;word-break:break-word}table{border-collapse:collapse;width:100%;font-size:13px}thead th{position:sticky;background:#f1f5f9}.head-row th{top:0;z-index:2}.filter-row th{top:38px;z-index:1;background:#f8fafc}thead th{text-align:left;padding:9px 12px;border-bottom:1px solid var(--line);white-space:nowrap;font-weight:600;color:var(--head)}.head-row th{cursor:pointer;-webkit-user-select:none;user-select:none}.head-row th:hover{background:#e2e8f0}.head-row th.sorted{color:var(--accent)}.th-label{margin-right:4px}.arrow{font-size:10px;color:var(--accent)}.col-filter{width:100%;min-width:80px;padding:5px 8px;font-size:12px;border:1px solid var(--line-strong);border-radius:6px;background:#fff}.col-filter:focus{outline:none;border-color:var(--accent)}select.col-filter{cursor:pointer;background:#fff;height:28px;max-width:240px}.filter-combo{display:flex;gap:3px;align-items:stretch}.filter-combo .col-filter{flex:1;min-width:70px}.combo-back{flex:0 0 auto;padding:0 7px;border:1px solid var(--line-strong);background:#f1f5f9;color:var(--muted);border-radius:6px;font-size:11px;font-weight:700}.combo-back:hover{background:#e2e8f0;color:var(--text)}.table-actions{display:flex;gap:8px;margin:0 0 10px}.clear-filter-btn{padding:7px 14px;border-radius:8px;border:1px solid #fca5a5;background:#fee2e2;color:#b91c1c;font-weight:700;font-size:13px;cursor:pointer}.clear-filter-btn:hover{background:#fecaca;border-color:#f87171}.confirm-modal{width:min(520px,100%);background:linear-gradient(160deg,#0b1220,#111c33);color:#e8eefc;border:1px solid #2b3f63;box-shadow:0 0 0 1px #38bdf840,0 18px 50px #0009}.confirm-modal .modal-head{background:linear-gradient(90deg,#15233f,#1b2c4d);border-bottom:1px solid #2b3f63}.confirm-modal .modal-title{color:#38bdf8;font-family:inherit;font-size:15px;font-weight:800;letter-spacing:.3px}.confirm-modal .ghost.small{background:transparent;border-color:#3b5680;color:#9fb6dd}.confirm-modal .ghost.small:hover{background:#38bdf81f;color:#e8eefc}.confirm-modal.ms-apply-modal{width:min(640px,100%)}.ms-apply-dd-lbl,.ms-apply-json-lbl,.ms-apply-changing-lbl{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#9fb6dd;margin-bottom:-4px}.ms-apply-changing{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:10px 12px;background:#facc151a;border:1px solid #55480f;border-radius:8px;font-size:13px}.ms-apply-changing-key{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-weight:700;color:#fde047}.ms-apply-changing-old{color:#93a3bb;text-decoration:line-through}.ms-apply-changing-arrow{color:#9fb6dd}.ms-apply-changing-new{color:#4ade80;font-weight:700}.json-line-hl{display:block;background:#facc1529;border-left:3px solid #facc15;margin-left:-16px;padding-left:13px}.ms-apply-dd-select{width:100%;padding:8px 10px;font-size:13px;border-radius:8px;background:#0b1220;color:#e8eefc;border:1px solid #2b3f63}.ms-apply-dd-select .ms-opt-high{background:#dcfce7;color:#15803d}.ms-apply-dd-select .ms-opt-med{background:#fef9c3;color:#854d0e}.ms-apply-dd-select .ms-opt-low{background:#fee2e2;color:#b91c1c}.ms-apply-dd-select .ms-opt-none{background:#f1f5f9;color:#64748b}.ms-apply-json{max-height:320px;overflow:auto;margin:0;background:#0b1220;border:1px solid #2b3f63;border-radius:8px}.ms-apply-row{display:flex;justify-content:space-between;gap:12px;font-size:12.5px}.ms-apply-lbl{color:#9fb6dd;font-weight:700;flex:0 0 auto}.ms-apply-val{color:#e8eefc;text-align:right}.ms-apply-val.mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.ms-apply-results{display:flex;flex-direction:column;gap:8px}.ms-apply-result{font-size:13.5px;font-weight:700;padding:8px 12px;border-radius:8px;border:1px solid}.ms-apply-result.ok{background:#15803d2e;color:#4ade80;border-color:#1c5334}.ms-apply-result.fail{background:#b91c1c2e;color:#fca5a5;border-color:#5c211d}.confirm-body{padding:18px 20px;display:flex;flex-direction:column;gap:14px}.confirm-warn{margin:0;background:#f43f5e24;color:#fb7185;border:1px solid #f43f5e;box-shadow:0 0 16px #f43f5e40 inset;padding:12px 14px;border-radius:8px;font-weight:800;font-size:15px}.confirm-note{margin:0;padding:10px 12px;border-radius:8px;font-size:12.5px;line-height:1.5;background:#38bdf81a;border:1px solid #2b3f63;color:#cfe3ff}.confirm-note strong{color:#7dd3fc}.confirm-done{margin:0;padding:10px 12px;border-radius:8px;font-weight:700;font-size:13.5px;background:#34d3991f;border:1px solid #34d399;color:#6ee7b7}.action-subtabs{display:flex;gap:12px;margin:12px 0 14px}.action-subtab{min-width:120px;padding:12px 20px;border-radius:12px;border:1.5px solid var(--line-strong);background:#fff;color:var(--text);font-weight:700;font-size:13px;cursor:pointer;transition:all .15s ease}.action-subtab:hover{background:#f1f5f9;border-color:var(--accent)}.action-subtab.active{background:var(--accent);border-color:var(--accent);color:#fff;box-shadow:0 3px 10px #2563eb59}.match-table{width:auto;min-width:100%}.match-toolbar{display:flex;align-items:center;gap:12px;margin:4px 0 12px;flex-wrap:wrap}.match-toolbar select,.match-search{padding:8px 10px;border:1px solid var(--line-strong);border-radius:8px;background:#fff;color:var(--text);font-size:13px}.match-search{min-width:280px}.match-table th,.match-table td{font-size:11px}.match-table tbody td{padding:5px 8px}.match-table td{vertical-align:top;max-width:260px}.match-table th:nth-child(-n+5),.match-table td:nth-child(-n+5){padding-left:5px;padding-right:5px}.match-table th:nth-child(1),.match-table td:nth-child(1){padding-right:2px}.match-table th:nth-child(2),.match-table td:nth-child(2){padding-left:2px}.match-table th:nth-child(11),.match-table td:nth-child(11){padding-right:3px}.match-table th:nth-child(12),.match-table td:nth-child(12){padding-left:3px}.match-table .cell-desc{white-space:normal;word-break:break-word;overflow:visible;text-overflow:clip;max-width:100px}.match-table .cell-matchsub-dd{min-width:208px;max-width:624px}.match-table .ms-cell{display:flex;flex-direction:column;gap:4px}.match-table .ms-dd-wrap{display:flex;align-items:center;gap:4px;flex-wrap:nowrap}.match-table .ms-dropdown{flex:1 1 auto;min-width:60px;width:520px;padding:3px 5px;border:1px solid var(--line-strong);border-radius:6px;background:#fff;color:var(--text);font-size:11px}.match-table .ms-dropdown:disabled{background:var(--row-alt);color:var(--muted)}.match-table .ms-full-preview{color:var(--muted);font-size:10.5px;line-height:1.35;white-space:normal;overflow-wrap:break-word}.match-table .ms-opt-high{background:#dcfce7;color:#15803d}.match-table .ms-opt-med{background:#fef9c3;color:#854d0e}.match-table .ms-opt-low{background:#fee2e2;color:#b91c1c}.match-table .ms-opt-none{background:#f1f5f9;color:#64748b}.match-table .ms-status-badge{display:inline-block;padding:3px 8px;border-radius:999px;font-size:10.5px;font-weight:700;white-space:nowrap;border:1px solid}.match-table .ms-status-badge.exception{background:#f1f5f9;color:#64748b;border-color:#cbd5e1}.match-table .ms-status-badge.verify{background:#fef3c7;color:#b45309;border-color:#fde68a}.match-table .ms-tick{flex:0 0 auto;width:19px;height:19px;border-radius:5px;border:1px solid var(--line-strong);background:#fff;color:#15803d;font-size:11px;font-weight:700;line-height:1;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;padding:0}.match-table .ms-tick:hover:not(:disabled){background:#dcfce7}.match-table .ms-tick:disabled{color:var(--muted);cursor:default;opacity:.6}.match-table .ms-cross{flex:0 0 auto;width:19px;height:19px;border-radius:999px;border:1px solid #fca5a5;background:#fee2e2;color:#b91c1c;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;padding:0;transition:background .12s ease,border-color .12s ease,transform .08s ease}.match-table .ms-cross:hover{background:#fecaca;border-color:#f87171}.match-table .ms-cross:active{transform:scale(.92)}.match-table .ms-cross svg{display:block}.match-table .ms-new{flex:0 0 auto;padding:0 6px;height:19px;border-radius:5px;border:1px solid var(--line-strong);background:#fff;color:var(--accent);font-size:10px;font-weight:700;cursor:pointer;white-space:nowrap}.match-table .ms-new:hover{background:#eff6ff;border-color:var(--accent)}.match-table .cell-spec{white-space:normal;word-break:break-word;overflow:visible;text-overflow:clip;max-width:400px}.match-table .cell-fac{white-space:normal;overflow-wrap:break-word;word-break:normal;overflow:visible;text-overflow:clip;width:auto;max-width:800px}.match-table .match-ours{color:var(--accent);font-weight:600;white-space:normal}.match-table .match-sub{white-space:normal;cursor:help}.match-table .match-reason{color:var(--muted);font-family:ui-monospace,Menlo,monospace;font-size:10.5px;max-width:130px;white-space:normal;overflow-wrap:break-word;overflow:visible;text-overflow:clip}.conf{display:inline-block;padding:2px 8px;border-radius:999px;font-size:11px;font-weight:800;letter-spacing:.3px}.conf-HIGH{background:#dcfce7;color:#15803d}.conf-MEDIUM{background:#dbeafe;color:#1d4ed8}.conf-LOW{background:#fef3c7;color:#b45309}.conf-NONE{background:#f1f5f9;color:#64748b}.match-table tr.grp-start td{border-top:2px solid var(--line-strong)}.status-tabs.ins-subtabs{margin-top:15px;margin-bottom:10px}.te-btn{margin-left:8px;background:#0d9488}.te-btn:hover{background:#0f766e}.modal.te-modal{width:min(560px,100%)}.te-body{padding:16px 20px;display:flex;flex-direction:column;gap:12px;max-height:74vh;overflow:auto}.te-field{display:grid;grid-template-columns:110px 1fr;align-items:center;gap:12px}.te-field-col{grid-template-columns:1fr;align-items:start;gap:5px}.te-lbl{font-size:12px;font-weight:700;color:var(--muted)}.te-input{padding:8px 10px;border:1px solid var(--line-strong);border-radius:8px;background:#fff;color:var(--text);font-size:13px;width:100%;box-sizing:border-box}.te-input[readonly]{background:#f1f5f9;color:var(--muted)}.te-textarea{padding:8px 10px;border:1px solid var(--line-strong);border-radius:8px;background:#fff;color:var(--text);font-size:13px;width:100%;box-sizing:border-box;resize:vertical;font-family:inherit}.dup-pill{display:inline-block;padding:2px 9px;border-radius:999px;background:#e0f2fe;color:#0369a1;font-weight:700}.dup-pill.dup-pill-alt{background:#e0e7ff;color:#4338ca}.info-icon{margin-left:6px;border:0;background:none;cursor:pointer;line-height:1;padding:0;vertical-align:middle;display:inline-flex}.info-img{width:15px;height:15px;vertical-align:middle;display:inline-block}.info-img-lg{width:18px;height:18px;margin-right:6px}.info-icon:hover .info-img{filter:brightness(1.15)}.modal.rules-modal{background:#fff;color:var(--text);border:1px solid var(--line-strong)}.modal.rules-modal .modal-head{background:#eef5ff;border-bottom:1px solid #d6e2f7}.modal.rules-modal .modal-title{color:#0369a1;display:flex;align-items:center}.modal.rules-modal .ghost.small,.modal.rules-modal button.ghost.small{background:#fff;border-color:var(--line-strong);color:var(--text)}.modal.rules-modal button.ghost.small:hover{background:#f1f5f9}.modal.rules-modal .rules-body{padding:16px 20px;color:var(--text);font-size:13px;line-height:1.6;max-height:70vh;overflow:auto}.rules-body p{margin:0 0 12px}.rules-body code{background:#f1f5f9;padding:1px 5px;border-radius:4px;font-size:12px}.rules-list{margin:0 0 12px;padding-left:20px;display:flex;flex-direction:column;gap:8px}.rules-list li{padding-left:4px}.rules-list .conf{margin-right:6px}.showall-body{padding:14px 18px;display:flex;flex-direction:column;gap:10px;max-height:70vh;overflow:auto}.showall-ours{display:flex;flex-direction:column;gap:3px;padding:10px 12px;background:var(--row-hover);border:1px solid var(--line);border-radius:8px}.showall-ours-lbl{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.4px;color:var(--muted)}.showall-ours-val{font-size:13.5px;font-weight:600;color:var(--text)}.showall-sec{font-size:12px;font-weight:700;color:var(--head);text-transform:uppercase;letter-spacing:.4px;margin-top:4px}.showall-body .confirm-list{border-color:var(--line);max-height:none;overflow:visible}.showall-body .confirm-list th{background:#eef5ff;color:#0369a1}.showall-body .confirm-list td{background:#fff;color:var(--text);border-bottom:1px solid var(--line)}.showall-body .confirm-list tbody tr:nth-child(2n) td{background:#f5f9ff}.showall-body .confirm-list tbody tr:hover td{background:#dbeafe;color:var(--text)}.toast{position:fixed;top:20px;right:20px;z-index:2000;max-width:380px;padding:13px 16px;border-radius:10px;display:flex;align-items:flex-start;gap:12px;font-size:13.5px;font-weight:600;line-height:1.45;box-shadow:0 12px 32px #0f172a47;animation:toast-in .25s ease}.toast-msg{flex:1}.toast-success{background:#ecfdf5;border:1px solid #34d399;color:#047857}.toast-warn{background:#fffbeb;border:1px solid #f59e0b;color:#92400e}.toast-error{background:#fef2f2;border:1px solid #f87171;color:#b91c1c}.toast-x{background:none;border:0;cursor:pointer;color:inherit;font-size:13px;opacity:.65;padding:0;line-height:1.2}.toast-x:hover{opacity:1}@keyframes toast-in{0%{transform:translate(24px);opacity:0}to{transform:translate(0);opacity:1}}.confirm-list{max-height:320px;overflow:auto;border:1px solid #2b3f63;border-radius:8px}.confirm-list table{width:100%;border-collapse:collapse;font-size:13px}.confirm-list th{position:sticky;top:0;background:#15233f;text-align:left;padding:8px 12px;border-bottom:1px solid #2b3f63;font-weight:700;color:#38bdf8}.confirm-list td{padding:7px 12px;border-bottom:1px solid #1e3052;color:#d6e2f7;background:#0e1830}.confirm-list td.res-ok{color:#6ee7b7;font-weight:700}.confirm-list td.res-fail{color:#fb7185;font-weight:700}.confirm-list tbody tr:nth-child(2n) td{background:#11203c}.confirm-list tbody tr:hover td{background:#1a2f54;color:#fff}.confirm-list tr:last-child td{border-bottom:0}.confirm-actions{display:flex;justify-content:flex-end;gap:10px}.confirm-modal .confirm-body{flex:1 1 auto;min-height:0;overflow:hidden}.confirm-modal .confirm-warn,.confirm-modal .confirm-note,.confirm-modal .confirm-done,.confirm-modal .confirm-actions{flex-shrink:0}.confirm-modal .confirm-list{flex:1 1 auto;min-height:90px;max-height:none}.modal.te-init-modal{width:min(760px,100%)}.te-init-all{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:8px 10px;border-radius:8px;background:#38bdf81a;border:1px solid #2b3f63}.te-init-all-lbl{font-size:12.5px;font-weight:700;color:#cfe3ff}.te-init-all .filterbtn{padding:3px 12px}.te-init-err{max-width:240px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#fca5a5}.te-retry-sel{background:#0e1830;color:#e8eefc;border:1px solid #2b3f63;border-radius:6px;padding:3px 8px;font-size:13px;font-weight:700;cursor:pointer}.cell-cmt{min-width:118px}.cmt-cell{display:flex;align-items:center;gap:6px}.cmt-preview{flex:1 1 auto;max-width:100px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12.5px;color:inherit}.cmt-empty{flex:1 1 auto;color:var(--muted)}.cmt-btn{flex:0 0 auto;display:inline-flex;align-items:center;gap:3px;background:#eef4ff;border:1px solid #c7d6ef;color:#1e293b;border-radius:6px;padding:2px 7px;cursor:pointer;font-size:13px;line-height:1.4}.cmt-btn:hover{background:#dbe7ff;border-color:#9db8e6}.cmt-count{background:#2563eb;color:#fff;border-radius:9px;padding:0 6px;font-size:11px;font-weight:700;min-width:16px;text-align:center}.modal.cmt-modal{width:min(680px,100%);display:flex;flex-direction:column;max-height:86vh}.cmt-tabs{display:flex;gap:4px;padding:0 16px;border-bottom:1px solid #223350}.cmt-tab{background:transparent;border:none;color:#9fb0d0;cursor:pointer;padding:9px 14px;font-size:13.5px;font-weight:700;border-bottom:2px solid transparent}.cmt-tab.active{color:#e8eefc;border-bottom-color:#2563eb}.cmt-body{padding:14px 16px;overflow:auto;display:flex;flex-direction:column;gap:12px;min-height:0}.cmt-thread{display:flex;flex-direction:column;gap:8px}.cmt-none{color:#64748b;padding:10px 0;font-size:13px}.cmt-item{background:#0e1830;border:1px solid #22335a;border-radius:8px;padding:8px 10px}.cmt-text{color:#e8eefc;font-size:13.5px;white-space:pre-wrap;word-break:break-word}.cmt-meta{display:flex;justify-content:space-between;align-items:center;margin-top:6px;font-size:11.5px;color:#7e8db0}.cmt-actions{display:flex;gap:10px}.link-btn{background:none;border:none;color:#60a5fa;cursor:pointer;font-size:12px;font-weight:700;padding:0}.link-btn.danger{color:#f87171}.cmt-edit textarea,.cmt-new textarea{width:100%;background:#0b1428;color:#e8eefc;border:1px solid #2b3f63;border-radius:6px;padding:7px 9px;font-size:13px;font-family:inherit;resize:vertical;box-sizing:border-box}.cmt-edit-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:6px}.cmt-new{display:flex;flex-direction:column;gap:8px;border-top:1px solid #22335a;padding-top:12px}.cmt-new .primary{align-self:flex-end}.cmt-logs table{width:100%;border-collapse:collapse;font-size:12.5px}.cmt-logs th{text-align:left;color:#9fb0d0;border-bottom:1px solid #2b3f63;padding:6px 8px;position:sticky;top:0;background:#0c1526}.cmt-logs td{border-bottom:1px solid #1b2942;padding:6px 8px;color:#dbe4f7;vertical-align:top;background:#0e1830}.cmt-logs tbody tr:nth-child(2n) td{background:#11203c}.cmt-logs tbody tr:hover td{background:#1a2f54}.cmt-dt{white-space:nowrap;color:#b7c4e0}.cmt-act{text-transform:capitalize;font-weight:700;font-size:11px;padding:1px 7px;border-radius:10px}.cmt-act-create{background:#14532d;color:#86efac}.cmt-act-edit{background:#1e3a5f;color:#93c5fd}.cmt-act-delete{background:#4c1d24;color:#fca5a5}.cmt-act-step_moved{background:#422006;color:#fdba74}.cmt-by{color:#7e8db0;font-size:10.5px;margin-top:2px}.cmt-move{color:#fdba74;font-size:10.5px;margin-top:2px}.confirm-modal .ghost{background:transparent;border:1px solid #3b5680;color:#9fb6dd}.confirm-modal .ghost:hover{background:#9fb6dd1f;color:#e8eefc}.confirm-modal .confirm-actions .primary{background:linear-gradient(90deg,#22d3ee,#34d399);border:0;color:#04121a;font-weight:800;letter-spacing:.2px;box-shadow:0 0 18px #34d39973}.confirm-modal .confirm-actions .primary:hover{background:linear-gradient(90deg,#67e8f9,#6ee7b7);box-shadow:0 0 24px #34d399a6}.check-col{width:90px;text-align:center;padding-left:6px!important;padding-right:6px!important}.ucdavis-table .cell-retry_count,.ucdavis-table .cell-rpa_failed{width:60px;text-align:center}.ucdavis-table .cell-current_index{width:90px;text-align:center}.ucdavis-table .cell-additional_message{width:420px;max-width:420px}.ucdavis-table td.cell-additional_message{white-space:normal;word-break:break-word;overflow:visible;text-overflow:clip}.ucdavis-table-failed .cell-additional_message{width:auto;max-width:none}.ucdavis-table-failed td.cell-additional_message{white-space:nowrap}.check-col input{width:16px;height:16px;cursor:pointer}.head-row th.check-col{cursor:default}.ms-head{display:flex;flex-direction:column;align-items:center;gap:3px}.ms-label{font-size:11px;font-weight:600;color:var(--head);white-space:nowrap}tbody tr.row-selected{background:#dbeafe!important}.sel-count{margin-left:12px;color:var(--accent);font-weight:700}.sel-clear{margin-left:8px;background:none;border:0;color:var(--accent);text-decoration:underline;cursor:pointer;font-size:12px;font-weight:600}tbody td{padding:8px 12px;border-bottom:1px solid var(--line);white-space:nowrap;max-width:280px;overflow:hidden;text-overflow:ellipsis}tbody tr:nth-child(2n){background:var(--row-alt)}tbody tr:hover{background:var(--row-hover)}tbody tr{transition:background .15s ease}@media (prefers-reduced-motion: reduce){tbody tr{transition:none}}.cell-reason{max-width:340px}.reason{color:var(--warn)}.cell-id,.cell-ref_id{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;color:var(--text)}.test-pat{display:inline-flex;flex-direction:column;align-items:center;gap:1px;cursor:help}.test-pat-mark{font-size:8px;font-weight:700;color:#dc2626;line-height:1;text-transform:lowercase;letter-spacing:.2px;white-space:nowrap}.test-pat-ring{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;padding:0 6px;border:2px solid #dc2626;border-radius:999px;color:#dc2626;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;background:#fff}.cell-created_at,.cell-modified_at{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px}.empty{text-align:center;padding:36px;color:var(--muted);font-style:italic}.pager{display:flex;align-items:center;gap:8px;margin-top:14px;justify-content:center}.pager button{background:#fff;border:1px solid var(--line-strong);color:var(--text);padding:7px 12px}.pager button:hover:not(:disabled){background:#f1f5f9}.pageinfo{margin:0 10px;color:var(--muted);font-size:13px}.foot{text-align:center;margin-top:10px;color:var(--muted);font-size:12px}.te-view{margin-top:16px}.rt-header{margin-top:4px;align-items:flex-start;border-bottom:1px solid var(--line-strong);padding-bottom:12px;margin-bottom:14px}.rt-header .rt-count-bar{margin-left:auto;align-self:center}.rt-count-bar{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:12px;color:var(--muted)}.rt-count-bar label{font-weight:600}.rt-count-bar select{padding:5px 10px;border:1px solid var(--line-strong);border-radius:8px;font-size:13px;background:#fff;color:var(--text);cursor:pointer}.rt-count-bar .te-custom input{padding:5px 9px;border:1px solid var(--line-strong);border-radius:8px;font-size:13px}.subtabs-2{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:0 0 14px}.rt-status-header{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:14px}.rt-status-header .subtabs-2{margin:0;flex:1;min-width:240px}.subtabs-2 .status-tab{background:#fff;border:1px solid var(--line-strong);border-radius:999px;color:var(--text);padding:6px 16px;font-size:13px;font-weight:600}.subtabs-2 .status-tab:hover{background:#f1f5f9;color:var(--text)}.subtabs-2 .status-tab.active{background:var(--head);color:#fff;border-color:var(--head)}.subtabs-2 .status-tab .cnt{background:#0f172a1a;color:var(--muted)}.subtabs-2 .status-tab.active .cnt{background:#fbbf24;color:#1e293b}.te-daterange{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:12px}.te-custom{display:inline-flex;align-items:center;gap:8px}.te-custom input{padding:6px 9px;border:1px solid var(--line-strong);border-radius:8px;font-size:13px;background:#fff}.te-daterange-label{margin-left:auto;font-size:12px}.te-q{color:var(--text);font-size:15px}.head-row th.nosort{cursor:default}.head-row th.nosort:hover{background:#f1f5f9}.json-link{background:transparent;border:1px solid var(--accent);color:var(--accent);padding:2px 10px;border-radius:999px;font-size:12px;font-weight:600}.json-link:hover{background:var(--accent);color:#fff}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a8c;display:flex;align-items:center;justify-content:center;padding:24px;z-index:100}.modal{background:#0f172a;color:#e2e8f0;border-radius:12px;width:min(860px,100%);max-height:86vh;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 20px 60px #00000073;border:1px solid #1e293b}.modal-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;background:#1e293b;border-bottom:1px solid #334155}.modal-title{font-size:13px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;color:#cbd5e1;word-break:break-word}.modal-actions{display:flex;gap:8px;flex-shrink:0}button.ghost.small{padding:5px 12px;font-size:12px;background:#0f172a;border-color:#475569;color:#e2e8f0}button.ghost.small:hover{background:#334155}.json-warn{padding:8px 16px;background:#7c2d12;color:#fed7aa;font-size:12px}.json-saved{padding:8px 16px;background:#064e3b;color:#6ee7b7;font-size:12px;font-weight:600}.json-edit{display:block;width:100%;box-sizing:border-box;margin:0;padding:16px;min-height:360px;max-height:70vh;border:0;outline:none;font-size:12.5px;line-height:1.55;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;white-space:pre-wrap;word-break:break-word}.json-edit-wrap{position:relative}.json-edit-overlay{position:absolute;top:0;right:0;bottom:0;left:0;margin:0;pointer-events:none;overflow:hidden;background:#0b1220;color:#e8eefc}.json-edit-input{position:relative;z-index:2;background:transparent;color:transparent;caret-color:#e8eefc;overflow:auto;resize:vertical}.json-edit-input::selection{background:#60a5fa59}.modal-actions .primary.small{padding:4px 12px;font-size:12px}.json-view{margin:0;padding:16px;overflow:auto;font-size:12.5px;line-height:1.55;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;white-space:pre}.jv-key{color:#7dd3fc}.jv-str{color:#86efac}.jv-num{color:#fca5a5}.jv-bool{color:#fcd34d}.jv-null{color:#c4b5fd}.head-row th.logcol{color:#0e7490;background:#ecfeff}.head-row th.logcol:hover{background:#cffafe}td.cell-log{text-align:center}.logs-modal{width:min(1280px,100%);height:88vh;background:#f8fafc}.logs-body{display:flex;flex:1;min-height:0}.logs-sidebar{width:360px;min-width:320px;max-width:42%;display:flex;flex-direction:column;background:#fff;border-right:1px solid var(--line-strong)}.logs-filterbar{display:flex;flex-wrap:wrap;gap:6px;align-items:center;padding:10px 12px;background:#fff;border-bottom:1px solid var(--line)}.filterbtn{background:#f1f5f9;border:1px solid var(--line-strong);color:var(--text);padding:5px 12px;border-radius:999px;font-size:12px;font-weight:600}.filterbtn:hover:not(:disabled){background:#e2e8f0}.filterbtn.active{background:var(--accent);color:#fff;border-color:var(--accent)}.filterbtn:disabled{opacity:.4;cursor:not-allowed}.filterbtn .cnt{margin-left:6px;background:#0f172a1f;padding:0 6px;border-radius:999px;font-size:11px}.filterbtn.active .cnt{background:#ffffff47}.logs-list{flex:1;display:flex;flex-direction:column;gap:4px;padding:10px 12px;overflow:auto;min-height:0}.logs-list .pad{padding:6px 2px}.logfile{display:block;width:100%;text-align:left;background:#f8fafc;border:1px solid var(--line);color:var(--text);padding:7px 10px;border-radius:6px;font-size:12px;line-height:1.35;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;white-space:normal;overflow-wrap:anywhere;word-break:break-all}.logfile:hover{background:#eef2f7;border-color:var(--line-strong)}.logfile.active{background:var(--accent);color:#fff;border-color:var(--accent)}.logs-day-group{display:flex;flex-direction:column;gap:4px}.logs-day-head{display:flex;align-items:center;gap:6px;width:100%;text-align:left;background:#eef2f7;border:1px solid var(--line-strong);color:var(--text);padding:7px 10px;border-radius:6px;font-size:12.5px;font-weight:700}.logs-day-head:hover{background:#e2e8f0}.logs-day-head.expanded{background:#dbeafe;border-color:var(--accent)}.logs-day-head .arrow{font-size:10px;width:10px}.logs-day-head .cnt{margin-left:auto;background:#0f172a1f;padding:0 6px;border-radius:999px;font-size:11px;font-weight:600}.logfile-nested{margin-left:16px;width:calc(100% - 16px)}.logs-view{flex:1;min-width:0;min-height:0;background:#fff;display:flex}.log-frame{flex:1;width:100%;height:100%;border:0;background:#fff}.view-toggle{display:inline-flex;border:1px solid #475569;border-radius:8px;overflow:hidden;margin-right:4px}.vt-btn{background:#0f172a;color:#cbd5e1;border:0;padding:5px 12px;font-size:12px;font-weight:600;cursor:pointer}.vt-btn:hover{background:#1e293b}.vt-btn.active{background:var(--accent);color:#fff}.shots-gallery{flex:1;overflow:auto;background:#f1f5f9;padding:14px;display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px;align-content:start}.shots-gallery .pad{grid-column:1 / -1}.shot{position:relative;display:block;background:#fff;border:1px solid var(--line-strong);border-radius:8px;overflow:hidden;text-decoration:none}.shot img{display:block;width:100%;height:auto}.shot-no{position:absolute;top:6px;left:6px;background:#0f172acc;color:#fff;font-size:11px;padding:1px 7px;border-radius:999px}.logs-view .pad{padding:18px}a.linkbtn{text-decoration:none;display:inline-flex;align-items:center}.audit-app{max-width:1640px}.audit-toolbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px 16px;margin-top:16px}.audit-subtabs{margin-top:0}.audit-actions{display:flex;align-items:center;gap:10px}.audit-lastrun{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11.5px}.audit-btn{display:inline-flex;align-items:center;gap:7px;background:#fff;border:1px solid var(--line-strong);color:var(--text);padding:8px 14px;border-radius:9px;font-size:13px;font-weight:600;cursor:pointer;transition:background .12s ease,border-color .12s ease,box-shadow .12s ease}.audit-btn:hover:not(:disabled){background:#f1f5f9;border-color:#94a3b8}.audit-btn:disabled{opacity:.65;cursor:default}.audit-sync-btn{background:var(--accent);border-color:var(--accent);color:#fff;box-shadow:0 2px 6px #2563eb40}.audit-sync-btn:hover:not(:disabled){background:var(--accent-dark);border-color:var(--accent-dark)}.audit-sync-msg{color:#15803d;font-size:12.5px;font-weight:700}.audit-sync-err{color:#b91c1c;font-size:12.5px;font-weight:700;cursor:help}.audit-spin{width:14px;height:14px;border-radius:50%;border:2px solid rgba(255,255,255,.45);border-top-color:#fff;display:inline-block;animation:audit-spin .7s linear infinite}@keyframes audit-spin{to{transform:rotate(360deg)}}.audit-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(168px,1fr));gap:10px;margin:14px 0 8px}.audit-card{display:flex;flex-direction:column;gap:3px;align-items:flex-start;text-align:left;width:100%;padding:9px 12px;font:inherit;background:#fff;border:1px solid var(--line);border-radius:9px;box-shadow:0 1px 2px #0f172a0d;transition:border-color .12s ease,box-shadow .12s ease,transform .08s ease}.audit-card-clk{cursor:pointer}.audit-card-clk:hover{border-color:var(--accent);box-shadow:0 2px 8px #2563eb29;transform:translateY(-1px)}.audit-card-num{font-size:20px;font-weight:700;color:var(--accent);line-height:1.1}.audit-card-label{font-size:10.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.audit-card-warn{border-color:#fcd34d;background:var(--warn-bg)}.audit-card-warn .audit-card-num{color:var(--warn)}.audit-card-muted{background:#f8fafc}.audit-card-muted .audit-card-num{color:var(--muted);font-size:18px}.audit-card-task .audit-card-num{color:#7c3aed}.audit-card-active{border-color:var(--accent);border-width:2px;padding:8px 11px;background:#eff6ff;box-shadow:0 2px 10px #2563eb38}.audit-card-active.audit-card-warn{background:#fff7ed;border-color:var(--warn)}.audit-card-active .audit-card-label{color:var(--accent-dark);font-weight:700}.audit-catbar{display:flex;align-items:center;gap:12px;margin-top:14px}.audit-cat-label{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:700}.audit-catseg{display:inline-flex;border:1px solid var(--line-strong);border-radius:9px;overflow:hidden;background:#fff}.audit-catbtn{background:#fff;border:0;border-right:1px solid var(--line);color:var(--muted);padding:7px 18px;font-size:13px;font-weight:700;cursor:pointer;transition:background .12s ease,color .12s ease}.audit-catbtn:last-child{border-right:0}.audit-catbtn:hover{background:#f1f5f9;color:var(--text)}.audit-catbtn.active{background:var(--accent);color:#fff}.audit-rt{display:inline-block;padding:2px 9px;border-radius:999px;font-size:11px;font-weight:700}.audit-rt-internal{background:#ede9fe;color:#6d28d9}.audit-rt-external{background:#e0f2fe;color:#0369a1}.audit-chip{display:inline-flex;align-items:center;gap:5px;cursor:pointer;background:#eff6ff;border:1px solid var(--accent);color:var(--accent-dark);padding:5px 10px;border-radius:999px;font-size:12px}.audit-chip:hover{background:#dbeafe}.audit-chip b{font-weight:700}.audit-chip-x{font-size:11px;opacity:.8}.audit-grid-wrap{margin-top:6px}.audit-gridbar{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin:10px 0;padding:10px 12px;background:#fff;border:1px solid var(--line);border-radius:10px}.audit-filter{flex:0 0 260px;max-width:260px;padding:7px 11px;border:1px solid var(--line-strong);border-radius:8px;font-size:13px;color:var(--text)}.audit-filter:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #2563eb26}.audit-daterange{display:flex;align-items:center;gap:7px}.audit-dr-label{font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-weight:700}.audit-daterange input[type=date]{padding:6px 9px;border:1px solid var(--line-strong);border-radius:8px;font-size:12.5px;color:var(--text)}.audit-daterange input[type=date]:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #2563eb26}.audit-clear{background:#f1f5f9;border:1px solid var(--line-strong);color:var(--muted);padding:6px 11px;border-radius:8px;font-size:12px;font-weight:600;cursor:pointer}.audit-clear:hover{background:#e2e8f0;color:var(--text)}.audit-rowcount{margin-left:auto;font-size:12px}.audit-dr-count{display:inline-flex;align-items:baseline;gap:4px;background:#ecfdf5;border:1px solid #6ee7b7;color:#047857;padding:5px 11px;border-radius:8px;font-size:12px;font-weight:600}.audit-dr-count b{font-size:15px;font-weight:800}.audit-xlsx{background:#16a34a;border-color:#16a34a;color:#fff;box-shadow:0 2px 6px #16a34a38}.audit-xlsx:hover:not(:disabled){background:#15803d;border-color:#15803d}.audit-table-wrap{margin:0 auto;border:1px solid var(--line);border-radius:10px;overflow:auto;max-height:calc(100vh - 360px);box-shadow:0 1px 3px #0f172a0d}.audit-table{width:100%}.audit-table thead th{top:0;z-index:1}.audit-th{cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap}.audit-th:hover{background:#e2e8f0}.audit-sort{margin-left:5px;color:var(--accent);font-size:11px}.audit-table tbody td{vertical-align:top}.audit-wide{max-width:360px;white-space:normal;overflow-wrap:anywhere}.audit-empty{padding:22px;text-align:center;color:var(--muted)}.audit-loading{padding:26px}.audit-error{margin-top:12px}.audit-cardgroups{display:flex;flex-direction:column;gap:15px;margin:14px 0 8px}.audit-hero{display:flex;align-items:baseline;gap:14px;text-align:left;font:inherit;cursor:pointer;padding:12px 18px;border:1px solid #fcd34d;background:var(--warn-bg);border-radius:11px;box-shadow:0 1px 2px #0f172a0d;transition:box-shadow .12s ease,transform .08s ease}.audit-hero:hover{box-shadow:0 3px 12px #b4530938;transform:translateY(-1px)}.audit-hero.active{box-shadow:0 0 0 2px var(--warn) inset}.audit-hero-num{font-size:32px;font-weight:800;color:var(--warn);line-height:1}.audit-hero-sub{font-size:13px;color:var(--text)}.audit-hero-sub b{font-weight:800;color:var(--warn)}.audit-cardgroup-head{display:flex;align-items:center;gap:10px;margin-bottom:8px}.audit-cardgroup-title{font-size:11px;text-transform:uppercase;letter-spacing:.07em;font-weight:800;color:var(--muted);white-space:nowrap}.audit-cardgroup-sum{font-size:12px;font-weight:700;color:var(--muted);white-space:nowrap}.audit-cardgroup-sum.off{color:#c0392b}.audit-cardgroup-rule{flex:1;height:1px;background:var(--line)}.audit-cardgroup .audit-cards{margin:0}.audit-table-fixed{table-layout:fixed}.audit-th{position:relative;cursor:default;overflow:hidden}.audit-th-label{cursor:pointer;display:inline-block;max-width:calc(100% - 10px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;vertical-align:bottom}.audit-col-resizer{position:absolute;top:0;right:0;width:7px;height:100%;cursor:col-resize;-webkit-user-select:none;user-select:none;touch-action:none}.audit-col-resizer:hover{background:#94a3b8}.audit-td-clip{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.audit-wide{max-width:none;overflow:hidden}.audit-cell-clamp{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;white-space:normal;overflow-wrap:anywhere;word-break:break-word}
