/* TechTimeSols consistent Day / Night controls and WooCommerce block coverage */
html[data-tt-theme] body {
  background:var(--tt-bg)!important;
  color:var(--tt-ink)!important;
  font-family:"Plus Jakarta Sans",sans-serif;
}
html[data-tt-theme] body :is(.site-main,.site-content,#content,.entry-content,.page-content,.elementor-widget-text-editor,.elementor-text-editor) {
  color:var(--tt-ink);
}
html[data-tt-theme] body :is(.site-header,.site-footer,.site-navigation,.elementor-location-header,.elementor-location-footer) {
  border-color:var(--tt-line);
}
html[data-tt-theme] body :is(h1,h2,h3,h4,h5,h6,.entry-title,.woocommerce-products-header__title,.woocommerce div.product .product_title,.elementor-heading-title){
  color:var(--tt-ink);
}
html[data-tt-theme] body :is(.woocommerce a,.woocommerce-MyAccount-navigation a,.site-header a,.site-footer a){
  color:var(--tt-accent);
}
html[data-tt-theme] body :is(.site-header a,.site-footer a,.site-navigation a,.elementor-nav-menu a){
  color:var(--tt-ink);
}
html[data-tt-theme] body :is(input:not([type=checkbox]):not([type=radio]):not([type=range]),select,textarea,.select2-selection,.wc-block-components-text-input input,.wc-block-components-combobox input){
  background:var(--tt-panel)!important;
  color:var(--tt-ink)!important;
  border-color:var(--tt-line)!important;
  border-radius:10px;
}
html[data-tt-theme] body :is(input,select,textarea)::placeholder {
  color:var(--tt-ink);
  opacity:.65;
}
html[data-tt-theme] body :is(input,select,textarea,button,a):focus-visible{
  outline:2px solid var(--tt-accent)!important;
  outline-offset:2px;
}
html[data-tt-theme] body :is(.woocommerce-account .woocommerce-MyAccount-navigation,.woocommerce-account .woocommerce-MyAccount-content,.woocommerce-cart .cart_totals,.woocommerce-checkout #payment,.woocommerce table.shop_table,.woocommerce form.login,.woocommerce form.register){
  background:var(--tt-panel)!important;
  color:var(--tt-ink)!important;
  border-color:var(--tt-line)!important;
}
html[data-tt-theme] body .woocommerce :is(.woocommerce-MyAccount-content p,.woocommerce-MyAccount-content strong,.woocommerce-MyAccount-navigation li a,.woocommerce-message,.woocommerce-info,.woocommerce-error,th,td){
  color:var(--tt-ink);
}
html[data-tt-theme] body .woocommerce div.product .woocommerce-tabs :is(.panel,ul.tabs li,ul.tabs li.active){
  background:var(--tt-panel);
  border-color:var(--tt-line);
  color:var(--tt-ink);
}
html[data-tt-theme] body .woocommerce .star-rating:before,
html[data-tt-theme] body .woocommerce .star-rating span:before{
  color:var(--tt-accent);
}
html[data-tt-theme] body .techtimes-shop-filters :is(.techtimes-filter-field,.techtimes-stock-toggle,.techtimes-filter-reset){
  color:var(--tt-ink);
}
html[data-tt-theme] body .woocommerce :is(.woocommerce-ordering select,.widget-area .widget,.widget-area .widget-title){
  color:var(--tt-ink)!important;
  background:var(--tt-panel);
  border-color:var(--tt-line);
}
html[data-tt-theme] body .woocommerce :is(.price_slider_wrapper .ui-slider-range,.price_slider_wrapper .ui-slider-handle){
  background:var(--tt-accent);
}
html[data-tt-theme] body :is(.woocommerce-shop,.woocommerce-cart,.woocommerce-checkout,.woocommerce-account) :is(.entry-content,.site-main){
  color:var(--tt-ink);
}
/* Cart and Checkout blocks use a different DOM from classic WooCommerce templates */
html[data-tt-theme] body :is(.wp-block-woocommerce-cart,.wp-block-woocommerce-checkout,.wc-block-cart,.wc-block-checkout,.wc-block-components-sidebar,.wc-block-components-main,.wc-block-components-order-summary){
  color:var(--tt-ink);
  border-color:var(--tt-line);
}
html[data-tt-theme] body :is(.wc-block-components-sidebar,.wc-block-components-totals-wrapper,.wc-block-components-panel,.wc-block-components-order-summary,.wc-block-cart-items,.wc-block-components-totals-coupon,.wc-block-components-address-form){
  background:var(--tt-panel);
  color:var(--tt-ink);
  border-color:var(--tt-line);
}
html[data-tt-theme] body :is(.wc-block-components-title,.wc-block-components-product-name,.wc-block-components-product-price,.wc-block-components-formatted-money-amount,.wc-block-components-totals-item__label,.wc-block-components-totals-item__value,.wc-block-components-checkbox__label,.wc-block-components-radio-control__label,.wc-block-components-shipping-rates-control,.wc-block-components-notice-banner,.wc-block-cart__empty-cart__title,.wc-block-components-address-card){
  color:var(--tt-ink);
}
html[data-tt-theme] body :is(.wc-block-components-text-input label,.wc-block-components-combobox label,.wc-block-components-state-input label){
  color:var(--tt-ink)!important;
}
html[data-tt-theme] body .wc-block-components-button:not(.is-link){
  background:var(--tt-accent)!important;
  border:1px solid var(--tt-accent)!important;
  color:var(--tt-on)!important;
  border-radius:999px;
}
html[data-tt-theme] body .wc-block-components-button:not(.is-link) span{
  color:var(--tt-on);
}
html[data-tt-theme] body :is(.wc-block-components-quantity-selector,.wc-block-components-quantity-selector input,.wc-block-components-quantity-selector button){
  background:var(--tt-panel);
  color:var(--tt-ink);
  border-color:var(--tt-line);
}
html[data-tt-theme] body :is(.wc-block-components-button.is-link,.wc-block-components-totals-coupon-link,.wc-block-cart-item__remove-link){
  color:var(--tt-accent);
}
html[data-tt-theme] body :is(.wc-block-components-notice-banner,.wc-block-components-validation-error,.woocommerce-error,.woocommerce-info,.woocommerce-message){
  background:var(--tt-panel);
  border-color:var(--tt-accent);
}
html[data-tt-theme] body :is(.wp-block-table table,.wp-block-table td,.wp-block-table th,.wp-block-separator,.woocommerce-table th,.woocommerce-table td){
  border-color:var(--tt-line);
  color:var(--tt-ink);
}
html[data-tt-theme] body .tt-theme-holder{
  position:fixed;
  z-index:99998;
  right:16px;
  bottom:16px;
}
html[data-tt-theme] body .tt-theme-switch{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:128px;
  min-height:44px;
  padding:10px 16px;
  color:var(--tt-ink);
  background:var(--tt-panel);
  border:1px solid var(--tt-accent);
  border-radius:999px;
  font:700 13px/1.25 "Plus Jakarta Sans",sans-serif;
  cursor:pointer;
  white-space:nowrap;
  box-shadow:none;
}
html[data-tt-theme] body .tt-theme-switch:hover{
  color:var(--tt-accent);
}
@media(max-width:767px){
  html[data-tt-theme] body .tt-theme-holder{right:10px;bottom:10px}
  html[data-tt-theme] body .tt-theme-switch{min-height:40px;min-width:112px;padding:8px 12px;font-size:12px}
}
@media(prefers-reduced-motion:reduce){
  html[data-tt-theme] body .tt-theme-switch{transition:none!important}
}

