/*
Theme Name: SmartMekanik
Theme URI: https://smartmekanik.example
Author: SmartMekanik Engineering
Author URI: https://smartmekanik.example
Description: SmartMekanik custom WordPress theme with SEO-first architecture, WooCommerce integration, and fully manageable admin-driven sections.
Version: 1.0.0
Requires at least: 6.5
Tested up to: 6.5
Requires PHP: 8.1
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: smartmekanik
Tags: custom-theme, e-commerce, one-column, two-columns, right-sidebar, custom-menu, featured-images, translation-ready
*/

:root {
  --smk-color-bg: #f7f8fb;
  --smk-color-surface: #ffffff;
  --smk-color-surface-soft: #f4f6fa;
  --smk-color-text: #0f172a;
  --smk-color-muted: #5f6775;
  --smk-color-primary: #ff6a1a;
  --smk-color-primary-dark: #ec5608;
  --smk-color-secondary: #0a2b5f;
  --smk-color-accent: #1158f1;
  --smk-color-success: #0ea46b;
  --smk-color-border: #e6e9ef;
  --smk-shadow-soft: 0 8px 24px rgba(15, 23, 42, 0.08);
  --smk-shadow-card: 0 16px 40px rgba(15, 23, 42, 0.06);
  --smk-radius-sm: 10px;
  --smk-radius-md: 16px;
  --smk-radius-lg: 24px;
  --smk-radius-xl: 32px;
  --smk-container: min(1360px, 94vw);
  --smk-transition: 180ms ease;
}

:root[data-theme="dark"] {
  --smk-color-bg: #0f172a;
  --smk-color-surface: #1e293b;
  --smk-color-surface-soft: #334155;
  --smk-color-text: #f8fafc;
  --smk-color-muted: #94a3b8;
  --smk-color-border: #334155;
  --smk-shadow-soft: 0 8px 24px rgba(0, 0, 0, 0.4);
  --smk-shadow-card: 0 16px 40px rgba(0, 0, 0, 0.5);
}

* {
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
}

body {
  margin: 0;
  font-family: "Inter", "Segoe UI", sans-serif;
  color: var(--smk-color-text);
  background: var(--smk-color-bg);
  line-height: 1.55;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

a {
  color: inherit;
  text-decoration: none;
}

a:hover,
a:focus-visible {
  color: var(--smk-color-primary);
}

img {
  max-width: 100%;
  height: auto;
  display: block;
}

button,
input,
select,
textarea {
  font: inherit;
}

.smk-visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  border: 0;
}

.smk-container {
  width: var(--smk-container);
  margin-inline: auto;
}

.smk-section {
  margin-top: 28px;
}

.smk-card {
  background: var(--smk-color-surface);
  border: 1px solid var(--smk-color-border);
  border-radius: var(--smk-radius-md);
  box-shadow: var(--smk-shadow-soft);
}

.smk-button,
button.smk-button,
.wp-block-button__link {
  border: 0;
  border-radius: 12px;
  padding: 12px 20px;
  font-weight: 700;
  cursor: pointer;
  transition: transform var(--smk-transition), background var(--smk-transition), box-shadow var(--smk-transition);
  display: inline-flex;
  justify-content: center;
  align-items: center;
  gap: 8px;
}

.smk-button:hover,
.smk-button:focus-visible {
  transform: translateY(-1px);
}

.smk-button--primary {
  background: var(--smk-color-primary);
  color: #fff;
}

.smk-button--primary:hover,
.smk-button--primary:focus-visible {
  background: var(--smk-color-primary-dark);
  box-shadow: 0 10px 20px rgba(255, 106, 26, 0.28);
  color: #fff;
}

.smk-button--ghost {
  background: transparent;
  border: 1px solid var(--smk-color-border);
}

.smk-button--secondary {
  background: var(--smk-color-accent);
  color: #fff;
}

.smk-chip {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 4px 10px;
  border-radius: 999px;
  background: rgba(255, 106, 26, 0.1);
  color: var(--smk-color-primary-dark);
  font-weight: 600;
  font-size: 12px;
}

.smk-headline {
  margin: 0;
  font-size: clamp(28px, 4.2vw, 56px);
  line-height: 1.08;
  letter-spacing: -0.02em;
}

.smk-subheadline {
  margin: 0;
  color: var(--smk-color-muted);
  max-width: 52ch;
}

.smk-grid {
  display: grid;
  gap: 18px;
}

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

.smk-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.smk-grid--4 {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.smk-grid--5 {
  grid-template-columns: repeat(5, minmax(0, 1fr));
}

.smk-site {
  min-height: 100vh;
  display: flex;
  flex-direction: column;
}

.smk-main {
  flex: 1;
  padding-bottom: 24px;
}

.smk-header {
  position: sticky;
  top: 0;
  z-index: 1000;
  background: rgba(255, 255, 255, 0.95);
  backdrop-filter: blur(10px);
  border-bottom: 1px solid var(--smk-color-border);
}

.smk-header__top {
  min-height: 72px;
  display: grid;
  grid-template-columns: auto minmax(500px, 1fr) auto;
  align-items: center;
  gap: 28px;
}

.smk-brand {
  display: flex;
  align-items: center;
  gap: 12px;
  font-weight: 800;
}

.smk-brand__logo {
  inline-size: 36px;
  block-size: 36px;
  border-radius: 999px;
  border: 1px solid rgba(15, 23, 42, 0.16);
  background: #fff7f1;
  display: grid;
  place-items: center;
  color: #1a2438;
  font-weight: 700;
  font-size: 19px;
}

.smk-brand__name {
  font-size: 20px;
  letter-spacing: -0.02em;
}

.smk-brand__name span {
  color: var(--smk-color-primary);
}

.smk-search {
  position: relative;
}

.smk-search__field {
  width: 100%;
  border: 1px solid var(--smk-color-border);
  border-radius: 12px;
  background: #fff;
  padding: 13px 44px 13px 16px;
}

.smk-search__icon {
  position: absolute;
  inset-inline-end: 14px;
  inset-block-start: 50%;
  transform: translateY(-50%);
  color: #8591a6;
  font-size: 18px;
}

.smk-search__icon--passive {
  pointer-events: none;
}

.smk-header__actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
}

.smk-header-cta {
  min-height: 40px;
  padding: 10px 16px;
  border-radius: 10px;
}

.smk-lang-switch {
  border: 0;
  background: transparent;
  color: #1f293d;
  padding: 8px 10px;
  border-radius: 10px;
  font-weight: 600;
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

.smk-lang-switch:hover,
.smk-lang-switch:focus-visible {
  background: var(--smk-color-surface-soft);
}

.smk-lang-switch--widget {
  padding: 0;
}

.smk-lang-switch--widget .gtranslate_wrapper {
  display: inline-flex;
  align-items: center;
}

.smk-lang-switch--widget .gt_selector {
  min-height: 40px;
  border: 1px solid var(--smk-color-border);
  border-radius: 10px;
  background: #fff;
  color: #1f293d;
  font-size: 14px;
  font-weight: 600;
  padding: 8px 34px 8px 10px;
}

.smk-lang-switch--widget .gt_selector:focus-visible {
  outline: 2px solid rgba(255, 106, 26, 0.28);
  outline-offset: 1px;
}

.smk-lang-switch--widget a.glink {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: #1f293d;
  font-size: 14px;
  font-weight: 600;
  border-radius: 10px;
  padding: 8px 10px;
}

.smk-lang-switch--widget a.glink:hover,
.smk-lang-switch--widget a.glink:focus-visible {
  background: var(--smk-color-surface-soft);
}

.smk-icon-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #27334a;
  font-size: 14px;
  padding: 10px 12px;
  border-radius: 10px;
}

.smk-icon-glyph {
  inline-size: 18px;
  block-size: 18px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #475066;
}

.smk-icon-link:hover,
.smk-icon-link:focus-visible {
  background: var(--smk-color-surface-soft);
}

.smk-header__nav {
  display: flex;
  justify-content: center;
  align-items: center;
  min-height: 1px;
  overflow: hidden;
}

.smk-nav,
.smk-footer-nav,
.smk-mobile-nav {
  margin: 0;
  padding: 0;
  list-style: none;
}

.smk-nav {
  display: flex;
  align-items: center;
  flex-wrap: nowrap;
  gap: 4px;
}

.smk-nav li {
  position: relative;
  list-style: none;
}

.smk-nav a {
  display: inline-flex;
  align-items: center;
  border-radius: 10px;
  padding: 8px 10px;
  font-weight: 600;
  font-size: 14px;
  color: #2b3346;
}

.smk-nav .current-menu-item > a,
.smk-nav .current_page_item > a {
  color: var(--smk-color-primary);
  background: transparent;
}

.smk-nav a:hover,
.smk-nav a:focus-visible {
  color: var(--smk-color-primary);
  background: rgba(255, 106, 26, 0.08);
}

/* Hover-based submenus dropdown styling */
.smk-nav .sub-menu {
  position: absolute;
  top: 100%;
  left: 0;
  margin-top: 6px;
  background: #ffffff;
  border: 1px solid #e2e8f0;
  box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
  border-radius: 12px;
  padding: 8px 0;
  list-style: none;
  min-width: 200px;
  opacity: 0;
  visibility: hidden;
  transform: translateY(10px);
  transition: opacity 0.2s ease, transform 0.2s ease, visibility 0.2s;
  z-index: 999;
}

.smk-nav li:hover > .sub-menu,
.smk-nav li:focus-within > .sub-menu {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

.smk-nav .sub-menu li {
  width: 100%;
}

.smk-nav .sub-menu a {
  display: block;
  border-radius: 0;
  padding: 8px 16px;
  color: #2b3346;
  font-weight: 500;
  font-size: 14px;
  white-space: nowrap;
  width: 100%;
}

.smk-nav .sub-menu a:hover,
.smk-nav .sub-menu a:focus-visible {
  background: rgba(255, 106, 26, 0.08);
  color: var(--smk-color-primary);
}

.smk-menu-toggle {
  display: none;
  border: 0;
  background: transparent;
  width: 42px;
  height: 42px;
  border-radius: 12px;
}

.smk-menu-toggle__bars {
  display: inline-flex;
  flex-direction: column;
  gap: 4px;
}

.smk-menu-toggle__bars span {
  display: block;
  width: 16px;
  height: 2px;
  border-radius: 999px;
  background: #23304a;
}

.smk-menu-toggle:hover,
.smk-menu-toggle:focus-visible {
  background: var(--smk-color-surface-soft);
}

.smk-hero {
  margin-top: 14px;
  border-radius: 22px;
  overflow: hidden;
  position: relative;
  background: linear-gradient(115deg, #eff4ff 0%, #fbfdff 100%);
  min-height: 530px;
  border: 1px solid var(--smk-color-border);
}

.smk-hero--reference {
  min-height: 1px;
  background: #f4f1f0;
}

.smk-hero__layer {
  position: absolute;
  inset: 0;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  filter: saturate(1.1);
}

.smk-hero__overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(3, 9, 22, 0.86) 0%, rgba(3, 9, 22, 0.58) 38%, rgba(3, 9, 22, 0.12) 72%);
}

.smk-hero__content {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr);
  gap: 18px;
  min-height: 100%;
  padding: 44px;
}

.smk-hero__content--reference {
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.2fr) minmax(245px, 0.56fr);
  align-items: stretch;
  gap: 14px;
  padding: 24px 18px 14px;
}

.smk-hero__copy {
  color: #fff;
  max-width: 660px;
  display: flex;
  flex-direction: column;
  gap: 20px;
  justify-content: center;
}

.smk-hero__copy--reference {
  color: var(--smk-color-text);
  gap: 12px;
}

.smk-hero--no-bg .smk-hero__copy {
  color: #0f172a;
}

.smk-hero--no-bg .smk-subheadline {
  color: #334155;
}

.smk-hero--no-bg .smk-hero__copy .smk-headline strong {
  color: var(--smk-color-primary-dark);
}

.smk-hero__copy .smk-headline {
  font-size: clamp(40px, 4.4vw, 72px);
}

.smk-hero__copy--reference .smk-headline {
  font-size: clamp(52px, 4.3vw, 70px);
  line-height: 1.03;
  max-width: 11ch;
}

.smk-hero__copy .smk-headline strong {
  color: var(--smk-color-primary);
}

.smk-inline-search {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px;
  width: min(520px, 100%);
}

.smk-inline-search .smk-field {
  min-height: 42px;
  border-radius: 9px;
}

.smk-inline-search .smk-button {
  min-height: 42px;
  min-width: 70px;
  padding: 10px 12px;
  border-radius: 9px;
}

.smk-hero__form {
  background: #fff;
  color: var(--smk-color-text);
  border-radius: 18px;
  padding: 18px;
  border: 1px solid rgba(255, 255, 255, 0.2);
  box-shadow: var(--smk-shadow-card);
}

.smk-tabs {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
  margin-bottom: 12px;
}

.smk-tab {
  border: 0;
  padding: 10px;
  border-radius: 10px;
  background: var(--smk-color-surface-soft);
  font-weight: 600;
  color: #2b3650;
}

.smk-tab.is-active {
  background: #0f172a;
  color: #fff;
}

.smk-search-form {
  display: grid;
  gap: 10px;
}

.smk-field,
.smk-select,
.smk-textarea {
  width: 100%;
  border: 1px solid var(--smk-color-border);
  background: #fff;
  border-radius: 10px;
  padding: 13px 14px;
}

