
:root{
  --bahia:#22252a;
  --riel:#15171b;
  --riel-luz:#31353c;
  --papel:#efe7d6;
  --papel-sombra:#ded4bf;
  --tinta:#1a1815;
  --tinta-tenue:#6b6355;
  --emergencia:#c8332b;
  --nueva:#2f7d54;
  --importante:#c9a227;
  --normal:#5b7d9a;
  --cromo:#8b949e;
}

*{box-sizing:border-box}
[hidden]{display:none !important}
html,body{margin:0;padding:0}
body{
  background:var(--bahia);
  background-image:
    linear-gradient(180deg, rgba(255,255,255,.04), rgba(0,0,0,.18)),
    repeating-linear-gradient(90deg, rgba(255,255,255,.018) 0 1px, transparent 1px 4px);
  color:var(--papel);
  font-family:"IBM Plex Sans Condensed", "Helvetica Neue", Arial, sans-serif;
  min-height:100vh;
  -webkit-font-smoothing:antialiased;
}

/* ---------- riel superior ---------- */
.riel{
  position:sticky; top:0; z-index:50;
  background:var(--riel);
  border-bottom:2px solid #000;
  box-shadow:0 6px 18px rgba(0,0,0,.45);
  display:flex; flex-wrap:wrap; align-items:center; gap:18px;
  padding:10px 18px;
}
.marca{display:flex; flex-direction:column; line-height:1}
.marca b{
  font-size:15px; font-weight:700; letter-spacing:.14em; text-transform:uppercase;
}
.marca span{
  font-family:"IBM Plex Mono", ui-monospace, Menlo, monospace;
  font-size:9.5px; letter-spacing:.22em; color:var(--cromo); margin-top:5px;
}
.reloj{
  font-family:"IBM Plex Mono", monospace;
  font-size:26px; font-weight:500; font-variant-numeric:tabular-nums;
  letter-spacing:.04em; margin-left:auto; line-height:1;
}
.reloj small{display:block; font-size:9px; letter-spacing:.2em; color:var(--cromo); margin-top:5px}

.conteo{display:flex; gap:2px; font-family:"IBM Plex Mono", monospace; font-size:10px}
.conteo div{
  background:var(--riel-luz); padding:5px 9px; text-align:center; min-width:62px;
  border-top:3px solid currentColor;
}
.conteo b{display:block; font-size:15px; font-weight:600; color:var(--papel); font-variant-numeric:tabular-nums}
.conteo span{letter-spacing:.1em; font-size:8.5px}
.c-eme{color:var(--emergencia)} .c-urg{color:var(--nueva)}
.c-imp{color:var(--importante)} .c-nor{color:var(--normal)}

