/* ESTILO SELECT — Panel admin */
.admin-body { background: var(--crema); min-height: 100vh; }
.adm-header { background: var(--blanco); border-bottom: 1px solid var(--crema-oscura); position: sticky; top: 0; z-index: 100; }
.adm-header-inner { display: flex; align-items: center; gap: 1.5rem; min-height: 68px; flex-wrap: wrap; }
.adm-logo { display: flex; align-items: center; gap: .6rem; font-family: 'Cormorant Garamond', serif; font-size: 1.25rem; font-weight: 600; }
.adm-logo img { height: 42px; }
.adm-tabs { display: flex; gap: .25rem; flex: 1; overflow-x: auto; }
.adm-tabs button { padding: .55rem 1rem; border-radius: 50px; font-size: .8rem; font-weight: 600; letter-spacing: .06em; text-transform: uppercase; color: var(--texto-suave); white-space: nowrap; }
.adm-tabs button.on { background: var(--dorado); color: var(--crema); }
.adm-badge { background: #c0564b; color: #fff; border-radius: 50px; font-size: .65rem; padding: .05rem .4rem; margin-left: .2rem; }
.adm-user { display: flex; gap: .75rem; align-items: center; font-size: .8rem; color: var(--texto-suave); }
.adm-main { padding: 2rem 2rem 4rem; }
.adm-login { max-width: 480px; margin: 3rem auto; }
.adm-h1 { font-family: 'Cormorant Garamond', serif; font-size: 2.2rem; font-weight: 500; margin-bottom: 1.25rem; }
.adm-h4 { font-size: .72rem; letter-spacing: .14em; text-transform: uppercase; color: var(--dorado-oscuro); margin: 1.25rem 0 .5rem; }
.adm-titulo-fila { display: flex; justify-content: space-between; align-items: center; gap: 1rem; flex-wrap: wrap; margin-bottom: 1rem; }
.adm-titulo-fila .adm-h1 { margin: 0; }
.adm-filtros { display: flex; gap: .6rem; flex-wrap: wrap; align-items: center; }
.adm-filtros .form-input, .adm-filtros .form-select { width: auto; min-width: 200px; padding: .6rem .9rem; }
.adm-filtros .btn-primary { padding: .65rem 1.3rem; }
.adm-card { background: var(--blanco); border-radius: var(--radio-grande); padding: 1.5rem; box-shadow: var(--sombra); }
.adm-card h3 { font-family: 'Cormorant Garamond', serif; font-size: 1.35rem; margin-bottom: .75rem; }
.adm-2col { display: grid; grid-template-columns: 1fr 1fr; gap: 1.5rem; }
.kpis { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1rem; margin-bottom: 1.5rem; }
.kpi { background: var(--blanco); border-radius: var(--radio); padding: 1.25rem; box-shadow: var(--sombra); border-top: 3px solid var(--dorado); }
.kpi-n { font-family: 'Cormorant Garamond', serif; font-size: 2rem; font-weight: 600; color: var(--dorado-oscuro); line-height: 1.1; }
.kpi-l { font-size: .75rem; letter-spacing: .08em; text-transform: uppercase; color: var(--texto-suave); margin-top: .25rem; }
.kpi-s { font-size: .78rem; color: var(--verde-oscuro); margin-top: .35rem; }
.res-fila { display: flex; justify-content: space-between; gap: 1rem; padding: .7rem 0; border-bottom: 1px solid var(--crema-oscura); cursor: pointer; font-size: .88rem; }
.res-fila:hover { background: var(--crema); }
.adm-tabla-wrap { background: var(--blanco); border-radius: var(--radio-grande); box-shadow: var(--sombra); overflow-x: auto; }
.adm-tabla { width: 100%; border-collapse: collapse; font-size: .86rem; }
.adm-tabla th { text-align: left; font-size: .7rem; letter-spacing: .1em; text-transform: uppercase; color: var(--texto-suave); padding: .9rem 1rem; border-bottom: 1px solid var(--crema-oscura); white-space: nowrap; }
.adm-tabla td { padding: .75rem 1rem; border-bottom: 1px solid var(--crema-oscura); vertical-align: middle; }
#tablaPedidos tbody tr { cursor: pointer; }
.adm-tabla tbody tr:hover { background: #fdfbf6; }
.adm-tabla-sm td { padding: .5rem .25rem; }
.adm-thumb { width: 46px; height: 56px; border-radius: 6px; background: var(--verde-claro); display: flex; align-items: center; justify-content: center; overflow: hidden; color: var(--verde-oscuro); }
.adm-thumb img { width: 100%; height: 100%; object-fit: cover; }
.adm-acciones { white-space: nowrap; text-align: right; }
.adm-acciones button { font-size: .75rem; font-weight: 600; color: var(--dorado-oscuro); padding: .35rem .6rem; border-radius: 6px; }
.adm-acciones button:hover { background: var(--crema-oscura); }
.adm-acciones .peligro { color: #c0564b; }
.adm-estados { display: flex; flex-wrap: wrap; gap: .4rem; }
.adm-estados button { font-size: .75rem; font-weight: 600; padding: .45rem .85rem; border-radius: 50px; border: 1.5px solid color-mix(in srgb, var(--c) 40%, white); color: var(--c); }
.adm-estados button.on { background: var(--c); color: #fff; border-color: var(--c); }
.adm-check { display: flex; gap: .5rem; align-items: center; font-size: .88rem; margin: .35rem 0; cursor: pointer; }
.adm-check input { accent-color: var(--dorado); width: 16px; height: 16px; }
.adm-ajustes { max-width: 820px; }
.adm-ajustes h3 { margin-top: 1.5rem; }
.adm-ajustes h3:first-child { margin-top: 0; }
.adm-prod-grid { display: grid; grid-template-columns: 1.1fr 1fr; gap: 2rem; }
.adm-fotos { display: flex; flex-wrap: wrap; gap: .6rem; margin-bottom: .6rem; }
.adm-foto { width: 86px; height: 106px; border-radius: 8px; overflow: hidden; position: relative; background: var(--verde-claro); border: 2px solid transparent; }
.adm-foto.principal { border-color: var(--dorado); }
.adm-foto img { width: 100%; height: 100%; object-fit: cover; }
.adm-foto div { position: absolute; top: 3px; right: 3px; display: flex; gap: 3px; }
.adm-foto button { width: 22px; height: 22px; border-radius: 50%; background: rgba(255,255,255,.92); font-size: .7rem; }
.adm-foto.vacia { display: flex; align-items: center; justify-content: center; font-size: .75rem; color: var(--texto-suave); border: 1.5px dashed var(--dorado-claro); }
.adm-fotos-acciones { display: flex; gap: .6rem; align-items: center; }
.adm-upload { cursor: pointer; white-space: nowrap; }
.adm-colores { display: grid; gap: .45rem; margin-bottom: .5rem; }
.adm-color { display: grid; grid-template-columns: 42px 1fr 32px; gap: .45rem; align-items: center; }
.adm-color input[type=color] { width: 42px; height: 40px; border: 1.5px solid var(--crema-oscura); border-radius: 8px; padding: 2px; background: var(--blanco); cursor: pointer; }
.adm-color .form-input { padding: .6rem .8rem; }
.adm-color button { color: var(--texto-suave); }
.adm-presets { display: flex; flex-wrap: wrap; gap: .35rem; margin-top: .5rem; }
.adm-presets button { font-size: .72rem; padding: .3rem .65rem; border-radius: 50px; background: var(--crema-oscura); color: var(--texto-suave); font-weight: 600; }
.adm-presets button:hover { background: var(--dorado); color: var(--crema); }
.adm-stock { overflow-x: auto; background: var(--blanco); border: 1.5px solid var(--crema-oscura); border-radius: var(--radio); padding: .5rem; }
.adm-stock table { border-collapse: collapse; font-size: .8rem; }
.adm-stock th { padding: .35rem .5rem; text-align: center; color: var(--texto-suave); font-weight: 600; white-space: nowrap; }
.adm-stock tbody th { text-align: left; }
.adm-stock input { width: 56px; padding: .4rem; border: 1px solid var(--crema-oscura); border-radius: 6px; text-align: center; font: inherit; }
.adm-stock input:focus { outline: none; border-color: var(--dorado); }
@media (max-width: 900px) {
  .kpis { grid-template-columns: 1fr 1fr; }
  .adm-2col, .adm-prod-grid { grid-template-columns: 1fr; }
  .adm-main { padding: 1.25rem 1rem 3rem; }
  .adm-user span { display: none; }
}

/* ============================================================
   v3 — Admin fácil
   ============================================================ */
.adm-header-inner { min-height: 76px; }
.adm-tabs button { font-size: .85rem; padding: .65rem 1.1rem; text-transform: none; letter-spacing: 0; }
.adm-ayuda { background: var(--verde-claro); border-radius: var(--radio); padding: 1rem 1.25rem; margin-bottom: 1.5rem; font-size: .92rem; }
.adm-atajos { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1rem; margin-bottom: 1.75rem; }
.atajo { background: var(--blanco); border-radius: var(--radio-grande); padding: 1.6rem 1.25rem; box-shadow: var(--sombra); text-align: left; display: grid; gap: .25rem; transition: var(--transicion); border: 2px solid transparent; }
.atajo:hover { transform: translateY(-3px); border-color: var(--dorado-claro); box-shadow: var(--sombra-hover); }
.atajo span { font-size: 2rem; }
.atajo b { font-family: 'Cormorant Garamond', serif; font-size: 1.35rem; }
.atajo small { color: var(--texto-suave); font-size: .82rem; }
.atajo:first-child { background: var(--dorado); color: var(--crema); }
.atajo:first-child small { color: rgba(247,242,232,.85); }

/* Lista de productos con fotos */
.adm-prod-lista { display: grid; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)); gap: 1.25rem; }
.adm-prod { background: var(--blanco); border-radius: var(--radio-grande); overflow: hidden; box-shadow: var(--sombra); display: flex; flex-direction: column; }
.adm-prod.oculto { opacity: .6; }
.adm-prod-foto { position: relative; aspect-ratio: 4/5; background: var(--verde-claro); cursor: pointer; display: flex; align-items: center; justify-content: center; }
.adm-prod-foto img { width: 100%; height: 100%; object-fit: cover; }
.adm-prod-foto > span { font-size: 2rem; display: grid; text-align: center; color: var(--texto-suave); }
.adm-prod-foto small { font-size: .75rem; }
.adm-prod-foto em { position: absolute; top: .75rem; left: .75rem; background: var(--texto); color: var(--crema); font-style: normal; font-size: .7rem; font-weight: 600; padding: .25rem .65rem; border-radius: 50px; }
.adm-prod-foto em.agotado { background: #c0564b; }
.adm-prod-info { padding: 1rem 1.1rem 1.1rem; display: grid; gap: .15rem; }
.adm-prod-info small { font-size: .68rem; letter-spacing: .12em; text-transform: uppercase; color: var(--dorado); font-weight: 600; }
.adm-prod-info b { font-family: 'Cormorant Garamond', serif; font-size: 1.2rem; line-height: 1.2; }
.adm-prod-precio { font-weight: 600; color: var(--dorado-oscuro); }
.adm-prod-precio s { color: var(--texto-suave); font-weight: 400; font-size: .85em; }
.adm-prod-stock { font-size: .8rem; color: var(--texto-suave); }
.adm-prod-acc { display: flex; gap: .35rem; margin-top: .6rem; flex-wrap: wrap; }
.adm-prod-acc button { flex: 1; padding: .5rem .4rem; border-radius: 8px; background: var(--crema); font-size: .78rem; font-weight: 600; white-space: nowrap; }
.adm-prod-acc button:hover { background: var(--crema-oscura); }
.adm-prod-acc button[title] { flex: 0 0 38px; }
.adm-prod-acc .peligro:hover { background: #fbe9e7; }
.adm-vacio { grid-column: 1/-1; text-align: center; padding: 4rem 1rem; background: var(--blanco); border-radius: var(--radio-grande); }
.adm-vacio span { font-size: 3rem; }
.adm-vacio p { color: var(--texto-suave); margin: .5rem 0 1.25rem; }

/* Formulario por pasos */
.paso { display: grid; grid-template-columns: 40px 1fr; gap: 1rem; padding: 1.5rem 0; border-bottom: 1px solid var(--crema-oscura); }
.paso:first-child { padding-top: 0; }
.paso-num { width: 36px; height: 36px; border-radius: 50%; background: var(--dorado); color: var(--crema); display: flex; align-items: center; justify-content: center; font-weight: 700; }
.paso h4 { font-family: 'Cormorant Garamond', serif; font-size: 1.45rem; font-weight: 600; margin-bottom: .9rem; }
.paso h4 small { font-family: 'Jost', sans-serif; font-size: .78rem; font-weight: 400; color: var(--texto-suave); }
.form-input-lg { font-size: 1.05rem; padding: .9rem 1rem; }
.form-input-sm { width: auto; padding: .45rem .75rem; font-size: .85rem; }
.input-pesos { position: relative; }
.input-pesos span { position: absolute; left: 1rem; top: 50%; transform: translateY(-50%); color: var(--texto-suave); font-weight: 600; }
.input-pesos input { padding-left: 2rem; }
.adm-drop { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: .3rem; text-align: center; padding: 2rem 1rem; border: 2px dashed var(--dorado-claro); border-radius: var(--radio-grande); background: #fffcf5; cursor: pointer; transition: var(--transicion); margin-bottom: 1rem; }
.adm-drop:hover, .adm-drop.sobre { background: var(--verde-claro); border-color: var(--dorado); }
.adm-drop span { font-size: 2.4rem; }
.adm-drop b { font-size: 1rem; }
.adm-drop small { color: var(--texto-suave); font-size: .8rem; }
.adm-drop.compacto { flex-direction: row; padding: .8rem 1rem; gap: .6rem; }
.adm-drop.compacto span { font-size: 1.4rem; }
.adm-drop.compacto small { display: none; }
.adm-foto { width: 110px; height: 136px; }
.adm-foto-tag { position: absolute; left: 4px; bottom: 4px; background: var(--dorado); color: var(--crema); font-size: .6rem; font-weight: 700; padding: .1rem .4rem; border-radius: 4px; text-transform: uppercase; }
.chips-elegir { display: flex; flex-wrap: wrap; gap: .45rem; }
.chip-elegir { padding: .6rem 1rem; border-radius: 50px; border: 1.5px solid var(--crema-oscura); background: var(--blanco); font-size: .88rem; font-weight: 500; transition: var(--transicion); }
.chip-elegir:hover { border-color: var(--dorado); }
.chip-elegir.on { background: var(--dorado); border-color: var(--dorado); color: var(--crema); font-weight: 600; }
.chip-elegir.chip-nuevo { border-style: dashed; color: var(--dorado-oscuro); }
.chip-talle { min-width: 52px; border-radius: 10px; text-align: center; font-weight: 600; }
.talles-grupo { display: flex; flex-wrap: wrap; gap: .5rem 1rem; align-items: center; margin-bottom: .75rem; }
.talles-grupo > span { width: 70px; font-size: .72rem; letter-spacing: .12em; text-transform: uppercase; color: var(--texto-suave); }
.paleta { display: grid; grid-template-columns: repeat(auto-fill, minmax(110px, 1fr)); gap: .45rem; margin-bottom: .9rem; }
.color-chip { display: flex; align-items: center; gap: .5rem; padding: .45rem .6rem; border-radius: 10px; border: 1.5px solid var(--crema-oscura); background: var(--blanco); font-size: .82rem; text-align: left; transition: var(--transicion); }
.color-chip i { width: 22px; height: 22px; border-radius: 50%; border: 1px solid rgba(58,50,40,.2); flex-shrink: 0; }
.color-chip.on { border-color: var(--dorado); background: #fff6e3; font-weight: 600; box-shadow: 0 0 0 2px var(--dorado-sombra); }
.color-chip.on::after { content: '✓'; margin-left: auto; color: var(--dorado-oscuro); }
.color-otro { display: grid; grid-template-columns: 44px 1fr auto; gap: .5rem; align-items: center; }
.color-otro input[type=color] { width: 44px; height: 42px; border: 1.5px solid var(--crema-oscura); border-radius: 8px; padding: 2px; background: var(--blanco); }
.opciones-fila { grid-template-columns: 1fr 1fr; }
.stock-simple { display: flex; align-items: center; gap: .5rem; flex-wrap: wrap; }
.stock-simple button { width: 44px; height: 44px; border-radius: 10px; background: var(--crema-oscura); font-size: 1.3rem; }
.stock-simple input { width: 80px; height: 44px; text-align: center; font-size: 1.2rem; font-weight: 600; border: 1.5px solid var(--crema-oscura); border-radius: 10px; }
.stock-simple span { font-size: .85rem; margin-left: .5rem; }
.toggles { display: flex; flex-wrap: wrap; gap: 1rem 1.75rem; }
.toggle { display: flex; align-items: center; gap: .6rem; cursor: pointer; font-size: .9rem; }
.toggle input { display: none; }
.toggle i { width: 42px; height: 24px; border-radius: 50px; background: var(--crema-oscura); position: relative; transition: var(--transicion); }
.toggle i::after { content: ''; position: absolute; top: 3px; left: 3px; width: 18px; height: 18px; border-radius: 50%; background: #fff; box-shadow: 0 1px 3px rgba(0,0,0,.2); transition: var(--transicion); }
.toggle input:checked + i { background: var(--dorado); }
.toggle input:checked + i::after { left: 21px; }
.form-actions-sticky { position: sticky; bottom: -2rem; background: var(--crema); padding: 1rem 0 .5rem; margin-bottom: -.5rem; }

/* Mi página */
.adm-bloque { margin-bottom: 1.5rem; }
.adm-bloque h3 { font-size: 1.5rem; margin-bottom: 1rem; }
.adm-fotos-pagina { display: flex; gap: 1rem; flex-wrap: wrap; }
.foto-slot { width: 170px; aspect-ratio: 4/5; border-radius: 16px; overflow: hidden; position: relative; background: #fffcf5; border: 2px dashed var(--dorado-claro); display: flex; align-items: center; justify-content: center; }
.foto-slot.con { border: 0; box-shadow: var(--sombra); }
.foto-slot img { width: 100%; height: 100%; object-fit: cover; }
.foto-slot > span { font-size: 2rem; display: grid; text-align: center; color: var(--texto-suave); padding-bottom: 2.5rem; }
.foto-slot small { font-size: .75rem; padding: 0 .5rem; }
.foto-slot-acc { position: absolute; left: .5rem; right: .5rem; bottom: .5rem; display: flex; gap: .35rem; }
.foto-slot-acc button { flex: 1; padding: .45rem; border-radius: 8px; background: rgba(255,255,255,.95); font-size: .75rem; font-weight: 600; box-shadow: 0 1px 4px rgba(0,0,0,.1); }
.foto-slot-acc .peligro { color: #c0564b; flex: 0 0 auto; }
.adm-cats { display: grid; gap: .6rem; margin-bottom: 1rem; }
.adm-cat { display: grid; grid-template-columns: 64px 58px 1fr auto auto; gap: .6rem; align-items: center; background: var(--crema); padding: .5rem; border-radius: 14px; }
.adm-cat-foto { width: 64px; height: 64px; border-radius: 10px; overflow: hidden; background: var(--verde-claro); display: flex; align-items: center; justify-content: center; font-size: 1.3rem; }
.adm-cat-foto img { width: 100%; height: 100%; object-fit: cover; }
.adm-cat-icono { text-align: center; font-size: 1.3rem; padding: .5rem; }
.adm-cat-n { font-size: .75rem; color: var(--texto-suave); white-space: nowrap; }
.adm-cat-acc { display: flex; gap: .25rem; }
.adm-cat-acc button { width: 36px; height: 36px; border-radius: 8px; background: var(--blanco); }
.adm-cat-acc .peligro:hover { background: #fbe9e7; }
.adm-horarios { display: grid; gap: .5rem; margin-bottom: .5rem; }
.adm-horario { display: grid; grid-template-columns: 1fr 1.6fr 36px; gap: .5rem; }
.adm-horario button { color: var(--texto-suave); }
.adm-mapa { height: 280px; border-radius: var(--radio); overflow: hidden; background: var(--crema-oscura); }
.adm-mapa iframe { width: 100%; height: 100%; border: 0; }
.adm-guardar-barra { position: sticky; bottom: 0; z-index: 50; display: flex; justify-content: flex-end; align-items: center; gap: 1rem; padding: 1rem 1.25rem; background: rgba(255,255,255,.96); backdrop-filter: blur(8px); border-radius: var(--radio-grande) var(--radio-grande) 0 0; box-shadow: 0 -6px 24px rgba(58,50,40,.1); }
.adm-guardar-barra .btn-form-submit { flex: 0 0 auto; padding: .95rem 2.5rem; }

@media (max-width: 900px) {
  .adm-atajos { grid-template-columns: 1fr 1fr; }
  .adm-tabs { order: 3; width: 100%; }
  .paso { grid-template-columns: 1fr; gap: .5rem; }
  .opciones-fila { grid-template-columns: 1fr; }
  .adm-cat { grid-template-columns: 56px 50px 1fr; }
  .adm-cat-n { display: none; }
  .adm-cat-acc { grid-column: 1/-1; justify-content: flex-end; }
  .adm-horario { grid-template-columns: 1fr 36px; }
  .adm-horario input:nth-child(2) { grid-column: 1; }
  .foto-slot { width: calc(50% - .5rem); }
  .adm-prod-lista { grid-template-columns: 1fr 1fr; gap: .75rem; }
}

/* ============================================================
   v4 — CLIENTES, CUPONES, EDICIÓN RÁPIDA, COLORES Y SECCIONES
   ============================================================ */
.adm-switch { display: flex; align-items: center; gap: .6rem; cursor: pointer; font-size: .9rem; }
.adm-switch input { position: absolute; opacity: 0; width: 0; height: 0; }
.adm-switch .sw { flex-shrink: 0; width: 42px; height: 24px; border-radius: 50px; background: var(--crema-oscura); position: relative; transition: var(--transicion); }
.adm-switch .sw::after { content: ''; position: absolute; top: 3px; left: 3px; width: 18px; height: 18px; border-radius: 50%; background: #fff; box-shadow: 0 1px 3px rgba(0,0,0,.2); transition: var(--transicion); }
.adm-switch input:checked + .sw { background: var(--dorado); }
.adm-switch input:checked + .sw::after { left: 21px; }
.adm-switch input:focus-visible + .sw { outline: 2px solid var(--dorado-oscuro); outline-offset: 2px; }
.adm-secciones { display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: .9rem 1.5rem; }

.adm-colores { display: grid; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)); gap: .75rem; margin-bottom: 1rem; }
.adm-color { display: flex; align-items: center; gap: .75rem; padding: .55rem .75rem; background: var(--crema); border-radius: 12px; cursor: pointer; font-size: .88rem; }
.adm-color input { width: 46px; height: 38px; border: 0; padding: 0; background: none; cursor: pointer; border-radius: 8px; }
.adm-muestra { border-radius: 14px; overflow: hidden; border: 1px solid var(--crema-oscura); margin-bottom: .75rem; font-size: .78rem; }
.adm-muestra .m-franja { color: #e8c97e; text-align: center; padding: .35rem; letter-spacing: .12em; text-transform: uppercase; }
.adm-muestra .m-cuerpo { display: flex; gap: 1rem; align-items: center; justify-content: center; padding: 1.6rem; }
.adm-muestra .m-boton { color: #fff; padding: .55rem 1.3rem; border-radius: 8px; font-weight: 600; }
.adm-muestra .m-tarjeta { background: #fff; padding: .55rem 1.3rem; border-radius: 8px; box-shadow: var(--sombra); }
.adm-muestra .m-pie { text-align: center; padding: .8rem; color: var(--texto); }

.adm-masivo { margin-bottom: 1rem; }
.adm-masivo-fila { display: flex; flex-wrap: wrap; align-items: center; gap: .6rem 1rem; margin-bottom: .5rem; }
.adm-masivo-fila .form-select { width: auto; }
.adm-rapida td { vertical-align: middle; }
.adm-rapida .form-input { width: 120px; padding: .45rem .6rem; }
.adm-rapida input[type="checkbox"] { width: 18px; height: 18px; accent-color: var(--dorado); }
.adm-rapida .guardado { border-color: #2f8a5b !important; box-shadow: 0 0 0 3px rgba(47,138,91,.15); }

.adm-cupon-form { margin-bottom: 1.5rem; }
.adm-cupones { display: grid; gap: .75rem; }
.adm-cupon { display: flex; align-items: center; gap: 1rem 1.25rem; flex-wrap: wrap; background: var(--blanco); border-radius: var(--radio); padding: 1rem 1.25rem; box-shadow: var(--sombra); }
.adm-cupon.off { opacity: .6; }
.adm-cupon-cod { font-family: monospace; font-size: 1.1rem; font-weight: 700; letter-spacing: .08em; background: var(--verde-claro); color: var(--dorado-oscuro); padding: .45rem .85rem; border-radius: 8px; border: 1.5px dashed var(--dorado); }
.adm-cupon-info { flex: 1; min-width: 180px; display: flex; flex-direction: column; }
.adm-cupon-info small { color: var(--texto-suave); }
.link-btn.peligro { color: #b8512f; }
.adm-tabs { overflow-x: auto; scrollbar-width: none; }
.adm-tabs button { white-space: nowrap; }
.adm-cupon-form .form-row { grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); }

/* ============================================================
   v5 — PANEL EN EL CELULAR
   ============================================================ */
@media (max-width: 900px) {
  /* Las pestañas van en su propia fila, a lo ancho, y se deslizan con el dedo */
  .adm-tabs { flex: 1 1 100%; }
}
@media (max-width: 640px) {
  .adm-header-inner { gap: .6rem 1rem; min-height: 64px; padding-top: .5rem; padding-bottom: .5rem; }
  .adm-logo img { height: 36px; }
  .adm-tabs { padding-bottom: .25rem; }
  .adm-h1 { font-size: 1.9rem; }
  .adm-card { padding: 1.25rem 1.1rem; }

  /* Buscador y filtros a lo ancho */
  .adm-filtros { width: 100%; }
  .adm-filtros .form-input, .adm-filtros .form-select { flex: 1 1 100%; min-width: 0; width: 100%; }
  .adm-filtros .btn-primary, .adm-filtros .btn-secondary { flex: 1 1 100%; text-align: center; justify-content: center; }

  /* Tarjetas de productos: "Editar" arriba, el resto en una fila */
  .adm-prod-acc button:first-child { flex: 1 1 100%; }
  .adm-prod-acc button, .adm-prod-acc button[title] { flex: 1 1 0; padding: .55rem .3rem; }

  /* Botones de guardar que no se corten */
  .form-actions-sticky { gap: .6rem; }
  .form-actions-sticky .btn-form-cancel { padding: .85rem 1rem; }
  .form-actions-sticky .btn-form-submit { letter-spacing: .04em; }
  .adm-guardar-barra { padding: .85rem 1rem; }
  .adm-guardar-barra .btn-form-submit { flex: 1; padding: .95rem 1rem; }

  .adm-atajos { gap: .75rem; }
  .atajo { padding: 1.2rem 1rem; }
  .kpi-n { font-size: 1.6rem; }
}
