body.wp-admin {
    background: #f3efe7;
}

#wpcontent {
    padding-left: 20px !important;
}

.wrap.coyote-loyalty,
.wrap.coyote-sales,
.wrap.coyote-products {
    width: calc(100% - 32px);
    max-width: none;
    margin: 12px 16px 0 0;
    color: #171717;
}

.coyote-loyalty * {
    box-sizing: border-box;
}

.coyote-hero {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 230px;
    min-height: 112px;
    overflow: hidden;
    margin: 0 0 10px;
    border: 1px solid #e2d8c8;
    border-radius: 14px;
    background: #fff;
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.045);
}

.coyote-hero-copy {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 18px 22px;
    color: #111;
}

.coyote-hero-copy span,
.coyote-stat span,
.coyote-kicker {
    color: #c9a24a;
    font-size: 11px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 0.09em;
}

.coyote-hero-copy h1 {
    margin: 7px 0 6px;
    color: #111;
    font-size: 28px;
    line-height: 1;
}

.coyote-hero-copy p {
    margin: 0;
    max-width: 760px;
    color: #5f574d;
    font-size: 14px;
    line-height: 1.4;
}

.coyote-hero img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.coyote-stat-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
    margin: 0 0 12px;
}

.coyote-stat,
.coyote-card,
.coyote-ready-panel {
    background: #fff;
    border: 1px solid #e2d8c8;
    border-radius: 12px;
    box-shadow: 0 8px 22px rgba(0, 0, 0, 0.045);
}

.coyote-stat {
    padding: 15px 17px;
}

.coyote-stat strong {
    display: block;
    margin: 5px 0 2px;
    color: #111;
    font-size: 28px;
    line-height: 1;
}

.coyote-stat small {
    display: block;
    color: #6d675f;
    font-size: 12px;
    line-height: 1.35;
}

.coyote-ready-panel {
    display: flex;
    justify-content: space-between;
    gap: 16px;
    align-items: flex-start;
    margin: 12px 0;
    padding: 16px 18px;
    border-color: #c9a24a;
    background: #fffaf0;
}

.coyote-ready-panel h2 {
    margin: 4px 0 5px;
    color: #111;
    font-size: 20px;
}

.coyote-ready-panel p,
.coyote-card p {
    color: #6d675f;
}

.coyote-ready-list {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
    justify-content: flex-end;
    max-width: 560px;
}

.coyote-ready-chip {
    min-width: 150px;
    padding: 9px 10px;
    border-radius: 10px;
    background: #111;
    color: #fff;
}

.coyote-ready-chip strong,
.coyote-ready-chip span {
    display: block;
}

.coyote-ready-chip span {
    margin-top: 2px;
    font-size: 12px;
    opacity: 0.72;
}

.coyote-tabs {
    display: flex;
    gap: 6px;
    margin: 10px 0 12px;
    padding: 0;
    border: 0;
}

.coyote-tabs .nav-tab {
    float: none;
    margin: 0;
    padding: 9px 13px;
    border: 1px solid #e0d6c5;
    border-radius: 999px;
    background: #fff;
    color: #171717;
    font-weight: 800;
    line-height: 1;
    text-decoration: none;
}

.coyote-tabs .nav-tab-active {
    background: #111 !important;
    border-color: #111 !important;
    color: #fff !important;
}

.coyote-card {
    margin-top: 0;
    padding: 16px;
}

.coyote-customers-card {
    padding: 14px 16px 16px;
}

.coyote-customers-card > p {
    max-width: 920px;
}

.coyote-card h2 {
    margin: 0 0 5px;
    color: #111;
    font-size: 21px;
}

.coyote-table-shell {
    overflow: hidden;
    border: 1px solid #e2d8c8;
    border-radius: 12px;
    background: #fff;
}

.coyote-table {
    border: 0 !important;
    background: #fff;
    box-shadow: none;
}

.coyote-table th {
    padding: 10px 12px !important;
    background: #fff8ec;
    color: #6d5a32;
    font-size: 11px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 0.06em;
}

.coyote-table td {
    padding: 10px 12px !important;
    vertical-align: middle;
    border-color: #f0e8dc !important;
}

.coyote-table tr:hover td {
    background: #fffaf2;
}

.coyote-row-meta {
    display: block;
    margin-top: 3px;
    color: #8d8276;
    font-size: 11px;
    font-weight: 700;
}

.coyote-badge,
.coyote-pill {
    display: inline-flex;
    align-items: center;
    width: fit-content;
    max-width: 100%;
    border-radius: 999px;
    font-weight: 900;
}

.coyote-badge {
    justify-content: center;
    min-width: 54px;
    padding: 6px 10px;
    background: #f1eadf;
    color: #171717;
}

.coyote-badge-ready {
    background: #c9a24a;
    color: #111;
}

.coyote-ready-text {
    color: #8a6418;
}

.coyote-actions {
    min-width: 360px;
}

.coyote-inline-form {
    display: inline-block;
    margin: 3px 5px 3px 0;
}

.coyote-inline-form .button {
    border-radius: 8px !important;
    font-weight: 800 !important;
}

.coyote-inline-form .button-primary {
    background: #c9a24a !important;
    border-color: #b58e39 !important;
    color: #111 !important;
}

.coyote-inline-form .button-secondary {
    background: #fff !important;
    border-color: #cfc2ae !important;
    color: #171717 !important;
}

.coyote-inline-form .button-link {
    color: #7a6a57 !important;
}

.coyote-adjust-actions {
    min-width: 300px;
}

.coyote-adjust-actions .button {
    min-height: 30px;
}

.coyote-customer-tools {
    display: grid;
    grid-template-columns: minmax(360px, 0.95fr) minmax(360px, 1.05fr);
    gap: 10px;
    align-items: stretch;
    margin: 12px 0;
}

.coyote-quick-adjust {
    display: grid;
    grid-template-columns: 1fr;
    gap: 8px;
    align-items: center;
    margin: 0;
    padding: 12px;
    border: 1px solid #e2d8c8;
    border-radius: 12px;
    background: #fffaf2;
}

.coyote-quick-adjust strong,
.coyote-quick-adjust span {
    display: block;
}

.coyote-quick-adjust strong {
    color: #111;
}

.coyote-quick-adjust span {
    margin-top: 3px;
    color: #6d675f;
    font-size: 12px;
    line-height: 1.35;
}

.coyote-quick-adjust form {
    display: grid;
    grid-template-columns: minmax(220px, 1fr) auto;
    gap: 8px;
    align-items: center;
    margin: 0;
}

.coyote-quick-adjust select {
    width: 100%;
    min-height: 34px;
    border-color: #d8ccba;
    border-radius: 8px;
}

.coyote-loyalty-search {
    display: grid;
    grid-template-columns: minmax(260px, 1fr) auto auto;
    gap: 8px;
    align-items: end;
    margin: 0;
    padding: 12px;
    border: 1px solid #e2d8c8;
    border-radius: 12px;
    background: #fff;
}

.coyote-loyalty-search label {
    display: flex;
    flex-direction: column;
    gap: 5px;
    color: #4f473d;
    font-weight: 900;
}

.coyote-loyalty-search input {
    min-height: 36px;
    border-color: #d8ccba;
    border-radius: 8px;
}

.coyote-loyalty-search .button {
    min-height: 36px;
    border-radius: 8px !important;
    font-weight: 900 !important;
}

.coyote-empty {
    margin: 10px 0 0;
    color: #6d675f;
    font-size: 15px;
}

.coyote-list-count {
    display: inline-flex;
    align-items: center;
    margin: 2px 0 12px;
    padding: 7px 10px;
    border-radius: 999px;
    background: #111;
    color: #fff;
    font-size: 12px;
    font-weight: 900;
}

.coyote-pill {
    padding: 6px 10px;
    font-size: 12px;
    line-height: 1.1;
}

.coyote-pill-green {
    background: #dff5e7;
    color: #17683a;
}

.coyote-pill-gray {
    background: #eee8df;
    color: #62584d;
}

.coyote-pill-blue {
    background: #e7effc;
    color: #244f93;
}

.coyote-pill-gold {
    background: #f5df9f;
    color: #5d3f07;
}

.coyote-pill-orange {
    background: #ffe8d2;
    color: #8b3f12;
}

.coyote-muted {
    color: #6d675f;
}

@media (max-width: 900px) {
    #wpcontent {
        padding-left: 10px !important;
    }

    .wrap.coyote-loyalty,
    .wrap.coyote-sales {
        width: calc(100% - 10px);
        margin-right: 0;
    }

    .coyote-hero {
        grid-template-columns: 1fr;
    }

    .coyote-hero img {
        height: 140px;
    }

    .coyote-stat-grid {
        grid-template-columns: 1fr;
    }

    .coyote-ready-panel {
        display: block;
    }

    .coyote-ready-list {
        justify-content: flex-start;
        margin-top: 12px;
    }

    .coyote-tabs {
        flex-wrap: wrap;
    }

    .coyote-actions {
        min-width: 0;
    }

    .coyote-customer-tools,
    .coyote-quick-adjust,
    .coyote-quick-adjust form,
    .coyote-loyalty-search {
        grid-template-columns: 1fr;
    }

    .coyote-table-shell {
        overflow-x: auto;
    }

    .coyote-table {
        min-width: 860px;
    }
}

.coyote-sales * {
    box-sizing: border-box;
}

.coyote-sales-hero {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 340px;
    height: 150px;
    overflow: hidden;
    margin: 0 0 10px;
    border-radius: 16px;
    background: #111;
    box-shadow: 0 14px 34px rgba(0, 0, 0, 0.12);
}

.coyote-sales-hero > div {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 22px 30px;
    color: #fff;
}

.coyote-sales #welcome-panel,
.coyote-sales-hero a,
.coyote-sales-hero button,
.coyote-sales-hero .notice,
.coyote-sales-hero [class*="welcome"],
.coyote-sales-hero > div > :not(span):not(h1):not(p) {
    display: none !important;
}

.coyote-sales-hero span,
.coyote-sales-card h2 {
    color: #c9a24a;
}

.coyote-sales-hero span {
    font-size: 11px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 0.09em;
}

.coyote-sales-hero h1 {
    margin: 8px 0;
    color: #fff;
    font-size: 30px;
    line-height: 1;
}

.coyote-sales-hero p {
    max-width: 760px;
    margin: 0;
    color: rgba(255, 255, 255, 0.72);
    font-size: 15px;
    line-height: 1.45;
}

.coyote-sales-hero img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.coyote-sales-stats {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
    margin-bottom: 10px;
}

.coyote-sales-layout {
    display: grid;
    grid-template-columns: minmax(520px, 0.72fr) minmax(760px, 1.28fr);
    gap: 14px;
    align-items: start;
}

.coyote-info-grid {
    display: block;
    margin-bottom: 12px;
}

.coyote-guide {
    display: none;
}

.coyote-tutorial {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
    margin-bottom: 10px;
}

.coyote-tutorial div {
    padding: 10px 12px;
    border: 1px solid #e2d8c8;
    border-radius: 12px;
    background: #fff;
    box-shadow: 0 8px 22px rgba(0, 0, 0, 0.045);
}

.coyote-tutorial strong,
.coyote-tutorial span {
    display: block;
}

.coyote-tutorial span {
    margin-top: 4px;
    color: #6d675f;
    font-size: 12px;
    line-height: 1.35;
}

.coyote-sales-card {
    padding: 15px;
    border: 1px solid #e2d8c8;
    border-radius: 12px;
    background: #fff;
    box-shadow: 0 8px 22px rgba(0, 0, 0, 0.045);
}

.coyote-sales-card h2 {
    margin: 0 0 10px;
    font-size: 19px;
}

.coyote-sales-form label {
    display: block;
    color: #4f473d;
    font-weight: 800;
}

.coyote-sales-form input,
.coyote-sales-form select,
.coyote-sales-form textarea {
    width: 100%;
    margin-top: 5px;
    border-color: #d8ccba;
    border-radius: 8px;
}

.coyote-form-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}

.coyote-sale-items {
    margin-top: 14px;
}

.coyote-sale-items-head {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    align-items: center;
    margin-bottom: 8px;
}

.coyote-sale-items-head strong {
    color: #111;
}

.coyote-sale-items-head span {
    color: #6d675f;
    font-size: 12px;
}

.coyote-sale-item {
    display: grid;
    grid-template-columns: minmax(180px, 1fr) 70px 104px;
    gap: 8px;
    margin-bottom: 8px;
    align-items: end;
}

