.compta-shell {
    --compta-primary: var(--capsule-color-primary, #5046e5);
    --compta-ink: var(--capsule-color-text, #172033);
    --compta-muted: var(--capsule-color-muted, #748096);
    --compta-line: var(--capsule-color-border, #e2e7ef);
    --project-muted: var(--compta-muted);
    color: var(--compta-ink);
    padding: 0 0 2rem;
}

.compta-nav {
    align-items: center;
    background: #fff;
    border: 1px solid var(--compta-line);
    border-radius: 12px;
    display: flex;
    gap: .25rem;
    margin-bottom: 1.5rem;
    overflow-x: auto;
    padding: .4rem;
    scrollbar-width: thin;
}
.compta-nav a { align-items: center; border-radius: 8px; color: #657187; display: inline-flex; flex: 0 0 auto; font-size: .82rem; font-weight: 750; gap: .4rem; padding: .55rem .72rem; text-decoration: none; }
.compta-nav a:hover { background: #f4f3ff; color: var(--compta-primary); }
.compta-nav a.is-active { background: #eeecff; color: var(--compta-primary); }
.compta-nav i { font-size: 1rem; }

.compta-shell .compta-heading,
.compta-shell .financial-dashboard__header {
    align-items: center;
    display: flex;
    gap: 1.5rem;
    justify-content: space-between;
    margin-bottom: 1.5rem;
}
.compta-shell .compta-heading h1,
.compta-shell .financial-dashboard__header h1 { color: var(--compta-ink); font-size: 1.8rem; font-weight: 800; letter-spacing: -.04em; line-height: 1.2; margin: 0 0 .3rem; }
.compta-shell .compta-heading p,
.compta-shell .financial-dashboard__header p { color: var(--compta-muted); font-size: .98rem; margin: 0; max-width: 760px; }
.compta-eyebrow { color: var(--compta-primary); display: inline-block; font-size: .72rem; font-weight: 800; letter-spacing: .09em; margin-bottom: .35rem; text-transform: uppercase; }
.compta-back { align-items: center; color: var(--compta-muted); display: inline-flex; font-size: .82rem; font-weight: 700; gap: .35rem; margin-bottom: .7rem; text-decoration: none; }
.compta-back:hover { color: var(--compta-primary); }

.compta-shell .btn-primary,
.compta-shell .btn-dark { background: var(--compta-primary); border-color: var(--compta-primary); }
.compta-shell .btn-primary:hover,
.compta-shell .btn-dark:hover { background: #4037ce; border-color: #4037ce; }
.compta-shell .btn-outline-primary { border-color: #c8c4ff; color: var(--compta-primary); }
.compta-shell .btn-outline-primary:hover { background: #eeecff; border-color: #aaa4ff; color: #4037ce; }
.compta-shell .capsule-button { align-items: center; display: inline-flex; gap: .45rem; justify-content: center; text-decoration: none; }

.compta-card,
.financial-card {
    background: #fff;
    border: 1px solid var(--compta-line);
    border-radius: 14px;
    box-shadow: 0 1px 3px rgba(23, 32, 51, .05);
}
.compta-toolbar,
.financial-dashboard__toolbar { background: #fff; border: 1px solid var(--compta-line); border-radius: 14px; box-shadow: 0 1px 3px rgba(23,32,51,.04); margin-bottom: 1rem; padding: .85rem 1rem; }
.compta-toolbar form { flex-wrap: wrap; }
.compta-toolbar .form-control { min-width: 240px; }
.compta-toolbar .form-select { min-width: 170px; width: auto; }

.compta-shell .compta-kpis,
.compta-shell .financial-dashboard__kpis { display: grid; gap: 18px; grid-template-columns: repeat(4, minmax(0, 1fr)); margin-bottom: 26px; }
.compta-shell .compta-kpis article,
.compta-shell .financial-kpi { align-items: center; background: #fff; border: 1px solid var(--compta-line); border-radius: 14px; box-shadow: 0 1px 3px rgba(23,32,51,.05); min-height: 112px; padding: 20px; }
.compta-shell .compta-kpis article > span,
.compta-shell .compta-kpis article > small { color: var(--compta-muted); display: block; font-size: .84rem; font-weight: 600; }
.compta-shell .compta-kpis article > strong { display: block; font-size: 1.7rem; margin: .25rem 0; }
.compta-shell .data-kpis:has(> article:nth-child(2):last-child) { grid-template-columns: repeat(2, minmax(0, 1fr)); }

.compta-table,
.financial-table { margin: 0; min-width: 780px; width: 100%; }
.compta-table thead th,
.financial-table thead th { background: #f8f9fc; border-bottom: 1px solid var(--compta-line); color: #778196; font-size: .72rem; font-weight: 800; letter-spacing: .05em; padding: .85rem; text-transform: uppercase; white-space: nowrap; }
.compta-table td,
.compta-table tbody th,
.financial-table td { border-color: #eff1f5; padding: .8rem .85rem; vertical-align: middle; }
.compta-table tbody tr:hover,
.financial-table tbody tr:hover { background: #fafbff; }
.compta-table .badge { border-radius: 999px; font-weight: 700; padding: .42rem .65rem; }
.compta-empty { color: var(--compta-muted); padding: 3.5rem 1.25rem; text-align: center; }
.compta-empty i { color: #b5afef; display: block; font-size: 2.2rem; margin-bottom: .65rem; }

.bilan-grid { gap: 1rem; }
.bilan-card { border: 1px solid var(--compta-line); border-radius: 14px; box-shadow: 0 1px 3px rgba(23,32,51,.05); grid-template-columns: 76px minmax(0, 1fr) auto auto; padding: 1.15rem; }
.bilan-card:hover { border-color: #bdb7f7; box-shadow: 0 8px 24px rgba(80,70,229,.09); transform: translateY(-2px); }
.bilan-year { background: #eeecff; color: var(--compta-primary); }
.bilan-progress span { background: var(--compta-primary); }
.bilan-status { color: var(--compta-primary); }
.bilan-summary section { border: 1px solid var(--compta-line); border-radius: 14px; box-shadow: 0 1px 3px rgba(23,32,51,.05); }
.bilan-ring { background: conic-gradient(var(--compta-primary) var(--progress), #edf0f4 0); }
.bilan-section-head { padding: 1rem 1.2rem; }
.bilan-document { padding: 1rem 1.2rem; }

.statement-tile { border-color: var(--compta-line); }
.statement-tile:hover { background: #f8f7ff; border-color: #bdb7f7; }
.statement-icon { background: #eeecff; color: var(--compta-primary); }
.statement-empty:hover { background: #f8f7ff; border-color: var(--compta-primary); color: var(--compta-primary); }
.reconcile-layout { align-items: start; }
.annotation-workspace { border-radius: 14px; }
.annotation-topbar { background: #fff; }
.annotation-sidebar { background: #fff; }
.annotation-entries button.is-selected { background: #f3f1ff; border-color: var(--compta-primary); }

.compta-status-panel { align-items: flex-start; display: flex; gap: .9rem; padding: 1.25rem; }
.compta-status-panel > i { align-items: center; background: #eafbf4; border-radius: 12px; color: #08a574; display: inline-flex; font-size: 1.4rem; height: 42px; justify-content: center; width: 42px; }
.compta-status-panel.is-warning > i { background: #fff8dc; color: #d99a00; }
.compta-status-panel h2 { font-size: 1rem; margin: 0 0 .25rem; }
.compta-status-panel p { margin: 0; }

@media (max-width: 1100px) {
    .compta-shell .compta-kpis,
    .compta-shell .financial-dashboard__kpis { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 700px) {
    .compta-shell .compta-heading,
    .compta-shell .financial-dashboard__header { align-items: stretch; flex-direction: column; }
    .compta-shell .compta-kpis,
    .compta-shell .financial-dashboard__kpis { grid-template-columns: 1fr; }
    .compta-shell .compta-heading .d-flex { align-items: stretch !important; flex-direction: column; }
    .compta-shell .capsule-button { width: 100%; }
    .compta-shell .data-kpis:has(> article:nth-child(2):last-child) { grid-template-columns: 1fr; }
    .bilan-card { grid-template-columns: 56px minmax(0, 1fr) auto; gap: .75rem; }
    .bilan-card > .bilan-year { height: 52px; width: 52px; }
    .bilan-card > i:last-child { display: none; }
}
