/* bbDash — dashboard grid + widget kartları */
.bbdash {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    grid-auto-rows: 88px;
    grid-auto-flow: dense;
    gap: 12px;
}

.bbw {
    background: #fff;
    border: 1px solid #ece5d8;
    border-radius: 14px;
    box-shadow: 0 1px 2px rgba(60, 36, 21, .05);
    display: flex;
    flex-direction: column;
    overflow: hidden;
    position: relative;
    min-width: 0;
}
.bbw-gizli { display: none; }

.bbw-bas {
    display: flex; align-items: center; gap: 8px;
    padding: 10px 14px 6px;
    font-size: .8rem; font-weight: 600; color: #6b7280;
    user-select: none; flex: 0 0 auto;
}
.bbw-bas i.wico { font-size: .9rem; opacity: .75; }
.bbw-govde { flex: 1 1 auto; min-height: 0; padding: 0 14px 12px; overflow: hidden; }
.bbw-govde.kaydir { overflow-y: auto; }

/* KPI kartı */
.bbw-kpi { justify-content: center; padding: 14px 16px; }
.bbw-kpi .deger { font-size: 1.6rem; font-weight: 800; line-height: 1.1; letter-spacing: -.02em; }
.bbw-kpi .altyazi { font-size: .74rem; color: #9ca3af; margin-top: 2px; }
.bbw-kpi .baslik { font-size: .76rem; font-weight: 600; color: #6b7280; display: flex; align-items: center; gap: 6px; }
.bbw-kpi .ikon {
    position: absolute; right: 12px; top: 12px;
    width: 38px; height: 38px; border-radius: 12px;
    display: flex; align-items: center; justify-content: center;
    font-size: 1.1rem; color: #fff;
}
.delta { font-size: .72rem; font-weight: 700; border-radius: 20px; padding: 1px 8px; }
.delta.artis { color: #15803d; background: #dcfce7; }
.delta.dusus { color: #b91c1c; background: #fee2e2; }
.delta.notr { color: #6b7280; background: #f3f4f6; }

/* accent şeritli üst kenar */
.bbw::before {
    content: ""; position: absolute; inset: 0 0 auto 0; height: 3px;
    background: var(--bbw-renk, transparent); opacity: .9;
}

/* düzenleme modu */
.bbdash-duzenle .bbw { outline: 2px dashed #f59e0b55; outline-offset: -2px; }
.bbdash-duzenle .bbw-bas { cursor: grab; background: #fffbeb; }
.bbw-surukle { opacity: .65; z-index: 30; box-shadow: 0 12px 30px rgba(0,0,0,.22); transform: scale(1.02) rotate(.4deg); }
.bbw-aktif { z-index: 30; box-shadow: 0 12px 30px rgba(0,0,0,.22); }
.bbw-tut {
    display: none; position: absolute; right: 3px; bottom: 3px;
    width: 18px; height: 18px; cursor: nwse-resize; color: #d1d5db; z-index: 5;
}
.bbdash-duzenle .bbw-tut { display: block; }
.bbw-kapat { display: none; position: absolute; right: 8px; top: 8px; z-index: 6;
    border: 0; background: #fee2e2; color: #b91c1c; border-radius: 8px;
    width: 22px; height: 22px; line-height: 1; font-size: .8rem; }
.bbdash-duzenle .bbw-kapat { display: block; }
.bbdash-duzenle .bbw-kpi .ikon { display: none; }   /* × butonuyla çakışmasın */

/* liste widget içi */
.bbw-liste { font-size: .8rem; }
.bbw-liste .satir { display: flex; align-items: center; gap: 8px; padding: 5px 0; border-bottom: 1px dashed #f0ebe0; }
.bbw-liste .satir:last-child { border-bottom: 0; }

/* legend */
.bb-lejant { display: flex; flex-wrap: wrap; gap: 4px 12px; font-size: .72rem; color: #6b7280; }
.bb-lejant .nokta { width: 9px; height: 9px; border-radius: 3px; display: inline-block; margin-right: 4px; }

/* harita */
.bbw .harita { width: 100%; height: 100%; border-radius: 10px; }

/* maskeli veri */
.maskeli { color: #9ca3af; letter-spacing: 2px; }

@media (max-width: 900px) {
    .bbdash { grid-template-columns: repeat(4, 1fr); }
    .bbw { grid-column: span 4 !important; }
}
