/* Beta V1.5 · Horarios de la tienda online y fotos de producto (mobile-first). */

/* Tienda: carteles de horario */
.store-closed{display:flex;gap:12px;align-items:flex-start;background:#fff8ea;border-color:#f1e0b9;color:#6f4a16;font-size:13px}
.store-closed>svg{flex-shrink:0;margin-top:1px}
.store-closed b{display:block;font-size:14px;color:#5a3a0e;margin-bottom:3px}
.store-closed span{display:block}
.store-hours-open{display:flex;gap:8px;align-items:center;background:#e9f5ee;border-color:#cfe7d8;color:#1f6247}
.store-hours-open svg,.checkout-closed svg{width:16px;height:16px;flex-shrink:0;vertical-align:-3px}
.cart-closed{display:flex;gap:8px;align-items:flex-start;margin:10px 0 0;padding:10px 12px;border-radius:10px;background:#fff8ea;color:#6f4a16;font-size:12px;line-height:1.4}
.cart-closed svg{width:16px;height:16px;flex-shrink:0}
.add-product:disabled{opacity:.45;cursor:not-allowed}
.checkout-closed{margin:12px 0}

/* Fotos de producto: el contenedor conserva su tamaño; la foto lo cubre */
img.product-photo{display:block;object-fit:cover;object-position:center}
.product-art img.product-photo,.product:hover .product-art img.product-photo{width:100%;height:100%;transform:none}
.picker-art{overflow:hidden}
.picker-art img.product-photo{width:100%;height:100%}
.thumb{overflow:hidden}
.thumb img.product-photo,.pick-card .thumb img.product-photo{width:100%;height:100%}

/* Carta (gestión): sección Foto del editor de producto */
.photo-editor{display:grid;grid-template-columns:1fr;gap:12px;padding:14px;margin:0 0 18px;border:1px solid var(--line);border-radius:14px;background:#fbfaf7;min-width:0}
.photo-editor[aria-busy=true] .photo-preview{opacity:.75}
.photo-preview{width:100%;max-width:260px;aspect-ratio:4/3;border-radius:12px;overflow:hidden;display:grid;place-items:center;background:#f5ede1}
.photo-preview.sandwich{background:#e8eee2}.photo-preview.fries{background:#fae9d7}.photo-preview.drink,.photo-preview.beer{background:#e8eef9}
.photo-preview img{width:62%;height:auto;max-height:80%;object-fit:contain}
.photo-preview img.product-photo{width:100%;height:100%;max-height:none;object-fit:cover}
.photo-preview>span{font-size:54px}
.photo-body{display:grid;gap:8px;min-width:0}
.photo-body h3{margin:0}
.photo-status{margin:0;font-size:12px;color:var(--ink)}
.photo-actions{display:flex;flex-wrap:wrap;gap:8px}
.photo-pick{position:relative;overflow:hidden;cursor:pointer}
.photo-pick svg{width:16px;height:16px}
.photo-pick input[type=file]{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer;font-size:0}
.photo-pick:focus-within{outline:3px solid var(--pink);outline-offset:2px}
.photo-pick:has(input:disabled){opacity:.6;cursor:not-allowed}
.photo-confirm{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:10px 12px;border-radius:10px;background:#fff0f1;font-size:12px;color:#7d2733}
.photo-confirm[hidden]{display:none}
.photo-crop{margin:0}
.photo-progress{display:flex;align-items:center;gap:10px;font-size:12px;color:var(--ink)}
.photo-progress[hidden]{display:none}
.photo-progress progress{flex:1;min-width:0;height:8px;accent-color:var(--blue)}
.photo-body .form-error{margin:0}
.photo-body .form-error:empty{display:none}
@media(min-width:560px){.photo-editor{grid-template-columns:200px minmax(0,1fr);align-items:start}.photo-preview{max-width:none}}

/* Tienda (gestión): editor de horarios */
.hours-editor{display:grid;gap:12px;margin:20px 0 6px;padding:18px 0 0;border-top:1px solid var(--line);min-width:0}
.hours-editor h3,.hours-editor h4{margin:0}
.hours-editor .helper{margin:0}
.hours-head{display:flex;flex-wrap:wrap;gap:10px 14px;align-items:flex-start;justify-content:space-between}
.hours-head>div{flex:1 1 240px;min-width:0;display:grid;gap:4px}
.hours-now{display:inline-flex;align-items:center;gap:6px;padding:7px 12px;border-radius:999px;font-size:12px;font-weight:650;line-height:1.3;background:#fff3df;color:#7a4f12;max-width:100%}
.hours-now::before{content:"";width:8px;height:8px;border-radius:50%;background:currentColor;flex-shrink:0}
.hours-now.open{background:#e6f4ec;color:var(--green)}
.hours-auto{padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:#f8f9fc}
.hours-days{display:grid;gap:8px;grid-template-columns:repeat(auto-fill,minmax(min(100%,270px),1fr));align-items:start}
.hours-editor:not(.auto) .hours-days{opacity:.92}
.hours-day,.hours-exception{display:grid;gap:8px;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:#fff;min-width:0}
.hours-day.closed{background:#f8f9fc}
.hours-day-head{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:28px}
.hours-day-head b{font-size:13px}
.hours-closed{display:inline-flex;align-items:center;gap:7px;font-size:12px;color:#5e7096;cursor:pointer}
.hours-closed input{accent-color:var(--blue);width:17px;height:17px;margin:0}
.hours-day.closed .hours-closed{color:var(--ink);font-weight:650}
.hours-shifts{display:grid;gap:6px}
.hours-shift{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto;align-items:center;gap:6px;min-width:0}
.hours-shift input[type=time]{width:100%;min-width:0;border:1px solid #d6deec;border-radius:8px;padding:8px 6px 8px 9px;min-height:42px;color:var(--ink);background:#fff;font:inherit;font-size:15px;font-variant-numeric:tabular-nums}
.hours-shift input[type=time]::-webkit-calendar-picker-indicator{margin-left:2px;padding:0}
.hours-shift>span{font-size:12px;color:var(--muted)}
.hours-remove{min-width:38px;min-height:42px;font-size:20px;color:var(--red)}
.hours-next{grid-column:1/-1;font-size:11px;color:#7a4f12}
.hours-next[hidden]{display:none}
.hours-actions{display:flex;flex-wrap:wrap;gap:4px 8px;align-items:center}
.hours-actions .btn.small{padding:6px 8px}
.hours-actions svg{width:14px;height:14px}
.hours-fields{margin:4px 0 0;grid-template-columns:minmax(0,1fr)}
.hours-fields .helper{grid-column:1/-1}
.hours-subtitle{margin-top:6px!important;font-size:14px}
.hours-exceptions{display:grid;gap:8px}
.hours-exception-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,160px),1fr));gap:10px}
.hours-exception-fields>.field:last-child{grid-column:1/-1}
.hours-exception.past{opacity:.7}
.hours-past{font-size:11px;color:#7a4f12}
.hours-preview{display:grid;gap:6px;padding:12px 14px;border-radius:12px;background:#edf1fa;color:#2c4677;min-width:0}
.hours-preview>span{font-size:11px;font-weight:650;color:#5e7096}
.hours-preview>b{font-size:14px;overflow-wrap:anywhere}
.hours-preview .check{margin:4px 0 0}
.hours-preview .field{margin:0}
#hours-legacy[hidden],#hours-custom-wrap[hidden]{display:none}
.hours-problems{margin:0;padding:0 0 0 18px;color:var(--red);font-size:12px;display:grid;gap:3px}
.hours-problems:empty{display:none}
@media(max-width:420px){.hours-shift{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr)}.hours-shift .hours-remove{grid-column:3;grid-row:2;justify-self:end;min-height:34px;min-width:34px;font-size:18px}.hours-next{grid-column:1/3;grid-row:2;align-self:center}}
@media(min-width:620px){.hours-fields{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.hours-fields .helper{grid-column:auto;align-self:end}}
