/* // cod- 11-08-2026: Sistema visual responsive para Configuración, Sucursales y Bodegas. */
.configuration-page { width: 100%; color: #172a42; }
.configuration-header { display: flex; align-items: flex-end; justify-content: space-between; gap: 24px; margin-bottom: 24px; }
.configuration-eyebrow { margin: 0 0 5px; color: #d62839; font-size: .64rem; font-weight: 850; letter-spacing: .16em; text-transform: uppercase; }
.configuration-header h1 { margin: 0; color: #10243e; font-size: clamp(1.7rem,3vw,2.3rem); font-weight: 820; letter-spacing: -.04em; line-height: 1.1; }
.configuration-header > div:first-child > p:last-child { margin: 7px 0 0; color: #748196; font-size: .82rem; }
.configuration-header-actions { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 8px; }
.configuration-button { display: inline-flex; align-items: center; justify-content: center; min-height: 39px; padding: 0 14px; border: 1px solid transparent; border-radius: 9px; font-size: .74rem; font-weight: 750; text-decoration: none; cursor: pointer; }
.configuration-button.primary { color: #fff; background: #d62839; box-shadow: 0 7px 18px rgba(214,40,57,.18); }
.configuration-button.primary:hover { color: #fff; background: #bc2131; }
.configuration-button.secondary { border-color: #dbe3ec; color: #29445f; background: #fff; }
.configuration-button.secondary:hover { color: #173653; background: #f7f9fb; }
.configuration-button:disabled { opacity: .6; cursor: not-allowed; }
.configuration-warning,.configuration-info,.configuration-notice,.configuration-form-error { display: flex; align-items: center; gap: 8px; margin-bottom: 14px; padding: 12px 14px; border: 1px solid #f1d6a6; border-radius: 10px; color: #75521c; background: #fff8e9; font-size: .73rem; }
.configuration-warning strong { color: #573a0e; white-space: nowrap; }
.configuration-warning a { margin-left: auto; color: #a62432; font-weight: 750; }
.configuration-info { border-color: #d8e5f1; color: #355b7c; background: #f2f7fb; }
.configuration-notice { border-color: #cde9dc; color: #176747; background: #eff9f4; }
.configuration-notice.error,.configuration-form-error { border-color: #efcbd0; color: #8c2833; background: #fff3f4; }
.configuration-form-error { margin: 0 0 16px; }
.configuration-flow { display: grid; grid-template-columns: 1fr auto 1fr auto 1fr; align-items: center; gap: 12px; margin-bottom: 22px; }
.configuration-step { display: flex; align-items: center; gap: 13px; min-height: 90px; padding: 16px; border: 1px solid #dfe6ee; border-radius: 14px; color: inherit; background: #fff; text-decoration: none; }
.configuration-step.link { transition: border-color 150ms ease,transform 150ms ease,box-shadow 150ms ease; }
.configuration-step.link:hover { border-color: #b9ccdc; color: inherit; box-shadow: 0 8px 22px rgba(14,36,64,.07); transform: translateY(-2px); }
.configuration-step > span { display: grid; flex: 0 0 34px; height: 34px; place-items: center; border-radius: 50%; color: #fff; background: #12365e; font-size: .72rem; font-weight: 850; }
.configuration-step div { display: grid; gap: 2px; }
.configuration-step small { color: #8a96a7; font-size: .62rem; text-transform: uppercase; }
.configuration-step strong { color: #18304b; font-size: .9rem; }
.configuration-step p { margin: 0; color: #738195; font-size: .68rem; }
.configuration-arrow { color: #d62839; font-size: 1.1rem; font-weight: 800; }
/* // cod- 12-08-2026: Distribución de las tarjetas Empresa, Sucursal y Bodega. */
.configuration-cards { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 18px; }
.configuration-card { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 18px; min-height: 175px; padding: 25px; border: 1px solid #e1e7ef; border-radius: 16px; color: inherit; background: #fff; box-shadow: 0 7px 22px rgba(14,36,64,.045); text-decoration: none; }
.configuration-card:hover { border-color: #bfd0df; color: inherit; }
.configuration-card-icon { display: grid; width: 52px; height: 52px; place-items: center; border-radius: 14px; color: #173f68; background: #edf4fa; }
.configuration-card-icon.red { color: #bf2635; background: #fff0f2; }
.configuration-card-icon svg { width: 27px; height: 27px; fill: none; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.7; }
.configuration-card h2 { margin: 0; color: #172d47; font-size: 1.12rem; }
.configuration-card div > p:last-child { margin: 7px 0 0; color: #788698; font-size: .75rem; line-height: 1.5; }
.configuration-card-action { color: #d62839; font-size: .72rem; font-weight: 800; white-space: nowrap; }
.configuration-panel { border: 1px solid #e1e7ef; border-radius: 15px; background: #fff; box-shadow: 0 7px 22px rgba(14,36,64,.045); }
.configuration-toolbar { display: flex; align-items: flex-end; gap: 9px; padding: 15px 17px; border-bottom: 1px solid #ebeff4; }
.configuration-search { position: relative; min-width: 220px; flex: 1; }
.configuration-search svg { position: absolute; top: 50%; left: 12px; width: 17px; height: 17px; fill: none; stroke: #8390a2; stroke-linecap: round; stroke-width: 1.7; transform: translateY(-50%); pointer-events: none; }
.configuration-search input,.configuration-filter select,.configuration-field input,.configuration-field textarea,.configuration-field select { width: 100%; border: 1px solid #d5dee8; border-radius: 9px; outline: 0; color: #1b2e45; background: #fafbfd; font-size: .78rem; }
.configuration-search input { height: 39px; padding: 0 12px 0 38px; }
.configuration-filter { display: grid; min-width: min(360px,100%); gap: 5px; }
.configuration-filter label { color: #65758a; font-size: .62rem; font-weight: 750; text-transform: uppercase; }
.configuration-filter select { height: 39px; padding: 0 10px; }
.configuration-search input:focus,.configuration-filter select:focus,.configuration-field input:focus,.configuration-field textarea:focus,.configuration-field select:focus { border-color: #214b76; background: #fff; box-shadow: 0 0 0 3px rgba(33,75,118,.1); }
.configuration-link-button { padding: 8px; border: 0; color: #65758a; background: transparent; font-size: .72rem; font-weight: 700; cursor: pointer; }
.configuration-link-button:hover { color: #d62839; }
.configuration-table-wrap { width: 100%; overflow-x: auto; }
.configuration-table { width: 100%; border-collapse: collapse; }
.configuration-table th { padding: 12px 15px; border-bottom: 1px solid #e6ebf1; color: #708095; background: #f8fafc; font-size: .64rem; font-weight: 800; letter-spacing: .05em; text-align: left; text-transform: uppercase; white-space: nowrap; }
.configuration-table td { padding: 14px 15px; border-bottom: 1px solid #edf1f5; color: #384a60; font-size: .74rem; vertical-align: middle; }
.configuration-table tbody tr:last-child td { border-bottom: 0; }
.configuration-table tbody tr:hover { background: #fbfcfe; }
.configuration-table .muted { max-width: 260px; color: #8591a2; }
.actions-column { width: 1%; text-align: right!important; }
.configuration-identity { display: grid; min-width: 130px; gap: 3px; }
.configuration-identity strong { color: #1d3048; font-weight: 760; }
.configuration-identity small { color: #8995a5; font-size: .63rem; }
.configuration-status { display: inline-flex; padding: 5px 8px; border-radius: 99px; font-size: .63rem; font-weight: 750; }
.configuration-status.active { color: #15704f; background: #e8f7f0; }
.configuration-status.inactive { color: #7b5360; background: #f2edef; }
.configuration-actions { display: flex; align-items: center; justify-content: flex-end; gap: 5px; white-space: nowrap; }
.configuration-actions button { padding: 6px 8px; border: 0; border-radius: 7px; color: #2b587e; background: #eef5fb; font-size: .67rem; font-weight: 750; cursor: pointer; }
.configuration-actions .danger { color: #a42a35; background: #fff0f2; }
.configuration-actions .success { color: #15704f; background: #eaf8f2; }
.configuration-readonly { color: #8995a5; font-size: .67rem; }
.configuration-state { display: grid; min-height: 210px; place-items: center; align-content: center; gap: 6px; padding: 28px; color: #7d899a; font-size: .78rem; text-align: center; }
.configuration-state strong { color: #34475e; font-size: .86rem; }
.configuration-state span { color: #929cab; font-size: .7rem; }
.configuration-state.denied { min-height: calc(100vh - 145px); border: 1px solid #eadce0; border-radius: 15px; background: #fff; }
.configuration-modal-backdrop { position: fixed; inset: 0; z-index: 100; display: grid; place-items: center; padding: 18px; background: rgba(8,23,42,.55); backdrop-filter: blur(3px); }
.configuration-modal { width: min(520px,100%); max-height: calc(100vh - 36px); overflow-y: auto; border-radius: 15px; background: #fff; box-shadow: 0 24px 70px rgba(4,18,35,.3); }
.configuration-modal.wide { width: min(700px,100%); }
.configuration-modal > header { display: flex; align-items: flex-start; justify-content: space-between; padding: 20px 22px 14px; border-bottom: 1px solid #ebeff4; }
.configuration-modal h2 { margin: 0; color: #172b43; font-size: 1.15rem; font-weight: 800; }
.configuration-modal-close { width: 32px; height: 32px; padding: 0; border: 0; border-radius: 8px; color: #66758a; background: #f1f4f7; font-size: 1.2rem; cursor: pointer; }
.configuration-modal form { padding: 20px 22px 22px; }
.configuration-form-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 0 17px; }
.configuration-field { display: grid; min-width: 0; gap: 6px; margin-bottom: 17px; }
.configuration-field.full { grid-column: 1/-1; }
.configuration-field label { color: #34475e; font-size: .72rem; font-weight: 750; }
.configuration-field label span { color: #d62839; }
.configuration-field input,.configuration-field select { height: 43px; padding: 0 12px; }
.configuration-field textarea { min-height: 96px; padding: 10px 12px; resize: vertical; }
.configuration-field .validation-message { color: #c72b3a; font-size: .65rem; }
.configuration-form-actions { display: flex; justify-content: flex-end; gap: 8px; margin-top: 5px; padding-top: 16px; border-top: 1px solid #ebeff4; }

@media (max-width: 900px) { .configuration-flow { grid-template-columns: 1fr; } .configuration-arrow { display: none; } .configuration-cards { grid-template-columns: 1fr; } }
@media (max-width: 760px) {
    .configuration-header { align-items: stretch; flex-direction: column; gap: 15px; }
    .configuration-header-actions { justify-content: flex-start; }
    .configuration-warning { align-items: flex-start; flex-direction: column; }
    .configuration-warning strong { white-space: normal; }
    .configuration-warning a { margin-left: 0; }
    .configuration-toolbar { align-items: stretch; flex-wrap: wrap; }
    .configuration-search,.configuration-filter { width: 100%; min-width: 100%; }
    .configuration-table-wrap { overflow: visible; }
    .configuration-table,.configuration-table tbody,.configuration-table tr,.configuration-table td { display: block; width: 100%; }
    .configuration-table thead { display: none; }
    .configuration-table tbody { padding: 10px; }
    .configuration-table tr { margin-bottom: 10px; padding: 10px 12px; border: 1px solid #e3e9f0; border-radius: 11px; background: #fff; }
    .configuration-table tr:last-child { margin-bottom: 0; }
    .configuration-table td { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; padding: 7px 0; border: 0; text-align: right; }
    .configuration-table td::before { flex: 0 0 34%; color: #8491a3; content: attr(data-label); font-size: .63rem; font-weight: 750; text-align: left; text-transform: uppercase; }
    .configuration-table .muted { max-width: none; }
    .configuration-identity { min-width: 0; text-align: right; }
    .configuration-actions { flex-wrap: wrap; justify-content: flex-end; }
}
@media (max-width: 560px) { .configuration-card { grid-template-columns: auto 1fr; } .configuration-card-action { grid-column: 2; } .configuration-form-grid { grid-template-columns: 1fr; } .configuration-field.full { grid-column: auto; } }
@media (max-width: 480px) { .configuration-header-actions .configuration-button { flex: 1; } .configuration-modal-backdrop { padding: 10px; } .configuration-modal { max-height: calc(100vh - 20px); } .configuration-modal > header,.configuration-modal form { padding-right: 17px; padding-left: 17px; } .configuration-form-actions { flex-direction: column-reverse; } .configuration-form-actions .configuration-button { width: 100%; } }

/* // cod- 14-08-2026: Formulario responsive de política de Apartados. */
.layaway-settings-panel{max-width:780px}.layaway-settings-form{padding:22px}.layaway-policy-toggle{display:flex;grid-column:1/-1;align-items:flex-start;gap:12px;margin:4px 0 18px;padding:16px;border:1px solid #dce5ed;border-radius:11px;background:#f8fafc;cursor:pointer}.layaway-policy-toggle input{flex:0 0 auto;width:18px;height:18px;margin-top:2px;accent-color:#d62839}.layaway-policy-toggle span{display:grid;gap:4px}.layaway-policy-toggle strong{color:#263d56;font-size:.77rem}.layaway-policy-toggle small{color:#748397;font-size:.68rem;line-height:1.45}
@media(max-width:560px){.layaway-settings-form{padding:17px}.layaway-policy-toggle{grid-column:auto}}
