/* Labaround Design Tokens — Plugin CSS'lerine ekle */
/* Bu blok her plugin CSS dosyasının EN BAŞINA gelecek */

:root {
  /* Tokens zaten Customizer'da tanımlı, burada sadece
     plugin scope'unda erişilebilir kılmak için referans */
  --lb-navy-900:  #0a1a32;
  --lb-navy-700:  #16325e;
  --lb-navy-600:  #1e4280;
  --lb-accent:    #00c2a8;
  --lb-accent-h:  #00dbbe;
  --lb-gold:      #f0b429;
  --lb-white:     #ffffff;
  --lb-off:       #f6f8fb;
  --lb-gray-200:  #dde3ed;
  --lb-gray-400:  #8fa0bb;
  --lb-gray-600:  #4d637f;
  --lb-text:      #0f1c2e;
  --lb-font-head: 'Syne', sans-serif;
  --lb-font-body: 'IBM Plex Sans', sans-serif;
  --lb-font-mono: 'IBM Plex Mono', monospace;
  --lb-radius:    10px;
  --lb-radius-lg: 18px;
  --lb-shadow:    0 4px 20px rgba(10,26,50,.12);
  --lb-transition:.22s cubic-bezier(.4,0,.2,1);
}

/* ============================================
   Dokan Vendor Profile Plus — Frontend CSS
   ============================================ */

/* ── WRAPPER ── */
.dvp-store-profile {
    margin: 0 0 40px;
    font-family: inherit;
}

/* ── KAPAK ── */
.dvp-cover {
    height: 200px;
    background-size: cover;
    background-position: center;
    border-radius: 10px 10px 0 0;
    margin-bottom: 0;
}

/* ── BAŞLIK ── */
.dvp-header {
    display: flex;
    align-items: flex-start;
    gap: 20px;
    padding: 20px 24px 16px;
    background: #fff;
    border: 1px solid #e5e7eb;
    border-top: none;
    border-radius: 0 0 10px 10px;
    margin-bottom: 16px;
}
.dvp-cover + .dvp-header {
    border-radius: 0 0 10px 10px;
}
.dvp-header:first-child {
    border-radius: 10px;
    border-top: 1px solid #e5e7eb;
}

.dvp-avatar {
    flex-shrink: 0;
    margin-top: -40px;
}
.dvp-avatar img {
    width: 80px;
    height: 80px;
    border-radius: 10px;
    border: 3px solid #fff;
    object-fit: cover;
    display: block;
    box-shadow: 0 1px 4px rgba(0,0,0,.12);
}

.dvp-store-name {
    margin: 0 0 4px;
    font-size: 20px;
    font-weight: 600;
    color: #111827;
}
.dvp-tagline {
    margin: 0 0 10px;
    color: #4b5563;
    font-size: 14px;
}
.dvp-meta-pills {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}
.dvp-pill {
    font-size: 12px;
    background: #f3f4f6;
    color: #374151;
    border-radius: 20px;
    padding: 4px 12px;
    display: inline-flex;
    align-items: center;
    gap: 4px;
}
a.dvp-pill-link {
    text-decoration: none;
    background: #eff6ff;
    color: #1d4ed8;
}
a.dvp-pill-link:hover {
    background: #dbeafe;
}

/* ── LAYOUT ── */
.dvp-body {
    display: grid;
    grid-template-columns: 1fr 280px;
    gap: 16px;
    align-items: start;
}

@media (max-width: 768px) {
    .dvp-body { grid-template-columns: 1fr; }
    .dvp-sidebar { order: -1; }
}

/* ── CARDS ── */
.dvp-card {
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 10px;
    padding: 20px 24px;
    margin-bottom: 16px;
}
.dvp-card h3 {
    margin: 0 0 14px;
    font-size: 16px;
    font-weight: 600;
    color: #111827;
}
.dvp-about-text {
    color: #374151;
    font-size: 14px;
    line-height: 1.75;
}

/* ── TAGS ── */
.dvp-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}
.dvp-tag {
    font-size: 13px;
    border: 1px solid #d1d5db;
    border-radius: 20px;
    padding: 4px 14px;
    color: #374151;
}

