/* Panel de clientes y formularios públicos. Se apoya en los tokens de landing.css. */
.app-nav { position: sticky; top: 0; z-index: 40; background: hsl(var(--c-bg) / .9); backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px); box-shadow: 0 1px 0 hsl(var(--c-line)); }
.app-nav .wrap { display: flex; align-items: center; gap: 6px; min-height: 64px; flex-wrap: wrap; padding-block: 6px; }
.app-nav a.lnk { display: inline-flex; align-items: center; gap: 6px; min-height: 44px; padding: 0 12px; border-radius: 10px; text-decoration: none; font-weight: 600; font-size: 15px; color: hsl(var(--c-muted)); }
.app-nav a.lnk:hover, .app-nav a.lnk[aria-current="page"] { color: hsl(var(--c-ink)); background: hsl(var(--c-surface-2)); }
.app-nav .sp { margin-inline-start: auto; display: flex; align-items: center; gap: 6px; flex-wrap: wrap; }
.page { padding: 32px 0 80px; }
.page h1 { font-size: clamp(1.7rem, 4vw, 2.4rem); font-weight: 800; }
.page .sub { color: hsl(var(--c-muted)); margin-top: 8px; }
.head-row { display: flex; flex-wrap: wrap; align-items: end; justify-content: space-between; gap: 16px; margin-bottom: 28px; }
.panel { background: hsl(var(--c-surface)); border-radius: var(--radius); padding: 24px; box-shadow: 0 0 0 1px hsl(var(--c-line)), 0 8px 24px -14px hsl(var(--c-shadow) / .2); margin-bottom: 20px; }
.panel > h2 { font-size: 1.3rem; margin-bottom: 4px; }
.panel > .hint { color: hsl(var(--c-muted)); font-size: 15px; margin-bottom: 18px; }
.alert { display: flex; gap: 10px; padding: 14px 16px; border-radius: 12px; margin-bottom: 20px; font-weight: 600; }
.alert.ok { background: hsl(var(--c-ok) / .14); color: hsl(var(--c-ok)); }
.alert.err { background: hsl(var(--c-red-soft)); color: hsl(var(--c-red-strong)); }
.cards { display: grid; gap: 16px; }
@media (min-width: 720px) { .cards { grid-template-columns: 1fr 1fr; } }
.pcard { display: grid; gap: 14px; padding: 20px; border-radius: var(--radius); background: hsl(var(--c-surface)); box-shadow: 0 0 0 1px hsl(var(--c-line)), 0 8px 24px -14px hsl(var(--c-shadow) / .25); }
.pcard .top { display: flex; gap: 14px; align-items: center; }
.avatar { width: 56px; height: 56px; border-radius: 14px; background: hsl(var(--c-red-soft)); color: hsl(var(--c-red-strong)); display: grid; place-items: center; font-size: 26px; flex: none; object-fit: cover; }
.pcard h3 { font-size: 1.25rem; overflow-wrap: anywhere; }
.pcard .meta { color: hsl(var(--c-muted)); font-size: 14px; }
.pill { display: inline-flex; align-items: center; padding: 3px 10px; border-radius: 999px; font: 700 12px/1.4 var(--font-body); background: hsl(var(--c-ok) / .15); color: hsl(var(--c-ok)); }
.pill.off { background: hsl(var(--c-red-soft)); color: hsl(var(--c-red-strong)); }
.acts { display: flex; flex-wrap: wrap; gap: 8px; }
.btn-s { min-height: 44px; padding: 0 16px; font-size: 15px; }
.btn-danger { background: hsl(var(--c-red-strong)); color: hsl(var(--c-on-red)); }
.empty { text-align: center; padding: 56px 20px; }
.empty i { font-size: 44px; color: hsl(var(--c-red)); }
.empty h2 { margin: 12px 0 6px; font-size: 1.5rem; }
.empty p { margin: 0 auto 20px; color: hsl(var(--c-muted)); }