.mandos{display:flex; gap:14px; align-items:center; flex-wrap:wrap}
.grupo{display:flex; flex-direction:column; gap:4px}
.grupo>label{
  font-family:"IBM Plex Mono", monospace; font-size:8.5px; letter-spacing:.16em; color:var(--cromo);
}
.grupo>div{display:flex}
button{
  font-family:"IBM Plex Mono", monospace; font-size:10.5px; letter-spacing:.08em;
  background:var(--riel-luz); color:var(--papel); border:1px solid #000;
  padding:5px 10px; cursor:pointer;
}
button:hover{background:#41464f}
button[aria-pressed="true"]{background:var(--papel); color:var(--riel); font-weight:600}
button:focus-visible{outline:2px solid #fff; outline-offset:1px}
.inyecta button{border-color:#000}
.inyecta button.eme{background:var(--emergencia); border-color:#000}
.inyecta button.eme:hover{background:#e04036}

/* ---------- bahía ---------- */
.bahia{max-width:1180px; margin:0 auto; padding:20px 16px 80px}
.seccion-eme{
  border-left:3px solid var(--emergencia);
  padding-left:13px; margin-bottom:6px;
}
.rotulo{
  font-family:"IBM Plex Mono", monospace; font-size:9.5px; letter-spacing:.26em;
  color:var(--cromo); display:flex; align-items:center; gap:12px; margin:22px 0 9px;
}
.rotulo::after{content:""; flex:1; height:1px; background:linear-gradient(90deg,var(--riel-luz),transparent)}
.rotulo.eme{color:var(--emergencia)}

.corriente{display:flex; flex-direction:column; gap:7px}
.seccion-eme .corriente{gap:7px}

/* ---------- la ficha ---------- */
.ficha{
  display:grid; grid-template-columns:44px 1fr auto;
  background:var(--papel);
  color:var(--tinta);
  border-radius:1px;
  box-shadow:0 2px 0 var(--papel-sombra), 0 5px 14px rgba(0,0,0,.35);
  position:relative;
}
.ficha.sacada{
  margin-left:-13px;
  box-shadow:0 2px 0 var(--papel-sombra), 0 9px 26px rgba(0,0,0,.55);
}

.lomo{
  background:var(--nivel);
  display:flex; flex-direction:column; align-items:center; justify-content:space-between;
  padding:9px 0 0; position:relative; overflow:hidden;
}
.lomo .etq{
  writing-mode:vertical-rl; transform:rotate(180deg);
  font-family:"IBM Plex Mono", monospace; font-size:9px; font-weight:600;
  letter-spacing:.22em; color:#fff; text-transform:uppercase;
  flex:1; display:flex; align-items:center; padding-bottom:6px;
}
.merma{
  position:absolute; left:0; bottom:0; width:100%;
  background:rgba(0,0,0,.42);
  transition:height .5s linear;
}
@media (prefers-reduced-motion: reduce){ .merma{transition:none} }

.cuerpo{padding:9px 14px 10px; min-width:0}
.datos{
  display:flex; flex-wrap:wrap; align-items:center; gap:9px;
  font-family:"IBM Plex Mono", monospace; font-size:10px;
  color:var(--tinta-tenue); margin-bottom:5px;
}
.datos .hora{color:var(--tinta); font-weight:600; font-size:12.5px; font-variant-numeric:tabular-nums}
.datos .sep{width:1px; height:11px; background:#c3b9a2}
.etiquetas{display:flex; gap:5px}
.etiquetas i{
  font-style:normal; letter-spacing:.1em; font-size:8.5px;
  border:1px solid #bfb49c; padding:2px 5px; color:#5a5245;
}
.fuente{letter-spacing:.06em}

.titular{
  margin:0; font-size:19px; font-weight:700; line-height:1.16; letter-spacing:-.005em;
  text-wrap:balance; cursor:pointer; display:inline-block;
  border-bottom:1px solid transparent; transition:border-color .15s;
}
.titular:hover{border-bottom-color:#a89c82}
.titular:focus-visible{outline:2px solid var(--nivel); outline-offset:3px}
.titular::after{
  content:"▸"; font-size:12px; color:#a89c82; margin-left:8px;
  display:inline-block; transition:transform .2s; vertical-align:middle;
}
.ficha.abierta .titular::after{transform:rotate(90deg)}
@media (prefers-reduced-motion: reduce){
  .titular::after{transition:none}
}

/* ---------- despliegue ---------- */
.ampliada{
  margin-top:11px; padding-top:11px; border-top:1px solid #d5cab2;
  display:grid; grid-template-columns:1fr 190px; gap:20px;
}
.ampliada[hidden]{display:none}
.encabezado{
  display:flex; align-items:center; gap:10px; margin-bottom:7px;
  font-family:"IBM Plex Mono", monospace; font-size:8.5px;
  letter-spacing:.2em; color:var(--tinta-tenue);
}
.encabezado::before{content:""; width:14px; height:1px; background:#bfb49c}
.copiar{
  margin-left:auto; display:inline-flex; align-items:center; gap:6px;
  font-family:"IBM Plex Mono", monospace; font-size:9px; letter-spacing:.12em;
  background:transparent; color:var(--tinta); border:1px solid #bfb49c;
  padding:4px 8px; cursor:pointer; border-radius:2px;
}
.copiar:hover{background:var(--tinta); color:var(--papel); border-color:var(--tinta)}
.copiar svg{width:11px; height:11px; fill:none; stroke:currentColor; stroke-width:1.7}
.copiar.hecho{background:var(--nueva); border-color:var(--nueva); color:#fff}

.texto p{margin:0 0 9px; font-size:14px; line-height:1.5; color:#332f28; max-width:64ch}
.texto p:last-child{margin-bottom:0}

.material .encabezado{margin-bottom:8px}
.bajar-todo{
  margin-left:auto; font-family:"IBM Plex Mono", monospace; font-size:8.5px;
  letter-spacing:.12em; background:transparent; color:var(--tinta);
  border:1px solid #bfb49c; padding:3px 7px; cursor:pointer; border-radius:2px;
}
.bajar-todo:hover{background:var(--tinta); color:var(--papel); border-color:var(--tinta)}
.bajar-todo.hecho{background:var(--nueva); border-color:var(--nueva); color:#fff}

.tiles{display:grid; grid-template-columns:1fr 1fr; gap:6px}
.tile{
  position:relative; aspect-ratio:4/3; border:1px solid #c9bea7;
  background:
    linear-gradient(150deg, #d9cfb8 0%, #c9bea7 48%, #ddd4bf 100%);
  display:flex; align-items:flex-end; overflow:hidden;
}
.tile.ancho{grid-column:span 2; aspect-ratio:16/9}
.tile em{
  font-style:normal; font-family:"IBM Plex Mono", monospace; font-size:7.5px;
  letter-spacing:.06em; color:#3f3a31; background:rgba(239,231,214,.86);
  padding:2px 4px; margin:4px; line-height:1.25;
}
.baja{
  position:absolute; top:4px; right:4px; z-index:2;
  width:24px; height:24px; padding:0; border-radius:2px;
  background:rgba(26,24,21,.82); color:var(--papel); border:0;
  display:flex; align-items:center; justify-content:center; cursor:pointer;
}
.baja svg{width:12px; height:12px; fill:none; stroke:currentColor; stroke-width:2; stroke-linecap:round}
.baja:hover{background:var(--tinta)}
.baja:focus-visible{outline:2px solid #fff; outline-offset:1px}
.baja.hecho{background:var(--nueva)}
.tile .play{
  position:absolute; inset:0; display:flex; align-items:center; justify-content:center;
}
.tile .play::after{
  content:""; border-left:14px solid rgba(26,24,21,.72);
  border-top:9px solid transparent; border-bottom:9px solid transparent;
  margin-left:4px;
}
.sin-material{
  font-family:"IBM Plex Mono", monospace; font-size:9.5px; color:var(--tinta-tenue);
  border:1px dashed #c9bea7; padding:14px; text-align:center; letter-spacing:.06em;
}

@keyframes abre{from{opacity:0; transform:translateY(-6px)} to{opacity:1; transform:none}}
.ficha.abierta .ampliada{animation:abre .22s ease-out}
@media (prefers-reduced-motion: reduce){ .ficha.abierta .ampliada{animation:none} }
.linea{margin:4px 0 0; font-size:13.5px; line-height:1.35; color:#4a443a; max-width:70ch}

.margen{
  display:flex; flex-direction:column; align-items:flex-end; justify-content:space-between;
  gap:8px; padding:9px 13px 10px 6px; border-left:1px dashed #c9bea7;
}
.medios{display:flex; gap:4px}
.medios span{
  font-family:"IBM Plex Mono", monospace; font-size:8.5px; letter-spacing:.14em;
  background:var(--tinta); color:var(--papel); padding:3px 6px;
}
.medios span.vid{background:#3d3a34}
.restante{
  font-family:"IBM Plex Mono", monospace; font-size:10.5px; color:var(--tinta-tenue);
  white-space:nowrap; font-variant-numeric:tabular-nums; text-align:right;
}
.restante b{
  display:block; color:var(--nivel); font-size:15px; font-weight:600;
  letter-spacing:.02em; filter:brightness(.72); margin-bottom:2px;
}

/* entrada de ficha nueva */
@keyframes llega{
  0%{opacity:0; transform:translateY(-26px) scaleY(.9)}
  60%{opacity:1}
  100%{opacity:1; transform:none}
}
@keyframes destello{
  0%,100%{box-shadow:0 2px 0 var(--papel-sombra), 0 5px 14px rgba(0,0,0,.35)}
  30%{box-shadow:0 0 0 3px #fff, 0 5px 14px rgba(0,0,0,.35)}
}
.ficha.nueva{animation:llega .45s cubic-bezier(.2,.75,.2,1), destello 1.1s ease-out .2s}
@media (prefers-reduced-motion: reduce){ .ficha.nueva{animation:none} }

/* ---------- acceso ---------- */
.acceso{
  position:fixed; inset:0; z-index:200;
  background:var(--bahia);
  background-image:
    linear-gradient(180deg, rgba(255,255,255,.03), rgba(0,0,0,.3)),
    repeating-linear-gradient(90deg, rgba(255,255,255,.018) 0 1px, transparent 1px 4px);
  display:flex; align-items:center; justify-content:center; padding:24px;
}
.acceso[hidden]{display:none}
.tarjeta{
  width:100%; max-width:390px; background:var(--papel); color:var(--tinta);
  box-shadow:0 2px 0 var(--papel-sombra), 0 22px 50px rgba(0,0,0,.55);
  padding:26px 26px 22px; border-top:5px solid var(--emergencia);
}
.tarjeta h1{
  margin:0; font-size:21px; font-weight:700; letter-spacing:.02em; line-height:1.15;
}
.tarjeta .sub{
  font-family:"IBM Plex Mono", monospace; font-size:9px; letter-spacing:.22em;
  color:var(--tinta-tenue); margin:7px 0 22px;
}
.campo{display:flex; flex-direction:column; gap:5px; margin-bottom:14px}
.campo label{
  font-family:"IBM Plex Mono", monospace; font-size:8.5px;
  letter-spacing:.18em; color:var(--tinta-tenue);
}
.campo select, .campo input, .campo textarea{
  font-family:"IBM Plex Sans Condensed", sans-serif; font-size:14px;
  background:#f7f2e6; color:var(--tinta);
  border:1px solid #c3b9a2; border-radius:2px; padding:9px 10px; width:100%;
}
.campo input:focus, .campo select:focus, .campo textarea:focus{
  outline:2px solid var(--nueva); outline-offset:0; border-color:var(--nueva);
}
.entrar{
  width:100%; background:var(--tinta); color:var(--papel); border:0;
  font-family:"IBM Plex Mono", monospace; font-size:11px; letter-spacing:.16em;
  padding:11px; cursor:pointer; margin-top:4px;
}
.entrar:hover{background:#000}
.aviso{
  font-family:"IBM Plex Mono", monospace; font-size:10px; color:var(--emergencia);
  margin:10px 0 0; min-height:14px; letter-spacing:.04em;
}
.pista{
  margin:18px 0 0; padding-top:13px; border-top:1px dashed #c9bea7;
  font-family:"IBM Plex Mono", monospace; font-size:9px; line-height:1.8;
  color:var(--tinta-tenue); letter-spacing:.04em;
}
.pista b{color:var(--tinta)}

/* ---------- sesión ---------- */
.sesion{
  display:flex; align-items:center; gap:9px;
  font-family:"IBM Plex Mono", monospace; font-size:9.5px; letter-spacing:.12em;
  color:var(--cromo);
}
.sesion .rol{
  color:var(--papel); border:1px solid var(--riel-luz); padding:4px 8px;
  background:var(--riel-luz);
}
.sesion .rol.redaccion{background:var(--nueva); border-color:var(--nueva); color:#fff}
.salir{
  background:transparent; border:1px solid var(--riel-luz); color:var(--cromo);
  font-size:9px; padding:4px 8px; letter-spacing:.12em;
}
.salir:hover{color:var(--papel); border-color:var(--cromo); background:transparent}

/* ---------- captura ---------- */
.captura{
  background:var(--papel); color:var(--tinta);
  max-width:1180px; margin:18px auto 0; padding:20px 22px 22px;
  box-shadow:0 2px 0 var(--papel-sombra), 0 12px 30px rgba(0,0,0,.4);
  border-top:4px solid var(--nueva);
}
.captura[hidden]{display:none}
.captura h2{
  margin:0 0 16px; font-size:16px; letter-spacing:.02em;
  display:flex; align-items:center; gap:11px;
}
.captura h2 small{
  font-family:"IBM Plex Mono", monospace; font-size:8.5px; letter-spacing:.18em;
  color:var(--tinta-tenue); font-weight:400;
}
.rejilla{display:grid; grid-template-columns:1fr 250px; gap:20px}
.captura textarea{min-height:104px; resize:vertical; line-height:1.45}
.chips{display:flex; flex-wrap:wrap; gap:5px}
.chip{
  font-family:"IBM Plex Mono", monospace; font-size:9px; letter-spacing:.1em;
  border:1px solid #bfb49c; background:transparent; color:#5a5245;
  padding:5px 8px; cursor:pointer; border-radius:2px;
}
.chip[aria-pressed="true"]{background:var(--tinta); color:var(--papel); border-color:var(--tinta)}
.casillas{display:flex; flex-direction:column; gap:9px; margin-top:4px}
.casilla{
  display:flex; align-items:center; gap:9px; cursor:pointer;
  font-family:"IBM Plex Mono", monospace; font-size:10.5px; letter-spacing:.06em;
}
.casilla input{width:16px; height:16px; accent-color:var(--tinta); cursor:pointer; margin:0}
.casilla.grave{
  border:1px solid var(--emergencia); padding:9px 10px; color:var(--emergencia);
  font-weight:600;
}
.casilla.grave input{accent-color:var(--emergencia)}
.acciones{display:flex; gap:8px; margin-top:20px; padding-top:16px; border-top:1px dashed #c9bea7}
.publicar{
  background:var(--nueva); color:#fff; border:0;
  font-family:"IBM Plex Mono", monospace; font-size:11px; letter-spacing:.14em;
  padding:11px 20px; cursor:pointer;
}
.publicar:hover{background:#266944}
.cancelar{
  background:transparent; color:var(--tinta-tenue); border:1px solid #c3b9a2;
  font-family:"IBM Plex Mono", monospace; font-size:11px; letter-spacing:.14em;
  padding:11px 18px; cursor:pointer;
}
.cancelar:hover{background:#e3dac6; color:var(--tinta)}

@media (max-width:720px){
  .rejilla{grid-template-columns:1fr}
}

.version{
  position:fixed; right:8px; bottom:6px; z-index:300; pointer-events:none;
  font-family:"IBM Plex Mono", monospace; font-size:8.5px; letter-spacing:.14em;
  color:#586069; opacity:.8;
}

.vacio{
  border:1px dashed var(--riel-luz); padding:26px; text-align:center;
  font-family:"IBM Plex Mono", monospace; font-size:11px; color:var(--cromo); letter-spacing:.08em;
}

/* ---------- archivo ---------- */
.archivo{margin-top:46px; border-top:1px solid var(--riel-luz); padding-top:6px}
.cajones{display:flex; flex-direction:column; gap:3px; margin-top:4px}
.cajon{
  display:grid; grid-template-columns:118px 1fr auto auto;
  align-items:center; gap:16px;
  background:linear-gradient(180deg,#2b2f35,#24272c);
  border:1px solid #14161b; border-left:3px solid var(--riel-luz);
  padding:11px 14px;
  font-family:"IBM Plex Mono", monospace; font-size:11px; color:#b4bcc5;
}
.cajon:hover{border-left-color:var(--cromo)}
.cajon .dia{color:var(--papel); font-size:13px; letter-spacing:.06em; font-weight:500}
.cajon .dia small{display:block; font-size:8.5px; letter-spacing:.16em; color:var(--cromo); margin-top:3px}
.cajon .lote{font-size:10px; letter-spacing:.04em}
.cajon .peso{font-variant-numeric:tabular-nums; color:var(--cromo); font-size:10px}
.vence{
  font-size:8.5px; letter-spacing:.14em; padding:3px 6px;
  border:1px solid var(--riel-luz); color:var(--cromo); white-space:nowrap;
}
.vence.pronto{border-color:var(--importante); color:var(--importante)}
.zip{
  display:inline-flex; align-items:center; gap:7px;
  background:var(--riel-luz); color:var(--papel); border:1px solid #000;
  font-family:"IBM Plex Mono", monospace; font-size:10px; letter-spacing:.1em;
  padding:6px 11px; cursor:pointer;
}
.zip:hover{background:#454b55}
.zip svg{width:12px; height:12px; fill:none; stroke:currentColor; stroke-width:2; stroke-linecap:round}
.zip.hecho{background:var(--nueva); border-color:var(--nueva)}
.nota-ftp{
  margin-top:12px; font-family:"IBM Plex Mono", monospace; font-size:9.5px;
  color:#5e656e; letter-spacing:.05em; line-height:1.7;
}

@media (max-width:720px){
  .cajon{grid-template-columns:1fr auto; gap:8px 12px}
  .cajon .lote{grid-column:1 / -1; order:3}
  .cajon .peso{order:4}
  .cajon .zip{order:5; grid-column:1 / -1; justify-content:center}
}

.pie{
  max-width:1180px; margin:0 auto; padding:0 16px 40px;
  font-family:"IBM Plex Mono", monospace; font-size:10px; line-height:1.7;
  color:#5e656e; letter-spacing:.05em;
}

@media (max-width:720px){
  .reloj{margin-left:0; font-size:20px}
  .ficha{grid-template-columns:34px 1fr}
  .margen{
    grid-column:2; border-left:0; border-top:1px dashed #c9bea7;
    flex-direction:row; align-items:center; padding:7px 14px 9px;
  }
  .titular{font-size:16.5px}
  .linea{font-size:12.5px}
  .ampliada{grid-template-columns:1fr; gap:14px}
  .tiles{grid-template-columns:1fr 1fr 1fr}
  .tile.ancho{grid-column:span 3}
}

/* ---------- subida de material ---------- */
.soltar{
  position:relative; display:flex; align-items:center; justify-content:center;
  border:1px dashed #bfb49c; background:#f7f2e6; border-radius:2px;
  padding:20px 12px; cursor:pointer; text-align:center;
  transition:background .15s, border-color .15s;
}
.soltar:hover, .soltar.encima{background:#efe6d2; border-color:var(--nueva)}
.soltar input{position:absolute; inset:0; opacity:0; cursor:pointer; width:100%; height:100%}
.soltar-texto{
  font-family:"IBM Plex Mono", monospace; font-size:9.5px;
  letter-spacing:.1em; color:var(--tinta-tenue); line-height:1.6;
}
.cola{list-style:none; margin:8px 0 0; padding:0; display:flex; flex-direction:column; gap:3px}
.cola li{
  display:flex; align-items:center; gap:8px;
  font-family:"IBM Plex Mono", monospace; font-size:9.5px; color:#4a443a;
  background:#f7f2e6; border:1px solid #ddd3bc; padding:5px 7px;
}
.cola li .clase{
  font-size:8px; letter-spacing:.12em; padding:2px 4px;
  background:var(--tinta); color:var(--papel);
}
.cola li .clase.v{background:var(--nueva)}
.cola li .peso-a{margin-left:auto; color:var(--tinta-tenue); font-variant-numeric:tabular-nums}
.cola li.malo{border-color:var(--emergencia); color:var(--emergencia)}

.barra{
  flex:1; height:4px; background:#ddd3bc; overflow:hidden; align-self:center;
  min-width:80px; border-radius:2px; max-width:220px;
}
.barra[hidden]{display:none}
.barra i{display:block; height:100%; width:0; background:var(--nueva); transition:width .2s}
.acciones .aviso{margin:0 0 0 auto; align-self:center; text-align:right}

.tile.conimagen{background-size:cover; background-position:center}
.tile.conimagen em{background:rgba(239,231,214,.9)}

.reconectando{
  position:fixed; left:50%; bottom:14px; transform:translateX(-50%); z-index:150;
  background:var(--emergencia); color:#fff; padding:7px 14px;
  font-family:"IBM Plex Mono", monospace; font-size:10px; letter-spacing:.12em;
}
.reconectando[hidden]{display:none}

/* ---------- audio adjunto ---------- */
.medios span.aud{background:#2f7d54}

.tile.sonido{
  grid-column:span 2; aspect-ratio:auto; display:block; padding:9px 9px 8px;
  background:linear-gradient(150deg,#ded4bf 0%,#d0c5ae 100%);
}
.tile.sonido audio{
  display:block; width:100%; height:34px; margin-right:26px; width:calc(100% - 26px);
}
.tile.sonido em{
  display:block; margin:7px 0 0; padding:0; background:transparent;
  font-size:7.5px; color:#4a443a;
}
.cola li .clase.a{background:#2f7d54}

@media (max-width:720px){
  .tile.sonido{grid-column:span 3}
}

/* ---------- borrar nota ---------- */
.pie-ficha{
  grid-column:1 / -1; margin-top:4px; padding-top:11px;
  border-top:1px dashed #d5cab2;
}
.borrado{display:flex; align-items:center; gap:9px; justify-content:flex-end; flex-wrap:wrap}
.borrado .pregunta{
  font-family:"IBM Plex Mono", monospace; font-size:9.5px; letter-spacing:.06em;
  color:var(--tinta-tenue); margin-right:auto;
}
.borrado .pregunta.malo{color:var(--emergencia)}
.borrar, .si-borrar, .no-borrar{
  font-family:"IBM Plex Mono", monospace; font-size:9px; letter-spacing:.12em;
  padding:5px 9px; cursor:pointer; border-radius:2px;
}
.borrar{background:transparent; color:var(--tinta-tenue); border:1px solid #c9bea7}
.borrar:hover{background:var(--emergencia); border-color:var(--emergencia); color:#fff}
.si-borrar{background:var(--emergencia); color:#fff; border:1px solid var(--emergencia)}
.si-borrar:hover{background:#a8281f}
.si-borrar:disabled{opacity:.6; cursor:default}
.no-borrar{background:transparent; color:var(--tinta); border:1px solid #bfb49c}
.no-borrar:hover{background:#e3dac6}

@keyframes sale{
  to{opacity:0; transform:translateX(26px) scaleY(.85)}
}
.ficha.saliendo{animation:sale .3s ease-in forwards; pointer-events:none}
@media (prefers-reduced-motion: reduce){
  .ficha.saliendo{animation:none; opacity:0}
}

/* ---------- etiqueta libre ---------- */
.etq-nueva{display:flex; gap:5px; margin-top:7px}
.etq-nueva input{
  flex:1; min-width:0; font-family:"IBM Plex Mono", monospace; font-size:9.5px;
  letter-spacing:.08em; text-transform:uppercase;
  background:#f7f2e6; color:var(--tinta);
  border:1px solid #c3b9a2; border-radius:2px; padding:5px 7px;
}
.etq-nueva input:focus{outline:2px solid var(--nueva); border-color:var(--nueva)}
.etq-nueva input::placeholder{text-transform:none; letter-spacing:.04em; color:#a89c82}
.etq-nueva button{
  font-family:"IBM Plex Mono", monospace; font-size:9px; letter-spacing:.1em;
  background:var(--tinta); color:var(--papel); border:0;
  padding:5px 9px; cursor:pointer; border-radius:2px;
}
.etq-nueva button:hover{background:#000}
.chip.propia{border-style:dashed}
.chip.propia[aria-pressed="true"]{border-style:solid}

/* ---------- editar nota ---------- */
.editar{
  font-family:"IBM Plex Mono", monospace; font-size:9px; letter-spacing:.12em;
  padding:5px 9px; cursor:pointer; border-radius:2px;
  background:transparent; color:var(--tinta); border:1px solid #bfb49c;
}
.editar:hover{background:var(--tinta); color:var(--papel); border-color:var(--tinta)}
.cola.actual li.malo span:not(.clase){text-decoration:line-through; opacity:.65}

/* ---------- republicar ---------- */
.republicar{
  background:var(--importante); color:var(--tinta); border:0;
  font-family:"IBM Plex Mono", monospace; font-size:11px; letter-spacing:.14em;
  padding:11px 18px; cursor:pointer; font-weight:600;
}
.republicar:hover{background:#b08e1f}
.republicar:disabled{opacity:.6; cursor:default}
