*{box-sizing:border-box}:root{--bg: #f3f4f6;--card: #ffffff;--text: #0f172a;--muted: #64748b;--border: #e5e7eb;--border-strong: #cbd5e1;--primary: #0f172a;--primary-hover: #1e293b;--secondary: #e2e8f0;--secondary-hover: #cbd5e1;--danger: #dc2626;--danger-hover: #b91c1c;--link: #2563eb;--warning-bg: #fff7ed;--warning-border: #fed7aa;--warning-text: #9a3412;--shadow: 0 6px 18px rgba(15, 23, 42, .05);--shadow-lg: 0 10px 30px rgba(15, 23, 42, .08)}body{margin:0;font-family:Inter,system-ui,Arial,sans-serif;background:var(--bg);color:var(--text)}.page{min-height:100vh;padding:24px}.login-page{display:flex;align-items:center;justify-content:center}.login-card{width:420px;max-width:100%;background:var(--card);border:1px solid var(--border);border-radius:24px;padding:28px;box-shadow:var(--shadow-lg)}h1,h2,h3{margin:0 0 8px;line-height:1.2}h1{font-size:28px}h2{font-size:20px;display:flex;align-items:center;gap:8px}h3{font-size:18px}p{margin:0 0 12px}a{color:var(--link);text-decoration:none;font-weight:800}a:hover{text-decoration:underline}label{display:block;margin:12px 0 6px;font-weight:700;font-size:13px;color:#334155}input,select,textarea{width:100%;border:1px solid var(--border-strong);border-radius:12px;padding:10px 12px;font-size:14px;outline:none;background:#fff;color:var(--text)}input:focus,select:focus,textarea:focus{border-color:#94a3b8;box-shadow:0 0 0 3px #94a3b840}textarea{min-height:96px;resize:vertical;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;line-height:1.45}button,.link-button{border:0;background:var(--primary);color:#fff;border-radius:12px;padding:10px 14px;font-weight:800;cursor:pointer;display:inline-flex;align-items:center;gap:8px;justify-content:center;min-height:40px;white-space:nowrap}button:hover,.link-button:hover{background:var(--primary-hover);text-decoration:none}button:disabled{opacity:.55;cursor:not-allowed}button.secondary,.link-button{background:var(--secondary);color:var(--text)}button.secondary:hover,.link-button:hover{background:var(--secondary-hover)}button.danger{background:var(--danger);color:#fff;margin-top:12px}button.danger:hover{background:var(--danger-hover)}.topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px}.topbar p,.muted{color:var(--muted);font-size:14px}.top-actions{display:flex;gap:10px;flex-wrap:wrap}.message{background:var(--warning-bg);border:1px solid var(--warning-border);color:var(--warning-text);padding:12px 14px;border-radius:14px;margin:12px 0 18px;font-weight:700}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:18px}.stats div{background:var(--card);border:1px solid var(--border);border-radius:20px;padding:18px;display:flex;flex-direction:column;gap:8px;box-shadow:var(--shadow)}.stats svg{color:#334155}.stats b{font-size:34px;line-height:1}.stats span{color:var(--muted);font-weight:700}.grid{display:grid;grid-template-columns:1.5fr .7fr;gap:18px;margin-bottom:18px}.grid.two{grid-template-columns:1fr 1fr}.panel{background:var(--card);border:1px solid var(--border);border-radius:24px;padding:18px;box-shadow:var(--shadow)}.panel.big{padding:0;overflow:hidden}.panel-head{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px;border-bottom:1px solid var(--border)}.tabs{display:flex;gap:8px;flex-wrap:wrap}.tabs button{background:var(--secondary);color:var(--text);min-height:34px;padding:8px 12px}.tabs button.active{background:var(--primary);color:#fff}.search{display:flex;align-items:center;gap:8px;min-width:300px;background:#fff;border:1px solid var(--border-strong);border-radius:12px;padding:0 10px}.search input{border:0;padding-left:0;box-shadow:none}.search input:focus{box-shadow:none}.table-wrap{max-height:620px;overflow:auto}table{width:100%;border-collapse:collapse;font-size:14px}th{background:#f8fafc;color:var(--muted);text-align:left;padding:12px;position:sticky;top:0;z-index:1;white-space:nowrap}td{border-top:1px solid #f1f5f9;padding:12px;vertical-align:top}tr:hover td{background:#f8fafc;cursor:pointer}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px 14px}.form-grid button,.checks{grid-column:1 / -1}.checks{display:flex;flex-wrap:wrap;gap:14px;align-items:center;margin:8px 0}.checks label{font-weight:600;margin:0;display:inline-flex;align-items:center;gap:6px}.checks input[type=checkbox],.panel input[type=checkbox]{width:auto;margin:0 6px 0 0}.button-row{display:flex;gap:10px;flex-wrap:wrap;margin:10px 0 12px}.button-row button,.button-row .link-button{flex:0 0 auto}.side .panel{position:sticky;top:18px}.side textarea{min-height:82px}hr{border:0;border-top:1px solid var(--border);margin:18px 0}.log-link{margin:10px 0}.log-link a{color:var(--link);font-weight:800;display:inline-flex;align-items:center;gap:6px}.panel .log-link:last-child{margin-bottom:0}.panel textarea[readonly]{min-height:180px;background:#f8fafc;color:#334155}@media (max-width: 1200px){.grid{grid-template-columns:1fr}.side .panel{position:static}}@media (max-width: 1000px){.grid,.grid.two,.stats{grid-template-columns:1fr}.topbar,.panel-head{flex-direction:column;align-items:stretch}.search{min-width:100%}.form-grid{grid-template-columns:1fr}.page{padding:14px}}@media (max-width: 640px){.stats b{font-size:28px}table{font-size:13px}th,td{padding:10px}button,.link-button{width:100%}.top-actions,.button-row{flex-direction:column}}
