.ov-native-footer-content { display: flex; flex: 1; align-items: center; justify-content: flex-end; gap: 8px; min-width: 0; }

/* Ortak Ürün Profili Mimarisi (Kendi Ürünüm, Tedarikçi Ürünü, Pazaryeri İlanı):
   Üst başlık: --nui-raised (beyaz), Sol kimlik sütunu: --nui-panel (hafif tonlu), Sağ çalışma alanı: --nui-bg (açık gri zemin üzerinde beyaz .nui-card kartlar). */
.ov-product-window-host { height: 100%; min-height: 0; }
.ov-product-window-host > .ov-product-detail, .nui-window-body > .ov-product-detail, .nui-window-body > .ov-supplier-detail, .nui-window-body > .ov-two-pane-detail { height: 100%; }
.ov-product-detail, .ov-supplier-detail, .ov-ui-scroll-window.ov-two-pane-detail { display: flex; flex-direction: column; height: 100%; min-height: 0; padding: 0; gap: 0; overflow: hidden; background: var(--nui-bg); }
.ov-product-detail > .ov-product-header, .ov-supplier-detail .ov-product-header, .ov-two-pane-detail > .ov-product-header, .ov-two-pane-detail > .ov-detail-heading { padding: 12px 16px; margin: 0; flex: 0 0 auto; background: var(--nui-raised); border-bottom: 1px solid var(--nui-border); }
.ov-product-detail > div[ng-if="!vm.loading && vm.product.id"], .ov-supplier-detail > .ov-spw-content { display: flex; flex-direction: column; flex: 1 1 auto; min-height: 0; overflow: hidden; }
.ov-product-workspace, .ov-detail-workspace { display: grid; grid-template-columns: 260px minmax(0, 1fr); flex: 1 1 auto; width: 100%; min-height: 0; overflow: hidden; }
.ov-product-media, .ov-detail-media { padding: 12px 14px; min-width: 0; overflow-y: auto; background: var(--nui-panel); border-right: 1px solid var(--nui-border); display: flex; flex-direction: column; gap: 10px; }
.ov-product-information, .ov-detail-information { display: flex; flex-direction: column; gap: 12px; min-width: 0; min-height: 0; overflow-y: auto; padding: 12px 16px 20px; background: var(--nui-bg); }
.ov-product-information > .ov-sticky-tabs, .ov-detail-information > .ov-sticky-tabs { flex-shrink: 0; }
.ov-product-information > .nui-card, .ov-detail-information > .nui-card, .ov-product-overview .nui-card, .ov-product-overview .nui-panel, .ov-detail-panel .nui-card, .ov-detail-panel .nui-panel, .ov-pd-cards-stack > .nui-panel, .ov-sales-cards > .nui-panel { background: var(--nui-raised); border: 1px solid var(--nui-border); border-radius: var(--nui-radius); }

.ov-product-information .ov-product-overview, .ov-detail-information .ov-product-overview { display: flex; flex-direction: column; align-items: stretch; width: 100%; gap: 12px; }
.ov-product-overview > .nui-card, .ov-product-overview > .nui-panel, .ov-detail-panel > .nui-card, .ov-detail-panel > .nui-panel { width: 100%; box-sizing: border-box; }
.ov-product-detail .ov-pd-heading-row { gap: 12px; margin-bottom: 10px; flex-wrap: wrap; }
.ov-product-information .ov-sales-cards { grid-template-columns: minmax(0, 1fr); }

