/* ==========================================================================
   CEPLINE SOFT — UI Pro katmanı (v1.1)
   --------------------------------------------------------------------------
   En son yüklenen tutarlılık katmanı. Önceki katmanların (app, experience,
   workspace, design-v2 …) çakıştığı noktaları düzeltir:
   - koyu zeminli kahraman (hero) kartlarındaki okunamayan metinler
   - eksik bileşen stilleri (.alert.info vb.)
   - taşan liste satırları, kayan avatar harfleri
   - mobilde dikey olarak uzayan tablo satırları
   - klavye odak görünürlüğü, hareket azaltma tercihi, yazdırma
   İş mantığı veya markup içermez.
   ========================================================================== */

:root{
  --pro-ink:#1b2236;
  --pro-text:#3a4358;
  --pro-muted:#646e86;
  --pro-line:#e3e8f1;
  --pro-surface:#fff;
  --pro-canvas:#f4f6fb;
  --pro-primary:#6554d9;
  --pro-primary-soft:#efedff;
  --pro-info:#1f6fd1;      --pro-info-soft:#eaf3ff;   --pro-info-line:#cfe2fb;
  --pro-success:#168a4a;   --pro-success-soft:#eaf8f0;
  --pro-warning:#a4600f;   --pro-warning-soft:#fff5e6;
  --pro-danger:#c2383b;    --pro-danger-soft:#fdeeee;
  --pro-focus:0 0 0 3px rgba(101,84,217,.28);
  --pro-radius:14px;
}