.coyote-note {
    margin-top: 10px;
}

.coyote-sales-total {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    align-items: center;
    margin: 12px 0;
    padding: 12px 14px;
    border-radius: 10px;
    background: #111;
    color: #fff;
}

.coyote-sales-total span,
.coyote-sales-total small {
    color: rgba(255, 255, 255, 0.72);
}

.coyote-sales-total strong {
    font-size: 24px;
}

.coyote-save-sale {
    width: 100%;
    min-height: 42px;
    border-radius: 9px !important;
    background: #c9a24a !important;
    border-color: #b58e39 !important;
    color: #111 !important;
    font-weight: 900 !important;
}

.coyote-cancel-edit {
    display: block !important;
    width: 100%;
    margin-top: 8px !important;
    text-align: center;
    border-radius: 9px !important;
    font-weight: 900 !important;
}

.coyote-field {
    display: block;
    color: #4f473d;
    font-weight: 800;
}

.coyote-field-head {
    display: flex;
    justify-content: space-between;
    gap: 10px;
    align-items: center;
    margin-bottom: 4px;
}

.coyote-add-customer {
    min-height: 26px !important;
    padding: 2px 10px !important;
    border-color: #c9a24a !important;
    border-radius: 999px !important;
    background: #fff8ec !important;
    color: #111 !important;
    font-size: 12px !important;
    font-weight: 900 !important;
    line-height: 20px !important;
}

.coyote-add-customer .dashicons {
    width: 16px;
    height: 16px;
    margin-right: 4px;
    font-size: 16px;
    line-height: 20px;
}

.coyote-customer-dialog {
    width: min(560px, calc(100vw - 32px));
    max-width: 560px;
    padding: 0;
    overflow: hidden;
    border: 1px solid #ddcfbb;
    border-radius: 8px;
    background: #fff;
    color: #171717;
    box-shadow: 0 24px 70px rgba(22, 18, 12, .28);
}

.coyote-customer-dialog::backdrop {
    background: rgba(17, 17, 17, .55);
    backdrop-filter: blur(2px);
}

.coyote-customer-create-form {
    padding: 22px;
}

.coyote-dialog-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 18px;
}

.coyote-dialog-head span:not(.dashicons) {
    display: block;
    margin-bottom: 4px;
    color: #a77d21;
    font-family: "JetBrains Mono", monospace;
    font-size: 11px;
    font-weight: 800;
    text-transform: uppercase;
}

.coyote-dialog-head h3 {
    margin: 0;
    font-size: 24px;
    line-height: 1.2;
}

.coyote-dialog-close {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 38px;
    height: 38px;
    padding: 0;
    border: 1px solid #ded4c5;
    border-radius: 6px;
    background: #fff;
    color: #171717;
    cursor: pointer;
}

.coyote-dialog-copy {
    margin: 10px 0 18px;
    color: #655d53;
}

.coyote-customer-create-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}

.coyote-customer-create-grid label {
    display: grid;
    gap: 6px;
    color: #3f392f;
    font-weight: 800;
}

.coyote-customer-create-grid input {
    width: 100%;
    min-height: 44px;
    margin: 0;
    border-color: #d9cbb7;
    border-radius: 6px;
}

.coyote-dialog-actions {
    display: flex;
    justify-content: flex-end;
    gap: 10px;
    margin-top: 20px;
    padding-top: 16px;
    border-top: 1px solid #eee5d8;
}

.coyote-dialog-actions .button {
    min-height: 42px;
    padding: 0 16px;
    border-radius: 6px;
    font-weight: 800;
}

.coyote-dialog-actions .button-primary {
    border-color: #b98d30;
    background: #c9a24a;
    color: #111;
}

@media (max-width: 600px) {
    .coyote-customer-create-form {
        padding: 18px;
    }

    .coyote-customer-create-grid {
        grid-template-columns: 1fr;
    }

    .coyote-dialog-actions {
        flex-direction: column-reverse;
    }

    .coyote-dialog-actions .button {
        width: 100%;
    }
}

@media (max-width: 1500px) {
    .coyote-info-grid {
        grid-template-columns: 1fr;
    }

    .coyote-sales-layout {
        grid-template-columns: minmax(500px, 0.9fr) minmax(520px, 1.1fr);
    }
}

@media (max-width: 1180px) {
    .coyote-sales-layout {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 900px) {
    .coyote-sales-hero,
    .coyote-sales-stats,
    .coyote-tutorial,
    .coyote-form-grid {
        grid-template-columns: 1fr;
    }

    .coyote-sales-hero img {
        height: 160px;
    }

    .coyote-sale-item {
        grid-template-columns: 1fr;
    }
}

/* Ventas Coyote 1.7: consola compacta de cobro */
.wrap.coyote-sales {
    width: calc(100% - 28px);
    max-width: none;
    margin: 10px 14px 0 0;
}

.coyote-sales-command {
    display: grid;
    grid-template-columns: minmax(420px, 1fr) minmax(460px, 0.74fr);
    gap: 12px;
    align-items: stretch;
    margin-bottom: 12px;
    padding: 14px;
    border: 1px solid #e2d8c8;
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 10px 24px rgba(0, 0, 0, 0.05);
}

.coyote-command-copy {
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-height: 96px;
    padding: 8px 10px;
    color: #111;
}

.coyote-command-copy span {
    color: #c9a24a;
    font-size: 11px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 0.09em;
}

.coyote-command-copy h1 {
    margin: 7px 0;
    color: #111;
    font-size: 28px;
    line-height: 1;
}

.coyote-command-copy p {
    max-width: 760px;
    margin: 0;
    color: #5f574d;
    font-size: 14px;
    line-height: 1.4;
}

.coyote-dashboard-customizer-actions,
.coyote-prefill-buttons,
.coyote-row-actions,
.coyote-recent-sale-actions {
    column-gap: 10px !important;
    row-gap: 8px !important;
}

.coyote-dashboard-customizer-actions .button,
.coyote-prefill-buttons .button,
.coyote-row-actions .button,
.coyote-recent-sale-actions .button {
    margin: 0 !important;
}

.coyote-command-steps {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 12px;
}

.coyote-command-steps b {
    padding: 7px 10px;
    border: 1px solid #e2d8c8;
    border-radius: 999px;
    background: #fff8ec;
    color: #171717;
    font-size: 12px;
}

.coyote-command-stats {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(135px, 1fr));
    gap: 8px;
}

.coyote-command-stats .coyote-stat {
    display: flex;
    flex-direction: column;
    justify-content: center;
    background: #f8f3ea;
    box-shadow: none;
}

.coyote-money-cards {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
    gap: 8px;
    margin: -2px 0 12px;
}

.coyote-money-cards .coyote-stat {
    box-shadow: none;
}

.coyote-manager-flow {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
    align-items: center;
    margin: -2px 0 12px;
    padding: 10px 12px;
    border: 1px solid #e2d8c8;
    border-radius: 12px;
    background: #fffaf2;
    color: #4f473d;
}

.coyote-manager-flow strong {
    margin-right: 4px;
    color: #111;
}

.coyote-manager-flow span {
    padding: 5px 9px;
    border: 1px solid #eadbc4;
    border-radius: 999px;
    background: #fff;
    font-size: 12px;
    font-weight: 800;
}

.coyote-card-helper {
    margin: 0 0 10px;
    color: #6d675f;
    font-size: 12px;
}

.coyote-report-summary {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
    gap: 8px;
    margin-bottom: 10px;
}

.coyote-sales-layout {
    grid-template-columns: minmax(460px, 0.52fr) minmax(780px, 1.48fr);
    gap: 12px;
}

.coyote-info-grid {
    display: grid;
    grid-template-columns: minmax(700px, 1.15fr) minmax(440px, 0.85fr);
    gap: 12px;
    margin-top: 12px;
}

.coyote-sale-panel {
    position: sticky;
    top: 42px;
}

.coyote-sales-card {
    overflow-x: auto;
}

.coyote-booking-list {
    display: grid;
    grid-template-columns: repeat(3, minmax(220px, 1fr));
    gap: 8px;
}

.coyote-products-layout {
    display: grid;
    grid-template-columns: minmax(420px, 0.8fr) minmax(420px, 1fr);
    gap: 12px;
    align-items: start;
    margin-bottom: 12px;
}

.coyote-costs-layout {
    display: grid;
    grid-template-columns: minmax(460px, 0.65fr) minmax(680px, 1.35fr);
    gap: 12px;
    align-items: start;
    margin-bottom: 12px;
}

.coyote-prefill-actions {
    align-items: center;
}

.coyote-prefill-actions span {
    display: block;
    margin-top: 2px;
}

.coyote-prefill-buttons {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
    justify-content: flex-end;
    align-items: center;
}

.coyote-prefill-buttons form {
    margin: 0;
}

.coyote-cost-card h3 {
    margin: 14px 0 8px;
}

.coyote-cost-form {
    margin-bottom: 12px;
}

.coyote-pagination {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 7px;
    margin: 12px 0 0;
    padding: 10px 0 0;
    border-top: 1px solid #efe5d6;
}

.coyote-pagination span {
    margin-right: 4px;
    color: #6d675f;
    font-size: 12px;
    font-weight: 900;
}

.coyote-pagination a,
.coyote-pagination em {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 32px;
    height: 32px;
    padding: 0 10px;
    border: 1px solid #e2d8c8;
    border-radius: 9px;
    background: #fff;
    color: #111;
    text-decoration: none;
    font-weight: 900;
    line-height: 1;
}

.coyote-pagination a:hover {
    border-color: #c9a24a;
    background: #fff8ec;
}

.coyote-pagination a.is-active {
    background: #111;
    border-color: #111;
    color: #fff;
}

.coyote-row-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    align-items: center;
}

.coyote-row-actions form {
    margin: 0;
}

.coyote-table {
    min-width: 760px;
}

.coyote-inventory-table input[type="text"],
.coyote-inventory-table input[type="number"] {
    width: 100%;
    min-height: 32px;
    border-color: #d8ccba;
    border-radius: 8px;
}

.coyote-check {
    display: flex !important;
    align-items: center;
    gap: 6px;
    margin: 0;
    color: #4f473d;
    font-weight: 800;
}

.coyote-update-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
    margin-top: 12px;
}

.coyote-update-step {
    display: flex;
    flex-direction: column;
    gap: 10px;
    padding: 14px;
    border: 1px solid #e2d8c8;
    border-radius: 12px;
    background: #fffaf2;
}

.coyote-update-step strong {
    color: #111;
    font-size: 16px;
}

.coyote-update-step span {
    color: #6d675f;
    line-height: 1.4;
}

.coyote-update-step form {
    margin: 0;
}

.coyote-danger-zone {
    margin-top: 28px;
    padding-top: 24px;
    border-top: 1px solid #dfd6ca;
}

.coyote-danger-heading {
    display: flex;
    align-items: flex-start;
    gap: 14px;
    max-width: 900px;
}

.coyote-danger-heading > .dashicons {
    display: grid;
    flex: 0 0 42px;
    width: 42px;
    height: 42px;
    place-items: center;
    border-radius: 6px;
    background: #a8322d;
    color: #fff;
    font-size: 22px;
}

.coyote-danger-heading h2 {
    margin: 2px 0 5px;
    color: #211c18;
    font-size: 22px;
    line-height: 1.2;
}

.coyote-danger-heading p {
    margin: 0;
    color: #655d55;
    line-height: 1.5;
}

.coyote-danger-kicker {
    color: #a8322d !important;
    font-family: "JetBrains Mono", monospace;
    font-size: 11px;
    font-weight: 800;
    text-transform: uppercase;
}

.coyote-reset-counts {
    display: grid;
    grid-template-columns: repeat(6, minmax(120px, 1fr));
    gap: 8px;
    margin: 18px 0;
}

.coyote-reset-counts > div {
    min-width: 0;
    padding: 12px;
    border-block: 1px solid #dfd6ca;
}

.coyote-reset-counts strong,
.coyote-reset-counts span {
    display: block;
}

.coyote-reset-counts strong {
    color: #171513;
    font-size: 24px;
    line-height: 1;
}

.coyote-reset-counts span {
    margin-top: 6px;
    color: #6d675f;
    font-size: 12px;
    line-height: 1.3;
}

.coyote-reset-scope {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
    margin-bottom: 16px;
}

.coyote-reset-scope > div {
    padding-left: 12px;
    border-left: 3px solid #a8322d;
}

.coyote-reset-scope > div + div {
    border-left-color: #4f7554;
}

