
:root{--fm-primary:#2563eb;--fm-primary-dark:#1d4ed8;--fm-bg:#f6f8fc;--fm-surface:#fff;--fm-text:#172033;--fm-muted:#667085;--fm-border:#e6eaf0;--fm-success:#16a34a;--fm-warning:#d97706;--fm-danger:#dc2626;--fm-radius:14px;--fm-shadow:0 8px 24px rgba(16,24,40,.06);--fm-sidebar:272px}body{background:var(--fm-bg);color:var(--fm-text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif}#app{min-height:100vh}#app header{position:fixed;z-index:40;top:0;right:0;left:var(--fm-sidebar);height:72px;padding:0 32px;background:var(--fm-surface);color:var(--fm-text);border-bottom:1px solid var(--fm-border);box-shadow:none;display:flex;align-items:center;justify-content:space-between;gap:20px}#app header h1{display:none}.desktop-operation{font-size:13px;color:var(--fm-muted);font-weight:600}.desktop-operation strong{color:var(--fm-text);font-size:14px}.desktop-top-actions{display:flex;align-items:center;gap:12px;margin-left:auto}.desktop-icon{display:grid;place-items:center;width:36px;height:36px;border:1px solid var(--fm-border);border-radius:10px;background:#fff;color:var(--fm-muted);padding:0}.desktop-icon svg{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:1.8}.desktop-avatar{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:#dbeafe;color:var(--fm-primary-dark);font-size:12px;font-weight:800}.desktop-user{display:flex;align-items:center;gap:9px;font-weight:700;color:var(--fm-text)}.desktop-user #who{font-size:12px;font-weight:500;color:var(--fm-muted);max-width:210px}.desktop-user #who::first-line{color:var(--fm-text)}#menu-toggle{display:none!important}#app>nav{position:fixed!important;z-index:45;left:0;top:0;width:var(--fm-sidebar);height:100vh;padding:20px 12px!important;display:flex!important;flex-direction:column;gap:4px;background:var(--fm-surface);border-right:1px solid var(--fm-border);box-shadow:none;overflow-y:auto}#app>nav .menu{width:100%;position:relative}#app>nav .menu>button,#app>nav>.menu>button{display:flex!important;align-items:center;width:100%;min-height:42px;padding:10px 12px!important;border-radius:9px;background:transparent!important;color:#42526b!important;text-align:left;font-size:14px;font-weight:650}#app>nav .menu>button:hover,#app>nav .menu>button:focus{background:#eff6ff!important;color:var(--fm-primary)!important}#app>nav .menu>button.group-toggle>span:last-child{margin-left:auto;font-size:10px;color:#98a2b3}#app>nav .menu-items{position:static!important;display:none!important;min-width:0!important;padding:3px 0 7px!important;margin:0!important;border:0!important;border-radius:0!important;box-shadow:none!important;background:transparent!important}#app:not(.sidebar-collapsed)>nav .menu.expanded>.menu-items{display:block!important}#app>nav .menu-items button{display:flex!important;align-items:center;min-height:36px;padding:8px 12px 8px 38px!important;border-radius:8px;color:#667085!important;font-weight:550}#app>nav .menu-items button:hover{background:#f3f6fb!important;color:var(--fm-primary)!important}#app>nav .menu-items button.active-nav{background:#eff6ff!important;color:var(--fm-primary)!important;font-weight:750}.desktop-collapse{display:flex;align-items:center;gap:9px;margin-top:auto;width:100%;padding:11px 12px;border:0;background:transparent;color:#667085;font-weight:650;text-align:left}.desktop-collapse:hover{color:var(--fm-primary);background:#f5f8ff;border-radius:8px}.desktop-collapse svg{width:17px;height:17px;stroke:currentColor;fill:none;stroke-width:1.8}.wrap{max-width:none;width:auto;margin:0 0 0 var(--fm-sidebar);padding:104px 34px 34px}.card,section{border:1px solid var(--fm-border);border-radius:var(--fm-radius);box-shadow:var(--fm-shadow);background:var(--fm-surface)}button{background:var(--fm-primary);border-radius:9px;box-shadow:none;transition:background .15s,transform .15s}button:hover{background:var(--fm-primary-dark)}button.secondary{background:#f0f4fa;color:#344054}button.secondary:hover{background:#e6ecf5}.toolbar{margin-bottom:22px}.toolbar h2,#content>h2{font-size:22px;letter-spacing:-.45px}.filters{gap:12px;padding:4px 0}.filter{color:#667085}.filter select,input,select,textarea{border-color:#d9e0ea;border-radius:9px;background:#fff;min-height:40px}.table-wrap{border:1px solid var(--fm-border);border-radius:12px;box-shadow:none}th{background:#f8fafc;color:#667085;font-size:12px;font-weight:700;text-transform:none}td,th{padding:13px 14px;border-color:#edf0f5}tbody tr:hover{background:#f8fbff}.pager{padding-top:4px}.modal{background:rgba(15,23,42,.42);backdrop-filter:blur(3px)}.modal section{border:0;box-shadow:0 22px 58px rgba(16,24,40,.18)}.detail .field{background:#f8fafc;border:1px solid #edf0f5}.fm-dashboard{display:grid;gap:22px}.fm-dashboard-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.fm-dashboard-head h2{margin:0;font-size:26px;letter-spacing:-.65px}.fm-dashboard-head p{margin:7px 0 0;color:var(--fm-muted)}.fm-date-display{border:1px solid var(--fm-border);border-radius:9px;padding:9px 12px;background:#fff;font-size:13px;color:#475467;white-space:nowrap}.fm-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:16px}.fm-kpi{min-height:126px;padding:18px;border:1px solid var(--fm-border);border-radius:var(--fm-radius);background:#fff;box-shadow:var(--fm-shadow)}.fm-kpi-top{display:flex;align-items:center;justify-content:space-between;color:var(--fm-muted);font-size:13px;font-weight:700}.fm-kpi-icon{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;background:#eff6ff;color:var(--fm-primary)}.fm-kpi-icon svg{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:1.8}.fm-kpi strong{display:block;margin-top:18px;font-size:28px;letter-spacing:-1px}.fm-kpi span{display:block;margin-top:4px;font-size:12px;color:var(--fm-muted)}.fm-dashboard-grid{display:grid;grid-template-columns:minmax(280px,.85fr) minmax(440px,1.4fr);gap:18px}.fm-panel{padding:20px;border:1px solid var(--fm-border);border-radius:var(--fm-radius);background:#fff;box-shadow:var(--fm-shadow)}.fm-panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.fm-panel h3{margin:0;font-size:15px}.fm-panel a{color:var(--fm-primary);font-size:13px;font-weight:700;cursor:pointer}.fm-stock-row{display:grid;grid-template-columns:42px 1fr auto;align-items:center;gap:10px;padding:12px 0;border-bottom:1px solid #eef1f5}.fm-stock-row:last-child{border-bottom:0}.fm-stock-dot{width:10px;height:10px;border-radius:50%;justify-self:center}.fm-stock-dot.exp{background:#2563eb}.fm-stock-dot.dtcr{background:#f59e0b}.fm-stock-dot.ava{background:#dc2626}.fm-stock-label{font-weight:700;font-size:13px}.fm-stock-label small{display:block;margin-top:3px;color:var(--fm-muted);font-weight:500}.fm-stock-value{text-align:right;font-size:14px;font-weight:800}.fm-stock-value small{display:block;color:var(--fm-muted);font-weight:500}.fm-recent{width:100%;border-collapse:collapse;font-size:13px}.fm-recent th{padding:0 0 10px;background:transparent;text-align:left}.fm-recent td{padding:11px 0;border-bottom:1px solid #eef1f5}.fm-recent tr:last-child td{border-bottom:0}.fm-badge{display:inline-flex;align-items:center;padding:4px 8px;border-radius:999px;background:#eef2f7;color:#475467;font-size:11px;font-weight:750}.fm-badge.green{background:#ecfdf3;color:#15803d}.fm-badge.blue{background:#eff6ff;color:#2563eb}.fm-badge.orange{background:#fff7ed;color:#c2410c}.fm-empty{padding:20px 0;color:var(--fm-muted);font-size:13px}@media(min-width:901px){#app.sidebar-collapsed{--fm-sidebar:76px}#app.sidebar-collapsed>nav{padding:20px 10px!important;overflow:visible}#app.sidebar-collapsed>nav .menu>button{font-size:0;justify-content:center;padding:10px!important}#app.sidebar-collapsed>nav .menu>button span{font-size:0}#app.sidebar-collapsed>nav .menu-items{display:none!important}#app.sidebar-collapsed .desktop-collapse{font-size:0;justify-content:center}#app.sidebar-collapsed header{padding:0 24px}#app.sidebar-collapsed .wrap{padding-left:26px;padding-right:26px}}@media(max-width:900px){#app header{left:0;padding:0 16px}#app>nav{display:none!important;top:72px;width:min(280px,88vw);padding:16px 12px!important;box-shadow:12px 0 36px rgba(15,23,42,.15)}#app.sidebar-open>nav{display:flex!important}#app>nav::before{padding-bottom:18px}.wrap{margin:0;padding:92px 16px 24px}.desktop-operation{display:none}.desktop-top-actions .desktop-icon{display:none}.desktop-user #who{display:none}.fm-dashboard-grid{grid-template-columns:1fr}.fm-dashboard-head{flex-direction:column}.desktop-collapse{display:none}}@media(max-width:560px){.fm-kpis{grid-template-columns:1fr 1fr}.fm-kpi{min-height:110px;padding:14px}.fm-kpi strong{margin-top:12px;font-size:23px}.detail{grid-template-columns:1fr}}
.desktop-config{display:flex;align-items:center;min-height:42px;width:100%;padding:10px 12px;border:0;border-radius:9px;background:transparent;color:#667085;text-align:left;font:inherit;font-size:14px;font-weight:650;cursor:default}.desktop-config:disabled{opacity:1}.icon-button{display:grid;place-items:center;width:36px;height:36px;padding:0;border:1px solid var(--fm-border);border-radius:9px;background:#fff;color:#667085}.icon-button:hover{background:#f3f6fb;color:var(--fm-primary)}.fm-sidebar-icon{display:inline-grid;place-items:center;flex:0 0 20px;width:20px;height:20px;margin-right:10px;color:#667085}.fm-sidebar-icon svg{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:1.8}.fm-sidebar-label{overflow:hidden;white-space:nowrap}.tooltip{position:relative}.tooltip::after{content:attr(data-tooltip);position:absolute;left:calc(100% + 12px);top:50%;transform:translateY(-50%);z-index:80;opacity:0;pointer-events:none;white-space:nowrap;padding:6px 9px;border-radius:7px;background:#172033;color:#fff;font-size:12px;font-weight:600;transition:opacity .14s}.tooltip:hover::after{opacity:1}.table-toolbar{position:relative;display:flex;align-items:center;gap:6px}.table-actions{display:flex;align-items:center;gap:6px}.settings-popover,.context-menu{position:absolute;z-index:60;right:0;top:calc(100% + 8px);min-width:218px;padding:10px;border:1px solid var(--fm-border);border-radius:11px;background:#fff;box-shadow:0 16px 36px rgba(16,24,40,.14)}.settings-popover[hidden],.context-menu[hidden]{display:none}.settings-popover h4{margin:2px 4px 9px;font-size:11px;color:#667085;letter-spacing:.04em}.settings-popover label{display:flex;align-items:center;gap:9px;padding:7px 4px;font-size:13px;color:#344054}.settings-popover input{width:auto;min-height:auto}.context-cell{position:relative;width:54px;text-align:right}.context-menu{top:32px;min-width:148px}.context-menu button{display:block;width:100%;padding:8px 9px;background:transparent;color:#344054;text-align:left;font-size:13px}.context-menu button:hover{background:#f3f6fb;color:var(--fm-primary)}.filter-collapsed .filters{display:none}.filter-toggle.active{background:#eff6ff;color:var(--fm-primary)}#app>nav,#app header,.wrap{transition:left .2s ease,width .2s ease,margin .2s ease,padding .2s ease}#app>nav .menu>button .fm-sidebar-icon{color:inherit}#app.sidebar-collapsed>nav{overflow:hidden}#app.sidebar-collapsed>nav .fm-sidebar-label,#app.sidebar-collapsed>nav .desktop-config .fm-sidebar-label{display:none}#app.sidebar-collapsed>nav .fm-sidebar-icon{margin:0}#app.sidebar-collapsed>nav .menu>button{justify-content:center}#app.sidebar-collapsed>nav .desktop-config{justify-content:center;font-size:0}#app.sidebar-collapsed>nav .desktop-config .fm-sidebar-icon{display:inline-grid}#app.sidebar-collapsed>nav .menu>button span:last-child:not(.fm-sidebar-icon){display:none}#app.sidebar-collapsed>nav .tooltip::after{display:block}#app.sidebar-collapsed>nav .desktop-collapse{font-size:0}.desktop-collapse .fm-sidebar-icon{margin:0}@media(max-width:900px){#app.sidebar-collapsed>nav .fm-sidebar-label{display:inline}#app.sidebar-collapsed>nav .desktop-config{font-size:14px;justify-content:flex-start}#app.sidebar-collapsed>nav .desktop-config .fm-sidebar-icon{margin-right:10px}}
#app>nav{box-sizing:border-box}
