:root { color-scheme: dark; --bg:#07100e; --panel:#0d1916; --line:#20342e; --ink:#e8f3ef; --muted:#91aaa1; --green:#48e09f; --amber:#f4bd62; --red:#ff746c; }
* { box-sizing:border-box; }
body { margin:0; min-height:100vh; font:15px/1.5 Inter,ui-sans-serif,system-ui,sans-serif; color:var(--ink); background:radial-gradient(circle at 75% 0,#143629 0,transparent 32rem),var(--bg); }
main { width:min(1180px,calc(100% - 32px)); margin:0 auto; padding:68px 0 40px; }
header { max-width:720px; margin-bottom:34px; }
.eyebrow { color:var(--green); font:700 12px/1.2 ui-monospace,monospace; letter-spacing:.15em; }
h1 { margin:10px 0 5px; font-size:clamp(40px,7vw,72px); line-height:1; letter-spacing:-.06em; }
header p { color:var(--muted); font-size:18px; }
form,.status,.table-wrap { border:1px solid var(--line); background:rgba(13,25,22,.9); box-shadow:0 18px 60px #0004; }
form { padding:22px; border-radius:16px; }
label { display:block; margin-bottom:8px; font-weight:650; }
.search-row { display:flex; gap:10px; }
input { flex:1; min-width:0; padding:14px 16px; color:var(--ink); background:#07110e; border:1px solid #315347; border-radius:10px; font:16px ui-monospace,monospace; outline:none; }
input:focus { border-color:var(--green); box-shadow:0 0 0 3px #48e09f22; }
button { padding:0 19px; border:0; border-radius:10px; color:#04100b; background:var(--green); font-weight:750; cursor:pointer; }
button:disabled { opacity:.55; cursor:wait; }
.secondary { padding:8px 12px; color:var(--ink); background:#172923; border:1px solid var(--line); }
.hint,#source-note,footer { color:var(--muted); font-size:13px; }
.hint { margin-top:9px; }
.status { margin:18px 0; padding:15px 17px; border-radius:12px; }
.status.error { color:#ffd0cc; border-color:#713d38; }
.progress-head { display:flex; justify-content:space-between; gap:16px; margin-bottom:11px; }
.progress-head span { color:var(--green); font:700 13px ui-monospace,monospace; }
.progress-track { height:8px; overflow:hidden; border-radius:999px; background:#06100d; border:1px solid #1e392f; }
.progress-fill { width:0; height:100%; border-radius:inherit; background:linear-gradient(90deg,#21b875,var(--green)); box-shadow:0 0 18px #48e09f88; transition:width .18s ease-out; }
.progress-fill.complete { background:var(--green); }
.progress-detail { margin-top:9px; color:var(--muted); font-size:13px; }
.hidden { display:none !important; }
.summary { display:grid; grid-template-columns:repeat(5,1fr); gap:12px; margin:20px 0; }
.metric { padding:18px; border:1px solid var(--line); border-radius:13px; background:var(--panel); }
.metric strong { display:block; font-size:28px; letter-spacing:-.04em; }
.metric span { color:var(--muted); }
.toolbar { display:flex; align-items:center; justify-content:space-between; gap:12px; margin:15px 0; }
.toolbar button+button { margin-left:6px; }
.table-wrap { overflow:auto; border-radius:14px; }
table { width:100%; border-collapse:collapse; }
th,td { padding:14px 16px; text-align:left; vertical-align:top; border-bottom:1px solid var(--line); }
th { color:var(--muted); background:#0a1512; font-size:12px; text-transform:uppercase; letter-spacing:.08em; }
tbody tr:last-child td { border-bottom:0; }
code { color:#c5e9dc; font:13px ui-monospace,monospace; }
.chips { display:flex; flex-wrap:wrap; gap:5px; }
.chip { padding:3px 7px; border:1px solid #315347; border-radius:999px; color:#bcebd8; background:#10231c; font:12px ui-monospace,monospace; }
.chip.tech { border-color:#4b456e; color:#d6ceff; background:#1c1930; }
.title { max-width:280px; margin-top:5px; color:var(--muted); font-size:12px; }
.detail { margin-top:5px; color:var(--muted); font-size:12px; }
.web-status { display:inline-flex; gap:6px; align-items:center; color:var(--green); text-decoration:none; }
.loading-dot { color:var(--green); animation:pulse 1s ease-in-out infinite alternate; }
details { margin-top:8px; } summary { color:#a9c9bd; cursor:pointer; font-size:12px; }
.detail-panel { min-width:260px; margin-top:9px; padding:10px; border:1px solid var(--line); border-radius:8px; background:#091410; font-size:11px; }
.detail-panel b { display:block; margin:8px 0 4px; color:var(--green); text-transform:uppercase; letter-spacing:.06em; }
.detail-panel b:first-child { margin-top:0; }.detail-panel div { overflow-wrap:anywhere; margin:3px 0; }.detail-panel span { display:inline-block; min-width:95px; color:var(--muted); }
@keyframes pulse { to { opacity:.4; } }
.warning { color:var(--amber); }
.danger { color:var(--red); }
.muted { color:var(--muted); }
footer { width:min(1180px,calc(100% - 32px)); margin:0 auto; padding:0 0 30px; }
@media(max-width:900px){.summary{grid-template-columns:repeat(2,1fr)}}
@media(max-width:720px){main{padding-top:36px}.search-row{flex-direction:column}.search-row button{padding:14px}.toolbar{align-items:flex-start;flex-direction:column}th,td{padding:12px}.table-wrap{font-size:13px}}
