*{box-sizing:border-box}html,body{min-height:100%}body{margin:0;background:radial-gradient(circle at top left,rgba(20,184,166,.16),transparent 30%),linear-gradient(180deg,#07111f,#0b1220);color:#f8fafc;font-family:system-ui,-apple-system,Segoe UI,Tahoma,Arial,sans-serif}.app{max-width:1360px;margin:auto;padding:14px;display:grid;gap:12px}.box{background:rgba(15,23,42,.93);border:1px solid #26364f;border-radius:22px;padding:16px;box-shadow:0 18px 50px rgba(0,0,0,.28)}.hero{display:grid;grid-template-columns:1fr 340px;gap:14px;align-items:center}h1{margin:0 0 8px;font-size:clamp(28px,4vw,46px);line-height:1.1}.muted{color:#94a3b8;line-height:1.75}.badges,.actions,.tabs{display:flex;gap:8px;flex-wrap:wrap}.badges span,.pill{border:1px solid #334155;background:#0b1324;border-radius:999px;padding:6px 10px;font-size:12px;color:#cbd5e1}.drop{min-height:150px;border:2px dashed #486176;background:#0b1324;border-radius:18px;display:grid;place-items:center;text-align:center;cursor:pointer;padding:16px}.drop:hover,.drop.drag{border-color:#14b8a6;background:rgba(20,184,166,.08)}.barwrap{height:7px;background:#0b1324;border-radius:999px;overflow:hidden}.bar{height:100%;width:0;background:linear-gradient(90deg,#14b8a6,#38bdf8);transition:width .2s}.status{font-size:12px;color:#cbd5e1;min-height:18px}.controlsBox{display:grid;gap:10px}.controls{display:grid;grid-template-columns:2fr repeat(3,1fr) auto;gap:8px;position:sticky;top:8px;z-index:3}.input,.select,.btn{min-height:44px;border:1px solid #26364f;border-radius:14px;background:#0b1324;color:#f8fafc;padding:0 12px}.btn{cursor:pointer;font-weight:800}.btn:hover{filter:brightness(1.08)}.btn.primary{background:linear-gradient(135deg,#14b8a6,#38bdf8);border-color:#0f766e;color:#03201d}.btn.danger{background:rgba(239,68,68,.16);border-color:rgba(239,68,68,.4)}.tab{border:1px solid #26364f;background:#111827;color:#dbe4ef;border-radius:999px;padding:8px 12px;cursor:pointer;white-space:nowrap}.tab.on{background:#14b8a6;color:#031818;font-weight:900}.stats{display:grid;grid-template-columns:repeat(7,minmax(120px,1fr));gap:8px}.stat{background:#0b1324;border:1px solid #26364f;border-radius:16px;padding:12px}.stat b{display:block;font-size:26px}.stat span{color:#94a3b8;font-size:12px}.stat.ok b{color:#10b981}.stat.warn b{color:#f59e0b}.stat.bad b{color:#ef4444}.qa{display:grid;gap:8px}.qaLine{border:1px solid #26364f;background:#0b1324;border-radius:14px;padding:10px;color:#cbd5e1;font-size:13px}.qaLine.ok{border-color:rgba(16,185,129,.4)}.qaLine.warn{border-color:rgba(245,158,11,.4)}.resultsHead{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(315px,1fr));gap:10px}.card{background:#0b1324;border:1px solid #26364f;border-radius:18px;padding:12px;display:grid;gap:9px}.card.include{border-color:rgba(16,185,129,.75)}.card.review{border-color:rgba(245,158,11,.75)}.card.exclude{opacity:.72}.top{display:grid;grid-template-columns:auto 1fr;gap:10px;align-items:start}.chk{width:20px;height:20px;accent-color:#14b8a6}.img{width:82px;height:82px;object-fit:contain;background:#07111f;border:1px solid #26364f;border-radius:14px;padding:5px}.title{font-weight:900;line-height:1.45;font-size:14px}.desc{font-size:12px;color:#cbd5e1;line-height:1.55}.tag{display:inline-block;border:1px solid #334155;background:#111827;border-radius:999px;padding:4px 8px;margin:2px;font-size:11px;color:#cbd5e1}.tag.ok{background:rgba(16,185,129,.12);border-color:rgba(16,185,129,.35)}.tag.warn{background:rgba(245,158,11,.12);border-color:rgba(245,158,11,.35)}.tag.bad{background:rgba(239,68,68,.12);border-color:rgba(239,68,68,.35)}.reason{font-size:12px;color:#cbd5e1;line-height:1.6;border-top:1px solid #26364f;padding-top:8px}.empty{text-align:center;color:#94a3b8;padding:34px;border:1px dashed #26364f;border-radius:18px}.more{text-align:center;margin-top:12px}.mono{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;direction:ltr;unicode-bidi:embed}.kv{display:grid;grid-template-columns:1fr 1fr;gap:6px}.small{font-size:11px;color:#94a3b8}@media(max-width:900px){.hero,.controls{grid-template-columns:1fr}.stats{grid-template-columns:repeat(2,1fr)}.actions{display:grid;grid-template-columns:1fr 1fr}.btn{width:100%}.top{grid-template-columns:auto 1fr}.grid{grid-template-columns:1fr}}