/* Formularios */
.field { display: grid; gap: 6px; margin-bottom: 16px; align-content: start; }
.field label, .lbl { font-weight: 700; font-size: 15px; }
.field .h { color: hsl(var(--c-muted)); font-size: 13px; }
.in, .field input[type=text], .field input[type=password], .field input[type=tel], .field input[type=email], .field input[type=number], .field input[type=file], .field select, .field textarea {
	width: 100%; min-height: 48px; padding: 10px 14px; border-radius: 12px; border: 0; font: 16px/1.4 var(--font-body);
	background: hsl(var(--c-field)); color: hsl(var(--c-ink)); box-shadow: 0 0 0 1px hsl(var(--c-line)) inset;
}
.field textarea { min-height: 96px; resize: vertical; }
.field input:focus, .field select:focus, .field textarea:focus { outline: 3px solid hsl(var(--c-red) / .55); outline-offset: 0; }
.grid2 { display: grid; gap: 14px; }
@media (min-width: 720px) { .grid2 { grid-template-columns: 1fr 1fr; } }
.row-item { display: grid; gap: 10px; padding: 14px; border-radius: 14px; background: hsl(var(--c-surface-2)); margin-bottom: 10px; }
@media (min-width: 720px) { .row-item.cond { grid-template-columns: 170px 150px 1fr; } .row-item.contact { grid-template-columns: 1fr 1fr 1fr; } }
.row-item .field { margin: 0; }
.row-item.blank { opacity: .85; border: 1px dashed hsl(var(--c-line)); background: transparent; }
.check { display: flex; align-items: center; gap: 12px; min-height: 48px; padding: 6px 4px; font-weight: 600; cursor: pointer; }
.check input { width: 22px; height: 22px; accent-color: hsl(var(--c-red)); flex: none; }
.vis { display: grid; gap: 4px; }
@media (min-width: 720px) { .vis { grid-template-columns: 1fr 1fr; } }
.savebar { position: sticky; bottom: 0; padding: 14px 0; background: linear-gradient(transparent, hsl(var(--c-bg)) 40%); display: flex; gap: 10px; flex-wrap: wrap; }
.qrbox { display: grid; gap: 16px; }
@media (min-width: 720px) { .qrbox { grid-template-columns: 180px 1fr; align-items: center; } }
.qrbox img { width: 180px; height: 180px; border-radius: 12px; background: #fff; padding: 8px; box-shadow: 0 0 0 1px hsl(var(--c-line)); image-rendering: pixelated; }
.codebox { font: 700 22px/1 ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; letter-spacing: .08em; text-align: center; text-transform: uppercase; }
.narrow { width: min(560px, 100% - 32px); margin-inline: auto; }
.back { display: inline-flex; align-items: center; gap: 6px; min-height: 44px; font-weight: 600; text-decoration: none; color: hsl(var(--c-muted)); }

/* ── Animaciones del panel ── */
.page .head-row, .page .panel, .page .pcard, .page .alert { animation: rise .55s var(--ease-out) backwards; }
.cards .pcard:nth-child(2) { animation-delay: .07s; } .cards .pcard:nth-child(3) { animation-delay: .14s; } .cards .pcard:nth-child(4) { animation-delay: .21s; }
.page .panel:nth-of-type(2) { animation-delay: .05s; } .page .panel:nth-of-type(3) { animation-delay: .1s; } .page .panel:nth-of-type(4) { animation-delay: .15s; }
.alert { animation: slidedown .45s var(--ease-spring) backwards; }
@keyframes slidedown { from { opacity: 0; transform: translateY(-14px) scale(.98); } }
.pcard { transition: transform var(--dur) var(--ease-spring), box-shadow var(--dur) var(--ease-out); }
.pcard:hover { transform: translateY(-4px); box-shadow: 0 0 0 1px hsl(var(--c-red) / .35), 0 18px 36px -18px hsl(var(--c-shadow) / .4); }
.avatar { transition: transform .4s var(--ease-spring); }
.pcard:hover .avatar { transform: rotate(-6deg) scale(1.06); }
.app-nav a.lnk { transition: background-color var(--dur-fast), color var(--dur-fast), transform var(--dur-fast) var(--ease-out); }
.app-nav a.lnk:active { transform: scale(.95); }
.check input { transition: transform var(--dur-fast) var(--ease-spring); }
.check input:active { transform: scale(.82); }
.field input, .field select, .field textarea { transition: box-shadow var(--dur) var(--ease-out), background-color var(--dur); }
.field input:focus, .field select:focus, .field textarea:focus { outline: none; box-shadow: 0 0 0 1px hsl(var(--c-red)) inset, 0 0 0 4px hsl(var(--c-red) / .2); }

/* Filas dinámicas (condiciones / contactos) */
.row-item { transition: background-color var(--dur); }
.row-item.is-new { animation: rowin .45s var(--ease-spring) backwards; }
.row-item.is-leaving { animation: rowout .28s ease-in forwards; overflow: hidden; }
@keyframes rowin { from { opacity: 0; transform: translateY(-10px) scale(.97); } }
@keyframes rowout { to { opacity: 0; transform: scale(.96); max-height: 0; padding-block: 0; margin-block: 0; } }
.row-item { position: relative; }
.row-x { position: absolute; top: 8px; inset-inline-end: 8px; width: 36px; height: 36px; border-radius: 10px; border: 0; background: transparent; color: hsl(var(--c-muted)); cursor: pointer; display: grid; place-items: center; font-size: 15px; transition: background-color var(--dur-fast), color var(--dur-fast), transform var(--dur-fast); }
.row-x:hover { background: hsl(var(--c-red-soft)); color: hsl(var(--c-red-strong)); }
.row-x:active { transform: scale(.9); }
.add-btn { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; padding: 0 16px; border-radius: 12px; border: 2px dashed hsl(var(--c-line)); background: transparent; color: hsl(var(--c-ink)); font: 700 15px/1 var(--font-body); cursor: pointer; transition: border-color var(--dur-fast), background-color var(--dur-fast), transform var(--dur-fast) var(--ease-out); }
.add-btn:hover { border-color: hsl(var(--c-red)); background: hsl(var(--c-red-soft)); color: hsl(var(--c-red-strong)); }
.add-btn:active { transform: scale(.97); }
.add-btn i { transition: transform .35s var(--ease-spring); }
.add-btn:hover i { transform: rotate(90deg); }
.js-only[hidden] { display: none; }
.row-item.cond, .row-item.contact { padding-inline-end: 52px; }
[data-row][hidden], .check[hidden] { display: none; }

.app-nav .brand-l { margin-inline-end: 14px; }

/* Filas dinámicas en celular: la X va arriba a la derecha sin comerle ancho a los campos */
@media (max-width: 719px) {
	.row-item.cond, .row-item.contact { padding: 44px 14px 14px; }
	.panel { padding: 20px 16px; }
	.page { padding: 22px 0 64px; }
	.head-row { margin-bottom: 20px; }
	.head-row .btn-l { width: 100%; }
	.savebar .btn-l { flex: 1 1 100%; }
}

/* Contactos: canales (llamada / WhatsApp) y viajes */
.row-item.contact .opts { display: flex; flex-wrap: wrap; gap: 4px 22px; }
@media (min-width: 720px) {
	.row-item.contact .opts { grid-column: 1 / -1; }
	.row-item.trip { grid-template-columns: 1.2fr 1fr 1fr 1.4fr; }
}
.field input[type=date] { width: 100%; min-height: 48px; padding: 10px 14px; border-radius: 12px; border: 0; font: 16px/1.4 var(--font-body); background: hsl(var(--c-field)); color: hsl(var(--c-ink)); box-shadow: 0 0 0 1px hsl(var(--c-line)) inset; }
.row-item.trip { padding-inline-end: 52px; }

@media (min-width: 720px) { .row-item.cond { grid-template-columns: 1.5fr 1fr 1fr 1.5fr; } }

.row-item.cond.has-item .field-cat { opacity: .45; }
.row-item.cond.has-item .field-cat select { pointer-events: none; }

@media (min-width: 720px) { .row-item.contact { grid-template-columns: 1.2fr 1.1fr 1.1fr 1.2fr; } }
.row-item.contact.has-rel .field-relother { opacity: .45; }

/* Condiciones: asistente por pasos (tipo → condición → detalle y severidad) */
.row-item.cond.cond-js { grid-template-columns: 1fr; gap: 0; padding-block: 16px; }
.row-item.cond.cond-js .field { grid-column: 1; }
.cond-js .f-cat { padding-inline-end: 8px; }
.chips { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 8px; }
.chip-opt { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; padding: 0 16px; border-radius: 999px; border: 0; cursor: pointer; font: 700 15px/1 var(--font-body); color: hsl(var(--c-ink)); background: hsl(var(--c-surface)); box-shadow: 0 0 0 1px hsl(var(--c-line)) inset; transition: background-color var(--dur-fast), box-shadow var(--dur-fast), color var(--dur-fast), transform .25s var(--ease-spring); }
.chip-opt:hover { box-shadow: 0 0 0 2px hsl(var(--c-red) / .45) inset; }
.chip-opt:active { transform: scale(.95); }
.chip-opt:focus-visible { outline: 3px solid hsl(var(--c-red)); outline-offset: 2px; }
.chip-opt i { font-size: 17px; transition: transform .35s var(--ease-spring); }
.chip-opt.on { background: hsl(var(--c-red)); color: hsl(var(--c-on-red)); box-shadow: none; animation: chipon .35s var(--ease-spring); }
.chip-opt.on i { transform: scale(1.15) rotate(-6deg); }
.f-sev .chip-opt.on.v-mild { background: hsl(var(--c-ok)); color: hsl(var(--c-bg)); }
.f-sev .chip-opt.on.v-moderate { background: hsl(var(--c-warn)); color: hsl(var(--c-bg)); }
.f-sev .chip-opt.on[data-v=""] { background: hsl(var(--c-ink)); color: hsl(var(--c-bg)); }
@keyframes chipon { 0% { transform: scale(.88); } 100% { transform: scale(1); } }
/* Los pasos aparecen deslizando (altura 0fr → 1fr + fundido) */
.cond-js .rv { display: grid; grid-template-rows: 0fr; opacity: 0; visibility: hidden; transform: translateY(-6px); transition: grid-template-rows .4s var(--ease-out), opacity .3s var(--ease-out), transform .4s var(--ease-out), visibility 0s .4s; }
.cond-js .rv.on { grid-template-rows: 1fr; opacity: 1; visibility: visible; transform: none; transition-delay: 0s; }
.cond-js .rv-in { overflow: hidden; min-height: 0; padding: 12px 3px 3px; margin: 0 -3px; }
.cond-js .rv:not(.on) .rv-in { padding-block: 0; }
.cond-js.step-0 { padding-block: 16px; }
@media (prefers-reduced-motion: reduce) { .cond-js .rv, .chip-opt, .chip-opt i { transition: none; } .chip-opt.on { animation: none; } }

/* Documentos adjuntos */
.docrow { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 18px; padding: 12px 14px; border-radius: 14px; background: hsl(var(--c-surface-2)); margin-bottom: 8px; }
.docrow .docname { display: inline-flex; align-items: center; gap: 8px; flex: 1 1 220px; min-width: 0; font-weight: 700; color: hsl(var(--c-ink)); text-decoration: none; }
.docrow .docname span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.docrow .docname small { color: hsl(var(--c-muted)); font-weight: 600; flex: none; }
.docrow .docname i { font-size: 22px; color: hsl(var(--c-red)); flex: none; }
.docrow .check { margin: 0; }
.row-item.contact .field:has(input[type=email]) { grid-column: 1 / -1; }
@media (min-width: 720px) { .row-item.contact .field:has(input[type=email]) { grid-column: 1 / span 3; } }
.row-item.contact .field-mnote { grid-column: 1 / -1; display: grid; gap: 4px; margin-top: -4px; }
.row-item.contact .field-mnote .hint { margin: 0; }
.cst-declined { color: hsl(var(--c-red-strong)); font-weight: 700; }
.cst-accepted { color: hsl(var(--c-ok)); font-weight: 700; }

.alert.warn { background: hsl(var(--c-warn-soft)); color: hsl(var(--c-warn)); }

/* Acciones deshabilitadas (QR / vista pública de una ficha todavía sin activar) */
.btn-l.is-disabled { opacity: .45; cursor: not-allowed; pointer-events: auto; filter: grayscale(.4); }
.btn-l.is-disabled:hover, .btn-l.is-disabled:active { transform: none; background: transparent; }
.qrlock { width: 180px; height: 180px; border-radius: 16px; display: grid; place-items: center; font-size: 56px; color: hsl(var(--c-muted)); background: repeating-linear-gradient(45deg, hsl(var(--c-surface-2)) 0 10px, hsl(var(--c-surface)) 10px 20px); box-shadow: 0 0 0 1px hsl(var(--c-line)) inset; flex: none; }

/* Pie del panel del cliente */
.app-foot { padding: 22px 0 30px; font-size: 13.5px; color: hsl(var(--c-muted)); box-shadow: 0 -1px 0 hsl(var(--c-line)); }
.app-foot .wrap { display: flex; flex-wrap: wrap; justify-content: center; gap: 4px 10px; text-align: center; }
.app-foot a, .credit a { color: hsl(var(--c-ink)); font-weight: 700; text-decoration: none; border-bottom: 1px solid hsl(var(--c-red) / .5); }
.app-foot a:hover, .credit a:hover { color: hsl(var(--c-red-strong)); border-bottom-color: currentColor; }

/* Selector con buscador de la condición */
.combo { position: relative; }
.combo-in { width: 100%; min-height: 48px; padding: 10px 40px 10px 14px; border-radius: 12px; border: 0; font: 16px/1.4 var(--font-body); background: hsl(var(--c-field)); color: hsl(var(--c-ink)); box-shadow: 0 0 0 1px hsl(var(--c-line)) inset; }
[dir="rtl"] .combo-in { padding: 10px 14px 10px 40px; }
.combo-in:focus { outline: none; box-shadow: 0 0 0 1px hsl(var(--c-red)) inset, 0 0 0 4px hsl(var(--c-red) / .2); }
.combo-chev { position: absolute; inset-inline-end: 14px; top: 50%; transform: translateY(-50%); color: hsl(var(--c-muted)); cursor: pointer; transition: transform .2s; }
.combo-in[aria-expanded="true"] ~ .combo-chev { transform: translateY(-50%) rotate(180deg); }
.combo-list { position: absolute; z-index: 40; inset-inline: 0; top: calc(100% + 6px); max-height: min(320px, 55vh); overflow-y: auto; margin: 0; padding: 6px; list-style: none; border-radius: 14px; background: hsl(var(--c-surface)); box-shadow: 0 0 0 1px hsl(var(--c-line)), 0 18px 40px -12px hsl(var(--c-shadow) / .35); animation: comboin .16s var(--ease-out); }
@keyframes comboin { from { opacity: 0; transform: translateY(-4px); } }
.combo-g { padding: 10px 10px 4px; font: 800 11px/1 var(--font-body); letter-spacing: .08em; text-transform: uppercase; color: hsl(var(--c-red-strong)); position: sticky; top: -6px; background: hsl(var(--c-surface)); }
.combo-o { padding: 10px 12px; border-radius: 10px; cursor: pointer; font-weight: 600; }
.combo-o:hover, .combo-o.act { background: hsl(var(--c-surface-2)); }
.combo-o.on { color: hsl(var(--c-red-strong)); }
.combo-o.is-other { color: hsl(var(--c-muted)); font-weight: 700; }
.combo-sep { height: 1px; margin: 6px 4px; background: hsl(var(--c-line)); }
.combo-none { padding: 12px; color: hsl(var(--c-muted)); font-size: 14px; }
@media (prefers-reduced-motion: reduce) { .combo-list { animation: none; } }
/* El desplegable del buscador tiene que poder salir de la caja animada mientras se usa */
.cond-js .rv:focus-within { position: relative; z-index: 30; }
.cond-js .rv:focus-within .rv-in { overflow: visible; }

/* Hub "Material para imprimir y llevar" */
.mgrid { display: grid; gap: 16px; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); margin-top: 10px; }
.mcard { position: relative; display: flex; flex-direction: column; align-items: flex-start; gap: 6px; padding: 24px 22px 22px; border-radius: 20px; background: hsl(var(--c-surface)); box-shadow: 0 0 0 1px hsl(var(--c-line)), 0 10px 28px -16px hsl(var(--c-shadow) / .3); overflow: hidden; transition: transform var(--dur) var(--ease-spring), box-shadow var(--dur) var(--ease-out); animation: rise .55s var(--ease-out) backwards; }
.mcard::before { content: ""; position: absolute; inset-inline-end: -40px; top: -40px; width: 150px; height: 150px; border-radius: 50%; background: radial-gradient(closest-side, hsl(var(--c-red) / .12), transparent); pointer-events: none; transition: transform .5s var(--ease-out); }
.mcard:hover { transform: translateY(-4px); box-shadow: 0 0 0 1px hsl(var(--c-red) / .45), 0 18px 36px -16px hsl(var(--c-red) / .35); }
.mcard:hover::before { transform: scale(1.4); }
.mcard:nth-child(2) { animation-delay: .05s; } .mcard:nth-child(3) { animation-delay: .1s; } .mcard:nth-child(4) { animation-delay: .15s; } .mcard:nth-child(5) { animation-delay: .2s; }
.mico { display: grid; place-items: center; width: 54px; height: 54px; border-radius: 16px; background: linear-gradient(145deg, hsl(var(--c-red)), hsl(var(--c-red-strong))); color: hsl(var(--c-on-red)); font-size: 26px; box-shadow: 0 8px 18px -8px hsl(var(--c-red) / .6); transition: transform .4s var(--ease-spring); }
.mcard:hover .mico { transform: rotate(-6deg) scale(1.06); }
.mtag { margin-top: 12px; padding: 4px 10px; border-radius: 999px; background: hsl(var(--c-surface-2)); color: hsl(var(--c-muted)); font: 800 11px/1 var(--font-body); letter-spacing: .08em; text-transform: uppercase; }
.mcard h2 { font-size: 1.2rem; margin: 6px 0 0; line-height: 1.2; }
.mcard p { margin: 0 0 14px; color: hsl(var(--c-muted)); flex: 1; line-height: 1.5; }
.mcard .btn-l { margin-top: auto; }
.mcard.is-locked { opacity: .7; }
.mcard.is-locked .mico { background: hsl(var(--c-surface-2)); color: hsl(var(--c-muted)); box-shadow: none; }
@media (prefers-reduced-motion: reduce) { .mcard, .mcard::before, .mico { transition: none; animation: none; } }

