*{box-sizing:border-box}body{margin:0;background:#f6f5f2;color:#252a28;font:15px/1.55 system-ui,-apple-system,Segoe UI,sans-serif}header{display:flex;align-items:center;justify-content:space-between;padding:19px max(24px,calc((100vw - 1120px)/2));background:white;border-bottom:1px solid #e5e5df}header strong{letter-spacing:.14em;font-size:21px}header span{font-size:10px;letter-spacing:.2em;color:#9a8a6d}main{max-width:1120px;margin:48px auto;padding:0 24px}.top{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:28px}.eyebrow{letter-spacing:.2em;font-size:11px;color:#9a8a6d;font-weight:700}h1{font-size:34px;line-height:1.15;margin:5px 0 12px}p{color:#666c67}.panel{background:white;border:1px solid #e5e5df;border-radius:12px;padding:24px;overflow:auto}table{width:100%;border-collapse:collapse;text-align:left}th{font-size:12px;color:#818680;font-weight:600}td,th{padding:15px;border-bottom:1px solid #eeeee9}a{color:#496d5b;text-decoration:none}button,.button{border:0;border-radius:7px;background:#345845;color:white;padding:12px 20px;font-weight:650;cursor:pointer;display:inline-block;font:inherit}.outline{background:#f1f3ef;color:#345845}.danger{background:#9b3f38;margin-top:20px}.productline{display:flex;align-items:center;gap:12px}.productline img{width:54px;height:54px;object-fit:cover;border-radius:6px}.productline small{display:block;color:#929891}.status{color:#466e55;font-size:13px}.empty{text-align:center;padding:35px}.editor{max-width:850px}.fields{display:grid;grid-template-columns:1fr 1fr;gap:20px}label{display:block;font-size:13px;font-weight:600}input:not([type=checkbox]),textarea{width:100%;border:1px solid #d9dcd5;background:white;border-radius:7px;padding:11px 12px;margin-top:7px;font:inherit;color:#252a28}textarea{resize:vertical}.wide{grid-column:1/-1}.check{display:flex;gap:10px;align-items:center}.actions{display:flex;align-items:center;gap:20px}.thumbs{display:flex;gap:10px;flex-wrap:wrap}.thumbs img{height:90px;width:110px;object-fit:cover;border-radius:7px}.login{max-width:430px;margin:12vh auto;background:white;border:1px solid #e5e5df;border-radius:14px;padding:35px}.login small{display:block;font-size:13px;letter-spacing:.1em;color:#8b806c}.login label{margin:20px 0}.login button{width:100%}.error,.success{padding:12px;border-radius:6px;background:#fce9e7;color:#8b3430}.success{background:#e9f5eb;color:#315d3b}@media(max-width:650px){.top{align-items:flex-start;flex-direction:column}.fields{grid-template-columns:1fr}.login{margin:6vh 15px}main{margin-top:28px}h1{font-size:28px}}
/* CARU Admin V2: controles del editor */
.photo-item{position:relative;width:110px;height:90px}
.photo-item img{display:block;width:100%;height:100%;object-fit:cover;border-radius:7px}
.photo-remove{position:absolute;top:5px;right:5px;width:29px;height:29px;display:grid;place-items:center;padding:0;border:1px solid #e8e8e8;border-radius:50%;background:#fff;color:#8c302b;font-size:22px;line-height:1;box-shadow:0 1px 6px #0002}
.photo-remove:hover{background:#fce9e7}
.visibility{border:1px solid #cbdcd1;background:#f3f8f4;border-radius:9px;padding:16px}
.visibility-label{display:flex;align-items:center;gap:14px;cursor:pointer}
.visibility-label input[type=checkbox]{width:25px;height:25px;accent-color:#345845;flex:none;cursor:pointer}
.visibility-label strong{display:block;font-size:15px}
.visibility-label small{display:block;font-size:12px;font-weight:400;color:#617268;margin-top:2px}
.actions .delete-link{margin-left:auto;padding:8px 0;background:transparent;color:#9b3f38;font-size:13px;font-weight:500;text-decoration:underline;text-underline-offset:3px}
.actions .delete-link:hover{color:#742820}
@media(max-width:650px){.actions{flex-wrap:wrap;gap:14px}.actions .delete-link{margin-left:auto}}

/* Galería CARU: orden manual */
.photo-order{display:flex;justify-content:center;gap:6px;margin-top:6px}
.photo-order button{padding:5px 11px;min-width:36px;cursor:pointer;background:#f2f0ec;color:#222;border:1px solid #d6d0c7;border-radius:4px}
.photo-order button:hover{background:#e6dfd5}


/* CARU Admin - galeria V3: reglas finales de alta especificidad */
.editor .panel.fields .thumbs {
  display:grid; grid-template-columns:repeat(auto-fill, minmax(140px, 140px));
  justify-content:start; align-items:start; column-gap:20px; row-gap:22px;
  width:100%; margin:14px 0 26px; overflow:visible;
}
.editor .panel.fields .thumbs .photo-item {
  position:relative; display:flex; flex-direction:column;
  width:140px; height:auto; min-height:184px; margin:0; padding:0;
}
.editor .panel.fields .thumbs .photo-item > img {
  display:block; flex:none; width:140px; height:140px; max-width:100%;
  object-fit:contain; background:#f5f4f1; border:1px solid #e1e3dc; border-radius:10px;
}
.editor .panel.fields .thumbs .photo-item .photo-order {
  position:static; display:flex; flex:none; justify-content:center; align-items:center;
  width:100%; height:36px; gap:8px; margin:8px 0 0; padding:0;
}
.editor .panel.fields .thumbs .photo-item .photo-order button {
  display:inline-flex; align-items:center; justify-content:center;
  flex:0 0 34px; width:34px; min-width:34px; max-width:34px; height:34px;
  margin:0; padding:0; border:1px solid #d8ded7; border-radius:7px;
  background:#f2f5f1; color:#345845; font:500 18px/1 system-ui,sans-serif;
  box-shadow:none; cursor:pointer; transition:background-color .15s,border-color .15s;
}
.editor .panel.fields .thumbs .photo-item .photo-order button:hover {
  background:#e1ebe3; border-color:#a5b9a9;
}
.editor .panel.fields .thumbs .photo-item > .photo-remove {
  position:absolute; top:7px; right:7px; display:grid; place-items:center;
  width:27px; height:27px; min-width:27px; margin:0; padding:0;
  border:1px solid #e5e2dd; border-radius:50%; background:#fff; color:#8c302b;
  font:400 20px/1 system-ui,sans-serif; box-shadow:0 2px 7px #0002;
}
.editor .panel.fields .thumbs .photo-item button:focus-visible {outline:2px solid #345845;outline-offset:2px}
.editor .panel.fields .visibility {grid-column:1/-1;clear:both}
@media(max-width:420px){.editor .panel.fields .thumbs{grid-template-columns:repeat(auto-fill,minmax(130px,130px));gap:16px}.editor .panel.fields .thumbs .photo-item,.editor .panel.fields .thumbs .photo-item > img{width:130px}.editor .panel.fields .thumbs .photo-item > img{height:130px}.editor .panel.fields .thumbs .photo-item{min-height:174px}}

/* CARU V4 - Acciones secundarias de formatos, sin afectar Guardar */
.editor .panel.fields .variation-row .variation-remove,
.editor .panel.fields .variation-add {
  display:inline-flex; align-items:center; justify-content:center;
  width:auto; min-width:0; min-height:34px; height:34px;
  padding:0 13px; margin:10px 0 0;
  border:1px solid #d8ded7; border-radius:7px;
  background:#f2f5f1; color:#345845;
  font:500 13px/1.2 system-ui,-apple-system,Segoe UI,sans-serif;
  box-shadow:none; cursor:pointer;
  transition:background-color .15s ease,border-color .15s ease,color .15s ease;
}
.editor .panel.fields .variation-row .variation-remove {
  color:#9b4b43; background:#fbf7f6; border-color:#eadbd8;
}
.editor .panel.fields .variation-row .variation-remove:hover {
  color:#80362e; background:#f8eae7; border-color:#dbb8b1;
}
.editor .panel.fields .variation-add:hover {
  background:#e1ebe3; border-color:#a5b9a9;
}
.editor .panel.fields .variation-row .variation-remove:focus-visible,
.editor .panel.fields .variation-add:focus-visible {
  outline:2px solid #345845; outline-offset:2px;
}
.editor .panel.fields #variation-rows .variation-row {margin-bottom:16px;}
.editor .panel.fields #variation-rows .variation-row:last-child {margin-bottom:6px;}