.smk-search-form__row {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr)) auto;
  gap: 10px;
}

.smk-metrics {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  margin-top: 14px;
}

.smk-metrics--reference {
  margin-top: 6px;
  gap: 14px;
  grid-template-columns: repeat(4, minmax(0, max-content));
}

.smk-metric {
  background: rgba(255, 255, 255, 0.9);
  border-radius: 12px;
  padding: 12px;
  font-weight: 700;
  color: #0f172a;
}

.smk-metrics--reference .smk-metric {
  background: transparent;
  border: 0;
  box-shadow: none;
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 0;
}

.smk-metric__icon {
  color: #cf8a1a;
  font-weight: 700;
  font-size: 13px;
}

.smk-metrics--reference .smk-metric strong {
  display: block;
  font-size: 24px;
  line-height: 1;
}

.smk-metric span {
  display: block;
  font-size: 13px;
  color: #59647b;
  font-weight: 500;
}

.smk-hero__side {
  display: flex;
  flex-direction: column;
  gap: 14px;
  justify-content: center;
}

.smk-list-card {
  background: rgba(255, 255, 255, 0.96);
  border: 1px solid rgba(255, 255, 255, 0.4);
  border-radius: 18px;
  padding: 16px;
  box-shadow: var(--smk-shadow-card);
}

.smk-list-card--hero {
  border-radius: 14px;
  background: #fff;
  border-color: rgba(15, 23, 42, 0.08);
  padding: 14px 12px;
  box-shadow: none;
}

.smk-list-card--hero .smk-list-card__title {
  font-size: 18px;
  margin: 0;
}

.smk-list-card--hero .smk-link-inline {
  font-size: 14px;
}

.smk-list-card__head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 8px;
  margin-bottom: 10px;
}

.smk-list-card__title {
  font-size: 20px;
  margin: 0 0 12px;
}

.smk-list-card ul {
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 2px;
}

.smk-list-card li a {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 9px;
  padding: 9px 6px;
  border-radius: 8px;
  border: 0;
}

.smk-service-dot {
  color: #e08f1f;
  font-size: 12px;
  line-height: 1;
}

.smk-service-icon {
  width: 18px;
  height: 18px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #7a869a;
  font-size: 14px;
  line-height: 1;
}

.smk-hero__visual {
  border-radius: 12px;
  background: #efebea;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
  min-height: 316px;
}

.smk-list-card li a:hover,
.smk-list-card li a:focus-visible {
  background: rgba(15, 23, 42, 0.03);
}

.smk-ai-hero-card {
  display: none;
  border-radius: 14px;
  background: linear-gradient(145deg, #050f23 0%, #0f2a4f 100%);
  color: #fff;
  border: 1px solid rgba(255, 255, 255, 0.14);
  padding: 14px 12px;
}

.smk-ai-hero-card__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  margin-bottom: 8px;
}

.smk-ai-hero-card__head h2 {
  margin: 0;
  font-size: 18px;
  line-height: 1.2;
}

.smk-ai-hero-card__badge {
  display: inline-flex;
  align-items: center;
  border-radius: 999px;
  padding: 3px 8px;
  font-size: 11px;
  font-weight: 700;
  color: #f8b13a;
  background: rgba(248, 177, 58, 0.16);
}

.smk-ai-hero-card p {
  margin: 0 0 10px;
  color: rgba(255, 255, 255, 0.85);
  font-size: 13px;
  line-height: 1.45;
}

.smk-ai-hero-card__form {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px;
}

.smk-ai-hero-card__form input {
  border: 0;
  border-radius: 10px;
  padding: 11px 12px;
  min-width: 0;
}

.smk-ai-hero-card__form .smk-button {
  min-height: 42px;
  padding: 10px 14px;
}

.smk-hero__side .smk-list-card--hero {
  order: 1;
}

.smk-hero__side .smk-ai-hero-card {
  order: 2;
}

.smk-section__head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  margin-bottom: 14px;
}

.smk-section__title {
  margin: 0;
  font-size: clamp(22px, 2.1vw, 32px);
  letter-spacing: -0.015em;
}

.smk-link-inline {
  color: var(--smk-color-accent);
  font-weight: 700;
}

.smk-categories {
  display: grid;
  gap: 14px;
  grid-template-columns: repeat(6, minmax(0, 1fr));
}

.smk-categories--compact {
  grid-template-columns: repeat(6, minmax(0, 1fr));
}

.smk-category-card {
  text-align: center;
  padding: 16px 10px;
  border: 1px solid var(--smk-color-border);
  border-radius: 16px;
  background: #fff;
  transition: transform var(--smk-transition), border-color var(--smk-transition);
}

.smk-category-card--compact {
  padding: 12px 8px;
  border-radius: 12px;
}

.smk-category-card:hover,
.smk-category-card:focus-visible {
  transform: translateY(-2px);
  border-color: var(--smk-color-primary);
}

.smk-category-card__thumb {
  width: 88px;
  aspect-ratio: 1;
  margin: 0 auto 10px;
  border-radius: 20px;
  background: #fff4ed;
  display: grid;
  place-items: center;
  overflow: hidden;
}

.smk-category-card__glyph {
  font-size: 28px;
  color: #172133;
  line-height: 1;
}

.smk-category-card__title {
  font-size: 18px;
  font-weight: 800;
  margin: 0;
}

.smk-category-card--compact .smk-category-card__title {
  font-size: 13px;
}

.smk-category-card--compact .smk-category-card__meta {
  font-size: 12px;
}

.smk-category-card__meta {
  color: var(--smk-color-muted);
  margin-top: 4px;
  font-size: 13px;
}

.smk-split {
  display: grid;
  gap: 16px;
  grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr);
}

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

.smk-feature {
  padding: 16px;
  border: 1px solid var(--smk-color-border);
  border-radius: 14px;
  background: #fff;
}

.smk-feature h3 {
  margin: 8px 0 6px;
  font-size: 18px;
}

.smk-feature p {
  margin: 0;
  color: var(--smk-color-muted);
  font-size: 14px;
}

.smk-map {
  border-radius: 18px;
  overflow: hidden;
  min-height: 360px;
  border: 1px solid var(--smk-color-border);
  position: relative;
  background: #081228;
}

.smk-map__canvas {
  min-height: 360px;
}

.smk-map__list {
  position: absolute;
  inset-block-end: 0;
  inset-inline-end: 0;
  width: min(330px, 85%);
  max-height: 100%;
  overflow: auto;
  background: rgba(8, 18, 40, 0.86);
  color: #fff;
  padding: 14px;
}

.smk-map__item {
  display: flex;
  justify-content: space-between;
  gap: 8px;
  padding: 10px;
  border-radius: 10px;
  background: rgba(255, 255, 255, 0.08);
  margin-bottom: 8px;
}

.smk-horizontal-scroll {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: minmax(230px, 1fr);
  gap: 14px;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  padding-bottom: 6px;
}

.smk-horizontal-scroll > * {
  scroll-snap-align: start;
}

.smk-product-card {
  border: 1px solid var(--smk-color-border);
  border-radius: 16px;
  padding: 16px;
  background: #fff;
  display: flex;
  flex-direction: column;
  gap: 8px;
  min-height: 260px;
}

.smk-product-card__image {
  aspect-ratio: 4 / 3;
  display: grid;
  place-items: center;
  border-radius: 12px;
  background: var(--smk-color-surface-soft);
  overflow: hidden;
}

.smk-product-card__title {
  margin: 0;
  font-size: 17px;
}

.smk-product-card__meta {
  color: var(--smk-color-muted);
  font-size: 14px;
  margin: 0;
}

.smk-price {
  font-size: 28px;
  font-weight: 800;
}

.smk-rating {
  color: #fbac13;
  font-weight: 700;
  font-size: 13px;
}

.smk-testimonials {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.smk-testimonial {
  border-radius: 14px;
  border: 1px solid var(--smk-color-border);
  background: #fff;
  padding: 16px;
}

.smk-testimonial__head {
  display: flex;
  align-items: center;
  gap: 10px;
}

.smk-testimonial__avatar {
  inline-size: 42px;
  block-size: 42px;
  border-radius: 999px;
  background: #e6ebf6;
}

.smk-app-banner {
  border-radius: 22px;
  background: linear-gradient(125deg, #041227, #0a2344 60%, #0f2f58);
  color: #fff;
  padding: 30px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(220px, 0.7fr);
  gap: 16px;
  align-items: center;
}

.smk-app-banner ul {
  margin: 16px 0;
  padding-left: 20px;
}

.smk-strip {
  border-radius: 18px;
  background: #031124;
  color: #fff;
  padding: 18px;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

.smk-strip__item {
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 12px;
  padding: 12px;
}

.smk-footer {
  background: #030f22;
  color: #d4def1;
  margin-top: 36px;
  padding-top: 34px;
}

.smk-showcase__columns {
  display: grid;
  grid-template-columns: minmax(0, 1.12fr) minmax(0, 1fr);
  gap: 16px;
  align-items: start;
}

.smk-showcase__left,
.smk-showcase__right {
  display: grid;
  gap: 16px;
}

.smk-showcase__right {
  align-content: start;
  grid-auto-rows: max-content;
}

.smk-surface-card {
  padding: 16px;
  box-shadow: none;
}

.smk-steps-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}

.smk-step-card {
  border: 1px solid var(--smk-color-border);
  border-radius: 12px;
  padding: 12px;
  background: #fff;
}

.smk-step-card__index {
  color: #dd9019;
  font-size: 22px;
  font-weight: 800;
  line-height: 1;
}

.smk-step-card h3 {
  margin: 10px 0 6px;
  font-size: 15px;
}

.smk-step-card p {
  margin: 0;
  font-size: 12px;
  color: #5b6577;
}

.smk-benefit-inline-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}

.smk-benefit-inline {
  text-align: center;
  padding: 8px 6px;
}

.smk-benefit-inline__glyph {
  width: 42px;
  height: 42px;
  display: inline-grid;
  place-items: center;
  border-radius: 999px;
  border: 1px solid rgba(224, 143, 31, 0.35);
  color: #de9119;
  background: #fffaf3;
  font-size: 16px;
  font-weight: 700;
}

.smk-benefit-inline h3 {
  font-size: 16px;
  margin: 10px 0 4px;
}

.smk-benefit-inline p {
  font-size: 12px;
  color: #5b6577;
  margin: 0;
}

.smk-cta-banner {
  position: relative;
  border-radius: 12px;
  overflow: hidden;
  min-height: 166px;
  background-size: cover;
  background-position: center;
}

.smk-cta-banner__overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(3, 12, 31, 0.88) 0%, rgba(3, 12, 31, 0.52) 58%, rgba(3, 12, 31, 0.06) 100%);
}

.smk-cta-banner__content {
  position: relative;
  z-index: 1;
  color: #fff;
  padding: 18px;
  max-width: 55%;
}

.smk-cta-banner__content h3 {
  margin: 0 0 8px;
  font-size: 32px;
  line-height: 1.04;
}

.smk-cta-banner__content p {
  margin: 0;
  color: rgba(255, 255, 255, 0.85);
}