/* Tarjeta ancha de archivos del QR (dentro de "Imprimir y descargar") */
.mcard-wide { grid-column: 1 / -1; flex-direction: row; align-items: center; gap: 24px; flex-wrap: wrap; }
.mcard-wide .mqr { width: 132px; height: 132px; flex: none; border-radius: 14px; box-shadow: 0 0 0 1px hsl(var(--c-line)); background: #fff; }
.mqr-lock { display: grid; place-items: center; font-size: 44px; color: hsl(var(--c-muted)); background: repeating-linear-gradient(45deg, hsl(var(--c-surface-2)) 0 10px, hsl(var(--c-surface)) 10px 20px) !important; }
.mqr-body { flex: 1 1 320px; display: flex; flex-direction: column; align-items: flex-start; gap: 6px; min-width: 0; }
.mqr-body .mico { width: 44px; height: 44px; font-size: 22px; }
.mqr-body .mtag { margin-top: 4px; }
.mdl { display: flex; flex-wrap: wrap; gap: 8px; }
@media (max-width: 560px) { .mcard-wide { flex-direction: column; align-items: flex-start; } }

/* Barra "última revisión" arriba de la ficha */
.reviewbar { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px 14px; padding: 10px 14px; margin-bottom: 18px; border-radius: 14px; background: hsl(var(--c-surface-2)); font-size: 14px; color: hsl(var(--c-muted)); }
.reviewbar i { color: hsl(var(--c-ok)); }
.reviewbar.is-old { background: hsl(var(--c-warn-soft)); color: hsl(var(--c-warn)); }
.reviewbar.is-old i { color: hsl(var(--c-warn)); }

.idnote { display: flex; gap: 12px; align-items: flex-start; padding: 12px 14px; border-radius: 12px; background: hsl(var(--c-red) / .08); border: 1px solid hsl(var(--c-red) / .25); font-size: 14px; line-height: 1.45; }
.idnote > i { font-size: 18px; color: hsl(var(--c-red)); flex: none; margin-top: 2px; }
.idnote.is-locked { background: hsl(var(--c-muted) / .1); border-color: hsl(var(--c-muted) / .3); }
.idnote.is-locked > i { color: hsl(var(--c-muted)); }

/* Todos los select con la misma flecha fina (igual que el buscador "De la lista"); la nativa cambia según el navegador */
select:not(.form-select):not([multiple]):not([size]) {
	-webkit-appearance: none; appearance: none; cursor: pointer;
	padding-inline-end: 42px;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%234f5663'%3E%3Cpath d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3E%3C/svg%3E");
	background-position: right 14px center; background-size: 16px 16px; background-repeat: no-repeat;
}
@media (prefers-color-scheme: dark) { :root:not([data-theme="light"]) select:not(.form-select):not([multiple]):not([size]) { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23a9aeb9'%3E%3Cpath d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3E%3C/svg%3E"); } }
:root[data-theme="dark"] select:not(.form-select):not([multiple]):not([size]) { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23a9aeb9'%3E%3Cpath d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3E%3C/svg%3E"); }
[dir="rtl"] select:not(.form-select):not([multiple]):not([size]) { background-position: left 14px center; }

.saving { flex: 1 1 100%; display: flex; align-items: center; gap: 10px; margin: 0; padding: 10px 14px; border-radius: 12px; background: hsl(var(--c-surface-2)); color: hsl(var(--c-ink)); font-weight: 600; font-size: 14px; }
.saving[hidden] { display: none; }
.spin { width: 18px; height: 18px; flex: none; border-radius: 50%; border: 3px solid hsl(var(--c-line)); border-top-color: hsl(var(--c-red)); animation: spin .8s linear infinite; }
@keyframes spin { to { transform: rotate(360deg); } }
@media (prefers-reduced-motion: reduce) { .spin { animation-duration: 2.4s; } }
button[disabled][data-save] { opacity: .6; cursor: progress; }

/* Ficha en acordeones: cada sección se abre y se cierra, con un resumen visible en el encabezado */
.acc-tools { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 10px; margin: 0 0 14px; }
.acc-btns { display: flex; gap: 8px; }
.acc-group { margin: 22px 0 8px; }
.acc-group:first-of-type { margin-top: 6px; }
.acc-group h3 { margin: 0; font: 800 12px/1 var(--font-body); letter-spacing: .1em; text-transform: uppercase; color: hsl(var(--c-muted)); }
.panel.acc { padding: 0; margin-bottom: 10px; }
.acc > summary { display: flex; align-items: center; gap: 14px; min-height: 68px; padding: 12px 18px; cursor: pointer; list-style: none; border-radius: var(--radius); transition: background-color .15s var(--ease-out), transform .12s var(--ease-out); -webkit-tap-highlight-color: transparent; }
.acc > summary::-webkit-details-marker { display: none; }
.acc > summary:hover { background: hsl(var(--c-surface-2)); }
.acc > summary:active { transform: scale(.995); }
.acc > summary:focus-visible { outline: 3px solid hsl(var(--c-red) / .55); outline-offset: -3px; }
.acc[open] > summary { border-end-start-radius: 0; border-end-end-radius: 0; }
.acc-ico { display: grid; place-items: center; width: 40px; height: 40px; flex: none; border-radius: 12px; background: hsl(var(--c-red-soft)); color: hsl(var(--c-red-strong)); font-size: 19px; }
.acc-t { display: grid; gap: 2px; min-width: 0; flex: 1; }
.acc-t h2 { margin: 0; font-size: 1.08rem; line-height: 1.25; }
.acc-sum { color: hsl(var(--c-muted)); font-size: 14px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.acc-badge { flex: none; padding: 4px 10px; border-radius: 999px; font-size: 12px; font-weight: 800; background: hsl(var(--c-warn-soft)); color: hsl(var(--c-warn)); }
.acc-chev { flex: none; color: hsl(var(--c-muted)); font-size: 18px; transition: transform .2s var(--ease-out); }
.acc[open] > summary .acc-chev { transform: rotate(180deg); }
.acc-body { padding: 6px 24px 24px; border-top: 1px solid hsl(var(--c-line)); animation: accin .2s var(--ease-out); }
.acc-body > .hint { color: hsl(var(--c-muted)); font-size: 15px; margin: 12px 0 16px; }
.acc-body > .hint:empty { display: none; }
@keyframes accin { from { opacity: 0; transform: translateY(-4px); } }
@media (max-width: 640px) { .acc > summary { padding: 12px 14px; gap: 12px; } .acc-body { padding: 4px 16px 20px; } .acc-btns .btn-l { flex: 1; } .acc-tools { align-items: stretch; } .acc-btns { width: 100%; } }
@media (prefers-reduced-motion: reduce) { .acc-body { animation: none; } .acc-chev, .acc > summary { transition: none; } }

/* Mi cuenta */
.acct-hero { display: grid; grid-template-columns: auto 1fr; gap: 6px 18px; align-items: center; padding: 22px; margin-bottom: 14px; border-radius: var(--radius); background: hsl(var(--c-surface)); box-shadow: 0 0 0 1px hsl(var(--c-line)), 0 8px 24px -14px hsl(var(--c-shadow) / .2); }
.acct-avatar { display: grid; place-items: center; width: 68px; height: 68px; border-radius: 50%; background: hsl(var(--c-red)); color: #fff; font: 800 24px/1 var(--font-body); letter-spacing: .02em; box-shadow: 0 6px 16px -8px hsl(var(--c-red) / .7); }
.acct-id { min-width: 0; }
.acct-id h2 { margin: 0 0 2px; font-size: 1.35rem; overflow-wrap: anywhere; }
.acct-id p { margin: 0; color: hsl(var(--c-ink)); overflow-wrap: anywhere; }
.acct-id .muted, .acct-order .muted { display: block; color: hsl(var(--c-muted)); font-size: 14px; }
.acct-stats { grid-column: 1 / -1; display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; margin: 14px 0 0; }
.acct-stats > div { padding: 12px 14px; border-radius: 14px; background: hsl(var(--c-surface-2)); text-align: center; }
.acct-stats dt { font-size: 12px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; color: hsl(var(--c-muted)); }
.acct-stats dd { margin: 2px 0 0; font: 800 26px/1.1 var(--font-body); font-variant-numeric: tabular-nums; }
.acct-links { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 10px; margin: 0 0 18px; }
.acct-links a { display: flex; align-items: center; gap: 10px; min-height: 52px; padding: 10px 14px; border-radius: 14px; background: hsl(var(--c-surface)); box-shadow: 0 0 0 1px hsl(var(--c-line)); color: hsl(var(--c-ink)); font-weight: 700; text-decoration: none; transition: transform .12s var(--ease-out), background-color .15s; }
.acct-links a:hover { background: hsl(var(--c-surface-2)); }
.acct-links a:active { transform: scale(.97); }
.acct-links a:focus-visible { outline: 3px solid hsl(var(--c-red) / .55); outline-offset: 2px; }
.acct-links i { font-size: 18px; color: hsl(var(--c-red-strong)); }
.acct-row { display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; padding: 10px 0 14px; }
.acct-row b { margin-inline-end: 10px; }
.acct-h3 { margin: 18px 0 4px; font-size: 1rem; }
.acct-order { display: flex; justify-content: space-between; align-items: flex-start; gap: 12px; padding: 12px 0; border-top: 1px solid hsl(var(--c-line)); }
.acct-order:first-child { border-top: 0; }
.acct-order b { display: block; }
.pill.ship-shipped, .pill.ship-delivered { background: hsl(var(--c-ok) / .18); color: hsl(var(--c-ok)); }
.pill.ship-pending, .pill.ship-engraving { background: hsl(var(--c-warn-soft)); color: hsl(var(--c-warn)); }
.acct-events { list-style: none; margin: 0; padding: 0; }
.acct-events li { display: flex; justify-content: space-between; gap: 12px; padding: 10px 0; border-top: 1px solid hsl(var(--c-line)); font-weight: 600; }
.acct-events li:first-child { border-top: 0; }
.acct-events time { color: hsl(var(--c-muted)); font-weight: 500; font-variant-numeric: tabular-nums; white-space: nowrap; }
.acc-danger .acc-ico { background: hsl(var(--c-red-soft)); }
@media (max-width: 520px) { .acct-hero { grid-template-columns: 1fr; justify-items: start; } .acct-stats { grid-template-columns: repeat(3, 1fr); } }

/* Acordeones: títulos y resúmenes con la letra de la interfaz (sin la serif de los títulos grandes), más legibles */
.acc-t h2 { font-family: var(--font-body); font-size: 16px; font-weight: 700; line-height: 1.3; letter-spacing: 0; }
.acc-sum { font-family: var(--font-body); font-size: 14px; font-weight: 500; line-height: 1.35; }
.acc-group h3 { font-family: var(--font-body); }
.acct-id h2, .acct-h3 { font-family: var(--font-body); font-weight: 700; }
.acct-stats dd { font-family: var(--font-body); }

/* Panel de clientes: los títulos con la letra de la interfaz (sin serifas) */
.app :is(h1, h2, h3) { font-family: var(--font-body); }
.app h1 { font-weight: 800; letter-spacing: -.015em; }

/* Imprimir y descargar: una pieza destacada y el resto en grupos plegados, en vez de una pared de tarjetas */
.mhero { display: flex; gap: 22px; align-items: center; padding: 22px; margin: 0 0 18px; border-radius: var(--radius); background: hsl(var(--c-surface)); box-shadow: 0 0 0 1px hsl(var(--c-line)), 0 14px 34px -20px hsl(var(--c-red) / .45); }
.mhero .mqr { width: 104px; height: 104px; flex: none; border-radius: 14px; background: #fff; padding: 6px; box-shadow: 0 0 0 1px hsl(var(--c-line)); image-rendering: pixelated; }
.mhero .mqr-lock { display: grid; place-items: center; font-size: 30px; color: hsl(var(--c-muted)); background: hsl(var(--c-surface-2)); }
.mhero-b { min-width: 0; }
.mhero-eyebrow { display: block; margin-bottom: 4px; font: 800 12px/1 var(--font-body); letter-spacing: .1em; text-transform: uppercase; color: hsl(var(--c-red-strong)); }
.mhero h2 { margin: 0 0 4px; font-size: 1.35rem; }
.mhero p { margin: 0 0 14px; color: hsl(var(--c-muted)); font-size: 15px; line-height: 1.45; max-width: 52ch; }
.mhero-acts { display: flex; flex-wrap: wrap; gap: 10px; }
.mlist { padding-top: 6px; }
.mrow { display: flex; align-items: center; gap: 14px; min-height: 64px; padding: 10px 8px; margin: 0 -8px; border-radius: 14px; color: inherit; text-decoration: none; transition: background-color .15s var(--ease-out), transform .12s var(--ease-out); }
.mrow + .mrow { border-top: 1px solid hsl(var(--c-line)); border-radius: 0; }
a.mrow:hover { background: hsl(var(--c-surface-2)); border-radius: 14px; }
a.mrow:active { transform: scale(.995); }
a.mrow:focus-visible { outline: 3px solid hsl(var(--c-red) / .55); outline-offset: 0; border-radius: 14px; }
.mrow.is-disabled { opacity: .55; cursor: not-allowed; }
.mrow-ico { display: grid; place-items: center; width: 40px; height: 40px; flex: none; border-radius: 12px; background: hsl(var(--c-surface-2)); color: hsl(var(--c-red-strong)); font-size: 19px; }
.mrow-t { display: grid; gap: 2px; min-width: 0; flex: 1; }
.mrow-t b { font-size: 16px; }
.mrow-t small { color: hsl(var(--c-muted)); font-size: 14px; line-height: 1.4; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.mrow-go { flex: none; color: hsl(var(--c-muted)); font-size: 16px; }
.mgroup .mdl { display: flex; flex-wrap: wrap; gap: 10px; }
@media (max-width: 560px) { .mhero { flex-direction: column; align-items: flex-start; padding: 18px; } .mhero-acts .btn-l { flex: 1 1 100%; } }

.acct-install { display: flex; align-items: center; gap: 14px; padding: 14px 16px; margin-bottom: 14px; border-radius: var(--radius); background: hsl(var(--c-surface)); box-shadow: 0 0 0 1px hsl(var(--c-line)); }
.acct-install[hidden] { display: none; }
.acct-install > div { flex: 1; min-width: 0; }
.acct-install b { display: block; }
.acct-install small { display: block; color: hsl(var(--c-ink)); }
.acct-install-ico { display: grid; place-items: center; width: 44px; height: 44px; flex: none; border-radius: 12px; background: hsl(var(--c-red) / .1); color: hsl(var(--c-red)); font-size: 20px; }
.push-btns { display: flex; flex-wrap: wrap; gap: 8px; justify-content: flex-end; }
.push-btns [hidden] { display: none; }
@media (max-width: 560px) { .acct-install { flex-wrap: wrap; } .push-btns { width: 100%; justify-content: flex-start; } }

/* Barra superior: en pantallas angostas son dos filas (marca + acciones / pestañas) y las acciones quedan solo con ícono */
.app-nav .app-links { display: contents; }
@media (max-width: 720px) {
	.app-nav .wrap { display: grid; grid-template-columns: minmax(0, 1fr) auto; grid-template-areas: "brand sp" "links links"; align-items: center; gap: 2px 8px; min-height: 0; padding-block: 8px 0; }
	.app-nav .brand-l { grid-area: brand; margin: 0; min-width: 0; }
	.app-nav .sp { grid-area: sp; margin: 0; flex-wrap: nowrap; gap: 4px; }
	.app-nav .sp .lt { display: none; }
	.app-nav .sp a.lnk { justify-content: center; width: 44px; padding: 0; font-size: 18px; }
	.app-nav .app-links { grid-area: links; display: flex; gap: 4px; margin-inline: -4px; }
	.app-nav .app-links a.lnk { flex: 1; justify-content: center; min-height: 46px; padding: 0 8px; border-radius: 10px 10px 0 0; font-size: 15px; position: relative; }
	.app-nav .app-links a.lnk[aria-current="page"] { background: transparent; color: hsl(var(--c-ink)); }
	.app-nav .app-links a.lnk[aria-current="page"]::after { content: ""; position: absolute; inset-inline: 14px; bottom: 0; height: 3px; border-radius: 3px 3px 0 0; background: hsl(var(--c-red)); }
}

/* Plan Familiar */
.fam-banner { display: flex; align-items: center; gap: 14px; margin: 0 0 16px; padding: 14px 16px; border-radius: var(--radius); background: hsl(var(--c-red-soft)); color: hsl(var(--c-ink)); text-decoration: none; box-shadow: 0 0 0 1px hsl(var(--c-red) / .25); }
.fam-banner > i:first-child { font-size: 22px; color: hsl(var(--c-red)); }
.fam-banner span { flex: 1; min-width: 0; } .fam-banner b { display: block; } .fam-banner small { display: block; color: hsl(var(--c-muted)); }
.fam-card { margin-bottom: 14px; }
.fam-card h2 small { font-weight: 600; color: hsl(var(--c-muted)); font-size: .8em; margin-inline-start: 6px; }
.fam-list { list-style: none; margin: 10px 0; padding: 0; display: grid; gap: 10px; }
.fam-list li { display: flex; align-items: center; gap: 12px; padding: 10px 12px; border-radius: 12px; background: hsl(var(--c-surface-2)); }
.fam-list li > div { flex: 1; min-width: 0; } .fam-list b { display: block; overflow-wrap: anywhere; } .fam-list b em { font-weight: 600; font-style: normal; color: hsl(var(--c-muted)); }
.fam-list small { display: block; color: hsl(var(--c-muted)); overflow-wrap: anywhere; }
.fam-list .is-pending { opacity: .85; border: 1px dashed hsl(var(--c-line)); background: transparent; }
.fam-av { display: grid; place-items: center; width: 40px; height: 40px; flex: none; border-radius: 50%; background: hsl(var(--c-red)); color: #fff; font-weight: 800; font-size: 14px; }
.fam-actions { display: flex; flex-wrap: wrap; gap: 8px; }
.fam-invite { display: grid; gap: 12px; max-width: 460px; }
.fam-hist { list-style: none; margin: 8px 0 0; padding: 0; display: grid; gap: 8px; }
.fam-hist li { display: flex; flex-wrap: wrap; gap: 2px 12px; padding: 9px 12px; border-radius: 10px; background: hsl(var(--c-surface-2)); font-size: 14.5px; }
.fam-hist li span { color: hsl(var(--c-muted)); font-variant-numeric: tabular-nums; min-width: 118px; }

/* ── Condiciones: buscador único + tarjetas ── */
.cpick { display: grid; gap: 12px; margin-block: 12px 16px; }
.cpick-s { position: relative; }
.cpick-s > .bi-search { position: absolute; inset-inline-start: 14px; top: 15px; opacity: .55; pointer-events: none; }
.cpick-in { width: 100%; min-height: 48px; padding-inline: 42px 14px; border-radius: 14px; border: 2px solid hsl(var(--c-line)); font: 600 16px/1.2 var(--font-body); background: hsl(var(--c-bg)); color: hsl(var(--c-ink)); }
.cpick-in:focus-visible { outline: 3px solid hsl(var(--c-red)); outline-offset: 1px; }
.cpick-res { position: absolute; z-index: 40; inset-inline: 0; top: calc(100% + 6px); margin: 0; padding: 6px; list-style: none; max-height: 340px; overflow: auto; border-radius: 14px; background: hsl(var(--c-bg)); box-shadow: 0 12px 32px hsl(var(--c-ink) / .18), 0 0 0 1px hsl(var(--c-ink) / .1); }
.cpick-o { display: flex; align-items: center; gap: 12px; min-height: 48px; padding: 6px 12px; border-radius: 10px; cursor: pointer; }
.cpick-o span { display: grid; } .cpick-o b { font-weight: 700; } .cpick-o small { opacity: .65; font-size: 13px; }
.cpick-o.act, .cpick-o:hover { background: hsl(var(--c-red-soft)); }
.cpick-own { border-top: 1px solid hsl(var(--c-ink) / .1); border-radius: 0 0 10px 10px; margin-top: 4px; }
.cpick-l { font: 700 13px/1 var(--font-body); opacity: .65; text-transform: uppercase; letter-spacing: .04em; margin-bottom: -6px; }
.cpick .chips { margin-top: 0; }
.chip-opt.cq.done { background: hsl(var(--c-red) / .12); box-shadow: 0 0 0 2px hsl(var(--c-red)) inset; }
.chip-opt.cq.done::before { content: "✓"; font-weight: 800; }
.cpick-b summary { cursor: pointer; list-style: none; display: inline-flex; align-items: center; gap: 10px; min-height: 48px; padding: 0 18px; border-radius: 14px; border: 2px dashed hsl(var(--c-red) / .55); background: hsl(var(--c-red-soft)); color: hsl(var(--c-red-strong)); font: 700 15px/1 var(--font-body); transition: background .2s var(--ease-out), transform .15s var(--ease-out); }
.cpick-b summary::-webkit-details-marker { display: none; }
.cpick-b summary:hover { background: hsl(var(--c-red) / .14); }
.cpick-b summary:active { transform: scale(.97); }
.cpick-b summary:focus-visible { outline: 3px solid hsl(var(--c-red)); outline-offset: 2px; }
.cpick-b .cpick-chev { transition: transform .25s var(--ease-out); }
.cpick-b[open] .cpick-chev { transform: rotate(180deg); }
.cpick-b[open] summary { border-style: solid; }
.cpick-items { margin-top: 10px; display: grid; gap: 8px; }
.cpick-g { font: 700 13px/1 var(--font-body); opacity: .65; margin-top: 6px; }
.cc-head { display: flex; align-items: center; gap: 12px; padding-inline-end: 36px; }
.cc-head > .bi { font-size: 22px; color: hsl(var(--c-red)); }
.cc-head b { display: block; font-size: 17px; }
.cc-tag { font-size: 13px; opacity: .65; }
.cond-js .field[hidden], .cond-js .cc-head[hidden] { display: none; }
.row-item.cond.cond-js { gap: 12px; padding-block: 14px; }
.row-item.cond.cond-js.flash { animation: cardflash 1.2s var(--ease-out); }
@keyframes cardflash { 0% { box-shadow: 0 0 0 4px hsl(var(--c-red) / .5); } 100% { box-shadow: 0 0 0 0 transparent; } }
.row-item.cond.cond-js .chip-opt { min-height: 40px; padding: 0 14px; }

/* Campana de avisos */
.bell { position: relative; }
.bell-n { position: absolute; top: 2px; inset-inline-end: 0; min-width: 18px; height: 18px; padding: 0 5px; border-radius: 999px; background: hsl(var(--c-red)); color: hsl(var(--c-on-red)); font: 800 11px/18px var(--font-body); text-align: center; box-shadow: 0 0 0 2px hsl(var(--c-bg)); }
.ntf { list-style: none; margin: 0; padding: 0; display: grid; gap: 8px; }
.ntf li { display: flex; gap: 14px; align-items: flex-start; padding: 14px 16px; border-radius: 14px; background: hsl(var(--c-surface-2)); }
.ntf li.new { box-shadow: 0 0 0 2px hsl(var(--c-red) / .55) inset; }
.ntf .ni { font-size: 22px; line-height: 1; color: hsl(var(--c-red)); margin-top: 2px; }
.ntf .nt { display: grid; gap: 2px; } .ntf .nt b { font-weight: 700; } .ntf .nt small { opacity: .65; }
.cbtns { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; margin-top: 6px; }
.cbtns .btn-l { min-height: 40px; }

/* Actividad reciente de la cuenta */
.acct-events li { justify-content: flex-start; align-items: center; gap: 14px; padding: 12px 0; font-weight: 500; }
.ev-ico { flex: none; display: grid; place-items: center; width: 38px; height: 38px; border-radius: 12px; font-size: 18px; background: hsl(var(--c-surface-2)); color: hsl(var(--c-muted)); }
.ev-ico.is-ok { background: hsl(var(--c-ok) / .16); color: hsl(var(--c-ok)); }
.ev-ico.is-warn { background: hsl(var(--c-red) / .14); color: hsl(var(--c-red-strong)); }
.ev-t { display: grid; gap: 2px; min-width: 0; }
.ev-t b { font-weight: 700; }
.acct-events .ev-t time { font-size: 13px; }

/* Condiciones: grupos por tipo y tarjetas de a dos en pantallas anchas */
[data-rows="cond"] [data-list] { display: grid; gap: 12px; }
.cgh { display: flex; align-items: center; gap: 10px; margin-top: 8px; font: 800 14px/1 var(--font-body); letter-spacing: .04em; text-transform: uppercase; color: hsl(var(--c-muted)); }
.cgh:first-child { margin-top: 0; }
.cgh i { color: hsl(var(--c-red)); font-size: 17px; }
.cgh small { padding: 2px 8px; border-radius: 999px; background: hsl(var(--c-surface-2)); font-size: 12px; }
@media (min-width: 900px) {
	[data-rows="cond"] [data-list] { grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: start; }
	[data-rows="cond"] [data-list] > .cgh { grid-column: 1 / -1; }
	[data-rows="cond"] [data-list] > .row-item.cond.is-free { grid-column: 1 / -1; }
}
.row-item.cond.cond-js .f-text, .row-item.cond.cond-js .f-sev { margin: 0; }
.row-item.cond.cond-js .chips { gap: 6px; }

/* Explorar por tipo: aire alrededor y una línea que separa los tipos de sus opciones */
.cpick { gap: 16px; margin-block: 14px 26px; }
.cpick-b { margin-top: 6px; }
.cpick-b .cpick-cats { margin-top: 14px; }
.cpick-items { margin-top: 16px; padding-top: 16px; border-top: 1px solid hsl(var(--c-line)); gap: 10px; }
.cpick-items:empty { display: none; }
.cpick-g { margin-top: 8px; }
.cpick-g:first-child { margin-top: 0; }

/* Revisión general del panel */
.row-item.cond.cond-js .f-sev .chip-opt { min-height: 36px; padding: 0 11px; font-size: 14px; }
.row-item.cond.cond-js .f-sev .chips { gap: 6px; }
.row-item.contact.has-rel .field-relother { display: none; }
@media (min-width: 720px) { .row-item.contact.has-rel { grid-template-columns: 1.2fr 1.1fr 1.2fr; } }
@media (max-width: 600px) { .cpick-q .cq:nth-child(n+11) { display: none; } }
#sec-sec .acct-h3 { margin-top: 26px; padding-top: 22px; border-top: 1px solid hsl(var(--c-line)); }
.acct-h3:first-child { margin-top: 0; }
.grid2 > .span2 { grid-column: 1 / -1; }
.ntf li.new { box-shadow: inset 4px 0 0 hsl(var(--c-red)); background: hsl(var(--c-red-soft)); }
.ntf li { align-items: center; }
.pp-opts .alert { font-weight: 500; font-size: 14px; line-height: 1.5; }
.pp-opts .alert i { flex: none; margin-top: 2px; }
