:root{color-scheme:dark;--link:#2563eb;--ok:#16a34a;--warn:#d97706;--danger:#e11d48;--info:#2563eb;--radius:14px;--radiusSm:12px;--shadow:0 10px 30px rgba(0,0,0,.35);--shadowSoft:0 8px 18px rgba(0,0,0,.22);--bg0:#070a14;--bg1:#0b1020;--bg2:#101a35;--panel:hsla(0,0%,100%,.06);--panel2:hsla(0,0%,100%,.085);--border:hsla(0,0%,100%,.12);--border2:hsla(0,0%,100%,.18);--text:hsla(0,0%,100%,.92);--muted:hsla(0,0%,100%,.68);--headerBg:rgba(0,0,0,.14)}html[data-theme=light]{color-scheme:light;--bg0:#f7f8fb;--bg1:#eef2ff;--bg2:#fff;--panel:hsla(0,0%,100%,.92);--panel2:hsla(0,0%,100%,.98);--border:rgba(15,23,42,.12);--border2:rgba(15,23,42,.18);--text:rgba(15,23,42,.92);--muted:rgba(15,23,42,.68);--headerBg:hsla(0,0%,100%,.7);--shadow:0 10px 30px rgba(15,23,42,.1);--shadowSoft:0 8px 18px rgba(15,23,42,.08)}*{box-sizing:border-box}body,html{padding:0;margin:0;height:100%}body{color:var(--text);background:radial-gradient(1200px 800px at 20% 10%,var(--bg2) 0,var(--bg1) 55%,var(--bg0) 100%),linear-gradient(180deg,var(--bg0),var(--bg0));font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,Apple Color Emoji,Segoe UI Emoji;line-height:1.45}a{color:var(--link);text-decoration:none}a:hover{text-decoration:underline}.container{max-width:1500px;margin:0 auto;padding:24px 16px 64px}.card{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow)}.cardHeader{padding:14px 16px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;gap:12px}.cardBody{padding:16px}.stackLg{gap:16px}.stackLg,.stackMd{display:flex;flex-direction:column}.stackMd{gap:12px}.titleLg{font-size:18px;font-weight:900;letter-spacing:.2px}.titleMd{font-size:16px;font-weight:900;letter-spacing:.15px}.subtleCard{background:var(--panel2);border:1px solid var(--border);border-radius:var(--radiusSm);box-shadow:var(--shadowSoft)}.muted{color:var(--muted)}.row{display:flex;gap:12px;flex-wrap:wrap}.spacer{height:14px}.monoText{font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.sectionIntro{font-size:13px;color:var(--muted)}.btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--border);background:linear-gradient(180deg,hsla(0,0%,100%,.12),hsla(0,0%,100%,.06));color:var(--text);border-radius:var(--radiusSm);padding:10px 14px;cursor:pointer;font-weight:600}.btn:hover{background:linear-gradient(180deg,hsla(0,0%,100%,.16),hsla(0,0%,100%,.08))}.btn:disabled{opacity:.6;cursor:not-allowed}.btnPrimary{border-color:rgba(125,211,252,.35);background:linear-gradient(180deg,rgba(125,211,252,.25),rgba(125,211,252,.1))}.btnPrimary:hover{background:linear-gradient(180deg,rgba(125,211,252,.3),rgba(125,211,252,.12))}.btnSmall{padding:8px 10px;font-size:13px;border-radius:999px}.btnGhost{background:hsla(0,0%,100%,.06)}.input{width:100%;border:1px solid var(--border);background:rgba(0,0,0,.15);color:var(--text);border-radius:var(--radiusSm);padding:10px 12px;outline:none}.input:focus{border-color:rgba(125,211,252,.55)}.label{font-size:13px;margin-bottom:6px;display:block}.help,.label{color:var(--muted)}.help{font-size:12px;margin-top:6px}.fieldRow{display:grid;grid-template-columns:1fr;grid-gap:8px;gap:8px}@media (min-width:640px){.fieldRow{grid-template-columns:1fr auto;align-items:center}}.grid2{display:grid;grid-template-columns:1fr;grid-gap:12px;gap:12px}@media (min-width:860px){.grid2{grid-template-columns:1fr 1fr}}.badge{display:inline-flex;align-items:center;gap:8px;padding:6px 10px;border-radius:999px;border:1px solid var(--border);background:rgba(0,0,0,.18);font-size:12px;color:var(--muted);white-space:nowrap}.badgeStrong{color:var(--text);border-color:var(--border2);background:var(--panel2)}.badgeOk{border-color:rgba(52,211,153,.35);color:var(--ok)}.badgeWarn{border-color:rgba(251,191,36,.35);color:var(--warn)}.badgeDanger{border-color:rgba(251,113,133,.35);color:var(--danger)}.badgeInfo{border-color:rgba(96,165,250,.35);color:var(--info)}.pill{display:inline-block;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:700;border:1px solid var(--border);background:hsla(0,0%,100%,.06)}.pillOk{border-color:rgba(52,211,153,.35);color:var(--ok)}.pillWarn{border-color:rgba(251,191,36,.35);color:var(--warn)}.pillDanger{border-color:rgba(251,113,133,.35);color:var(--danger)}.pillInfo{border-color:rgba(96,165,250,.35);color:var(--info)}.stickyTop{position:-webkit-sticky;position:sticky;top:72px;z-index:10;align-self:flex-start;width:100%}.hScroll{overflow-x:auto;-webkit-overflow-scrolling:touch}.hScrollInner{display:inline-flex;gap:10px;padding-bottom:2px}.tableWrap{overflow-x:auto;-webkit-overflow-scrolling:touch}.table{width:100%;min-width:900px;border-collapse:separate;border-spacing:0}.table th{text-align:left;font-size:12px;color:var(--muted);white-space:nowrap;font-weight:700}.table td,.table th{padding:11px 10px;border-bottom:1px solid var(--border)}.table td{vertical-align:top;font-size:13px;line-height:1.4}.table tbody tr:nth-child(2n){background:hsla(0,0%,50%,.03)}.table tbody tr:hover{background:var(--panel2)}.summaryGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:10px;gap:10px}@media (min-width:860px){.summaryGrid{grid-template-columns:repeat(6,minmax(0,1fr))}}.summaryCard{border:1px solid var(--border);border-radius:12px;background:var(--panel2);padding:10px 12px;min-height:76px;display:flex;flex-direction:column;justify-content:center}.summaryLabel{color:var(--muted);font-size:12px;margin-bottom:6px}.summaryValue{font-size:22px;font-weight:900;line-height:1}.textBlock{white-space:pre-wrap;word-break:break-word}.expandBtn{margin-top:6px;border:0;background:transparent;color:var(--link);font-size:11px;font-weight:700;padding:0;cursor:pointer}.expandBtn:hover{text-decoration:underline}.tableNote{margin-top:6px;font-size:11px;color:var(--muted)}.controlsGrid{display:grid;grid-template-columns:1fr;grid-gap:10px;gap:10px}@media (min-width:920px){.controlsGrid{grid-template-columns:1fr auto;align-items:center}}.tableContainer{border:1px solid var(--border);border-radius:var(--radiusSm);background:var(--panel)}.detailStack{display:grid;grid-gap:8px;gap:8px}.detailBlock{border:1px solid var(--border);border-radius:10px;background:var(--panel2);padding:8px 10px}.detailBlockInfo{border-color:color-mix(in srgb,var(--info) 35%,var(--border));background:color-mix(in srgb,var(--info) 8%,var(--panel2))}.detailBlockWarn{border-color:color-mix(in srgb,var(--warn) 40%,var(--border));background:color-mix(in srgb,var(--warn) 10%,var(--panel2))}.detailBlockOk{border-color:color-mix(in srgb,var(--ok) 40%,var(--border));background:color-mix(in srgb,var(--ok) 10%,var(--panel2))}.detailLabel{margin-bottom:6px;font-size:10px;letter-spacing:.3px;text-transform:uppercase;color:var(--muted);font-weight:700}.progressTrack{position:relative;width:100%;height:12px;border-radius:999px;overflow:hidden;border:1px solid var(--border);background:color-mix(in srgb,var(--panel2) 88%,transparent)}.progressFill{height:100%;border-radius:999px;background:linear-gradient(90deg,color-mix(in srgb,var(--info) 70%,#fff),var(--info));transition:width .26s ease}.progressFillFailed{background:linear-gradient(90deg,color-mix(in srgb,var(--danger) 70%,#fff),var(--danger))}.progressFillIndeterminate{animation:progressPulse 1.1s ease-in-out infinite}@keyframes progressPulse{0%{transform:translateX(-45%);opacity:.7}50%{opacity:1}to{transform:translateX(225%);opacity:.7}}.progressLogList{margin-top:8px;border:1px solid var(--border);border-radius:10px;background:var(--panel);max-height:170px;overflow:auto}.progressLogItem{display:grid;grid-template-columns:auto 1fr;grid-gap:10px;gap:10px;padding:8px 10px;font-size:12px;border-bottom:1px solid var(--border)}.progressLogItem:last-child{border-bottom:0}.progressLogTime{color:var(--muted)}.progressLogText{color:var(--text)}.detailBlock .textBlock{font-size:12px;line-height:1.4}.spinner{width:16px;height:16px;border-radius:999px;border:2px solid hsla(0,0%,100%,.18);border-top-color:rgba(125,211,252,.9);animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}.skeleton{background:linear-gradient(90deg,hsla(0,0%,100%,.05),hsla(0,0%,100%,.1),hsla(0,0%,100%,.05));background-size:200% 100%;animation:shimmer 1.2s ease-in-out infinite;border-radius:10px}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}