/* Padagos - App theme (Module 102a). Loads after style.css and overrides its colours and shapes. */

:root {
    --padagos-primary: #0B3D2E;
    --padagos-secondary: #0B6E4F;
    --padagos-accent: #F4A81D;
    --padagos-accent-hover: #DA920A;
    --pad-green-dark: #095A40;

    --ink-900: #10231D;
    --ink-700: #2F463D;
    --ink-500: #4F625A;
    --ink-300: #92A59C;

    --surface: #ffffff;
    --surface-sunken: #F6F8F5;
    --surface-muted: #EAF0EC;
    --border-color: #DFE6DF;
    --border-strong: #C3CFC8;

    --success: #1F7A4D;
    --success-bg: #E3F4EA;
    --warning: #854F0B;
    --warning-bg: #FAEEDA;
    --danger: #A32D2D;
    --danger-bg: #FCEBEB;
    --info: #0C447C;
    --info-bg: #E6F1FB;

    --radius-sm: 6px;
    --radius-md: 10px;
    --radius-lg: 12px;

    --bs-primary: #0B6E4F;
    --bs-primary-rgb: 11, 110, 79;
    --bs-link-color: #0B6E4F;
    --bs-link-color-rgb: 11, 110, 79;
    --bs-link-hover-color: #095A40;
    --bs-link-hover-color-rgb: 9, 90, 64;
    --bs-primary-text-emphasis: #095A40;
    --bs-primary-bg-subtle: #E3F4EA;
    --bs-primary-border-subtle: #BFE3D0;
}

/* ---------- Type ---------- */
h1, h2, h3, h4, h5, h6 { font-weight: 700; letter-spacing: -0.02em; }
h4 { font-size: 1.5rem; }
h5 { font-size: 1.15rem; }
h6 { font-size: 1rem; }
a:hover { color: var(--pad-green-dark); }

/* ---------- Cards ---------- */
.padagos-card, .card { border-radius: 12px; border-color: var(--border-color); }
.padagos-card:hover { border-color: var(--border-strong); }
.stat-card { border-radius: 12px; }
.stat-card .stat-number { font-weight: 700; }
.stat-card .stat-icon,
.padagos-card .icon-circle { background-color: #E3F4EA; color: var(--padagos-secondary); border-radius: 8px; }

/* ---------- Buttons ---------- */
.btn { border-radius: 8px; font-weight: 600; font-size: 0.9rem; padding: 8px 16px; }
.btn-sm { padding: 5px 12px; font-size: 0.84rem; }
.btn-lg { padding: 11px 22px; font-size: 1rem; }

.btn-primary {
    --bs-btn-bg: #0B6E4F;
    --bs-btn-border-color: #0B6E4F;
    --bs-btn-hover-bg: #095A40;
    --bs-btn-hover-border-color: #095A40;
    --bs-btn-active-bg: #084A35;
    --bs-btn-active-border-color: #084A35;
    --bs-btn-disabled-bg: #0B6E4F;
    --bs-btn-disabled-border-color: #0B6E4F;
    --bs-btn-focus-shadow-rgb: 11, 110, 79;
    background-color: #0B6E4F;
    border-color: #0B6E4F;
    color: #ffffff;
}
.btn-primary:hover, .btn-primary:focus, .btn-primary:active {
    background-color: #095A40;
    border-color: #095A40;
    color: #ffffff;
}

.btn-outline-primary { color: #0B6E4F; border-color: #0B6E4F; }
.btn-outline-primary:hover, .btn-outline-primary:focus, .btn-outline-primary:active {
    background-color: #0B6E4F;
    border-color: #0B6E4F;
    color: #ffffff;
}

.btn-warning { background-color: #F4A81D; border-color: #F4A81D; color: #10231D; }
.btn-warning:hover, .btn-warning:focus, .btn-warning:active { background-color: #DA920A; border-color: #DA920A; color: #10231D; }
.btn-outline-warning { color: #854F0B; border-color: #BA7517; }
.btn-outline-warning:hover { background-color: #F4A81D; border-color: #F4A81D; color: #10231D; }

.btn-success { background-color: #1F7A4D; border-color: #1F7A4D; color: #ffffff; }
.btn-success:hover { background-color: #186340; border-color: #186340; color: #ffffff; }

/* ---------- Forms ---------- */
.form-control, .form-select { border-radius: 8px; border-color: var(--border-strong); padding: 9px 12px; }
.form-control:focus, .form-select:focus {
    border-color: var(--padagos-secondary);
    box-shadow: 0 0 0 3px rgba(11, 110, 79, 0.15);
}
.form-check-input:checked { background-color: var(--padagos-secondary); border-color: var(--padagos-secondary); }
.form-check-input:focus { border-color: var(--padagos-secondary); box-shadow: 0 0 0 3px rgba(11, 110, 79, 0.15); }

/* ---------- Alerts ---------- */
.alert { border-radius: 10px; }
.alert-success { border-color: #C6E5D2; }
.alert-warning { border-color: #F3DDB0; }
.alert-danger  { border-color: #F1CACA; }
.alert-info    { border-color: #CDE0F1; }

/* ---------- Tables and menus ---------- */
.table-hover tbody tr:hover { background-color: #F1F6F2; }
.dropdown-menu { border-radius: 10px; }
.pagination {
    --bs-pagination-color: #0B6E4F;
    --bs-pagination-hover-color: #095A40;
    --bs-pagination-focus-color: #095A40;
    --bs-pagination-active-bg: #0B6E4F;
    --bs-pagination-active-border-color: #0B6E4F;
    --bs-pagination-active-color: #ffffff;
}

/* ---------- Sidebar and top bar ---------- */
.admin-sidebar { background-color: var(--padagos-primary); }
.admin-nav-link { border-radius: 8px; }
.admin-nav-link:hover { background-color: rgba(255, 255, 255, 0.08); }
.admin-nav-link.active {
    background-color: #14563F;
    color: #ffffff;
    border-left: 3px solid var(--padagos-accent);
    padding-left: 9px;
    border-radius: 0 8px 8px 0;
}
.sidebar-identity { border-bottom-color: rgba(255, 255, 255, 0.1); }
.sidebar-avatar { background-color: var(--padagos-accent); color: var(--ink-900); }
.padagos-navbar { border-bottom-color: rgba(255, 255, 255, 0.08); }

/* ---------- Things that sat on the old amber with white text ---------- */
.filter-toggle-count { color: var(--ink-900); }
.promo-bar { background: var(--padagos-primary); }
.promo-bar-icon { color: var(--padagos-accent); }

/* ---------- Verification wizard ---------- */
.wiz-steps { gap: 6px; }
.wiz-steps li { font-size: 0.85rem; gap: 6px; white-space: nowrap; }
.wiz-steps li + li::before { width: 10px; }
.wiz-steps li.is-current .wiz-dot { color: var(--ink-900); }
