:root{--font-body:"Atkinson Hyperlegible",system-ui,-apple-system,"Segoe UI",sans-serif;--ink:#1d232b;--ink-muted:#5b6672;--surface:#f4f6f8;--card:#fff;--line:#e1e5ea;--night:#1c2b33;--night-2:#24363f;--night-ink:#b9c6cd;--mane:#b7791f;--mane-soft:#f6ead6;--mane-strong:#9a6416;--primary:#24597a;--status-good:#0ca30c;--status-warning:#fab219;--status-critical:#d03b3b;--status-neutral:#a3abb5;--bs-body-font-family:var(--font-body);--bs-body-color:var(--ink);--bs-body-bg:var(--surface);--bs-primary:var(--primary);--bs-primary-rgb:36,89,122;--bs-link-color:var(--primary);--bs-link-color-rgb:36,89,122;--bs-link-hover-color:#183f57;--bs-border-color:var(--line)}body,html{height:100%;margin:0;padding:0}body{background:var(--surface);color:var(--ink);font-family:var(--font-body);font-size:.95rem;font-variant-numeric:tabular-nums}h1,h2,h3,h4,h5,h6{color:var(--ink);font-weight:700;letter-spacing:-.01em}h3{font-size:1.5rem}h4{font-size:1.2rem}h5{font-size:1.05rem}label,legend{font-size:.875rem;font-weight:700}.btn-primary{--bs-btn-bg:var(--primary);--bs-btn-border-color:var(--primary);--bs-btn-hover-bg:#1d4b67;--bs-btn-hover-border-color:#1d4b67;--bs-btn-active-bg:#183f57;--bs-btn-disabled-bg:var(--primary)}.btn:focus-visible,.form-control:focus,.form-select:focus{border-color:#6a9ab8;box-shadow:0 0 0 .2rem rgba(36,89,122,.25)}.text-muted-ink{color:var(--ink-muted)}.btn-info,.btn-soft{--bs-btn-bg:#e4eef4;--bs-btn-color:var(--primary);--bs-btn-border-color:#e4eef4;--bs-btn-hover-bg:#d2e3ee;--bs-btn-hover-color:#183f57;--bs-btn-hover-border-color:#d2e3ee;--bs-btn-active-bg:#c2d8e7;--bs-btn-active-color:#183f57;--bs-btn-active-border-color:#c2d8e7;--bs-btn-disabled-bg:#e4eef4;--bs-btn-disabled-color:var(--primary)}.btn-warning{--bs-btn-bg:var(--mane-strong);--bs-btn-color:#fff;--bs-btn-border-color:var(--mane-strong);--bs-btn-hover-bg:#835512;--bs-btn-hover-color:#fff;--bs-btn-hover-border-color:#835512;--bs-btn-active-bg:#6f480f;--bs-btn-active-color:#fff;--bs-btn-disabled-bg:var(--mane-strong);--bs-btn-disabled-color:#fff}.btn-success{--bs-btn-bg:#1d7a46;--bs-btn-border-color:#1d7a46;--bs-btn-hover-bg:#17663a;--bs-btn-hover-border-color:#17663a}.btn-icon{--bs-btn-padding-x:0;--bs-btn-padding-y:0;font-size:.85rem;height:30px;justify-content:center;width:30px}.btn-group-actions,.btn-icon{align-items:center;display:inline-flex}.btn-group-actions{gap:4px}.page-wrapper{min-height:100vh}.sidebar-wrapper{background:var(--night);color:var(--night-ink);height:100%;left:-300px;position:fixed;top:0;transition:left .25s ease;width:260px;z-index:999}.page-wrapper.toggled .sidebar-wrapper{left:0}.sidebar-wrapper ul{list-style:none;margin:0;padding:0}.sidebar-wrapper a{text-decoration:none}.sidebar-content{height:calc(100% - 44px);overflow-y:auto}.sidebar-brand{align-items:center;border-bottom:3px solid var(--mane);display:flex;padding:18px 20px 14px}.sidebar-brand>a{color:#fff;flex-grow:1;font-size:1.05rem;font-weight:700}.sidebar-brand>a small{color:var(--mane);display:block;font-size:.78rem;font-weight:700;letter-spacing:.02em}#close-sidebar{color:var(--night-ink);cursor:pointer;font-size:18px}.sidebar-header{align-items:center;border-bottom:1px solid var(--night-2);display:flex;gap:12px;padding:16px 20px}.sidebar-header .user-pic{border:2px solid var(--mane);border-radius:50%;flex-shrink:0;height:52px;overflow:hidden;width:52px}.sidebar-header .user-pic img{height:100%;object-fit:cover;width:100%}.sidebar-header .user-info>span{display:block;line-height:1.3}.sidebar-header .user-name{color:#fff}.sidebar-header .user-role{font-size:12px}.sidebar-header .user-status{font-size:11px;margin-top:2px}.sidebar-header .user-status i{color:var(--status-good);font-size:8px;margin-right:4px}.sidebar-menu{padding:8px 0 16px}.sidebar-menu .header-menu span{color:#8fa3ad;display:inline-block;font-size:12px;font-weight:700;padding:14px 20px 4px}.menu-count{background:var(--mane);border-radius:999px;color:#fff;font-size:11px;font-weight:700;margin-left:auto;min-width:24px;padding:1px 7px;text-align:center}.sidebar-menu ul li a{align-items:center;border-left:3px solid transparent;color:var(--night-ink);display:flex;font-size:.9rem;gap:10px;padding:4px 16px 4px 20px}.sidebar-menu ul li a i{background:var(--night-2);border-radius:6px;flex-shrink:0;font-size:13px;height:28px;line-height:28px;text-align:center;width:28px}.sidebar-menu ul li a:hover{background:hsla(0,0%,100%,.04);color:#fff}.sidebar-menu ul li.hover>a{background:rgba(183,121,31,.12);border-left-color:var(--mane);color:#fff}.sidebar-menu ul li.hover>a i{background:var(--mane);color:#fff}.sidebar-menu ul li a i.text-danger{color:#f08a8a!important}.sidebar-menu ul li a i.text-warning{color:var(--status-warning)!important}.sidebar-footer{align-items:center;background:var(--night-2);bottom:0;display:flex;height:44px;justify-content:center;position:absolute;width:100%}.sidebar-footer>a{color:#7f939d;font-size:12px}.sidebar-footer>a:hover{color:#fff}#show-sidebar{border-radius:0 6px 6px 0;left:0;position:fixed;top:10px;transition:left .25s ease;width:38px;z-index:1000}.page-wrapper.toggled #show-sidebar{left:-40px}.page-content{overflow-x:hidden;padding:24px 24px 48px}@media screen and (min-width:768px){.page-wrapper.toggled .page-content{padding-left:290px}}@media screen and (max-width:767.98px){.page-content{padding:56px 12px 32px}}.page-head{align-items:flex-end;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;margin-bottom:20px}.page-head h3{margin:0}.page-head p{color:var(--ink-muted);margin:4px 0 0;max-width:72ch}.page-head .page-actions{display:flex;flex-wrap:wrap;gap:8px}.panel{background:var(--card);border:1px solid var(--line);border-radius:10px;margin-bottom:20px;padding:18px 20px}.panel>h4,.panel>h5{margin-bottom:4px}.panel .panel-sub{color:var(--ink-muted);font-size:.85rem;margin-bottom:12px}.todo-strip{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));margin-bottom:20px}.todo-item{align-items:center;background:var(--card);border:1px solid var(--line);border-radius:10px;color:var(--ink);display:flex;gap:14px;padding:14px 16px;text-decoration:none;transition:border-color .15s ease,transform .15s ease}.todo-item:hover{border-color:var(--mane);color:var(--ink)}.todo-item:focus-visible{outline:3px solid rgba(183,121,31,.5);outline-offset:2px}.todo-item .todo-count{font-size:2rem;font-weight:700;line-height:1;min-width:2.2ch;text-align:right}.todo-item .todo-label{font-size:.9rem;line-height:1.25}.todo-item .todo-label small{color:var(--ink-muted);display:block}.todo-item.has-items{background:linear-gradient(90deg,var(--mane-soft),var(--card) 60%);border-left:5px solid var(--mane)}.todo-item.is-empty .todo-count{color:var(--status-neutral)}.filter-bar{align-items:center;display:flex;flex-wrap:wrap;gap:6px;margin-bottom:16px}.filter-bar .filter-label{color:var(--ink-muted);font-size:.85rem;font-weight:700;margin-right:2px}.chip{align-items:center;background:var(--card);border:1px solid var(--line);border-radius:999px;color:var(--ink);display:inline-flex;font-size:.85rem;padding:4px 12px;text-decoration:none}.chip:hover{border-color:var(--primary);color:var(--primary)}.chip.is-active{background:var(--primary);border-color:var(--primary);color:#fff}.chip:focus-visible{outline:3px solid rgba(36,89,122,.35);outline-offset:1px}.accounting-table th[scope=row]{color:var(--ink);font-weight:700}.accounting-table td,.accounting-table th[scope=row]{font-size:.875rem;white-space:nowrap}.accounting-table tfoot>tr>*{border-bottom:0;border-top:2px solid var(--ink-muted)}.text-mane{color:var(--mane-strong)}.chip-static{background:#eef1f4;border-color:transparent;font-size:.8rem;padding:1px 10px}.notice{border-left:4px solid var(--mane)}.athlete-card{display:flex;flex-direction:column}.athlete-summary{align-items:center;border-radius:6px;display:flex;font-size:.875rem;font-weight:700;gap:8px;margin-bottom:8px;padding:6px 10px}.athlete-summary.is-good{background:#e7f5e7;color:#17602a}.athlete-summary.is-pending{background:#eef4f8;color:var(--primary)}.athlete-summary.is-missing{background:#fbeaea;color:#9b2c2c}.checklist{list-style:none;margin:0;padding:0}.checklist li{align-items:flex-start;border-top:1px solid var(--line);display:flex;font-size:.9rem;gap:10px;line-height:1.3;padding:7px 0}.checklist li>i{font-size:1rem;margin-top:2px;text-align:center;width:1.1em}.checklist .detail{color:var(--ink-muted);font-size:.85rem}.state-done{color:var(--status-good)}.state-pending{color:var(--primary)}.state-warning{color:#c98a00}.state-missing{color:var(--status-critical)}.chart-box{height:260px;position:relative}.chart-box.chart-tall{height:340px}.chart-data summary{color:var(--ink-muted);cursor:pointer}.chart-data summary,.chart-data table{font-size:.85rem;margin-top:8px}.stat-number{font-size:1.8rem;font-weight:700;line-height:1.1}.stat-caption{color:var(--ink-muted);font-size:.85rem}.dot{border:2px solid #fff;border-radius:50%;box-shadow:0 0 0 1px rgba(0,0,0,.15);display:inline-block;flex-shrink:0;height:14px;margin-right:.75rem;width:14px}.dot-good{background:var(--status-good)}.dot-warning{background:var(--status-warning)}.dot-critical{background:var(--status-critical)}.dot-neutral{background:var(--status-neutral)}.status-badge{align-items:center;background:#eef1f4;border-radius:999px;color:var(--ink);display:inline-flex;font-size:.8rem;font-weight:700;gap:6px;padding:2px 10px 2px 8px;white-space:nowrap}.status-badge:before{background:var(--status-neutral);border-radius:50%;content:"";height:8px;width:8px}.status-badge.is-good:before{background:var(--status-good)}.status-badge.is-warning:before{background:var(--status-warning)}.status-badge.is-critical:before{background:var(--status-critical)}.legend{color:var(--ink-muted);display:flex;flex-wrap:wrap;font-size:.85rem;gap:8px 20px;margin:8px 0 12px}.legend>span{align-items:center;display:inline-flex;gap:6px}.legend .swatch{border:1px solid rgba(0,0,0,.12);border-radius:3px;height:14px;width:14px}.help-icon{background:none;border:0;color:var(--primary);cursor:help;font-size:.95em;padding:0 2px;vertical-align:baseline}.help-icon:focus-visible{border-radius:50%;outline:2px solid var(--primary)}.help-note{background:#eef4f8;border-left:4px solid var(--primary);border-radius:8px;color:var(--ink);display:flex;font-size:.875rem;gap:10px;margin-bottom:16px;padding:10px 14px}.help-note>i{color:var(--primary);margin-top:3px}.help-note p:last-child{margin-bottom:0}.popover{--bs-popover-max-width:340px;font-family:var(--font-body)}.table{--bs-table-bg:transparent;vertical-align:middle}.table>thead th{border-bottom-width:2px;color:var(--ink-muted);font-size:.8rem;font-weight:700;white-space:nowrap}.table .datatable-filters th{font-weight:400;padding-top:0}.table .datatable-filters .form-control,.table .datatable-filters .form-select{min-width:0;width:100%}.table>tbody>tr.row-ok>*{box-shadow:inset 4px 0 0 var(--status-good);--bs-table-bg:#edf8ed}.table>tbody>tr.row-to-confirm>*{--bs-table-bg:#fff6e0}.table>tbody>tr.row-to-confirm>td:first-child{box-shadow:inset 4px 0 0 var(--status-warning)}.table>tbody>tr.row-no-longer-ok>*{--bs-table-bg:#fbeaea}.table>tbody>tr.row-no-longer-ok>td:first-child{box-shadow:inset 4px 0 0 var(--status-critical)}.table>tbody>tr.row-ok>td:not(:first-child){box-shadow:none}div.dt-container .dt-search input{min-width:240px}div.dt-container div.dt-layout-row{margin:.5rem 0}div.dt-buttons .btn{--bs-btn-bg:#fff;--bs-btn-color:var(--ink);--bs-btn-border-color:var(--line);--bs-btn-hover-bg:#eef1f4;--bs-btn-hover-color:var(--ink)}.actions-cell{text-align:right;white-space:nowrap}.file-link{align-items:center;display:inline-flex;gap:6px;margin-right:10px}.file-link,.table td[data-order]{white-space:nowrap}.table-sm>:not(caption)>*>*{padding:.45rem .4rem}table.dataTable>tbody>tr>td.dtr-control:before{color:var(--primary)}table.dataTable>tbody>tr.child ul.dtr-details>li{border-bottom-color:var(--line)}.user_card{background:#fff;border-radius:12px;border-top:5px solid var(--mane);box-shadow:0 12px 40px rgba(28,43,51,.18);display:flex;flex-direction:column;justify-content:center;margin:auto 0;max-width:600px;min-width:340px;padding:1.25rem 1.5rem;position:relative}.brand_logo_container{background:var(--night);border-radius:50%;height:150px;padding:8px;position:absolute;text-align:center;top:-75px;width:150px}.brand_logo{border:3px solid var(--mane);border-radius:50%;height:134px;width:134px}.form_container{align-items:center;flex-direction:column;margin-top:80px}.login_container{padding:0 2rem}.links{margin-top:6px}.alert-flash{margin-bottom:16px}.card-collapsed>:not(.card-header):not(.card-status){display:none}.profile-image:hover{cursor:pointer;opacity:.8}.borderRed{border:1px solid var(--status-critical)!important}.dropzone{background:#fafbfc;border:2px dashed var(--line)!important;border-radius:10px;margin:0 1rem 1rem}.btn-loading{color:transparent!important;pointer-events:none;position:relative}.btn-loading:after{animation:loader .5s linear infinite;border:2px solid #fff;border-radius:50%;border-right-color:transparent!important;border-top-color:transparent!important;content:"";display:block;height:1.2em;left:calc(50% - .6em);position:absolute!important;top:calc(50% - .6em);width:1.2em}@keyframes loader{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.se-pre-con{background:rgba(244,246,248,.8);display:none;inset:0;position:fixed;z-index:9999}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:1ms!important;transition:none!important}}@media print{#show-sidebar,.dt-buttons,.dt-length,.dt-paging,.dt-search,.page-actions,.sidebar-wrapper{display:none!important}.page-wrapper.toggled .page-content{padding-left:0}}.datepicker-dropdown{background:var(--card);border:1px solid var(--line);border-radius:8px;box-shadow:0 8px 24px rgba(28,43,51,.15);padding:6px;z-index:1060!important}.datepicker table tr td.active,.datepicker table tr td.active:hover{background:var(--primary)!important;color:#fff}.datepicker table tr td.today{background:var(--mane-soft)}.chip-static:hover{border-color:transparent;color:var(--ink)}