@font-face{font-family:Source Sans;src:url('/static/fonts/source-sans-latin.woff2') format('woff2');font-weight:200 900;font-display:swap}@font-face{font-family:Bricolage;src:url('/static/fonts/bricolage-latin.woff2') format('woff2');font-weight:200 800;font-display:swap}
:root,[data-bs-theme=light]{--bs-font-sans-serif:'Source Sans',sans-serif;--bs-body-font-family:'Source Sans',sans-serif;--bs-body-bg:#f4f9fb;--bs-body-color:#103c55;--bs-secondary-color:#466777;--bs-tertiary-bg:#d9f2fb;--bs-border-color:#c5dce4;--surface:#fff;--sidebar:#103c55;--sidebar-text:#d6eaf0;--selected:#d9f2fb;--selected-text:#103c55;--brand-heading:'Bricolage',sans-serif;--rail-width:254px;--focus:#087d76;--bs-link-color:#087d76;--bs-link-hover-color:#065e59;color-scheme:light}
[data-bs-theme=dark]{--bs-body-bg:#0b2638;--bs-body-color:#d6eaf0;--bs-secondary-color:#c4dce5;--bs-tertiary-bg:#153e51;--bs-border-color:#31596b;--surface:#103c55;--sidebar:#082232;--sidebar-text:#d6eaf0;--selected:#245d76;--selected-text:#fff;--focus:#8fe6dc;--bs-link-color:#8fe6dc;--bs-link-hover-color:#baf4e8;color-scheme:dark}
*{box-sizing:border-box}body{font-size:16px;line-height:1.5}h1,h2,h3,.brand,.login-brand{font-family:var(--brand-heading)}h1{font-size:1.8rem;font-weight:650;letter-spacing:-.025em;margin:0}h2{font-size:1.18rem;font-weight:650}button,a,input,select{touch-action:manipulation}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid var(--focus);outline-offset:3px}::selection{background:#8ddbf0;color:#103c55}input,textarea{caret-color:var(--focus)}svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:none}.btn{font-weight:600;border-radius:8px;min-height:38px;display:inline-flex;align-items:center;justify-content:center;gap:7px}.btn-primary{--bs-btn-bg:#087d76;--bs-btn-border-color:#087d76;--bs-btn-hover-bg:#06665f;--bs-btn-hover-border-color:#06665f;--bs-btn-active-bg:#065c57;--bs-btn-active-border-color:#065c57;--bs-btn-disabled-bg:#466777;--bs-btn-disabled-border-color:#466777}.btn-outline-primary{--bs-btn-color:var(--bs-link-color);--bs-btn-border-color:var(--bs-border-color);--bs-btn-hover-bg:#087d76;--bs-btn-hover-border-color:#087d76;--bs-btn-hover-color:white}.btn-sm{min-height:32px}.form-control,.form-select{min-height:42px;border-radius:8px}.form-control:focus,.form-select:focus{border-color:var(--focus);box-shadow:0 0 0 .2rem rgb(24 181 165 / .15)}.form-label{font-weight:600;font-size:.93rem}.icon-button{border:0;background:transparent;color:inherit;width:40px;height:40px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;flex:none}.icon-button:hover{background:var(--bs-tertiary-bg)}.topbar{height:68px;position:fixed;inset:0 0 auto var(--rail-width);display:flex;align-items:center;gap:16px;padding:0 24px;border-bottom:1px solid var(--bs-border-color);background:var(--surface);z-index:1030;transition:left .18s ease-out}.company-control{width:min(330px,40vw)}.company-control .form-select{min-height:38px}.header-actions{margin-left:auto;display:flex;align-items:center;gap:8px}.user-button{border:0;background:transparent;display:flex;align-items:center;gap:8px;color:inherit}.avatar{width:32px;height:32px;display:grid;place-items:center;background:#d9f2fb;color:#103c55;border-radius:50%;font-weight:700}.sidebar{position:fixed;inset:0 auto 0 0;width:var(--rail-width);background:var(--sidebar);color:var(--sidebar-text);display:flex;flex-direction:column;z-index:1040;transition:width .18s ease-out,transform .18s ease-out;overflow-x:hidden}.brand{display:flex;align-items:center;gap:11px;padding:22px 20px;text-decoration:none;color:#fff;font-size:1.45rem;font-weight:650;white-space:nowrap}.brand small{font-family:'Source Sans',sans-serif;display:block;color:#c4dce5;font-size:.72rem;font-weight:400;line-height:1.35;white-space:normal;margin-top:4px}.sidebar nav{padding:0 12px 20px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#547489 transparent}.nav-item{display:flex;align-items:center;gap:12px;padding:10px 12px;margin:2px 0;color:var(--sidebar-text);text-decoration:none;border-radius:8px;font-size:.95rem;transition:background .15s,color .15s;min-height:42px}.nav-item span{white-space:normal}.nav-item:hover,.nav-item:focus-visible{background:#245d76;color:#fff}.nav-item.active{background:#d9f2fb;color:#103c55}.sidebar summary{list-style:none;display:flex;align-items:center;justify-content:space-between;padding:17px 12px 6px;color:#8ddbf0;font-size:.79rem;font-weight:650}.sidebar summary::-webkit-details-marker{display:none}.sidebar summary svg{width:14px;height:14px;transition:transform .15s}.sidebar details:not([open]) summary svg{transform:rotate(-90deg)}.sidebar-footer{margin-top:auto;padding:14px 24px;font-size:.76rem;color:#c4dce5;border-top:1px solid #31596b;white-space:nowrap}.workspace{margin:68px 0 0 var(--rail-width);padding:30px 32px;min-height:calc(100vh - 68px);min-width:0;transition:margin-left .18s}.workspace-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-bottom:24px}.breadcrumb-line{font-size:.82rem;color:var(--bs-secondary-color);margin:0 0 6px}.panel{background:var(--surface);border:1px solid var(--bs-border-color);border-radius:12px;padding:24px;min-width:0}.panel-heading,.document-header{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;margin-bottom:20px}.panel-heading h2,.document-header h2{margin:0}.working-totals{display:flex;margin:0;gap:0;flex-wrap:wrap}.working-totals>div{flex:1;padding:12px 24px;border-right:1px solid var(--bs-border-color);min-width:170px}.working-totals>div:first-child{padding-left:0}.working-totals>div:last-child{border:0}.working-totals dt{font-size:.9rem;font-weight:400;color:var(--bs-secondary-color)}.working-totals dd{font-size:1.75rem;font-weight:650;margin:4px 0 0;font-variant-numeric:tabular-nums}.quick-actions{display:flex;flex-direction:column;margin-top:18px}.quick-actions a{display:flex;justify-content:space-between;gap:16px;text-decoration:none;padding:14px 0;border-top:1px solid var(--bs-border-color)}.empty-state{padding:50px 24px;text-align:center}.empty-state p{max-width:54ch;margin:12px auto 24px;color:var(--bs-secondary-color)}.empty-icon{width:42px;height:42px;color:var(--bs-link-color);margin-bottom:20px}.table{--bs-table-bg:transparent;--bs-table-color:var(--bs-body-color);--bs-table-border-color:var(--bs-border-color);font-size:.94rem}.table thead th{font-size:.82rem;font-weight:650;color:var(--bs-secondary-color);white-space:nowrap;padding-top:12px;padding-bottom:14px}.table td{padding-top:12px;padding-bottom:12px}.table-actions{text-align:right;white-space:nowrap}.number{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}div.dt-container .dt-layout-row{gap:16px}.table-panel{padding:20px 24px}.dt-search input{border:1px solid var(--bs-border-color);background:var(--bs-body-bg);color:var(--bs-body-color);border-radius:7px;padding:6px 10px}.journal-input select{min-width:230px}.journal-input input{min-width:115px}.status-label{padding:5px 11px;background:var(--bs-tertiary-bg);border-radius:20px;font-size:.82rem;font-weight:600}.status-label.posted{color:var(--bs-link-color)}.document-actions{display:flex;justify-content:flex-end;margin-top:20px}.reversal-area{margin-top:28px;border-top:1px solid var(--bs-border-color);padding-top:20px}.reversal-area summary{cursor:pointer;font-weight:600}.workspace-footer{margin-top:30px;font-size:.79rem;color:var(--bs-secondary-color)}.field-help{font-size:.87rem;color:var(--bs-secondary-color)}.modal-content{background:var(--surface);border-radius:14px}.modal-header,.modal-footer{padding:18px 24px}.modal-body{padding:24px}.activity-menu{width:min(350px,calc(100vw - 24px));padding:16px}.activity-menu h2{font-size:1rem;margin-bottom:16px}.activity-item{padding:9px 0;border-bottom:1px solid var(--bs-border-color)}.activity-item span,.activity-item small{display:block}.activity-item small{font-size:.74rem;color:var(--bs-secondary-color)}.toast{border:0;background:var(--surface);box-shadow:0 6px 24px rgb(0 0 0 / .18);color:var(--bs-body-color)}.toast-body{display:flex;gap:10px;align-items:flex-start}.toast-body>span{flex:1}.toast-body svg{color:var(--bs-link-color)}.device-request{position:fixed;bottom:24px;left:calc(var(--rail-width) + 24px);right:24px;background:var(--surface);border:1px solid var(--bs-border-color);border-radius:12px;padding:20px 24px;z-index:1050;display:flex;gap:20px;align-items:center;justify-content:space-between}.device-request p{margin:6px 0 0;max-width:65ch}.device-actions{display:flex;gap:8px;flex-wrap:wrap;flex:none}.sidebar-backdrop{display:none}.skip-link{position:fixed;top:8px;left:8px;transform:translateY(-150%);z-index:2000;background:var(--surface);padding:8px 14px}.skip-link:focus{transform:none}.page-busy{position:fixed;top:0;left:0;right:0;height:3px;z-index:3000;background:#18b5a5}.login-page{min-height:100vh;min-height:100dvh;margin:0;display:flex;align-items:center;justify-content:center;padding:24px 20px;box-sizing:border-box}.login-shell{width:100%;max-width:390px;min-width:0}.login-form-page{background:#e9f4f8}.login-form-page .login-shell{max-width:454px}.login-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.login-brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--bs-body-color);font-size:1.85rem;font-weight:650;min-width:0}.login-slogan{font-size:.9rem;line-height:1.4;color:var(--bs-secondary-color);margin:12px 0 22px}.login-card{background:var(--surface);border:1px solid #b4cbd7;border-radius:14px;padding:28px 32px}.login-shell h1{font-size:1.6rem;line-height:1.25;margin:0 0 8px}.login-card>p{color:var(--bs-secondary-color);margin:0 0 22px}.login-shell footer{text-align:center;color:var(--bs-secondary-color);font-size:.78rem;line-height:1.4;margin-top:20px}.login-theme{position:static;flex:none}.password-field{position:relative}.password-field input{padding-right:46px}.password-toggle{position:absolute;right:3px;top:2px;width:38px;height:38px;border:0;background:transparent;color:var(--bs-secondary-color)}[data-bs-theme=dark] .login-form-page{background:#082232}[data-bs-theme=dark] .login-card{border-color:#547489}@media(max-width:575px){.login-page{padding:20px 16px}.login-brand{font-size:1.65rem;gap:10px}.login-brand img{width:40px;height:40px}.login-card{padding:24px 20px}.login-slogan{font-size:.86rem}.login-shell h1{font-size:1.45rem}}@media(max-height:680px){.login-page{padding-block:12px}.login-card{padding-block:20px}.login-slogan{margin-top:10px;margin-bottom:16px}.login-card>p{margin-bottom:16px}.login-shell footer{margin-top:14px}.login-card .mb-3{margin-bottom:12px!important}.login-card .mb-4{margin-bottom:16px!important}}body.sidebar-compact{--rail-width:74px}.sidebar-compact .sidebar .brand{padding-left:18px}.sidebar-compact .sidebar .brand>span,.sidebar-compact .sidebar .nav-item>span,.sidebar-compact .sidebar summary,.sidebar-compact .sidebar-footer{display:none}.sidebar-compact .sidebar:hover,.sidebar-compact .sidebar:focus-within{width:254px}.sidebar-compact .sidebar:hover .brand>span,.sidebar-compact .sidebar:hover .nav-item>span,.sidebar-compact .sidebar:hover summary,.sidebar-compact .sidebar:focus-within .brand>span,.sidebar-compact .sidebar:focus-within .nav-item>span,.sidebar-compact .sidebar:focus-within summary{display:revert}.record-form.htmx-request button[type=submit]{opacity:.6;pointer-events:none}
@media(max-width:991px){:root{--rail-width:0px}.topbar{left:0;padding:0 14px;gap:8px}.workspace{margin-left:0;padding:24px 18px}.sidebar{width:254px;transform:translateX(-100%)}body.sidebar-open .sidebar{transform:none}body.sidebar-open .sidebar-backdrop{display:block;position:fixed;inset:0;background:rgb(0 0 0 / .35);z-index:1035}body.sidebar-compact{--rail-width:0px}.sidebar-compact .sidebar .brand>span,.sidebar-compact .sidebar .nav-item>span,.sidebar-compact .sidebar summary{display:revert}.device-request{left:18px;right:18px;bottom:18px;flex-direction:column;align-items:stretch}.company-control{width:min(340px,52vw)}}
@media(max-width:575px){.topbar{height:60px;gap:5px}.workspace{margin-top:60px;padding:22px 14px}.header-actions{gap:2px}.user-name{display:none}.icon-button{width:34px;height:36px}.company-control{width:calc(100vw - 170px)}h1{font-size:1.55rem}.workspace-heading{gap:14px}.workspace-heading>.btn{margin-left:auto}.panel{padding:20px 16px}.table-panel{padding:14px 10px}.working-totals>div{padding:12px 0;border-right:0;border-bottom:1px solid var(--bs-border-color);min-width:100%}.working-totals>div:last-child{border-bottom:0}.activity-menu{width:calc(100vw - 24px)}.modal-header,.modal-footer,.modal-body{padding:18px}.device-actions .btn{width:100%}.device-actions form{flex:1;min-width:130px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;animation:none!important;scroll-behavior:auto!important}}@media print{.sidebar,.topbar,.workspace-heading>.btn,.workspace-footer{display:none!important}.workspace{margin:0;padding:0}.panel{border:0;padding:0}body{background:white!important;color:black!important}}

.company-control{min-width:0}.brand img,.login-brand img{background:#f4f9fb;border-radius:9px;padding:3px}

/* Keep short pages anchored to the bottom without overlaying content. */
.workspace{display:flex;flex-direction:column;min-height:calc(100vh - 68px);min-height:calc(100dvh - 68px)}.workspace-heading,.workspace-footer{flex-shrink:0}.workspace-footer{margin-top:auto;padding-top:30px}.sidebar-compact .sidebar.selection-closed{width:74px}.sidebar-compact .sidebar.selection-closed .brand>span,.sidebar-compact .sidebar.selection-closed .nav-item>span,.sidebar-compact .sidebar.selection-closed summary,.sidebar-compact .sidebar.selection-closed .sidebar-footer{display:none}@media(max-width:991px){.workspace{min-height:calc(100vh - 68px);min-height:calc(100dvh - 68px)}}@media(max-width:575px){.workspace{min-height:calc(100vh - 60px);min-height:calc(100dvh - 60px)}}

@media(max-height:540px){.login-form-page{padding-block:8px}.login-card{padding-block:16px}.login-slogan{margin-bottom:12px}.login-shell footer{margin-top:12px}}

@media(max-width:991px){.sidebar{top:68px}.sidebar-backdrop{top:68px!important}}@media(max-width:575px){.sidebar{top:60px}.sidebar-backdrop{top:60px!important}}


/* Entity directories share left alignment, density and the Contabillit theme. */
.record-table th,.record-table td,.record-table .dt-type-numeric,.record-table .dt-type-date{text-align:left!important}.record-table .dt-column-header{justify-content:flex-start}.record-table .dt-column-title{text-align:left}.record-table td:first-child{font-variant-numeric:tabular-nums}
.pagination{--bs-pagination-color:var(--bs-link-color);--bs-pagination-bg:var(--surface);--bs-pagination-border-color:var(--bs-border-color);--bs-pagination-hover-color:var(--bs-body-color);--bs-pagination-hover-bg:var(--bs-tertiary-bg);--bs-pagination-hover-border-color:var(--bs-border-color);--bs-pagination-focus-color:var(--bs-link-color);--bs-pagination-focus-bg:var(--bs-tertiary-bg);--bs-pagination-focus-box-shadow:0 0 0 .2rem rgb(24 181 165 / .2);--bs-pagination-active-bg:#087d76;--bs-pagination-active-border-color:#087d76;--bs-pagination-active-color:#fff;--bs-pagination-disabled-color:var(--bs-secondary-color);--bs-pagination-disabled-bg:var(--surface);--bs-pagination-disabled-border-color:var(--bs-border-color)}[data-bs-theme=dark] .pagination{--bs-pagination-active-bg:#8ddbf0;--bs-pagination-active-border-color:#8ddbf0;--bs-pagination-active-color:#103c55}
.toast-body{display:grid;grid-template-columns:20px minmax(0,1fr) 28px;gap:10px;align-items:start}.toast-body>span{min-width:0;overflow-wrap:anywhere}.toast-body>.btn-close{grid-column:3;justify-self:end;margin:0;min-width:24px;min-height:24px;padding:0}
.activity-menu{width:min(400px,calc(100vw - 24px));padding:0;overflow:hidden}.activity-heading{padding:16px;border-bottom:1px solid var(--bs-border-color);display:flex;flex-direction:column;gap:8px}.activity-heading h2{margin:0}.notification-read-all{padding:0;border:0;background:transparent;font-size:.85rem;font-weight:600;color:var(--bs-link-color);text-align:left}.notification-read-all:disabled{color:var(--bs-secondary-color);opacity:.7}.activity-scroll{max-height:min(620px,calc(100dvh - 230px));overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--bs-secondary-color) transparent;padding:0 16px}.activity-item{display:block;width:100%;border:0;border-bottom:1px solid var(--bs-border-color);background:transparent;color:var(--bs-body-color);text-align:left;padding:12px 0;min-height:64px}.activity-item:hover,.activity-item:focus-visible{background:var(--bs-tertiary-bg)}.activity-item.is-unread>span:first-child{font-weight:650}.activity-item small{font-size:.8rem;line-height:1.5}.activity-audit-link{padding:14px 16px;border-top:1px solid var(--bs-border-color);color:var(--bs-link-color)}#notification-bell{position:relative}.notification-badge{position:absolute;top:0;right:0;min-width:17px;height:17px;padding:0 3px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:#087d76;color:#fff;font-size:.65rem;font-weight:700;line-height:1}.notification-badge[hidden]{display:none!important}[data-bs-theme=dark] .notification-badge{background:#8ddbf0;color:#103c55}
.audit-detail{margin:0;display:grid;gap:16px}.audit-detail>div{display:grid;grid-template-columns:minmax(110px,1fr) minmax(0,2fr);gap:12px}.audit-detail dt{font-size:.88rem;font-weight:600;color:var(--bs-secondary-color)}.audit-detail dd{margin:0;overflow-wrap:anywhere}.audit-detail dd small{display:block;font-size:.76rem;color:var(--bs-secondary-color)}.sidebar-footer{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:12px 18px}.sidebar-role{white-space:normal;font-size:.82rem;line-height:1.35}.sidebar-logout{color:var(--sidebar-text);width:34px;height:34px}.sidebar-logout:hover{background:#245d76;color:#fff}.sidebar-compact .sidebar-footer{display:flex;justify-content:center;padding:12px 6px}.sidebar-compact .sidebar-role{display:none}.sidebar-compact .sidebar:hover .sidebar-footer,.sidebar-compact .sidebar:focus-within .sidebar-footer{justify-content:space-between;padding:12px 18px}.sidebar-compact .sidebar:hover .sidebar-role,.sidebar-compact .sidebar:focus-within .sidebar-role{display:block}.sidebar-compact .sidebar.selection-closed .sidebar-footer{display:flex;justify-content:center;padding:12px 6px}.sidebar-compact .sidebar.selection-closed .sidebar-role{display:none}.workspace-footer small{display:block;font-size:inherit;margin-top:3px}.error-card{margin-top:24px}@media(max-width:991px){.sidebar-compact .sidebar-role{display:block}.sidebar-compact .sidebar-footer{justify-content:space-between;padding:12px 18px}}@media(max-width:400px){.audit-detail>div{grid-template-columns:1fr;gap:3px}}

.dashboard-charts{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(0,1fr);gap:24px}.chart-note{font-size:.83rem;color:var(--bs-secondary-color);margin:8px 0 16px}.monthly-chart{display:flex;gap:12px;min-height:220px;align-items:stretch;overflow-x:auto}.chart-column{display:flex;flex:1;min-width:48px;flex-direction:column;text-align:center;gap:8px}.chart-value{font-size:.74rem;font-variant-numeric:tabular-nums;white-space:nowrap}.chart-track{height:160px;display:flex;align-items:flex-end;border-bottom:1px solid var(--bs-border-color)}.chart-bar{width:100%;background:#087d76;border-radius:5px 5px 0 0;min-height:2px}.chart-label{font-size:.78rem;color:var(--bs-secondary-color)}.journal-status-chart{display:grid;gap:22px;margin:24px 0}.journal-status-chart>div{display:grid;grid-template-columns:95px 1fr;gap:12px}.journal-status-chart dt{font-size:.9rem;font-weight:400}.journal-status-chart dd{margin:0;text-align:right;font-weight:650}.status-track{margin-top:6px;height:8px;border-radius:4px;background:var(--bs-tertiary-bg);overflow:hidden}.status-bar{display:block;height:100%;background:#466777}.status-bar.approved{background:#c4652d}.status-bar.posted{background:#087d76}[data-bs-theme=dark] .chart-bar,[data-bs-theme=dark] .status-bar.posted{background:#8ddbf0}[data-bs-theme=dark] .status-bar.approved{background:#ff985c}[data-bs-theme=dark] .status-bar.draft{background:#c4dce5}@media(max-width:1199px){.dashboard-charts{grid-template-columns:1fr}}


/* Apply the brand to Bootstrap utilities and every interaction state. */
:root,[data-bs-theme=light]{--bs-primary:#087d76;--bs-primary-rgb:8,125,118;--bs-secondary:#466777;--bs-secondary-rgb:70,103,119;--bs-success:#187649;--bs-success-rgb:24,118,73;--bs-info:#103c55;--bs-info-rgb:16,60,85;--bs-warning:#ff985c;--bs-warning-rgb:255,152,92;--bs-danger:#ff985c;--bs-danger-rgb:255,152,92;--bs-link-color-rgb:8,125,118;--bs-link-hover-color-rgb:16,60,85;--bs-focus-ring-color:rgb(24 181 165 / .28);--bs-primary-text-emphasis:#103c55;--bs-primary-bg-subtle:#d9f2fb;--bs-primary-border-subtle:#c5dce4;--bs-danger-text-emphasis:#103c55;--bs-danger-bg-subtle:#d9f2fb;--bs-danger-border-subtle:#ff985c;--bs-warning-text-emphasis:#103c55;--bs-warning-bg-subtle:#d9f2fb;--bs-warning-border-subtle:#ff985c;--bs-info-text-emphasis:#103c55;--bs-info-bg-subtle:#d9f2fb;--bs-info-border-subtle:#c5dce4;--bs-success-text-emphasis:#187649;--bs-success-bg-subtle:#d9f2fb;--bs-success-border-subtle:#187649}
[data-bs-theme=dark]{--bs-primary:#8ddbf0;--bs-primary-rgb:141,219,240;--bs-link-color-rgb:141,219,240;--bs-link-hover-color-rgb:217,242,251;--bs-primary-text-emphasis:#d9f2fb;--bs-primary-bg-subtle:#153e51;--bs-primary-border-subtle:#547489;--bs-danger-text-emphasis:#ff985c;--bs-danger-bg-subtle:#153e51;--bs-warning-text-emphasis:#ff985c;--bs-warning-bg-subtle:#153e51;--bs-info-text-emphasis:#d9f2fb;--bs-info-bg-subtle:#153e51;--bs-success-text-emphasis:#d9f2fb;--bs-success-bg-subtle:#153e51}
.btn-primary{--bs-btn-focus-shadow-rgb:24,181,165;--bs-btn-active-shadow:none}.btn-outline-primary{--bs-btn-active-color:#fff;--bs-btn-active-bg:#087d76;--bs-btn-active-border-color:#087d76;--bs-btn-focus-shadow-rgb:24,181,165;--bs-btn-disabled-color:var(--bs-secondary-color);--bs-btn-disabled-border-color:var(--bs-border-color)}.btn-outline-danger{--bs-btn-color:var(--bs-body-color);--bs-btn-border-color:#ff985c;--bs-btn-hover-color:#103c55;--bs-btn-hover-bg:#ff985c;--bs-btn-hover-border-color:#ff985c;--bs-btn-active-color:#103c55;--bs-btn-active-bg:#ff985c;--bs-btn-active-border-color:#ff985c;--bs-btn-focus-shadow-rgb:255,152,92;--bs-btn-disabled-color:var(--bs-secondary-color);--bs-btn-disabled-border-color:var(--bs-border-color)}.btn-secondary,.btn-dark{--bs-btn-bg:#103c55;--bs-btn-color:#fff;--bs-btn-border-color:#103c55;--bs-btn-hover-bg:#087d76;--bs-btn-hover-color:#fff;--bs-btn-hover-border-color:#087d76;--bs-btn-active-bg:#087d76;--bs-btn-active-border-color:#087d76;--bs-btn-focus-shadow-rgb:24,181,165}.btn-success{--bs-btn-bg:#187649;--bs-btn-border-color:#187649;--bs-btn-hover-bg:#087d76;--bs-btn-hover-border-color:#087d76;--bs-btn-active-bg:#087d76;--bs-btn-active-border-color:#087d76;--bs-btn-focus-shadow-rgb:24,181,165}.btn-danger,.btn-warning{--bs-btn-bg:#ff985c;--bs-btn-border-color:#ff985c;--bs-btn-color:#103c55;--bs-btn-hover-bg:#d9f2fb;--bs-btn-hover-border-color:#ff985c;--bs-btn-hover-color:#103c55;--bs-btn-active-bg:#ff985c;--bs-btn-active-border-color:#ff985c;--bs-btn-active-color:#103c55;--bs-btn-focus-shadow-rgb:255,152,92}.btn-info,.btn-light{--bs-btn-bg:#d9f2fb;--bs-btn-border-color:#c5dce4;--bs-btn-color:#103c55;--bs-btn-hover-bg:#8ddbf0;--bs-btn-hover-border-color:#8ddbf0;--bs-btn-hover-color:#103c55;--bs-btn-active-bg:#8ddbf0;--bs-btn-active-border-color:#8ddbf0;--bs-btn-active-color:#103c55;--bs-btn-focus-shadow-rgb:24,181,165}.dropdown-item:active,.dropdown-item.active{background:#087d76;color:#fff}.form-check-input:checked{background-color:#087d76;border-color:#087d76}.form-check-input:focus{border-color:var(--focus);box-shadow:0 0 0 .2rem rgb(24 181 165 / .25)}.btn-close:focus{box-shadow:0 0 0 .2rem rgb(24 181 165 / .25)}
.toast-body{grid-template-columns:20px minmax(0,1fr) 32px}.toast-close{grid-column:3;justify-self:end;width:32px;height:32px;border:1px solid var(--bs-border-color);background:var(--bs-tertiary-bg);color:var(--bs-body-color);margin:0;padding:4px;cursor:pointer}.toast-close:hover,.toast-close:active{background:#d9f2fb;color:#103c55;border-color:#8ddbf0}.toast-close svg{width:18px;height:18px;stroke-width:2.2}

/* Center identity only on entry/error pages; keep application footers intact. */
.login-form-page .login-header{display:grid;grid-template-columns:36px minmax(0,1fr) 36px;column-gap:8px}.login-form-page .login-brand{grid-column:2;grid-row:1;justify-self:center}.login-form-page .login-theme{grid-column:3;grid-row:1;justify-self:end}.login-form-page .login-slogan{text-align:center}.login-form-page .error-card{margin-top:0}


/* Validation and disabled states use the same palette as normal controls. */
:root,[data-bs-theme=light]{--bs-form-invalid-color:#103c55;--bs-form-invalid-border-color:#ff985c;--bs-form-valid-color:#187649;--bs-form-valid-border-color:#187649}[data-bs-theme=dark]{--bs-form-invalid-color:#ff985c;--bs-form-valid-color:#d9f2fb;--bs-form-valid-border-color:#8ddbf0}
.btn-danger,.btn-warning{--bs-btn-disabled-bg:#ff985c;--bs-btn-disabled-border-color:#ff985c;--bs-btn-disabled-color:#103c55}.btn-secondary,.btn-dark{--bs-btn-disabled-bg:#103c55;--bs-btn-disabled-border-color:#103c55;--bs-btn-disabled-color:#fff}.btn-success{--bs-btn-disabled-bg:#187649;--bs-btn-disabled-border-color:#187649;--bs-btn-disabled-color:#fff}.btn-info,.btn-light{--bs-btn-disabled-bg:#d9f2fb;--bs-btn-disabled-border-color:#c5dce4;--bs-btn-disabled-color:#103c55}.btn-outline-secondary,.btn-outline-dark{--bs-btn-color:var(--bs-body-color);--bs-btn-border-color:var(--bs-border-color);--bs-btn-hover-bg:#103c55;--bs-btn-hover-border-color:#103c55;--bs-btn-hover-color:#fff;--bs-btn-active-bg:#103c55;--bs-btn-active-border-color:#103c55;--bs-btn-active-color:#fff;--bs-btn-focus-shadow-rgb:24,181,165;--bs-btn-disabled-color:var(--bs-secondary-color);--bs-btn-disabled-border-color:var(--bs-border-color)}.text-danger{color:var(--bs-form-invalid-color)!important}.text-success{color:var(--bs-success-text-emphasis)!important}.text-bg-danger,.text-bg-warning{color:#103c55!important}.invalid-tooltip{color:#103c55;background:#ff985c}.form-control.is-invalid,.was-validated .form-control:invalid{background-image:none}.form-select.is-invalid,.was-validated .form-select:invalid{--bs-form-select-bg-icon:none}.form-control.is-invalid:focus,.was-validated .form-control:invalid:focus,.form-select.is-invalid:focus,.was-validated .form-select:invalid:focus{border-color:#ff985c;box-shadow:0 0 0 .2rem rgb(255 152 92 / .25)}.form-control.is-valid:focus,.was-validated .form-control:valid:focus{box-shadow:0 0 0 .2rem rgb(24 118 73 / .25)}
.login-card .alert-danger{background:#d9f2fb;color:#103c55;border-color:#ff985c;border-radius:10px;padding:14px 16px;line-height:1.45}[data-bs-theme=dark] .login-card .alert-danger{background:#153e51;color:#ff985c;border-color:#ff985c}.status-bar.approved{background:#ff985c}
