/* Suppliers visual polish: pastel surfaces, readable contrast, reduced noise. */

:root {
    --supplier-polish-bg: #f8fbf8;
    --supplier-polish-surface: #ffffff;
    --supplier-polish-border: #dbe8df;
    --supplier-polish-text: #223026;
    --supplier-polish-muted: #5f6f66;
    --supplier-polish-mint: #e8f6ef;
    --supplier-polish-mint-border: #bee4d0;
    --supplier-polish-mint-text: #2c684c;
    --supplier-polish-sky: #e9f4fb;
    --supplier-polish-sky-border: #b9dded;
    --supplier-polish-sky-text: #285d73;
    --supplier-polish-peach: #fff3e7;
    --supplier-polish-peach-border: #f5d1a7;
    --supplier-polish-peach-text: #795120;
    --supplier-polish-lavender: #f1eefb;
    --supplier-polish-lavender-border: #d7cff3;
    --supplier-polish-lavender-text: #554986;
    --supplier-polish-shadow: 0 14px 34px rgba(34, 48, 38, 0.06);
}

.theme-owner,
.theme-dealer,
.supplier-dashboard-shell,
.dealer-dashboard,
.supplier-catalog-shell,
.pp-page[data-profile-role="supplier"],
.pp-page[data-profile-role="dealer"],
.cu-page[data-manage-role="supplier"],
.supplier-welcome-page {
    background: var(--supplier-polish-bg) !important;
    color: var(--supplier-polish-text);
}

.cu-page[data-manage-role="supplier"] {
    --cu-primary: #4e73df;
    --cu-primary-light: rgba(78, 115, 223, 0.1);
    --cu-card-radius: 16px;
    --cu-transition: 0.2s cubic-bezier(0.25, 0.8, 0.25, 1);
}

.theme-owner .card,
.theme-dealer .card,
.supplier-dashboard-shell .card,
.dealer-dashboard .card,
.supplier-catalog-shell .card,
.pp-page[data-profile-role] .pp-card,
.cu-page[data-manage-role="supplier"] .cu-card,
.cu-page[data-manage-role="supplier"] .cu-stat-card,
.stat-container,
.merit-panel,
.merit-analysis-box,
.owner-header-card,
.dealer-header-card,
.filter-bar,
.supplier-catalog-hero {
    border: 1px solid var(--supplier-polish-border) !important;
    background: var(--supplier-polish-surface) !important;
    box-shadow: var(--supplier-polish-shadow) !important;
}

.theme-owner .card,
.theme-dealer .card,
.stat-container,
.merit-panel,
.merit-analysis-box,
.owner-header-card,
.dealer-header-card,
.quick-action-box,
.sub-plan-box,
.supplier-vision-card,
.supplier-marketing-card,
.dealer-marketing-card,
.supplier-talent-card,
.cu-page[data-manage-role="supplier"] .cu-card,
.cu-page[data-manage-role="supplier"] .cu-stat-card,
.supplier-catalog-hero,
.filter-bar {
    border-radius: 8px !important;
}

.supplier-dashboard-shell .text-muted,
.dealer-dashboard .text-muted,
.supplier-catalog-shell .text-muted,
.pp-page[data-profile-role] .text-muted,
.cu-page[data-manage-role="supplier"] .text-muted,
.supplier-soft-muted {
    color: var(--supplier-polish-muted) !important;
}

.supplier-soft-text,
.dealer-plan-title,
.supplier-vision-card h5,
.supplier-marketing-card h5,
.dealer-marketing-card h6,
.supplier-talent-card h6,
.sub-plan-box h6 {
    color: var(--supplier-polish-text) !important;
}

.supplier-soft-badge,
.supplier-vision-badge,
.supplier-dashboard-shell .badge.bg-secondary,
.dealer-dashboard .badge.bg-secondary,
.supplier-campaign-badge {
    background: var(--supplier-polish-peach) !important;
    border: 1px solid var(--supplier-polish-peach-border) !important;
    color: var(--supplier-polish-peach-text) !important;
}

