/* General */
:root {
    --tmw_workout: #ff6b6b;
    --tmw_corporal-weight: #43a047;
    --tmw_progress: #1e90ff;
    --tmw_cardio: #1e90ff;
    --tmw_calendar: #FF69B4;
    --tmw_social: #4ecdc4;
    --tmw_help: #607d8b;
    --tmw_admin: #6f42c1;

    --tmw_blue: #0d6efd;
    --tmw_border: #d0d7de;
    --tmw_radius: 8px;
    --tmw_white: #fff;
    --tmw_text: #111;
    --tmw_green: #28a745;
    --tmw_red: red;
    --tmw_blue_progress: #17a2b8;

    --tmw_bg_reps: #e9fbef;
    --tmw_bg_weights: #fff2e2;
    --tmw_color_reps: #047857;
    --tmw_color_weights: #b45309;

    --tmw_btn_opacity: 0.65;
}

button,
input,
optgroup,
select,
textarea,
div[role="group"] {
    font-family: Tahoma, 'Segoe UI', Geneva, Verdana, sans-serif !important;
}

.bg-workout {
    background: var(--tmw_workout) !important;
}

.bg-corporal-weight {
    background: var(--tmw_corporal-weight) !important;
}

.bg-progress {
    background: var(--tmw_progress) !important;
}

.bg-cardio {
    background: var(--tmw_cardio) !important;
}

.bg-calendar {
    background: var(--tmw_calendar) !important;
}

.bg-social {
    background: var(--tmw_social) !important;
}

.bg-help {
    background: var(--tmw_help) !important;
}

.bg-admin {
    background: var(--tmw_admin) !important;
}

.text-workout {
    color: var(--tmw_workout) !important;
}

.text-corporal-weight {
    color: var(--tmw_corporal-weight) !important;
}

.text-progress {
    color: var(--tmw_progress) !important;
}

.text-cardio {
    color: var(--tmw_cardio) !important;
}

.text-calendar {
    color: var(--tmw_calendar) !important;
}

.text-social {
    color: var(--tmw_social) !important;
}

.text-help {
    color: var(--tmw_help) !important;
}

.text-admin {
    color: var(--tmw_admin) !important;
}

body {
    font-size: 14px !important;
}

label {
    display: block;
    font-weight: bold;
}

.row {
    padding-left: 0px !important;
    padding-right: 0px !important;
}

.container {
    padding-left: 0px !important;
    padding-right: 0px !important;
}

/* Bread crumb */
nav>ol>li>a {
    text-decoration: none;
    color: var(--tmw_blue) !important;
}

nav>ol>li>a:hover {
    text-decoration: none;
    color: var(--tmw_blue) !important;
}

/* Air date picker */
.air-datepicker-global-container {
    z-index: 9999;
}

input[id="date"] {
    color: var(--tmw_blue);
    text-align: right;
    display: block;
    width: 100%;
}


/* Inputs */
input[type="number"] {
    -moz-appearance: textfield;
}

input,
select {
    padding: .45rem .55rem;
    border: 1px solid var(--tmw_border);
    border-radius: var(--tmw_radius);
    height: 42px;
    background-color: var(--tmw_white);
    width: 100%;
    text-align: right;
}

div.um-form input {
    text-align: left;
}

.form-group {
    margin-bottom: 1rem;
}

.input-group-text {
    font-weight: bold !important;
}

.exercise-hero .hero-img {
    display: block;
    max-width: min(680px, 100%);
    width: 100%;
    height: auto;
    object-fit: contain;
    border: 1px solid var(--tmw_border);
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 1px 2px rgba(0, 0, 0, .04);
    margin-inline: auto
}

.exercise-hero {
    margin: .5rem .25rem .25rem;
    text-align: center;
}

.pb-legend {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
    align-items: center;
    padding: 10px 12px;
    background: #fbfcff;
    border: 1px dashed var(--tmw_border) !important;
    border-radius: 8px;
}

