﻿.erp-app .page{min-height:100vh;margin-right:var(--ui-sidebar);transition:margin-right .24s var(--ui-ease)}
.premium-sidebar{position:fixed;z-index:90;top:0;right:0;bottom:0;width:var(--ui-sidebar);display:flex;flex-direction:column;padding:14px 12px 12px;color:#fff;background:linear-gradient(180deg,var(--ui-nav) 0%,#0d3c2b 52%,#0b2e22 100%);border-left:1px solid rgba(255,255,255,.055);box-shadow:-14px 0 50px rgba(15,23,42,.06)}
.premium-brand{display:flex;align-items:center;gap:11px;min-height:68px;padding:8px 8px 14px;border-bottom:1px solid rgba(255,255,255,.075)}.brand-company-logo,.brand-mark{width:44px;height:44px;flex:0 0 44px;border-radius:14px;object-fit:contain;background:#fff;padding:5px;box-shadow:0 10px 24px rgba(0,0,0,.18)}.brand-mark{display:grid;place-items:center;padding:0;background:linear-gradient(145deg,#0a7b4e,#09603d);color:#fff;font-size:18px;font-weight:900}.brand-copy{min-width:0;display:grid;gap:1px}.brand-copy strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px;letter-spacing:.01em}.brand-copy small{color:#7f8da3;font-size:9px;font-weight:700;letter-spacing:.08em}.sidebar-close{display:none;margin-right:auto;width:34px;height:34px;border:1px solid rgba(255,255,255,.1);border-radius:10px;background:rgba(255,255,255,.04);color:#fff;font-size:20px}
.sidebar-quick{display:grid;grid-template-columns:1fr 1fr;gap:7px;padding:12px 4px 8px}.sidebar-quick a{display:flex;align-items:center;justify-content:center;gap:6px;min-height:36px;padding:6px 8px;border:1px solid rgba(255,255,255,.075);border-radius:10px;background:rgba(255,255,255,.035);color:#d8e2f0;font-size:10px;font-weight:800}.sidebar-quick a:hover{background:rgba(10,123,78,.17);border-color:rgba(88,197,139,.22);color:#fff}
.premium-nav{flex:1;overflow:auto;padding:6px 3px 14px;scrollbar-width:thin;scrollbar-color:#2a3852 transparent}.premium-nav>a,.nav-section-links a{position:relative;display:flex;align-items:center;gap:10px;min-height:42px;margin:2px 0;padding:9px 10px;border-radius:11px;color:#aebcd0;font-size:11.5px;font-weight:650;transition:.16s ease}.premium-nav>a:hover,.nav-section-links a:hover{background:rgba(255,255,255,.055);color:#fff}.premium-nav a.active,.nav-section-links a.active{background:linear-gradient(90deg,rgba(10,123,78,.2),rgba(10,123,78,.08));color:#fff;box-shadow:inset -3px 0 #58c58b}.nav-icon,.nav-section-symbol{display:grid;place-items:center;width:25px;height:25px;flex:0 0 25px;border-radius:8px;background:rgba(255,255,255,.045);color:#8fa2bc!important;font-size:11px}.nav-section{margin:2px 0}.nav-section-toggle{display:grid;width:100%;grid-template-columns:25px 1fr 16px;align-items:center;gap:10px;min-height:43px;padding:9px 10px;border:0;border-radius:11px;background:transparent;color:#b9c7d9;text-align:right}.nav-section-toggle:hover{background:rgba(255,255,255,.045);color:#fff}.nav-section-toggle b{font-size:11.5px}.nav-section-toggle i{font-style:normal;color:#62738d;transition:transform .18s ease}.nav-section.open .nav-section-toggle i{transform:rotate(180deg)}.nav-section-links{display:grid;grid-template-rows:0fr;padding-right:10px;overflow:hidden;transition:grid-template-rows .22s var(--ui-ease)}.nav-section-links>*{overflow:hidden}.nav-section.open .nav-section-links{grid-template-rows:1fr}.nav-section:not(.open) .nav-section-links a{display:none}
.premium-sidebar-footer{padding:10px 4px 2px;border-top:1px solid rgba(255,255,255,.075)}.logout-form button{width:100%;min-height:40px;border:1px solid rgba(255,255,255,.08);border-radius:11px;background:rgba(255,255,255,.04);color:#b9c7d9;font-size:11px;font-weight:750}.logout-form button:hover{background:rgba(220,38,38,.1);border-color:rgba(248,113,113,.18);color:#fecaca}
.premium-topbar{position:sticky;z-index:45;top:0;height:var(--ui-topbar);display:grid;grid-template-columns:minmax(240px,1fr) auto minmax(240px,1fr);align-items:center;gap:16px;padding:0 clamp(18px,2.2vw,32px);background:rgba(248,250,252,.88);backdrop-filter:blur(18px) saturate(1.2);border-bottom:1px solid rgba(203,213,225,.68)}.topbar-start,.topbar-end{display:flex;align-items:center;gap:10px;min-width:0}.topbar-end{justify-content:flex-start}.topbar-center{min-width:0;text-align:center}.topbar-workspace-title{display:block;max-width:40vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#0f172a;font-size:15px;font-weight:850}.user-box{display:grid;min-width:0}.user-box b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11.5px}.user-box span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--ui-muted);font-size:9.5px}.menu-toggle{display:none;width:40px;height:40px;border:1px solid var(--ui-line);border-radius:11px;background:#fff;box-shadow:var(--ui-shadow-xs);font-size:16px}.topbar-badge{display:flex;align-items:center;gap:6px;min-height:34px;padding:5px 9px;border:1px solid var(--ui-line);border-radius:var(--ui-r-pill);background:#fff;color:var(--ui-muted);font-size:9px;font-weight:800}.topbar-badge .dot{width:7px;height:7px;border-radius:50%;background:var(--ui-success);box-shadow:0 0 0 3px var(--ui-success-soft)}.topbar-badge.offline .dot{background:var(--ui-danger);box-shadow:0 0 0 3px var(--ui-danger-soft)}.pwa-install-btn{min-height:36px;padding:0 12px;border:1px solid #cce7d8;border-radius:10px;background:#f0f8f3;color:#09603d;font-size:10px;font-weight:850}.pwa-install-btn:hover{background:#e0f3e8}
.sidebar-backdrop{display:none;position:fixed;z-index:85;inset:0;background:rgba(15,23,42,.46);backdrop-filter:blur(2px)}.mobile-bottom-nav{display:none}.app-nav-loader{position:fixed;z-index:9990;top:0;right:0;left:0;height:3px;background:transparent;overflow:hidden}.app-nav-loader span{display:block;width:40%;height:100%;background:linear-gradient(90deg,transparent,#0a7b4e,#58c58b,transparent);animation:ui-loader 1s linear infinite}@keyframes ui-loader{from{transform:translateX(250%)}to{transform:translateX(-250%)}}
.branch-switcher{min-width:0}.branch-switcher form{margin:0}.branch-switcher select,.branch-switcher.branch-fixed span{display:flex;align-items:center;min-height:36px;max-width:220px;padding:6px 10px;border:1px solid var(--ui-line);border-radius:10px;background:#fff;color:var(--ui-text-2);font-size:9.5px;font-weight:800;box-shadow:var(--ui-shadow-xs)}.branch-switcher select{padding-inline-end:28px}.branch-switcher.branch-fixed span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sidebar-pwa-install{display:flex;width:100%;align-items:center;justify-content:center;gap:7px;min-height:40px;margin-bottom:7px;border:1px solid rgba(88,197,139,.2);border-radius:11px;background:rgba(10,123,78,.12);color:#e0f3e8;font-size:10px;font-weight:850}.sidebar-pwa-install:hover{background:rgba(10,123,78,.2);color:#fff}

/* v3.3.0 — persistent company/branch workspace scope */
.workspace-scope-card{margin:10px 4px 4px;padding:11px;border:1px solid rgba(88,197,139,.18);border-radius:13px;background:linear-gradient(145deg,rgba(10,123,78,.13),rgba(15,23,42,.22));box-shadow:inset 0 1px rgba(255,255,255,.025)}
.workspace-scope-head{display:grid;grid-template-columns:32px minmax(0,1fr) auto;align-items:center;gap:9px}.workspace-scope-icon{display:grid;place-items:center;width:32px;height:32px;border-radius:10px;background:rgba(88,197,139,.15);color:#cce7d8;font-size:14px}.workspace-scope-head>div{min-width:0;display:grid;gap:1px}.workspace-scope-head small{color:#7f91ab;font-size:8.5px;font-weight:800}.workspace-scope-head strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#f8fafc;font-size:11.5px}.workspace-scope-state{padding:4px 6px;border-radius:999px;font-size:7.5px;font-weight:900}.workspace-scope-state.company{background:rgba(16,185,129,.14);color:#a7f3d0}.workspace-scope-state.branch{background:rgba(59,130,246,.15);color:#cce7d8}
.workspace-scope-form{display:grid;gap:5px;margin-top:9px}.workspace-scope-form label{color:#8fa2bc;font-size:8px;font-weight:800}.workspace-scope-form select,.workspace-scope-fixed{width:100%;min-height:38px;padding:7px 9px;border:1px solid rgba(148,163,184,.18);border-radius:10px;background:#111d31;color:#f8fafc;font-size:10px;font-weight:800;outline:none}.workspace-scope-form select:focus{border-color:#58c58b;box-shadow:0 0 0 3px rgba(59,130,246,.14)}.workspace-scope-fixed{display:flex;align-items:center;margin-top:9px}.workspace-scope-card p{margin:7px 1px 0;color:#71829a;font-size:7.8px;line-height:1.65}
.branch-switcher-topbar{display:flex;align-items:center;gap:7px}.branch-switcher-caption{color:var(--ui-muted);font-size:8.5px;font-weight:850;white-space:nowrap}.branch-switcher-topbar select,.branch-switcher-topbar .branch-fixed span{min-width:150px;max-width:230px}.branch-switcher-topbar select{border-color:#cce7d8;background:#fff}.branch-switcher-topbar select:focus{border-color:#58c58b;box-shadow:0 0 0 3px rgba(59,130,246,.1)}


/* v3.5.0 app-style navigation */
.soft-navigation-ready .premium-nav a[data-soft-nav="1"],
.soft-navigation-ready .sidebar-quick a,
.soft-navigation-ready .mobile-bottom-nav a{cursor:pointer}
.premium-nav a{isolation:isolate}
.premium-nav a::after{content:"";position:absolute;inset-block:8px;inset-inline-start:0;width:3px;border-radius:3px;background:transparent;transform:scaleY(.25);transition:.18s ease}
.premium-nav a.active::after{background:linear-gradient(180deg,#58c58b,#818cf8);transform:scaleY(1);box-shadow:0 0 12px rgba(88,197,139,.55)}
.premium-nav a.active{box-shadow:inset 0 0 0 1px rgba(88,197,139,.12),0 8px 24px rgba(2,6,23,.12)!important}
.premium-nav a.is-loading .nav-icon,.sidebar-quick a.is-loading span:first-child{animation:nav-icon-pulse .75s ease-in-out infinite alternate}
@keyframes nav-icon-pulse{to{transform:scale(.82);opacity:.5}}
.nav-section-toggle{position:relative;overflow:hidden}
.nav-section.open>.nav-section-toggle{background:linear-gradient(90deg,rgba(59,130,246,.08),transparent);color:#f8fafc}
.nav-section.open>.nav-section-toggle::before{content:"";position:absolute;inset-inline-start:0;top:10px;bottom:10px;width:2px;border-radius:2px;background:rgba(88,197,139,.45)}
.app-navigating #appContent{opacity:.58;transform:translateY(2px);pointer-events:none;transition:opacity .12s ease,transform .12s ease}
#appContent{transition:opacity .14s ease,transform .14s ease}
.floating-home-refresh{position:fixed;z-index:82;left:24px;bottom:24px;width:54px;height:54px;border:1px solid rgba(255,255,255,.2);border-radius:18px;background:linear-gradient(145deg,#0f172a,#1e3a8a);color:#fff;box-shadow:0 18px 40px rgba(15,23,42,.28);display:grid;place-items:center;cursor:pointer;transition:.18s ease}
.floating-home-refresh:hover{transform:translateY(-3px);box-shadow:0 22px 48px rgba(15,23,42,.34)}
.floating-home-refresh .floating-home-icon{font-size:20px;line-height:1}
.floating-home-refresh .floating-refresh-icon{position:absolute;right:7px;bottom:6px;width:17px;height:17px;border-radius:50%;display:grid;place-items:center;background:#fff;color:#09603d;font-size:11px;font-weight:900}
.floating-home-refresh.is-refreshing .floating-refresh-icon{animation:hard-refresh-spin .65s linear infinite}
@keyframes hard-refresh-spin{to{transform:rotate(360deg)}}
@media(max-width:760px){.floating-home-refresh{left:14px;bottom:calc(84px + env(safe-area-inset-bottom));width:46px;height:46px;border-radius:15px}.floating-home-refresh .floating-home-icon{font-size:18px}}
