:root{
  --fw-dark-bg:#07090d;
  --fw-dark-surface:#11151d;
  --fw-dark-surface-2:#171c26;
  --fw-dark-surface-3:#202633;
  --fw-dark-border:rgba(255,255,255,0.1);
  --fw-dark-card-border:rgba(117,178,255,0.32);
  --fw-dark-card-glow:0 0 0 1px rgba(0,117,255,0.14), 0 22px 54px rgba(0,0,0,0.48);
  --fw-dark-text:#eef2f7;
  --fw-dark-muted:#aab4c3;
  --fw-dark-soft:#0d1118;
}

html[data-theme="dark"]{
  --soft-bg:#0d1118;
  --paper:#11151d;
  --ink:#eef2f7;
  --muted:#aab4c3;
  --line:rgba(117,178,255,0.28);
  --shadow-sm:0 12px 26px rgba(0,0,0,0.32);
  --shadow-md:0 24px 54px rgba(0,0,0,0.42);
  --shadow-lg:0 40px 86px rgba(0,0,0,0.58);
}

html[data-theme="dark"] body{
  color:var(--fw-dark-text) !important;
  background:
    linear-gradient(180deg, #05070b 0%, #0d1118 44%, #07090d 100%) !important;
}

html[data-theme="dark"] .custom-navbar{
  background:rgba(9,12,18,0.94) !important;
  border-bottom-color:var(--fw-dark-border) !important;
  box-shadow:0 14px 32px rgba(0,0,0,0.34) !important;
}

html[data-theme="dark"] .navbar-collapse{
  border-top-color:var(--fw-dark-border) !important;
}

html[data-theme="dark"] .nav-link,
html[data-theme="dark"] .nav-icon,
html[data-theme="dark"] .mobile-page-title{
  color:var(--fw-dark-text) !important;
}

html[data-theme="dark"] .nav-icon,
html[data-theme="dark"] .navbar-toggler{
  background:rgba(255,255,255,0.04) !important;
  border-color:var(--fw-dark-border) !important;
}

html[data-theme="dark"] .navbar-toggler-icon{
  filter:invert(1) grayscale(1);
}

html[data-theme="dark"] .user-avatar-circle{
  border-color:rgba(255,255,255,0.22) !important;
}

html[data-theme="dark"] .user-dropdown-menu{
  background:var(--fw-dark-surface) !important;
  border-color:var(--fw-dark-border) !important;
  box-shadow:0 22px 54px rgba(0,0,0,0.54) !important;
}

html[data-theme="dark"] .drop-header,
html[data-theme="dark"] .drop-section{
  background:var(--fw-dark-surface) !important;
}

html[data-theme="dark"] .drop-header,
html[data-theme="dark"] .drop-section + .drop-section{
  border-color:var(--fw-dark-border) !important;
}

html[data-theme="dark"] .drop-user-name,
html[data-theme="dark"] .drop-item{
  color:var(--fw-dark-text) !important;
}

html[data-theme="dark"] .drop-user-email,
html[data-theme="dark"] .theme-menu-copy small{
  color:var(--fw-dark-muted) !important;
}

html[data-theme="dark"] .drop-icon{
  background:var(--fw-dark-surface-3) !important;
  color:var(--fw-dark-text) !important;
}

html[data-theme="dark"] .drop-item:hover{
  background:var(--fw-dark-surface-2) !important;
  color:#fff !important;
}

.theme-section{
  padding:8px 6px 10px;
}

.theme-menu-title{
  display:flex;
  align-items:center;
  gap:10px;
  padding:7px 10px 8px;
}

.theme-menu-copy{
  min-width:0;
}

.theme-menu-copy span{
  display:block;
  color:#374151;
  font-size:13px;
  font-weight:700;
  line-height:1.2;
}

.theme-menu-copy small{
  display:block;
  margin-top:2px;
  color:#6b7280;
  font-size:11px;
  font-weight:600;
  text-transform:capitalize;
}

.theme-option-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  width:100%;
  margin-top:4px;
  padding:8px 10px;
  border:0;
  border-radius:10px;
  background:transparent;
  color:#374151;
  font-size:12px;
  font-weight:700;
  text-align:left;
  cursor:pointer;
  transition:background 0.16s ease, color 0.16s ease;
}

.theme-option-row:hover{
  background:#f3f4f6;
  color:#111827;
}

.theme-switch{
  position:relative;
  width:36px;
  height:20px;
  flex:0 0 36px;
  border-radius:999px;
  background:#d1d5db;
  box-shadow:inset 0 0 0 1px rgba(17,24,39,0.08);
  transition:background 0.18s ease;
}

.theme-switch span{
  position:absolute;
  top:3px;
  left:3px;
  width:14px;
  height:14px;
  border-radius:50%;
  background:#fff;
  box-shadow:0 2px 6px rgba(17,24,39,0.24);
  transition:transform 0.18s ease;
}

.theme-option-row[aria-pressed="true"] .theme-switch{
  background:var(--blue);
}

.theme-option-row[aria-pressed="true"] .theme-switch span{
  transform:translateX(16px);
}

html[data-theme="dark"] .theme-menu-copy span,
html[data-theme="dark"] .theme-option-row{
  color:var(--fw-dark-text) !important;
}

html[data-theme="dark"] .theme-option-row:hover{
  background:var(--fw-dark-surface-2) !important;
}

html[data-theme="dark"] .theme-switch{
  background:#3c4658;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,0.08);
}

html[data-theme="dark"] .theme-option-row[aria-pressed="true"] .theme-switch{
  background:var(--blue);
}