.smk-cta-banner__actions {
  margin-top: 12px;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.smk-cta-banner__actions .smk-button--ghost {
  border-color: rgba(255, 255, 255, 0.35);
  color: #fff;
}

.smk-trusted-brands {
  margin-bottom: 20px;
}

.smk-brand-strip {
  border-top: 1px solid var(--smk-color-border);
  border-bottom: 1px solid var(--smk-color-border);
  padding: 16px 0;
  display: grid;
  grid-template-columns: repeat(9, minmax(0, 1fr));
  gap: 12px;
  align-items: center;
}

.smk-brand-strip__item {
  font-size: 25px;
  font-weight: 700;
  color: #828a97;
  text-align: center;
  letter-spacing: 0.02em;
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
}

.smk-brand-logo-img {
  max-height: 36px;
  width: auto;
  max-width: 100%;
  object-fit: contain;
  filter: grayscale(100%);
  opacity: 0.6;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.smk-brand-strip__item:hover .smk-brand-logo-img {
  filter: grayscale(0%);
  opacity: 1;
  transform: scale(1.05);
}

.smk-footer__grid {
  display: grid;
  grid-template-columns: minmax(0, 1.4fr) repeat(4, minmax(0, 1fr));
  gap: 20px;
}

.smk-footer h3 {
  color: #fff;
  margin: 0 0 12px;
  font-size: 20px;
  font-weight: 700;
}

.smk-footer .smk-brand__logo {
  border-color: rgba(255, 255, 255, 0.35);
  background: rgba(255, 255, 255, 0.1);
  color: #fff;
}

.smk-footer-nav {
  display: grid;
  gap: 8px;
}

.smk-footer-nav a {
  color: #d4def1;
  font-size: 16px;
}

.smk-footer-nav a:hover,
.smk-footer-nav a:focus-visible {
  color: #fff;
}

.smk-footer__bottom {
  margin-top: 26px;
  border-top: 1px solid rgba(212, 222, 241, 0.16);
  padding: 16px 0;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
}

.smk-store-badges {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}

.smk-store-badges__label {
  color: rgba(212, 222, 241, 0.85);
  font-size: 12px;
}

.smk-store-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 34px;
  padding: 8px 12px;
  border-radius: 8px;
  border: 1px solid rgba(255, 255, 255, 0.25);
  color: #fff;
  font-size: 12px;
  font-weight: 700;
  background: rgba(255, 255, 255, 0.08);
}

.smk-store-badge:hover,
.smk-store-badge:focus-visible {
  border-color: rgba(255, 255, 255, 0.55);
  color: #fff;
}

.smk-mobile-drawer {
  position: fixed;
  inset: 0;
  z-index: 1200;
  pointer-events: none;
}

.smk-mobile-drawer__overlay {
  position: absolute;
  inset: 0;
  background: rgba(2, 7, 16, 0.52);
  opacity: 0;
  transition: opacity var(--smk-transition);
}

.smk-mobile-drawer__panel {
  position: absolute;
  inset-inline-start: 0;
  inset-block: 0;
  width: min(86vw, 360px);
  background: #fff;
  padding: 20px;
  transform: translateX(-102%);
  transition: transform var(--smk-transition);
  overflow: auto;
}

.smk-mobile-drawer.is-open {
  pointer-events: auto;
}

.smk-mobile-drawer.is-open .smk-mobile-drawer__overlay {
  opacity: 1;
}

.smk-mobile-drawer.is-open .smk-mobile-drawer__panel {
  transform: translateX(0);
}

.smk-mobile-nav {
  display: grid;
  gap: 8px;
}

.smk-mobile-nav a {
  display: block;
  padding: 12px;
  border-radius: 10px;
  border: 1px solid var(--smk-color-border);
}

.smk-bottom-nav {
  position: fixed;
  inset-inline: 0;
  inset-block-end: 0;
  z-index: 999;
  background: #fff;
  border-top: 1px solid var(--smk-color-border);
  display: none;
}

.smk-bottom-nav ul {
  margin: 0;
  padding: 8px 10px;
  list-style: none;
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 6px;
}

.smk-bottom-nav a {
  display: grid;
  justify-items: center;
  gap: 4px;
  color: #475066;
  font-size: 12px;
  padding: 6px;
  border-radius: 10px;
}

.smk-bottom-nav .current-menu-item > a,
.smk-bottom-nav a:hover,
.smk-bottom-nav a:focus-visible {
  color: var(--smk-color-primary);
  background: rgba(255, 106, 26, 0.1);
}

.smk-breadcrumb {
  font-size: 14px;
  color: var(--smk-color-muted);
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
}

.smk-page-header {
  margin-top: 24px;
}

.smk-page-header h1 {
  margin: 8px 0;
  font-size: clamp(32px, 3.4vw, 52px);
}

.smk-content {
  margin-top: 24px;
}

.smk-form-grid {
  display: grid;
  gap: 12px;
}

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

.smk-empty {
  padding: 24px;
  border: 1px dashed var(--smk-color-border);
  border-radius: 14px;
  background: #fff;
}

.smk-pagination {
  display: flex;
  gap: 8px;
  justify-content: center;
  margin-top: 18px;
}

.smk-pagination ul {
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  gap: 8px;
}

.smk-pagination li {
  list-style: none;
}

.smk-pagination .page-numbers {
  border: 1px solid var(--smk-color-border);
  border-radius: 10px;
  padding: 10px 14px;
  font-weight: 700;
  background: #fff;
}

.smk-pagination .current {
  border-color: var(--smk-color-primary);
  color: var(--smk-color-primary);
}

.smk-account-layout {
  display: grid;
  grid-template-columns: minmax(220px, 0.4fr) minmax(0, 1fr);
  gap: 16px;
}

.smk-account-nav {
  border: 1px solid var(--smk-color-border);
  border-radius: 14px;
  background: #fff;
  padding: 12px;
}

.smk-account-nav ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.smk-account-nav a {
  display: block;
  padding: 10px;
  border-radius: 10px;
}

.smk-account-nav .is-active a,
.smk-account-nav a:hover,
.smk-account-nav a:focus-visible {
  background: rgba(17, 88, 241, 0.12);
  color: var(--smk-color-accent);
}

.smk-account-panel {
  border: 1px solid var(--smk-color-border);
  border-radius: 14px;
  background: #fff;
  padding: 18px;
}

.smk-auth {
  width: min(460px, 100%);
  margin-inline: auto;
  padding: 24px;
}

.smk-auth h1 {
  margin-top: 0;
}

.smk-field-help {
  font-size: 13px;
  color: var(--smk-color-muted);
  margin-top: 4px;
}

.smk-status {
  padding: 12px;
  border-radius: 10px;
  margin-bottom: 14px;
}

.smk-status--success {
  background: rgba(14, 164, 107, 0.12);
  color: #046f45;
}

.smk-status--error {
  background: rgba(225, 64, 64, 0.12);
  color: #a72424;
}

.smk-ai {
  border-radius: 16px;
  background: linear-gradient(135deg, #040f24 0%, #0b2549 100%);
  color: #fff;
  padding: 18px;
}

.smk-ai.is-locked .smk-ai__panel {
  display: none;
}

.smk-ai:not(.is-locked) .smk-ai__lead {
  display: none;
}

.smk-ai__lead h2 {
  margin: 0 0 8px;
  font-size: 22px;
}

.smk-ai__lead p {
  margin: 0 0 14px;
  color: rgba(255, 255, 255, 0.88);
}

.smk-ai__lead-form {
  display: grid;
  gap: 10px;
}

.smk-ai__lead-form input {
  border: 0;
  border-radius: 10px;
  padding: 12px;
}

.smk-ai__lead-status {
  min-height: 18px;
  margin-top: 10px !important;
  font-size: 13px;
  font-weight: 600;
}

.smk-ai__log {
  max-height: 340px;
  overflow: auto;
  margin-bottom: 10px;
  display: grid;
  gap: 8px;
}

.smk-ai__message {
  padding: 10px 12px;
  border-radius: 10px;
  max-width: 92%;
}

.smk-ai__message--user {
  justify-self: end;
  background: rgba(255, 106, 26, 0.2);
}

.smk-ai__message--assistant {
  justify-self: start;
  background: rgba(255, 255, 255, 0.14);
}

.smk-ai__form {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px;
}

.smk-ai__form input {
  border: 0;
  border-radius: 10px;
  padding: 12px;
}

.smk-ai-home {
  border: 1px solid rgba(255, 255, 255, 0.12);
  box-shadow: var(--smk-shadow-card);
}

.smk-ai-home__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}

.smk-ai-home__head h3 {
  margin: 0;
  font-size: 22px;
  line-height: 1.2;
}

.smk-ai-home__subtitle {
  margin: 8px 0 10px;
  color: rgba(255, 255, 255, 0.88);
}

.smk-ai-home .smk-ai__log {
  max-height: 200px;
  margin-bottom: 10px;
}

.smk-ai-home__prompts {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 10px;
}

.smk-ai-home__prompt {
  display: inline-flex;
  align-items: center;
  border: 1px solid rgba(255, 255, 255, 0.22);
  border-radius: 999px;
  padding: 8px 12px;
  font-size: 13px;
  color: rgba(255, 255, 255, 0.92);
  background: rgba(255, 255, 255, 0.06);
}

.smk-ai-home__prompt:hover,
.smk-ai-home__prompt:focus-visible {
  background: rgba(255, 255, 255, 0.14);
  color: #fff;
}

.smk-woo .products {
  display: grid !important;
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
  gap: 14px;
}

.smk-woo .product {
  border: 1px solid var(--smk-color-border);
  border-radius: 14px;
  padding: 12px;
  background: #fff;
}

.smk-woo .product .button {
  background: var(--smk-color-primary);
  color: #fff;
  border-radius: 10px;
  border: 0;
  padding: 10px 12px;
}

.smk-woo .woocommerce-message,
.smk-woo .woocommerce-info,
.smk-woo .woocommerce-error {
  border-radius: 12px;
  border: 1px solid var(--smk-color-border);
  background: #fff;
}

.smk-woo .button,
.smk-woo button,
.smk-woo input.button {
  border-radius: 10px !important;
}

@media (max-width: 1200px) {
  .smk-header__top {
    grid-template-columns: auto minmax(300px, 1fr) auto;
    gap: 12px;
  }

  .smk-nav a {
    padding: 8px;
    font-size: 13px;
  }

  .smk-hero__content--reference {
    grid-template-columns: 1fr;
    padding: 22px 18px;
  }

  .smk-hero__side {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    align-items: start;
  }

  .smk-hero__visual {
    min-height: 260px;
  }

  .smk-metrics--reference {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
  }

  .smk-metrics--reference .smk-metric {
    border: 1px solid rgba(10, 20, 42, 0.08);
    border-radius: 10px;
    padding: 10px 12px;
  }

  .smk-showcase__columns {
    grid-template-columns: 1fr;
  }

  .smk-categories--compact {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .smk-steps-grid,
  .smk-benefit-inline-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .smk-brand-strip {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .smk-brand-strip__item {
    font-size: 22px;
  }

  .smk-hero__content {
    grid-template-columns: 1fr;
    gap: 14px;
  }

  .smk-hero__copy {
    max-width: none;
  }

  .smk-categories {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .smk-split,
  .smk-footer__grid {
    grid-template-columns: 1fr;
  }

  .smk-testimonials {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 960px) {
  .smk-header__top {
    grid-template-columns: auto 1fr auto;
    gap: 8px;
    min-height: 66px;
  }

  .smk-brand-wrap,
  .smk-brand,
  .smk-brand > span {
    min-width: 0;
  }

  .smk-brand__logo {
    inline-size: 32px;
    block-size: 32px;
    font-size: 14px;
  }

  .smk-brand__name {
    display: block;
    font-size: clamp(18px, 5vw, 22px);
    line-height: 1.15;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 170px;
  }

  .smk-brand small {
    display: none !important;
  }

  .smk-header__actions {
    gap: 4px;
  }

  .smk-header__actions .smk-icon-link {
    padding: 8px;
  }

  .smk-header__actions .smk-icon-label {
    display: none;
  }

  .smk-header__actions .smk-header-cta {
    display: none;
  }

  .smk-header__actions .smk-lang-switch--widget {
    display: inline-flex;
    align-items: center;
    margin-inline-start: 2px;
  }

  .smk-header__actions .smk-lang-switch--widget .gt_selector {
    min-height: 34px;
    max-width: 94px;
    padding: 6px 24px 6px 8px;
    font-size: 12px;
    border-radius: 9px;
  }

  .smk-header__actions .smk-lang-switch--widget a.glink {
    max-width: 94px;
    padding: 6px 8px;
    font-size: 12px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
  }

  .smk-header__nav {
    display: none;
  }

  .smk-menu-toggle {
    display: inline-grid;
    place-items: center;
  }

  .smk-main {
    padding-bottom: calc(90px + env(safe-area-inset-bottom));
  }

  .smk-bottom-nav {
    display: block;
    padding-bottom: env(safe-area-inset-bottom);
  }

  .smk-hero {
    min-height: auto;
  }

  .smk-hero__content {
    padding: 16px;
  }

  .smk-hero__copy .smk-headline {
    font-size: clamp(32px, 10vw, 50px);
  }

  .smk-hero__copy--reference .smk-headline {
    font-size: clamp(34px, 10vw, 44px);
    max-width: none;
  }

  .smk-hero__copy--reference .smk-subheadline {
    font-size: 16px;
  }

  .smk-hero__content--reference {
    padding: 14px;
    gap: 10px;
  }

  .smk-hero__side {
    grid-template-columns: 1fr;
    gap: 10px;
  }

  .smk-ai-hero-card {
    display: block;
  }

  .smk-hero__content--reference .smk-list-card--hero {
    display: none;
  }

  .smk-ai-hero-card__form {
    grid-template-columns: 1fr;
  }

  .smk-hero__content--reference .smk-hero__visual {
    min-height: 220px;
    border-radius: 12px;
  }

  .smk-hero__content--reference .smk-inline-search .smk-field,
  .smk-hero__content--reference .smk-inline-search .smk-button {
    min-height: 46px;
  }

  .smk-hero__content--reference .smk-metrics--reference {
    display: none;
  }

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

  .smk-search-form__row {
    grid-template-columns: 1fr;
  }

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

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

  .smk-feature-grid,
  .smk-strip,
  .smk-form-grid--2,
  .smk-account-layout,
  .smk-app-banner {
    grid-template-columns: 1fr;
  }

  .smk-ai-home .smk-ai__form {
    grid-template-columns: 1fr;
  }

  .smk-ai-home__head {
    flex-direction: column;
    align-items: flex-start;
  }

  .smk-ai-home__prompts {
    display: grid;
    grid-template-columns: 1fr;
  }

  .smk-map__list {
    position: static;
    width: 100%;
    background: #081228;
  }

  .smk-footer {
    padding-bottom: calc(82px + env(safe-area-inset-bottom));
  }
}

@media (max-width: 640px) {
  .smk-container {
    width: min(100%, calc(100vw - 18px));
  }

  .smk-header__actions {
    gap: 2px;
  }

  .smk-header__actions .smk-lang-switch--widget .gt_selector {
    max-width: 82px;
    padding: 6px 22px 6px 7px;
    font-size: 11px;
  }

  .smk-header__actions .smk-lang-switch--widget a.glink {
    max-width: 82px;
    font-size: 11px;
    padding: 6px 7px;
  }

  .smk-bottom-nav a {
    font-size: 11px;
    padding: 6px 4px;
  }
}

body.admin-bar .smk-header {
  top: 32px;
}

@media (max-width: 782px) {
  body.admin-bar .smk-header {
    top: 46px;
  }
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}

/* ==========================================================================
   Premium Store Directory & Listings
   ========================================================================== */

/* Store Directory Hero Section */
.smk-store-hero {
  background: linear-gradient(135deg, #0a2b5f 0%, #0d1e36 50%, #081228 100%);
  position: relative;
  overflow: hidden;
  border-radius: var(--smk-radius-lg);
  padding: 60px 40px;
  color: #ffffff;
  margin-top: 14px;
  border: 1px solid rgba(255, 255, 255, 0.08);
  box-shadow: var(--smk-shadow-card);
}

.smk-store-hero::before {
  content: "";
  position: absolute;
  top: -20%;
  right: -10%;
  width: 400px;
  height: 400px;
  background: radial-gradient(circle, rgba(255, 106, 26, 0.15) 0%, transparent 70%);
  filter: blur(40px);
  pointer-events: none;
}

.smk-store-hero::after {
  content: "";
  position: absolute;
  bottom: -20%;
  left: -10%;
  width: 300px;
  height: 300px;
  background: radial-gradient(circle, rgba(17, 88, 241, 0.15) 0%, transparent 70%);
  filter: blur(40px);
  pointer-events: none;
}

.smk-store-hero__content {
  position: relative;
  z-index: 2;
  max-width: 800px;
}

.smk-store-hero__title {
  font-size: clamp(32px, 4vw, 48px);
  font-weight: 800;
  line-height: 1.15;
  letter-spacing: -0.02em;
  margin: 0 0 12px;
  background: linear-gradient(135deg, #ffffff 0%, #e2e8f0 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.smk-store-hero__subtitle {
  font-size: clamp(15px, 1.8vw, 17px);
  color: #94a3b8;
  line-height: 1.6;
  margin: 0 0 28px;
}

/* Premium Metrics Cards inside Hero */
.smk-store-metrics {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
  gap: 16px;
  max-width: 650px;
}

.smk-store-metric-card {
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid rgba(255, 255, 255, 0.08);
  backdrop-filter: blur(8px);
  border-radius: var(--smk-radius-md);
  padding: 16px;
  transition: transform var(--smk-transition), border-color var(--smk-transition);
}

.smk-store-metric-card:hover {
  transform: translateY(-2px);
  border-color: rgba(255, 106, 26, 0.3);
  background: rgba(255, 255, 255, 0.05);
}

.smk-store-metric-value {
  font-size: 28px;
  font-weight: 800;
  color: var(--smk-color-primary);
  line-height: 1.1;
  margin-bottom: 4px;
}

.smk-store-metric-label {
  font-size: 13px;
  color: #94a3b8;
  font-weight: 500;
}

/* Premium Filter Form Bar */
.smk-store-filter-bar {
  background: #ffffff;
  border: 1px solid var(--smk-color-border);
  border-radius: var(--smk-radius-md);
  padding: 24px;
  margin-top: -30px;
  margin-bottom: 30px;
  position: relative;
  z-index: 10;
  box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.05), 0 8px 10px -6px rgba(0, 0, 0, 0.05);
}

.smk-store-filter-bar__grid {
  display: grid;
  grid-template-columns: 1.2fr 1fr 1fr auto;
  align-items: flex-end;
  gap: 16px;
}

.smk-store-filter-field {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.smk-store-filter-field label {
  font-size: 13px;
  font-weight: 700;
  color: #475569;
}

.smk-store-input-wrapper {
  position: relative;
  display: flex;
  align-items: center;
}

.smk-store-input-wrapper select,
.smk-store-input-wrapper input {
  padding-left: 40px;
  height: 48px;
  border-radius: var(--smk-radius-sm);
  border: 1px solid var(--smk-color-border);
  font-size: 14px;
  font-weight: 500;
  width: 100%;
  transition: border-color var(--smk-transition), box-shadow var(--smk-transition);
}

.smk-store-input-wrapper select:focus,
.smk-store-input-wrapper input:focus {
  outline: none;
  border-color: var(--smk-color-primary);
  box-shadow: 0 0 0 3px rgba(255, 106, 26, 0.12);
}

.smk-store-input-icon {
  position: absolute;
  left: 14px;
  color: #94a3b8;
  display: flex;
  align-items: center;
  justify-content: center;
  pointer-events: none;
}

/* Premium Store Card */
.smk-store-card-premium {
  background: #ffffff;
  border: 1px solid var(--smk-color-border);
  border-radius: var(--smk-radius-md);
  overflow: hidden;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  box-shadow: 0 4px 10px rgba(15, 23, 42, 0.02), 0 1px 3px rgba(15, 23, 42, 0.01);
  transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.3s cubic-bezier(0.16, 1, 0.3, 1), border-color 0.3s;
}

.smk-store-card-premium:hover {
  transform: translateY(-5px);
  border-color: rgba(255, 106, 26, 0.2);
  box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.06), 0 10px 10px -5px rgba(0, 0, 0, 0.04);
}

.smk-store-card-cover {
  position: relative;
  height: 120px;
  background: linear-gradient(135deg, #0a2b5f 0%, #1e3a8a 100%);
  overflow: hidden;
}

.smk-store-card-cover::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: radial-gradient(rgba(255,255,255,0.15) 1px, transparent 0);
  background-size: 12px 12px;
  opacity: 0.3;
}

.smk-store-card-cover img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.5s ease;
}

.smk-store-card-premium:hover .smk-store-card-cover img {
  transform: scale(1.08);
}

.smk-store-card-badges {
  position: absolute;
  top: 12px;
  right: 12px;
  display: flex;
  flex-direction: column;
  gap: 6px;
  align-items: flex-end;
  z-index: 3;
}

/* Float Rating Badge */
.smk-store-badge-rating {
  background: rgba(255, 255, 255, 0.94);
  backdrop-filter: blur(4px);
  color: #0f172a;
  font-size: 12px;
  font-weight: 700;
  padding: 5px 9px;
  border-radius: 99px;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  box-shadow: 0 4px 6px rgba(0,0,0,0.08);
  border: 1px solid rgba(255, 255, 255, 0.6);
}

/* Floating Verified Badge */
.smk-store-badge-verified {
  background: #e0f2fe;
  color: #0369a1;
  font-size: 11px;
  font-weight: 700;
  padding: 5px 9px;
  border-radius: 99px;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  box-shadow: 0 4px 6px rgba(0,0,0,0.05);
  border: 1px solid #bae6fd;
}

.smk-store-badge-category {
  position: absolute;
  top: 12px;
  left: 12px;
  background: var(--smk-color-primary);
  color: #ffffff;
  font-size: 11px;
  font-weight: 700;
  padding: 5px 10px;
  border-radius: 99px;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
  z-index: 3;
}

/* Profile Avatar overlapping cover */
.smk-store-card-avatar {
  width: 76px;
  height: 76px;
  border-radius: 50%;
  border: 4px solid #ffffff;
  background: #ffffff;
  box-shadow: 0 8px 16px rgba(15, 23, 42, 0.08);
  margin-top: -38px;
  margin-left: 20px;
  position: relative;
  z-index: 4;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
}

.smk-store-card-avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.smk-store-card-avatar-placeholder {
  width: 100%;
  height: 100%;
  background: linear-gradient(135deg, #ff6a1a 0%, #ff9e66 100%);
  color: #ffffff;
  font-size: 28px;
  font-weight: 800;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* Card Body styling */
.smk-store-card-body {
  padding: 20px;
  display: flex;
  flex-direction: column;
  gap: 14px;
  flex: 1;
}

.smk-store-card-title {
  font-size: 18px;
  font-weight: 700;
  color: #1e293b;
  margin: 0;
  line-height: 1.35;
  transition: color var(--smk-transition);
}

.smk-store-card-title a {
  color: inherit;
  text-decoration: none;
}

.smk-store-card-title a:hover {
  color: var(--smk-color-primary);
}

/* Details List (Location/Phone/Hours/Products) */
.smk-store-detail-list {
  display: grid;
  gap: 10px;
}

.smk-store-detail-item {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  color: #475569;
  font-size: 13.5px;
  line-height: 1.4;
}

.smk-store-detail-item svg {
  color: #64748b;
  flex-shrink: 0;
  margin-top: 2px;
}

.smk-store-map-link {
  color: var(--smk-color-accent);
  font-weight: 600;
  font-size: 12px;
  margin-left: 6px;
  display: inline-flex;
  align-items: center;
  gap: 2px;
}

.smk-store-map-link:hover {
  text-decoration: underline;
}

.smk-store-detail-item.smk-products-on-sale {
  background: #f0fdf4;
  border: 1px solid #dcfce7;
  padding: 6px 10px;
  border-radius: 8px;
  color: #15803d;
  font-weight: 600;
  font-size: 13px;
  display: inline-flex;
  align-items: center;
}

.smk-store-detail-item.smk-products-on-sale svg {
  color: #16a34a;
}

/* Service categories tags/chips */
.smk-store-services-section {
  border-top: 1px solid var(--smk-color-border);
  padding-top: 12px;
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.smk-store-services-label {
  font-size: 11px;
  font-weight: 700;
  color: #94a3b8;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}

.smk-store-services-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.smk-store-service-chip {
  background: #f8fafc;
  border: 1px solid var(--smk-color-border);
  color: #475569;
  font-size: 11px;
  font-weight: 600;
  padding: 4px 8px;
  border-radius: 6px;
  transition: background var(--smk-transition), border-color var(--smk-transition), color var(--smk-transition);
}

.smk-store-service-chip:hover {
  background: #f1f5f9;
  border-color: #cbd5e1;
  color: #0f172a;
}

/* Card Action Footer */
.smk-store-card-footer {
  padding: 16px 20px 20px;
  border-top: 1px solid var(--smk-color-border);
  display: flex;
  gap: 10px;
  background: #f8fafc;
}

.smk-store-card-footer .smk-button--primary {
  flex: 1;
  text-align: center;
  padding: 10px 16px;
  font-size: 14px;
  font-weight: 700;
  border-radius: 8px;
}

/* Media Queries for Filters & Hero Banner */
@media (max-width: 1024px) {
  .smk-store-filter-bar__grid {
    grid-template-columns: 1fr 1fr;
  }
  .smk-store-filter-bar__grid button {
    grid-column: span 2;
    height: 48px;
  }
}

@media (max-width: 640px) {
  .smk-store-hero {
    padding: 30px 20px;
  }
  .smk-store-filter-bar__grid {
    grid-template-columns: 1fr;
  }
  .smk-store-filter-bar__grid button {
    grid-column: span 1;
  }
  .smk-store-filter-bar {
    padding: 16px;
    margin-top: -15px;
  }
}

/* ==========================================================================
   Premium Master Profile Styles
   ========================================================================== */

.smk-master-profile-header {
  background: #ffffff;
  border: 1px solid var(--smk-color-border);
  border-radius: var(--smk-radius-lg);
  overflow: hidden;
  margin-bottom: 30px;
  box-shadow: var(--smk-shadow-soft);
}

.smk-master-profile-cover {
  height: 180px;
  background: linear-gradient(135deg, #0a2b5f 0%, #1e3a8a 100%);
  position: relative;
}

.smk-master-profile-cover::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: radial-gradient(rgba(255,255,255,0.12) 1px, transparent 0);
  background-size: 14px 14px;
}

.smk-master-profile-header-content {
  padding: 20px 30px 30px;
  display: flex;
  align-items: flex-end;
  gap: 24px;
  position: relative;
  z-index: 5;
}

.smk-master-profile-avatar {
  width: 120px;
  height: 120px;
  border-radius: 50%;
  border: 6px solid #ffffff;
  background: #ffffff;
  box-shadow: 0 10px 20px rgba(15, 23, 42, 0.08);
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  margin-top: -80px;
}

.smk-master-profile-avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.smk-master-profile-avatar-placeholder {
  width: 100%;
  height: 100%;
  background: linear-gradient(135deg, #ff6a1a 0%, #ff9e66 100%);
  color: #ffffff;
  font-size: 48px;
  font-weight: 800;
  display: flex;
  align-items: center;
  justify-content: center;
}

.smk-master-profile-info {
  margin-bottom: 10px;
  flex: 1;
}

.smk-master-profile-name {
  font-size: 26px;
  font-weight: 800;
  color: #1e293b;
  margin: 0;
}

.smk-master-verified-badge {
  background: #f0fdf4;
  border: 1px solid #bbf7d0;
  color: #16a34a;
  font-size: 12px;
  font-weight: 700;
  padding: 4px 10px;
  border-radius: 99px;
  display: inline-flex;
  align-items: center;
  gap: 4px;
}

.smk-master-profile-meta {
  display: flex;
  gap: 16px;
  margin-top: 10px;
  flex-wrap: wrap;
}

.smk-master-meta-item {
  display: flex;
  align-items: center;
  gap: 6px;
  color: #64748b;
  font-size: 14px;
}

.smk-master-meta-item svg {
  color: #94a3b8;
}

/* Master Layout Grid */
.smk-master-layout {
  display: grid;
  grid-template-columns: 2fr 1fr;
  gap: 30px;
  align-items: start;
}

.smk-master-section-title {
  font-size: 20px;
  font-weight: 700;
  color: #1e293b;
  margin: 0 0 20px;
  display: flex;
  align-items: center;
  gap: 10px;
  padding-bottom: 12px;
  border-bottom: 1px solid var(--smk-color-border);
}

.smk-master-section-title svg {
  color: var(--smk-color-primary);
}

/* Master Services Cards */
.smk-master-services-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
  gap: 16px;
}

.smk-master-service-card {
  background: #f8fafc;
  border: 1px solid var(--smk-color-border);
  padding: 16px;
  border-radius: var(--smk-radius-md);
  display: flex;
  align-items: flex-start;
  gap: 12px;
  transition: border-color var(--smk-transition), background var(--smk-transition);
}

.smk-master-service-card:hover {
  border-color: rgba(255, 106, 26, 0.25);
  background: #ffffff;
}

.smk-master-service-icon {
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background: #e0f2fe;
  color: #0284c7;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.smk-master-service-name {
  font-size: 14.5px;
  font-weight: 700;
  color: #334155;
  line-height: 1.35;
}

/* Master Sidebar Contact Card */
.smk-master-sidebar-card {
  background: #ffffff;
  border: 1px solid var(--smk-color-border);
  border-radius: var(--smk-radius-md);
  padding: 24px;
  box-shadow: var(--smk-shadow-soft);
  display: flex;
  flex-direction: column;
  gap: 20px;
  margin-bottom: 20px;
}

.smk-master-sidebar-card h3 {
  margin: 0;
  font-size: 18px;
  font-weight: 700;
  color: #1e293b;
}

.smk-master-contact-item {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 12px;
  border-radius: 8px;
  border: 1px solid var(--smk-color-border);
  transition: background var(--smk-transition);
}

.smk-master-contact-item:hover {
  background: #f8fafc;
}

.smk-master-contact-icon {
  color: var(--smk-color-primary);
  flex-shrink: 0;
  margin-top: 2px;
}

.smk-master-contact-content {
  display: flex;
  flex-direction: column;
}

.smk-master-contact-label {
  font-size: 11px;
  font-weight: 700;
  color: #94a3b8;
  text-transform: uppercase;
}

.smk-master-contact-value {
  font-size: 14px;
  font-weight: 600;
  color: #334155;
}

.smk-master-contact-value a {
  color: inherit;
}

.smk-master-contact-value a:hover {
  color: var(--smk-color-primary);
}

/* Working Hours widget */
.smk-master-hours-list {
  display: grid;
  gap: 8px;
  margin-top: 8px;
}

.smk-master-hours-row {
  display: flex;
  justify-content: space-between;
  font-size: 13.5px;
  color: #475569;
  padding-bottom: 6px;
  border-bottom: 1px dashed var(--smk-color-border);
}

.smk-master-hours-row:last-child {
  border-bottom: none;
}

.smk-master-hours-day {
  font-weight: 600;
}

.smk-master-hours-time {
  color: #1e293b;
  font-weight: 500;
}

@media (max-width: 768px) {
  .smk-master-profile-header-content {
    flex-direction: column;
    align-items: center;
    text-align: center;
    margin-top: 0;
    padding: 15px 20px 20px;
  }
  .smk-master-profile-avatar {
    margin-top: -75px;
  }
  .smk-master-profile-meta {
    justify-content: center;
  }
  .smk-master-layout {
    grid-template-columns: 1fr;
  }
}

/* ==========================================================================
   Premium WooCommerce My Account Dashboard
   ========================================================================== */

.smk-woo > .smk-card {
  padding: 0 !important;
  overflow: hidden;
  box-shadow: var(--smk-shadow-soft);
  border-radius: var(--smk-radius-lg);
}

.smk-woo .woocommerce {
  display: grid;
  grid-template-columns: 260px 1fr;
  min-height: 520px;
  background: #ffffff;
}

/* Sidebar Navigation */
.smk-woo .woocommerce-MyAccount-navigation {
  border-right: 1px solid var(--smk-color-border);
  background: #fcfcfd;
  padding: 24px 16px;
}

.smk-woo .woocommerce-MyAccount-navigation ul {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.smk-woo .woocommerce-MyAccount-navigation li {
  padding: 0;
  margin: 0;
}

.smk-woo .woocommerce-MyAccount-navigation li a {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 12px 16px;
  border-radius: var(--smk-radius-sm);
  color: #475569;
  font-size: 14px;
  font-weight: 600;
  transition: all var(--smk-transition);
  text-decoration: none;
}

.smk-woo .woocommerce-MyAccount-navigation li a:hover {
  background: #f1f5f9;
  color: var(--smk-color-primary-dark);
}

.smk-woo .woocommerce-MyAccount-navigation li.is-active a {
  background: linear-gradient(135deg, var(--smk-color-primary) 0%, var(--smk-color-primary-dark) 100%);
  color: #ffffff;
  box-shadow: 0 4px 12px rgba(255, 106, 26, 0.2);
}

/* Dashboard Content Area */
.smk-woo .woocommerce-MyAccount-content {
  padding: 40px;
  background: #ffffff;
}

.smk-woo .woocommerce-MyAccount-content h3,
.smk-woo .woocommerce-MyAccount-content h2 {
  font-size: 20px;
  font-weight: 700;
  color: #1e293b;
  margin-top: 0;
  margin-bottom: 20px;
}

.smk-woo .woocommerce-MyAccount-content p {
  font-size: 14.5px;
  color: #475569;
  line-height: 1.6;
  margin-top: 0;
  margin-bottom: 20px;
}

.smk-woo .woocommerce-MyAccount-content a {
  color: var(--smk-color-primary);
  font-weight: 700;
}

.smk-woo .woocommerce-MyAccount-content a:hover {
  text-decoration: underline;
}

/* Notices & Alert Banners */
.woocommerce-message, 
.woocommerce-info, 
.woocommerce-error {
  list-style: none;
  padding: 16px 20px;
  border-radius: 8px;
  margin-bottom: 28px;
  font-size: 14px;
  font-weight: 600;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  border-left: 4px solid;
}

.woocommerce-message {
  background: #f0fdf4;
  border-color: #16a34a;
  color: #15803d;
  border-top: none;
  border-right: none;
  border-bottom: none;
}

.woocommerce-info {
  background: #eff6ff;
  border-color: #2563eb;
  color: #1d4ed8;
  border-top: none;
  border-right: none;
  border-bottom: none;
}

.woocommerce-error {
  background: #fef2f2;
  border-color: #dc2626;
  color: #b91c1c;
  border-top: none;
  border-right: none;
  border-bottom: none;
}

.woocommerce-message a, 
.woocommerce-info a, 
.woocommerce-error a {
  background: rgba(0, 0, 0, 0.05);
  padding: 6px 12px;
  border-radius: 6px;
  color: inherit;
  font-size: 12.5px;
  text-decoration: none;
}

/* Edit Address / Account Fields */
.woocommerce-form-row {
  margin-bottom: 16px;
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.woocommerce-form-row label {
  font-size: 13.5px;
  font-weight: 700;
  color: #334155;
}

.woocommerce-Input,
.woocommerce-Input--text,
.woocommerce-Input--email,
.woocommerce-Input--password,
.woocommerce-address-fields input,
.woocommerce-address-fields select {
  width: 100%;
  height: 44px;
  padding: 10px 14px;
  border-radius: 8px;
  border: 1px solid var(--smk-color-border);
  font-size: 14px;
  font-weight: 500;
  background: #ffffff;
  color: #1e293b;
  transition: border-color var(--smk-transition), box-shadow var(--smk-transition);
}

.woocommerce-Input:focus,
.woocommerce-address-fields input:focus {
  outline: none;
  border-color: var(--smk-color-primary);
  box-shadow: 0 0 0 3px rgba(255, 106, 26, 0.1);
}

/* Submit Buttons */
.woocommerce-Button,
.woocommerce-button,
.woocommerce-EditProfileForm button[type="submit"] {
  background: var(--smk-color-primary);
  color: #ffffff !important;
  border: none;
  border-radius: 8px;
  padding: 12px 24px;
  font-size: 14px;
  font-weight: 700;
  cursor: pointer;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  transition: all var(--smk-transition);
}

.woocommerce-Button:hover,
.woocommerce-button:hover,
.woocommerce-EditProfileForm button[type="submit"]:hover {
  background: var(--smk-color-primary-dark);
  box-shadow: 0 8px 16px rgba(255, 106, 26, 0.2);
}

/* Address columns styling */
.u-columns {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 24px;
  margin-top: 24px;
}

.woocommerce-Address {
  background: #f8fafc;
  border: 1px solid var(--smk-color-border);
  border-radius: var(--smk-radius-md);
  padding: 24px;
}

.woocommerce-Address-title {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 12px;
}

.woocommerce-Address-title h3 {
  margin: 0 !important;
  font-size: 16px;
  font-weight: 700;
}

.woocommerce-Address-title .edit {
  color: var(--smk-color-accent);
  font-size: 13px;
  font-weight: 700;
  text-decoration: none;
}

.woocommerce-Address address {
  font-style: normal;
  font-size: 14px;
  color: #475569;
  line-height: 1.6;
}

/* Dashboard orders table */
.woocommerce-MyAccount-orders {
  width: 100%;
  border-collapse: collapse;
  margin-top: 16px;
}

.woocommerce-MyAccount-orders th,
.woocommerce-MyAccount-orders td {
  padding: 14px 16px;
  text-align: left;
  border-bottom: 1px solid var(--smk-color-border);
  font-size: 14px;
}

.woocommerce-MyAccount-orders th {
  font-weight: 700;
  color: #475569;
  background: #f8fafc;
}

.woocommerce-MyAccount-orders td {
  color: #334155;
  font-weight: 500;
}

.woocommerce-MyAccount-orders td a {
  color: var(--smk-color-accent);
  font-weight: 700;
  text-decoration: none;
}

.woocommerce-MyAccount-orders td a:hover {
  text-decoration: underline;
}

/* Mobile responsive styles */
@media (max-width: 900px) {
  .smk-woo .woocommerce {
    grid-template-columns: 1fr;
  }
  
  .smk-woo .woocommerce-MyAccount-navigation {
    border-right: none;
    border-bottom: 1px solid var(--smk-color-border);
    padding: 16px;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }

  .smk-woo .woocommerce-MyAccount-navigation ul {
    flex-direction: row;
    white-space: nowrap;
    gap: 8px;
  }

  .smk-woo .woocommerce-MyAccount-navigation li a {
    padding: 8px 12px;
    font-size: 13px;
  }
  
  .smk-woo .woocommerce-MyAccount-content {
    padding: 24px 16px;
  }
  
  .u-columns {
    grid-template-columns: 1fr;
    gap: 16px;
  }
}

/* ==========================================================================
   Premium Master Directory Cards
   ========================================================================== */

.smk-master-card-premium {
  background: #ffffff;
  border: 1px solid var(--smk-color-border);
  border-radius: var(--smk-radius-md);
  overflow: hidden;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  box-shadow: 0 4px 10px rgba(15, 23, 42, 0.02), 0 1px 3px rgba(15, 23, 42, 0.01);
  transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.3s cubic-bezier(0.16, 1, 0.3, 1), border-color 0.3s;
}

.smk-master-card-premium:hover {
  transform: translateY(-5px);
  border-color: rgba(255, 106, 26, 0.2);
  box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.06), 0 10px 10px -5px rgba(0, 0, 0, 0.04);
}

.smk-master-card-cover {
  position: relative;
  height: 110px;
  background: linear-gradient(135deg, #0a2b5f 0%, #1e3a8a 100%);
  overflow: hidden;
}

.smk-master-card-cover::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: radial-gradient(rgba(255,255,255,0.12) 1px, transparent 0);
  background-size: 10px 10px;
}

.smk-master-card-badges {
  position: absolute;
  top: 12px;
  right: 12px;
  display: flex;
  flex-direction: column;
  gap: 6px;
  align-items: flex-end;
  z-index: 3;
}

.smk-master-card-avatar {
  width: 72px;
  height: 72px;
  border-radius: 50%;
  border: 4px solid #ffffff;
  background: #ffffff;
  box-shadow: 0 8px 16px rgba(15, 23, 42, 0.08);
  margin-top: -36px;
  margin-left: 20px;
  position: relative;
  z-index: 4;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
}

.smk-master-card-avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.smk-master-card-avatar-placeholder {
  width: 100%;
  height: 100%;
  background: linear-gradient(135deg, #ff6a1a 0%, #ff9e66 100%);
  color: #ffffff;
  font-size: 24px;
  font-weight: 800;
  display: flex;
  align-items: center;
  justify-content: center;
}

.smk-master-card-body {
  padding: 20px;
  display: flex;
  flex-direction: column;
  gap: 14px;
  flex: 1;
}

.smk-master-card-title {
  font-size: 17px;
  font-weight: 700;
  color: #1e293b;
  margin: 0;
  line-height: 1.35;
}

.smk-master-card-title a {
  color: inherit;
  text-decoration: none;
}

.smk-master-card-title a:hover {
  color: var(--smk-color-primary);
}

.smk-master-card-footer {
  padding: 16px 20px 20px;
  border-top: 1px solid var(--smk-color-border);
  display: flex;
  gap: 10px;
  background: #f8fafc;
}

.smk-master-card-footer .smk-button--primary {
  flex: 1;
  text-align: center;
  padding: 10px 16px;
  font-size: 14px;
  font-weight: 700;
  border-radius: 8px;
}

/* ==========================================================================
   Responsiveness & Mobile Fixes
   ========================================================================== */

/* Grid and Card Paddings for Registration Forms */
.smk-registration-card {
  padding: 40px;
  border-radius: 16px;
  box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.05), 0 10px 10px -5px rgba(0, 0, 0, 0.04);
}

.smk-hours-row {
  display: grid;
  grid-template-columns: 100px 1fr;
  align-items: center;
  gap: 10px;
}

.smk-services-select-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 20px;
}

/* Global Grid System Breakpoints */
@media (max-width: 960px) {
  .smk-grid--5 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .smk-grid--4 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .smk-grid--3 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 640px) {
  .smk-grid--5,
  .smk-grid--4,
  .smk-grid--3,
  .smk-grid--2 {
    grid-template-columns: 1fr;
  }
  
  .smk-benefit-inline-grid,
  .smk-steps-grid {
    grid-template-columns: 1fr !important;
  }

  .smk-registration-card {
    padding: 24px 16px !important;
  }

  .smk-hours-row {
    grid-template-columns: 1fr;
    align-items: flex-start;
    gap: 6px;
  }

  .smk-services-select-grid {
    grid-template-columns: 1fr;
    gap: 12px;
  }
}

/* Narrow mobile devices adjustments */
@media (max-width: 480px) {
  .smk-brand__name {
    font-size: 16px !important;
    max-width: 120px !important;
  }
  
  .smk-brand small {
    display: none !important;
  }
  
  .smk-brand-strip {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 8px;
  }
  
  .smk-brand-strip__item {
    font-size: 16px !important;
  }
  
  .smk-categories {
    grid-template-columns: 1fr !important;
  }
}

/* ==========================================================================
   Yedek Parça (Spare Parts) Premium Styles
   ========================================================================== */

.smk-parts-layout {
  display: grid;
  grid-template-columns: 280px 1fr;
  gap: 30px;
  align-items: start;
  margin-bottom: 60px;
}

.smk-parts-sidebar {
  background: #fff;
  border: 1px solid var(--smk-color-border);
  border-radius: 16px;
  padding: 20px;
}

.smk-parts-widget {
  margin-bottom: 24px;
}

.smk-parts-widget:last-child {
  margin-bottom: 0;
}

.smk-parts-widget__title {
  font-size: 16px;
  font-weight: 700;
  color: var(--smk-color-text);
  margin: 0 0 16px;
  padding-bottom: 8px;
  border-bottom: 1px solid var(--smk-color-border);
}

.smk-parts-categories-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.smk-parts-categories-list a {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 8px 12px;
  border-radius: 8px;
  font-size: 14px;
  text-decoration: none;
  color: var(--smk-color-text-light);
  transition: all 0.2s ease;
}

.smk-parts-categories-list a:hover {
  background: var(--smk-color-surface-soft);
  color: var(--smk-color-primary);
}

.smk-parts-categories-list a.is-active {
  background: var(--smk-color-primary-soft);
  color: var(--smk-color-primary);
  font-weight: 700;
}

.smk-parts-cat-count {
  font-size: 11px;
  background: var(--smk-color-surface-soft);
  padding: 2px 8px;
  border-radius: 10px;
  color: var(--smk-color-muted);
}

.smk-parts-categories-list a.is-active .smk-parts-cat-count {
  background: #fff;
  color: var(--smk-color-primary);
}

.smk-parts-main {
  display: flex;
  flex-direction: column;
}

.smk-parts-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px;
}

.smk-part-card {
  background: #fff;
  border: 1px solid var(--smk-color-border);
  border-radius: 16px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.smk-part-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 12px 20px rgba(0, 0, 0, 0.05);
  border-color: var(--smk-color-primary-soft);
}

.smk-part-card__image-container {
  aspect-ratio: 4 / 3;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--smk-color-surface-soft);
  overflow: hidden;
  border-bottom: 1px solid var(--smk-color-border);
  position: relative;
}

.smk-part-card__img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.5s ease;
}

.smk-part-card:hover .smk-part-card__img {
  transform: scale(1.05);
}

.smk-part-card__placeholder {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--smk-color-muted);
}

.smk-part-card__content {
  padding: 16px;
  display: flex;
  flex-direction: column;
  flex-grow: 1;
  gap: 8px;
}

.smk-part-card__vendor-box {
  display: flex;
  align-items: center;
  margin-bottom: 2px;
}

.smk-part-vendor-badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 4px 10px;
  border-radius: 30px;
  font-size: 11px;
  font-weight: 700;
  text-decoration: none;
  line-height: 1;
}

.smk-part-vendor-badge.is-store {
  background: #f0f9ff;
  color: #0369a1;
  border: 1px solid #e0f2fe;
}

.smk-part-vendor-badge.is-store:hover {
  background: #e0f2fe;
}

.smk-part-vendor-badge.is-platform {
  background: #fffbeb;
  color: #d97706;
  border: 1px solid #fef3c7;
  cursor: default;
}

.smk-part-card__title {
  font-size: 16px;
  font-weight: 700;
  margin: 0;
  line-height: 1.4;
  height: 44px;
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}

.smk-part-card__title a {
  text-decoration: none;
  color: var(--smk-color-text);
  transition: color 0.2s ease;
}

.smk-part-card__title a:hover {
  color: var(--smk-color-primary);
}

.smk-part-card__description {
  font-size: 13px;
  color: var(--smk-color-muted);
  line-height: 1.5;
  margin: 0;
  height: 38px;
  overflow: hidden;
}

.smk-part-card__footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-top: auto;
  padding-top: 12px;
  border-top: 1px solid var(--smk-color-surface-soft);
}

.smk-part-card__price {
  font-size: 18px;
  font-weight: 800;
  color: var(--smk-color-text);
}

.smk-part-card__btn {
  padding: 8px 16px;
  font-size: 13px;
  height: 36px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
}

.smk-parts-empty {
  text-align: center;
  padding: 60px 20px;
  background: #fff;
  border: 1px solid var(--smk-color-border);
  border-radius: 16px;
  grid-column: 1 / -1;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

.smk-parts-empty__icon {
  font-size: 48px;
  margin-bottom: 16px;
}

.smk-parts-empty h3 {
  font-size: 20px;
  font-weight: 700;
  margin: 0 0 8px;
}

.smk-parts-empty p {
  color: var(--smk-color-muted);
  margin: 0;
  max-width: 400px;
  font-size: 14px;
  line-height: 1.5;
}

/* Responsive Breakpoints for Parts Layout */
@media (max-width: 960px) {
  .smk-parts-layout {
    grid-template-columns: 1fr;
    gap: 20px;
  }
  
  .smk-parts-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 640px) {
  .smk-parts-grid {
    grid-template-columns: 1fr;
  }
}

/* ==========================================================================
   Single Product Page Premium Styles (V2)
   ========================================================================== */

.smk-single-product-container {
  padding: 40px 0 80px;
}

.smk-single-product-main-grid {
  display: grid;
  grid-template-columns: 0.8fr 1.2fr;
  gap: 60px;
  align-items: start;
  margin-bottom: 60px;
}

/* Left Column: Gallery & Trust Badges */
.smk-single-product-gallery-section {
  position: sticky;
  top: 40px;
  display: flex;
  flex-direction: column;
  gap: 24px;
  max-width: 500px;
}

.smk-single-product-gallery img {
  width: 100%;
  height: auto;
  border-radius: 20px;
  cursor: zoom-in;
  border: 1px solid var(--smk-color-border);
  box-shadow: 0 10px 30px -10px rgba(0,0,0,0.05);
}

.smk-single-product-gallery .woocommerce-product-gallery__wrapper {
  margin: 0;
}

.smk-product-trust-badges {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
  background: #f8fafc;
  padding: 16px;
  border-radius: 12px;
  border: 1px solid #f1f5f9;
}

.smk-trust-badge {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 13px;
  font-weight: 600;
  color: var(--smk-color-text-light);
}

.smk-trust-icon {
  font-size: 18px;
}

/* Right Column: Summary Card */
.smk-single-product-summary-wrapper {
  /* wrapper for spacing */
}

.smk-single-product-summary-card {
  display: flex;
  flex-direction: column;
  gap: 24px;
}

.smk-single-product-header {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.smk-single-product-meta-top {
  font-size: 13px;
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  align-items: center;
}

.smk-single-product-sku {
  font-weight: 700;
  color: var(--smk-color-muted);
  background: #f1f5f9;
  padding: 4px 10px;
  border-radius: 6px;
}

.smk-single-product-category {
  color: var(--smk-color-primary);
  font-weight: 600;
}

.smk-single-product-title {
  font-size: 26px;
  font-weight: 800;
  color: var(--smk-color-text);
  margin: 0;
  line-height: 1.3;
  letter-spacing: -0.02em;
}

.smk-single-product-price-box {
  padding: 8px 0;
}

.smk-single-product-price-box .price {
  font-size: 28px;
  font-weight: 800;
  color: var(--smk-color-primary);
  display: flex;
  align-items: center;
  gap: 12px;
}

.smk-single-product-price-box del {
  font-size: 22px;
  color: var(--smk-color-muted);
  font-weight: 500;
  opacity: 0.7;
}

.smk-single-product-price-box ins {
  text-decoration: none;
  font-weight: 800;
}

.smk-sale-price-badge {
  background: #ef4444;
  color: white;
  padding: 4px 12px;
  border-radius: 8px;
  font-size: 13px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

.smk-single-product-short-description {
  font-size: 16px;
  color: var(--smk-color-text-light);
  line-height: 1.7;
  padding: 20px 0;
  border-top: 1px solid var(--smk-color-surface-soft);
  border-bottom: 1px solid var(--smk-color-surface-soft);
}

.smk-single-product-short-description p {
  margin: 0;
}

/* Seller Card - Premium Look */
.smk-single-product-seller-card {
  background: #ffffff;
  border: 1px solid var(--smk-color-surface-soft);
  border-radius: 20px;
  padding: 24px;
  box-shadow: 0 12px 30px -10px rgba(0, 0, 0, 0.06);
  margin-top: 10px;
  transition: box-shadow 0.3s ease;
}

.smk-single-product-seller-card:hover {
  box-shadow: 0 20px 40px -10px rgba(0, 0, 0, 0.1);
}

.smk-single-product-seller-card__title {
  font-size: 14px;
  font-weight: 800;
  color: var(--smk-color-text);
  margin: 0 0 20px;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  opacity: 0.8;
}

.smk-seller-info-box {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.smk-seller-info-box__header {
  display: flex;
  gap: 16px;
  align-items: center;
}

.smk-seller-icon {
  font-size: 26px;
  width: 56px;
  height: 56px;
  background: #f8fafc;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: inset 0 2px 4px rgba(0,0,0,0.02);
  border: 1px solid var(--smk-color-border);
}

.smk-seller-info-texts {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.smk-seller-store-link {
  font-size: 18px;
  font-weight: 800;
  color: var(--smk-color-text);
  text-decoration: none;
  display: block;
  transition: color 0.2s ease;
}

.smk-seller-store-link:hover {
  color: var(--smk-color-primary);
}

.smk-seller-verified-badge {
  font-size: 12px;
  font-weight: 700;
  color: #0284c7;
  background: #e0f2fe;
  padding: 4px 10px;
  border-radius: 12px;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  width: fit-content;
}

.smk-seller-verified-badge.is-gold {
  color: #d97706;
  background: #fffbeb;
}

.smk-seller-info-box__address,
.smk-seller-info-box__desc {
  font-size: 14px;
  color: var(--smk-color-muted);
  line-height: 1.6;
  margin: 0;
  font-style: normal;
  background: #f8fafc;
  padding: 12px 16px;
  border-radius: 12px;
}

.smk-seller-info-box__ctas {
  display: flex;
  gap: 12px;
  margin-top: 8px;
}

.smk-seller-btn {
  flex: 1;
  height: 48px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 15px;
  font-weight: 700;
  text-decoration: none;
  border-radius: 12px;
  gap: 8px;
  transition: all 0.2s ease;
}

.smk-button-whatsapp {
  background: #25d366;
  color: #fff;
  border: 1px solid #22c55e;
}

.smk-button-whatsapp:hover {
  background: #16a34a;
  border-color: #15803d;
  box-shadow: 0 8px 20px -5px rgba(34, 197, 94, 0.4);
  color: #fff;
  transform: translateY(-2px);
}

.smk-single-product-actions {
  margin-top: 10px;
  background: #f8fafc;
  padding: 24px;
  border-radius: 20px;
  border: 1px solid #f1f5f9;
}

.smk-single-product-actions form.cart {
  display: flex;
  gap: 16px;
  align-items: stretch;
  flex-wrap: wrap;
}

.smk-single-product-actions .quantity {
  margin: 0;
}

.smk-single-product-actions .quantity input {
  height: 56px;
  border-radius: 12px;
  border: 1px solid var(--smk-color-border);
  padding: 0 16px;
  font-weight: 800;
  font-size: 18px;
  width: 80px;
  text-align: center;
  background: #fff;
  box-shadow: inset 0 2px 4px rgba(0,0,0,0.02);
}

.smk-single-product-actions button.single_add_to_cart_button {
  height: 56px;
  padding: 0 32px;
  font-weight: 800;
  font-size: 16px;
  border-radius: 12px;
  flex: 1;
  background: linear-gradient(135deg, var(--smk-color-primary) 0%, #ff8c42 100%);
  border: none;
  box-shadow: 0 8px 20px -5px rgba(255, 106, 26, 0.4);
  transition: all 0.3s ease;
  color: #fff;
}

.smk-single-product-actions button.single_add_to_cart_button:hover {
  transform: translateY(-2px);
  box-shadow: 0 12px 25px -5px rgba(255, 106, 26, 0.5);
}

/* Full Description Section */
.smk-single-product-description-section {
  margin-top: 60px;
  background: #fff;
  border-radius: 20px;
  padding: 40px;
  box-shadow: 0 10px 30px -10px rgba(0,0,0,0.03);
  border: 1px solid var(--smk-color-border);
}

.smk-single-product-section-title {
  font-size: 24px;
  font-weight: 800;
  color: var(--smk-color-text);
  margin: 0 0 24px;
  position: relative;
  padding-bottom: 12px;
}

.smk-single-product-section-title::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  width: 60px;
  height: 4px;
  background: var(--smk-color-primary);
  border-radius: 4px;
}

.smk-single-product-full-content {
  font-size: 16px;
  color: var(--smk-color-text-light);
  line-height: 1.8;
}

.smk-single-product-full-content h2,
.smk-single-product-full-content h3 {
  color: var(--smk-color-text);
  margin-top: 32px;
}

/* Related Products */
.smk-single-product-related-section {
  margin-top: 60px;
}

.smk-single-product-related-section h2 {
  font-size: 26px;
  font-weight: 800;
  color: var(--smk-color-text);
  margin: 0 0 30px;
  text-align: center;
}

.smk-single-product-related-section ul.products {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 24px;
  list-style: none;
  padding: 0;
  margin: 0;
}

/* Responsive Styles for Single Product Layout */
@media (max-width: 1024px) {
  .smk-single-product-main-grid {
    grid-template-columns: 1fr 1fr;
    gap: 40px;
  }
}

@media (max-width: 768px) {
  .smk-single-product-main-grid {
    grid-template-columns: 1fr;
    gap: 30px;
  }

  .smk-single-product-gallery-section {
    position: static;
  }
  
  .smk-product-trust-badges {
    flex-wrap: wrap;
    justify-content: center;
  }
  
  .smk-single-product-related-section ul.products {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  
  .smk-single-product-description-section {
    padding: 24px;
  }
}

@media (max-width: 480px) {
  .smk-single-product-title {
    font-size: 24px;
  }
  
  .smk-single-product-price-box .price {
    font-size: 28px;
  }
  
  .smk-single-product-actions form.cart {
    flex-direction: column;
  }
  
  .smk-single-product-actions .quantity input {
    width: 100%;
  }
  
  .smk-single-product-related-section ul.products {
    grid-template-columns: 1fr;
  }
  
  .smk-seller-info-box__ctas {
    flex-direction: column;
  }
}

/* ==========================================================================
   SMK WooCommerce My Account Dashboard Styles
   ========================================================================== */

.smk-myaccount-container {
  margin-top: 30px;
  margin-bottom: 50px;
}

.smk-myaccount-layout {
  display: grid;
  grid-template-columns: 280px 1fr;
  gap: 30px;
  align-items: start;
}

.smk-myaccount-sidebar {
  background: var(--smk-color-surface);
  border: 1px solid var(--smk-color-border);
  border-radius: var(--smk-radius-md);
  padding: 24px;
  box-shadow: var(--smk-shadow-soft);
  position: sticky;
  top: 90px;
}

.smk-myaccount-profile-header {
  display: flex;
  align-items: center;
  gap: 14px;
  padding-bottom: 20px;
  border-bottom: 1px solid var(--smk-color-border);
  margin-bottom: 20px;
}

.smk-myaccount-profile-avatar {
  border-radius: 50%;
  border: 2px solid var(--smk-color-border);
}

.smk-myaccount-profile-name {
  font-size: 15px;
  font-weight: 700;
  color: var(--smk-color-text);
  margin: 0 0 2px;
}

.smk-myaccount-profile-email {
  font-size: 12.5px;
  color: var(--smk-color-muted);
  margin: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  max-width: 170px;
}

/* Nav Menu List */
.smk-myaccount-nav-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.smk-myaccount-nav-link {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 10px 14px;
  border-radius: 8px;
  font-size: 13.5px;
  font-weight: 600;
  color: var(--smk-color-muted);
  transition: all var(--smk-transition);
}

.smk-myaccount-nav-link:hover {
  background: var(--smk-color-surface-soft);
  color: var(--smk-color-primary);
}

.smk-myaccount-nav-link.smk-is-active {
  background: rgba(255, 106, 26, 0.08);
  color: var(--smk-color-primary);
}

.smk-myaccount-nav-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: inherit;
}

/* Right Content Area */
.smk-myaccount-main-content {
  min-width: 0;
}

.smk-myaccount-inner-card {
  background: var(--smk-color-surface);
  border: 1px solid var(--smk-color-border);
  border-radius: var(--smk-radius-md);
  padding: 32px;
  box-shadow: var(--smk-shadow-soft);
}

/* Welcome banner */
.smk-dashboard-welcome-banner {
  background: var(--smk-color-surface-soft);
  border-radius: 12px;
  padding: 24px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 20px;
  margin-bottom: 30px;
  border: 1px solid var(--smk-color-border);
}

.smk-badge {
  display: inline-flex;
  align-items: center;
  padding: 6px 14px;
  border-radius: 999px;
  font-size: 12.5px;
  font-weight: 700;
}

.smk-badge--primary {
  background: rgba(255, 106, 26, 0.1);
  color: var(--smk-color-primary-dark);
}

.smk-badge--success {
  background: rgba(14, 164, 107, 0.1);
  color: var(--smk-color-success);
}

.smk-badge--warning {
  background: rgba(221, 107, 32, 0.1);
  color: #dd6b20;
}

/* Stats Cards Grid */
.smk-dashboard-stats-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px;
}

.smk-stat-card {
  background: var(--smk-color-surface);
  border: 1px solid var(--smk-color-border);
  border-radius: 12px;
  padding: 20px;
  display: flex;
  align-items: center;
  gap: 16px;
  transition: transform var(--smk-transition), box-shadow var(--smk-transition);
  text-decoration: none;
}

.smk-stat-card:hover {
  transform: translateY(-2px);
  box-shadow: var(--smk-shadow-soft);
}

.smk-stat-card-icon {
  width: 48px;
  height: 48px;
  border-radius: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
}

.smk-stat-icon--orders {
  background: rgba(10, 43, 95, 0.08);
  color: var(--smk-color-secondary);
}

.smk-stat-icon--favorites {
  background: rgba(239, 68, 68, 0.08);
  color: #ef4444;
}

.smk-stat-icon--notifications {
  background: rgba(17, 88, 241, 0.08);
  color: var(--smk-color-accent);
}

.smk-stat-value {
  display: block;
  font-size: 20px;
  font-weight: 800;
  color: var(--smk-color-text);
  line-height: 1.2;
}

.smk-stat-label {
  display: block;
  font-size: 12.5px;
  color: var(--smk-color-muted);
  font-weight: 600;
}

.smk-stat-badge {
  position: absolute;
  top: -6px;
  right: -6px;
  background: var(--smk-color-primary);
  color: #fff;
  font-size: 10px;
  font-weight: 700;
  padding: 2px 6px;
  border-radius: 10px;
  border: 2px solid #fff;
}

/* Store/Master Role status cards */
.smk-dashboard-role-card {
  background: #fdfdfd;
  border: 1px solid var(--smk-color-border);
  border-radius: 12px;
  padding: 24px;
  border-color: var(--smk-color-border);
}

.smk-dashboard-role-card-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  flex-wrap: wrap;
}

/* Quick access grid */
.smk-dashboard-quick-links-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
}

.smk-quick-link-box {
  background: #fff;
  border: 1px solid var(--smk-color-border);
  border-radius: 10px;
  padding: 16px;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  transition: all var(--smk-transition);
  text-decoration: none;
}

.smk-quick-link-box:hover {
  border-color: var(--smk-color-primary);
  background: rgba(255, 106, 26, 0.02);
}

.smk-quick-link-emoji {
  font-size: 24px;
}

.smk-quick-link-title {
  font-size: 12.5px;
  font-weight: 700;
  color: var(--smk-color-text);
}

/* WooCommerce Standard Form Alignments override */
.woocommerce-address-fields .form-row,
.woocommerce-EditAccountForm .form-row {
  margin-bottom: 0;
  display: flex;
  flex-direction: column;
  gap: 6px;
  width: 100% !important;
}

.woocommerce-address-fields .form-row label,
.woocommerce-EditAccountForm .form-row label {
  font-weight: 600;
  font-size: 13px;
  color: #344054;
  margin: 0;
}

.woocommerce-address-fields .form-row input,
.woocommerce-address-fields .form-row select,
.woocommerce-address-fields .form-row textarea,
.woocommerce-EditAccountForm .form-row input {
  padding: 10px 14px !important;
  border-radius: 6px !important;
  border: 1px solid #d0d5dd !important;
  font-size: 14px !important;
  width: 100% !important;
  background: #fff !important;
  box-shadow: none !important;
}

.woocommerce-address-fields .form-row input:focus,
.woocommerce-address-fields .form-row select:focus,
.woocommerce-address-fields .form-row textarea:focus,
.woocommerce-EditAccountForm .form-row input:focus {
  border-color: var(--smk-color-primary) !important;
  outline: none !important;
}

.woocommerce-address-fields select.country_to_state,
.woocommerce-address-fields select.state_select {
  appearance: none;
  background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23475569' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6 9 12 15 18 9'%3e%3c/polyline%3e%3c/svg%3e") !important;
  background-repeat: no-repeat !important;
  background-position: right 14px center !important;
  background-size: 16px !important;
  padding-right: 40px !important;
}

/* Responsiveness Rules */
@media (max-width: 991px) {
  .smk-myaccount-layout {
    grid-template-columns: 1fr;
    gap: 24px;
  }
  
  .smk-myaccount-sidebar {
    position: static;
  }

  .smk-dashboard-quick-links-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 767px) {
  .smk-myaccount-inner-card {
    padding: 20px;
  }
  
  .smk-dashboard-welcome-banner {
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
  }
  
  .smk-dashboard-stats-grid {
    grid-template-columns: 1fr;
    gap: 12px;
  }
  
  .smk-promotion-grid {
    grid-template-columns: 1fr;
  }
  
  .smk-myaccount-profile-header {
    flex-direction: column;
    text-align: center;
  }

  .smk-myaccount-profile-email {
    max-width: 100%;
  }

  /* Horizontal scrolling navigation tabs on mobile */
  .smk-myaccount-nav-list {
    flex-direction: row;
    overflow-x: auto;
    white-space: nowrap;
    padding-bottom: 8px;
    gap: 8px;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none; /* Hide scrollbar Firefox */
  }

  .smk-myaccount-nav-list::-webkit-scrollbar {
    display: none; /* Hide scrollbar Chrome/Safari */
  }

  .smk-myaccount-nav-item {
    flex: 0 0 auto;
  }

  .smk-myaccount-nav-link {
    padding: 8px 14px;
    font-size: 13px;
  }
}

/* ==========================================================================
   SMK WooCommerce Sale Badge (İndirim) Styling
   ========================================================================== */

/* Positioning contexts for sale badges */
.smk-single-product-gallery,
.smk-part-card__image-container,
.smk-product-card,
.woocommerce-product-gallery {
  position: relative;
}

span.onsale,
.onsale {
  position: absolute !important;
  top: 16px !important;
  left: 16px !important;
  background-color: var(--smk-color-primary) !important;
  color: #fff !important;
  font-size: 11px !important;
  font-weight: 800 !important;
  padding: 6px 12px !important;
  border-radius: 8px !important;
  z-index: 99 !important;
  box-shadow: 0 4px 10px rgba(255, 106, 26, 0.3) !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
  pointer-events: none !important;
  margin: 0 !important;
  line-height: 1.2 !important;
  font-family: "Inter", sans-serif !important;
}

/* Specific alignments for grids and details */
.smk-part-card__image-container span.onsale {
  top: 12px !important;
  left: 12px !important;
}

/* Styling for 'İndirimli' price badge */
.smk-sale-price-badge {
  background-color: var(--smk-color-success) !important;
  color: #fff !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  padding: 4px 10px !important;
  border-radius: 6px !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
  display: inline-flex !important;
  align-items: center !important;
  line-height: 1.2 !important;
  margin-left: 8px !important;
}

/* Hide WooCommerce magnifying glass zoom trigger */
.woocommerce-product-gallery__trigger {
  display: none !important;
}

/* ==========================================================================
   SMK Usta Çağır Requests Log Styling
   ========================================================================== */
.smk-request-card {
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.smk-request-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.05) !important;
}

/* ==========================================================================
   Floating Cart Widget
   ========================================================================== */

.smk-floating-cart {
  position: fixed;
  bottom: 30px;
  right: 30px;
  width: 65px;
  height: 65px;
  background: linear-gradient(135deg, var(--smk-color-primary) 0%, #ff8c42 100%);
  color: #fff;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 10px 25px rgba(255, 106, 26, 0.4);
  z-index: 9999;
  text-decoration: none;
  transition: transform 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275), opacity 0.3s ease;
  opacity: 0;
  pointer-events: none;
  transform: translateY(30px) scale(0.8);
}

.smk-floating-cart.is-active {
  opacity: 1;
  pointer-events: auto;
  transform: translateY(0) scale(1);
}

.smk-floating-cart:hover {
  transform: translateY(-6px) scale(1.05);
  box-shadow: 0 15px 35px rgba(255, 106, 26, 0.5);
  color: #fff;
}

.smk-floating-cart-icon {
  font-size: 26px;
  line-height: 1;
}

.smk-floating-cart-count {
  position: absolute;
  top: -4px;
  right: -4px;
  background: #1e293b;
  color: #fff;
  font-size: 13px;
  font-weight: 800;
  width: 26px;
  height: 26px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 2px solid #fff;
  box-shadow: 0 2px 5px rgba(0,0,0,0.2);
}

@media (max-width: 768px) {
  .smk-floating-cart {
    bottom: 85px; /* Above the bottom mobile nav bar */
    right: 20px;
    width: 55px;
    height: 55px;
  }
  
  .smk-floating-cart-icon {
    font-size: 22px;
  }
  
  .smk-floating-cart-count {
    width: 24px;
    height: 24px;
    font-size: 12px;
  }
}

/* ==========================================================================
   Premium Cart & Checkout Styles
   ========================================================================== */

/* General Container for Cart/Checkout */
.woocommerce-cart .smk-woo,
.woocommerce-checkout .smk-woo {
  max-width: 1200px;
  margin: 0 auto;
}

/* --- Cart Page --- */
.woocommerce-cart-form {
  background: #fff;
  border-radius: 20px;
  padding: 30px;
  box-shadow: 0 10px 30px -10px rgba(0,0,0,0.05);
  border: 1px solid var(--smk-color-surface-soft);
  margin-bottom: 40px;
}

.woocommerce-cart-form__contents {
  width: 100%;
  border-collapse: collapse;
}

.woocommerce-cart-form__contents th {
  text-transform: uppercase;
  font-size: 13px;
  font-weight: 800;
  color: var(--smk-color-text-light);
  padding: 16px;
  border-bottom: 2px solid var(--smk-color-surface-soft);
}

.woocommerce-cart-form__contents td {
  padding: 24px 16px;
  border-bottom: 1px solid var(--smk-color-surface-soft);
  vertical-align: middle;
}

.woocommerce-cart-form__contents .product-thumbnail img {
  border-radius: 12px;
  max-width: 80px;
  height: auto;
  box-shadow: 0 4px 10px rgba(0,0,0,0.05);
}

.woocommerce-cart-form__contents .product-name a {
  font-weight: 800;
  font-size: 16px;
  color: var(--smk-color-text);
  text-decoration: none;
}

.woocommerce-cart-form__contents .product-name a:hover {
  color: var(--smk-color-primary);
}

.woocommerce-cart-form__contents .product-remove a {
  color: #ef4444;
  font-size: 24px;
  font-weight: bold;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background: #fef2f2;
  transition: all 0.2s ease;
}

.woocommerce-cart-form__contents .product-remove a:hover {
  background: #ef4444;
  color: #fff;
}

.cart-collaterals {
  display: flex;
  justify-content: flex-end;
}

.cart_totals {
  background: #f8fafc;
  border-radius: 20px;
  padding: 30px;
  width: 100%;
  max-width: 400px;
  box-shadow: 0 10px 30px -10px rgba(0,0,0,0.05);
  border: 1px solid var(--smk-color-border);
}

.cart_totals h2 {
  font-size: 20px;
  font-weight: 800;
  margin-top: 0;
  margin-bottom: 24px;
  padding-bottom: 16px;
  border-bottom: 1px solid var(--smk-color-surface-soft);
}

.cart_totals table {
  width: 100%;
  border-collapse: collapse;
  margin-bottom: 24px;
}

.cart_totals th, .cart_totals td {
  padding: 12px 0;
  border-bottom: 1px dashed var(--smk-color-surface-soft);
}

.cart_totals th {
  text-align: left;
  font-weight: 600;
  color: var(--smk-color-text-light);
}

.cart_totals td {
  text-align: right;
  font-weight: 800;
  color: var(--smk-color-text);
}

.cart_totals .order-total td {
  font-size: 24px;
  color: var(--smk-color-primary);
}

.wc-proceed-to-checkout .checkout-button {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 56px;
  background: linear-gradient(135deg, var(--smk-color-primary) 0%, #ff8c42 100%);
  color: #fff;
  border-radius: 12px;
  font-size: 16px;
  font-weight: 800;
  text-decoration: none;
  box-shadow: 0 8px 20px -5px rgba(255, 106, 26, 0.4);
  transition: all 0.3s ease;
}

.wc-proceed-to-checkout .checkout-button:hover {
  transform: translateY(-2px);
  box-shadow: 0 12px 25px -5px rgba(255, 106, 26, 0.5);
  color: #fff;
}

/* --- Checkout Page (Split Screen) --- */
form.checkout {
  display: grid;
  grid-template-columns: 1.1fr 0.9fr;
  gap: 60px;
  align-items: start;
}

.smk-checkout-left {
  grid-column: 1 / 2;
}
.smk-checkout-right {
  grid-column: 2 / 3;
}

#customer_details {
  background: #fff;
  border-radius: 20px;
  padding: 40px;
  box-shadow: 0 10px 30px -10px rgba(0,0,0,0.03);
  border: 1px solid var(--smk-color-border);
}

.woocommerce-billing-fields h3,
.woocommerce-shipping-fields h3,
.woocommerce-additional-fields h3 {
  font-size: 22px;
  font-weight: 800;
  color: var(--smk-color-text);
  margin-top: 0;
  margin-bottom: 24px;
  padding-bottom: 12px;
  border-bottom: 2px solid var(--smk-color-surface-soft);
}

/* Form Inputs Styling */
.woocommerce form .form-row {
  margin-bottom: 20px;
}

.woocommerce form .form-row label {
  font-weight: 600;
  color: var(--smk-color-text);
  margin-bottom: 8px;
  display: block;
}

.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.select2-container .select2-selection--single {
  width: 100%;
  height: 52px;
  background: #f8fafc;
  border: 1px solid var(--smk-color-border);
  border-radius: 12px;
  padding: 0 16px;
  font-size: 15px;
  color: var(--smk-color-text);
  transition: all 0.3s ease;
}

.woocommerce form .form-row textarea {
  height: 120px;
  padding: 16px;
  resize: vertical;
}

.woocommerce form .form-row input.input-text:focus,
.woocommerce form .form-row textarea:focus,
.select2-container--open .select2-selection--single {
  background: #fff;
  border-color: var(--smk-color-primary);
  box-shadow: 0 0 0 4px rgba(255, 106, 26, 0.1);
  outline: none;
}

/* Select2 fixes */
.select2-container .select2-selection--single .select2-selection__rendered {
  line-height: 50px;
  padding-left: 0;
}
.select2-container .select2-selection--single .select2-selection__arrow {
  height: 50px;
}

/* Checkout Right Sidebar (Order Review) */
.smk-checkout-right {
  background: #f8fafc;
  border-radius: 20px;
  padding: 40px;
  box-shadow: 0 10px 30px -10px rgba(0,0,0,0.05);
  border: 1px solid var(--smk-color-border);
  position: sticky;
  top: 30px;
}

#order_review_heading {
  font-size: 22px;
  font-weight: 800;
  color: var(--smk-color-text);
  margin-top: 0;
  margin-bottom: 24px;
}

.woocommerce-checkout-review-order-table {
  width: 100%;
  border-collapse: collapse;
  margin-bottom: 24px;
}

.woocommerce-checkout-review-order-table th,
.woocommerce-checkout-review-order-table td {
  padding: 16px 0;
  border-bottom: 1px dashed var(--smk-color-border);
}

.woocommerce-checkout-review-order-table th {
  text-align: left;
  font-weight: 600;
  color: var(--smk-color-text-light);
}

.woocommerce-checkout-review-order-table td {
  text-align: right;
}

.woocommerce-checkout-review-order-table .product-name {
  text-align: left;
  font-weight: 600;
  color: var(--smk-color-text);
  display: flex;
  align-items: center;
  gap: 12px;
}

.woocommerce-checkout-review-order-table .product-total {
  font-weight: 800;
}

.woocommerce-checkout-review-order-table .order-total th {
  font-size: 18px;
  color: var(--smk-color-text);
}

.woocommerce-checkout-review-order-table .order-total td {
  font-size: 26px;
  font-weight: 800;
  color: var(--smk-color-primary);
}

#payment {
  background: #fff;
  border-radius: 12px;
  padding: 24px;
  border: 1px solid var(--smk-color-border);
}

#payment ul.payment_methods {
  list-style: none;
  padding: 0;
  margin: 0 0 20px;
}

#payment ul.payment_methods li {
  margin-bottom: 16px;
}

