:root{
  --bg:#eef1f5;--surface:#fff;--surface2:#f8fafc;--ink:#101828;--muted:#667085;
  --navy:#101820;--navy2:#1c2934;--gold:#c6a04b;--gold-dark:#8a681b;--gold-soft:#f7f0dd;
  --line:#d7dde5;--green:#16794d;--green-bg:#ecfdf3;--red:#b42318;--red-bg:#fff1f0;
  --amber:#946200;--amber-bg:#fffaeb;--sat:#fff8d7;--sun:#fdecef;--shadow:0 14px 38px rgba(16,24,40,.08);--r:18px
}
*{box-sizing:border-box}html{background:var(--bg)}body{margin:0;min-height:100vh;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:linear-gradient(180deg,#f8f9fb 0,#eef1f5 280px)}button,input,select{font:inherit}button{-webkit-tap-highlight-color:transparent}
[hidden]{display:none!important}.muted{color:var(--muted)}.compact{margin:4px 0 0;font-size:.8rem}.eyebrow{display:inline-block;color:var(--gold-dark);font-size:.7rem;font-weight:950;letter-spacing:.14em}.wide{width:100%}
.auth-screen{position:fixed;inset:0;z-index:500;display:grid;place-items:center;padding:20px;background:radial-gradient(circle at top left,#263744 0,#101820 42%,#0b1117 100%)}.auth-card{width:min(460px,100%);background:#fff;border-radius:24px;padding:32px;box-shadow:0 36px 100px rgba(0,0,0,.4);border-top:5px solid var(--gold)}.auth-card h1{margin:3px 0 6px;font-size:2rem}.auth-card .big{margin-bottom:18px}.form-message{min-height:22px;color:var(--red);font-size:.82rem;margin:12px 0 0}.notice{border-radius:12px;padding:11px 13px;font-size:.81rem;margin:12px 0}.notice.info{background:#eff6ff;border:1px solid #bfdbfe;color:#1e3a5f}
.app-header{position:sticky;top:0;z-index:30;min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:13px clamp(14px,3vw,40px);background:rgba(16,24,32,.97);border-bottom:3px solid var(--gold);box-shadow:0 8px 24px rgba(0,0,0,.13);backdrop-filter:blur(14px)}.brand{display:flex;align-items:center;gap:12px;min-width:0}.brand-mark{width:46px;height:46px;border-radius:13px;display:grid;place-items:center;background:var(--gold);color:#111;font-weight:950;letter-spacing:.05em;box-shadow:inset 0 0 0 1px rgba(255,255,255,.28)}.brand-mark.big{width:58px;height:58px;border-radius:17px;font-size:1.05rem}.brand h1{margin:0;color:#fff;font-size:1.05rem}.brand p{margin:3px 0 0;color:#b8c1cc;font-size:.77rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:52vw}.header-actions{display:flex;gap:8px;align-items:center}.sync-badge{font-size:.72rem;font-weight:850;padding:7px 10px;border-radius:999px;white-space:nowrap}.sync-badge.online{background:rgba(22,121,77,.18);color:#8ef0bd;border:1px solid rgba(142,240,189,.22)}.sync-badge.offline{background:rgba(180,35,24,.18);color:#fca5a5;border:1px solid rgba(252,165,165,.22)}
.btn,.icon-btn,.view-tab,.user-chip{border:0;cursor:pointer;transition:.16s ease}.btn{min-height:42px;padding:9px 14px;border-radius:11px;font-weight:850}.btn:hover,.icon-btn:hover,.view-tab:hover,.user-chip:hover{transform:translateY(-1px)}.btn:active,.icon-btn:active,.view-tab:active,.user-chip:active{transform:none}.btn.primary{background:var(--gold);color:#151515}.btn.secondary{background:#fff;color:var(--ink);border:1px solid var(--line)}.btn.ghost{background:#f7f8fa;color:var(--ink);border:1px solid #e0e5eb}.btn.danger{background:var(--red-bg);color:var(--red);border:1px solid #fecdca}.header-btn{background:transparent;color:#fff;border:1px solid #43515e;min-height:38px}.header-btn:hover{background:#1d2a36}.user-chip{min-height:40px;border-radius:12px;padding:7px 11px;background:#fff;color:var(--ink);font-weight:900;max-width:170px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.icon-btn{width:44px;height:44px;display:grid;place-items:center;background:#fff;border:1px solid var(--line);border-radius:11px;font-size:1.4rem;color:var(--ink)}
.app-shell{width:min(1520px,calc(100% - 28px));margin:20px auto 50px}.panel{background:var(--surface);border:1px solid #e0e5eb;border-radius:var(--r);box-shadow:var(--shadow)}.view-tabs-wrap{padding:7px;margin-bottom:12px}.view-tabs{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.view-tab{min-height:44px;border-radius:11px;background:transparent;color:#475467;font-weight:900}.view-tab.active{background:var(--navy);color:#fff;box-shadow:inset 0 -3px 0 var(--gold)}
.period-toolbar{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:11px;padding:15px 17px;position:relative;overflow:hidden}.period-toolbar:before{content:"";position:absolute;left:0;top:0;bottom:0;width:5px;background:var(--gold)}.period-title-wrap{text-align:center;min-width:0}.period-title-wrap h2{margin:0;font-size:clamp(1.2rem,3vw,1.65rem);text-transform:capitalize}.period-title-wrap p{margin:4px 0 0;color:var(--muted);font-size:.82rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.stats-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:12px;overflow:hidden}.stats-strip>div{padding:15px 18px;border-right:1px solid #e5e7eb}.stats-strip>div:last-child{border-right:0}.stats-strip span{display:block;color:var(--muted);font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.stats-strip strong{display:block;font-size:1.45rem;margin-top:3px}
.content-panel{margin-top:12px;overflow:hidden}.content-head{display:flex;align-items:end;justify-content:space-between;gap:16px;padding:19px 20px 15px;border-bottom:1px solid #e5e7eb}.content-head h2{margin:3px 0 0;font-size:1.2rem}.content-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}.last-refresh{color:var(--muted);font-size:.72rem}.table-scroll{overflow:auto;overscroll-behavior-inline:contain}.data-table{width:100%;border-collapse:separate;border-spacing:0;table-layout:fixed;min-width:780px}.data-table th,.data-table td{border-right:1px solid #c1c9d3;border-bottom:1px solid #c1c9d3;text-align:center;padding:0}.data-table thead th{position:sticky;top:0;z-index:2;height:56px;background:var(--navy);color:#fff;font-size:.74rem;font-weight:900;border-color:#3e4a56}.data-table thead th:first-child{left:0;z-index:4}.data-table .sticky-col{position:sticky;left:0;z-index:1;background:#fbfcfd!important}.data-table tbody tr{height:44px}.data-table .date-col{width:108px;padding:5px 6px;font-weight:900;font-size:.76rem}.data-table .day-col{width:55px;font-weight:900;font-size:.72rem}.data-table .employee-col{width:165px;padding:7px;font-size:.75rem}.data-table .employee-name-col{width:205px;text-align:left;padding:0 12px;font-size:.78rem}.data-table tr.saturday td{background:var(--sat)}.data-table tr.sunday td,.data-table tr.holiday td{background:var(--sun)}.data-table tr.today-row td{box-shadow:inset 0 2px 0 var(--gold),inset 0 -2px 0 var(--gold)}.holiday-label{display:block;color:#a31935;font-size:.55rem;line-height:1.1;margin-top:2px;font-weight:800}.record-cell{cursor:pointer;min-width:110px;position:relative}.record-cell:hover{outline:2px solid rgba(198,160,75,.75);outline-offset:-2px;background:#fffcf3!important}.record-cell.locked{cursor:default}.record-cell.locked:hover{outline:0}.record-cell.empty::after{content:"+";display:grid;place-items:center;width:22px;height:22px;margin:auto;border-radius:7px;color:#98a2b3;background:#f2f4f7;font-weight:900;font-size:.84rem}.record-cell.locked.empty::after{content:"—"}.status-code{display:inline-grid;place-items:center;min-width:40px;min-height:27px;padding:4px 8px;border-radius:8px;background:#eef2f6;color:#344054;font-weight:950;font-size:.76rem}.signature-thumb{display:block;max-width:120px;max-height:33px;object-fit:contain;mix-blend-mode:multiply;margin:auto}.updated-dot{position:absolute;right:4px;top:4px;width:6px;height:6px;border-radius:50%;background:var(--gold)}
.day-view{padding:18px}.day-banner{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:16px;border-radius:15px;background:#f8fafc;border:1px solid #e1e6ec;margin-bottom:14px}.day-banner.holiday{background:var(--sun);border-color:#f3c4cd}.day-banner h3{margin:0;font-size:1.08rem}.day-banner p{margin:3px 0 0;color:var(--muted);font-size:.8rem}.holiday-badge{display:inline-flex;align-items:center;min-height:30px;padding:6px 10px;border-radius:999px;background:#fff;color:#a31935;border:1px solid #f3c4cd;font-size:.75rem;font-weight:900}.day-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:12px}.person-card{border:1px solid #dce2e8;border-radius:15px;padding:15px;background:#fff;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:center}.person-card.done{border-color:#abefc6;background:var(--green-bg)}.person-card.absent{border-color:#fedf89;background:var(--amber-bg)}.avatar{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;background:var(--navy);color:#fff;font-weight:950;font-size:.75rem}.person-card.done .avatar{background:var(--green)}.person-card.absent .avatar{background:#a66e00}.person-card h3{margin:0;font-size:.93rem}.person-card p{margin:4px 0 0;color:var(--muted);font-size:.75rem}.person-card .btn{min-height:36px;padding:7px 10px;font-size:.74rem}
.year-view{padding:18px}.year-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.month-card{border:1px solid #dce2e8;border-radius:15px;padding:14px;background:#fff;cursor:pointer;text-align:left}.month-card:hover{border-color:var(--gold);box-shadow:0 10px 24px rgba(16,24,40,.06)}.month-card.current{box-shadow:inset 0 0 0 2px var(--gold)}.month-card h3{margin:0 0 10px;text-transform:capitalize}.month-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.month-metrics span{display:block;background:#f7f8fa;border-radius:9px;padding:8px;font-size:.68rem;color:var(--muted)}.month-metrics b{display:block;color:var(--ink);font-size:1rem;margin-bottom:2px}.year-employee-table{margin-top:16px;overflow:auto;border:1px solid #e1e6ec;border-radius:14px}.year-employee-table table{width:100%;border-collapse:collapse;min-width:720px}.year-employee-table th,.year-employee-table td{padding:10px;border-bottom:1px solid #e5e7eb;text-align:center;font-size:.75rem}.year-employee-table th{background:#f8fafc}.year-employee-table th:first-child,.year-employee-table td:first-child{text-align:left;font-weight:850}
.holiday-panel{margin-top:12px;padding:18px 20px}.holiday-panel h2{margin:3px 0 12px;font-size:1.05rem}.holiday-list{display:flex;gap:7px;flex-wrap:wrap}.holiday-chip{border-radius:999px;padding:6px 9px;background:#fdf2f4;border:1px solid #f7cfd7;color:#8d1831;font-size:.7rem;font-weight:800}
.modal{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:16px}.modal-backdrop{position:absolute;inset:0;background:rgba(16,24,40,.66);backdrop-filter:blur(5px)}.modal-card{position:relative;z-index:1;width:min(640px,100%);max-height:min(92vh,860px);overflow:auto;background:#fff;border-radius:20px;box-shadow:0 34px 90px rgba(0,0,0,.3);padding:24px;border-top:5px solid var(--gold)}.modal-card.small-card{width:min(500px,100%)}.modal-card.signature-card{width:min(780px,100%)}.modal-card.settings-card{width:min(760px,100%)}.modal-card h2{margin:4px 40px 5px 0}.modal-close{position:absolute;top:13px;right:13px;width:37px;height:37px;border-radius:50%;border:1px solid #e0e5eb;background:#fff;cursor:pointer;font-size:1.35rem;color:#475467}.record-option{width:100%;display:flex;align-items:center;gap:12px;text-align:left;border:1px solid #d7dde5;background:#f8fafc;border-radius:14px;padding:14px;cursor:pointer;margin-top:14px}.record-option:hover{border-color:var(--gold);background:#fffcf4}.record-option small{display:block;color:var(--muted);margin-top:2px}.option-icon{width:42px;height:42px;border-radius:11px;display:grid;place-items:center;background:var(--gold-soft);font-size:1.2rem}.status-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:10px 0}.status-btn{min-height:66px;border:1px solid #d7dde5;background:#fff;border-radius:12px;cursor:pointer;padding:8px}.status-btn:hover{border-color:var(--gold);background:#fffcf4}.status-btn b{display:block;font-size:.95rem}.status-btn small{display:block;color:var(--muted);font-size:.65rem;margin-top:2px}.current-record{margin-top:12px;padding:11px 12px;border-radius:12px;background:#f8fafc;border:1px solid #e1e6ec;font-size:.8rem}.signature-wrap{margin-top:17px;border:2px dashed #cbd5e1;border-radius:14px;overflow:hidden;background:#fff;touch-action:none}#signatureCanvas{display:block;width:100%;height:auto;max-height:250px;background:repeating-linear-gradient(0deg,#fff,#fff 31px,#f1f5f9 32px);touch-action:none}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:17px}.modal-actions.split{justify-content:space-between}.field-label{display:block;margin:15px 0 7px;font-size:.78rem;font-weight:900}.text-input{width:100%;min-height:44px;border:1px solid #cbd5e1;border-radius:10px;padding:9px 11px;color:var(--ink);background:#fff}.text-input:focus{outline:3px solid rgba(198,160,75,.22);border-color:#b68f36}.settings-heading-row{display:flex;align-items:end;justify-content:space-between;gap:16px;margin-top:24px;border-top:1px solid #e5e7eb;padding-top:18px}.employees-list{display:grid;gap:8px;margin-top:10px}.employee-admin-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:8px;align-items:center;padding:10px 11px;border:1px solid #e1e6ec;border-radius:12px}.employee-admin-row strong{font-size:.86rem}.role-pill{padding:5px 8px;border-radius:999px;background:#f2f4f7;color:#475467;font-size:.67rem;font-weight:850}.pin-pill{font-size:.67rem;color:var(--muted)}
.popover{position:fixed;z-index:200;right:18px;top:72px;width:240px;background:#fff;border:1px solid #dfe4ea;border-radius:14px;box-shadow:0 18px 50px rgba(16,24,40,.2);padding:13px}.popover strong,.popover span{display:block}.popover span{font-size:.76rem;margin:3px 0 12px}.toast{position:fixed;left:50%;bottom:22px;z-index:300;transform:translate(-50%,18px);opacity:0;pointer-events:none;background:#101820;color:#fff;padding:10px 14px;border-radius:11px;box-shadow:0 12px 32px rgba(0,0,0,.22);font-size:.8rem;font-weight:800;transition:.2s ease}.toast.show{opacity:1;transform:translate(-50%,0)}
@media(max-width:900px){.year-grid{grid-template-columns:repeat(2,1fr)}.sync-badge{display:none}.stats-strip{grid-template-columns:repeat(2,1fr)}.stats-strip>div:nth-child(2){border-right:0}.stats-strip>div:nth-child(-n+2){border-bottom:1px solid #e5e7eb}.content-head{align-items:flex-start;flex-direction:column}.content-actions{justify-content:flex-start}.last-refresh{width:100%}}
@media(max-width:640px){body{background:#f1f3f6}.app-header{min-height:67px;padding:10px 12px}.brand-mark{width:40px;height:40px;border-radius:11px}.brand h1{font-size:.9rem}.brand p{font-size:.67rem;max-width:45vw}.header-actions{gap:5px}.header-btn{display:none}.user-chip{max-width:92px;min-height:36px;padding:6px 8px;font-size:.7rem}.app-shell{width:calc(100% - 16px);margin:10px auto 36px}.view-tabs-wrap{padding:5px;margin-bottom:8px}.view-tab{min-height:39px;font-size:.78rem}.period-toolbar{grid-template-columns:40px minmax(0,1fr) 40px;padding:11px 10px;gap:6px}.period-toolbar .icon-btn{width:40px;height:40px}.period-toolbar #todayBtn{grid-column:1/-1;width:100%;min-height:37px}.period-title-wrap h2{font-size:1.1rem}.period-title-wrap p{font-size:.7rem}.stats-strip{margin-top:8px}.stats-strip>div{padding:11px 12px}.stats-strip span{font-size:.62rem}.stats-strip strong{font-size:1.2rem}.content-panel{margin-top:8px;border-radius:14px}.content-head{padding:14px}.content-actions .btn{min-height:35px;padding:7px 9px;font-size:.7rem}.day-view,.year-view{padding:12px}.day-banner{align-items:flex-start;flex-direction:column;padding:12px}.day-grid{grid-template-columns:1fr}.person-card{grid-template-columns:auto minmax(0,1fr);padding:12px}.person-card .btn{grid-column:1/-1;width:100%}.year-grid{grid-template-columns:1fr}.holiday-panel{margin-top:8px;padding:14px}.holiday-chip{font-size:.64rem}.modal{padding:10px}.modal-card{padding:20px 15px;border-radius:17px}.status-grid{grid-template-columns:repeat(2,1fr)}.auth-card{padding:24px 18px}.settings-heading-row{align-items:flex-start;flex-direction:column}.employee-admin-row{grid-template-columns:minmax(0,1fr) auto}.employee-admin-row .pin-pill{grid-column:1/-1}.popover{right:8px;top:64px}.data-table .employee-col{width:145px}.data-table .employee-name-col{width:170px}}
@media print{body{background:#fff}.app-header,.view-tabs-wrap,.stats-strip,.content-actions,.holiday-panel,.period-toolbar .icon-btn,.period-toolbar #todayBtn{display:none!important}.app-shell{width:100%;margin:0}.panel{box-shadow:none;border:0}.period-toolbar{display:block;padding:0 0 5mm}.period-title-wrap{text-align:left}.content-panel{margin:0}.content-head{padding:0 0 4mm;border:0}.table-scroll{overflow:visible}.data-table{min-width:0;width:100%;font-size:7pt;border-collapse:collapse}.data-table th,.data-table td{border:1px solid #222}.data-table thead th{position:static!important;height:9mm;background:#eee!important;color:#111!important}.data-table .sticky-col{position:static!important}.data-table tbody tr{height:6.5mm}.record-cell.empty:after{content:""}.signature-thumb{max-height:5mm}.year-grid{grid-template-columns:repeat(3,1fr)}}

/* v1.1.0 - mjesečna potpisna lista prema papirnatom HLER obrascu */
.month-sheet{background:#fff}.month-paper-head{display:grid;grid-template-columns:minmax(360px,1fr) auto;align-items:end;gap:20px;padding:18px 20px 14px;border-bottom:1px solid #cfd6df}.month-paper-org{display:grid;gap:5px;font-size:.8rem}.month-paper-org>div{display:grid;grid-template-columns:82px minmax(0,1fr);gap:8px;align-items:end}.month-paper-org span{font-weight:900;color:#475467}.month-paper-org strong{min-height:24px;padding:0 2px 3px;border-bottom:1px solid #98a2b3;font-weight:800}.month-paper-title{font-size:1rem;font-weight:950;letter-spacing:.02em;white-space:nowrap}.month-data-table{min-width:max(860px,calc(155px + (var(--employee-count) * 165px)))}.month-data-table thead .month-name-row th{height:66px}.month-data-table thead .month-column-row th{height:28px;background:#263541;font-size:.61rem;color:#dfe6ec}.month-data-table .month-person-label{text-align:left;padding-left:10px;white-space:nowrap}.employee-head-name{display:block;font-size:.73rem;line-height:1.16}.employee-head-sign{display:block;margin-top:4px;font-size:.61rem;font-weight:750;color:#d7dee5}.month-data-table .date-main{display:block}.month-paper-legend{padding:10px 20px 13px;border-top:1px solid #cfd6df;font-size:.7rem;line-height:1.5;color:#344054}.month-paper-legend b{color:#101820}.record-cell.auto-holiday.empty::after{display:none}.status-code.auto-nb{background:#fff0f2;color:#9f1239;border:1px solid #fecdd3}.record-cell.auto-holiday{cursor:pointer}

@media(max-width:760px){.month-paper-head{grid-template-columns:1fr;gap:11px;padding:14px}.month-paper-title{font-size:.9rem;white-space:normal}.month-paper-org>div{grid-template-columns:72px minmax(0,1fr);font-size:.72rem}.month-paper-legend{padding:9px 14px;font-size:.64rem}.month-data-table thead .month-name-row th{height:58px}.employee-head-name{font-size:.67rem}.employee-head-sign{font-size:.56rem}}

@page{size:A4 landscape;margin:7mm}
@media print{
  html[data-hler-view="month"] body{background:#fff!important}
  html[data-hler-view="month"] .period-toolbar,html[data-hler-view="month"] .content-head{display:none!important}
  html[data-hler-view="month"] .content-panel{overflow:visible!important}
  html[data-hler-view="month"] .month-sheet{display:block!important;width:100%;font-family:Arial,Helvetica,sans-serif;color:#000}
  html[data-hler-view="month"] .month-paper-head{display:grid!important;grid-template-columns:1fr auto;gap:6mm;padding:0 0 3mm;border-bottom:0}
  html[data-hler-view="month"] .month-paper-org{gap:1.2mm;font-size:7.2pt}
  html[data-hler-view="month"] .month-paper-org>div{grid-template-columns:22mm 1fr;gap:2mm}
  html[data-hler-view="month"] .month-paper-org strong{min-height:4mm;padding:0 0 .6mm;border-bottom:.25mm solid #222}
  html[data-hler-view="month"] .month-paper-title{font-size:10.2pt;letter-spacing:.02em;white-space:nowrap;align-self:start;padding-top:.3mm}
  html[data-hler-view="month"] .month-table-scroll{overflow:visible!important}
  html[data-hler-view="month"] .month-data-table{width:100%!important;min-width:0!important;table-layout:fixed;border-collapse:collapse!important;font-size:6.4pt}
  html[data-hler-view="month"] .month-data-table th,html[data-hler-view="month"] .month-data-table td{border:.25mm solid #222!important;color:#000!important}
  html[data-hler-view="month"] .month-data-table thead th{position:static!important;background:#f2f2f2!important;color:#000!important}
  html[data-hler-view="month"] .month-data-table thead .month-name-row th{height:10mm!important;padding:.7mm 1mm!important}
  html[data-hler-view="month"] .month-data-table thead .month-column-row th{height:5mm!important;background:#f7f7f7!important;color:#000!important;font-size:5.6pt!important;padding:.4mm!important}
  html[data-hler-view="month"] .month-data-table .date-col{width:21mm!important;padding:.4mm .8mm!important;font-size:6.1pt!important}
  html[data-hler-view="month"] .month-data-table .day-col{width:10mm!important;font-size:6pt!important}
  html[data-hler-view="month"] .month-data-table .employee-col{width:auto!important;padding:.2mm .5mm!important;font-size:6pt!important}
  html[data-hler-view="month"] .month-data-table tbody tr{height:4.55mm!important;break-inside:avoid}
  html[data-hler-view="month"] .month-data-table tr.saturday td{background:#fffbd8!important;print-color-adjust:exact;-webkit-print-color-adjust:exact}
  html[data-hler-view="month"] .month-data-table tr.sunday td,html[data-hler-view="month"] .month-data-table tr.holiday td{background:#fdecef!important;print-color-adjust:exact;-webkit-print-color-adjust:exact}
  html[data-hler-view="month"] .month-data-table tr.today-row td{box-shadow:none!important}
  html[data-hler-view="month"] .month-data-table .holiday-label{font-size:4.5pt!important;margin-top:.15mm!important;line-height:1!important}
  html[data-hler-view="month"] .employee-head-name{font-size:6.1pt!important;line-height:1.05!important}
  html[data-hler-view="month"] .employee-head-sign{font-size:5.2pt!important;color:#000!important;margin-top:.6mm!important}
  html[data-hler-view="month"] .status-code{min-width:8mm!important;min-height:3.3mm!important;padding:.2mm .8mm!important;border-radius:0!important;background:transparent!important;color:#000!important;border:0!important;font-size:6.1pt!important}
  html[data-hler-view="month"] .signature-thumb{max-width:30mm!important;max-height:3.9mm!important}
  html[data-hler-view="month"] .updated-dot{display:none!important}
  html[data-hler-view="month"] .record-cell.empty::after{display:none!important}
  html[data-hler-view="month"] .month-paper-legend{padding:2mm 0 0;border-top:0;font-size:6pt;line-height:1.3}
}

/* v1.3.0 - redizajn sučelja za HLER Evidenciju radnog vremena */
:root{
  --bg:#f3f5f7;--surface:#ffffff;--surface2:#f8fafb;--ink:#18222d;--muted:#697586;
  --navy:#111820;--navy2:#1d2833;--gold:#d1a640;--gold-dark:#8d6816;--gold-soft:#fbf6e8;
  --line:#dfe4ea;--green:#177a4d;--green-bg:#effbf4;--red:#b42318;--red-bg:#fff3f2;
  --amber:#946200;--amber-bg:#fff9e8;--sat:#fff9df;--sun:#fdf0f2;--shadow:0 12px 34px rgba(17,24,32,.07);--r:20px
}
body{background:linear-gradient(180deg,#f8fafb 0,#f2f4f7 360px);color:var(--ink)}

/* Prijava / prvo pokretanje */
.auth-screen{padding:28px;background:
  radial-gradient(circle at 8% 10%,rgba(209,166,64,.16),transparent 28%),
  radial-gradient(circle at 92% 86%,rgba(209,166,64,.08),transparent 24%),
  linear-gradient(145deg,#17232d 0%,#0c131a 58%,#080d12 100%)}
.auth-shell{width:min(1080px,100%);display:grid;grid-template-columns:minmax(0,1.18fr) minmax(390px,.82fr);overflow:hidden;border-radius:30px;box-shadow:0 38px 120px rgba(0,0,0,.44);border:1px solid rgba(255,255,255,.08)}
.auth-intro{min-height:620px;padding:46px 48px 38px;display:flex;flex-direction:column;color:#fff;background:
  linear-gradient(155deg,rgba(255,255,255,.055),rgba(255,255,255,0) 48%),
  linear-gradient(145deg,#17232d,#101820);position:relative;overflow:hidden}
.auth-intro:after{content:"";position:absolute;width:330px;height:330px;border:1px solid rgba(209,166,64,.24);border-radius:50%;right:-170px;bottom:-150px;box-shadow:0 0 0 54px rgba(209,166,64,.035),0 0 0 108px rgba(209,166,64,.02)}
.auth-brand-row{display:flex;align-items:center;gap:13px;position:relative;z-index:1}.auth-brand-name{display:block;font-size:.92rem;font-weight:950;letter-spacing:.18em}.auth-brand-sub{display:block;margin-top:3px;color:#9ca8b5;font-size:.69rem;letter-spacing:.04em}
.auth-intro-copy{margin:auto 0 36px;max-width:610px;position:relative;z-index:1}.eyebrow.light{color:#e3c36f}.auth-intro-copy h1{margin:13px 0 14px;font-size:clamp(2.35rem,4.4vw,4.3rem);line-height:.98;letter-spacing:-.048em;max-width:760px}.auth-intro-copy p{margin:0;max-width:600px;color:#c4ccd5;font-size:1rem;line-height:1.6}
.auth-features{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;position:relative;z-index:1}.auth-features>div{min-width:0;padding:13px 12px;border:1px solid rgba(255,255,255,.1);border-radius:15px;background:rgba(255,255,255,.035)}.auth-features b,.auth-features small{display:block}.auth-features b{margin-top:8px;font-size:.78rem}.auth-features small{margin-top:3px;color:#9da9b5;font-size:.63rem;line-height:1.35}.feature-icon{width:27px;height:27px;border-radius:8px;display:grid;place-items:center;background:var(--gold);color:#111;font-size:.67rem;font-weight:950}
.auth-security-note{position:relative;z-index:1;margin:18px 0 0;color:#7f8c99;font-size:.66rem;letter-spacing:.04em}
.auth-card{width:auto;border-radius:0;padding:52px 46px 38px;border-top:0;box-shadow:none;background:#fff;display:flex;flex-direction:column;justify-content:center}.auth-card-head{margin-bottom:24px}.auth-card-head h2{margin:7px 0 7px;font-size:2rem;line-height:1.05;letter-spacing:-.035em}.auth-kicker{color:var(--gold-dark);font-size:.67rem;font-weight:950;letter-spacing:.15em}.auth-mobile-brand{display:none}.auth-card form{display:grid;gap:0}.auth-card .field-label{margin-top:11px}.auth-submit{margin-top:18px;min-height:50px;font-size:.93rem}.auth-card-footer{margin-top:24px;padding-top:17px;border-top:1px solid #edf0f3;color:#9aa4b2;text-align:center;font-size:.68rem;letter-spacing:.06em}.auth-card .notice.info{background:#f5f8fc;border-color:#d8e4f2;color:#34495e;line-height:1.45}

/* Glavno zaglavlje */
.app-header{min-height:82px;padding:14px clamp(15px,3vw,42px);background:rgba(17,24,32,.985);border-bottom:1px solid rgba(209,166,64,.62);box-shadow:0 8px 28px rgba(0,0,0,.12)}
.brand{gap:13px}.brand-mark{background:linear-gradient(145deg,#e0ba58,#c5962f);border-radius:14px;box-shadow:inset 0 0 0 1px rgba(255,255,255,.35),0 8px 20px rgba(0,0,0,.14)}.brand-copy{min-width:0}.brand-overline{display:block;color:#d6b45e;font-size:.58rem;font-weight:950;letter-spacing:.19em;margin-bottom:2px}.brand h1{font-size:1.08rem;letter-spacing:-.01em}.brand p{color:#aab5c0;max-width:58vw;font-size:.72rem}
.header-btn{border-color:#3a4652;background:rgba(255,255,255,.025)}.user-chip{background:#fff;border:1px solid rgba(255,255,255,.22);padding-inline:14px}.sync-badge.online{background:rgba(37,158,94,.13);color:#9ae6bb;border-color:rgba(154,230,187,.18)}

/* Glavni sadržaj */
.app-shell{width:min(1480px,calc(100% - 34px));margin:22px auto 54px}.panel{border-color:#e3e7ec;box-shadow:0 10px 30px rgba(17,24,32,.055)}
.app-nav-panel{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:16px;padding:8px 10px 8px 18px;margin-bottom:12px}.nav-label{color:#8a96a5;font-size:.65rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.view-tabs{gap:6px}.view-tab{display:flex;align-items:center;justify-content:center;gap:8px;min-height:46px}.view-tab span{width:24px;height:24px;border-radius:8px;display:grid;place-items:center;background:#edf1f4;color:#667485;font-size:.64rem;font-weight:950}.view-tab.active{background:#111820;box-shadow:none}.view-tab.active span{background:var(--gold);color:#111}
.period-toolbar{padding:17px 18px;grid-template-columns:auto minmax(0,1fr) auto auto}.period-toolbar:before{width:4px}.period-kicker{display:block;color:#9a7a2a;font-size:.56rem;font-weight:950;letter-spacing:.14em;margin-bottom:3px}.period-title-wrap h2{letter-spacing:-.025em}.today-btn{min-width:88px}

.stats-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:12px;background:transparent;border:0;box-shadow:none}.stat-card{position:relative;overflow:hidden;background:#fff;border:1px solid #e1e6ec;border-radius:16px;padding:17px 18px;box-shadow:0 8px 24px rgba(17,24,32,.045)}.stat-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:#cbd3dc}.stat-card.success:before{background:#32a56c}.stat-card.warning:before{background:#d5a636}.stat-label{display:block;color:#6e7b89;font-size:.65rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.stat-card strong{display:block;font-size:1.65rem;margin-top:5px;line-height:1}.stat-card small{display:block;margin-top:6px;color:#98a2ad;font-size:.64rem}.stats-strip>div,.stats-strip>article{border-right:0}

.content-panel{border-radius:20px}.content-head{padding:20px 22px 16px}.content-head h2{font-size:1.28rem;letter-spacing:-.02em}.content-actions .btn{background:#fff}.last-refresh{margin-right:3px}.holiday-panel{display:grid;grid-template-columns:minmax(250px,.7fr) minmax(0,1.3fr);gap:24px;align-items:start}.holiday-copy p{margin:6px 0 0;color:var(--muted);font-size:.76rem;line-height:1.45}

/* Kartice dnevnog prikaza */
.day-view{padding:20px}.day-banner{padding:17px 18px;background:linear-gradient(180deg,#fbfcfd,#f7f9fb);border-color:#e3e8ed}.day-banner h3{font-size:1.12rem}.person-card{padding:16px;border-color:#e2e7ec;border-radius:16px;box-shadow:0 4px 14px rgba(17,24,32,.025)}.person-card:hover{border-color:#c7d0d9}.avatar{background:linear-gradient(145deg,#1c2a36,#0f171e)}

/* Tablice */
.data-table thead th{background:#17222c;border-color:#43505b}.data-table .sticky-col{background:#fcfdfe!important}.record-cell.empty::after{background:#eef2f5;color:#7f8a96}.month-paper-head{background:#fbfcfd}.month-paper-title{color:#17222c}

/* Modali i forme */
.modal-card{border-radius:22px;box-shadow:0 30px 100px rgba(0,0,0,.27);border:1px solid rgba(255,255,255,.65)}.text-input{min-height:47px;border-radius:12px;border:1px solid #cfd7df;background:#fff;outline:none;transition:.15s ease}.text-input:focus{border-color:#c29a37;box-shadow:0 0 0 3px rgba(209,166,64,.13)}.field-label{font-size:.72rem;font-weight:900;color:#344054}.record-option{border-radius:14px}.status-btn{border-radius:13px}.signature-wrap{border-radius:14px;background:#fff}.btn.primary{background:linear-gradient(180deg,#ddb453,#c99a31);box-shadow:0 8px 18px rgba(157,111,18,.15)}.btn.primary:hover{filter:brightness(.985)}

/* Mobile */
@media(max-width:900px){
  .auth-shell{grid-template-columns:1fr;max-width:560px}.auth-intro{display:none}.auth-card{border-radius:26px;padding:32px 26px}.auth-mobile-brand{display:flex;align-items:center;gap:10px;margin-bottom:24px;font-weight:950;letter-spacing:.12em;font-size:.77rem}.auth-mobile-brand .brand-mark{width:40px;height:40px;border-radius:12px}.auth-card-head h2{font-size:1.7rem}
  .holiday-panel{grid-template-columns:1fr}.stats-strip{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:640px){
  .auth-screen{padding:12px}.auth-card{padding:26px 18px 22px;border-radius:22px}.auth-card-head{margin-bottom:18px}.auth-card-head h2{font-size:1.52rem}.auth-card-footer{margin-top:18px}
  .app-header{min-height:70px;padding:9px 11px}.brand-mark{width:42px;height:42px}.brand-overline{display:none}.brand h1{font-size:.84rem}.brand p{font-size:.6rem;max-width:48vw}.user-chip{max-width:88px}.app-shell{width:calc(100% - 14px);margin:8px auto 32px}
  .app-nav-panel{display:block;padding:5px;margin-bottom:8px}.nav-label{display:none}.view-tab{min-height:42px;gap:5px;font-size:.72rem}.view-tab span{width:21px;height:21px;border-radius:7px;font-size:.58rem}
  .period-toolbar{grid-template-columns:38px minmax(0,1fr) 38px;padding:10px 8px}.period-kicker{display:none}.today-btn{grid-column:1/-1;min-width:0}.stats-strip{gap:7px;margin-top:8px}.stat-card{padding:12px 12px;border-radius:13px}.stat-card strong{font-size:1.35rem}.stat-card small{font-size:.57rem}.stat-label{font-size:.58rem}
  .content-head{padding:14px}.content-head h2{font-size:1.08rem}.holiday-panel{padding:14px}.day-view{padding:11px}
}

@media print{
  .app-nav-panel{display:none!important}
  .stats-strip{display:none!important}
}


/* v1.4.0 - ljepši dashboard i jednostavna elektronička kvačica */
.app-shell{width:min(1500px,calc(100% - 34px));}
.stats-strip{grid-template-columns:repeat(4,minmax(0,1fr));}
.content-panel{background:linear-gradient(180deg,#fff,#fcfdff);}
.day-grid{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));}
.person-card{grid-template-columns:auto minmax(0,1fr) auto;gap:14px;align-items:center;background:linear-gradient(180deg,#fff,#fbfcfd);}
.person-card.done{background:linear-gradient(180deg,#f4fcf7,#eefbf3);}
.person-card.absent{background:linear-gradient(180deg,#fffaf0,#fff7e8);}
.person-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.person-actions .btn{white-space:nowrap}
.quick-present{min-width:110px}
.record-option{width:100%;display:flex;align-items:center;gap:14px;padding:16px 18px;border:1px solid #dde4eb;background:#fff;cursor:pointer;text-align:left}.record-option b{display:block;font-size:1rem}.record-option small{display:block;margin-top:4px;color:var(--muted);font-size:.78rem}.option-icon{width:44px;height:44px;border-radius:14px;display:grid;place-items:center;font-size:1.15rem;font-weight:950;background:#eef2f6;color:#1f2937;flex:0 0 auto}.primary-check-option{border-color:#cbe8d5;background:linear-gradient(180deg,#f6fcf8,#f0faf4)}.primary-check-option .option-icon{background:linear-gradient(145deg,#2fb26b,#177a4d);color:#fff}.primary-check-option.is-active{box-shadow:0 0 0 2px rgba(23,122,77,.12);border-color:#8fd0aa}
.record-section-label{margin:18px 0 10px;color:#667085;font-size:.72rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.status-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.status-btn{min-height:74px;padding:14px 12px;border:1px solid #d9e0e7;background:#fff;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:4px;text-align:left}.status-btn b{font-size:1rem}.status-btn small{color:var(--muted);font-size:.74rem;line-height:1.35}
.current-record{padding:14px 16px;border-radius:14px;background:#f8fafc;border:1px solid #e2e8f0;margin:14px 0 12px;line-height:1.45}
.status-code.check{background:linear-gradient(145deg,#22a55d,#177a4d);color:#fff;min-width:34px;padding-inline:10px}
.record-cell.empty::after{content:'+'}
.year-view{padding:20px}.month-card{background:linear-gradient(180deg,#fff,#fcfdff)}
.holiday-panel{padding:22px}.holiday-list{display:flex;flex-wrap:wrap;gap:10px}.holiday-chip{display:inline-flex;align-items:center;padding:8px 12px;border-radius:999px;background:#fff;border:1px solid #e0e6ed;font-size:.76rem;color:#344054;box-shadow:0 4px 10px rgba(17,24,32,.03)}
@media(max-width:900px){.day-grid{grid-template-columns:1fr}.person-card{grid-template-columns:auto minmax(0,1fr)}.person-actions{grid-column:1/-1;justify-content:stretch}.person-actions .btn{flex:1}.status-grid{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.stats-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.person-card{padding:14px}.person-actions{gap:6px}.status-grid{grid-template-columns:1fr}.record-option{padding:14px 14px}.option-icon{width:40px;height:40px;border-radius:12px}.status-btn{min-height:68px}}
@media print{.quick-present,.record-option,.record-section-label{display:none!important}.status-code.check{background:#eef2f6!important;color:#17222c!important}}


/* v1.5.0 - potpuna mobilna lista i bolji login */
.mobile-period-list{display:none}.today-pill{display:inline-flex;align-items:center;padding:5px 8px;border-radius:999px;background:var(--gold-soft);color:var(--gold-dark);font-size:.65rem;font-weight:900}
@media(max-width:760px){
  body{background:#f4f6f8}.app-header{position:sticky;top:0;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;min-height:64px;padding:8px 10px}.brand{gap:9px}.brand-mark{width:38px;height:38px;border-radius:11px;font-size:.7rem}.brand h1{font-size:.78rem;line-height:1.1}.brand p{display:none}.header-actions{gap:5px}.sync-badge{display:none}.header-btn{min-height:36px;padding:7px 9px;font-size:.68rem}.user-chip{min-height:36px;max-width:76px;padding:6px 8px;font-size:.7rem}
  .app-shell{width:100%;margin:0 auto 28px;padding:8px}.panel{border-radius:14px}.app-nav-panel{position:sticky;top:64px;z-index:20;margin:0 0 8px;padding:5px;background:rgba(255,255,255,.97);box-shadow:0 5px 16px rgba(17,24,32,.06)}.view-tabs{gap:4px}.view-tab{min-height:42px;font-size:.68rem;padding:4px}.view-tab span{display:none}
  .period-toolbar{grid-template-columns:36px minmax(0,1fr) 36px;gap:5px;padding:9px 8px}.icon-btn{width:36px;height:36px;border-radius:9px}.period-title-wrap h2{font-size:1rem}.period-title-wrap p{font-size:.66rem}.today-btn{grid-column:1/-1;min-height:36px}
  .stats-strip{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin-top:7px}.stat-card{padding:10px 11px;border-radius:12px}.stat-card strong{font-size:1.25rem}.stat-card small{font-size:.56rem}.stat-label{font-size:.55rem}
  .content-panel{margin-top:7px;border-radius:14px}.content-head{display:block;padding:12px}.content-head h2{font-size:1rem}.content-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:10px}.content-actions .last-refresh{grid-column:1/-1;margin:0}.content-actions .btn{min-height:36px;padding:7px 6px;font-size:.68rem}
  .desktop-period-table,.month-sheet{display:none!important}.mobile-period-list{display:grid;gap:9px;padding:10px}.mobile-day-card{overflow:hidden;border:1px solid #e0e6ec;border-radius:14px;background:#fff;box-shadow:0 4px 14px rgba(17,24,32,.035)}.mobile-day-card>header{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px 12px;background:#f8fafc;border-bottom:1px solid #e7ebef}.mobile-day-card>header b,.mobile-day-card>header small{display:block}.mobile-day-card>header b{font-size:.82rem}.mobile-day-card>header small{margin-top:2px;color:var(--muted);font-size:.65rem}.mobile-day-card.weekend>header{background:#fffbea}.mobile-day-card.holiday>header{background:#fff1f3}.mobile-day-people{display:grid}.mobile-person-row{appearance:none;width:100%;border:0;border-bottom:1px solid #edf0f3;background:#fff;padding:10px 12px;display:flex;align-items:center;justify-content:space-between;gap:10px;text-align:left;color:var(--ink);cursor:pointer}.mobile-person-row:last-child{border-bottom:0}.mobile-person-row:active{background:#f7f9fb}.mobile-person-main{display:flex;align-items:center;gap:9px;min-width:0}.mobile-person-main>i{width:32px;height:32px;border-radius:9px;display:grid;place-items:center;background:#17222c;color:#fff;font-style:normal;font-size:.58rem;font-weight:900;flex:0 0 auto}.mobile-person-main>span{min-width:0}.mobile-person-main b,.mobile-person-main small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mobile-person-main b{font-size:.74rem}.mobile-person-main small{margin-top:2px;color:var(--muted);font-size:.59rem}.mobile-record-badge{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;min-width:42px;min-height:28px;padding:5px 8px;border-radius:9px;font-size:.64rem;font-weight:950}.mobile-record-badge.present{background:var(--green-bg);color:var(--green);border:1px solid #b7e8cb}.mobile-record-badge.status{background:var(--amber-bg);color:#865b00;border:1px solid #f2d28b}.mobile-record-badge.holiday{background:var(--sun);color:#a31935;border:1px solid #f3c4cd}.mobile-record-badge.empty{background:#f2f4f7;color:#98a2b3}
  .day-view{padding:10px}.day-grid{grid-template-columns:1fr;gap:8px}.person-card{grid-template-columns:auto minmax(0,1fr);padding:12px;border-radius:13px}.avatar{width:38px;height:38px;border-radius:10px}.person-card h3{font-size:.8rem}.person-card p{font-size:.65rem}.person-actions{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;width:100%;gap:6px}.person-actions .btn{width:100%;min-height:38px;font-size:.68rem}
  .holiday-panel{margin-top:7px;padding:12px;border-radius:14px}.holiday-copy h2{font-size:1rem}.holiday-copy p{font-size:.65rem}.holiday-list{gap:6px}.holiday-chip{padding:6px 8px;font-size:.62rem}
  .modal-card{width:calc(100% - 16px);max-height:calc(100vh - 16px);overflow:auto;padding:20px 15px;border-radius:18px}.modal-close{top:10px;right:10px}.status-grid{grid-template-columns:1fr}.record-option{padding:13px}.current-record{font-size:.75rem}.settings-heading-row{display:block}.settings-heading-row .btn{margin-top:10px;width:100%}.employee-admin-row{grid-template-columns:minmax(0,1fr) auto;gap:8px}.employee-admin-row .role-pill{grid-column:1}.employee-admin-row .edit-employee{grid-column:2;grid-row:1/3}
  .auth-screen{padding:8px}.auth-shell{max-width:100%;border-radius:20px}.auth-card{padding:22px 15px 18px;border-radius:20px}.auth-card-head h2{font-size:1.4rem}.auth-mobile-brand{margin-bottom:18px}.text-input{width:100%;min-height:48px;font-size:16px}.auth-submit{min-height:50px}
}
@media print{.mobile-period-list{display:none!important}.desktop-period-table,.month-sheet{display:block!important}}


/* v1.5.1 - dorada ispisne liste */
.month-paper-head{align-items:start}.month-paper-title{font-size:1.06rem;letter-spacing:.04em}.month-paper-org span{font-size:.73rem}.month-paper-org strong{font-size:.82rem}.month-paper-legend{background:#fbfcfd}.employee-head-sign{letter-spacing:.01em}.status-code.check{font-size:.92rem;font-weight:900}.month-data-table .date-col,.month-data-table .day-col{font-weight:800}

@page{size:A4 landscape;margin:7mm 6mm;}
@media print{
  body{background:#fff!important;}
  #wpadminbar,.app-header,.app-nav-panel,.stats-strip,.holiday-panel,.content-actions,.period-toolbar,.content-head>div:first-child{display:none!important;}
  .app-shell,.content-panel,.panel{width:100%!important;margin:0!important;padding:0!important;box-shadow:none!important;border:0!important;background:#fff!important;}
  #viewContent{margin:0!important;padding:0!important;}
  html[data-hler-view="month"] .month-sheet{display:block!important;width:100%!important;max-width:none!important;margin:0!important;padding:0!important;background:#fff!important;}
  html[data-hler-view="month"] .month-paper-head{grid-template-columns:minmax(0,1fr) auto!important;gap:5mm!important;padding:0 0 2.5mm!important;margin:0!important;border-bottom:0!important;align-items:start!important;}
  html[data-hler-view="month"] .month-paper-org{gap:1.1mm!important;font-size:7.2pt!important;}
  html[data-hler-view="month"] .month-paper-org>div{grid-template-columns:20mm 1fr!important;gap:2mm!important;align-items:end!important;}
  html[data-hler-view="month"] .month-paper-org span{font-size:6.4pt!important;color:#000!important;}
  html[data-hler-view="month"] .month-paper-org strong{min-height:4.5mm!important;padding:0 0 .7mm!important;border-bottom:.28mm solid #222!important;font-size:7.2pt!important;font-weight:700!important;color:#000!important;}
  html[data-hler-view="month"] .month-paper-title{font-size:11pt!important;font-weight:900!important;letter-spacing:.04em!important;white-space:nowrap!important;color:#000!important;padding-top:.2mm!important;}
  html[data-hler-view="month"] .month-table-scroll{overflow:visible!important;}
  html[data-hler-view="month"] .month-data-table{width:100%!important;min-width:0!important;table-layout:fixed!important;border-collapse:collapse!important;font-size:6.7pt!important;margin:0!important;}
  html[data-hler-view="month"] .month-data-table th, html[data-hler-view="month"] .month-data-table td{border:.25mm solid #222!important;color:#000!important;vertical-align:middle!important;}
  html[data-hler-view="month"] .month-data-table thead th{position:static!important;background:#f2f2f2!important;color:#000!important;}
  html[data-hler-view="month"] .month-data-table thead .month-name-row th{height:10.8mm!important;padding:.6mm .9mm!important;font-size:6pt!important;}
  html[data-hler-view="month"] .month-data-table thead .month-column-row th{height:5.1mm!important;background:#f7f7f7!important;color:#000!important;font-size:5.6pt!important;padding:.35mm .4mm!important;}
  html[data-hler-view="month"] .month-data-table .month-person-label{text-align:left!important;padding-left:1.1mm!important;}
  html[data-hler-view="month"] .employee-head-name{font-size:6.1pt!important;line-height:1.15!important;font-weight:800!important;color:#000!important;}
  html[data-hler-view="month"] .employee-head-sign{margin-top:.4mm!important;font-size:5.1pt!important;line-height:1.1!important;color:#444!important;font-weight:700!important;}
  html[data-hler-view="month"] .month-data-table .date-col{width:20.5mm!important;padding:.35mm .7mm!important;font-size:6pt!important;}
  html[data-hler-view="month"] .month-data-table .day-col{width:9.2mm!important;font-size:5.9pt!important;font-weight:800!important;}
  html[data-hler-view="month"] .month-data-table .employee-col{width:auto!important;padding:.2mm .45mm!important;font-size:6pt!important;}
  html[data-hler-view="month"] .month-data-table tbody tr{height:4.7mm!important;break-inside:avoid;page-break-inside:avoid!important;}
  html[data-hler-view="month"] .month-data-table tr.saturday td{background:#fff9d9!important;-webkit-print-color-adjust:exact;print-color-adjust:exact;}
  html[data-hler-view="month"] .month-data-table tr.sunday td, html[data-hler-view="month"] .month-data-table tr.holiday td{background:#fdecef!important;-webkit-print-color-adjust:exact;print-color-adjust:exact;}
  html[data-hler-view="month"] .month-data-table .holiday-label{font-size:4.5pt!important;line-height:1!important;margin-top:.2mm!important;}
  html[data-hler-view="month"] .status-code{min-width:6.8mm!important;min-height:4mm!important;padding:.2mm .6mm!important;border-radius:1.2mm!important;font-size:5.9pt!important;border:0!important;background:transparent!important;color:#000!important;font-weight:900!important;}
  html[data-hler-view="month"] .status-code.check{font-size:7.8pt!important;line-height:1!important;}
  html[data-hler-view="month"] .updated-dot,.record-cell.empty::after{display:none!important;}
  html[data-hler-view="month"] .month-paper-legend{padding:2mm 0 0!important;margin:0!important;border-top:0!important;font-size:5.8pt!important;line-height:1.35!important;color:#000!important;}
}


/* v1.5.2 - korekcija proporcija ispisne tablice */
@media print{
  html[data-hler-view="month"] .month-data-table{
    width:var(--print-table-width)!important;
    max-width:100%!important;
    margin:0!important;
    table-layout:fixed!important;
  }
  html[data-hler-view="month"] .month-data-table col.month-col-date{width:30mm!important;}
  html[data-hler-view="month"] .month-data-table col.month-col-day{width:14mm!important;}
  html[data-hler-view="month"] .month-data-table col.month-col-employee{width:68mm!important;}
  html[data-hler-view="month"] .month-data-table .date-col{width:30mm!important;min-width:30mm!important;max-width:30mm!important;padding:.35mm 1mm!important;font-size:6.5pt!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:clip!important;}
  html[data-hler-view="month"] .month-data-table .day-col{width:14mm!important;min-width:14mm!important;max-width:14mm!important;font-size:6.4pt!important;white-space:nowrap!important;}
  html[data-hler-view="month"] .month-data-table .employee-col{width:68mm!important;max-width:68mm!important;padding:.25mm .8mm!important;}
  html[data-hler-view="month"] .month-data-table .holiday-label{display:none!important;}
  html[data-hler-view="month"] .month-data-table thead .month-name-row th{height:9.5mm!important;}
  html[data-hler-view="month"] .month-data-table thead .month-column-row th{height:5.4mm!important;}
  html[data-hler-view="month"] .employee-head-name{font-size:6.4pt!important;white-space:normal!important;overflow-wrap:anywhere!important;}
  html[data-hler-view="month"] .employee-head-sign{font-size:4.8pt!important;}
  html[data-hler-view="month"] .month-paper-legend{width:var(--print-table-width)!important;max-width:100%!important;}
}


/* v1.5.3 - admin gumb vidljiv na mobitelu */
@media(max-width:640px){
  .header-actions .header-btn:not([hidden]){display:inline-flex!important;align-items:center;justify-content:center;min-height:36px;padding:7px 9px;font-size:.66rem;border-radius:10px;}
  #settingsBtn:not([hidden]){display:inline-flex!important;}
  #installBtn:not([hidden]){display:inline-flex!important;}
}
@media(max-width:420px){
  .app-header{grid-template-columns:minmax(0,1fr) auto;}
  .header-actions{flex-wrap:wrap;justify-content:flex-end;max-width:170px;}
  .header-actions .header-btn:not([hidden]){padding:6px 8px;font-size:.62rem;min-height:34px;}
  .user-chip{max-width:68px;}
}


/* v1.5.4 - jasan naziv službe i brendiranje aplikacije */
.auth-service-name{margin:8px 0 5px;padding:10px 12px;border-radius:12px;background:#fbf7eb;border:1px solid #eee0b7;color:#57451c;font-size:.82rem;font-weight:800;line-height:1.4}
.service-banner{margin-bottom:12px;padding:15px 18px;border:1px solid #e2e7ec;border-left:4px solid var(--gold);border-radius:16px;background:linear-gradient(100deg,#fff,#fbfcfd);box-shadow:0 7px 20px rgba(17,24,32,.04)}
.service-banner-kicker{display:block;margin-bottom:4px;color:#987525;font-size:.6rem;font-weight:950;letter-spacing:.13em}
.service-banner strong{display:block;color:#1b2732;font-size:.92rem;line-height:1.35;letter-spacing:-.01em}
@media(max-width:640px){.service-banner{padding:12px 13px;margin-bottom:8px;border-radius:13px}.service-banner strong{font-size:.78rem}.service-banner-kicker{font-size:.54rem}.auth-service-name{font-size:.75rem}}
@media print{.service-banner{display:none!important}}


/* v1.5.5 - dodatna mobilna responzivnost administratorskih postavki */
.service-name-input{resize:vertical;min-height:54px;line-height:1.35;overflow-wrap:anywhere;word-break:normal}

@media(max-width:760px){
  .modal{padding:0;align-items:stretch;place-items:stretch;background:rgba(10,16,22,.64)}
  .modal-backdrop{backdrop-filter:blur(3px)}
  .modal-card,
  .modal-card.settings-card,
  .modal-card.small-card{
    width:100%!important;
    max-width:none!important;
    height:auto;
    max-height:100dvh!important;
    min-height:0;
    margin:0;
    padding:18px 16px calc(22px + env(safe-area-inset-bottom));
    border-radius:0;
    border-top:4px solid var(--gold);
    overflow-x:hidden;
    overflow-y:auto;
    overscroll-behavior:contain;
  }
  .modal-card.settings-card{min-height:100dvh}
  .modal-card h2{
    margin:4px 52px 8px 0;
    font-size:clamp(1.45rem,7vw,1.9rem)!important;
    line-height:1.08!important;
    letter-spacing:-.035em;
    overflow-wrap:anywhere;
  }
  .modal-card .eyebrow{font-size:.62rem;letter-spacing:.12em}
  .modal-close{
    position:sticky;
    float:right;
    top:8px;
    right:0;
    z-index:3;
    width:38px;
    height:38px;
    margin:0 0 -38px 0;
    background:#fff;
    box-shadow:0 3px 12px rgba(17,24,32,.08);
  }
  .field-label{margin:14px 0 6px;font-size:.72rem}
  .text-input{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    min-height:46px;
    padding:10px 12px;
    border-radius:12px;
    font-size:16px!important;
    line-height:1.35;
  }
  textarea.text-input{min-height:78px;height:auto;white-space:normal;overflow-wrap:anywhere}
  #sectionInput{min-height:48px}
  #saveOrgBtn{min-height:48px;margin-top:10px;font-size:.86rem}
  .settings-heading-row{display:flex!important;flex-direction:column;align-items:stretch!important;gap:10px;margin-top:22px;padding-top:17px}
  .settings-heading-row>div{min-width:0}
  .settings-heading-row .field-label{margin:0 0 4px;font-size:.86rem}
  .settings-heading-row .muted{font-size:.72rem;line-height:1.45}
  .settings-heading-row .btn{width:100%;margin:0!important;min-height:44px;font-size:.78rem}
  .employees-list{gap:10px;margin-top:12px}
  .employee-admin-row{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    grid-template-areas:
      "person edit"
      "role edit";
    gap:8px 10px!important;
    align-items:center!important;
    padding:13px!important;
    border-radius:14px!important;
    overflow:hidden;
  }
  .employee-admin-row>div:first-child{grid-area:person;min-width:0}
  .employee-admin-row strong{
    display:block;
    max-width:100%;
    font-size:.88rem!important;
    line-height:1.22;
    white-space:normal;
    overflow-wrap:anywhere;
  }
  .employee-admin-row .pin-pill{
    grid-column:auto!important;
    margin-top:4px;
    font-size:.65rem!important;
    line-height:1.25;
  }
  .employee-admin-row .role-pill{
    grid-area:role!important;
    justify-self:start;
    max-width:100%;
    padding:5px 9px;
    font-size:.64rem;
    white-space:nowrap;
  }
  .employee-admin-row .edit-employee{
    grid-area:edit!important;
    align-self:center;
    min-width:82px;
    min-height:44px;
    padding:8px 12px!important;
    font-size:.78rem!important;
  }
}

@media(max-width:430px){
  .modal-card,
  .modal-card.settings-card,
  .modal-card.small-card{padding-left:13px;padding-right:13px}
  .modal-card h2{font-size:1.48rem!important;margin-right:46px}
  .employee-admin-row{grid-template-columns:minmax(0,1fr) 76px!important;padding:11px!important;gap:7px 8px!important}
  .employee-admin-row .edit-employee{min-width:76px;min-height:42px;padding:7px 8px!important;font-size:.72rem!important}
  .employee-admin-row strong{font-size:.82rem!important}
  .employee-admin-row .pin-pill{font-size:.61rem!important}
  .employee-admin-row .role-pill{font-size:.6rem;padding:4px 7px}
  #saveOrgBtn{font-size:.82rem}
}


/* v1.5.8 - samostalno postavljanje PIN-a pri prvom pristupu */
#loginPinConfirmWrap{display:grid;gap:0}#loginPinConfirmWrap[hidden]{display:none!important}#selfPinHint{margin:14px 0 2px}.auth-card #loginForm .notice.info{font-size:.76rem}.auth-card #loginForm .field-label{margin-top:12px}
@media(max-width:640px){#selfPinHint{padding:10px 11px;font-size:.72rem}.auth-card #loginForm .text-input{font-size:16px}}


/* v1.5.9 - elegantniji, manje boldan UI */
:root{--shadow:0 14px 40px rgba(16,24,40,.05);}
body{color:#1f2937;background:radial-gradient(circle at top left,#f8fafc 0,#f5f7fa 35%,#eef2f6 100%)}
.app-header{border-bottom:1px solid rgba(212,180,94,.55);box-shadow:0 8px 24px rgba(15,23,42,.10)}
.panel{border-radius:20px;border-color:#e6eaef;box-shadow:0 10px 30px rgba(16,24,40,.05)}
.eyebrow,.auth-kicker,.brand-overline,.nav-label,.field-label,.stat-label,.period-kicker,.service-banner-kicker,.record-section-label{font-weight:700!important;letter-spacing:.10em!important}
.brand-mark,.feature-icon,.avatar,.mobile-person-main>i{font-weight:700!important}
.brand h1,.modal-card h2,.content-head h2,.holiday-panel h2,.auth-card-head h2,.person-card h3,.month-card h3,.day-banner h3{font-weight:600!important;letter-spacing:-.015em}
.brand p,.person-card p,.holiday-list,.last-refresh,.auth-card-footer,.mobile-person-main small{font-weight:400}
.btn,.view-tab,.user-chip,.sync-badge,.holiday-badge,.mobile-record-badge,.status-code,.status-btn b,.record-option b{font-weight:700!important}
.btn{border-radius:13px;letter-spacing:.01em;box-shadow:none}.btn.primary{background:linear-gradient(180deg,#e0bb63,#cda142);box-shadow:0 8px 18px rgba(166,124,33,.12)}
.icon-btn,.header-btn,.user-chip{border-radius:13px}.header-btn{border-color:#4e5d6a}.user-chip{font-weight:700!important}
.view-tab{font-weight:700!important;color:#5b6673}.view-tab span{font-weight:700!important}.view-tab.active{box-shadow:inset 0 -2px 0 var(--gold)}
.stat-card{border-radius:18px;box-shadow:0 8px 24px rgba(17,24,32,.035)}.stat-card strong{font-weight:600}.stats-strip{gap:10px}
.content-head{padding:20px 22px 16px}.period-toolbar{padding:16px 18px}.period-title-wrap h2{font-weight:600!important}
.text-input{background:#fcfdff;border-color:#d8dee6;border-radius:14px}.text-input::placeholder{color:#98a2ad}.text-input:focus{box-shadow:0 0 0 3px rgba(209,166,64,.10)}
.data-table thead th{font-weight:700!important}.data-table .date-col,.data-table .day-col,.year-employee-table th:first-child,.year-employee-table td:first-child{font-weight:700!important}
.record-cell.empty::after{border-radius:999px;background:#f3f5f7;color:#8b95a1;font-weight:700!important}.status-code{border-radius:999px;font-weight:700!important;min-height:28px}.holiday-label{font-weight:700!important}
.day-banner,.month-card,.mobile-day-card,.person-card,.stat-card,.year-employee-table,.record-option,.status-btn,.employee-row{border-radius:18px}.person-card,.month-card,.mobile-day-card{box-shadow:0 6px 18px rgba(17,24,32,.03)}
.person-card{padding:16px}.person-actions .btn,.person-card .btn{font-size:.73rem}.person-card.done{background:linear-gradient(180deg,#f8fdf9,#f2fbf5)}.person-card.absent{background:linear-gradient(180deg,#fffaf2,#fff7ea)}
.holiday-chip{font-weight:600!important;border-radius:999px}.month-metrics b{font-weight:600!important}.month-metrics span{font-weight:400}
.modal-card{border-top:3px solid var(--gold);padding:24px 24px 22px;border-radius:24px}.modal-close{background:#fbfcfd}.record-option{background:#fbfcfe;border-color:#e3e8ee}.record-option small,.status-btn small{font-weight:400;color:#667085}
.option-icon{border-radius:12px;font-weight:700!important}.status-grid{gap:10px}.status-btn{background:#fff;border-color:#e4e9ef}.status-btn small{line-height:1.4}.status-btn{font-weight:600}
.auth-card{padding:52px 48px 40px}.auth-card-head h2{font-size:1.9rem}.auth-service-name{font-weight:600!important;border-radius:14px;background:#fcf8ee}.auth-card .notice.info{border-radius:14px}
.service-banner{border-radius:16px;background:linear-gradient(180deg,#fdfcf8,#fbfaf5);border:1px solid #ece4cf}.service-banner strong{font-weight:600!important}
.mobile-day-card>header b,.mobile-person-main b{font-weight:600!important}.mobile-day-card>header{padding:12px 13px}.mobile-person-row{padding:11px 13px}.mobile-record-badge{font-weight:700!important;border-radius:999px}
.employee-row{padding:15px 16px;border-color:#e7ebf0}.employee-name{font-weight:600!important}.employee-meta,.employee-row small{font-weight:400!important}.role-pill{font-weight:700!important;border-radius:999px}
@media (max-width:760px){
  .app-shell{width:min(100%,calc(100% - 18px));margin:12px auto 28px}
  .panel{border-radius:18px}
  .content-head{padding:16px 16px 14px}
  .content-head h2{font-size:1.06rem}
  .auth-card{padding:28px 20px 24px;border-radius:22px}
  .auth-card-head h2{font-size:1.58rem}
  .auth-service-name{font-size:.77rem;padding:9px 10px}
  .modal-card{padding:18px 16px 16px;border-radius:20px}
  .modal-card h2{font-size:1.7rem;line-height:1.06}
  .btn{min-height:44px}
  .text-input{min-height:45px}
}


/* v1.6.0 - korporativna varijanta sučelja */
@media screen {
  :root{
    --bg:#f3f5f7;
    --surface:#ffffff;
    --surface2:#f7f8fa;
    --ink:#1f2933;
    --muted:#6b7580;
    --navy:#18232d;
    --navy2:#24313d;
    --gold:#b8923b;
    --gold-dark:#8a6b26;
    --gold-soft:#f7f2e6;
    --line:#dfe4e8;
    --green:#287454;
    --green-bg:#f2f8f5;
    --red:#a33b32;
    --red-bg:#fbf3f2;
    --amber:#8a6a2d;
    --amber-bg:#faf7ef;
    --sat:#fbf9f1;
    --sun:#faf4f5;
    --shadow:0 6px 20px rgba(25,35,45,.045);
    --r:14px;
  }

  body{
    color:var(--ink);
    background:#f3f5f7;
  }

  .app-header{
    min-height:76px;
    background:#18232d;
    border-bottom:1px solid #b8923b;
    box-shadow:0 4px 14px rgba(12,20,28,.13);
  }
  .brand-mark{
    background:#24313d!important;
    color:#e8d29a!important;
    border:1px solid rgba(184,146,59,.75);
    box-shadow:none!important;
    font-weight:600!important;
  }
  .brand-overline{color:#c5a760!important;font-weight:600!important;letter-spacing:.14em!important}
  .brand h1{font-weight:500!important;font-size:1.04rem!important}
  .brand p{color:#aeb8c1!important}
  .header-btn{background:transparent!important;border-color:#46535f!important;color:#edf1f4!important}
  .header-btn:hover{background:#24313d!important}
  .user-chip{background:#eef1f3!important;color:#26323d!important;border:0!important;font-weight:600!important}
  .sync-badge.online{background:#223b31!important;color:#b8ddc8!important;border-color:#38584a!important}
  .sync-badge.offline{background:#4a2d2b!important;color:#efc2be!important;border-color:#65403d!important}

  .app-shell{width:min(1480px,calc(100% - 34px));margin-top:18px}
  .panel,.stat-card,.month-card,.person-card,.mobile-day-card,.year-employee-table{
    border-color:#e1e5e9!important;
    box-shadow:var(--shadow)!important;
  }
  .panel{border-radius:14px!important}

  .app-nav-panel{background:#fff!important;padding:7px 9px 7px 16px!important}
  .nav-label{font-weight:600!important;color:#808a94!important}
  .view-tab{font-weight:500!important;color:#53606b!important;border-radius:10px!important}
  .view-tab span{background:#eef1f3!important;color:#69737d!important;font-weight:600!important}
  .view-tab.active{background:#24313d!important;color:#fff!important;box-shadow:none!important}
  .view-tab.active span{background:#b8923b!important;color:#fff!important}

  .period-toolbar{border-left:3px solid #b8923b!important}
  .period-toolbar:before{display:none!important}
  .period-kicker,.eyebrow,.service-banner-kicker{color:#8a6b26!important;font-weight:600!important;letter-spacing:.1em!important}
  .period-title-wrap h2{font-weight:500!important;color:#24313d!important}
  .period-title-wrap p{color:#77818b!important}
  .icon-btn{background:#fff!important;border-color:#dfe4e8!important;color:#44515c!important;box-shadow:none!important}
  .today-btn{background:#f7f8fa!important}

  .stats-strip{gap:10px!important}
  .stat-card{
    border-radius:12px!important;
    padding:16px 17px!important;
    background:#fff!important;
  }
  .stat-card:before{width:3px!important;background:#aeb6bd!important}
  .stat-card.success:before{background:#6f9b85!important}
  .stat-card.warning:before{background:#b39a66!important}
  .stat-label{font-weight:600!important;color:#7a858f!important;letter-spacing:.07em!important}
  .stat-card strong{font-size:1.55rem!important;font-weight:500!important;color:#26323d!important}
  .stat-card small{color:#9099a2!important}

  .content-panel{background:#fff!important}
  .content-head{border-bottom-color:#e7eaed!important}
  .content-head h2,.holiday-panel h2,.day-banner h3,.person-card h3,.month-card h3{font-weight:500!important;color:#25313c!important}
  .content-actions .btn{background:#fff!important;border-color:#dfe4e8!important;color:#4b5965!important}

  .day-banner{
    background:#f7f8fa!important;
    border-color:#e2e6ea!important;
    border-radius:12px!important;
  }
  .day-banner.holiday{background:#faf5f5!important;border-color:#ead7da!important}
  .person-card{
    border-radius:12px!important;
    background:#fff!important;
  }
  .person-card.done{background:#f5f9f7!important;border-color:#d5e5dc!important}
  .person-card.absent{background:#faf8f3!important;border-color:#e7dfce!important}
  .avatar{background:#34424e!important;font-weight:600!important;border-radius:10px!important}
  .person-card.done .avatar{background:#527c68!important}
  .person-card.absent .avatar{background:#8d7446!important}
  .person-card p{color:#78828c!important}

  .btn{font-weight:600!important;border-radius:10px!important}
  .btn.primary{
    background:#24313d!important;
    color:#fff!important;
    border:1px solid #24313d!important;
    box-shadow:none!important;
  }
  .btn.primary:hover{background:#18232d!important;filter:none!important}
  .btn.ghost,.btn.secondary{background:#fff!important;color:#47545f!important;border:1px solid #dce2e7!important}
  .btn.danger{background:#fbf4f3!important;color:#9b4038!important;border-color:#ead2cf!important}

  .text-input{
    background:#fff!important;
    border-color:#d7dde3!important;
    border-radius:10px!important;
    box-shadow:none!important;
  }
  .text-input:focus{
    border-color:#a98a48!important;
    box-shadow:0 0 0 2px rgba(184,146,59,.10)!important;
  }
  .field-label{font-weight:600!important;color:#46525d!important}

  .modal-backdrop{background:rgba(20,29,37,.58)!important;backdrop-filter:blur(3px)!important}
  .modal-card{
    border-radius:16px!important;
    border-top:3px solid #b8923b!important;
    box-shadow:0 24px 70px rgba(13,22,30,.22)!important;
  }
  .modal-card h2{font-weight:500!important;color:#25313c!important}
  .modal-close{border-color:#dfe4e8!important;background:#fff!important}
  .record-option,.status-btn{
    background:#fff!important;
    border-color:#e0e5e9!important;
    border-radius:11px!important;
  }
  .record-option:hover,.status-btn:hover{border-color:#c9b37e!important;background:#fbfaf7!important}
  .record-option b,.status-btn b{font-weight:600!important}
  .option-icon{background:#f1f3f5!important;color:#4f5d68!important}
  .primary-check-option{background:#f5f8f6!important;border-color:#d6e2db!important}
  .primary-check-option .option-icon{background:#527c68!important;color:#fff!important}

  .status-code{font-weight:600!important;background:#eef1f3!important;color:#48555f!important}
  .status-code.check{background:#527c68!important;color:#fff!important}
  .holiday-chip{background:#faf5f5!important;border-color:#ead9dc!important;color:#87535c!important;font-weight:500!important}

  .month-card{border-radius:12px!important;background:#fff!important}
  .month-card.current{box-shadow:inset 0 0 0 1px #b8923b!important}
  .month-metrics span{background:#f6f7f8!important;border-radius:8px!important}
  .month-metrics b{font-weight:500!important;color:#26323d!important}

  .data-table thead th{background:#24313d!important;border-color:#46535f!important;font-weight:600!important}
  .data-table thead .month-column-row th{background:#34424e!important}
  .data-table .sticky-col{background:#fafbfc!important}
  .record-cell.empty::after{background:#f1f3f5!important;color:#8b949d!important;font-weight:500!important}

  .holiday-panel{background:#fff!important}
  .holiday-copy p{color:#7a858f!important}

  .auth-screen{
    background:linear-gradient(145deg,#1c2731 0%,#111920 100%)!important;
  }
  .auth-shell{border-radius:22px!important;border:1px solid rgba(255,255,255,.07)!important;box-shadow:0 30px 90px rgba(0,0,0,.36)!important}
  .auth-intro{background:#18232d!important}
  .auth-intro:after{opacity:.5}
  .auth-intro-copy h1{font-weight:500!important;letter-spacing:-.035em!important}
  .auth-intro-copy p{color:#b8c1c9!important}
  .auth-features>div{background:rgba(255,255,255,.025)!important;border-color:rgba(255,255,255,.08)!important}
  .feature-icon{background:#b8923b!important;color:#fff!important;font-weight:600!important}
  .auth-card{background:#fff!important}
  .auth-card-head h2{font-weight:500!important;color:#24313d!important}
  .auth-kicker{color:#8a6b26!important;font-weight:600!important}
  .auth-service-name{background:#faf8f2!important;border-color:#e8dfca!important;color:#554b38!important;font-weight:500!important}
  .auth-submit{background:#24313d!important;color:#fff!important}
  .auth-submit:hover{background:#18232d!important}

  .service-banner{background:#faf9f5!important;border-color:#e7e2d7!important}
  .service-banner strong{font-weight:500!important;color:#3e4750!important}

  .mobile-day-card>header{background:#f7f8fa!important}
  .mobile-day-card.weekend>header{background:#faf8f2!important}
  .mobile-day-card.holiday>header{background:#faf4f5!important}
  .mobile-person-main>i{background:#34424e!important;font-weight:600!important}
  .mobile-record-badge{font-weight:600!important}
  .mobile-record-badge.present{background:#f0f6f3!important;color:#527c68!important;border-color:#d5e5dc!important}
  .mobile-record-badge.status{background:#faf7ef!important;color:#806b43!important;border-color:#e8dfca!important}
  .mobile-record-badge.holiday{background:#faf4f5!important;color:#8b5860!important;border-color:#ead9dc!important}

  @media(max-width:760px){
    .app-shell{width:calc(100% - 16px)!important;margin:10px auto 28px!important}
    .app-header{padding:9px 10px!important}
    .brand h1{font-size:.88rem!important}
    .brand p{font-size:.61rem!important}
    .stat-card{padding:13px 12px!important}
    .modal-card{border-radius:14px!important}
    .auth-card{border-radius:18px!important}
  }
}

/* v1.7.0 - desktop podsjetnik za dnevnu evidenciju */
@media screen {
  .desktop-reminder-setup{
    margin-top:18px;
    padding:13px 14px;
    border:1px solid #e2e6ea;
    border-radius:12px;
    background:#f7f8fa;
    display:flex;
    gap:12px;
    align-items:center;
    justify-content:space-between;
  }
  .desktop-reminder-setup-copy{display:flex;gap:10px;align-items:flex-start;min-width:0}
  .desktop-reminder-setup-copy>div{display:grid;gap:3px}
  .desktop-reminder-setup-copy b{font-size:.8rem;font-weight:600;color:#26323d}
  .desktop-reminder-setup-copy small{font-size:.7rem;line-height:1.42;color:#78828c}
  .desktop-reminder-icon{
    width:30px;height:30px;display:grid;place-items:center;flex:0 0 30px;
    border-radius:8px;background:#24313d;color:#e8d29a;font-size:.8rem;
  }
  .desktop-reminder-setup .btn{flex:0 0 auto;min-height:36px;padding:7px 10px;font-size:.7rem}

  .attendance-reminder{
    margin:0 0 14px;
    padding:14px 16px;
    display:grid;
    grid-template-columns:auto 1fr auto;
    gap:14px;
    align-items:center;
    border:1px solid #dfd5bd;
    border-left:4px solid #b8923b;
    border-radius:13px;
    background:#fbfaf6;
    box-shadow:0 4px 16px rgba(25,35,45,.04);
  }
  .attendance-reminder-mark{
    width:40px;height:40px;display:grid;place-items:center;border-radius:10px;
    background:#24313d;color:#fff;font-size:1.15rem;font-weight:600;
  }
  .attendance-reminder-copy{min-width:0}
  .attendance-reminder-kicker{display:block;margin-bottom:3px;color:#8a6b26;font-size:.65rem;font-weight:600;letter-spacing:.1em}
  .attendance-reminder-copy strong{display:block;color:#26323d;font-size:.95rem;font-weight:600}
  .attendance-reminder-copy p{margin:3px 0 0;color:#6f7a84;font-size:.78rem;line-height:1.4}
  .attendance-reminder-actions{display:flex;gap:8px;align-items:center;justify-content:flex-end}
  .attendance-reminder-actions .btn{min-height:38px;padding:8px 11px;font-size:.72rem;white-space:nowrap}

  .reminder-modal-card{max-width:620px}
  .reminder-steps{display:grid;gap:9px;margin:18px 0}
  .reminder-steps>div{display:grid;grid-template-columns:28px 1fr;gap:10px;align-items:start;padding:10px 11px;border:1px solid #e2e6ea;border-radius:10px;background:#f8f9fa}
  .reminder-steps b{width:26px;height:26px;border-radius:8px;display:grid;place-items:center;background:#24313d;color:#fff;font-size:.72rem;font-weight:600}
  .reminder-steps span{color:#56636e;font-size:.8rem;line-height:1.45}
  #reminderPermissionState{margin:0 0 12px}

  @media(max-width:899px){
    .desktop-reminder-setup,.desktop-only,.attendance-reminder{display:none!important}
  }
  @media(min-width:900px) and (max-width:1180px){
    .attendance-reminder{grid-template-columns:auto 1fr}
    .attendance-reminder-actions{grid-column:1 / -1;justify-content:flex-start;padding-left:54px}
  }
}


/* v1.7.2 - responsive desktop/laptop prijava */
@media screen and (min-width:901px){
  .auth-screen{
    overflow:auto;
    padding:clamp(10px,2vh,24px)!important;
  }
  .auth-shell{
    width:min(1120px,calc(100vw - 28px))!important;
    max-width:1120px!important;
    max-height:calc(100dvh - 20px);
    min-height:0;
    align-self:center;
  }
  .auth-intro{
    min-height:0!important;
  }
  .auth-card{
    min-height:0;
    max-height:calc(100dvh - 20px);
    overflow-y:auto;
    overscroll-behavior:contain;
    scrollbar-gutter:stable;
  }
}

/* Standardni laptopi i uži desktop prozori */
@media screen and (min-width:901px) and (max-width:1240px){
  .auth-shell{
    grid-template-columns:minmax(0,1.05fr) minmax(365px,.95fr)!important;
    width:min(1000px,calc(100vw - 24px))!important;
  }
  .auth-intro{padding:34px 34px 28px!important}
  .auth-intro-copy h1{font-size:clamp(2.2rem,4vw,3.25rem)!important}
  .auth-card{padding:34px 32px 28px!important}
  .auth-features{gap:8px!important}
  .auth-features>div{padding:11px 10px!important}
}

/* Niska visina preglednika - tipični službeni laptopi 1366x768 */
@media screen and (min-width:901px) and (max-height:820px){
  .auth-screen{padding:8px!important;place-items:center!important}
  .auth-shell{
    width:min(1080px,calc(100vw - 18px))!important;
    height:calc(100dvh - 16px);
    max-height:none!important;
    border-radius:20px!important;
  }
  .auth-intro{
    padding:24px 30px 20px!important;
    min-height:0!important;
  }
  .auth-brand-row .brand-mark.big{width:48px!important;height:48px!important;border-radius:14px!important}
  .auth-brand-name{font-size:.82rem!important}
  .auth-brand-sub{font-size:.62rem!important}
  .auth-intro-copy{margin:auto 0 16px!important}
  .auth-intro-copy h1{
    margin:9px 0 10px!important;
    font-size:clamp(2.15rem,3.7vw,3rem)!important;
    line-height:.98!important;
  }
  .auth-intro-copy p{font-size:.86rem!important;line-height:1.45!important}
  .auth-features{gap:7px!important}
  .auth-features>div{padding:9px 9px!important;border-radius:12px!important}
  .feature-icon{width:24px!important;height:24px!important}
  .auth-features b{margin-top:6px!important;font-size:.71rem!important}
  .auth-features small{font-size:.56rem!important;line-height:1.28!important}
  .auth-security-note{margin-top:10px!important;font-size:.58rem!important}

  .auth-card{
    justify-content:flex-start!important;
    padding:20px 28px 16px!important;
    max-height:calc(100dvh - 16px)!important;
  }
  .auth-card-head{margin-bottom:12px!important}
  .auth-card-head h2{margin:4px 0 5px!important;font-size:1.55rem!important;line-height:1.03!important}
  .auth-kicker{font-size:.58rem!important}
  .auth-service-name{margin:6px 0 4px!important;padding:7px 9px!important;font-size:.7rem!important;line-height:1.3!important}
  #authLead{margin:8px 0 0!important;font-size:.85rem!important}
  .auth-card .field-label{margin-top:8px!important;margin-bottom:5px!important;font-size:.66rem!important}
  .auth-card .text-input{min-height:40px!important;padding:7px 9px!important;font-size:.9rem!important}
  .auth-card .notice.info{margin:8px 0 1px!important;padding:8px 10px!important;font-size:.67rem!important;line-height:1.32!important}
  .auth-submit{margin-top:12px!important;min-height:42px!important;font-size:.78rem!important}
  .form-message{min-height:14px!important;margin:7px 0 0!important;font-size:.7rem!important}
  .desktop-reminder-setup{
    margin-top:9px!important;
    padding:9px 10px!important;
    gap:8px!important;
    border-radius:10px!important;
  }
  .desktop-reminder-icon{width:27px!important;height:27px!important;flex-basis:27px!important}
  .desktop-reminder-setup-copy{gap:8px!important}
  .desktop-reminder-setup-copy b{font-size:.7rem!important}
  .desktop-reminder-setup-copy small{font-size:.61rem!important;line-height:1.32!important}
  .desktop-reminder-setup .btn{min-height:32px!important;padding:6px 8px!important;font-size:.62rem!important}
  .auth-card-footer{margin-top:10px!important;padding-top:9px!important;font-size:.58rem!important}
}

/* Vrlo niski prozori: zadržava funkcionalnost bez rezanja forme */
@media screen and (min-width:901px) and (max-height:680px){
  .auth-intro-copy h1{font-size:2.15rem!important}
  .auth-features small{display:none!important}
  .auth-features>div{padding:8px!important}
  .auth-security-note{display:none!important}
  .desktop-reminder-setup-copy small{
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden;
  }
}

/* Tablet / mali laptop: prelazak na jednu kolonu prije nego se paneli stisnu */
@media screen and (min-width:761px) and (max-width:900px){
  .auth-screen{overflow:auto!important;align-items:start!important;padding:14px!important}
  .auth-shell{width:min(620px,100%)!important;max-height:none!important}
  .auth-card{max-height:none!important;overflow:visible!important}
}


/* v1.8.1 - jednostavan mjesečni zbroj sati prisutnosti */
.month-data-table tfoot .month-hours-row th{
  background:#f6f7f8;
  color:#26323d;
  border-top:2px solid #b8923b;
  padding:8px 7px;
  font-size:.68rem;
  font-weight:600;
}
.month-data-table tfoot .month-hours-row th:first-child{text-align:left;padding-left:10px}
.month-data-table tfoot .month-hours-row strong{display:block;font-size:.82rem;font-weight:700}
.month-data-table tfoot .month-hours-row small{display:block;margin-top:2px;font-size:.56rem;font-weight:500;color:#7a858f}
.hours-note{white-space:nowrap}
.mobile-month-hours{display:none}
@media(max-width:760px){
  .mobile-month-hours{display:block;margin:0 10px 10px;border:1px solid #e0e6ec;border-radius:14px;background:#fff;overflow:hidden}
  .mobile-month-hours>header{padding:11px 12px;background:#f8fafc;border-bottom:1px solid #e7ebef}
  .mobile-month-hours>header b,.mobile-month-hours>header small{display:block}
  .mobile-month-hours>header b{font-size:.82rem;font-weight:600;color:#26323d}
  .mobile-month-hours>header small{margin-top:2px;font-size:.62rem;color:#78828c}
  .mobile-month-hours-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border-bottom:1px solid #edf0f3}
  .mobile-month-hours-row:last-child{border-bottom:0}
  .mobile-month-hours-row span{min-width:0;font-size:.73rem;font-weight:600;color:#34404a}
  .mobile-month-hours-row span small{display:block;margin-top:2px;font-size:.58rem;font-weight:400;color:#7a858f}
  .mobile-month-hours-row strong{font-size:.85rem;color:#26323d;white-space:nowrap}
}
@media print{
  .mobile-month-hours{display:none!important}
  html[data-hler-view="month"] .month-data-table tfoot .month-hours-row th{background:#f3f3f3!important;color:#000!important;border:.25mm solid #222!important;border-top:.45mm solid #222!important;padding:.7mm .8mm!important;font-size:6.2pt!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}
  html[data-hler-view="month"] .month-data-table tfoot .month-hours-row strong{font-size:6.6pt!important}
  html[data-hler-view="month"] .month-data-table tfoot .month-hours-row small{font-size:4.8pt!important;color:#333!important}
  html[data-hler-view="month"] .hours-note{white-space:normal}
}

/* v2.0.0 - centralna evidencija Organizacija prema organizacijskoj strukturi */
.scope-panel{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:15px 18px}
.scope-copy{display:grid;gap:3px;min-width:0}.scope-copy strong{font-size:.98rem;font-weight:650;color:var(--ink)}.scope-copy small{font-size:.72rem;color:var(--muted)}
.scope-controls{display:flex;align-items:center;gap:10px;min-width:min(560px,55%)}.scope-select{min-width:320px;max-width:520px;margin:0!important}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.person-meta{display:block;margin-top:4px;color:#85909a;font-size:.64rem;line-height:1.3}.person-actions{flex-wrap:wrap}

.dashboard-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:14px}
.dashboard-summary article{padding:14px;border:1px solid #e4e9ed;border-radius:13px;background:#fafbfc;display:grid;gap:3px}
.dashboard-summary article span{font-size:.68rem;color:#7a858f}.dashboard-summary article strong{font-size:1.55rem;font-weight:650;color:#25313b}.dashboard-summary article small{font-size:.62rem;color:#8a949d}
.dashboard-summary article.success{border-left:3px solid #4b8e65}.dashboard-summary article.warning{border-left:3px solid #b8923b}.dashboard-summary article.danger{border-left:3px solid #a8453e}
.dashboard-units{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin:0 0 16px}.dashboard-unit-card{appearance:none;text-align:left;border:1px solid #e1e6eb;background:#fff;border-radius:12px;padding:12px;cursor:pointer;color:inherit}.dashboard-unit-card:hover{border-color:#b8923b;background:#fffdf7}.dashboard-unit-card span,.dashboard-unit-card b,.dashboard-unit-card small{display:block}.dashboard-unit-card span{font-size:.73rem;color:#65717b}.dashboard-unit-card b{margin-top:4px;font-size:.82rem;font-weight:650}.dashboard-unit-card small{margin-top:4px;font-size:.62rem;color:#8a949d}
.dashboard-table-wrap{overflow:auto;border:1px solid #e4e8ec;border-radius:13px}.dashboard-table{width:100%;border-collapse:collapse;min-width:850px}.dashboard-table th,.dashboard-table td{padding:10px 11px;border-bottom:1px solid #edf0f2;text-align:left;font-size:.72rem;vertical-align:middle}.dashboard-table th{background:#f7f9fa;color:#69747e;font-size:.63rem;text-transform:uppercase;letter-spacing:.05em}.dashboard-table td b{font-weight:650}.dashboard-table tr.present td:first-child{box-shadow:inset 3px 0 #4b8e65}.dashboard-table tr.absent td:first-child{box-shadow:inset 3px 0 #b8923b}.dashboard-table tr.missing td:first-child{box-shadow:inset 3px 0 #a8453e}.dashboard-actions{display:flex;justify-content:flex-end;gap:6px;white-space:nowrap}.dashboard-status{font-weight:600;color:#44515c}
.absence-overview{margin-top:18px;padding-top:16px;border-top:1px solid #e7ebee}.absence-overview-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.absence-overview-head h3{margin:3px 0 0;font-size:1rem;font-weight:650}.absence-list{display:grid;gap:8px}.absence-list article{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 12px;border:1px solid #e4e8ec;border-radius:11px;background:#fafbfc}.absence-list article>div{min-width:0}.absence-list b{font-size:.77rem}.absence-list small{display:block;margin-top:3px;color:#78838d;font-size:.64rem}.absence-list p{margin:5px 0 0;font-size:.66rem;color:#596670}.absence-code{display:inline-block;margin-left:8px;padding:2px 6px;border-radius:999px;background:#f3ead5;color:#7d6020;font-size:.6rem;font-weight:700}

.employee-admin-row small{display:block;margin-top:3px;color:#7c8791;font-size:.62rem}.employee-admin-row.inactive{opacity:.65;background:#f5f6f7}.active-pill{display:inline-flex;padding:4px 8px;border-radius:999px;background:#edf7f0;color:#397451;font-size:.6rem;font-weight:650}.active-pill.off{background:#f0f1f2;color:#77818a}.settings-footer-actions{display:flex;justify-content:flex-end;margin-top:14px;padding-top:13px;border-top:1px solid #e8ebee}.systematization-note{margin-bottom:16px!important}
.form-grid.two{display:grid;grid-template-columns:1fr 1fr;gap:10px}.check-row{display:flex;align-items:flex-start;gap:8px;margin:12px 0;color:#52606a;font-size:.72rem;line-height:1.4}.check-row input{margin-top:2px}.absence-card{max-width:600px}.audit-list{display:grid;gap:8px;max-height:62vh;overflow:auto}.audit-list article{padding:10px 12px;border:1px solid #e5e9ec;border-radius:10px;background:#fafbfc}.audit-list article>div{display:flex;justify-content:space-between;gap:12px}.audit-list b{font-size:.74rem;font-weight:650}.audit-list span{font-size:.68rem;color:#64717b}.audit-list small{display:block;margin-top:4px;font-size:.62rem;color:#8a949d}
.auto-absence{background:#fff9ec!important}.auto-absence .updated-dot{background:#b8923b!important}
.year-employee-table td small{display:block;margin-top:2px;color:#87919a;font-size:.58rem}.employee-name-col small{display:block;margin-top:3px;font-size:.56rem;font-weight:400;color:#8a949d}
.month-sheet+.month-sheet{margin-top:18px;page-break-before:always}

@media(max-width:1100px){.dashboard-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-units{grid-template-columns:repeat(2,minmax(0,1fr))}.scope-controls{min-width:0;flex:1}.scope-select{min-width:220px;max-width:none;width:100%}}
@media(max-width:760px){
 .scope-panel{align-items:stretch;flex-direction:column;padding:12px}.scope-controls{display:grid;grid-template-columns:1fr}.scope-select{min-width:0;width:100%}.dashboard-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.dashboard-summary article{padding:10px}.dashboard-summary article strong{font-size:1.25rem}.dashboard-units{grid-template-columns:1fr}.dashboard-table-wrap{border:0;overflow:visible}.dashboard-table{min-width:0;display:block}.dashboard-table thead{display:none}.dashboard-table tbody{display:grid;gap:8px}.dashboard-table tr{display:grid;grid-template-columns:1fr auto;border:1px solid #e3e8ec;border-radius:12px;padding:10px;background:#fff}.dashboard-table td{display:block;border:0;padding:2px 0;font-size:.7rem}.dashboard-table td:nth-child(2),.dashboard-table td:nth-child(3){grid-column:1/2;color:#7b8791;font-size:.62rem}.dashboard-table td:nth-child(4){grid-column:2/3;grid-row:1/3;text-align:right}.dashboard-table .dashboard-actions{grid-column:1/3;justify-content:flex-start;margin-top:5px}.absence-overview-head{align-items:flex-start}.absence-list article{align-items:flex-start}.form-grid.two{grid-template-columns:1fr}
}
@media print{
 .scope-panel,.absence-overview,.dashboard-summary,.dashboard-units,.dashboard-table-wrap{display:none!important}
 html[data-hler-view="month"] .month-sheet{break-inside:avoid;page-break-inside:avoid}
 html[data-hler-view="month"] .month-sheet+.month-sheet{page-break-before:always!important}
}


/* v2.0.0 - raspored navigacije i administracije po ovlastima */
.hler-elevated .view-tabs{grid-template-columns:repeat(5,minmax(0,1fr))}
.employee-admin-row{grid-template-columns:minmax(0,1fr) auto auto auto}
@media(max-width:760px){
  .hler-elevated .view-tabs{grid-template-columns:repeat(5,minmax(0,1fr))}
  .employee-admin-row{grid-template-columns:minmax(0,1fr) auto auto}
  .employee-admin-row>div:first-child{grid-column:1/-1}
  .employee-admin-row .edit-employee{grid-column:auto;grid-row:auto}
}
@media(max-width:480px){
  .hler-elevated .view-tabs{grid-template-columns:repeat(5,minmax(0,1fr))}
  .hler-elevated .view-tab{font-size:.62rem;padding-inline:2px}
}


/* v2.0.1 - UI polish za raspored i dropdown elemente */
.scope-panel{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
  padding:16px 18px;
  border-radius:18px;
  background:linear-gradient(180deg,#ffffff 0%,#fbfcfd 100%);
  border:1px solid #e4e8ed;
  box-shadow:0 10px 28px rgba(17,24,32,.04);
}
.scope-copy{
  max-width:420px;
}
.scope-copy strong{
  font-size:1.08rem;
  font-weight:650;
  line-height:1.25;
}
.scope-copy small{
  margin-top:2px;
  line-height:1.45;
}
.scope-controls{
  flex:1;
  min-width:0;
  display:grid;
  grid-template-columns:minmax(280px,1fr) auto;
  gap:12px;
  align-items:center;
}
.scope-select,
select.text-input{
  -webkit-appearance:none;
  -moz-appearance:none;
  appearance:none;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 20 20' fill='none'%3E%3Cpath d='M5 7.5L10 12.5L15 7.5' stroke='%23384759' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat:no-repeat;
  background-position:right 14px center;
  background-size:18px 18px;
  padding-right:42px!important;
  cursor:pointer;
}
.scope-select{
  min-height:52px;
  border-radius:14px!important;
  border:1px solid #d7dde4!important;
  background-color:#fff!important;
  box-shadow:0 2px 8px rgba(16,24,40,.03)!important;
  font-size:.98rem!important;
  font-weight:500;
}
.scope-select:hover,
select.text-input:hover{
  border-color:#c7d0d9!important;
}
.scope-select:focus,
select.text-input:focus{
  border-color:#a98a48!important;
  box-shadow:0 0 0 3px rgba(184,146,59,.10),0 6px 16px rgba(16,24,40,.05)!important;
}
#newAbsenceBtn{
  min-height:52px;
  padding-inline:16px;
  border-radius:14px;
  white-space:nowrap;
}
.app-nav-panel,
.period-toolbar,
.content-panel,
.service-banner,
.attendance-reminder{
  border-radius:18px;
}
.view-tabs-wrap{
  padding:8px;
  background:#fff;
  border:1px solid #e5e9ee;
  border-radius:18px;
  box-shadow:0 10px 26px rgba(17,24,32,.035);
}
.view-tabs{
  gap:8px;
}
.view-tab{
  min-height:48px;
  border-radius:13px;
  font-weight:650;
}
.view-tab span{
  display:inline-grid;
  place-items:center;
  width:22px;
  height:22px;
  margin-right:8px;
  border-radius:999px;
  background:#eef2f6;
  color:#617082;
  font-size:.72rem;
  font-weight:700;
}
.view-tab.active span{
  background:rgba(255,255,255,.16);
  color:#f5d37d;
}
.period-toolbar{
  margin-top:12px;
  padding:18px 20px;
  background:linear-gradient(180deg,#ffffff 0%,#fafbfd 100%);
  border:1px solid #e4e8ed;
  box-shadow:0 10px 28px rgba(17,24,32,.04);
}
.dashboard-summary article,
.dashboard-unit-card,
.absence-list article,
.dashboard-table tbody tr{
  border-radius:16px;
  box-shadow:0 8px 20px rgba(17,24,32,.025);
}
.dashboard-summary article{
  padding:16px;
  background:linear-gradient(180deg,#ffffff 0%,#fbfcfd 100%);
}
.content-head{
  padding:18px 20px 14px;
}
.content-actions .btn{
  min-height:44px;
  border-radius:13px;
}
.dashboard-table-wrap{
  overflow:hidden;
  border:1px solid #e5e9ee;
  border-radius:16px;
}
.dashboard-table{
  min-width:100%;
  border-collapse:separate;
  border-spacing:0;
}
.dashboard-table thead th{
  background:#f8fafc;
  color:#51606d;
  font-size:.7rem;
  letter-spacing:.04em;
  text-transform:uppercase;
  padding:11px 12px;
  border-bottom:1px solid #e5e9ee;
}
.dashboard-table tbody td{
  padding:12px;
  border-bottom:1px solid #eef1f4;
  vertical-align:middle;
}
.dashboard-table tbody tr:last-child td{
  border-bottom:0;
}
.dashboard-actions{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  justify-content:flex-end;
}
.dashboard-actions .btn{
  min-height:38px;
  padding:8px 12px;
  font-size:.76rem;
}
#unitFilter option,
select.text-input option{
  color:#1f2933;
}
@media (max-width:1200px){
  .scope-panel{
    flex-direction:column;
    align-items:stretch;
  }
  .scope-copy{max-width:none}
  .scope-controls{
    grid-template-columns:minmax(0,1fr) auto;
  }
}
@media (max-width:860px){
  .scope-controls{
    grid-template-columns:1fr;
  }
  #newAbsenceBtn{
    width:100%;
  }
  .content-head{
    align-items:flex-start;
  }
}


/* v2.0.2 - padding fix za višednevne odsutnosti */
.absence-overview{
  margin-top:18px;
  padding:18px;
  border:1px solid #e4e8ec;
  border-radius:16px;
  background:linear-gradient(180deg,#ffffff 0%,#fbfcfd 100%);
  box-shadow:0 8px 22px rgba(17,24,32,.025);
}
.absence-overview-head{
  margin-bottom:14px;
}
.absence-overview-head > div{
  min-width:0;
}
.absence-overview .eyebrow{
  display:block;
  margin-bottom:6px;
}
.absence-overview-head .btn{
  min-height:42px;
  border-radius:12px;
}
.absence-overview > .muted{
  margin:0;
  padding:14px 16px;
  border:1px dashed #d9e0e7;
  border-radius:13px;
  background:#f8fafc;
  color:#60707d;
  line-height:1.5;
}
@media (max-width:760px){
  .absence-overview{padding:14px}
  .absence-overview-head{flex-direction:column;align-items:stretch;gap:10px}
  .absence-overview-head .btn{width:100%}
}


/* v2.0.3 - hijerarhijski custom meni organizacijskih jedinica */
.scope-controls{
  grid-template-columns:minmax(320px,1fr) auto!important;
  position:relative;
}
.unit-picker{
  position:relative;
  min-width:0;
}
.unit-picker-btn{
  width:100%;
  min-height:58px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  padding:9px 14px 9px 16px;
  border:1px solid #d7dde4;
  border-radius:14px;
  background:#fff;
  color:#23313d;
  text-align:left;
  cursor:pointer;
  box-shadow:0 3px 10px rgba(16,24,40,.035);
  transition:border-color .15s ease,box-shadow .15s ease,background .15s ease;
}
.unit-picker-btn:hover{
  border-color:#c7d0d9;
  background:#fdfefe;
}
.unit-picker.open .unit-picker-btn{
  border-color:#a98a48;
  box-shadow:0 0 0 3px rgba(184,146,59,.10),0 8px 20px rgba(16,24,40,.06);
}
.unit-picker-btn-copy{
  min-width:0;
  display:grid;
  gap:2px;
}
.unit-picker-btn-copy small{
  color:#8a6b26;
  font-size:.58rem;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.unit-picker-btn-copy strong{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-size:.94rem;
  font-weight:650;
  color:#23313d;
}
.unit-picker-chevron{
  width:10px;
  height:10px;
  flex:0 0 auto;
  border-right:2px solid #64727f;
  border-bottom:2px solid #64727f;
  transform:rotate(45deg) translateY(-2px);
  transition:transform .15s ease;
}
.unit-picker.open .unit-picker-chevron{
  transform:rotate(225deg) translate(-2px,-2px);
}
.unit-picker-menu{
  position:absolute;
  z-index:80;
  top:calc(100% + 8px);
  left:0;
  right:0;
  max-height:min(480px,62vh);
  overflow:auto;
  padding:8px;
  border:1px solid #dce2e8;
  border-radius:16px;
  background:#fff;
  box-shadow:0 24px 60px rgba(20,30,40,.18),0 5px 18px rgba(20,30,40,.08);
  scrollbar-width:thin;
  scrollbar-color:#b7c0c9 transparent;
}
.unit-picker-item{
  width:100%;
  min-height:42px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:8px 10px 8px calc(10px + (var(--unit-depth) * 18px));
  margin:1px 0;
  border:0;
  border-radius:10px;
  background:transparent;
  color:#2c3944;
  text-align:left;
  cursor:pointer;
}
.unit-picker-item:hover{
  background:#f4f7f9;
}
.unit-picker-item.selected{
  background:#eef3f6;
  color:#17242f;
  box-shadow:inset 3px 0 0 #b8923b;
}
.unit-picker-item-main{
  min-width:0;
  display:flex;
  align-items:center;
  gap:9px;
}
.unit-picker-name{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-size:.83rem;
  font-weight:500;
}
.unit-picker-dot{
  width:7px;
  height:7px;
  flex:0 0 7px;
  border-radius:50%;
  background:#b8c2cb;
}
.unit-picker-type{
  flex:0 0 auto;
  padding:3px 7px;
  border-radius:999px;
  background:#f2f4f6;
  color:#79848e;
  font-size:.55rem;
  font-weight:650;
  letter-spacing:.02em;
}
.unit-picker-item.type-sector,
.unit-picker-item.type-production{
  min-height:46px;
  margin-top:6px;
  background:#faf8f2;
}
.unit-picker-item.type-sector .unit-picker-name,
.unit-picker-item.type-production .unit-picker-name{
  font-weight:700;
  color:#26333e;
}
.unit-picker-item.type-sector .unit-picker-dot,
.unit-picker-item.type-production .unit-picker-dot{
  width:9px;
  height:9px;
  flex-basis:9px;
  background:#b8923b;
}
.unit-picker-item.type-sector .unit-picker-type,
.unit-picker-item.type-production .unit-picker-type{
  background:#f2ead6;
  color:#806521;
}
.unit-picker-item.type-service .unit-picker-dot{background:#72889b}
.unit-picker-item.type-department .unit-picker-dot{background:#8a9aa8}
.unit-picker-item.type-section .unit-picker-dot{background:#a3afb9}
.unit-picker-item.type-plant .unit-picker-dot{background:#687c6e}
.unit-picker-item.type-office .unit-picker-dot{background:#9a8562}
@media(max-width:860px){
  .scope-controls{grid-template-columns:1fr!important}
  .unit-picker-menu{max-height:52vh}
  .unit-picker-type{display:none}
  .unit-picker-item{padding-left:calc(9px + (var(--unit-depth) * 14px))}
}


/* v2.0.4 - kolorirana organizacijska hijerarhija */
.unit-picker-item{
  --unit-accent:#7a8793;
  --unit-tint:#f7f9fb;
  --unit-chip-bg:#edf1f4;
  --unit-chip-fg:#65717c;
  position:relative;
  border:1px solid transparent;
  box-shadow:inset 3px 0 0 transparent;
  transition:background .14s ease,border-color .14s ease,box-shadow .14s ease,transform .14s ease;
}
.unit-picker-item:hover{
  background:var(--unit-tint);
  border-color:color-mix(in srgb,var(--unit-accent) 22%,#e5e9ed);
  box-shadow:inset 3px 0 0 var(--unit-accent);
}
.unit-picker-item.selected{
  background:var(--unit-tint);
  border-color:color-mix(in srgb,var(--unit-accent) 34%,#dfe5ea);
  box-shadow:inset 4px 0 0 var(--unit-accent);
}
.unit-picker-item .unit-picker-dot{
  background:var(--unit-accent)!important;
  box-shadow:0 0 0 3px color-mix(in srgb,var(--unit-accent) 12%,transparent);
}
.unit-picker-item .unit-picker-type{
  background:var(--unit-chip-bg)!important;
  color:var(--unit-chip-fg)!important;
  border:1px solid color-mix(in srgb,var(--unit-accent) 18%,transparent);
}
.unit-picker-item.type-sector{
  --unit-accent:#b58b2f;
  --unit-tint:#fbf7ec;
  --unit-chip-bg:#f5ead0;
  --unit-chip-fg:#75591c;
}
.unit-picker-item.type-production{
  --unit-accent:#9a6d3a;
  --unit-tint:#fbf5ef;
  --unit-chip-bg:#f2e4d6;
  --unit-chip-fg:#704d29;
}
.unit-picker-item.type-service{
  --unit-accent:#3f6f91;
  --unit-tint:#f2f7fb;
  --unit-chip-bg:#e3eef6;
  --unit-chip-fg:#315a76;
}
.unit-picker-item.type-department{
  --unit-accent:#4f7f7a;
  --unit-tint:#f2f8f7;
  --unit-chip-bg:#e2f0ed;
  --unit-chip-fg:#37635f;
}
.unit-picker-item.type-section{
  --unit-accent:#71638f;
  --unit-tint:#f6f4fa;
  --unit-chip-bg:#ebe6f4;
  --unit-chip-fg:#584a76;
}
.unit-picker-item.type-plant{
  --unit-accent:#59765e;
  --unit-tint:#f3f7f3;
  --unit-chip-bg:#e4eee5;
  --unit-chip-fg:#405c45;
}
.unit-picker-item.type-office{
  --unit-accent:#66717d;
  --unit-tint:#f5f7f9;
  --unit-chip-bg:#e9edf1;
  --unit-chip-fg:#4d5965;
}
.unit-picker-item:not([class*="type-"]){
  --unit-accent:#243544;
  --unit-tint:#f1f5f7;
  --unit-chip-bg:#e5ebef;
  --unit-chip-fg:#334957;
}
.unit-picker-item.type-sector,
.unit-picker-item.type-production{
  border-top-color:color-mix(in srgb,var(--unit-accent) 20%,transparent);
  margin-top:8px;
}
.unit-picker-item.type-sector .unit-picker-name,
.unit-picker-item.type-production .unit-picker-name{
  color:#26333e;
  font-weight:700;
}
.unit-picker-item.type-service .unit-picker-name{font-weight:620;color:#2e4f68}
.unit-picker-item.type-department .unit-picker-name{font-weight:600;color:#355c59}
.unit-picker-item.type-section .unit-picker-name{color:#51466b}
.unit-picker-item.type-plant .unit-picker-name{color:#405b44}
.unit-picker-item.type-office .unit-picker-name{color:#505c67}

/* boja trenutno odabrane razine u zatvorenom pickeru */
.unit-picker.selected-type-sector .unit-picker-btn{border-left:4px solid #b58b2f}
.unit-picker.selected-type-production .unit-picker-btn{border-left:4px solid #9a6d3a}
.unit-picker.selected-type-service .unit-picker-btn{border-left:4px solid #3f6f91}
.unit-picker.selected-type-department .unit-picker-btn{border-left:4px solid #4f7f7a}
.unit-picker.selected-type-section .unit-picker-btn{border-left:4px solid #71638f}
.unit-picker.selected-type-plant .unit-picker-btn{border-left:4px solid #59765e}
.unit-picker.selected-type-office .unit-picker-btn{border-left:4px solid #66717d}

/* fallback za preglednike bez color-mix */
@supports not (color:color-mix(in srgb,#000 50%,#fff)){
  .unit-picker-item:hover,.unit-picker-item.selected{border-color:#dfe5ea}
  .unit-picker-item .unit-picker-dot{box-shadow:none}
  .unit-picker-item .unit-picker-type{border-color:#e1e6ea}
}


/* v2.0.6 - pravi mobilni responsive layout */
@media (max-width:760px){
  body{overflow-x:hidden}
  .app-shell{width:100%!important;padding:8px!important;margin:0 auto 28px!important}

  /* Header */
  .app-header{
    grid-template-columns:minmax(0,1fr) auto!important;
    gap:8px!important;
    min-height:66px!important;
    padding:8px 10px!important;
  }
  .brand{min-width:0!important;gap:9px!important}
  .brand-mark{width:40px!important;height:40px!important;flex:0 0 40px!important}
  .brand h1{font-size:.78rem!important;line-height:1.12!important;white-space:normal!important}
  .brand p,.brand-overline{display:none!important}
  .header-actions{gap:5px!important;flex-wrap:nowrap!important;max-width:none!important}
  .header-actions .header-btn:not([hidden]){min-height:36px!important;padding:6px 9px!important;font-size:.65rem!important}
  .user-chip{min-height:36px!important;max-width:84px!important;padding:6px 9px!important;font-size:.7rem!important}

  /* Gornji informativni blok */
  .service-banner{
    margin-bottom:8px!important;
    padding:11px 12px!important;
    border-radius:13px!important;
  }
  .service-banner-kicker{font-size:.52rem!important;margin-bottom:3px!important}
  .service-banner strong{font-size:.76rem!important;line-height:1.3!important}

  /* Organizacijska jedinica - bez duplog naslova i velikog praznog prostora */
  .scope-panel{
    display:block!important;
    padding:12px!important;
    border-radius:14px!important;
    gap:0!important;
  }
  .scope-copy{max-width:none!important;margin:0 0 9px!important}
  .scope-copy .eyebrow{margin:0!important;font-size:.58rem!important}
  .scope-copy strong,
  .scope-copy small{display:none!important}
  .scope-controls{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:9px!important;
    min-width:0!important;
  }
  .unit-picker-btn{
    min-height:50px!important;
    padding:7px 12px!important;
    border-radius:12px!important;
  }
  .unit-picker-btn-copy small{font-size:.52rem!important}
  .unit-picker-btn-copy strong{font-size:.82rem!important}
  #newAbsenceBtn{
    width:100%!important;
    min-height:44px!important;
    padding:8px 12px!important;
    border-radius:12px!important;
    font-size:.78rem!important;
  }
  .unit-picker-menu{
    position:fixed!important;
    z-index:120!important;
    top:72px!important;
    left:10px!important;
    right:10px!important;
    bottom:12px!important;
    max-height:none!important;
    border-radius:16px!important;
    padding:8px!important;
  }
  .unit-picker-item{
    min-height:44px!important;
    padding-top:8px!important;
    padding-bottom:8px!important;
    padding-left:calc(9px + (var(--unit-depth) * 11px))!important;
  }
  .unit-picker-name{font-size:.76rem!important;white-space:normal!important;line-height:1.25!important}
  .unit-picker-type{display:inline-flex!important;font-size:.5rem!important;padding:2px 6px!important}

  /* Navigacija - koristi cijelu širinu, 3 stupca / 2 reda */
  .app-nav-panel{
    position:static!important;
    display:block!important;
    margin:8px 0!important;
    padding:6px!important;
    border-radius:14px!important;
  }
  .app-nav-panel .nav-label{display:none!important}
  .hler-elevated .view-tabs,
  .view-tabs{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:5px!important;
    width:100%!important;
  }
  .view-tab,
  .hler-elevated .view-tab{
    min-width:0!important;
    min-height:42px!important;
    padding:6px 4px!important;
    border-radius:10px!important;
    font-size:.68rem!important;
    gap:5px!important;
    line-height:1.1!important;
  }
  .view-tab span{
    display:inline-grid!important;
    width:20px!important;
    height:20px!important;
    margin:0!important;
    font-size:.58rem!important;
    border-radius:7px!important;
  }

  /* Period */
  .period-toolbar{
    margin-top:8px!important;
    grid-template-columns:38px minmax(0,1fr) 38px!important;
    gap:6px!important;
    padding:10px 9px!important;
    border-radius:14px!important;
  }
  .period-toolbar .icon-btn{width:38px!important;height:38px!important}
  .period-title-wrap h2{font-size:1rem!important;line-height:1.18!important}
  .period-title-wrap p{font-size:.62rem!important;white-space:normal!important;line-height:1.3!important}
  .period-kicker{display:none!important}
  .period-toolbar #todayBtn{
    grid-column:1/-1!important;
    width:100%!important;
    min-height:38px!important;
    margin-top:1px!important;
    font-size:.78rem!important;
  }

  /* Dashboard */
  .stats-strip,.dashboard-summary{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .dashboard-summary{gap:7px!important}
  .dashboard-summary article{padding:10px!important;border-radius:12px!important}
  .dashboard-summary article strong{font-size:1.2rem!important}
  .content-head{
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    gap:10px!important;
    padding:13px!important;
  }
  .content-actions{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:6px!important;
    width:100%!important;
  }
  .content-actions .last-refresh{grid-column:1/-1!important}
  .content-actions .btn{width:100%!important;min-width:0!important;padding:7px 5px!important;font-size:.67rem!important}
  .absence-overview{padding:12px!important;border-radius:13px!important}
}

@media (max-width:430px){
  .app-header{padding:7px 8px!important}
  .brand-mark{width:38px!important;height:38px!important;flex-basis:38px!important}
  .brand h1{font-size:.73rem!important}
  .header-actions .header-btn:not([hidden]){padding:6px 7px!important;font-size:.6rem!important}
  .user-chip{max-width:76px!important;font-size:.66rem!important}
  .hler-elevated .view-tabs,.view-tabs{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  .view-tab,.hler-elevated .view-tab{font-size:.64rem!important;padding-inline:3px!important}
  .view-tab span{width:18px!important;height:18px!important;font-size:.54rem!important}
  .unit-picker-type{display:none!important}
}

/* v2.1.0 - ERV / obračunski modul */
.erv-workflow-card{
  margin:0 0 16px;
  padding:18px;
  border:1px solid #dde4e8;
  border-left:5px solid #87949f;
  border-radius:16px;
  background:#fff;
  box-shadow:0 10px 28px rgba(15,45,71,.055);
}
.erv-workflow-card.status-submitted{border-left-color:#b58b2f;background:#fffdf8}
.erv-workflow-card.status-approved{border-left-color:#4f7f7a;background:#f8fcfb}
.erv-workflow-card.status-payroll{border-left-color:#3f6f91;background:#f7fafc}
.erv-workflow-card.status-locked{border-left-color:#263746;background:#f6f8fa}
.erv-workflow-card.status-returned{border-left-color:#a55b52;background:#fff9f8}
.erv-workflow-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}
.erv-workflow-head h3{margin:3px 0 4px;font-size:1.02rem;color:#172d3e}
.erv-workflow-head p{margin:0;color:#687782;font-size:.78rem}
.erv-status-pill{display:inline-flex;align-items:center;justify-content:center;min-height:30px;padding:5px 10px;border-radius:999px;background:#edf1f4;color:#56636d;font-size:.68rem;font-weight:700;white-space:nowrap}
.erv-status-pill.submitted{background:#f5ead0;color:#75591c}
.erv-status-pill.approved{background:#e2f0ed;color:#37635f}
.erv-status-pill.payroll{background:#e3eef6;color:#315a76}
.erv-status-pill.locked{background:#e4e9ed;color:#263746}
.erv-status-pill.returned{background:#f4e4e1;color:#82463f}
.erv-workflow-timeline{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:14px}
.erv-workflow-timeline>div{padding:9px 10px;border:1px solid #e5eaed;border-radius:11px;background:#fafbfc;min-width:0}
.erv-workflow-timeline span,.erv-workflow-timeline small{display:block;color:#78848c;font-size:.62rem}
.erv-workflow-timeline b{display:block;margin:2px 0;color:#243746;font-size:.73rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.erv-workflow-actions{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap;margin-top:14px}
.erv-return-note{margin-top:12px;padding:10px 12px;border:1px solid #ead8d4;border-radius:10px;background:#fff7f5;color:#75443e;font-size:.74rem;line-height:1.45}
.erv-return-note b{color:#60342f}
.erv-guidance{display:flex;align-items:flex-start;gap:10px;margin:0 0 12px;padding:10px 12px;border:1px solid #e2e8ec;border-radius:12px;background:#f8fafb;color:#60707b;font-size:.72rem;line-height:1.45}
.erv-guidance b{color:#253a4a;white-space:nowrap}
.erv-table-wrap{border:1px solid #e1e6e9;border-radius:14px;background:#fff}
.erv-table{border-collapse:separate;border-spacing:0;min-width:1780px;width:100%;font-size:.7rem}
.erv-table th{position:sticky;top:0;z-index:2;padding:9px 8px;background:#f3f6f8;color:#52636f;font-size:.61rem;text-transform:uppercase;letter-spacing:.03em;border-bottom:1px solid #dfe5e9;white-space:nowrap;text-align:center}
.erv-table th:first-child{left:0;z-index:3;text-align:left;min-width:260px}
.erv-table td{padding:9px 8px;border-bottom:1px solid #edf0f2;text-align:center;white-space:nowrap;color:#394c58}
.erv-table td:first-child{position:sticky;left:0;z-index:1;background:#fff;text-align:left;min-width:260px;border-right:1px solid #e8ecef}
.erv-table tr:hover td{background:#fbfcfd}
.erv-table tr:hover td:first-child{background:#fbfcfd}
.erv-table td:first-child b,.erv-table td:first-child small{display:block}
.erv-table td:first-child small{margin-top:2px;color:#7b8790;font-size:.63rem;white-space:normal;line-height:1.25}
.erv-table .schedule-mini{color:#4c728c!important}
.erv-mobile-list{display:none}
.erv-detail-card{width:min(760px,calc(100vw - 28px))!important}
.erv-detail-help{margin:12px 0!important}
.erv-hours-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 12px;margin:12px 0 14px}
.erv-hours-grid label{display:block;min-width:0}
.erv-hours-grid label>span{display:block;margin:0 0 5px;color:#52636f;font-size:.68rem;font-weight:650}
.erv-schedule-grid{margin-top:8px}

@media (max-width:900px){
  .erv-workflow-card{padding:14px}
  .erv-workflow-head{flex-direction:column;gap:9px}
  .erv-workflow-timeline{grid-template-columns:repeat(2,minmax(0,1fr))}
  .erv-table-wrap{display:none!important}
  .erv-mobile-list{display:grid;gap:10px}
  .erv-mobile-card{padding:13px;border:1px solid #e1e7ea;border-radius:13px;background:#fff}
  .erv-mobile-card header{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:10px}
  .erv-mobile-card header b,.erv-mobile-card header small{display:block}
  .erv-mobile-card header small{margin-top:2px;color:#77838b;font-size:.64rem;line-height:1.25}
  .erv-mobile-card header>strong{color:#17344a;font-size:1rem;white-space:nowrap}
  .erv-mobile-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin-bottom:10px}
  .erv-mobile-metrics span{padding:7px 6px;border-radius:9px;background:#f5f7f8;color:#6c7880;font-size:.6rem;text-align:center}
  .erv-mobile-metrics b{display:block;margin-top:2px;color:#2e4352;font-size:.72rem}
}

@media (max-width:560px){
  .erv-workflow-card{margin-bottom:10px;padding:12px;border-radius:13px}
  .erv-workflow-head h3{font-size:.9rem;line-height:1.25}
  .erv-workflow-head p{font-size:.67rem;line-height:1.35}
  .erv-status-pill{font-size:.61rem;min-height:27px}
  .erv-workflow-timeline{grid-template-columns:1fr;gap:6px}
  .erv-workflow-actions{display:grid;grid-template-columns:1fr;width:100%}
  .erv-workflow-actions .btn{width:100%}
  .erv-guidance{display:block;font-size:.66rem}
  .erv-guidance b{display:block;margin-bottom:3px}
  .erv-mobile-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}
  .erv-hours-grid{grid-template-columns:1fr;gap:8px}
  .erv-detail-card{max-height:92vh;overflow:auto}
  .erv-schedule-grid{grid-template-columns:1fr!important}
}

@media print{
  html[data-hler-view="payroll"] .scope-panel,
  html[data-hler-view="payroll"] .app-nav-panel,
  html[data-hler-view="payroll"] .holiday-panel,
  html[data-hler-view="payroll"] .erv-guidance,
  html[data-hler-view="payroll"] .erv-workflow-actions,
  html[data-hler-view="payroll"] .erv-mobile-list{display:none!important}
  html[data-hler-view="payroll"] .erv-workflow-card{display:block!important;margin:0 0 4mm!important;padding:0 0 3mm!important;border:0!important;border-bottom:.4mm solid #222!important;border-radius:0!important;box-shadow:none!important;background:#fff!important;color:#000!important}
  html[data-hler-view="payroll"] .erv-status-pill{border:1px solid #333!important;background:#fff!important;color:#000!important}
  html[data-hler-view="payroll"] .erv-workflow-timeline{grid-template-columns:repeat(4,1fr)!important;gap:2mm!important;margin-top:3mm!important}
  html[data-hler-view="payroll"] .erv-workflow-timeline>div{border:.25mm solid #777!important;background:#fff!important;padding:1.5mm!important}
  html[data-hler-view="payroll"] .erv-table-wrap{display:block!important;overflow:visible!important;border:0!important}
  html[data-hler-view="payroll"] .erv-table{display:table!important;width:100%!important;min-width:0!important;table-layout:auto!important;border-collapse:collapse!important;font-size:5.2pt!important}
  html[data-hler-view="payroll"] .erv-table th,html[data-hler-view="payroll"] .erv-table td{position:static!important;min-width:0!important;padding:1mm .6mm!important;border:.22mm solid #444!important;background:#fff!important;color:#000!important;white-space:normal!important}
  html[data-hler-view="payroll"] .erv-table th{font-size:4.6pt!important;background:#eee!important}
  html[data-hler-view="payroll"] .erv-table td:first-child,html[data-hler-view="payroll"] .erv-table th:first-child{width:34mm!important;min-width:34mm!important}
  html[data-hler-view="payroll"] .erv-table .btn{display:none!important}
}

/* v2.2.0 · mobilna aktivacija i Web Push */
.activation-code-input{font-size:1.15rem;font-weight:700;letter-spacing:.16em;text-align:center}
.mobile-push-banner{display:grid;grid-template-columns:auto 1fr auto auto;align-items:center;gap:12px;margin:0 0 16px;padding:14px 16px;border:1px solid #c7d7e4;border-radius:16px;background:#f5f9fc;box-shadow:0 8px 24px rgba(15,45,71,.06)}
.mobile-push-banner-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:#e7eff6;font-size:1.15rem}
.mobile-push-banner-copy{display:flex;flex-direction:column;gap:3px;min-width:0}.mobile-push-banner-copy b{color:#0f2d47}.mobile-push-banner-copy span{font-size:.87rem;color:#5c6873;line-height:1.35}
.push-admin-card{display:grid;grid-template-columns:minmax(220px,1fr) auto 130px auto;align-items:end;gap:12px;padding:15px 16px;margin:14px 0 18px;border:1px solid #dbe2e8;border-radius:14px;background:#f8fafb}.push-admin-copy{align-self:center}.push-time-label{display:flex;flex-direction:column;gap:6px;font-size:.76rem;font-weight:700;color:#53606b}.push-time-label .text-input{min-width:120px}.switch-row{display:flex;align-items:center;gap:9px;min-height:44px;padding:0 4px;font-size:.86rem;font-weight:700;color:#263746}.switch-row input{width:18px;height:18px;accent-color:#0f2d47}.push-cron-state{grid-column:1/-1;font-size:.78rem}
.employee-access-pills{display:flex;gap:6px;flex-wrap:wrap;margin-top:6px}.pin-pill.ok{background:#edf7f1;color:#277044;border-color:#cce9d8}.pin-pill.warn{background:#fff7e8;color:#8a611a;border-color:#ead7ac}
.employee-mobile-access{margin-top:16px;padding:14px;border:1px solid #dbe2e8;border-radius:14px;background:#f8fafb}.employee-mobile-access-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.mobile-device-badge{white-space:nowrap;font-size:.73rem;font-weight:700;padding:5px 8px;border-radius:999px;background:#e7eff6;color:#0f2d47}.employee-mobile-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.activation-result{margin-top:14px;padding:14px;border:1px dashed #b8c6d1;border-radius:12px;background:#fff}.activation-result-copy{display:flex;flex-direction:column;align-items:center;gap:4px;text-align:center}.activation-result-copy span{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#6a747d}.activation-result-copy strong{font-size:1.9rem;letter-spacing:.16em;color:#0f2d47}.activation-result-copy small{color:#6c7780}.activation-qr{display:grid;place-items:center;margin:14px auto;max-width:230px;padding:8px;background:#fff;border-radius:10px;border:1px solid #e2e7eb}.activation-qr svg{display:block;width:100%;height:auto}.activation-link-result{font-size:.78rem}.activation-copy-actions{display:flex;gap:8px;margin-top:8px;justify-content:center;flex-wrap:wrap}
.mobile-install-guide{display:grid;gap:8px;margin:14px 0}.mobile-install-guide>div{display:grid;grid-template-columns:70px 1fr;gap:10px;padding:10px 12px;border:1px solid #e0e6eb;border-radius:11px;background:#f8fafb}.mobile-install-guide b{color:#0f2d47}.mobile-install-guide span{font-size:.84rem;color:#58646f;line-height:1.4}.mobile-push-actions{display:grid;gap:8px;margin-top:12px}

@media(max-width:860px){
 .mobile-push-banner{grid-template-columns:auto 1fr;gap:10px}.mobile-push-banner .btn{width:100%}.mobile-push-banner #mobilePushBannerBtn{grid-column:1/-1}.mobile-push-banner #mobilePushBannerDismiss{grid-column:1/-1}
 .push-admin-card{grid-template-columns:1fr}.push-cron-state{grid-column:auto}.push-time-label .text-input{width:100%}
 .employee-mobile-access-head{flex-direction:column}.employee-mobile-actions .btn{flex:1 1 100%}
 .activation-result-copy strong{font-size:1.55rem}.mobile-install-guide>div{grid-template-columns:1fr}
}

/* v2.3.0+ — povijest organizacijskih premještaja / v2.4 stabilizacija */
.field-hint{margin:6px 2px 0;color:#7a858f;font-size:.68rem;line-height:1.45}.employee-transfer-access{margin-top:16px;padding:14px;border:1px solid #d7e0e6;border-radius:14px;background:linear-gradient(180deg,#fbfcfd,#f5f8fa);display:flex;align-items:center;justify-content:space-between;gap:14px}.employee-transfer-access .field-label{margin:0 0 4px}.employee-transfer-access p{margin:0}.transfer-current{margin-top:14px;padding:12px 14px;border-radius:12px;background:#f6f8fa;border:1px solid #e0e6eb;display:flex;flex-direction:column;gap:3px}.transfer-current span{font-size:.67rem;text-transform:uppercase;letter-spacing:.08em;color:#7b858e;font-weight:750}.transfer-current strong{font-size:1rem;color:#172533}.transfer-current small{color:#6f7b85}.transfer-history-note{margin-top:15px;padding:11px 12px;border-left:3px solid var(--gold);border-radius:8px;background:#fbf8ef;color:#5f6670;font-size:.73rem;line-height:1.5}.transfer-history-note b{color:#273746}.transfer-card textarea.text-input{resize:vertical;min-height:80px}
@media(max-width:640px){.employee-transfer-access{align-items:stretch;flex-direction:column}.employee-transfer-access .btn{width:100%}.transfer-card .modal-actions{display:grid;grid-template-columns:1fr}.transfer-card .modal-actions .btn{width:100%}}

/* v2.4.1 — individualni tjedni i smjenski rasporedi */
.employee-schedule-box{margin-top:14px;padding:14px;border:1px solid #d9e2e8;border-radius:15px;background:#f8fafb}
.employee-schedule-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:10px}.employee-schedule-head .field-label{margin:0 0 4px}.employee-schedule-head p{margin:0}
.weekday-picker{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;margin:10px 0 12px}.weekday-picker label{position:relative}.weekday-picker input{position:absolute;opacity:0;pointer-events:none}.weekday-picker span{display:flex;align-items:center;justify-content:center;min-height:36px;border:1px solid #d6dfe5;border-radius:9px;background:#fff;color:#586976;font-size:.72rem;font-weight:750;cursor:pointer;transition:.15s ease}.weekday-picker input:checked+span{border-color:#0f2d47;background:#eaf0f5;color:#0f2d47;box-shadow:inset 0 0 0 1px rgba(15,45,71,.08)}.weekday-picker.disabled{opacity:.62}.weekday-picker.disabled span{cursor:default}
.schedule-time-grid{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:4px}.employee-roster-access{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:12px;padding:12px 13px;border:1px solid #d8e0e6;border-left:4px solid #b58b2f;border-radius:12px;background:#fffdf8}.employee-roster-access b,.employee-roster-access small{display:block}.employee-roster-access b{color:#233947;font-size:.82rem}.employee-roster-access small{margin-top:2px;color:#76818a;font-size:.68rem;line-height:1.35}
.schedule-pill{background:#edf3f7;color:#36566c;border-color:#d3e0e9}
.roster-card{width:min(900px,calc(100vw - 28px))!important;max-height:92vh;overflow:auto}.roster-toolbar{display:grid;grid-template-columns:1fr 190px;gap:14px;align-items:end;margin:12px 0}.roster-toolbar strong{display:block;margin-top:4px;color:#17344a}.roster-toolbar label{display:block}.roster-preset{display:grid;grid-template-columns:minmax(170px,1.3fr) repeat(3,minmax(110px,.7fr));gap:10px;padding:12px;border:1px solid #dde5ea;border-radius:13px;background:#f8fafb}.roster-help{margin:11px 2px!important}
.roster-week-head,.roster-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.roster-week-head{margin:12px 0 6px}.roster-week-head span{text-align:center;color:#7b8790;font-size:.62rem;font-weight:800;text-transform:uppercase}.roster-blank{min-height:74px}.roster-day{min-height:82px;padding:8px;border:1px solid #e0e6ea;border-radius:11px;background:#fff;color:#51616d;text-align:left;cursor:pointer;display:flex;flex-direction:column;gap:3px;transition:.15s ease}.roster-day:hover{border-color:#aebdc7;box-shadow:0 4px 12px rgba(15,45,71,.07)}.roster-day b{font-size:.82rem;color:#263c4b}.roster-day span{font-size:.69rem;font-weight:750}.roster-day small{margin-top:auto;font-size:.58rem;line-height:1.25;color:#83909a}.roster-day.scheduled{border-color:#8aa4b7;background:#edf4f8;box-shadow:inset 0 0 0 1px rgba(15,45,71,.05)}.roster-day.scheduled span,.roster-day.scheduled b{color:#0f2d47}.roster-day.holiday{border-color:#d2b15f;background:#fff8e8;box-shadow:inset 0 0 0 1px rgba(184,146,59,.10)}.roster-day.holiday.scheduled{background:#f6f1df;border-color:#b8923b}.roster-day-top{display:flex;align-items:center;justify-content:space-between;gap:5px}.roster-holiday-badge{font-style:normal;font-size:.48rem;line-height:1;padding:4px 5px;border-radius:999px;background:#b8923b;color:#fff;font-weight:900;letter-spacing:.04em}.roster-day.holiday small strong{color:#806521;font-size:inherit}.roster-summary{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px;padding:10px 12px;border-radius:11px;background:#f4f7f9;border:1px solid #e0e6ea}.roster-summary span{font-weight:800;color:#17344a}.roster-summary small{color:#77848d}
.record-cell.scheduled-empty{background:#fbfcfd}.record-cell.off-day{background:#f5f6f7}.schedule-dot{display:inline-flex;align-items:center;justify-content:center;width:19px;height:19px;border-radius:50%;background:#e6eef4;color:#42677f;font-weight:900;line-height:1}.mobile-record-badge.scheduled{background:#e8f0f6;color:#315d79}.person-card.scheduled-missing{border-color:#e2c989;background:#fffdf8}.person-card.off{opacity:.78}

@media(max-width:760px){
 .schedule-time-grid{grid-template-columns:1fr}.weekday-picker{grid-template-columns:repeat(4,minmax(0,1fr))}.employee-roster-access{align-items:stretch;flex-direction:column}.employee-roster-access .btn{width:100%}
 .roster-toolbar{grid-template-columns:1fr}.roster-preset{grid-template-columns:repeat(2,minmax(0,1fr))}.roster-week-head,.roster-grid{gap:4px}.roster-day{min-height:70px;padding:6px}.roster-day small{font-size:.54rem}.roster-summary{align-items:flex-start;flex-direction:column}
}
@media(max-width:430px){.weekday-picker{grid-template-columns:repeat(4,minmax(0,1fr))}.roster-preset{grid-template-columns:1fr 1fr}.roster-card{width:calc(100vw - 14px)!important}.roster-day{min-height:68px;border-radius:8px}.roster-day span{font-size:.6rem}.roster-day small{display:none}.roster-holiday-badge{font-size:.42rem;padding:3px 4px}}


/* v2.5.0 — Početna / Home dashboard */
.app-header .brand[role="button"]{cursor:pointer}
.home-dashboard{display:grid;gap:14px}
.home-hero{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;padding:4px 2px 2px}
.home-hero h2{margin:4px 0 4px;font-size:1.65rem;line-height:1.1;font-weight:600;color:#202d38;letter-spacing:-.025em}
.home-hero p{margin:0;color:#77818a;font-size:.76rem}
.home-role-chip{flex:0 0 auto;padding:8px 11px;border:1px solid #e5dfcf;background:#fbf9f2;border-radius:999px;color:#7b6227;font-size:.66rem;font-weight:650}
.home-today-card{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:15px;padding:18px;border:1px solid #e2e7eb;border-radius:18px;background:#fff;box-shadow:0 10px 28px rgba(17,24,32,.045)}
.home-today-card.ok{border-left:4px solid #4b8e65}.home-today-card.missing{border-left:4px solid #b8892d}.home-today-card.away{border-left:4px solid #70869a}.home-today-card.off{border-left:4px solid #c8ced3}
.home-today-mark{display:grid;place-items:center;width:48px;height:48px;border-radius:14px;background:#f1f4f6;color:#4d5a65;font-size:1.3rem;font-weight:650}
.home-today-card.ok .home-today-mark{background:#edf7f0;color:#397552}.home-today-card.missing .home-today-mark{background:#fff7e5;color:#926d1f}.home-today-card.away .home-today-mark{background:#eff4f8;color:#526c82}
.home-today-copy span{display:block;margin-bottom:3px;color:#8a6b26;font-size:.58rem;font-weight:650;letter-spacing:.1em}.home-today-copy h3{margin:0;font-size:1rem;font-weight:600;color:#26333e}.home-today-copy p{margin:4px 0 0;color:#7b858e;font-size:.7rem}.home-today-actions{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}
.home-org-overview,.home-shortcuts,.home-alerts{padding:17px;border:1px solid #e4e8ec;border-radius:18px;background:#fff}
.home-section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.home-section-head h3{margin:3px 0 0;font-size:.93rem;font-weight:600;color:#293640}.home-section-head .btn{min-height:34px;padding:6px 10px}
.home-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.home-metrics article{padding:13px 14px;border:1px solid #e7eaed;border-radius:13px;background:#fafbfc}.home-metrics span{display:block;color:#7c8790;font-size:.63rem}.home-metrics b{display:block;margin-top:3px;color:#2c3944;font-size:1.45rem;font-weight:600}.home-metrics article.ok{border-bottom:3px solid #4b8e65}.home-metrics article.away{border-bottom:3px solid #758b9e}.home-metrics article.missing{border-bottom:3px solid #b8892d}
.home-action-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.home-action{appearance:none;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;min-height:76px;padding:12px;border:1px solid #e4e8ec;border-radius:14px;background:#fafbfc;text-align:left;color:inherit;cursor:pointer;transition:.16s ease}.home-action:hover{border-color:#d8c999;background:#fffdf8;transform:translateY(-1px);box-shadow:0 7px 18px rgba(17,24,32,.05)}.home-action-icon{display:grid;place-items:center;width:38px;height:38px;border-radius:11px;background:#eef2f5;color:#354653;font-size:.76rem;font-weight:700}.home-action-copy b,.home-action-copy small{display:block}.home-action-copy b{font-size:.75rem;font-weight:600;color:#2e3b46}.home-action-copy small{margin-top:3px;color:#87919a;font-size:.59rem;line-height:1.35}.home-action-arrow{color:#a3abb2;font-size:1.2rem}
.home-alert-list{display:grid;gap:8px}.home-alert{appearance:none;width:100%;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:11px;padding:11px 12px;border:1px solid #e6e9ec;border-radius:13px;background:#fafbfc;text-align:left;color:inherit}.home-alert>span{display:grid;place-items:center;min-width:34px;height:34px;padding:0 6px;border-radius:10px;background:#eef2f5;color:#52606b;font-size:.58rem;font-weight:700}.home-alert div b,.home-alert div small{display:block}.home-alert div b{font-size:.72rem;font-weight:600;color:#33404a}.home-alert div small{margin-top:2px;color:#818b94;font-size:.6rem}.home-alert i{font-style:normal;color:#a3abb2;font-size:1.1rem}.home-alert.warning{border-color:#ead9ae;background:#fffaf0;cursor:pointer}.home-alert.warning>span{background:#f7e8c4;color:#82621f}.home-alert.success{border-color:#d8e8dd;background:#f7fbf8}.home-alert.success>span{background:#e5f3e9;color:#397552}.home-alert.neutral.clickable,.home-alert.neutral.home-go-payroll{cursor:pointer}.home-alert.neutral.clickable:hover,.home-alert.neutral.home-go-payroll:hover{border-color:#d9cda9;background:#fffdf8}
html[data-hler-view="home"] #contentPanel{padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important}
html[data-hler-view="home"] .service-banner{margin-bottom:10px}
.view-tabs{grid-template-columns:repeat(6,minmax(0,1fr))}
.hler-elevated .view-tabs{grid-template-columns:repeat(7,minmax(0,1fr))}
@media(max-width:1050px){.home-action-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){
 .home-dashboard{gap:9px}.home-hero{align-items:flex-start;padding:2px 2px 0}.home-hero h2{font-size:1.25rem}.home-role-chip{padding:6px 8px;font-size:.57rem}
 .home-today-card{grid-template-columns:auto 1fr;padding:12px;gap:10px;border-radius:14px}.home-today-mark{width:40px;height:40px;border-radius:11px}.home-today-actions{grid-column:1/3;justify-content:stretch}.home-today-actions .btn{flex:1}
 .home-org-overview,.home-shortcuts,.home-alerts{padding:12px;border-radius:14px}.home-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.home-metrics article{padding:10px}.home-metrics b{font-size:1.15rem}
 .home-action-grid{grid-template-columns:1fr 1fr;gap:6px}.home-action{min-height:68px;padding:9px;gap:8px}.home-action-icon{width:34px;height:34px}.home-action-copy small{display:none}.home-alert{padding:10px}
 .hler-elevated .view-tabs,.view-tabs{grid-template-columns:repeat(4,minmax(0,1fr))!important}
}
@media(max-width:430px){.home-action-grid{grid-template-columns:1fr 1fr}.hler-elevated .view-tabs,.view-tabs{grid-template-columns:repeat(4,minmax(0,1fr))!important}.home-today-copy h3{font-size:.9rem}.home-section-head h3{font-size:.84rem}}
@media print{html[data-hler-view="home"] .home-dashboard{display:none!important}}

/* v2.5.1 — redizajn prijave / aktivacije */
.auth-screen{overflow:auto;padding:28px 20px}
.auth-shell{width:min(1160px,100%);grid-template-columns:minmax(0,.86fr) minmax(470px,1.14fr);border-radius:26px;min-height:610px;max-height:calc(100vh - 56px)}
.auth-intro{min-height:610px;padding:42px 42px 34px}
.auth-intro-copy{margin:auto 0 32px;max-width:520px}
.auth-intro-copy h1{max-width:540px;margin:11px 0 15px;font-size:clamp(2.15rem,3.6vw,3.45rem);line-height:1.02;letter-spacing:-.04em;font-weight:600!important}
.auth-intro-copy p{max-width:520px;color:#c3ccd4;font-size:.92rem;line-height:1.62}
.auth-brand-name{font-size:.82rem;font-weight:700!important;letter-spacing:.15em}
.auth-brand-sub{font-size:.64rem}
.auth-trust-list{display:grid;gap:9px;position:relative;z-index:1;max-width:530px}
.auth-trust-list>div{display:grid;grid-template-columns:36px 1fr;align-items:center;gap:11px;padding:10px 11px;border:1px solid rgba(255,255,255,.09);border-radius:13px;background:rgba(255,255,255,.025)}
.auth-trust-list .trust-icon{display:grid;place-items:center;width:32px;height:32px;border-radius:9px;background:rgba(209,166,64,.15);border:1px solid rgba(209,166,64,.28);color:#e5c56e;font-size:.75rem;font-weight:700}
.auth-trust-list b,.auth-trust-list small{display:block}.auth-trust-list b{color:#f2f5f7;font-size:.74rem;font-weight:600}.auth-trust-list small{margin-top:2px;color:#8f9ba6;font-size:.62rem;line-height:1.35}
.auth-security-note{margin-top:15px;font-size:.61rem;color:#75838e}
.auth-card{min-width:0;overflow:auto;padding:42px 48px 28px;justify-content:flex-start}
.auth-card-head{margin-bottom:18px}
.auth-card-head h2{margin:6px 0 5px;font-size:1.75rem;font-weight:600!important}
.auth-card-head .muted{margin:8px 0 0;font-size:.8rem}
.auth-service-name{display:inline-flex;width:auto;margin:6px 0 0;padding:7px 10px;border-radius:999px;font-size:.7rem;font-weight:600!important;background:#fbf8ef;border-color:#eadfbe}
.auth-mode-tabs{display:grid;grid-template-columns:1fr 1fr;gap:5px;margin:4px 0 15px;padding:4px;border:1px solid #e1e6ea;border-radius:13px;background:#f5f7f8}
.auth-mode-tab{appearance:none;min-height:42px;padding:8px 12px;border:0;border-radius:9px;background:transparent;color:#6e7982;font:inherit;font-size:.76rem;font-weight:600;cursor:pointer;transition:.15s ease}
.auth-mode-tab:hover{color:#253847}.auth-mode-tab.active{background:#fff;color:#0f2d47;box-shadow:0 2px 8px rgba(15,45,71,.09)}
.auth-card #loginForm{display:grid;grid-template-columns:1fr;gap:0}
.auth-card #loginForm[hidden]{display:none!important}
.auth-employee-select{font-weight:500;color:#263847}
.login-user-meta{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:7px;margin:8px 0 3px;padding:9px 10px;border:1px solid #e5e9ec;border-radius:11px;background:#fafbfc}
.login-user-meta[hidden]{display:none!important}.login-user-meta>div{min-width:0}.login-user-meta strong,.login-user-meta small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.login-user-meta strong{font-size:.75rem;font-weight:600;color:#253643}.login-user-meta small{margin-top:2px;color:#7c8790;font-size:.58rem}
.auth-role-badge,.auth-state-badge{white-space:nowrap;padding:5px 7px;border-radius:999px;border:1px solid #dce3e8;font-size:.56rem;font-weight:700;line-height:1;background:#f4f7f9;color:#546673}.auth-state-badge.ok{background:#eef7f1;border-color:#d3e8d9;color:#397552}.auth-state-badge.ready{background:#eef4f9;border-color:#d2e0eb;color:#315d79}.auth-state-badge.warn{background:#fff8e9;border-color:#ead9ae;color:#86651d}
.auth-card .field-label{margin-top:10px;font-size:.62rem}
.auth-card .text-input{min-height:46px;border-radius:11px;padding:10px 12px}
.auth-card .notice.info,.auth-card .notice.success{margin:9px 0 1px;padding:9px 11px;border-radius:11px;font-size:.7rem;line-height:1.42}
.auth-submit{margin-top:15px;min-height:47px;border-radius:11px}
.form-message{min-height:18px;margin:8px 0 0;font-size:.72rem}
.desktop-reminder-setup.compact{margin-top:12px;padding:10px 11px;border-radius:12px;gap:10px}
.desktop-reminder-setup.compact .desktop-reminder-icon{width:32px;height:32px;min-width:32px;border-radius:9px}.desktop-reminder-setup.compact b{font-size:.7rem}.desktop-reminder-setup.compact small{font-size:.59rem;line-height:1.35}.desktop-reminder-setup.compact .btn{min-height:34px;padding:6px 10px;font-size:.64rem}
.auth-help-row{display:flex;align-items:center;justify-content:center;gap:5px;margin-top:10px;color:#8a949c;font-size:.63rem}.auth-help-row button{appearance:none;border:0;background:transparent;padding:3px;color:#80631f;font:inherit;font-weight:650;cursor:pointer}.auth-help-row button:hover{text-decoration:underline}
.auth-card-footer{margin-top:13px;padding-top:12px;font-size:.59rem}

@media(max-height:760px) and (min-width:861px){
 .auth-screen{align-items:start;padding-top:18px;padding-bottom:18px}.auth-shell{min-height:0;max-height:none}.auth-intro{min-height:560px;padding:32px 36px 27px}.auth-intro-copy{margin:auto 0 24px}.auth-intro-copy h1{font-size:2.55rem}.auth-card{padding:28px 40px 22px}.auth-card-head{margin-bottom:12px}.auth-card-head h2{font-size:1.55rem}.auth-mode-tabs{margin-bottom:10px}.auth-card .field-label{margin-top:8px}.auth-card .text-input{min-height:42px}.auth-submit{min-height:43px;margin-top:11px}.desktop-reminder-setup.compact{margin-top:9px}
}
@media(max-width:860px){
 .auth-screen{padding:10px;background:linear-gradient(145deg,#17232d 0%,#0c131a 100%)}
 .auth-shell{display:block;max-width:600px;min-height:0;max-height:none;border-radius:22px}
 .auth-intro{display:none}
 .auth-card{border-radius:22px;padding:25px 22px 20px;overflow:visible}
 .auth-mobile-brand{display:flex;margin-bottom:18px}.auth-card-head{margin-bottom:15px}.auth-card-head h2{font-size:1.5rem}.auth-service-name{font-size:.66rem}
 .login-user-meta{grid-template-columns:minmax(0,1fr) auto;gap:6px}.auth-state-badge{grid-column:2}.auth-role-badge{grid-column:2;grid-row:1}
}
@media(max-width:480px){
 .auth-screen{padding:0;display:block;background:#fff}
 .auth-shell{width:100%;max-width:none;border:0;border-radius:0;box-shadow:none}
 .auth-card{min-height:100dvh;border-radius:0;padding:20px 16px 18px}
 .auth-mobile-brand{margin-bottom:16px}.auth-card-head h2{font-size:1.42rem}.auth-kicker{font-size:.58rem}.auth-service-name{padding:6px 9px}
 .auth-mode-tabs{gap:3px}.auth-mode-tab{min-height:40px;padding:7px 6px;font-size:.7rem}
 .login-user-meta{grid-template-columns:1fr auto;padding:8px}.login-user-meta small{max-width:220px}.auth-role-badge{display:none}
 .desktop-reminder-setup.compact{grid-template-columns:1fr!important}.desktop-reminder-setup.compact .desktop-reminder-setup-copy{min-width:0}.desktop-reminder-setup.compact .btn{width:100%}
 .auth-help-row{flex-wrap:wrap}.auth-card-footer{margin-top:auto}
}


/* v2.5.2 — stabilan tekst prijave / prve aktivacije */
.auth-lead{min-height:1.35em;color:#687782!important;line-height:1.45}
.auth-mode-info{display:grid;gap:3px;margin:-3px 0 10px;padding:9px 11px;border:1px solid #e1e7eb;border-left:3px solid #7a8c99;border-radius:10px;background:#f8fafb}
.auth-mode-info[hidden]{display:none!important}
.auth-mode-info strong{color:#2d3d49;font-size:.68rem;font-weight:650}
.auth-mode-info span{color:#6f7b84;font-size:.63rem;line-height:1.45}
.auth-mode-info.activation{border-color:#e8dab5;border-left-color:#b58b2f;background:#fffaf0}
.auth-mode-info.activation strong{color:#75591c}
.auth-mode-info.activation span{color:#746852}
@media(max-width:480px){.auth-lead{font-size:.72rem!important}.auth-mode-info{margin-bottom:8px;padding:8px 9px}.auth-mode-info span{font-size:.61rem}}
\n\n/* v2.5.3 - login tab text visibility fix */
.auth-mode-tabs .auth-mode-tab,
.auth-mode-tabs .auth-mode-tab:not(.active){
  color:#52616d!important;
  -webkit-text-fill-color:#52616d!important;
  opacity:1!important;
  visibility:visible!important;
  text-shadow:none!important;
}
.auth-mode-tabs .auth-mode-tab.active{
  color:#0f2d47!important;
  -webkit-text-fill-color:#0f2d47!important;
  opacity:1!important;
  visibility:visible!important;
}
.auth-mode-tabs .auth-mode-tab:focus-visible{
  outline:2px solid rgba(15,45,71,.28)!important;
  outline-offset:2px!important;
}


/* v2.5.4 - login tabs width stability fix */
.auth-mode-tabs{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
  align-items:stretch!important;
}
.auth-mode-tabs .auth-mode-tab{
  width:100%!important;
  min-width:0!important;
  flex:0 0 auto!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
@media(max-width:480px){
  .auth-mode-tabs{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important}
  .auth-mode-tabs .auth-mode-tab{font-size:.72rem!important;padding:8px 6px!important}
}


/* v2.5.5 - potpuno zaključan lijevi login panel */
@media(min-width:861px){\n  .auth-shell{\n    width:min(1180px,calc(100vw - 40px))!important;\n    grid-template-columns:540px minmax(0,1fr)!important;\n    height:min(800px,calc(100vh - 56px))!important;\n    min-height:0!important;\n    max-height:none!important;\n    align-items:stretch!important;\n  }\n  .auth-intro{\n    width:540px!important;\n    min-width:540px!important;\n    height:100%!important;\n    min-height:0!important;\n    box-sizing:border-box!important;\n    overflow:hidden!important;\n    flex:none!important;\n  }\n  .auth-intro-copy{\n    width:100%!important;\n    max-width:none!important;\n    flex:0 0 auto!important;\n  }\n  .auth-intro-copy h1{\n    width:100%!important;\n    max-width:none!important;\n  }\n  .auth-trust-list,.auth-security-note,.auth-brand-row{flex:0 0 auto!important}\n  .auth-card{\n    min-width:0!important;\n    height:100%!important;\n    max-height:100%!important;\n    overflow-y:auto!important;\n    overflow-x:hidden!important;\n    overscroll-behavior:contain!important;\n  }\n}\n@media(max-height:760px) and (min-width:861px){\n  .auth-shell{height:calc(100vh - 36px)!important;grid-template-columns:520px minmax(0,1fr)!important}\n  .auth-intro{width:520px!important;min-width:520px!important}\n}\n

/* v2.5.6 - podignut sadržaj lijevog login panela */
@media(min-width:861px){
  .auth-intro{justify-content:flex-start!important;}
  .auth-intro-copy{
    margin:95px 0 22px!important;
  }
  .auth-trust-list{
    margin-top:0!important;
  }
}
@media(max-height:760px) and (min-width:861px){
  .auth-intro-copy{margin:48px 0 18px!important;}
}


/* v2.5.7 - fiksna pozicija lijevog sadržaja + privatniji javni login */
@media(min-width:861px){
  .auth-intro{position:relative!important;display:block!important;padding:42px!important;}
  .auth-brand-row{position:absolute!important;top:36px!important;left:42px!important;right:42px!important;}
  .auth-intro-copy{position:absolute!important;top:205px!important;left:42px!important;right:42px!important;width:auto!important;margin:0!important;}
  .auth-trust-list{position:absolute!important;top:470px!important;left:42px!important;right:42px!important;width:auto!important;margin:0!important;}
  .auth-security-note{position:absolute!important;left:42px!important;right:42px!important;bottom:24px!important;margin:0!important;}
  .login-user-meta{grid-template-columns:minmax(0,1fr) auto!important;}
  .login-user-meta .auth-role-badge{display:none!important;}
}
@media(max-height:760px) and (min-width:861px){
  .auth-brand-row{top:28px!important;left:36px!important;right:36px!important;}
  .auth-intro-copy{top:155px!important;left:36px!important;right:36px!important;}
  .auth-trust-list{top:395px!important;left:36px!important;right:36px!important;}
  .auth-security-note{left:36px!important;right:36px!important;bottom:18px!important;}
}


/* v2.5.8 — javni login bez imenika + stabilna vertikalna pozicija */
@media(min-width:861px){
  .auth-screen{
    place-items:start center!important;
    align-items:start!important;
    justify-items:center!important;
    overflow:hidden!important;
    padding:86px 20px 28px!important;
  }
  .auth-shell{
    margin:0!important;
    align-self:start!important;
    height:calc(100dvh - 114px)!important;
    min-height:620px!important;
    max-height:760px!important;
  }
  .auth-intro-copy{top:205px!important;}
  .auth-trust-list{top:465px!important;}
}
@media(max-height:820px) and (min-width:861px){
  .auth-screen{padding-top:28px!important;padding-bottom:20px!important;}
  .auth-shell{height:calc(100dvh - 48px)!important;min-height:0!important;max-height:none!important;}
  .auth-intro-copy{top:165px!important;}
  .auth-trust-list{top:405px!important;}
}
.auth-employee-select{font-weight:500!important;color:#263847!important;}
#loginIdentityWrap[hidden]{display:none!important;}


/* v2.5.9 — jedna stabilna pozicija lijevog sadržaja */
@media (min-width:861px){
  .auth-intro-copy{
    position:absolute!important;
    top:220px!important;
    left:42px!important;
    right:42px!important;
    width:auto!important;
    margin:0!important;
    transform:none!important;
  }
  .auth-trust-list{
    position:absolute!important;
    top:485px!important;
    left:42px!important;
    right:42px!important;
    width:auto!important;
    margin:0!important;
    transform:none!important;
  }
}


/* v2.5.10 - razmak ispod opisa na lijevom login panelu */
@media (min-width:861px){
  .auth-trust-list{
    top:520px!important;
  }
}
@media (max-height:820px) and (min-width:861px){
  .auth-trust-list{
    top:440px!important;
  }
}


/* v2.5.11 - pojednostavljena prva aktivacija */
.manual-activation-choice{
  margin:4px 0 8px;
  padding:14px;
  border:1px solid #e4e9ed;
  border-radius:12px;
  background:#f8fafb;
  text-align:center;
}
.manual-activation-choice[hidden],#authCredentialFields[hidden]{display:none!important}
.manual-activation-choice p{margin:0 0 10px;color:#6d7982;font-size:.7rem;line-height:1.45}
.manual-activation-choice .btn{margin:0}
#authCredentialFields{display:block}


/* v2.6.0 — administratorski dodijeljen pristupni PIN */
.admin-pin-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center}
.admin-pin-row .btn{min-height:46px;white-space:nowrap}
@media(max-width:640px){.admin-pin-row{grid-template-columns:1fr}.admin-pin-row .btn{width:100%}}


/* v2.7.0 – sigurnost i stabilnost */
.security-health-card{margin:16px 0;padding:15px;border:1px solid #dfe6eb;border-radius:14px;background:#f8fafb}
.security-health-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:12px}
.security-health-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.security-health-item{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 11px;border:1px solid #e0e6ea;border-radius:10px;background:#fff;font-size:.68rem}
.security-health-item span{color:#6b7881}.security-health-item b{font-weight:650;color:#315d45}.security-health-item.warn b{color:#9a5d20}
@media(max-width:600px){.security-health-head{align-items:flex-start;flex-direction:column}.security-health-grid{grid-template-columns:1fr}.security-health-head .btn{width:100%}}

/* v2.8.0 – Mobilna provjera lokacije */
.work-location-admin-card{margin:16px 0;padding:15px 16px;border:1px solid #dbe2e8;border-radius:14px;background:#f8fafb}
.work-location-head{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;margin-bottom:12px}
.work-location-admin-card>.field-label{display:block;margin:10px 0 6px}
.location-inline-fields{display:grid;grid-template-columns:minmax(150px,220px) auto;gap:12px;align-items:end;margin-top:10px}
.location-inline-fields label{display:flex;flex-direction:column;gap:6px;font-size:.76rem;font-weight:700;color:#53606b}
.location-state{margin-top:11px;padding:10px 12px;border-radius:10px;background:#fff;border:1px solid #e4e9ed;font-size:.79rem;line-height:1.45}
@media (max-width:700px){.location-inline-fields{grid-template-columns:1fr}.location-inline-fields .btn{width:100%}}


/* v1.0.2 - HL Dizajn premium theme */
:root{
  --bg:#0b1218;
  --surface:#ffffff;
  --surface2:#f7f7f3;
  --ink:#17212b;
  --muted:#667085;
  --navy:#101d29;
  --navy2:#162535;
  --gold:#c7a14e;
  --gold-dark:#9d7a2f;
  --gold-soft:#f7f0df;
  --line:#e5e7eb;
  --shadow:0 24px 60px rgba(7,13,20,.18);
  --r:22px;
}
html,body{background:radial-gradient(circle at top left,#17314a 0,#0e1d2c 34%,#091019 100%)!important;}
body{color:var(--ink)!important;}
.hler-potpisna-fullpage body,.hler-potpisna-fullpage{background:radial-gradient(circle at top left,#17314a 0,#0e1d2c 34%,#091019 100%)!important;}

.auth-screen{background:radial-gradient(circle at top left,#17314a 0,#0e1d2c 34%,#091019 100%)!important;padding:30px 20px;}
.auth-shell{width:min(1220px,100%);min-height:min(78vh,860px);display:grid;grid-template-columns:minmax(360px,1fr) minmax(420px,520px);background:rgba(13,23,35,.48);border:1px solid rgba(199,161,78,.18);border-radius:30px;overflow:hidden;box-shadow:0 40px 120px rgba(0,0,0,.32);backdrop-filter:blur(16px);}
.auth-intro{position:relative;padding:34px 34px 24px;color:#f4f7fb;background:linear-gradient(180deg,rgba(14,25,38,.82),rgba(14,25,38,.72));}
.auth-intro:after{content:"";position:absolute;right:-90px;bottom:-120px;width:360px;height:360px;border:1px solid rgba(199,161,78,.12);border-radius:50%;}
.auth-intro:before{content:"";position:absolute;right:30px;bottom:-60px;width:240px;height:240px;border:1px solid rgba(199,161,78,.08);border-radius:50%;}
.auth-card{width:100%;max-width:none;border-radius:0;padding:38px 38px 24px;border-top:0;box-shadow:none;background:#f8f8f6!important;}
.auth-brand-row,.auth-mobile-brand{display:flex;align-items:center;gap:14px;}
.auth-brand-name{display:block;color:#fff;font-weight:900;letter-spacing:.08em;text-transform:none;font-size:1.05rem;}
.auth-brand-sub{display:block;color:#aab6c4;font-size:.8rem;margin-top:3px;}
.auth-intro-copy h1{font-family:Georgia,"Times New Roman",serif;color:#fff;font-size:clamp(2.3rem,4.4vw,4.2rem);line-height:.98;letter-spacing:-.04em;margin:10px 0 18px;}
.auth-intro-copy p{max-width:34rem;color:#d4dce5;font-size:1.03rem;line-height:1.7;}
.eyebrow.light{color:var(--gold)!important;}
.auth-trust-list>div{display:flex;align-items:center;gap:12px;padding:13px 14px;border-radius:16px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.08);margin-top:10px;}
.trust-icon{width:34px;height:34px;display:grid;place-items:center;border-radius:11px;background:rgba(199,161,78,.14);border:1px solid rgba(199,161,78,.2);color:var(--gold);font-weight:900;}
.auth-security-note{margin-top:20px;color:#91a0b0;font-size:.8rem;}
.brand-mark,.brand-mark.big{background:transparent!important;color:var(--gold)!important;border:1px solid rgba(199,161,78,.55);box-shadow:none!important;}
.auth-kicker{display:inline-block;margin-bottom:8px;color:var(--gold-dark);font-size:.72rem;font-weight:900;letter-spacing:.14em;text-transform:uppercase;}
.auth-card-head h2{font-family:Georgia,"Times New Roman",serif;font-size:3rem;line-height:1;letter-spacing:-.045em;margin:6px 0 12px;color:#1b2430;}
.auth-service-name{background:#f6f2e6;border-color:#eadcb6;color:#5a4720;}
.auth-mode-info,.desktop-reminder-setup,.notice.info{background:#f3f6fb;border:1px solid #d9e1ed;border-radius:16px;}
.text-input,select.text-input{min-height:52px;padding:12px 15px;border-radius:14px;border:1px solid #d6dbe3;background:#fff;box-shadow:none;transition:.16s ease;}
.text-input:focus,select.text-input:focus{outline:none;border-color:#c7a14e;box-shadow:0 0 0 4px rgba(199,161,78,.14);}
.btn{border-radius:14px;font-weight:900;}
.btn.primary{background:#243547!important;color:#fff!important;border:1px solid #243547!important;}
.btn.primary:hover{background:#1a2937!important;}
.btn.secondary,.btn.ghost{background:#fff!important;color:#243547!important;border:1px solid #d5dbe3!important;}
.btn.secondary:hover,.btn.ghost:hover{border-color:#c7a14e!important;color:#111827!important;}
.auth-submit{min-height:54px;font-size:1rem;}
.auth-card-footer{margin-top:16px;color:#8b96a3;font-size:.84rem;text-align:center;}

.app-header{width:min(1440px,calc(100% - 32px));margin:18px auto 0;border:1px solid rgba(199,161,78,.14);border-bottom:0;background:rgba(14,25,38,.88)!important;border-radius:24px 24px 0 0;box-shadow:0 20px 60px rgba(0,0,0,.18);}
.brand h1,.brand-overline{color:#fff!important;}
.brand-overline{display:block;font-size:.74rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:var(--gold)!important;}
.brand-copy p{color:#aeb8c4!important;}
.header-btn{border-color:#314355!important;}
.header-btn:hover{background:#1b2b39!important;}
.user-chip{background:#fff;color:#1f2937;}
.sync-badge.online{background:rgba(199,161,78,.14)!important;color:#f5dd96!important;border:1px solid rgba(199,161,78,.28)!important;}
.sync-badge.offline{background:rgba(180,35,24,.14)!important;color:#fecaca!important;border:1px solid rgba(248,113,113,.26)!important;}

.app-shell{width:min(1440px,calc(100% - 32px));margin:0 auto 40px;padding:0 0 24px;background:linear-gradient(180deg,rgba(255,255,255,.02),rgba(255,255,255,.01));border:1px solid rgba(199,161,78,.14);border-top:0;border-radius:0 0 28px 28px;box-shadow:0 36px 100px rgba(0,0,0,.22);backdrop-filter:blur(8px);}
.service-banner{margin:22px 20px 14px;padding:18px 20px;border:1px solid rgba(199,161,78,.18);border-left:4px solid var(--gold);border-radius:18px;background:linear-gradient(145deg,#fff,#f7f8fb);}
.service-banner-kicker{color:var(--gold-dark)!important;font-size:.64rem;letter-spacing:.14em;}
.service-banner strong{font-family:Georgia,"Times New Roman",serif;font-size:1.28rem;color:#17212b;}
.panel{background:#fbfbf9;border:1px solid rgba(204,210,218,.9);border-radius:22px;box-shadow:0 14px 36px rgba(15,23,42,.07);margin-left:20px;margin-right:20px;}
.mobile-push-banner,.attendance-reminder{margin:0 20px 14px;border-radius:20px;}
.mobile-push-banner{background:#f8f8f6;border:1px solid rgba(199,161,78,.18);}
.attendance-reminder{background:linear-gradient(135deg,#fffdf7,#f7f9fc);border:1px solid rgba(199,161,78,.18);}
.attendance-reminder-mark,.mobile-push-banner-icon{background:#243547;color:#fff;}
.app-nav-panel{padding:8px 8px 10px;}
.nav-label{padding:8px 12px 0;color:#8d6c25;font-size:.68rem;font-weight:900;letter-spacing:.13em;text-transform:uppercase;}
.view-tabs{gap:8px;}
.view-tab{min-height:46px;border-radius:14px;background:#f4f6f9;color:#445266;border:1px solid transparent;}
.view-tab.active{background:#243547!important;color:#fff!important;box-shadow:none;position:relative;}
.view-tab.active:after{content:"";position:absolute;left:14px;right:14px;bottom:6px;height:3px;border-radius:999px;background:var(--gold);}
.period-toolbar{padding:18px 18px 18px 20px;background:linear-gradient(180deg,#fff,#fbfbf9);}
.period-toolbar:before{width:4px;background:linear-gradient(180deg,var(--gold),#e2c16f);}
.period-kicker,.stat-label{color:#94732a!important;font-size:.68rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase;}
.period-title-wrap h2{font-family:Georgia,"Times New Roman",serif;color:#17212b;}
.stats-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:14px 20px 0;}
.stats-strip>article,.stat-card{padding:18px 18px 16px;border-radius:18px;background:linear-gradient(180deg,#fff,#fafbfc);border:1px solid #e4e9f0;box-shadow:0 8px 24px rgba(15,23,42,.05);}
.stat-card strong{font-size:1.9rem;color:#17212b;font-family:Georgia,"Times New Roman",serif;}
.stat-card small{display:block;margin-top:4px;color:#667085;}
.stat-card.success{border-top:3px solid #16a34a;}
.stat-card.warning{border-top:3px solid var(--gold);}
.content-panel,.holiday-panel{overflow:hidden;}
.content-head{padding:20px 22px 16px;background:linear-gradient(180deg,#fff,#fbfbf9);}
.content-head h2,.holiday-copy h2{font-family:Georgia,"Times New Roman",serif;color:#17212b;font-size:1.45rem;}
.last-refresh{color:#7b8794;}
.table-scroll{padding:0 0 6px;}
.data-table{border-collapse:separate;border-spacing:0;min-width:920px;background:#fff;}
.data-table thead th{background:#243547!important;color:#fff;border-color:#32485e;}
.data-table .sticky-col{background:#fffdf9!important;}
.data-table th,.data-table td{border-right:1px solid #d7dee7;border-bottom:1px solid #d7dee7;}
.data-table tbody tr:nth-child(even) td{background:#fcfcfd;}
.record-cell:hover{outline:2px solid rgba(199,161,78,.42);background:#fffaf0!important;}
.status-code{border:1px solid #e4e7ec;background:#f8fafc;color:#344054;}
.day-banner{background:linear-gradient(180deg,#fff,#fbfbf9);border-radius:18px;border:1px solid #e4e8ee;}
.person-card,.month-card{border-radius:18px;border:1px solid #e1e6ec;background:linear-gradient(180deg,#fff,#fafbfc);}
.avatar{background:#243547;}
.holiday-chip{background:#fff;border:1px solid #e5e7eb;}
.modal{background:rgba(6,12,18,.42);backdrop-filter:blur(4px);}
.modal-card{border-radius:24px;border:1px solid #e4e8ee;background:#fafaf8;box-shadow:0 24px 80px rgba(0,0,0,.18);}
.modal-close{background:#fff;border:1px solid #e5e7eb;border-radius:12px;}
.record-option{border-radius:16px;border:1px solid #e4e8ee;background:#fff;}
.record-option.primary-check-option{background:linear-gradient(180deg,#243547,#1d2c3a);color:#fff;border-color:#243547;}
.option-icon{background:rgba(199,161,78,.15);color:var(--gold);}
.settings-card .notice.info{background:#f6f9fc;}
.work-location-admin-card,.push-admin-card,.security-health-card{background:#fff;border:1px solid #e3e8ee;border-radius:18px;padding:16px;}
.scope-panel{background:linear-gradient(180deg,#fff,#fbfbf9);}
.unit-picker-btn{border-radius:16px;border:1px solid #e1e6ee;background:#fff;}
.unit-picker-menu{border-radius:18px;border:1px solid #dfe6ed;box-shadow:0 20px 50px rgba(15,23,42,.12);}
.employee-admin-row,.employee-row,.absence-row{border-color:#e8ecf2;}

@media(max-width:1024px){
  .auth-shell{grid-template-columns:1fr;max-width:840px;}
  .app-header,.app-shell{width:min(100%,calc(100% - 16px));}
  .panel,.service-banner,.mobile-push-banner,.attendance-reminder{margin-left:12px;margin-right:12px;}
  .stats-strip{margin-left:12px;margin-right:12px;grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media(max-width:640px){
  .auth-screen{padding:10px 8px;}
  .auth-shell{border-radius:22px;}
  .auth-intro{padding:22px 18px 18px;}
  .auth-card{padding:24px 18px 18px;}
  .auth-card-head h2{font-size:2.15rem;}
  .auth-intro-copy h1{font-size:2.55rem;}
  .app-header{width:calc(100% - 10px);border-radius:18px 18px 0 0;margin-top:8px;padding:12px;}
  .app-shell{width:calc(100% - 10px);border-radius:0 0 18px 18px;padding-bottom:16px;}
  .service-banner,.panel,.mobile-push-banner,.attendance-reminder{margin-left:8px;margin-right:8px;}
  .stats-strip{grid-template-columns:1fr;margin-left:8px;margin-right:8px;}
  .content-head{padding:16px 16px 12px;}
  .view-tab{font-size:.74rem;}
}


/* HL ERV 1.0.7 — correction of conflicting mobile auth layouts.
   Use a single native-scrolling mobile layout; desktop CSS stays unchanged. */
@media screen and (max-width: 860px) {
  html { background: #0c0e13 !important; }
  html body { background: #0c0e13 !important; margin:0 !important; }
  #authScreen.auth-screen {
    position: relative !important;
    inset: auto !important;
    display: block !important;
    width: 100% !important;
    min-height: 100dvh !important;
    height: auto !important;
    overflow: visible !important;
    padding: 20px 14px calc(30px + env(safe-area-inset-bottom, 0px)) !important;
    background: radial-gradient(ellipse at 15% 0%,#2e101a 0%,#11131b 47%,#090b10 100%) !important;
  }
  #authScreen .auth-shell {
    display: block !important;
    width: 100% !important;
    max-width: 480px !important;
    min-height: auto !important;
    max-height: none !important;
    margin: 0 auto !important;
    border: 1px solid rgba(255,255,255,.09) !important;
    border-radius: 22px !important;
    overflow: hidden !important;
    background: #fff !important;
    box-shadow: 0 20px 64px rgba(0,0,0,.28) !important;
  }
  #authScreen .auth-intro { display: none !important; }
  #authScreen .auth-card {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    min-height: auto !important;
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
    margin: 0 !important;
    padding: 22px 20px 24px !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: #fff !important;
    box-shadow: none !important;
  }
  #authScreen .auth-mobile-brand {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    margin: 0 0 17px !important;
    font-size: 13px !important;
    letter-spacing: 0 !important;
    font-weight: 750 !important;
  }
  #authScreen .auth-mobile-brand .brand-mark {
    display:grid !important;
    place-items:center !important;
    width: 40px !important;
    height: 40px !important;
    flex: 0 0 40px !important;
    background: #ed1c24 !important;
    border: 0 !important;
    border-radius: 12px !important;
    color: #fff !important;
  }
  #authScreen .auth-card-head { margin: 0 0 12px !important; }
  #authScreen .auth-kicker {
    display: block !important;
    margin: 0 0 8px !important;
    font-size: 10px !important;
    letter-spacing: .10em !important;
    line-height: 1.35 !important;
    color: #ed1c24 !important;
  }
  #authScreen .auth-card-head h2 {
    font-family: inherit !important;
    font-size: clamp(25px, 7vw, 31px) !important;
    line-height: 1.13 !important;
    margin: 0 0 10px !important;
    letter-spacing: -.035em !important;
    font-weight: 800 !important;
    color: #16191f !important;
  }
  #authScreen .auth-service-name {
    display: inline-flex !important;
    min-height: auto !important;
    margin: 0 0 9px !important;
    padding: 5px 10px !important;
    font-size: 11px !important;
    line-height: 1.3 !important;
    border: 1px solid #fad8da !important;
    border-radius: 999px !important;
    color: #a21920 !important;
    background: #fff5f5 !important;
  }
  #authScreen .auth-lead {
    margin: 0 0 11px !important;
    min-height:0 !important;
    font-size: 12px !important;
    line-height: 1.45 !important;
  }
  #authScreen .auth-card .notice.info {
    margin: 9px 0 12px !important;
    padding: 10px 12px !important;
    border: 1px solid #e3e8ed !important;
    border-radius: 12px !important;
    font-size: 12px !important;
    line-height: 1.45 !important;
    background:#f5f7f9 !important;
  }
  #authScreen .auth-card .field-label {
    display:block !important;
    margin: 11px 0 5px !important;
    font-size: 11px !important;
    line-height: 1.3 !important;
    letter-spacing: .06em !important;
    color: #344054 !important;
  }
  #authScreen .auth-card .text-input {
    display: block !important;
    width: 100% !important;
    min-height: 46px !important;
    padding: 10px 12px !important;
    font-size: 16px !important;
    line-height: 1.4 !important;
    border: 1px solid #d9dee5 !important;
    border-radius: 12px !important;
    background: #fff !important;
  }
  #authScreen .auth-submit {
    display:block !important;
    width:100% !important;
    min-height:48px !important;
    margin: 15px 0 0 !important;
    padding: 11px 12px !important;
    border-radius:12px !important;
    background: #ed1c24 !important;
    border-color:#ed1c24 !important;
    color:#fff !important;
    font-size:15px !important;
    font-weight:750 !important;
    box-shadow: 0 8px 20px rgba(237,28,36,.12) !important;
  }
  #authScreen .desktop-reminder-setup.compact {
    display: flex !important;
    align-items: center !important;
    flex-direction:row !important;
    gap:8px !important;
    margin: 16px 0 0 !important;
    padding: 10px !important;
    border-radius: 12px !important;
  }
  #authScreen .desktop-reminder-setup-copy {
    min-width: 0 !important;
    flex: 1 1 auto !important;
  }
  #authScreen #enableDesktopReminderBtn {
    width:auto !important;
    min-width: 58px !important;
    flex:0 0 auto !important;
    padding: 6px 9px !important;
  }
  #authScreen .auth-card-footer {
    margin: 14px 0 0 !important;
    padding-top: 12px !important;
    font-size:10px !important;
    letter-spacing:0 !important;
  }
}
@media screen and (max-width: 380px) {
  #authScreen.auth-screen {padding: 12px 10px 24px !important;}
  #authScreen .auth-card {padding:18px 15px 20px !important;}
  #authScreen .auth-card-head h2 {font-size:25px !important;}
}
@media print {
  #authScreen.auth-screen {display:none !important;}
}