.coyote-reset-scope strong {
    color: #211c18;
    font-size: 14px;
}

.coyote-reset-scope p {
    margin: 4px 0 0;
    color: #655d55;
    line-height: 1.45;
}

.coyote-reset-form {
    max-width: 900px;
    padding: 16px;
    border: 1px solid #d9aaa7;
    border-radius: 8px;
    background: #fff8f7;
}

.coyote-reset-fields {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

.coyote-reset-fields label {
    display: grid;
    gap: 7px;
    color: #302a25;
    font-weight: 800;
}

.coyote-reset-fields code {
    width: max-content;
    color: #832722;
    font-size: 12px;
}

.coyote-reset-fields input {
    width: 100%;
    min-height: 42px;
    border-color: #cdbdb3;
    border-radius: 6px;
    background: #fff;
}

.coyote-reset-fields input:focus {
    border-color: #a8322d;
    box-shadow: 0 0 0 1px #a8322d;
}

.coyote-reset-check {
    display: flex;
    align-items: flex-start;
    gap: 9px;
    margin: 14px 0;
    color: #554c45;
    line-height: 1.4;
}

.coyote-reset-check input {
    margin-top: 2px;
}

.coyote-reset-button.button {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    min-height: 42px;
    padding: 0 16px;
    border-color: #8f2925;
    background: #a8322d;
    color: #fff;
    font-weight: 800;
}

.coyote-reset-button.button:hover,
.coyote-reset-button.button:focus {
    border-color: #6f1d19;
    background: #842520;
    color: #fff;
}

.coyote-reset-button .dashicons {
    width: 18px;
    height: 18px;
    font-size: 18px;
}

@media (max-width: 1500px) {
    .coyote-sales-command,
    .coyote-info-grid {
        grid-template-columns: 1fr;
    }

    .coyote-sales-layout {
        grid-template-columns: minmax(500px, 0.75fr) minmax(620px, 1.25fr);
    }

    .coyote-booking-list {
        grid-template-columns: repeat(2, minmax(240px, 1fr));
    }
}

@media (max-width: 1180px) {
    .coyote-sale-panel {
        position: static;
    }

    .coyote-sales-layout,
    .coyote-costs-layout {
        grid-template-columns: 1fr;
    }

    .coyote-update-grid {
        grid-template-columns: 1fr;
    }

    .coyote-reset-counts {
        grid-template-columns: repeat(3, minmax(120px, 1fr));
    }
}

@media (max-width: 900px) {
    .coyote-command-stats,
    .coyote-money-cards,
    .coyote-report-filter,
    .coyote-report-summary,
    .coyote-booking-list,
    .coyote-products-layout,
    .coyote-costs-layout {
        grid-template-columns: 1fr;
    }

    .coyote-prefill-actions {
        display: block;
    }

    .coyote-prefill-buttons {
        justify-content: flex-start;
        margin-top: 8px;
    }

    .coyote-reset-scope,
    .coyote-reset-fields {
        grid-template-columns: 1fr;
    }

    .coyote-reset-counts {
        grid-template-columns: repeat(2, minmax(110px, 1fr));
    }
}

@media (max-width: 520px) {
    .coyote-danger-heading {
        display: block;
    }

    .coyote-danger-heading > .dashicons {
        margin-bottom: 10px;
    }

    .coyote-reset-counts {
        grid-template-columns: 1fr;
    }

    .coyote-reset-button.button {
        justify-content: center;
        width: 100%;
    }
}

/* Version 2.5.5: buscador de clientes, ajustes de lealtad, producto rapido y forma mas alineada */
.coyote-sales-side-stack {
    display: grid;
    gap: 12px;
    align-items: start;
}

.coyote-mini-head {
    display: flex;
    justify-content: space-between;
    gap: 10px;
    align-items: flex-start;
    margin-bottom: 10px;
}

.coyote-mini-head h2 {
    margin: 0 0 3px !important;
}

.coyote-mini-head p {
    margin: 0;
    color: #6d675f;
    font-size: 12px;
}

.coyote-mini-head .button {
    white-space: nowrap;
    border-radius: 999px !important;
    font-weight: 900 !important;
}

.coyote-product-mini-form {
    display: grid;
    gap: 8px;
}

.coyote-product-mini-grid {
    display: grid;
    grid-template-columns: 110px minmax(140px, 1fr);
    gap: 8px;
}

.coyote-mini-total {
    display: grid;
    grid-template-columns: 1fr auto auto;
    gap: 10px;
    align-items: center;
    padding: 10px 11px;
    border-radius: 10px;
    background: #111;
    color: #fff;
}

.coyote-mini-total span,
.coyote-mini-total small {
    color: rgba(255, 255, 255, 0.72);
}

.coyote-mini-total strong {
    font-size: 20px;
}

.coyote-sales-form label,
.coyote-field {
    display: flex;
    flex-direction: column;
}

.coyote-sales-form input,
.coyote-sales-form select,
.coyote-sales-form textarea {
    min-height: 38px;
    border-radius: 9px;
    background: #fff;
}

.coyote-label-row {
    display: inline-flex;
    gap: 6px;
    align-items: center;
    min-height: 20px;
    color: #4f473d;
    font-weight: 900;
    line-height: 1.1;
}

.coyote-form-grid {
    align-items: start;
}

.coyote-sale-meta-grid {
    padding-bottom: 12px;
    border-bottom: 1px solid #efe5d6;
}

.coyote-client-shell {
    margin: 2px 0 12px;
    padding: 10px;
    border: 1px solid #eadfcd;
    border-radius: 12px;
    background: #fffaf2;
}

.coyote-field-head {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 10px;
    align-items: center;
    margin-bottom: 8px;
}

.coyote-field-head span {
    min-width: 0;
}

.coyote-add-customer {
    white-space: nowrap;
    min-height: 30px !important;
    padding: 4px 12px !important;
}

.coyote-client-controls {
    display: grid;
    grid-template-columns: minmax(150px, 0.95fr) minmax(180px, 1.05fr);
    gap: 8px;
    align-items: center;
}

.coyote-client-search {
    margin: 0 !important;
    background: #fff !important;
}

.coyote-client-controls .coyote-customer-select {
    margin: 0 !important;
}

.coyote-client-controls .coyote-loyalty-status {
    grid-column: 1 / -1;
}

.coyote-loyalty-status {
    position: relative;
    display: grid;
    grid-template-columns: 8px auto minmax(0, 1fr) auto;
    column-gap: 7px;
    align-items: center;
    min-height: 32px;
    margin-top: 0;
    padding: 6px 8px;
    border: 1px solid #e2d8c8;
    border-radius: 9px;
    background: #fff;
    color: #4f473d;
}

.coyote-loyalty-status::after {
    content: attr(data-progress);
    grid-column: 4;
    justify-self: end;
    padding: 4px 7px;
    border-radius: 999px;
    background: #f1eadf;
    color: #111;
    font-size: 11px;
    font-weight: 900;
    line-height: 1;
}

.coyote-loyalty-status strong {
    grid-column: 2;
    color: #111;
    font-size: 12px;
    line-height: 1;
    white-space: nowrap;
}

.coyote-loyalty-status small {
    grid-column: 3;
    color: #6d675f;
    overflow: hidden;
    font-size: 11px;
    line-height: 1.15;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.coyote-loyalty-dot {
    width: 8px;
    height: 8px;
    border-radius: 999px;
    background: #b8aa96;
}

.coyote-loyalty-status.is-ready {
    border-color: #c9a24a;
    background: #fff4d8;
}

.coyote-loyalty-status.is-ready .coyote-loyalty-dot {
    background: #c9a24a;
    box-shadow: 0 0 0 4px rgba(201, 162, 74, 0.18);
}

.coyote-loyalty-status.is-empty::after {
    display: none;
}

.coyote-loyalty-status.is-loading {
    opacity: 0.72;
}

.coyote-floating-loyalty {
    position: fixed;
    right: 24px;
    bottom: 84px;
    z-index: 99998;
    display: none;
    max-width: 320px;
    padding: 12px 14px;
    border: 1px solid #d4ad54;
    border-radius: 12px;
    background: #111;
    color: #fff;
    box-shadow: 0 16px 36px rgba(0, 0, 0, 0.22);
}

.coyote-floating-loyalty.is-visible {
    display: block;
}

.coyote-floating-loyalty strong,
.coyote-floating-loyalty span {
    display: block;
}

.coyote-floating-loyalty strong {
    color: #f0c96c;
}

.coyote-floating-loyalty span {
    margin-top: 3px;
    color: rgba(255, 255, 255, 0.78);
}

.coyote-floating-ready-list {
    position: fixed;
    right: 24px;
    bottom: 22px;
    z-index: 99997;
    width: min(360px, calc(100vw - 48px));
    font-family: inherit;
}

.coyote-floating-ready-list summary {
    display: grid;
    grid-template-columns: 10px minmax(0, 1fr) auto;
    gap: 9px;
    align-items: center;
    padding: 10px 12px;
    border: 1px solid #d4ad54;
    border-radius: 999px;
    background: #111;
    color: #fff;
    box-shadow: 0 14px 30px rgba(0, 0, 0, 0.22);
    cursor: pointer;
    list-style: none;
}

.coyote-floating-ready-list summary::-webkit-details-marker {
    display: none;
}

.coyote-floating-ready-list summary strong {
    color: #f0c96c;
    font-size: 13px;
    line-height: 1;
}

.coyote-floating-ready-list summary small {
    color: rgba(255, 255, 255, 0.72);
    font-size: 11px;
}

.coyote-ready-pulse {
    width: 9px;
    height: 9px;
    border-radius: 999px;
    background: #d4ad54;
    box-shadow: 0 0 0 5px rgba(212, 173, 84, 0.18);
}

.coyote-ready-popover {
    position: absolute;
    right: 0;
    bottom: 50px;
    width: 100%;
    padding: 12px;
    border: 1px solid #d4ad54;
    border-radius: 14px;
    background: #111;
    color: #fff;
    box-shadow: 0 18px 42px rgba(0, 0, 0, 0.28);
}

.coyote-ready-popover-head {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    align-items: flex-start;
    margin-bottom: 8px;
}

.coyote-ready-popover-head strong {
    color: #fff;
}

.coyote-ready-popover-head span {
    color: rgba(255, 255, 255, 0.6);
    font-size: 11px;
}

.coyote-ready-popover ul {
    max-height: 260px;
    margin: 0 0 10px;
    padding: 0;
    overflow: auto;
    list-style: none;
}

.coyote-ready-popover li {
    display: flex;
    justify-content: space-between;
    gap: 10px;
    align-items: center;
    padding: 9px 0;
    border-top: 1px solid rgba(255, 255, 255, 0.12);
}

.coyote-ready-popover li:first-child {
    border-top: 0;
}

.coyote-ready-popover li strong,
.coyote-ready-popover li small {
    display: block;
}

.coyote-ready-popover li small {
    margin-top: 2px;
    color: rgba(255, 255, 255, 0.62);
    font-size: 11px;
}

.coyote-ready-popover li b {
    flex: 0 0 auto;
    padding: 4px 8px;
    border-radius: 999px;
    background: #d4ad54;
    color: #111;
    font-size: 12px;
}

.coyote-ready-popover .button {
    width: 100%;
    border-color: #d4ad54 !important;
    background: #d4ad54 !important;
    color: #111 !important;
    font-weight: 900 !important;
    text-align: center;
}

.coyote-sale-item {
    grid-template-columns: minmax(180px, 1fr) 70px 104px;
    align-items: end;
}

.coyote-sale-mode-toggle {
    white-space: nowrap;
    border-color: #c9a24a !important;
    border-radius: 999px !important;
    background: #fff8ec !important;
    color: #111 !important;
    font-weight: 900 !important;
}

.coyote-line-customer,
.coyote-line-barber {
    display: none;
    min-width: 0;
}

.is-group-mode .coyote-sale-item {
    grid-template-columns: minmax(130px, 0.9fr) minmax(120px, 0.8fr) minmax(170px, 1.1fr) 64px 96px;
    padding: 8px;
    border: 1px solid #efe5d6;
    border-radius: 10px;
    background: #fffaf5;
}

.is-group-mode .coyote-line-customer,
.is-group-mode .coyote-line-barber {
    display: block;
}

@media (max-width: 900px) {
    .coyote-product-mini-grid,
    .coyote-mini-total {
        grid-template-columns: 1fr;
    }

    .coyote-sale-items-head {
        align-items: flex-start;
        flex-direction: column;
    }

    .coyote-sale-item {
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    }

    .is-group-mode .coyote-sale-item {
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    }

    .coyote-sale-item .coyote-service-select {
        grid-column: 1 / -1;
    }
}

@media (max-width: 560px) {
    .coyote-field-head {
        grid-template-columns: 1fr;
    }

    .coyote-client-controls {
        grid-template-columns: 1fr;
    }

    .coyote-add-customer {
        width: 100%;
        text-align: center;
    }

    .coyote-sale-item {
        grid-template-columns: 1fr;
    }

    .coyote-sales-total {
        align-items: flex-start;
        flex-direction: column;
    }

    .coyote-sales-total strong {
        font-size: 28px;
    }
}

/* Modo Caja: accesos diarios y cierre operativo. */
.coyote-cashier-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 16px;
}

.coyote-cashier-actions a,
.coyote-cashier-actions button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    min-height: 40px;
    margin: 0;
    padding: 0 13px;
    border: 1px solid #d9cfbf;
    border-radius: 6px;
    background: #fff;
    color: #171717;
    font: inherit;
    font-size: 13px;
    font-weight: 800;
    line-height: 1;
    text-decoration: none;
    cursor: pointer;
    box-shadow: none;
}