/* Ortak 3'lü özet metrik şeridi ve 2'li kart ızgarası */
.ov-profile-metrics { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; width: 100%; }
.ov-profile-metric { display: flex; flex-direction: column; justify-content: space-between; gap: 6px; padding: 12px 14px; border: 1px solid var(--nui-border); border-radius: var(--nui-radius); background: var(--nui-raised); min-width: 0; }
/* Tıklanınca ilgili sekmeyi açan özet kartı (ürün detayı · Genel bilgiler) */
.ov-profile-metric.is-link { cursor: pointer; transition: border-color .15s ease; }
.ov-profile-metric.is-link:hover { border-color: var(--nui-primary); }
.ov-profile-metric.is-link:focus-visible { outline: 2px solid var(--nui-primary); outline-offset: 2px; }
.ov-profile-metric-head { display: flex; align-items: flex-start; justify-content: space-between; flex-wrap: wrap; gap: 4px 8px; font-size: var(--nui-font-size-xs); font-weight: 700; color: var(--nui-text-muted); text-transform: uppercase; letter-spacing: .02em; }
.ov-profile-metric-head > .nui-badge { flex-shrink: 0; }
.ov-profile-metric-val { font-size: var(--nui-font-size-base); font-weight: 700; color: var(--nui-text); font-variant-numeric: tabular-nums; line-height: 1.3; overflow-wrap: anywhere; }
.ov-profile-metric-sub { font-size: var(--nui-font-size-xs); color: var(--nui-text-muted); line-height: 1.35; }
.ov-general-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; align-items: stretch; }
.ov-general-card { display: flex; flex-direction: column; gap: 10px; padding: 14px; border: 1px solid var(--nui-border); border-radius: var(--nui-radius); background: var(--nui-raised); }
.ov-general-title { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin: 0; font-size: var(--nui-font-size-sm); font-weight: 700; color: var(--nui-text); }
.ov-general-title small { font-weight: 500; color: var(--nui-text-muted); text-transform: none; }

.ov-detail-workspace .ov-detail-information > .ov-detail-scroll { padding: 0; overflow: visible; }
.ov-detail-media h2 { font-size: 15px; overflow-wrap: anywhere; }
@media (max-width: 760px) {
    .ov-product-workspace, .ov-detail-workspace, .ov-profile-metrics, .ov-general-grid { grid-template-columns: minmax(0, 1fr); }
    .ov-product-window-host > .ov-product-detail, .nui-window-body > .ov-product-detail { height: auto; min-height: 100%; }
    .ov-product-detail > div[ng-if="!vm.loading && vm.product.id"] { display: block; }
    .ov-product-media, .ov-detail-media { overflow: visible; border-right: 0; border-bottom: 1px solid var(--nui-border); }
    nui-gallery { max-width: 260px; margin-inline: auto; }
    .ov-product-information, .ov-detail-information { overflow: visible; }
    .ov-two-pane-detail, .ov-two-pane-detail > .ov-detail-workspace, .ov-supplier-detail > .ov-detail-workspace { height: auto; overflow: visible; }
    .ov-native-footer-content { flex-wrap: wrap; }
}
.ov-wizard-footer { justify-content: space-between; }

.nui-window-footer > div { width: 100%; }

.nui-window-body > .ov-two-pane-detail:has(>div[ng-if="win.product"]) > div[ng-if="win.product"] { display: flex; flex: 1; min-height: 0; flex-direction: column; }
.ov-two-pane-detail > div[ng-if="win.product"] > .ov-detail-heading { padding: 16px; }
.ov-two-pane-detail > div[ng-if="win.product"] > .ov-detail-workspace { flex: 1; overflow: hidden; }

