/* FineME v21 — scalable nav: fixed header + independently scrollable categories. */
@media screen {
 :root{--side:244px}
 .sidebar.fm-sidebar{display:flex;flex-direction:column;gap:0;padding:20px 13px 0;width:var(--side);overflow:hidden;box-sizing:border-box;z-index:90}
 .fm-sidebar .fm-nav-brand-row{display:flex;align-items:center;justify-content:space-between;min-height:48px;padding:0 9px;flex-shrink:0}
 .fm-sidebar .brand{font-size:23px;letter-spacing:1px;align-items:center;gap:10px;margin:0;white-space:nowrap}
 .fm-sidebar .brand-mark{font-size:36px}.fm-sidebar .brand-sub{font-size:8px;letter-spacing:2px;margin-top:5px}
 .fm-sidebar .fm-nav-edition{display:flex;gap:8px;align-items:center;padding:12px 11px;margin:9px 0 12px;border-top:1px solid var(--border);border-bottom:1px solid var(--border);font:9px 'IBM Plex Mono',monospace;color:#9aabbe;letter-spacing:.5px;white-space:nowrap;min-height:39px}
 .fm-sidebar .fm-nav-edition-right{margin-left:auto;color:#7c90a7}
 .fm-nav-search-wrap{padding:0 8px 12px;flex-shrink:0}
 .fm-nav-search-label{display:block;font-size:11px;color:#acbacd;margin-bottom:8px}
 .fm-nav-search-box{display:flex;align-items:center;gap:6px;background:#182535;border:1px solid #38465b;border-radius:10px;min-height:42px;padding:0 10px;color:#b8cadb}
 .fm-nav-search-box:focus-within{border-color:#e6a466}
 .fm-nav-search-box>span{font-size:24px;line-height:1}
 .fm-nav-search-box input{border:0;background:transparent;color:#f5f7fa;outline:0;min-width:0;width:100%;font-size:13px;min-height:40px;padding:0}
 .fm-nav-search-box input::placeholder{color:#a8b5c4;opacity:1}
 .fm-nav-scroll{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#41506a transparent;padding:0 6px 28px}
 .fm-sidebar .fm-nav-group{margin:2px 0 9px;border:1px solid transparent;border-radius:11px}
 .fm-sidebar .fm-nav-group summary{display:flex;align-items:center;gap:9px;list-style:none;min-height:43px;cursor:pointer;padding:9px 11px;color:#d3deeb;font-size:12px;font-weight:650;border-radius:9px}
 .fm-sidebar .fm-nav-group summary::-webkit-details-marker{display:none}
 .fm-sidebar .fm-nav-group summary:hover{background:#172435}
 .fm-nav-group-mark{display:inline-grid;place-items:center;color:#dbaa7c;width:24px;flex:0 0 24px;font-size:18px}
 .fm-nav-chevron{margin-left:auto;color:#9daec1;transition:transform .14s;font-size:19px}
 .fm-nav-group[open] .fm-nav-chevron{transform:rotate(180deg)}
 .fm-sidebar .fm-nav-group nav{display:flex;flex-direction:column;gap:3px;padding:3px 0 7px 10px}
 .fm-sidebar .fm-nav-group nav a{display:flex;align-items:center;gap:11px;border:1px solid transparent;color:#bac8d8;border-radius:9px;padding:11px 10px;min-height:43px;font-size:12px;line-height:1.45;white-space:normal;min-width:0;overflow-wrap:anywhere}
 .fm-sidebar .fm-nav-group nav a>span{display:inline-block;width:21px;min-width:21px;text-align:center;color:#92a6bb;font-size:18px}
 .fm-sidebar .fm-nav-group nav a:hover{background:#1d2b3e;color:#fff}
 .fm-sidebar .fm-nav-group nav a.active{background:#493621;border-color:#815d39;color:#ffe1bc}
 .fm-sidebar .fm-nav-group nav a.active>span{color:#ffd19a}
 .fm-sidebar .fm-nav-group nav a.active::after{display:none}
 .fm-nav-no-results{font-size:12px;line-height:1.8;color:#e1c2a7;padding:15px}
 .fm-nav-bottom{padding:12px 13px max(14px,env(safe-area-inset-bottom));flex:0 0 auto;border-top:1px solid #28364b;background:#0d1521;display:grid;gap:10px}
 .fm-nav-motto{font-size:9px;letter-spacing:.4px;line-height:1.6;color:#9cadbf}
 .fm-nav-admin{min-height:42px;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:9px 10px;border-radius:7px;border:1px solid #39475b;color:#ffdbb5;font-size:12px}
 .fm-nav-toggle,.fm-nav-close{display:none}
 .fm-nav-backdrop{display:none}
}
@media screen and (max-width:980px){
 .sidebar.fm-sidebar{position:fixed;inset:0 auto 0 0;width:min(330px,calc(100vw - 45px));height:100dvh;padding:13px 13px 0;transform:translateX(-103%);transition:transform .2s ease;box-shadow:12px 0 40px #0007;border:0;border-right:1px solid #33445c;overflow:hidden;z-index:105;flex-wrap:nowrap;background:#0d1521}
 .sidebar.fm-sidebar[data-open="true"]{transform:translateX(0)}
 .fm-nav-backdrop:not([hidden]){display:block;position:fixed;inset:0;background:#020914bd;z-index:100}
 .fm-nav-toggle{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:44px;height:44px;flex:0 0 auto;padding:0 10px;color:#f4dbbd;background:#182535;border:1px solid #445064;border-radius:9px;cursor:pointer;font-size:16px}
 .fm-nav-close{display:grid;place-items:center;width:44px;height:44px;background:#172535;border:1px solid #374558;border-radius:9px;color:#f9e1c1;cursor:pointer;font-size:26px;line-height:1}
 .fm-sidebar .fm-nav-group nav:first-of-type{width:auto;justify-content:flex-start;overflow:visible;flex-direction:column;align-items:stretch;gap:3px}
 .fm-sidebar .fm-nav-group nav:first-of-type a{font-size:12px;padding:11px 10px;white-space:normal;border-radius:9px;min-height:43px}
 .fm-sidebar .fm-nav-group nav a>span{display:inline-block}
 .fm-sidebar .fm-nav-group{display:block}
 .fm-sidebar .fm-nav-edition{display:flex}.fm-sidebar .fm-nav-bottom{display:grid}
 .fm-sidebar .fm-nav-group summary{min-height:44px}
 .topbar{gap:10px;justify-content:space-between}
 .app{margin-left:0}
 body.fm-nav-open{overflow:hidden}
}
@media screen and (max-width:600px){
 .topbar{padding-left:12px;padding-right:12px;min-height:56px;height:auto}
 .topbar .breadcrumb{min-width:0;flex:1;overflow:hidden;text-overflow:ellipsis}
 .topbar .breadcrumb-page{font-size:10px}
 .topbar .top-actions{gap:8px}
 .fm-nav-toggle{min-width:44px;padding:0 9px}
}
@media (prefers-reduced-motion:reduce){.sidebar.fm-sidebar{transition:none}.fm-nav-chevron{transition:none}}
@media print{.sidebar.fm-sidebar,.fm-nav-toggle,.fm-nav-backdrop{display:none!important}}