.coyote-cashier-actions a:hover,
.coyote-cashier-actions a:focus,
.coyote-cashier-actions button:hover,
.coyote-cashier-actions button:focus {
    border-color: #c9a341;
    background: #fff9ec;
    color: #111;
}

.coyote-cashier-actions .is-primary {
    border-color: #c9a341;
    background: #c9a341;
    color: #111;
}

.coyote-cashier-actions .dashicons {
    width: 17px;
    height: 17px;
    font-size: 17px;
}

.coyote-cashbox-panel {
    scroll-margin-top: 24px;
}

.coyote-cashbox-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 14px;
}

.coyote-cashbox-head > div > span {
    display: block;
    margin-bottom: 5px;
    color: #9a741d;
    font-family: Consolas, monospace;
    font-size: 10px;
    font-weight: 900;
    letter-spacing: 1px;
}

.coyote-cashbox-head h2,
.coyote-cashbox-head p {
    margin: 0;
}

.coyote-cashbox-head p {
    margin-top: 5px;
    color: #6d675f;
}

.coyote-cashbox-status {
    display: inline-flex;
    align-items: center;
    flex: 0 0 auto;
    gap: 6px;
    min-height: 34px;
    padding: 0 10px;
    border: 1px solid #dfd5c6;
    border-radius: 6px;
    background: #faf7f1;
    color: #746b5f;
    font-size: 12px;
    font-weight: 850;
}

.coyote-cashbox-status.is-closed {
    border-color: #b7d8c5;
    background: #eff9f3;
    color: #17683e;
}

.coyote-cashbox-summary {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 9px;
    margin-bottom: 12px;
}

.coyote-cashbox-summary article {
    min-width: 0;
    min-height: 94px;
    padding: 13px 14px;
    border: 1px solid #e3dacd;
    border-radius: 7px;
    background: #fbfaf8;
}

.coyote-cashbox-summary article.is-primary {
    border-color: #c9a341;
    background: #fff8e8;
}

.coyote-cashbox-summary article.is-balanced {
    border-color: #abd2bb;
    background: #eff9f3;
}

.coyote-cashbox-summary article.is-warning {
    border-color: #e1b3a9;
    background: #fff3f0;
}

.coyote-cashbox-summary span,
.coyote-cashbox-summary strong,
.coyote-cashbox-summary small {
    display: block;
}

.coyote-cashbox-summary span {
    color: #9a741d;
    font-size: 10px;
    font-weight: 900;
    text-transform: uppercase;
}

.coyote-cashbox-summary strong {
    margin: 6px 0 2px;
    color: #171717;
    font-size: 24px;
    line-height: 1;
}