.supplier-vision-card,
.supplier-marketing-card,
.dealer-marketing-card,
.supplier-talent-card,
.sub-plan-box,
.cu-stat-card--primary,
.cu-stat-card--success,
.cu-stat-card--info {
    background: #f4fbf8 !important;
    border: 1px solid var(--supplier-polish-border) !important;
    color: var(--supplier-polish-text) !important;
}

.supplier-marketing-decor,
.dealer-marketing-rocket,
.supplier-talent-watermark-icon,
.header-illustration {
    opacity: 0.16 !important;
    color: var(--supplier-polish-sky-text) !important;
    stroke: var(--supplier-polish-sky-text) !important;
}

.supplier-vision-card svg {
    color: var(--supplier-polish-sky-text);
    fill: currentColor;
    stroke: currentColor;
}

.supplier-vision-card svg circle {
    fill: none;
    stroke: currentColor;
}

.supplier-vision-card svg text {
    fill: currentColor;
    stroke: none;
}

.supplier-dashboard-shell .btn-primary,
.supplier-dashboard-shell .btn-success,
.dealer-dashboard .btn-primary,
.dealer-dashboard .btn-success,
.theme-owner .btn-primary,
.theme-owner .btn-success,
.theme-dealer .btn-primary,
.theme-dealer .btn-success,
.supplier-approve-btn,
.cu-page[data-manage-role="supplier"] .pm-btn-primary,
.cu-page[data-manage-role="supplier"] .cu-btn-primary {
    --bs-btn-color: var(--supplier-polish-mint-text);
    --bs-btn-bg: var(--supplier-polish-mint);
    --bs-btn-border-color: var(--supplier-polish-mint-border);
    --bs-btn-hover-color: #205a3f;
    --bs-btn-hover-bg: #def0e8;
    --bs-btn-hover-border-color: var(--supplier-polish-mint-border);
    background-color: var(--supplier-polish-mint) !important;
    border-color: var(--supplier-polish-mint-border) !important;
    color: var(--supplier-polish-mint-text) !important;
    box-shadow: 0 10px 24px rgba(44, 104, 76, 0.08) !important;
}

.supplier-dashboard-shell .btn-outline-light,
.dealer-dashboard .btn-outline-light {
    background: #ffffff !important;
    border-color: var(--supplier-polish-border) !important;
    color: var(--supplier-polish-text) !important;
}

.quick-action-box {
    color: var(--supplier-polish-text) !important;
}

.quick-action-box:hover {
    background: var(--supplier-polish-sky) !important;
    border-color: var(--supplier-polish-sky-border) !important;
    color: var(--supplier-polish-sky-text) !important;
}

.quick-action-box i,
.quick-action-box .text-purple,
.supplier-map-pin {
    color: var(--supplier-polish-sky-text) !important;
}

.supplier-disabled-link {
    cursor: not-allowed !important;
    opacity: 0.62 !important;
    pointer-events: none !important;
}

.supplier-profile-content {
    max-width: 1140px;
    margin: 0 auto;
    padding: 0 1.5rem;
}

.supplier-stat-value-sm {
    font-size: 1.15rem;
}

.supplier-stat-value-lg {
    font-size: 1.5rem;
}

.supplier-stat-rating-row {
    opacity: 0.9;
}

.supplier-stat-star {
    color: rgba(255, 255, 255, 0.82);
    font-size: 0.85rem;
}

.supplier-stat-rating-value {
    font-size: 0.95rem;
    font-weight: 600;
}

.supplier-stat-rating-count,
.supplier-stat-caption {
    font-size: 0.75rem;
    opacity: 0.78;
}

.supplier-stat-hint {
    font-size: 0.72rem;
    opacity: 0.85;
    max-width: 140px;
}

