/* ==========================================================================
   Inner pages: one layout for all templates, accent taken from the template
   ========================================================================== */
body.template-1 { --px-accent: #eefb13; --px-accent-ink: #111; --px-accent-hover: #f6ff5c; --px-radius: 999px; --px-head-offset: 110px; }
body.template-2 { --px-accent: #ff5a1f; --px-accent-ink: #fff; --px-accent-hover: #e64a12; --px-radius: 999px; --px-head-offset: 84px; }
body.template-3 { --px-accent: #d8c3a5; --px-accent-ink: #111; --px-accent-hover: #e6d5bb; --px-radius: 999px; --px-head-offset: 86px; }
body.template-4 { --px-accent: #c6f432; --px-accent-ink: #111; --px-accent-hover: #d4ff4a; --px-radius: 10px; --px-head-offset: 70px; }

body.inner-page { --px-ink: #111; --px-muted: #6b7280; --px-line: #e5e7eb; --px-soft: #f5f6f8; --colorPrimary: var(--px-accent); background: #fff !important; color: #374151; }

/* Page header */
.px-header { position: relative; isolation: isolate; overflow: hidden; background: #0b0b0c; color: #fff; padding: calc(var(--px-head-offset, 90px) + 70px) 0 70px; }
.px-header__bg { position: absolute; inset: 0; z-index: -2; }
.px-header__bg img { display: block; filter: saturate(.85) brightness(.75); }
.px-header::before { content: ''; position: absolute; inset: 0; z-index: -1; background: linear-gradient(90deg, rgba(10,10,11,.92) 0%, rgba(10,10,11,.7) 45%, rgba(10,10,11,.35) 100%); }
.px-header__crumbs { display: flex; align-items: center; flex-wrap: wrap; gap: 10px; font-size: 13px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; margin-bottom: 14px; }
.px-header__crumbs a { color: rgba(255,255,255,.75) !important; }
.px-header__crumbs a:hover { color: var(--px-accent) !important; }
.px-header__crumbs i { font-size: 9px; color: rgba(255,255,255,.45); }
.px-header__crumbs span { color: var(--px-accent); font-size: 13px; }
.px-header__title { font-family: 'Kanit', var(--headingFont), sans-serif !important; font-weight: 800 !important; text-transform: uppercase; color: #fff !important; font-size: clamp(34px, 4.4vw, 64px) !important; line-height: 1 !important; margin: 0 !important; letter-spacing: -.005em; max-width: 900px; }
@media (max-width: 767px) { .px-header { padding: calc(var(--px-head-offset, 90px) + 40px) 0 44px; } }

/* Accent everywhere the old theme used its primary colour */
body.inner-page .common_btn,
body.inner-page .common_btn_2 { background: var(--px-accent) !important; color: var(--px-accent-ink) !important; border-radius: var(--px-radius) !important; font-weight: 800 !important; letter-spacing: .06em; text-transform: uppercase; font-size: 13.5px !important; }
body.inner-page .common_btn::after { background: var(--px-accent-hover) !important; }
body.inner-page .common_btn:hover { color: var(--px-accent-ink) !important; }

/* Shared building blocks for the redesigned inner pages */
.px { color: #374151; }
.px *, .px *::before, .px *::after { box-sizing: border-box; }
.px h2, .px h3 { font-family: 'Kanit', var(--headingFont), sans-serif !important; text-transform: uppercase; color: var(--px-ink) !important; margin: 0; }
.px p { margin: 0; }
:where(.px) span { font-size: inherit; }
.px-section { padding: 90px 0; }
.px-section--soft { background: var(--px-soft); }
.px-section--dark { background: #0d0d0e; color: rgba(255,255,255,.8); }
.px-section--dark h2, .px-section--dark h3 { color: #fff !important; }
.px-eyebrow { display: block; font-size: 12.5px !important; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; color: var(--px-accent-dark, #111); margin-bottom: 12px; }
body.template-1 .px-eyebrow { --px-accent-dark: #8a9200; }
body.template-2 .px-eyebrow { --px-accent-dark: #ff5a1f; }
body.template-3 .px-eyebrow { --px-accent-dark: #a88d66; }
body.template-4 .px-eyebrow { --px-accent-dark: #7c9a12; }
.px-section--dark .px-eyebrow { --px-accent-dark: var(--px-accent); }
.px-h2 { font-size: clamp(28px, 3vw, 44px) !important; line-height: 1.04 !important; font-weight: 800 !important; }
.px-lead { font-size: 16px !important; line-height: 1.75; color: #4b5563 !important; }
.px-section--dark .px-lead { color: rgba(255,255,255,.75) !important; }
.px-btn { display: inline-flex; align-items: center; justify-content: center; gap: 10px; height: 50px; padding: 0 28px; border-radius: var(--px-radius); font-size: 13px; font-weight: 800; letter-spacing: .07em; text-transform: uppercase; transition: all .2s ease; white-space: nowrap; border: 0; cursor: pointer; }
.px-btn i { transition: transform .2s; } .px-btn:hover i { transform: translateX(4px); }
.px-btn--accent { background: var(--px-accent); color: var(--px-accent-ink) !important; }
.px-btn--accent:hover { background: var(--px-accent-hover); transform: translateY(-2px); }
.px-btn--outline { border: 1.5px solid var(--px-ink); color: var(--px-ink) !important; background: transparent; }
.px-btn--outline:hover { background: var(--px-ink); color: #fff !important; }
.px-card { background: #fff; border: 1px solid var(--px-line); border-radius: 14px; box-shadow: 0 2px 10px rgba(17,17,17,.04); }
.px-grid { display: grid; gap: 22px; }
.px-grid--2 { grid-template-columns: repeat(2, 1fr); }
.px-grid--3 { grid-template-columns: repeat(3, 1fr); }
.px-grid--4 { grid-template-columns: repeat(4, 1fr); }
@media (max-width: 1199px) { .px-grid--4 { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 991px) { .px-grid--3 { grid-template-columns: repeat(2, 1fr); } .px-section { padding: 64px 0; } }
@media (max-width: 767px) { .px-grid--2, .px-grid--3, .px-grid--4 { grid-template-columns: 1fr; } }

/* Photo card (courses, services, trainers) */
.px-photo { position: relative; display: block; border-radius: 14px; overflow: hidden; background: #1a1a1a; color: #fff !important; aspect-ratio: 4 / 4.6; }
.px-photo img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform .5s ease; }
.px-photo:hover img { transform: scale(1.05); }
.px-photo::after { content: ''; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(0,0,0,0) 38%, rgba(0,0,0,.88) 100%); }
.px-photo__body { position: absolute; left: 0; right: 0; bottom: 0; padding: 22px; z-index: 1; }
.px-photo__body h3 { font-size: 19px !important; color: #fff !important; line-height: 1.15; }
.px-photo__body p { font-size: 13.5px !important; color: rgba(255,255,255,.8) !important; margin-top: 8px !important; line-height: 1.5; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.px-photo__meta { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 14px; }
.px-chip { display: inline-flex; align-items: center; gap: 6px; font-size: 12px !important; font-weight: 700; border-radius: 999px; padding: 4px 11px; background: rgba(255,255,255,.14); color: #fff; backdrop-filter: blur(4px); }
.px-chip--accent { background: var(--px-accent); color: var(--px-accent-ink); }

/* Pagination from the old theme */
body.inner-page .pagination .page-item.active .page-link,
body.inner-page .wsus__pagination ul li a.active { background: var(--px-accent) !important; border-color: var(--px-accent) !important; color: var(--px-accent-ink) !important; }

/* ---------- Inner page blocks ---------- */
body.inner-page .px .container, body.inner-page .px-cta .container, body.inner-page .px-stats .container { max-width: 1296px !important; }
.px-head { display: flex; justify-content: space-between; align-items: flex-end; gap: 24px; margin-bottom: 44px; flex-wrap: wrap; }
.px-split { display: grid; grid-template-columns: 1fr 1.05fr; gap: 64px; align-items: center; }
.px-split__media { position: relative; border-radius: 18px; overflow: hidden; aspect-ratio: 4 / 4.4; }
.px-split__badge { position: absolute; left: 24px; bottom: 24px; background: var(--px-accent); color: var(--px-accent-ink); border-radius: 14px; padding: 16px 22px; box-shadow: 0 14px 30px rgba(0,0,0,.25); }
.px-split__badge b { display: block; font-family: 'Kanit', sans-serif; font-size: 34px; font-weight: 800; line-height: 1; }
.px-split__badge span { font-size: 12px !important; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.px-checks { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: 1fr 1fr; gap: 12px 20px; }
.px-checks li { display: flex; align-items: center; gap: 10px; font-size: 15px; font-weight: 600; color: var(--px-ink); }
.px-checks i { width: 24px; height: 24px; border-radius: 50%; background: var(--px-accent); color: var(--px-accent-ink); display: inline-flex; align-items: center; justify-content: center; font-size: 11px; flex-shrink: 0; }
.px-btn--light { border: 1.5px solid rgba(255,255,255,.8); color: #fff !important; background: transparent; }
.px-btn--light:hover { background: #fff; color: #111 !important; }
.px-stats { background: #0d0d0e; color: #fff; }
.px-stats ul { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(4, 1fr); }
.px-stats li { text-align: center; padding: 46px 16px; position: relative; }
.px-stats li + li::before { content: ''; position: absolute; left: 0; top: 28%; bottom: 28%; width: 1px; background: rgba(255,255,255,.14); }
.px-stats b { display: block; font-family: 'Kanit', var(--headingFont), sans-serif; font-size: clamp(30px, 3.2vw, 46px); font-weight: 800; line-height: 1; color: var(--px-accent); }
.px-stats span { display: block; margin-top: 10px; font-size: 12.5px !important; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: rgba(255,255,255,.75); }
.px-feature { padding: 32px; transition: transform .25s, box-shadow .25s; }
.px-feature:hover { transform: translateY(-4px); box-shadow: 0 18px 34px rgba(17,17,17,.08); }
.px-feature__icon { width: 56px; height: 56px; border-radius: 14px; background: var(--px-accent); color: var(--px-accent-ink); display: inline-flex; align-items: center; justify-content: center; font-size: 22px; margin-bottom: 22px; }
.px-feature h3 { font-size: 18px !important; font-weight: 800 !important; margin-bottom: 10px !important; }
.px-feature p { font-size: 14.5px !important; line-height: 1.65; color: var(--px-muted) !important; }
.px-mosaic { display: grid; grid-template-columns: repeat(4, 1fr); }
.px-mosaic a { aspect-ratio: 1 / 1; overflow: hidden; display: block; }
.px-mosaic img { transition: transform .5s; }
.px-mosaic a:hover img { transform: scale(1.06); }
.px-cta { position: relative; isolation: isolate; overflow: hidden; background: #0b0b0c; color: #fff; }
.px-cta__bg { position: absolute; inset: 0; z-index: -2; filter: brightness(.5); }
.px-cta::before { content: ''; position: absolute; inset: 0; z-index: -1; background: linear-gradient(90deg, rgba(10,10,11,.95), rgba(10,10,11,.55)); }
.px-cta .container { display: flex; justify-content: space-between; align-items: center; gap: 30px; flex-wrap: wrap; padding-top: 80px; padding-bottom: 80px; }
.px-cta .px-eyebrow { color: var(--px-accent); }
.px-cta h2 { font-family: 'Kanit', var(--headingFont), sans-serif !important; font-weight: 800 !important; text-transform: uppercase; color: #fff !important; font-size: clamp(30px, 3.4vw, 50px) !important; line-height: 1.02 !important; margin: 0 !important; }
.px-cta p { color: rgba(255,255,255,.8) !important; margin-top: 12px !important; font-size: 16px !important; }
@media (max-width: 991px) {
    .px-split { grid-template-columns: 1fr; gap: 40px; }
    .px-stats ul { grid-template-columns: repeat(2, 1fr); }
    .px-stats li:nth-child(3)::before { display: none; }
    .px-mosaic { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 575px) { .px-checks { grid-template-columns: 1fr; } }
.px-course { aspect-ratio: 4 / 4.8; }
.px-course__price { position: absolute; top: 18px; right: 18px; z-index: 2; font-size: 13px !important; padding: 6px 14px; }
.px-course__more { display: inline-flex; align-items: center; gap: 8px; margin-top: 16px; font-size: 12.5px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; color: var(--px-accent); }
.px-course:hover .px-course__more i { transform: translateX(4px); }
.px-course__more i { transition: transform .2s; }
.px-contact { display: grid; grid-template-columns: 1.5fr 1fr; gap: 56px; align-items: start; }
.px-form { margin-top: 34px; }
.px-form__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
.px-form label { display: flex; flex-direction: column; gap: 7px; margin: 0; }
.px-form label > span { font-size: 12px !important; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; color: var(--px-ink); }
.px-form input, .px-form select, .px-form textarea { width: 100%; border: 1px solid var(--px-line); border-radius: 12px; padding: 14px 16px; font-size: 15px; background: #fff; color: var(--px-ink); outline: none; transition: border-color .15s, box-shadow .15s; }
.px-form input, .px-form select { height: 52px; }
.px-form input:focus, .px-form select:focus, .px-form textarea:focus { border-color: var(--px-ink); box-shadow: 0 0 0 4px rgba(17,17,17,.06); }
.px-form__full { grid-column: 1 / -1; }
.px-contact__info { background: #0d0d0e; color: rgba(255,255,255,.8); border-radius: 18px; padding: 36px; position: sticky; top: 110px; }
.px-contact__info h3 { color: #fff !important; font-size: 22px !important; font-weight: 800 !important; margin-bottom: 8px !important; }
.px-contact__info ul { list-style: none; padding: 0; margin: 22px 0; display: grid; gap: 22px; }
.px-contact__info li { display: flex; gap: 16px; align-items: flex-start; }
.px-contact__info li i { width: 44px; height: 44px; border-radius: 12px; background: rgba(255,255,255,.08); color: var(--px-accent); display: flex; align-items: center; justify-content: center; flex-shrink: 0; }
.px-contact__info small { display: block; font-size: 11.5px; letter-spacing: .1em; text-transform: uppercase; color: rgba(255,255,255,.5); font-weight: 800; margin-bottom: 4px; }
.px-contact__info b, .px-contact__info a { display: block; color: #fff !important; font-weight: 600; font-size: 15px; line-height: 1.5; }
.px-contact__info a:hover { color: var(--px-accent) !important; }
.px-contact__trial { border-top: 1px solid rgba(255,255,255,.12); padding-top: 22px; }
.px-contact__trial b { display: block; color: var(--px-accent); font-size: 16px; margin-bottom: 6px; }
.px-contact__trial span { font-size: 14px !important; color: rgba(255,255,255,.7); }
.px-map iframe { display: block; width: 100%; height: 440px; border: 0; filter: grayscale(.4); }
@media (max-width: 991px) { .px-contact { grid-template-columns: 1fr; } .px-contact__info { position: static; } }
@media (max-width: 575px) { .px-form__grid { grid-template-columns: 1fr; } }

/* Navbar right-hand icons for templates 2-4 (same on home and inner pages) */
.fz-nav__right .right_menu, .nx-nav__right .right_menu, .lx-nav__right .right_menu { display: flex !important; flex-wrap: nowrap !important; align-items: center !important; gap: 4px !important; margin: 0 !important; padding: 0 !important; height: auto !important; }
.fz-nav__right .right_menu li, .nx-nav__right .right_menu li, .lx-nav__right .right_menu li { margin: 0 !important; }
.fz-nav__right .right_menu li .icon, .nx-nav__right .right_menu li .icon, .lx-nav__right .right_menu li .icon { width: 44px !important; height: 44px !important; line-height: 44px !important; border: 0 !important; background: transparent !important; display: inline-flex !important; align-items: center !important; justify-content: center !important; position: relative; }
.fz-nav__right .right_menu li .icon img, .nx-nav__right .right_menu li .icon img, .lx-nav__right .right_menu li .icon img { filter: none !important; }
.fz-nav__right .right_menu li .icon span.wishlist_count, .nx-nav__right .right_menu li .icon span.cart_count,
.nx-nav__right .right_menu li .icon span.wishlist_count, .fz-nav__right .right_menu li .icon span.cart_count,
.lx-nav__right .right_menu li .icon span.wishlist_count, .lx-nav__right .right_menu li .icon span.cart_count { background: var(--px-accent) !important; color: var(--px-accent-ink) !important; top: 2px !important; right: 0 !important; }
.fz-nav .navbar-brand, .nx-nav .navbar-brand, .lx-nav .navbar-brand { flex-shrink: 0 !important; max-width: none !important; }

/* Cookie banner (wpcc): compact dark card in the template colours */
body .wpcc-container { left: 20px !important; right: auto !important; bottom: 20px !important; max-width: 380px !important; background: #111 !important; color: rgba(255,255,255,.85) !important; border: 1px solid rgba(255,255,255,.1) !important; border-radius: 14px !important; padding: 20px 22px !important; box-shadow: 0 20px 50px rgba(0,0,0,.35) !important; font-size: 14px !important; line-height: 1.55 !important; }
body .wpcc-container .wpcc-message, body .wpcc-container span { color: rgba(255,255,255,.85) !important; font-size: 14px !important; }
body .wpcc-container a.wpcc-privacy, body .wpcc-container a { color: var(--px-accent, #eefb13) !important; text-decoration: underline; }
body .wpcc-container .wpcc-btn { background: var(--px-accent, #eefb13) !important; color: var(--px-accent-ink, #111) !important; border: 0 !important; border-radius: var(--px-radius, 999px) !important; font-weight: 800 !important; font-size: 13px !important; letter-spacing: .05em; text-transform: uppercase; padding: 10px 22px !important; margin-top: 14px !important; }
.px-mini-title { font-size: 13px !important; letter-spacing: .1em; margin-bottom: 12px !important; }
.px-tags { display: flex; flex-wrap: wrap; gap: 8px; }
.px-tags span { font-size: 13px !important; font-weight: 700; padding: 7px 14px; border-radius: 999px; background: var(--px-soft); border: 1px solid var(--px-line); color: var(--px-ink); }
.px-trainer__facts { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; margin-top: 28px; }
.px-trainer__facts div { background: var(--px-soft); border-radius: 14px; padding: 18px; }
.px-trainer__facts b { display: block; font-family: 'Kanit', sans-serif; font-size: 28px; font-weight: 800; color: var(--px-ink); line-height: 1; }
.px-trainer__facts span { display: block; margin-top: 6px; font-size: 12px !important; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--px-muted); }
.px-social { width: 46px; height: 46px; border-radius: 50%; border: 1px solid var(--px-line); display: inline-flex; align-items: center; justify-content: center; color: var(--px-ink) !important; transition: all .2s; }
.px-social:hover { background: var(--px-accent); border-color: var(--px-accent); color: var(--px-accent-ink) !important; }
.px-schedule { display: grid; grid-template-columns: repeat(2, 1fr); gap: 16px; }
.px-schedule__item { display: flex; align-items: center; gap: 20px; padding: 20px 24px; }
.px-schedule__date { width: 64px; height: 64px; border-radius: 14px; background: var(--px-accent); color: var(--px-accent-ink); display: flex; flex-direction: column; align-items: center; justify-content: center; flex-shrink: 0; }
.px-schedule__date b { font-family: 'Kanit', sans-serif; font-size: 24px; line-height: 1; }
.px-schedule__date span { font-size: 11px !important; font-weight: 800; text-transform: uppercase; }
.px-schedule__item h3 { font-size: 16px !important; }
.px-schedule__item p { font-size: 14px !important; color: var(--px-muted) !important; margin-top: 4px !important; }
.px-empty { display: flex; align-items: center; gap: 22px; padding: 28px; flex-wrap: wrap; }
.px-empty > i { width: 56px; height: 56px; border-radius: 14px; background: var(--px-soft); display: flex; align-items: center; justify-content: center; font-size: 22px; color: var(--px-ink); }
.px-empty > div { flex: 1; min-width: 220px; }
.px-empty h3 { font-size: 18px !important; }
.px-empty p { color: var(--px-muted) !important; margin-top: 4px !important; }
@media (max-width: 767px) { .px-schedule { grid-template-columns: 1fr; } .px-trainer__facts { grid-template-columns: 1fr 1fr; } }

/* "far" (regular) glyphs come from an unreliable external Font Awesome Pro build and often render blank:
   draw them with the solid weight, which always loads */
.far { font-weight: 900 !important; }
.px-tabs { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 30px; }
.px-tab { border: 1px solid var(--px-line); background: #fff; border-radius: 999px; padding: 9px 20px; font-size: 13px; font-weight: 800; letter-spacing: .05em; text-transform: uppercase; color: var(--px-ink); cursor: pointer; }
.px-tab.active { background: var(--px-accent); border-color: var(--px-accent); color: var(--px-accent-ink); }
.px-video { position: relative; aspect-ratio: 16 / 9; border-radius: 14px; overflow: hidden; background: #000; }
.px-video iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
.px-masonry { columns: 3 280px; column-gap: 16px; }
.px-masonry[hidden] { display: none; }
.px-masonry a { display: block; margin-bottom: 16px; border-radius: 14px; overflow: hidden; break-inside: avoid; position: relative; }
.px-masonry a::after { content: '\f00e'; font-family: 'Font Awesome 5 Pro', 'Font Awesome 5 Free'; font-weight: 900; position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; font-size: 26px; color: var(--px-accent-ink); background: color-mix(in srgb, var(--px-accent) 70%, transparent); opacity: 0; transition: opacity .25s; }
.px-masonry a:hover::after { opacity: 1; }
.px-masonry img { transition: transform .5s; }
.px-masonry a:hover img { transform: scale(1.04); }
.px-search { position: relative; width: 340px; max-width: 100%; }
.px-search i { position: absolute; left: 16px; top: 50%; transform: translateY(-50%); color: #9ca3af; }
.px-search input { width: 100%; height: 50px; border: 1px solid var(--px-line); border-radius: 999px; padding: 0 18px 0 44px; font-size: 15px; outline: none; }
.px-search input:focus { border-color: var(--px-ink); }
a.px-tab { display: inline-flex; align-items: center; }
.px-billing { display: inline-flex; background: #fff; border: 1px solid var(--px-line); border-radius: 999px; padding: 5px; margin-top: 26px; }
.px-billing button { border: 0; background: transparent; border-radius: 999px; padding: 10px 26px; font-size: 13px; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; color: var(--px-muted); cursor: pointer; display: inline-flex; align-items: center; gap: 8px; }
.px-billing button small { font-size: 10px; background: #16a34a; color: #fff; border-radius: 999px; padding: 2px 8px; letter-spacing: .04em; }
.px-billing button.active { background: var(--px-ink); color: #fff; }
.px-plans { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; align-items: center; max-width: 1100px; margin: 0 auto; }
.px-plan { position: relative; background: #fff; border: 1px solid var(--px-line); border-radius: 18px; padding: 34px 30px; box-shadow: 0 6px 24px rgba(17,17,17,.05); }
.px-plan__name { font-size: 14px !important; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; color: var(--px-ink); }
.px-plan__price { display: flex; align-items: baseline; gap: 6px; margin: 14px 0 8px; }
.px-plan__price[hidden], .px-plans [hidden] { display: none !important; }
.px-plan__price b { font-family: 'Kanit', sans-serif; font-size: 52px; font-weight: 800; line-height: 1; color: var(--px-ink); }
.px-plan__price small { font-size: 14px; color: var(--px-muted); }
.px-plan__trial { display: inline-block; font-size: 12px !important; font-weight: 700; color: #16a34a; }
.px-plan ul { list-style: none; padding: 0; margin: 22px 0 28px; display: grid; gap: 12px; }
.px-plan li { display: flex; gap: 12px; font-size: 14.5px; color: #374151; line-height: 1.4; }
.px-plan li i { width: 22px; height: 22px; border-radius: 50%; background: var(--px-soft); color: var(--px-ink); display: inline-flex; align-items: center; justify-content: center; font-size: 10px; flex-shrink: 0; margin-top: 1px; }
.px-plan .px-btn { width: 100%; }
.px-plan--featured { border: 2px solid var(--px-accent); transform: scale(1.04); box-shadow: 0 24px 50px rgba(17,17,17,.12); }
.px-plan--featured li i { background: var(--px-accent); color: var(--px-accent-ink); }
.px-plan__badge { position: absolute; top: -14px; left: 50%; transform: translateX(-50%); background: var(--px-accent); color: var(--px-accent-ink); font-size: 11.5px !important; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; padding: 6px 16px; border-radius: 999px; white-space: nowrap; }
.px-plans__note { text-align: center; margin-top: 36px !important; color: var(--px-muted) !important; font-size: 14px !important; }
@media (max-width: 991px) { .px-plans { grid-template-columns: 1fr; max-width: 440px; } .px-plan--featured { transform: none; } }
.px-auth { display: grid; grid-template-columns: 1fr 1fr; background: #fff; border-radius: 22px; overflow: hidden; box-shadow: 0 24px 60px rgba(17,17,17,.08); max-width: 1100px; margin: 0 auto; }
.px-auth__media { position: relative; min-height: 560px; }
.px-auth__media::after { content: ''; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(0,0,0,0) 45%, rgba(0,0,0,.85) 100%); }
.px-auth__media img { position: absolute; inset: 0; }
.px-auth__quote { position: absolute; left: 34px; right: 34px; bottom: 34px; z-index: 1; color: #fff; }
.px-auth__quote b { display: block; font-family: 'Kanit', sans-serif; font-size: 26px; font-weight: 800; text-transform: uppercase; line-height: 1.1; margin-bottom: 8px; }
.px-auth__quote span { font-size: 15px !important; color: rgba(255,255,255,.85); }
.px-auth__form { padding: 54px 50px; }
.px-auth__row { display: flex; justify-content: space-between; align-items: center; margin: 18px 0 22px; font-size: 14px; }
.px-auth__row a, .px-auth__switch a { color: var(--px-ink) !important; font-weight: 700; text-decoration: underline; }
.px-auth__check { display: inline-flex !important; flex-direction: row !important; align-items: center; gap: 8px !important; font-size: 14px; color: #374151; margin: 0; cursor: pointer; }
.px-auth__check input { width: 16px !important; height: 16px !important; accent-color: var(--px-ink); }
.px-auth__or { display: flex; align-items: center; gap: 14px; margin: 24px 0 18px; color: var(--px-muted); font-size: 13px; }
.px-auth__or::before, .px-auth__or::after { content: ''; flex: 1; height: 1px; background: var(--px-line); }
.px-auth__google { display: flex; align-items: center; justify-content: center; gap: 10px; height: 50px; border: 1px solid var(--px-line); border-radius: var(--px-radius); color: var(--px-ink) !important; font-weight: 700; }
.px-auth__google:hover { background: var(--px-soft); }
.px-auth__switch { margin-top: 24px !important; text-align: center; color: var(--px-muted) !important; font-size: 14.5px !important; }
@media (max-width: 991px) { .px-auth { grid-template-columns: 1fr; } .px-auth__media { min-height: 260px; } .px-auth__form { padding: 36px 26px; } }
.px-detail { display: grid; grid-template-columns: minmax(0, 1fr) 380px; gap: 56px; align-items: start; }
.px-detail__cover { border-radius: 18px; overflow: hidden; aspect-ratio: 16 / 9; }
.px-detail__side { position: sticky; top: 110px; }
.px-prose { margin-top: 22px; font-size: 16px; line-height: 1.8; color: #374151; }
.px-prose p { margin: 0 0 16px !important; font-size: 16px !important; line-height: 1.8; color: #374151 !important; }
.px-prose h2, .px-prose h3, .px-prose h4 { font-family: 'Kanit', sans-serif !important; text-transform: uppercase; color: var(--px-ink) !important; margin: 30px 0 12px !important; font-size: 22px !important; }
.px-prose ul { padding-left: 20px; margin: 0 0 16px; } .px-prose li { list-style: disc; margin-bottom: 6px; }
.px-prose img { max-width: 100% !important; height: auto !important; border-radius: 12px; }
.px-h3 { font-size: 22px !important; font-weight: 800 !important; margin: 46px 0 20px !important; }
.px-thumb { display: block; aspect-ratio: 4 / 3; border-radius: 12px; overflow: hidden; }
.px-share { display: flex; align-items: center; gap: 10px; margin-top: 40px; padding-top: 26px; border-top: 1px solid var(--px-line); }
.px-share span { font-size: 12.5px !important; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; margin-right: 6px; color: var(--px-ink); }
.px-share a { width: 40px; height: 40px; border-radius: 50%; border: 1px solid var(--px-line); display: inline-flex; align-items: center; justify-content: center; color: var(--px-ink) !important; }
.px-share a:hover { background: var(--px-accent); border-color: var(--px-accent); color: var(--px-accent-ink) !important; }
.px-side-box { padding: 28px; }
.px-side-box h3 { font-size: 18px !important; font-weight: 800 !important; margin-bottom: 6px !important; }
.px-side-box > p { font-size: 14px !important; color: var(--px-muted) !important; margin-bottom: 18px !important; }
.px-side-list { list-style: none; padding: 0; margin: 16px 0 0; display: grid; gap: 14px; }
.px-side-list a { display: flex; align-items: center; gap: 14px; color: var(--px-ink) !important; font-weight: 700; font-size: 14.5px; line-height: 1.3; }
.px-side-list a:hover { color: var(--px-accent-dark, #111) !important; }
@media (max-width: 1199px) { .px-detail { grid-template-columns: 1fr; } .px-detail__side { position: static; } }
.px-legal { max-width: 860px; margin: 0 auto; }

/* ---------- Legacy inner blocks (workout/blog details, shop, cart, checkout, awards) ---------- */
body.inner-page h1, body.inner-page h2, body.inner-page h3, body.inner-page h4, body.inner-page h5 { font-family: 'Kanit', var(--headingFont), sans-serif !important; }
body.inner-page .wsus__blog_sidebar_wizard,
body.inner-page .wsus__shop_sidebar > div,
body.inner-page .wsus__program_details_sidebar > div { background: #fff !important; border: 1px solid var(--px-line) !important; border-radius: 16px !important; padding: 26px !important; box-shadow: 0 2px 10px rgba(17,17,17,.04); }
body.inner-page .wsus__blog_sidebar_wizard h4 { font-size: 16px !important; font-weight: 800 !important; letter-spacing: .06em; margin-bottom: 16px !important; }
body.inner-page .wsus__blog_sidebar_wizard input,
body.inner-page .wsus__blog_sidebar_wizard textarea,
body.inner-page .wsus__login_form input,
body.inner-page .wsus__comment_form input,
body.inner-page .wsus__comment_form textarea { border: 1px solid var(--px-line) !important; border-radius: 12px !important; background: #fff !important; }
body.inner-page .wsus__blog_details img, body.inner-page .wsus__program_details img, body.inner-page .wsus__workout_details img { border-radius: 16px; }
body.inner-page .wsus__blog_sidebar_wizard .tags a,
body.inner-page .wsus__blog_details .tags a { border-radius: 999px !important; }
body.inner-page .wsus__single_award, body.inner-page .wsus__award_item { border-radius: 14px !important; }

/* ==========================================================================
   Reserved area (user + trainer): shared look, template accent
   ========================================================================== */
body.template-1 { --px-accent-dark: #6b7300; }
body.template-2 { --px-accent-dark: #e64a12; }
body.template-3 { --px-accent-dark: #8c7350; }
body.template-4 { --px-accent-dark: #5f7a0a; }

body.inner-page .wsus__dashboard_profile { background: var(--px-soft); padding-top: 70px !important; padding-bottom: 90px !important; }
body.inner-page .wsus__dashboard_profile > .container { max-width: 1296px !important; }

/* Sidebar */
body.inner-page .wsus__dashboard_sidebar { background: #0d0d0e !important; border-radius: 20px !important; overflow: hidden; position: sticky; top: 100px; box-shadow: 0 16px 40px rgba(0,0,0,.12); border: 0 !important; }
body.inner-page .wsus__dashboard_sidebar_top { background: transparent !important; padding: 30px 24px 22px !important; text-align: center; border-bottom: 1px solid rgba(255,255,255,.08); }
body.inner-page .wsus__dashboard_profile_img { width: 96px !important; height: 96px !important; margin: 0 auto 14px !important; position: relative; }
body.inner-page .wsus__dashboard_profile_img img { width: 96px !important; height: 96px !important; border-radius: 50% !important; object-fit: cover !important; border: 3px solid var(--px-accent) !important; }
body.inner-page .wsus__dashboard_profile_img label { width: 32px !important; height: 32px !important; border-radius: 50% !important; background: var(--px-accent) !important; color: var(--px-accent-ink) !important; display: flex !important; align-items: center; justify-content: center; position: absolute; right: -2px; bottom: -2px; cursor: pointer; font-size: 13px; border: 3px solid #0d0d0e; }
body.inner-page .wsus__dashboard_sidebar_top h5 { color: #fff !important; font-family: 'Kanit', sans-serif !important; font-size: 19px !important; font-weight: 800 !important; text-transform: uppercase; margin-bottom: 6px !important; }
body.inner-page .wsus__dashboard_sidebar_top .badge { background: var(--px-accent) !important; color: var(--px-accent-ink) !important; font-weight: 800 !important; border-radius: 999px !important; padding: 5px 12px !important; letter-spacing: .06em; }
body.inner-page .wsus__dashboard_sidebar_top p { color: rgba(255,255,255,.55) !important; font-size: 13px !important; }
body.inner-page .wsus__deshboard_menu { padding: 12px !important; margin: 0 !important; background: transparent !important; }
body.inner-page .wsus__deshboard_menu li { margin: 0 0 2px !important; border: 0 !important; }
body.inner-page .wsus__deshboard_menu li a { display: flex !important; align-items: center; gap: 12px; padding: 12px 14px !important; border-radius: 12px !important; color: rgba(255,255,255,.75) !important; font-size: 14.5px !important; font-weight: 600 !important; background: transparent !important; border: 0 !important; transition: background .15s, color .15s; }
body.inner-page .wsus__deshboard_menu li a i { width: 20px; text-align: center; margin: 0 !important; color: rgba(255,255,255,.45) !important; font-size: 15px; }
body.inner-page .wsus__deshboard_menu li a:hover { background: rgba(255,255,255,.06) !important; color: #fff !important; }
body.inner-page .wsus__deshboard_menu li a.active { background: var(--px-accent) !important; color: var(--px-accent-ink) !important; }
body.inner-page .wsus__deshboard_menu li a.active i { color: var(--px-accent-ink) !important; }
body.inner-page .wsus__deshboard_menu li:last-child a { color: rgba(255,255,255,.5) !important; margin-top: 8px; border-top: 1px solid rgba(255,255,255,.08) !important; border-radius: 0 0 12px 12px !important; }

/* Content: a white card per page, Bootstrap blue → template accent */
body.inner-page .dashboard_content { --bs-primary: var(--px-accent-dark); --bs-primary-rgb: 17,17,17; --bs-link-color: var(--px-accent-dark); }
body.inner-page .dashboard_content > *:not(.row):not(.pbx):not(.wk-wrap) { }
body.inner-page .dashboard_content h4, body.inner-page .dashboard_content h5 { color: var(--px-ink) !important; }
body.inner-page .dashboard_content .text-primary { color: var(--px-accent-dark) !important; }
body.inner-page .dashboard_content .bg-primary:not(.bg-opacity-10):not(.bg-opacity-25) { background: var(--px-accent) !important; color: var(--px-accent-ink) !important; }
body.inner-page .dashboard_content .bg-primary.bg-opacity-10, body.inner-page .dashboard_content .bg-primary.bg-opacity-25 { background: color-mix(in srgb, var(--px-accent) 20%, #fff) !important; color: var(--px-ink) !important; }
body.inner-page .dashboard_content .border-primary { border-color: var(--px-accent) !important; }
body.inner-page .dashboard_content .btn-primary, body.inner-page .dashboard_content .common_btn { background: var(--px-accent) !important; border-color: var(--px-accent) !important; color: var(--px-accent-ink) !important; border-radius: var(--px-radius) !important; font-weight: 700 !important; }
body.inner-page .dashboard_content .btn-primary:hover { background: var(--px-accent-hover) !important; }
body.inner-page .dashboard_content .btn-outline-primary { border-color: var(--px-ink) !important; color: var(--px-ink) !important; background: transparent !important; border-radius: var(--px-radius) !important; }
body.inner-page .dashboard_content .btn-outline-primary:hover { background: var(--px-ink) !important; color: #fff !important; }
body.inner-page .dashboard_content .card, body.inner-page .dashboard_content .wsus__dashboard_main_contant,
body.inner-page .dashboard_content .wsus__dash_personal_info, body.inner-page .dashboard_content .wsus__dashboard_address,
body.inner-page .dashboard_content .wsus__dashboard_change_password, body.inner-page .dashboard_content .wsus__dash_order { border-radius: 18px !important; border: 1px solid var(--px-line) !important; box-shadow: 0 2px 10px rgba(17,17,17,.04) !important; background: #fff !important; }
body.inner-page .dashboard_content > div > h4:first-child, body.inner-page .dashboard_content h4.title { font-family: 'Kanit', sans-serif !important; font-weight: 800 !important; text-transform: uppercase; }
body.inner-page .dashboard_content input:not([type=checkbox]):not([type=radio]):not([type=file]),
body.inner-page .dashboard_content select, body.inner-page .dashboard_content textarea { border: 1px solid var(--px-line) !important; border-radius: 12px !important; min-height: 48px; padding: 10px 14px !important; background: #fff !important; }
body.inner-page .dashboard_content input:focus, body.inner-page .dashboard_content select:focus, body.inner-page .dashboard_content textarea:focus { border-color: var(--px-ink) !important; box-shadow: 0 0 0 4px rgba(17,17,17,.06) !important; }
body.inner-page .dashboard_content table th { font-size: 12px; letter-spacing: .06em; text-transform: uppercase; color: var(--px-muted); }

/* Empty state */
.px-nodata { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 14px; text-align: center; padding: 60px 20px; width: 100%; background: #fff; border: 1px dashed #d1d5db; border-radius: 18px; }
.px-nodata__icon { width: 64px; height: 64px; border-radius: 18px; background: var(--px-soft, #f5f6f8); display: flex; align-items: center; justify-content: center; font-size: 26px; color: #9ca3af; }
.px-nodata p { margin: 0 !important; font-size: 16px !important; font-weight: 700; color: #374151 !important; }
@media (max-width: 991px) { body.inner-page .wsus__dashboard_sidebar { position: static; margin-bottom: 26px; } }
body.inner-page .wsus__profile_overview { background: #fff !important; border: 1px solid var(--px-line) !important; border-radius: 18px !important; padding: 24px !important; text-align: left !important; box-shadow: 0 2px 10px rgba(17,17,17,.04) !important; display: grid; grid-template-columns: 52px 1fr; grid-template-rows: auto auto; column-gap: 16px; align-items: center; }
body.inner-page .wsus__profile_overview p:first-child { grid-row: 1 / 3; margin: 0 !important; width: 52px; height: 52px; border-radius: 14px; background: var(--px-accent) !important; color: var(--px-accent-ink) !important; display: flex !important; align-items: center; justify-content: center; font-size: 20px !important; }
body.inner-page .wsus__profile_overview p:first-child i { color: var(--px-accent-ink) !important; }
body.inner-page .wsus__profile_overview h4 { margin: 0 !important; font-family: 'Kanit', sans-serif !important; font-size: 30px !important; font-weight: 800 !important; color: var(--px-ink) !important; line-height: 1; }
body.inner-page .wsus__profile_overview .name { margin: 4px 0 0 !important; font-size: 12.5px !important; font-weight: 700 !important; letter-spacing: .04em; text-transform: uppercase; color: var(--px-muted) !important; }
body.inner-page .wsus__profile_overview.green, body.inner-page .wsus__profile_overview.orange { background: #fff !important; }
body.inner-page .row > div:first-child > .wsus__profile_overview { background: #0d0d0e !important; border-color: #0d0d0e !important; }
body.inner-page .row > div:first-child > .wsus__profile_overview h4 { color: #fff !important; }
body.inner-page .row > div:first-child > .wsus__profile_overview .name { color: rgba(255,255,255,.6) !important; }
body.inner-page .dashboard_content a:not(.btn):not(.common_btn):not(.px-btn) { color: var(--px-accent-dark); }

body.inner-page .dashboard_content .gym-price-card { border-radius: 18px !important; border: 1px solid var(--px-line) !important; }
body.inner-page .dashboard_content .gym-price-card.popular-card { border: 2px solid var(--px-accent) !important; }
body.inner-page .dashboard_content .gym-price-card .bg-danger { background: var(--px-accent) !important; color: var(--px-accent-ink) !important; }
body.inner-page .dashboard_content .gym-price-card .join-now { background: var(--px-ink) !important; color: #fff !important; }
body.inner-page .dashboard_content .gym-price-card.popular-card .join-now { background: var(--px-accent) !important; color: var(--px-accent-ink) !important; }

/* No accent stripes on cards: flat surfaces only */
body.inner-page .card, body.inner-page .wk-summary-card, body.inner-page .wk-ex-card { border-top-width: 1px !important; border-left-width: 1px !important; }

.ls-switch { display: flex; gap: 2px; margin-right: 4px; }
.ls-switch a { font-size: 12px; font-weight: 800; letter-spacing: .04em; color: rgba(255,255,255,.55) !important; padding: 4px 6px; border-radius: 6px; }
.ls-switch a:hover { color: #fff !important; }
.ls-switch a.active { color: var(--px-accent) !important; }

/* Navbars 2-4: logo + 8 menu items + actions must fit every desktop width */
@media (min-width: 992px) {
    body nav.fz-nav > .container-fluid, body nav.nx-nav > .container, body nav.lx-nav > .container { max-width: 1560px !important; width: 100%; padding-left: 28px !important; padding-right: 28px !important; flex-wrap: nowrap !important; }
    body .fz-nav .navbar-collapse, body .nx-nav .navbar-collapse, body .lx-nav .navbar-collapse { min-width: 0; }
    body .fz-nav .navbar-nav, body .nx-nav .navbar-nav, body .lx-nav .navbar-nav { flex-wrap: nowrap; margin-left: auto !important; margin-right: auto !important; padding: 0 12px; gap: 0 !important; }
    body .fz-nav .navbar-nav .nav-item, body .nx-nav .navbar-nav .nav-item, body .lx-nav .navbar-nav .nav-item { margin: 0 !important; padding: 0 !important; }
    body .fz-nav .navbar-nav .nav-link, body .nx-nav .navbar-nav .nav-link, body .lx-nav .navbar-nav .nav-link { padding: 8px clamp(5px, .75vw, 14px) !important; margin: 0 !important; font-size: clamp(13px, 1vw, 15px) !important; white-space: nowrap; }
    body .fz-nav .navbar-brand img, body .nx-nav .navbar-brand img, body .lx-nav .navbar-brand img { height: clamp(34px, 3vw, 46px) !important; max-height: 46px !important; width: auto !important; }
    .fz-nav__right, .nx-nav__right, .lx-nav__right { flex-shrink: 0; gap: 2px !important; }
    .fz-nav__right .right_menu li .icon, .nx-nav__right .right_menu li .icon, .lx-nav__right .right_menu li .icon { width: 36px !important; }
    .fz-nav__account, .nx-nav__account, .lx-nav__account { width: 34px !important; }
    .fz-nav__cta, .nx-nav__cta, .lx-nav__cta { margin-left: 6px !important; padding: 0 16px !important; font-size: 11.5px !important; }
}
@media (min-width: 992px) and (max-width: 1279px) {
    .fz-nav__cta, .nx-nav__cta, .lx-nav__cta { display: none !important; }
    body nav.fz-nav > .container-fluid, body nav.nx-nav > .container, body nav.lx-nav > .container { padding-left: 16px !important; padding-right: 16px !important; }
}

/* Small-screen fixes */
body.template-1 section:has(> .container .program_slider), body.template-1 section:has(.program_slider) { overflow: hidden; }
@media (max-width: 767px) {
    body.inner-page .wsus__product_summary, body.inner-page .wsus__product_summary form { max-width: 100%; min-width: 0; }
    body.inner-page .wsus__product_summary ul, body.inner-page .wsus__product_summary .d-flex { flex-wrap: wrap !important; }
}
body.template-1 .program_slider { margin-left: 0 !important; margin-right: 0 !important; max-width: 100%; }
body.template-1 section { overflow-x: clip; }
@media (max-width: 575px) { .table.table-dark th, .table.table-dark td { padding: 10px 8px !important; font-size: 13px !important; } }

/* Workout check, diary */
.ux-check { display: flex; align-items: center; gap: 20px; flex-wrap: wrap; background: #fff; border: 1px solid var(--px-line); border-radius: 18px; padding: 16px 20px; margin-bottom: 20px; }
.ux-check__main { display: flex; align-items: center; gap: 14px; border: 0; background: transparent; padding: 0; cursor: pointer; text-align: left; }
.ux-check__box { width: 46px; height: 46px; border-radius: 13px; border: 2px solid #d1d5db; display: flex; align-items: center; justify-content: center; color: transparent; font-size: 18px; transition: all .15s; flex-shrink: 0; }
.ux-check__main.on .ux-check__box { background: var(--px-accent); border-color: var(--px-accent); color: var(--px-accent-ink); }
.ux-check__label b { display: block; font-size: 16px; color: var(--px-ink); }
.ux-check__label small { font-size: 13px; color: var(--px-muted); text-transform: capitalize; }
.ux-check__week { display: flex; gap: 6px; margin-left: auto; }
.ux-check__day { width: 38px; height: 44px; border: 0; border-radius: 10px; background: var(--px-soft); color: var(--px-muted); font-size: 12px; font-weight: 800; cursor: pointer; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 2px; }
.ux-check__day i { font-size: 10px; opacity: 0; }
.ux-check__day.on { background: var(--px-accent); color: var(--px-accent-ink); }
.ux-check__day.on i { opacity: 1; }
.ux-check__day.today { box-shadow: inset 0 0 0 2px var(--px-ink); }
.ux-check__link { font-size: 13px; font-weight: 700; color: var(--px-ink) !important; white-space: nowrap; }
.ux-check__link b { font-size: 16px; }
.ux-stats { display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; margin-bottom: 20px; }
.ux-stats > div { background: #fff; border: 1px solid var(--px-line); border-radius: 16px; padding: 18px 20px; }
.ux-stats b { display: block; font-family: 'Kanit', sans-serif; font-size: 30px; font-weight: 800; line-height: 1; color: var(--px-ink); }
.ux-stats span { display: block; margin-top: 8px; font-size: 12px !important; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; color: var(--px-muted); }
.ux-card { background: #fff; border: 1px solid var(--px-line); border-radius: 18px; padding: 24px; margin-bottom: 20px; }
.ux-card__title { font-size: 16px !important; font-weight: 800 !important; text-transform: uppercase; margin-bottom: 12px !important; color: var(--px-ink) !important; }
.ux-cal__head { display: flex; align-items: center; justify-content: space-between; }
.ux-cal__head h3 { font-size: 20px !important; font-weight: 800 !important; color: var(--px-ink) !important; margin: 0 !important; }
.ux-cal__nav { width: 40px; height: 40px; border-radius: 50%; border: 1px solid var(--px-line); display: inline-flex; align-items: center; justify-content: center; color: var(--px-ink) !important; }
.ux-cal__hint { text-align: center; color: var(--px-muted) !important; font-size: 13.5px !important; margin: 10px 0 18px !important; }
.ux-cal { display: grid; grid-template-columns: repeat(7, 1fr); gap: 8px; }
.ux-cal__dow { text-align: center; font-size: 12px !important; font-weight: 800; color: var(--px-muted); padding-bottom: 4px; }
.ux-cal__day { position: relative; aspect-ratio: 1 / .82; border: 0; border-radius: 12px; background: var(--px-soft); font-weight: 700; color: var(--px-ink); cursor: pointer; display: flex; align-items: center; justify-content: center; gap: 6px; transition: background .15s; }
.ux-cal__day i { display: none; font-size: 11px; }
.ux-cal__day:hover:not(:disabled) { background: #e5e7eb; }
.ux-cal__day.on, .ux-cal__day.on:hover { background: var(--px-accent) !important; color: var(--px-accent-ink); }
.ux-cal__day.on i { display: inline; }
.ux-cal__day.today { box-shadow: inset 0 0 0 2px var(--px-ink); }
.ux-cal__day:disabled { opacity: .35; cursor: default; }
.ux-two { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
.ux-row { display: flex; justify-content: space-between; gap: 14px; padding: 11px 0; border-top: 1px solid var(--px-soft); font-size: 14.5px; color: #374151; }
.ux-row b { color: var(--px-ink); white-space: nowrap; }
.ux-muted { color: var(--px-muted) !important; font-size: 14px !important; }
@media (max-width: 767px) { .ux-stats { grid-template-columns: 1fr 1fr; } .ux-two { grid-template-columns: 1fr; } .ux-check__week { margin-left: 0; } .ux-card { padding: 16px; } .ux-cal { gap: 5px; } }

/* Reserved area on phones: compact profile + swipeable menu, so content comes first */
@media (max-width: 991px) {
    body.inner-page .wsus__dashboard_profile { padding-top: 16px !important; }
    body.inner-page .wsus__dashboard_sidebar { border-radius: 16px !important; margin-bottom: 16px; }
    body.inner-page .wsus__dashboard_sidebar_top { display: grid; grid-template-columns: 56px 1fr; column-gap: 12px; align-items: center; text-align: left; padding: 14px 16px 10px !important; border-bottom: 0; }
    body.inner-page .wsus__dashboard_profile_img { width: 56px !important; height: 56px !important; margin: 0 !important; grid-row: 1 / 4; }
    body.inner-page .wsus__dashboard_profile_img img { width: 56px !important; height: 56px !important; }
    body.inner-page .wsus__dashboard_profile_img label { width: 24px !important; height: 24px !important; font-size: 10px; border-width: 2px; }
    body.inner-page .wsus__dashboard_sidebar_top h5 { font-size: 16px !important; margin: 0 !important; }
    body.inner-page .wsus__dashboard_sidebar_top .badge { justify-self: start; }
    body.inner-page .wsus__dashboard_sidebar_top p { display: none; }
    body.inner-page .wsus__deshboard_menu { display: flex !important; gap: 6px; overflow-x: auto; padding: 4px 12px 14px !important; scrollbar-width: none; -webkit-overflow-scrolling: touch; }
    body.inner-page .wsus__deshboard_menu::-webkit-scrollbar { display: none; }
    body.inner-page .wsus__deshboard_menu li { flex: 0 0 auto; margin: 0 !important; }
    body.inner-page .wsus__deshboard_menu li a { padding: 9px 13px !important; font-size: 13px !important; white-space: nowrap; background: rgba(255,255,255,.07) !important; gap: 8px; }
    body.inner-page .wsus__deshboard_menu li:last-child a { margin-top: 0; border-top: 0 !important; border-radius: 12px !important; }
    .ux-check { padding: 14px; gap: 12px; }
    .ux-check__week { width: 100%; justify-content: space-between; order: 3; }
    .ux-check__day { flex: 1; width: auto; }
    .ux-check__link { margin-left: auto; }
}
@media (max-width: 991px) {
    body.inner-page .wsus__dashboard_profile_img { position: relative !important; overflow: visible !important; }
    body.inner-page .wsus__dashboard_profile_img label { position: absolute !important; top: auto !important; left: auto !important; right: -6px !important; bottom: -4px !important; margin: 0 !important; }
    body.inner-page .wsus__deshboard_menu { height: auto !important; min-height: 0 !important; align-items: center; margin-top: 4px !important; }
    body.inner-page .wsus__deshboard_menu li a { margin: 0 !important; }
}
