*{box-sizing:border-box}
body{font-family:system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,'Helvetica Neue',Arial;margin:0;color:#0f172a;background:#f8fafc}
.header{display:flex;align-items:center;gap:12px;padding:12px 16px;background:#0ea5e9;color:#fff;position:sticky;top:0}
.header img{height:32px}
.nav{display:flex;gap:10px;flex-wrap:wrap}
.nav a{color:#fff;text-decoration:none;padding:6px 10px;border-radius:8px;background:rgba(255,255,255,.15)}
.nav a.active{background:#fff;color:#0ea5e9}
.container{max-width:1100px;margin:16px auto;padding:0 12px}
.card{background:#fff;border:1px solid #e5e7eb;border-radius:14px;padding:16px;margin:12px 0;box-shadow:0 1px 2px rgba(0,0,0,.04)}
.row{display:flex;gap:12px;flex-wrap:wrap}
.col{flex:1 1 260px}
input,select,button,textarea{width:100%;padding:10px;border:1px solid #cbd5e1;border-radius:10px;background:#fff}
button.primary{background:#0ea5e9;color:#fff;border-color:#0ea5e9;cursor:pointer}
button.ghost{background:#f1f5f9;cursor:pointer}
table{width:100%;border-collapse:collapse}
th,td{padding:10px;border-bottom:1px solid #e5e7eb;text-align:left;vertical-align:top}
.actions{display:flex;gap:8px;flex-wrap:wrap}
.badge{display:inline-block;padding:3px 8px;border-radius:999px;font-size:12px;background:#e2e8f0}

/* --- Drag & Drop para instrucciones --- */
.drag-handle{
  cursor: grab;
  user-select: none;
  font-size: 18px;
  line-height: 1;
  opacity: .65;
}
tr.dragging{
  opacity: .6;
  background: #f8fafc;
}

@media (max-width:720px){
  .nav{gap:6px}
  .header{padding:10px}
  .row{flex-direction:column}
  .col{flex:1 1 auto}
}