.supplier-stat-divider {
    width: 1px;
    height: 36px;
    background: rgba(255, 255, 255, 0.28);
}

.supplier-readonly-input {
    background: #f9fafb !important;
}

.sub-plan-icon,
.supplier-talent-icon-wrap {
    background: var(--supplier-polish-lavender) !important;
    border: 1px solid var(--supplier-polish-lavender-border) !important;
    color: var(--supplier-polish-lavender-text) !important;
}

.sub-plan-footer {
    color: var(--supplier-polish-muted) !important;
}

@media (max-width: 767.98px) {
    .supplier-profile-content {
        padding: 0 1rem;
    }

    .theme-owner .card,
    .theme-dealer .card,
    .stat-container,
    .merit-panel,
    .owner-header-card,
    .dealer-header-card,
    .supplier-vision-card,
    .supplier-marketing-card,
    .dealer-marketing-card,
    .supplier-talent-card {
        box-shadow: none !important;
    }
}

/* Public supplier/dealer profile resilience and accessibility. */
.pp-page[data-profile-role="supplier"] .pp-hero__bg--image::after,
.pp-page[data-profile-role="dealer"] .pp-hero__bg--image::after {
    background: linear-gradient(
        to bottom,
        rgba(15, 23, 42, 0.14) 10%,
        rgba(15, 23, 42, 0.72) 100%
    );
}

.pp-page[data-profile-role="supplier"] .pp-hero__bg--image ~ .pp-hero__content :is(
    .pp-hero__name,
    .pp-hero__tagline,
    .pp-hero__meta-item
),
.pp-page[data-profile-role="dealer"] .pp-hero__bg--image ~ .pp-hero__content :is(
    .pp-hero__name,
    .pp-hero__tagline,
    .pp-hero__meta-item
) {
    color: #ffffff;
    text-shadow: 0 2px 12px rgba(15, 23, 42, 0.6);
}

.pp-page[data-profile-role] :is(
    a,
    button
):focus-visible {
    outline: 3px solid #2563eb;
    outline-offset: 3px;
    box-shadow: none;
}

.pp-page[data-profile-role] .pp-project-card:focus-within .pp-project-card__overlay {
    opacity: 1;
}

.pp-page[data-profile-role] .pp-contact-item > :last-child,
.pp-page[data-profile-role] .pp-contact-item__value,
.pp-page[data-profile-role] .pp-project-card__meta {
    min-width: 0;
}

.pp-page[data-profile-role] .pp-contact-item__value,
.pp-page[data-profile-role] .pp-contact-item__value a,
.pp-page[data-profile-role] .pp-project-card__meta span {
    overflow-wrap: anywhere;
}

.pp-page[data-profile-role] .pp-empty--compact {
    width: 100%;
    padding: 0.75rem 0;
    text-align: left;
}

.pp-page[data-profile-role] nav[aria-label$="sayfaları"] {
    flex-wrap: wrap;
}

.pp-page[data-profile-role] nav[aria-label$="sayfaları"] :is(
    .pp-btn-primary,
    .pp-btn-secondary
) {
    min-height: 44px;
}

.pp-page[data-profile-role] [data-supplier-follow-action].is-pending {
    cursor: wait;
    opacity: 0.72;
}

.pp-page[data-profile-role] [data-supplier-follow-action].is-pending::after {
    width: 0.9rem;
    height: 0.9rem;
    border: 2px solid currentColor;
    border-right-color: transparent;
    border-radius: 50%;
    content: "";
    animation: supplier-public-spin 0.7s linear infinite;
}

#supplier-public-runtime-notice {
    position: fixed;
    top: max(1rem, env(safe-area-inset-top));
    left: 50%;
    z-index: 1090;
    width: min(92vw, 620px);
    margin: 0;
    transform: translateX(-50%);
    box-shadow: 0 16px 36px rgba(15, 23, 42, 0.18);
}

