:root{--erp-bg:#f4f6f9;--erp-panel:#fff;--erp-ink:#1e293b;--erp-copy:#475569;--erp-muted:#94a3b8;--erp-primary:#2563eb;--erp-primary-dark:#1d4ed8;--erp-primary-soft:#eff6ff;--erp-border:#e2e8f0;--erp-green:#059669;--erp-amber:#d97706;--erp-red:#dc2626;--erp-sidebar:248px;color-scheme:light;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Microsoft YaHei",sans-serif}*{box-sizing:border-box}html,body{margin:0;min-height:100%}body{color:var(--erp-ink);background:var(--erp-bg);font-size:14px;-webkit-font-smoothing:antialiased}a{color:var(--erp-primary);text-decoration:none}button,input,select,textarea{font:inherit}.erp-layout{width:100vw;height:100vh;display:flex;overflow:hidden}.erp-sidebar{width:var(--erp-sidebar);flex:0 0 var(--erp-sidebar);display:flex;flex-direction:column;background:#fff;border-right:1px solid var(--erp-border);z-index:40}.erp-brand{height:68px;padding:14px 15px;display:flex;align-items:center;gap:11px;border-bottom:1px solid #f1f5f9}.erp-brand-mark{width:37px;height:37px;display:grid;place-items:center;border-radius:9px;color:#fff;background:linear-gradient(145deg,#2563eb,#1d4ed8);font-size:17px;font-weight:800;box-shadow:0 5px 14px rgba(37,99,235,.22)}.erp-brand-copy{min-width:0;display:flex;flex-direction:column;color:var(--erp-ink)}.erp-brand-copy strong{font-size:14px}.erp-brand-copy span{margin-top:2px;color:var(--erp-muted);font:9px ui-monospace,Consolas,monospace;letter-spacing:.08em}.erp-sidebar-close{display:none;margin-left:auto;width:32px;height:32px;border:0;border-radius:7px;color:var(--erp-copy);background:#f1f5f9;font-size:22px}.erp-nav{flex:1;overflow:auto;padding:13px 10px}.erp-nav::-webkit-scrollbar{width:4px}.erp-nav::-webkit-scrollbar-thumb{border-radius:4px;background:#dbe3ed}.erp-nav-group{margin-bottom:17px}.erp-nav-label{padding:0 10px 6px;color:var(--erp-muted);font-size:10px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.erp-nav-item{position:relative;min-height:48px;padding:7px 9px;display:flex;align-items:center;gap:10px;border-radius:7px;color:var(--erp-copy);transition:.15s}.erp-nav-item:hover{color:var(--erp-ink);background:#f8fafc}.erp-nav-item.active{color:var(--erp-primary);background:var(--erp-primary-soft)}.erp-nav-item.active:before{position:absolute;left:0;top:10px;bottom:10px;width:3px;border-radius:0 3px 3px 0;background:var(--erp-primary);content:""}.erp-nav-icon{width:29px;height:29px;flex:0 0 29px;display:grid;place-items:center;border-radius:7px;color:#475569;background:#f1f5f9;font-size:12px;font-weight:800}.erp-nav-icon.blue{color:#2563eb;background:#eff6ff}.erp-nav-icon.cyan{color:#0891b2;background:#ecfeff}.erp-nav-icon.violet{color:#7c3aed;background:#f5f3ff}.erp-nav-icon.indigo{color:#4f46e5;background:#eef2ff}.erp-nav-icon.teal{color:#0d9488;background:#f0fdfa}.erp-nav-icon.green{color:#059669;background:#ecfdf5}.erp-nav-icon.amber{color:#d97706;background:#fffbeb}.erp-nav-item>span:last-child{min-width:0;display:flex;flex-direction:column}.erp-nav-item strong{font-size:13px;line-height:1.25}.erp-nav-item small{margin-top:2px;color:var(--erp-muted);font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.erp-sidebar-footer{min-height:65px;padding:11px 13px;display:flex;align-items:center;gap:9px;border-top:1px solid var(--erp-border);background:#fafafa}.erp-avatar{width:34px;height:34px;display:grid;place-items:center;border-radius:50%;color:#1d4ed8;background:#dbeafe;font-weight:800}.erp-user-copy{min-width:0;flex:1;display:flex;flex-direction:column}.erp-user-copy strong{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.erp-user-copy span{margin-top:2px;color:var(--erp-muted);font-size:10px}.erp-sidebar-footer form{margin:0}.erp-logout{width:31px;height:31px;border:1px solid var(--erp-border);border-radius:7px;color:var(--erp-copy);background:#fff;cursor:pointer}.erp-logout:hover{color:var(--erp-red);border-color:#fecaca;background:#fef2f2}.erp-main{min-width:0;flex:1;display:flex;flex-direction:column}.erp-topbar{height:57px;flex:0 0 57px;padding:0 24px;display:flex;align-items:center;justify-content:space-between;background:#fff;border-bottom:1px solid var(--erp-border)}.erp-topbar-left,.erp-topbar-right,.erp-location{display:flex;align-items:center}.erp-menu-button{display:none;width:34px;height:34px;margin-right:10px;border:1px solid var(--erp-border);border-radius:7px;color:var(--erp-copy);background:#fff;cursor:pointer}.erp-location{gap:7px;font-size:13px}.erp-location span,.erp-location i{color:var(--erp-muted);font-style:normal}.erp-location strong{font-weight:700}.erp-topbar-right{gap:16px}.erp-system-state{display:flex;align-items:center;gap:6px;color:#64748b;font-size:11px}.erp-system-state i,.erp-footer i{width:6px;height:6px;border-radius:50%;background:#10b981;box-shadow:0 0 7px #10b981}.erp-topbar time{padding:5px 9px;border-radius:5px;color:#475569;background:#f1f5f9;font:12px ui-monospace,Consolas,monospace}.erp-scroll{flex:1;overflow:auto}.erp-workspace{padding:22px 24px 34px}.erp-footer{margin:0 24px;padding:15px 0 20px;display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--erp-border);color:var(--erp-muted);font-size:11px}.erp-footer span:first-child{display:flex;align-items:center;gap:7px}.messages{width:min(1380px,calc(100% - 48px));margin:16px auto 0;padding:0;list-style:none}.message{padding:11px 14px;border:1px solid #a7f3d0;border-radius:8px;color:#047857;background:#ecfdf5;font-size:13px}.message.error{color:#b91c1c;border-color:#fecaca;background:#fef2f2}.message.warning{color:#92400e;border-color:#fde68a;background:#fffbeb}.erp-sidebar-overlay{display:none}

/* Existing page normalization */
.erp-workspace>.shell,.erp-workspace>.erp-shell,.erp-workspace>.home-shell,.erp-workspace>main.shell,.erp-workspace>main.erp-shell,.erp-workspace>main.home-shell{width:100%!important;max-width:1400px!important;margin:0 auto 30px!important}.erp-workspace .crumb,.erp-workspace .breadcrumb{margin:0 0 13px!important;color:#94a3b8!important;font-size:12px!important}.erp-workspace .crumb a,.erp-workspace .breadcrumb a{color:#64748b!important}.erp-workspace .head,.erp-workspace .page-head{margin-bottom:18px!important}.erp-workspace .head h1,.erp-workspace .page-head h1,.erp-workspace .home-head h1{margin:4px 0 5px!important;color:#1e293b!important;font-size:clamp(24px,3vw,30px)!important;line-height:1.2!important}.erp-workspace .head p,.erp-workspace .page-head p,.erp-workspace .home-head p{color:#64748b!important;font-size:13px!important}.erp-workspace .eyebrow{color:#2563eb!important;font-size:10px!important;font-weight:800!important;letter-spacing:.13em!important}.erp-workspace .panel,.erp-workspace .card,.erp-workspace .info-card,.erp-workspace .schedule-card,.erp-workspace .summary-card,.erp-workspace .line-card{border-color:var(--erp-border)!important;border-radius:10px!important;background:#fff!important;box-shadow:0 1px 2px rgba(15,23,42,.025)!important}.erp-workspace :is(.btn,.button,.action,.home-button){min-height:36px!important;padding:7px 12px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:6px!important;border:1px solid #cbd5e1!important;border-radius:7px!important;color:#334155!important;background:#fff!important;font-size:12px!important;font-weight:700!important;line-height:1.2!important;box-shadow:none!important;cursor:pointer!important}.erp-workspace :is(.btn,.button,.action,.home-button):hover{color:#1d4ed8!important;border-color:#93c5fd!important;background:#f8fbff!important}.erp-workspace :is(.primary,.button-primary,.btn.primary){color:#fff!important;border-color:#2563eb!important;background:#2563eb!important}.erp-workspace :is(.primary,.button-primary,.btn.primary):hover{color:#fff!important;border-color:#1d4ed8!important;background:#1d4ed8!important}.erp-workspace :is(.danger,.button-danger){color:#b91c1c!important;border-color:#fecaca!important;background:#fff!important}.erp-workspace input:not([type=checkbox]):not([type=radio]),.erp-workspace select,.erp-workspace textarea{border:1px solid #cbd5e1!important;border-radius:7px!important;color:#1e293b!important;background:#fff!important;outline:none!important;box-shadow:none!important}.erp-workspace input:focus,.erp-workspace select:focus,.erp-workspace textarea:focus{border-color:#60a5fa!important;box-shadow:0 0 0 3px rgba(37,99,235,.09)!important}.erp-workspace table{font-variant-numeric:tabular-nums}.erp-workspace th{color:#64748b!important;background:#f8fafc!important;font-size:11px!important;font-weight:700!important;letter-spacing:.02em}.erp-workspace td{color:#334155!important}.erp-workspace tbody tr:hover{background:#f8fbff!important}.erp-workspace .status{font-size:11px!important}.erp-workspace .empty{border-radius:9px!important;color:#64748b!important;background:#fff!important}.erp-workspace .tabs{border-radius:9px!important}.erp-workspace .tab{font-size:12px!important}.erp-workspace .tab.active{color:#1d4ed8!important;background:#eff6ff!important}.erp-workspace .pager,.erp-workspace .pagination{font-size:12px!important}

/* Guest */
.erp-guest{min-height:100vh;background:linear-gradient(145deg,#f8fafc,#eef2ff)}.guest-topbar{height:62px;padding:0 max(22px,5vw);display:flex;align-items:center;background:#0f172a}.guest-topbar a{display:flex;align-items:center;gap:10px;color:#fff;font-weight:750}.guest-topbar span{width:30px;height:30px;display:grid;place-items:center;border-radius:7px;background:#2563eb}.guest-messages{width:min(1040px,calc(100% - 32px))}

@media(max-width:1024px){.erp-sidebar{position:fixed;inset:0 auto 0 0;width:min(320px,88vw);transform:translateX(-105%);box-shadow:0 20px 60px rgba(15,23,42,.18);transition:transform .2s}.erp-sidebar-open .erp-sidebar{transform:translateX(0)}.erp-sidebar-close{display:block}.erp-sidebar-overlay{position:fixed;inset:0;z-index:30;border:0;background:rgba(15,23,42,.38)}.erp-sidebar-open .erp-sidebar-overlay{display:block}.erp-menu-button{display:inline-grid;place-items:center}.erp-topbar{padding:0 16px}.erp-workspace{padding:18px 16px 30px}.erp-footer{margin:0 16px}.erp-system-state{display:none}}
@media(max-width:680px){.erp-topbar-right time{display:none}.erp-location span,.erp-location i{display:none}.erp-workspace{padding:14px 10px 28px}.erp-workspace>.shell,.erp-workspace>.erp-shell,.erp-workspace>.home-shell{margin-bottom:18px!important}.erp-footer{margin:0 10px;align-items:flex-start;flex-direction:column;gap:7px}.messages{width:calc(100% - 20px)}.erp-workspace .head,.erp-workspace .page-head{align-items:stretch!important;flex-direction:column!important}.erp-workspace :is(.filters,.search-panel){grid-template-columns:1fr!important;flex-direction:column!important}.erp-workspace :is(.filters,.search-panel) :is(input,select,.btn,.button){width:100%!important}.erp-workspace .actions{flex-wrap:wrap}}
