/* =========================================================
   FOTOĞRAFÇI PANELİ - Premium DataTable v13
   Aramalı, sıralamalı, sayfalı liste sistemi. Light/Dark uyumlu.
========================================================= */
:root{
    --fpdt-bg:#ffffff;
    --fpdt-bg-soft:#f8fafc;
    --fpdt-border:rgba(15,23,42,.10);
    --fpdt-text:#0f172a;
    --fpdt-muted:#64748b;
    --fpdt-primary:#4f46e5;
    --fpdt-primary-2:#2563eb;
    --fpdt-shadow:0 18px 45px rgba(15,23,42,.08);
    --fpdt-input:#ffffff;
}
html[data-bs-theme="dark"],
html[data-panel-theme="dark"],
html.admin-theme-dark,
body[data-bs-theme="dark"],
body[data-panel-theme="dark"],
body.admin-theme-dark{
    --fpdt-bg:#101827;
    --fpdt-bg-soft:#0b1220;
    --fpdt-border:rgba(148,163,184,.18);
    --fpdt-text:#eaf0fb;
    --fpdt-muted:#9aa8bf;
    --fpdt-primary:#8b5cf6;
    --fpdt-primary-2:#3b82f6;
    --fpdt-shadow:0 18px 50px rgba(0,0,0,.28);
    --fpdt-input:#0d1524;
}
.fp-dt-zone{
    width:100%;
}
.fp-dt-toolbar{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:14px;
    flex-wrap:wrap;
    padding:14px;
    margin:0 0 16px;
    border:1px solid var(--fpdt-border);
    border-radius:20px;
    background:linear-gradient(135deg,rgba(255,255,255,.92),rgba(248,250,252,.72));
    box-shadow:var(--fpdt-shadow);
}
html[data-bs-theme="dark"] .fp-dt-toolbar,
html[data-panel-theme="dark"] .fp-dt-toolbar,
html.admin-theme-dark .fp-dt-toolbar,
body[data-bs-theme="dark"] .fp-dt-toolbar,
body[data-panel-theme="dark"] .fp-dt-toolbar,
body.admin-theme-dark .fp-dt-toolbar{
    background:linear-gradient(135deg,rgba(16,24,39,.92),rgba(11,18,32,.72));
}
.fp-dt-left,
.fp-dt-right{
    display:flex;
    align-items:center;
    gap:10px;
    flex-wrap:wrap;
}
.fp-dt-search-wrap{
    position:relative;
    min-width:min(420px, calc(100vw - 80px));
    flex:1 1 320px;
}
.fp-dt-search-wrap i{
    position:absolute;
    left:14px;
    top:50%;
    transform:translateY(-50%);
    color:var(--fpdt-muted);
    font-size:17px;
    pointer-events:none;
}
.fp-dt-search{
    width:100%;
    height:44px;
    border-radius:15px;
    border:1px solid var(--fpdt-border);
    background:var(--fpdt-input);
    color:var(--fpdt-text);
    outline:none;
    padding:0 14px 0 42px;
    font-weight:700;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.04);
    transition:border-color .18s ease, box-shadow .18s ease, background .18s ease;
}
.fp-dt-search:focus{
    border-color:rgba(79,70,229,.55);
    box-shadow:0 0 0 4px rgba(79,70,229,.12);
}
.fp-dt-search::placeholder{color:var(--fpdt-muted);font-weight:600;}
.fp-dt-select,
.fp-dt-btn{
    height:44px;
    border-radius:15px;
    border:1px solid var(--fpdt-border);
    background:var(--fpdt-input);
    color:var(--fpdt-text);
    padding:0 13px;
    font-weight:800;
    outline:none;
}
.fp-dt-select{
    min-width:92px;
    cursor:pointer;
}
.fp-dt-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    cursor:pointer;
    text-decoration:none;
    transition:transform .18s ease, border-color .18s ease, background .18s ease;
}
.fp-dt-btn:hover{
    transform:translateY(-1px);
    border-color:rgba(79,70,229,.45);
    background:linear-gradient(135deg,rgba(79,70,229,.10),rgba(37,99,235,.08));
}
.fp-dt-count{
    display:inline-flex;
    align-items:center;
    gap:8px;
    height:44px;
    border-radius:15px;
    padding:0 14px;
    border:1px solid rgba(79,70,229,.18);
    color:var(--fpdt-primary);
    background:linear-gradient(135deg,rgba(79,70,229,.10),rgba(37,99,235,.08));
    font-weight:950;
    white-space:nowrap;
}
.fp-dt-info{
    color:var(--fpdt-muted);
    font-weight:700;
    font-size:13px;
    white-space:nowrap;
}
.fp-dt-pagination{
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:8px;
    flex-wrap:wrap;
    margin-top:16px;
}
.fp-dt-page,
.fp-dt-nav{
    min-width:38px;
    height:38px;
    border-radius:13px;
    border:1px solid var(--fpdt-border);
    background:var(--fpdt-bg);
    color:var(--fpdt-text);
    font-weight:900;
    cursor:pointer;
    transition:transform .18s ease, border-color .18s ease, background .18s ease;
}
.fp-dt-page:hover,
.fp-dt-nav:hover{
    transform:translateY(-1px);
    border-color:rgba(79,70,229,.40);
}
.fp-dt-page.is-active{
    color:#fff;
    border-color:transparent;
    background:linear-gradient(135deg,var(--fpdt-primary),var(--fpdt-primary-2));
    box-shadow:0 12px 28px rgba(79,70,229,.24);
}
.fp-dt-nav:disabled,
.fp-dt-page:disabled{
    opacity:.45;
    cursor:not-allowed;
    transform:none!important;
}
.fp-dt-empty{
    padding:26px 16px!important;
    text-align:center!important;
    color:var(--fpdt-muted)!important;
    font-weight:800;
}
.table.fp-dt-ready{
    margin-bottom:0;
    color:var(--fpdt-text);
}
.table.fp-dt-ready thead th{
    position:relative;
    user-select:none;
    color:var(--fpdt-muted)!important;
    font-size:12px;
    text-transform:uppercase;
    letter-spacing:.055em;
    white-space:nowrap;
    border-bottom:1px solid var(--fpdt-border)!important;
    background:var(--fpdt-bg-soft)!important;
}
.table.fp-dt-ready tbody td{
    color:var(--fpdt-text)!important;
    border-color:var(--fpdt-border)!important;
    vertical-align:middle;
}
.table.fp-dt-ready tbody tr{
    transition:background .18s ease;
}
.table.fp-dt-ready tbody tr:hover td{
    background:linear-gradient(90deg,rgba(79,70,229,.07),transparent)!important;
}
.fp-dt-sortable{
    cursor:pointer;
    padding-right:26px!important;
}
.fp-dt-sortable::after{
    content:"⇅";
    position:absolute;
    right:9px;
    top:50%;
    transform:translateY(-50%);
    opacity:.42;
    font-size:12px;
}
.fp-dt-sortable.fp-dt-sort-asc::after{content:"↑";opacity:1;color:var(--fpdt-primary);}
.fp-dt-sortable.fp-dt-sort-desc::after{content:"↓";opacity:1;color:var(--fpdt-primary);}
.fp-dt-grid-toolbar + .fp-grid-datatable,
.fp-dt-toolbar + .fp-grid-datatable{margin-top:0;}
.fp-grid-row{transition:opacity .18s ease, transform .18s ease;}
.fp-grid-row.fp-grid-hidden{display:none!important;}
.fp-grid-row.fp-grid-hit{animation:fpGridHit .24s ease;}
@keyframes fpGridHit{from{opacity:.35;transform:scale(.985)}to{opacity:1;transform:scale(1)}}
@media(max-width:767.98px){
    .fp-dt-toolbar{border-radius:18px;padding:12px;}
    .fp-dt-left,.fp-dt-right{width:100%;}
    .fp-dt-search-wrap{min-width:100%;flex-basis:100%;}
    .fp-dt-select,.fp-dt-btn,.fp-dt-count{flex:1 1 auto;}
    .fp-dt-info{width:100%;}
    .fp-dt-pagination{justify-content:center;}
}