#payment div.payment_box {
  background: #f1f5f9;
  padding: 16px;
  border-radius: 8px;
  font-size: 14px;
  color: var(--smk-color-text-light);
  margin-top: 10px;
  position: relative;
}

#payment div.payment_box::before {
  content: '';
  position: absolute;
  top: -8px;
  left: 20px;
  border-left: 8px solid transparent;
  border-right: 8px solid transparent;
  border-bottom: 8px solid #f1f5f9;
}

#place_order {
  width: 100%;
  height: 60px;
  background: linear-gradient(135deg, var(--smk-color-primary) 0%, #ff8c42 100%);
  color: #fff;
  border: none;
  border-radius: 12px;
  font-size: 18px;
  font-weight: 800;
  cursor: pointer;
  box-shadow: 0 10px 25px -5px rgba(255, 106, 26, 0.4);
  transition: all 0.3s ease;
  margin-top: 16px;
}

#place_order:hover {
  transform: translateY(-2px);
  box-shadow: 0 15px 30px -5px rgba(255, 106, 26, 0.5);
}

/* Responsive Cart & Checkout */
@media (max-width: 960px) {
  form.checkout {
    grid-template-columns: 1fr;
    gap: 40px;
  }
  
  .smk-checkout-right,
  .smk-checkout-left {
    grid-column: 1 / 2;
  }

  .smk-checkout-right {
    position: static;
  }
}