.coyote-cashbox-summary small {
    overflow: hidden;
    color: #746e66;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.coyote-cashbox-forms {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}

.coyote-cashbox-form {
    display: grid;
    grid-template-columns: minmax(150px, .7fr) minmax(190px, 1.3fr) minmax(110px, .55fr) auto;
    align-items: end;
    gap: 9px;
    margin: 0;
    padding: 13px;
    border: 1px solid #e2d8ca;
    border-radius: 7px;
    background: #fff;
}

.coyote-cashbox-form.is-close {
    grid-template-columns: minmax(150px, .7fr) minmax(190px, 1.3fr) auto;
}

.coyote-cashbox-form-head {
    grid-column: 1 / -1;
    display: flex;
    align-items: center;
    gap: 10px;
    min-width: 0;
}

.coyote-cashbox-form-head > .dashicons {
    display: grid;
    flex: 0 0 36px;
    width: 36px;
    height: 36px;
    place-items: center;
    border-radius: 6px;
    background: #171717;
    color: #c9a341;
    font-size: 18px;
}

.coyote-cashbox-form-head strong,
.coyote-cashbox-form-head small {
    display: block;
}

.coyote-cashbox-form-head strong {
    color: #201d19;
    font-size: 15px;
}

.coyote-cashbox-form-head small {
    margin-top: 2px;
    color: #746e66;
}

.coyote-cashbox-form label {
    display: grid;
    gap: 5px;
    min-width: 0;
    margin: 0;
    color: #403a33;
    font-size: 12px;
    font-weight: 800;
}

.coyote-cashbox-form input,
.coyote-cashbox-form select,
.coyote-cashbox-form textarea {
    box-sizing: border-box;
    width: 100%;
    min-height: 40px;
    margin: 0;
    border-color: #d9cfbf;
    border-radius: 6px;
}

.coyote-cashbox-form textarea {
    min-height: 40px;
    resize: vertical;
}

.coyote-cashbox-form > .button {
    min-height: 40px;
    margin: 0;
    border-radius: 6px;
    font-weight: 850;
}

.coyote-cashbox-foot {
    display: flex;
    align-items: center;
    gap: 7px;
    margin: 11px 0 0;
    color: #756f66;
    font-size: 12px;
}

@media (max-width: 1180px) {
    .coyote-cashbox-summary {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .coyote-cashbox-forms {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 782px) {
    .coyote-cashier-actions {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .coyote-cashier-actions a,
    .coyote-cashier-actions button {
        width: 100%;
        min-height: 46px;
    }

    .coyote-cashbox-head {
        align-items: stretch;
        flex-direction: column;
    }

    .coyote-cashbox-status {
        align-self: flex-start;
    }

    .coyote-cashbox-form,
    .coyote-cashbox-form.is-close {
        grid-template-columns: 1fr;
    }

    .coyote-cashbox-form > .button {
        width: 100%;
        min-height: 46px;
    }
}

@media (max-width: 480px) {
    .coyote-cashbox-summary {
        grid-template-columns: 1fr 1fr;
        gap: 7px;
    }

    .coyote-cashbox-summary article {
        min-height: 88px;
        padding: 11px;
    }

    .coyote-cashbox-summary strong {
        font-size: 20px;
    }
}

/* Customer cleanup and destructive actions */
.coyote-table-scroll,
.coyote-customer-cleanup-table-wrap {
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

.coyote-delete-cost.button {
    display: inline-flex;
    min-height: 34px;
    align-items: center;
    gap: 5px;
    justify-content: center;
    margin: 0;
    padding: 0 10px;
    border-color: #d8a39e;
    border-radius: 6px;
    background: #fff7f6;
    color: #a62e26;
    font-weight: 800;
}

.coyote-delete-cost.button:hover,
.coyote-delete-cost.button:focus {
    border-color: #a62e26;
    background: #a62e26;
    color: #fff;
}

.coyote-delete-cost .dashicons {
    width: 16px;
    height: 16px;
    font-size: 16px;
}

.coyote-customer-cleanup-intro,
.coyote-customer-cleanup-filter,
.coyote-customer-cleanup-confirm {
    margin: 16px 20px 0;
    border: 1px solid #e2d8c8;
    border-radius: 7px;
    background: #fbfaf8;
}

.coyote-customer-cleanup-intro {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    padding: 14px 16px;
}

.coyote-customer-cleanup-intro strong,
.coyote-customer-cleanup-intro p {
    display: block;
    margin: 0;
}

.coyote-customer-cleanup-intro p {
    max-width: 820px;
    margin-top: 4px;
    color: #655f57;
}

.coyote-customer-cleanup-intro > span {
    flex: 0 0 auto;
    padding: 7px 10px;
    border-radius: 5px;
    background: #f3eadb;
    color: #73591e;
    font-size: 12px;
    font-weight: 800;
}

.coyote-customer-cleanup-filter {
    display: grid;
    grid-template-columns: minmax(230px, .55fr) minmax(300px, 1fr) auto;
    align-items: end;
    gap: 10px;
    padding: 14px;
}

.coyote-customer-cleanup-filter label,
.coyote-customer-cleanup-confirm label {
    display: grid;
    gap: 6px;
    color: #3f3932;
    font-weight: 800;
}

.coyote-customer-cleanup-filter input,
.coyote-customer-cleanup-confirm input[type="text"],
.coyote-customer-cleanup-confirm input[type="password"] {
    width: 100%;
    min-height: 42px;
    margin: 0;
    border-color: #d8cdbd;
    border-radius: 5px;
}

.coyote-customer-cleanup-filter .button {
    min-height: 42px;
    margin: 0;
    padding: 0 18px;
    border-color: #caa342;
    background: #d2aa46;
    color: #111;
    font-weight: 900;
}

.coyote-customer-cleanup-metrics {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
    margin: 12px 20px;
}

.coyote-customer-cleanup-metrics article {
    min-width: 0;
    padding: 13px 14px;
    border: 1px solid #e2d8c8;
    border-radius: 7px;
    background: #fff;
}

.coyote-customer-cleanup-metrics span,
.coyote-customer-cleanup-metrics strong,
.coyote-customer-cleanup-metrics small {
    display: block;
}

.coyote-customer-cleanup-metrics span {
    color: #a77d1f;
    font-size: 10px;
    font-weight: 900;
}

.coyote-customer-cleanup-metrics strong {
    margin: 5px 0 2px;
    color: #161412;
    font-size: 24px;
}

.coyote-customer-cleanup-metrics small {
    color: #716b63;
}

.coyote-customer-cleanup-form {
    margin: 0 20px 20px;
}

.coyote-customer-cleanup-table {
    min-width: 900px;
    border-collapse: separate;
    border-spacing: 0;
    border: 1px solid #e1d6c7;
    border-radius: 7px;
    overflow: hidden;
}

.coyote-customer-cleanup-table th,
.coyote-customer-cleanup-table td {
    padding: 11px 12px;
    vertical-align: middle;
}

.coyote-customer-cleanup-table thead th {
    background: #faf4e9;
    color: #433a2f;
    font-size: 11px;
    text-transform: uppercase;
}

.coyote-customer-cleanup-table tbody tr:nth-child(even) td,
.coyote-customer-cleanup-table tbody tr:nth-child(even) th {
    background: #fbfaf8;
}

.coyote-customer-cleanup-table input[type="checkbox"] {
    width: 18px;
    height: 18px;
    margin: 0;
}

.coyote-customer-cleanup-confirm {
    display: grid;
    grid-template-columns: minmax(260px, 1fr) minmax(220px, .65fr) minmax(220px, .65fr);
    gap: 12px;
    align-items: end;
    padding: 15px;
    border-color: #e5b7b3;
    background: #fff8f7;
}

.coyote-customer-cleanup-confirm p {
    margin: 5px 0 0;
    color: #6e625d;
}

.coyote-customer-cleanup-confirm .coyote-access-check {
    grid-column: 1 / -1;
}

.coyote-customer-delete-button.button {
    grid-column: 1 / -1;
    display: inline-flex;
    min-height: 42px;
    align-items: center;
    justify-content: center;
    gap: 7px;
    border-color: #9f3028;
    background: #ad3930;
    color: #fff;
    font-weight: 900;
}

@media (max-width: 900px) {
    .coyote-customer-cleanup-intro {
        align-items: flex-start;
        flex-direction: column;
        gap: 10px;
    }

    .coyote-customer-cleanup-filter,
    .coyote-customer-cleanup-confirm {
        grid-template-columns: 1fr;
    }

    .coyote-customer-cleanup-confirm .coyote-access-check,
    .coyote-customer-delete-button.button {
        grid-column: auto;
    }
}

@media (max-width: 600px) {
    .coyote-customer-cleanup-intro,
    .coyote-customer-cleanup-filter,
    .coyote-customer-cleanup-confirm,
    .coyote-customer-cleanup-form {
        margin-right: 12px;
        margin-left: 12px;
    }

    .coyote-customer-cleanup-metrics {
        grid-template-columns: 1fr;
        margin-right: 12px;
        margin-left: 12px;
    }
}

/* Portal del barbero */
.coyote-barber-portal-wrap {
    --portal-black: #11110f;
    --portal-ink: #1b1a17;
    --portal-gold: #d1a642;
    --portal-gold-dark: #a77d1e;
    --portal-paper: #f5f0e7;
    --portal-line: #dfd3c1;
    width: 100%;
    max-width: 1280px;
    margin: 28px auto;
    color: var(--portal-ink);
    font-family: "Trebuchet MS", "Segoe UI", sans-serif;
    letter-spacing: 0;
}

.coyote-barber-admin {
    margin: 0 20px 0 0;
}

.coyote-barber-admin .coyote-barber-portal-wrap {
    max-width: none;
}

.coyote-portal-login {
    max-width: 460px;
    margin: 80px auto;
    padding: 32px;
    border: 1px solid var(--portal-line);
    border-top: 5px solid var(--portal-gold);
    background: #fff;
    box-shadow: 0 22px 60px rgba(25, 20, 12, 0.12);
}

.coyote-portal-login h1,
.coyote-portal-login p {
    margin: 8px 0 18px;
}

.coyote-portal-login label {
    display: block;
    margin: 0 0 12px;
    font-weight: 800;
}

.coyote-portal-login input[type="text"],
.coyote-portal-login input[type="password"] {
    width: 100%;
    min-height: 46px;
    margin-top: 5px;
    border: 1px solid var(--portal-line);
    border-radius: 6px;
}

.coyote-portal-login .button-primary {
    min-height: 44px;
    padding: 0 22px;
    border-color: var(--portal-gold-dark);
    background: var(--portal-gold);
    color: #111;
    font-weight: 900;
}

.coyote-portal-notice {
    margin-bottom: 12px;
    padding: 12px 16px;
    border-left: 4px solid var(--portal-gold);
    background: #fff8df;
    font-weight: 800;
}

.coyote-portal-header {
    display: grid;
    grid-template-columns: 150px minmax(0, 1fr) auto;
    gap: 24px;
    align-items: center;
    min-height: 164px;
    padding: 26px 30px;
    border-radius: 8px 8px 0 0;
    background: var(--portal-black);
    color: #fff;
}

.coyote-portal-logo {
    display: block;
    width: 136px;
    max-height: 90px;
    object-fit: contain;
}

.coyote-portal-kicker,
.coyote-portal-section-head > div > span,
.coyote-shift-copy > span,
.coyote-manager-header span {
    display: block;
    color: var(--portal-gold);
    font-size: 11px;
    font-weight: 900;
    letter-spacing: 0;
    text-transform: uppercase;
}

.coyote-portal-welcome h1 {
    margin: 5px 0 3px;
    color: #fff;
    font-size: 31px;
    line-height: 1.1;
    letter-spacing: 0;
}

.coyote-portal-welcome p {
    margin: 0;
    color: rgba(255, 255, 255, 0.68);
    text-transform: capitalize;
}

.coyote-portal-header-actions {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 8px;
    max-width: 330px;
}

.coyote-portal-button,
.coyote-portal-logout {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 42px;
    padding: 0 16px;
    border: 1px solid rgba(255, 255, 255, 0.22);
    border-radius: 5px;
    color: #fff !important;
    font-weight: 900;
    text-decoration: none !important;
}

.coyote-portal-button.is-gold {
    border-color: var(--portal-gold);
    background: var(--portal-gold);
    color: #111 !important;
}

.coyote-portal-button:hover,
.coyote-portal-logout:hover {
    border-color: var(--portal-gold);
}

.coyote-portal-logout {
    min-height: 32px;
    border: 0;
    color: rgba(255, 255, 255, 0.62) !important;
    font-size: 12px;
}

.coyote-shift-band {
    display: flex;
    justify-content: space-between;
    gap: 20px;
    align-items: center;
    padding: 19px 24px;
    border: 1px solid var(--portal-gold);
    border-top: 0;
    background: #fff8e8;
}

.coyote-shift-copy strong,
.coyote-shift-copy small {
    display: block;
}

.coyote-shift-copy strong {
    margin: 3px 0;
    font-size: 22px;
}

.coyote-shift-copy small {
    color: #6e6558;
}

.coyote-shift-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    justify-content: flex-end;
}

.coyote-shift-actions form {
    margin: 0;
}

.coyote-shift-button {
    min-height: 42px;
    padding: 0 17px;
    border: 1px solid #111;
    border-radius: 5px;
    background: #fff;
    color: #111;
    cursor: pointer;
    font-weight: 900;
}

.coyote-shift-button.is-primary {
    border-color: var(--portal-gold-dark);
    background: var(--portal-gold);
}

.coyote-shift-button.is-danger {
    border-color: #1d1c19;
    background: #1d1c19;
    color: #fff;
}

.coyote-shift-complete {
    padding: 10px 14px;
    border: 1px solid #a8c4a6;
    border-radius: 5px;
    background: #eff8ee;
    color: #295528;
    font-weight: 900;
}

.coyote-portal-metrics {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    border-right: 1px solid var(--portal-line);
    border-bottom: 1px solid var(--portal-line);
    background: #fff;
}

.coyote-portal-metrics article {
    min-height: 116px;
    padding: 20px 22px;
    border-left: 1px solid var(--portal-line);
}

.coyote-portal-metrics span,
.coyote-portal-metrics strong,
.coyote-portal-metrics small {
    display: block;
}

.coyote-portal-metrics span {
    color: #756b5e;
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
}

.coyote-portal-metrics strong {
    margin: 5px 0 2px;
    font-size: 28px;
    line-height: 1;
}

.coyote-portal-metrics small {
    color: #756b5e;
}

.coyote-portal-columns {
    display: grid;
    grid-template-columns: minmax(0, 1.08fr) minmax(0, 0.92fr);
    gap: 14px;
    margin-top: 14px;
}

.coyote-portal-section {
    padding: 20px;
    border: 1px solid var(--portal-line);
    border-radius: 7px;
    background: #fff;
}

.coyote-portal-section-head {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    align-items: flex-end;
    margin-bottom: 14px;
    padding-bottom: 12px;
    border-bottom: 1px solid #eee5d8;
}

.coyote-portal-section-head h2 {
    margin: 3px 0 0;
    font-size: 21px;
    letter-spacing: 0;
}

.coyote-portal-section-head a {
    color: #7c5810;
    font-weight: 900;
}

.coyote-portal-section-head small {
    color: #736b60;
}

.coyote-appointment-stack,
.coyote-commission-stack {
    display: grid;
    gap: 0;
}

.coyote-appointment-row {
    display: grid;
    grid-template-columns: 74px minmax(0, 1fr) auto;
    gap: 12px;
    align-items: center;
    min-height: 68px;
    padding: 10px 0;
    border-top: 1px solid #eee5d8;
}

.coyote-appointment-row:first-child,
.coyote-commission-stack article:first-child {
    border-top: 0;
}

.coyote-appointment-row time strong,
.coyote-appointment-row time span,
.coyote-appointment-row div strong,
.coyote-appointment-row div span,
.coyote-commission-stack article div strong,
.coyote-commission-stack article div span {
    display: block;
}

.coyote-appointment-row time strong {
    font-size: 15px;
}

.coyote-appointment-row time span,
.coyote-appointment-row div span,
.coyote-commission-stack article div span {
    margin-top: 2px;
    color: #786f64;
    font-size: 12px;
}

.coyote-appointment-row > b {
    padding: 5px 8px;
    border-radius: 4px;
    background: #f1eadf;
    font-size: 11px;
}

.coyote-commission-stack article {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    align-items: center;
    min-height: 58px;
    padding: 9px 0;
    border-top: 1px solid #eee5d8;
}

.coyote-commission-stack article > b {
    color: #8b6414;
    font-size: 16px;
}

.coyote-portal-empty {
    display: grid;
    gap: 4px;
    min-height: 120px;
    place-content: center;
    text-align: center;
}

.coyote-portal-empty span {
    color: #786f64;
}

.coyote-portal-guide {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 18px;
    margin-top: 14px;
    padding: 14px 18px;
    border-left: 5px solid var(--portal-gold);
    background: var(--portal-black);
    color: rgba(255, 255, 255, 0.7);
    font-size: 12px;
}

.coyote-portal-guide strong {
    color: #fff;
}

/* Asistencia para manager */
.coyote-attendance-manager {
    max-width: none;
    margin-right: 20px;
}

.coyote-manager-header {
    display: flex;
    justify-content: space-between;
    gap: 18px;
    align-items: center;
    padding: 24px 26px;
    border-left: 6px solid #d1a642;
    background: #11110f;
    color: #fff;
}

.coyote-manager-header h1 {
    margin: 4px 0;
    color: #fff;
}

.coyote-manager-header p {
    margin: 0;
    color: rgba(255, 255, 255, 0.64);
}

.coyote-attendance-summary {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    border-right: 1px solid #ded4c6;
    border-bottom: 1px solid #ded4c6;
}

.coyote-attendance-summary article {
    padding: 17px 20px;
    border-left: 1px solid #ded4c6;
    background: #fff;
}

.coyote-attendance-summary span,
.coyote-attendance-summary strong {
    display: block;
}

.coyote-attendance-summary span {
    color: #6d655b;
    font-size: 12px;
    font-weight: 800;
}

.coyote-attendance-summary strong {
    margin-top: 3px;
    font-size: 25px;
}

.coyote-attendance-filter {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    align-items: end;
    margin: 14px 0;
    padding: 14px;
    border: 1px solid #ded4c6;
    background: #fff;
}

.coyote-attendance-filter label {
    display: grid;
    gap: 4px;
    font-weight: 800;
}

.coyote-attendance-filter input {
    min-height: 38px;
}

.coyote-attendance-table-wrap {
    overflow-x: auto;
    border: 1px solid #ded4c6;
    background: #fff;
}

.coyote-attendance-table {
    border: 0;
    box-shadow: none;
}

.coyote-attendance-table th,
.coyote-attendance-table td {
    padding: 13px 12px;
    vertical-align: middle;
}

.coyote-attendance-status {
    display: inline-flex;
    padding: 5px 9px;
    border-radius: 4px;
    background: #f0eadf;
    font-size: 11px;
    font-weight: 900;
}

.coyote-attendance-status.is-active {
    background: #e8f6e8;
    color: #256025;
}

.coyote-attendance-status.is-break {
    background: #fff2d6;
    color: #7a5610;
}

.coyote-attendance-status.is-completed {
    background: #e9edf1;
    color: #4b5560;
}

@media (max-width: 900px) {
    .coyote-barber-portal-wrap {
        margin: 14px auto;
    }

    .coyote-portal-header {
        grid-template-columns: 100px minmax(0, 1fr);
        padding: 22px;
    }

    .coyote-portal-logo {
        width: 94px;
    }

    .coyote-portal-header-actions {
        grid-column: 1 / -1;
        max-width: none;
        justify-content: flex-start;
    }

    .coyote-portal-metrics,
    .coyote-attendance-summary {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .coyote-portal-columns {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 640px) {
    .coyote-barber-portal-wrap {
        width: 100%;
        margin: 0;
    }

    .coyote-barber-admin {
        margin-right: 10px;
    }

    .coyote-portal-header {
        grid-template-columns: 72px minmax(0, 1fr);
        gap: 13px;
        border-radius: 0;
    }

    .coyote-portal-logo {
        width: 68px;
    }

    .coyote-portal-welcome h1 {
        font-size: 24px;
    }

    .coyote-portal-header-actions,
    .coyote-shift-actions {
        display: grid;
        grid-template-columns: 1fr 1fr;
        width: 100%;
    }

    .coyote-portal-button,
    .coyote-portal-logout,
    .coyote-shift-actions form,
    .coyote-shift-button {
        width: 100%;
    }

    .coyote-portal-logout {
        grid-column: 1 / -1;
    }

    .coyote-shift-band {
        align-items: flex-start;
        flex-direction: column;
    }

    .coyote-portal-metrics,
    .coyote-attendance-summary {
        grid-template-columns: 1fr;
        border-right: 0;
    }

    .coyote-portal-metrics article,
    .coyote-attendance-summary article {
        min-height: 88px;
        border-right: 1px solid var(--portal-line);
    }

    .coyote-portal-section {
        padding: 16px;
        border-radius: 0;
    }

    .coyote-appointment-row {
        grid-template-columns: 62px minmax(0, 1fr);
    }

    .coyote-appointment-row > b {
        grid-column: 2;
        justify-self: start;
    }

    .coyote-manager-header {
        align-items: flex-start;
        flex-direction: column;
    }
}

/* Shared Coyote UI typography and control rhythm. */
.coyote-sales,
.coyote-products,
.coyote-costs-page,
.coyote-loyalty,
.coyote-attendance-manager,
.coyote-update-card {
    color: #1a1c1b;
    font-family: "Hanken Grotesk", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

.coyote-sales input,
.coyote-sales select,
.coyote-sales textarea,
.coyote-sales button,
.coyote-loyalty input,
.coyote-loyalty select,
.coyote-loyalty textarea,
.coyote-loyalty button,
.coyote-attendance-manager input,
.coyote-attendance-manager button {
    font-family: inherit;
}

.coyote-command-copy span,
.coyote-loyalty-kicker,
.coyote-manager-header > div > span {
    font-family: "JetBrains Mono", monospace;
}

/* Branch controls */
.wrap.coyote-branch {
    width: calc(100% - 34px);
    max-width: 1540px;
    margin: 24px auto 60px;
    color: #1a1c1b;
    font-family: "Hanken Grotesk", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

.coyote-branch * {
    box-sizing: border-box;
}

.coyote-branch-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    padding: 26px 28px;
    border: 1px solid #2d2d2d;
    border-radius: 8px;
    background: #111;
    color: #fff;
}

.coyote-branch-header span,
.coyote-branch-section-head span {
    color: #c9a341;
    font-family: "JetBrains Mono", monospace;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 1px;
}

.coyote-branch-header h1 {
    margin: 5px 0 3px;
    color: #fff;
    font-size: 30px;
    line-height: 1.15;
}

.coyote-branch-header p,
.coyote-branch-section-head p {
    margin: 0;
    color: #aaa59d;
}

.coyote-branch-header .button {
    min-height: 42px;
    padding: 5px 17px;
    border-color: #c9a341;
    background: #c9a341;
    color: #111;
    font-weight: 800;
}

.coyote-branch-notice {
    margin: 14px 0 0;
}

.coyote-branch-nav {
    display: flex;
    gap: 8px;
    margin: 14px 0;
}

.coyote-branch-nav a {
    display: inline-flex;
    align-items: center;
    min-height: 38px;
    padding: 0 14px;
    border: 1px solid #ded4c6;
    border-radius: 6px;
    background: #fff;
    color: #292722;
    font-weight: 800;
    text-decoration: none;
}

.coyote-branch-nav a:hover,
.coyote-branch-nav a:focus {
    border-color: #c9a341;
    color: #7e5e16;
}

.coyote-branch-section {
    margin: 0 0 16px;
    overflow: hidden;
    border: 1px solid #ded4c6;
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 12px 28px rgba(38, 30, 18, .05);
}

.coyote-branch-section-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 22px;
    padding: 22px 24px;
    border-bottom: 1px solid #eee8df;
}

.coyote-branch-section-head h2 {
    margin: 4px 0 4px;
    font-size: 22px;
}

.coyote-branch-count {
    flex: 0 0 auto;
    padding: 7px 10px;
    border-radius: 5px;
    background: #f5efe5;
    color: #72591e !important;
}

.coyote-service-price-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px;
    padding: 18px 24px 22px;
}

.coyote-service-price-grid > label {
    min-width: 0;
    padding: 14px;
    border: 1px solid #e5ddd1;
    border-radius: 7px;
    background: #fbfaf8;
}

.coyote-service-price-grid > label > span,
.coyote-service-price-grid > label > small {
    display: block;
}

.coyote-service-price-grid > label > span {
    overflow: hidden;
    font-size: 14px;
    font-weight: 800;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.coyote-service-price-grid > label > small {
    margin: 2px 0 10px;
    color: #77716a;
}

.coyote-service-price-grid > label > div {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    align-items: center;
    min-height: 42px;
    overflow: hidden;
    border: 1px solid #d8cdbd;
    border-radius: 6px;
    background: #fff;
}

.coyote-service-price-grid b {
    padding-left: 11px;
    color: #8a691d;
}

.coyote-service-price-grid input {
    width: 100%;
    min-height: 40px;
    border: 0;
    background: transparent;
    font-size: 16px;
    font-weight: 800;
    box-shadow: none;
}

.coyote-branch-actions {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    padding: 14px 24px;
    border-top: 1px solid #eee8df;
    background: #faf8f4;
}

.coyote-branch-actions p {
    margin: 0;
    color: #69635c;
}

.coyote-branch-actions .button {
    min-height: 42px;
    padding: 5px 16px;
    font-weight: 800;
}

.coyote-branch-actions .button-primary {
    border-color: #c9a341;
    background: #c9a341;
    color: #111;
}

.coyote-branch-image-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
    padding: 18px 24px 22px;
}

.coyote-image-control {
    display: grid;
    grid-template-columns: 118px minmax(0, 1fr);
    min-width: 0;
    overflow: hidden;
    border: 1px solid #e4dbce;
    border-radius: 7px;
    background: #fbfaf8;
}

.coyote-image-preview {
    min-height: 136px;
    background: #161616;
}

.coyote-image-preview img {
    display: block;
    width: 100%;
    height: 100%;
    min-height: 136px;
    object-fit: cover;
}

.coyote-image-control > div:last-child {
    min-width: 0;
    padding: 13px;
}

.coyote-image-control strong {
    display: block;
    font-size: 14px;
}

.coyote-image-control p {
    min-height: 34px;
    margin: 3px 0 9px;
    color: #77716a;
    font-size: 11px;
    line-height: 1.4;
}

.coyote-image-control input {
    width: 100%;
    min-height: 36px;
    margin-bottom: 7px;
    font-size: 11px;
}

.coyote-media-button {
    width: 100%;
    min-height: 34px;
}

.coyote-account-table-wrap {
    overflow-x: auto;
    padding: 18px 24px 0;
}

.coyote-account-table {
    border: 1px solid #e2d8ca;
    box-shadow: none;
}

.coyote-account-table th,
.coyote-account-table td {
    padding: 11px 12px;
    vertical-align: middle;
}

.coyote-account-table code {
    font-weight: 800;
}

.coyote-link-state {
    display: inline-flex;
    padding: 5px 8px;
    border-radius: 5px;
    font-size: 11px;
    font-weight: 800;
}

.coyote-link-state.is-linked {
    background: #e8f5ed;
    color: #1f6744;
}

.coyote-link-state.is-missing {
    background: #fff0ed;
    color: #963b31;
}

.coyote-temporary-access {
    display: grid;
    grid-template-columns: minmax(250px, .75fr) minmax(420px, 1.25fr);
    gap: 24px;
    margin: 18px 24px 24px;
    padding: 18px;
    border: 1px solid #e0c36f;
    border-radius: 7px;
    background: #fffaf0;
}

.coyote-temporary-access > div > strong {
    font-size: 17px;
}

.coyote-temporary-access > div > p {
    margin: 6px 0 0;
    color: #6d6250;
    line-height: 1.5;
}

.coyote-temporary-access form {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}

.coyote-temporary-access label {
    font-weight: 800;
}

.coyote-temporary-access input[type="text"],
.coyote-temporary-access input[type="password"] {
    display: block;
    width: 100%;
    min-height: 40px;
    margin-top: 5px;
}

.coyote-access-check,
.coyote-temporary-access button {
    grid-column: 1 / -1;
}

.coyote-access-check {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    font-size: 12px;
}

.coyote-temporary-access button {
    min-height: 42px;
    font-weight: 800;
}

/* Employee password flow */
.coyote-password-details {
    margin-top: 14px;
    border: 1px solid #ddd8cf;
    border-radius: 8px;
    background: #fff;
}

.coyote-password-details > summary {
    display: flex;
    align-items: center;
    gap: 8px;
    min-height: 48px;
    padding: 0 16px;
    font-weight: 800;
    cursor: pointer;
}

.coyote-password-panel {
    padding: 18px;
    border-top: 1px solid #eee8df;
}

.coyote-password-panel.is-forced {
    padding: 0;
    border: 0;
}

.coyote-password-panel h2 {
    margin: 5px 0 5px;
    font-size: 25px;
    line-height: 1.2;
}

.coyote-password-panel p {
    margin: 0 0 16px;
    color: #68625a;
}

.coyote-password-panel form {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
}

.coyote-password-panel label {
    color: #37332d;
    font-size: 12px;
    font-weight: 800;
}

.coyote-password-panel input {
    display: block;
    width: 100%;
    min-height: 44px;
    margin-top: 5px;
    border: 1px solid #d8d0c4;
    border-radius: 6px;
    background: #faf9f7;
}

.coyote-password-panel button {
    grid-column: 1 / -1;
    min-height: 44px;
    border: 1px solid #c9a341;
    border-radius: 6px;
    background: #c9a341;
    color: #111;
    font-weight: 800;
    cursor: pointer;
}

.coyote-password-error {
    margin: 0 0 12px;
    padding: 9px 11px;
    border: 1px solid #e6bdb7;
    border-radius: 6px;
    background: #fff2ef;
    color: #8b3027;
    font-weight: 800;
}

@media (max-width: 1100px) {
    .coyote-service-price-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .coyote-branch-image-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 782px) {
    .wrap.coyote-branch {
        width: calc(100% - 20px);
        margin: 12px 10px 40px;
    }

    .coyote-branch-header,
    .coyote-branch-section-head,
    .coyote-branch-actions {
        align-items: stretch;
        flex-direction: column;
    }

    .coyote-branch-nav {
        overflow-x: auto;
        padding-bottom: 3px;
    }

    .coyote-branch-nav a {
        flex: 0 0 auto;
    }

    .coyote-service-price-grid,
    .coyote-branch-image-grid,
    .coyote-temporary-access,
    .coyote-temporary-access form,
    .coyote-password-panel form {
        grid-template-columns: 1fr;
    }

    .coyote-branch-section-head,
    .coyote-service-price-grid,
    .coyote-branch-image-grid,
    .coyote-account-table-wrap {
        padding-right: 14px;
        padding-left: 14px;
    }

    .coyote-image-control {
        grid-template-columns: 100px minmax(0, 1fr);
    }

    .coyote-temporary-access {
        margin: 14px;
    }
}

/* Branch workspace 2.11 */
.wrap.coyote-branch {
    max-width: 1480px;
}

.coyote-branch-header {
    min-height: 136px;
}

.coyote-branch-header-copy {
    min-width: 0;
}

.coyote-branch-header-actions {
    display: flex;
    flex: 0 0 auto;
    align-items: center;
    gap: 12px;
}

.coyote-branch-summary {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
    margin: 14px 0;
}

.coyote-branch-summary article {
    min-width: 0;
    padding: 16px 18px;
    border: 1px solid #ded4c6;
    border-radius: 7px;
    background: #fff;
}

.coyote-branch-summary span,
.coyote-branch-summary strong,
.coyote-branch-summary small {
    display: block;
}

.coyote-branch-summary span {
    color: #9a731d;
    font-family: "JetBrains Mono", monospace;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 1px;
}

.coyote-branch-summary strong {
    overflow: hidden;
    margin: 5px 0 2px;
    font-size: 23px;
    line-height: 1.15;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.coyote-branch-summary small {
    overflow: hidden;
    color: #716b63;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.coyote-branch-nav {
    position: sticky;
    z-index: 5;
    top: 32px;
    gap: 6px;
    overflow-x: auto;
    margin: 0 0 14px;
    padding: 7px;
    border: 1px solid #ded4c6;
    border-radius: 7px;
    background: rgba(255, 255, 255, .96);
    box-shadow: 0 8px 22px rgba(38, 30, 18, .06);
}

.coyote-branch-nav button {
    display: inline-flex;
    flex: 1 0 150px;
    min-height: 42px;
    align-items: center;
    justify-content: center;
    gap: 7px;
    padding: 0 13px;
    border: 1px solid transparent;
    border-radius: 5px;
    background: transparent;
    color: #34312c;
    font-weight: 800;
    cursor: pointer;
}

.coyote-branch-nav button span {
    color: #a77d1f;
    font-family: "JetBrains Mono", monospace;
    font-size: 10px;
}

.coyote-branch-nav button b {
    display: inline-flex;
    min-width: 23px;
    height: 23px;
    align-items: center;
    justify-content: center;
    border-radius: 4px;
    background: #f2eadc;
    font-size: 11px;
}

.coyote-branch-nav button:hover,
.coyote-branch-nav button:focus-visible {
    border-color: #d8cdbd;
    outline: 0;
}

.coyote-branch-nav button.is-active {
    border-color: #111;
    background: #111;
    color: #fff;
}

.coyote-branch-nav button.is-active span {
    color: #d9b34e;
}

.coyote-branch-nav button.is-active b {
    background: #d2aa46;
    color: #111;
}

.coyote-branch [data-branch-panel][hidden] {
    display: none !important;
}

.coyote-branch-count.is-enabled {
    border-color: #91c9a8;
    background: #eaf7ef;
    color: #17633a;
}

.coyote-api-key-reveal {
    display: grid;
    grid-template-columns: minmax(220px, .7fr) minmax(300px, 1.3fr);
    gap: 18px;
    align-items: center;
    margin: 18px 20px 0;
    padding: 18px;
    border: 1px solid #c9a341;
    border-radius: 6px;
    background: #fff8e8;
}

.coyote-api-key-reveal span,
.coyote-api-card > div > span,
.coyote-api-log > div > span {
    display: block;
    margin-bottom: 5px;
    color: #9a7015;
    font-family: "JetBrains Mono", monospace;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 0;
}

.coyote-api-key-reveal input,
.coyote-api-endpoints input {
    width: 100%;
    min-height: 42px;
    font-family: "JetBrains Mono", monospace;
}

.coyote-api-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 230px;
    gap: 16px;
    padding: 20px;
}

.coyote-api-main {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
}

.coyote-api-card,
.coyote-api-actions,
.coyote-api-log {
    border: 1px solid #e0d6c8;
    border-radius: 6px;
    background: #fff;
}

.coyote-api-card {
    padding: 18px;
}

.coyote-api-card h3,
.coyote-api-log h3 {
    margin: 0;
    font-size: 18px;
}

.coyote-api-card dl {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
}

.coyote-api-card dl div {
    padding: 10px;
    border-radius: 5px;
    background: #f8f4ed;
}

.coyote-api-card dt {
    color: #6d655a;
    font-size: 11px;
    font-weight: 800;
    text-transform: uppercase;
}

.coyote-api-card dd {
    margin: 4px 0 0;
}

.coyote-api-toggle-form {
    display: grid;
    gap: 12px;
    margin-top: 16px;
}

.coyote-api-toggle-form .button {
    justify-self: start;
}

.coyote-api-endpoints {
    display: grid;
    gap: 11px;
    margin-top: 14px;
}

.coyote-api-endpoints label {
    display: grid;
    gap: 5px;
    font-weight: 700;
}

.coyote-api-actions {
    display: flex;
    flex-direction: column;
    gap: 14px;
    padding: 18px;
    background: #f8f4ed;
}

.coyote-api-actions form {
    display: grid;
    gap: 8px;
}

.coyote-api-actions .button {
    width: 100%;
    min-height: 42px;
    justify-content: center;
}

.coyote-api-actions small {
    color: #716b63;
    line-height: 1.4;
}

.coyote-api-revoke {
    border-color: #b8423a !important;
    color: #9b2c25 !important;
}

.coyote-api-log {
    margin: 0 20px 20px;
    overflow: hidden;
}

.coyote-api-log > div:first-child {
    padding: 16px 18px;
    border-bottom: 1px solid #e0d6c8;
}

@media (max-width: 1100px) {
    .coyote-api-layout,
    .coyote-api-key-reveal {
        grid-template-columns: 1fr;
    }

    .coyote-api-actions {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 782px) {
    .coyote-api-main,
    .coyote-api-actions,
    .coyote-api-card dl {
        grid-template-columns: 1fr;
    }

    .coyote-api-layout {
        padding: 14px;
    }

    .coyote-api-key-reveal,
    .coyote-api-log {
        margin-right: 14px;
        margin-left: 14px;
    }

    .coyote-api-log .coyote-account-table-wrap {
        overflow-x: auto;
    }
}

.coyote-branch-inline-alert {
    display: flex;
    align-items: center;
    gap: 12px;
    margin: 14px 20px 0;
    padding: 11px 13px;
    border: 1px solid #e5c15e;
    border-radius: 6px;
    background: #fff8e6;
}

.coyote-branch-inline-alert strong {
    flex: 0 0 auto;
}

.coyote-branch-inline-alert span {
    color: #665b49;
}

.coyote-service-price-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
    padding: 18px 20px;
}

.coyote-duration-rule {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin: 16px 20px 0;
    padding: 12px 14px;
    border: 1px solid #e1d3ba;
    border-radius: 6px;
    background: #fff9ec;
}

.coyote-duration-rule strong,
.coyote-duration-rule span {
    display: block;
}

.coyote-duration-rule strong {
    color: #25211c;
}

.coyote-duration-rule span {
    margin-top: 2px;
    color: #665b49;
}

.coyote-duration-rule .button {
    flex: 0 0 auto;
    min-height: 38px;
}

.coyote-service-price-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(250px, .9fr);
    min-width: 0;
    align-items: center;
    gap: 14px;
    padding: 11px 12px;
    border: 1px solid #e4dbce;
    border-radius: 6px;
    background: #fbfaf8;
}

.coyote-service-price-row > span:first-child {
    min-width: 0;
}

.coyote-service-price-row strong,
.coyote-service-price-row small {
    display: block;
}

.coyote-service-price-row strong {
    overflow: hidden;
    color: #26231f;
    font-size: 14px;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.coyote-service-price-row small {
    margin-top: 2px;
    color: #756f67;
}

.coyote-service-controls {
    display: grid;
    grid-template-columns: minmax(108px, .75fr) minmax(125px, 1fr);
    gap: 8px;
}

.coyote-duration-input {
    display: grid;
    grid-template-columns: 1fr;
    min-width: 0;
}

.coyote-duration-input > span {
    overflow: hidden;
    width: 1px;
    height: 1px;
    position: absolute;
    white-space: nowrap;
    clip-path: inset(50%);
}

.coyote-duration-input select {
    width: 100%;
    min-height: 42px;
    margin: 0;
    border-color: #d8cdbd;
    border-radius: 5px;
    background-color: #fff;
    font-weight: 700;
}

.coyote-money-input {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    align-items: center;
    overflow: hidden;
    border: 1px solid #d8cdbd;
    border-radius: 5px;
    background: #fff;
}

.coyote-money-input b {
    padding-left: 11px;
    color: #8a691d;
}

.coyote-money-input input {
    width: 100%;
    min-height: 40px;
    border: 0;
    background: transparent;
    font-size: 16px;
    font-weight: 800;
    box-shadow: none;
}

.coyote-location-editor {
    display: grid;
    grid-template-columns: minmax(0, 1.15fr) minmax(380px, .85fr);
    gap: 18px;
    padding: 18px 20px 22px;
}

.coyote-location-fields {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-content: start;
    gap: 12px;
}

.coyote-location-fields label {
    min-width: 0;
    color: #37332d;
    font-size: 12px;
    font-weight: 800;
}

.coyote-location-fields label.is-wide {
    grid-column: 1 / -1;
}

.coyote-location-fields input {
    display: block;
    width: 100%;
    min-height: 43px;
    margin-top: 5px;
    border: 1px solid #d8d0c4;
    border-radius: 5px;
    background: #fff;
}

.coyote-location-fields small {
    display: block;
    margin-top: 4px;
    color: #77716a;
    font-weight: 500;
}

.coyote-capture-branch-location {
    min-height: 42px !important;
    font-weight: 800 !important;
}

.coyote-branch-location-status {
    align-self: center;
    color: #635d55;
    font-size: 12px;
}

.coyote-map-preview {
    display: grid;
    min-width: 0;
    overflow: hidden;
    border: 1px solid #ded4c6;
    border-radius: 7px;
    background: #111;
    color: #fff;
}

.coyote-map-preview > div {
    display: grid;
    gap: 3px;
    padding: 13px 15px;
}

.coyote-map-preview > div span {
    color: #d2aa46;
    font-family: "JetBrains Mono", monospace;
    font-size: 10px;
    font-weight: 800;
}

.coyote-map-preview > div small {
    overflow: hidden;
    color: #c5c0b7;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.coyote-map-preview iframe {
    display: block;
    width: 100%;
    min-height: 330px;
    border: 0;
    background: #fff;
}

.coyote-map-preview > a {
    display: flex;
    min-height: 43px;
    align-items: center;
    justify-content: center;
    border-top: 1px solid #333;
    color: #e2bd5c;
    font-weight: 800;
    text-decoration: none;
}

.coyote-map-preview > a:hover,
.coyote-map-preview > a:focus {
    color: #fff;
}

.coyote-rule-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px;
    padding: 18px 20px;
}

.coyote-rule-grid > label,
.coyote-rule-grid > .coyote-rule-card {
    display: grid;
    min-width: 0;
    align-content: start;
    gap: 6px;
    padding: 14px;
    border: 1px solid #ded4c6;
    border-radius: 7px;
    background: #fbfaf8;
    color: #37332d;
    font-size: 12px;
    font-weight: 800;
}

.coyote-rule-grid input {
    width: 100%;
    min-height: 44px;
    margin: 0;
    border: 1px solid #d8cdbd;
    border-radius: 5px;
    background: #fff;
    font-size: 17px;
    font-weight: 850;
}

.coyote-rule-grid small {
    color: #77716a;
    font-weight: 500;
    line-height: 1.4;
}

.coyote-rule-suffix {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    overflow: hidden;
    border: 1px solid #d8cdbd;
    border-radius: 5px;
    background: #fff;
}

.coyote-rule-suffix input {
    border: 0;
    border-radius: 0;
    box-shadow: none;
}

.coyote-rule-suffix b {
    padding: 0 12px;
    color: #8a691d;
}

.coyote-loyalty-service-rules {
    margin: 0;
    padding: 0 20px 18px;
    border: 0;
}

.coyote-loyalty-service-rules legend {
    padding: 0;
    color: #171717;
    font-size: 18px;
    font-weight: 850;
}

.coyote-loyalty-service-rules > p {
    margin: 4px 0 12px;
    color: #716b63;
}

.coyote-rule-service-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px;
}

.coyote-rule-service-grid label {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    min-width: 0;
    align-items: center;
    gap: 9px;
    min-height: 54px;
    padding: 9px 11px;
    border: 1px solid #ded4c6;
    border-radius: 6px;
    background: #fff;
    cursor: pointer;
}

.coyote-rule-service-grid label:has(input:checked) {
    border-color: #c79b31;
    background: #fff8e6;
}

.coyote-rule-service-grid input {
    width: 18px;
    height: 18px;
    margin: 0;
}

.coyote-rule-service-grid strong,
.coyote-rule-service-grid small {
    display: block;
}

.coyote-rule-service-grid strong {
    overflow: hidden;
    color: #26231f;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.coyote-rule-service-grid small {
    margin-top: 2px;
    color: #77716a;
}

@media (max-width: 1100px) {
    .coyote-location-editor {
        grid-template-columns: 1fr;
    }

    .coyote-rule-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .coyote-rule-service-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .coyote-map-preview iframe {
        min-height: 360px;
    }
}

@media (max-width: 900px) {
    .coyote-branch-summary,
    .coyote-service-price-list {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 782px) {
    .coyote-branch-header {
        min-height: 0;
        padding: 20px;
    }

    .coyote-branch-header-actions {
        align-items: stretch;
        flex-direction: column;
    }

    .coyote-branch-summary {
        gap: 8px;
    }

    .coyote-branch-nav {
        top: 46px;
    }

    .coyote-branch-nav button {
        flex: 0 0 145px;
    }

    .coyote-branch-inline-alert {
        align-items: flex-start;
        flex-direction: column;
        margin-right: 14px;
        margin-left: 14px;
    }

    .coyote-duration-rule {
        align-items: stretch;
        flex-direction: column;
        margin-right: 14px;
        margin-left: 14px;
    }

    .coyote-service-price-list,
    .coyote-location-editor,
    .coyote-rule-grid,
    .coyote-loyalty-service-rules {
        padding-right: 14px;
        padding-left: 14px;
    }

    .coyote-service-price-row {
        grid-template-columns: minmax(0, 1fr) minmax(232px, .9fr);
    }

    .coyote-location-fields {
        grid-template-columns: 1fr;
    }

    .coyote-location-fields label.is-wide {
        grid-column: auto;
    }

    .coyote-map-preview iframe {
        min-height: 280px;
    }
}

@media (max-width: 520px) {
    .coyote-rule-grid,
    .coyote-rule-service-grid {
        grid-template-columns: 1fr;
    }

    .coyote-service-price-row {
        grid-template-columns: 1fr;
        gap: 8px;
    }

    .coyote-service-controls {
        grid-template-columns: minmax(110px, .75fr) minmax(125px, 1fr);
    }

    .coyote-service-price-row strong {
        white-space: normal;
    }
}

/* Branch workspace 2.13.1 */
.wrap.coyote-branch {
    width: calc(100% - 32px);
    margin-top: 18px;
}

.coyote-branch-header {
    min-height: 0;
    padding: 22px 24px;
}

.coyote-branch-header-copy {
    max-width: 720px;
}

.coyote-branch-header-actions {
    max-width: 420px;
}

.coyote-branch-header-actions > span {
    line-height: 1.4;
    text-align: right;
}

.coyote-branch > .notice {
    margin: 0 0 12px;
    border-radius: 6px;
}

.coyote-branch-header-copy > .notice,
.coyote-branch-header > .notice {
    width: 100%;
    margin: 12px 0 0;
    color: #27231e;
}

.coyote-branch-summary strong,
.coyote-branch-summary small {
    overflow: visible;
    text-overflow: clip;
    white-space: normal;
}

.coyote-branch-summary strong {
    overflow-wrap: anywhere;
}

.coyote-duration-rule > div {
    min-width: 0;
}

.coyote-duration-rule strong {
    margin-bottom: 3px;
    font-size: 14px;
    line-height: 1.3;
}

.coyote-duration-rule span {
    margin: 0;
    line-height: 1.45;
}

.coyote-branch-section,
.coyote-branch-summary article,
.coyote-duration-rule,
.coyote-location-editor,
.coyote-rule-grid > label,
.coyote-rule-grid > .coyote-rule-card,
.coyote-loyalty-service-rules {
    box-shadow: none;
}

.coyote-map-preview > a {
    display: flex;
    min-height: 42px;
    align-items: center;
    justify-content: center;
    padding: 8px 14px;
    border: 1px solid #c9a341;
    border-radius: 5px;
    background: #fff8e8;
    color: #6d5113;
    font-weight: 800;
    text-decoration: none;
}

.coyote-map-preview > a:hover,
.coyote-map-preview > a:focus-visible {
    background: #c9a341;
    color: #111;
}

@media (max-width: 960px) {
    .coyote-branch-header {
        align-items: flex-start;
        flex-direction: column;
    }

    .coyote-branch-header-actions {
        width: 100%;
        max-width: none;
        justify-content: space-between;
    }

    .coyote-branch-header-actions > span {
        text-align: left;
    }
}

@media (max-width: 782px) {
    .wrap.coyote-branch {
        width: auto;
        margin: 12px 10px 40px 0;
    }

    .coyote-branch-header {
        padding: 18px;
    }

    .coyote-branch-header h1 {
        font-size: 25px;
    }

    .coyote-branch-header-actions {
        gap: 8px;
    }
}

/* Branch workspace 2.13.3 */
.coyote-branch-summary {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.coyote-branch-header .notice {
    width: 100%;
    max-width: 720px;
    margin: 10px 0 0;
    color: #27231e;
}

@media (max-width: 1180px) {
    .coyote-branch-summary {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 782px) {
    .coyote-branch-summary {
        grid-template-columns: 1fr;
    }
}

/* Branch communications 2.14.0 */
.coyote-communications-layout {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
    padding: 18px 20px 14px;
}

.coyote-communication-card {
    min-width: 0;
    overflow: hidden;
    border: 1px solid #ded4c6;
    border-radius: 7px;
    background: #fbfaf8;
}

.coyote-communication-card-head {
    padding: 16px 17px 13px;
    border-bottom: 1px solid #e7dfd3;
    background: #fff;
}

.coyote-communication-card-head > span,
.coyote-employee-notifications-head > div > span {
    color: #a87d19;
    font-family: "JetBrains Mono", monospace;
    font-size: 10px;
    font-weight: 850;
    letter-spacing: 0;
}

.coyote-communication-card-head h3,
.coyote-employee-notifications-head h3 {
    margin: 4px 0 3px;
    color: #171717;
    font-size: 18px;
    line-height: 1.25;
}

.coyote-communication-card-head p,
.coyote-employee-notifications-head p {
    margin: 0;
    color: #716b63;
    line-height: 1.45;
}

.coyote-communication-fields {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
    padding: 16px 17px;
}

.coyote-communication-fields > label {
    display: grid;
    min-width: 0;
    align-content: start;
    gap: 5px;
    color: #37332d;
    font-size: 12px;
    font-weight: 800;
}

.coyote-communication-fields > label.is-wide {
    grid-column: 1 / -1;
}

.coyote-communication-fields input:not([type="checkbox"]),
.coyote-communication-fields select,
.coyote-communication-fields textarea {
    width: 100%;
    min-height: 43px;
    margin: 0;
    border: 1px solid #d8d0c4;
    border-radius: 5px;
    background: #fff;
}

.coyote-communication-fields textarea {
    min-height: 86px;
    resize: vertical;
}

.coyote-communication-fields small {
    color: #77716a;
    font-weight: 500;
    line-height: 1.4;
}

.coyote-switch-row {
    grid-template-columns: auto minmax(0, 1fr);
    align-items: start;
    gap: 10px !important;
    min-height: 58px;
    padding: 10px 12px;
    border: 1px solid #dfd5c7;
    border-radius: 6px;
    background: #fff;
    cursor: pointer;
}

.coyote-switch-row input[type="checkbox"] {
    width: 18px;
    height: 18px;
    margin: 2px 0 0;
}

.wrap.coyote-branch .coyote-rule-grid .coyote-switch-row input[type="checkbox"] {
    width: 18px;
    height: 18px;
    min-height: 18px;
    margin: 2px 0 0;
}

.coyote-switch-row strong,
.coyote-switch-row small {
    display: block;
}

.coyote-switch-row small {
    margin-top: 2px;
}

.wrap.coyote-branch .coyote-product-commission-rule .coyote-switch-row {
    grid-template-columns: 42px minmax(0, 1fr);
    align-items: center;
    gap: 12px !important;
}

.wrap.coyote-branch .coyote-product-commission-rule input[type="checkbox"] {
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
}

.wrap.coyote-branch .coyote-product-commission-rule .coyote-toggle-track {
    position: relative;
    display: block;
    width: 40px;
    height: 22px;
    border: 1px solid #b9b1a5;
    border-radius: 999px;
    background: #d9d4cc;
    transition: border-color .16s ease, background .16s ease;
}

.wrap.coyote-branch .coyote-product-commission-rule .coyote-toggle-track::after {
    position: absolute;
    top: 2px;
    left: 2px;
    width: 16px;
    height: 16px;
    border-radius: 50%;
    background: #fff;
    box-shadow: 0 1px 3px rgba(0, 0, 0, .24);
    content: "";
    transition: transform .16s ease;
}

.wrap.coyote-branch .coyote-product-commission-rule input:checked + .coyote-toggle-track {
    border-color: #a77c17;
    background: #c9a24a;
}

.wrap.coyote-branch .coyote-product-commission-rule input:checked + .coyote-toggle-track::after {
    transform: translateX(18px);
}

.wrap.coyote-branch .coyote-product-commission-rule input:focus-visible + .coyote-toggle-track {
    outline: 3px solid rgba(50, 96, 220, .28);
    outline-offset: 2px;
}

.wrap.coyote-branch .coyote-product-commission-rule .coyote-switch-copy {
    display: block;
    min-width: 0;
}

.wrap.coyote-branch .coyote-product-commission-rule .coyote-switch-copy em {
    display: block;
    margin-top: 5px;
    color: #8b6a22;
    font-size: 11px;
    font-style: normal;
    font-weight: 750;
}

.wrap.coyote-branch .coyote-product-commission-rule .coyote-switch-row:has(input:checked) {
    border-color: #c9a24a;
    background: #fff9eb;
}

.coyote-communication-note {
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 0 17px 16px;
    padding: 10px 12px;
    border: 1px solid #e4d7ba;
    border-radius: 6px;
    background: #fff8e8;
    color: #665533;
}

.coyote-communication-note p {
    margin: 0;
    font-size: 12px;
}

.coyote-employee-notifications {
    margin: 0 20px 14px;
    overflow: hidden;
    border: 1px solid #ded4c6;
    border-radius: 7px;
    background: #fff;
}

.coyote-employee-notifications-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    padding: 15px 17px;
    border-bottom: 1px solid #e7dfd3;
}

.coyote-employee-email-list {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
    padding: 14px 17px 17px;
    background: #fbfaf8;
}

.coyote-employee-email-list > label {
    display: grid;
    min-width: 0;
    gap: 7px;
    padding: 12px;
    border: 1px solid #e0d6c8;
    border-radius: 6px;
    background: #fff;
}

.coyote-employee-email-list strong,
.coyote-employee-email-list small {
    display: block;
}

.coyote-employee-email-list strong {
    overflow: hidden;
    color: #27231e;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.coyote-employee-email-list small {
    margin-top: 2px;
    color: #77716a;
}

.coyote-employee-email-list input {
    width: 100%;
    min-height: 41px;
    margin: 0;
    border-color: #d8d0c4;
    border-radius: 5px;
}

@media (max-width: 1180px) {
    .coyote-communications-layout {
        grid-template-columns: 1fr;
    }

    .coyote-employee-email-list {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 782px) {
    .coyote-communications-layout {
        padding-right: 14px;
        padding-left: 14px;
    }

    .coyote-employee-notifications {
        margin-right: 14px;
        margin-left: 14px;
    }

    .coyote-employee-notifications-head {
        align-items: stretch;
        flex-direction: column;
    }
}

@media (max-width: 560px) {
    .coyote-communication-fields,
    .coyote-employee-email-list {
        grid-template-columns: 1fr;
    }

    .coyote-communication-fields > label.is-wide {
        grid-column: auto;
    }
}

.wrap.coyote-branch .coyote-directory-editor {
    padding: 20px;
}

.wrap.coyote-branch .coyote-directory-brand {
    margin: 0 0 20px;
    border: 1px solid #ded4c6;
    border-radius: 7px;
    background: #fbfaf8;
}

.wrap.coyote-branch .coyote-directory-brand > header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 15px 17px;
    border-bottom: 1px solid #e5ddd2;
    background: #fff;
}

.wrap.coyote-branch .coyote-directory-brand header span,
.wrap.coyote-branch .coyote-directory-row-head strong {
    display: block;
    color: #a1741d;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.wrap.coyote-branch .coyote-directory-brand h3 {
    margin: 4px 0 0;
    color: #29251f;
    font-size: 18px;
}

.wrap.coyote-branch .coyote-directory-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
    padding: 14px;
}

.wrap.coyote-branch .coyote-directory-row {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    min-width: 0;
    padding: 14px;
    border: 1px solid #ded4c6;
    border-radius: 6px;
    background: #fff;
}

.wrap.coyote-branch .coyote-directory-row-head {
    display: flex;
    grid-column: 1 / -1;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}

.wrap.coyote-branch .coyote-directory-row label {
    display: grid;
    min-width: 0;
    gap: 5px;
    color: #4a443d;
    font-size: 12px;
    font-weight: 700;
}

.wrap.coyote-branch .coyote-directory-row label.is-wide {
    grid-column: 1 / -1;
}

.wrap.coyote-branch .coyote-directory-row input {
    width: 100%;
    min-height: 40px;
    margin: 0;
    border-color: #d8d0c4;
    border-radius: 5px;
}

@media (max-width: 1100px) {
    .wrap.coyote-branch .coyote-directory-list {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 560px) {
    .wrap.coyote-branch .coyote-directory-editor {
        padding: 14px;
    }

    .wrap.coyote-branch .coyote-directory-brand > header {
        align-items: stretch;
        flex-direction: column;
    }

    .wrap.coyote-branch .coyote-directory-brand > header .button {
        width: 100%;
    }

    .wrap.coyote-branch .coyote-directory-list {
        padding: 10px;
    }

    .wrap.coyote-branch .coyote-directory-row {
        grid-template-columns: 1fr;
    }

    .wrap.coyote-branch .coyote-directory-row label.is-wide,
    .wrap.coyote-branch .coyote-directory-row-head {
        grid-column: auto;
    }
}
