
/* ============ DESIGN TOKENS v3.93 ============ */
:root{--ui-scale:1.1;--amber:#f59e0b;--amber-d:#b45309;--amber-bg:#fff8e8;--ink:#1c1917;--muted:#6f685f;--surface:#f7f5f0;--surface-2:#fbfaf7;--card:#fff;--line:#e3ded5;--line-strong:#cdc5b8;--green:#166534;--green-bg:#ecfdf3;--red:#b91c1c;--red-bg:#fef2f2;--blue:#1d4ed8;--blue-bg:#eff6ff;--sidebar:#1c1917;--sidebar-2:#292524;--sidebar-text:#e7e5e4;--shadow:0 .4rem 1.4rem rgba(180,83,9,.07);--shadow-modal:0 1.5rem 4rem rgba(28,25,23,.24);--radius-sm:.55rem;--radius:.85rem;--radius-lg:1.15rem;color-scheme:light}
:root[data-scale="90"]{--ui-scale:.9}:root[data-scale="100"]{--ui-scale:1}:root[data-scale="110"]{--ui-scale:1.1}:root[data-scale="120"]{--ui-scale:1.2}
:root[data-theme="dark"]{--ink:#f5f5f4;--muted:#b6afa5;--surface:#11100f;--surface-2:#181614;--card:#201e1b;--line:#3d3934;--line-strong:#57514a;--amber-bg:#33250f;--green:#86efac;--green-bg:#143222;--red:#fca5a5;--red-bg:#3a1717;--blue:#93c5fd;--blue-bg:#172554;--sidebar:#0b0a09;--sidebar-2:#25221f;--sidebar-text:#f5f5f4;--shadow:0 .4rem 1.4rem rgba(0,0,0,.25);--shadow-modal:0 1.5rem 4rem rgba(0,0,0,.55);color-scheme:dark}
@media(prefers-color-scheme:dark){:root[data-theme="system"]{--ink:#f5f5f4;--muted:#b6afa5;--surface:#11100f;--surface-2:#181614;--card:#201e1b;--line:#3d3934;--line-strong:#57514a;--amber-bg:#33250f;--green:#86efac;--green-bg:#143222;--red:#fca5a5;--red-bg:#3a1717;--blue:#93c5fd;--blue-bg:#172554;--sidebar:#0b0a09;--sidebar-2:#25221f;--sidebar-text:#f5f5f4;--shadow:0 .4rem 1.4rem rgba(0,0,0,.25);--shadow-modal:0 1.5rem 4rem rgba(0,0,0,.55);color-scheme:dark}}
*{box-sizing:border-box}html{font-size:calc(16px * var(--ui-scale));font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--surface);scroll-behavior:smooth}body{margin:0;background:var(--surface);min-height:100vh}button,input,select,textarea{font:inherit;color:inherit}button{touch-action:manipulation}h1,h2{color:var(--ink);text-wrap:balance}h1{font-size:1.8rem;line-height:1.12;letter-spacing:-.035em;margin:.25rem 0}h2{font-size:1rem;letter-spacing:-.015em;margin:0}p{line-height:1.55}.muted{color:var(--muted)}.small{font-size:.78rem}.app-version-badge{font-size:.64rem;color:#c5beb6;border:1px solid #4d4741;border-radius:99px;padding:.18rem .45rem}.logo{display:flex;align-items:center;gap:.65rem;font-weight:900;font-size:1.12rem;letter-spacing:-.025em}.mark{width:2.35rem;height:2.35rem;border-radius:.7rem;background:var(--amber);color:#1c1917;display:grid;place-items:center;flex:none}
:focus:not(:focus-visible){outline:none}:focus-visible{outline:2px solid var(--amber);outline-offset:2px;border-radius:var(--radius-sm)}.btn,.nav button,.bottom-nav button,.link-btn{transition:transform .1s ease-out,background-color .15s ease-out,border-color .15s ease-out,color .15s ease-out}.btn:active,.nav button:active,.bottom-nav button:active,.link-btn:active{transform:scale(.98)}
.login{min-height:100vh;display:grid;place-items:center;padding:1.25rem;background:radial-gradient(circle at 70% 15%,rgba(245,158,11,.18),transparent 30%),var(--surface)}.login-card{width:min(26rem,100%);background:var(--card);border:1px solid var(--line);border-radius:1.35rem;padding:1.8rem;box-shadow:var(--shadow-modal)}.login h1{font-size:1.9rem;margin:1.75rem 0 .35rem}.login-card label,.dialog label{display:block;font-size:.78rem;font-weight:750;margin-top:.9rem}.field{width:100%;border:1px solid var(--line-strong);border-radius:.65rem;padding:.78rem .85rem;background:var(--card);margin-top:.35rem;min-height:3rem}.field:focus{border-color:var(--amber)}select.field{padding-right:2.2rem;line-height:1.35;background-image:linear-gradient(45deg,transparent 50%,var(--muted) 50%),linear-gradient(135deg,var(--muted) 50%,transparent 50%);background-position:calc(100% - 1rem) 52%,calc(100% - .72rem) 52%;background-size:.28rem .28rem,.28rem .28rem;background-repeat:no-repeat;appearance:none}.error,.form-error{display:none;background:var(--red-bg);color:var(--red);border-left:3px solid var(--red);padding:.7rem;border-radius:.55rem;margin-top:.75rem;font-size:.78rem}.error.show,.form-error.show{display:block}.btn{border:1px solid var(--line);background:var(--card);border-radius:.65rem;padding:.64rem .85rem;font-weight:800;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:.4rem;min-height:2.55rem}.btn:hover{border-color:var(--line-strong);background:var(--surface-2)}.btn.primary{background:var(--amber-d);border-color:var(--amber-d);color:#fff}.btn.primary:hover{background:#92400e}.btn.danger{color:var(--red);border-color:color-mix(in srgb,var(--red) 35%,var(--line))}.btn.block{width:100%}.btn:disabled{opacity:.55;cursor:not-allowed}.login .btn{width:100%;margin-top:1.2rem}
.shell{min-height:100vh;display:grid;grid-template-columns:15.5rem minmax(0,1fr)}.sidebar{background:var(--sidebar);color:var(--sidebar-text);padding:1.35rem .9rem;position:sticky;top:0;height:100vh;z-index:100;display:flex;flex-direction:column;overflow:hidden}.sidebar .logo{padding:0 .6rem 1rem;flex:none}.nav{flex:1;overflow:auto;padding-bottom:.75rem;scrollbar-width:thin}.nav-group{font-size:.68rem;text-transform:uppercase;letter-spacing:.12em;color:#a8a29e;padding:1rem .7rem .4rem;font-weight:900}.nav button{width:100%;border:0;background:transparent;color:#d6d3d1;padding:.68rem .75rem;border-radius:.58rem;text-align:left;font-weight:700;cursor:pointer;margin:.1rem 0}.nav button:hover,.nav button.active{background:var(--sidebar-2);color:#fff}.nav button.active{box-shadow:inset 3px 0 var(--amber)}.profile{flex:none;border-top:1px solid #44403c;padding:.85rem .5rem 0;font-size:.78rem;background:var(--sidebar)}.profile strong{display:block}.profile button{border:0;background:none;color:#fbbf24;padding:.45rem 0;cursor:pointer}.main{min-width:0}.topbar{height:4.3rem;background:color-mix(in srgb,var(--surface) 88%,transparent);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 1.6rem;position:sticky;top:0;z-index:90}.top-status{display:flex;align-items:center;gap:.5rem}.mobile-menu{display:none}.content{padding:1.65rem;max-width:94rem;margin:auto}.page-head{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start;margin-bottom:1.35rem}.eyebrow{font-size:.7rem;font-weight:900;color:var(--amber-d);text-transform:uppercase;letter-spacing:.1em}.grid{display:grid;gap:.85rem}.kpis{grid-template-columns:repeat(4,minmax(0,1fr))}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:1.1rem;box-shadow:inset 0 1px 0 color-mix(in srgb,#fff 35%,transparent)}.kpi{background:var(--surface-2);border-color:var(--line);box-shadow:var(--shadow)}.kpi strong{font-size:1.6rem;display:block;letter-spacing:-.04em;font-variant-numeric:tabular-nums}.kpi span{font-size:.76rem;color:var(--muted)}.hero{background:linear-gradient(135deg,var(--sidebar),#3b3021);color:#fff;border:0}.hero strong{font-size:2.4rem;color:#fff}.hero .muted{color:#c7c2ba}.section{display:flex;align-items:center;justify-content:space-between;gap:.8rem;margin:1.5rem .1rem .65rem}.list-row{display:flex;align-items:center;justify-content:space-between;gap:.8rem;padding:.82rem 0;border-bottom:1px solid var(--line)}.list-row:last-child{border:0}.title{font-size:.86rem;font-weight:800}.meta{font-size:.74rem;color:var(--muted);margin-top:.2rem;line-height:1.45}.badge{display:inline-flex;align-items:center;gap:.3rem;border-radius:99px;padding:.32rem .55rem;font-size:.68rem;font-weight:850;background:var(--green-bg);color:var(--green);border-left:2px solid currentColor}.badge.wait{background:var(--amber-bg);color:var(--amber-d)}.badge.red{background:var(--red-bg);color:var(--red)}.badge.blue{background:var(--blue-bg);color:var(--blue)}.badge.offline{background:var(--red-bg);color:var(--red)}.two{grid-template-columns:minmax(0,1.2fr) minmax(18rem,.8fr)}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}.form-grid .wide{grid-column:1/-1}
.timer{padding:1.5rem}.timer-main{text-align:center}.timer-label{font-size:.7rem;text-transform:uppercase;letter-spacing:.1em;color:var(--muted);font-weight:850}.timer-clock{font-size:3.55rem;font-weight:900;letter-spacing:-.06em;font-variant-numeric:tabular-nums;margin:.65rem 0}.segment-panel{margin-top:1rem;padding:1rem;border-radius:var(--radius);background:var(--surface-2);border:1px solid var(--line)}.segment-clock{font-size:1.5rem;font-weight:900;font-variant-numeric:tabular-nums;margin:.3rem 0}.timer-actions{display:flex;justify-content:center;gap:.55rem;flex-wrap:wrap;margin-top:1.1rem}.timeline{display:grid;gap:.5rem}.timeline-row{display:grid;grid-template-columns:5.7rem .75rem 1fr auto;gap:.6rem;align-items:center;padding:.65rem;border:1px solid var(--line);border-radius:.65rem;background:var(--surface-2)}.timeline-dot{width:.62rem;height:.62rem;border-radius:50%;background:var(--amber)}.timeline-dot.break{background:var(--blue)}.timeline-dot.unassigned{background:var(--red)}.timeline-time{font-size:.72rem;font-variant-numeric:tabular-nums;color:var(--muted)}.allocation-alert{border-left:4px solid var(--red);background:var(--red-bg)}.allocation-row{display:grid;grid-template-columns:1.2fr 1.2fr .8fr minmax(6rem,.55fr) auto;gap:.55rem;align-items:end;padding:.75rem 0;border-bottom:1px solid var(--line)}.allocation-row label{margin:0}.allocation-total{display:flex;justify-content:space-between;font-weight:850;margin-top:.9rem}.appearance-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem;margin-top:.8rem}.choice-group,.message-targets-box{display:grid;grid-template-columns:repeat(3,1fr);gap:.45rem;margin-top:.55rem}.choice{border:1px solid var(--line);background:var(--surface-2);border-radius:.65rem;padding:.75rem;cursor:pointer;text-align:center;font-weight:800;font-size:.76rem}.choice:has(input:checked){border-color:var(--amber);box-shadow:inset 0 0 0 1px var(--amber);background:var(--amber-bg)}.choice input{position:absolute;opacity:0;pointer-events:none}.scale-group{grid-template-columns:repeat(4,1fr)}
.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:var(--radius);background:var(--card)}table{width:100%;border-collapse:collapse;table-layout:fixed;min-width:45rem}th,td{display:table-cell!important;text-align:left;padding:.75rem;border-bottom:1px solid var(--line);font-size:.76rem;vertical-align:top;font-variant-numeric:tabular-nums}th{background:var(--surface-2);color:var(--muted);position:sticky;top:0;text-transform:uppercase;letter-spacing:.06em;font-size:.66rem}.calendar{display:grid;grid-template-columns:4.6rem repeat(5,minmax(8rem,1fr));min-width:54rem;user-select:none}.calendar-head,.calendar-time,.calendar-cell{border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:.65rem;background:var(--card)}.calendar-head{position:sticky;top:0;z-index:1;background:var(--surface-2)}.calendar-time{font-size:.72rem;color:var(--muted);font-variant-numeric:tabular-nums;background:var(--surface-2)}.calendar-cell{min-height:3.35rem;cursor:crosshair;color:var(--muted);text-align:left}.calendar-cell:hover,.calendar-cell.is-selecting{background:var(--amber-bg);box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--amber) 45%,transparent);color:var(--amber-d)}.empty{text-align:center;padding:2.3rem;color:var(--muted)}.empty strong{display:block;color:var(--ink);margin-bottom:.35rem}.modal{position:fixed;inset:0;background:rgba(28,25,23,.68);display:none;align-items:center;justify-content:center;padding:1.1rem;z-index:300}.modal.open{display:flex}.dialog{width:min(42rem,100%);max-height:92vh;overflow:auto;background:var(--card);border:1px solid var(--line);border-radius:var(--radius-lg);padding:1.3rem;box-shadow:var(--shadow-modal)}.dialog-head{display:flex;align-items:center;justify-content:space-between;gap:1rem}.toast{position:fixed;right:1.2rem;bottom:1.2rem;background:var(--sidebar);color:#fff;padding:.8rem 1rem;border-radius:.7rem;transform:translateY(5rem);opacity:0;transition:transform .25s ease-out,opacity .25s ease-out;z-index:500;box-shadow:var(--shadow-modal)}.toast.show{transform:none;opacity:1}.bottom-nav{display:none}.skeleton-wrap{display:grid;gap:.65rem}.skeleton{height:3.2rem;border-radius:.65rem;background:linear-gradient(90deg,var(--surface-2) 25%,var(--line) 50%,var(--surface-2) 75%);background-size:200% 100%;animation:shimmer 1.4s ease infinite}@keyframes shimmer{from{background-position:-200% 0}to{background-position:200% 0}}
@media(max-width:900px){.shell{display:block}.sidebar{position:fixed;inset:0 auto 0 0;transform:translateX(-100%);transition:transform .2s ease-out;width:15.5rem}.sidebar.open{transform:none}.mobile-menu{display:inline-flex}.content{padding:1rem .85rem 1rem}.kpis{grid-template-columns:1fr 1fr}.two{grid-template-columns:1fr}.topbar{height:3.8rem;padding:0 .75rem}.bottom-nav{display:none!important}.allocation-row{grid-template-columns:1fr 1fr}.allocation-row .allocation-remove{grid-column:1/-1}.appearance-grid{grid-template-columns:1fr}}
@media(max-width:540px){.kpis,.form-grid{grid-template-columns:1fr}.form-grid .wide{grid-column:auto}.page-head{display:block;margin-bottom:.9rem}.page-head>.btn{width:100%;margin-top:.65rem}h1{font-size:1.38rem}.topbar>strong{font-size:1.05rem}.top-status .badge{font-size:.6rem;padding:.28rem .42rem}.timer-clock{font-size:2.35rem}.card{padding:.8rem}.list-row{align-items:flex-start;flex-direction:column}.list-row>div{width:100%;min-width:0}.list-row>div:last-child{display:flex;align-items:center;justify-content:flex-start;gap:.4rem;flex-wrap:wrap}.request-actions{justify-content:flex-start}.request-actions .btn{flex:1 1 auto}.worker-request-hero{display:block}.worker-request-hero .btn,.worker-start-card .btn{width:100%;margin-top:.7rem}.timeline-row{grid-template-columns:4.7rem .65rem 1fr}.timeline-row>strong:last-child{display:none}.choice-group{grid-template-columns:1fr}.scale-group{grid-template-columns:1fr 1fr}.allocation-row{grid-template-columns:1fr}.allocation-row .allocation-remove{grid-column:auto}.dialog{padding:.9rem;border-radius:1rem}.dialog-head{gap:.5rem}.dialog-head h2{font-size:1rem}.user-day-summary{grid-template-columns:1fr 1fr}.user-day-row{grid-template-columns:4.3rem .55rem minmax(0,1fr);gap:.45rem;padding:.7rem .6rem}.user-day-row .user-day-duration{grid-column:3}.user-day-row .entry-actions{justify-content:flex-start}}
.worker-quick-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;margin-top:.8rem}.worker-quick-card{min-height:5.5rem;display:flex;align-items:center;justify-content:space-between;gap:.65rem;padding:.8rem;text-decoration:none}.worker-quick-card h3{margin:0;font-size:.95rem}.worker-quick-card p{margin:.25rem 0 0;font-size:.68rem}.worker-quick-card .btn{flex:none;min-height:2.35rem;padding:.45rem .65rem;font-size:.68rem}.worker-quick-card--add{border-left:.25rem solid var(--amber)}
@media(max-width:540px){.worker-quick-grid{gap:.55rem}.worker-quick-card{min-height:5.2rem;padding:.7rem}.worker-quick-card h3{font-size:.78rem}.worker-quick-card p{font-size:.62rem}.worker-quick-card .btn{font-size:.62rem;padding:.4rem .55rem}}
/* v0.15 — modal wpisu czasu jak w widoku kalendarza */
:root[data-scale="90"]{font-size:14.4px}:root[data-scale="100"]{font-size:16px}:root[data-scale="110"]{font-size:17.6px}:root[data-scale="120"]{font-size:19.2px}
.profile{margin-top:.85rem;padding:1rem .55rem .1rem;display:grid;gap:.55rem}.profile strong{font-size:.78rem;line-height:1.25}.profile-role{display:block;color:#a8a29e;font-size:.7rem;line-height:1.25}.profile-actions{display:flex;margin-top:.1rem}.profile .logout-btn{width:100%;min-height:2.15rem;border:1px solid #57514a;background:#292524;color:#fbbf24;border-radius:.55rem;padding:.45rem .55rem;text-align:center;font-weight:850}.profile .logout-btn:hover{background:#3a342d;color:#fde68a}.calendar-grid{display:grid;grid-template-columns:4.4rem repeat(5,minmax(10rem,1fr));min-width:62rem;user-select:none;background:var(--card)}.calendar-grid-head{position:sticky;top:0;z-index:1;background:var(--surface-2);border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:.7rem}.calendar-time-label{border-right:1px solid var(--line);border-bottom:1px solid color-mix(in srgb,var(--line) 55%,transparent);background:var(--surface-2);color:var(--muted);font-size:.66rem;font-variant-numeric:tabular-nums;padding:.12rem .45rem;min-height:1rem}.calendar-slot{border:0;border-right:1px solid var(--line);border-bottom:1px solid color-mix(in srgb,var(--line) 45%,transparent);background:var(--card);min-height:1rem;padding:0;cursor:crosshair}.calendar-slot.hour-start{border-top:1px solid var(--line)}.calendar-slot:hover,.calendar-slot.is-selecting{background:var(--amber-bg)}.calendar-slot.is-selecting{box-shadow:inset 3px 0 var(--amber),inset 0 0 0 1px color-mix(in srgb,var(--amber) 38%,transparent)}
.time-entry-dialog{width:min(45rem,100%);padding:0}.time-entry-dialog .dialog-head{padding:1.1rem 1.2rem;border-bottom:1px solid var(--line)}.time-entry-form{padding:1.15rem 1.2rem 1.2rem}.time-entry-row{display:grid;grid-template-columns:9rem minmax(0,1fr);gap:.9rem;align-items:start;padding:.7rem 0;border-bottom:1px solid var(--line)}.time-entry-row:last-of-type{border-bottom:0}.time-entry-label{font-size:.78rem;font-weight:850;color:var(--ink);padding-top:.72rem}.time-entry-time{display:grid;grid-template-columns:7.2rem 1fr 1fr 1.25rem 1.35fr;gap:.5rem;align-items:center}.duration-box{min-height:3rem;border:1px solid var(--line-strong);border-radius:.65rem;background:var(--surface-2);display:grid;place-items:center;font-weight:900;font-variant-numeric:tabular-nums}.time-sep{text-align:center;color:var(--muted);font-weight:850}.time-entry-actions{display:flex;justify-content:flex-end;gap:.55rem;padding-top:1rem}.time-entry-form textarea.field{min-height:4.2rem}.calendar-icon{display:grid;place-items:center;color:var(--muted);font-size:1.05rem}@media(max-width:720px){.time-entry-row{grid-template-columns:1fr;gap:.35rem}.time-entry-label{padding-top:0}.time-entry-time{grid-template-columns:1fr 1fr}.time-entry-time .duration-box,.time-entry-time input[type=date]{grid-column:1/-1}.time-sep,.calendar-icon{display:none}}
/* v0.16 — kalendarz tydzień/dzień, poprawiony drag i modal czasu */
.calendar-shell{display:grid;gap:.8rem}.calendar-toolbar{display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:wrap}.calendar-tools-left,.calendar-tools-right{display:flex;align-items:center;gap:.45rem;flex-wrap:wrap}.segmented{display:inline-flex;border:1px solid var(--line);border-radius:.65rem;overflow:hidden;background:var(--card)}.segmented button{border:0;border-right:1px solid var(--line);background:transparent;min-height:2.35rem;padding:.55rem .8rem;font-weight:850;cursor:pointer}.segmented button:last-child{border-right:0}.segmented button.active{background:var(--surface-2);box-shadow:inset 0 -2px var(--amber);color:var(--ink)}.calendar-range-wrap{position:relative}.calendar-range-btn{min-width:15.8rem;justify-content:space-between;font-variant-numeric:tabular-nums}.calendar-picker{position:absolute;right:0;top:calc(100% + .45rem);width:min(36rem,calc(100vw - 2rem));display:grid;grid-template-columns:10rem 1fr;background:var(--card);border:1px solid var(--line);border-radius:.8rem;box-shadow:var(--shadow-modal);z-index:210;overflow:hidden}.calendar-quick{display:grid;align-content:start;border-right:1px solid var(--line);background:var(--surface-2);padding:.45rem}.calendar-quick button,.month-day{border:0;background:transparent;text-align:left;border-radius:.5rem;padding:.55rem .65rem;font-weight:800;cursor:pointer}.calendar-quick button:hover,.month-day:hover{background:var(--amber-bg)}.calendar-quick button.active{background:var(--amber-d);color:#fff}.month-picker{padding:.75rem}.month-title{display:flex;align-items:center;justify-content:space-between;font-weight:900;margin-bottom:.45rem}.month-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:.12rem}.month-dow{font-size:.65rem;color:var(--muted);font-weight:850;text-align:center;padding:.35rem}.month-day{text-align:center;font-variant-numeric:tabular-nums;padding:.42rem}.month-day.out{opacity:.35}.month-day.today{box-shadow:inset 0 0 0 1px var(--amber)}.month-day.selected{background:var(--amber-d);color:#fff}.calendar-wrap{border-radius:.85rem}.calendar-grid{display:grid;user-select:none;background:var(--card);min-width:78rem}.calendar-grid-day{min-width:42rem}.calendar-grid-head{position:sticky;top:0;z-index:1;background:var(--surface-2);border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:.7rem .75rem}.calendar-grid-head strong{display:block;letter-spacing:-.01em}.calendar-day-total{display:block;margin-top:.18rem;color:var(--muted);font-size:.68rem;font-weight:700;font-variant-numeric:tabular-nums}.calendar-time-label{border-right:1px solid var(--line);border-bottom:1px solid color-mix(in srgb,var(--line) 55%,transparent);background:var(--surface-2);color:var(--muted);font-size:.66rem;font-variant-numeric:tabular-nums;padding:.08rem .45rem;min-height:.95rem}.calendar-slot{border:0;border-right:1px solid var(--line);border-bottom:1px solid color-mix(in srgb,var(--line) 45%,transparent);background:var(--card);min-height:.95rem;padding:0;cursor:crosshair;touch-action:none}.calendar-slot.hour-start{border-top:1px solid var(--line)}.calendar-slot:hover,.calendar-slot.is-selecting{background:var(--amber-bg)}.calendar-slot.is-selecting{box-shadow:inset 3px 0 var(--amber),inset 0 0 0 1px color-mix(in srgb,var(--amber) 38%,transparent)}.time-field{min-width:6.4rem;text-align:center;font-variant-numeric:tabular-nums}.date-field{min-width:10.8rem;font-variant-numeric:tabular-nums}.time-entry-time{grid-template-columns:7.2rem 6.8rem 1.2rem 6.8rem minmax(10.8rem,1fr);align-items:center}.time-entry-time .field{margin-top:0}.time-entry-time .duration-box{min-width:7.2rem}.time-entry-time .date-field{justify-self:stretch}.calendar-icon{display:none}.profile{padding-bottom:.35rem}.profile .logout-btn{margin-top:.1rem}@media(max-width:900px){.calendar-picker{left:0;right:auto;grid-template-columns:1fr}.calendar-quick{border-right:0;border-bottom:1px solid var(--line)}}@media(max-width:720px){.time-entry-time{grid-template-columns:1fr 1fr}.time-entry-time .duration-box,.time-entry-time .date-field{grid-column:1/-1}.time-sep{display:none}.calendar-range-btn{min-width:100%}.calendar-tools-right,.calendar-range-wrap{width:100%}}
/* v0.17 — zgłoszenia i bezpieczne odstępy formularzy */
.ref-form{display:grid;gap:.8rem}.ref-form label{margin-top:0}.ref-form .btn{margin-top:.15rem}.request-hero{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1rem;align-items:center;border-left:4px solid var(--amber);background:linear-gradient(135deg,var(--amber-bg),var(--card))}.request-no{font-weight:950;font-variant-numeric:tabular-nums;letter-spacing:-.02em}.request-list .list-row{align-items:flex-start}.request-meta{display:flex;gap:.35rem;flex-wrap:wrap;margin-top:.35rem}.request-pill{display:inline-flex;border:1px solid var(--line);border-radius:99px;padding:.18rem .45rem;font-size:.68rem;color:var(--muted);background:var(--surface-2)}
/* v0.19 — większe rozliczenie czasu, live timer i wpisy w kalendarzu */
.allocation-row{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:.8rem;padding:1rem 0}.allocation-row label{min-width:0}.allocation-row label:last-child{grid-column:1/-1}.allocation-row textarea.field{min-height:5.4rem;resize:vertical}.allocation-remove{grid-column:1/-1;justify-self:end;min-width:7.5rem}.time-entry-dialog{width:min(56rem,100%)}.time-entry-row{grid-template-columns:7.5rem minmax(0,1fr);gap:1rem}.time-entry-form textarea.field{min-height:6.2rem;resize:vertical}.time-entry-time{grid-template-columns:8rem 7.4rem 1.2rem 7.4rem minmax(11.5rem,1fr)}.duration-box{min-width:8rem}.calendar-grid{grid-template-rows:auto repeat(64,.95rem);position:relative}.calendar-entry{z-index:2;align-self:stretch;margin:.08rem .18rem;border-left:3px solid var(--amber);border-radius:.45rem;background:color-mix(in srgb,var(--amber-bg) 82%,var(--card));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--amber) 30%,transparent);padding:.18rem .35rem;overflow:hidden;pointer-events:none;font-size:.66rem;line-height:1.2}.calendar-entry strong{display:block;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.calendar-entry span{display:block;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-variant-numeric:tabular-nums}.calendar-entry .calendar-material-banner{display:block;color:var(--amber-d);font-size:.58rem;font-weight:900;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.calendar-material-note{margin:.55rem 0;padding:.6rem .75rem;border:1px solid color-mix(in srgb,var(--amber) 35%,var(--line));border-left:3px solid var(--amber);border-radius:.65rem;background:var(--amber-bg);color:var(--amber-d);font-size:.78rem;font-weight:800}.calendar-material-existing{display:grid;gap:.35rem;margin:.65rem 0;padding:.75rem;border:1px solid var(--line);border-radius:.65rem;background:var(--surface,#faf9f6);font-size:.78rem}.calendar-material-existing>strong{margin-bottom:.15rem}.calendar-material-existing>div{display:flex;justify-content:space-between;gap:.75rem;color:var(--muted)}.calendar-material-existing>div span:first-child{color:var(--ink);font-weight:700}@media(max-width:720px){.allocation-row{grid-template-columns:1fr}.time-entry-row{grid-template-columns:1fr}.time-entry-time{grid-template-columns:1fr 1fr}.time-entry-time .duration-box,.time-entry-time .date-field{grid-column:1/-1}}
/* v0.23 — szybkie zgłoszenie z formularza Start i zerowe blokady podziału */
.request-picker{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.45rem;align-items:end}.request-picker label{margin-top:0}.request-add-btn{min-height:3rem;white-space:nowrap}@media(max-width:720px){.request-picker{grid-template-columns:1fr}.request-add-btn{width:100%}}
/* v0.28 — kompaktowy Dashboard administratora */
.dialog{width:min(46rem,calc(100vw - 2rem));padding:1.5rem}.dialog-head{padding-bottom:.85rem;border-bottom:1px solid var(--line);margin-bottom:.2rem}.dialog-head h2{font-size:1.15rem}.start-dialog{width:min(52rem,calc(100vw - 2rem))}.start-dialog form{padding-top:.35rem}.start-dialog .request-picker{grid-column:1/-1}.start-dialog textarea.field{min-height:5.2rem;resize:vertical}.start-dialog .btn.block{margin-top:1rem}.request-picker{min-width:0}.request-picker select{min-width:0}.request-add-btn{padding-inline:1rem}
.report-page{display:grid;gap:.85rem}.report-topbar,.report-filterbar,.report-summarybar{display:flex;align-items:center;justify-content:space-between;gap:.65rem;flex-wrap:wrap}.report-top-left,.report-top-right,.report-summary-actions{display:flex;align-items:center;gap:.45rem;flex-wrap:wrap}.report-top-right{justify-content:flex-end;flex:1}.report-select{min-height:2.7rem;border:1px solid var(--line-strong);border-radius:.65rem;background:var(--card);padding:.55rem 2rem .55rem .75rem;font-weight:800;color:var(--ink)}.report-tabs{display:inline-flex;border:1px solid var(--line);border-radius:.65rem;overflow:hidden;background:var(--card)}.report-tabs button{border:0;border-right:1px solid var(--line);background:transparent;padding:.65rem .85rem;min-height:2.7rem;font-weight:800;cursor:pointer}.report-tabs button:last-child{border-right:0}.report-tabs button.active{background:var(--amber-bg);box-shadow:inset 0 -2px var(--amber);color:var(--amber-d)}.report-range{display:grid;grid-template-columns:2.7rem minmax(15rem,1fr) 2.7rem;align-items:center}.report-range .btn{border-radius:0;border-right:0;min-height:2.7rem;padding:0}.report-range .btn:first-child{border-radius:.65rem 0 0 .65rem}.report-range .btn:last-child{border-radius:0 .65rem .65rem 0;border-right:1px solid var(--line)}.report-range-main{min-width:16rem}.report-filterbar{display:grid;grid-template-columns:repeat(9,minmax(8rem,1fr)) auto;padding:.75rem;background:var(--card);border:1px solid var(--line);border-radius:var(--radius)}.report-filter{min-width:0}.report-filter label{display:block;font-size:.62rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:850;margin:0 0 .25rem}.report-filter .field{margin:0;min-height:2.7rem;padding:.55rem .65rem;font-size:.72rem}.report-filter-apply{align-self:end;white-space:nowrap;min-height:2.7rem;padding-inline:1rem}.report-panel{border:1px solid var(--line);border-radius:var(--radius);background:var(--card);overflow:hidden}.report-summarybar{padding:.8rem 1rem;background:var(--surface-2);border-bottom:1px solid var(--line)}.report-total{font-size:1.15rem;font-weight:950;font-variant-numeric:tabular-nums}.report-summary-actions{justify-content:flex-end}.report-summary-actions>.btn,.report-summary-actions>.report-select,.report-summary-actions>.report-toggle{min-height:2.7rem}.report-summary-actions>.btn:first-child{padding-inline:1rem}.report-action-btn{min-width:2.7rem;padding:0}.report-toggle{display:inline-flex;align-items:center;gap:.4rem;font-size:.72rem;color:var(--muted);font-weight:800;padding-inline:.35rem}.report-toggle input{accent-color:var(--amber-d)}.report-chart-wrap{padding:1rem}.report-group-select{margin-bottom:.7rem}.report-chart{height:23rem;display:flex;align-items:flex-end;gap:.65rem;padding:2.8rem .5rem 2.5rem;border-bottom:1px solid var(--line);background:repeating-linear-gradient(to top,transparent 0,transparent calc(20% - 1px),var(--line) 20%)}.report-bar-wrap{height:100%;flex:1;min-width:2.8rem;display:flex;align-items:flex-end;justify-content:center;position:relative}.report-bar{width:min(80%,6.5rem);min-height:.16rem;background:linear-gradient(to top,var(--amber-d),var(--amber));border-radius:.38rem .38rem 0 0;position:relative;box-shadow:0 .25rem .9rem color-mix(in srgb,var(--amber) 16%,transparent)}.report-bar-value{position:absolute;left:50%;top:-1.55rem;transform:translateX(-50%);white-space:nowrap;font-size:.72rem;font-weight:900;color:var(--ink);font-variant-numeric:tabular-nums}.report-bar-label{position:absolute;left:50%;bottom:-1.8rem;transform:translateX(-50%);white-space:nowrap;font-size:.68rem;color:var(--muted);font-weight:750}.report-empty-chart{height:16rem;display:grid;place-items:center;color:var(--muted)}.report-detail-table table{min-width:70rem}.report-weekly-table table{min-width:62rem}.report-shared{padding:1.2rem;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1rem;align-items:center}.report-share-link{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;background:var(--surface-2);border:1px solid var(--line);padding:.75rem;border-radius:.6rem;overflow:auto}.report-menu-wrap{position:relative}.report-export-select{min-width:8rem}.report-amount{font-size:.72rem;font-weight:800}.report-note{padding:.75rem 1rem;border-top:1px solid var(--line);color:var(--muted);font-size:.72rem}.report-pill{display:inline-flex;align-items:center;border:1px solid var(--line);background:var(--surface-2);border-radius:99px;padding:.22rem .5rem;font-size:.66rem}.report-print-title{display:none}
.report-location-filters{grid-template-columns:repeat(6,minmax(0,1fr))}.report-location-filters .report-filter-apply{grid-column:-2}
@media(max-width:1300px){.report-filterbar{grid-template-columns:repeat(5,minmax(8rem,1fr))}.report-filter-apply{grid-column:auto}}
@media(max-width:900px){.start-dialog{width:min(42rem,calc(100vw - 1.5rem))}.report-filterbar{grid-template-columns:repeat(2,minmax(0,1fr))}.report-filter-apply{width:100%}.report-top-left,.report-top-right{width:100%}.report-tabs{width:100%;overflow:auto}.report-tabs button{flex:1;white-space:nowrap}.report-range{flex:1}.report-range-main{flex:1;min-width:0}.report-chart{height:18rem;overflow-x:auto}.report-bar-wrap{min-width:4.5rem}.report-shared{grid-template-columns:1fr}}
@media(max-width:560px){.dialog,.start-dialog{width:calc(100vw - 1rem);max-height:calc(100vh - 1rem);padding:1rem}.start-dialog .form-grid,.report-filterbar,.client-toolbar{grid-template-columns:1fr}.request-picker{grid-template-columns:1fr}.report-topbar{align-items:stretch}.report-select,.report-top-right,.report-range,.report-export-select{width:100%}.report-range{grid-template-columns:2.7rem minmax(0,1fr) 2.7rem}.report-summary-actions{width:100%;justify-content:flex-start}.report-chart-wrap{padding:.65rem}.report-chart{height:15rem}.report-tabs button{padding:.58rem .7rem;font-size:.7rem}}
/* v0.28 — mniej warstw, większa gęstość i wyraźny priorytet pracy bieżącej */
.admin-dashboard{display:grid;gap:1rem}.admin-dashboard-head{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem}.admin-dashboard-head h1{margin:.18rem 0 .12rem;font-size:1.55rem}.admin-dashboard-head .muted{font-size:.78rem}.admin-dashboard-head .btn{white-space:nowrap}.dashboard-kpis{grid-template-columns:repeat(4,minmax(0,1fr));gap:.65rem}.dashboard-kpi{display:flex;align-items:center;gap:.75rem;padding:.72rem .85rem;min-height:4rem}.dashboard-kpi strong{font-size:1.45rem;line-height:1}.dashboard-kpi span{font-size:.72rem;line-height:1.25}.dashboard-workspace{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(20rem,.8fr);gap:1rem;align-items:start}.dashboard-workspace.single{grid-template-columns:1fr}.dashboard-section{min-width:0}.dashboard-section-head{display:flex;align-items:center;justify-content:space-between;gap:.65rem;margin:.25rem .1rem .5rem}.dashboard-section-head h2{font-size:.9rem}.dashboard-section-head .meta{margin:0}.dashboard-list{padding:.35rem .9rem}.dashboard-list .list-row{padding:.68rem .1rem}.dashboard-attention{border-left:3px solid var(--amber)}
.dashboard-attention .list-row{align-items:flex-start;flex-wrap:wrap}.dashboard-attention .list-row>div:last-child,.dashboard-attention .list-row>span:last-child{margin-left:auto}
@media(max-width:1100px){.dashboard-workspace{grid-template-columns:1fr}.dashboard-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.admin-dashboard-head{align-items:stretch;flex-direction:column}.admin-dashboard-head .btn{width:100%}.dashboard-kpis{grid-template-columns:1fr 1fr}.dashboard-kpi{align-items:flex-start;flex-direction:column;gap:.25rem}.dashboard-list{padding:.25rem .7rem}}
/* v0.29 — karta dnia pracownika i kontrola zapisanych punktów GPS */
.user-presence-row{width:100%;border:0;border-bottom:1px solid var(--line);background:transparent;color:inherit;text-align:left;cursor:pointer}.user-presence-row:last-child{border-bottom:0}.user-presence-row:hover{background:var(--amber-bg)}.user-row-status{display:flex;align-items:center;gap:.65rem;flex:none}.user-row-arrow{color:var(--muted);font-size:1.1rem}.user-row-admin-actions{flex-wrap:nowrap!important;overflow-x:auto;white-space:nowrap}.user-row-admin-actions .btn{flex:none;white-space:nowrap;padding:.48rem .72rem}.user-day-dialog{width:min(70rem,calc(100vw - 2rem))}.user-day-controls{display:grid;grid-template-columns:minmax(14rem,1fr) minmax(12rem,.65fr);gap:.8rem;margin:.9rem 0}.user-day-controls label{margin:0}.user-day-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem;margin:.85rem 0 1rem}.user-day-summary .card{padding:.8rem}.user-day-summary strong{display:block;font-size:1.25rem;font-variant-numeric:tabular-nums}.user-day-section{margin-top:1rem}.user-day-section-head{display:flex;align-items:center;justify-content:space-between;gap:.65rem;margin:0 .1rem .5rem}.user-day-timeline{border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.user-day-row{display:grid;grid-template-columns:7.2rem .7rem minmax(0,1fr) auto;gap:.65rem;align-items:start;padding:.78rem .85rem;border-bottom:1px solid var(--line);background:var(--card)}.user-day-row:last-child{border-bottom:0}.user-day-time{font-size:.7rem;color:var(--muted);font-variant-numeric:tabular-nums;padding-top:.1rem}.user-day-dot{width:.58rem;height:.58rem;border-radius:50%;background:var(--amber);margin-top:.22rem}.user-day-dot.break{background:var(--blue)}.user-day-dot.unassigned{background:var(--red)}.user-day-duration{font-size:.76rem;font-weight:900;font-variant-numeric:tabular-nums;white-space:nowrap}.user-day-tags{display:flex;flex-wrap:wrap;gap:.3rem;margin-top:.38rem}.user-day-tag{display:inline-flex;border:1px solid var(--line);border-radius:99px;padding:.16rem .42rem;background:var(--surface-2);color:var(--muted);font-size:.65rem}.user-day-gps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem}.gps-card{padding:.85rem}.gps-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:.6rem}.gps-coordinates{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.7rem;color:var(--muted);margin:.45rem 0}.gps-card .btn{margin-top:.35rem}.user-day-loading{padding:2rem;text-align:center;color:var(--muted)}
@media(max-width:720px){.user-day-controls,.user-day-summary,.user-day-gps{grid-template-columns:1fr}.user-day-row{grid-template-columns:5.4rem .6rem minmax(0,1fr)}.user-day-duration{grid-column:3}.user-day-dialog{width:calc(100vw - 1rem)}}
/* v0.30 — edycja, miękkie usuwanie i warunki zatrudnienia */
.entry-deleted{background:color-mix(in srgb,var(--red-bg) 55%,var(--card))!important}.entry-deleted .title,.entry-deleted .meta,.entry-deleted .entry-value,.entry-deleted .user-day-duration,.entry-deleted .calendar-entry-text{text-decoration:line-through}.entry-deleted .title,.entry-deleted .meta,.entry-deleted .entry-value{opacity:.7}.entry-edited-mark{font-size:.64rem;color:var(--muted);font-weight:800}.entry-actions{display:flex;justify-content:flex-end;align-items:center;gap:.35rem;flex-wrap:wrap;margin-top:.4rem}.entry-actions .btn{min-height:2rem;padding:.35rem .55rem;font-size:.68rem}.calendar-entry{pointer-events:auto;border:0;text-align:left;color:inherit;cursor:pointer}.calendar-entry.entry-deleted{border-left:3px solid var(--red);opacity:.78}.user-presence-row{padding:0;gap:.45rem}.user-presence-main{flex:1;display:flex;align-items:center;justify-content:space-between;gap:.8rem;border:0;background:transparent;color:inherit;text-align:left;cursor:pointer;padding:.68rem .1rem;min-width:0}.user-presence-main:hover{background:var(--amber-bg)}.user-settings-btn{flex:none;margin-right:.1rem}.user-day-summary{grid-template-columns:repeat(auto-fit,minmax(9rem,1fr))}.limit-warning{margin-top:.4rem;padding:.42rem .55rem;border-left:3px solid var(--amber);border-radius:.4rem;background:var(--amber-bg);color:var(--amber-d);font-size:.69rem;font-weight:800}.entry-edit-note{padding:.65rem .75rem;margin:.75rem 0;background:var(--blue-bg);color:var(--blue);border-left:3px solid var(--blue);border-radius:.5rem;font-size:.72rem}.entry-record-status{display:flex;gap:.35rem;align-items:center;justify-content:flex-end;flex-wrap:wrap}.user-day-row.entry-deleted{border-left:3px solid var(--red)}
@media(max-width:560px){.user-presence-row{align-items:stretch}.user-presence-main{padding:.7rem 0}.user-settings-btn{align-self:center}.entry-record-status{justify-content:flex-start}.entry-actions{justify-content:flex-start}}
/* v0.31 — pełna kartoteka konta i przybliżony adres punktu GPS */
.account-settings-dialog{width:min(52rem,calc(100vw - 2rem))}.settings-section{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--line)}.settings-section:first-of-type{margin-top:.7rem}.settings-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:.8rem;margin-bottom:.25rem}.settings-section-head .meta{max-width:58ch}.account-status-row{display:flex;align-items:center;justify-content:space-between;gap:.8rem;padding:.8rem;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-2);margin-top:.85rem}.account-actions{display:flex;justify-content:space-between;align-items:center;gap:.6rem;flex-wrap:wrap;margin-top:1rem}.account-security{border-left:3px solid var(--amber);padding-left:.8rem}.gps-address{display:grid;gap:.15rem;margin:.5rem 0 .25rem;padding:.55rem .65rem;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-2)}.gps-address strong{font-size:.78rem}.gps-address .meta{margin:0}.gps-attribution{font-size:.62rem;color:var(--muted)}.gps-attribution a{color:inherit}.inactive-user{opacity:.72}.inactive-user .user-presence-main{cursor:pointer}.settings-account-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem}.settings-account-item{padding:.8rem;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius-sm)}.settings-account-item span{display:block;font-size:.67rem;color:var(--muted);margin-bottom:.22rem}.settings-account-item strong{font-size:.8rem}
@media(max-width:720px){.account-settings-dialog{width:calc(100vw - 1rem)}.settings-account-grid{grid-template-columns:1fr}.account-actions{align-items:stretch;flex-direction:column}.account-actions .btn{width:100%}}
/* v0.32 — logowanie adresem e-mail i dopracowane widoki mobilne */
.field-help{display:block;margin:.35rem 0 0;color:var(--muted);font-size:.67rem;font-weight:500;line-height:1.4}
@media(max-width:560px){.modal{padding:.5rem;align-items:flex-end}.dialog,.start-dialog,.user-day-dialog,.account-settings-dialog{width:100%;max-height:calc(100vh - 1rem);max-height:calc(100dvh - 1rem);border-radius:var(--radius-lg) var(--radius-lg) 0 0}.dialog-head{position:sticky;top:-1rem;z-index:5;margin:-1rem -1rem .5rem;padding:1rem;background:var(--card);border-bottom:1px solid var(--line)}.time-entry-dialog{padding:0}.time-entry-dialog .dialog-head{top:0;margin:0}.account-status-row,.settings-section-head{align-items:stretch;flex-direction:column}.account-status-row .field,.settings-section-head .btn{width:100%!important}.account-actions{align-items:stretch;flex-direction:column}.account-actions .btn{width:100%}.settings-account-grid{grid-template-columns:1fr}.user-presence-row{align-items:stretch;flex-direction:column}.user-presence-main{width:100%}.user-settings-btn{align-self:stretch;width:100%;margin:0 0 .65rem}.request-hero{align-items:stretch;flex-direction:column}.request-hero .btn{width:100%}.timer-actions .btn{flex:1 1 100%}.toast{left:.7rem;right:.7rem;bottom:calc(4.8rem + env(safe-area-inset-bottom));text-align:center}}
/* v0.33 — hierarchiczne numery kartotek, cofanie akceptacji i mobile */
.ref-code{display:inline-flex;align-items:center;min-width:3.2rem;padding:.2rem .45rem;border-radius:99px;background:var(--amber-bg);color:var(--amber-d);font-size:.66rem;font-weight:900;font-variant-numeric:tabular-nums}.ref-client{color:var(--muted);font-weight:650}.approval-reopen{margin-top:.75rem;display:flex;justify-content:flex-end}.report-status-actions{display:flex;align-items:center;gap:.35rem;flex-wrap:wrap}.report-status-actions .btn{min-height:2rem;padding:.32rem .5rem;font-size:.66rem}
@media(max-width:900px){.topbar{height:3.8rem}.content{padding:.95rem .85rem calc(5.4rem + env(safe-area-inset-bottom))}.page-head{margin-bottom:1rem}.page-head .muted{font-size:.8rem}.section{margin-top:1.15rem}.bottom-nav{min-height:4.6rem;box-shadow:0 -.45rem 1.4rem rgba(28,25,23,.08)}.bottom-nav button{min-width:0;padding:.5rem .15rem;font-size:.62rem;line-height:1.2}.card{border-radius:.75rem}.list-row{min-height:3.6rem}.table-wrap{max-width:calc(100vw - 1.7rem)}}
@media(max-width:560px){.topbar{padding:0 .7rem}.topbar>strong{font-size:.9rem}.top-status .badge{font-size:.6rem;padding:.25rem .4rem}.content{padding-left:.65rem;padding-right:.65rem}.page-head{display:grid;gap:.7rem}.page-head>.btn,.page-head>button{width:100%}.kpis{gap:.55rem}.kpi strong{font-size:1.45rem}.list-row{align-items:flex-start}.list-row>div:last-child:has(.btn){width:100%;display:grid;grid-template-columns:1fr 1fr;gap:.45rem}.list-row>div:last-child:has(.btn) .btn{width:100%;margin:0}.timer{padding:1rem}.timer-clock{font-size:2.45rem}.timeline-row{grid-template-columns:4.35rem .55rem minmax(0,1fr);padding:.6rem .5rem}.dialog{padding:1rem}.field{min-height:3.15rem}.btn{min-height:2.8rem}.ref-code{min-width:2.8rem}.calendar-tools-left{display:grid;grid-template-columns:1fr auto auto;width:100%}.calendar-tools-left .segmented{grid-column:1/-1;width:100%}.calendar-tools-left .segmented button{flex:1}.calendar-tools-left>.btn:first-of-type{width:100%}.calendar-tools-right .segmented{width:100%}.calendar-tools-right .segmented button{flex:1}.calendar-picker{width:calc(100vw - 1.3rem)}.time-entry-actions{display:grid;grid-template-columns:1fr 1fr}.time-entry-actions .btn{width:100%}}
/* v0.34 — widoczna blokada Startu i bezpośrednie uzupełnienie dnia */
.start-blocked{display:grid;gap:.45rem;padding:.8rem;margin:.75rem 0;background:var(--red-bg);color:var(--red);border-left:4px solid var(--red);border-radius:var(--radius-sm)}.start-blocked strong{font-size:.85rem}.start-blocked span{font-size:.74rem;line-height:1.45}
/* v0.35 — edycja pracowników przez administratora i akceptacja zbiorcza */
.admin-head-actions{display:flex;align-items:center;justify-content:flex-end;gap:.5rem;flex-wrap:wrap}.batch-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem;margin:.8rem 0}.batch-summary .card{padding:.8rem}.batch-summary strong{display:block;font-size:1.3rem}.batch-summary span{color:var(--muted);font-size:.7rem}
@media(max-width:560px){.admin-head-actions{display:grid;grid-template-columns:1fr;width:100%}.admin-head-actions .btn{width:100%}.batch-summary{grid-template-columns:1fr}}
/* v0.37 — role-based mobile navigation and compact daily views */
.sidebar-head{display:flex;align-items:flex-start;justify-content:space-between;gap:.5rem}.sidebar-close,.sidebar-backdrop{display:none}.worker-start-card{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.85rem}.worker-start-card h2{margin:.12rem 0}.worker-start-card .muted{max-width:54ch}.worker-start-card .btn{flex:none}
@media(max-width:900px){
 body.menu-open{overflow:hidden}.sidebar{z-index:260;width:min(18.5rem,calc(100vw - 3.5rem));height:100vh;height:100dvh;padding:calc(1rem + env(safe-area-inset-top)) .8rem calc(.8rem + env(safe-area-inset-bottom));box-shadow:1.2rem 0 3rem rgba(28,25,23,.28)}.sidebar-backdrop{display:block;position:fixed;inset:0;border:0;background:rgba(28,25,23,.52);opacity:0;pointer-events:none;z-index:250;transition:opacity .2s ease-out}.sidebar-backdrop.open{opacity:1;pointer-events:auto}.sidebar-close{display:grid;place-items:center;width:2.5rem;height:2.5rem;flex:none;border:1px solid #57514a;border-radius:.7rem;background:var(--sidebar-2);color:#fff;font-size:1.35rem;cursor:pointer}.sidebar .logo{padding:.15rem .35rem 1rem}.sidebar .nav-group{padding-top:.65rem}.sidebar .nav button{min-height:2.85rem}.profile{padding-bottom:.15rem}.mobile-menu{width:2.8rem;height:2.8rem;padding:0;font-size:1.05rem}.topbar{height:3.65rem;padding-left:.75rem;padding-right:.75rem}.topbar>strong{font-size:.88rem}.bottom-nav{z-index:220;grid-template-columns:repeat(5,minmax(0,1fr));min-height:4.25rem;padding:.2rem .15rem env(safe-area-inset-bottom);box-shadow:0 -.5rem 1.5rem rgba(180,83,9,.08)}.bottom-nav button{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.22rem;padding:.35rem .08rem;font-size:.61rem;letter-spacing:-.01em;overflow:visible}.bottom-nav button>span:first-child{display:block;min-height:.3rem;font-size:.72rem;line-height:.7}.bottom-nav .bottom-dot{width:.3rem;height:.3rem;min-height:.3rem;border-radius:50%;background:transparent}.bottom-nav button.active .bottom-dot{background:var(--amber-d)}.bottom-nav button.active:after{content:"";position:absolute;left:22%;right:22%;top:-.2rem;height:2px;border-radius:99px;background:var(--amber)}.content{padding-bottom:calc(5rem + env(safe-area-inset-bottom))}
 .admin-dashboard{gap:.75rem}.admin-dashboard-head{align-items:stretch}.admin-dashboard-head h1{font-size:1.35rem}.admin-dashboard-head .muted{font-size:.72rem;line-height:1.35}.admin-head-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.45rem}.admin-head-actions .btn{width:100%;min-height:2.65rem;padding:.5rem;font-size:.72rem}.admin-head-actions .btn:only-child{grid-column:1/-1}.dashboard-kpis{gap:.5rem}.dashboard-kpi{min-height:3.5rem;padding:.62rem .7rem;gap:.25rem}.dashboard-kpi strong{font-size:1.28rem}.dashboard-kpi span{font-size:.66rem}.dashboard-section-head{margin-top:.1rem}.dashboard-list{padding:.15rem .65rem}.user-presence-row{display:grid;grid-template-columns:minmax(0,1fr) 2.55rem!important;align-items:center!important;gap:.35rem!important;min-height:4rem}.user-presence-main{display:flex!important;width:100%;padding:.68rem 0!important;min-width:0}.user-presence-main>div{min-width:0}.user-presence-main .title{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-row-status{gap:.32rem}.user-row-status .badge{white-space:nowrap}.user-settings-btn{align-self:center!important;width:2.55rem!important;height:2.55rem!important;min-height:2.55rem!important;margin:0!important;padding:0!important;font-size:0!important}.user-settings-btn:before{content:"•••";font-size:.82rem;letter-spacing:.08em}.dashboard-attention .user-presence-row{grid-template-columns:1fr!important}
 .worker-dashboard .page-head{margin-bottom:.65rem}.worker-dashboard .page-head h1{font-size:1.35rem}.worker-dashboard .page-head .muted{font-size:.72rem}.worker-day-link{display:none}.worker-start-card{align-items:stretch;flex-direction:column;padding:.9rem;margin-bottom:.65rem}.worker-start-card h2{font-size:1rem}.worker-start-card .muted{font-size:.71rem}.worker-start-card .btn{width:100%;min-height:3rem}.worker-kpis{grid-template-columns:1fr 1fr;gap:.5rem}.worker-kpis .kpi{min-height:4.3rem;padding:.72rem}.worker-kpis .kpi strong{font-size:1.25rem}.worker-kpis .kpi span{font-size:.66rem}.worker-request-hero{display:flex!important;align-items:center!important;flex-direction:row!important;padding:.72rem .8rem!important}.worker-request-hero .eyebrow,.worker-request-hero .muted{display:none}.worker-request-hero h2{font-size:.78rem}.worker-request-hero .btn{width:auto!important;min-height:2.45rem;padding:.45rem .65rem;font-size:.68rem}.worker-history-head{margin-top:.9rem}.worker-history-head .btn{min-height:2.4rem;padding:.4rem .65rem;font-size:.68rem}
}
@media(max-width:560px){html{font-size:calc(15px * var(--ui-scale))}.worker-secondary{display:none}.top-status .badge{white-space:nowrap}.bottom-nav button{font-size:.59rem}.dashboard-workspace{gap:.7rem}.dialog-head h2{font-size:1rem}}
/* v0.38 — responsywny domyślny kalendarz i aktywna praca na żywo */
.calendar-live-strip{margin:.7rem 0;padding:.7rem;border:1px solid color-mix(in srgb,var(--green) 28%,var(--line));border-radius:var(--radius);background:color-mix(in srgb,var(--green-bg) 58%,var(--card));box-shadow:var(--shadow-sm)}.calendar-live-strip-head{display:flex;align-items:center;justify-content:space-between;gap:.7rem;margin-bottom:.55rem;color:var(--green);font-size:.72rem}.calendar-live-strip-head>div{display:flex;align-items:center;gap:.42rem}.live-pulse{display:inline-block;width:.48rem;height:.48rem;flex:none;border-radius:50%;background:var(--green);box-shadow:0 0 0 .2rem color-mix(in srgb,var(--green) 15%,transparent);animation:calendar-live-pulse 1.8s ease-in-out infinite}.calendar-live-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(13rem,1fr));gap:.45rem}.calendar-live-card{display:grid;gap:.16rem;min-width:0;padding:.62rem .7rem;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--card);color:inherit;text-align:left;cursor:pointer}.calendar-live-card:hover{border-color:var(--green);transform:translateY(-1px)}.calendar-live-person{font-size:.76rem;font-weight:900;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.calendar-live-meta,.calendar-live-task{font-size:.66rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.calendar-live-meta{color:var(--green);font-weight:800}.calendar-live-task{color:var(--muted)}.calendar-entry-live{z-index:8;border:1px solid var(--green)!important;border-left:3px solid var(--green)!important;background:linear-gradient(135deg,color-mix(in srgb,var(--green-bg) 88%,var(--card)),var(--card))!important;box-shadow:0 .18rem .6rem rgba(22,101,52,.12);overflow:hidden}.calendar-entry-live strong,.calendar-entry-live span{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.calendar-entry-live strong{font-size:.65rem}.calendar-entry-live span{font-size:.58rem;color:var(--green)}.calendar-entry-live .live-pulse{display:inline-block;margin-right:.3rem}.calendar-live-group{width:calc(100% - .3rem)!important;margin-left:.15rem!important}.calendar-day-total{line-height:1.25}@keyframes calendar-live-pulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.8)}}
@media(max-width:900px){.calendar-live-strip{margin:.55rem 0;padding:.6rem}.calendar-live-cards{display:flex;overflow-x:auto;scroll-snap-type:x proximity;padding-bottom:.1rem}.calendar-live-card{flex:0 0 min(78%,17rem);scroll-snap-align:start}.calendar-live-strip-head{margin-bottom:.45rem}.calendar-entry-live strong{font-size:.7rem}.calendar-entry-live span{font-size:.62rem}}
/* v0.39 — miesięczne rozrachunki pracownika */
.settlement-page{display:grid;gap:.85rem}.settlement-page .page-head{margin-bottom:0}.settlement-toolbar,.settlement-admin-head{display:flex;align-items:center;justify-content:space-between;gap:1rem}.settlement-toolbar{padding:.8rem 1rem}.settlement-toolbar h2,.settlement-admin-head h3{margin:.1rem 0;text-transform:capitalize}.settlement-toolbar-actions{display:flex;align-items:center;justify-content:flex-end;gap:.45rem;flex-wrap:wrap}.settlement-toolbar-actions>.btn:first-child,.settlement-toolbar-actions>.btn:nth-child(2){width:2.8rem;padding:0;font-size:1.25rem}.settlement-kpis{grid-template-columns:repeat(4,minmax(0,1fr))}.settlement-breakdown{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--line);border-radius:var(--radius);background:var(--card);overflow:hidden}.settlement-breakdown>div{display:grid;gap:.25rem;padding:.72rem .85rem;border-right:1px solid var(--line)}.settlement-breakdown>div:last-child{border-right:0}.settlement-breakdown span,.settlement-created{display:block;color:var(--muted);font-size:.66rem}.settlement-breakdown strong{font-size:.8rem;font-variant-numeric:tabular-nums}.settlement-kind{display:inline-flex;padding:.25rem .45rem;border-radius:99px;background:var(--amber-bg);color:var(--amber-d);font-size:.66rem;font-weight:850}.settlement-amount{font-variant-numeric:tabular-nums;white-space:nowrap}.settlement-positive{color:var(--red)}.settlement-negative{color:var(--green)}.settlement-table table{min-width:52rem}.settlement-table tfoot th{position:static;background:var(--surface-2);color:var(--ink);font-size:.72rem}.settlement-delete{min-height:2.15rem;padding:.35rem .55rem;color:var(--red)}.settlement-person{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin:.65rem 0 .9rem;padding:.75rem;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-2)}.settlement-person span{color:var(--muted);font-size:.72rem}.settlement-dialog{width:min(72rem,100%)}.settlement-admin{display:grid;gap:.8rem}.user-row-admin-actions{display:grid;grid-template-columns:repeat(4,minmax(7.2rem,1fr));align-items:center;gap:.45rem;flex:none;min-width:min(100%,31rem)}.user-row-admin-actions .btn{white-space:nowrap;min-height:2.7rem;justify-content:center;padding-inline:.85rem}.user-row-admin-actions .ghost-slot{visibility:hidden;pointer-events:none}
@media(max-width:900px){.settlement-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.settlement-breakdown{grid-template-columns:repeat(2,minmax(0,1fr))}.settlement-breakdown>div:nth-child(2){border-right:0}.settlement-breakdown>div:nth-child(-n+2){border-bottom:1px solid var(--line)}.user-presence-row:has(.user-row-admin-actions){grid-template-columns:minmax(0,1fr) 5.5rem!important}.user-row-admin-actions{display:grid;grid-template-columns:2.55rem 2.55rem;gap:.4rem}.user-row-admin-actions .btn{align-self:center!important;width:2.55rem!important;height:2.55rem!important;min-height:2.55rem!important;margin:0!important;padding:0!important;font-size:0!important}.user-settlements-btn:before{content:"zł";font-size:.72rem;font-weight:900}.user-settings-btn:before{content:"•••";font-size:.82rem;letter-spacing:.08em}.settlement-dialog{max-height:calc(100dvh - 1rem)}}
@media(max-width:560px){.settlement-toolbar,.settlement-admin-head{align-items:stretch;flex-direction:column}.settlement-toolbar-actions{display:grid;grid-template-columns:2.8rem 2.8rem minmax(0,1fr);width:100%}.settlement-toolbar-actions .btn{width:100%!important}.settlement-kpis .kpi{min-height:4.6rem}.settlement-kpis .kpi strong{font-size:1.12rem}.settlement-breakdown>div{padding:.65rem}.settlement-table{max-width:calc(100vw - 1.3rem)}.settlement-dialog .settlement-table{max-width:calc(100vw - 2rem)}.settlement-entry-dialog .form-grid{grid-template-columns:1fr}.settlement-entry-dialog .wide{grid-column:auto}}
/* v0.44 — mapa punktów Start/Stop bez śledzenia w trakcie pracy */
.team-map-section{display:grid;gap:.55rem}.team-map-head{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem}.team-map-head-copy{display:grid;gap:.12rem}.team-map-head-copy .meta{max-width:48rem}.team-map-controls{display:flex;align-items:end;gap:.45rem;flex-wrap:wrap}.team-map-control{display:grid;gap:.2rem}.team-map-control span{font-size:.61rem;font-weight:850;letter-spacing:.055em;text-transform:uppercase;color:var(--muted)}.team-map-control .field{margin:0;min-height:2.55rem;padding-top:.5rem;padding-bottom:.5rem}.team-map-card{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(15rem,.65fr);min-height:28rem;overflow:hidden;padding:0}.team-map-canvas{position:relative;min-height:28rem;overflow:hidden;background:var(--surface-2);cursor:grab;touch-action:none;user-select:none}.team-map-canvas.dragging{cursor:grabbing}.team-map-tiles,.team-map-routes,.team-map-markers{position:absolute;inset:0;overflow:hidden}.team-map-tile{position:absolute;width:256px;height:256px;max-width:none;user-select:none;-webkit-user-drag:none}.team-map-routes{width:100%;height:100%;pointer-events:none}.team-map-route{fill:none;stroke:var(--amber-d);stroke-width:3;stroke-dasharray:7 6;opacity:.72}.team-map-marker{position:absolute;width:2rem;height:2rem;transform:translate(-50%,-100%);border:2px solid #fff;border-radius:50% 50% 50% 0;background:var(--amber-d);color:#fff;box-shadow:0 .25rem .75rem rgba(28,25,23,.3);rotate:-45deg;display:grid;place-items:center;font-size:.6rem;font-weight:950;cursor:pointer}.team-map-marker>span{rotate:45deg}.team-map-marker.start.active{background:var(--green)}.team-map-marker.stop{background:var(--red)}.team-map-marker.selected{outline:3px solid color-mix(in srgb,var(--amber) 45%,transparent);outline-offset:2px;z-index:5}.team-map-zoom{position:absolute;z-index:8;left:.65rem;top:.65rem;display:grid;gap:.3rem}.team-map-zoom .btn{width:2.45rem;height:2.45rem;padding:0;background:var(--card);font-size:1.15rem}.team-map-empty{position:absolute;inset:0;display:grid;place-items:center;padding:1rem;text-align:center;background:linear-gradient(135deg,var(--surface-2),var(--card))}.team-map-attribution{position:absolute;right:.3rem;bottom:.25rem;z-index:7;padding:.16rem .35rem;border-radius:.3rem;background:color-mix(in srgb,var(--card) 86%,transparent);font-size:.55rem;color:var(--muted)}.team-map-attribution a{color:inherit}.team-map-side{border-left:1px solid var(--line);background:var(--card);overflow:auto;max-height:28rem}.team-map-summary{padding:.75rem .85rem;border-bottom:1px solid var(--line)}.team-map-summary strong{display:block;font-size:.83rem}.team-map-list{display:grid}.team-map-item{display:grid;grid-template-columns:.72rem minmax(0,1fr);gap:.55rem;padding:.75rem .85rem;border:0;border-bottom:1px solid var(--line);background:transparent;color:inherit;text-align:left;cursor:pointer}.team-map-item:hover,.team-map-item.active{background:var(--amber-bg)}.team-map-dot{width:.65rem;height:.65rem;margin-top:.18rem;border-radius:50%;background:var(--amber-d)}.team-map-dot.live{background:var(--green);box-shadow:0 0 0 .18rem color-mix(in srgb,var(--green) 14%,transparent)}.team-map-dot.stop{background:var(--red)}.team-map-item .title{font-size:.75rem}.team-map-item .meta{font-size:.64rem;line-height:1.4;margin-top:.1rem}.team-map-legend{display:flex;align-items:center;gap:.65rem;flex-wrap:wrap;padding:.55rem .85rem;border-top:1px solid var(--line);font-size:.62rem;color:var(--muted)}.team-map-legend span{display:inline-flex;align-items:center;gap:.3rem}.team-map-legend i{width:.5rem;height:.5rem;border-radius:50%;background:var(--amber-d)}.team-map-legend .stop{background:var(--red)}.team-map-legend .active{background:var(--green)}
@media(max-width:1000px){.team-map-card{grid-template-columns:1fr}.team-map-side{max-height:18rem;border-left:0;border-top:1px solid var(--line)}.team-map-canvas{min-height:24rem}}
@media(max-width:700px){.team-map-head{align-items:stretch;flex-direction:column}.team-map-controls{display:grid;grid-template-columns:1fr 1fr}.team-map-control{min-width:0}.team-map-control:last-of-type{grid-column:1/-1}.team-map-control .field,.team-map-controls>.btn{width:100%}.team-map-canvas{min-height:21rem}.team-map-card{min-height:0}.team-map-side{max-height:16rem}.team-map-head-copy .meta{font-size:.67rem}}
/* v0.44 — sidebar, akcje admina i komentarze zgłoszeń */
.sidebar .sidebar-head{display:flex;align-items:flex-start;justify-content:space-between;gap:.45rem}.sidebar .logo{display:grid;grid-template-columns:2.35rem minmax(0,1fr) auto;align-items:center;gap:.55rem;padding:0 .35rem 1rem;font-size:.94rem;line-height:1.08;min-width:0}.sidebar .logo .mark{grid-row:1}.sidebar .logo .app-version-badge{justify-self:end;font-size:.58rem;padding:.14rem .34rem;white-space:nowrap}.entry-actions,.user-day-admin-actions,.request-actions,.admin-finish-actions{display:flex;align-items:center;gap:.45rem;flex-wrap:wrap}.user-day-admin-actions{justify-content:flex-end;margin:.75rem 0}.request-actions{justify-content:flex-end}.request-comments-count{font-size:.66rem;color:var(--muted);font-weight:850;white-space:nowrap}.request-comment-preview{margin-top:.5rem;padding:.5rem .6rem;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-2)}.request-comment-preview strong{display:block;font-size:.66rem;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;margin-bottom:.18rem}.admin-finish-note{padding:.65rem .75rem;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-2);margin:.6rem 0}.admin-finish-actions{justify-content:flex-end;margin-top:.75rem}.user-finish-btn{white-space:nowrap}.request-row>div:first-child{min-width:0}.request-row .title,.request-row .meta{overflow-wrap:anywhere}.ref-pick{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.55rem;align-items:end}.ref-pick .btn{white-space:nowrap}
@media(max-width:900px){.sidebar .logo{grid-template-columns:2.35rem minmax(0,1fr) auto;font-size:.92rem;padding:.15rem .15rem 1rem}.sidebar .logo .app-version-badge{font-size:.56rem}.user-presence-row:has(.user-row-admin-actions){grid-template-columns:minmax(0,1fr) 8.4rem!important}.user-row-admin-actions{grid-template-columns:repeat(3,2.55rem)}.user-row-admin-actions .user-finish-btn:before{content:"⏹";font-size:.86rem}.request-actions{justify-content:flex-start;margin-top:.45rem}.request-row{align-items:flex-start;flex-direction:column}.admin-finish-actions{display:grid;grid-template-columns:1fr;width:100%}.admin-finish-actions .btn{width:100%}}
/* v0.44 — lokalizacje pod klientem, komunikaty i kolory kalendarza zespołu */
.page-actions{display:flex;align-items:center;justify-content:flex-end;gap:.45rem;flex-wrap:wrap}.client-toolbar{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:.55rem;align-items:end;margin-bottom:.85rem}.client-toolbar .field{min-height:2.7rem}.client-directory{display:grid;gap:.85rem}.client-card{padding:0;overflow:hidden}.client-card-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.9rem 1rem;border:0;background:linear-gradient(135deg,var(--card),var(--surface-2));width:100%;text-align:left;cursor:pointer}.client-card-head:hover{background:linear-gradient(135deg,var(--surface-2),var(--surface-3))}.client-card-head-main{display:grid;gap:.2rem;min-width:0}.client-card-head-meta{display:flex;align-items:center;gap:.45rem;flex-wrap:wrap}.client-card-arrow{font-size:1.2rem;color:var(--muted);transition:transform .18s ease}.client-card.is-open .client-card-arrow{transform:rotate(90deg)}.client-locations{display:none}.client-card.is-open .client-locations{display:grid}.client-location-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.72rem 1rem;border-top:1px solid var(--line)}.client-location-row:last-child{border-bottom:0}.client-location-empty{padding:.75rem 1rem;color:var(--muted);font-size:.72rem;border-top:1px solid var(--line)}.message-box{display:grid;gap:.45rem;padding:.85rem;border:1px solid color-mix(in srgb,var(--amber) 28%,var(--line));border-radius:var(--radius-sm);background:var(--amber-bg);white-space:pre-wrap}.message-box p{margin:0;font-size:.86rem;line-height:1.5}.message-confirm-form{display:grid;gap:.8rem}.confirm-code{display:inline-flex;margin:.35rem 0 0;padding:.35rem .55rem;border-radius:.55rem;background:var(--ink);color:var(--surface);font-size:1.05rem;letter-spacing:.18em}.message-required .dialog-head .btn{display:none}.user-message-btn:before{content:"";}.calendar-user-lane{border-left:4px solid var(--cal-user-color)!important;box-shadow:0 .2rem .7rem color-mix(in srgb,var(--cal-user-color) 16%,transparent)}.calendar-user-lane:not(.calendar-entry-live){background:linear-gradient(135deg,color-mix(in srgb,var(--cal-user-color) 10%,var(--card)),var(--card))!important}.calendar-entry-live.calendar-user-lane{border-color:var(--cal-user-color)!important;border-left-color:var(--cal-user-color)!important;background:linear-gradient(135deg,color-mix(in srgb,var(--cal-user-color) 13%,var(--green-bg)),var(--card))!important}.calendar-entry-live.calendar-user-lane span{color:color-mix(in srgb,var(--cal-user-color) 72%,var(--green))}
@media(max-width:900px){.client-toolbar{grid-template-columns:1fr}.client-card-head{align-items:flex-start;flex-direction:column}.client-card-head .btn{width:100%}.page-actions{display:grid;grid-template-columns:1fr 1fr;width:100%}.user-presence-row:has(.user-row-admin-actions){grid-template-columns:minmax(0,1fr) 11.4rem!important}.user-row-admin-actions{grid-template-columns:repeat(4,2.55rem)}.user-message-btn:before{content:"✉";font-size:.86rem}.message-required{max-height:calc(100dvh - 1rem)}}
/* v0.60 — „Do sprawdzenia” prowadzi do właściwej daty i wpisu */
.dialog label.is-disabled{opacity:.68}.dialog label.is-disabled input{background:var(--surface-2);color:var(--muted)}
@media print{.sidebar,.topbar,.bottom-nav,.page-head,.report-topbar,.report-filterbar,.report-summary-actions,.report-group-select{display:none!important}.shell{display:block}.content{max-width:none;padding:0}.report-panel{border:0}.report-print-title{display:block;margin-bottom:1rem}.report-chart{height:15rem}.report-detail-table,.report-weekly-table{overflow:visible}body{background:#fff;color:#111}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
/* v1.12 — billing layout */
.billing-page{max-width:92rem;margin:0 auto}.billing-filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.7rem;margin-bottom:.85rem;padding:.85rem}.billing-filters label{font-size:.7rem;font-weight:850}.billing-filters .field{margin-top:.3rem;min-height:2.7rem}.billing-shell{display:grid;grid-template-columns:1fr;gap:1rem;align-items:start}.billing-sidebar{padding:1rem;position:static;max-height:none;overflow:visible}.billing-sidebar .section{margin-top:1.1rem}.billing-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem}.billing-item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.8rem;width:100%;padding:.85rem;border:1px solid var(--line);border-radius:.75rem;background:var(--surface-2);text-align:left;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}.billing-item:hover,.billing-item.active{border-color:var(--amber);box-shadow:0 .35rem 1rem rgba(180,83,9,.12);transform:translateY(-1px)}.billing-item-meta{display:grid;justify-items:end;align-content:center;gap:.22rem;white-space:nowrap}.billing-item-meta strong{font-size:.9rem;font-variant-numeric:tabular-nums}.billing-item-meta span:not(.badge){font-size:.65rem;color:var(--muted)}.billing-main{display:none}.billing-empty{min-height:15rem;display:grid;place-content:center;text-align:center}.billing-edit-dialog{width:min(86rem,100%);max-height:94vh;padding:1rem}.billing-edit-dialog .dialog-head{position:sticky;top:-1rem;z-index:3;padding:.75rem 0;background:var(--card)}.billing-detail-form{display:grid;gap:.9rem}.billing-detail-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding:.9rem}.billing-detail-actions{display:flex;gap:.4rem;flex-wrap:wrap;justify-content:flex-end}.billing-detail-actions .btn{min-height:2.35rem;padding:.5rem .7rem}.billing-section{display:grid;gap:.25rem}.billing-section .section{margin:.25rem 0 .45rem}.billing-totals{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.5rem}.billing-totals>div{display:grid;gap:.2rem;padding:.65rem .7rem;border:1px solid var(--line);border-radius:.65rem;background:var(--surface-2)}.billing-totals span{font-size:.64rem;color:var(--muted)}.billing-totals strong{font-size:.85rem;font-variant-numeric:tabular-nums}.billing-confirmed{display:flex;align-items:center;gap:.6rem;padding:.75rem .85rem;border:1px solid color-mix(in srgb,var(--green) 35%,var(--line));border-left:4px solid var(--green);border-radius:.7rem;background:var(--green-bg);color:var(--green)}.billing-confirmed span{font-size:.72rem}.billing-table{max-height:21rem}.billing-table input.field{margin:0;min-height:2.25rem;padding:.45rem .5rem}.billing-item[hidden]{display:none}
@media(max-width:1000px){.billing-filters{grid-template-columns:1fr 1fr}.billing-filters label:first-child{grid-column:1/-1}.billing-totals{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.billing-list{grid-template-columns:1fr}}
@media(max-width:560px){.billing-filters{grid-template-columns:1fr}.billing-filters label:first-child{grid-column:auto}.billing-item{grid-template-columns:1fr}.billing-item-meta{justify-items:start;display:flex;align-items:center;flex-wrap:wrap}.billing-detail-head{flex-direction:column}.billing-detail-actions{justify-content:stretch;width:100%}.billing-detail-actions .btn{flex:1}.billing-totals{grid-template-columns:1fr 1fr}.billing-edit-dialog{padding:.8rem}.billing-edit-dialog .dialog-head{top:-.8rem}}
/* v0.60 — historia kartotek i układ akcji */
.client-card-head{min-height:4.25rem}.client-card-head-main{flex:1;min-width:0}.client-card-head .row-actions,.client-location-row .row-actions{display:flex;align-items:center;gap:.45rem;flex:0 0 auto;white-space:nowrap}.client-card-head .client-card-arrow{display:inline-flex;align-items:center;justify-content:center;width:1.35rem}.client-location-row{cursor:pointer}.client-location-row:hover{background:var(--amber-bg)}.reference-filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) auto;gap:.6rem;align-items:end;margin:.8rem 0}.reference-filters label{margin:0;font-size:.72rem;font-weight:800}.reference-filters .field{margin-top:.25rem;min-height:2.7rem}.reference-entry-list{border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.reference-entry-row{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;padding:.8rem .9rem;border-bottom:1px solid var(--line);background:var(--card);cursor:pointer}.reference-entry-row:last-child{border-bottom:0}.reference-entry-row:hover{background:var(--amber-bg)}.reference-entry-main{min-width:0}.reference-entry-status{display:flex;align-items:center;gap:.4rem;white-space:nowrap}.reference-dialog{width:min(68rem,calc(100vw - 2rem))}
@media(max-width:700px){.client-card-head{flex-direction:column;align-items:stretch}.client-card-head .row-actions{justify-content:flex-end;width:100%;flex-wrap:wrap}.client-location-row{align-items:flex-start}.client-location-row .row-actions{flex-direction:column;align-items:stretch}.client-location-row .row-actions .btn{width:100%}.reference-filters{grid-template-columns:1fr 1fr}.reference-filters label:nth-child(3){grid-column:1/-1}.reference-filters .btn{grid-column:1/-1;width:100%}.reference-entry-row{flex-direction:column}.reference-entry-status{width:100%;justify-content:space-between}}

/* v0.86 — mobile layout balance */
@media(max-width:700px){
  :root[data-scale="90"]{font-size:14px}:root[data-scale="100"]{font-size:15px}:root[data-scale="110"]{font-size:16px}:root[data-scale="120"]{font-size:17px}
  .content{padding:.8rem .72rem 1rem}.topbar{height:3.55rem;padding:0 .7rem}.topbar>strong{font-size:1rem}.mobile-menu{min-width:2.6rem;min-height:2.6rem;padding:.35rem}
  h1{font-size:1.45rem;line-height:1.12}.page-head{margin-bottom:.8rem}.page-head .muted{font-size:.8rem;line-height:1.4}
  .card{padding:.75rem;border-radius:.72rem}.kpi{min-height:4.4rem}.kpi strong{font-size:1.35rem}.kpi span{font-size:.7rem}.section{margin:1.05rem .05rem .5rem}
  .btn{min-height:2.7rem;padding:.58rem .7rem;font-size:.82rem}.field{min-height:2.7rem;padding:.62rem .7rem;font-size:.88rem}.dialog label{font-size:.72rem;margin-top:.68rem}.dialog .field{min-height:2.7rem;margin-top:.25rem}
  .dialog{width:calc(100vw - .7rem);max-width:calc(100vw - .7rem);max-height:calc(100dvh - .7rem);padding:.75rem;border-radius:.82rem}.dialog-head{padding-bottom:.65rem;margin-bottom:.65rem}.dialog-head h2{font-size:1.08rem}.dialog-head .btn{width:2.7rem;height:2.7rem;min-height:2.7rem;padding:0;font-size:1.05rem}.entry-edit-note,.admin-finish-note{font-size:.76rem;line-height:1.42;padding:.58rem .65rem}.form-error{font-size:.74rem;padding:.55rem}
  .user-presence-row{padding:.62rem 0;gap:.55rem}.user-presence-main .title{font-size:.82rem}.user-presence-main .meta{font-size:.69rem}.user-row-admin-actions{grid-template-columns:repeat(4,2.35rem)!important;gap:.32rem}.user-row-admin-actions .btn{width:2.35rem!important;height:2.35rem!important;min-height:2.35rem!important}
  .dashboard-workspace{gap:.65rem}.dashboard-section-head h2{font-size:.92rem}.dashboard-list{padding:.55rem .7rem}.dashboard-kpi{padding:.7rem}.admin-dashboard-head h1{font-size:1.45rem}.admin-dashboard-head .muted{font-size:.78rem}
  .calendar-toolbar{gap:.5rem}.calendar-tools-left,.calendar-tools-right{gap:.32rem}.segmented button{min-height:2.55rem;padding:.5rem .65rem;font-size:.78rem}.calendar-range-btn{min-width:0;width:100%}.calendar-range-wrap{width:100%}.calendar-picker{position:fixed;left:.35rem;right:.35rem;top:4rem;width:auto;grid-template-columns:8.5rem 1fr;max-height:calc(100dvh - 4.5rem);overflow:auto}.calendar-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}.calendar-grid-day{min-width:31rem!important}.calendar-entry{padding:.3rem .38rem!important}.calendar-entry-text{font-size:.62rem!important;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.calendar-grid-head{padding:.55rem .6rem}.calendar-day-total{font-size:.62rem}
  .time-entry-dialog{width:calc(100vw - .7rem);max-width:calc(100vw - .7rem)}.time-entry-form{padding:.75rem}.time-entry-row{padding:.55rem 0}.time-entry-label{font-size:.72rem}.time-entry-form textarea.field{min-height:4rem}
  .request-row .title{font-size:.82rem}.request-row .meta{font-size:.69rem}.request-actions .btn{min-height:2.45rem}.client-card-head{padding:.75rem}.client-card-head .title{font-size:.85rem}.client-location-row{padding:.6rem .75rem}
  .team-map-canvas{min-height:18rem}.team-map-side{max-height:13rem}.team-map-item{padding:.6rem .7rem}
}
/* v0.86 — raporty: rytm, ikony, spacing */
.report-page{max-width:92rem;margin:0 auto;gap:1rem}.report-topbar{align-items:flex-end;gap:.8rem}.report-top-left,.report-top-right,.report-summary-actions{gap:.55rem}.report-top-left{min-width:0}.report-top-right{flex:0 1 auto}.report-select,.report-tabs button,.report-range .btn,.report-summary-actions>.btn,.report-summary-actions>.report-select{min-height:2.8rem}.report-tabs{box-shadow:0 1px 0 color-mix(in srgb,var(--line) 60%,transparent)}.report-tabs button{padding:.62rem .9rem}.report-tabs button.active{box-shadow:inset 0 -3px var(--amber)}.report-range{grid-template-columns:2.8rem minmax(15rem,1fr) 2.8rem}.report-range .btn{font-size:1rem;font-weight:900}.report-export-select{min-width:8.8rem}.report-filterbar{gap:.65rem;padding:.85rem;align-items:end;box-shadow:0 .2rem .7rem rgba(28,25,23,.035)}.report-filter label{margin-bottom:.3rem}.report-filter .field{min-height:2.8rem}.report-filter-apply{min-height:2.8rem}.report-panel{box-shadow:0 .25rem 1rem rgba(28,25,23,.04)}.report-summarybar{min-height:4.15rem;padding:.75rem 1rem;gap:.8rem}.report-total{font-size:1.2rem}.report-summary-actions{align-items:center}.report-summary-actions>.btn:first-child{padding-inline:1.05rem}.report-action-btn{width:2.8rem;min-width:2.8rem!important;padding:0!important;font-size:1rem;line-height:1}.report-toggle{min-height:2.8rem;padding:0 .35rem}.report-toggle input{width:1rem;height:1rem;margin:0}.report-chart-wrap{padding:1rem 1.05rem 1.1rem}.report-group-select{min-width:11rem;margin-bottom:.9rem}.report-chart{height:24rem;gap:.8rem;padding:3rem .8rem 2.8rem}.report-bar{width:min(76%,6.8rem);border-radius:.45rem .45rem 0 0}.report-bar-value{font-size:.7rem;top:-1.45rem}.report-bar-label{font-size:.66rem;bottom:-1.75rem}.report-note{padding:.7rem 1rem}
@media(max-width:1100px){.report-topbar{align-items:stretch}.report-top-left,.report-top-right{flex:1 1 100%;width:100%}.report-top-right{justify-content:space-between}.report-filterbar{grid-template-columns:repeat(4,minmax(0,1fr))}.report-filter-apply{grid-column:span 2}}
@media(max-width:700px){.report-page{gap:.75rem}.report-topbar{gap:.55rem}.report-top-right{display:grid;grid-template-columns:minmax(0,1fr) 7.5rem;align-items:stretch}.report-range{grid-column:1/-1}.report-export-select{width:100%;min-width:0}.report-tabs button{padding:.55rem .55rem;font-size:.7rem}.report-filterbar{grid-template-columns:1fr 1fr;padding:.65rem;gap:.55rem}.report-filter-apply{grid-column:1/-1}.report-summarybar{align-items:flex-start;padding:.65rem .75rem}.report-summary-actions{width:100%;display:grid;grid-template-columns:1fr 2.65rem 2.65rem}.report-summary-actions>.btn:first-child{grid-column:1/-1;width:100%}.report-summary-actions>.report-select{grid-column:1/-1;width:100%}.report-toggle{grid-column:1/-1;justify-content:flex-start}.report-chart-wrap{padding:.65rem}.report-chart{height:17rem;gap:.55rem;padding:2.4rem .45rem 2.55rem;overflow-x:auto}.report-bar-wrap{min-width:3.8rem}.report-bar{width:70%}.report-bar-label{font-size:.6rem}.report-bar-value{font-size:.62rem}}
@media(max-width:480px){.report-filterbar{grid-template-columns:1fr}.report-top-right{grid-template-columns:1fr}.report-export-select{grid-column:1}.report-tabs{overflow-x:auto}.report-tabs button{flex:0 0 auto}.report-summary-actions{grid-template-columns:1fr 2.5rem 2.5rem}}
/* v0.86 — raporty: równe kontrolki */
.report-topbar{align-items:center;gap:.75rem}
.report-top-left,.report-top-right{align-items:center;gap:.6rem}
.report-top-left{flex:0 1 auto}
.report-top-right{display:flex;flex:1 1 auto;justify-content:flex-end}
.report-topbar .report-select,.report-topbar .report-tabs,.report-topbar .report-tabs button,.report-topbar .report-range,.report-topbar .report-range .btn{height:2.65rem;min-height:2.65rem;box-sizing:border-box}
.report-topbar .report-select{margin:0;padding-top:0;padding-bottom:0;line-height:1;font-size:.78rem}
.report-top-left>.report-select{width:12.5rem;flex:0 0 12.5rem}
.report-tabs{display:flex;align-items:stretch;flex:0 0 auto}
.report-tabs button{display:inline-flex;align-items:center;justify-content:center;padding:0 .9rem;line-height:1;font-size:.78rem;white-space:nowrap}
.report-range{display:grid;grid-template-columns:2.65rem minmax(15rem,1fr) 2.65rem;align-items:stretch;min-width:26rem;max-width:34rem}
.report-range .btn{display:inline-flex;align-items:center;justify-content:center;width:100%;font-size:1rem;line-height:1}
.report-range-main{width:100%;min-width:0}
.report-export-select{width:8.8rem;min-width:8.8rem}
@media(max-width:1100px){.report-top-left,.report-top-right{align-items:stretch}.report-topbar .report-select,.report-topbar .report-tabs,.report-topbar .report-tabs button,.report-topbar .report-range,.report-topbar .report-range .btn{height:2.7rem;min-height:2.7rem}.report-top-right{display:flex}.report-range{flex:1;max-width:none}.report-export-select{flex:0 0 8.8rem}}
@media(max-width:700px){.report-top-left{display:grid;grid-template-columns:1fr;width:100%}.report-top-left>.report-select{width:100%;flex-basis:auto}.report-tabs{width:100%}.report-tabs button{flex:1;min-width:0;padding-inline:.55rem}.report-top-right{display:grid;grid-template-columns:minmax(0,1fr) 8.8rem;width:100%}.report-range{grid-column:1/-1;min-width:0}.report-export-select{width:100%;min-width:0}}
@media(max-width:480px){.report-top-right{grid-template-columns:1fr}.report-export-select{grid-column:1;width:100%}.report-tabs button{font-size:.7rem}}
/* v0.86 — szybka edycja dnia */
.worker-day-actions{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin:.75rem 0;padding:1rem}.worker-day-actions h2{margin:.1rem 0 .25rem;font-size:1rem}.worker-day-actions .muted{font-size:.78rem}.worker-day-actions-buttons,.calendar-day-actions{display:flex;gap:.55rem;align-items:center;flex:none}.worker-day-actions-buttons .btn,.calendar-day-actions .btn{min-height:2.75rem;white-space:nowrap}.calendar-day-actions{margin-right:.6rem}
@media(max-width:700px){.worker-day-actions{align-items:stretch;flex-direction:column;gap:.7rem;padding:.8rem}.worker-day-actions-buttons,.calendar-day-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;margin-right:0}.worker-day-actions-buttons .btn,.calendar-day-actions .btn{width:100%;padding-inline:.55rem}.worker-dashboard .worker-day-actions{margin-top:.45rem}}
@media(max-width:480px){.worker-day-actions-buttons,.calendar-day-actions{grid-template-columns:1fr}}
@media(max-width:700px){.worker-history-head,.worker-history-head + .card{display:none}.worker-calendar-kpi{display:flex;align-items:center;justify-content:space-between;gap:.45rem}.worker-calendar-kpi strong{font-size:1rem!important}.worker-calendar-kpi span{flex:1}.worker-calendar-kpi .btn{width:auto!important;min-height:2.35rem;padding:.35rem .55rem;font-size:.68rem}}
/* v0.86 — czas pracy i dzień pracownika */
.time-day-summary{margin-bottom:.85rem}.time-day-summary-head,.user-day-section-head{display:flex;align-items:center;justify-content:space-between;gap:1rem}.time-day-summary-head h2{margin:.15rem 0 .25rem}.time-day-summary-actions{display:flex;gap:.55rem;flex-wrap:wrap;flex:none}.time-day-summary-actions .btn,.user-day-section-head .btn{min-width:8.5rem}.user-day-controls{display:grid;grid-template-columns:1fr 1fr;gap:.8rem}.user-day-summary{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:.65rem}.user-day-summary .card{min-width:0}.user-day-summary strong{display:block;margin-top:.2rem}.user-day-gps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem}
@media(max-width:700px){.time-day-summary-head,.user-day-section-head{align-items:stretch;flex-direction:column}.time-day-summary-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}.time-day-summary-actions .btn,.user-day-section-head .btn{width:100%;min-width:0}.user-day-controls,.user-day-summary,.user-day-gps{grid-template-columns:1fr}.user-day-summary .card{padding:.8rem}.user-day-section-head{gap:.45rem}.user-day-section-head>div{width:100%}}
@media(max-width:480px){.time-day-summary-actions{grid-template-columns:1fr}}
.time-day-preview{border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;margin-top:.8rem}.time-day-row{display:grid;grid-template-columns:7rem minmax(0,1fr) auto;gap:.75rem;align-items:start;padding:.78rem .85rem;border-bottom:1px solid var(--line);background:var(--card)}.time-day-row:last-child{border-bottom:0}.time-day-row-time,.time-day-row-duration{font-variant-numeric:tabular-nums;color:var(--muted);font-size:.75rem}.time-day-row-duration{color:var(--ink);white-space:nowrap}.time-day-tags{display:flex;flex-wrap:wrap;gap:.3rem;margin-top:.35rem}.time-day-tags span{border:1px solid var(--line);border-radius:999px;padding:.16rem .42rem;font-size:.65rem;color:var(--muted)}.time-day-allocation{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.75rem;border-top:1px solid var(--line);background:var(--amber-bg)}
@media(max-width:700px){.time-day-row{grid-template-columns:5.6rem minmax(0,1fr);gap:.55rem;padding:.7rem}.time-day-row-duration{grid-column:2}.time-day-allocation{align-items:stretch;flex-direction:column}.time-day-allocation .btn{width:100%}}
.admin-entry-mark{display:inline-flex;align-items:center;width:max-content;margin:.35rem 0;color:#b45309;font-size:.78rem;font-weight:700;letter-spacing:.01em}
.ui-diagnostic{max-width:60rem;margin:1rem auto;border-left:4px solid var(--red);background:var(--red-bg)}.ui-diagnostic h2{margin:.25rem 0}.ui-diagnostic pre{white-space:pre-wrap;overflow:auto;padding:.8rem;border:1px solid color-mix(in srgb,var(--red) 28%,var(--line));border-radius:.6rem;background:var(--card);color:var(--red);font:700 .72rem/1.5 ui-monospace,SFMono-Regular,Menlo,monospace}.ui-diagnostic-actions{display:flex;gap:.5rem;flex-wrap:wrap}
.timeline-row-clickable{cursor:pointer;transition:border-color .15s,box-shadow .15s}.timeline-row-clickable:hover,.timeline-row-clickable:focus-visible{border-color:var(--amber);box-shadow:0 0 0 2px var(--amber-bg);outline:none}
.user-day-row>div{min-width:0;overflow-wrap:anywhere}.user-day-row>div>.btn{display:block;width:max-content;max-width:100%;margin-top:.55rem;clear:both}.user-day-row>div>.entry-actions{display:flex;margin-top:.55rem;justify-content:flex-start;gap:.45rem}.user-day-row>div>.entry-edited-mark{display:block;margin-top:.45rem}.user-day-section-actions{display:flex;align-items:center;justify-content:flex-end;gap:.45rem;flex-wrap:wrap}.user-day-section-actions .btn{white-space:nowrap}.user-day-admin-actions{row-gap:.55rem}

.correction-intro{display:grid;gap:.25rem;padding:.8rem .9rem;border-left:4px solid var(--amber);border-radius:.55rem;background:var(--amber-bg)}.correction-intro strong{font-size:1rem}.correction-intro span,.correction-detail-card small{color:var(--muted);font-size:.72rem}.correction-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;margin:.8rem 0}.correction-detail-card{display:grid;gap:.28rem;padding:.8rem;border:1px solid var(--line);border-radius:.6rem;background:var(--surface-2)}.correction-detail-card span{font-size:.68rem;color:var(--muted);font-weight:800;text-transform:uppercase;letter-spacing:.04em}.correction-detail-card strong{font-size:1.15rem;font-variant-numeric:tabular-nums}.correction-meta{display:grid;gap:.35rem;padding:.7rem .8rem;border-top:1px solid var(--line);font-size:.75rem}.user-day-row>div>.entry-edited-marker{display:inline-flex;margin:.45rem .35rem .05rem 0;vertical-align:middle}.user-day-row>div>.entry-actions{display:inline-flex;margin:.45rem .35rem 0 0;vertical-align:middle;justify-content:flex-start}.user-day-row>div>.btn{margin-top:.45rem}.entry-edited-marker{min-height:2rem;padding:.35rem .6rem;font-size:.72rem;font-weight:900;white-space:nowrap}@media(max-width:560px){.correction-detail-grid{grid-template-columns:1fr}.entry-edited-marker{font-size:.68rem}}

