
  :root{
    --verde-ruta:#0a2a52; --verde-osc:#061c39;
    --ambar:#16a9e0; --ambar-osc:#0f88b8;
    --tinta:#132033; --tinta-suave:#556173;
    --papel:#f4f7fa; --tarjeta:#ffffff;
    --linea:#dbe3ec; --linea-fuerte:#c1cdda;
    --rojo:#d92d20; --rojo-bg:#fdeceb;
    --verde-ok:#1d8a4d;
    --azul-man:#0f88b8; --azul-man-bg:#e2f4fc;
    --mono:ui-monospace,SFMono-Regular,Menlo,Consolas,"Liberation Mono",monospace;
    --sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  }
  *{box-sizing:border-box}
  html,body{margin:0;padding:0}
  body{font-family:var(--sans);background:var(--papel);color:var(--tinta);line-height:1.45;font-size:15px}
  header{background:var(--verde-ruta);color:#fff;padding:18px 22px 0;position:relative;border-bottom:4px solid var(--verde-osc)}
  header .marca{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
  header .escudo{flex-shrink:0;line-height:0;background:#fff;border-radius:50%;padding:4px;box-shadow:0 1px 4px rgba(0,0,0,.25)}
  header .escudo img{height:44px;width:44px;display:block;border-radius:50%}
  header h1{font-size:20px;margin:0;font-weight:800;letter-spacing:.3px}
  header .sub{font-size:13px;opacity:.85;margin:2px 0 0}
  .franja{height:8px;margin-top:16px;background:linear-gradient(90deg,var(--ambar) 0 58%,#fff 58% 60%,var(--rojo) 60% 100%)}
  nav{background:var(--verde-osc);display:flex;gap:2px;padding:0 12px;overflow-x:auto}
  nav button{background:none;border:none;color:#bcd3e8;padding:13px 16px;font-size:14px;font-weight:600;cursor:pointer;border-bottom:3px solid transparent;white-space:nowrap;font-family:var(--sans)}
  nav button:hover{color:#fff}
  nav button.activo{color:#fff;border-bottom-color:var(--ambar)}
  main{max-width:1080px;margin:0 auto;padding:22px 16px 30px}

  .seccion{display:none}
  .seccion.activa{display:block;animation:aparece .25s ease}
  @keyframes aparece{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}

  h2.titulo{font-size:18px;margin:0 0 4px;display:flex;align-items:center;gap:9px}
  h2.titulo .n{background:var(--ambar);color:var(--verde-osc);font-size:12px;font-weight:800;width:22px;height:22px;border-radius:5px;display:inline-flex;align-items:center;justify-content:center}
  p.guia{color:var(--tinta-suave);font-size:13.5px;margin:0 0 18px;max-width:780px}

  .tarjeta{background:var(--tarjeta);border:1px solid var(--linea);border-radius:12px;padding:16px 18px;margin-bottom:16px}
  .tarjeta h3{margin:0 0 10px;font-size:15px;display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}

  .aviso{background:#fff7df;border:1px solid var(--ambar);border-radius:10px;padding:12px 14px;font-size:13px;color:#6b5300;margin-bottom:18px;display:flex;gap:10px;align-items:flex-start}
  .aviso b{color:#5a4500}

  .btn{font-family:var(--sans);font-size:14px;font-weight:600;cursor:pointer;border-radius:8px;padding:9px 15px;border:1px solid transparent;line-height:1}
  .btn-pri{background:var(--verde-ruta);color:#fff} .btn-pri:hover{background:var(--verde-osc)}
  .btn-amb{background:var(--ambar);color:var(--verde-osc)} .btn-amb:hover{background:var(--ambar-osc)}
  .btn-sec{background:#fff;color:var(--tinta);border-color:var(--linea-fuerte)} .btn-sec:hover{background:#f1f3ef}
  .btn-peligro{background:#fff;color:var(--rojo);border-color:#e3b6b0} .btn-peligro:hover{background:var(--rojo-bg)}
  .btn-chico{padding:6px 10px;font-size:12.5px}
  .fila-btn{display:flex;gap:8px;flex-wrap:wrap;align-items:center}

  input,select,textarea{font-family:var(--sans);font-size:14px;padding:8px 10px;border:1px solid var(--linea-fuerte);border-radius:7px;background:#fff;color:var(--tinta)}
  input:focus,select:focus,textarea:focus{outline:2px solid var(--ambar);outline-offset:0;border-color:var(--ambar)}
  input.num{font-family:var(--mono);text-align:right}
  label.campo{display:block;font-size:12.5px;font-weight:600;color:var(--tinta-suave);margin-bottom:4px}
  .grid-campos{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px}

  table{border-collapse:collapse;width:100%;font-size:13.5px}
  th,td{padding:7px 9px;text-align:left;border-bottom:1px solid var(--linea);vertical-align:top}
  th{font-size:11.5px;text-transform:uppercase;letter-spacing:.5px;color:var(--tinta-suave);font-weight:700}
  td.num,th.num{text-align:right;font-family:var(--mono)}
  tbody tr:hover{background:#f7faf6}
  .tabla-wrap{overflow-x:auto;border:1px solid var(--linea);border-radius:10px}

  .chip{display:inline-block;font-size:11px;font-weight:700;padding:2px 8px;border-radius:20px}
  .chip-prov{background:#e7f0fb;color:#1d4e89} .chip-nac{background:#f0e7fb;color:#5a2d89}
  .chip-man{background:var(--azul-man-bg);color:var(--azul-man)}
  .motivos{display:flex;flex-direction:column;gap:3px}
  .mot{display:inline-flex;align-items:center;gap:5px;font-size:12px;white-space:nowrap;color:var(--tinta);cursor:pointer}
  .mot input{margin:0;width:15px;height:15px;cursor:pointer}

  .pueblo{display:inline-flex;align-items:center;gap:6px;background:#eef2ec;border:1px solid var(--linea);border-radius:20px;padding:4px 10px;font-size:12.5px;margin:3px 3px 3px 0}
  .pueblo .x{cursor:pointer;color:var(--rojo);font-weight:800;line-height:1}

  .selector-linea{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:16px}
  .selector-linea button{background:#fff;border:1px solid var(--linea-fuerte);border-radius:9px;padding:9px 13px;cursor:pointer;font-size:13px;font-weight:600;text-align:left;font-family:var(--sans);color:var(--tinta)}
  .selector-linea button.sel{background:var(--verde-ruta);color:#fff;border-color:var(--verde-osc)}
  .selector-linea button small{display:block;font-weight:500;opacity:.8;font-size:11px}

  .origen-grupo{margin-bottom:6px}
  .origen-grupo summary{cursor:pointer;font-weight:700;font-size:14px;color:var(--verde-osc);padding:9px 12px;background:#eef3ec;border-radius:8px;list-style:none}
  .origen-grupo summary::-webkit-details-marker{display:none}
  .origen-grupo summary::before{content:"▸ ";color:var(--ambar-osc)}
  .origen-grupo[open] summary::before{content:"▾ "}

  .muted{color:var(--tinta-suave);font-size:12.5px}
  .nota-calc{background:#f1f4ef;border-radius:8px;padding:10px 12px;font-size:12.5px;color:var(--tinta-suave);margin-top:8px}
  .nota-calc code{background:#fff;border:1px solid var(--linea);border-radius:4px;padding:1px 5px}
  details.ayuda summary{cursor:pointer;font-weight:600;font-size:13.5px;color:var(--verde-osc);padding:4px 0}

  .comp-card{border:1px solid var(--linea);border-radius:11px;padding:14px;margin-bottom:12px;background:#fcfdfc}
  .comp-card .meta{font-size:11.5px;color:var(--tinta-suave);margin-top:8px}

  footer{max-width:1080px;margin:0 auto;padding:14px 16px 40px;border-top:1px solid var(--linea);color:var(--tinta-suave);font-size:12px;display:flex;gap:14px;align-items:center;flex-wrap:wrap}
  footer a{color:var(--verde-osc);cursor:pointer;text-decoration:underline;font-weight:600}

  .toast{position:fixed;bottom:20px;left:50%;transform:translateX(-50%) translateY(20px);background:var(--verde-osc);color:#fff;padding:11px 18px;border-radius:9px;font-size:14px;opacity:0;transition:.3s;pointer-events:none;z-index:50;box-shadow:0 6px 24px rgba(0,0,0,.2)}
  .toast.ver{opacity:1;transform:translateX(-50%) translateY(0)}
  @media(max-width:600px){ header h1{font-size:17px} main{padding:16px 11px 30px} }
