*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%;background:#010502;color:#e9f3ea;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}body{font-size:12px}a{color:#8eea36}button,input,select,textarea{font:inherit}button,a{transition:.15s ease}button{cursor:pointer}.portal-shell{min-height:100vh;display:grid;grid-template-columns:158px minmax(0,1fr);background:radial-gradient(circle at 70% 0,#071209 0,#010502 42%)}.side{position:sticky;top:0;height:100vh;border-right:1px solid #365d1d;background:#020503;display:flex;flex-direction:column;overflow:hidden}.portal-logo{padding:13px 13px 10px;text-decoration:none;border-bottom:1px solid #273b22;display:grid;letter-spacing:.13em}.portal-logo b{font-size:17px;color:#45ef79;font-weight:500}.portal-logo strong{font-size:17px;color:#fff;font-weight:500}.portal-logo small{font-size:7px;color:#c7a86d;letter-spacing:.35em}.side nav{overflow:auto;padding:7px;display:grid;gap:2px}.side nav a{display:flex;align-items:center;gap:7px;min-height:29px;padding:5px 7px;border:1px solid transparent;border-radius:4px;color:#bbc7bc;text-decoration:none;font-size:9px}.side nav a span{display:grid;place-items:center;width:17px;height:17px;border:1px solid #3a5137;border-radius:50%;color:#76df35;font-size:7px}.side nav a:hover,.side nav a.active{background:#0b2a0e;border-color:#3d8c20;color:#fff}.side-logout{margin:auto 8px 9px;background:#0b160b;color:#fff;border:1px solid #5f362c;padding:8px}.portal-main{min-width:0}.portal-top{min-height:78px;display:grid;grid-template-columns:320px 1fr auto;gap:14px;align-items:center;border-bottom:1px solid #314b27;padding:7px 14px;background:#020503}.identity-mini{display:flex;gap:10px;align-items:center}.identity-mini img,.photo-fallback{width:62px;height:62px;border:1px solid #506a4d;object-fit:cover;background:#071107}.photo-fallback{display:grid;place-items:center;font-size:28px;color:#7fff38}.identity-mini>div{display:grid;gap:2px}.identity-mini b{font-size:15px;color:#fff}.identity-mini small{color:#aeb9af}.identity-mini em{font-style:normal;color:#89e32e;font-size:9px}.portal-title h1{font-size:18px;margin:0;color:#f2f5f2;letter-spacing:.03em}.portal-title p{margin:4px 0 0;color:#a2b2a5;font-size:9px}.security-badges{display:flex;gap:5px;flex-wrap:wrap;justify-content:flex-end}.security-badges span{border:1px solid #4b881b;padding:7px 8px;border-radius:4px;color:#aaff46;font-size:7px;white-space:nowrap}.hierarchy-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(135px,1fr));gap:0;border-bottom:1px solid #4a6c25;background:#040904;padding:0 14px}.hierarchy-strip article{padding:8px 10px;border-right:1px solid #243b23;display:grid;gap:2px}.hierarchy-strip small{color:#75877a;font-size:6.5px;text-transform:uppercase}.hierarchy-strip b{color:#9bea37;font-size:8.5px}.hierarchy-strip span{color:#b5c0b7;font-size:7px}.portal-content{padding:10px 12px 18px;display:grid;gap:10px}.portal-footer{margin:0 12px 14px;border:1px solid #3b5532;padding:13px;display:grid;grid-template-columns:repeat(3,1fr);gap:10px;color:#c1ccc3;text-align:center;font-size:8px}.panel{border:1px solid #35512a;background:#030703;padding:10px}.panel>header,.page-head{display:flex;justify-content:space-between;gap:12px;align-items:center}.panel>header{border-bottom:1px solid #233b22;padding-bottom:7px;margin-bottom:8px}.panel>header b{color:#eaf4eb;font-size:9px}.panel>header a{font-size:7px;text-decoration:none}.panel h3{margin:7px 0;color:#fff}.panel p{color:#a6b4a8;line-height:1.45}.panel small{color:#829187}.page-head{border:1px solid #314a29;background:#030703;padding:11px}.page-head small{color:#77e72c;font-size:7px;letter-spacing:.09em;text-transform:uppercase}.page-head h2{margin:3px 0 0;font-size:18px;color:#f1f5f1}.page-head p{margin:4px 0 0;color:#9aaa9d;font-size:9px}.action-row{display:flex;gap:6px;flex-wrap:wrap;align-items:center}.action-row a,.action-row button,.table-action{border:1px solid #4a8c25;background:#061006;color:#dffbd9;text-decoration:none;padding:7px 9px;font-weight:800;font-size:8px}.action-row .primary,.primary{background:#27712f;border-color:#54c55b;color:#fff}.action-row .danger,.danger{border-color:#99453e;color:#ffbbb5}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:8px}.simple-card{display:grid;gap:5px}.simple-card>small{font-size:7px;color:#7d987f}.simple-card>strong{font-size:20px;color:#94ef48}.simple-card>span{color:#a9b6aa}.status{display:inline-flex;width:max-content;align-items:center;border:1px solid #52664e;padding:3px 6px;font-size:7px;font-weight:900;color:#cbd6cc}.status-active,.status-approved,.status-published,.status-completed,.status-present,.status-sent{border-color:#3b8b29;color:#8cff42}.status-submitted,.status-pending,.status-pending-hr-approval,.status-on-hold,.status-in-progress,.status-generated{border-color:#a37c2c;color:#f0c83d}.status-rejected,.status-cancelled,.status-failed,.status-suspended,.status-absent{border-color:#a3433b;color:#ff6e5f}.journey>header span{color:#8fc640;font-size:7px}.journey>div{display:grid;grid-template-columns:repeat(12,minmax(80px,1fr));gap:5px}.journey article{border:1px solid #3f4536;padding:8px 5px;text-align:center;display:grid;gap:4px;min-height:68px}.journey article.done{border-color:#4a8b24;background:#071108}.journey article small{margin:auto;width:19px;height:19px;display:grid;place-items:center;border:1px solid #6d7a65;border-radius:50%;color:#b5c1b6}.journey article.done small{border-color:#69c92d;color:#8cff49}.journey article b{font-size:7px}.journey article span{font-size:6px;color:#958d62}.journey article.done span{color:#76d82f}.dashboard-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:8px}.work,.attendance-mini{grid-column:span 2}.metric-row{display:grid;grid-template-columns:repeat(5,1fr);gap:6px}.metric-row>div{border:1px solid #2b4828;padding:8px;display:grid;gap:4px}.metric-row small{font-size:6px}.metric-row strong{color:#8eee37;font-size:15px}.roster-mini h3,.pay-mini h3{font-size:18px;color:#8cec32}.mini-attendance{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.mini-attendance>div{border:1px solid #263d25;padding:5px;display:grid;gap:3px}.mini-attendance b{font-size:8px}.mini-attendance small{font-size:6.5px}.mini-attendance .status{font-size:5.5px;padding:2px 3px}.dashboard-list{display:grid;gap:0}.dashboard-list span{display:flex;justify-content:space-between;gap:12px;padding:7px 0;border-bottom:1px solid #1b311d;color:#a7b1a9}.dashboard-list b{color:#9bea3a}.performance-value{font-size:35px;color:#8dea32;font-weight:700;margin:8px 0}.submission{grid-column:1/-1}.hr-only{border:1px solid #8e5f1a;background:#0d0903;padding:12px;text-align:center;display:grid;gap:4px}.hr-only b{color:#ffb22b}.hr-only span{color:#cbb790;font-size:8px}.table-scroll{overflow:auto}table{border-collapse:collapse;width:100%;min-width:760px}th,td{text-align:left;padding:7px 8px;border-bottom:1px solid #1e351f;vertical-align:top;font-size:8px}th{color:#9ddd55;background:#051006;position:sticky;top:0}td{color:#d4ddd5}.request-layout{display:grid;grid-template-columns:minmax(380px,1.6fr) minmax(260px,.7fr);gap:8px}.form{display:grid;gap:8px}.form label{display:grid;gap:4px;color:#9bb29f;font-size:8px}.form input,.form select,.form textarea,.upload-form input,.upload-form select{width:100%;background:#010502;color:#fff;border:1px solid #365a32;padding:9px}.form textarea{min-height:95px;resize:vertical}.date-pair{display:grid;grid-template-columns:1fr 1fr;gap:8px}.form button,.upload-form button{padding:9px;border:1px solid #58b548;font-weight:900}.upload-form{display:grid;grid-template-columns:240px 1fr auto;gap:8px;align-items:center}.messages{display:grid;gap:7px}.center-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:8px}.center-grid a{border:1px solid #38562e;background:#030703;padding:13px;text-decoration:none;display:grid;gap:7px;min-height:90px}.center-grid a b{color:#eff7ef}.center-grid a strong{font-size:24px;color:#85e932}.center-grid a span{color:#889d8b;font-size:8px}.hierarchy-flow{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:6px}.hierarchy-flow article{border:1px solid #38572f;background:#030703;padding:10px;display:grid;gap:4px}.hierarchy-flow small{color:#75877a}.hierarchy-flow b{color:#9cea3d}.hierarchy-flow span{color:#a8b5a9}.pay-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:8px}.payslip .net-pay{font-size:26px;color:#99ef4b;margin:10px 0}.payslip dl,.digital-id dl{display:grid;grid-template-columns:1fr 1fr;margin:0}.payslip dt,.payslip dd,.digital-id dt,.digital-id dd{padding:6px;border-bottom:1px solid #1e3420;margin:0}.payslip dt,.digital-id dt{color:#859388}.payslip dd,.digital-id dd{text-align:right}.id-card-page{display:grid;grid-template-columns:minmax(380px,600px) 1fr;gap:10px}.digital-id{border:1px solid #74a945;border-radius:10px;background:linear-gradient(145deg,#071309,#010502);padding:14px;min-height:360px}.digital-id header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #31542d;padding-bottom:10px}.digital-id header>div{display:grid}.digital-id header small{color:#7d9d82}.digital-id-body{display:grid;grid-template-columns:135px 1fr;gap:15px;padding:16px 0}.digital-id-body img,.id-photo-empty{width:135px;height:165px;object-fit:cover;border:1px solid #4f7c42;background:#061008}.id-photo-empty{display:grid;place-items:center;text-align:center;color:#84c64a}.digital-id-body h3{font-size:21px;margin:4px 0;color:#fff}.digital-id-body p{margin:0 0 8px;color:#92d253}.barcode{font-family:monospace;letter-spacing:.12em;border:1px solid #45683c;background:#eef4eb;color:#091009;padding:12px;text-align:center;overflow-wrap:anywhere}.digital-id footer{margin-top:8px;color:#829586;font-size:8px}.capture-grid{display:grid;grid-template-columns:minmax(480px,1.6fr) minmax(270px,.7fr);gap:8px}.camera-panel{border:1px solid #36572f;background:#020603;padding:10px}.camera-panel video{width:100%;max-height:560px;background:#000;object-fit:cover}.preview-panel img{width:100%;max-height:380px;object-fit:cover;border:1px solid #426b39}.preview-panel .id-photo-empty{width:100%;height:300px}.task header{display:flex;justify-content:space-between}.task em{color:#e6b546;font-style:normal}.event-row{display:flex;justify-content:space-between;padding:8px;border-bottom:1px solid #1d321f}.record-json{white-space:pre-wrap;overflow:auto;max-height:300px;color:#b8c5b9;font-size:8px}.error,.success{padding:10px;border-left:3px solid;background:#100605}.error{border-color:#e4574b;color:#ffc3bd}.success{border-color:#6fdb38;background:#061006;color:#bfffa5}.auth{width:min(620px,calc(100% - 32px));margin:8vh auto;border:1px solid #2e6c40;border-radius:28px;padding:36px;background:#031008}.auth-login{margin-top:7vh}.login-brand{display:grid;width:max-content;margin-bottom:26px;letter-spacing:.12em}.login-brand b{font-size:20px;color:#45ef79}.login-brand strong{font-size:20px;color:#fff}.login-brand small{font-size:8px;color:#cfaf74}.auth .eyebrow{color:#6cf4b0;text-transform:uppercase;letter-spacing:.18em}.auth h1{font-size:38px;margin:22px 0}.muted,.auth-note{color:#8fb7a0;line-height:1.5}.auth .form input{padding:16px;border-radius:14px}.auth .primary{padding:15px;border-radius:14px}.scope-list{display:grid;gap:8px}.scope{border:1px solid #285a39;padding:12px;display:flex;justify-content:space-between;align-items:center}.scope .primary{padding:8px 14px}.auth a{font-weight:800}.portal-footer,.hr-only{margin-top:10px}@media(max-width:1300px){.portal-top{grid-template-columns:280px 1fr}.security-badges{grid-column:1/-1;justify-content:flex-start}.journey>div{grid-template-columns:repeat(6,1fr)}.dashboard-grid{grid-template-columns:1fr 1fr}.work,.attendance-mini{grid-column:span 2}}@media(max-width:900px){.portal-shell{grid-template-columns:1fr}.side{position:relative;height:auto}.portal-logo{display:flex;gap:8px}.side nav{display:flex;overflow:auto}.side nav a{min-width:max-content}.side-logout{position:absolute;right:8px;top:8px;margin:0}.portal-top{grid-template-columns:1fr}.portal-title{order:-1}.hierarchy-strip{overflow:auto;display:flex}.hierarchy-strip article{min-width:150px}.dashboard-grid,.request-layout,.id-card-page,.capture-grid{grid-template-columns:1fr}.work,.attendance-mini{grid-column:auto}.journey>div{grid-template-columns:repeat(4,1fr)}.upload-form,.portal-footer{grid-template-columns:1fr}.metric-row{grid-template-columns:repeat(2,1fr)}}@media(max-width:560px){.portal-content{padding:7px}.identity-mini img,.photo-fallback{width:48px;height:48px}.portal-title h1{font-size:14px}.journey>div{grid-template-columns:repeat(2,1fr)}.dashboard-grid{grid-template-columns:1fr}.mini-attendance{grid-template-columns:repeat(2,1fr)}.date-pair,.digital-id-body{grid-template-columns:1fr}.security-badges span{font-size:6px}.page-head{display:grid}.metric-row{grid-template-columns:1fr}}@media print{.side,.security-badges,.action-row,.portal-footer{display:none!important}.portal-shell{display:block}.portal-content{padding:0}.panel,.digital-id{break-inside:avoid}}.staff-motivation-strip{margin:8px 12px 0;border:1px solid #365f2a;background:linear-gradient(90deg,#061307,#020603);padding:10px 12px;display:grid;grid-template-columns:minmax(140px,220px) 1fr;gap:12px;align-items:center}.staff-motivation-strip b{color:#9aff4a;font-size:10px;letter-spacing:.03em}.staff-motivation-strip span{color:#c6d8c8;font-size:9px;line-height:1.5}.portal-footer{border-color:#244225;color:#88a78d}@media(max-width:700px){.staff-motivation-strip{grid-template-columns:1fr}}.weekly-roster{overflow:hidden}.week-grid{display:grid;grid-template-columns:repeat(7,minmax(120px,1fr));gap:6px}.week-grid article{min-height:92px;border:1px solid #2c4b29;background:#030803;padding:9px;display:grid;gap:5px}.week-grid article.today{border-color:#80e938;box-shadow:inset 0 0 0 1px #80e938}.week-grid article.closed{border-color:#6c3a31;background:#0c0504}.week-grid article small{font-size:7px;color:#8fa391}.week-grid article>b{font-size:12px;color:#fff}.week-grid article strong{font-size:9px;color:#9cf04b}.week-grid article.closed strong{color:#ff8e7f}.week-grid article span{font-size:7px;color:#91a395}.output-light{border:1px solid #394d35;background:#030703;padding:12px;display:flex;gap:11px;align-items:center}.output-light .signal-dot,.report-state .signal-dot{width:18px;height:18px;border-radius:50%;display:block;flex:0 0 auto;background:#5c655b;box-shadow:0 0 10px #222}.output-light>div{display:grid;gap:2px}.output-light small{font-size:7px;color:#8b9d8d}.output-light strong{font-size:28px;line-height:1}.output-light em{font-style:normal;font-size:8px;font-weight:800}.light-green .signal-dot,.signal-dot.light-green{background:#70ff38;box-shadow:0 0 12px #4bff1f}.light-green strong,.light-green em{color:#8fff4a}.light-yellow .signal-dot,.signal-dot.light-yellow{background:#ffd43d;box-shadow:0 0 12px #e9bc20}.light-yellow strong,.light-yellow em{color:#ffd84c}.light-red .signal-dot,.signal-dot.light-red{background:#ff5447;box-shadow:0 0 12px #dc3025}.light-red strong,.light-red em{color:#ff756a}.remote-task-summary{display:grid;gap:10px}.remote-task-list{display:grid;gap:5px}.remote-task-list article{border:1px solid #263d24;padding:8px;display:grid;grid-template-columns:100px 1fr auto;gap:10px;align-items:center}.remote-task-list time{color:#9bea3a;font-weight:800}.remote-task-list article>div{display:grid;gap:3px}.remote-task-list small{color:#839286}.task-score{min-width:52px;padding:7px 9px;border:1px solid;text-align:center;font-weight:900}.task-green{border-color:#4ab22c;color:#8dff4e;background:#071308}.task-yellow{border-color:#a98927;color:#ffd955;background:#110e03}.task-red{border-color:#a9433c;color:#ff786e;background:#120504}.remote-report-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:8px}.remote-report-task>header{align-items:flex-start}.remote-report-task>header>div{display:grid;gap:3px}.remote-report-task time{color:#9bea3a;font-size:11px;font-weight:900}.report-state{display:flex;align-items:center;gap:7px;margin:8px 0}.report-state .signal-dot{width:12px;height:12px}.latest-report{border:1px solid #263c25;background:#020502;padding:8px;margin:8px 0}.latest-report p{margin:4px 0 0}.task-report-input{width:100%;min-height:90px;background:#010502;color:#eef6ef;border:1px solid #365a32;padding:9px;resize:vertical;margin:8px 0}.report-history{margin-top:8px;border-top:1px solid #253b24;padding-top:7px}.report-history summary{cursor:pointer;color:#9bea3a;font-size:8px;font-weight:800}.report-history>div{display:grid;grid-template-columns:70px 1fr;gap:5px;padding:7px 0;border-bottom:1px solid #1d311d}.report-history>div p{grid-column:1/-1;margin:0}.report-history>div span{color:#859487;font-size:7px}@media(max-width:1100px){.week-grid{grid-template-columns:repeat(4,1fr)}}@media(max-width:650px){.week-grid{grid-template-columns:1fr 1fr}.remote-task-list article{grid-template-columns:1fr}.remote-report-grid{grid-template-columns:1fr}}@keyframes er-staff-fade-up{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.portal-top,.hierarchy-strip,.staff-motivation-strip,.portal-content>.panel,.portal-content>.page-head,.portal-content>.cards,.portal-content>.dashboard-grid,.portal-content>.weekly-roster,.portal-content>.remote-task-summary,.portal-content>.remote-report-grid{animation:er-staff-fade-up .42s cubic-bezier(.2,.7,.2,1) both}.portal-content>*:nth-child(2){animation-delay:.04s}.portal-content>*:nth-child(4){animation-delay:.12s}.portal-content>*:nth-child(5){animation-delay:.16s}button,.action-row a,.table-action,.side nav a,.center-grid a,.scope .primary{transform:translateY(0);transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease,background-color .16s ease,color .16s ease}button:hover,.action-row a:hover,.table-action:hover,.side nav a:hover,.center-grid a:hover,.scope .primary:hover{transform:translateY(-2px);box-shadow:0 7px 18px #00000047}button:active,.action-row a:active,.table-action:active,.side nav a:active,.center-grid a:active,.scope .primary:active{transform:translateY(0);box-shadow:none}button:disabled{transform:none!important;box-shadow:none!important;cursor:not-allowed}@media(prefers-reduced-motion:reduce){.portal-top,.hierarchy-strip,.staff-motivation-strip,.portal-content>.panel,.portal-content>.page-head,.portal-content>.cards,.portal-content>.dashboard-grid,.portal-content>.weekly-roster,.portal-content>.remote-task-summary,.portal-content>.remote-report-grid{animation:none!important}button,.action-row a,.table-action,.side nav a,.center-grid a,.scope .primary{transition:none!important;transform:none!important}}.portal-shell,.auth{animation:er-staff-fade-up .32s ease-out both}.portal-content>*{animation:er-staff-fade-up .42s cubic-bezier(.2,.7,.2,1) both}.portal-content>*:nth-child(1){animation-delay:.02s}.portal-content>*:nth-child(2){animation-delay:.05s}.portal-content>*:nth-child(3){animation-delay:.08s}.portal-content>*:nth-child(4){animation-delay:.11s}.portal-content>*:nth-child(5){animation-delay:.14s}.portal-content>*:nth-child(n+6){animation-delay:.17s}.portal-shell button,.auth button,.portal-shell .action-row a,.portal-shell .table-action,.portal-shell .side nav a,.portal-shell .center-grid a,.portal-shell .scope .primary,.portal-shell .panel a,.auth a{transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease,background-color .16s ease,color .16s ease}.portal-shell button:hover,.auth button:hover,.portal-shell .action-row a:hover,.portal-shell .table-action:hover,.portal-shell .side nav a:hover,.portal-shell .center-grid a:hover,.portal-shell .scope .primary:hover,.portal-shell .panel a:hover,.auth a:hover{transform:translateY(-2px);box-shadow:0 7px 18px #00000047}.portal-shell button:active,.auth button:active,.portal-shell .action-row a:active,.portal-shell .table-action:active,.portal-shell .side nav a:active,.portal-shell .center-grid a:active,.portal-shell .scope .primary:active,.portal-shell .panel a:active,.auth a:active{transform:translateY(0);box-shadow:none}@media(prefers-reduced-motion:reduce){.portal-shell,.auth,.portal-content>*{animation:none!important}.portal-shell button,.auth button,.portal-shell .action-row a,.portal-shell .table-action,.portal-shell .side nav a,.portal-shell .center-grid a,.portal-shell .scope .primary,.portal-shell .panel a,.auth a{transition:none!important;transform:none!important}}.staff-identity-codes{margin:8px 12px 0;border:1px solid #416b2c;background:linear-gradient(90deg,#041006,#020703);padding:8px 10px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;animation:er-staff-fade-up .42s cubic-bezier(.2,.7,.2,1) both}.identity-code-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.identity-code-meta span{min-width:0;border-right:1px solid #263f25;padding:4px 8px;display:grid;gap:3px}.identity-code-meta small{font-size:6px;color:#78937c;letter-spacing:.08em}.identity-code-meta b{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:8px;color:#a3f05e;overflow-wrap:anywhere}.identity-code-visuals{display:flex;gap:8px;align-items:center}.identity-code-visuals figure{margin:0;border:1px solid #42633a;background:#eef4eb;padding:4px;display:grid;place-items:center}.identity-code-visuals figure img{display:block;width:190px;height:54px;object-fit:contain}.identity-code-visuals figure.qr img{width:66px;height:66px}.identity-code-visuals figcaption{margin-top:2px;color:#132114;font-size:5.5px;font-weight:800;letter-spacing:.05em}@media(max-width:1050px){.staff-identity-codes{grid-template-columns:1fr}.identity-code-visuals{justify-content:flex-start}.identity-code-meta{grid-template-columns:1fr}}@media(max-width:560px){.identity-code-visuals{display:grid;grid-template-columns:1fr auto}.identity-code-visuals figure img{width:150px}.staff-identity-codes{margin:7px}}@media(prefers-reduced-motion:reduce){.staff-identity-codes{animation:none!important}}.portal-logo{padding:9px 10px 8px;display:block;background:#020503}.portal-brand-image{display:block;width:100%;height:66px;object-fit:contain;object-position:center}.portal-top{min-height:122px;grid-template-columns:minmax(350px,440px) 1fr auto;align-items:center}.identity-mini{align-items:flex-start}.identity-mini>img,.identity-mini>.photo-fallback{width:74px;height:88px;flex:0 0 auto}.identity-mini-details{display:grid;gap:2px;min-width:0}.identity-mini-details>b{font-size:15px;color:#fff}.identity-mini-details>small{color:#aeb9af}.identity-mini-details>em{font-style:normal;color:#89e32e;font-size:9px;font-weight:800}.identity-under-id{margin-top:5px;display:grid;grid-template-columns:145px 48px minmax(0,1fr);gap:6px;align-items:center;max-width:360px}.identity-under-id>img{display:block;border:1px solid #34562e;background:#eef4eb;object-fit:contain}.identity-under-id .mini-barcode{width:145px;height:40px;padding:2px}.identity-under-id .mini-qr{width:48px;height:48px;padding:2px}.identity-inline-text{display:grid;gap:2px;min-width:0}.identity-inline-text span{font:700 6.5px ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;color:#a5ef65;overflow-wrap:anywhere}.identity-inline-text small{font:500 5.8px ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;color:#7f9582;overflow-wrap:anywhere}.brand-logo,.auth-brand-image{display:block;max-width:100%;height:auto}.login-brand,.auth-brand{width:220px;margin:0 0 18px}.login-brand{gap:7px}.login-brand small{color:#cfaf74;letter-spacing:.28em}.auth-brand-image{width:220px;max-height:110px;object-fit:contain;object-position:left center}@media(max-width:1300px){.portal-top{grid-template-columns:minmax(330px,430px) 1fr}.identity-under-id{grid-template-columns:135px 44px 1fr}.identity-under-id .mini-barcode{width:135px}.identity-under-id .mini-qr{width:44px;height:44px}}@media(max-width:900px){.portal-brand-image{height:58px;width:150px;object-position:left center}.portal-top{grid-template-columns:1fr}.identity-under-id{max-width:100%}}@media(max-width:560px){.identity-mini{align-items:flex-start}.identity-mini>img,.identity-mini>.photo-fallback{width:58px;height:72px}.identity-under-id{grid-template-columns:minmax(110px,1fr) 42px;max-width:250px}.identity-under-id .mini-barcode{width:100%;height:38px}.identity-under-id .mini-qr{width:42px;height:42px}.identity-inline-text{grid-column:1/-1}.portal-brand-image{height:52px}}.physical-id-cards{display:grid;grid-template-columns:repeat(2,minmax(430px,1fr));gap:16px;align-items:start}.physical-id-card{position:relative;width:100%;aspect-ratio:85.6/53.98;background:#f7f9f4;color:#0d1710;border:1px solid #8fa18d;border-radius:12px;overflow:hidden;box-shadow:0 14px 38px #00000052;font-size:10px}.physical-id-card:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(44,126,52,.035),transparent 52%),radial-gradient(circle at 85% 15%,rgba(44,126,52,.055),transparent 30%);pointer-events:none}.id-brand-row{position:relative;height:15%;display:flex;align-items:center;gap:10px;padding:8px 12px;border-bottom:1px solid #a9b7a6;background:#fbfcfa}.id-brand-row>img{width:116px;max-height:36px;object-fit:contain;object-position:left center}.id-card-title{display:grid;gap:1px;line-height:1.05}.id-card-title b{font-size:10px;letter-spacing:.12em}.id-card-title small{font-size:6.5px;color:#526355}.id-card-state{margin-left:auto;border:1px solid #849281;padding:4px 7px;font-size:6.5px;font-weight:900;letter-spacing:.06em}.state-active,.state-approved{border-color:#4f9a4d;color:#27752b}.state-draft{border-color:#b49042;color:#835e12}.id-front-main{position:relative;height:42%;display:grid;grid-template-columns:27% 1fr;gap:12px;padding:10px 12px 6px}.id-photo-panel{min-width:0}.id-photo-panel img,.id-photo-panel .id-photo-empty{width:100%;height:100%;max-height:128px;object-fit:cover;border:1px solid #81927d;background:#fff}.id-person-panel{min-width:0}.id-person-panel h3{margin:0 0 2px;font-size:18px;color:#111b13;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.id-person-panel>p{margin:0 0 7px;color:#35783b;font-size:10px;font-weight:700}.id-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px 10px}.id-fields span{display:grid;min-width:0}.id-fields small,.id-valid-row small{font-size:5.5px;color:#69776b;letter-spacing:.06em}.id-fields b,.id-valid-row b{font-size:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.id-valid-row{position:relative;height:14%;display:grid;grid-template-columns:.85fr .85fr 1fr 1fr;gap:10px;align-items:end;padding:3px 12px 6px;border-top:1px solid #c0cbc0}.id-valid-row span{display:grid}.id-sign i{height:12px;border-bottom:1px solid #111;display:block}.id-sign small{text-align:center;margin-top:2px}.id-code-row{position:relative;height:20%;display:grid;grid-template-columns:1fr 62px;gap:10px;padding:5px 12px 7px;align-items:center}.id-code-row img{background:#fff;border:1px solid #aeb8ac;object-fit:contain}.id-barcode-img{width:100%;height:54px}.id-qr-img{width:54px;height:54px;justify-self:end}.physical-id-card footer{position:absolute;left:0;right:0;bottom:0;height:9%;background:#2f7e3a;color:#fff;display:flex;justify-content:space-between;align-items:center;padding:0 12px;font-size:6.5px;letter-spacing:.06em}.id-back-grid{position:relative;height:67%;display:grid;grid-template-columns:1.08fr .92fr;gap:12px;padding:9px 12px 4px}.id-back-grid section{min-width:0}.id-back-grid h4{margin:0 0 3px;color:#2e7b39;font-size:7px;letter-spacing:.09em}.id-back-grid p{margin:0 0 6px;color:#283229;font-size:7px;line-height:1.28}.id-back-grid dl{display:grid;grid-template-columns:36% 64%;margin:0 0 7px;font-size:6.8px}.id-back-grid dt,.id-back-grid dd{margin:0;padding:1.2px 0;border-bottom:1px dotted #c7d0c6}.id-back-grid dt{color:#687569}.id-back-grid dd{text-align:right;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.id-verify{border-left:1px solid #b9c5b8;padding-left:12px}.id-back-codes{display:grid;grid-template-columns:62px 1fr;gap:7px;align-items:center;margin:2px 0 6px}.id-back-codes img{background:#fff;border:1px solid #b0bbb0;object-fit:contain}.id-back-codes img:first-child{width:60px;height:60px}.id-back-codes img:last-child{width:100%;height:42px}.id-verify-note{font-size:6.2px!important;color:#5c675d!important}.id-company-contact{position:absolute;left:12px;right:12px;bottom:9%;height:9%;display:flex;gap:10px;align-items:center;border-top:1px solid #c7d0c6;font-size:6.1px;color:#59665a;white-space:nowrap;overflow:hidden}.id-company-contact span{overflow:hidden;text-overflow:ellipsis}.id-card-control{margin-top:2px}.id-card-control .dashboard-list b{max-width:65%;overflow-wrap:anywhere;text-align:right}@media(max-width:1180px){.physical-id-cards{grid-template-columns:1fr}.physical-id-card{max-width:720px}}@media(max-width:620px){.physical-id-card{border-radius:7px;font-size:8px}.id-brand-row>img{width:92px}.id-person-panel h3{font-size:14px}.id-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.id-valid-row{grid-template-columns:1fr 1fr}.id-valid-row .id-sign{display:none}.id-back-grid{gap:7px;padding-left:8px;padding-right:8px}.id-back-codes{grid-template-columns:48px 1fr}.id-back-codes img:first-child{width:46px;height:46px}.id-company-contact{left:8px;right:8px;gap:6px}}@media print{@page{size:85.6mm 53.98mm;margin:0}html,body,#root{width:85.6mm!important;height:auto!important;margin:0!important;padding:0!important;background:#fff!important}body *{visibility:hidden!important}.physical-id-cards,.physical-id-cards *{visibility:visible!important}.physical-id-cards{position:absolute!important;left:0!important;top:0!important;width:85.6mm!important;display:block!important;margin:0!important;padding:0!important}.physical-id-card{width:85.6mm!important;height:53.98mm!important;aspect-ratio:auto!important;border:0!important;border-radius:0!important;box-shadow:none!important;margin:0!important;page-break-after:always!important;break-after:page!important;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}.physical-id-card:last-child{page-break-after:auto!important;break-after:auto!important}}.physical-id-card{background:linear-gradient(145deg,#020403,#07110a 64%,#020403)!important;color:#eef3ef!important;border:1.5px solid #00a859!important;box-shadow:0 14px 36px #00000080,inset 0 0 0 1px #00a85933!important}.physical-id-card:before{background:radial-gradient(circle at 84% 16%,rgba(0,168,89,.1),transparent 30%),linear-gradient(145deg,transparent 0 72%,rgba(0,168,89,.07) 100%)!important}.id-brand-row{background:#020403!important;border-bottom-color:#176536!important}.id-brand-row>img{width:116px!important;max-height:36px!important;height:36px!important;object-fit:contain!important;object-position:left center!important;background:#000!important;border-radius:0!important}.id-card-title b{color:#f6f7f6!important}.id-card-title small{color:#a9b8ac!important}.id-card-state{background:#050706!important}.state-active,.state-approved{border-color:#00a859!important;color:#55e88f!important}.state-draft{border-color:#f28c28!important;color:#f28c28!important}.id-photo-panel img,.id-photo-panel .id-photo-empty{border-color:#25824b!important;background:#050706!important}.id-person-panel h3{color:#fff!important}.id-person-panel>p{color:#39d77b!important}.id-fields small,.id-valid-row small{color:#8eaa96!important}.id-fields b,.id-valid-row b{color:#eef3ef!important}.id-valid-row{border-top-color:#174529!important}.id-sign i{border-bottom-color:#cfd7d1!important}.id-code-row img,.id-back-codes img{background:#fff!important;border-color:#1f7442!important}.physical-id-card footer{background:linear-gradient(90deg,#006f39,#00a859 78%,#f28c28)!important;color:#fff!important}.id-back-grid h4{color:#39d77b!important}.id-back-grid p{color:#d8e2da!important}.id-back-grid dt{color:#8eaa96!important}.id-back-grid dd{color:#f1f4f2!important}.id-back-grid dt,.id-back-grid dd{border-bottom-color:#174529!important}.id-verify{border-left-color:#176536!important}.id-verify-note{color:#a9c1b0!important}.id-company-contact{border-top-color:#176536!important;color:#b7c8bb!important}@media print{.physical-id-card{background:linear-gradient(145deg,#020403,#07110a 64%,#020403)!important;color:#eef3ef!important;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}.id-brand-row{background:#020403!important}.physical-id-card footer{background:linear-gradient(90deg,#006f39,#00a859 78%,#f28c28)!important}}.document-resubmit-banner{grid-column:1/-1;border:1px solid #9a7a25;background:#100d03;padding:9px;display:grid;grid-template-columns:1fr auto;gap:5px 10px;align-items:center}.document-resubmit-banner b{color:#ffd54a;font-size:9px}.document-resubmit-banner span{color:#d3c79b;font-size:8px}.document-resubmit-banner button{grid-column:2;grid-row:1/3;background:#170805;color:#ff9b8e;border:1px solid #8d3c32;padding:7px}.document-row-actions{display:flex;gap:5px;flex-wrap:wrap}.document-row-actions button.table-action{background:#061006}.document-latest{background:#041007}.document-latest td:first-child{box-shadow:inset 2px 0 #7fe43b}.document-correction-reason{display:block!important;margin-top:4px;color:#ff9c68!important;font-size:7px!important;max-width:280px}.upload-form select:disabled{opacity:.75;color:#d4dfd5}@media(max-width:900px){.document-resubmit-banner{grid-template-columns:1fr}.document-resubmit-banner button{grid-column:1;grid-row:auto;width:max-content}}.manager-access-link{margin:7px;border:1px solid #70d52f;background:#0b2a0e;color:#dfffd2;text-decoration:none;padding:8px;display:flex;align-items:center;gap:7px;font-size:8px;font-weight:900;text-transform:uppercase}.manager-access-link span{display:grid;place-items:center;width:18px;height:18px;border:1px solid #8af03e;border-radius:50%;color:#a6ff60}.manager-access-strip{margin:8px 14px 0;border:1px solid #64be2f;background:linear-gradient(90deg,#071b09,#020703);padding:10px 12px;display:flex;align-items:center;justify-content:space-between;gap:14px}.manager-access-strip>div{display:grid;gap:3px}.manager-access-strip small{color:#7ddb3c;font-size:7px;letter-spacing:.12em}.manager-access-strip b{color:#fff;font-size:13px}.manager-access-strip span{color:#a9bbaa;font-size:8px}.manager-access-strip a{border:1px solid #77df38;background:#143b12;color:#efffe8;text-decoration:none;padding:9px 12px;font-size:8px;font-weight:900;white-space:nowrap}@media(max-width:900px){.manager-access-strip{margin:7px;display:grid}.manager-access-strip a{width:max-content;max-width:100%}}.management-switch{display:inline-flex;align-items:center;justify-content:center;align-self:center;white-space:nowrap;border:1px solid #b6cbd5;border-radius:7px;padding:11px 15px;background:#0b4b63;color:#fff!important;font-size:12px;font-weight:800;letter-spacing:.08em;text-decoration:none;box-shadow:0 8px 20px #0b4b6324}.management-switch:hover{background:#073d52;transform:translateY(-1px)}@media(max-width:1100px){.management-switch{order:4;width:100%;margin-top:8px}.portal-top{flex-wrap:wrap}}