.vehicle-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(20rem,1fr));gap:.8rem}.vehicle-card{padding:1rem}.vehicle-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:.7rem}.vehicle-card-head h2{margin:.15rem 0 .25rem}.vehicle-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem;margin:1rem 0}.vehicle-facts div{padding:.6rem;border:1px solid var(--line);border-radius:.55rem;background:var(--surface-2)}.vehicle-facts span{display:block;color:var(--muted);font-size:.65rem}.vehicle-facts strong{display:block;margin-top:.2rem;font-size:.85rem}.vehicle-card-actions{display:flex;gap:.45rem;flex-wrap:wrap}.vehicle-expense-list{display:grid;gap:.35rem;margin-top:.8rem;padding-top:.7rem;border-top:1px solid var(--line)}.vehicle-expense-row{display:grid;grid-template-columns:5.3rem 5rem 5.5rem minmax(0,1fr) auto;align-items:center;gap:.4rem;font-size:.72rem}.vehicle-expense-row small{color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vehicle-expense-row .btn{min-height:1.8rem;padding:.2rem .45rem;font-size:.62rem}.vehicle-access-list{display:grid;gap:.45rem}.vehicle-access-row{display:flex;justify-content:space-between;align-items:center;padding:.7rem;border:1px solid var(--line);border-radius:.55rem}.vehicle-access-row input{width:1.2rem;height:1.2rem;accent-color:var(--amber)}.vehicle-expense-person{padding:.7rem;border-radius:.55rem;background:var(--amber-bg);margin-bottom:.8rem}@media(max-width:560px){.vehicle-grid{grid-template-columns:1fr}.vehicle-facts{grid-template-columns:1fr 1fr}.vehicle-facts div:last-child{grid-column:1/-1}.vehicle-expense-row{grid-template-columns:1fr auto;gap:.2rem .5rem;padding:.45rem 0;border-bottom:1px solid var(--line)}.vehicle-expense-row span:nth-child(1),.vehicle-expense-row strong,.vehicle-expense-row span:nth-child(3){grid-column:auto}.vehicle-expense-row small{grid-column:1/-1;white-space:normal}.vehicle-expense-row .btn{grid-column:2;grid-row:1/3}}
/* v1.44 — równe karty floty + status przeglądu */
.vehicle-grid{align-items:stretch}.vehicle-card{display:flex;flex-direction:column;min-width:0}.vehicle-expense-list{margin-top:auto}.vehicle-expense-row{grid-template-columns:6.2rem 5.8rem 6.5rem minmax(0,1fr) auto;min-width:0}.vehicle-expense-row>*{min-width:0}.vehicle-inspection-alert{margin:-.35rem 0 .8rem;padding:.48rem .62rem;border:1px solid var(--line);border-radius:.55rem;font-size:.7rem;font-weight:800}.vehicle-inspection-alert.ok{background:var(--green-bg);color:var(--green)}.vehicle-inspection-alert.warn{background:var(--amber-bg);color:var(--amber-d);border-color:color-mix(in srgb,var(--amber) 35%,var(--line))}.vehicle-inspection-alert.danger{background:var(--red-bg);color:var(--red);border-color:color-mix(in srgb,var(--red) 35%,var(--line))}.vehicle-inspection-alert.neutral{background:var(--surface-2);color:var(--muted)}
/* v1.44 — analityczny Dashboard administratora */
.dashboard-kpi{position:relative;align-items:flex-start;flex-direction:column;gap:.28rem;min-height:6.1rem}.dashboard-kpi strong{font-size:1.45rem}.dashboard-kpi span{color:var(--muted);font-size:.72rem}.dashboard-kpi em{font-style:normal;font-size:.62rem;color:var(--muted-2)}.dashboard-kpi em.good{color:var(--green)}.dashboard-kpi em.warn{color:var(--amber-d)}.dashboard-analytics-grid,.dashboard-content-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(19rem,.8fr);gap:1rem;margin-top:1rem}.dashboard-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:.8rem;margin-bottom:.9rem}.dashboard-panel-head h2{font-size:.94rem}.dashboard-panel-head p{margin:.25rem 0 0}.dashboard-chart-card,.dashboard-insights{padding:1rem}.dashboard-bars{height:13rem;display:grid;grid-template-columns:repeat(7,1fr);align-items:end;gap:.55rem;border-bottom:1px solid var(--line);padding-top:1rem}.dashboard-bar-col{height:100%;display:grid;grid-template-rows:1.3rem 1fr 1.2rem;align-items:end;text-align:center;color:var(--muted);font-size:.62rem}.dashboard-bar-col>div{height:100%;display:flex;align-items:flex-end;justify-content:center}.dashboard-bar-col>div>i{display:block;width:min(2.2rem,70%);min-height:.35rem;border-radius:.45rem .45rem .15rem .15rem;background:linear-gradient(180deg,var(--amber),var(--amber-d));box-shadow:0 .2rem .5rem rgba(180,83,9,.15)}.dashboard-bar-col small{text-transform:capitalize;font-size:.64rem}.dashboard-insight-row,.dashboard-team-row,.dashboard-fleet-row{width:100%;border:0;background:transparent;color:inherit;text-align:left;cursor:pointer}.dashboard-insight-row{display:grid;grid-template-columns:1.8rem minmax(0,1fr) auto;align-items:center;gap:.55rem;padding:.65rem 0;border-bottom:1px solid var(--line)}.dashboard-insight-row:last-child{border-bottom:0}.dashboard-insight-row span,.dashboard-fleet-row span{min-width:0}.dashboard-insight-row b,.dashboard-fleet-row b{display:block;font-size:.74rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dashboard-insight-row small,.dashboard-fleet-row small{display:block;color:var(--muted);font-size:.65rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:.15rem}.dashboard-insight-row>strong{color:var(--muted-2);font-size:1.2rem}.dashboard-insight-icon{display:grid;place-items:center;width:1.55rem;height:1.55rem;border-radius:.5rem;font-style:normal;font-weight:900;font-size:.72rem}.dashboard-insight-icon.red{background:var(--red-bg);color:var(--red)}.dashboard-insight-icon.amber{background:var(--amber-bg);color:var(--amber-d)}.dashboard-insight-icon.blue{background:var(--blue-bg);color:var(--blue)}.dashboard-clear-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.65rem;min-height:15rem;padding:1rem .3rem;color:var(--green);text-align:center}.dashboard-clear-state img{width:13rem;height:9.2rem;object-fit:cover;border-radius:.9rem;filter:saturate(.92);animation:panda-rest 3.2s ease-in-out infinite;transform-origin:50% 90%;box-shadow:0 .35rem 1rem rgba(38,31,24,.12)}.dashboard-clear-state-copy{display:grid;gap:.2rem}.dashboard-clear-state span{color:var(--muted);font-size:.72rem}@keyframes panda-rest{0%,100%{transform:translateY(0) rotate(-1deg)}50%{transform:translateY(-4px) rotate(1deg)}}@media(max-width:900px){.dashboard-clear-state{min-height:12rem}.dashboard-clear-state img{width:11rem;height:7.8rem}}.dashboard-team-list,.dashboard-fleet-list{padding:.35rem .9rem}.dashboard-team-row{display:grid;grid-template-columns:2.1rem minmax(0,1fr) minmax(5rem,8rem) 1rem;align-items:center;gap:.65rem;padding:.7rem .1rem;border-bottom:1px solid var(--line)}.dashboard-team-row:last-child,.dashboard-fleet-row:last-child{border-bottom:0}.dashboard-team-row>i{display:grid;place-items:center;width:2rem;height:2rem;border-radius:.65rem;background:var(--amber-bg);color:var(--amber-d);font-style:normal;font-size:.66rem;font-weight:900}.dashboard-team-row span{min-width:0}.dashboard-team-row b{display:block;font-size:.76rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dashboard-team-row small{display:block;color:var(--muted);font-size:.64rem;margin-top:.12rem}.dashboard-team-row>em{height:.32rem;border-radius:99px;background:var(--surface-2);overflow:hidden}.dashboard-team-row>em>i{display:block;height:100%;border-radius:inherit;background:var(--amber)}.dashboard-team-row>strong{font-size:.65rem;color:var(--green);text-align:right}.dashboard-fleet-row{display:grid;grid-template-columns:.45rem minmax(0,1fr) auto;align-items:center;gap:.55rem;padding:.7rem .1rem;border-bottom:1px solid var(--line)}.dashboard-fleet-row>i{width:.45rem;height:1.9rem;border-radius:99px;background:var(--amber)}.dashboard-fleet-row>strong{font-size:.7rem;white-space:nowrap}.dashboard-fleet-foot{padding:.7rem .2rem;color:var(--muted);font-size:.68rem}.dashboard-fleet-list .empty{padding:.7rem 0;box-shadow:none}.dashboard-team-panel> .dashboard-section-head,.dashboard-fleet-panel>.dashboard-section-head{margin-bottom:.5rem}
@media(max-width:900px){.dashboard-analytics-grid,.dashboard-content-grid{grid-template-columns:1fr;gap:.7rem;margin-top:.7rem}.dashboard-chart-card,.dashboard-insights{padding:.8rem}.dashboard-bars{height:10rem;gap:.25rem}.dashboard-team-list,.dashboard-fleet-list{padding:.25rem .7rem}}
@media(max-width:560px){.dashboard-kpi{min-height:5.4rem}.dashboard-kpi strong{font-size:1.16rem}.dashboard-team-row{grid-template-columns:2rem minmax(0,1fr) 4rem .7rem;gap:.45rem}.dashboard-team-row>i{width:1.9rem;height:1.9rem}.dashboard-team-row>em{min-width:2.6rem}.dashboard-bars{height:8.5rem}.dashboard-panel-head h2{font-size:.88rem}}
/* v1.44 — Flota wyrównana z panelem Stan zespołu */
.dashboard-content-grid>section,.dashboard-content-grid>aside{display:flex;flex-direction:column;min-width:0}.dashboard-content-grid>aside .dashboard-fleet-list{flex:1;min-height:0}.dashboard-content-grid>aside .dashboard-fleet-foot{margin-top:auto}
/* v1.44 — dashboard floty: kliknięcie + alert przeglądów */
.dashboard-inspection-alert{margin:.65rem 0 0;padding:.8rem .9rem;border-color:color-mix(in srgb,var(--amber) 35%,var(--line));background:var(--amber-bg)}.dashboard-inspection-alert-head{display:flex;align-items:center;justify-content:space-between;gap:.6rem}.dashboard-inspection-alert-head h3{margin:0;font-size:.8rem}.dashboard-inspection-alert-head span{display:block;margin-top:.18rem;color:var(--muted);font-size:.66rem}.dashboard-inspection-alert-head>strong{display:grid;place-items:center;width:1.45rem;height:1.45rem;border-radius:50%;background:var(--amber);color:#fff;font-size:.78rem}.dashboard-inspection-alert-list{display:grid;gap:.3rem;margin-top:.55rem}.dashboard-inspection-alert-list button{display:flex;justify-content:space-between;gap:.6rem;width:100%;padding:.42rem 0;border:0;border-top:1px solid color-mix(in srgb,var(--amber) 20%,var(--line));background:transparent;color:inherit;text-align:left;cursor:pointer;font-size:.68rem}.dashboard-inspection-alert-list b{white-space:nowrap}.dashboard-fleet-row{cursor:pointer}.dashboard-fleet-row:focus-visible,.dashboard-inspection-alert-list button:focus-visible{outline:2px solid var(--amber);outline-offset:2px}
/* v1.44 — układ zgodny z makietą: Flota lewa, Stan zespołu prawy */
.dashboard-content-grid{grid-template-columns:minmax(0,1.55fr) minmax(19rem,.75fr)}.dashboard-content-grid>aside{grid-column:1;grid-row:1}.dashboard-content-grid>section{grid-column:2;grid-row:1}.dashboard-content-grid>aside .dashboard-fleet-list{scrollbar-width:none;scrollbar-color:var(--amber) var(--surface-2);scrollbar-gutter:stable;padding-right:.55rem}.dashboard-content-grid>aside .dashboard-fleet-list::-webkit-scrollbar{display:none;width:0;height:0}.dashboard-content-grid>aside .dashboard-fleet-list::-webkit-scrollbar-track{background:var(--surface-2);border-radius:99px}.dashboard-content-grid>aside .dashboard-fleet-list::-webkit-scrollbar-thumb{background:var(--amber);border-radius:99px;border:2px solid var(--surface-2)}
@media(max-width:900px){.dashboard-content-grid>aside{grid-column:1;grid-row:1}.dashboard-content-grid>section{grid-column:1;grid-row:2}}
/* v1.44 — flota: lista przewijana, całość równa panelowi zespołu */
.dashboard-content-grid>aside{height:100%;min-height:0;overflow:hidden}.dashboard-content-grid>aside .dashboard-fleet-list{overflow-y:scroll;min-height:0;max-height:none;background:linear-gradient(to right,transparent calc(100% - 14px),var(--surface-2) calc(100% - 14px),var(--surface-2) calc(100% - 2px),transparent calc(100% - 2px)),linear-gradient(to right,transparent calc(100% - 14px),var(--amber) calc(100% - 14px),var(--amber) calc(100% - 2px),transparent calc(100% - 2px));background-size:100% 100%,100% 34%;background-position:0 0,0 0;background-repeat:no-repeat;padding-right:1rem}.dashboard-content-grid>aside .dashboard-inspection-alert{flex:0 0 auto}.dashboard-content-grid>aside .dashboard-fleet-foot{flex:0 0 auto}
/* v1.44 — stały tor przewijania floty i białe tło */.dashboard-content-grid>aside .dashboard-fleet-list{position:relative;background-color:#fff!important;background-image:none!important}.dashboard-content-grid>aside .dashboard-fleet-list::before{content:"";position:absolute;z-index:3;right:.28rem;top:.45rem;bottom:.45rem;width:.6rem;border-radius:99px;background:var(--surface-2);pointer-events:none}.dashboard-content-grid>aside .dashboard-fleet-list::after{content:"";position:absolute;z-index:4;right:.28rem;top:.45rem;width:.6rem;height:34%;border-radius:99px;background:var(--amber);box-shadow:0 1px 3px rgba(180,83,9,.28);pointer-events:none}.client-merge-note{display:inline-flex;align-items:center;gap:.3rem;margin-top:.35rem;padding:.22rem .48rem;border:1px solid color-mix(in srgb,var(--amber) 35%,var(--line));border-radius:999px;background:var(--amber-bg);color:var(--amber-d);font-size:.65rem;font-weight:800}.client-card .row-actions{display:flex;align-items:center;gap:.4rem;flex-wrap:wrap}.client-card .row-actions .btn{white-space:nowrap}@media(max-width:700px){.client-card-head{align-items:flex-start!important}.client-card .row-actions{justify-content:flex-start;margin-top:.45rem}/* v1.44 — stały tor przewijania floty i białe tło */.dashboard-content-grid>aside .dashboard-fleet-list{position:relative;background-color:#fff!important;background-image:none!important}.dashboard-content-grid>aside .dashboard-fleet-list::before{content:"";position:absolute;z-index:3;right:.28rem;top:.45rem;bottom:.45rem;width:.6rem;border-radius:99px;background:var(--surface-2);pointer-events:none}.dashboard-content-grid>aside .dashboard-fleet-list::after{content:"";position:absolute;z-index:4;right:.28rem;top:.45rem;width:.6rem;height:34%;border-radius:99px;background:var(--amber);box-shadow:0 1px 3px rgba(180,83,9,.28);pointer-events:none}.client-merge-note{font-size:.6rem;max-width:100%;white-space:normal}}
.client-link-title,.client-link-tag{cursor:pointer}.client-link-title:hover{color:var(--amber-d);text-decoration:underline}.client-link-tag{border:0;background:var(--amber-bg);font:inherit}.client-card-hero{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start;padding:.85rem;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-2)}.client-card-hero h2{margin:.15rem 0;font-size:1.3rem}.client-mini-kpis{grid-template-columns:repeat(4,minmax(0,1fr));margin:.8rem 0}.client-mini-kpis .kpi{padding:.75rem}.client-mini-kpis strong{font-size:1.2rem}@media(max-width:650px){.client-mini-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}
/* v1.44 — karta klienta: lokalizacje pionowo + akcje mobilne */
.client-detail-locations{display:grid;gap:.6rem}.client-detail-location{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.75rem;align-items:center;padding:.72rem .82rem;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-2)}.client-detail-location-actions{display:flex;gap:.45rem;flex-wrap:wrap;justify-content:flex-end}.client-detail-location-actions .btn{white-space:nowrap}@media(max-width:650px){.client-detail-location{grid-template-columns:1fr}.client-detail-location-actions{justify-content:flex-start}.client-detail-location-actions .btn{flex:1;min-width:7rem}}
.dashboard-fleet-scroll-track{position:absolute;z-index:6;right:.28rem;top:0;width:.6rem;border-radius:99px;background:var(--surface-2);cursor:pointer;touch-action:none}.dashboard-fleet-scroll-thumb{position:absolute;left:0;top:0;width:100%;min-height:1.5rem;border-radius:99px;background:var(--amber);box-shadow:0 1px 3px rgba(180,83,9,.28);cursor:grab;touch-action:none}.dashboard-fleet-scroll-thumb:active{cursor:grabbing}.dashboard-content-grid>aside.dashboard-fleet-panel{position:relative}.dashboard-content-grid>aside .dashboard-fleet-list::before,.dashboard-content-grid>aside .dashboard-fleet-list::after{display:none!important}.team-map-section{gap:0}.team-map-head{padding:1rem 1.1rem;border:1px solid var(--line);border-bottom:0;border-radius:var(--radius) var(--radius) 0 0;background:var(--card);align-items:center}.team-map-head-copy{min-width:0}.team-map-controls{justify-content:flex-end;flex-shrink:0}.team-map-card{border-radius:0 0 var(--radius) var(--radius);border-top:1px solid var(--line)}@media(max-width:700px){.team-map-head{padding:.8rem}.team-map-controls{width:100%;justify-content:stretch}} .worker-quick-card{position:relative}.worker-quick-icon{display:grid;place-items:center;flex:0 0 2.45rem;width:2.45rem;height:2.45rem;border-radius:50%;background:var(--amber-bg);color:var(--amber-d);font-size:1.35rem;line-height:1}.worker-quick-card>div{min-width:0;flex:1}.worker-quick-card h3{white-space:normal}.worker-quick-card--vehicle{border-left:.25rem solid var(--amber)}@media(max-width:540px){.worker-quick-grid{grid-template-columns:1fr;gap:.65rem}.worker-quick-card{min-height:5.8rem;padding:.85rem}.worker-quick-icon{flex-basis:2.8rem;width:2.8rem;height:2.8rem;font-size:1.5rem}.worker-quick-card .btn{min-height:2.7rem;padding:.5rem .65rem}} .worker-quick-icon{font-weight:800}.worker-quick-card h3{font-size:1rem}.worker-quick-card p{font-size:.72rem}@media(max-width:540px){.worker-dashboard .page-head h1{font-size:1.55rem}.worker-dashboard .page-head .muted{font-size:.82rem}.worker-day-actions{padding:1rem}.worker-day-actions h2{font-size:1.18rem}.worker-day-actions .muted{font-size:.78rem}.worker-day-actions-buttons .btn{min-height:3.25rem;font-size:.9rem}.worker-start-card{padding:1rem}.worker-start-card h2{font-size:1.18rem}.worker-start-card .muted{font-size:.78rem}.worker-start-card .btn{min-height:3.35rem;font-size:.92rem}.worker-quick-card{min-height:6.35rem;padding:1rem}.worker-quick-icon{flex-basis:3.15rem;width:3.15rem;height:3.15rem;font-size:1.7rem}.worker-quick-card h3{font-size:.98rem}.worker-quick-card p{font-size:.72rem}.worker-quick-card .btn{min-height:3rem;font-size:.78rem;padding:.55rem .7rem}} 
/* v1.44 — Zakupy firmowe */
.purchase-summary{margin:.8rem 0}.purchase-list{display:grid;gap:.55rem}.purchase-row{display:grid;grid-template-columns:6.5rem minmax(11rem,1.7fr) minmax(9rem,1fr) 7rem 8rem 8rem;gap:.75rem;align-items:center;padding:.8rem .9rem;border:1px solid var(--line);border-radius:var(--radius);background:#fff}.purchase-row-head{font-size:.68rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:800}.purchase-row .purchase-main{min-width:0}.purchase-row .purchase-main strong{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.purchase-row .purchase-main small{display:block;color:var(--muted);margin-top:.18rem}.purchase-amount{text-align:right;font-weight:800}.purchase-form-items{display:grid;gap:.5rem}.purchase-form-item{display:grid;grid-template-columns:minmax(0,1fr) 6rem 6rem 2.5rem;gap:.45rem;align-items:center}.purchase-form-item .btn{padding:.45rem}.purchase-form-add{margin-top:.45rem}.purchase-document{display:flex;gap:.5rem;flex-wrap:wrap}.purchase-document label{display:flex;align-items:center;gap:.35rem;border:1px solid var(--line);border-radius:var(--radius-sm);padding:.6rem .75rem;cursor:pointer}.purchase-document label:has(input:checked){border-color:var(--amber);background:var(--amber-bg)}.purchase-status-toggle{display:flex;align-items:center;gap:.5rem;padding:.7rem .8rem;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-2)}.purchase-status-toggle input{width:1.1rem;height:1.1rem}.purchase-mobile-meta{display:none}@media(max-width:800px){.purchase-row{grid-template-columns:1fr auto;gap:.4rem .7rem}.purchase-row-head{display:none}.purchase-row .purchase-main{grid-column:1}.purchase-row .purchase-amount{grid-column:2;grid-row:1;text-align:right}.purchase-row .purchase-meta{grid-column:1 / -1}.purchase-row .purchase-status{grid-column:1 / -1}.purchase-mobile-meta{display:block}.purchase-form-item{grid-template-columns:minmax(0,1fr) 5rem 5rem 2.4rem}}@media(max-width:540px){.purchase-row{padding:.85rem}.purchase-form-item{grid-template-columns:1fr 5.2rem 5.2rem 2.25rem}.purchase-form-item .field{min-width:0}.purchase-summary .kpi strong{font-size:1.15rem}}
.release-dialog{width:min(38rem,100%)}.release-list{max-height:min(60vh,32rem);overflow-y:auto;display:grid;gap:.7rem;margin:.7rem 0 1rem;padding-right:.25rem}.release-entry{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-2);padding:.8rem .9rem}.release-entry-head{display:flex;justify-content:space-between;gap:.7rem;align-items:baseline}.release-entry ul{margin:.55rem 0 0;padding-left:1.15rem;color:var(--muted);font-size:.8rem;line-height:1.55}.release-entry li+li{margin-top:.2rem}.day-planner-dialog{width:min(44rem,100%)}.planner-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding-bottom:.8rem;border-bottom:1px solid var(--line)}.planner-header>div{text-align:center}.planner-date{text-transform:capitalize;color:var(--muted);font-size:.82rem;margin-top:.15rem}.planner-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:.5rem;margin:.85rem 0}.planner-summary>div{border:1px solid var(--line);border-radius:var(--radius);padding:.65rem .7rem;background:var(--surface-2)}.planner-summary span{display:block;color:var(--muted);font-size:.72rem}.planner-summary strong{display:block;font-size:1.05rem;margin-top:.2rem}.planner-section-head{display:flex;align-items:center;justify-content:space-between;margin:.7rem 0}.planner-section-head h3{margin:0}.planner-timeline{display:grid;gap:.5rem;max-height:52vh;overflow:auto;padding:.1rem}.planner-block{display:grid;grid-template-columns:1.2rem .65rem 1fr auto 1.5rem;gap:.55rem;align-items:start;border:1px solid var(--line);border-radius:var(--radius);padding:.7rem;background:var(--surface-2);cursor:grab}.planner-block:active{cursor:grabbing}.planner-drag{color:var(--muted);font-size:1.15rem;line-height:1.1}.planner-dot{width:.58rem;height:.58rem;border-radius:50%;background:var(--amber);margin-top:.25rem}.planner-block-main{min-width:0}.planner-block-head{display:flex;justify-content:space-between;gap:.5rem;align-items:baseline}.planner-block-head strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.planner-block-time{color:var(--muted);font-size:.76rem;white-space:nowrap}.planner-location{display:inline-block;margin-top:.35rem;padding:.15rem .45rem;border-radius:999px;background:var(--surface-3);color:var(--muted);font-size:.72rem}.planner-block-duration{font-weight:700;white-space:nowrap}.planner-more{border:0;background:none;color:var(--muted);font-size:1.2rem;cursor:pointer}.planner-summary-footer{display:flex;justify-content:space-between;align-items:center;gap:.6rem;margin-top:.8rem;color:var(--muted);font-size:.75rem}@media(max-width:560px){.planner-summary{grid-template-columns:repeat(2,1fr)}.planner-block{grid-template-columns:1.1rem .55rem 1fr auto}.planner-more{display:none}.planner-block-head{display:block}.planner-block-time{display:block;margin-top:.15rem}.planner-summary-footer{display:grid}.planner-summary-footer .btn{width:100%}.release-entry-head{display:grid;gap:.15rem}}/* v2.94 — formularz wpisu: stabilny spacing daty i lokalizacji */
.time-entry-time{grid-template-columns:minmax(7rem,1fr) minmax(5.8rem,1fr) .8rem minmax(5.8rem,1fr) minmax(10.5rem,1.25fr);gap:.45rem;min-width:0}
.time-entry-time>*{min-width:0}
.time-entry-time .field{width:100%}
.time-entry-time .date-field{min-width:0}
.time-entry-form .ref-pick{min-width:0;grid-template-columns:minmax(0,1fr) auto;align-items:start}
.time-entry-form .ref-pick label{min-width:0}
.time-entry-form .ref-pick select.field{min-width:0;text-overflow:ellipsis}
@media(max-width:900px) and (min-width:721px){.time-entry-time{grid-template-columns:7rem minmax(5.5rem,1fr) .8rem minmax(5.5rem,1fr) minmax(9.5rem,1.15fr)}}
/* v3.82: native client controls and semantic warning colors. */
:root{--warning-surface:#fff8e8;--warning-ink:#78350f;--warning-muted:#854d0e}
:root[data-theme="dark"]{--warning-surface:#33250f;--warning-ink:#fde68a;--warning-muted:#fcd34d}
@media(prefers-color-scheme:dark){:root[data-theme="system"]{--warning-surface:#33250f;--warning-ink:#fde68a;--warning-muted:#fcd34d}}
.client-name-button,.client-location-main{border:0;padding:0;background:transparent;text-align:left;font:inherit;color:inherit;cursor:pointer;min-width:0}
.client-name-button{font-weight:800;overflow-wrap:anywhere}.client-name-button:hover{text-decoration:underline;text-underline-offset:.2em}.client-location-main{flex:1;display:grid;gap:.2rem}.client-location-main .title,.client-location-main .meta{display:block}
.client-toggle{flex:0 0 auto;min-width:2.55rem}.client-toggle[aria-expanded="true"] svg{transform:rotate(90deg)}
.dashboard-kpi:nth-child(3) strong{color:var(--warning-ink)}.dashboard-kpi:nth-child(3) span,.dashboard-kpi:nth-child(3) em{color:var(--warning-muted)}
@media(max-width:700px){.client-card-head .row-actions .client-toggle{width:auto;min-width:2.55rem}}

