:root{font-family:Inter,'Malgun Gothic',sans-serif;color:#183832;background:#f4f6f3;font-synthesis:none}*{box-sizing:border-box}body{margin:0}header{height:80px;display:flex;align-items:center;gap:24px;padding:0 34px;background:#fff;border-bottom:1px solid #dee6df}.brand{color:#163e38;text-decoration:none;display:flex;align-items:center;gap:10px;font-size:22px}.mark{background:#163e38;color:#fff;padding:9px 13px;border-radius:12px;font-size:24px}#identity{margin-left:auto;color:#6d7d76;font-size:13px}.layout{display:grid;grid-template-columns:220px 1fr;min-height:calc(100vh - 80px)}aside{padding:36px 20px;border-right:1px solid #dee6df;background:#fcfdfb}.eyebrow{font-size:11px;letter-spacing:2px;color:#7e9389;font-weight:700;margin-bottom:20px}nav{display:grid;gap:7px}nav button{text-align:left;background:transparent;color:#556f63;border:0}nav button.active{background:#e3eee6;color:#163e38;font-weight:bold}.aside-note{margin:90px 14px 0;line-height:1.8;font-size:19px}.aside-note small{display:block;font-size:11px;margin-top:12px;color:#8b9b92}main{padding:38px;max-width:1500px;width:100%;min-width:0}h1{font-size:30px;margin:6px 0 10px;letter-spacing:-1px}h2{font-size:18px;margin:0 0 20px}p{color:#6d7d76;line-height:1.7}.subtitle{margin-bottom:30px}.card{background:#fff;border:1px solid #dfe7e0;border-radius:18px;padding:26px;margin-bottom:22px}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px}.stat{font-size:36px;font-weight:700;margin:12px 0}.muted{color:#7b8e83;font-size:13px}.hero{background:#163e38;color:#fff;position:relative;overflow:hidden}.hero p{color:#d1e1d8}.hero .eyebrow{color:#a9d6bd}.pill{background:#e6f1e9;color:#236445;border-radius:20px;padding:5px 10px;display:inline-block;font-size:12px}.pill.daily{background:#f8edda;color:#996b27}button,.button{cursor:pointer;border:1px solid #d7e2da;border-radius:9px;background:#fff;color:#163e38;padding:11px 16px;font:inherit;font-size:14px;text-decoration:none;display:inline-block}button:hover,.button:hover{background:#edf4ee}button.primary,.button.primary{background:#236649;color:#fff;border-color:#236649}button:disabled{opacity:.5;cursor:wait}.actions{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0}.check-actions button{padding:23px;font-size:21px;flex:1}label{display:block;font-size:13px;font-weight:600;margin:15px 0 7px}input,select,textarea{display:block;width:100%;padding:11px 12px;border:1px solid #cddbd1;border-radius:8px;background:#fff;font:inherit;color:#183832}input[type=checkbox]{width:auto;display:inline}textarea{min-height:120px}input:focus,select:focus,textarea:focus,button:focus-visible{outline:2px solid #83b795;outline-offset:2px}table{width:100%;border-collapse:collapse;white-space:nowrap;font-size:13px}th{text-align:left;background:#f5f8f4;color:#738879;font-weight:600}td,th{padding:15px 12px;border-bottom:1px solid #e9eee8}.table-wrap{overflow-x:auto}#notice{padding:16px;background:#fff0d8;color:#794d10;border-radius:10px;margin-bottom:20px;white-space:pre-wrap}#notice.success{background:#e1f0e6;color:#22613f}.auth{max-width:460px;margin:30px auto}.qr{width:min(100%,320px);display:block;margin:20px auto}.empty{text-align:center;padding:38px;color:#7d8c82}.field-row{display:grid;grid-template-columns:1fr 1fr auto auto auto;align-items:center;gap:10px;margin:12px 0}.field-row label{margin:0;white-space:nowrap}.small{font-size:12px}.split{display:grid;grid-template-columns:1.3fr 1fr;gap:22px}.hidden{display:none}.footer-note{font-size:12px;color:#819085;margin:20px 0}@media(max-width:800px){header{padding:0 16px;height:68px}.brand{font-size:18px}#identity{font-size:11px}.layout{display:block}aside{padding:12px;border-right:0;border-bottom:1px solid #dee6df}.eyebrow,aside .aside-note{display:none}nav{display:flex;overflow:auto}nav button{white-space:nowrap}main{padding:20px 14px}h1{font-size:26px}.split{display:block}.card{padding:20px}.field-row{grid-template-columns:1fr 1fr}.grid{grid-template-columns:1fr 1fr}.grid .card{padding:16px}.stat{font-size:28px}.auth{margin:0 auto}}@media print{header,aside,nav,.actions,#notice{display:none}.layout{display:block}main{padding:0}.card{border:0}.qr{width:450px}}

.brand,header button{flex-shrink:0;white-space:nowrap}#identity{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.hero .muted{color:#b9d4c4}@media(max-width:800px){header{gap:10px}.brand{gap:6px;font-size:16px}header button{padding:9px;font-size:12px}.mark{padding:7px 10px;font-size:21px}#identity{font-size:10px}}

[hidden]{display:none!important}


#report-result table th,#report-result table td{white-space:nowrap;min-width:70px} #report-result table th:first-child,#report-result table td:first-child{position:sticky;left:0;background:#fff;z-index:1} #report-detail{scroll-margin-top:24px} input[type=number]{max-width:100%}
/* Official COME ENGINEERING brand system */
:root{color:#152b48;background:#f3f6fb;font-family:'Malgun Gothic','Apple SD Gothic Neo',sans-serif}header{height:96px;padding:0 32px;border-bottom:1px solid #dae3ef;gap:24px}.brand{gap:22px;color:#123f7c}.company-logo{display:block;width:150px;height:74px;object-fit:contain}.brand-caption{border-left:1px solid #dce3ed;padding-left:22px;font-size:16px;font-weight:700}#identity{color:#65758b}.layout{grid-template-columns:238px 1fr;min-height:calc(100vh - 96px)}aside{background:#102d53;border:0;color:white;padding:32px 20px}.workspace-label{font-size:11px;font-weight:700;letter-spacing:1.7px;padding:0 14px 28px;color:#b6cbe6}.workspace-label span{display:block;font-size:13px;font-weight:400;letter-spacing:0;margin-top:9px;color:#e4ecf7}nav{gap:8px}nav button{color:#c6d4e8;border-radius:8px;padding:13px 14px}nav button:hover{background:#1c3d69;color:white}nav button.active{background:#22518b;color:white;box-shadow:inset 3px 0 #dc1936}.aside-note{margin-top:80px;color:#e4ecf7;font-size:19px}.aside-note small{color:#a6bad5;line-height:1.9}main{padding:36px 40px}.eyebrow{color:#637f9f;letter-spacing:1.5px;font-size:10px;margin-bottom:14px}h1{font-size:29px;color:#102d53}h2,h3{color:#16365e}.subtitle,p{color:#687a90}.card{border-color:#e0e7f0;border-radius:14px;box-shadow:0 3px 12px #12365e04}.hero{background:linear-gradient(120deg,#123765,#0b478d);color:white;border:0;border-top:3px solid #ce1230}.hero h2,.hero h3{color:white}.hero .muted,.hero p{color:#d3e2f5}.hero .eyebrow{color:#b8d1f0}.stat{letter-spacing:-1px}button,.button{color:#17477f;border-color:#cedae8;border-radius:8px}button:hover,.button:hover{background:#edf3fb}button.primary,.button.primary{background:#0b458b;border-color:#0b458b}button.primary:hover,.button.primary:hover{background:#08376e;border-color:#08376e}input,select,textarea{border-color:#cbd7e5;color:#152b48}input:focus,select:focus,textarea:focus,button:focus-visible,.button:focus-visible{outline:2px solid #5892cf;outline-offset:2px}th{background:#edf2f8;color:#4a6686}td,th{border-bottom-color:#e5ebf3}.muted,.footer-note,.empty{color:#6c7e94}.app-footer{margin-top:42px;padding:22px 0 4px;border-top:1px solid #dce4ee;color:#55718f;font-size:10px;font-weight:700;letter-spacing:1px}.app-footer span{display:block;margin-top:7px;font-weight:400;letter-spacing:0;color:#7d8da1}.login-screen aside{display:none}.login-screen .layout{display:block}.login-screen main{max-width:1260px;margin:0 auto;padding:54px 36px 24px}.login-screen #identity{color:#76869a}.login-layout{display:grid;grid-template-columns:1.1fr 1fr;min-height:590px;background:white;border-radius:20px;overflow:hidden;box-shadow:0 15px 55px #11365e14;border:1px solid #dce5f0}.login-story{background:linear-gradient(140deg,#0c2b50,#0b4384);color:white;padding:44px;display:flex;flex-direction:column;position:relative;border-bottom:5px solid #cf1532}.logo-plaque{background:white;border-radius:10px;padding:16px 22px;width:240px;max-width:100%}.logo-plaque img{display:block;width:100%;height:110px;object-fit:contain}.story-copy{margin:44px 0 30px}.story-kicker{font-size:10px;font-weight:700;letter-spacing:2.3px;color:#a8c9ec}.story-copy h2{font-size:29px;line-height:1.55;font-weight:700;letter-spacing:-1px;color:white;margin:16px 0}.story-copy p{font-size:13px;line-height:1.9;color:#c8d9ee}.story-services{display:flex;gap:12px;flex-wrap:wrap;margin-top:auto}.story-services span{font-size:11px;color:#d4e3f5;border:1px solid #557395;border-radius:5px;padding:8px 10px}.login-layout .auth{width:100%;max-width:440px;padding:44px 32px;margin:auto}.login-layout .auth>.eyebrow{display:block}.login-layout .auth h1{font-size:26px}.login-layout .auth .subtitle{font-size:13px;margin-bottom:26px}.login-layout #auth{padding:0;margin:0;border:0;box-shadow:none}.login-layout #auth label{margin-top:20px}.login-layout #auth input{min-height:46px}.login-layout #auth .actions button{width:100%;min-height:46px}.login-layout #auth>a{width:100%;text-align:center;margin-top:10px}.login-screen .app-footer{text-align:center;border:0;margin-top:22px}
@media(max-width:1000px){main{padding:28px 24px}.login-story{padding:30px}.story-copy h2{font-size:25px}.login-layout .auth{padding:32px 26px}}
@media(max-width:800px){header{height:78px;padding:0 16px;gap:12px}.company-logo{width:112px;height:60px}.brand{gap:10px}.brand-caption{font-size:12px;padding-left:10px}.layout{display:block;min-height:calc(100vh - 78px)}aside{padding:10px 12px}.workspace-label{display:none}nav button{padding:11px 13px}main{padding:24px 14px}#identity{display:none}.login-screen main{padding:24px 16px}.login-layout{grid-template-columns:1fr;min-height:0}.login-story{padding:24px;display:grid;grid-template-columns:120px 1fr;gap:20px;align-items:center;border-bottom-width:3px}.logo-plaque{padding:8px;width:120px}.logo-plaque img{height:66px}.story-copy{margin:0}.story-kicker{font-size:9px;letter-spacing:1px}.story-copy h2{font-size:18px;line-height:1.5;margin:8px 0 0}.story-copy p,.story-services{display:none}.login-layout .auth{max-width:none;padding:28px 24px}.login-layout .auth h1{font-size:24px}.app-footer{margin-top:28px}.grid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}}
@media(max-width:420px){.brand-caption{font-size:11px}header{gap:8px}header button{padding:8px}.company-logo{width:100px}.login-story{grid-template-columns:98px 1fr;gap:14px;padding:20px}.logo-plaque{width:98px}.logo-plaque img{height:54px}.story-copy h2{font-size:16px}.login-layout .auth{padding:26px 20px}}
@media print{.app-footer,.login-story{display:none}body{background:white}.hero{color:#152b48;background:white}.hero h2{color:#152b48}}
.location-picker{width:min(720px,calc(100vw - 32px));max-height:90vh;overflow:auto;border:1px solid #cbd8ea;border-radius:18px;padding:24px;color:#123356;box-sizing:border-box}.location-picker::backdrop{background:rgba(8,28,56,.55)}.location-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.location-heading h2{margin:0}.location-picker label{display:block;margin:12px 0}.location-picker textarea{width:100%;box-sizing:border-box;resize:vertical;border:1px solid #cbd8ea;border-radius:8px;padding:12px;font:inherit}.location-picker #location-error{color:#b42318}.location-picker [hidden]{display:none!important}@media(max-width:600px){.location-picker{padding:16px}.location-heading h2{font-size:20px}.location-picker .actions{flex-wrap:wrap}}
.location-heading button{flex-shrink:0;white-space:nowrap}@media(max-width:600px){.location-heading h2{font-size:18px;line-height:1.5}}
.map-picker{width:min(960px,calc(100vw - 24px));max-height:94vh;padding:20px}.map-picker #location-map{height:390px;min-height:260px;width:100%;border:1px solid #cbd8ea;border-radius:12px;z-index:0;background:#eef2f6}.map-picker .map-instruction{margin:12px 0}.map-picker .map-attribution{margin:6px 0;font-size:11px}.map-picker .map-coordinates label{margin:4px 0}.map-picker .location-footer{position:sticky;bottom:-20px;padding:10px 0 4px;background:white;z-index:1001;display:flex;align-items:center;justify-content:space-between;gap:12px}.map-picker .location-footer button{flex-shrink:0}.comeeng-map-pin{background:transparent;border:0}.comeeng-map-pin span{display:block;width:27px;height:27px;border-radius:50% 50% 50% 0;background:#d22e3b;border:3px solid white;box-shadow:0 2px 5px #28456880;transform:rotate(-45deg);box-sizing:border-box}.comeeng-map-pin span::after{content:'';position:absolute;width:7px;height:7px;background:white;border-radius:50%;left:7px;top:7px}.map-picker .leaflet-control-zoom a{color:#0a3e80}.map-picker .leaflet-control-attribution{font-size:10px}.map-picker details{margin:8px 0}.map-picker summary{cursor:pointer;color:#567190}@media(max-width:600px){.map-picker{padding:14px}.map-picker #location-map{height:320px}.map-picker .location-footer{bottom:-14px;display:block}.map-picker .location-footer button{width:100%}.map-picker .actions{gap:6px}.map-picker .actions button{padding:9px;font-size:12px}.map-picker .map-coordinates{grid-template-columns:1fr 1fr}}
.report-controls{padding:14px 18px;margin-bottom:16px}.report-controls .actions{margin:0;align-items:end}.report-controls label{margin:0}.report-controls input{max-width:100px}.report-rules{margin-top:8px;font-size:12px}.report-rules summary{cursor:pointer}.report-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:12px}.report-kpis>div{border:1px solid #d9e4f2;border-radius:12px;background:white;padding:12px 16px}.report-kpis span{display:block;color:#69809c;font-size:12px}.report-kpis strong{display:block;font-size:24px;color:#0a3e80;margin-top:4px}.report-kpis small{font-size:12px;margin-left:4px}.report-person-controls{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:14px}.report-person-controls label{margin:0}.report-matrix{max-height:65vh;overflow-y:auto;border:1px solid #d9e4f2;border-radius:12px;background:white;margin-bottom:18px}.report-matrix table{table-layout:fixed;white-space:normal;width:100%;font-size:10px}.report-matrix .person-column{width:115px}.report-matrix .total-column{width:60px}.report-matrix th,.report-matrix td{padding:7px 1px;text-align:center;overflow-wrap:anywhere;line-height:1.4}.report-matrix thead th{position:sticky;top:0;z-index:1;background:#eaf0f8}.report-matrix tbody th{text-align:left;padding-left:7px;font-weight:400}.report-matrix th button{padding:0;border:0;background:transparent;font-size:12px;font-weight:600;text-align:left}.report-matrix th small{display:block;color:#70849b;font-size:9px}.report-matrix .worked{background:#edf5ff;color:#134981}.report-total{font-weight:bold;background:#e4eefc}.report-calendar-card{padding:18px}.calendar-title{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px}.calendar-title h3{margin:0;font-size:16px}.calendar-title small{font-size:11px;font-weight:400;display:block;color:#69809c}.calendar-title>strong{font-size:14px}.attendance-calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px}.calendar-weekday{text-align:center;font-size:11px;color:#70849b}.calendar-day{min-height:56px;background:#f5f7fb;border:1px solid #e6edf5;border-radius:6px;padding:6px;min-width:0}.calendar-day>span{font-size:11px;color:#6d819c}.calendar-day strong{display:block;text-align:center;font-size:14px;color:#718399}.calendar-day.worked{background:#eaf3ff;border-color:#ccddf4}.calendar-day.worked strong{color:#0a3e80}.calendar-day small{font-size:9px}.year-calendar{grid-template-columns:repeat(4,minmax(0,1fr))}.calendar-detail{width:100%;margin-top:12px}.report-day-cards details{border:1px solid #d9e4f2;border-radius:10px;padding:12px;background:white;margin:8px 0}.report-day-cards summary{cursor:pointer;display:flex;justify-content:space-between;gap:10px;font-size:13px}.day-facts{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}.day-facts p{font-size:12px;margin:7px 0;display:flex;justify-content:space-between;gap:8px}.report-warning{background:#fff3de;padding:12px;border-radius:10px;margin:8px 0}@media(min-width:1100px){#report-calendar{max-width:650px}}@media(max-width:1099px){.report-matrix{display:none}.report-person-controls{grid-template-columns:1fr 1fr}.report-kpis>div{padding:10px}.report-kpis strong{font-size:19px}.report-kpis span{font-size:10px}}@media(max-width:600px){.report-controls{padding:12px}.report-controls .actions{gap:8px}.report-controls .actions label{flex:1;min-width:70px}.report-controls .actions input,.report-controls .actions select{padding:8px;font-size:12px;max-width:none}.report-controls .actions button{padding:8px;font-size:12px}.report-person-controls{gap:8px}.report-person-controls input,.report-person-controls select{font-size:12px;padding:8px}.report-calendar-card{padding:12px}.calendar-day{min-height:49px;padding:4px}.attendance-calendar{gap:3px}.calendar-day strong{font-size:12px}.report-kpis strong{font-size:17px}.calendar-title>strong{font-size:12px}.report-day-cards summary{font-size:12px}.report-day-cards summary span{min-width:0}.day-facts{gap:0 10px}}
@media(max-width:600px){.reports-screen main{padding:10px 14px}.reports-screen #content>.subtitle{display:none}.reports-screen #content>h1{font-size:22px;margin:0 0 10px}.reports-screen .report-controls{margin-bottom:10px;padding:10px}.reports-screen .report-controls .actions{margin:0}.reports-screen #report-result>h2{font-size:15px;margin:0 0 10px}.reports-screen #report-result>p.small{display:none}.reports-screen .report-kpis{gap:6px;margin-bottom:10px}.reports-screen .report-kpis>div{padding:7px 9px}.reports-screen .report-kpis strong{font-size:16px;margin-top:2px}.reports-screen .report-person-controls{margin-bottom:10px}.reports-screen .calendar-day{min-height:40px}.reports-screen .report-calendar-card{padding:10px;margin-bottom:10px}.reports-screen .calendar-title{margin-bottom:8px}.reports-screen .calendar-title h3{font-size:14px}.reports-screen .calendar-detail{padding:8px;margin-top:8px}.reports-screen .app-footer{display:none}}
.employee-report-dialog{width:min(1180px,calc(100vw - 24px));max-height:94vh;overflow:auto;padding:22px;border:1px solid #cbd8ea;border-radius:18px;color:#123356;box-sizing:border-box}.employee-report-dialog::backdrop{background:#122b4d99}.employee-popup-heading{display:flex;justify-content:space-between;align-items:center;gap:10px}.employee-popup-heading h2{margin:0}.employee-popup-heading button{flex-shrink:0}.employee-popup-query{display:flex;align-items:end;gap:10px;margin:12px 0}.employee-popup-query label{margin:0}.employee-popup-query input{width:100px}.employee-report-dialog [hidden]{display:none!important}#employee-popup-status{font-size:12px;margin:8px 0}.employee-months{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:7px;margin:12px 0 18px}.employee-months button{padding:10px;text-align:left;min-width:0}.employee-months b{font-size:12px}.employee-months strong{display:block;font-size:15px;margin:5px 0}.employee-months small{display:block;font-size:11px;color:#617895}.employee-months button.active{background:#e4efff;border:2px solid #1d5799;padding:9px}.employee-month-heading{display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:12px}.employee-month-heading h3{font-size:16px}.employee-days-list{max-height:44vh;overflow:auto;border:1px solid #dce5ef;border-radius:10px}.employee-day-row{display:grid;grid-template-columns:90px minmax(0,1fr) 80px 75px;gap:8px;padding:10px 12px;border-bottom:1px solid #e7edf5;font-size:13px;align-items:center}.employee-day-row>span:last-of-type,.employee-day-row>strong{text-align:right}.employee-day-row.has-work{background:#f4f8fe}.employee-day-header{position:sticky;top:0;background:#e7eef8;z-index:1;font-weight:bold}.employee-day-row small{display:block;font-size:10px;color:#6b819c}.employee-shift{display:block;margin:2px 0;overflow-wrap:anywhere}.employee-day-note{grid-column:1/-1;font-size:11px;margin:0;color:#975f18}.employee-report-dialog .report-kpis strong{font-size:21px}@media(max-width:800px){.employee-report-dialog{padding:12px;width:calc(100vw - 16px);max-height:96vh}.employee-popup-heading h2{font-size:16px}.employee-popup-heading button{padding:8px}.employee-report-dialog .desktop-download{display:none!important}.employee-months{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;margin-bottom:10px}.employee-months button{padding:7px}.employee-months button.active{padding:6px}.employee-months strong{font-size:12px;margin:3px 0}.employee-months small{font-size:9px}.employee-report-dialog .report-kpis strong{font-size:16px}.employee-month-heading{display:block}.employee-month-heading h3{margin:8px 0}.employee-month-heading>span{display:block;margin-bottom:8px}.employee-day-row{grid-template-columns:46px minmax(0,1fr) 38px 38px;padding:8px 6px;gap:5px;font-size:11px}.employee-days-list{max-height:38vh}.employee-popup-query{margin:8px 0}.employee-popup-query button{padding:8px}.employee-popup-query input{padding:8px}.employee-report-dialog .report-kpis{gap:5px}.employee-report-dialog .report-kpis>div{padding:8px}}
.employee-name-link{padding:0;border:0;background:transparent;font:inherit;font-weight:bold;text-align:left}
@media(pointer:coarse){.employee-report-dialog .desktop-download{display:none!important}}

/* Expanded employee profiles, readable on desktop and phones. */
.employee-filters{display:flex;flex-wrap:wrap;gap:16px;align-items:end}.employee-filters label{flex:1;min-width:180px}.employee-filters p{margin:0 0 12px}.employee-info-card header{display:flex;justify-content:space-between;gap:12px;align-items:center;border-bottom:1px solid #dce5f1;padding-bottom:14px}.employee-info-card h2{margin:4px 0}.employee-info-sections{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 32px}.employee-info-section{min-width:0}.employee-info-section h3{font-size:15px;color:#0a3e80}.employee-info-section dl{margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 20px}.employee-info-section dl>div{min-width:0}.employee-info-section dt{font-size:12px;color:#58708e;margin-bottom:5px}.employee-info-section dd{margin:0;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.5}.employee-info-card .actions{margin:0}@media(max-width:700px){.employee-info-sections{grid-template-columns:1fr;gap:10px}.employee-filters label{min-width:0;flex-basis:40%}.employee-filters label:first-child{flex-basis:100%}.employee-info-card header{align-items:start}.employee-info-card header .actions{flex-wrap:nowrap}.employee-info-card{padding:18px}}
.payroll-overview .table-wrap{overflow:auto}.payroll-overview td,.payroll-overview th{white-space:nowrap}.payroll-totals{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:16px 0}.payroll-totals div{background:#edf3fa;padding:14px;border-radius:10px;min-width:0}.payroll-totals span{display:block;font-size:12px}.payroll-totals strong{display:block;margin-top:8px;overflow-wrap:anywhere}.payroll-dialog input,.payroll-dialog select{max-width:100%;min-width:0}.employee-info-card header .actions{flex-wrap:wrap}@media(max-width:700px){.payroll-totals{grid-template-columns:repeat(2,minmax(0,1fr))}.payroll-dialog .grid{grid-template-columns:1fr}.employee-info-card header .actions{flex-wrap:wrap;max-width:150px}}

.employee-sheet-wrap{overflow:auto;max-height:70vh;border:1px solid #dce5ef;border-radius:12px;background:white}.employee-sheet{width:max-content;min-width:100%;font-size:12px}.employee-sheet th,.employee-sheet td{white-space:nowrap;padding:10px 12px}.employee-sheet thead th{position:sticky;top:0;z-index:3;background:#eaf1f8}.employee-sheet td:first-child{position:sticky;left:0;background:#fff;z-index:1}.employee-sheet-editor{position:sticky;left:0;width:min(1100px,calc(100vw - 80px));white-space:normal}.employee-sheet-editor .card{white-space:normal}.report-matrix{overflow:auto}.report-matrix table{min-width:1400px}.report-matrix .pay-column{width:100px}.report-matrix .pay-cell{font-size:11px;padding:5px}.pay-cell button{font-size:10px;padding:4px;white-space:normal}.calendar-pay{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:12px 0;font-size:12px}.calendar-pay button{grid-column:1/-1}.calendar-pay span b{display:block}

.day-saturday{color:#1465b8!important}.day-sunday{color:#c12f38!important}.day-holiday{color:#a51f69!important;background-color:#fff0f7!important}.calendar-legend{font-size:12px}.calendar-weekday:first-child{color:#c12f38}.calendar-weekday:nth-child(7){color:#1465b8}

@media(min-width:1100px){.reports-screen .layout{display:block}.reports-screen aside{padding:8px 20px;border-right:0;border-bottom:1px solid #dce5ef}.reports-screen nav{display:flex;flex-wrap:wrap}.reports-screen .aside-note{display:none}.reports-screen main{max-width:none;padding:24px}.report-matrix table{min-width:1320px}.report-matrix .pay-column{width:88px}.report-matrix .person-column{width:110px}}