/* ── ÖZEL ÜRÜNLER ── */
.dvp-featured-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
    gap: 12px;
}
.dvp-product-card {
    display: flex;
    flex-direction: column;
    border: 1px solid #e5e7eb;
    border-radius: 8px;
    overflow: hidden;
    text-decoration: none;
    transition: box-shadow .15s;
}
.dvp-product-card:hover {
    box-shadow: 0 2px 8px rgba(0,0,0,.1);
}
.dvp-product-card img {
    width: 100%;
    aspect-ratio: 1;
    object-fit: cover;
    display: block;
}
.dvp-product-info {
    padding: 8px 10px;
}
.dvp-product-name {
    display: block;
    font-size: 12px;
    color: #111827;
    font-weight: 500;
    margin-bottom: 4px;
    line-height: 1.4;
}
.dvp-product-price {
    font-size: 13px;
    color: #059669;
    font-weight: 600;
}

/* ── GALERİ ── */
.dvp-gallery {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(110px, 1fr));
    gap: 8px;
}
.dvp-gallery-thumb {
    display: block;
    aspect-ratio: 1;
    overflow: hidden;
    border-radius: 6px;
    border: 1px solid #e5e7eb;
}
.dvp-gallery-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .2s;
    display: block;
}
.dvp-gallery-thumb:hover img {
    transform: scale(1.05);
}

/* ── VİDEO ── */
.dvp-video-wrap {
    position: relative;
    padding-bottom: 56.25%;
    height: 0;
    border-radius: 8px;
    overflow: hidden;
}
.dvp-video-wrap iframe {
    position: absolute;
    top: 0; left: 0;
    width: 100%; height: 100%;
    border: 0;
}

/* ── SERTİFİKALAR ── */
.dvp-cert-list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 8px;
}
.dvp-cert-list li {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 13px;
    color: #374151;
}
.dvp-cert-list li::before {
    content: "✓";
    color: #059669;
    font-weight: 700;
    flex-shrink: 0;
}

/* ── DETAYLAR ── */
.dvp-details {
    margin: 0;
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 6px 16px;
    font-size: 13px;
}
.dvp-details dt {
    color: #9ca3af;
    font-weight: 500;
    white-space: nowrap;
}
.dvp-details dd {
    color: #374151;
    margin: 0;
}
.dvp-details a {
    color: #1d4ed8;
}

/* ============================================
   Dashboard Form CSS
   ============================================ */
.dvp-dashboard-form .dvp-section {
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 10px;
    padding: 24px;
    margin-bottom: 20px;
}
.dvp-dashboard-form .dvp-section h3 {
    margin: 0 0 16px;
    font-size: 16px;
    font-weight: 600;
}
.dvp-form-row {
    margin-bottom: 14px;
}
.dvp-form-row label {
    display: block;
    font-size: 13px;
    font-weight: 500;
    color: #374151;
    margin-bottom: 6px;
}
.dvp-form-row input[type="text"],
.dvp-form-row input[type="url"],
.dvp-form-row input[type="number"],
.dvp-form-row textarea,
.dvp-form-row select {
    width: 100%;
    padding: 8px 12px;
    border: 1px solid #d1d5db;
    border-radius: 6px;
    font-size: 14px;
    color: #111827;
    box-sizing: border-box;
}
.dvp-form-row textarea { resize: vertical; }

.dvp-form-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
    gap: 0 16px;
}
.dvp-hint {
    font-size: 12px;
    color: #9ca3af;
    margin: -10px 0 12px;
}
.dvp-tag-input {
    width: 100%;
    padding: 6px 10px;
    border: 1px solid #e5e7eb;
    border-radius: 6px;
    font-size: 13px;
    margin-bottom: 6px;
    box-sizing: border-box;
    display: block;
}

/* Gallery dashboard */
.dvp-gallery-wrap {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-bottom: 10px;
}
.dvp-gallery-item {
    position: relative;
    width: 90px;
    height: 90px;
}
.dvp-gallery-item img {
    width: 90px;
    height: 90px;
    object-fit: cover;
    border-radius: 6px;
    border: 1px solid #e5e7eb;
    display: block;
}
.dvp-remove-gallery-item {
    position: absolute;
    top: 3px; right: 3px;
    background: rgba(0,0,0,.55);
    color: #fff;
    border: none;
    border-radius: 50%;
    width: 20px; height: 20px;
    font-size: 10px;
    cursor: pointer;
    display: flex; align-items: center; justify-content: center;
    padding: 0;
}

/* Product selection */
.dvp-featured-grid {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}
.dvp-product-check {
    display: flex;
    align-items: center;
    gap: 8px;
    border: 1px solid #e5e7eb;
    border-radius: 8px;
    padding: 8px 12px;
    cursor: pointer;
    font-size: 13px;
    transition: border-color .15s, background .15s;
    max-width: 200px;
}
.dvp-product-check.dvp-checked {
    border-color: #059669;
    background: #ecfdf5;
}
.dvp-product-check input { display: none; }
.dvp-product-check img { width: 40px; height: 40px; object-fit: cover; border-radius: 4px; }

