.login-page{min-height:100vh;display:grid;place-items:center;padding:24px;background:#fff}.login-card{width:420px;max-width:100%;background:#fff;border:1px solid #e9e9e9;border-radius:14px;box-shadow:0 6px 24px #0000000f;padding:26px 26px 22px}.login-header{display:flex;align-items:center;gap:10px;margin-bottom:14px}.login-logo{width:34px;height:34px;object-fit:contain}.login-brand{font-size:22px;font-weight:800;letter-spacing:.5px;color:#111}.login-form{display:grid;gap:14px;margin-top:8px}.field{display:grid;gap:8px}.label{font-size:13px;color:#222;font-weight:600}.input{height:44px;padding:0 14px;border-radius:10px;border:1px solid #dbe5f3;background:#eaf3ff;outline:none;font-size:14px;color:#111}.input::placeholder{color:#6f7c8f}.input:focus{border-color:#a7c7ff;box-shadow:0 0 0 3px #508cff2e}.password-wrap{position:relative;display:flex;align-items:center}.input-password{padding-right:46px;width:100%}.pw-toggle{position:absolute;right:8px;width:36px;height:34px;border-radius:9px;border:1px solid #dbe5f3;background:#eaf3ff;display:grid;place-items:center;cursor:pointer;color:#2b2f36}.pw-toggle:hover{filter:brightness(.98)}.row{display:flex;justify-content:space-between;align-items:center;margin-top:2px}.remember{display:inline-flex;align-items:center;gap:8px;font-size:13px;color:#1e232b;-webkit-user-select:none;user-select:none}.forgot{font-size:13px;color:#1e232b;text-decoration:underline}.forgot:hover{opacity:.85}.error{color:#b00020;font-weight:600;font-size:13px;margin-top:2px}.loginBtn{margin-top:6px;height:46px;border-radius:10px;border:none;background:#000;color:#fff;font-weight:700;cursor:pointer;width:100%}.loginBtn:disabled{opacity:.7;cursor:not-allowed}.usersPage{padding:18px;max-width:1480px;margin:0 auto;display:grid;gap:14px}.usersHeader{display:flex;align-items:flex-end;justify-content:space-between;gap:16px}.usersTitle{margin:0;font-size:24px;font-weight:800;letter-spacing:-.02em;color:var(--text)}.usersAlert{background:#fff5f5;border:1px solid #fecaca;color:#991b1b;padding:10px 12px;border-radius:12px;font-weight:650}.uPrimaryBtn{height:38px;padding:0 14px;border-radius:12px;border:1px solid #0b0b0b;background:#0b0b0b;color:#fff;font-weight:800;letter-spacing:.2px;cursor:pointer;white-space:nowrap}.uPrimaryBtn:hover{opacity:.95}.uPrimaryBtn:active{transform:translateY(1px)}.uCard{background:var(--card);border:1px solid var(--border);border-radius:16px;padding:14px;box-shadow:0 1px #00000008}.uTableWrap{width:100%;overflow-x:auto;overflow-y:visible;-webkit-overflow-scrolling:touch;border-radius:12px}.uTable{width:100%;min-width:1100px;border-collapse:collapse;background:#fff}.uTable th,.uTable td{padding:12px;border-bottom:1px solid #eef2f7;font-size:13px;vertical-align:middle}.uTable th{text-align:left;font-weight:850;background:#fafafa;position:sticky;top:0;z-index:1}.uTable tbody tr:hover{background:#fafafa}.uRowMe{background:#fcfcff}.uCellStack{display:flex;flex-direction:column;gap:6px;min-width:0}.uEmail{font-weight:800;color:#111827;word-break:break-word;overflow-wrap:anywhere}.uTinyBadge{display:inline-flex;align-items:center;width:fit-content;padding:4px 8px;border-radius:999px;border:1px solid #dbeafe;background:#eff6ff;color:#1d4ed8;font-size:11px;font-weight:800}.uRoleBadge{display:inline-flex;align-items:center;padding:6px 10px;border-radius:999px;border:1px solid #e5e7eb;background:#f8fafc;color:#334155;font-size:12px;font-weight:800;max-width:100%}.uPill{display:inline-flex;align-items:center;gap:8px;padding:6px 10px;border-radius:999px;border:1px solid #e5e7eb;font-weight:800;font-size:12px;line-height:1;white-space:nowrap}.uDot{width:8px;height:8px;border-radius:999px;background:#9ca3af;flex:0 0 auto}.uPill.active{border-color:#bbf7d0;background:#f0fdf4;color:#166534}.uPill.active .uDot{background:#22c55e}.uPill.inactive{border-color:#fecaca;background:#fff5f5;color:#991b1b}.uPill.inactive .uDot{background:#ef4444}.uBtnRow{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-start}.uBtn{border:1px solid #e5e7eb;background:#fff;padding:8px 10px;border-radius:12px;font-weight:750;font-size:12px;cursor:pointer;transition:background .12s ease,transform 80ms ease,filter .12s ease}.uBtn:hover{background:#f3f4f6}.uBtn:active{transform:translateY(1px)}.uBtn:disabled{opacity:.55;cursor:not-allowed}.uBtn.danger{border-color:#fecaca;color:#991b1b;background:#fff5f5}.uBtn.danger:hover{filter:brightness(.99)}.uBtn.success{border-color:#bbf7d0;color:#166534;background:#f0fdf4}.uBtn.success:hover{filter:brightness(.99)}.uModalOverlay{position:fixed;inset:0;background:#0f172a73;display:grid;place-items:center;z-index:1000;padding:20px}.uModal{width:min(100%,1100px);max-height:calc(100vh - 40px);overflow:auto;background:#fff;border-radius:18px;border:1px solid #e5e7eb;box-shadow:0 18px 60px #02061733}.uModalHeader{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 18px;border-bottom:1px solid #eef2f7}.uModalTitle{font-size:18px;font-weight:850;color:#111827}.uIconBtn{width:36px;height:36px;display:grid;place-items:center;border-radius:12px;border:1px solid #e5e7eb;background:#fff;cursor:pointer;font-size:16px;font-weight:900;flex:0 0 auto}.uIconBtn:hover{background:#f8fafc}.uModalBody{padding:18px}.uModalFooter{padding:14px 18px 18px;border-top:1px solid #eef2f7;display:flex;justify-content:flex-end;gap:10px}.uModalForm{display:grid;gap:14px}.uGrid2{display:grid;grid-template-columns:1fr 1fr;gap:14px}.uGrid3{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.uField{display:grid;gap:7px;min-width:0}.uLabel{font-size:12px;font-weight:800;color:#374151}.uInput,.uSelect,.uTextarea{width:100%;min-height:40px;border-radius:12px;border:1px solid #dbe1ea;background:#fff;padding:10px 12px;outline:none;font-size:14px;color:#111827}.uTextarea{resize:vertical;min-height:96px}.uInput:focus,.uSelect:focus,.uTextarea:focus{border-color:#93c5fd;box-shadow:0 0 0 3px #93c5fd40}.uHelp{font-size:12px;color:#64748b;font-weight:600}.uInfoNote{border:1px solid #dbeafe;background:#eff6ff;color:#1d4ed8;padding:10px 12px;border-radius:12px;font-size:13px;font-weight:700;margin-bottom:14px}@media(max-width:1100px){.uTable{min-width:980px}}@media(max-width:900px){.usersPage{padding:14px}.usersHeader{align-items:stretch;flex-direction:column}.uPrimaryBtn{width:100%;height:46px;border-radius:14px;font-size:15px}.uGrid2,.uGrid3{grid-template-columns:1fr}.uModal{width:100%;max-height:calc(100vh - 24px);border-radius:16px}.uModalOverlay{padding:12px}.uModalHeader,.uModalBody,.uModalFooter{padding-left:14px;padding-right:14px}.uModalFooter{flex-wrap:wrap}.uModalFooter .uBtn{width:100%}}@media(max-width:760px){.usersPage{gap:12px;padding:12px;justify-items:center}.usersHeader,.usersAlert,.uCard{width:min(100%,420px);margin-left:auto;margin-right:auto}.usersHeader{gap:12px}.usersTitle{width:100%;font-size:22px}.uPrimaryBtn{width:100%}.uCard{padding:0;background:transparent;border:none;box-shadow:none}.uTableWrap{overflow:visible;border-radius:0;width:100%}.uTable,.uTable thead,.uTable tbody,.uTable th,.uTable td,.uTable tr{display:block;width:100%}.uTable{min-width:0;background:transparent}.uTable thead{display:none}.uTable tbody{display:grid;gap:14px;width:100%}.uTable tr{width:100%;background:#fff;border:1px solid #e8edf3;border-radius:18px;padding:14px;box-shadow:0 6px 18px #0f172a0a;margin:0 auto}.uTable tbody tr:hover{background:#fff}.uTable td{border:none;padding:0;margin-bottom:14px}.uTable td:last-child{margin-bottom:0}.uTable td:before{content:attr(data-label);display:block;margin-bottom:7px;font-size:11px;font-weight:800;color:#64748b;text-transform:uppercase;letter-spacing:.06em}.uTable td[data-label=Email]{margin-bottom:12px}.uTable td[data-label=Email] .uEmail{font-size:15px;line-height:1.4;font-weight:800}.uTable td[data-label=Name]{margin-bottom:12px;font-size:15px;line-height:1.4;color:#111827}.uTable td[data-label=Role],.uTable td[data-label=Status]{display:inline-block;width:calc(50% - 6px);vertical-align:top;margin-bottom:14px}.uTable td[data-label=Role]{margin-right:12px}.uTable td[data-label=Created]{padding-top:2px;margin-bottom:16px;font-size:14px;color:#111827}.uRoleBadge,.uPill,.uTinyBadge{max-width:100%}.uBtnRow{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;width:100%}.uBtn{width:100%;min-width:0;min-height:42px;padding:10px 12px;border-radius:14px;font-size:13px;font-weight:800;text-align:center}}@media(max-width:520px){.usersPage{padding:10px}.usersHeader,.usersAlert,.uCard{width:min(100%,400px)}.usersTitle{font-size:20px}.uPrimaryBtn{height:48px;border-radius:16px;font-size:15px}.uTable tbody{gap:12px}.uTable tr{padding:12px;border-radius:16px}.uTable td{margin-bottom:12px}.uTable td[data-label=Role],.uTable td[data-label=Status]{display:block;width:100%;margin-right:0;margin-bottom:12px}.uBtnRow{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.uBtn{min-height:44px;font-size:12px;padding:10px 8px}}@media(max-width:360px){.uBtnRow{grid-template-columns:1fr}}.dashWrap{display:grid;gap:14px}.card{background:#fff;border:1px solid #e7e9f2;border-radius:18px;box-shadow:0 2px 10px #1118270a}.welcomeCard{padding:18px;display:flex;align-items:center;justify-content:space-between;gap:14px}.welcomeTitle{font-size:22px;font-weight:700;letter-spacing:-.01em;color:#111827}.welcomeRight{display:flex;align-items:baseline;gap:12px;color:#111827}.clock{font-weight:700;font-size:18px;letter-spacing:-.01em}.date{color:#6b7280;font-size:13px;font-weight:500}.shiftBanner{background:linear-gradient(90deg,#fff7d6,#dfefff);border:1px solid #e7e9f2;border-radius:18px;padding:14px 16px;display:flex;align-items:center;gap:14px}.shiftDate{font-size:12px;color:#374151;font-weight:600}.shiftPill{background:#ffffffbf;border:1px solid rgba(231,233,242,.9);border-radius:999px;padding:8px 12px;display:inline-flex;align-items:center;gap:10px}.shiftPill span{color:#374151;font-weight:500}.checkCard{padding:0;overflow:hidden}.cardHeader{padding:14px 16px;font-weight:600;font-size:14px;color:#111827;border-bottom:1px solid #eef0f6}.checkRow{padding:16px;display:flex;align-items:center;gap:14px}.checkBtn{border:none;border-radius:12px;padding:12px 22px;font-weight:600;font-size:14px;cursor:pointer}.checkBtn.in{background:#16a34a;color:#fff}.checkBtn.out{background:#111827;color:#fff}.checkText{color:#374151;font-weight:500}.tiles{display:grid;grid-template-columns:repeat(6,minmax(140px,1fr));gap:14px}.tile{background:#fff;border:1px solid #e7e9f2;border-radius:18px;padding:18px 14px;display:grid;justify-items:center;gap:10px;box-shadow:0 2px 10px #11182708}.tileIcon{width:44px;height:44px;border-radius:14px;border:1px solid #e7e9f2;background:#f9fafb}.tileText{font-weight:500;font-size:14px;color:#111827}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.statCard{background:#fff;border:1px solid #e7e9f2;border-radius:18px;padding:16px;box-shadow:0 2px 10px #11182708}.statLabel{color:#6b7280;font-weight:500;font-size:13px}.statValue{margin-top:8px;font-size:26px;font-weight:800;letter-spacing:-.02em;color:#111827}@media(max-width:1200px){.tiles{grid-template-columns:repeat(3,1fr)}.stats{grid-template-columns:repeat(2,1fr)}}@media(max-width:700px){.welcomeCard{flex-direction:column;align-items:flex-start}.tiles{grid-template-columns:repeat(2,1fr)}.stats{grid-template-columns:1fr}}.tile{border:1px solid #e7e9f2;cursor:default}.tileIcon{display:grid;place-items:center;color:#111827}.tileSvg{display:block}.tileClickable{cursor:pointer;transition:transform .14s ease,box-shadow .14s ease,border-color .14s ease}.tileClickable:hover{transform:translateY(-1px);border-color:#d7dbeb;box-shadow:0 10px 26px #1118270f}.tileClickable:focus-visible{outline:3px solid rgba(59,130,246,.35);outline-offset:3px}.tileDisabled{opacity:.65}.tileHint{margin-top:-6px;font-size:12px;color:#6b7280;font-weight:600}.tileBadge{margin-left:10px;display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:#b42318;color:#fff;font-size:12px;font-weight:800;line-height:20px}.rolesPage{display:grid;gap:14px}.rolesHeader{display:flex;align-items:flex-end;justify-content:space-between;gap:12px}.rolesTitle{margin:0;font-size:26px;font-weight:900;letter-spacing:-.2px;color:#0f172a}.rolesSubtitle{margin:4px 0 0;font-size:13px;color:#64748b;font-weight:600}.rAlert{border:1px solid #ffd3d3;background:#fff5f5;color:#991b1b;padding:10px 12px;border-radius:14px;font-weight:800}.rOk{border:1px solid #bbf7d0;background:#ecfdf5;color:#065f46;padding:10px 12px;border-radius:14px;font-weight:800}.rInfo{border:1px solid #dbeafe;background:#eff6ff;color:#1e40af;padding:10px 12px;border-radius:14px;font-weight:800}.rCard{background:#fff;border:1px solid #e7e9f2;border-radius:18px;box-shadow:0 2px 10px #1118270a;overflow:hidden}.rCardHeader{padding:14px 16px;display:flex;align-items:center;justify-content:space-between;gap:10px;border-bottom:1px solid #eef0f6}.rCardTitle{margin:0;font-weight:900;color:#0f172a}.rBadge{font-size:12px;font-weight:900;padding:6px 10px;border-radius:999px;border:1px solid #e7e9f2;background:#f8fafc;color:#334155}.rBadge.dark{background:#0b0b0b;border-color:#0b0b0b;color:#fff}.rolesGrid{display:grid;grid-template-columns:360px 1fr;gap:14px}.rBody{padding:14px 16px;display:grid;gap:12px}.rField{display:grid;gap:6px}.rLabel{font-size:12px;color:#64748b;font-weight:900}.rInput,.rSelect{height:42px;border:1px solid #e7e9f2;border-radius:12px;padding:0 12px;font-size:14px;font-weight:650;color:#0f172a;background:#fff;outline:none}.rInput:focus,.rSelect:focus{border-color:#c7d2fe;box-shadow:0 0 0 4px #6366f11f}.rRow2{display:grid;grid-template-columns:1fr 1fr;gap:10px}.rBtnRow{display:flex;gap:8px;flex-wrap:wrap}.rBtn{height:40px;padding:0 12px;border-radius:12px;border:1px solid #e7e9f2;background:#fff;font-weight:900;cursor:pointer}.rBtn:hover{background:#f3f4f6}.rBtn.primary{border-color:#0b0b0b;background:#0b0b0b;color:#fff}.rBtn.primary:hover{background:#111}.rBtn:disabled{opacity:.6;cursor:not-allowed}.rMiniNote{color:#64748b;font-size:12px;font-weight:800}.permWrap{padding:14px 16px;display:grid;gap:14px}.permToolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;padding:12px 16px;border-bottom:1px solid #eef0f6;background:#fbfcfe}.permToolbarLeft{display:flex;gap:8px;flex-wrap:wrap}.permToolbarRight{display:flex;align-items:center;gap:10px}.searchBox{height:40px;border:1px solid #e7e9f2;border-radius:12px;padding:0 12px;font-size:14px;font-weight:650;color:#0f172a;outline:none;min-width:260px;background:#fff}.searchBox:focus{border-color:#c7d2fe;box-shadow:0 0 0 4px #6366f11f}.permGroup{border:1px solid #eef0f6;border-radius:16px;overflow:hidden}.permGroupHeader{padding:10px 12px;background:#f8fafc;border-bottom:1px solid #eef0f6;display:flex;justify-content:space-between;align-items:center;gap:10px}.permGroupName{font-weight:900;text-transform:capitalize;color:#0f172a}.permCount{font-size:12px;font-weight:900;color:#475569;background:#fff;border:1px solid #e7e9f2;padding:5px 10px;border-radius:999px}.permList{padding:12px;display:grid;gap:8px}.permItem{display:flex;align-items:flex-start;gap:10px;padding:10px;border-radius:14px;border:1px solid #f1f5f9;background:#fff}.permItem:hover{background:#f8fafc}.permKey{font-weight:900;color:#0f172a}.permDesc{color:#64748b;font-weight:700;font-size:12px;margin-top:2px}.permCheckbox{margin-top:2px;transform:scale(1.1)}@media(max-width:1100px){.rolesGrid{grid-template-columns:1fr}.searchBox{min-width:200px;width:100%}}.reportsPage{padding:18px}.reportsHeader{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:14px}.reportsTitle{font-size:22px;font-weight:700;letter-spacing:.2px}.reportsSubtitle{margin-top:4px;font-size:13px;color:#6b7280}.reportsTabs{display:flex;gap:10px}.tabBtn{border:1px solid #e5e7eb;background:#fff;padding:10px 12px;border-radius:10px;font-weight:600;cursor:pointer}.tabBtn.active{border-color:#111827;box-shadow:0 1px #0000000f}.reportsError{background:#fff5f5;border:1px solid #fecaca;color:#991b1b;padding:10px 12px;border-radius:12px;margin-bottom:12px;font-weight:600}.card{background:#fff;border:1px solid #eef2f7;border-radius:14px;padding:14px;box-shadow:0 1px #00000008}.cardTitle{font-weight:800;margin-bottom:12px;font-size:14px}.cardTopRow{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px}.searchBox{flex:1}.searchBox input{width:100%;border:1px solid #e5e7eb;border-radius:12px;padding:10px 12px;outline:none}.tableWrap{overflow:auto;border-radius:12px;border:1px solid #eef2f7}.table{width:100%;border-collapse:collapse;min-width:980px;background:#fff}.table th,.table td{padding:12px;border-bottom:1px solid #eef2f7;font-size:13px;vertical-align:top}.table th{text-align:left;font-weight:800;background:#fafafa}.titleCell .titleMain{font-weight:800}.titleCell .titleSub{color:#6b7280;margin-top:4px;font-size:12px}.actionsCol{width:260px}.actionBtns{display:flex;flex-wrap:wrap;gap:8px}.btn,.btnSmall,.btnPrimary{border:1px solid #e5e7eb;background:#fff;padding:10px 12px;border-radius:12px;font-weight:700;cursor:pointer}.btnSmall{padding:8px 10px;border-radius:10px;font-weight:700;font-size:12px}.btnPrimary{border-color:#111827;background:#111827;color:#fff}.btnSmall.danger{border-color:#fecaca;color:#991b1b;background:#fff5f5}.btn:disabled,.btnSmall:disabled,.btnPrimary:disabled{opacity:.6;cursor:not-allowed}.gridTwo{display:grid;grid-template-columns:1fr 1fr;gap:14px}@media(max-width:1100px){.gridTwo{grid-template-columns:1fr}}.formGrid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.formGrid label{display:flex;flex-direction:column;gap:6px;font-weight:700;font-size:12px;color:#111827}.formGrid label span{color:#374151}.formGrid input,.formGrid select,.formGrid textarea{border:1px solid #e5e7eb;border-radius:12px;padding:10px 12px;outline:none;font-size:13px;background:#fff}.formGrid textarea{min-height:90px;resize:vertical}.span2{grid-column:span 2}.btnRow{margin-top:12px;display:flex;gap:10px;flex-wrap:wrap}.muted{color:#6b7280;font-weight:600}.mutedSmall{color:#6b7280;font-weight:600;font-size:12px;margin-top:8px}.kv{display:grid;grid-template-columns:1fr;gap:10px;margin-bottom:10px}.k{font-size:12px;font-weight:800;color:#374151;margin-bottom:4px}.v{font-size:13px;color:#111827;word-break:break-all}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.uploadBox{margin-top:14px;padding-top:12px;border-top:1px dashed #e5e7eb}.uploadTitle{font-weight:900;margin-bottom:8px}.modalBackdrop{position:fixed;inset:0;background:#11182773;display:flex;align-items:center;justify-content:center;padding:20px;z-index:9999}.modal{width:min(900px,98vw);background:#fff;border-radius:16px;border:1px solid #eef2f7;box-shadow:0 20px 60px #00000038;padding:14px}.modalHeader{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:10px}.modalTitle{font-weight:900;font-size:16px}.modalSub{color:#6b7280;margin-top:4px;font-size:12px;font-weight:700}.iconBtn{border:1px solid #e5e7eb;background:#fff;border-radius:12px;width:40px;height:40px;font-weight:900;cursor:pointer}.modalActions{margin-top:12px;display:flex;gap:10px;flex-wrap:wrap;align-items:center}.fileBtn{position:relative;overflow:hidden;display:inline-flex;align-items:center;justify-content:center}.fileBtn input{position:absolute;inset:0;opacity:0;cursor:pointer}.modalFooter{margin-top:10px;padding-top:10px;border-top:1px solid #eef2f7}.invPage{display:flex;flex-direction:column;gap:14px}.invHeader{display:flex;justify-content:space-between;align-items:flex-end}.invTitle{font-size:22px;font-weight:800;letter-spacing:.2px}.invSub{font-size:13px;color:#0009;margin-top:4px}.invTabs{display:flex;flex-wrap:wrap;gap:10px;padding:10px;border-radius:14px;background:#fff;box-shadow:0 6px 16px #0000000f}.invTab{border:1px solid rgba(0,0,0,.12);background:#fff;padding:10px 12px;border-radius:12px;cursor:pointer;font-weight:700;font-size:13px}.invTab.active{border-color:#000000a6;background:#0000000a}.invPanel{display:flex;flex-direction:column;gap:14px}.invCard{background:#fff;border-radius:16px;box-shadow:0 6px 16px #0000000f;padding:14px}.invCardTop{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:12px}.invCardTitle{font-size:16px;font-weight:800}.invCardHint{font-size:12px;color:#0009;margin-top:4px}.invTopActions{display:flex;gap:10px;align-items:center}.invBtn{border:1px solid rgba(0,0,0,.15);background:#fff;padding:10px 12px;border-radius:12px;cursor:pointer;font-weight:800;font-size:13px}.invBtn:disabled{opacity:.6;cursor:not-allowed}.invBtnPrimary{border:1px solid rgba(0,0,0,.8);background:#000;color:#fff;padding:10px 12px;border-radius:12px;cursor:pointer;font-weight:800;font-size:13px}.invErr{background:#b0000014;border:1px solid rgba(176,0,0,.25);color:#b00000;padding:10px 12px;border-radius:12px;font-weight:700;font-size:13px;margin-bottom:10px}.invForm{border:1px solid rgba(0,0,0,.1);border-radius:14px;padding:12px;margin-bottom:12px;background:#00000005}.invFormRow{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:10px}.invForm label{display:flex;flex-direction:column;gap:6px;font-size:12px;font-weight:800;color:#000000bf}.invForm input,.invForm select{border:1px solid rgba(0,0,0,.15);border-radius:12px;padding:10px;font-size:13px;outline:none;background:#fff}.invFormActions{display:flex;justify-content:flex-end}.invTableWrap{overflow-x:auto}.invTable{width:100%;border-collapse:collapse;font-size:13px}.invTable th{text-align:left;padding:10px;background:#0000000a;border-bottom:1px solid rgba(0,0,0,.1);font-weight:900;white-space:nowrap}.invTable td{padding:10px;border-bottom:1px solid rgba(0,0,0,.08);vertical-align:top}.invTdMuted{color:#0009;padding:14px 10px}.invRowActions{display:flex;gap:8px}.invBtnSmall{border:1px solid rgba(0,0,0,.15);background:#fff;padding:8px 10px;border-radius:12px;cursor:pointer;font-weight:900;font-size:12px}.invBtnSmallDanger{border:1px solid rgba(176,0,0,.35);background:#b0000014;color:#b00000;padding:8px 10px;border-radius:12px;cursor:pointer;font-weight:900;font-size:12px}.invFilters{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:10px}.invFilters label{display:flex;flex-direction:column;gap:6px;font-size:12px;font-weight:900;color:#000000bf}.invFilters input,.invFilters select{border:1px solid rgba(0,0,0,.15);border-radius:12px;padding:10px;font-size:13px;outline:none;background:#fff;min-width:140px}.invTotalBar{display:flex;justify-content:flex-end;font-weight:900;margin:8px 0 12px}.invTotalBar span{margin-left:10px}.invSummaryGrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.invSummaryCard{border:1px solid rgba(0,0,0,.12);border-radius:14px;padding:12px;background:#fff}.invSummaryMonth{font-weight:900;font-size:13px}.invSummaryAmt{margin-top:6px;font-size:14px;font-weight:900}.projectsPage{width:100%}.pModalWide{width:min(980px,96vw);max-width:96vw}.projectsHeader{gap:14px}.projectsHeaderText{min-width:0}.projectsHeaderActions{flex-wrap:wrap}.pCard{background:#fff;border:1px solid #eef0f6;border-radius:18px;box-shadow:0 10px 30px #0f172a0f;padding:16px;margin-top:16px;overflow:hidden}.pListCard{overflow:visible}.pCardHead{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding-bottom:12px;border-bottom:1px solid #f0f2f7}.pHeadText{min-width:0;flex:1 1 auto}.pCardTitle{font-size:16px;font-weight:900;color:#0f172a}.pCardSub{margin-top:4px;color:#64748b;font-weight:700;font-size:13px;line-height:1.45}.pTools{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end;flex:0 1 auto}.pSearch{height:40px;width:min(460px,55vw);min-width:220px;border:1px solid #e7eaf2;border-radius:12px;padding:0 12px;font-weight:700;outline:none}.pBannerActions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}.pBannerPreview{margin-top:14px;border-radius:16px;overflow:hidden;border:1px solid #eef0f6;background:#f8fafc}.pBannerImg{width:100%;height:220px;object-fit:cover;display:block}.pBannerEmpty{height:220px;display:flex;align-items:center;justify-content:center;color:#64748b;font-weight:800;text-align:center;padding:20px}.pNote{margin-top:10px;color:#64748b;font-weight:700;font-size:13px}.pGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:14px;align-items:start}.pTile{position:relative;border:1px solid #eef0f6;border-radius:18px;overflow:visible;background:#fff;display:flex;flex-direction:column;min-height:360px;min-width:0;transition:transform .24s ease,box-shadow .24s ease,border-color .24s ease;z-index:1}.pTile:hover,.pTile:focus-within{transform:translateY(-5px);box-shadow:0 22px 44px #0f172a24;border-color:#2563eb2e;z-index:30}.pTileImgWrap{height:150px;background:#0b1220;display:flex;align-items:center;justify-content:center;border-radius:18px 18px 0 0;overflow:hidden}.pTileImg{width:100%;height:100%;object-fit:cover}.pTileImgFallback{color:#cbd5e1;font-weight:900}.pTileBody{padding:12px;display:flex;flex-direction:column;gap:10px;flex:1;min-width:0;background:#fff;border-radius:0 0 18px 18px}.pTileTop{display:flex;flex-direction:column;gap:8px}.pTitleRow{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.pTitle{font-weight:900;color:#0f172a;font-size:15px;line-height:1.3;min-width:0;word-break:break-word}.pStatus{font-weight:900;font-size:12px;padding:6px 10px;border-radius:999px;border:1px solid transparent;white-space:nowrap;flex:0 0 auto}.pStatus.ongoing{background:#ecfdf5;border-color:#bbf7d0;color:#166534}.pStatus.done{background:#eff6ff;border-color:#bfdbfe;color:#1d4ed8}.pMeta{display:flex;flex-direction:column;gap:4px;color:#334155;font-weight:700;font-size:13px;line-height:1.45}.pMeta span{word-break:break-word}.pDesc{color:#334155;font-weight:700;font-size:13px;line-height:1.45;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;word-break:break-word}.pDesc.muted{color:#94a3b8}.pAssigned{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;margin-top:auto}.pAssignedLabel{font-weight:900;color:#0f172a;font-size:13px;flex:0 0 auto}.pAssignedList{display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end}.pChip{font-weight:900;font-size:12px;padding:5px 10px;border-radius:999px;background:#f1f5f9;border:1px solid #e2e8f0;color:#0f172a;max-width:100%;word-break:break-word}.pChip.more{background:#fff7ed;border-color:#fed7aa;color:#9a3412}.pAssignedNone{color:#94a3b8;font-weight:900}.pActions{display:flex;gap:10px;margin-top:8px;flex-wrap:wrap}.uBtn.danger{border-color:#fecaca!important;color:#b91c1c!important;background:#fff5f5!important}.pTinyNote{margin-top:8px;color:#94a3b8;font-weight:700;font-size:12px;line-height:1.45}.pConfirmText{color:#0f172a;font-weight:700;line-height:1.5}.pHoverCard{position:absolute;left:-8px;right:-8px;top:118px;opacity:0;visibility:hidden;transform:translateY(14px) scale(.985);pointer-events:none;transition:opacity .28s ease,transform .28s ease,visibility .28s ease;z-index:40}.pTile:hover .pHoverCard,.pTile:focus-within .pHoverCard{opacity:1;visibility:visible;transform:translateY(0) scale(1);pointer-events:auto}.pHoverCardInner{background:#fffffffa;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(226,232,240,.95);border-radius:18px;box-shadow:0 28px 70px #0f172a33;padding:16px}.pHoverTop{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:10px}.pHoverTitle{font-weight:900;color:#0f172a;font-size:17px;line-height:1.35;word-break:break-word}.pHoverMeta{margin-bottom:12px}.pHoverDesc{max-height:220px;overflow:auto;color:#334155;font-weight:700;font-size:14px;line-height:1.65;padding-right:4px;white-space:pre-wrap;word-break:break-word}.pHoverAssigned{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-top:14px}.pHoverActions{margin-top:16px;display:flex;gap:10px;flex-wrap:wrap}.pHoverActions .uBtn{flex:0 0 auto}.pDetailWrap{display:grid;grid-template-columns:minmax(280px,.95fr) minmax(0,1.2fr);gap:16px}.pDetailMedia{border:1px solid #eef0f6;border-radius:16px;overflow:hidden;background:#0b1220;min-height:240px;display:flex;align-items:center;justify-content:center}.pDetailImg{width:100%;height:100%;min-height:240px;object-fit:cover;display:block}.pDetailImgFallback{color:#cbd5e1;font-weight:900;text-align:center;padding:20px}.pDetailContent{min-width:0}.pDetailTitleRow{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.pDetailTitle{font-size:22px;font-weight:900;color:#0f172a;line-height:1.3;word-break:break-word}.pDetailMeta{display:grid;gap:8px;margin-top:14px;color:#334155;font-size:14px;font-weight:700;line-height:1.5}.pDetailSection{margin-top:18px}.pDetailLabel{font-size:13px;font-weight:900;color:#0f172a;margin-bottom:8px}.pDetailDesc{color:#334155;font-size:14px;font-weight:700;line-height:1.75;white-space:pre-wrap;word-break:break-word}.pDetailAssignedList{justify-content:flex-start}.pFormGrid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(280px,.9fr);gap:14px}.pFormLeft,.pFormRight{min-width:0}.pImgPreview{margin-top:10px;border:1px solid #eef0f6;border-radius:14px;overflow:hidden;background:#f8fafc;height:160px;display:flex;align-items:center;justify-content:center}.pImgPreview img{width:100%;height:100%;object-fit:cover;display:block}.pImgEmpty{color:#94a3b8;font-weight:900;text-align:center;padding:18px}.pTwoCols{display:grid;grid-template-columns:1fr 1fr;gap:10px}.pDurationHint{margin-top:-2px;color:#64748b;font-weight:700;font-size:12px;line-height:1.45}.pAssignHead{padding:10px;border:1px solid #eef0f6;border-radius:14px;background:#f8fafc}.pAssignTitle{font-weight:900;color:#0f172a}.pAssignSub{margin-top:4px;font-size:12px;font-weight:700;color:#64748b;line-height:1.45}.pAssignBox{margin-top:10px;border:1px solid #eef0f6;border-radius:14px;padding:10px;max-height:330px;overflow:auto;background:#fff}.pAssignBox.disabled{opacity:.7;pointer-events:none}.pAssignRow{display:grid;grid-template-columns:18px minmax(0,1fr);gap:10px;align-items:start;padding:8px 6px;border-radius:10px;cursor:pointer}.pAssignRow:hover{background:#f8fafc}.pAssignInfo{min-width:0}.pAssignName{display:block;font-weight:900;color:#0f172a;font-size:13px;line-height:1.35;word-break:break-word}.pAssignEmail{display:block;font-weight:700;color:#64748b;font-size:12px;margin-top:2px;line-height:1.35;word-break:break-word}.pAssignFooter{margin-top:10px;color:#334155;font-weight:800;font-size:13px}@media(max-width:1100px){.pGrid{grid-template-columns:repeat(2,minmax(0,1fr))}.pCardHead{flex-direction:column;align-items:stretch}.pTools,.pBannerActions{justify-content:flex-start}.pSearch{width:100%;min-width:0}.pHoverCard{display:none}}@media(max-width:860px){.pFormGrid,.pDetailWrap{grid-template-columns:1fr}}@media(max-width:640px){.pGrid,.pTwoCols{grid-template-columns:1fr}.pTitleRow,.pAssigned,.pHoverAssigned,.pDetailTitleRow{flex-direction:column;align-items:flex-start}.pAssignedList{justify-content:flex-start}.pActions{flex-direction:column}.pActions .uBtn{width:100%}.pBannerImg,.pBannerEmpty{height:180px}.pHoverCard{display:none}}.clientsPage .pCard{margin-top:14px}.cLogoCell{display:flex;align-items:center;justify-content:center}.cLogoImg{width:64px;height:36px;object-fit:contain;background:#fff;border-radius:8px;border:1px solid #e5e7eb;padding:6px}.cLogoFallback{width:64px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:8px;border:1px dashed #cbd5e1;color:#64748b;font-weight:800;font-size:12px;background:#f8fafc}.cLogoFallback.big{width:140px;height:90px}.cPill{display:inline-flex;padding:6px 10px;border-radius:999px;font-weight:900;font-size:12px;border:1px solid}.cPill.on{color:#166534;border-color:#bbf7d0;background:#f0fdf4}.cPill.off{color:#7f1d1d;border-color:#fecaca;background:#fff1f2}.cFormGrid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.cDetailsTop{display:flex;gap:16px;align-items:center}.cDetailsLogo img{width:140px;height:90px;object-fit:contain;border:1px solid #e5e7eb;border-radius:12px;background:#fff;padding:10px}.cDetailsName{font-size:20px;font-weight:1000;color:#111827}.cDetailsSub{color:#64748b;font-weight:800;margin-top:4px}.cDetailsGrid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px;margin-top:14px}.cDetailsGrid .k{color:#64748b;font-weight:900;font-size:12px}.cDetailsGrid .v{color:#111827;font-weight:800;margin-top:4px}.cEditTop{display:flex;gap:16px;align-items:flex-start}.cEditLogo{width:220px;display:flex;flex-direction:column;gap:10px}.cEditLogo img{width:220px;height:140px;object-fit:contain;border:1px solid #e5e7eb;border-radius:12px;background:#fff;padding:10px}.mutedSmall{color:#64748b;font-weight:700;font-size:12px}.leavesWrap{padding:16px;max-width:1480px;margin:0 auto}.pageHeader{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:16px}.pageTitle{font-size:26px;font-weight:700;margin-bottom:4px}.pageSub{color:#667085;font-size:14px}.card{background:#fff;border:1px solid #e6e8ee;border-radius:16px;padding:14px;margin-bottom:16px;overflow:hidden;box-shadow:0 1px 2px #1018280a}.cardTitle{font-weight:800;margin-bottom:12px;color:#101828}.balancesRow{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-bottom:14px}.historyBalancesRow{grid-template-columns:repeat(4,minmax(0,1fr))}.balCard{border:1px solid #e6e8ee;border-radius:14px;padding:14px;background:#fff;min-width:0}.balLabel{color:#667085;font-size:12px;margin-bottom:6px}.balVal{font-size:22px;font-weight:800}.tableWrap{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:12px;border:1px solid #eef0f5;background:#fff}.table{width:100%;border-collapse:collapse;min-width:860px;background:#fff}.table th,.table td{padding:12px;border-bottom:1px solid #eef0f5;text-align:left;font-size:13px;vertical-align:middle}.table th{background:#fafbff;font-weight:700;position:sticky;top:0;z-index:1}.rowActions{display:flex;gap:8px;flex-wrap:wrap}.pendingList{display:flex;flex-direction:column;gap:12px}.pendingItem{border:1px solid #e6e8ee;border-radius:16px;padding:14px;display:flex;align-items:flex-start;justify-content:space-between;gap:14px;background:linear-gradient(180deg,#fff,#fbfcff)}.pendingLeft{min-width:0;flex:1 1 auto}.pendingTop{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-bottom:8px}.pendingTop b{font-size:16px;color:#101828}.pendingMid{color:#475467;font-size:13px;margin-bottom:8px}.pendingReason{color:#667085;font-size:13px;white-space:pre-wrap;background:#f8fafc;border:1px solid #e9eef5;border-radius:12px;padding:10px 12px}.pendingRight{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end;flex:0 0 auto}.badge{display:inline-flex;align-items:center;padding:3px 10px;border-radius:999px;font-size:12px;font-weight:700;border:1px solid #e6e8ee}.badge-gray{background:#f6f7fb;color:#344054}.badge-green{background:#eafbf0;color:#067647;border-color:#b7f0c6}.badge-red{background:#fff1f1;color:#b42318;border-color:#ffd0d0}.btn{border:1px solid #d0d5dd;background:#fff;border-radius:10px;padding:10px 14px;font-weight:700;cursor:pointer;font-size:13px;white-space:nowrap;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;min-width:0;box-sizing:border-box}.btn-small{padding:8px 10px;font-size:12px}.btn-ghost{background:#fff}.btn-primary{background:#101828;color:#fff;border-color:#101828}.btn-danger{background:#c81e1e;color:#fff;border-color:#c81e1e}input[type=number],input[type=date],select,textarea{border:1px solid #d0d5dd;border-radius:10px;padding:10px 12px;font-size:13px;width:100%;box-sizing:border-box}.formGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.field{display:flex;flex-direction:column;gap:6px}.field span{font-size:12px;color:#667085;font-weight:700}.fieldFull{grid-column:1 / -1}.modalOverlay{position:fixed;inset:0;background:#1018288c;display:flex;align-items:center;justify-content:center;padding:14px;z-index:9999}.modalCard{width:min(920px,100%);max-height:90vh;overflow:auto;background:#fff;border-radius:16px;border:1px solid #e6e8ee}.modalHead{display:flex;justify-content:space-between;align-items:center;padding:12px 14px;border-bottom:1px solid #eef0f5}.modalTitle{font-weight:800}.modalClose{border:none;background:transparent;font-size:18px;cursor:pointer}.modalBody{padding:14px}.modalFooter{padding:12px 14px;border-top:1px solid #eef0f5}.modalFooterRow{display:flex;gap:10px;justify-content:flex-end;flex-wrap:wrap}.muted{color:#667085}.error{background:#fff1f1;border:1px solid #ffd0d0;color:#b42318;padding:10px 12px;border-radius:12px;margin-bottom:10px}@media(max-width:1024px){.balancesRow{grid-template-columns:repeat(3,minmax(0,1fr))}.historyBalancesRow{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:720px){.leavesWrap{padding:12px}.pageHeader{flex-direction:column;align-items:stretch}.pageHeader .btn{width:100%}.balancesRow,.historyBalancesRow{grid-template-columns:repeat(2,minmax(0,1fr))}.pendingItem{flex-direction:column}.pendingRight{justify-content:flex-start;width:100%}.pendingRight .btn{flex:1 1 calc(50% - 4px)}.formGrid{grid-template-columns:1fr}.table{min-width:760px}}@media(max-width:560px){.balancesRow,.historyBalancesRow{grid-template-columns:1fr}.card{padding:12px;border-radius:18px}.tableWrap{border:none;background:transparent;overflow:visible}.responsiveTable,.responsiveTable thead,.responsiveTable tbody,.responsiveTable th,.responsiveTable td,.responsiveTable tr{display:block}.responsiveTable{min-width:0;width:100%;background:transparent}.responsiveTable thead{display:none}.responsiveTable tbody{display:grid;gap:14px;width:100%}.responsiveTable tr{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;width:100%;max-width:100%;background:#fff;border:1px solid #e8edf3;border-radius:18px;padding:12px;box-shadow:0 6px 18px #1018280d;box-sizing:border-box}.responsiveTable td{width:auto;max-width:100%;min-width:0;margin:0;padding:10px 11px;border:1px solid #edf1f6;border-radius:14px;background:#fcfdff;box-sizing:border-box;overflow:hidden}.responsiveTable td:before{content:attr(data-label);display:block;margin-bottom:6px;color:#667085;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;line-height:1.2}.responsiveTable td[data-label=User],.responsiveTable td[data-label=Designation],.responsiveTable td[data-label=Casual],.responsiveTable td[data-label=Sick],.responsiveTable td[data-label=Emergency],.responsiveTable td[data-label=Pending],.responsiveTable td[data-label=Type],.responsiveTable td[data-label=Start],.responsiveTable td[data-label=End],.responsiveTable td[data-label=Days],.responsiveTable td[data-label=Status],.responsiveTable td[data-label=Created]{grid-column:span 1}.responsiveTable td[data-label=Total],.responsiveTable td[data-label=Actions]{grid-column:1 / -1;width:100%}.responsiveTable td[data-label=User],.responsiveTable td[data-label=Designation]{min-height:74px}.responsiveTable td[data-label=Total]{background:#f8fafc;border-color:#e2e8f0}.responsiveTable td[data-label=Actions]{background:#f8fafc;border-color:#e2e8f0;padding:10px}.rowActions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;width:100%;box-sizing:border-box}.rowActions .btn,.rowActions a.btn{width:100%;max-width:100%;min-width:0;padding:9px 6px;font-size:11px;border-radius:12px;white-space:nowrap;box-sizing:border-box;overflow:hidden;text-overflow:ellipsis}.rowActions .btn-primary{background:#0f172a;border-color:#0f172a}.pendingItem{padding:12px;gap:12px}.pendingTop b{font-size:15px}.pendingReason{padding:10px}.modalFooterRow .btn,.modalFooterRow a.btn{width:100%}}@media(max-width:430px){.leavesWrap{padding:10px}.pageTitle{font-size:24px}.pageSub{font-size:13px}.card{padding:10px}.responsiveTable tbody{gap:12px}.responsiveTable tr{gap:8px;padding:10px;border-radius:16px}.responsiveTable td{padding:9px 10px;border-radius:12px}.responsiveTable td[data-label=User],.responsiveTable td[data-label=Designation]{min-height:68px}.rowActions{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.rowActions .btn,.rowActions a.btn{font-size:11px;padding:9px 6px}.rowActions .btn:last-child,.rowActions a.btn:last-child{grid-column:1 / -1}}@media(max-width:380px){.responsiveTable tr{grid-template-columns:1fr}.responsiveTable td[data-label=User],.responsiveTable td[data-label=Designation],.responsiveTable td[data-label=Casual],.responsiveTable td[data-label=Sick],.responsiveTable td[data-label=Emergency],.responsiveTable td[data-label=Pending],.responsiveTable td[data-label=Total],.responsiveTable td[data-label=Actions],.responsiveTable td[data-label=Type],.responsiveTable td[data-label=Start],.responsiveTable td[data-label=End],.responsiveTable td[data-label=Days],.responsiveTable td[data-label=Status],.responsiveTable td[data-label=Created]{grid-column:1 / -1;width:100%}.rowActions{grid-template-columns:1fr}.pendingRight .btn{flex:1 1 100%}}*,*:before,*:after{box-sizing:border-box}.acctWrap{width:100%;padding:20px 18px 34px}.acctHeader{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:16px;flex-wrap:wrap}.acctTitle{font-size:28px;font-weight:900;color:#0f172a;line-height:1.2}.acctSub{margin-top:4px;color:#64748b;font-weight:700;line-height:1.5}.acctHeaderRight{display:flex;gap:10px;flex-wrap:wrap;min-width:0}.acctTabs{display:flex;gap:10px;flex-wrap:wrap;margin:8px 0 12px}.acctTab{border:1px solid #e6e8ee;background:#f8fafc;color:#0f172a;border-radius:999px;padding:10px 14px;font-weight:900;cursor:pointer;transition:background .2s ease,border-color .2s ease,color .2s ease}.acctTab.active{background:#0f172a;border-color:#0f172a;color:#fff}.acctAlert{border:1px solid #e5e7eb;border-radius:16px;padding:14px 16px;margin:14px 0}.acctAlert.ok{border-color:#bbf7d0;background:#f0fdf4}.acctAlert.err{border-color:#fecaca;background:#fff1f2}.acctAlertTitle{font-weight:900;margin-bottom:4px;color:#0f172a}.acctAlertText{font-weight:700;color:#334155;line-height:1.5}.acctGrid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:18px;margin-top:14px}.acctStack{display:grid;gap:16px}.acctCard{background:#fff;border:1px solid #e6e8ee;border-radius:20px;padding:18px;box-shadow:0 1px #0f172a08;min-width:0;overflow:hidden}.acctCardHeader{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding-bottom:12px;border-bottom:1px solid #eef2f7;margin-bottom:16px;flex-wrap:wrap}.acctCardTitle{font-weight:900;color:#0f172a;line-height:1.35}.acctCardHint{margin-top:4px;color:#64748b;font-weight:700;font-size:12px;line-height:1.5}.acctAvatar{width:44px;height:44px;border-radius:14px;border:1px solid #e6e8ee;display:grid;place-items:center;font-weight:900;color:#0f172a;background:#f8fafc;flex:0 0 auto}.acctAvatarImg{width:64px;height:64px;border-radius:50%;object-fit:cover;border:1px solid #e6e8ee;flex:0 0 auto}.acctLoading{padding:16px 4px;color:#64748b;font-weight:800}.acctForm{display:grid;gap:16px;min-width:0}.acctRow{display:grid;gap:7px;min-width:0}.acctLabel{font-size:12px;font-weight:900;color:#334155;line-height:1.4}.acctReq{color:#ef4444;font-weight:800;margin-left:4px}.acctInput,.acctTextarea{width:100%;min-width:0;max-width:100%;border:1px solid #e6e8ee;border-radius:14px;padding:12px 13px;font-weight:800;outline:none;background:#fff;color:#0f172a}.acctTextarea{resize:vertical;min-height:96px}.acctInput:focus,.acctTextarea:focus{border-color:#94a3b8}.acctGrid2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:start}.acctGrid3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;align-items:start}.acctActions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap;margin-top:2px}.acctBtn{border:1px solid #16a34a;background:#16a34a;color:#fff;border-radius:14px;padding:11px 16px;font-weight:900;cursor:pointer;min-height:44px}.acctBtn.dark{border-color:#0f172a;background:#0f172a}.acctBtn.subtle{border-color:#d0d5dd;background:#fff;color:#0f172a}.acctBtn:disabled{opacity:.6;cursor:not-allowed}.acctInlineMeta{width:100%;min-width:0;border:1px solid #e6e8ee;border-radius:14px;padding:12px 13px;font-weight:800;color:#0f172a;display:flex;align-items:center;gap:10px;flex-wrap:wrap;line-height:1.45}.acctInlineMeta .dot{color:#94a3b8}.acctDivider{height:1px;background:#eef2f7;margin:4px 0}.acctHintSmall{font-size:12px;color:#64748b;font-weight:700;line-height:1.45}.acctCompletion{margin-top:8px}.acctCompletionTop{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:12px;flex-wrap:wrap}.acctCompletionBadge{border:1px solid #e6e8ee;background:#f8fafc;border-radius:999px;padding:8px 12px;font-weight:900;color:#0f172a;flex:0 0 auto}.acctProgressBar{height:10px;border-radius:999px;background:#eef2f7;overflow:hidden}.acctProgressFill{height:100%;background:#16a34a;width:0%}.acctMissing{margin-top:12px;padding:12px;border-radius:16px;border:1px solid #e6e8ee;background:#fff}.acctMissing.ok{border-color:#bbf7d0;background:#f0fdf4;font-weight:900;color:#166534}.acctMissingTitle{font-weight:900;color:#0f172a;margin-bottom:8px}.acctMissingList{display:flex;flex-wrap:wrap;gap:8px}.acctChip{border:1px solid #e6e8ee;background:#f8fafc;border-radius:999px;padding:6px 10px;font-weight:800;font-size:12px;color:#0f172a;line-height:1.35}.acctDocsList{display:grid;gap:16px}.acctDocGroup{min-width:0}.acctDocGroupTitle{font-weight:900;color:#0f172a;margin-bottom:8px;text-transform:capitalize}.acctDocRow{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;padding:12px;border:1px solid #eef2f7;border-radius:16px;align-items:start}.acctDocName{min-width:0}.acctDocFile{font-weight:900;color:#0f172a;word-break:break-word;line-height:1.45}.acctDocMeta{margin-top:4px;font-size:12px;color:#64748b;font-weight:700;line-height:1.45;word-break:break-word}.acctDocTag{align-self:start;border:1px solid #e6e8ee;background:#f8fafc;border-radius:999px;padding:6px 10px;font-weight:900;font-size:12px;color:#0f172a;white-space:nowrap}.acctMuted{color:#64748b;font-weight:800;line-height:1.45}.acctPhotoBlock{border:1px solid #eef2f7;background:#fff;border-radius:16px;padding:14px;min-width:0}.acctDocImgBig{width:100%;max-width:650px;height:auto;border-radius:12px;border:1px solid #e6e8ee;display:block;background:#fff}@media(max-width:1180px){.acctGrid{grid-template-columns:1fr}.acctGrid3{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:860px){.acctWrap{padding:18px 14px 28px}.acctCard{padding:16px}.acctGrid2,.acctGrid3{grid-template-columns:1fr}.acctCardHeader{align-items:flex-start}.acctDocRow{grid-template-columns:1fr}.acctDocTag{justify-self:start}}@media(max-width:640px){.acctTitle{font-size:24px}.acctTabs{gap:8px}.acctTab{width:100%;text-align:center}.acctActions{justify-content:stretch}.acctBtn{width:100%}.acctInlineMeta{flex-direction:column;align-items:flex-start;gap:6px}.acctInlineMeta .dot{display:none}.acctCompletionTop{flex-direction:column;align-items:flex-start}}.formsPage{padding:20px}.formsHeader{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px;flex-wrap:wrap}.formsTitle{margin:0;font-size:28px;font-weight:800;color:#18212f}.formsSubtitle{margin:6px 0 0;color:#667085;font-size:14px}.formsHeaderRight{display:flex;align-items:center;gap:12px}.formsHeaderStat,.formsBadgeMuted{display:inline-flex;align-items:center;gap:8px;background:#fff;border:1px solid #e5e7eb;border-radius:999px;padding:10px 14px;font-size:14px;color:#344054}.formsAlert{margin-bottom:14px;padding:12px 14px;border-radius:12px;font-size:14px}.formsAlertErr{background:#fef3f2;color:#b42318;border:1px solid #fecdca}.formsAlertOk{background:#ecfdf3;color:#027a48;border:1px solid #abefc6}.formsTabs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-bottom:16px}.formsTab{border:1px solid #d0d5dd;background:#fff;color:#344054;border-radius:14px;padding:12px 14px;display:flex;flex-direction:column;gap:4px;text-align:left;cursor:pointer;font-weight:700}.formsTab.active{border-color:#f97316;background:#fff7ed;color:#9a3412}.formsTabCounts{font-size:12px;font-weight:600;color:#667085}.formsSummaryGrid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-bottom:16px}.formsSummaryCard{background:#fff;border:1px solid #e4e7ec;border-radius:16px;padding:14px 16px;box-shadow:0 10px 24px #1018280a}.formsSummaryLabel{font-size:13px;color:#667085;margin-bottom:8px}.formsSummaryValue{font-size:24px;font-weight:800;color:#101828}.formsToolbar{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:16px}.formsToolbarLeft,.formsToolbarRight{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.formsToolbar select,.formsToolbar input{height:42px;border:1px solid #d0d5dd;border-radius:12px;background:#fff;padding:0 12px;font-size:14px;outline:none}.formsToolbar input{min-width:320px}.formsListWrap{background:#fff;border:1px solid #e4e7ec;border-radius:18px;overflow:hidden;box-shadow:0 10px 24px #1018280a}.formsTable{width:100%}.formsTableHead,.formsRow{display:grid;grid-template-columns:1.15fr 1.1fr 1.35fr .8fr .4fr 1.2fr;gap:12px;align-items:center}.formsTableHead{padding:14px 16px;background:#f8fafc;border-bottom:1px solid #eaecf0;font-size:13px;font-weight:800;color:#475467}.formsRow{padding:14px 16px;border-bottom:1px solid #f2f4f7}.formsRow:last-child{border-bottom:0}.formsRow.isUnread{background:#fffaf5}.formsCell{min-width:0}.formsCellDate{word-break:break-word}.formsPrimary{font-weight:700;color:#101828;line-height:1.35;word-break:break-word}.formsMiniText{margin-top:4px;font-size:12px;color:#667085;word-break:break-word}.formsActions{display:flex;gap:8px;flex-wrap:wrap}.formsPrimaryBtn,.formsGhostBtn,.formsDangerBtn{border-radius:10px;padding:9px 12px;font-size:13px;font-weight:700;cursor:pointer;border:1px solid transparent}.formsPrimaryBtn{background:#f97316;color:#fff}.formsGhostBtn{background:#fff;color:#344054;border-color:#d0d5dd}.formsDangerBtn{background:#fff1f2;color:#b42318;border-color:#fecdd3}.formsPrimaryBtn:disabled,.formsGhostBtn:disabled,.formsDangerBtn:disabled{opacity:.6;cursor:not-allowed}.formsStatus{display:inline-flex;align-items:center;border-radius:999px;padding:6px 10px;font-size:12px;font-weight:800;text-transform:capitalize}.formsStatus.status-new{background:#fff7ed;color:#c2410c}.formsStatus.status-read{background:#eff6ff;color:#1d4ed8}.formsStatus.status-in_progress{background:#f5f3ff;color:#6d28d9}.formsStatus.status-resolved{background:#ecfdf3;color:#027a48}.formsUnreadDot{display:inline-flex;margin-left:8px;color:#b42318;font-size:12px;font-weight:800}.formsEmpty,.formsEmptyInline{padding:24px;color:#667085;text-align:center}.formsPagination{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:16px;flex-wrap:wrap}.formsPaginationText{color:#475467;font-size:14px}.fModalWide{width:min(1100px,96vw)}.formsDetailGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.formsDetailCard{background:#f8fafc;border:1px solid #eaecf0;border-radius:16px;padding:14px}.formsDetailCard h3{margin:0 0 12px;font-size:16px;color:#101828}.formsDetailPairs{display:grid;gap:8px;font-size:14px;color:#344054}.formsMessageBox{white-space:pre-wrap;word-break:break-word;font-size:14px;color:#344054;line-height:1.55}.formsPayload{margin:0;white-space:pre-wrap;word-break:break-word;font-size:12px;line-height:1.5;color:#344054;max-height:360px;overflow:auto}.formsAttachmentList{display:grid;gap:10px}.formsAttachmentItem{display:flex;justify-content:space-between;align-items:center;gap:12px;background:#fff;border:1px solid #eaecf0;border-radius:12px;padding:12px}.formsNoteInput{width:100%;border:1px solid #d0d5dd;border-radius:12px;padding:12px;font-size:14px;outline:none;resize:vertical;background:#fff}.formsModalFooter{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end;width:100%}.formsReadOnlyNote{margin-top:14px;color:#667085;font-size:13px}@media(max-width:1200px){.formsTabs,.formsSummaryGrid{grid-template-columns:repeat(3,minmax(0,1fr))}.formsTableHead,.formsRow{grid-template-columns:1.1fr 1fr 1.2fr .8fr .4fr 1.2fr}}@media(max-width:860px){.formsTabs,.formsSummaryGrid,.formsDetailGrid{grid-template-columns:1fr}.formsToolbar input{min-width:100%}.formsTableHead{display:none}.formsRow{grid-template-columns:1fr;gap:10px}.formsCell{padding-bottom:8px;border-bottom:1px dashed #eaecf0}.formsCell:last-child{padding-bottom:0;border-bottom:0}.formsAttachmentItem{flex-direction:column;align-items:stretch}}.topNav{background:#fff;border:1px solid #e6e8ee;border-radius:18px;padding:12px 14px;position:sticky;top:10px;z-index:50;margin:14px 16px;display:grid;grid-template-columns:auto 1fr auto;grid-template-areas:"brand menu actions";align-items:center;gap:14px;box-shadow:0 10px 28px #1018280f;min-width:0}.brand{grid-area:brand;display:flex;align-items:center;gap:10px;min-width:0}.brandLogoWrap{width:44px;height:44px;border-radius:14px;border:1px solid #e6e8ee;display:flex;align-items:center;justify-content:center;background:#fff;overflow:hidden;flex:0 0 auto}.brandLogo{width:40px;height:40px;object-fit:contain}.brandText{min-width:0}.brandName{font-weight:900;font-size:16px;color:#101828;line-height:1.1;white-space:nowrap}.brandSub{font-size:12px;color:#667085;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:280px}.topMenu{grid-area:menu;display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap;min-width:0}.topLink{padding:10px 14px;border-radius:999px;border:1px solid transparent;color:#101828;font-weight:800;font-size:13px;text-decoration:none;display:inline-flex;align-items:center}.topLink:hover{background:#f6f7fb}.topLink.active{background:#101828;color:#fff}.navRight{grid-area:actions;display:flex;align-items:center;gap:10px;justify-content:flex-end;justify-self:end}.logoutBtn{border:1px solid #d0d5dd;background:#fff;border-radius:12px;height:44px;padding:0 14px;font-weight:900;cursor:pointer}.logoutBtn:hover{background:#f6f7fb}.navLabel{display:inline-flex;align-items:center;gap:8px}.navBadge{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:#b42318;color:#fff;font-size:12px;font-weight:900;line-height:20px}.hamburgerBtn{display:none;width:44px;height:44px;border:1px solid #d0d5dd;background:#fff;border-radius:12px;padding:0;cursor:pointer}.hamburgerBtn:hover{background:#f6f7fb}.hamburgerIcon{display:flex;flex-direction:column;gap:4px;align-items:center;justify-content:center}.hamburgerLine{display:block;width:18px;height:2px;background:#101828;border-radius:999px}.mobileMenuOverlay{position:fixed;inset:0;background:#1018288c;z-index:9999;display:flex;justify-content:flex-end}.mobileMenu{width:min(360px,88vw);position:fixed;top:0;right:0;bottom:0;background:#fff;border-left:1px solid #e6e8ee;padding:14px 14px calc(18px + env(safe-area-inset-bottom,0px));display:flex;flex-direction:column;gap:10px;overflow:hidden;box-shadow:-16px 0 40px #10182824}.mobileMenuHeader{display:flex;align-items:center;justify-content:space-between}.mobileMenuTitle{font-weight:900;font-size:16px;color:#101828}.mobileCloseBtn{width:44px;height:44px;border-radius:14px;border:1px solid #e6e8ee;background:#fff;cursor:pointer;font-size:18px}.mobileCloseBtn:hover{background:#f6f7fb}.mobileMenuLinks{flex:1;min-height:0;overflow:auto;overscroll-behavior:contain;display:flex;flex-direction:column;gap:8px;padding-top:6px;padding-right:4px}.mobileLink{padding:12px 14px;border-radius:14px;border:1px solid #e6e8ee;text-decoration:none;color:#101828;font-weight:900;display:flex;justify-content:space-between;align-items:center}.mobileLink:hover{background:#f6f7fb}.mobileLink.active{background:#101828;color:#fff;border-color:#101828}.mobileMenuFooter{flex:0 0 auto;padding-top:10px;border-top:1px solid #eef0f4;background:#fff}.mobileLogoutBtn{width:100%;height:52px;border:1px solid #d0d5dd;background:#fff;border-radius:14px;font-weight:900;cursor:pointer}.mobileLogoutBtn:hover{background:#f6f7fb}@media(max-width:900px){.topNav{margin:10px;padding:10px 12px;grid-template-columns:1fr auto;grid-template-areas:"brand actions"}.brandSub{max-width:180px}.topMenu,.logoutBtn{display:none!important}.hamburgerBtn{display:inline-flex!important;align-items:center;justify-content:center}}:root{--font-main: "Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif;--text: #111827;--muted: #6b7280;--bg: #f7f8fb;--card: #ffffff;--border: #e7e9f2}html,body{height:100%}body{margin:0;font-family:var(--font-main);font-size:14px;line-height:1.45;color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}input,select,button{font-family:var(--font-main);padding:8px;font-size:14px}button{cursor:pointer}a{text-decoration:none;color:#0b57d0}a:hover{text-decoration:underline}h1{font-size:22px;font-weight:700;margin:0 0 14px;letter-spacing:-.01em}h2{font-size:16px;font-weight:600;margin:0 0 10px}h3{font-size:14px;font-weight:600;margin:0 0 8px}.appShell{min-height:100vh;background:var(--bg)}.topNav{position:sticky;top:0;z-index:10;background:var(--card);border:1px solid var(--border);border-radius:16px;margin:14px;padding:10px 14px;display:flex;align-items:center;gap:14px}.brand{display:flex;align-items:center;gap:10px;min-width:260px}.brandLogoWrap{width:44px;height:44px;border-radius:14px;background:#e9f7f2;display:grid;place-items:center;overflow:hidden}.brandLogo{width:34px;height:34px;object-fit:contain}.brandText{display:grid;gap:2px}.brandName{font-weight:700;letter-spacing:-.01em;font-size:16px}.brandSub{font-size:12px;color:var(--muted)}.topMenu{flex:1;display:flex;align-items:center;justify-content:flex-end;gap:10px;overflow-x:auto;padding:4px 6px}.topLink{text-decoration:none;color:var(--text);padding:10px 14px;border-radius:12px;border:1px solid transparent;font-size:14px;font-weight:500;white-space:nowrap}.topLink:hover{background:#f3f4f6}.topLink.active{background:#0b0b0b;color:#fff;font-weight:600}.logoutBtn{border:1px solid #e5e7eb;background:#fff;padding:10px 14px;border-radius:12px;font-size:14px;font-weight:500;cursor:pointer}.logoutBtn:hover{background:#f3f4f6}.pageWrap{padding:14px}