@keyframes supplier-public-spin {
    to {
        transform: rotate(360deg);
    }
}

@media (max-width: 575.98px) {
    .pp-page[data-profile-role] nav[aria-label$="sayfaları"] {
        align-items: stretch !important;
    }

    .pp-page[data-profile-role] nav[aria-label$="sayfaları"] :is(
        .pp-btn-primary,
        .pp-btn-secondary
    ) {
        flex: 1 1 auto;
        justify-content: center;
    }
}

@media (prefers-reduced-motion: reduce) {
    .pp-page[data-profile-role] [data-supplier-follow-action].is-pending::after {
        animation: none;
    }
}

/* Dashboard/profile theme and accessibility completion ---------------- */
:is(
    .theme-owner,
    .theme-dealer,
    .supplier-dashboard-shell,
    .dealer-dashboard,
    .supplier-catalog-shell,
    .pp-page[data-profile-role="supplier"],
    .pp-page[data-profile-role="dealer"],
    .cu-page[data-manage-role="supplier"],
    .supplier-welcome-page
) :is(
    a,
    button,
    input,
    select,
    textarea,
    summary,
    [role="button"],
    [tabindex]:not([tabindex="-1"])
):focus-visible {
    outline: 3px solid #2c684c !important;
    outline-offset: 2px;
}

html[data-theme="dark"] :is(
    .theme-owner,
    .theme-dealer,
    .supplier-dashboard-shell,
    .dealer-dashboard,
    .supplier-catalog-shell,
    .pp-page[data-profile-role="supplier"],
    .pp-page[data-profile-role="dealer"],
    .cu-page[data-manage-role="supplier"],
    .supplier-welcome-page
) :is(
    a,
    button,
    input,
    select,
    textarea,
    summary,
    [role="button"],
    [tabindex]:not([tabindex="-1"])
):focus-visible {
    outline-color: #9fd5e7 !important;
}

html[data-theme="dark"] :is(
    .theme-owner,
    .theme-dealer,
    .supplier-dashboard-shell,
    .dealer-dashboard,
    .supplier-catalog-shell,
    .pp-page[data-profile-role="supplier"],
    .pp-page[data-profile-role="dealer"],
    .cu-page[data-manage-role="supplier"],
    .supplier-welcome-page
) {
    --supplier-polish-bg: #0d1713;
    --supplier-polish-surface: #17251f;
    --supplier-polish-border: #3b5046;
    --supplier-polish-text: #eef5f1;
    --supplier-polish-muted: #b9c8c0;
    --supplier-polish-mint: #1d3b2f;
    --supplier-polish-mint-border: #46735f;
    --supplier-polish-mint-text: #bce7d1;
    --supplier-polish-sky: #193747;
    --supplier-polish-sky-border: #3e7086;
    --supplier-polish-sky-text: #b9e2f0;
    --supplier-polish-peach: #403223;
    --supplier-polish-peach-border: #7c6441;
    --supplier-polish-peach-text: #f1d2a5;
    --supplier-polish-lavender: #302b48;
    --supplier-polish-lavender-border: #665d8d;
    --supplier-polish-lavender-text: #d8d0f4;
    --supplier-polish-shadow: 0 14px 34px rgba(2, 8, 23, 0.25);
    background: var(--supplier-polish-bg) !important;
    color: var(--supplier-polish-text) !important;
}

html[data-theme="dark"] :is(
    .theme-owner,
    .theme-dealer,
    .supplier-dashboard-shell,
    .dealer-dashboard,
    .supplier-catalog-shell,
    .pp-page[data-profile-role],
    .cu-page[data-manage-role="supplier"],
    .supplier-welcome-page
) :is(
    .card,
    .pp-card,
    .cu-card,
    .cu-stat-card,
    .stat-container,
    .merit-panel,
    .merit-analysis-box,
    .owner-header-card,
    .dealer-header-card,
    .filter-bar,
    .supplier-catalog-hero,
    .quick-action-box,
    .sub-plan-box,
    .supplier-vision-card,
    .supplier-marketing-card,
    .dealer-marketing-card,
    .supplier-talent-card,
    .list-group-item,
    .modal-content,
    .dropdown-menu
) {
    background: var(--supplier-polish-surface) !important;
    border-color: var(--supplier-polish-border) !important;
    color: var(--supplier-polish-text) !important;
}