/* Tedarikçi ürün penceresi: sekme panelleri ve depo kutuları */
.ov-supplier-detail .ov-detail-panel { display: flex; flex-direction: column; gap: 12px; min-height: 0; }
.ov-supplier-detail .ov-detail-panel[hidden] { display: none; }
.ov-supplier-detail .ov-stock-headline { display: flex; align-items: center; gap: 10px; }
.ov-supplier-detail .ov-stock-headline strong { font-size: 18px; font-variant-numeric: tabular-nums; }
.ov-supplier-detail .ov-general-help { color: var(--nui-text-muted); font-size: var(--nui-font-size-xs); }
.ov-supplier-detail .ov-stock-warehouses { display: grid; grid-template-columns: repeat(auto-fill, minmax(90px, 1fr)); gap: 6px; margin: 0; }
.ov-supplier-detail .ov-stock-warehouses > div { padding: 6px 8px; border: 1px solid var(--nui-border); border-radius: 6px; background: var(--nui-bg); }
.ov-supplier-detail .ov-stock-warehouses > div.is-selected { border-color: var(--nui-info); }
.ov-supplier-detail .ov-stock-warehouses dt { font-size: 10px; font-weight: 700; color: var(--nui-text-muted); text-transform: uppercase; }
.ov-supplier-detail .ov-stock-warehouses dd { margin: 2px 0 0; font-weight: 700; font-variant-numeric: tabular-nums; }
.ov-supplier-detail .ov-history-table { border: 1px solid var(--nui-border); border-radius: var(--nui-radius); background: var(--nui-raised); overflow: auto; }
.ov-supplier-detail .ov-nowrap { white-space: nowrap; }
.ov-supplier-detail .ov-muted { color: var(--nui-text-muted); }

/* Aktarım sihirbazı: sade adım göstergesi, gri zemin üzerinde kartlar, tek satırlık alış varsayımları. */
.ov-wizard { display: flex; flex-direction: column; height: 100%; min-height: 0; background: var(--nui-bg); color: var(--nui-text); font-size: var(--nui-font-size-base); }
.ov-wizard-head { padding: 12px 18px; border-bottom: 1px solid var(--nui-border); }
.ov-wizard-alert { margin: 10px 18px 0; display: flex; align-items: center; gap: 8px; }
.ov-wizard-body { flex: 1 1 auto; min-height: 0; overflow: auto; padding: 14px 18px; }
.ov-wizard-step { display: flex; flex-direction: column; gap: 12px; min-height: 100%; }
.ov-wizard-card { padding: 14px; border: 1px solid var(--nui-border); border-radius: var(--nui-radius); background: var(--nui-raised); }
.ov-wizard-card-title { display: flex; align-items: baseline; gap: 8px; margin: 0 0 10px; font-size: var(--nui-font-size-base); }
.ov-wizard-card-title small { color: var(--nui-text-muted); font-weight: 400; font-size: var(--nui-font-size-xs); }
.ov-wizard-assumptions { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 12px; margin-top: 12px; padding-top: 10px; border-top: 1px dashed var(--nui-border); font-size: var(--nui-font-size-sm); }
.ov-wizard-assumption-label { color: var(--nui-text-muted); }
.ov-wizard-assumptions .nui-select { width: auto; min-width: 120px; }
.ov-wizard-inline { display: inline-flex; align-items: center; gap: 6px; color: var(--nui-text-muted); }
.ov-wizard-inline .nui-input-group { width: 120px; }
.ov-wizard-table-card { display: flex; flex-direction: column; padding: 0; overflow: hidden; flex: 1 1 auto; min-height: 180px; }
.ov-wizard-table-card > .ov-wizard-card-title { padding: 12px 14px 0; }
.ov-wizard-table-card > .ov-table-scroll { flex: 1 1 auto; min-height: 0; overflow: auto; }
.ov-wizard .ov-num { text-align: right; font-variant-numeric: tabular-nums; white-space: nowrap; }
.ov-wizard .nui-text-mono { font-family: var(--nui-font-mono, monospace); }
.ov-wizard-sub { display: block; max-width: 420px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; color: var(--nui-text-muted); font-size: var(--nui-font-size-xs); }
/* Açıklama cümleleri kesilmez; örn. araç kartı çıkarılamadı uyarısı satır satır okunur. */
.ov-wizard-sub.is-wrap { max-width: none; overflow: visible; white-space: normal; overflow-wrap: break-word; }
.ov-wizard-profit { color: var(--nui-success); }