@media (max-width: 768px) {
  #customer_details,
  .smk-checkout-right,
  .woocommerce-cart-form,
  .cart_totals {
    padding: 20px;
  }
  
  .woocommerce-cart-form__contents thead {
    display: none;
  }
  
  .woocommerce-cart-form__contents tr.cart_item {
    display: block;
    margin-bottom: 24px;
    border: 1px solid var(--smk-color-border);
    border-radius: 12px;
    padding: 16px;
  }
  
  .woocommerce-cart-form__contents td {
    display: block;
    border: none;
    padding: 8px 0;
    text-align: center;
  }
  
  .woocommerce-cart-form__contents td.product-remove {
    position: absolute;
    right: 36px;
    margin-top: 8px;
  }
  
  .woocommerce-cart-form__contents td::before {
    content: attr(data-title);
    font-weight: 600;
    display: block;
    margin-bottom: 8px;
    color: var(--smk-color-text-light);
  }
}

/* ==========================================================================
   Header Live Search
   ========================================================================== */
.smk-desktop-search {
  flex: 1;
  max-width: 450px;
  margin: 0 30px;
  position: relative;
}

.smk-live-search-form {
  position: relative;
  width: 100%;
}

.smk-live-search-input {
  width: 100%;
  height: 48px;
  border-radius: 24px;
  border: 1px solid var(--smk-color-border);
  padding: 0 20px 0 46px;
  font-size: 14px;
  background: #f8fafc;
  transition: all 0.3s ease;
  color: var(--smk-color-text);
}

