/*
 * Ista Sazeh — corporate panel skin.
 *
 * Filament's own styles live in cascade layers, so these unlayered rules win
 * without !important. Colours are Filament variables (oklch in v5): use
 * var(--x) directly and color-mix() for transparency.
 */

:root {
    --is-navy: #13294a;
    --is-navy-2: #1d3b63;
    --is-navy-3: #2a4d7c;
    --is-gold: #e0a526;
    --is-ground: #f2f4f7;
    --is-line: #dde3ea;
    --is-radius: 6px;
}

/* Ground ---------------------------------------------------------------- */

.fi-body,
.fi-main-ctn {
    background-color: var(--is-ground);
}

.dark .fi-body,
.dark .fi-main-ctn {
    background-color: var(--gray-950);
}

.fi-main {
    padding-top: 1.25rem;
}

/* Brand ----------------------------------------------------------------- */

.is-brand {
    display: flex;
    align-items: center;
    gap: .65rem;
    height: 100%;
}

.is-brand-mark {
    width: 2.35rem;
    height: 2.35rem;
    flex: none;
    border-radius: 8px;
    box-shadow: 0 0 0 1px rgba(255, 255, 255, .14);
}

.is-brand-text {
    display: flex;
    flex-direction: column;
    line-height: 1.25;
}

.is-brand-name {
    font-weight: 700;
    font-size: 1rem;
    color: var(--is-navy);
}

.is-brand-sub {
    font-size: .7rem;
    color: var(--gray-500);
    letter-spacing: 0;
}

