/* GIANTS STATS — identité administrative GICC pour les pages Cellules autonomes */
:root {
    --primary: #173b6c;
    --primary-dark: #0b1d36;
    --accent: #b88a3b;
    --bg: #f4f6f8;
    --surface: #ffffff;
    --text: #172333;
    --muted: #5b6675;
    --border: #dce2e8;
    --soft: #eef2f5;
    --success: #237a57;
    --success-bg: #e8f4ee;
    --warning: #a56516;
    --warning-bg: #fbf1df;
    --danger: #b4233d;
    --danger-bg: #faecef;
    --neutral-bg: #f8fafb;
}

body {
    color: var(--text);
    background: linear-gradient(180deg, #f8f9fa 0%, var(--bg) 100%);
}

.topbar,
.official-header {
    color: #ffffff;
    background: linear-gradient(135deg, #081a3a 0%, #173b6c 72%, #24558a 100%);
    border-color: rgba(184, 138, 59, .32);
    box-shadow: 0 10px 28px rgba(11, 29, 54, .14);
}

.topbar a,
.official-header a { color: rgba(255, 255, 255, .88); }
.topbar a:hover,
.official-header a:hover { color: #ffffff; }

.card,
.table-card,
.login-card,
.panel,
.form-card {
    border-color: var(--border);
    background: var(--surface);
    box-shadow: 0 14px 34px rgba(11, 29, 54, .08);
}

h1,
h2,
h3 { color: var(--primary-dark); }
.topbar h1,
.topbar h2,
.official-header h1,
.official-header h2 { color: #ffffff; }

input,
select,
textarea {
    border-color: #cfd7df;
    color: var(--text);
    background: #fbfcfd;
}
input:focus,
select:focus,
textarea:focus {
    border-color: #24558a;
    background: #ffffff;
    box-shadow: 0 0 0 3px rgba(36, 85, 138, .13);
    outline: none;
}

button,
.btn,
.submit-btn,
.form-button {
    border-color: var(--primary);
    color: #ffffff;
    background: var(--primary);
    box-shadow: 0 7px 16px rgba(23, 59, 108, .14);
}
button:hover,
.btn:hover,
.submit-btn:hover,
.form-button:hover { border-color: var(--primary-dark); background: var(--primary-dark); }
.btn.green { border-color: var(--success); background: var(--success); }
.btn.gray { border-color: #536170; background: #536170; }
button.danger,
.danger { border-color: var(--danger); color: #ffffff; background: var(--danger); }

.top-actions button.primary {
    border-color: var(--accent);
    color: var(--primary-dark);
    background: var(--accent);
}

.table-wrap { border-color: var(--border); background: var(--surface); }
th {
    color: #45576a;
    background: #eef2f5;
    border-color: var(--border);
}
td { border-color: #e7ebef; }
tbody tr:hover { background: #f8fafb; }

.success,
.alert-success,
.notice-success { color: #175b40; background: var(--success-bg); border-color: #c5e2d3; }
.error,
.danger-box,
.alert-error { color: #8e2638; background: var(--danger-bg); border-color: #edcbd2; }
.warning,
.warning-box { color: #7b4a0e; background: var(--warning-bg); border-color: #ead5aa; }

.kpi,
.stat-card,
.summary-card,
.metric-card {
    border-color: var(--border);
    background: var(--surface);
    box-shadow: 0 10px 26px rgba(11, 29, 54, .07);
}

.brand-badge,
.logo-mark,
.accent { color: var(--accent); }

a { color: var(--primary); }
:focus-visible { outline: 3px solid rgba(184, 138, 59, .52); outline-offset: 2px; }

@media print {
    body { color: #000000; background: #ffffff; }
    .topbar { display: none; }
    .official-header { color: #000000; background: #ffffff; box-shadow: none; }
    .official-header h1,
    .official-header h2 { color: #000000; }
    .card,
    .table-card { box-shadow: none; }
}