.pb-wrap {
    display: grid;
    gap: 10px;
}

.pill {
    display: inline-block;
    padding: .5rem .9rem;
    border: 1px solid var(--tmw_border);
    border-radius: 8px;
    background: #fff;
    color: var(--tmw_text);
    cursor: pointer;
    user-select: none;
    box-shadow: 0 1px 0 rgba(0, 0, 0, .02);
}

.pill>strong {
    color: var(--tmw_blue) !important;
}

#entry-panel .mode-tabs {
    display: flex;
    border: 1px solid var(--tmw_border) !important;
    border-radius: 8px;
    overflow: hidden;
}

#entry-panel .mode-tabs .tab.active {
    background: var(--tmw_blue);
    color: rgb(255, 255, 255);
}

#entry-panel .mode-tabs .tab {
    flex: 1 1 0%;
    padding: 0.55rem 1rem;
    text-align: center;
    cursor: pointer;
    font-weight: 600;
    background: rgb(255, 255, 255);
    color: rgb(17, 17, 17);
    border: 0px;
}

/* Footer buttons */
.btn {
    min-height: 44px;
    padding: 12px 14px;
    border-radius: 10px;
}

.btn {
    display: block;
    width: 100%;
    border: 0;
    border-radius: 8px;
    padding: .65rem 1rem;
    font-weight: 700 !important;
    color: #fff;
    cursor: pointer;
    font-size: 14px !important;
}

.btn-progress {
    background: var(--tmw_blue_progress) !important;
    color: white !important;
}

.switch {
    position: relative;
    display: inline-flex;
    align-items: center;
}

.switch input {
    position: absolute;
    opacity: 0;
    inset: 0;
}

.switch input:checked+.track .thumb {
    left: calc(100% - 30px);
}

.switch input+.track::before {
    content: attr(data-off);
}

.switch input+.track {
    justify-content: flex-end;
    text-align: right;
    padding-left: 36px;
    padding-right: 12px;
}

.switch input:checked+.track::before {
    content: attr(data-on);
    margin-left: 5px;
}

.switch .thumb {
    position: absolute;
    left: 4px;
    top: 50%;
    transform: translateY(-50%);
    width: 26px;
    height: 26px;
    border-radius: 999px;
    background: #fff;
    border: 1px solid var(--tmw_border);
    box-shadow: 0 2px 8px rgba(0, 0, 0, .15);
    transition: left .25s ease;
}

.track::before {
    content: attr(data-off);
    font-size: .85rem;
}

.switch input:checked+.track {
    justify-content: flex-start;
    text-align: left;
    padding-left: 12px;
    padding-right: 36px;
}

.switch input:checked+.track {
    background: rgba(86, 231, 142, 0.32);
    border-color: green;
    color: black;
}

.track {
    --h: 34px;
    --w: 70px;
    width: var(--w);
    height: var(--h);
    border-radius: 999px;
    background: rgba(231, 86, 86, 0.32);
    border: 1px solid red;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 8px;
    gap: 6px;
    transition: .25s ease;
    position: relative;
    font-weight: 800;
    color: black;
}

.pb-chip-rep {
    color: var(--tmw_color_reps) !important;
    background: var(--tmw_bg_reps) !important;
}

.pb-chip-weight {
    color: var(--tmw_color_weights) !important;
    background: var(--tmw_bg_weights) !important;
}

.pb-chips {
    display: flex;
    gap: 8px;
    align-items: center;
    flex-wrap: wrap
}

.pb-chip {
    border-radius: 999px;
    border: 1px solid var(--tmw_border);
    background: #fff;
    color: #111;
    font-weight: 700;
    width: fit-content !important;
    padding: 5px 10px;
    display: inline-flex;
    align-items: baseline;
    gap: 6px;
    font-variant-numeric: tabular-nums;
    white-space: nowrap;
}

.pb-set {
    background: #f6f8ff;
    border: 1px solid #dbe4ff;
    border-radius: 8px;
    padding: 6px 10px;
}