.fi-sidebar .is-brand-name { color: #fff; }
.fi-sidebar .is-brand-sub { color: #9fb1cb; }
.dark .is-brand-name { color: #fff; }

/* Sidebar: dark navy rail ------------------------------------------------ */

.fi-sidebar {
    background-color: var(--is-navy);
    border-inline-end: 0;
}

.fi-sidebar-header {
    background-color: var(--is-navy);
    border-bottom: 1px solid rgba(255, 255, 255, .08);
    box-shadow: none;
    --tw-ring-shadow: 0 0 #0000;
}

.fi-sidebar-nav {
    padding-top: 1rem;
}

.fi-sidebar-group-label,
.fi-sidebar-group-btn .fi-sidebar-group-label {
    color: #7f94b3;
    font-size: .72rem;
    font-weight: 600;
}

.fi-sidebar-group-btn svg,
.fi-sidebar-group-collapse-btn svg {
    color: #7f94b3;
}

.fi-sidebar-item-btn {
    border-radius: 4px;
    padding-block: .45rem;
}

.fi-sidebar-item-label {
    color: #d4dceb;
    font-weight: 500;
    font-size: .86rem;
}

.fi-sidebar-item-icon {
    color: #8ea3c2;
}

.fi-sidebar-item-btn:hover,
.fi-sidebar-item-btn:focus-visible {
    background-color: rgba(255, 255, 255, .06);
}

.fi-sidebar-item.fi-active > .fi-sidebar-item-btn {
    background-color: var(--is-navy-3);
    box-shadow: inset -3px 0 0 var(--is-gold);
}

.fi-sidebar-item.fi-active .fi-sidebar-item-label,
.fi-sidebar-item.fi-active .fi-sidebar-item-icon {
    color: #fff;
}

.fi-sidebar-item-grouped-border-part,
.fi-sidebar-item-grouped-border-part-not-first,
.fi-sidebar-item-grouped-border-part-not-last {
    background-color: rgba(255, 255, 255, .15);
}

.fi-sidebar-close-collapse-sidebar-btn svg,
.fi-sidebar-open-collapse-sidebar-btn svg,
.fi-sidebar-close-sidebar-btn svg {
    color: #c7d2e3;
}

/* Topbar ---------------------------------------------------------------- */

.fi-topbar > nav,
.fi-topbar {
    background-color: #fff;
    box-shadow: 0 1px 0 var(--is-line);
}

.dark .fi-topbar > nav,
.dark .fi-topbar {
    background-color: var(--gray-900);
    box-shadow: 0 1px 0 rgba(255, 255, 255, .06);
}

/* Headings -------------------------------------------------------------- */

.fi-header-heading {
    font-size: 1.35rem;
    font-weight: 700;
    color: var(--is-navy);
}

.dark .fi-header-heading {
    color: #fff;
}

.fi-breadcrumbs {
    font-size: .78rem;
}

/* Cards, sections, tables: flat, ruled, compact -------------------------- */

.fi-section,
.fi-ta-ctn,
.fi-wi-stats-overview-stat,
.fi-wi-chart,
.fi-in-entry-wrp .fi-section {
    border-radius: var(--is-radius);
    box-shadow: none;
    --tw-ring-color: var(--is-line);
}

.fi-section-header {
    background: linear-gradient(to bottom, #fafbfc, #f5f7fa);
    border-bottom: 1px solid var(--is-line);
    border-top-left-radius: var(--is-radius);
    border-top-right-radius: var(--is-radius);
    padding-block: .8rem;
}

.dark .fi-section-header {
    background: rgba(255, 255, 255, .03);
    border-bottom-color: rgba(255, 255, 255, .08);
}

.fi-section-header-heading {
    font-size: .92rem;
    font-weight: 700;
    color: var(--is-navy-2);
}

.dark .fi-section-header-heading {
    color: #e2e8f0;
}

.fi-ta-header-cell {
    background-color: #f1f4f8;
    font-size: .78rem;
    color: #42526b;
    font-weight: 700;
}

.dark .fi-ta-header-cell {
    background-color: rgba(255, 255, 255, .04);
    color: #cbd5e1;
}

.fi-ta-cell {
    font-size: .85rem;
}

.fi-ta-row:nth-child(even) {
    background-color: #fafbfd;
}

.dark .fi-ta-row:nth-child(even) {
    background-color: rgba(255, 255, 255, .015);
}

.fi-btn {
    border-radius: 4px;
}

.fi-badge {
    border-radius: 4px;
}

.fi-input-wrp {
    border-radius: 4px;
}

/* Numbers read best in fixed-width columns. */
.fi-ta-text,
.fi-wi-stats-overview-stat-value {
    font-variant-numeric: tabular-nums;
}

.fi-wi-stats-overview-stat {
    border-top: 3px solid var(--is-navy-2);
}

/* Login: navy field with a white card ------------------------------------ */

.fi-simple-layout {
    background:
        radial-gradient(circle at 15% 20%, rgba(224, 165, 38, .12), transparent 35%),
        linear-gradient(135deg, var(--is-navy) 0%, var(--is-navy-2) 55%, #24507f 100%);
}

.fi-simple-main {
    border-radius: 10px;
    box-shadow: 0 20px 50px rgba(5, 18, 38, .35);
}

.fi-simple-header .is-brand {
    justify-content: center;
}

/* Footer ---------------------------------------------------------------- */

.is-footer {
    text-align: center;
    font-size: .75rem;
    color: var(--gray-500);
    padding: 1.5rem 1rem 1rem;
}

/* Kardex / report tables rendered by custom pages ------------------------ */

.is-report {
    width: 100%;
    border-collapse: collapse;
    font-size: .84rem;
    background: #fff;
}

.dark .is-report { background: transparent; }

.is-report th {
    background: #f1f4f8;
    color: #42526b;
    font-weight: 700;
    text-align: right;
    padding: .55rem .7rem;
    border-bottom: 1px solid var(--is-line);
    white-space: nowrap;
}

.dark .is-report th { background: rgba(255, 255, 255, .04); color: #cbd5e1; border-color: rgba(255,255,255,.08); }

.is-report td {
    padding: .5rem .7rem;
    border-bottom: 1px solid #edf0f4;
    font-variant-numeric: tabular-nums;
}

.dark .is-report td { border-color: rgba(255,255,255,.06); }

.is-report tfoot td {
    font-weight: 700;
    background: #f7f9fb;
}

.dark .is-report tfoot td { background: rgba(255,255,255,.03); }

.is-in { color: #047857; }
.is-out { color: #be123c; }
.is-muted { color: var(--gray-500); }

.is-timeline { list-style: none; margin: 0; padding: 0; }
.is-timeline li { position: relative; padding: 0 1.4rem .9rem 0; border-right: 2px solid var(--is-line); }
.is-timeline li:last-child { border-right-color: transparent; }
.is-timeline li::before {
    content: ''; position: absolute; right: -6px; top: .3rem;
    width: 10px; height: 10px; border-radius: 50%; background: var(--is-navy-2); box-shadow: 0 0 0 3px #fff;
}
.is-timeline .t-title { font-weight: 700; font-size: .86rem; }
.is-timeline .t-meta { font-size: .76rem; color: var(--gray-500); }

/* Dashboard welcome strip ------------------------------------------------ */

.is-quick {
    display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 1rem;
    padding: 1.1rem 1.25rem; border-radius: var(--is-radius);
    background: linear-gradient(120deg, var(--is-navy) 0%, var(--is-navy-2) 60%, #2a5788 100%);
    color: #fff; border-bottom: 3px solid var(--is-gold);
}
.is-quick-title { font-weight: 700; font-size: 1.05rem; }
.is-quick-sub { font-size: .8rem; color: #b8c6dc; margin-top: .15rem; }
.is-quick-actions { display: flex; flex-wrap: wrap; gap: .5rem; }
.is-quick-btn {
    display: inline-flex; align-items: center; gap: .45rem; padding: .5rem .85rem; border-radius: 4px;
    background: rgba(255,255,255,.08); border: 1px solid rgba(255,255,255,.16); color: #fff; font-size: .82rem; font-weight: 500;
    transition: background .15s;
}
.is-quick-btn:hover { background: rgba(255,255,255,.18); }
.is-quick-icon { width: 1.1rem; height: 1.1rem; color: var(--is-gold); }

.fi-wi-stats-overview-stat-value {
    font-size: 1.55rem;
    line-height: 2.1rem;
}
