:root{--bg:#0f172a;--card:#111c33;--muted:#9fb0cc;--text:#eef5ff;--line:#24324c;--accent:#60a5fa;--ok:#22c55e;--bad:#ef4444;--warn:#f59e0b}*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at top left,#1e3a8a55,transparent 35%),var(--bg);font-family:Inter,system-ui,Segoe UI,Arial,sans-serif;color:var(--text)}.wrap{max-width:1180px;margin:0 auto;padding:34px 18px}.wrap.wide{max-width:1500px}.hero{display:flex;justify-content:space-between;gap:18px;align-items:center;margin-bottom:26px}.hero.compact{padding:18px 20px;background:#111c33cc;border:1px solid var(--line);border-radius:20px}.eyebrow{color:var(--accent);font-weight:800;letter-spacing:.1em;text-transform:uppercase;margin:0 0 8px;font-size:13px}h1{font-size:42px;line-height:1.05;margin:0}h2{margin:0 0 12px;font-size:26px}.sub{color:var(--muted);margin:10px 0 0;font-size:17px}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.card,.note,.logs{background:#111c33cc;border:1px solid var(--line);border-radius:20px;padding:22px;box-shadow:0 20px 60px #0004}.hint{color:var(--muted);min-height:48px}label{display:block;margin:16px 0 7px;color:#cfe0ff;font-weight:700}input,select{width:100%;background:#0b1222;border:1px solid #2b3a58;color:var(--text);border-radius:12px;padding:13px 14px;font-size:16px}button,.download{display:inline-block;margin-top:18px;background:linear-gradient(135deg,#3b82f6,#06b6d4);color:white;border:0;border-radius:12px;padding:13px 18px;font-weight:800;cursor:pointer;text-decoration:none}button:hover,.download:hover{filter:brightness(1.08)}.status{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}.pill{border:1px solid var(--line);padding:9px 12px;border-radius:999px;font-size:14px}.pill.ok{background:#14532d55;color:#bbf7d0}.pill.bad{background:#7f1d1d55;color:#fecaca}.note{color:#dbeafe;margin-top:18px}.back{display:inline-block;color:#93c5fd;text-decoration:none;margin-bottom:14px}.success{color:#86efac}.error{color:#fca5a5}.table-wrap{overflow:auto;background:#0b1222;border:1px solid var(--line);border-radius:18px}table{width:100%;border-collapse:collapse;min-width:1000px}th,td{border-bottom:1px solid #1e2a42;padding:12px 13px;text-align:left;vertical-align:top;max-width:420px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}th{position:sticky;top:0;background:#15213a;color:#bfdbfe;z-index:1}td{color:#e5edf9}td a{color:#93c5fd}.logs{margin-top:18px}.logs summary{cursor:pointer;color:#bfdbfe;font-weight:800}.logs pre{background:#050914;border:1px solid #1e2a42;border-radius:12px;padding:14px;overflow:auto;color:#d1d5db}.errorbox{border-color:#7f1d1d;background:#451a1a88}@media(max-width:800px){.hero{display:block}.grid{grid-template-columns:1fr}h1{font-size:34px}.status{justify-content:flex-start;margin-top:15px}}.download.mini{margin-top:0;padding:9px 12px}.db-count{font-size:20px;margin:10px 0;color:#dbeafe}.section-title{margin:28px 0 14px}code{background:#07101f;border:1px solid #1e2a42;border-radius:6px;padding:2px 6px;color:#bfdbfe}.note pre{white-space:pre-wrap;background:#050914;border:1px solid #1e2a42;border-radius:12px;padding:12px;overflow:auto}.note a{color:#93c5fd}

.session-box{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;border:1px solid var(--line);border-radius:20px;padding:18px 22px;margin-bottom:18px;background:#111c33cc;box-shadow:0 20px 60px #0004}.session-box p{margin:6px 0}.session-box.okbox{border-color:#22c55e88;background:#14532d44}.session-box.errorbox{border-color:#ef444488;background:#7f1d1d44}.session-actions{min-width:320px;max-width:520px}.session-actions code{display:block;white-space:pre-wrap;word-break:break-word;margin-top:10px;background:#0b1222;border:1px solid #2b3a58;border-radius:10px;padding:10px;color:#dbeafe}.small{font-size:13px;min-height:auto}.secondary{background:#334155}.secondary:hover{filter:brightness(1.12)}button:disabled{opacity:.45;cursor:not-allowed;filter:grayscale(1)}@media(max-width:800px){.session-box{display:block}.session-actions{min-width:0;max-width:none}.hero{display:block}.status{justify-content:flex-start;margin-top:16px}.grid{grid-template-columns:1fr}}
