/*
 * Onaylı tasarım: "Geri Bildirim Mesajları v1" (geri-bildirim.css) — bildirim (toast), uyarı kutusu,
 * alan hatası, düğme durumları, kısa onay penceresi, bant ve boş durum. Tasarım piksellerinden rem'e
 * (px / 16) çevrildi, .kd kapsamına alındı; toast yığını ve onay perdesi sayfaya sabit (fixed).
 */
.kd .fb-stack{position:fixed;right:1.25rem;bottom:1.25rem;z-index:60;display:flex;flex-direction:column;gap:.5rem;width:23.75rem;max-width:calc(100vw - 2.5rem);pointer-events:none;font-family:'Plus Jakarta Sans',sans-serif}.kd .fb-stack>*{pointer-events:auto}
.kd .fb-stack *{box-sizing:border-box}
.kd .fb-t{position:relative;overflow:hidden;display:flex;align-items:flex-start;gap:.75rem;padding:.75rem .75rem .875rem .875rem;border-radius:.875rem;background:#071430;color:#fff;box-shadow:0 1.125rem 2.5rem -.875rem rgba(7,20,48,.55);animation:fbIn .28s cubic-bezier(.2,.8,.2,1)}
.kd .fb-t:hover .pg{animation-play-state:paused}
.kd .fb-t .ic{width:2.25rem;height:2.25rem;border-radius:.625rem;display:grid;place-items:center;flex:none;color:#fff}.kd .fb-t.t-success .ic{background:var(--green-500)}.kd .fb-t.t-error .ic{background:var(--accent-alert,#E8302F)}.kd .fb-t.t-warning .ic{background:var(--orange-500)}.kd .fb-t.t-info .ic{background:var(--brand)}
.kd .fb-t .tx{flex:1;min-width:0}.kd .fb-t b{display:block;font:800 .875rem/1.1875rem 'Plus Jakarta Sans',sans-serif;color:#fff}.kd .fb-t small{display:block;font:500 .78125rem/1.0625rem 'Plus Jakarta Sans',sans-serif;color:rgba(255,255,255,.78);margin-top:1px;white-space:pre-line;overflow-wrap:anywhere}
.kd .fb-t .ac{display:flex;gap:.375rem;margin-top:.5rem}.kd .fb-t .ac button,.kd .fb-t .ac a{height:1.875rem;padding:0 .75rem;border:0;border-radius:999px;background:rgba(255,255,255,.14);color:#fff;font:700 .75rem/1.875rem 'Plus Jakarta Sans',sans-serif;cursor:pointer;text-decoration:none}.kd .fb-t .ac button:hover,.kd .fb-t .ac a:hover{background:#F5B400;color:#071430}.kd .fb-t .ac .y{background:#F5B400;color:#071430;border-radius:.5625rem}.kd .fb-t .ac .y:hover{background:#FFC933}
.kd .fb-t .x{width:1.75rem;height:1.75rem;border:0;border-radius:.5rem;background:transparent;color:rgba(255,255,255,.6);cursor:pointer;display:grid;place-items:center;flex:none}.kd .fb-t .x:hover{background:rgba(255,255,255,.12);color:#fff}
.kd .fb-t .pg{position:absolute;left:0;bottom:0;height:.1875rem;width:100%;transform-origin:left;animation:fbPg linear forwards}.kd .fb-t.t-success .pg{background:var(--green-500)}.kd .fb-t.t-warning .pg{background:var(--orange-500)}.kd .fb-t.t-info .pg{background:#F5B400}
.kd .fb-t.t-error{box-shadow:0 1.125rem 2.5rem -.875rem rgba(7,20,48,.55),inset 0 0 0 1.5px rgba(232,48,47,.55)}
@keyframes fbIn{from{opacity:0;transform:translateY(.75rem) scale(.98)}}@keyframes fbPg{to{transform:scaleX(0)}}
.kd .fb-al{display:flex;align-items:flex-start;gap:.625rem;padding:.625rem .75rem;border-radius:.75rem;background:var(--tb);box-shadow:inset 0 0 0 1px var(--tl)}.kd .fb-al .ic{width:1.75rem;height:1.75rem;border-radius:.5rem;background:var(--tc);color:#fff;display:grid;place-items:center;flex:none}.kd .fb-al .tx{flex:1;min-width:0}.kd .fb-al b{display:block;font:800 .8125rem/1.125rem 'Plus Jakarta Sans',sans-serif;color:var(--tt)}.kd .fb-al small{display:block;font:500 .75rem/1.0625rem 'Plus Jakarta Sans',sans-serif;color:var(--gray-700)}
.kd .fb-al button{flex:none;height:2rem;padding:0 .75rem;border:0;border-radius:.5625rem;background:#F5B400;color:#071430;font:800 .75rem/1 'Plus Jakarta Sans',sans-serif;cursor:pointer;align-self:center}.kd .fb-al button:hover{background:#FFC933}
.kd .fb-al.t-error{--tc:var(--accent-alert,#E8302F);--tb:var(--red-50);--tt:var(--red-700);--tl:#F7C9C8}.kd .fb-al.t-warning{--tc:var(--orange-500);--tb:var(--orange-50);--tt:var(--orange-700);--tl:#F8D9B8}.kd .fb-al.t-info{--tc:var(--brand);--tb:var(--purple-50);--tt:var(--purple-700);--tl:var(--purple-100)}.kd .fb-al.t-success{--tc:var(--green-500);--tb:var(--green-50);--tt:var(--green-700);--tl:#BFE5CF}
.kd .fb-b{display:inline-flex;align-items:center;justify-content:center;gap:.4375rem;height:3rem;min-width:12.5rem;padding:0 1.25rem;border:0;border-radius:.75rem;background:var(--brand);color:#fff;font:800 .875rem/1 'Plus Jakarta Sans',sans-serif;cursor:pointer;box-shadow:var(--shadow-brand);transition:background .2s,transform .12s}.kd .fb-b:hover{background:var(--brand-hover,#4843c9)}.kd .fb-b:active{transform:scale(.98)}
.kd .fb-b.loading{background:var(--purple-400,#7a76e6);cursor:progress}.kd .fb-b.done{background:var(--green-500);box-shadow:0 .5rem 1.125rem -.625rem var(--green-500)}.kd .fb-b.fail{background:var(--accent-alert,#E8302F);box-shadow:none}.kd .fb-b.disabled,.kd .fb-b:disabled{background:var(--gray-200);color:var(--gray-500);box-shadow:none;cursor:not-allowed}
.kd .fb-b .sp{width:1rem;height:1rem;border-radius:50%;border:.15625rem solid rgba(255,255,255,.4);border-top-color:#fff;animation:fbSp .7s linear infinite}@keyframes fbSp{to{transform:rotate(360deg)}}
.kd .fb-ov{position:fixed;inset:0;z-index:55;background:rgba(7,20,48,.48);display:flex;align-items:center;justify-content:center;padding:1.25rem;animation:fbIn .2s;font-family:'Plus Jakarta Sans',sans-serif}
.kd .fb-ov *{box-sizing:border-box}
.kd .fb-cf{width:100%;max-width:25rem;max-height:100%;overflow-y:auto;display:flex;flex-direction:column;align-items:center;gap:.625rem;text-align:center;padding:1.5rem;border-radius:1.25rem;background:#fff;box-shadow:0 1.875rem 3.75rem -1.25rem rgba(7,20,48,.5)}.kd .fb-cf .ic{width:3.5rem;height:3.5rem;border-radius:50%;display:grid;place-items:center;flex:none}.kd .fb-cf .ic.danger{background:var(--red-50);color:var(--accent-alert,#E8302F)}.kd .fb-cf .ic.warn{background:var(--orange-50);color:var(--orange-500)}.kd .fb-cf .ic.info{background:var(--purple-50);color:var(--brand)}
.kd .fb-cf b{font:800 1.0625rem/1.375rem 'Plus Jakarta Sans',sans-serif;color:var(--gray-900)}.kd .fb-cf p{margin:0;font:500 .84375rem/1.25rem 'Plus Jakarta Sans',sans-serif;color:var(--gray-600)}.kd .fb-cf .a{display:flex;gap:.5rem;width:100%;margin-top:.375rem}.kd .fb-cf .a button{flex:1;height:3rem;border:0;border-radius:.75rem;font:800 .875rem/1 'Plus Jakarta Sans',sans-serif;cursor:pointer}.kd .fb-cf .a button:disabled{opacity:.6;cursor:progress}.kd .fb-cf .no{background:var(--purple-50);color:var(--purple-700)}.kd .fb-cf .yes.danger{background:var(--accent-alert,#E8302F);color:#fff}.kd .fb-cf .yes.warn{background:#F5B400;color:#071430}.kd .fb-cf .yes.info{background:var(--brand);color:#fff}
.kd .fb-cf .extra{width:100%;text-align:left}
@media (max-width:899px){
    .kd .fb-stack{left:.75rem;right:.75rem;width:auto;max-width:none;bottom:calc(1rem + var(--kiai-mnav-h,4.75rem) + env(safe-area-inset-bottom,0px))}
}
/*
 * TÜM panellerde Filament bildirimleri de FbToast görünümünde (Geri Bildirim Mesajları v1): web'de sağ alt,
 * üst üste; mobilde altta, menünün üstünde, tam genişlik. Lacivert kart, durum rengi simge kutusunda.
 * Süreler FeedbackNotification'da (başarı 4, bilgi 5, uyarı 6 sn; hata kalıcı).
 */
.fi-no{position:fixed!important;inset:auto 1.25rem 1.25rem auto!important;width:23.75rem;max-width:calc(100vw - 2.5rem);margin:0!important;padding:0!important;display:flex!important;flex-direction:column;justify-content:flex-end!important;align-items:stretch!important;gap:.5rem;z-index:60!important;pointer-events:none}
.fi-no>*{pointer-events:auto}
.fi-no .fi-no-notification{display:flex;align-items:flex-start;gap:.75rem;width:100%;min-width:0;max-width:none;padding:.75rem .75rem .875rem .875rem;border:0!important;border-radius:.875rem;background:#071430!important;color:#fff;box-shadow:0 1.125rem 2.5rem -.875rem rgba(7,20,48,.55)!important;--tw-ring-shadow:0 0 #0000;font-family:'Plus Jakarta Sans',sans-serif;animation:fbIn .28s cubic-bezier(.2,.8,.2,1)}
.fi-no .fi-no-notification.fi-status-danger{box-shadow:0 1.125rem 2.5rem -.875rem rgba(7,20,48,.55),inset 0 0 0 1.5px rgba(232,48,47,.55)!important}
.fi-no .fi-no-notification .fi-no-notification-icon{flex:none;width:2.25rem!important;height:2.25rem!important;padding:.5rem;border-radius:.625rem;color:#fff!important;background:#5651DD!important}
.fi-no .fi-status-success .fi-no-notification-icon{background:#1FA45A!important}
.fi-no .fi-status-warning .fi-no-notification-icon{background:#F08A18!important}
.fi-no .fi-status-danger .fi-no-notification-icon{background:#E8302F!important}
.fi-no .fi-no-notification .fi-no-notification-title{color:#fff!important;font:800 .875rem/1.1875rem 'Plus Jakarta Sans',sans-serif}
.fi-no .fi-no-notification .fi-no-notification-body,.fi-no .fi-no-notification .fi-no-notification-date{color:rgba(255,255,255,.78)!important;font:500 .78125rem/1.0625rem 'Plus Jakarta Sans',sans-serif;margin-top:1px;white-space:pre-line}
.fi-no .fi-no-notification .fi-no-notification-close-btn{color:rgba(255,255,255,.6)!important}
.fi-no .fi-no-notification .fi-no-notification-close-btn:hover{color:#fff!important;background:rgba(255,255,255,.12)}
.fi-no .fi-no-notification-actions .fi-link,.fi-no .fi-no-notification-actions a,.fi-no .fi-no-notification-actions button{color:#F5B400!important}
@media (max-width:767px){
    .fi-no{inset:auto .75rem calc(1rem + 4.75rem + env(safe-area-inset-bottom,0px)) .75rem!important;width:auto;max-width:none}
}
@media (min-width:768px) and (max-width:899px){
    .fi-no{inset:auto .75rem 1rem .75rem!important;width:auto;max-width:none}
}

/*
 * Tasarım penceresi (am-ov) ya da kısa onay (fb-ov) açıkken mobil alt menü gizlenir (Filament modallarıyla aynı kural).
 * Genel onay penceresi (fb-confirm-global) kapalıyken de DOM'da durur (x-show → .kd'de style="display: none"):
 * gizli .kd'deki perde sayılmaz, yoksa alt menü her sayfada kayboluyordu.
 */
body:has(.kd:not([x-cloak]):not([style*='display: none']) .am-ov) .kiai-mnav,body:has(.kd:not([x-cloak]):not([style*='display: none']) .fb-ov) .kiai-mnav{display:none}
/* .fi-layout'taki overflow-x:clip sabit perdeyi sol menü hizasında kesiyordu: perde açıkken kaldırılır (tasarımda perde tüm ekranı örter). */
body:has(.kd:not([x-cloak]):not([style*='display: none']) .am-ov) .fi-layout,body:has(.kd:not([x-cloak]):not([style*='display: none']) .fb-ov) .fi-layout,body:has(.kd .w-overlay.dr) .fi-layout{overflow-x:visible}
/*
 * TÜM panellerde kısa onay pencereleri (Filament requiresConfirmation: simgeli, içeriksiz modal) FbConfirm
 * görünümünde: ortada küçük kart, yuvarlak simge, başlık + açıklama, tam genişlik "Vazgeç" + işlem düğmesi.
 */
.fi-modal:not(.fi-modal-slide-over) .fi-modal-window.fi-modal-window-has-icon:not(.fi-modal-window-has-content){max-width:25rem!important;padding:1.5rem!important;border-radius:1.25rem!important;box-shadow:0 1.875rem 3.75rem -1.25rem rgba(7,20,48,.5)!important;gap:.625rem;font-family:'Plus Jakarta Sans',sans-serif}
.fi-modal-window.fi-modal-window-has-icon:not(.fi-modal-window-has-content) .fi-modal-header{display:flex!important;flex-direction:column!important;align-items:center!important;text-align:center;gap:.625rem;padding:0!important;border:0!important}
.fi-modal-window.fi-modal-window-has-icon:not(.fi-modal-window-has-content) .fi-modal-close-btn{display:none!important}
.fi-modal-window.fi-modal-window-has-icon:not(.fi-modal-window-has-content) .fi-modal-icon-ctn{margin:0!important}
.fi-modal-window.fi-modal-window-has-icon:not(.fi-modal-window-has-content) .fi-modal-icon-bg{width:3.5rem;height:3.5rem;margin:0!important;padding:.875rem!important;border-radius:50%!important;display:grid;place-items:center;background:#F2F1FD!important;color:#5651DD}
.fi-modal-window.fi-modal-window-has-icon:not(.fi-modal-window-has-content) .fi-modal-icon-bg.fi-color-danger{background:#FDECEC!important;color:#E8302F}
.fi-modal-window.fi-modal-window-has-icon:not(.fi-modal-window-has-content) .fi-modal-icon-bg.fi-color-warning{background:#FFF1E2!important;color:#F08A18}
.fi-modal-window.fi-modal-window-has-icon:not(.fi-modal-window-has-content) .fi-modal-icon-bg.fi-color-success{background:#E7F7EE!important;color:#1FA45A}
.fi-modal-window.fi-modal-window-has-icon:not(.fi-modal-window-has-content) .fi-modal-heading{font:800 1.0625rem/1.375rem 'Plus Jakarta Sans',sans-serif;color:#071430;text-align:center}
.fi-modal-window.fi-modal-window-has-icon:not(.fi-modal-window-has-content) .fi-modal-description{margin-top:.625rem;font:500 .84375rem/1.25rem 'Plus Jakarta Sans',sans-serif;color:#4B5570;text-align:center}
.fi-modal-window.fi-modal-window-has-icon:not(.fi-modal-window-has-content) .fi-modal-footer{padding:0!important;margin-top:.375rem;border:0!important;width:100%}
.fi-modal-window.fi-modal-window-has-icon:not(.fi-modal-window-has-content) .fi-modal-footer-actions{display:flex!important;flex-direction:row-reverse;gap:.5rem;width:100%}
.fi-modal-window.fi-modal-window-has-icon:not(.fi-modal-window-has-content) .fi-modal-footer-actions>*{flex:1 1 0;min-width:0}
.fi-modal-window.fi-modal-window-has-icon:not(.fi-modal-window-has-content) .fi-modal-footer-actions .fi-btn{width:100%;height:3rem;border-radius:.75rem;font:800 .875rem/1 'Plus Jakarta Sans',sans-serif;box-shadow:none}
.fi-modal-window.fi-modal-window-has-icon:not(.fi-modal-window-has-content) .fi-modal-footer-actions .fi-btn.fi-color-gray{background:#F2F1FD!important;color:#3A35A3!important;--tw-ring-shadow:0 0 #0000}
.fi-modal-window.fi-modal-window-has-icon:not(.fi-modal-window-has-content) .fi-modal-footer-actions .fi-btn.fi-color-danger{background:#E8302F!important;color:#fff!important}
.fi-modal-window.fi-modal-window-has-icon:not(.fi-modal-window-has-content) .fi-modal-footer-actions .fi-btn.fi-color-warning{background:#F5B400!important;color:#071430!important}

/* TÜM panellerde tablo boş durumu FbState görünümünde: yuvarlak mor simge, kalın başlık, sade açıklama. */
.fi-ta-empty-state .fi-ta-empty-state-icon-bg,.fi-empty-state .fi-empty-state-icon-bg{width:3.75rem;height:3.75rem;border-radius:50%!important;background:#F2F1FD!important;color:#5651DD!important;display:grid;place-items:center}
.fi-ta-empty-state .fi-ta-empty-state-icon-bg .fi-icon,.fi-empty-state .fi-empty-state-icon-bg .fi-icon{color:#5651DD!important}
.fi-ta-empty-state .fi-ta-empty-state-heading,.fi-empty-state .fi-empty-state-heading{font:800 1rem/1.3125rem 'Plus Jakarta Sans',sans-serif;color:#071430}
.fi-ta-empty-state .fi-ta-empty-state-description,.fi-empty-state .fi-empty-state-description{font:500 .8125rem/1.1875rem 'Plus Jakarta Sans',sans-serif;color:#4B5570;max-width:20rem;margin-inline:auto}

/* Bağlantı bandı (FbBanner: offline / sync) — tüm panellerde, sayfanın üstünde sabit. */
.kiai-fb-net{position:fixed;left:50%;top:.75rem;transform:translateX(-50%);z-index:70;width:min(35rem,calc(100vw - 1.5rem));font-family:'Plus Jakarta Sans',sans-serif}
.kiai-fb-net .fb-bn{display:flex;align-items:center;gap:.625rem;padding:.625rem .75rem;border-radius:.75rem;color:#fff;box-shadow:0 1.125rem 2.5rem -.875rem rgba(7,20,48,.55)}
.kiai-fb-net .fb-bn .ic{width:1.875rem;height:1.875rem;border-radius:.5625rem;display:grid;place-items:center;flex:none}
.kiai-fb-net .fb-bn .tx{flex:1;min-width:0}.kiai-fb-net .fb-bn b{display:block;font:800 .8125rem/1.125rem 'Plus Jakarta Sans',sans-serif}.kiai-fb-net .fb-bn small{display:block;font:500 .75rem/1rem 'Plus Jakarta Sans',sans-serif;opacity:.8}
.kiai-fb-net .fb-bn button{height:2rem;padding:0 .75rem;border:0;border-radius:.5625rem;background:#F5B400;color:#071430;font:800 .75rem/1 'Plus Jakarta Sans',sans-serif;cursor:pointer}
.kiai-fb-net .fb-bn.offline{background:#071430}.kiai-fb-net .fb-bn.offline .ic{background:#E8302F}
.kiai-fb-net .fb-bn.sync{background:#E7F7EE;color:#177A43;box-shadow:inset 0 0 0 1px #BFE5CF,0 1.125rem 2.5rem -.875rem rgba(7,20,48,.3)}.kiai-fb-net .fb-bn.sync .ic{background:#1FA45A;color:#fff;animation:fbSp 1.4s linear infinite}
@media (max-width:767px){.kiai-fb-net{top:auto;bottom:calc(5.5rem + env(safe-area-inset-bottom,0px))}}
/* TÜM panellerde alan hataları FbField görünümünde: alanın hemen altında, kırmızı, ünlem simgeli kısa metin; alan kırmızı çerçeveli. */
.fi-fo-field-wrp-error-message{display:flex;align-items:flex-start;gap:.25rem;font:600 .71875rem/1.35 'Plus Jakarta Sans',sans-serif;color:#BD2B2A}
.fi-fo-field-wrp-error-message::before{content:'!';flex:none;width:.8125rem;height:.8125rem;margin-top:.0625rem;border-radius:50%;background:#E8302F;color:#fff;font:800 .5625rem/.8125rem 'Plus Jakarta Sans',sans-serif;text-align:center}
.fi-fo-field-wrp:has(.fi-fo-field-wrp-error-message) .fi-input-wrp{box-shadow:0 0 0 1px #E03E3D,0 0 0 3px rgba(232,48,47,.14)!important;background:#FFFBFB}
