/* RHO brand foundation. Fonts are served locally; no third-party font requests. */
@font-face { font-family: Quicksand; src: url('../fonts/Quicksand.ttf') format('truetype'); font-weight: 300 700; font-style: normal; font-display: swap; }
@font-face { font-family: 'Fugaz One'; src: url('../fonts/FugazOne.ttf') format('truetype'); font-weight: 400; font-style: normal; font-display: swap; }
:root {
    --cords-blue: #2CA9E1;
    --cords-white: #FFFFFF;
    --cords-black: #000000;
    --cords-gray: #7B7B7B;
    --cords-border: #C7C4C4;
    --cords-surface: #E6E6E6;
    --cords-muted: #B3B4B4;
    --cords-ink-secondary: #4D4D4E;
    --bs-body-font-family: Quicksand, sans-serif;
    --bs-body-color: var(--cords-black);
    --bs-body-bg: var(--cords-white);
}
html, body { font-family: Quicksand, sans-serif; color: var(--cords-black); background: var(--cords-white); }
button, input, select, textarea { font-family: inherit; }
h1 { font-family: 'Fugaz One', Quicksand, sans-serif; font-weight: 400; }
a, .btn-link { color: var(--cords-black); text-underline-offset: .2em; }
.btn-primary, .btn-primary:hover, .btn-primary:focus, .btn-primary:focus-visible, .btn-primary:active, .btn-primary:disabled {
    --bs-btn-active-bg: var(--cords-blue);
    --bs-btn-active-color: var(--cords-black);
    color: var(--cords-black); background: var(--cords-blue); border-color: var(--cords-black);
}
.btn-outline-primary { --bs-btn-color: #000000; --bs-btn-border-color: #000000; --bs-btn-hover-bg: #2CA9E1; --bs-btn-hover-color: #000000; --bs-btn-hover-border-color: #000000; --bs-btn-active-bg: #2CA9E1; --bs-btn-active-color: #000000; }
.btn:focus, .btn:active:focus, .form-control:focus, .form-select:focus { box-shadow: 0 0 0 .1rem #FFFFFF, 0 0 0 .25rem #000000; }
.text-secondary, .text-muted { color: var(--cords-ink-secondary) !important; }

/* Keep Bootstrap semantic states within RHO; labels/roles carry their meaning. */
:root {
    --bs-primary-rgb:44,169,225; --bs-secondary-rgb:77,77,78;
    --bs-light-rgb:230,230,230; --bs-dark-rgb:0,0,0;
    --bs-success-rgb:0,0,0; --bs-danger-rgb:0,0,0; --bs-warning-rgb:77,77,78; --bs-info-rgb:44,169,225;
    --bs-body-color-rgb:0,0,0; --bs-body-bg-rgb:255,255,255;
    --bs-link-color-rgb:0,0,0; --bs-link-hover-color-rgb:0,0,0;
    --bs-border-color:var(--cords-border); --bs-tertiary-bg:var(--cords-surface);
    --bs-primary-text-emphasis:var(--cords-black); --bs-secondary-text-emphasis:var(--cords-black);
    --bs-success-text-emphasis:var(--cords-black); --bs-danger-text-emphasis:var(--cords-black);
    --bs-warning-text-emphasis:var(--cords-black); --bs-info-text-emphasis:var(--cords-black);
    --bs-primary-bg-subtle:var(--cords-surface); --bs-secondary-bg-subtle:var(--cords-surface);
    --bs-success-bg-subtle:var(--cords-surface); --bs-danger-bg-subtle:var(--cords-white);
    --bs-warning-bg-subtle:var(--cords-white); --bs-info-bg-subtle:var(--cords-surface);
    --bs-light-bg-subtle:var(--cords-white); --bs-dark-bg-subtle:var(--cords-surface);
    --bs-light-text-emphasis:var(--cords-black); --bs-dark-text-emphasis:var(--cords-black);
    --bs-primary-border-subtle:var(--cords-border); --bs-secondary-border-subtle:var(--cords-border);
    --bs-success-border-subtle:var(--cords-border); --bs-danger-border-subtle:var(--cords-black);
    --bs-warning-border-subtle:var(--cords-black); --bs-info-border-subtle:var(--cords-border);
}
.btn { min-height:44px; }
.btn-success,.btn-danger,.btn-warning,.btn-info,.btn-secondary,
.btn-outline-success,.btn-outline-danger,.btn-outline-warning,.btn-outline-info,.btn-outline-secondary {
    --bs-btn-color:#000000; --bs-btn-bg:#FFFFFF; --bs-btn-border-color:#000000;
    --bs-btn-hover-color:#000000; --bs-btn-hover-bg:#E6E6E6; --bs-btn-hover-border-color:#000000;
    --bs-btn-active-color:#000000; --bs-btn-active-bg:#E6E6E6; --bs-btn-active-border-color:#000000;
    --bs-btn-disabled-color:#4D4D4E; --bs-btn-disabled-bg:#E6E6E6; --bs-btn-disabled-border-color:#C7C4C4;
}
.alert { color:#000000; background:#FFFFFF; border:2px solid #000000; }
.alert-warning,.alert-danger { border-style:dashed; }
.list-group-item { --bs-list-group-bg:#FFFFFF; --bs-list-group-color:#000000; --bs-list-group-border-color:#C7C4C4; }
.list-group-item-light { --bs-list-group-bg:#E6E6E6; --bs-list-group-color:#000000; }
.form-check-input:checked { background-color:#2CA9E1; border-color:#000000; }
.valid.modified:not([type=checkbox]) { outline:1px solid #2CA9E1; }
.invalid { outline:2px dashed #000000; }
.validation-message { color:#000000; font-weight:700; }
#blazor-error-ui { background:#E6E6E6; color:#000000; border-top:2px solid #000000; }
.blazor-error-boundary { background:#E6E6E6; color:#000000; border:2px dashed #000000; }
.loading-progress circle { stroke:#E6E6E6; }
.loading-progress circle:last-child { stroke:#2CA9E1; }
code { color:#000000; }