.ov-wizard-loading { display: flex; align-items: center; gap: 8px; margin: 0 14px 12px; color: var(--nui-text-muted); }
/* Fiyat adımında yeni hesap beklenirken eski değerler soluk kalır; yerleşim değişmez. */
.ov-wizard-pricing-loading { margin: 10px 0 0; }
.ov-wizard-table-card.is-busy .ov-table-scroll { opacity: .55; transition: opacity .15s; }
.ov-wizard-table-card > .ov-wizard-rule-error { margin: 8px 14px 0; }
.ov-wizard-vehicle { display: flex; flex-direction: column; gap: 4px; margin: 6px 0; font-size: var(--nui-font-size-sm); }
.ov-wizard-vehicle .nui-input { width: 100%; max-width: none; }
.ov-wizard-vehicle small { display: block; color: var(--nui-text-muted); }

.ov-wizard-done { align-items: center; justify-content: center; text-align: center; padding: 24px; }
.ov-wizard-done-icon { display: inline-flex; align-items: center; justify-content: center; width: 52px; height: 52px; border-radius: 50%; background: color-mix(in srgb, var(--nui-success) 15%, var(--nui-raised)); color: var(--nui-success); font-size: 26px; }
.ov-wizard-done h2 { margin: 6px 0 0; font-size: 18px; }
.ov-wizard-done p { margin: 0; max-width: 460px; color: var(--nui-text-muted); }
.ov-wizard-result { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; margin: 8px 0; }
.ov-wizard-result > div { min-width: 110px; padding: 10px 16px; border: 1px solid var(--nui-border); border-radius: var(--nui-radius); background: var(--nui-raised); }
.ov-wizard-result dt { font-size: var(--nui-font-size-xs); color: var(--nui-text-muted); }
.ov-wizard-result dd { margin: 4px 0 0; font-size: 20px; font-weight: 800; }
.ov-wizard-footer { justify-content: space-between !important; }
.ov-wizard .ov-table-scroll td > .nui-input, .ov-wizard .ov-table-scroll td > .nui-input-group { width: 100%; }

/* Sihirbaz fiyat adımı v2: maliyet satırı + kâr satırı, turuncu satış fiyatı, zarar uyarısı ve footer özeti. */
.ov-wizard-card-title-sep { margin-top: 14px; padding-top: 12px; border-top: 1px dashed var(--nui-border); }
.ov-wizard-rule-error { display: flex; align-items: center; gap: 6px; margin: 10px 0 0; color: var(--nui-danger); font-size: var(--nui-font-size-sm); font-weight: 600; }
.ov-wizard-price-table .ov-wizard-sale { color: var(--nui-primary); font-size: 15px; font-weight: 800; }
.ov-wizard-price-table tr.is-loss td { background: color-mix(in srgb, var(--nui-danger) 7%, transparent); }
.ov-wizard-loss { color: var(--nui-danger); font-weight: 700; }
.ov-wizard-price-table td.ov-num .ov-wizard-sub { max-width: none; margin-left: auto; }
.ov-wizard-summary { display: flex; align-items: center; gap: 4px; margin: 0 auto 0 12px; min-width: 0; overflow: hidden; }
.ov-wizard-summary > div { display: flex; flex-direction: column; padding: 2px 10px; border-left: 1px solid var(--nui-border); }
.ov-wizard-summary > div:first-child { border-left: 0; }
.ov-wizard-summary dt { font-size: 10px; color: var(--nui-text-muted); text-transform: uppercase; letter-spacing: .03em; }
.ov-wizard-summary dd { margin: 0; font-size: var(--nui-font-size-base); font-weight: 700; font-variant-numeric: tabular-nums; white-space: nowrap; }
.ov-wizard-summary-net dd { color: var(--nui-success); }
.ov-wizard-summary-net.is-loss dd { color: var(--nui-danger); }
@media (max-width: 760px) { .ov-wizard-summary { display: none; } }
