/* One look for buttons, links, checkboxes and alerts on the app pages: navy and gold.
   Replaces the mixed Bootstrap blue / black / gray. Dark-mode colours are in dark-pages.css. */
:root { --brand-navy:#0d1620; --brand-navy-2:#0d1620; --brand-gold:#b86a0f; --brand-gold-2:#b86a0f; --brand-link:#b86a0f; }

/* Buttons: filled navy for the main action, outlined navy for the quiet one, gold for "go and top up" */
.btn-primary, .btn-dark { background-color:var(--brand-navy) !important; border-color:var(--brand-navy) !important; color:#fff !important; }
.btn-primary:hover, .btn-primary:focus, .btn-dark:hover, .btn-dark:focus { background-color:var(--brand-navy-2) !important; border-color:var(--brand-navy-2) !important; color:#fff !important; }
.btn-secondary, .btn-outline-secondary { background-color:transparent !important; border:1px solid var(--brand-navy) !important; color:var(--brand-navy) !important; }
.btn-secondary:hover, .btn-secondary:focus, .btn-outline-secondary:hover, .btn-outline-secondary:focus { background-color:var(--brand-navy) !important; color:#fff !important; }
.btn-warning { background-color:var(--brand-gold) !important; border-color:var(--brand-gold) !important; color:#fff !important; }
.btn-warning:hover, .btn-warning:focus { background-color:var(--brand-gold-2) !important; border-color:var(--brand-gold-2) !important; color:#fff !important; }
.btn-light, .btn-outline-light { color:var(--brand-navy); }
.btn:focus, .btn:focus-visible { box-shadow:0 0 0 .2rem rgba(184,144,46,.30) !important; }
.btn { border-radius:9px; font-weight:600; }
.btn-sm-action { border-radius:8px; }

/* Links */
a:not(.btn):not(.alert-link):not(.ls-topnav-brand):not(.nav-link):not(.ls-back-link) { color:var(--brand-link); }
a:not(.btn):not(.alert-link):not(.ls-topnav-brand):not(.nav-link):not(.ls-back-link):hover { color:#7d4a08; }
.alert-link { font-weight:700; }

/* Fields and checkboxes */
.form-check-input:checked { background-color:var(--brand-navy) !important; border-color:var(--brand-navy) !important; }
.form-control:focus, .form-select:focus, .form-check-input:focus { border-color:var(--brand-gold) !important; box-shadow:0 0 0 .2rem rgba(184,144,46,.20) !important; }

/* Alerts: softer, in the same family */
.alert { border-radius:12px; }
.alert-danger  { background:#fbeceb; border-color:#f0c6c1; color:#7f1d1d; }
.alert-warning { background:#f7e9c4; border-color:#b86a0f; color:#7d4a08; }
.alert-success { background:#e7f4ea; border-color:#bcdcc6; color:#14532d; }
.alert-info    { background:#eef4f4; border-color:#cfdadd; color:#0d1620; }

/* Cards, numbers */
.stat-box { border-bottom:3px solid var(--brand-gold); }
.team-card h5, .co-card h5, .review-card h5 { font-weight:700; color:var(--brand-navy); }

/* Small outlined actions, same family */
.btn-outline-primary { background:transparent !important; border:1px solid var(--brand-navy) !important; color:var(--brand-navy) !important; }
.btn-outline-primary:hover, .btn-outline-primary:focus { background:var(--brand-navy) !important; color:#fff !important; }
.btn-outline-danger { border-color:#a8332c !important; color:#a8332c !important; }
.btn-outline-danger:hover { background:#a8332c !important; color:#fff !important; }
.btn-danger { background:#a8332c !important; border-color:#a8332c !important; color:#fff !important; }
.btn-danger:hover { background:#8c2822 !important; border-color:#8c2822 !important; }
.btn-success { background:#2f7a4d !important; border-color:#2f7a4d !important; color:#fff !important; }
.btn-success:hover { background:#256240 !important; border-color:#256240 !important; }
.btn-light { background:#fff; border:1px solid #e3e1da; }

/* The top bar keeps its own light colours (the link rule above must not touch it) */
.ls-topnav-list a { color:#9fb0b4 !important; }
.ls-topnav-list a:hover, .ls-topnav-list a.ls-active { color:#2ee6c0 !important; }
.ls-topnav-list a.ls-gear-link { color:#b86a0f !important; }
.ls-topnav-list a.ls-gear-link:hover { color:#b86a0f !important; }
.ls-back-link { color:#b86a0f !important; }
.ls-back-link:hover { color:#b86a0f !important; }
