:root{--fm-accent:#4b80ac;--fm-accent-dark:#3a6a94;--fm-shell-900:#1a1a1a;--fm-shell-800:#222;--fm-shell-700:#2a2a2a;--fm-shell-600:#2c2c2c;--fm-shell-500:#333;--fm-shell-400:#444;--fm-shell-300:#252525;--fm-text-bright:#fff;--fm-text-base:#ccc;--fm-text-tertiary:#aaa;--fm-text-secondary:#999;--fm-text-muted:#888;--fm-text-dim:#666;--fm-success:#5cb85c;--fm-warning:#f0ad4e;--fm-danger:#d9534f;--fm-navbar-h:56px;--fm-sidebar-w:250px;--fm-z-sidebar:1000;--fm-z-overlay:999;--fm-z-navbar:1010}[data-bs-theme="dark"] .stat-card{background-color:#2d3748;box-shadow:0 1px 3px rgba(0,0,0,.5)}[data-bs-theme="dark"] .stat-card .stat-value{color:#e2e8f0}[data-bs-theme="dark"] .stat-card .stat-label{color:#a0aec0}#sidebar-wrapper{position:fixed;top:var(--fm-navbar-h);left:0;width:var(--fm-sidebar-w);height:calc(100% - var(--fm-navbar-h));background-color:var(--fm-shell-800);overflow-y:auto;overflow-x:hidden;z-index:var(--fm-z-sidebar);transition:transform .3s ease-in-out}#sidebar-wrapper::-webkit-scrollbar{width:6px}#sidebar-wrapper::-webkit-scrollbar-thumb{background-color:var(--fm-shell-400);border-radius:3px}#sidebar-wrapper .accordion-item{background-color:transparent;border:0;border-bottom:1px solid var(--fm-shell-400)}#sidebar-wrapper .accordion-button{background-color:var(--fm-shell-700);color:var(--fm-text-tertiary);font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;padding:12px 15px;box-shadow:none}#sidebar-wrapper .accordion-button:hover{background-color:var(--fm-shell-600);color:var(--fm-text-bright)}#sidebar-wrapper .accordion-button:not(.collapsed){background-color:var(--fm-shell-600);color:var(--fm-text-bright);box-shadow:none}#sidebar-wrapper .accordion-button:focus{box-shadow:none}#sidebar-wrapper .accordion-button::after{filter:invert(1) grayscale(1) brightness(2)}#sidebar-wrapper .accordion-button:not(.collapsed)::after{filter:invert(1) grayscale(1) brightness(2)}#sidebar-wrapper .accordion-body{padding:0;background-color:var(--fm-shell-800)}#sidebar-wrapper .list-group-item{background-color:transparent;border:0;padding:0;color:var(--fm-text-secondary)}#sidebar-wrapper .list-group-item.active{background-color:transparent;border-color:transparent;color:inherit}#sidebar-wrapper .sidebar-nav{list-style:none;padding:0;margin:0}#sidebar-wrapper .sidebar-nav li a{display:block;padding:10px 15px 10px 42px;color:var(--fm-text-secondary);font-size:13px;text-decoration:none;border-bottom:1px solid var(--fm-shell-300);transition:background-color .15s ease,color .15s ease,border-left .15s ease}#sidebar-wrapper .sidebar-nav li a:hover,#sidebar-wrapper .sidebar-nav li a:focus{color:var(--fm-text-bright);background-color:var(--fm-shell-700);border-left:3px solid var(--fm-accent);padding-left:39px;text-decoration:none}#sidebar-wrapper .sidebar-nav li a .fa{margin-right:8px;width:16px;text-align:center;color:var(--fm-text-dim)}#sidebar-wrapper .sidebar-nav li a:hover .fa{color:var(--fm-accent)}#sidebar-wrapper .sidebar-nav li.active a{color:var(--fm-text-bright);background-color:var(--fm-accent);border-left:3px solid var(--fm-text-bright);padding-left:39px}#sidebar-wrapper .sidebar-nav li.active a .fa{color:var(--fm-text-bright)}#page-content-wrapper{margin-left:var(--fm-sidebar-w);margin-top:var(--fm-navbar-h);padding:20px 30px;min-height:calc(100vh - var(--fm-navbar-h));transition:margin-left .3s ease-in-out}#top-navbar{background-color:var(--fm-shell-900);border:0;border-radius:0;margin-bottom:0;min-height:var(--fm-navbar-h);height:var(--fm-navbar-h);z-index:var(--fm-z-navbar)}#top-navbar .navbar-brand{color:var(--fm-text-bright);font-weight:700;font-size:20px;padding:15px 20px;letter-spacing:1px}#top-navbar .navbar-brand:hover{color:var(--fm-accent)}#top-navbar .dropdown-menu{background-color:var(--fm-shell-600);border:1px solid var(--fm-shell-400)}#top-navbar .dropdown-item:hover,#top-navbar .dropdown-item:focus{background-color:var(--fm-accent);color:var(--fm-text-bright)}#sidebar-toggle-btn{background:none;color:var(--fm-text-bright);font-size:20px;padding:15px;cursor:pointer}#sidebar-toggle-btn:hover{color:var(--fm-accent)}#sidebar-wrapper.collapsed{transform:translateX(calc(-1*var(--fm-sidebar-w)))}#page-content-wrapper.sidebar-hidden{margin-left:0}.stat-card{background-color:var(--fm-text-bright);border-radius:4px;box-shadow:0 1px 3px rgba(0,0,0,.12);padding:20px;margin-bottom:20px;border-left:4px solid var(--fm-accent);transition:box-shadow .2s ease}.stat-card:hover{box-shadow:0 3px 8px rgba(0,0,0,.18)}.stat-card .stat-icon{font-size:36px;color:var(--fm-accent);float:right;opacity:.3}.stat-card .stat-value{font-size:28px;font-weight:700;color:var(--fm-shell-500);margin-bottom:2px}.stat-card .stat-label{font-size:13px;color:var(--fm-text-muted);text-transform:uppercase;letter-spacing:.5px}.stat-card.card-success{border-left-color:var(--fm-success)}.stat-card.card-success .stat-icon{color:var(--fm-success)}.stat-card.card-warning{border-left-color:var(--fm-warning)}.stat-card.card-warning .stat-icon{color:var(--fm-warning)}.stat-card.card-danger{border-left-color:var(--fm-danger)}.stat-card.card-danger .stat-icon{color:var(--fm-danger)}@media(max-width:767px){#sidebar-wrapper{transform:translateX(calc(-1*var(--fm-sidebar-w)))}#sidebar-wrapper.active{transform:translateX(0)}#page-content-wrapper{margin-left:0;padding:15px}#sidebar-overlay{display:none;position:fixed;top:var(--fm-navbar-h);left:0;right:0;bottom:0;background-color:rgba(0,0,0,.5);z-index:var(--fm-z-overlay)}#sidebar-overlay.active{display:block}}.dropdown-toggle-no-caret::after{display:none}@media(max-width:767px){.card-header.d-flex.justify-content-between{flex-direction:column;align-items:flex-start!important;gap:10px}.card-header .d-flex.gap-2{flex-wrap:wrap}}@media(max-width:767px){.table-responsive table td,.table-responsive table th{font-size:13px}}th.fm-sortable{cursor:pointer;user-select:none;white-space:nowrap}th.fm-sortable:hover{background:rgba(0,0,0,.06)}th.fm-sortable::after{content:' ↕';opacity:.25;font-size:.75em}th.fm-sort-asc::after{content:' ▲';opacity:1;font-size:.75em}th.fm-sort-desc::after{content:' ▼';opacity:1;font-size:.75em}html{position:relative;min-height:100%}.form-section{margin-bottom:20px}.btn+.btn{margin-left:6px}