/* Shop archive: bind the custom .tts-store theme to the shared site switch.
 * The original store stylesheet uses --bg/--panel/--ink, while the global
 * switch controls --tt-bg/--tt-panel/--tt-ink. Do not create a second mode. */
html[data-tt-theme="day"] body .tts-store,
html[data-tt-theme="night"] body .tts-store {
  --bg:var(--tt-bg);
  --panel:var(--tt-panel);
  --ink:var(--tt-ink);
  --line:var(--tt-line);
  --accent:var(--tt-accent);
  --on-accent:var(--tt-on);
  background:var(--bg);
  color:var(--ink);
}
html[data-tt-theme="day"] body .tts-store {
  --muted:#54707D;
  --glow:rgba(0,141,167,.14);
}
html[data-tt-theme="night"] body .tts-store {
  --muted:#A9BDC7;
  --glow:rgba(0,213,232,.2);
}
/* The shop-specific search, sorting and cards inherit matching surfaces. */
html[data-tt-theme] body.woocommerce-shop .tts-store .techtimes-shop-filters,
html[data-tt-theme] body.tax-product_cat .tts-store .techtimes-shop-filters {
  background:var(--panel)!important;
  border-color:var(--line)!important;
  color:var(--ink)!important;
}
html[data-tt-theme] body.woocommerce-shop .tts-store .techtimes-shop-filters :is(input[type="search"],input[type="number"],select),
html[data-tt-theme] body.tax-product_cat .tts-store .techtimes-shop-filters :is(input[type="search"],input[type="number"],select){
  background:var(--bg)!important;
  border-color:var(--line)!important;
  color:var(--ink)!important;
}
html[data-tt-theme] body.woocommerce-shop .tts-store .woocommerce-ordering select,
html[data-tt-theme] body.tax-product_cat .tts-store .woocommerce-ordering select {
  background:var(--panel)!important;
  color:var(--ink)!important;
  border-color:var(--line)!important;
}
html[data-tt-theme] body.woocommerce-shop .tts-store :is(.techtimes-filter-field,.techtimes-stock-toggle,.woocommerce-result-count),
html[data-tt-theme] body.tax-product_cat .tts-store :is(.techtimes-filter-field,.techtimes-stock-toggle,.woocommerce-result-count){
  color:var(--muted)!important;
}