/* ---------- 1. Eksik bildirim türü: bilgi ---------- */
.alert.info{background:var(--pro-info-soft);color:#1b4f93;border:1px solid var(--pro-info-line)}
.alert{display:flex;align-items:flex-start;gap:10px;border-radius:12px;padding:12px 14px;line-height:1.55}
.alert>i.bi{flex:0 0 auto;margin-top:2px}
.alert.danger{background:var(--pro-danger-soft);color:var(--pro-danger);border-color:#f6d6d7}
.dash-note{margin:0 0 16px;font-size:12.5px}

/* ---------- 2. Koyu kahraman kartlarında kontrast ---------- */
.business-dashboard-hero h2,.business-dashboard-hero b,.business-dashboard-hero strong,
.admin-control-hero h1,.admin-control-hero h2,.admin-control-hero b,.admin-control-hero strong,
.dashboard-license-card b{color:#fff!important}
.business-dashboard-hero p,.business-dashboard-hero small,.business-dashboard-hero span:not(.eyebrow),
.admin-control-hero p,.admin-control-hero small,
.dashboard-license-card small,.dashboard-license-card span{color:rgba(228,232,247,.82)!important}
.business-dashboard-hero .eyebrow,.admin-control-hero .eyebrow{color:#b9b0ff!important}
.dashboard-license-card .license-bar{background:rgba(255,255,255,.16)}

/* ---------- 3. Liste satırları ve avatarlar ---------- */
.compact-list-row{box-sizing:border-box;max-width:100%;min-width:0}
.compact-list-row>div{min-width:0;flex:1 1 auto}
.compact-list-row>div b,.compact-list-row>div small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.compact-list-row .stock-value{flex:0 0 auto}
.customer-mini .avatar,.avatar.avatar-soft{display:inline-grid!important;place-items:center;flex:0 0 auto;
  font-size:11.5px;font-weight:700;letter-spacing:0;line-height:1;text-align:center;color:#5143c4!important;overflow:hidden}
.license-overview-main .license-gem{display:grid;place-items:center;color:var(--pro-primary);background:var(--pro-primary-soft)}
.license-progress span{font-size:9.5px!important;letter-spacing:-.2px}

/* ---------- 4. Tablolar ---------- */
.x-table-wrap,.table-wrap,.ws-table-wrap,.c-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;max-width:100%}
.x-table tbody tr,.table tbody tr{transition:background-color .12s ease}
.x-table tbody tr:hover,.table tbody tr:hover{background:#f8f9fd}
td.num,th.num{text-align:right;font-variant-numeric:tabular-nums}
.x-table td,.table td{font-variant-numeric:tabular-nums}

/* ---------- 5. Formlar ---------- */
form:not([method=post]):not([method=POST]) .ux-field-hint{display:none}  /* filtre çubuklarında hizayı bozan yardım metinleri */
input:not([type=checkbox]):not([type=radio]):not([type=range]),select,textarea{font-variant-numeric:tabular-nums}
input::placeholder,textarea::placeholder{color:#9aa2b8;opacity:1}
:where(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline:none;box-shadow:var(--pro-focus)!important;border-radius:10px}
button[disabled],.btn[disabled],.x-btn[disabled]{opacity:.55;cursor:not-allowed}
.x-btn.is-busy,.btn.is-busy{pointer-events:none;opacity:.75}

/* ---------- 6. Boş durumlar ---------- */
.empty,.x-empty,.ws-empty{color:var(--pro-muted);text-align:center}

/* ---------- 7. Kimlik doğrulama ekranları (şifremi unuttum / yenile) ---------- */
.x-auth-notice{display:flex;gap:10px;align-items:flex-start;padding:12px 14px;border-radius:12px;margin:0 0 16px;font-size:13px;line-height:1.55}
.x-auth-notice.success{background:var(--pro-success-soft);color:var(--pro-success);border:1px solid #cdeedb}
.x-auth-notice svg{flex:0 0 18px;width:18px;height:18px}
.x-auth-hint{margin:-4px 0 14px;font-size:12px;color:var(--pro-muted)}
.x-auth-form .x-auth-submit{width:100%;justify-content:center}
.x-auth-form a.x-auth-submit{display:inline-flex;align-items:center;gap:8px;text-decoration:none}

/* ---------- 8. Mobil düzen ---------- */
@media (max-width:760px){
  .content-inner{padding-left:12px!important;padding-right:12px!important}
  .x-table,.table,.ws-table{min-width:640px}
  .x-table td,.table td{white-space:nowrap}
  .x-table td .x-actions,.table td .action-icons,.ws-table td .x-actions{flex-wrap:nowrap}
  .x-table td:first-child,.table td:first-child{position:sticky;left:0;background:#fff;z-index:1}
  .card-head{flex-wrap:wrap;gap:8px}
  .dashboard-hero-actions,.admin-hero-actions{flex-wrap:wrap}
  .quick-actions{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .app-footer{flex-direction:column;gap:4px;text-align:center}
}
@media (max-width:420px){
  .topbar h1{font-size:17px!important}
}

/* ---------- 9. Erişilebilirlik ve yazdırma ---------- */
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
}
@media print{
  .sidebar,.topbar,.app-footer,.sidebar-overlay,.command-palette,.x-actions,.action-icons{display:none!important}
  .main{margin:0!important;padding:0!important}
  .card{box-shadow:none!important;break-inside:avoid}
}
.license-overview-main .license-gem i{font-size:20px}

/* ---------- 10. v1.1 bileşenleri ---------- */
.branch-switch{display:flex;margin:0}
.branch-chip{display:inline-flex;align-items:center;gap:6px;cursor:pointer}
.branch-chip svg{width:16px;height:16px;flex:0 0 16px;color:var(--pro-primary)}
.branch-chip select{border:0;background:transparent;font:inherit;font-weight:700;color:var(--pro-ink);max-width:150px;padding:0 2px;cursor:pointer;box-shadow:none!important}
.branch-chip select:focus{outline:none}
@media (max-width:640px){.branch-chip select{max-width:96px}}
/* Üst çubuk: şube seçici eklendiğinde taşmayı önle */
.main{min-width:0}
.topbar{gap:12px}
.topbar-left{min-width:0;flex:1 1 auto}
.topbar .page-heading{min-width:0}
.topbar .page-heading p{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.top-actions{min-width:0;flex:0 1 auto}
@media (max-width:1700px){
  .rate-copy small,.license-chip-copy,.rate-copy .fx-unit{display:none!important}
  .license-chip{width:auto!important;min-width:0!important;gap:8px}
  .branch-chip select{max-width:118px}
}
@media (max-width:1600px){
  .profile-trigger-copy,.profile-chevron{display:none!important}
  .profile-trigger,.profile-menu{width:auto!important;min-width:0!important}
  .top-actions a.top-tool[href*="tickets"]{display:none!important} /* Destek: menü ve profil menüsünden erişilebilir */
}
@media (max-width:1366px){
  .rate-copy{display:none!important}
  .branch-chip select{max-width:100px}
}
@media (max-width:760px){
  .branch-chip select{max-width:84px;font-size:12px}
  .top-actions .ws-fx,.top-actions .license-chip{display:none!important}
}
@media (max-width:1366px){
  .topbar{flex-wrap:wrap;row-gap:10px}
  .top-actions{flex:1 1 100%;justify-content:flex-end;flex-wrap:wrap;row-gap:8px}
}
@media (max-width:760px){
  .top-actions{justify-content:flex-start}
}

/* ---------- 11. Marka (logo) ---------- */
.cp-mark{width:40px;height:40px;display:inline-block;flex:0 0 auto;border-radius:12px;box-shadow:0 6px 18px rgba(101,84,217,.28)}
.cp-mark-lg{width:48px;height:48px;border-radius:14px}
.cp-mark-xs{width:18px;height:18px;border-radius:5px;box-shadow:none;vertical-align:-4px;margin-right:6px}
.cp-brand{height:46px;width:auto;display:block}
.x-auth-visual .cp-brand{height:54px}
.x-auth-right .cp-brand{height:50px}
.x-auth-brand .x-icon-tile{display:none}
.cp-powered{display:inline-flex;align-items:center}
.brand-mark.brand-mark-cp{background:none!important;padding:0!important;overflow:hidden;box-shadow:0 8px 22px rgba(101,84,217,.35)}
.brand-mark-cp .brand-mark-img{width:100%;height:100%;display:block;border-radius:inherit;box-shadow:none}
@media (max-width:640px){.x-auth-visual .cp-brand,.x-auth-right .cp-brand{height:36px}}

/* ---------- 12. İkon tutarlılığı ---------- */
.nav-icon .bi:before{width:1.12em;height:1.12em}

/* ---------- 13. Yan menü: üzerine gelince ikon görünürlüğü ----------
   ux10 açık renkli ikon kutusu tanımlıyor, design-v2 ise hover'da ikonu beyaza çeviriyordu
   (açık zemin üzerinde beyaz ikon = görünmez). Tek, tutarlı durum seti: */
.sidebar .nav-link .nav-icon{background:rgba(255,255,255,.07)!important;border:1px solid rgba(255,255,255,.08)!important;color:#b9c1dc!important;box-shadow:none!important;transition:background .15s,color .15s,border-color .15s}
.sidebar .nav-link:hover .nav-icon{background:rgba(139,124,255,.22)!important;border-color:rgba(139,124,255,.35)!important;color:#fff!important}
.sidebar .nav-link.active .nav-icon{background:linear-gradient(145deg,#8b7cff,#5f50d0)!important;border-color:transparent!important;color:#fff!important;box-shadow:0 6px 14px rgba(101,84,217,.35)!important}
.sidebar .nav-link:hover{background:rgba(255,255,255,.06)!important;color:#fff!important}
.sidebar .nav-link:hover .nav-label{color:#fff!important}
.sidebar .nav-link.active{background:linear-gradient(90deg,rgba(139,124,255,.95),rgba(101,84,217,.95))!important;color:#fff!important}
.sidebar .nav-link.active .nav-icon{background:rgba(255,255,255,.18)!important;box-shadow:none!important}
.sidebar .nav-group-toggle:hover .nav-group-title>i,.sidebar .nav-group-toggle:hover .nav-group-title .bi{opacity:1}
.sidebar-quick-tools a:hover,.sidebar-quick-tools a:hover .bi{color:#fff!important}

@media (max-width:760px){
  .topbar{flex-wrap:nowrap!important}
  .top-actions{flex:0 0 auto!important;justify-content:flex-end!important}
}
@media (max-width:640px){.topbar .top-actions .branch-switch .top-tool.branch-chip{display:inline-flex!important;padding:0 6px 0 10px!important;width:auto!important;min-width:0!important}.topbar .top-actions .branch-chip select{max-width:104px!important;font-size:12px!important}.topbar .top-actions .branch-chip svg{display:none}}

/* ---------- 14. Tablo işlem düğmeleri: her zaman yan yana, tek satır ---------- */
td :is(.ws-actions,.x-actions,.action-icons,.actions){display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;align-items:center;justify-content:flex-end;gap:6px!important;margin:0!important}
td :is(.ws-actions,.x-actions,.action-icons,.actions)>form{display:inline-flex!important;margin:0!important}
td :is(.ws-actions,.x-actions,.action-icons,.actions) :is(.x-icon-btn,.action-icon,.icon-btn,a.btn-icon,button.btn-icon){width:34px!important;height:34px!important;min-width:34px!important;min-height:34px!important;padding:0!important;border-radius:10px!important;display:inline-grid!important;place-items:center}
td :is(.ws-actions,.x-actions,.action-icons,.actions) :is(.c-icon,svg){width:17px!important;height:17px!important}
td.actions-cell,th.actions-head,td:has(>.ws-actions),td:has(>.x-actions),td:has(>.action-icons){width:1%;white-space:nowrap;text-align:right}
.row-more{position:relative}
.row-more-menu{position:fixed;z-index:1000;min-width:210px;padding:6px;background:#fff;border:1px solid #e3e7f1;border-radius:12px;box-shadow:0 16px 40px rgba(24,32,58,.16);display:grid;gap:2px}
.row-more-menu[hidden]{display:none!important}
.row-more-menu>*{margin:0!important}
.row-more-menu :is(a,button){display:flex!important;align-items:center;gap:10px;width:100%!important;height:auto!important;min-height:36px!important;padding:7px 10px!important;border:0!important;border-radius:8px!important;background:transparent!important;box-shadow:none!important;color:#2b3350!important;font:inherit;font-size:13px!important;font-weight:600;text-align:left;text-decoration:none;cursor:pointer;place-items:unset!important}
.row-more-menu :is(a,button):hover{background:#f3f1ff!important;color:#5143c4!important}
.row-more-menu :is(a,button).bad,.row-more-menu :is(a,button).delete,.row-more-menu :is(a,button)[class*=danger]{color:#c2383b!important}
.row-more-menu :is(a,button) :is(.c-icon,svg){width:16px!important;height:16px!important;flex:0 0 16px}
.row-more-menu form{display:block!important}
.row-more-menu .rm-label{white-space:nowrap}
/* Satırlarda transform kullanan hover efektleri sabit konumlu menüyü kırpmasın */
tr:has(.row-more-menu:not([hidden])),tr:has(.row-more-menu:not([hidden])) td{transform:none!important;filter:none!important}
.rm-hidden{display:none!important}
td :is(.ws-actions,.x-actions,.action-icons,.actions)>.rm-hidden,td :is(.ws-actions,.x-actions,.action-icons,.actions)>.rm-hidden.x-icon-btn,td :is(.ws-actions,.x-actions,.action-icons,.actions)>form.rm-hidden{display:none!important}

/* 15. Geniş tablolar: masaüstünde uzun metinler satır kırar, tablo kart içine sığar */
@media (min-width:1025px){
  .table-wrap>table.table td{white-space:normal;overflow-wrap:break-word}
  .table-wrap>table.table td:is(:has(>.badge),:has(>.ws-pill),:has(>b:only-child),.actions-cell),
  .table-wrap>table.table td:has(>:is(.ws-actions,.x-actions,.action-icons,.actions)){white-space:nowrap}
  .table-wrap>table.table th{white-space:nowrap}
}
@media (min-width:1025px){.table-wrap>table.table td.fp-nw{white-space:nowrap}}
@media (min-width:1025px){.x-table-wrap>table.x-table td{white-space:normal;overflow-wrap:break-word}.x-table-wrap>table.x-table td:is(.num,:has(>.x-badge),:has(>.x-actions)),.x-table-wrap>table.x-table td.fp-nw{white-space:nowrap}}

/* 16. KVKK bileşenleri */
.kvkk-consent{margin:16px 0;padding:14px 16px;border:1px solid #dcd7ff;background:linear-gradient(180deg,#faf9ff,#f5f3ff);border-radius:14px;display:grid;gap:10px}
.kvkk-consent-head{display:flex;gap:10px;align-items:flex-start}.kvkk-consent-head>svg,.kvkk-consent-head>.c-icon{width:20px;height:20px;color:#6a5ae0;flex:none;margin-top:2px}
.kvkk-consent-head b{display:block;font-size:13.5px;color:#252b45}.kvkk-consent-head small{display:block;font-size:12px;color:#6b7290;margin-top:2px}.kvkk-consent-head a{color:#5b4bd6;font-weight:600}
.kvkk-consent .x-check{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:#30364f;margin:0}
.kvkk-consent-note{display:block;font-size:11.5px;color:#7a809a;line-height:1.5}
.kvkk-consent-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 14px;font-size:13px;font-weight:600;color:#30364f}
.kvkk-seg{display:inline-flex;background:#fff;border:1px solid #dfe3ee;border-radius:10px;padding:3px;gap:2px}
.kvkk-seg label{position:relative;margin:0;cursor:pointer}.kvkk-seg input{position:absolute;opacity:0;pointer-events:none}
.kvkk-seg span{display:block;padding:6px 12px;border-radius:8px;font-size:12px;font-weight:600;color:#5d6480;white-space:nowrap}
.kvkk-seg input:checked+span{background:#6a5ae0;color:#fff;box-shadow:0 2px 8px rgba(106,90,224,.3)}
.kvkk-seg input[value="0"]:checked+span{background:#d94b4e;box-shadow:0 2px 8px rgba(217,75,78,.25)}
.kvkk-seg input:focus-visible+span{outline:2px solid #6a5ae0;outline-offset:1px}
.pii-masked{letter-spacing:.3px;color:#5d6480;cursor:help}
.kvkk-tabs{margin-bottom:16px}.kvkk-tabs a .c-icon,.kvkk-tabs a svg{width:16px;height:16px}
.kvkk-checks{display:grid;gap:0}
.kvkk-check{display:grid;grid-template-columns:36px 1fr 20px;gap:12px;align-items:center;padding:14px 20px;border-top:1px solid #eef0f6;color:inherit;text-decoration:none;transition:background .15s}
.kvkk-check:hover{background:#f8f8fd}.kvkk-check b{display:block;font-size:13.5px;color:#252b45}.kvkk-check small{display:block;font-size:12px;color:#6b7290;margin-top:2px;line-height:1.5}
.kvkk-check-icon{width:34px;height:34px;border-radius:10px;display:grid;place-items:center}.kvkk-check-icon svg,.kvkk-check-icon .c-icon{width:18px;height:18px}
.kvkk-check.ok .kvkk-check-icon{background:#e7f7ee;color:#168a4a}.kvkk-check.todo .kvkk-check-icon{background:#fff4e2;color:#c27a0e}
.kvkk-check-go{color:#a3a8bf}.kvkk-check-go svg{width:16px;height:16px}
.x-split.kvkk-split{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr)}
.kvkk-textarea{font-family:inherit;font-size:13px;line-height:1.6;min-height:420px}
.kvkk-help p{font-size:13px;line-height:1.65;color:#40465f;margin:0 0 12px}.kvkk-preview{white-space:normal;font-size:13px;line-height:1.65}
.kvkk-req-meta{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin-bottom:14px}
.kvkk-req-meta>div{background:#f7f8fc;border:1px solid #eceef5;border-radius:10px;padding:10px 12px;min-width:0}.kvkk-req-meta small{display:block;font-size:11px;color:#7a809a;margin-bottom:3px}.kvkk-req-meta b{font-size:13px;overflow-wrap:anywhere}
.kvkk-req-text{background:#fbfbfe;border-left:3px solid #6a5ae0;padding:10px 14px;border-radius:0 10px 10px 0;font-size:13px;line-height:1.6;margin:0 0 14px}
.kvkk-new>summary{list-style:none;cursor:pointer}.kvkk-new>summary::-webkit-details-marker{display:none}.kvkk-new>summary h3{display:flex;align-items:center;gap:8px}.kvkk-new>summary svg{width:16px;height:16px}
.kvkk-counts{display:flex;flex-wrap:wrap;gap:8px;margin:4px 0 14px}.kvkk-counts span{background:#f3f4fa;border:1px solid #e6e8f2;border-radius:999px;padding:6px 12px;font-size:12px;color:#4a516c}.kvkk-counts b{color:#252b45}
.kvkk-actions{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:6px}.kvkk-actions form{margin:0}
.kvkk-sub{font-size:13px;margin:18px 0 8px;color:#30364f}
.kvkk-danger{border-color:#f3d2d3!important}.kvkk-danger .x-panel-head{background:#fff7f7}.kvkk-danger p{font-size:13px;line-height:1.6;color:#40465f}
.kvkk-anon{display:grid;gap:10px;max-width:420px}.kvkk-anon small{font-size:11.5px;line-height:1.5}
.x-btn.danger{background:#d94b4e;border-color:#d94b4e;color:#fff}.x-btn.danger:hover{background:#c23d40;border-color:#c23d40}
.x-btn.ghost{background:transparent;border-color:transparent;color:#6b7290}.x-btn.ghost:hover{background:#f3f4fa}
.kvkk-search{display:flex;gap:10px;align-items:flex-end;flex-wrap:wrap}.kvkk-search .x-field{flex:1;min-width:220px;margin:0}
.kvkk-results{display:grid;gap:6px;margin-top:14px}.kvkk-result{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid #eceef5;border-radius:10px;color:inherit;text-decoration:none}.kvkk-result:hover{border-color:#cfc9ff;background:#faf9ff}.kvkk-result small{color:#7a809a;margin-left:auto}
.kvkk-user-row{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;border-radius:10px;color:inherit;text-decoration:none;border:1px solid transparent}.kvkk-user-row:hover,.kvkk-user-row.active{background:#f7f6ff;border-color:#e4e0ff}.kvkk-user-row b{display:block;font-size:13px}.kvkk-user-row small{font-size:11.5px;color:#7a809a}.kvkk-user-row strong{font-size:18px;color:#5b4bd6}
.kvkk-list{margin:0;padding-left:18px;display:grid;gap:8px;font-size:13px;line-height:1.55;color:#40465f}
.cp-idle-warn{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);z-index:3000;background:#1f2535;color:#fff;border-radius:12px;padding:12px 18px;box-shadow:0 12px 36px rgba(20,24,40,.35);display:grid;gap:2px;font-size:13px;max-width:calc(100vw - 32px)}.cp-idle-warn span{opacity:.75;font-size:12px}
.cp-dialog{border:0;border-radius:16px;padding:22px;width:min(420px,calc(100vw - 32px));box-shadow:0 30px 80px rgba(20,24,40,.3)}.cp-dialog::backdrop{background:rgba(20,24,40,.45)}
@media (max-width:900px){.x-split.kvkk-split{grid-template-columns:1fr}.kvkk-check{padding:12px 14px}}
@media (max-width:560px){.kvkk-consent-row{flex-direction:column;align-items:flex-start}.kvkk-seg{width:100%}.kvkk-seg label{flex:1}.kvkk-seg span{text-align:center;padding:7px 6px}}
.x-auth-notice.warning{background:#fff7e8;color:#8a5a00;border:1px solid #f6dfb0}