html[data-theme="dark"] .bg-soft,
html[data-theme="dark"] .section-padding.bg-soft,
html[data-theme="dark"] .identity-section,
html[data-theme="dark"] .coaches-section,
html[data-theme="dark"] .rating-section,
html[data-theme="dark"] .gallery-section,
html[data-theme="dark"] .comments-section,
html[data-theme="dark"] .team-photos-section,
html[data-theme="dark"] .social-section,
html[data-theme="dark"] .form-section,
html[data-theme="dark"] .products-section,
html[data-theme="dark"] .product-detail-page,
html[data-theme="dark"] .programs-section,
html[data-theme="dark"] .terms-section,
html[data-theme="dark"] .events-list-section,
html[data-theme="dark"] .archive-section,
html[data-theme="dark"] .tutorials-page,
html[data-theme="dark"] .featured-free-section,
html[data-theme="dark"] .tutorial-results-section{
  background:linear-gradient(180deg, #0d1118 0%, #07090d 100%) !important;
}

html[data-theme="dark"] .tutorials-hero::after{
  background:linear-gradient(180deg, rgba(255,255,255,0) 0%, #0d1118 100%) !important;
}

html[data-theme="dark"] .coaching-choice-hero::after{
  background:#0d1118 !important;
}

html[data-theme="dark"] .contact-hero::after{
  background:#0d1118 !important;
}

html[data-theme="dark"] .hero-contact-board{
  background:
    radial-gradient(circle at 18% 18%, rgba(0,117,255,0.18), transparent 28%),
    radial-gradient(circle at 82% 76%, rgba(254,149,28,0.13), transparent 24%),
    linear-gradient(145deg, #11151d 0%, #0d1118 52%, #07090d 100%) !important;
  border-color:var(--fw-dark-card-border) !important;
  box-shadow:var(--fw-dark-card-glow) !important;
}

html[data-theme="dark"] .hero-contact-board::before{
  background:
    radial-gradient(circle at 20% 18%, rgba(0,117,255,0.16), transparent 24%),
    radial-gradient(circle at 78% 80%, rgba(254,149,28,0.13), transparent 22%) !important;
}

html[data-theme="dark"] .contact-board-orbit,
html[data-theme="dark"] .contact-hub-rings span{
  border-color:rgba(117,178,255,0.26) !important;
}

html[data-theme="dark"] .contact-board-orbit-two,
html[data-theme="dark"] .contact-hub-rings span:nth-child(3){
  border-color:rgba(254,149,28,0.28) !important;
}

html[data-theme="dark"] .contact-shell{
  background:linear-gradient(180deg, #11151d 0%, #0d1118 100%) !important;
  border-color:var(--fw-dark-card-border) !important;
  box-shadow:var(--fw-dark-card-glow) !important;
}

html[data-theme="dark"] .contact-shell::before{
  background:
    radial-gradient(circle at 10% 16%, rgba(0,117,255,0.12), transparent 26%),
    radial-gradient(circle at 88% 84%, rgba(254,149,28,0.12), transparent 24%) !important;
}

html[data-theme="dark"] .identity-section,
html[data-theme="dark"] .coaches-section{
  background:
    linear-gradient(90deg, rgba(0,117,255,0.11) 0 1px, transparent 1px),
    linear-gradient(180deg, rgba(254,149,28,0.08) 0 1px, transparent 1px),
    linear-gradient(180deg, #0d1118 0%, #07090d 100%) !important;
  background-size:80px 80px, 80px 80px, auto !important;
}

html[data-theme="dark"] .coaches-section::before,
html[data-theme="dark"] .identity-section::before{
  background:
    radial-gradient(circle at 16% 18%, rgba(0,117,255,0.18), transparent 28%),
    radial-gradient(circle at 88% 62%, rgba(254,149,28,0.14), transparent 26%) !important;
}

html[data-theme="dark"] .card,
html[data-theme="dark"] .modal-content,
html[data-theme="dark"] .accordion-item,
html[data-theme="dark"] .profile-header-card,
html[data-theme="dark"] .settings-card,
html[data-theme="dark"] .info-card,
html[data-theme="dark"] .collaboration-card,
html[data-theme="dark"] .comment-card,
html[data-theme="dark"] .comment-form,
html[data-theme="dark"] .rating-panel,
html[data-theme="dark"] .auth-box,
html[data-theme="dark"] .contact-route-card,
html[data-theme="dark"] .social-card-body,
html[data-theme="dark"] .contact-form-panel,
html[data-theme="dark"] .product-card,
html[data-theme="dark"] .program-card,
html[data-theme="dark"] .coach-card,
html[data-theme="dark"] .identity-card,
html[data-theme="dark"] .trainer-card,
html[data-theme="dark"] .archive-preview-card,
html[data-theme="dark"] .archive-card,
html[data-theme="dark"] .archive-stat,
html[data-theme="dark"] .video-card,
html[data-theme="dark"] .free-path-card,
html[data-theme="dark"] .tutorial-card,
html[data-theme="dark"] .results-top,
html[data-theme="dark"] .no-results,
html[data-theme="dark"] .tutorial-modal-card,
html[data-theme="dark"] .feature-card,
html[data-theme="dark"] .ticket-card,
html[data-theme="dark"] .terms-card,
html[data-theme="dark"] .login-card,
html[data-theme="dark"] .custom-modal,
html[data-theme="dark"] .terms-modal,
html[data-theme="dark"] .fw-search-panel,
html[data-theme="dark"] .fw-cart-panel,
html[data-theme="dark"] .fw-cart-empty-card{
  background:var(--fw-dark-surface) !important;
  border-color:var(--fw-dark-card-border) !important;
  color:var(--fw-dark-text) !important;
  box-shadow:var(--fw-dark-card-glow) !important;
}

html[data-theme="dark"] .info-card:hover,
html[data-theme="dark"] .collaboration-card:hover,
html[data-theme="dark"] .product-card:hover,
html[data-theme="dark"] .program-card:hover,
html[data-theme="dark"] .identity-card:hover,
html[data-theme="dark"] .trainer-card:hover,
html[data-theme="dark"] .archive-preview-card:hover,
html[data-theme="dark"] .archive-card:hover,
html[data-theme="dark"] .free-path-card:hover,
html[data-theme="dark"] .tutorial-card:hover,
html[data-theme="dark"] .settings-card:hover,
html[data-theme="dark"] .profile-header-card:hover{
  border-color:rgba(0,117,255,0.62) !important;
  box-shadow:0 0 0 1px rgba(0,117,255,0.38), 0 28px 64px rgba(0,0,0,0.58) !important;
}

html[data-theme="dark"] .program-card,
html[data-theme="dark"] .identity-card,
html[data-theme="dark"] .trainer-card,
html[data-theme="dark"] .archive-preview-card,
html[data-theme="dark"] .archive-card,
html[data-theme="dark"] .archive-stat,
html[data-theme="dark"] .free-path-card,
html[data-theme="dark"] .tutorial-card,
html[data-theme="dark"] .results-top,
html[data-theme="dark"] .no-results,
html[data-theme="dark"] .tutorial-modal-card{
  background:linear-gradient(180deg, #11151d 0%, #0d1118 100%) !important;
}

html[data-theme="dark"] .program-content,
html[data-theme="dark"] .trainer-copy,
html[data-theme="dark"] .archive-preview-content,
html[data-theme="dark"] .tutorial-copy,
html[data-theme="dark"] .tutorial-modal-body{
  background:rgba(17,21,29,0.96) !important;
  border-color:rgba(117,178,255,0.24) !important;
  color:var(--fw-dark-text) !important;
  box-shadow:0 18px 36px rgba(0,0,0,0.36) !important;
}

html[data-theme="dark"] .archive-preview-content{
  border-top:1px solid var(--fw-dark-border) !important;
}

html[data-theme="dark"] .program-img,
html[data-theme="dark"] .trainer-media,
html[data-theme="dark"] .archive-media-shell,
html[data-theme="dark"] .tutorial-media,
html[data-theme="dark"] .tutorial-modal-media{
  background:#171c26 !important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,0.1) !important;
}

html[data-theme="dark"] .trainer-role,
html[data-theme="dark"] .section-kicker,
html[data-theme="dark"] .section-kicker-dark,
html[data-theme="dark"] .archive-preview-label,
html[data-theme="dark"] .archive-chip,
html[data-theme="dark"] .free-path-number,
html[data-theme="dark"] .tutorial-meta span,
html[data-theme="dark"] .tutorial-modal-meta span{
  background:rgba(0,117,255,0.16) !important;
  color:#83bfff !important;
}

html[data-theme="dark"] .tutorial-card-free .tutorial-meta span:first-child,
html[data-theme="dark"] .tutorial-modal-meta span:first-child{
  background:rgba(19,168,113,0.18) !important;
  color:#8de0bd !important;
}

html[data-theme="dark"] .tutorial-card-premium .tutorial-meta span:first-child{
  background:rgba(254,149,28,0.18) !important;
  color:#ffbd74 !important;
}

html[data-theme="dark"] .hero-search{
  background:var(--fw-dark-surface) !important;
  border-color:var(--fw-dark-border) !important;
  box-shadow:0 24px 56px rgba(0,0,0,0.42) !important;
}

html[data-theme="dark"] .hero-search button,
html[data-theme="dark"] .tutorial-action,
html[data-theme="dark"] .no-results i{
  background:var(--fw-dark-surface-2) !important;
  color:#83bfff !important;
}

html[data-theme="dark"] .hero-search button:hover,
html[data-theme="dark"] .tutorial-action:hover{
  background:var(--blue) !important;
  color:#fff !important;
}

html[data-theme="dark"] .filter-pill.active,
html[data-theme="dark"] .filter-pill:hover{
  background:var(--fw-dark-surface-2) !important;
  border-color:rgba(0,117,255,0.42) !important;
  color:#83bfff !important;
}

html[data-theme="dark"] .tutorial-action-free{
  background:rgba(19,168,113,0.16) !important;
  color:#8de0bd !important;
}

html[data-theme="dark"] .tutorial-action-free:hover{
  background:var(--green) !important;
  color:#fff !important;
}

html[data-theme="dark"] .tutorial-copy li,
html[data-theme="dark"] .tutorial-modal-points span{
  background:var(--fw-dark-surface-2) !important;
  border:1px solid var(--fw-dark-border) !important;
}

html[data-theme="dark"] .archive-year,
html[data-theme="dark"] .archive-action-secondary,
html[data-theme="dark"] .archive-carousel-btn{
  background:var(--fw-dark-surface-2) !important;
  border-color:var(--fw-dark-border) !important;
  color:var(--fw-dark-text) !important;
}

html[data-theme="dark"] .archive-carousel-btn:hover,
html[data-theme="dark"] .archive-carousel-btn:focus-visible,
html[data-theme="dark"] .archive-action-secondary:hover{
  background:linear-gradient(135deg, var(--blue) 0%, #0dcaf0 100%) !important;
  color:#fff !important;
}

html[data-theme="dark"] .countdown-box{
  background:linear-gradient(180deg, rgba(17,21,29,0.96) 0%, rgba(13,17,24,0.96) 100%) !important;
  border:1px solid rgba(117,178,255,0.34) !important;
  color:var(--fw-dark-text) !important;
  box-shadow:0 0 0 1px rgba(0,117,255,0.14), 0 18px 36px rgba(0,0,0,0.38) !important;
}

html[data-theme="dark"] .countdown-box h3{
  color:var(--fw-dark-text) !important;
}

html[data-theme="dark"] .countdown-box small{
  color:#9fb0c8 !important;
}

html[data-theme="dark"] .social-card-instagram,
html[data-theme="dark"] .social-card-gmail,
html[data-theme="dark"] .social-card-whatsapp{
  background:
    radial-gradient(circle at 78% 64%, rgba(0,117,255,0.16), transparent 34%),
    linear-gradient(135deg, #11151d 0%, #0d1118 58%, #07090d 100%) !important;
}

html[data-theme="dark"] .social-card-instagram::before,
html[data-theme="dark"] .social-card-gmail::before,
html[data-theme="dark"] .social-card-whatsapp::before{
  opacity:0.38 !important;
  background-image:radial-gradient(circle, rgba(117,178,255,0.2) 2px, transparent 3px) !important;
}

html[data-theme="dark"] .social-icon-shell{
  background:rgba(255,255,255,0.08) !important;
  border-color:rgba(117,178,255,0.22) !important;
  box-shadow:0 14px 36px rgba(0,0,0,0.32) !important;
}

html[data-theme="dark"] .social-visual::before{
  opacity:0.78 !important;
}

html[data-theme="dark"] .contact-route-card strong,
html[data-theme="dark"] .form-label,
html[data-theme="dark"] .form-topline-status{
  color:var(--fw-dark-text) !important;
}

html[data-theme="dark"] .contact-route-card small,
html[data-theme="dark"] .form-intro{
  color:var(--fw-dark-muted) !important;
}

html[data-theme="dark"] .route-kicker,
html[data-theme="dark"] .form-topline-label{
  background:rgba(0,117,255,0.16) !important;
  color:#83bfff !important;
}

html[data-theme="dark"] .stack-card-main{
  background:linear-gradient(135deg, #171c26, #223048) !important;
  color:var(--fw-dark-text) !important;
}

html[data-theme="dark"] .social-link,
html[data-theme="dark"] .social-link i{
  color:#fff !important;
}

html[data-theme="dark"] .bg-white,
html[data-theme="dark"] .bg-light,
html[data-theme="dark"] .badge.bg-light,
html[data-theme="dark"] .terms-box,
html[data-theme="dark"] .readonly-info,
html[data-theme="dark"] .demo-badge,
html[data-theme="dark"] .fw-search-results,
html[data-theme="dark"] .fw-cart-line,
html[data-theme="dark"] .fw-cart-footer,
html[data-theme="dark"] .fw-cart-header{
  background:var(--fw-dark-surface-2) !important;
  color:var(--fw-dark-text) !important;
  border-color:var(--fw-dark-border) !important;
}

html[data-theme="dark"] h1,
html[data-theme="dark"] h2,
html[data-theme="dark"] h3,
html[data-theme="dark"] h4,
html[data-theme="dark"] h5,
html[data-theme="dark"] h6,
html[data-theme="dark"] .section-heading h2,
html[data-theme="dark"] .section-padding .container > h2,
html[data-theme="dark"] .identity-section .section-title,
html[data-theme="dark"] .coaches-heading h2,
html[data-theme="dark"] .settings-card h5,
html[data-theme="dark"] .profile-label,
html[data-theme="dark"] .product-title,
html[data-theme="dark"] .program-content h4,
html[data-theme="dark"] .identity-card h4,
html[data-theme="dark"] .trainer-card h5,
html[data-theme="dark"] .archive-preview-card h3,
html[data-theme="dark"] .archive-card h3,
html[data-theme="dark"] .archive-stat strong,
html[data-theme="dark"] .free-path-card h3,
html[data-theme="dark"] .tutorial-copy h3,
html[data-theme="dark"] .results-top h2,
html[data-theme="dark"] .premium-copy h2,
html[data-theme="dark"] .tutorial-modal-body h2,
html[data-theme="dark"] .no-results h3,
html[data-theme="dark"] .fw-cart-title,
html[data-theme="dark"] .fw-search-result-title,
html[data-theme="dark"] .text-dark{
  color:var(--fw-dark-text) !important;
}

html[data-theme="dark"] p,
html[data-theme="dark"] small,
html[data-theme="dark"] label,
html[data-theme="dark"] .text-muted,
html[data-theme="dark"] .text-secondary,
html[data-theme="dark"] .section-heading p,
html[data-theme="dark"] .section-padding .container > .text-muted,
html[data-theme="dark"] .section-subtitle,
html[data-theme="dark"] .coaches-heading p,
html[data-theme="dark"] .program-content p,
html[data-theme="dark"] .identity-card p,
html[data-theme="dark"] .trainer-card .text-muted,
html[data-theme="dark"] .archive-preview-card p,
html[data-theme="dark"] .archive-card p,
html[data-theme="dark"] .archive-stat span,
html[data-theme="dark"] .free-path-card p,
html[data-theme="dark"] .tutorial-copy p,
html[data-theme="dark"] .tutorial-copy li,
html[data-theme="dark"] .results-top p,
html[data-theme="dark"] .premium-copy p,
html[data-theme="dark"] .tutorial-modal-body p,
html[data-theme="dark"] .tutorial-modal-points span,
html[data-theme="dark"] .no-results p,
html[data-theme="dark"] .terms-status,
html[data-theme="dark"] .profile-breadcrumb,
html[data-theme="dark"] .fw-cart-total-label,
html[data-theme="dark"] .fw-search-result-text{
  color:var(--fw-dark-muted) !important;
}

html[data-theme="dark"] a:not(.btn):not(.nav-link):not(.drop-item):not(.footer-links a):not(.footer-social a){
  color:#83bfff;
}

html[data-theme="dark"] .btn-orange,
html[data-theme="dark"] .hero-btn-primary,
html[data-theme="dark"] .program-btn-primary,
html[data-theme="dark"] .tutorial-buy-action,
html[data-theme="dark"] .tutorial-modal-buy,
html[data-theme="dark"] .event-pill-orange,
html[data-theme="dark"] .cancel-btn,
html[data-theme="dark"] .add-btn,
html[data-theme="dark"] .details-btn,
html[data-theme="dark"] .store-cart-btn,
html[data-theme="dark"] .product-buy-btn,
html[data-theme="dark"] .option-copy strong,
html[data-theme="dark"] .program-status-primary,
html[data-theme="dark"] .archive-action,
html[data-theme="dark"] a.btn-orange,
html[data-theme="dark"] a.hero-btn-primary,
html[data-theme="dark"] a.program-btn-primary,
html[data-theme="dark"] a.tutorial-buy-action,
html[data-theme="dark"] a.tutorial-modal-buy,
html[data-theme="dark"] a.add-btn,
html[data-theme="dark"] a.details-btn,
html[data-theme="dark"] a.store-cart-btn,
html[data-theme="dark"] a.product-buy-btn,
html[data-theme="dark"] a.program-status-primary,
html[data-theme="dark"] a.archive-action{
  color:#fff !important;
}

html[data-theme="dark"] .btn-orange i,
html[data-theme="dark"] .hero-btn-primary i,
html[data-theme="dark"] .program-btn-primary i,
html[data-theme="dark"] .tutorial-buy-action i,
html[data-theme="dark"] .tutorial-modal-buy i,
html[data-theme="dark"] .add-btn i,
html[data-theme="dark"] .details-btn i,
html[data-theme="dark"] .store-cart-btn i,
html[data-theme="dark"] .product-buy-btn i,
html[data-theme="dark"] .option-copy strong i,
html[data-theme="dark"] .program-status-primary i,
html[data-theme="dark"] .archive-action i{
  color:#fff !important;
}

html[data-theme="dark"] hr{
  border-color:var(--fw-dark-border) !important;
  opacity:1;
}

html[data-theme="dark"] input,
html[data-theme="dark"] textarea,
html[data-theme="dark"] select,
html[data-theme="dark"] .form-control,
html[data-theme="dark"] .form-control-custom,
html[data-theme="dark"] .fw-search-input{
  background:var(--fw-dark-soft) !important;
  border-color:var(--fw-dark-border) !important;
  color:var(--fw-dark-text) !important;
  box-shadow:none !important;
}

html[data-theme="dark"] input::placeholder,
html[data-theme="dark"] textarea::placeholder,
html[data-theme="dark"] .form-control::placeholder,
html[data-theme="dark"] .fw-search-input::placeholder{
  color:#7f8a9d !important;
}

html[data-theme="dark"] input:focus,
html[data-theme="dark"] textarea:focus,
html[data-theme="dark"] select:focus,
html[data-theme="dark"] .form-control:focus,
html[data-theme="dark"] .form-control-custom:focus{
  border-color:var(--blue) !important;
  box-shadow:0 0 0 4px rgba(0,117,255,0.18) !important;
}

html[data-theme="dark"] table,
html[data-theme="dark"] .table{
  --bs-table-bg:var(--fw-dark-surface);
  --bs-table-color:var(--fw-dark-text);
  --bs-table-border-color:var(--fw-dark-border);
  color:var(--fw-dark-text) !important;
}

html[data-theme="dark"] .btn-outline-terms,
html[data-theme="dark"] .btn-outline-custom{
  background:transparent !important;
  border-color:rgba(0,117,255,0.55) !important;
  color:#83bfff !important;
}

html[data-theme="dark"] .hero-section::after{
  background:linear-gradient(180deg, rgba(255,255,255,0) 0%, #0d1118 94%, #0d1118 100%) !important;
}

html[data-theme="dark"] .fw-cart-overlay,
html[data-theme="dark"] .fw-search-overlay{
  background:rgba(0,0,0,0.7) !important;
}

html[data-theme="dark"] .product-detail-page{
  background:
    linear-gradient(90deg, rgba(0,117,255,0.13) 1px, transparent 1px),
    linear-gradient(180deg, #0d1118 0%, #07090d 100%) !important;
  background-size:42px 42px, auto !important;
}

html[data-theme="dark"] .detail-info,
html[data-theme="dark"] .product-extra-section,
html[data-theme="dark"] .gear-card{
  background:linear-gradient(180deg, #11151d 0%, #0d1118 100%) !important;
  border-color:var(--fw-dark-card-border) !important;
  color:var(--fw-dark-text) !important;
  box-shadow:var(--fw-dark-card-glow) !important;
}

html[data-theme="dark"] .detail-info h1,
html[data-theme="dark"] .product-description-card h2,
html[data-theme="dark"] .quantity-row label,
html[data-theme="dark"] .gear-card h3,
html[data-theme="dark"] .detail-section h2{
  color:var(--fw-dark-text) !important;
}

html[data-theme="dark"] .detail-price,
html[data-theme="dark"] .template-label,
html[data-theme="dark"] .product-services i,
html[data-theme="dark"] .gear-card span,
html[data-theme="dark"] .gear-card p{
  color:#83bfff !important;
}

html[data-theme="dark"] .rating span,
html[data-theme="dark"] .product-description-card p,
html[data-theme="dark"] .tax-note,
html[data-theme="dark"] .detail-section li,
html[data-theme="dark"] .product-services a{
  color:var(--fw-dark-muted) !important;
}

html[data-theme="dark"] .product-description-card{
  background:linear-gradient(135deg, rgba(0,117,255,0.1), rgba(117,178,255,0.08)) !important;
  border-color:rgba(117,178,255,0.28) !important;
}

html[data-theme="dark"] .category-tabs,
html[data-theme="dark"] .info-panel .product-services,
html[data-theme="dark"] .detail-section{
  border-color:var(--fw-dark-border) !important;
}

html[data-theme="dark"] .category-tab{
  background:var(--fw-dark-surface-2) !important;
  border-color:rgba(117,178,255,0.28) !important;
  color:var(--fw-dark-text) !important;
  box-shadow:none !important;
}

html[data-theme="dark"] .category-tab:hover{
  border-color:rgba(0,117,255,0.66) !important;
  color:#83bfff !important;
}

html[data-theme="dark"] .category-tab.active{
  background:var(--blue) !important;
  border-color:var(--blue) !important;
  color:#fff !important;
}

html[data-theme="dark"] .quantity-stepper{
  background:var(--fw-dark-soft) !important;
  border-color:rgba(117,178,255,0.3) !important;
  box-shadow:none !important;
}

html[data-theme="dark"] .qty-btn,
html[data-theme="dark"] .quantity-stepper input{
  background:transparent !important;
  color:var(--fw-dark-text) !important;
}

html[data-theme="dark"] .quantity-stepper input{
  border-color:var(--fw-dark-border) !important;
}

html[data-theme="dark"] .qty-btn:hover{
  background:var(--blue) !important;
  color:#fff !important;
}

html[data-theme="dark"] .stock-status{
  color:#8de0bd !important;
}

html[data-theme="dark"] .stock-status span{
  background:#13a871 !important;
}

html[data-theme="dark"] .secondary-action{
  background:var(--fw-dark-surface-2) !important;
  border-color:rgba(0,117,255,0.62) !important;
  color:#83bfff !important;
}

html[data-theme="dark"] .secondary-action:hover{
  background:var(--blue) !important;
  color:#fff !important;
}

html[data-theme="dark"] .secondary-action i{
  color:inherit !important;
}

html[data-theme="dark"] .gear-card img,
html[data-theme="dark"] .thumbs img,
html[data-theme="dark"] .main-product-img{
  background:var(--fw-dark-surface-3) !important;
}

html[data-theme="dark"] .gear-card a{
  background:rgba(0,117,255,0.16) !important;
  color:#83bfff !important;
  box-shadow:none !important;
}

html[data-theme="dark"] .gear-card a:hover{
  background:var(--blue) !important;
  color:#fff !important;
}

html[data-theme="dark"] .fw-search-panel{
  background:var(--fw-dark-surface) !important;
  border-color:rgba(117,178,255,0.44) !important;
  color:var(--fw-dark-text) !important;
  box-shadow:0 0 0 1px rgba(0,117,255,0.24), 0 26px 70px rgba(0,0,0,0.66) !important;
}

html[data-theme="dark"] .fw-search-top,
html[data-theme="dark"] .fw-search-chips,
html[data-theme="dark"] .fw-search-footer{
  background:var(--fw-dark-surface) !important;
  border-color:var(--fw-dark-border) !important;
}

html[data-theme="dark"] .fw-search-leading,
html[data-theme="dark"] .fw-search-close,
html[data-theme="dark"] .fw-search-filter,
html[data-theme="dark"] .fw-search-footer i,
html[data-theme="dark"] .fw-search-result-icon{
  color:#9fb0c8 !important;
}

html[data-theme="dark"] .fw-search-close:hover,
html[data-theme="dark"] .fw-search-filter:hover{
  background:var(--fw-dark-surface-3) !important;
  color:#fff !important;
}

html[data-theme="dark"] .fw-search-chips button{
  background:var(--fw-dark-surface-2) !important;
  border-color:rgba(117,178,255,0.26) !important;
  color:var(--fw-dark-text) !important;
}

html[data-theme="dark"] .fw-search-chips button.active,
html[data-theme="dark"] .fw-search-chips button:hover{
  background:rgba(0,117,255,0.18) !important;
  border-color:rgba(0,117,255,0.72) !important;
  color:#83bfff !important;
}

html[data-theme="dark"] .fw-search-results,
html[data-theme="dark"] .fw-search-result,
html[data-theme="dark"] .fw-search-empty{
  background:#0d1118 !important;
  color:var(--fw-dark-text) !important;
}

html[data-theme="dark"] .fw-search-result{
  border-bottom-color:var(--fw-dark-border) !important;
}

html[data-theme="dark"] .fw-search-result:hover,
html[data-theme="dark"] .fw-search-result:focus-visible,
html[data-theme="dark"] .fw-search-footer:hover{
  background:var(--fw-dark-surface-2) !important;
}

html[data-theme="dark"] .fw-search-result-main strong,
html[data-theme="dark"] .fw-search-empty strong,
html[data-theme="dark"] .fw-search-footer span{
  color:var(--fw-dark-text) !important;
}

html[data-theme="dark"] .fw-search-result-main span,
html[data-theme="dark"] .fw-search-result small,
html[data-theme="dark"] .fw-search-empty span,
html[data-theme="dark"] .fw-search-footer small{
  color:var(--fw-dark-muted) !important;
}

html[data-theme="dark"] .fw-search-result mark{
  background:rgba(254,149,28,0.24) !important;
  color:#ffd39a !important;
}

html[data-theme="dark"] .fw-cart-panel,
html[data-theme="dark"] .fw-cart-header,
html[data-theme="dark"] .fw-cart-body,
html[data-theme="dark"] .fw-cart-footer{
  background:var(--fw-dark-surface) !important;
  border-color:var(--fw-dark-border) !important;
  color:var(--fw-dark-text) !important;
}

html[data-theme="dark"] .fw-cart-body{
  background:#0d1118 !important;
}

html[data-theme="dark"] .fw-cart-item{
  background:var(--fw-dark-surface) !important;
  border-bottom-color:var(--fw-dark-border) !important;
}

html[data-theme="dark"] .fw-cart-item img{
  background:var(--fw-dark-surface-3) !important;
}

html[data-theme="dark"] .fw-cart-title,
html[data-theme="dark"] .fw-cart-close,
html[data-theme="dark"] .fw-cart-item-title,
html[data-theme="dark"] .fw-cart-total-value,
html[data-theme="dark"] .fw-cart-qty span{
  color:var(--fw-dark-text) !important;
}

html[data-theme="dark"] .fw-cart-item-price,
html[data-theme="dark"] .fw-cart-total-label{
  color:var(--fw-dark-muted) !important;
}

html[data-theme="dark"] .fw-cart-close:hover{
  background:var(--fw-dark-surface-3) !important;
}

html[data-theme="dark"] .fw-cart-qty{
  background:var(--fw-dark-soft) !important;
  border-color:rgba(117,178,255,0.28) !important;
  box-shadow:none !important;
}

html[data-theme="dark"] .fw-cart-qty button{
  background:transparent !important;
  color:#9fb0c8 !important;
}

html[data-theme="dark"] .fw-cart-qty button:hover{
  background:var(--fw-dark-surface-3) !important;
  color:#fff !important;
}

html[data-theme="dark"] .fw-cart-empty{
  position:relative !important;
  overflow:hidden !important;
  align-items:end !important;
  padding-top:270px !important;
  background:
    radial-gradient(circle at 50% 24%, rgba(0,117,255,0.16), transparent 34%),
    linear-gradient(180deg, #0d1118 0%, #07090d 100%) !important;
}

html[data-theme="dark"] .fw-cart-empty::before{
  content:"";
  position:absolute;
  top:36px;
  left:50%;
  width:min(86%, 390px);
  height:260px;
  transform:translateX(-50%);
  background:url("Imagenes/Bolsa de compras FW.png") center top / contain no-repeat;
  opacity:0.78;
  filter:drop-shadow(0 24px 36px rgba(0,0,0,0.44));
  pointer-events:none;
}

html[data-theme="dark"] .fw-cart-empty-card{
  position:relative !important;
  z-index:1 !important;
  background:rgba(17,21,29,0.94) !important;
  border:1px solid var(--fw-dark-card-border) !important;
  border-radius:18px !important;
  padding:28px !important;
  box-shadow:var(--fw-dark-card-glow) !important;
}

html[data-theme="dark"] .fw-cart-empty-card h2{
  color:var(--fw-dark-text) !important;
}

html[data-theme="dark"] .fw-cart-empty-card p{
  color:var(--fw-dark-muted) !important;
}

html[data-theme="dark"] .fw-cart-empty-card a,
html[data-theme="dark"] .fw-cart-checkout{
  color:#fff !important;
}

html[data-theme="dark"] .fw-cart-empty-card a span,
html[data-theme="dark"] .fw-cart-checkout span{
  color:#fff !important;
}

html[data-theme="dark"] .fw-cart-toast{
  background:var(--fw-dark-surface) !important;
  border-color:var(--fw-dark-card-border) !important;
  color:var(--fw-dark-text) !important;
  box-shadow:var(--fw-dark-card-glow) !important;
}

html[data-theme="dark"] .login-page{
  background:
    radial-gradient(circle at 10% 16%, rgba(0,117,255,0.18), transparent 28%),
    radial-gradient(circle at 90% 12%, rgba(254,149,28,0.12), transparent 24%),
    linear-gradient(180deg, #05070b 0%, #0d1118 52%, #07090d 100%) !important;
}

html[data-theme="dark"] .login-card{
  background:var(--fw-dark-surface) !important;
  border-color:var(--fw-dark-card-border) !important;
  color:var(--fw-dark-text) !important;
  box-shadow:var(--fw-dark-card-glow) !important;
}

html[data-theme="dark"] .login-image-frame{
  background:rgba(238,242,247,0.9) !important;
}

html[data-theme="dark"] .login-card-kicker,
html[data-theme="dark"] .login-google{
  background:var(--fw-dark-surface-2) !important;
  border:1px solid rgba(117,178,255,0.24) !important;
  color:var(--fw-dark-text) !important;
}

html[data-theme="dark"] .login-google:hover{
  background:var(--fw-dark-surface-3) !important;
}

html[data-theme="dark"] .login-card-text,
html[data-theme="dark"] .login-form span{
  color:var(--fw-dark-muted) !important;
}

html[data-theme="dark"] .login-form input{
  background:var(--fw-dark-soft) !important;
  border-color:var(--fw-dark-border) !important;
  color:var(--fw-dark-text) !important;
}

html[data-theme="dark"] .login-form input:focus{
  background:var(--fw-dark-soft) !important;
  border-color:var(--blue) !important;
  box-shadow:0 0 0 4px rgba(0,117,255,0.18) !important;
}

@media(max-width:575px){
  html[data-theme="dark"] .fw-cart-empty{
    min-height:calc(100vh - 238px) !important;
    padding:210px 20px 28px !important;
    align-items:start !important;
  }

  html[data-theme="dark"] .fw-cart-empty::before{
    top:18px;
    width:min(82%, 270px);
    height:190px;
  }

  html[data-theme="dark"] .fw-cart-empty-card{
    width:100%;
    max-width:300px;
    padding:24px 20px !important;
  }
}

:root{
  --fw-footer-start:#010d35;
  --fw-footer-end:#08245d;
  --fw-footer-bridge-mid:rgba(1,13,53,0.42);
  --fw-footer-bridge-soft:rgba(0,117,255,0.14);
  --fw-footer-bridge-clear:rgba(248,251,255,0);
  --fw-footer-bg:
    linear-gradient(
      180deg,
      #010d35 0%,
      #031845 38%,
      #061d4f 70%,
      #08245d 100%
    );
}

html[data-theme="dark"]{
  --fw-footer-start:#07090d;
  --fw-footer-end:#08245d;
  --fw-footer-bridge-mid:rgba(7,9,13,0.86);
  --fw-footer-bridge-soft:rgba(7,9,13,0.18);
  --fw-footer-bridge-clear:rgba(7,9,13,0);
  --fw-footer-bg:
    linear-gradient(
      180deg,
      #07090d 0%,
      #080c16 16%,
      #0a1430 38%,
      #061d4f 68%,
      #08245d 100%
    );
}

.fw-floating-theme-toggle{
  position:fixed;
  right:22px;
  bottom:22px;
  z-index:9998;
  min-width:56px;
  width:56px;
  height:56px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:0;
  border:1px solid rgba(0,117,255,0.22);
  border-radius:999px;
  background:rgba(255,255,255,0.94);
  color:#0d1b43;
  font-size:0.88rem;
  font-weight:850;
  line-height:1;
  box-shadow:0 18px 42px rgba(8,24,67,0.18);
  cursor:pointer;
  backdrop-filter:blur(16px);
  transition:
    transform 0.2s ease,
    background 0.2s ease,
    color 0.2s ease,
    border-color 0.2s ease,
    box-shadow 0.2s ease;
}

.fw-floating-theme-toggle img{
  width:46px;
  height:46px;
  object-fit:cover;
  object-position:44% 48%;
  flex:0 0 46px;
  border-radius:50%;
  border:1px solid rgba(0,117,255,0.2);
  filter:drop-shadow(0 8px 12px rgba(8,24,67,0.2));
  transition:transform 0.2s ease, filter 0.2s ease;
}

.fw-floating-theme-toggle:hover img,
.fw-floating-theme-toggle:focus-visible img{
  transform:translateY(-1px) scale(1.04);
}

.fw-floating-theme-toggle.is-dark img{
  object-position:47% 45%;
  border-color:rgba(117,178,255,0.32);
  filter:drop-shadow(0 10px 14px rgba(0,0,0,0.42));
}

.fw-floating-theme-toggle:hover,
.fw-floating-theme-toggle:focus-visible{
  transform:translateY(-3px);
  background:#ffffff;
  border-color:rgba(0,117,255,0.42);
  box-shadow:0 22px 48px rgba(0,117,255,0.22);
}

.fw-floating-theme-toggle:focus-visible{
  outline:3px solid rgba(0,117,255,0.28);
  outline-offset:3px;
}

.fw-floating-theme-toggle.is-dark{
  background:rgba(17,21,29,0.94);
  color:#eef2f7;
  border-color:rgba(117,178,255,0.32);
  box-shadow:0 20px 48px rgba(0,0,0,0.42);
}

.fw-floating-theme-toggle.is-dark:hover,
.fw-floating-theme-toggle.is-dark:focus-visible{
  background:#171c26;
  border-color:rgba(117,178,255,0.48);
}

@media(max-width:575px){
  .fw-floating-theme-toggle{
    right:14px;
    bottom:14px;
    min-width:56px;
    width:56px;
    padding:0;
  }

  .fw-floating-theme-toggle img{
    width:48px;
    height:48px;
    flex-basis:48px;
  }

}

.footer-section{
  position:relative;
  isolation:isolate;
  overflow:visible;
  background:var(--fw-footer-bg) !important;
}

.footer-section::before{
  content:"";
  position:absolute;
  left:0;
  right:0;
  top:-96px;
  height:96px;
  background:
    linear-gradient(
      180deg,
      var(--fw-footer-bridge-clear) 0%,
      var(--fw-footer-bridge-soft) 38%,
      var(--fw-footer-bridge-mid) 78%,
      var(--fw-footer-start) 100%
    );
  pointer-events:none;
  z-index:0;
}

.footer-section > .container{
  position:relative;
  z-index:1;
}

.footer-section .footer-title,
.footer-section .footer-subtitle{
  color:#ffffff !important;
  text-shadow:0 2px 14px rgba(0,0,0,0.18);
}

.footer-section .footer-text,
.footer-section .footer-links a,
.footer-section .footer-bottom{
  color:rgba(242,247,255,0.82) !important;
}

.footer-section .footer-links a:hover{
  color:#ffffff !important;
}

.footer-section .footer-subtitle::after{
  background:#ff9d2e !important;
  box-shadow:0 0 14px rgba(254,149,28,0.42);
}

.footer-section .footer-social a{
  background:rgba(255,255,255,0.14) !important;
  border:1px solid rgba(255,255,255,0.12);
  box-shadow:0 12px 28px rgba(0,0,0,0.16);
}

.footer-section .footer-social a:hover{
  background:var(--blue) !important;
  border-color:rgba(255,255,255,0.2);
}

@supports (animation-timeline: view()){
  .footer-section > .container{
    animation:footerSectionEnter 0.9s cubic-bezier(0.22, 1, 0.36, 1) both;
    animation-timeline:view();
    animation-range:entry 0% cover 32%;
  }

  .footer-section .row > [class*="col-"],
  .footer-section .footer-bottom{
    animation:footerItemEnter 0.78s cubic-bezier(0.22, 1, 0.36, 1) both;
    animation-timeline:view();
    animation-range:entry 4% cover 30%;
  }

  .footer-section .row > [class*="col-"]:nth-child(2){
    animation-range:entry 8% cover 34%;
  }

  .footer-section .row > [class*="col-"]:nth-child(3){
    animation-range:entry 12% cover 38%;
  }

  .footer-section .row > [class*="col-"]:nth-child(4){
    animation-range:entry 16% cover 42%;
  }

  .footer-section .footer-bottom{
    animation-range:entry 20% cover 46%;
  }
}

@keyframes footerSectionEnter{
  from{
    opacity:0.72;
    transform:translateY(24px);
  }
  to{
    opacity:1;
    transform:translateY(0);
  }
}

@keyframes footerItemEnter{
  from{
    opacity:0;
    transform:translateY(18px);
  }
  to{
    opacity:1;
    transform:translateY(0);
  }
}

@media(prefers-reduced-motion:reduce){
  .footer-section > .container,
  .footer-section .row > [class*="col-"],
  .footer-section .footer-bottom{
    animation:none !important;
    opacity:1 !important;
    transform:none !important;
  }
}

@media(max-width:767px){
  html[data-theme="dark"] .tutorial-card .tutorial-copy{
    background:transparent !important;
    box-shadow:none !important;
  }

  html[data-theme="dark"] .tutorial-card .tutorial-media{
    z-index:2;
    width:88px !important;
    height:88px !important;
    right:12px !important;
    background:#0d1118 !important;
    border-color:rgba(117,178,255,0.28) !important;
    box-shadow:
      inset 0 0 0 1px rgba(255,255,255,0.1),
      0 12px 28px rgba(0,0,0,0.42) !important;
  }

  html[data-theme="dark"] .tutorial-card .tutorial-media img{
    opacity:1 !important;
    filter:brightness(1.16) contrast(1.08) saturate(1.08) !important;
  }

  html[data-theme="dark"] .tutorial-card .tutorial-copy{
    padding-right:126px !important;
  }
}

@media(max-width:575px){
  html[data-theme="dark"] .tutorial-card .tutorial-media{
    width:76px !important;
    height:76px !important;
    right:10px !important;
  }

  html[data-theme="dark"] .tutorial-card .tutorial-copy{
    padding-right:98px !important;
  }
}