.pb-switch {
    display: flex;
    padding-left: 0px !important;
    padding-right: 0px !important;
}

.pb-tab {
    background: #fff;
    padding: .55rem 1rem;
    font-weight: 600;
    cursor: pointer;
    flex: 1;
    text-align: center;
    border: 0;
}

.pb-switch.one .pb-tab {
    flex: 1;
}

.pb-tab.is-single[disabled] {
    cursor: default;
}

.btn-green {
    background-color: var(--tmw_green) !important;
    display: block !important;
    vertical-align: middle !important;
}

.btn-red {
    background-color: var(--tmw_red) !important;
    display: block !important;
    vertical-align: middle !important;
}

.muscle-icon {
    background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAgAAAAIACAMAAADDpiTIAAAAAXNSR0IB2cksfwAAAAlwSFlzAAAOxAAADsQBlSsOGwAAAwBQTFRFAAAA////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////Bz0LCAAAAQB0Uk5TAD99oq/avv/sejFvlKHWxSRhh8jfMnC71WPJrg0aVjp45isEX9HlKhPv6C0S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');
    height: 45px;
    width: 45px;
    background-repeat: no-repeat;
    background-size: 45px;
}

.modal {
    position: fixed !important;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(0, 0, 0, .35);
    z-index: 2500 !important;
    padding: 20px;
}

.modal.is-open {
    opacity: 1;
    pointer-events: auto;
    display: flex;
}

.muscle-tag,
.step-tag {
    color: var(--tmw_blue);
}

.dialog-header {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: .6rem .9rem;
    border-bottom: 1px solid var(--tmw_border)
}

.dialog-title {
    font: 700 .98rem/1.2 system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
    color: #111;
    text-align: center
}

.grid input[type="radio"] {
    position: absolute;
    opacity: 0;
    pointer-events: none
}

.card {
    border: 1px solid var(--tmw_border);
    border-radius: 8px;
    padding: .22rem;
    display: grid;
    place-items: center;
    text-align: center;
    background: #fff;
    color: #111;
    cursor: pointer;
    font-family: system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
    font-size: clamp(.78rem, 2.8vw, 1rem);
    line-height: 1.1;
    transition: transform .12s ease, border-color .12s ease, background .12s ease, color .12s ease, box-shadow .12s ease;
    user-select: none;
    white-space: normal;
    align-content: start;
    justify-items: center;
    gap: .12rem
}

.card:hover {
    transform: translateY(-1px)
}

.grid input[type="radio"]:checked+.card {
    background: var(--tmw_blue);
    color: #fff;
    border-color: var(--tmw_blue);
    box-shadow: 0 6px 14px rgba(13, 110, 253, .25)
}

@media (max-width:520px) {
    .grid {
        grid-template-columns: repeat(2, 1fr);
        gap: .34rem
    }

    .card .thumb {
        max-height: 70px
    }

    .card .muscle-thumb {
        height: 48px
    }
}

.grid .card:has(.thumb),
.grid .card:has(.muscle-thumb) {
    align-content: start;
}

.card {
    align-content: center
}

.dialog {
    width: min(92vw, 820px);
    max-height: 86vh;
    background: #fff;
    border-radius: 8px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, .25);
    display: grid;
    grid-template-rows: auto 1fr;
    overflow: hidden
}

.dialog-body {
    padding: .6rem .6rem .7rem;
    overflow: auto
}

.card .muscle-thumb,
.card .cardio-thumb {
    width: 100%;
    height: 90px;
    display: block;
    background-color: currentColor;
    -webkit-mask: var(--icon) center/contain no-repeat;
    mask: var(--icon) center/contain no-repeat
}

.grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: .28rem
}

.grid input[type="radio"] {
    position: absolute;
    opacity: 0;
    pointer-events: none
}

/* Números de página */
.page-dots {
    display: flex;
    gap: .35rem
}

