:root{
  --bg:#f5f7fa; --card:#fff; --text:#1c2733; --muted:#6b7a8c; --line:#e3e8ee;
  --brand:#0e7490; --brand-d:#0b5c72; --warn-bg:#fff7e6; --warn-bd:#f5c26b; --warn-tx:#7a4b00;
  --bar-low:#7fb8c9; --bar-mid:#f0a93b; --bar-high:#d64545;
}
@media (prefers-color-scheme: dark){
  :root{--bg:#0f161d; --card:#17212b; --text:#e6edf3; --muted:#8fa1b3; --line:#27333f;
    --warn-bg:#2a2210; --warn-bd:#7a5a1a; --warn-tx:#f3d28a; --brand:#38b6d4; --brand-d:#2a9bb7;}
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font:16px/1.55 system-ui,"Segoe UI",Roboto,sans-serif;background:var(--bg);color:var(--text)}
.wrap{max-width:1080px;margin:0 auto;padding:0 16px}
.top{background:var(--card);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:5}
.bar{display:flex;justify-content:space-between;align-items:center;height:56px}
.brand{font-weight:700;font-size:1.1rem}
.brand small{font-weight:400;color:var(--muted);margin-left:6px}
nav a{margin-left:18px;color:var(--text);text-decoration:none;font-size:.95rem}
nav a:hover{color:var(--brand)}
.hero{padding:32px 0 8px}
.hero h1{margin:0 0 8px;font-size:1.9rem}
.hero p{margin:0 0 16px;color:var(--muted);max-width:720px}
.notice{background:var(--warn-bg);border:1px solid var(--warn-bd);color:var(--warn-tx);padding:10px 14px;border-radius:10px;font-size:.93rem}
.grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:16px 0}
.wide{grid-column:1/-1}
.card{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:18px}
.card h2{margin:0 0 12px;font-size:1.1rem}
.row{display:flex;justify-content:space-between;align-items:center;gap:12px}
.drop{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;text-align:center;
  min-height:220px;border:2px dashed var(--line);border-radius:12px;cursor:pointer;padding:16px;transition:.15s}
.drop:hover,.drop.over,.drop:focus-visible{border-color:var(--brand);background:color-mix(in srgb,var(--brand) 6%,transparent);outline:none}
.drop-icon{font-size:2rem;color:var(--brand)}
.muted{color:var(--muted)} .small{font-size:.85rem}
.status{margin-top:12px;padding:10px 12px;border-radius:8px;background:color-mix(in srgb,var(--brand) 10%,transparent);font-size:.93rem}
.status.err{background:#fde8e8;color:#8a1c1c}
.imgbox{background:#000;border-radius:10px;overflow:hidden;display:flex;justify-content:center}
.imgbox img{max-width:100%;max-height:420px;display:block}
.switch{font-size:.9rem;display:flex;gap:6px;align-items:center;cursor:pointer}
.btn{background:transparent;border:1px solid var(--line);color:var(--text);padding:6px 12px;border-radius:8px;cursor:pointer;font-size:.88rem}
.btn:hover{border-color:var(--brand);color:var(--brand)}
.actions{display:flex;gap:8px}
.warn{background:var(--warn-bg);border:1px solid var(--warn-bd);color:var(--warn-tx);padding:8px 12px;border-radius:8px;margin-bottom:12px;font-size:.9rem}
.list{display:flex;flex-direction:column;gap:8px;margin:8px 0 12px}
.item{display:grid;grid-template-columns:minmax(150px,230px) 1fr 56px;gap:12px;align-items:center}
.item .name{font-size:.95rem}
.item .name small{display:block;color:var(--muted);font-size:.75rem}
.track{height:12px;background:var(--line);border-radius:6px;overflow:hidden}
.fill{height:100%;border-radius:6px;transition:width .5s}
.pct{text-align:right;font-variant-numeric:tabular-nums;font-weight:600}
.item.top .name{font-weight:700}
.prose{margin-bottom:16px}
.prose ul{margin:0;padding-left:20px}
.prose li{margin:6px 0}
code{background:var(--bg);padding:1px 6px;border-radius:4px;font-size:.88em}
.foot{padding:20px 16px 40px;text-align:center}
@media(max-width:760px){
  .grid{grid-template-columns:1fr}
  .item{grid-template-columns:1fr 48px}
  .item .track{grid-column:1/-1;order:3}
  nav{display:none}
}
.foot a{color:var(--brand);text-decoration:none}
.foot a:hover{text-decoration:underline}
