:root{color:#17211e;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--green-950:#0b2b24;--green-900:#123f35;--green-800:#185245;--green-700:#216a59;--green-100:#dcece7;--green-50:#eef7f4;--ink:#17211e;--muted:#68756f;--border:#dce3e0;--surface:#fff;--surface-soft:#f7f9f8;--danger:#a33a36;--danger-soft:#fceceb;--warning:#95640d;--warning-soft:#fff5d8;--blue:#315f91;--blue-soft:#eaf2fb;--shadow:0 8px 24px #123f3514;background:#f3f6f5;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box;letter-spacing:0}html{background:#f3f6f5;min-width:320px;min-height:100%}body{min-width:320px;min-height:100svh;margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}a{color:inherit}h1,h2,h3,p{margin-top:0}h1,h2,h3,strong{overflow-wrap:anywhere}::selection{color:#fff;background:var(--green-700)}:focus-visible{outline-offset:2px;outline:3px solid #216a5959}#root{min-height:100svh}.loading-screen{min-height:100svh;color:var(--muted);place-content:center;place-items:center;gap:16px;display:grid}.loading-screen img{width:min(220px,60vw);height:auto}.spin{animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.brand{align-items:center;gap:13px;min-width:0;display:flex}.brand img{object-fit:contain;width:58px;height:44px}.brand div{min-width:0;display:grid}.brand strong{color:var(--green-950);font-size:19px;line-height:1.15}.brand span{color:var(--muted);margin-top:3px;font-size:12px}.brand-compact img{width:43px;height:34px}.brand-compact strong{font-size:17px}.button{text-align:center;border:1px solid #0000;border-radius:6px;justify-content:center;align-items:center;gap:9px;min-height:44px;padding:10px 16px;font-weight:700;line-height:1.2;transition:background-color .16s,border-color .16s,color .16s,transform .16s;display:inline-flex}.button:active:not(:disabled){transform:translateY(1px)}.button-primary{color:#fff;background:var(--green-900)}.button-primary:hover:not(:disabled){background:var(--green-800)}.button-secondary{color:var(--green-900);background:#fff;border-color:#b7cbc4}.button-secondary:hover:not(:disabled){background:var(--green-50)}.button-danger{color:#fff;background:var(--danger)}.button-danger:hover:not(:disabled){background:#8b302d}.button-ghost{color:var(--green-800);background:0 0;border-color:#0000}.button-ghost:hover:not(:disabled){background:var(--green-50)}.button-icon{flex:none;display:inline-flex}.icon-button{border:1px solid var(--border);color:#52615b;background:#fff;border-radius:6px;place-items:center;width:42px;height:42px;padding:0;display:inline-grid}.icon-button:hover{color:var(--green-900);background:var(--green-50)}.text-button{color:var(--green-700);background:0 0;border:0;padding:4px 0;font-weight:700;text-decoration:none}.text-button:hover{color:var(--green-900);text-decoration:underline}.field{align-content:start;gap:6px;min-width:0;display:grid}.field-label{color:#34433e;font-size:13px;font-weight:700}.input{width:100%;min-height:46px;color:var(--ink);background:#fff;border:1px solid #cbd6d2;border-radius:6px;padding:10px 12px;transition:border-color .14s,box-shadow .14s}.input:focus{border-color:var(--green-700);outline:0;box-shadow:0 0 0 3px #216a591f}.input-error{border-color:var(--danger)}.textarea{resize:vertical;min-height:88px}.select{appearance:auto}.field-hint,.field-error,.muted-small{color:var(--muted);font-size:12px;line-height:1.35}.field-error{color:var(--danger)}.field-span{grid-column:1/-1}.notice{border:1px solid #0000;border-radius:6px;padding:11px 13px;font-size:14px;line-height:1.45}.notice-info{color:#274f78;background:var(--blue-soft);border-color:#c9dcee}.notice-success{color:#18503f;background:var(--green-50);border-color:#bcd9ce}.notice-warning{color:#75500e;background:var(--warning-soft);border-color:#edd79f}.notice-danger{color:#7f2e2b;background:var(--danger-soft);border-color:#ebc3c1}.offline-banner{z-index:100;color:#624405;text-align:center;background:#ffe8a8;justify-content:center;align-items:center;gap:9px;min-height:42px;padding:9px 18px;font-size:13px;font-weight:700;display:flex;position:sticky;top:0}.status{color:#4e5a56;white-space:normal;background:#edf1f0;border-radius:999px;align-items:center;width:fit-content;max-width:100%;min-height:25px;padding:4px 9px;font-size:11px;font-weight:800;line-height:1.15;display:inline-flex}.status-approved,.status-project-active{color:#17604a;background:#def1e9}.status-submitted{color:#2e5e8f;background:#e4effa}.status-rejected,.status-needs_correction{color:#8a3532;background:#f9e6e5}.status-draft,.status-project-paused{color:#7a550b;background:#fff1ca}.status-project-completed{color:#59655f;background:#e9edeb}.modal-backdrop{z-index:200;background:#081d1894;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal{background:#fff;border-radius:8px;width:min(640px,100%);max-height:calc(100svh - 40px);overflow:auto;box-shadow:0 24px 70px #051c1647}.modal-header,.modal-footer{justify-content:space-between;align-items:center;gap:12px;padding:16px 20px;display:flex}.modal-header{z-index:2;border-bottom:1px solid var(--border);background:#fff;position:sticky;top:0}.modal-header h2{margin:0;font-size:20px}.modal-body{gap:16px;padding:20px;display:grid}.modal-footer{z-index:2;border-top:1px solid var(--border);background:#fff;justify-content:flex-end;position:sticky;bottom:0}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;display:grid}.checkbox-field{border:1px solid var(--border);border-radius:6px;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:0;padding:12px;display:grid}.checkbox-field legend{color:#34433e;padding:0 5px;font-size:13px;font-weight:700}.checkbox-field label{align-items:center;gap:8px;min-height:38px;font-size:14px;display:flex}.checkbox-field input{width:18px;height:18px;accent-color:var(--green-700)}.metric{border:1px solid var(--border);background:#fff;border-radius:8px;flex-direction:column;justify-content:space-between;gap:7px;min-height:118px;padding:15px;display:flex}.metric-top{color:var(--muted);justify-content:space-between;align-items:center;gap:8px;font-size:12px;font-weight:700;display:flex}.metric-icon{width:32px;height:32px;color:var(--green-700);background:var(--green-50);border-radius:6px;place-items:center;display:grid}.metric>strong{color:var(--green-950);font-size:24px;line-height:1.1}.metric>small{min-height:15px;color:var(--muted);font-size:11px}.metrics-grid{gap:12px;display:grid}.empty-state{min-height:180px;color:var(--muted);text-align:center;place-content:center;place-items:center;gap:8px;padding:28px 18px;display:grid}.empty-state p{max-width:360px;margin:0;font-size:13px}.empty-icon{width:44px;height:44px;color:var(--green-700);background:var(--green-50);border-radius:50%;place-items:center;display:grid}.app-header{border-bottom:1px solid var(--border);background:#fffffff5;justify-content:space-between;align-items:center;gap:20px;min-height:78px;padding:14px 28px;display:flex}.app-header-title{min-width:0}.app-header-title h1{color:var(--green-950);margin:0;font-size:23px;line-height:1.2}.app-header-title p{color:var(--muted);margin:4px 0 0;font-size:13px}.app-header-actions{align-items:center;gap:8px;display:flex}.header-user{color:#40504a;margin-right:4px;font-size:13px;font-weight:700}.demo-label{color:#72500d;text-transform:uppercase;background:#fff0c2;border-radius:4px;padding:4px 7px;font-size:11px;font-weight:800}.section-block{border:1px solid var(--border);background:#fff;border-radius:8px}.section-heading,.page-actions{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:16px;padding:17px 19px;display:flex}.section-heading h2,.page-actions h2{color:var(--green-950);margin:0;font-size:17px}.section-heading p,.page-actions p{color:var(--muted);margin:4px 0 0;font-size:12px}.section-total{color:var(--green-900);font-size:20px}.page-section{gap:18px;display:grid}.button-group,.row-actions,.approval-actions{align-items:center;gap:8px;display:flex}.login-page{background:#fff;grid-template-columns:minmax(390px,560px) minmax(320px,1fr);min-height:100svh;display:grid}.login-panel{gap:34px;width:min(100%,500px);margin:auto;padding:40px 52px;display:grid}.login-heading h1{color:var(--green-950);margin-bottom:8px;font-size:30px}.login-heading p{color:var(--muted);margin:0}.login-install .button{width:100%}.ios-install-steps{border:1px solid var(--border);min-height:72px;color:var(--green-900);background:#fff;border-radius:8px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:14px;display:grid}.ios-install-steps span,.ios-install-steps strong{font-size:13px}.login-form,.demo-login{gap:15px;display:grid}.demo-login .button{width:100%;min-height:50px}.password-field{position:relative}.password-field .input{padding-right:48px}.password-field button{width:42px;height:42px;color:var(--muted);background:0 0;border:0;place-items:center;display:grid;position:absolute;top:2px;right:2px}.login-footer{border-top:1px solid var(--border);color:var(--muted);align-items:flex-start;gap:8px;padding-top:18px;font-size:12px;line-height:1.45;display:flex}.login-footer svg{color:var(--green-700);flex:none}.login-aside{background:linear-gradient(145deg, #0b2b24e6, #185245b8), url(/icons/icon-512.png) center / min(460px, 60%) no-repeat, var(--green-900);min-height:100vh;position:relative;overflow:hidden}.login-aside:after{content:"";background-image:linear-gradient(#ffffff09 1px,#0000 1px),linear-gradient(90deg,#ffffff09 1px,#0000 1px);background-size:32px 32px;position:absolute;inset:0}.login-aside>div{z-index:1;color:#fff;gap:12px;display:grid;position:absolute;bottom:clamp(38px,9vh,120px);left:clamp(30px,7vw,110px);right:clamp(30px,7vw,110px)}.login-aside span{text-transform:uppercase;font-size:14px;font-weight:800}.login-aside strong{max-width:620px;font-size:clamp(28px,4vw,52px);line-height:1.1}.employee-layout{background:#f3f6f5;min-height:100svh;padding-bottom:88px}.employee-brand{display:none}.employee-layout .app-header{z-index:50;position:sticky;top:0}.employee-main{gap:20px;width:min(980px,100% - 32px);margin:0 auto;padding:24px 0 34px;display:grid}.work-clock{box-shadow:var(--shadow);background:#fff;border:1px solid #cddbd6;border-radius:8px;gap:17px;padding:24px;display:grid}.work-clock-active{border-top:4px solid var(--green-700)}.work-clock-status{color:var(--green-700);text-transform:uppercase;align-items:center;gap:8px;font-size:13px;font-weight:800;display:flex}.work-clock h2{color:var(--green-950);margin:0;font-size:23px}.work-clock-time{color:var(--green-950);font-variant-numeric:tabular-nums;font-size:48px;line-height:1}.work-clock>p{color:var(--muted);margin:-7px 0 0;font-size:14px}.work-clock-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.work-clock-actions .button{min-height:54px}.segmented-control{border:1px solid var(--border);background:#edf2f0;border-radius:7px;grid-template-columns:repeat(2,minmax(0,1fr));gap:3px;min-height:44px;padding:3px;display:grid}.segmented-control button{min-width:0;color:var(--muted);background:0 0;border:0;border-radius:5px;justify-content:center;align-items:center;gap:7px;padding:8px 10px;font-size:13px;font-weight:750;display:flex}.segmented-control button.active{color:var(--green-950);background:#fff;box-shadow:0 1px 4px #0d2d251f}.compact-segments{width:210px}.time-view-toolbar,.week-navigation{justify-content:space-between;align-items:center;gap:12px;display:flex}.week-navigation button{border:1px solid var(--border);width:40px;height:40px;color:var(--green-800);background:#fff;border-radius:6px;place-items:center;display:grid}.week-navigation strong{min-width:180px;color:var(--ink);text-align:center;font-size:13px}.week-timesheet{border:1px solid var(--border);background:#fff;border-radius:8px;overflow:hidden}.week-day-row{border-bottom:1px solid var(--border);grid-template-columns:150px minmax(0,1fr);min-height:76px;display:grid}.week-day-row:last-child{border-bottom:0}.week-day-row.today{box-shadow:inset 4px 0 var(--green-700);background:#fbfdfc}.week-day-row>header{border-right:1px solid var(--border);justify-content:space-between;align-items:center;gap:10px;padding:13px 16px;display:flex}.week-day-row>header div{gap:3px;display:grid}.week-day-row>header strong{text-transform:capitalize}.week-day-row>header span,.week-day-row>header b,.week-empty{color:var(--muted);font-size:11px}.week-day-content{align-content:center;gap:7px;min-width:0;padding:9px 12px;display:grid}.week-entry{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:9px;min-width:0;display:grid}.week-entry>span{color:var(--green-700)}.week-entry>div{gap:2px;min-width:0;display:grid}.week-entry strong,.week-entry small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.week-entry strong,.week-entry b{font-size:12px}.week-entry small{color:var(--muted);font-size:11px}.absence-chip{color:#72500d;background:#fff1ca;border-radius:5px;align-items:center;gap:6px;width:fit-content;padding:5px 8px;font-size:11px;font-weight:750;display:inline-flex}.clock-start-button{color:#fff;background:var(--green-900);border:0;border-radius:8px;justify-content:center;align-items:center;gap:12px;width:100%;min-height:68px;font-size:19px;font-weight:800;display:flex;box-shadow:0 8px 20px #123f3533}.clock-start-button:hover:not(:disabled){background:var(--green-800)}.employee-metrics{grid-template-columns:repeat(4,minmax(0,1fr))}.entry-list,.advance-list,.working-list,.management-list,.admin-entry-list{display:grid}.entry-row,.advance-row{border-bottom:1px solid var(--border);align-items:center;gap:13px;min-width:0;padding:14px 17px;display:flex}.entry-row:last-child,.advance-row:last-child{border-bottom:0}.entry-row-icon,.advance-icon{width:38px;height:38px;color:var(--green-700);background:var(--green-50);border-radius:6px;flex:none;place-items:center;display:grid}.entry-row-main,.entry-row-end,.advance-row>div,.advance-meta{gap:4px;min-width:0;display:grid}.entry-row-main{flex:auto}.entry-row-main span,.entry-row-end span,.advance-row p,.advance-meta span,.advance-meta small{color:var(--muted);overflow-wrap:anywhere;margin:0;font-size:12px}.entry-row-end{flex:none;justify-items:end}.entry-detail{border-bottom:1px solid var(--border);background:#fff;grid-template-columns:minmax(0,1.7fr) minmax(120px,.55fr) minmax(150px,auto);align-items:center;gap:18px;padding:17px;display:grid}.entry-detail:first-child{border-radius:8px 8px 0 0}.entry-detail:last-child{border-bottom:0;border-radius:0 0 8px 8px}.entry-detail-main,.entry-detail-time,.entry-detail-actions{gap:5px;min-width:0;display:grid}.entry-detail-main h3{margin:0;font-size:15px}.entry-detail-main p{color:var(--muted);margin:0;font-size:13px}.entry-date{color:var(--green-700);align-items:center;gap:7px;font-size:12px;display:flex}.entry-detail-time span{color:var(--muted);font-size:12px}.entry-detail-actions{justify-items:end}.break-editor,.correction-breaks{gap:12px;display:grid}.break-editor{border:1px solid var(--border);background:#f8faf9;border-radius:7px;padding:14px}.break-editor-heading,.correction-breaks>div{justify-content:space-between;align-items:center;gap:12px;display:flex}.break-editor-heading h3,.correction-breaks h3{margin:0;font-size:15px}.break-editor-heading span,.correction-breaks span{color:var(--muted);font-size:12px}.break-edit-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;align-items:end;gap:10px;display:grid}.correction-comparison{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.correction-comparison section,.correction-breaks{border:1px solid var(--border);border-radius:7px;padding:13px}.correction-comparison span{color:var(--muted);font-size:12px;font-weight:700}.correction-comparison p,.correction-breaks p{color:var(--ink);margin:6px 0 0;font-size:13px;line-height:1.45}.advance-row>div:not(.advance-meta){flex:auto}.advance-meta{justify-items:end}.profile-page{max-width:760px;margin:0 auto}.profile-summary{border:1px solid var(--border);background:#fff;border-radius:8px;align-items:center;gap:15px;padding:22px;display:flex}.avatar{color:#fff;background:var(--green-800);border-radius:50%;flex:none;place-items:center;width:52px;height:52px;font-size:17px;font-weight:800;display:grid}.profile-summary h2{margin:0;font-size:19px}.profile-summary p{color:var(--muted);margin:4px 0 0;font-size:13px}.profile-grid{border:1px solid var(--border);background:#fff;border-radius:8px;grid-template-columns:repeat(2,minmax(0,1fr));display:grid;overflow:hidden}.profile-grid>div{border-right:1px solid var(--border);border-bottom:1px solid var(--border);align-content:center;gap:5px;min-height:90px;padding:17px;display:grid}.profile-grid>div:nth-child(2n){border-right:0}.profile-grid>div:nth-last-child(-n+2){border-bottom:0}.profile-grid span{color:var(--muted);font-size:12px}.privacy-block{padding:19px}.privacy-block h2{margin:0 0 8px;font-size:17px}.privacy-block p{color:var(--muted);margin:0;font-size:13px;line-height:1.6}.employee-nav{z-index:80;min-height:72px;padding:7px max(12px, env(safe-area-inset-right)) calc(7px + env(safe-area-inset-bottom)) max(12px, env(safe-area-inset-left));border-top:1px solid var(--border);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fffffff7;justify-content:center;gap:4px;display:flex;position:fixed;bottom:0;left:0;right:0}.employee-nav button{color:#66736e;background:0 0;border:0;border-radius:6px;place-content:center;place-items:center;gap:3px;width:min(150px,24vw);min-height:54px;font-size:11px;font-weight:700;display:grid}.employee-nav button.active{color:var(--green-900);background:var(--green-50)}.material-request-list,.material-admin-list{border:1px solid var(--border);background:#fff;border-radius:8px;overflow:hidden}.material-request-row,.material-admin-row{border-bottom:1px solid var(--border);grid-template-columns:minmax(240px,1fr) minmax(110px,auto) auto;align-items:center;gap:18px;min-height:112px;padding:15px 17px;display:grid}.material-request-row:last-child,.material-admin-row:last-child{border-bottom:0}.material-request-row.urgent,.material-admin-row.urgent{background:#fffaf1;box-shadow:inset 4px 0 #c67b13}.material-request-main{gap:5px;min-width:0;display:grid}.material-request-main h3{overflow-wrap:anywhere;margin:0;font-size:16px}.material-request-main p,.material-request-main>span{color:var(--muted);overflow-wrap:anywhere;margin:0;font-size:12px;line-height:1.45}.material-request-badges{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.material-status,.material-priority{text-transform:uppercase;border-radius:5px;width:fit-content;padding:4px 7px;font-size:10px;font-weight:800}.material-status-requested{color:#7d3d08;background:#fff0d7}.material-status-ordered{color:#174d77;background:#e8f3fc}.material-status-delivered{color:var(--green-900);background:var(--green-50)}.material-status-completed{color:#58645f;background:#eef1f0}.material-priority{color:#fff;background:#a84724}.material-request-quantity{text-align:right;justify-items:end;gap:4px;display:grid}.material-request-quantity strong{font-size:15px}.material-request-quantity span{color:var(--muted);font-size:11px}.material-request-actions{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.material-admin-groups{gap:16px;display:grid}.material-admin-group{overflow:hidden}.material-admin-group .material-admin-list{border:0;border-top:1px solid var(--border);border-radius:0}.material-admin-row{grid-template-columns:minmax(240px,1fr) minmax(110px,auto) minmax(145px,180px)}.pulse{background:#2f9a74;border-radius:50%;flex:none;width:9px;height:9px;box-shadow:0 0 0 5px #2f9a7424}.admin-layout{background:#f3f6f5;grid-template-columns:248px minmax(0,1fr);min-height:100svh;display:grid}.admin-sidebar{border-right:1px solid var(--border);background:#fff;flex-direction:column;gap:24px;height:100svh;padding:20px 14px;display:flex;position:sticky;top:0}.admin-sidebar .brand{padding:0 8px}.admin-sidebar nav{gap:4px;display:grid}.admin-sidebar nav button{color:#50605a;text-align:left;background:0 0;border:0;border-radius:6px;align-items:center;gap:11px;min-height:45px;padding:9px 11px;font-size:14px;font-weight:700;display:flex}.admin-sidebar nav button:hover,.admin-sidebar nav button.active{color:var(--green-900);background:var(--green-50)}.admin-sidebar nav button b{color:#fff;background:var(--danger);border-radius:999px;place-items:center;min-width:22px;height:22px;margin-left:auto;font-size:11px;display:grid}.sidebar-company{border-top:1px solid var(--border);color:var(--green-700);align-items:center;gap:10px;margin-top:auto;padding:12px 9px;display:flex}.sidebar-company div{gap:2px;min-width:0;display:grid}.sidebar-company strong{color:var(--ink);font-size:12px}.sidebar-company span{color:var(--muted);font-size:11px}.admin-content{min-width:0}.admin-content .app-header{z-index:40;position:sticky;top:0}.admin-main{gap:18px;width:min(1500px,100%);margin:0 auto;padding:24px 28px 40px;display:grid}.admin-metrics{grid-template-columns:repeat(6,minmax(0,1fr))}.dashboard-page{gap:18px;display:grid}.dashboard-columns,.settings-columns{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.working-list article{border-bottom:1px solid var(--border);align-items:center;gap:13px;min-height:62px;padding:12px 17px;display:flex}.working-list article:last-child{border-bottom:0}.working-list article div{flex:auto;gap:3px;min-width:0;display:grid}.working-list article span{color:var(--muted);font-size:12px}.working-list time{color:var(--green-700);font-size:12px;font-weight:700}.working-list article.working-warning{background:#fff8e8}.working-list article.working-warning time{color:#8a5d00}.request-review-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.compact-request-section{min-width:0;overflow:hidden}.compact-request-section .section-heading{padding:14px 16px}.request-count{min-width:28px;height:28px;color:var(--green-900);background:var(--green-50);border-radius:6px;place-items:center;padding:0 8px;font-size:12px;font-weight:800;display:grid}.request-review-row{border:0;border-bottom:1px solid var(--border);width:100%;min-height:61px;color:var(--ink);text-align:left;background:#fff;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px 14px;display:grid}.request-review-row:last-child{border-bottom:0}.request-review-row:hover{background:#f7faf9}.request-review-row>svg{color:var(--green-700)}.request-review-row>span{gap:3px;min-width:0;display:grid}.request-review-row strong,.request-review-row small{overflow-wrap:anywhere}.request-review-row small{color:var(--muted);font-size:11px}.request-review-row>b{color:var(--green-900);text-align:right;font-size:11px}.dashboard-request-grid{padding:12px}.muted-copy{color:var(--muted);margin:0;padding:16px;font-size:12px}.request-detail dl{border:1px solid var(--border);border-radius:8px;gap:0;margin:14px 0 0;display:grid;overflow:hidden}.request-detail dl>div{border-bottom:1px solid var(--border);grid-template-columns:115px minmax(0,1fr);gap:12px;padding:10px 12px;display:grid}.request-detail dl>div:last-child{border-bottom:0}.request-detail dt{color:var(--muted);font-size:11px;font-weight:700}.request-detail dd{overflow-wrap:anywhere;margin:0;font-size:13px}.bar-chart{gap:15px;padding:16px 18px 19px;display:grid}.bar-row{gap:7px;display:grid}.bar-row>div{justify-content:space-between;gap:12px;font-size:12px;display:flex}.bar-track{background:#e9efed;border-radius:999px;width:100%;height:8px;overflow:hidden}.bar-track i{border-radius:inherit;background:var(--green-700);height:100%;display:block}.admin-entry-row{border-bottom:1px solid var(--border);background:#fff;grid-template-columns:minmax(160px,.8fr) minmax(190px,1.35fr) minmax(170px,.8fr) minmax(110px,auto) auto;align-items:center;gap:14px;min-width:0;min-height:78px;padding:13px 16px;display:grid}.admin-entry-row:first-child{border-radius:8px 8px 0 0}.admin-entry-row:last-child{border-bottom:0;border-radius:0 0 8px 8px}.admin-entry-person{align-items:center;gap:10px;min-width:0;display:flex}.admin-entry-person>div,.admin-entry-work,.admin-entry-hours{gap:3px;min-width:0;display:grid}.admin-entry-person span,.admin-entry-work span,.admin-entry-hours span{color:var(--muted);overflow-wrap:anywhere;font-size:11px}.admin-entry-work strong{font-size:13px}.admin-entry-hours strong{font-variant-numeric:tabular-nums}.small-avatar{width:42px;height:42px;font-size:13px}.tiny-avatar{width:34px;height:34px;font-size:11px}.approve-button,.reject-button{border:1px solid #0000;border-radius:6px;place-items:center;width:38px;height:38px;display:grid}.approve-button{color:#17604a;background:#e8f5f0;border-color:#bad9cc}.reject-button{color:#8a3532;background:#fceceb;border-color:#ebc4c2}.toolbar{border:1px solid var(--border);background:#fff;border-radius:8px;padding:14px}.filters-toolbar{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.list-summary{color:var(--muted);justify-content:space-between;padding:0 3px;font-size:13px;display:flex}.list-summary strong{color:var(--green-900)}.management-list,.admin-entry-list,.admin-advance-list,.entry-list:not(.compact-list){border:1px solid var(--border);border-radius:8px;overflow:hidden}.management-row{border-bottom:1px solid var(--border);background:#fff;grid-template-columns:auto minmax(180px,1.2fr) minmax(100px,.45fr) minmax(100px,.45fr) minmax(90px,auto) auto;align-items:center;gap:14px;min-height:78px;padding:13px 16px;display:grid}.management-row:last-child{border-bottom:0}.management-main,.management-stat{gap:3px;min-width:0;display:grid}.management-main span,.management-stat span{color:var(--muted);overflow-wrap:anywhere;font-size:11px}.management-stat strong{font-size:13px}.project-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.project-item{border:1px solid var(--border);background:#fff;border-radius:8px;align-content:start;gap:13px;min-width:0;padding:17px;display:grid}.project-item-top{justify-content:space-between;align-items:center;gap:8px;display:flex}.project-item-top>span:last-child{color:var(--muted);text-align:right;font-size:11px}.project-item h3{margin:0;font-size:17px}.project-item>p{min-height:38px;color:var(--muted);margin:0;font-size:12px;line-height:1.5}.project-stats{border:1px solid var(--border);border-radius:6px;grid-template-columns:1fr 1fr;display:grid;overflow:hidden}.project-stats>div{border-right:1px solid var(--border);gap:4px;min-height:64px;padding:10px;display:grid}.project-stats>div:last-child{border-right:0}.project-stats span{color:var(--muted);font-size:11px}.project-stats strong{font-size:14px}.admin-advance-list .advance-row{background:#fff}.admin-advance-list .advance-meta{grid-template-columns:repeat(3,auto);align-items:center;gap:12px}.report-filters,.report-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.report-table-wrap{border:1px solid var(--border);background:#fff;border-radius:8px;overflow:auto}.data-table{border-collapse:collapse;width:100%;font-size:12px}.data-table th,.data-table td{border-bottom:1px solid var(--border);text-align:left;white-space:nowrap;padding:11px 13px}.data-table th{color:#43524d;text-transform:uppercase;background:#f5f8f7;font-size:11px;position:sticky;top:0}.data-table tr:last-child td{border-bottom:0}.settings-form{gap:15px;padding:18px;display:grid}.settings-form .section-heading{margin:-18px -18px 0}.settings-columns>.section-block:not(.settings-form){align-content:start;gap:15px;padding:18px;display:grid}.settings-columns>.section-block:not(.settings-form) .section-heading{margin:-18px -18px 0}.settings-facts{gap:10px;display:grid}.settings-facts>div{color:#40504a;align-items:center;gap:9px;font-size:13px;display:flex}.settings-facts svg{color:var(--green-700);flex:none}.settings-form .notice{margin:0}.audit-section{min-width:0;overflow:hidden}.audit-list article{border-bottom:1px solid var(--border);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:11px;min-height:58px;padding:10px 15px;display:grid}.audit-list article:last-child{border-bottom:0}.audit-icon{width:31px;height:31px;color:var(--green-700);background:var(--green-50);border-radius:6px;place-items:center;display:grid}.audit-list article>div{gap:3px;min-width:0;display:grid}.audit-list small,.audit-list time{color:var(--muted);overflow-wrap:anywhere;font-size:11px}.audit-meta{text-align:right;justify-items:end}.audit-meta strong{font-size:12px}.admin-mobile-nav{display:none}@media (width<=1280px){.admin-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.management-row{grid-template-columns:auto minmax(170px,1fr) minmax(90px,.45fr) minmax(90px,.45fr) auto}.management-row .row-actions{grid-column:2/-1;justify-content:flex-end}}@media (width<=1050px){.admin-entry-row{grid-template-columns:minmax(150px,.8fr) minmax(180px,1.2fr) minmax(140px,.7fr) auto}.admin-entry-row>.status{grid-column:2/3}.admin-entry-row .approval-actions{grid-area:1/4/span 2}.employee-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=900px){.login-page{grid-template-columns:1fr}.login-aside{display:none}.login-panel{align-content:center;min-height:100svh}.admin-layout{padding-bottom:82px;display:block}.admin-sidebar{display:none}.admin-main{padding:18px 16px 28px}.admin-mobile-nav{z-index:80;min-height:70px;padding:6px 8px calc(6px + env(safe-area-inset-bottom));border-top:1px solid var(--border);background:#fffffff7;display:flex;position:fixed;bottom:0;left:0;right:0;overflow:hidden}.admin-mobile-nav button{min-width:0;min-height:54px;color:var(--muted);background:0 0;border:0;border-radius:6px;flex:1 1 0;place-content:center;place-items:center;gap:3px;font-size:10px;font-weight:700;display:grid}.admin-mobile-nav button span{display:none}.admin-mobile-nav button.active{color:var(--green-900);background:var(--green-50)}.dashboard-columns,.settings-columns,.request-review-grid{grid-template-columns:1fr}.project-grid{grid-template-columns:1fr 1fr}}@media (width<=720px){.app-header{min-height:68px;padding:11px 14px}.app-header-title h1{font-size:19px}.app-header-title p,.header-user{display:none}.app-header-actions{gap:5px}.app-header-actions .icon-button{width:40px;height:40px}.employee-main{gap:14px;width:min(100% - 24px,980px);padding-top:14px}.work-clock{gap:14px;padding:18px 15px}.work-clock-time{font-size:42px}.work-clock-actions{grid-template-columns:1fr}.employee-metrics{grid-template-columns:1fr 1fr;gap:8px}.metric{min-height:108px;padding:12px}.metric>strong{font-size:20px}.section-heading,.page-actions{align-items:flex-start;padding:14px}.page-actions{flex-direction:column}.page-actions>.button,.page-actions>.button-group{width:100%}.page-actions>.button-group .button{flex:1 1 0}.entry-row{gap:10px;padding:12px}.entry-row-icon,.entry-row-end .status{display:none}.entry-row-main span{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.entry-detail{grid-template-columns:1fr auto;gap:12px;padding:14px}.entry-detail-main{grid-column:1/-1}.entry-detail-actions{justify-items:end}.break-edit-row,.correction-comparison{grid-template-columns:1fr}.break-edit-row .button{width:100%}.time-view-toolbar{flex-direction:column;align-items:stretch}.compact-segments{width:100%}.week-navigation strong{flex:auto;min-width:0}.week-day-row{grid-template-columns:105px minmax(0,1fr)}.week-day-row>header{flex-direction:column;align-items:flex-start;padding:11px}.profile-grid{grid-template-columns:1fr}.profile-grid>div{border-right:0;border-bottom:1px solid var(--border)!important}.profile-grid>div:last-child{border-bottom:0!important}.admin-main{padding:14px 12px 24px}.admin-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.filters-toolbar,.report-filters{grid-template-columns:1fr 1fr}.report-metrics{grid-template-columns:1fr}.admin-entry-row{grid-template-columns:minmax(0,1fr) auto;gap:10px;padding:13px}.admin-entry-person{grid-column:1}.admin-entry-work{grid-area:2/1/auto/-1}.admin-entry-hours{grid-area:3/1}.admin-entry-row>.status{grid-area:1/2}.admin-entry-row .approval-actions,.admin-entry-row>.button{grid-area:3/2}.management-row{grid-template-columns:auto minmax(0,1fr) auto;gap:10px;padding:13px}.management-main{grid-column:2}.management-stat{grid-row:2}.management-stat:nth-of-type(2){grid-column:2}.management-stat:nth-of-type(3){grid-column:3}.management-row>.status{grid-area:1/3}.management-row .row-actions{grid-area:3/1/auto/-1;justify-content:stretch}.management-row .row-actions .button{flex:1 1 0}.project-grid{grid-template-columns:1fr}.material-request-row,.material-admin-row{grid-template-columns:minmax(0,1fr) auto;gap:12px;padding:14px}.material-request-actions,.material-admin-row>.field{grid-column:1/-1}.material-request-actions{justify-content:stretch}.material-request-actions .button{flex:1 1 0}.material-admin-row>.field{width:100%}.admin-advance-list .advance-meta{grid-template-columns:1fr;justify-items:end;gap:3px}.form-grid{grid-template-columns:1fr}.field-span{grid-column:1}.checkbox-field{grid-column:1;grid-template-columns:1fr}.request-detail dl>div{grid-template-columns:1fr;gap:3px}.audit-list article{grid-template-columns:auto minmax(0,1fr)}.audit-meta{text-align:left;grid-column:2;justify-items:start}}@media (width<=460px){.login-panel{gap:28px;padding:28px 20px}.login-heading h1{font-size:26px}.employee-metrics,.admin-metrics{grid-template-columns:1fr 1fr}.metric{min-height:104px}.metric-top{font-size:11px}.metric-icon{width:28px;height:28px}.metric>strong{font-size:18px}.filters-toolbar,.report-filters{grid-template-columns:1fr}.modal-backdrop{align-items:end;padding:0}.modal{border-radius:8px 8px 0 0;width:100%;max-height:92svh}.modal-header,.modal-body,.modal-footer{padding:15px}.modal-footer .button{flex:1 1 0}.employee-nav{justify-content:space-between}.employee-nav button{width:20%;min-width:0}.employee-nav button span{font-size:9px}.material-request-row,.material-admin-row{grid-template-columns:1fr}.material-request-quantity{text-align:left;justify-items:start}}