.dot {
    min-width: 2rem;
    padding: .35rem .55rem;
    border: 1px solid var(--tmw_border, #ddd);
    background: #fff;
    border-radius: .5rem;
    cursor: pointer;
    font-weight: 600;
}

.dot.is-active {
    background-color: var(--tmw_blue);
    color: #fff;
}

/* Botones Anterior / Siguiente */
.page-btn {
    border: none;
    padding: .45rem .8rem;
    border-radius: .6rem;
    cursor: pointer;
    font-weight: 600;
    background: var(--tmw_blue);
    /* habilitado */
    color: #fff;
    /* texto blanco */
    box-shadow: 0 1px 2px rgba(0, 0, 0, .06);
}

.page-btn:hover:not(:disabled) {
    filter: brightness(0.95);
}

.page-btn:active:not(:disabled) {
    transform: translateY(1px);
}

/* Estado desactivado */
.page-btn:disabled {
    background: #ccc;
    /* deshabilitado */
    color: #fff;
    cursor: not-allowed;
    opacity: 1;
    /* evita aclarado extra si tu theme aplica */
}

.btn-info {
    color: #fff !important;
}

.bg-tmw {
    background-color: #333333 !important;
}

.border-tmw {
    border: 1px solid var(--tmw_border);
}

.dataTables_wrapper .dataTables_paginate .paginate_button {
    padding: 0px !important;
}

.paginate_button:hover {
    background: inherit !important;
    border: inherit !important
}

div.dataTables_paginate a.disabled a.page-link {
    opacity: var(--tmw_btn_opacity);
}

table.dataTable.no-footer {
    border: 0px !important;
}

.swal2-actions {
    margin-top: 10px;
}

.form-control.is-invalid {
    background: inherit !important;
    padding: .375rem .75rem !important;
}

.form-control.form-select.is-invalid {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e") !important;
    background-repeat: no-repeat !important;
    background-size: 16px 12px !important;
    background-position: right .75rem center !important;
    padding: .375rem 2.25rem .375rem .75rem !important;
}

#form-errors {
    text-align: left !important;
    font-size: 14px !important;
}

.form-control::placeholder {
    color: gray !important;
}

.dataTable tbody {
    display: contents;
}

.display-7 {
    font-size: 1rem;
}

/* Pinta en gris el botón NO seleccionado (funciona para ambos lados) */
.btn-check:not(:checked)+.btn[data-unchecked-gray] {
    background-color: var(--bs-secondary-bg);
    /* gris claro */
    color: var(--bs-body-color);
    border-color: var(--bs-border-color);
}

/* Cada botón ocupa exactamente la mitad del grupo */
.btn-group.equal-halves>.btn {
    flex: 0 0 50%;
    max-width: 50%;
    display: flex;
    /* centra el texto */
    align-items: center;
    justify-content: center;
    white-space: nowrap;
    /* evita saltos de línea */
    padding-left: .75rem;
    /* mismo padding en ambos lados */
    padding-right: .75rem;
}

input#query {
    text-align: left;
}

/* Avatar con iniciales */
.avatar--initials {
    width: 58px;
    height: 58px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 800;
    color: #fff;
}

.avatar {
    width: 58px;
    height: 58px;
    font-size: 23px;
}

.avatar-lg {
    width: 200px;
    height: 200px;
    font-size: 75px;
}

.avatar--bg1 {
    background: linear-gradient(135deg, #0ea5e9, #6366f1);
}

.avatar--bg2 {
    background: linear-gradient(135deg, #10b981, #06b6d4);
}

.avatar--bg3 {
    background: linear-gradient(135deg, #f59e0b, #ef4444);
}

.avatar--bg4 {
    background: linear-gradient(135deg, #d946ef, #8b5cf6);
}

.avatar--bg5 {
    background: linear-gradient(135deg, #22c55e, #3b82f6);
}

#table-container table.dataTable tbody td {
    padding: 0px !important;
    padding-bottom: .5rem !important;
}