/* Actions */
.dvp-form-actions {
    display: flex;
    justify-content: flex-end;
    padding: 16px 0;
}
.dvp-media-btn { margin-top: 6px; }

/* ── KAPEE TEMASI — Nav İkon Düzeltmesi ── */
/* Dokan nav'da .dvp-nav-icon class'ı bir bina ikonu gösterir */
.dokan-dashboard-menu li a .dvp-nav-icon,
.dokan-dash-menu li a .dvp-nav-icon {
    display: inline-block;
    width: 18px;
    height: 18px;
    vertical-align: middle;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='white'%3E%3Cpath d='M3 9l9-7 9 7v11a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z'/%3E%3Cpolyline points='9 22 9 12 15 12 15 22' fill='none' stroke='white' stroke-width='2'/%3E%3C/svg%3E");
    background-size: contain;
    background-repeat: no-repeat;
    margin-right: 6px;
}

/* Kapee temasında store sayfası için profil bloğu düzenlemeleri */
.dvp-store-profile {
    clear: both;
    width: 100%;
}

/* ── TAGLINE BAR (Dokan header'ın hemen altı, avatar/isim yok) ── */
.dvp-tagline-bar {
    padding: 14px 20px 16px;
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 10px;
    margin-bottom: 16px;
}
.dvp-tagline-bar .dvp-tagline {
    margin: 0 0 10px;
    font-size: 15px;
    color: #374151;
    font-weight: 500;
}
.dvp-tagline-bar .dvp-meta-pills {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

/* ── OFFICES ── */
.dvp-office-list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 7px;
    font-size: 13px;
    color: var(--color-text-secondary, #374151);
}
.dvp-office-list li { display: flex; align-items: center; gap: 6px; }
.dvp-hq { font-weight: 500; color: #111827; }
.dvp-hq-badge {
    font-size: 10px;
    background: #E1F5EE;
    color: #0F6E56;
    border-radius: 4px;
    padding: 1px 6px;
    font-weight: 500;
    margin-left: 4px;
}

/* ── COUNTRIES SERVED ── */
.dvp-countries {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}
.dvp-country-tag {
    font-size: 12px;
    background: #f3f4f6;
    color: #374151;
    border-radius: 4px;
    padding: 3px 9px;
}

/* ── BRAND RELATIONSHIPS — Store page ── */
.dvp-brands-card { margin-bottom: 16px; }
.dvp-brands-subtitle { font-size: 13px; color: #6b7280; margin: -8px 0 14px; }

.dvp-authorized-brands {
    display: flex;
    flex-direction: column;
    gap: 14px;
}
.dvp-auth-brand {
    display: flex;
    align-items: flex-start;
    gap: 14px;
    padding: 12px;
    border: 1px solid #e5e7eb;
    border-radius: 8px;
}
.dvp-auth-brand-logo {
    flex-shrink: 0;
    width: 80px;
    height: 44px;
    display: flex;
    align-items: center;
}
.dvp-auth-brand-logo img {
    max-width: 80px;
    max-height: 44px;
    object-fit: contain;
    display: block;
}
.dvp-auth-brand-name-only {
    font-size: 14px;
    font-weight: 500;
    color: #111827;
    width: 80px;
    flex-shrink: 0;
}
.dvp-auth-brand-info { flex: 1; }
.dvp-auth-badge {
    display: inline-block;
    font-size: 11px;
    font-weight: 500;
    background: #E1F5EE;
    color: #0F6E56;
    border-radius: 4px;
    padding: 2px 8px;
    margin-bottom: 8px;
}
.dvp-auth-countries {
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
    margin-top: 4px;
}

.dvp-can-sell-brands {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    align-items: center;
}
.dvp-can-sell-brand img {
    max-height: 36px;
    max-width: 90px;
    object-fit: contain;
    filter: grayscale(30%);
    opacity: 0.85;
    transition: opacity .15s, filter .15s;
}
.dvp-can-sell-brand img:hover { opacity: 1; filter: none; }
.dvp-brand-pill {
    font-size: 12px;
    border: 1px solid #d1d5db;
    border-radius: 4px;
    padding: 4px 10px;
    color: #374151;
}

/* ── BRAND RELATIONSHIPS — Dashboard ── */
.dvp-brand-list { display: flex; flex-direction: column; gap: 8px; }
.dvp-brand-row {
    border: 1px solid #e5e7eb;
    border-radius: 8px;
    padding: 10px 14px;
    transition: border-color .15s, background .15s;
}
.dvp-brand-row.dvp-brand-active {
    border-color: #1D9E75;
    background: #f0fdf9;
}
.dvp-brand-check-area {
    display: flex;
    align-items: center;
    gap: 10px;
    cursor: pointer;
}
.dvp-brand-label {
    display: flex;
    align-items: center;
    gap: 8px;
    cursor: pointer;
    font-size: 14px;
    font-weight: 500;
    color: #111827;
}
.dvp-brand-logo-small {
    height: 28px;
    max-width: 70px;
    object-fit: contain;
}
.dvp-brand-options {
    margin-top: 10px;
    padding-top: 10px;
    border-top: 1px solid #e5e7eb;
}
.dvp-brand-type-row {
    display: flex;
    gap: 20px;
    margin-bottom: 10px;
}
.dvp-radio-label {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 13px;
    cursor: pointer;
}
.dvp-brand-countries label {
    font-size: 12px;
    color: #6b7280;
    margin-bottom: 4px;
    display: block;
}
.dvp-hint-inline { font-size: 11px; color: #9ca3af; }
.dvp-brand-countries input[type=text] {
    width: 100%;
    padding: 6px 10px;
    border: 1px solid #d1d5db;
    border-radius: 6px;
    font-size: 13px;
    box-sizing: border-box;
}
.dvp-hidden { display: none !important; }

/* ── DISCLAIMER (store page) ── */
.dvp-disclaimer {
    font-size: 12px;
    color: #9ca3af;
    border-top: 1px solid #f3f4f6;
    margin-top: 8px;
    padding-top: 12px;
    line-height: 1.6;
}

/* ── NOTICE (dashboard) ── */
.dvp-notice {
    font-size: 13px;
    color: #92400e;
    background: #fffbeb;
    border: 1px solid #fcd34d;
    border-radius: 6px;
    padding: 10px 14px;
    margin-bottom: 14px;
    line-height: 1.6;
}
.dvp-notice strong { color: #78350f; }

/* ── CLIENTS GRID (store page) ── */
.dvp-clients-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
    gap: 12px;
}
.dvp-client-card {
    border: 1px solid #e5e7eb;
    border-radius: 8px;
    padding: 12px;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 8px;
}
.dvp-client-logo {
    height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.dvp-client-logo img {
    max-height: 48px;
    max-width: 120px;
    object-fit: contain;
}
.dvp-client-initials {
    width: 48px;
    height: 48px;
    border-radius: 8px;
    background: #e5e7eb;
    color: #6b7280;
    font-size: 16px;
    font-weight: 600;
    display: flex;
    align-items: center;
    justify-content: center;
}
.dvp-client-info { display: flex; flex-direction: column; gap: 4px; }
.dvp-client-name { font-size: 13px; font-weight: 500; color: #111827; line-height: 1.3; }
.dvp-client-meta { display: flex; flex-direction: column; gap: 2px; }
.dvp-client-sector {
    font-size: 11px;
    background: #eff6ff;
    color: #1e40af;
    border-radius: 4px;
    padding: 2px 7px;
    display: inline-block;
}
.dvp-client-city { font-size: 11px; color: #9ca3af; }

/* ── CLIENTS (dashboard) ── */
.dvp-client-entry {
    border: 1px solid #e5e7eb;
    border-radius: 8px;
    padding: 14px;
    margin-bottom: 10px;
    position: relative;
}
.dvp-client-entry-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
    gap: 0 16px;
}
.dvp-remove-client {
    font-size: 12px;
    color: #ef4444;
    background: none;
    border: none;
    cursor: pointer;
    padding: 4px 0;
    margin-top: 6px;
}

/* ── NAV İKON ── */
.dokan-dashboard-menu .dvp-svg-icon,
.dokan-dash-menu .dvp-svg-icon {
    display: inline-flex;
    align-items: center;
    vertical-align: middle;
}
.dokan-dashboard-menu .dvp-svg-icon svg,
.dokan-dash-menu .dvp-svg-icon svg {
    width: 18px;
    height: 18px;
    stroke: currentColor;
}

/* Nav label — Kapee bu menü öğesine metin render etmiyor, JS ile ekliyoruz */
.dokan-dashboard-menu a .dvp-nav-label,
.dokan-dash-menu a .dvp-nav-label {
    margin-left: 8px;
    vertical-align: middle;
}