.smk-live-search-input:focus {
  background: #fff;
  border-color: var(--smk-color-primary);
  box-shadow: 0 4px 15px rgba(255,106,26,0.1);
  outline: none;
}

.smk-live-search-btn {
  position: absolute;
  left: 16px;
  top: 50%;
  transform: translateY(-50%);
  background: none;
  border: none;
  color: var(--smk-color-muted);
  cursor: pointer;
  padding: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}

.smk-live-search-results {
  display: none;
  position: absolute;
  top: calc(100% + 10px);
  left: 0;
  width: 100%;
  background: #fff;
  border: 1px solid var(--smk-color-border);
  border-radius: 16px;
  box-shadow: 0 15px 40px rgba(0,0,0,0.1);
  z-index: 9999;
  max-height: 450px;
  overflow-y: auto;
  padding: 12px;
}

.smk-live-search-results.is-active {
  display: block;
  animation: fadeInDown 0.3s ease forwards;
}

.smk-search-result-item {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 12px;
  border-radius: 12px;
  text-decoration: none;
  color: var(--smk-color-text);
  transition: background 0.2s ease;
}

.smk-search-result-item:hover {
  background: #f1f5f9;
}

.smk-search-result-img img {
  width: 48px;
  height: 48px;
  object-fit: cover;
  border-radius: 8px;
  border: 1px solid var(--smk-color-border);
}

.smk-search-result-info {
  display: flex;
  flex-direction: column;
}

.smk-search-result-title {
  font-size: 14px;
  font-weight: 700;
  margin: 0 0 4px;
}

.smk-search-result-price {
  font-size: 13px;
  color: var(--smk-color-primary);
  font-weight: 800;
}

.smk-search-no-results {
  padding: 20px;
  text-align: center;
  color: var(--smk-color-text-light);
  font-size: 14px;
}

@media (max-width: 1024px) {
  .smk-desktop-search {
    display: none;
  }
}

@keyframes fadeInDown {
  from { opacity: 0; transform: translateY(-10px); }
  to { opacity: 1; transform: translateY(0); }
}
