/* === INTERFAZ CLÁSICA === */

/* Variables por tema */
body.dark{
  --bg:#0b1020; --card:#11162a; --muted:#8b93a7; --text:#e8ecf8;
  --primary:#6aa2ff; --accent:#22c55e; --danger:#ef4444; --border:#1f2440;
  background-color:#0b1020;
}
body.light{
  --bg:#f7f7f7; --card:#ffffff; --muted:#5b6172; --text:#131723;
  --primary:#2f5fe9; --accent:#16a34a; --danger:#dc2626; --border:#e6e8f0;
  background-color:#f7f7f7;
}

html,body{
  margin:0; padding:0;
  color:var(--text);
  font-family:Inter,system-ui,Segoe UI,Roboto,Arial,sans-serif;
  min-height:100vh;
  transition:background-color .25s ease, color .25s ease;
}

.container{max-width:1500px;margin:24px auto;padding:0 16px}
.card{background:var(--card);border:1px solid var(--border);border-radius:16px;box-shadow:0 10px 25px rgba(0,0,0,.12);padding:20px}
.btn{display:inline-block;padding:10px 14px;border-radius:10px;border:1px solid var(--border);background:transparent;color:var(--text);text-decoration:none;transition:.2s;cursor:pointer;font-size:14px}
.btn:hover{transform:translateY(-1px);box-shadow:0 8px 20px rgba(0,0,0,.12)}
.btn-primary{background:linear-gradient(135deg,var(--primary),#7ab1ff);color:#fff;border:0}
.btn-accent{background:linear-gradient(135deg,var(--accent),#4ade80);color:#fff;border:0}
.btn-danger{background:linear-gradient(135deg,var(--danger),#f87171);color:#fff;border:0}
.btn-ghost{background:transparent}
.btn-xs{padding:4px 10px;font-size:12px}
.nav{display:flex;justify-content:space-between;align-items:center;margin:16px 0;flex-wrap:wrap;gap:10px}
.brand{display:flex;align-items:center;gap:10px}
.brand-logo{max-height:36px;display:block}
.brand-title{font-weight:700}
.badge{padding:4px 8px;border-radius:999px;background:rgba(0,0,0,.07);border:1px solid var(--border);font-size:12px;color:var(--muted)}
.tabs a{margin-right:10px;text-decoration:none;padding:8px 10px;border-radius:10px;background:rgba(0,0,0,.04);border:1px solid var(--border);color:var(--text)}
.tabs a.active{background:rgba(0,0,0,.08)}
table{width:100%;border-collapse:separate;border-spacing:0 8px}
th,td{padding:12px 14px;text-align:left}
thead th{color:var(--muted);font-weight:600}
tbody tr{background:var(--card);border:1px solid var(--border)}
tbody tr td:first-child, thead th:first-child{border-top-left-radius:12px;border-bottom-left-radius:12px}
tbody tr td:last-child, thead th:last-child{border-top-right-radius:12px;border-bottom-right-radius:12px}
input,select,textarea{width:100%;padding:12px;border-radius:10px;border:1px solid var(--border);background:rgba(0,0,0,.03);color:var(--text);box-sizing:border-box}
label{display:block;margin:10px 0 6px;color:var(--muted)}
h1,h2,h3{margin:0 0 14px}
.muted{color:var(--muted)}
.actions{display:flex;gap:8px;flex-wrap:wrap}
.top{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;gap:10px;flex-wrap:wrap}
footer{margin:24px 0;color:var(--muted);font-size:12px;text-align:center}
footer a{color:var(--muted);text-decoration:none}
.alert{padding:12px 14px;border-radius:10px;background:rgba(2,132,199,.08);border:1px solid var(--border);color:var(--text);margin:10px 0}
.alert.ok{border-color:#22c55e;background:rgba(34,197,94,.08)}
.alert.err{border-color:#ef4444;background:rgba(239,68,68,.08)}

/* Status pills and badges */
.tabs.statuses a.pill{display:inline-block;padding:8px 14px !important;border-radius:10px !important;border:1px solid transparent !important;text-decoration:none !important;font-weight:600 !important;margin-right:8px !important}
.pill-red{background:#e74c3c !important;color:#fff !important}
.pill-amber{background:#f39c12 !important;color:#fff !important}
.pill-blue{background:#2563eb !important;color:#fff !important}
.pill-green{background:#27ae60 !important;color:#fff !important}
.pill-purple{background:#8e44ad !important;color:#fff !important}
.pill.active{box-shadow:0 0 4px rgba(0,0,0,.3) !important}

.badge-state{display:inline-block;padding:4px 8px;border-radius:8px;font-size:12px;font-weight:600;color:#fff}
.badge-red{background:#e74c3c}
.badge-amber{background:#f39c12}
.badge-blue{background:#2563eb}
.badge-green{background:#27ae60}
.badge-purple{background:#8e44ad}

.msg-alert{display:inline-flex;align-items:center;gap:5px;background:#ffecec;color:#c0392b;padding:2px 6px;border-radius:10px;font-weight:700}

tr.priority-row td{background:#fff9e6}
.priority-badge{display:inline-flex;align-items:center;margin-left:4px;padding:2px 6px;border-radius:999px;background:#f1c40f;color:#000;font-size:11px;font-weight:700}

/* Radio buttons styling */
.radio-group{display:flex;gap:16px;margin-bottom:16px;flex-wrap:wrap}
.radio-label{display:flex;align-items:center;gap:8px;cursor:pointer;padding:12px 16px;border:2px solid var(--border);border-radius:8px;transition:all 0.15s}
.radio-label:hover{border-color:var(--primary)}
.radio-label:has(input:checked){border-color:var(--primary);background:rgba(106,162,255,0.1)}
.radio-label input[type="radio"]{width:18px;height:18px}

/* File preserved notice */
.file-preserved{padding:12px;background:rgba(34,197,94,0.1);border:1px solid #22c55e;border-radius:8px;margin-bottom:12px;display:flex;align-items:center;gap:10px}
