/* Panel de la propietaria. Misma identidad que el sitio (docs/diseno/DESIGN.md): crema, terracota, Fraunces y Outfit.
   Reglas de uso: botones grandes, texto de 17 px o más, nada escondido. */
@font-face{font-family:"Fraunces";font-style:normal;font-weight:100 900;font-display:swap;src:url(fonts/fraunces-var.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Fraunces";font-style:normal;font-weight:100 900;font-display:swap;src:url(fonts/fraunces-var-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Outfit";font-style:normal;font-weight:100 900;font-display:swap;src:url(fonts/outfit-var.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Outfit";font-style:normal;font-weight:100 900;font-display:swap;src:url(fonts/outfit-var-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}

:root{--terra:#A9572F;--terra-osc:#8F4A28;--crema:#F6EFE6;--tinta:#2B1D15;--suave:#5C4A3E;--arena:#EBDFD1;--papel:#FBF7F1;--sobre:#FFF6EC;--ok:#17703F;--error:#A32020;--linea:rgba(43,29,21,.22);
  --serif:"Fraunces",Georgia,serif;--sans:"Outfit",system-ui,-apple-system,"Segoe UI",sans-serif;--ease:cubic-bezier(.2,.7,.2,1)}
*,*::before,*::after{box-sizing:border-box}
body{margin:0;background:var(--crema);color:var(--tinta);font:17px/1.55 var(--sans);overflow-x:clip}
a{color:var(--terra-osc)}
:focus-visible{outline:3px solid var(--tinta);outline-offset:3px}
.barra :focus-visible,.login__marca :focus-visible{outline-color:var(--sobre)}
img{max-width:100%;height:auto}
h1,h2{font-family:var(--serif);font-weight:500;line-height:1.1;margin:0}
h1{font-size:clamp(30px,4vw,42px);margin-bottom:10px}
h2{font-size:24px;margin-bottom:8px}
p{margin:0 0 1em}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}}

/* Barra superior */
.barra{background:var(--terra);color:var(--sobre);display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px max(20px,calc((100vw - 960px)/2))}
.barra__marca{display:flex;align-items:center;gap:14px;color:var(--sobre);text-decoration:none}
.barra__marca img{height:34px;width:auto}
.barra__marca span{font-weight:500;border-left:1px solid rgba(255,246,236,.5);padding-left:14px}
.barra__salir{display:flex;align-items:center;gap:16px;margin:0;font-size:16px}
.barra__usuario{display:none;opacity:.9}
.barra .enlace{color:var(--sobre)}
.contenido{max-width:960px;margin:0 auto;padding:32px 20px 96px}

/* Botones */
.boton{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:12px 24px;border:2px solid var(--terra);background:var(--terra);color:#fff;border-radius:2px;font:500 17px/1.2 var(--sans);text-decoration:none;cursor:pointer;transition:transform .2s var(--ease),box-shadow .2s,background-color .2s}
.boton:hover{background:var(--terra-osc);border-color:var(--terra-osc);transform:translateY(-2px);box-shadow:0 8px 18px rgba(43,29,21,.2)}
.boton:active{transform:none;box-shadow:none}
.boton--sec{background:transparent;color:var(--terra-osc)}
.boton--sec:hover{background:var(--arena);color:var(--terra-osc);border-color:var(--terra)}
.boton--grande{min-height:56px;padding:14px 34px;font-size:19px}
.boton--peligro{background:var(--error);border-color:var(--error)}
.boton--peligro:hover{background:#7E1818;border-color:#7E1818}
.enlace{background:none;border:0;padding:6px 0;font:inherit;color:var(--terra-osc);text-decoration:underline;text-underline-offset:3px;cursor:pointer;min-height:44px}
.enlace--peligro{color:var(--error)}

/* Avisos */
.aviso{padding:14px 18px;margin:14px 0;border-left:5px solid var(--ok);background:#E3EFE6;border-radius:0 2px 2px 0}
.aviso--error{border-left-color:var(--error);background:#F6E1E1}
.ayuda,.nota{color:var(--suave);font-size:16px;margin:6px 0 0}

/* Lista de velas */
.cabeza{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:6px}
.cabeza h1{margin:0}
.resumen{display:flex;gap:10px;flex-wrap:wrap;list-style:none;margin:16px 0 8px;padding:0}
.resumen li{background:#fff;border:1px solid var(--linea);padding:6px 14px;font-size:15px;border-radius:999px}
.resumen strong{font-weight:600}
.grupo{margin-top:32px}
.grupo__titulo{display:flex;align-items:baseline;gap:10px;padding-bottom:8px;border-bottom:1px solid var(--linea);margin-bottom:14px}
.grupo__titulo span{font-family:var(--sans);font-size:15px;color:var(--suave)}
.lista{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.fila{display:grid;grid-template-columns:84px 1fr auto;gap:14px;align-items:center;background:#fff;border:1px solid var(--linea);border-radius:2px;padding:10px 12px 10px 10px;transition:transform .2s var(--ease),box-shadow .2s,border-color .2s}
.fila:hover{transform:translateY(-3px);box-shadow:0 10px 22px rgba(43,29,21,.12);border-color:var(--terra)}
.fila--oculta{background:var(--arena)}
.fila--oculta .fila__foto img{opacity:.55}
.fila__foto{width:84px;height:84px;background:#fff;overflow:hidden}
.fila__foto img{width:100%;height:100%;object-fit:cover;display:block}
.fila__datos{display:flex;flex-direction:column;gap:3px;min-width:0}
.fila__datos strong{font-family:var(--serif);font-weight:500;font-size:19px;line-height:1.15;overflow-wrap:anywhere}
.estado{align-self:flex-start;border:1px solid rgba(43,29,21,.35);border-radius:999px;padding:0 11px;font-size:14px;line-height:1.55}
.estado--bajo_pedido{background:var(--arena)}
.estado--oculto{background:var(--tinta);color:var(--crema);border-color:var(--tinta)}
.vacio{padding:40px 0}

/* Formulario */
.volver{margin:0 0 14px;font-size:16px}
.formulario{margin-top:22px;display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:28px 40px;align-items:start}
.formulario__datos{display:flex;flex-direction:column;gap:22px}
.formulario__fotos{display:flex;flex-direction:column;gap:18px;position:sticky;top:20px}
.formulario .acciones{grid-column:1/-1;display:flex;gap:14px;flex-wrap:wrap;align-items:center;padding-top:20px;border-top:1px solid var(--linea)}
.campo{border:0;padding:0;margin:0;min-width:0}
.campo label,.campo legend,.etiqueta{display:block;font-weight:500;margin-bottom:6px;padding:0}
input[type=text],select,textarea{width:100%;font:inherit;padding:12px 14px;border:2px solid rgba(43,29,21,.4);border-radius:2px;background:#fff;color:var(--tinta);transition:border-color .15s}
input[type=text]:hover,select:hover,textarea:hover{border-color:var(--terra)}
input[type=file]{width:100%;font:inherit;padding:16px 12px;border:2px dashed rgba(43,29,21,.45);border-radius:2px;background:var(--papel)}
input[type=file]::file-selector-button{font:500 16px var(--sans);margin-right:12px;padding:8px 16px;border:2px solid var(--terra);background:var(--terra);color:#fff;border-radius:2px;cursor:pointer}
textarea{resize:vertical}
.error{color:var(--error);font-weight:500;margin:6px 0 0}
.campo label.opcion,.opcion{display:flex;gap:12px;align-items:flex-start;padding:12px 14px;border:1px solid var(--linea);border-radius:2px;background:#fff;margin-bottom:8px;font-weight:400!important;cursor:pointer;transition:border-color .15s,background .15s}
.opcion:hover{border-color:var(--terra)}
.campo label.opcion:has(input:checked),.opcion:has(input:checked){border-color:var(--terra);background:var(--papel);box-shadow:inset 3px 0 0 var(--terra)}
.opcion input{margin-top:6px;width:20px;height:20px;flex:none;accent-color:var(--terra)}
.opcion strong{display:block;font-weight:500}
.opcion small{display:block;color:var(--suave);font-size:15px}
.avanzado{background:#fff;border:1px solid var(--linea);border-radius:2px;padding:4px 16px 14px}
.avanzado summary{font-weight:500;cursor:pointer;min-height:48px;display:flex;align-items:center}
.fotos{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.foto{background:#fff;border:1px solid var(--linea);padding:8px;border-radius:2px}
.foto img{width:100%;aspect-ratio:1;object-fit:cover;display:block}
.foto__acciones{display:flex;flex-direction:column;align-items:flex-start;margin-top:4px}
.etiqueta-principal{font-size:14px;font-weight:600;color:var(--ok);padding:6px 0;min-height:44px;display:flex;align-items:center}
.peligro{margin-top:44px;padding-top:24px;border-top:1px solid var(--linea)}
.peligro p{max-width:560px}

/* Pantallas centradas: aviso, eliminar */
.entrada{max-width:560px;margin:6vh auto 0;background:#fff;border:1px solid var(--linea);padding:32px 32px 28px}
.entrada .acciones{display:flex;gap:14px;flex-wrap:wrap;margin-top:20px}

/* Entrada con Google */
.login{display:grid;grid-template-columns:1fr 1fr;min-height:100vh}
.login__marca{background:var(--terra);color:var(--sobre);display:flex;flex-direction:column;justify-content:space-between;padding:48px max(32px,4vw)}
.login__marca img{height:56px;width:auto;align-self:flex-start}
.login__marca p{font-family:var(--serif);font-size:clamp(28px,3vw,42px);line-height:1.12;max-width:440px;margin:0}
.login__franja{height:36px;background:url(img/patron.webp) repeat-x 0 center/192px 36px;opacity:.45;margin:0 calc(-1 * max(32px,4vw))}
.login__form{display:flex;flex-direction:column;justify-content:center;gap:6px;padding:48px max(32px,5vw);max-width:620px}
.login__form h1{font-size:clamp(30px,3.4vw,40px)}
.login__google{margin:20px 0 6px;min-height:44px;width:300px}
.login__prueba{margin-top:32px;padding-top:18px;border-top:1px dashed rgba(43,29,21,.3)}

@media (min-width:700px){.barra__usuario{display:inline;font-size:15px}}
@media (max-width:860px){
  .formulario{grid-template-columns:1fr}
  .formulario__fotos{position:static}
  .lista{grid-template-columns:1fr}
  .login{grid-template-columns:1fr;min-height:0}
  .login__marca{padding:28px 24px 0;gap:18px}
  .login__marca p{font-size:26px}
  .login__form{padding:32px 24px 48px}
  .contenido{padding-top:24px}
}
@media (max-width:480px){.fila{grid-template-columns:72px 1fr}.fila .boton{grid-column:1/-1}.fila__foto{width:72px;height:72px}.fotos{grid-template-columns:repeat(2,minmax(0,1fr))}.entrada{padding:24px 20px}}
