*{box-sizing:border-box;margin:0;padding:0}:root{--primary:#e81717;--primary-hover:#c91414;--primary-tint:#fde7e9;--dark:#262343;--dark-deep:#1e1b35;--dark-inverse:#121020;--bg-main:#f9f9fb;--bg-secondary:#e7e7ef;--bg-white:#fff;--tx-primary:#262343;--tx-secondary:#5c5a72;--tx-tertiary:#9291a1;--tx-inverse:#f9f9fb;--border:#e7e7ef;--border-light:#f0f0f4;--green:#72d32c;--green-tint:#e3f6d5;--orange:#f0470f;--blue:#6f42f5;--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--radius-xl:20px;--sidebar-width:224px;--topbar-h:56px;--fs-cap:11px;--fs-sm:12px;--fs-base:13px;--fs-tbl:13.5px;--fs-md:14px;--fs-h3:15px;--fs-h2:18px;--fs-h1:22px;--fs-val-sm:24px;--fs-val:30px;--fs-val-xl:34px;--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:20px;--sp-6:24px;--ok:#1a7a3e;--ok-bg:#e6f6ec;--warn:#b5790f;--warn-bg:#fef3e2;--err:#c81e1e;--err-bg:#fde8e8;--mut:#565b6b;--mut-bg:#eef0f4;--info:#6f42f5;--info-bg:#efeafe;--mut-soft:#9291a1;--bg-hover:#f4f4f8;--bg-light:#f4f4f8;--row-hover:#fafafa}html{scrollbar-gutter:stable}body{background:var(--bg-main);color:var(--tx-primary);-webkit-font-smoothing:antialiased;font-family:Manrope,-apple-system,BlinkMacSystemFont,sans-serif;font-size:14px}#root{width:100%;min-height:100vh;display:flex}input,select,textarea,button{font-family:inherit}.page-placeholder{min-height:320px;color:var(--tx-tertiary);flex-direction:column;justify-content:center;align-items:center;gap:12px;display:flex}.placeholder-icon{font-size:48px;line-height:1}.placeholder-title{color:var(--tx-secondary);margin:0;font-size:20px;font-weight:700}.placeholder-desc{margin:0;font-size:14px}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}.page-header{justify-content:space-between;align-items:flex-start;gap:var(--sp-4);flex-wrap:wrap;margin-bottom:18px;display:flex}.page-title{font-size:var(--fs-h1);letter-spacing:-.3px;color:var(--tx-primary);align-items:center;gap:10px;margin:0;font-weight:800;display:flex}.page-title svg{color:var(--tx-primary);flex-shrink:0}.page-subtitle{font-size:var(--fs-base);color:var(--tx-secondary);margin:6px 0 0;font-weight:600}@keyframes rp-spin{to{transform:rotate(360deg)}}.login-page{background:var(--bg-main);justify-content:center;align-items:center;width:100%;min-height:100vh;display:flex}.login-card{background:var(--bg-white);border:1px solid var(--border);border-radius:var(--radius-xl);width:100%;max-width:420px;padding:44px 48px;box-shadow:0 4px 32px #26234314}.login-logo{color:var(--dark);letter-spacing:-.5px;margin-bottom:6px;font-size:26px;font-weight:800}.login-logo span{color:var(--primary)}.login-title{font-size:var(--fs-h3);color:var(--tx-secondary);margin-bottom:32px;font-weight:600}.login-form{flex-direction:column;gap:18px;display:flex}.field{flex-direction:column;gap:7px;display:flex}.field label{font-size:var(--fs-base);color:var(--tx-primary);font-weight:600}.field input{border:1.5px solid var(--border);border-radius:var(--radius-md);font-size:var(--fs-md);color:var(--tx-primary);background:var(--bg-main);outline:none;padding:11px 14px;transition:border-color .15s,background .15s}.field input:focus{border-color:var(--primary);background:var(--bg-white)}.login-error{background:var(--err-bg);border:1px solid var(--err-bg);border-radius:var(--radius-md);font-size:var(--fs-base);color:var(--err);padding:10px 14px;font-weight:600}.login-btn{background:var(--primary);color:#fff;border-radius:var(--radius-md);font-size:var(--fs-h3);cursor:pointer;letter-spacing:.1px;border:none;margin-top:4px;padding:12px;font-weight:700;transition:background .15s}.login-btn:hover:not(:disabled){background:var(--primary-hover)}.login-btn:disabled{opacity:.6;cursor:not-allowed}.layout{width:100%;min-height:100vh;display:flex}.sidebar{width:var(--sidebar-width);background:var(--dark-deep);z-index:100;flex-direction:column;display:flex;position:fixed;top:0;bottom:0;left:0}.sidebar-logo{border-bottom:1px solid #ffffff12;padding:18px 20px 16px}.sidebar-logo-img{width:auto;height:28px;display:block}.logo-text{color:#fff;letter-spacing:-.5px;font-size:20px;font-weight:800}.logo-text span{color:var(--primary)}.sidebar-nav{flex:1;padding:10px;overflow-y:auto}.nav-section{margin-bottom:6px}.nav-section-label{width:100%;font-size:var(--fs-cap);letter-spacing:.8px;text-transform:uppercase;color:#ffffff47;cursor:pointer;text-align:left;background:0 0;border:none;justify-content:space-between;align-items:center;gap:6px;padding:10px 12px 4px;font-family:inherit;font-weight:700;transition:color .15s;display:flex}.nav-section-label:hover{color:#ffffff8c}.nav-chevron{opacity:.55;flex-shrink:0;transition:transform .18s}.nav-section.collapsed .nav-chevron{transform:rotate(-90deg)}.nav-item{color:#a9a9bc;font-size:var(--fs-base);border-radius:var(--radius-md);align-items:center;gap:10px;margin-bottom:2px;padding:10px 12px;font-weight:500;text-decoration:none;transition:all .15s;display:flex}.nav-item:hover{color:#fff;background:#ffffff12}.nav-item.active{color:#fff;background:var(--primary)}.nav-item.active svg{opacity:1}button.nav-item{cursor:pointer;text-align:left;background:0 0;border:none;width:100%;font-family:inherit}.main-wrap{margin-left:var(--sidebar-width);flex-direction:column;flex:1;min-width:0;display:flex}.topbar{height:var(--topbar-h);background:var(--bg-white);border-bottom:1px solid var(--border);z-index:50;justify-content:space-between;align-items:center;padding:0 28px;display:flex;position:sticky;top:0}.topbar-right{align-items:center;gap:16px;margin-left:auto;display:flex}.topbar-user{font-size:var(--fs-base);color:var(--tx-secondary);font-weight:600}.job-chip{border:1.5px solid var(--primary);background:color-mix(in srgb, var(--primary) 8%, var(--bg-white));color:var(--primary);font-size:var(--fs-base);white-space:nowrap;border-radius:999px;align-items:center;gap:8px;padding:7px 14px;font-weight:700;text-decoration:none;transition:filter .15s;display:inline-flex}.job-chip:hover{filter:brightness(1.05)}.job-chip-dot{background:var(--primary);border-radius:50%;width:8px;height:8px;animation:1s ease-in-out infinite job-pulse}@keyframes job-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.35;transform:scale(.65)}}.btn-logout{border:1px solid var(--border);border-radius:var(--radius-md);font-size:var(--fs-base);color:var(--tx-secondary);cursor:pointer;background:0 0;align-items:center;gap:6px;padding:7px 14px;font-weight:600;transition:all .15s;display:flex}.btn-logout:hover{background:var(--bg-secondary);color:var(--tx-primary);border-color:var(--tx-tertiary)}.main-content{flex:1;min-width:0;padding:28px}.public-shell{max-width:1400px;margin:0 auto;padding:28px}@media (width<=900px){.public-shell{padding:16px 14px}}@media (width<=560px){.public-shell{padding:14px 10px}}.pubshell-tabs{flex-wrap:wrap;align-items:center;gap:14px;margin-bottom:18px;display:flex}.pubshell-content{min-height:60vh}.pubshell-label{font-size:var(--fs-h3);color:var(--tx-primary);font-weight:800}.pubshell-invalid{text-align:center;max-width:560px;margin:80px auto;padding:0 20px}.pubshell-invalid h1{font-size:var(--fs-h1);color:var(--tx-primary);margin-bottom:10px;font-weight:800}.pubshell-invalid p{font-size:var(--fs-md);color:var(--tx-secondary)}.topbar-burger{color:var(--tx-primary);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;margin-right:6px;padding:6px;display:none}.sidebar-backdrop{display:none}@media (width<=860px){.sidebar{width:250px;transition:transform .25s;transform:translate(-100%);box-shadow:0 0 40px #00000059}.sidebar.open{transform:translate(0)}.sidebar-backdrop.show{z-index:99;background:#00000073;display:block;position:fixed;inset:0}.main-wrap{margin-left:0}.topbar-burger{display:inline-flex}.topbar{padding:0 14px}.main-content{padding:16px 14px}.page-header{flex-direction:column;align-items:flex-start;gap:10px}.page-title{font-size:var(--fs-h2)}[class*=table-wrap]{-webkit-overflow-scrolling:touch;overflow-x:auto}[class*=toolbar],[class*=filter],[class*=-tabs],.stat-cards,.selection-bar,.bm-chart-controls,.bm-chart-toggles,.bm-pager,.funnel{flex-wrap:wrap}.stat-card{flex:140px;min-width:0}}@media (width<=560px){.topbar-user{display:none}.btn-logout{padding:7px 10px}.main-content{padding:14px 10px}.job-chip{font-size:var(--fs-sm);padding:6px 12px}.date-picker-popup{min-width:0;max-width:calc(100vw - 24px)}.date-picker-row{flex-wrap:wrap}}