html[data-theme="dark"] :is(
    .theme-owner,
    .theme-dealer,
    .supplier-dashboard-shell,
    .dealer-dashboard,
    .supplier-catalog-shell,
    .pp-page[data-profile-role],
    .cu-page[data-manage-role="supplier"],
    .supplier-welcome-page
) :is(
    h1,
    h2,
    h3,
    h4,
    h5,
    h6,
    .supplier-soft-text,
    .dealer-plan-title
) {
    color: var(--supplier-polish-text) !important;
}

html[data-theme="dark"] :is(
    .theme-owner,
    .theme-dealer,
    .supplier-dashboard-shell,
    .dealer-dashboard,
    .supplier-catalog-shell,
    .pp-page[data-profile-role],
    .cu-page[data-manage-role="supplier"],
    .supplier-welcome-page
) :is(.form-control, .form-select, .input-group-text, textarea) {
    background-color: #101c17 !important;
    border-color: var(--supplier-polish-border) !important;
    color: var(--supplier-polish-text) !important;
    -webkit-text-fill-color: var(--supplier-polish-text);
}

html[data-theme="dark"] :is(
    .theme-owner,
    .theme-dealer,
    .supplier-dashboard-shell,
    .dealer-dashboard,
    .supplier-catalog-shell,
    .pp-page[data-profile-role],
    .cu-page[data-manage-role="supplier"],
    .supplier-welcome-page
) :is(input, textarea)::placeholder {
    color: var(--supplier-polish-muted);
    opacity: 1;
}

html[data-theme="dark"] :is(
    .supplier-dashboard-shell,
    .dealer-dashboard,
    .theme-owner,
    .theme-dealer
) :is(.btn-primary, .btn-success) {
    background: #245f49 !important;
    border-color: #5c9d7e !important;
    color: #ffffff !important;
}

@media (prefers-reduced-motion: reduce) {
    :is(
        .theme-owner,
        .theme-dealer,
        .supplier-dashboard-shell,
        .dealer-dashboard,
        .supplier-catalog-shell,
        .pp-page[data-profile-role],
        .cu-page[data-manage-role="supplier"],
        .supplier-welcome-page
    ) *,
    :is(
        .theme-owner,
        .theme-dealer,
        .supplier-dashboard-shell,
        .dealer-dashboard,
        .supplier-catalog-shell,
        .pp-page[data-profile-role],
        .cu-page[data-manage-role="supplier"],
        .supplier-welcome-page
    ) *::before,
    :is(
        .theme-owner,
        .theme-dealer,
        .supplier-dashboard-shell,
        .dealer-dashboard,
        .supplier-catalog-shell,
        .pp-page[data-profile-role],
        .cu-page[data-manage-role="supplier"],
        .supplier-welcome-page
    ) *::after {
        transition-duration: 0.01ms !important;
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        scroll-behavior: auto !important;
    }
}

@media (forced-colors: active) {
    :is(
        .theme-owner,
        .theme-dealer,
        .supplier-dashboard-shell,
        .dealer-dashboard,
        .supplier-catalog-shell,
        .pp-page[data-profile-role],
        .cu-page[data-manage-role="supplier"],
        .supplier-welcome-page
    ) :is(.card, .pp-card, .cu-card, .quick-action-box, .filter-bar, .modal-content) {
        border: 1px solid CanvasText !important;
        box-shadow: none !important;
    }
}
