@font-face{font-family:Epilogue;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/epilogue-vietnamese-400-normal-BDhCKtHJ.woff2)format("woff2"),url(/assets/epilogue-vietnamese-400-normal-D6v1rLTh.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Epilogue;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/epilogue-latin-ext-400-normal-CWyPZsvD.woff2)format("woff2"),url(/assets/epilogue-latin-ext-400-normal-BxSzO5XL.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Epilogue;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/epilogue-latin-400-normal-8JEYEp9J.woff2)format("woff2"),url(/assets/epilogue-latin-400-normal-BXcZOK1z.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Epilogue;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/epilogue-vietnamese-500-normal-Bb9ERBWg.woff2)format("woff2"),url(/assets/epilogue-vietnamese-500-normal-BYDNxV7D.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Epilogue;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/epilogue-latin-ext-500-normal-D9xFf-PL.woff2)format("woff2"),url(/assets/epilogue-latin-ext-500-normal-GUCYhfP5.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Epilogue;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/epilogue-latin-500-normal-BNODJPoZ.woff2)format("woff2"),url(/assets/epilogue-latin-500-normal-dtyNCBzt.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Epilogue;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/epilogue-vietnamese-600-normal-vuqwiQLv.woff2)format("woff2"),url(/assets/epilogue-vietnamese-600-normal-sDvsJZKn.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Epilogue;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/epilogue-latin-ext-600-normal-B8d75QNE.woff2)format("woff2"),url(/assets/epilogue-latin-ext-600-normal-C0owflia.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Epilogue;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/epilogue-latin-600-normal-D8BqY1hl.woff2)format("woff2"),url(/assets/epilogue-latin-600-normal-B5TlYxRi.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.\!visible{visibility:visible!important}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.start{inset-inline-start:var(--spacing)}.\!end{inset-inline-end:var(--spacing)!important}.end{inset-inline-end:var(--spacing)}.container{width:100%}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.table{display:table}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.flex-wrap{flex-wrap:wrap}.rounded{border-radius:.25rem}.border{border-style:var(--tw-border-style);border-width:1px}.italic{font-style:italic}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}button[aria-label^=Zapri]{text-align:center!important;place-items:center!important;padding:0!important;line-height:0!important;display:inline-grid!important}button:has(>svg.lucide-x){text-align:center!important;place-items:center!important;padding:0!important;line-height:0!important;display:inline-grid!important}button[aria-label^=Zapri]>svg{flex:none;margin:0!important;display:block!important}button:has(>svg.lucide-x)>svg{flex:none;margin:0!important;display:block!important}a[href*=\/dnevnik]>svg,a[href*="/dokumenti/"]>svg,a[href*="/zapore/datoteka"]>svg,.section-document-icon>svg{display:none}:is(a,button):has(>svg:is(.lucide-file-text,.lucide-file,.lucide-printer,.lucide-download))[title*=PDF i]>svg:not(.spin,.menu-spinner){display:none}:is(a,button):has(>svg:is(.lucide-file-text,.lucide-file,.lucide-printer,.lucide-download))[aria-label*=PDF i]>svg:not(.spin,.menu-spinner){display:none}a[href*=\/dnevnik]:before,a[href*="/dokumenti/"]:before,a[href*="/zapore/datoteka"]:before,.section-document-icon:before{content:"";background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 28'%3E%3Cpath d='M4 1.5h10l6 6V26.5H4z' fill='%23fff5f5' stroke='%23d92d3a' stroke-width='1.8' stroke-linejoin='round'/%3E%3Cpath d='M14 1.5v6h6' fill='none' stroke='%23d92d3a' stroke-width='1.8' stroke-linejoin='round'/%3E%3Crect x='1' y='13' width='22' height='10' rx='2.2' fill='%23d92d3a'/%3E%3Ctext x='12' y='20.1' text-anchor='middle' fill='white' font-family='Arial,sans-serif' font-size='6.6' font-weight='700'%3EPDF%3C/text%3E%3C/svg%3E") 50%/contain no-repeat;flex:0 0 19px;width:19px;height:22px;display:inline-block}:is(a,button):has(>svg:is(.lucide-file-text,.lucide-file,.lucide-printer,.lucide-download))[title*=PDF i]:before{content:"";background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 28'%3E%3Cpath d='M4 1.5h10l6 6V26.5H4z' fill='%23fff5f5' stroke='%23d92d3a' stroke-width='1.8' stroke-linejoin='round'/%3E%3Cpath d='M14 1.5v6h6' fill='none' stroke='%23d92d3a' stroke-width='1.8' stroke-linejoin='round'/%3E%3Crect x='1' y='13' width='22' height='10' rx='2.2' fill='%23d92d3a'/%3E%3Ctext x='12' y='20.1' text-anchor='middle' fill='white' font-family='Arial,sans-serif' font-size='6.6' font-weight='700'%3EPDF%3C/text%3E%3C/svg%3E") 50%/contain no-repeat;flex:0 0 19px;width:19px;height:22px;display:inline-block}:is(a,button):has(>svg:is(.lucide-file-text,.lucide-file,.lucide-printer,.lucide-download))[aria-label*=PDF i]:before{content:"";background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 28'%3E%3Cpath d='M4 1.5h10l6 6V26.5H4z' fill='%23fff5f5' stroke='%23d92d3a' stroke-width='1.8' stroke-linejoin='round'/%3E%3Cpath d='M14 1.5v6h6' fill='none' stroke='%23d92d3a' stroke-width='1.8' stroke-linejoin='round'/%3E%3Crect x='1' y='13' width='22' height='10' rx='2.2' fill='%23d92d3a'/%3E%3Ctext x='12' y='20.1' text-anchor='middle' fill='white' font-family='Arial,sans-serif' font-size='6.6' font-weight='700'%3EPDF%3C/text%3E%3C/svg%3E") 50%/contain no-repeat;flex:0 0 19px;width:19px;height:22px;display:inline-block}:is(a,button):has(>svg:is(.lucide-file-text,.lucide-file,.lucide-printer,.lucide-download))[title*=PDF i]:disabled:before{opacity:.5}:is(a,button):has(>svg:is(.lucide-file-text,.lucide-file,.lucide-printer,.lucide-download))[aria-label*=PDF i]:disabled:before{opacity:.5}:is(button,a):has(>.spin)[title*=PDF i]:before{display:none}:is(button,a):has(>.menu-spinner)[title*=PDF i]:before{display:none}:is(button,a):has(>.spin)[aria-label*=PDF i]:before{display:none}:is(button,a):has(>.menu-spinner)[aria-label*=PDF i]:before{display:none}:is(a,button):has(>.pdf-file-icon):before{content:none!important;display:none!important}table tbody :is(button,a):has(>svg,>.pdf-file-icon){min-height:var(--data-table-action-size);height:var(--data-table-action-size);min-width:var(--data-table-action-size);vertical-align:middle;justify-content:center;align-items:center;padding-block:0;padding-inline:4px;display:inline-flex}table tbody :is(button,a)>svg{width:var(--data-table-action-icon-size);height:var(--data-table-action-icon-size);flex-shrink:0}table tbody :is(a,button):before{width:var(--data-table-action-icon-size);height:var(--data-table-action-icon-size);flex-basis:var(--data-table-action-icon-size);vertical-align:middle}table tbody td{vertical-align:middle}input[type=file]::file-selector-button{color:#29438b;font:inherit;cursor:pointer;background:#edf2fb;border:1px solid #cbd5e1;border-radius:8px;margin-inline-end:14px;padding:8px 14px;font-size:13px;font-weight:600;line-height:1.4;transition:background .15s,border-color .15s}input[type=file]:not(:disabled)::file-selector-button:hover{background:#dfe8fa;border-color:#29438b}input[type=file]:disabled::file-selector-button{opacity:.5;cursor:not-allowed}input[type=file]:focus-visible{outline-offset:3px;outline:2px solid #29438b}:root{--primary:#263c7e;--primary-hover:#284397;--accent:#3fa2d1;--accent-hover:#45ade2;--ink-900:#141920;--ink-700:#41464e;--ink-600:#63686e;--ink-500:#94989e;--ink-300:#cacecb;--background:#f4f5f7;--sunken:#edeff2;--surface:#fff;--success:#1f7a5c;--danger:#d3123f;--danger-tint:#feeef1;--focus:#3fa2d1;--font-display:"Epilogue", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-body:"Epilogue", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--radius-sm:8px;--radius-md:16px;--border-subtle:#cacecb;--data-table-header-font-size:10px;--data-table-body-font-size:10.5px;--data-table-cell-padding-y:7px;--data-table-cell-padding-x:8px;--data-table-action-size:24px;--data-table-action-icon-size:14px}.login-shell{background:var(--background);grid-template-rows:1fr auto;grid-template-columns:45% 55%;min-height:100vh;display:grid}.login-brand{background:var(--primary);color:#fff;flex-direction:column;grid-area:1/1;justify-content:space-between;gap:24px;min-height:calc(100vh - 53px);padding:56px;display:flex;overflow:hidden auto}.login-brand .brand-logo{object-fit:contain;align-self:flex-start;width:184px;height:50px;margin:120px 0 48px}.login-brand .brand-copy{flex-direction:column;flex:1;justify-content:center;gap:20px;max-width:440px;margin:0;display:flex}.login-brand .brand-copy h1{color:#fff;letter-spacing:-.02em;margin:0;font-size:34px;font-weight:500;line-height:1.2}.login-brand .brand-copy>p{color:#ffffffb3;margin:-6px 0 0;font-size:16px;line-height:1.5}.login-brand .capabilities{background:#0003;border:0;border-radius:16px;flex-direction:column;gap:12px;max-width:440px;padding:20px 24px;display:flex;box-shadow:inset 0 0 0 1px #ffffff1f}.login-brand .capabilities-label{color:var(--accent);letter-spacing:.08em;margin:0;font-size:12px;font-weight:500}.login-brand .capabilities ul{gap:10px}.login-brand .capabilities li{color:#fff;font-size:14px}.login-brand .capabilities li:before{content:"✓";color:#fff}.login-brand .brand-version{color:#ffffffb3;font-size:12px}.login-main{background:var(--background);grid-area:1/2;justify-content:center;align-items:center;min-width:0;min-height:calc(100vh - 53px);padding:40px;display:flex;overflow-y:auto}.login-column{flex-direction:column;gap:24px;width:420px;max-width:100%;display:flex}.login-card{background:var(--surface);border:0;border-radius:16px;flex-direction:column;gap:20px;width:384px;min-height:498px;padding:32px;display:flex;box-shadow:0 2px 4px #1419200a}.login-heading{flex-direction:column;gap:6px;display:flex}.login-card h2{margin:0;padding:7px 0;font-size:25px;font-weight:500;line-height:1.16}.login-card .login-intro{color:var(--ink-700);margin:0;font-size:14px;line-height:1.4}.login-fields{flex-direction:column;gap:16px;display:flex}.login-card .field{flex-direction:column;gap:6px;margin:0;display:flex}.login-card .field label{color:var(--ink-700);font-size:12px;font-weight:400}.login-card .field input{border:1px solid var(--ink-500);width:100%;height:48px;min-height:48px;color:var(--ink-900);background:#fff;border-radius:8px;padding:0 14px;font-size:14px}.login-card .password-wrap input{padding-right:44px}.login-card .password-toggle{width:44px;height:48px;color:var(--ink-700);justify-content:center;align-items:center;padding:0;display:flex;top:0;right:0;transform:none}.login-card .check-label{color:var(--ink-900);gap:8px;font-size:12px}.login-card .check-label input{width:13px;height:13px}.login-card .primary-button{background:var(--accent);border-radius:8px;width:100%;height:56px;min-height:56px;font-size:14px;font-weight:500;box-shadow:0 4px 12px #1f2f612e}.login-card .primary-button:hover:not(:disabled){background:var(--accent-hover)}.login-card .text-link{color:var(--primary);align-self:center;font-size:12px;font-weight:500}.login-card .login-message{border-radius:8px;margin:0;padding:10px 12px;font-size:12px}.login-card .login-notice{width:348px;min-height:73px;color:var(--ink-900);background:#3fa2d11a;border:1px solid #3fa2d140;border-radius:8px;gap:10px;margin:0 0 0 -14px;padding:14px 16px;font-size:14px;line-height:1.4;display:flex}.login-notice>svg{color:var(--primary);flex:none;margin-top:2px}.login-notice small{color:var(--ink-700);margin-top:4px;font-size:12px;display:block}.login-column .login-help{color:var(--ink-700);flex-direction:column;gap:8px;margin:0;padding:0 4px;font-size:12px;display:flex}.login-help strong{font-weight:500}.site-footer{grid-area:2/1/auto/-1;min-height:53px;padding:14px 32px}@media (width<=900px){.login-shell{display:block}.login-brand{min-height:auto;padding:32px 24px}.login-brand .brand-logo{width:150px;height:41px;margin:0 0 24px}.login-brand .brand-copy{max-width:none}.login-brand .brand-copy h1{font-size:28px}.login-brand .capabilities,.login-brand .brand-version{display:none}.login-main{min-height:auto;padding:32px 20px}.login-card{width:100%;min-height:auto}.login-card .login-notice{width:calc(100% + 28px)}.site-footer{min-height:auto}}.schedule-toolbar{gap:16px}.schedule-delete-selected{color:#a92735;cursor:pointer;background:#fff;border:1px solid #c93e4b;border-radius:10px;align-items:center;gap:8px;min-height:42px;padding:0 16px;font:600 13px/1 Epilogue,sans-serif;display:inline-flex}.schedule-contractor-title{justify-content:space-between;align-items:center;padding:18px 20px;display:flex}.schedule-contractor-title>strong{color:#16233d;font-size:17px}.schedule-contractor-title>small{color:#68748b}.schedule-inspector-group>h3{color:#263c7e;background:#f6f8fb;border-top:1px solid #dfe3ea;align-items:baseline;gap:12px;margin:0;padding:15px 20px;font-size:15px;display:flex}.schedule-inspector-group>h3 small{color:#748096;font-size:12px;font-weight:500}.inspection-schedule-page .schedule-report-inspector-toggle .project-toggle-icon,.schedule-report-page .schedule-report-inspector-toggle .project-toggle-icon{border-radius:8px;flex:none;place-items:center;width:30px;height:30px;display:grid}.inspection-schedule-group-count{color:#748096;white-space:nowrap;font-size:12px;font-weight:500}.schedule-table th,.schedule-table td{vertical-align:middle}.schedule-table input[type=checkbox]{accent-color:#263c7e;width:17px;height:17px}.schedule-day{white-space:nowrap;color:#263247;font-size:12px;font-weight:650}.schedule-day b{color:#263c7e}.schedule-drawer{width:min(560px,100vw)}.schedule-map-button{color:#263c7e;cursor:pointer;background:#f5f7fc;border:1px solid #263c7e;border-radius:9px;justify-content:center;align-items:center;gap:9px;min-height:43px;font:600 13px/1.2 Epilogue,sans-serif;display:flex}.schedule-map-button:disabled{opacity:.45;cursor:not-allowed}.schedule-stations{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:end;gap:12px;display:grid}.schedule-stations label{gap:7px;display:grid}.schedule-stations .schedule-map-button{min-width:118px;min-height:55px;padding:8px 12px;line-height:1.25}.schedule-stations .schedule-map-button.icon-only{width:55px;min-width:55px;padding:0}.schedule-range{color:#66738a;margin-top:-8px;display:block}.schedule-section-search{z-index:4;position:relative}.schedule-section-search>div:first-of-type{color:#66738a;background:#fff;border:1px solid #b7c1d2;border-radius:10px;align-items:center;min-height:50px;padding:0 12px;display:flex}.schedule-section-search>div:first-of-type:focus-within{border-color:#263c7e;box-shadow:0 0 0 3px #263c7e1f}.schedule-section-search>div:first-of-type input{color:#17233b;background:0 0;border:0;outline:0;flex:1;min-width:0;height:48px;padding:0 10px;font:500 14px/1.3 Epilogue,sans-serif}.schedule-section-search>div:first-of-type button{color:#536078;cursor:pointer;background:#eef1f6;border:0;border-radius:7px;place-items:center;width:28px;height:28px;display:grid}.schedule-section-search>div:first-of-type button.schedule-section-map-trigger{color:#263c7e;background:#f5f7fc;border:1px solid #263c7e;margin-left:4px}.schedule-section-search>div:first-of-type button:disabled{opacity:.45;cursor:not-allowed}.schedule-section-results{background:#fff;border:1px solid #cdd4df;border-radius:11px;max-height:270px;margin-top:6px;padding:6px;position:relative;top:auto;left:auto;right:auto;overflow:auto;box-shadow:0 14px 35px #17233b2e}.schedule-section-results>span{color:#6c778b;padding:13px;font-size:13px;display:block}.schedule-section-results>button{color:#17233b;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;grid-template-columns:66px minmax(0,1fr) auto;align-items:center;gap:10px;width:100%;padding:10px 11px;display:grid}.schedule-section-results>button:hover{background:#eef2fb}.schedule-section-results>button strong{color:#263c7e}.schedule-section-results>button span{text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.schedule-section-results>button small{color:#7a8598;font-size:11px}.schedule-section-results>button:has(>input){grid-template-columns:22px 62px minmax(0,1fr) auto;gap:12px;min-height:44px;padding:8px 11px}.schedule-section-results>button:has(>input) input{margin:0}.schedule-section-results>button:has(>input) small{text-overflow:ellipsis;white-space:nowrap;text-align:right;max-width:190px;overflow:hidden}.driver-routes-toolbar{flex-wrap:wrap;align-items:flex-start}.driver-routes-toolbar .sections-search{flex:360px}.driver-routes-toolbar-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.driver-routes-toolbar-actions>button,.driver-route-group-header>button{color:#263c7e;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:10px;justify-content:center;align-items:center;gap:7px;min-height:40px;padding:8px 12px;font-weight:700;display:inline-flex}.driver-routes-toolbar-actions>button svg,.driver-route-group-header>button svg{width:17px;height:17px}.driver-routes-toolbar-actions>button:hover,.driver-route-group-header>button:hover{background:#f5f7fc;border-color:#263c7e}.driver-routes-toolbar-actions>button:disabled{opacity:.5;cursor:not-allowed}.driver-routes-toolbar-actions>button.danger-outline{color:#c62828;border-color:#ef9a9a}.driver-route-group-header{justify-content:space-between;align-items:center;gap:16px;display:flex}.driver-route-group-header>div{gap:4px;display:grid}.driver-route-group-header>div>strong{color:#263c7e;font-size:16px}.driver-route-group-header small b{color:#17233b}.driver-route-table th:first-child,.driver-route-table td:first-child{text-align:center;width:44px}.driver-route-table input[type=checkbox]{accent-color:#263c7e;cursor:pointer;width:17px;height:17px}.driver-route-table tr.selected-row td{background:#eef4ff}.driver-route-table tfoot td{color:#263c7e;text-align:right;background:#f8fafc;border-top:2px solid #cbd5e1}.driver-routes-map-dialog{width:min(1180px,96vw)}.driver-route-map-label{min-width:35px;font-size:11px}.driver-route-map-legend{max-height:128px;overflow:auto}.driver-route-map-legend button{max-width:320px}.driver-route-map-legend button span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.driver-route-map-legend button small{color:#64748b}@media (width<=850px){.driver-routes-toolbar-actions{justify-content:flex-start;width:100%}.driver-route-group-header{flex-direction:column;align-items:flex-start}.driver-routes-map-dialog .section-map-canvas{min-height:460px}}.section-map-dialog.schedule-map-dialog.driver-routes-map-dialog{grid-template-rows:auto minmax(360px,1fr) auto;width:min(1500px,100vw - 24px);max-width:none;height:min(900px,100dvh - 24px)}.driver-routes-map-dialog .section-map-canvas{min-height:0}.section-map-legend.driver-route-map-legend{flex-wrap:wrap;align-content:flex-start;align-items:flex-start;gap:8px 10px;min-height:62px;max-height:260px;padding:10px 14px 14px;overflow:hidden auto}.section-map-legend.driver-route-map-legend>button{max-width:none;min-height:34px}.section-map-legend.driver-route-map-legend>button span{text-overflow:clip;white-space:nowrap;max-width:none;overflow:visible}.driver-routes-fullscreen-legend{display:none}.driver-route-contractor-groups{gap:14px;display:grid}.driver-route-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:16px;display:grid}.driver-route-summary article{background:#fff;border:1px solid #dbe4ef;border-radius:16px;align-items:center;gap:14px;min-height:94px;padding:18px 20px;display:flex;box-shadow:0 6px 20px #2337550f}.driver-route-summary article>svg{color:#2d5ca8;flex:none;width:25px;height:25px}.driver-route-summary article>div{gap:3px;min-width:0;display:grid}.driver-route-summary strong{color:#17233b;text-overflow:ellipsis;white-space:nowrap;font-size:23px;line-height:1.15;overflow:hidden}.driver-route-summary span{color:#68778c;text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.driver-route-summary .longest>svg{color:#d99a16}.driver-route-summary .longest strong{font-size:17px}.driver-route-summary .longest small{color:#9a6a08;letter-spacing:.04em;text-transform:uppercase;font-size:11px;font-weight:700}.driver-route-contractor-group{background:#fff;border:1px solid #d5dfeb;border-radius:18px;overflow:hidden}.driver-route-contractor-group>button{color:#223d6c;text-align:left;cursor:pointer;background:#edf3fb;border:0;grid-template-columns:34px 1fr auto;align-items:center;gap:8px;width:100%;padding:17px 20px;display:grid}.driver-route-contractor-group>button>span{color:#fff;background:#2d5597;border-radius:7px;place-items:center;width:26px;height:26px;display:grid}.driver-route-contractor-group>button>strong{font-size:16px}.driver-route-contractor-group>button>small{color:#68778c}.driver-route-contractor-group>div{background:#f7f9fc;gap:12px;padding:14px;display:grid}@media (width<=760px){.driver-route-summary{grid-template-columns:1fr}.driver-route-contractor-group>button{grid-template-columns:34px 1fr}.driver-route-contractor-group>button>small{grid-column:2}}@media (width>=761px) and (width<=1120px){.driver-route-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}:fullscreen .driver-routes-fullscreen-legend{background:#fffffff5;border:1px solid #94a3b899;border-radius:12px;flex-direction:column;gap:6px;width:min(360px,100vw - 88px);max-height:calc(100vh - 150px);margin:70px 12px 70px 0;padding:10px;font-family:inherit;display:flex;overflow-y:auto;box-shadow:0 10px 30px #0f172a38}:fullscreen .driver-routes-fullscreen-legend header{color:#17233b;flex-direction:column;padding:2px 4px 7px;display:flex}:fullscreen .driver-routes-fullscreen-legend header small{color:#64748b;margin-top:2px;font-size:11px}:fullscreen .driver-routes-fullscreen-legend button{color:#17233b;text-align:left;cursor:pointer;background:#fff;border:1px solid #dbe3ee;border-radius:9px;grid-template-columns:22px minmax(0,1fr) auto;align-items:center;gap:8px;min-height:38px;padding:6px 8px;display:grid}:fullscreen .driver-routes-fullscreen-legend button:hover{background:#f7f9fc;border-color:#aabbd3}:fullscreen .driver-routes-fullscreen-legend button.inactive{opacity:.48}:fullscreen .driver-routes-fullscreen-legend button i{border-radius:999px;width:20px;height:5px}:fullscreen .driver-routes-fullscreen-legend button span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}:fullscreen .driver-routes-fullscreen-legend button small{color:#64748b}@media (width<=850px){.section-map-dialog.schedule-map-dialog.driver-routes-map-dialog{grid-template-rows:auto minmax(300px,1fr) auto;width:100%;height:100%}.section-map-legend.driver-route-map-legend{flex-wrap:nowrap;max-height:120px;overflow-x:auto}}.schedule-report-page{gap:18px;display:grid}.schedule-report-contractor{background:#fff;border:1px solid #d9dee7;border-radius:16px;overflow:hidden}.schedule-report-contractor-toggle{color:#fff;width:100%;min-height:76px;font:inherit;text-align:left;cursor:pointer;background:#263c7e;border:0;align-items:center;gap:16px;padding:16px 20px;display:flex}.schedule-report-contractor-toggle:hover{background:#20356f}.schedule-report-contractor-toggle>span:nth-child(2){flex:1;min-width:0}.schedule-report-contractor-toggle .contractor-toggle-icon{color:#263c7e;background:#fff}.schedule-report-contractor-toggle small,.schedule-report-inspector-title small{letter-spacing:.1em;opacity:.75;margin-bottom:3px;font-size:10px;font-weight:600;display:block}.schedule-report-contractor-toggle strong{font-size:18px;font-weight:600;display:block}.schedule-report-contractor-toggle em{opacity:.82;font-size:12px;font-style:normal}.schedule-report-inspector{border-top:1px solid #dfe3ea}.schedule-report-inspector-title{background:#f4f6f9;justify-content:space-between;align-items:center;gap:15px;min-height:68px;padding:13px 18px;display:flex}.schedule-report-inspector-toggle{color:#17233b;min-width:0;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:12px;padding:0;display:flex}.schedule-report-inspector-toggle>span:last-child{min-width:0}.schedule-report-inspector-toggle strong{color:#17233b;font-size:16px;display:block}.schedule-report-inspector-toggle .project-toggle-icon{color:#fff;background:#263c7e}.schedule-report-day{border-top:1px solid #e1e5ec}.schedule-report-day>header{background:#eef1f6;justify-content:space-between;align-items:center;gap:14px;min-height:50px;padding:9px 16px;display:flex}.schedule-report-day>header>div{align-items:center;gap:10px;display:flex}.schedule-report-day-title{color:inherit;align-items:center;gap:10px;padding:0;display:inline-flex}.schedule-report-day>header strong{color:#263c7e;font-size:13px}.schedule-report-day>header span{color:#6a7589;font-size:11px}.schedule-report-day>header>div>button{color:#263c7e;cursor:pointer;background:#fff;border:1px solid #cbd3df;border-radius:8px;place-items:center;width:34px;height:34px;padding:0;display:grid}.schedule-report-day>header>div>button:hover{background:#fff}.schedule-report-toolbar>span{color:#6a7589;font-size:12px}.schedule-report-table th:first-child{width:90px}.schedule-report-table th:nth-child(2){width:32%}.schedule-report-table th:nth-child(n+4){width:120px}.schedule-report-map-label{color:#fff;background:#263c7e;border-color:#263c7e;font-size:11px}.schedule-report-map-card{color:#17233b;min-width:250px;max-width:330px;padding:4px 2px 2px;font-family:Epilogue,sans-serif}.schedule-report-map-card>small{color:#647089;letter-spacing:.1em;margin-bottom:3px;font-size:9px;font-weight:700;display:block}.schedule-report-map-card>strong{margin-bottom:11px;font-size:16px;display:block}.schedule-report-map-card dl{gap:7px;margin:0;display:grid}.schedule-report-map-card dl>div{grid-template-columns:86px minmax(0,1fr);gap:10px;display:grid}.schedule-report-map-card dt{color:#6a7589;font-size:11px}.schedule-report-map-card dd{color:#17233b;overflow-wrap:anywhere;margin:0;font-size:12px;font-weight:600}.schedule-selected-sections{background:#f7f9fc;border:1px solid #d8dee8;border-radius:11px;padding:12px}.schedule-selected-sections>div{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.schedule-selected-sections>div strong{color:#263c7e;font-size:13px}.schedule-selected-sections>div>span{color:#fff;text-align:center;background:#263c7e;border-radius:999px;min-width:24px;padding:3px 7px;font-size:11px}.schedule-selected-sections ul{gap:5px;max-height:154px;margin:0;padding:0;list-style:none;display:grid;overflow-y:auto}.schedule-selected-sections li{color:#344158;background:#fff;border:1px solid #e1e5ec;border-radius:8px;justify-content:space-between;align-items:center;gap:8px;min-height:34px;padding:5px 6px 5px 10px;font-size:12px;display:flex}.schedule-selected-sections li b{color:#263c7e}.schedule-selected-sections li button{color:#66738a;cursor:pointer;background:#eef1f6;border:0;border-radius:7px;flex:none;place-items:center;width:26px;height:26px;padding:0;display:grid}.schedule-selected-sections li button:hover{color:#a32920;background:#fff0ee}.schedule-day-picker{gap:7px;display:grid;position:relative}.schedule-day-picker>span{color:var(--ink-700);font-size:13px;font-weight:500}.schedule-day-picker>button{border-radius:var(--radius-sm);width:100%;min-height:44px;color:var(--ink-900);font:inherit;text-align:left;cursor:pointer;background:#fff;border:1px solid #adb6c5;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;font-size:14px;display:flex}.schedule-day-picker>button.open{border-color:var(--primary);box-shadow:0 0 0 3px #1f3f8b1a}.schedule-day-picker>button>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.schedule-day-picker>button svg{flex:none}.schedule-day-options{background:#fff;border:1px solid #cfd6e1;border-radius:10px;gap:2px;padding:7px;display:grid;box-shadow:0 12px 30px #19264126}.schedule-day-options label{cursor:pointer;border-radius:7px;align-items:center;gap:9px;min-height:36px;padding:7px 9px;display:flex}.schedule-day-options label:hover{background:#f1f4fa}.schedule-day-options input{accent-color:#263c7e;width:17px;height:17px}.schedule-day-options label>span{color:#27354d;font-size:13px}.section-map-dialog.schedule-map-dialog{grid-template-rows:auto auto minmax(0,1fr) auto;width:min(1040px,100vw - 64px);max-width:1040px;height:min(720px,100dvh - 64px)}.section-map-overlay.schedule-map-overlay{z-index:1600}.schedule-map-values{background:#fff;border-bottom:1px solid #dfe3ea;align-items:center;gap:10px;padding:12px 20px;display:flex}.schedule-map-values>button:not(.primary-icon-button){color:#445066;cursor:pointer;background:#fff;border:1px solid #cfd5df;border-radius:9px;padding:10px 14px}.schedule-map-values>button.active{color:#263c7e;background:#edf1fb;border-color:#263c7e;box-shadow:0 0 0 2px #263c7e1f}.schedule-map-values>span{color:#556177;margin-left:auto;font-size:13px}.schedule-map-values>span.schedule-selected-count{margin-left:0;margin-right:auto}.schedule-map-values>div{background:#f7f8fb;border:1px solid #d4d9e2;border-radius:9px;gap:3px;min-width:128px;padding:8px 12px;display:grid}.schedule-map-values>div small{color:#6b768b;letter-spacing:.08em;font-size:9px}.schedule-map-values>div strong{color:#263c7e;font-size:16px}.schedule-station-point{color:#fff;background:#263c7e;border:2px solid #fff;border-radius:50%;place-items:center;width:27px;height:27px;font:700 12px/1 Epilogue,sans-serif;display:grid;box-shadow:0 2px 8px #00000059}.schedule-section-point{border-radius:999px;width:auto;min-width:34px;padding:0 7px;font-size:11px}@media (width<=760px){.schedule-stations{grid-template-columns:1fr}.schedule-map-values{flex-direction:column;align-items:stretch}.schedule-map-values>span{margin-left:0}}*{box-sizing:border-box}html,body{min-height:100%}body{background:var(--background);color:var(--ink-900);-webkit-font-smoothing:antialiased;margin:0;font-family:Epilogue,Segoe UI,sans-serif}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible{outline-offset:2px;outline:3px solid #3fa2d159}.app-loading{min-height:100vh;color:var(--ink-600);place-items:center;display:grid}.spinner{border:3px solid var(--ink-300);border-top-color:var(--primary);border-radius:50%;width:32px;height:32px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.login-shell{grid-template-rows:1fr auto;grid-template-columns:minmax(420px,45%) 1fr;min-height:100vh;display:grid}.login-brand{color:#fff;background:radial-gradient(circle at 12% 88%,#3fa2d12e,#0000 33%),linear-gradient(150deg,#294486 0%,#263c7e 58%,#20336c 100%);flex-direction:column;grid-row:1;min-height:760px;padding:64px 7vw 56px;display:flex;position:relative;overflow:hidden}.brand-logo{object-fit:contain;width:192px;height:auto}.brand-copy{max-width:510px;margin:auto 0}.brand-copy h1{letter-spacing:-.035em;margin:0 0 18px;font-size:clamp(32px,3vw,48px);font-weight:500;line-height:1.12}.brand-copy>p{color:#ffffffd1;max-width:480px;margin:0 0 30px;font-size:17px;line-height:1.55}.capabilities{background:#1419202e;border:1px solid #ffffff21;border-radius:16px;max-width:500px;padding:22px 24px}.capabilities-label{color:var(--accent-hover);letter-spacing:.1em;margin-bottom:13px;font-size:12px;font-weight:600}.capabilities ul{gap:10px;margin:0;padding:0;list-style:none;display:grid}.capabilities li{color:#ffffffeb;align-items:center;gap:10px;font-size:14px;display:flex}.capabilities li:before{content:"✓";color:#9bdcf6}.brand-version{color:#ffffffbf;font-size:12px}.login-main{grid-row:1;justify-content:center;align-items:center;min-width:0;padding:56px 32px;display:flex}.login-column{width:min(100%,470px)}.login-card{background:var(--surface);border:1px solid #e5e7ea;border-radius:18px;padding:38px 34px 32px;box-shadow:0 12px 30px #14192012}.login-card h2{letter-spacing:-.02em;margin:0 0 9px;font-size:27px;font-weight:500;line-height:1.2}.login-intro{color:var(--ink-700);margin:0 0 26px;font-size:14px;line-height:1.45}.field{gap:8px;margin-bottom:18px;display:grid}.field label{color:var(--ink-700);font-size:13px;font-weight:500}.field input{border:1px solid var(--ink-500);width:100%;min-height:50px;color:var(--ink-900);background:#fff;border-radius:10px;padding:0 14px;transition:border-color .15s,box-shadow .15s}.field input:hover{border-color:var(--ink-700)}.field input:focus{border-color:var(--focus);outline:none;box-shadow:0 0 0 3px #3fa2d124}.password-wrap{position:relative}.password-wrap input{padding-right:85px}.password-toggle{color:var(--ink-600);cursor:pointer;background:0 0;border:0;padding:8px;font-size:12px;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.login-options{justify-content:space-between;align-items:center;gap:16px;margin:2px 0 20px;display:flex}.check-label{color:var(--ink-700);cursor:pointer;align-items:center;gap:9px;font-size:13px;display:inline-flex}.check-label input{width:17px;height:17px;accent-color:var(--primary)}.text-link{color:var(--primary);cursor:pointer;background:0 0;border:0;padding:0;font-size:13px}.text-link:hover{text-decoration:underline}.primary-button{background:var(--primary);color:#fff;cursor:pointer;border:0;border-radius:999px;width:100%;min-height:56px;font-weight:600;transition:background .15s,transform .15s;box-shadow:0 8px 18px #263c7e33}.primary-button:hover:not(:disabled){background:var(--primary-hover);transform:translateY(-1px)}.primary-button:disabled{cursor:wait;opacity:.68}.login-message{border-radius:10px;margin:0 0 18px;padding:12px 14px;font-size:13px;line-height:1.4}.login-message.error{background:var(--danger-tint);color:#9f1239;border:1px solid #d3123f40}.login-message.info{color:#1c6181;background:#eef8fc;border:1px solid #3fa2d14d}.login-notice{color:var(--ink-700);background:#eef8fc;border:1px solid #3fa2d152;border-radius:10px;margin-top:22px;padding:15px 16px;font-size:12px;line-height:1.42}.login-help{color:var(--ink-700);margin:22px 4px 0;font-size:12px;line-height:1.6}.login-help a{color:var(--primary);text-decoration:none}.site-footer{border-top:1px solid var(--ink-300);min-height:48px;color:var(--ink-600);background:#fff;grid-column:1/-1;justify-content:space-between;align-items:center;padding:12px 32px;font-size:12px;display:flex}.system-status{align-items:center;gap:9px;display:inline-flex}.system-status:before{content:"";background:var(--success);border-radius:50%;width:8px;height:8px}.footer-links{gap:24px;display:flex}.footer-links a{color:var(--primary);text-decoration:none}.dashboard{background:var(--background);grid-template-columns:292px minmax(0,1fr);min-height:100vh;transition:grid-template-columns .15s;display:grid}.dashboard.nav-collapsed{grid-template-columns:84px minmax(0,1fr)}.sidebar{background:var(--primary);color:#fff;flex-direction:column;height:100vh;padding:24px 16px 20px;transition:padding .15s;display:flex;position:sticky;top:0;overflow:hidden}.sidebar-brand{justify-content:space-between;align-items:center;gap:12px;min-height:45px;padding:4px 12px;display:flex}.sidebar-logo-frame{flex:none;width:120px;height:32px;transition:width .15s;display:block;overflow:hidden}.sidebar-logo{object-fit:contain;object-position:left center;width:120px;max-width:none;height:32px;margin:0}.sidebar-toggle{color:#fff;cursor:pointer;background:0 0;border:0;border-radius:8px;flex:none;place-items:center;width:36px;height:36px;padding:0;transition:background-color .12s;display:grid}.sidebar-toggle:hover,.sidebar-toggle:focus-visible{background:#ffffff21;outline:none}.dashboard.nav-collapsed .sidebar{padding-inline:12px}.dashboard.nav-collapsed .sidebar-brand{flex-direction:column;justify-content:flex-start;gap:14px;min-height:92px;padding-inline:0}.dashboard.nav-collapsed .sidebar-logo-frame{width:32px}.dashboard.nav-collapsed .sidebar-toggle{width:44px;height:38px}.side-nav{scrollbar-color:#ffffff38 transparent;flex:1;margin-top:24px;padding-right:4px;overflow:hidden auto}.dashboard.nav-collapsed .side-nav{scrollbar-width:none;margin-top:12px;padding-right:0;overflow-y:auto}.dashboard.nav-collapsed .side-nav::-webkit-scrollbar{display:none}.nav-heading{color:#ffffffa8;letter-spacing:.12em;margin:28px 12px 10px;font-size:11px;font-weight:500;display:block}.menu-branch{margin:2px 0}.sidebar .menu-branch.level-1,.sidebar .menu-branch.level-2,.sidebar .menu-branch.level-3{color:inherit;background:0 0}.menu-branch.level-1.starts-section,.menu-branch.level-2.starts-section,.menu-branch.level-3.starts-section{border-top:1px solid #ffffff1a;margin-top:9px;padding-top:9px}.menu-row{width:100%;min-height:42px;padding:8px 10px 8px calc(10px + var(--menu-depth,0px));color:#ffffffe0;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:center;gap:10px;font-family:inherit;font-size:13px;line-height:1.3;transition:background-color .12s,color .12s;display:flex}.menu-row:hover,.menu-row.active{color:#fff;background:#ffffff21}.dashboard.nav-collapsed .nav-heading,.dashboard.nav-collapsed .menu-label,.dashboard.nav-collapsed .menu-chevron,.dashboard.nav-collapsed .menu-guide,.dashboard.nav-collapsed .menu-status,.dashboard.nav-collapsed .menu-children,.dashboard.nav-collapsed .user-copy{display:none}.dashboard.nav-collapsed .menu-dashboard,.dashboard.nav-collapsed .menu-branch.level-0>.menu-row{justify-content:center;gap:0;min-height:50px;padding:0}.dashboard.nav-collapsed .menu-branch{margin-block:5px}.menu-dashboard{font-weight:500}.menu-branch.level-0>.menu-row{min-height:46px;font-size:14px;font-weight:500}.menu-branch.level-1>.menu-row{--menu-depth:30px}.menu-branch.level-2>.menu-row{--menu-depth:47px;color:#ffffffc9;min-height:38px;font-size:12px}.menu-branch.level-3>.menu-row{--menu-depth:64px;color:#ffffffb0;min-height:36px;font-size:11.5px}.menu-icon{flex:none}.menu-guide{background:#ffffff6b;border-radius:50%;flex:none;width:5px;height:5px}.menu-label{flex:1;min-width:0}.menu-chevron{flex:none;transition:transform .15s}.menu-chevron.open{transform:rotate(180deg)}.menu-status{color:#ffffffb8;background:#ffffff14;border-radius:8px;align-items:center;gap:9px;margin:8px 5px;padding:13px 12px;font-size:12px;line-height:1.45;display:flex}.menu-error{color:#fff;background:#d3123f2e}.menu-spinner{animation:.9s linear infinite menu-spin}@keyframes menu-spin{to{transform:rotate(360deg)}}.sidebar-user{border-top:1px solid #ffffff2e;align-items:center;gap:12px;margin-top:16px;padding:18px 10px 0;display:flex}.dashboard.nav-collapsed .sidebar-user{justify-content:center;padding-inline:0}.dashboard.nav-collapsed .avatar{width:42px;height:42px}.avatar{color:#183469;background:#5dbded;border-radius:50%;flex:none;place-items:center;width:44px;height:44px;font-weight:600;display:grid}.user-copy{min-width:0}.user-copy strong,.user-copy span{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.user-copy strong{font-size:13px}.user-copy span{color:#ffffffad;margin-top:3px;font-size:11px}.dashboard-main{min-width:0}.topbar{border-bottom:1px solid var(--ink-300);background:#fff;align-items:center;gap:24px;min-height:84px;padding:16px 30px;display:flex}.org-card{background:var(--sunken);border-radius:12px;min-width:265px;padding:10px 16px}.org-card small,.org-card strong,.org-card span{display:block}.org-card small{color:var(--ink-600);letter-spacing:.1em;font-size:10px}.org-card strong{margin-top:2px;font-size:14px;font-weight:600}.org-card span{color:var(--ink-600);margin-top:2px;font-size:11px}.topbar-spacer{flex:1}.logout-button{border:1px solid var(--ink-300);min-height:40px;color:var(--ink-700);cursor:pointer;background:#fff;border-radius:999px;padding:0 18px}.logout-button:hover{border-color:var(--primary);color:var(--primary)}.content{padding:32px}.page-title{margin-bottom:26px}.page-title h1{letter-spacing:-.025em;margin:0;font-size:30px;font-weight:500}.page-title p{color:var(--ink-600);margin:8px 0 0;font-size:14px}.map-card{background:#fff;border:1px solid #e7e9ec;border-radius:18px;padding:22px;box-shadow:0 10px 26px #1419200d}.map-card-expanded{z-index:3000;background:#fff;border:0;border-radius:0;flex-direction:column;padding:18px;display:flex;position:fixed;inset:0}.map-card-expanded .map-stage{flex:1;min-height:0}.map-card-expanded .map-container{height:100%;min-height:0}.map-header{justify-content:space-between;align-items:center;gap:20px;margin-bottom:16px;display:flex}.map-header h2{margin:0;font-size:18px;font-weight:500}.map-link{color:var(--primary);cursor:pointer;background:0 0;border:0;border-radius:7px;align-items:center;gap:8px;padding:7px 3px;font-family:inherit;font-size:13px;display:inline-flex}.map-link:hover{color:var(--primary-hover)}.map-filters{flex-wrap:wrap;gap:8px;margin-bottom:15px;display:flex}.filter-pill{border:1px solid var(--ink-300);min-height:34px;color:var(--ink-600);cursor:pointer;background:#fff;border-radius:999px;padding:0 15px;font-family:inherit;font-size:12px;transition:border-color .12s,background-color .12s,color .12s}.filter-pill.active{border-color:var(--primary);background:var(--primary);color:#fff}.filter-pill:hover:not(.active){border-color:var(--primary);color:var(--primary)}.filter-pill:focus-visible,.map-link:focus-visible{outline-offset:2px;outline:3px solid #3fa2d159}.map-container{background:#dcebdc;border-radius:14px;width:100%;height:min(58vh,570px);min-height:380px;overflow:hidden}.map-stage{position:relative}.google-map-layer-control{color:var(--ink-900);font-family:var(--font-epilogue), Arial, sans-serif;margin-top:10px;position:relative}.google-map-layer-trigger{min-height:38px;color:var(--primary);cursor:pointer;background:#fff;border:0;border-radius:8px;padding:0 16px;font-family:inherit;font-size:12px;font-weight:600;box-shadow:0 2px 7px #1419203d}.google-map-layer-panel{background:#fff;border-radius:10px;width:225px;margin-top:6px;padding:7px;box-shadow:0 5px 18px #1419203d}.google-map-layer-option{width:100%;min-height:35px;color:var(--ink-700);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:7px;grid-template-columns:22px 1fr;align-items:center;gap:5px;padding:4px 7px;font-family:inherit;font-size:11px;font-weight:500;display:grid}.google-map-layer-option:hover{background:var(--surface-soft)}.google-map-layer-option>span:first-child{border:1px solid var(--ink-300);color:#fff;border-radius:5px;place-items:center;width:18px;height:18px;display:grid}.google-map-layer-option.active>span:first-child{border-color:var(--primary);background:var(--primary)}.map-layer-status{z-index:4;color:#fff;background:#263c7eeb;border-radius:999px;align-items:center;gap:7px;padding:9px 13px;font-size:11px;display:flex;position:absolute;top:14px;left:50%;transform:translate(-50%);box-shadow:0 4px 14px #14192029}.map-layer-status.error{background:#d3123ff0}.camera-map-marker{cursor:pointer;background:#1748b4;border:2px solid #fff;border-radius:8px;place-items:center;width:34px;height:32px;transition:transform .12s,box-shadow .12s;display:grid;position:relative;box-shadow:0 3px 8px #14192061}.camera-map-marker:after{content:"";background:#1748b4;border-bottom:2px solid #fff;border-right:2px solid #fff;width:10px;height:10px;position:absolute;bottom:-7px;left:50%;transform:translate(-50%)rotate(45deg)}.camera-map-marker:hover{transform:translateY(-2px);box-shadow:0 5px 12px #14192073}.camera-marker-glyph{z-index:1;border:2px solid #fff;border-radius:2px;width:15px;height:11px;position:relative}.camera-marker-glyph:before{content:"";background:#fff;border-radius:2px 2px 0 0;width:7px;height:4px;position:absolute;top:-5px;left:1px}.camera-marker-glyph:after{content:"";border-top:4px solid #0000;border-bottom:4px solid #0000;border-left:5px solid #fff;width:0;height:0;position:absolute;top:1px;right:-7px}.speed-display-map-marker{box-sizing:border-box;color:#fff;cursor:pointer;font-variant-numeric:tabular-nums;background:#17202a;border:3px solid #f3c631;border-radius:6px;place-items:center;width:40px;height:40px;font-family:Arial,sans-serif;font-size:15px;font-weight:800;line-height:1;transition:transform .12s,box-shadow .12s;display:grid;box-shadow:0 3px 9px #14192059}.speed-display-map-marker:hover{transform:translateY(-2px)scale(1.04);box-shadow:0 5px 13px #1419206e}.speed-display-map-marker>span{text-shadow:0 0 5px #ffffff8c}.speed-display-popup{width:min(340px,72vw);padding:4px 2px}.speed-display-popup-heading{border-bottom:1px solid var(--surface-200);justify-content:space-between;align-items:center;gap:14px;margin-bottom:9px;padding-bottom:9px;display:flex!important}.speed-display-popup-heading>span{white-space:nowrap;background:#fff0f2;border-radius:999px;padding:4px 8px;font-size:10px;font-weight:750;color:#b80f2d!important}.camera-popup{width:min(430px,70vw);color:var(--ink-900);font-family:var(--font-body);padding:4px 1px 2px}.camera-popup strong{margin:0 0 8px;font-size:14px;font-weight:600;display:block}.camera-popup img{background:var(--surface-100);object-fit:contain;border-radius:7px;width:100%;min-height:180px;max-height:330px;display:block}.weather-map-marker{--weather-color:teal;background:var(--weather-color);width:42px;height:42px;box-shadow:0 0 0 5px var(--weather-color), 0 4px 9px #14192059;border:3px solid #fff;border-radius:50%;position:relative}@supports (color:color-mix(in lab, red, red)){.weather-map-marker{box-shadow:0 0 0 5px color-mix(in srgb, var(--weather-color) 22%, transparent), 0 4px 9px #14192059}}.weather-map-marker{cursor:pointer;place-items:center;transition:transform .12s,box-shadow .12s;display:grid}.weather-map-marker:hover{box-shadow:0 0 0 5px var(--weather-color), 0 6px 12px #1419206b;transform:translateY(-2px)scale(1.04)}@supports (color:color-mix(in lab, red, red)){.weather-map-marker:hover{box-shadow:0 0 0 5px color-mix(in srgb, var(--weather-color) 28%, transparent), 0 6px 12px #1419206b}}.weather-marker-snowflake{color:#fff;text-shadow:0 1px 2px #0003;font-size:25px;line-height:1}.weather-marker-temperature{border:2px solid var(--weather-color);min-width:44px;color:var(--weather-color);background:#fff;border-radius:999px;padding:3px 7px;position:absolute;top:35px;left:50%}@supports (color:color-mix(in lab, red, red)){.weather-marker-temperature{color:color-mix(in srgb, var(--weather-color) 72%, #172033)}}.weather-marker-temperature{text-align:center;white-space:nowrap;font-size:11px;font-weight:750;line-height:1.1;transform:translate(-50%);box-shadow:0 2px 5px #14192038}.weather-popup{width:min(390px,74vw);max-height:min(520px,68vh);color:var(--ink-900);font-family:var(--font-body);padding:5px 3px 4px;overflow-y:auto}.weather-popup-heading{border-bottom:1px solid var(--surface-200);justify-content:space-between;align-items:flex-start;gap:12px;padding-bottom:9px;display:flex}.weather-popup-heading>strong{font-size:15px;line-height:1.35}.weather-popup-heading>span{color:var(--primary);background:#263c7e1a;border-radius:999px;padding:4px 7px;font-size:9px;font-weight:750}.weather-popup-time{color:var(--ink-500);padding:8px 0 5px;font-size:10px}.weather-popup-measurements{gap:1px;display:grid}.weather-popup-measurement{border-radius:7px;grid-template-columns:minmax(145px,1fr) minmax(70px,auto);align-items:start;gap:12px;min-height:27px;padding:5px 7px;font-size:10px;line-height:1.45;display:grid}.weather-popup-measurement:nth-child(2n){background:#f7f8fa}.weather-popup-measurement>span{color:var(--ink-500)}.weather-popup-measurement>strong{color:var(--ink-700);text-align:right;font-weight:550}.weather-popup-measurement.air-temperature>strong{color:var(--danger);font-weight:750}.weather-popup-measurement.road-temperature>strong{color:var(--primary);font-weight:750}.weather-popup-measurement.road-condition{background:#e8f5e1;margin:2px 0}.weather-popup-measurement.road-condition>span,.weather-popup-measurement.road-condition>strong{color:#3e6f23;font-weight:700}.weather-popup-camera-title{color:var(--ink-700);margin:11px 0 6px;font-size:10px;display:block}.weather-popup-camera{background:var(--surface-100);object-fit:cover;border-radius:9px;width:100%;min-height:150px;max-height:260px;display:block}.closure-map-marker{cursor:pointer;filter:drop-shadow(0 3px 3px #14192061);place-items:center;width:38px;height:38px;transition:transform .12s,filter .12s;display:grid;position:relative}.closure-map-marker:hover{filter:drop-shadow(0 5px 5px #1419206b);transform:translateY(-2px)scale(1.05)}.roadworks-map-marker{cursor:pointer;filter:drop-shadow(0 3px 3px #14192061);place-items:center;width:42px;height:42px;transition:transform .12s,filter .12s;display:grid}.roadworks-map-marker:hover{filter:drop-shadow(0 5px 5px #1419206b);transform:translateY(-2px)scale(1.05)}.roadworks-marker-sign{width:42px;height:39px;overflow:visible}.roadworks-sign-triangle{fill:#ffd331;stroke:#e31b32;stroke-width:6px;stroke-linejoin:round}.closure-map-marker.prohibited{background:#fff;border:4px solid #e31b32;border-radius:50%;box-shadow:0 0 0 2px #fff}.roadworks-sign-worker{fill:#171b24}.roadworks-sign-worker-lines{fill:none;stroke:#171b24;stroke-width:4px;stroke-linecap:round;stroke-linejoin:round}.closure-map-marker.complete{background:#fff;border:4px solid #e31b32;border-radius:50%;box-shadow:0 0 0 2px #fff}.closure-map-marker.complete .closure-marker-sign{color:#0000;background:#e31b32;border-radius:2px;width:22px;height:7px;overflow:hidden}.closure-map-marker.partial,.closure-map-marker.safety{clip-path:polygon(50% 0,100% 92%,94% 100%,6% 100%,0 92%);background:#e31b32}.closure-map-marker.partial:before,.closure-map-marker.safety:before{content:"";clip-path:polygon(50% 0,100% 100%,0 100%);background:#fff;position:absolute;inset:5px 6px 6px}.closure-map-marker.safety:before{background:#ffd331}.closure-marker-sign{z-index:1;color:#171b24;font-size:22px;font-weight:800;line-height:1;position:relative}.closure-map-marker.safety .closure-marker-sign{margin-top:8px;font-size:14px}.closure-popup{width:min(360px,72vw);color:var(--ink-900);font-family:var(--font-body);padding:5px 2px 3px}.closure-popup-heading{border-bottom:1px solid var(--surface-200);justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:10px;padding-bottom:10px;display:flex}.closure-popup-heading>strong{font-size:14px;line-height:1.35}.closure-popup-badge{color:#b80f2d;white-space:nowrap;background:#fff0f2;border-radius:999px;flex:none;padding:4px 7px;font-size:9px;font-weight:700}.closure-popup-badge.partial{color:#935a00;background:#fff3db}.closure-popup-badge.safety{color:#6c5600;background:#fff7bf}.closure-popup-badge.work-report{color:#263c7e;background:#eef2ff}.work-report-popup-group.is-separated{border-top:1px solid var(--surface-200);margin-top:8px;padding-top:8px}.closure-popup-row{grid-template-columns:104px minmax(0,1fr);gap:10px;padding:3px 0;font-size:11px;line-height:1.4;display:grid}.closure-popup-row>span{color:var(--ink-500)}.closure-popup-row>strong{font-weight:550}.map-loading,.map-error{z-index:3;color:var(--ink-700);text-align:center;background:#f4f5f7eb;border-radius:14px;flex-direction:column;justify-content:center;align-items:center;gap:10px;display:flex;position:absolute;inset:0}.map-error{color:var(--color-danger);background:#feeef1f0;padding:24px}.map-error strong,.map-error span{display:block}.map-error span{max-width:560px;font-size:12px;line-height:1.5}.map-empty-note{z-index:2;color:#fff;text-align:center;pointer-events:none;background:#141920c2;border-radius:999px;max-width:calc(100% - 36px);padding:9px 13px;font-size:11px;position:absolute;bottom:18px;left:50%;transform:translate(-50%)}.quick-actions{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:22px 0;display:grid}.quick-action{border:1px solid var(--ink-300);min-height:52px;color:var(--ink-900);cursor:pointer;background:#fff;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:0 15px;display:inline-flex}.quick-action:hover{border-color:var(--primary);color:var(--primary)}.camera-gallery-page{width:100%}.camera-gallery-title{align-items:center}.camera-back-button{border:1px solid var(--ink-300);background:var(--surface);min-height:40px;color:var(--ink-700);cursor:pointer;font:inherit;border-radius:999px;align-items:center;gap:7px;padding:0 14px;font-size:11px;display:inline-flex}.camera-back-button:hover{border-color:var(--primary);color:var(--primary)}.camera-gallery-toolbar{background:var(--surface);border:1px solid #e5e8ed;border-radius:16px;margin-bottom:22px;padding:18px 20px;box-shadow:0 8px 28px #1b27480f}.camera-gallery-toolbar>div:first-child{justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:14px;display:flex}.camera-gallery-toolbar>div:first-child strong{font-size:14px;font-weight:600}.camera-gallery-toolbar>div:first-child span{color:var(--ink-500);font-size:10px}.camera-region-filters{flex-wrap:wrap;gap:8px;display:flex}.camera-region-filters button{border:1px solid var(--ink-300);min-height:34px;color:var(--ink-700);cursor:pointer;font:inherit;background:#fff;border-radius:999px;align-items:center;gap:7px;padding:0 12px;font-size:10px;display:inline-flex}.camera-region-filters button>span{background:var(--sunken);min-width:20px;color:var(--ink-600);text-align:center;border-radius:999px;padding:2px 5px;font-size:9px}.camera-region-filters button.active{border-color:var(--primary);background:var(--primary);color:#fff}.camera-region-filters button.active>span{color:#fff;background:#ffffff2e}.camera-region-section{margin-bottom:28px}.camera-region-heading{border-bottom:1px solid #dfe4ec;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:12px;padding:0 2px 10px;display:flex}.camera-region-heading h2{color:var(--primary);margin:0;font-size:16px;font-weight:600}.camera-region-heading>span{color:var(--ink-500);font-size:10px}.camera-gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.live-camera-card{background:#fff;border:1px solid #e1e5eb;border-radius:15px;overflow:hidden;box-shadow:0 8px 24px #14192012}.live-camera-header{justify-content:space-between;align-items:center;gap:12px;min-height:44px;padding:0 13px;display:flex}.live-camera-header h3{color:var(--ink-700);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:12px;font-weight:600;overflow:hidden}.live-camera-header>span{color:var(--success);flex:none;align-items:center;gap:5px;font-size:9px;font-weight:650;display:inline-flex}.live-camera-header i{background:#2bb673;border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 3px #2bb67326}.live-camera-frame{aspect-ratio:4/3;background:#e9edf1;position:relative;overflow:hidden}.live-camera-frame img{object-fit:cover;width:100%;height:100%;display:block}.live-camera-placeholder{color:var(--ink-500);text-align:center;background:linear-gradient(135deg,#fff6,#0000),#e9edf1;place-items:center;padding:18px;font-size:10px;display:grid;position:absolute;inset:0}.live-camera-placeholder.error{color:var(--danger);background:var(--danger-tint)}.camera-gallery-state{min-height:220px;color:var(--ink-600);background:#fff;border:1px solid #e1e5eb;border-radius:16px;justify-content:center;align-items:center;gap:9px;font-size:12px;display:flex}.camera-gallery-state.error{color:var(--danger);background:var(--danger-tint)}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.sections-page{color:#141920;font-family:var(--font-body);flex-direction:column;gap:16px;display:flex}.page-breadcrumb{color:var(--ink-500);align-items:center;gap:7px;font-size:12px;display:flex}.page-breadcrumb strong{color:var(--primary);font-weight:600}.sections-page-title{justify-content:space-between;align-items:center;gap:20px;display:flex}.sections-page-title h1{color:var(--ink-900);letter-spacing:-.02em;margin:0;font-size:30px;font-weight:500;line-height:1.16}.sections-page-title p{color:var(--ink-700);margin:7px 0 0;font-size:14px;line-height:1.4}.sections-title-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:9px;display:flex}.sections-title-actions .export-button{padding-inline:13px}.sections-export-error{color:var(--danger);background:var(--danger-tint);border:1px solid #be2e2e33;border-radius:10px;padding:10px 13px;font-size:12px}.primary-icon-button,.secondary-icon-button{min-height:40px;font:inherit;cursor:pointer;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:0 16px;font-size:12px;font-weight:600;transition:border-color .16s,background .16s,color .16s;display:inline-flex}.primary-icon-button{border:1px solid var(--primary);color:#fff;background:var(--primary)}.primary-icon-button:hover{background:var(--primary-hover)}.secondary-icon-button{color:var(--primary);background:#fff;border:1px solid #d8dde4}.secondary-icon-button:hover{border-color:var(--primary);background:#eef3ff}.primary-icon-button:disabled,.secondary-icon-button:disabled{opacity:.5;cursor:not-allowed}.sections-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.sections-summary>div{border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:#fff;align-items:center;gap:13px;min-height:82px;padding:16px 18px;display:flex}.sections-summary svg{color:var(--primary);flex:none}.sections-summary span{color:var(--ink-500);letter-spacing:.08em;text-transform:uppercase;margin-bottom:4px;font-size:12px;font-weight:500;display:block}.sections-summary strong{color:var(--ink-900);font-size:20px;font-weight:500}.sections-toolbar{border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:#fff;justify-content:space-between;align-items:center;gap:14px;padding:12px;display:flex}.sections-search{border:1px solid var(--ink-500);border-radius:var(--radius-sm);width:min(470px,100%);height:42px;color:var(--ink-500);align-items:center;gap:10px;padding:0 12px;display:flex}.sections-search:focus-within{border-color:var(--primary);box-shadow:0 0 0 3px #1f3f8b17}.sections-search input{min-width:0;color:var(--ink-900);font:inherit;background:0 0;border:0;outline:0;flex:1;font-size:14px}.sections-search button{color:var(--ink-500);cursor:pointer;background:0 0;border:0;place-items:center;padding:3px;display:grid}.sections-state{min-height:180px;color:var(--ink-500);text-align:center;background:#fff;border:1px solid #e3e7ed;border-radius:16px;place-items:center;display:grid}.sections-state.error{color:var(--danger);background:var(--danger-tint)}.contractor-section{border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:#fff;overflow:hidden}.contractor-section.expanded{border-color:var(--border-subtle);box-shadow:0 2px 4px #1419200a}.contractor-section-header{background:var(--sunken);justify-content:space-between;align-items:center;gap:14px;min-height:62px;padding:10px 13px;display:flex}.contractor-section.expanded .contractor-section-header{background:var(--sunken)}.contractor-toggle{min-width:0;color:var(--ink-900);text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:12px;padding:0;display:flex}.contractor-toggle-icon{color:#fff;background:var(--primary);border-radius:9px;flex:none;place-items:center;width:32px;height:32px;display:grid}.contractor-toggle>span:last-child{flex-direction:column;gap:3px;min-width:0;display:flex}.contractor-toggle strong{text-overflow:ellipsis;white-space:nowrap;font-size:16px;font-weight:500;overflow:hidden}.contractor-toggle small{color:var(--ink-700);font-size:12px}.section-map-action{color:var(--primary);font:inherit;white-space:nowrap;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:9px;align-items:center;gap:7px;padding:7px 10px;font-size:12px;font-weight:500;display:inline-flex}.section-map-action:hover{background:#fff;border-color:#ccd5e6}.section-map-action.compact{justify-content:center;width:32px;height:32px;padding:0}.unit-section{border-top:1px solid #e3e7ed}.unit-section-header{background:#f4f5f7;justify-content:space-between;align-items:center;gap:14px;min-height:48px;padding:8px 13px 8px 18px;display:flex}.unit-section-header>div{align-items:baseline;gap:10px;display:flex}.unit-section-header strong{color:var(--ink-900);font-size:14px;font-weight:500}.unit-section-header span{color:var(--ink-700);font-size:12px}.work-project-toggle{width:100%;font:inherit;text-align:left;cursor:pointer;border:0;justify-content:flex-start}.work-project-toggle:hover{background:#eef1f5}.work-project-actions{justify-content:flex-end;align-items:center;gap:8px;display:flex}.work-project-toggle .project-toggle-icon{color:#fff;background:var(--primary);border-radius:8px;flex:none;place-items:center;width:30px;height:30px;display:grid}.work-project-toggle .project-toggle-icon svg{color:#fff;stroke:#fff}.work-project-copy{align-items:baseline;gap:10px;min-width:0;display:flex}.work-project-copy strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.work-prices-table{min-width:760px}.work-prices-table th:first-child,.work-prices-table td:first-child{width:105px}.work-prices-table th:nth-child(3),.work-prices-table td:nth-child(3){width:90px}.work-prices-table th:nth-child(4),.work-prices-table td:nth-child(4){width:95px}.work-prices-table th:nth-child(5),.work-prices-table td:nth-child(5){width:130px}.work-prices-table th:last-child,.work-prices-table td:last-child{width:90px}.work-price-value{color:var(--primary)!important;font-weight:600!important}.overhead-prices-table{min-width:680px}.overhead-prices-table th:first-child,.overhead-prices-table td:first-child{width:130px}.overhead-prices-table th:nth-child(3),.overhead-prices-table td:nth-child(3){width:110px}.overhead-prices-table th:last-child,.overhead-prices-table td:last-child{width:160px}.work-note-button{width:30px;height:30px;color:var(--primary);cursor:pointer;background:#eef3ff;border:1px solid #ccd5e6;border-radius:50%;place-items:center;padding:0;display:inline-grid}.work-note-button:focus-visible{outline-offset:2px;outline:3px solid #1f3f8b33}.work-note-button:hover{color:#fff;background:var(--primary)}.empty-note{color:var(--ink-500)}.inspectors-readonly-notice{border-radius:var(--radius-md);color:var(--ink-700);background:#f4f7fc;border:1px solid #cbd5e7;padding:12px 14px;font-size:13px}.inspectors-visibility-toggle{min-height:42px;color:var(--ink-700);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:10px;font-size:13px;font-weight:500;display:inline-flex}.inspectors-visibility-toggle>input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.inspectors-toggle-track{background:#c5cbd4;border-radius:999px;flex:none;width:42px;height:24px;padding:3px;transition:background .16s}.inspectors-toggle-track>span{background:#fff;border-radius:50%;width:18px;height:18px;transition:transform .16s;display:block;box-shadow:0 1px 4px #0003}.inspectors-visibility-toggle>input:checked+.inspectors-toggle-track{background:var(--primary)}.inspectors-visibility-toggle>input:checked+.inspectors-toggle-track>span{transform:translate(18px)}.inspectors-visibility-toggle>input:focus-visible+.inspectors-toggle-track{outline-offset:2px;outline:3px solid #1f3f8b2e}.inspector-title-actions{grid-template-columns:1fr}.inspectors-table{min-width:760px}.inspectors-table th:first-child,.inspectors-table td:first-child{width:30%}.inspectors-table th:nth-child(2),.inspectors-table td:nth-child(2){width:22%}.inspectors-table th:nth-child(3),.inspectors-table td:nth-child(3){width:25%}.inspectors-table th:nth-child(4),.inspectors-table td:nth-child(4){width:130px}.inspector-status{border-radius:999px;justify-content:center;align-items:center;min-width:86px;padding:5px 10px;font-size:12px;font-weight:600;display:inline-flex}.inspector-status.active{color:#12643b;background:#e4f6ec}.inspector-status.inactive{color:#6b7280;background:#eceff3}.inspector-actions{text-align:center;white-space:nowrap;width:104px}.inspector-actions button{width:32px;height:32px;color:var(--primary);cursor:pointer;background:#f4f7fc;border:1px solid #ccd5e6;border-radius:9px;place-items:center;margin:0 3px;padding:0;display:inline-grid}.inspector-actions button:hover{color:#fff;background:var(--primary)}.inspector-actions button.danger{color:#b42318;background:#fff3f2;border-color:#f0c7c3}.inspector-actions button.danger:hover{color:#fff;background:#b42318}.inspector-drawer-overlay{z-index:1100;background:#0e172994;justify-content:flex-end;display:flex;position:fixed;inset:0}.inspector-drawer{width:min(760px,100%);height:100%;color:var(--ink-900);background:#fff;overflow-y:auto;box-shadow:-20px 0 60px #0003}.inspector-drawer>header{border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:flex-start;gap:18px;padding:24px 26px 20px;display:flex}.inspector-drawer header small{color:var(--primary);letter-spacing:.1em;font-size:11px;font-weight:600}.inspector-drawer header h2{margin:5px 0 0;font-size:23px;font-weight:500}.inspector-drawer header button{width:36px;height:36px;color:var(--ink-700);cursor:pointer;background:#f1f3f6;border:0;border-radius:10px;place-items:center;padding:0;display:grid}.inspector-drawer form{flex-direction:column;gap:19px;min-height:calc(100% - 96px);padding:24px 26px;display:flex}.inspector-drawer form>label:not(.inspector-active-toggle){gap:7px;display:grid}.inspector-drawer label>span{color:var(--ink-700);font-size:13px;font-weight:500}.inspector-drawer input:not([type=checkbox]),.inspector-drawer select,.admin-drawer-body input:not([type=checkbox]):not([type=radio]),.admin-drawer-body select{border-radius:var(--radius-sm);width:100%;height:44px;color:var(--ink-900);font:inherit;background:#fff;border:1px solid #adb6c5;outline:0;padding:0 12px;font-size:14px}.inspector-drawer input:focus,.inspector-drawer select:focus,.admin-drawer-body input:not([type=checkbox]):not([type=radio]):focus,.admin-drawer-body select:focus{border-color:var(--primary);box-shadow:0 0 0 3px #1f3f8b1a}.inspector-active-toggle{border:1px solid var(--border-subtle);border-radius:var(--radius-sm);cursor:pointer;background:#f7f8fa;align-items:center;gap:10px;padding:13px 14px;display:flex}.inspector-active-toggle input{width:18px;height:18px;accent-color:var(--primary)}.inspector-form-error{border-radius:var(--radius-sm);color:#9b1c14;background:#fff0ee;padding:10px 12px;font-size:13px}.inspector-drawer form>footer{border-top:1px solid var(--border-subtle);justify-content:flex-end;gap:10px;margin-top:auto;padding-top:20px;display:flex}.inspector-delete-dialog{border-radius:var(--radius-lg);width:min(440px,100%);color:var(--ink-900);text-align:center;background:#fff;padding:28px;box-shadow:0 24px 70px #00000042}.inspector-delete-icon{color:#b42318;background:#fff0ee;border-radius:50%;place-items:center;width:50px;height:50px;margin:0 auto 14px;display:grid}.inspector-delete-dialog h2{margin:0;font-size:21px;font-weight:500}.inspector-delete-dialog p{color:var(--ink-700);margin:10px 0 22px;line-height:1.55}.inspector-delete-dialog footer{justify-content:center;gap:10px;margin-top:20px;display:flex}.inspector-delete-confirm{border-radius:var(--radius-sm);color:#fff;min-height:40px;font:inherit;cursor:pointer;background:#b42318;border:0;justify-content:center;align-items:center;gap:8px;padding:0 18px;font-weight:600;display:inline-flex}.inspector-delete-confirm:disabled{opacity:.55;cursor:wait}.work-note-overlay{z-index:1100;background:#0e1729a8;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.work-note-dialog{border-radius:var(--radius-lg);background:#fff;width:min(620px,100%);overflow:hidden;box-shadow:0 24px 70px #00000042}.work-note-dialog header{border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:flex-start;gap:18px;padding:18px 20px;display:flex}.work-note-dialog small{color:var(--primary);letter-spacing:.06em;font-size:10px;font-weight:600}.work-note-dialog h2{color:var(--ink-900);margin:5px 0 0;font-size:18px;font-weight:500;line-height:1.35}.work-note-dialog>header button{width:36px;height:36px;color:var(--ink-600);background:var(--sunken);cursor:pointer;border:0;border-radius:9px;flex:none;place-items:center;padding:0;display:grid}.work-note-dialog>p{color:var(--ink-700);white-space:pre-wrap;margin:0;padding:20px;font-size:14px;line-height:1.65}.monthly-note-content{gap:18px;max-height:min(68vh,680px);padding:20px;display:grid;overflow-y:auto}.monthly-note-content section>small{color:#68738a;margin-bottom:8px;display:block}.monthly-note-original{background:#f8f9fb;border:1px solid #dce2ec;border-radius:11px;padding:14px 16px}.monthly-note-original-meta{color:#68738a;justify-content:space-between;align-items:center;gap:12px;margin-bottom:9px;font-size:11px;display:flex}.monthly-note-original-meta strong{color:var(--ink-900);font-size:13px;font-weight:600}.monthly-note-original-meta time{flex:none}.monthly-note-original p,.monthly-note-history article p{color:var(--ink-800);white-space:pre-wrap;margin:0;font-size:14px;line-height:1.55}.monthly-note-history{gap:9px;display:grid}.monthly-note-history article{background:#fff;border-left:4px solid #c83b3b;border-radius:8px;padding:13px 15px}.monthly-note-history article.supervisor-note p{color:#b42318;font-weight:600}.monthly-note-history article header{border:0;align-items:center;padding:0}.monthly-note-history article header strong{color:var(--ink-900);font-size:13px}.monthly-note-history article header time,.monthly-note-history article>span{color:#68738a;font-size:11px}.monthly-note-history article>span{margin:2px 0 8px;display:block}.monthly-note-addition{border-top:1px solid #dce2ec;gap:9px;padding-top:16px;display:grid}.monthly-note-addition label{color:var(--ink-900);font-size:13px;font-weight:600}.monthly-note-addition textarea{resize:vertical;width:100%;font:inherit;border:1px solid #adb6c5;border-radius:9px;padding:11px 12px}.monthly-note-addition .primary-icon-button{justify-self:end}.monthly-note-empty{color:#68738a;margin:0}.sections-table-scroll{width:100%;overflow-x:auto}.data-table{border-collapse:collapse;width:100%;min-width:920px}.data-table th,.data-table td{border-top:1px solid var(--border-subtle);vertical-align:middle;padding:11px 13px}.data-table th{color:var(--ink-700);background:var(--sunken);letter-spacing:0;text-align:left;font-size:12px;font-weight:500}.data-table td{color:var(--ink-900);font-size:12px;font-weight:400;line-height:1.4}.data-table tbody tr:hover{background:#f7f9fd}.data-table td.numeric,.data-table th.numeric{font-variant-numeric:tabular-nums;text-align:right}.data-table td.centered,.data-table th.centered{text-align:center}.data-table td.section-name{color:var(--ink-900);font-weight:500}.data-table td.row-action-cell{text-align:center;width:58px;padding-block:5px}.row-action-cell button{width:32px;height:32px;color:var(--primary);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;place-items:center;padding:0;display:inline-grid}.row-action-cell button:hover{background:#eef3ff;border-color:#ccd5e6}.data-table tfoot td{color:var(--ink-700);background:var(--sunken);font-weight:500}.monthly-plan-page{gap:18px}.monthly-entry-drawer{width:min(760px,100vw)}.monthly-entry-drawer>header p{color:var(--ink-600);margin:6px 0 0;font-size:12px}.monthly-entry-drawer form{gap:16px}.monthly-entry-section{background:#fff;border:1px solid #dfe4ec;border-radius:14px;gap:16px;padding:18px;display:grid}.monthly-entry-section>header{align-items:flex-start;gap:11px;display:flex}.monthly-entry-section>header>small{color:#fff;background:var(--primary);border-radius:9px;place-items:center;width:30px;height:30px;font-size:10px;font-weight:700;display:grid}.monthly-entry-section h3{color:var(--ink-900);margin:0;font-size:15px;font-weight:600}.monthly-entry-section header p{color:var(--ink-600);margin:4px 0 0;font-size:11px}.monthly-entry-section>label,.monthly-entry-two-columns>label,.monthly-entry-overhead-controls>label,.monthly-entry-value-grid>label{gap:7px;display:grid}.monthly-entry-drawer textarea{resize:vertical;border-radius:var(--radius-sm);width:100%;min-height:86px;color:var(--ink-900);font:inherit;background:#fff;border:1px solid #adb6c5;outline:0;padding:11px 12px;font-size:13px;line-height:1.5}.monthly-entry-drawer textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px #1f3f8b1a}.monthly-entry-value-grid{grid-template-columns:1.1fr repeat(3,.7fr) 1.35fr;gap:10px;display:grid}.monthly-entry-value-grid>div{background:#f7f8fa;border:1px solid #e0e4ea;border-radius:9px;align-content:center;gap:5px;min-height:62px;padding:9px 11px;display:grid}.monthly-entry-value-grid span,.monthly-entry-overhead-controls label>span{color:var(--ink-600);font-size:10px}.monthly-entry-value-grid strong{color:var(--ink-900);font-size:12px;font-weight:600}.monthly-entry-value-grid .highlight{color:var(--primary);background:#f0f4ff;border-color:#c8d3ef}.monthly-entry-value-grid .highlight strong{color:var(--primary);font-size:14px}.monthly-entry-two-columns{grid-template-columns:1fr 1fr;gap:12px;display:grid}.monthly-entry-period-builder{background:#f8f9fb;border:1px solid #dfe4ec;border-radius:11px;gap:11px;padding:13px;display:grid}.monthly-entry-period-builder>.secondary-icon-button{justify-self:start;min-height:38px}.entry-field-invalid>span:first-child{color:#b42318;font-weight:700}.entry-field-invalid>input,.entry-field-invalid>select,.entry-field-invalid>textarea,.entry-field-invalid.schedule-section-search>div:first-of-type{background:#fff8f8!important;border-color:#d64545!important;box-shadow:0 0 0 3px #d645451f!important}.monthly-entry-period-builder.entry-period-invalid{background:snow;border-color:#d64545;box-shadow:0 0 0 3px #d645451a}.monthly-entry-period-builder.entry-period-invalid:after{content:"Izberite vsaj en datum ali obdobje.";color:#b42318;font-size:12px;font-weight:600}.monthly-entry-period-list{border-top:1px solid #dfe4ec;gap:8px;padding-top:11px;display:grid}.monthly-entry-period-list>small{color:var(--primary);letter-spacing:.04em;text-transform:uppercase;font-size:10px;font-weight:700}.monthly-entry-period-items{flex-wrap:wrap;gap:7px;display:flex}.monthly-entry-period-item{min-height:34px;color:var(--primary);background:#fff;border:1px solid #cad4e8;border-radius:999px;align-items:center;gap:7px;padding:0 4px 0 11px;font-size:11px;display:inline-flex}.monthly-entry-period-item strong{font-weight:600}.monthly-entry-period-item button{color:#a92735;cursor:pointer;background:#fff0f0;border:0;border-radius:50%;place-items:center;width:27px;height:27px;padding:0;display:grid}.monthly-entry-period-list p{color:var(--ink-500);margin:0;font-size:10px}.monthly-entry-overheads{background:#fafbfc}.monthly-entry-overhead-controls{grid-template-columns:minmax(150px,.7fr) minmax(220px,1.3fr) 110px auto;align-items:end;gap:10px;display:grid}.monthly-entry-overhead-controls button{min-height:44px}.monthly-entry-overhead-empty{color:var(--ink-500);text-align:center;background:#fff;border:1px dashed #cbd3df;border-radius:10px;padding:16px;font-size:11px}.monthly-entry-overhead-list{background:#fff;border:1px solid #dfe4ec;border-radius:10px;overflow:hidden}.monthly-entry-overhead-list>div{min-height:58px;color:var(--ink-700);border-bottom:1px solid #e5e8ed;grid-template-columns:minmax(210px,1fr) 90px 90px 110px 34px;align-items:center;gap:9px;padding:9px 11px;font-size:11px;display:grid}.monthly-entry-overhead-list>div:last-child{border-bottom:0}.monthly-entry-overhead-list>div>span:first-child{gap:3px;display:grid}.monthly-entry-overhead-list small{color:var(--primary);letter-spacing:.04em;font-size:9px;font-weight:650}.monthly-entry-overhead-list button{color:#a92735;cursor:pointer;background:#fff0f0;border:0;border-radius:8px;place-items:center;width:32px;height:32px;padding:0;display:grid}.monthly-entry-total{color:#fff;background:var(--primary);border-radius:12px;justify-content:space-between;align-items:center;gap:16px;padding:17px 19px;display:flex}.monthly-entry-total span{font-size:12px}.monthly-entry-total strong{font-size:19px}.monthly-entry-message{color:#1c684b;background:#ebf8f1}.monthly-entry-drawer form>footer{justify-content:space-between;align-items:center}.monthly-entry-drawer form>footer>span{max-width:440px;color:var(--ink-500);font-size:10px;line-height:1.45}.monthly-inspection-loading{min-height:220px;color:var(--primary);flex-direction:row;justify-content:center;align-items:center;gap:12px;display:flex}.monthly-inspection-form{gap:16px;padding:18px;display:grid;overflow-y:auto}.monthly-inspection-form>footer{border-top:1px solid #dfe4ec;justify-content:space-between;align-items:center;gap:16px;padding-top:14px;display:flex}.monthly-inspection-form>footer>span{color:var(--ink-500);font-size:11px}.monthly-inspection-summary{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.monthly-inspection-summary>div{background:#f7f8fa;border:1px solid #e0e4ea;border-radius:10px;gap:5px;padding:12px;display:grid}.monthly-inspection-summary span,.monthly-inspection-unit-row small{color:var(--ink-500);font-size:10px}.monthly-inspection-toolbar{justify-content:space-between;align-items:center;gap:12px;display:flex}.monthly-inspection-units{border:1px solid #dfe4ec;border-radius:11px;overflow:hidden}.monthly-inspection-unit-header,.monthly-inspection-unit-row{grid-template-columns:54px minmax(180px,1.5fr) minmax(110px,1fr) 90px 110px;align-items:center;gap:10px;min-height:56px;padding:9px 12px;display:grid}.monthly-inspection-unit-header{min-height:38px;color:var(--ink-700);background:#edf0f4;font-size:10px;font-weight:700}.monthly-inspection-unit-row{color:var(--ink-800);background:#fff;border-top:1px solid #e3e7ed;font-size:11px}.monthly-inspection-unit-row:nth-child(odd){background:#f7f8fa}.monthly-inspection-unit-row>span:nth-child(2){gap:4px;display:grid}.monthly-inspection-unit-row input{width:18px;height:18px;accent-color:var(--primary)}@media (width<=760px){.monthly-inspection-summary{grid-template-columns:1fr}.monthly-inspection-unit-header,.monthly-inspection-unit-row{grid-template-columns:38px minmax(150px,1fr) 100px}.monthly-inspection-unit-header>:nth-child(4),.monthly-inspection-unit-header>:nth-child(5),.monthly-inspection-unit-row>:nth-child(4),.monthly-inspection-unit-row>:nth-child(5){display:none}.monthly-entry-value-grid{grid-template-columns:1fr 1fr}.monthly-entry-value-grid .highlight{grid-column:1/-1}.monthly-entry-two-columns,.monthly-entry-overhead-controls{grid-template-columns:1fr}.monthly-entry-overhead-list>div{grid-template-columns:minmax(0,1fr) auto}.monthly-entry-overhead-list>div>span:nth-child(2),.monthly-entry-overhead-list>div>span:nth-child(3){display:none}}.monthly-plan-steps{align-items:center;gap:8px;display:flex}.monthly-plan-steps span{min-height:32px;color:var(--ink-600);background:#e9ecf1;border-radius:999px;align-items:center;padding:0 15px;font-size:12px;font-weight:600;display:inline-flex}.monthly-plan-steps span.active{color:#fff;background:var(--primary)}.monthly-filter-card,.monthly-results-card{background:#fff;border:1px solid #e0e4ea;border-radius:18px;box-shadow:0 2px 5px #1419200a}.monthly-filter-card{z-index:4;padding:24px 28px;position:relative}.monthly-filter-card>header,.monthly-results-card>header{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.monthly-filter-card>header{margin-bottom:22px}.monthly-filter-card>header>svg{color:var(--primary);flex:none}.monthly-filter-card header small,.monthly-results-card header small{color:var(--primary);letter-spacing:.1em;font-size:10px;font-weight:650}.monthly-filter-card h2,.monthly-results-card h2{color:var(--ink-900);letter-spacing:-.015em;margin:5px 0 0;font-size:22px;font-weight:500}.monthly-filter-card header p{color:var(--ink-600);margin:7px 0 0;font-size:12px}.monthly-filter-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px 20px;display:grid}.work-reports-title{align-items:center}.work-reports-title small{color:var(--primary);letter-spacing:.1em;font-size:10px;font-weight:650}.work-reports-title-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:9px;display:flex}.work-reports-filter-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px 20px;display:grid}.monthly-filter-field{align-content:start;gap:7px;min-width:0;display:grid;position:relative}.monthly-filter-field-wide{grid-column:span 1}.monthly-filter-field>span,.monthly-table-filters label>span{color:var(--ink-700);font-size:12px;font-weight:500}.monthly-filter-field select,.monthly-filter-field input[type=date],.monthly-filter-field input[type=number],.monthly-table-filters select,.duty-book-toolbar input[type=date],.duty-book-toolbar select{width:100%;height:48px;color:var(--ink-900);font:inherit;background:#fff;border:1px solid #aeb7c5;border-radius:9px;outline:0;padding:0 38px 0 13px;font-size:13px}.monthly-filter-field select:focus,.monthly-filter-field input[type=date]:focus,.monthly-filter-field input[type=number]:focus,.monthly-filter-field textarea:focus,.monthly-table-filters select:focus,.duty-book-toolbar input[type=date]:focus,.duty-book-toolbar select:focus{border-color:var(--primary);box-shadow:0 0 0 3px #263c7e1a}.monthly-filter-field input[type=date],.monthly-filter-field input[type=number]{padding:0 13px}.monthly-filter-field textarea{resize:vertical;width:100%;min-height:92px;color:var(--ink-900);font:inherit;background:#fff;border:1px solid #aeb7c5;border-radius:9px;outline:0;padding:12px 13px;font-size:13px}.work-reports-draft-notice{color:var(--primary);background:#f3f6fc;border:1px solid #cbd6ed;border-radius:9px;margin-top:18px;padding:11px 13px;font-size:12px}.monthly-multiselect{grid-column:span 2}.monthly-multiselect-trigger{width:100%;min-height:48px;color:var(--ink-900);font:inherit;text-align:left;cursor:pointer;background:#fff;border:1px solid #aeb7c5;border-radius:9px;justify-content:space-between;align-items:center;gap:12px;padding:7px 12px;display:flex}.monthly-multiselect-trigger:hover,.monthly-multiselect-trigger[aria-expanded=true]{border-color:var(--primary)}.monthly-multiselect-trigger>span{align-items:baseline;gap:10px;min-width:0;display:flex}.monthly-multiselect-trigger b{flex:none;font-size:13px;font-weight:500}.monthly-multiselect-trigger small{color:var(--ink-600);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.monthly-multiselect-menu{z-index:20;background:#fff;border:1px solid #ced5df;border-radius:12px;padding:7px;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow:hidden;box-shadow:0 18px 42px #1622392e}.monthly-multiselect-menu>label{min-height:40px;color:var(--ink-500);border:1px solid #d3d9e2;border-radius:8px;align-items:center;gap:8px;margin-bottom:6px;padding:0 10px;display:flex}.monthly-multiselect-menu input{width:100%;min-width:0;height:38px;color:var(--ink-900);font:inherit;background:0 0;border:0;outline:0;padding:0;font-size:12px}.monthly-multiselect-select-visible{width:calc(100% - 20px);min-height:30px;color:var(--primary);font:700 9px var(--font-body);cursor:pointer;background:#f4f7fc;border:1px solid #cbd6e6;border-radius:7px;margin:0 10px 6px}.monthly-multiselect-select-visible:hover{border-color:var(--primary);background:#edf3ff}.monthly-multiselect-options{max-height:235px;overflow-y:auto}.monthly-multiselect-option{width:100%;min-height:38px;color:var(--ink-700);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:7px;grid-template-columns:22px minmax(0,1fr);align-items:center;gap:7px;padding:7px 9px;font-size:12px;display:grid}.monthly-multiselect-option:hover,.monthly-multiselect-option.selected{color:var(--primary);background:#eef2fb}.monthly-multiselect-option>span:first-child{border:1px solid #b7c0cd;border-radius:5px;place-items:center;width:19px;height:19px;display:grid}.monthly-multiselect-option.selected>span:first-child{border-color:var(--primary);color:#fff;background:var(--primary)}.monthly-multiselect-option b{font-weight:600}.monthly-multiselect-options>p{color:var(--ink-500);margin:0;padding:15px 10px;font-size:12px}.monthly-multiselect-done{color:#fff;background:var(--primary);width:100%;min-height:36px;font:inherit;cursor:pointer;border:0;border-radius:8px;margin-top:6px;font-size:11px;font-weight:600}.monthly-multiselect-done:hover{background:var(--primary-hover)}.monthly-filter-data-message{color:#9f2f2f;background:#fff5f5;border:1px solid #f0caca;border-radius:9px;margin-top:18px;padding:11px 13px;font-size:12px}.monthly-active-filters{flex-wrap:wrap;align-items:center;gap:8px;min-height:36px;margin-top:20px;display:flex}.monthly-active-filters span{color:#fff;background:var(--primary);border-radius:999px;align-items:center;min-height:30px;padding:0 12px;font-size:11px;font-weight:600;display:inline-flex}.monthly-filter-card>footer{border-top:1px solid #dde1e7;justify-content:space-between;align-items:center;gap:20px;margin-top:18px;padding-top:18px;display:flex}.monthly-filter-card>footer>div:first-child{gap:4px;min-width:0;display:grid}.monthly-filter-card>footer strong{color:var(--success);font-size:12px}.monthly-filter-card>footer span{color:var(--ink-600);font-size:11px}.monthly-filter-card>footer>div:last-child{flex:none;gap:9px;display:flex}.monthly-results-card{overflow:hidden}.monthly-results-card>header{background:#f7f8fa;border-bottom:1px solid #dfe3e9;align-items:center;min-height:72px;padding:16px 20px}.monthly-results-card>header>span{min-height:30px;color:var(--primary);background:#fff;border:1px solid #cbd3df;border-radius:999px;align-items:center;padding:0 12px;font-size:11px;font-weight:600;display:inline-flex}.rv-billing-empty{color:#64748b;text-align:center;background:linear-gradient(#fff 0%,#f8fafc 100%);align-content:center;place-items:center;gap:9px;min-height:220px;padding:42px 24px;display:grid}.rv-billing-empty>svg:first-child{color:#0ea5e9}.rv-billing-empty strong{color:#334155;font-size:15px}.rv-billing-empty span{max-width:620px;font-size:13px;line-height:1.55}.rv-billing-primary-filters{grid-template-areas:"date-from date-to project season""status status status status""works works sections sections"}.rv-billing-primary-filters>:first-child{grid-area:date-from}.rv-billing-primary-filters>:nth-child(2){grid-area:date-to}.rv-billing-primary-filters>:nth-child(3){grid-area:project}.rv-billing-primary-filters>:nth-child(4){grid-area:season}.rv-billing-primary-filters>:nth-child(5){grid-area:status;width:calc(25% - 10px)}.rv-billing-primary-filters>:nth-child(6){grid-area:works}.rv-billing-primary-filters>:nth-child(7){grid-area:sections}.rv-billing-table-filters{grid-template-columns:minmax(260px,1.5fr) repeat(3,minmax(155px,.8fr)) auto}.rv-billing-results-actions{background:#fbfcfe;border-top:1px solid #dbe1ea;justify-content:space-between;align-items:center;gap:14px;min-height:64px;padding:10px 20px;display:flex}.rv-billing-results-actions>div{justify-content:flex-end;align-items:center;gap:10px;display:flex}.rv-billing-results-actions .work-reports-hide-inspections,.rv-billing-results-actions .secondary-icon-button{min-height:42px}.rv-billing-expand-all svg{flex:none}.rv-billing-results-error{margin:18px}.rv-billing-period-total{background:#f6f8fc;border-top:1px solid #dbe1ea;border-bottom:1px solid #dbe1ea;justify-content:space-between;align-items:center;gap:24px;min-height:66px;padding:12px 20px;display:flex}.rv-billing-period-total>div{gap:3px;display:grid}.rv-billing-period-total>div:last-child{text-align:right}.rv-billing-period-total small{color:var(--primary);letter-spacing:.08em;font-size:9px;font-weight:800}.rv-billing-period-total span{color:var(--ink-600);font-size:12px;font-weight:650}.rv-billing-period-total strong{color:var(--ink-900);font-variant-numeric:tabular-nums;font-size:20px;font-weight:750}.rv-billing-recap{border:1px solid var(--line);background:#fff;border-radius:14px;margin:0 20px 18px;overflow:hidden}.rv-billing-recap-toggle{width:100%;min-height:66px;color:var(--ink-900);text-align:left;cursor:pointer;background:#fff;border:0;justify-content:space-between;align-items:center;gap:18px;padding:13px 17px;display:flex}.rv-billing-recap-toggle:hover{background:#f8faff}.rv-billing-recap-toggle>span{align-items:center;gap:11px;display:flex}.rv-billing-recap-toggle>span:first-child>svg{color:var(--primary)}.rv-billing-recap-toggle>span:first-child>span{gap:2px;display:grid}.rv-billing-recap-toggle small{color:var(--ink-500);font-size:10px}.rv-billing-recap-toggle>span:first-child small{color:var(--primary);letter-spacing:.08em;font-size:9px;font-weight:800}.rv-billing-recap-toggle strong{font-size:14px}.rv-billing-recap-toggle>span:last-child svg{color:var(--primary);transition:transform .18s}.rv-billing-recap.expanded .rv-billing-recap-toggle>span:last-child svg{transform:rotate(180deg)}.rv-billing-recap-content{border-top:1px solid var(--line)}.rv-billing-recap-message{min-height:76px;color:var(--ink-500);justify-content:center;align-items:center;gap:9px;padding:22px;font-size:12px;display:flex}.rv-billing-recap-table{min-width:900px}.rv-billing-recap-table th:first-child{text-align:left;width:24%}.rv-billing-recap-table th{white-space:nowrap}.rv-billing-recap-table td.negative,.rv-billing-recap-table th.negative{color:#c52d38}.rv-billing-recap-table tfoot th{border-top:2px solid var(--primary);color:var(--ink-900);background:#eef3ff}.rv-billing-day{background:#fff;border-top:1px solid #dbe1ea}.rv-billing-day>header{background:#f6f8fb;justify-content:space-between;align-items:center;gap:14px;min-height:52px;padding:8px 14px;display:flex}.rv-billing-day>header>button{min-height:36px;color:var(--primary);font:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:8px;padding:0 8px;display:inline-flex}.rv-billing-day>header>button strong{font-size:13px}.rv-billing-day>header>button span{color:var(--ink-500);font-size:11px}.group-expand-icon,.rv-billing-day>header>button .rv-billing-expand-button{color:#fff;background:#8290a7;border:1px solid #bcc7d8;border-radius:6px;place-items:center;width:25px;height:25px;display:grid}.rv-billing-day>header>div{align-items:center;gap:12px;display:flex}.rv-billing-day>header>div>strong{color:var(--ink-800);font-size:12px}.rv-billing-day>header>div>button{width:32px;height:32px;color:var(--ink-400);background:#fff;border:1px solid #d3d9e2;border-radius:8px;place-items:center;display:grid}.rv-billing-day>header>div>.rv-billing-confirm-day{color:#176c9b;background:#eff9fe;border-color:#a9d5ec;gap:7px;width:auto;min-width:112px;padding:0 11px;font-size:11px;font-weight:750}.rv-billing-day>header>div>.rv-billing-confirm-day.confirmed{color:#167449;background:#f2fbf6;border-color:#9bcfb2}.rv-billing-day>header>div>.rv-billing-confirm-day:disabled{cursor:wait;opacity:.65}.rv-billing-table{table-layout:fixed;min-width:1510px}.data-table.rv-billing-table th:first-child{width:105px}.data-table.rv-billing-table th:nth-child(2){width:75px}.data-table.rv-billing-table th:nth-child(3){width:210px}.data-table.rv-billing-table th:nth-child(4){width:95px}.data-table.rv-billing-table th:nth-child(5){width:220px}.data-table.rv-billing-table th:nth-child(6){width:55px}.data-table.rv-billing-table th:nth-child(7),.data-table.rv-billing-table th:nth-child(8){width:95px}.data-table.rv-billing-table th:nth-child(9){width:110px}.data-table.rv-billing-table th:nth-child(10){width:125px}.data-table.rv-billing-table th:nth-child(11){width:95px}.data-table.rv-billing-table th:nth-child(12){width:48px}.data-table.rv-billing-table th:nth-child(13){width:270px}.rv-billing-table .monthly-row-actions-inner{grid-template-columns:repeat(9,24px);justify-content:center;gap:5px}.rv-billing-table .monthly-row-actions-inner .monthly-confirm-toggle{display:none}.rv-billing-selection-column{text-align:center;vertical-align:middle}.rv-billing-selection-column input{width:17px;height:17px;accent-color:var(--primary);cursor:pointer;margin:0}.rv-billing-selection-toolbar{background:#f3f7ff;border-top:1px solid #dbe3ef;border-bottom:1px solid #dbe3ef;justify-content:space-between;align-items:center;gap:14px;min-height:58px;padding:9px 18px;display:flex}.rv-billing-selection-toolbar>strong{color:var(--primary);font-size:13px}.rv-billing-selection-toolbar>div{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.rv-billing-selection-toolbar input[type=date]{min-height:38px;color:var(--ink-800);font:inherit;background:#fff;border:1px solid #c9d3e2;border-radius:9px;padding:0 10px}.rv-billing-selection-toolbar .destructive{color:#c42b36;background:#fff7f7;border-color:#efbec2}.rv-billing-diary-button{color:#b42318;background:#fff7f6;border:1px solid #d4dae4;border-radius:7px;place-items:center;width:24px;height:24px;text-decoration:none;display:inline-grid}.rv-billing-diary-button:hover{background:#ffebe9;border-color:#e59a94}.rv-billing-unit-cell{gap:3px;display:grid}.rv-billing-unit-cell small{color:#98a2b3;font-size:9px;font-weight:500;line-height:1.3}.rv-billing-status{white-space:nowrap;border:1px solid #cdd5df;border-radius:999px;align-items:center;min-height:24px;padding:0 8px;font-size:9px;font-weight:700;display:inline-flex}.rv-billing-status.reported{color:#8a5a12;background:#fff8e8;border-color:#e7c98d}.rv-billing-status.billed-unconfirmed{color:#176c9b;background:#eff9fe;border-color:#a9d5ec}.rv-billing-status.confirmed{color:#167449;background:#f2fbf6;border-color:#9bcfb2}.rv-billing-attachment{color:#53657d;cursor:pointer;place-items:center;width:24px;height:24px;display:grid;position:relative}.rv-billing-attachment b{color:#fff;background:var(--primary);border-radius:8px;place-items:center;min-width:14px;height:14px;font-size:8px;display:grid;position:absolute;top:-5px;right:-4px}.rv-billing-editor-overlay{z-index:2100}.rv-billing-editor-overlay~.schedule-map-overlay{z-index:2200}.rv-billing-editor{flex-direction:column;width:min(760px,100vw);display:flex}.rv-billing-editor>header{flex:none}.rv-billing-editor>footer{background:#fff;border-top:1px solid #dfe4ec;flex:none;justify-content:space-between;align-items:center;gap:18px;min-height:78px;padding:16px 24px;display:flex}.rv-billing-editor>footer>span{color:var(--ink-500);font-size:11px}.rv-billing-editor>footer>div{align-items:center;gap:10px;display:flex}.monthly-delete-button,button[title^=Izbriši],button[aria-label^=Izbriši]{color:#b42318!important;background:#fff3f2!important;border-color:#f0c7c3!important}.monthly-delete-button:hover:not(:disabled),button[title^=Izbriši]:hover:not(:disabled),button[aria-label^=Izbriši]:hover:not(:disabled){color:#fff!important;background:#b42318!important;border-color:#b42318!important}.rv-billing-editor-body{background:#f6f8fb;flex:auto;gap:16px;min-height:0;padding:18px 24px 28px;display:grid;overflow-y:auto}.rv-billing-editor-body .monthly-entry-section{background:#fff;margin:0}.rv-billing-plan-notice{color:#244486;background:#f1f5ff;border:1px solid #b7caee;border-radius:10px;align-items:center;gap:9px;margin-bottom:14px;padding:11px 13px;font-size:12px;font-weight:600;display:flex}.rv-billing-value-grid{grid-template-columns:repeat(6,minmax(0,1fr))}.rv-billing-value-grid label{gap:6px;display:grid}.rv-billing-value-grid label span,.rv-billing-weather-grid label span,.rv-billing-execution-grid label span{color:var(--ink-500);font-size:10px;font-weight:700}.rv-billing-value-grid input{width:100%;min-height:38px;padding-block:0}.rv-billing-section-summary{background:#fafbfe;border:1px solid #d7deea;border-radius:11px;align-items:center;gap:12px;margin:14px 0 12px;padding:12px 14px;display:flex}.rv-billing-section-summary>svg{color:var(--primary)}.rv-billing-section-summary div{gap:2px;display:grid}.rv-billing-section-summary small{color:var(--primary);font-size:9px;font-weight:800}.rv-billing-section-summary strong{color:var(--ink-900);font-size:13px}.rv-billing-section-summary span{color:var(--ink-500);font-size:10px}.rv-billing-weather-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.rv-billing-weather-grid label,.rv-billing-execution-grid>div label{gap:6px;display:grid}.rv-billing-weather-grid input,.rv-billing-weather-grid select,.rv-billing-execution-grid input{width:100%;min-height:42px;font:inherit;background:#fff;border:1px solid #bfc9d9;border-radius:9px;padding:0 11px}.rv-billing-execution-grid{grid-template-columns:minmax(0,1.5fr) minmax(230px,.8fr);gap:14px;margin-top:14px;display:grid}.rv-billing-execution-options{gap:6px;min-width:0;display:grid}.rv-billing-execution-options>span{color:var(--ink-500);font-size:10px;font-weight:700}.rv-billing-execution-options>div{border:1px solid #d4dbe6;border-radius:9px;grid-template-columns:repeat(3,minmax(0,1fr));align-items:center;gap:7px;min-height:42px;padding:8px 11px;display:grid}.rv-billing-execution-options label{align-items:center;gap:6px;font-size:10px;line-height:1.25;display:flex}.rv-billing-execution-options input{appearance:auto;accent-color:var(--primary);border:0;flex:0 0 14px;margin:0;padding:0;width:14px!important;height:14px!important;min-height:14px!important}.rv-billing-time-range{grid-template-columns:1fr 1fr;gap:10px;display:grid}.rv-billing-time-field>div,.fixed-time-field>div{min-height:42px;color:var(--primary);background:linear-gradient(#fff 0%,#f8faff 100%);border:1px solid #bfc9d9;border-radius:9px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:4px;padding:0 8px;transition:border-color .18s,box-shadow .18s;display:grid}.rv-billing-time-field>div:focus-within,.fixed-time-field>div:focus-within{border-color:var(--primary);box-shadow:0 0 0 3px #263c7e1a}.rv-billing-time-field input[type=text],.fixed-time-field input{width:100%;min-width:0;height:34px;min-height:34px;color:var(--ink-900);font:inherit;background:0 0;border:0;outline:0;padding:0 4px;font-weight:750}.rv-billing-time-field input[type=text]::placeholder{color:var(--ink-400)}.fixed-time-field{color:#566174;flex-direction:column;gap:6px;font-size:10px;font-weight:700;display:flex}.fixed-time-field input[type=time]{color:#182033;width:100%;min-width:0;min-height:42px;font:700 14px/1 var(--font-sans);font-variant-numeric:tabular-nums;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;background:#fff;border:1px solid #bdc9dc;border-radius:9px;padding:0 12px}.fixed-time-field input[type=time]:focus{border-color:#29458d;outline:0;box-shadow:0 0 0 3px #263c7e1a}.rv-billing-resource-list{border:1px solid #dce2eb;border-radius:10px;max-height:330px;margin-top:10px;overflow-y:auto}.work-report-resource-summary{color:var(--ink-700);justify-content:space-between;align-items:center;gap:12px;font-size:11px;display:flex}.work-report-resource-summary span{color:var(--primary);background:#edf2ff;border-radius:999px;padding:5px 9px;font-weight:750}.rv-billing-editor-body .monthly-entry-section.work-report-resource-editor>header>small{color:#fff}.rv-billing-selected-resources{grid-template-columns:1fr;display:grid}.rv-billing-selected-resources>span{grid-template-columns:auto auto minmax(0,1fr) 112px 24px;width:100%;min-height:42px;padding:6px 8px;display:grid}.rv-billing-selected-resources>span>label{grid-template-columns:auto 72px;justify-content:end;align-items:center;gap:7px;display:grid}.rv-billing-selected-resources>span>label em{color:var(--ink-500);font-size:9px;font-style:normal}.rv-billing-selected-resources>span>label input{font:inherit;background:#fff;border:1px solid #c7d1e0;border-radius:6px;padding:0 7px;width:72px!important;height:30px!important;min-height:30px!important}.rv-billing-editor .monthly-entry-overhead-controls input,.rv-billing-editor .monthly-entry-overhead-quantity input{height:38px;min-height:38px;padding-block:0}.rv-billing-editor .monthly-entry-overhead-quantity input{width:78px;height:34px;min-height:34px;padding-inline:8px;font-size:12px}.rv-billing-editor .monthly-entry-overhead-list>div{grid-template-columns:minmax(210px,1fr) 82px 72px 95px 34px}.rv-billing-editor .monthly-entry-overhead-quantity span{font-size:9px}.rv-billing-editor .monthly-entry-overhead-list>div>span:nth-child(3),.rv-billing-editor .monthly-entry-overhead-list>div>strong:nth-child(4){align-self:end;align-items:center;height:34px;display:flex}.rv-billing-editor .monthly-entry-overhead-list>div>button:last-child{align-self:end}.rv-billing-resource-list>div{border-bottom:1px solid #e6eaf0;grid-template-columns:minmax(0,1fr) 130px;align-items:center;gap:12px;min-height:56px;padding:8px 12px;display:grid}.rv-billing-resource-list>div:last-child{border-bottom:0}.rv-billing-resource-list>div.selected{background:#f1f5ff}.rv-billing-resource-list>div>label:first-child{align-items:center;gap:10px;display:flex}.rv-billing-resource-list input[type=checkbox]{width:17px;height:17px;accent-color:var(--primary)}.rv-billing-resource-list label>span{gap:1px;min-width:0;display:grid}.rv-billing-resource-list small{color:var(--primary);font-size:9px;font-weight:800}.rv-billing-resource-list strong{font-size:11px}.rv-billing-resource-list em{color:var(--ink-500);font-size:9px;font-style:normal}.rv-billing-resource-list>div>label:last-child{color:var(--ink-500);gap:4px;font-size:9px;display:grid}.rv-billing-resource-list>div>label:last-child input{min-height:34px}.rv-billing-file-picker{min-height:62px;color:var(--primary);cursor:pointer;background:#f7f9ff;border:1px dashed #9badd0;border-radius:11px;align-items:center;padding:12px 16px;grid-template-columns:none!important;gap:10px!important;display:flex!important}.rv-billing-file-picker input{display:none}.rv-billing-file-picker span{font-size:12px;font-weight:800}.rv-billing-file-picker small{color:var(--ink-500);margin-left:auto}.rv-billing-photo-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-top:12px;display:grid}.rv-billing-photo-grid figure{background:#f5f7fa;border:1px solid #d8dfe9;border-radius:10px;min-width:0;margin:0;position:relative;overflow:hidden}.rv-billing-photo-delete{cursor:pointer;border-radius:8px;place-items:center;width:30px;height:30px;display:grid;position:absolute;top:6px;right:6px;box-shadow:0 3px 10px #0f172a2e}.rv-billing-gallery-dialog{width:min(900px,100vw - 48px)}.rv-billing-gallery-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;max-height:calc(100vh - 190px);padding:22px 26px 28px;display:grid;overflow-y:auto}.rv-billing-gallery-grid figure{margin:0}.rv-billing-gallery-grid img{aspect-ratio:4/3;object-fit:contain;background:#f5f7fa;border:1px solid #d8dfe9;border-radius:12px;width:100%}.rv-billing-gallery-grid figcaption{color:var(--ink-500);margin-top:6px;font-size:11px}.rv-billing-photo-grid img{object-fit:cover;width:100%;height:104px;display:block}.rv-billing-photo-grid figcaption{min-height:34px;color:var(--ink-600);overflow-wrap:anywhere;align-items:center;gap:5px;padding:6px 8px;font-size:9px;display:flex}.rv-billing-inherited-label{color:var(--primary);letter-spacing:.08em;margin-top:18px;font-size:9px;font-weight:800;display:block}@media (width<=900px){.rv-billing-value-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.rv-billing-execution-grid{grid-template-columns:1fr}.rv-billing-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=1280px){.rv-billing-primary-filters{grid-template-areas:"date-from date-to""project season""status status""works works""sections sections"}.rv-billing-primary-filters>:nth-child(5){width:calc(50% - 6px)}.rv-billing-table-filters{grid-template-columns:repeat(2,minmax(180px,1fr))}}@media (width<=760px){.rv-billing-primary-filters{grid-template-areas:"date-from""date-to""project""season""status""works""sections"}.rv-billing-primary-filters>:nth-child(5){width:100%}.rv-billing-table-filters{grid-template-columns:1fr}.rv-billing-results-actions{flex-direction:column;align-items:stretch}.rv-billing-results-actions>div{flex-direction:column;justify-content:stretch}.rv-billing-results-actions .secondary-icon-button{justify-content:center;width:100%}.rv-billing-day>header{flex-direction:column;align-items:flex-start}}.monthly-results-card h2{font-size:18px}.work-reports-table-toolbar{background:#fff;border-bottom:1px solid #e0e4ea;justify-content:space-between;align-items:flex-end;gap:18px;min-height:82px;padding:14px 18px;display:flex}.work-reports-table-toolbar label{width:min(320px,100%)}.work-reports-table-controls{flex:auto;grid-template-columns:minmax(280px,1fr) minmax(190px,280px) auto;align-items:end;gap:12px;min-width:0;display:grid}.work-reports-hide-inspections{min-height:48px;color:var(--ink-700);white-space:nowrap;cursor:pointer;background:#f8f9fb;border:1px solid #cfd6df;border-radius:9px;align-items:center;gap:9px;padding:0 12px;font-size:11px;font-weight:600;display:inline-flex}.work-reports-hide-inspections input{width:17px;height:17px;accent-color:var(--primary);margin:0}.work-reports-table-controls .sections-search{width:100%;min-height:48px}.work-reports-table-toolbar>span,.work-reports-table-summary>span{color:var(--ink-500);padding-bottom:11px;font-size:11px}.work-reports-table-summary{flex:none;justify-content:flex-end;align-items:center;gap:14px;display:flex}.work-reports-table-summary .secondary-icon-button{min-height:48px}.work-reports-table-wrap{align-self:flex-start;overflow-x:auto}.plan-report-overlay{z-index:1800;background:#0f1b3394;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.plan-report-dialog{background:#fff;border-radius:18px;flex-direction:column;width:min(1480px,100%);max-height:calc(100vh - 48px);display:flex;overflow:hidden;box-shadow:0 24px 80px #0f1b3347}.plan-report-dialog>header{border-bottom:1px solid #dde2e9;justify-content:space-between;align-items:flex-start;gap:24px;padding:22px 26px 18px;display:flex}.plan-report-dialog>header small{color:var(--primary);letter-spacing:.08em;font-size:10px;font-weight:750}.plan-report-dialog>header h2{color:var(--ink-900);margin:5px 0 4px;font-size:23px}.plan-report-dialog>header p{color:var(--ink-500);margin:0;font-size:12px}.plan-report-dialog>header>button{width:42px;height:42px;color:var(--ink-600);cursor:pointer;background:#eef1f5;border:0;border-radius:12px;place-items:center;display:grid}.plan-report-toolbar{background:#f8f9fb;border-bottom:1px solid #e1e5eb;grid-template-columns:minmax(190px,260px) auto minmax(280px,1fr) auto;align-items:end;gap:16px;padding:14px 22px;display:grid}.plan-report-search{min-height:48px;color:var(--ink-500);background:#fff;border:1px solid #cfd6df;border-radius:9px;align-items:center;gap:9px;padding:0 14px;display:flex}.plan-report-search input{width:100%;min-width:0;color:var(--ink-800);font:inherit;background:0 0;border:0;outline:0;font-size:12px}.plan-section-overlay{z-index:1900;background:#0f1b33ad}.plan-section-dialog{width:min(1040px,100%)}.plan-section-toolbar{background:#f8f9fb;border-bottom:1px solid #e1e5eb;grid-template-columns:minmax(320px,1fr) auto;align-items:center;gap:16px;padding:14px 22px;display:grid}.plan-section-toolbar>span{color:var(--ink-500);white-space:nowrap;font-size:11px}.plan-section-table{min-width:780px}.plan-report-table.plan-section-table{table-layout:fixed;min-width:0}.plan-section-table th,.plan-section-table td{overflow-wrap:anywhere;padding-left:8px;padding-right:8px}.plan-section-table th:first-child{width:14%}.plan-section-table th:nth-child(2){width:34%}.plan-section-table th:nth-child(3),.plan-section-table th:nth-child(4){width:13%}.plan-section-table th:nth-child(5){width:18%}.plan-section-table th:nth-child(6){width:8%}.work-report-entry-hint{color:var(--ink-500);margin-top:6px;font-size:11px;line-height:1.4;display:block}.plan-report-month-toggle{min-height:48px;color:var(--ink-700);cursor:pointer;background:#fff;border:1px solid #cfd6df;border-radius:9px;align-items:center;gap:9px;padding:0 15px;font-size:12px;font-weight:650;display:inline-flex}.plan-report-month-toggle input,.plan-report-select-cell input{width:17px;height:17px;accent-color:var(--primary);margin:0}.plan-report-count{color:var(--ink-500);justify-self:end;padding-bottom:13px;font-size:11px}.plan-report-success{color:#137344;background:#edf9f2;border:1px solid #bce4cd;border-radius:9px;align-items:center;gap:8px;margin:12px 22px 0;padding:10px 13px;font-size:12px;font-weight:650;display:flex}.plan-report-table-wrap{min-height:240px;overflow:auto}.plan-report-table{border-collapse:collapse;width:100%;min-width:1180px;color:var(--ink-800);font-size:12px}.plan-report-table th{z-index:2;height:48px;color:var(--ink-800);text-align:left;white-space:nowrap;background:#e9ecf1;border-bottom:1px solid #cfd5de;padding:0 12px;position:sticky;top:0}.plan-report-table td{vertical-align:middle;border-bottom:1px solid #d9dee6;padding:11px 12px}.plan-report-table tr.plan-report-already-reported td{background:#e4f7eb}.plan-report-table tr.plan-report-already-reported:hover td{background:#d7f1e1}.plan-report-note{max-width:300px;color:var(--ink-600);line-height:1.45}.plan-report-status{color:var(--ink-500);white-space:nowrap;background:#eef1f5;border-radius:999px;align-items:center;gap:5px;padding:5px 9px;font-size:10px;font-weight:700;display:inline-flex}.plan-report-status.reported{color:#137344;background:#d2f0df}.plan-report-status.not-confirmed{color:#a12d2d;background:#fde8e8}.plan-report-select-cell{width:54px;text-align:center!important}.plan-report-extra-selection{width:34px;height:34px;color:var(--primary);cursor:pointer;background:#f5f7fc;border:1px solid #c8d2e6;border-radius:9px;place-items:center;display:inline-grid}.plan-report-extra-selection:disabled{color:var(--ink-400);cursor:not-allowed;opacity:.7;background:#eef1f5}.plan-report-empty{height:180px;color:var(--ink-500);text-align:center}.plan-report-dialog>footer{background:#fff;border-top:1px solid #dce1e8;justify-content:space-between;align-items:center;gap:20px;padding:15px 22px;display:flex}.plan-report-dialog>footer>div{color:var(--ink-500);align-items:center;gap:9px;font-size:11px;display:flex}.plan-report-legend-swatch{background:#e4f7eb;border:1px solid #b7dec6;border-radius:4px;width:25px;height:14px}.work-reports-table{border-collapse:collapse;width:100%;min-width:1450px;color:var(--ink-800);font-size:12px}.work-reports-table th{height:52px;color:var(--ink-800);text-align:left;white-space:nowrap;background:#e9ecf1;border-bottom:1px solid #cfd5de;padding:0 12px;font-weight:650}.work-reports-table th:nth-child(6),.work-reports-table th:nth-child(7),.work-reports-table th:nth-child(11),.work-reports-table th:nth-child(12){text-align:center}.work-reports-table td{border-bottom:1px solid #d9dee6;padding:13px 12px}.work-reports-table .work-report-contractor-row td{color:#fff;padding:13px 16px;font-size:13px;font-weight:650;background:var(--primary)!important}.work-reports-table .work-report-project-row td{color:var(--primary);padding:11px 18px;font-weight:650;background:#e9eef9!important}.work-reports-table tbody tr.monthly-result-even td{background:#fff}.work-reports-table tbody tr.monthly-result-odd td{background:#f0f2f5}.work-reports-table tbody tr.work-report-mobile-transfer td{background:#fff3b8}.work-report-source{white-space:nowrap;border-radius:999px;align-items:center;min-height:25px;padding:0 9px;font-size:10px;font-weight:650;display:inline-flex}.work-report-source.from-plan{color:#176b46;background:#e5f5ed}.work-report-source.manual{color:var(--primary);background:#e9eef9}.work-report-source.calculated{color:#5e6675;background:#e5e8ed}.work-report-actions-cell{text-align:center}.work-report-actions-cell button{width:34px;height:34px;color:var(--primary);cursor:pointer;background:#fff;border:1px solid #cfd6e2;border-radius:8px;place-items:center;display:inline-grid}.work-report-actions-cell.monthly-row-actions{width:278px;min-width:278px}.work-report-actions-grid{grid-template-columns:repeat(7,34px);justify-content:center;align-items:center;gap:5px;display:grid}.work-report-actions-grid>*{width:34px;height:34px;margin:0!important}.work-report-editor-overlay{z-index:1300;background:#10192dad;justify-content:flex-end;padding:0;display:flex;position:fixed;inset:0}.work-report-editor-panel{background:#fff;border-radius:0;width:min(760px,100vw);height:100%;max-height:100vh;overflow-y:auto;box-shadow:-20px 0 60px #0912264d}.work-report-editor-panel>header{border-bottom:1px solid #dfe4ec;justify-content:space-between;align-items:center;gap:18px;min-height:88px;padding:20px 24px;display:flex}.work-report-editor-panel>header small{color:var(--primary);letter-spacing:.1em;font-size:10px;font-weight:650}.work-report-editor-panel>header h2{color:var(--ink-900);margin:5px 0 0;font-size:21px;font-weight:550}.work-report-editor-panel>header button{width:42px;height:42px;color:var(--ink-600);cursor:pointer;background:#eef1f5;border:0;border-radius:10px;place-items:center;display:grid}.work-report-editor-body{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 20px;padding:24px;display:grid}.work-report-editor-wide{grid-column:1/-1}.work-report-resource-editor{background:#f8f9fb;border:1px solid #d9e0ea;border-radius:14px;padding:18px}.work-report-resource-editor>header{justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:14px;display:flex}.work-report-resource-editor>header small{color:var(--primary);letter-spacing:.09em;font-size:9px;font-weight:750}.work-report-resource-editor>header h3{color:var(--ink-900);margin:4px 0 2px;font-size:16px;font-weight:650}.work-report-resource-editor>header p{color:var(--ink-500);margin:0;font-size:11px}.work-report-resource-editor>header>span{color:var(--primary);white-space:nowrap;background:#e8edf8;border-radius:999px;padding:5px 9px;font-size:10px;font-weight:700}.work-report-resource-tabs{gap:8px;margin-bottom:12px;display:flex}.work-report-resource-tabs button{min-height:36px;color:var(--primary);font:inherit;cursor:pointer;background:#fff;border:1px solid #cad3e2;border-radius:9px;align-items:center;gap:7px;padding:0 14px;font-size:11px;font-weight:650;display:inline-flex}.work-report-resource-tabs button.active{border-color:var(--primary);color:#fff;background:var(--primary)}.work-report-resource-search{background:#fff;border:1px solid #cbd4e2;border-radius:10px;align-items:center;gap:9px;min-height:42px;margin-bottom:12px;padding:0 12px;display:flex}.work-report-resource-search>svg{color:var(--ink-500);flex:none}.work-report-resource-search input{width:100%;min-width:0;color:var(--ink-800);font:inherit;background:0 0;border:0;outline:0;font-size:12px}.work-report-resource-search button{width:28px;height:28px;color:var(--ink-500);cursor:pointer;background:#eef1f5;border:0;border-radius:7px;place-items:center;display:grid}.work-report-resource-list{background:#fff;border:1px solid #d9e0ea;border-radius:10px;max-height:260px;overflow-y:auto}.work-report-resource-list-header{min-height:42px;color:var(--ink-900);background:#e9edf3;border-bottom:1px solid #cbd3df;grid-template-columns:minmax(105px,.75fr) minmax(150px,1.25fr) minmax(105px,.75fr) minmax(95px,.7fr) 22px;align-items:center;gap:10px;padding:8px 12px;font-size:11px;font-weight:700;display:grid}.work-report-resource-list-header button{color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:5px;padding:0;display:inline-flex}.work-report-resource-list-header button span{color:var(--primary)}.work-report-resource-row{min-height:52px;color:var(--ink-700);cursor:pointer;border-bottom:1px solid #e2e6ed;grid-template-columns:minmax(105px,.75fr) minmax(150px,1.25fr) minmax(105px,.75fr) minmax(95px,.7fr) 22px;align-items:center;gap:10px;padding:9px 12px;font-size:11px;display:grid}.work-report-resource-row:nth-child(2n){background:#f3f5f8}.work-report-resource-row.selected,.work-report-resource-row.selected:nth-child(2n){background:#edf3ff}.work-report-resource-row:last-child{border-bottom:0}.work-report-resource-row strong{color:var(--ink-900);font-weight:650}.work-report-resource-category{color:var(--primary);font-weight:650}.work-report-resource-row input{width:17px;height:17px;accent-color:var(--primary)}.work-report-resource-empty{min-height:78px;color:var(--ink-500);text-align:center;place-items:center;padding:20px;font-size:11px;display:grid}.work-report-selected-resources{flex-wrap:wrap;gap:7px;margin-top:12px;display:flex}.work-report-selected-resources>span{min-height:32px;color:var(--ink-700);background:#fff;border:1px solid #cad5e7;border-radius:8px;align-items:center;gap:6px;padding:5px 8px;font-size:10px;display:inline-flex}.work-report-selected-resources>span>svg{color:var(--primary)}.work-report-selected-resources>span b{color:var(--primary);font-weight:700}.work-report-selected-resources button{width:22px;height:22px;color:var(--ink-500);cursor:pointer;background:#eef1f5;border:0;border-radius:6px;place-items:center;margin-left:2px;display:grid}.rv-billing-editor .rv-billing-selected-resources{grid-template-columns:minmax(0,1fr);display:grid}.rv-billing-editor .rv-billing-selected-resources>span{grid-template-columns:16px minmax(120px,auto) minmax(0,1fr) 118px 32px;align-items:center;gap:8px;width:100%;min-height:42px;padding:6px 8px;display:grid}.rv-billing-editor .rv-billing-selected-resources .rv-billing-resource-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.rv-billing-editor .rv-billing-selected-resources>span>label{grid-template-columns:auto 72px;justify-content:end;align-items:center;gap:7px;display:grid}.rv-billing-editor .rv-billing-selected-resources>span>label input{width:72px!important;height:30px!important;min-height:30px!important}.rv-billing-editor .rv-billing-selected-resources>span>button{width:30px;height:30px;margin:0}.work-report-resource-status-icon{color:#167454;background:#e9f6f1;border:1px solid #bcd9ce;border-radius:8px;place-items:center;width:34px;height:34px;display:inline-grid;position:relative}.work-report-resource-status-icon b{color:#fff;background:#167454;border:2px solid #fff;border-radius:999px;place-items:center;min-width:17px;height:17px;padding:0 4px;font-size:8px;display:grid;position:absolute;top:-6px;right:-5px}.monthly-row-actions .work-report-resource-status-icon{border-radius:7px;width:24px;height:24px}.monthly-row-actions .work-report-resource-status-icon>svg{width:13px;height:13px}.monthly-row-actions .work-report-resource-status-icon b{border-width:1px;min-width:14px;height:14px;padding:0 3px;font-size:7px;top:-5px;right:-4px}.work-report-editor-panel>footer{border-top:1px solid #dfe4ec;justify-content:space-between;align-items:center;gap:18px;padding:18px 24px;display:flex}.work-report-editor-panel>footer span{color:var(--ink-500);font-size:11px}.work-reports-empty-state{height:auto;color:var(--ink-500);text-align:center;background:#fff!important;padding-block:32px!important}.work-reports-empty-state svg{color:var(--primary);margin:0 auto 10px;display:block}.work-reports-empty-state strong,.work-reports-empty-state span{display:block}.work-reports-empty-state strong{color:var(--ink-800);font-size:14px;font-weight:600}.work-reports-empty-state span{max-width:560px;margin:7px auto 0;font-size:11px}@media (width<=760px){.plan-report-overlay{padding:0}.plan-report-dialog{border-radius:0;width:100%;min-height:100vh;max-height:100vh}.plan-report-toolbar{grid-template-columns:1fr}.plan-report-count{justify-self:start;padding-bottom:0}.plan-report-dialog>footer,.work-reports-table-toolbar{flex-direction:column;align-items:stretch}.work-reports-table-controls{grid-template-columns:1fr}.work-reports-table-summary{flex-direction:column;align-items:stretch;width:100%}.work-reports-table-summary>span{align-self:flex-end;padding-bottom:0}.work-report-editor-body{grid-template-columns:1fr}.work-report-editor-wide{grid-column:auto}.work-report-resource-row,.work-report-resource-list-header{grid-template-columns:1fr 1.3fr 24px}.work-report-resource-row>span:nth-of-type(3),.work-report-resource-row>span:nth-of-type(4),.work-report-resource-list-header>span:first-of-type,.work-report-resource-list-header>span:nth-of-type(2){display:none}.work-report-editor-panel>footer{flex-direction:column;align-items:stretch}}.monthly-table-filters{border-bottom:1px solid #e0e4ea;grid-template-columns:minmax(260px,1.5fr) repeat(5,minmax(135px,.7fr)) auto;align-items:end;gap:10px;padding:14px 16px;display:grid}.monthly-table-filters .sections-search{width:100%}.monthly-table-filters>label:not(.sections-search){gap:5px;display:grid}.monthly-table-filters select{height:42px;font-size:12px}.monthly-clear-table-filters{min-height:42px;color:var(--primary);font:inherit;cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;gap:6px;padding:0 10px;font-size:11px;font-weight:600;display:inline-flex}.monthly-clear-table-filters:hover{text-decoration:underline}.monthly-plan-table{table-layout:fixed;min-width:1300px}.monthly-plan-table th,.monthly-plan-table td{padding:7px}.monthly-plan-table th{font-size:10px;line-height:1.2}.monthly-plan-table td{font-size:10.5px;line-height:1.3}.monthly-plan-table th:first-child{width:74px}.monthly-plan-table th:nth-child(2){width:160px}.monthly-plan-table th:nth-child(3){width:62px}.monthly-plan-table th:nth-child(4){width:150px}.monthly-plan-table th:nth-child(5),.monthly-plan-table th:nth-child(6){width:58px}.monthly-plan-table th:nth-child(7){width:68px}.monthly-plan-table th:nth-child(8){width:42px}.monthly-plan-table th:nth-child(9){width:68px}.monthly-plan-table th:nth-child(10){width:50px}.monthly-plan-table th:nth-child(11){width:210px}.monthly-plan-table th:nth-child(12){width:112px}.monthly-plan-table th:nth-child(13){width:192px}.monthly-plan-table td:nth-child(2),.monthly-plan-table td:nth-child(4){overflow-wrap:anywhere}.monthly-results-error{color:#9f2f2f;background:#fff5f5;border:1px solid #f0caca;border-radius:9px;margin:14px 16px 0;padding:11px 13px;font-size:12px}.monthly-results-summary{min-height:48px;color:var(--ink-700);background:#fbfcfd;border-bottom:1px solid #e0e4ea;justify-content:space-between;align-items:center;gap:18px;padding:10px 18px;font-size:12px;display:flex}.monthly-results-summary strong{color:var(--primary)}.monthly-results-summary>div{justify-content:flex-end;align-items:center;gap:16px;display:flex}.monthly-results-summary button{min-height:32px;color:var(--primary);font:inherit;cursor:pointer;background:#fff;border:1px solid #cbd3df;border-radius:8px;justify-content:center;align-items:center;gap:6px;padding:0 12px;font-size:10px;font-weight:650;display:inline-flex}.monthly-results-summary button:hover{border-color:var(--primary);background:#eef2fb}.monthly-results-summary button:disabled{opacity:.45;cursor:not-allowed}.monthly-plan-table tbody tr.monthly-result-even td{background:#fff}.monthly-plan-table tbody tr.monthly-result-odd td{background:#f0f2f5}.monthly-plan-table tbody tr.monthly-result-inspection-transfer td{background:#e2f3e8}.monthly-plan-table tbody tr.monthly-result-inspection-transfer td:first-child{box-shadow:inset 4px 0 #2c9b63}.monthly-plan-table tbody tr.monthly-result-added-after-confirmation td{background:#fde2e2}.monthly-plan-table tbody tr.monthly-result-added-after-confirmation td:first-child{box-shadow:inset 4px 0 #d83a46}.monthly-sort-button{width:100%;color:inherit;font:inherit;font-weight:inherit;text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;padding:0;display:flex}.monthly-sort-button.numeric{justify-content:flex-end}.monthly-sort-button span{color:var(--primary);font-size:13px}.monthly-work-code{align-items:center;gap:7px;display:inline-flex}.monthly-overhead-toggle{width:24px;height:24px;color:var(--primary);cursor:pointer;background:0 0;border:0;border-radius:6px;place-items:center;padding:0;display:inline-grid}.monthly-overhead-toggle:hover,.monthly-overhead-toggle[aria-expanded=true]{background:#dfe6f5}.monthly-work-name{align-items:center;gap:7px;min-width:0;display:flex}.monthly-note-button{flex:none}.monthly-note-button.has-supervisor-change{color:#c62828!important;background:#fff!important;border-color:#ccd5e6!important}.monthly-row-actions{white-space:nowrap;text-align:left;width:192px}.monthly-row-actions-inner{grid-template-columns:repeat(7,24px);align-items:center;gap:3px;display:grid}.monthly-row-actions-inner>*{margin:0!important}.monthly-action-placeholder{width:24px;height:24px;display:block}.work-report-actions-cell.monthly-row-actions>*{vertical-align:middle;place-items:center;display:inline-grid}.monthly-inspection-report-button{color:#167449!important;background:#f2fbf6!important;border-color:#9bcfb2!important}.monthly-inspection-report-button:hover{background:#d8f1e2!important}.inspection-report-overlay{z-index:1120;background:#0e1729ad;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.inspection-report-dialog{border-radius:var(--radius-lg);background:#fff;width:min(860px,100%);max-height:min(88vh,900px);overflow:auto;box-shadow:0 24px 72px #00000047}.inspection-report-dialog>header{z-index:2;border-bottom:1px solid var(--border-subtle);background:#fff;justify-content:space-between;align-items:flex-start;gap:20px;padding:20px 24px;display:flex;position:sticky;top:0}.inspection-report-dialog header small,.inspection-report-files small{color:#168759;letter-spacing:.08em;font-size:10px;font-weight:700}.inspection-report-dialog header h2{color:var(--ink-900);margin:5px 0 0;font-size:22px;font-weight:550}.inspection-report-dialog header p{color:var(--ink-500);margin:5px 0 0;font-size:12px}.inspection-report-dialog header button{width:38px;height:38px;color:var(--ink-600);background:var(--sunken);cursor:pointer;border:0;border-radius:10px;flex:none;place-items:center;padding:0;display:grid}.inspection-report-status{min-height:220px;color:var(--ink-600);justify-content:center;align-items:center;gap:10px;padding:36px;font-size:13px;display:flex}.inspection-report-status.error{color:#a22d2d}.inspection-report-content{padding:22px 24px 26px}.inspection-report-details{border:1px solid #dfe4eb;border-radius:12px;grid-template-columns:repeat(2,minmax(0,1fr));margin:0;display:grid;overflow:hidden}.inspection-report-details>div{border-bottom:1px solid #e5e9ef;min-height:58px;padding:10px 14px}.inspection-report-details>div:nth-child(odd){border-right:1px solid #e5e9ef}.inspection-report-details dt{color:var(--ink-500);text-transform:uppercase;letter-spacing:.04em;margin-bottom:4px;font-size:10px;font-weight:600}.inspection-report-details dd{color:var(--ink-800);white-space:pre-wrap;margin:0;font-size:13px;line-height:1.45}.inspection-report-files{margin-top:22px}.inspection-report-files h3{color:var(--ink-900);margin:4px 0 14px;font-size:17px;font-weight:550}.inspection-report-gallery{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.inspection-report-gallery>div{background:#f7f9fb;border:1px solid #dbe1e8;border-radius:11px;overflow:hidden}.inspection-report-gallery img{aspect-ratio:4/3;object-fit:cover;width:100%;display:block}.inspection-report-no-files{color:var(--ink-500);background:var(--sunken);border-radius:10px;margin:0;padding:18px;font-size:12px}@media (width<=720px){.inspection-report-overlay{padding:10px}.inspection-report-details,.inspection-report-gallery{grid-template-columns:1fr}.inspection-report-details>div:nth-child(odd){border-right:0}}.monthly-confirm-toggle{width:24px;height:24px;color:var(--primary);vertical-align:middle;cursor:pointer;background:#fff;border:1px solid #b9c4d3;border-radius:7px;place-items:center;margin:0 2px;display:inline-grid}.monthly-confirm-toggle:has(input:checked){color:#167449;background:#dcf3e6;border-color:#69b98c}.monthly-confirm-toggle input{accent-color:#17804f;cursor:pointer;width:14px;height:14px;margin:0}.monthly-confirm-toggle input:disabled{cursor:wait}.approval-status-icon{vertical-align:middle;border:1px solid #0000;border-radius:7px;place-items:center;width:24px;height:24px;margin:0 2px;display:inline-grid}.approval-status-icon.approved{color:#167449;background:#eaf7f0;border-color:#b9dfca}.subcontractor-status-icon{width:24px;height:24px;color:var(--primary);vertical-align:middle;cursor:help;background:#eef3ff;border:1px solid #c9d4ef;border-radius:7px;place-items:center;margin:0 2px;display:inline-grid}.monthly-row-actions button{width:24px;height:24px;color:var(--primary);cursor:pointer;background:#fff;border:1px solid #d4dae4;border-radius:7px;place-items:center;margin:0 2px;padding:0;display:inline-grid}.monthly-row-actions svg,.monthly-confirm-toggle svg,.approval-status-icon svg,.subcontractor-status-icon svg{width:14px;height:14px}.monthly-row-actions button:hover{border-color:var(--primary);background:#eef2fb}.monthly-row-actions button[aria-label^=Izbriši]{color:#b33a3a}.monthly-period-calendar{background:#fff;border:1px solid #d6deec;border-radius:14px;overflow:hidden}.monthly-period-calendar>header{background:#f8faff;border-bottom:1px solid #e4e9f1;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:16px 18px 12px;display:flex}.monthly-period-calendar>header div{gap:3px;display:grid}.monthly-period-calendar>header small{color:#68738a;letter-spacing:.08em;font-size:11px;font-weight:700}.monthly-period-calendar>header strong{color:var(--primary);font-size:18px}.monthly-period-calendar>header button{color:#8f2d2d;cursor:pointer;white-space:nowrap;background:#fff;border:1px solid #cbd4e4;border-radius:9px;flex:none;align-items:center;gap:7px;width:auto;height:auto;min-height:34px;padding:0 12px;display:inline-flex}.monthly-period-calendar>p{color:#69748a;margin:0;padding:12px 18px 4px;font-size:13px;line-height:1.45}.monthly-period-weekdays,.monthly-period-days{grid-template-columns:repeat(7,minmax(34px,1fr));gap:6px;padding:0 18px;display:grid}.monthly-period-weekdays{padding-top:12px;padding-bottom:6px}.monthly-period-weekdays span{color:#6b7485;text-align:center;font-size:12px;font-weight:700}.monthly-period-days{padding-bottom:18px}.monthly-period-days button,.monthly-period-empty{min-height:38px}.monthly-period-days button{color:#202b42;font:inherit;cursor:pointer;background:#fff;border:1px solid #d7deea;border-radius:9px;font-weight:650;transition:border-color .15s,background .15s,color .15s,transform .15s}.monthly-period-days button:hover{border-color:var(--primary);background:#eef3ff;transform:translateY(-1px)}.monthly-period-days button.selected{border-color:var(--primary);color:#fff;background:var(--primary)}.monthly-period-days button.range-start,.monthly-period-days button.range-end{box-shadow:inset 0 0 0 2px #fff}.monthly-period-days button.anchor{color:#382400;background:#ffc84a;border-color:#c17b00;box-shadow:0 0 0 3px #ffc84a47}.monthly-period-anchor-message{color:#6b4d04;background:#fff8e2;border-top:1px solid #ead9a9;padding:11px 18px;font-size:13px}.monthly-overheads-row>td{background:#fbfcfe!important;border-top:0!important;padding:0 14px 12px 72px!important}.monthly-overheads{background:#fff;border:1px solid #dbe1e9;border-radius:10px;overflow:hidden}.monthly-overheads-title{min-height:38px;color:var(--primary);background:#eef2f8;justify-content:space-between;align-items:center;gap:16px;padding:8px 13px;font-size:11px;font-weight:650;display:flex}.monthly-overheads-grid{min-height:34px;color:var(--ink-700);border-top:1px solid #e4e8ee;grid-template-columns:150px 90px minmax(240px,1fr) 70px 90px 110px 120px;align-items:center;gap:12px;padding:6px 13px;font-size:10px;display:grid}.monthly-overheads-grid>span:nth-last-child(-n+3),.monthly-overheads-grid>strong:last-child{text-align:right}.monthly-overheads-grid-header{color:var(--ink-600);background:#f8f9fb;font-weight:600}.monthly-date-strip{grid-template-columns:repeat(16,1fr);gap:1px;width:202px;display:grid}.monthly-date-strip.has-audit{cursor:help}.monthly-date-strip span{height:14px;color:var(--ink-500);background:#fff;border:1px solid #d9dee6;place-items:center;font-size:7px;line-height:1;display:grid}.monthly-date-strip span.active{color:#624c00;background:#ffd65a;border-color:#e7b92f;font-weight:650}.monthly-empty-row td{height:155px;color:var(--ink-500);text-align:center;background:#fbfcfd}.monthly-results-card>footer{background:#f7f8fa;border-top:1px solid #dfe3e9;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:26px;min-height:58px;padding:12px 18px;display:flex}.monthly-results-legend,.monthly-results-totals{flex-wrap:wrap;align-items:center;gap:20px;display:flex}.monthly-results-legend>span,.monthly-results-totals>span{color:var(--ink-700);align-items:center;gap:8px;font-size:11px;display:inline-flex}.monthly-results-totals{justify-content:flex-end;margin-left:auto}.monthly-results-totals strong{color:var(--primary);font-size:12px}.plan-legend-dot{background:#fff;border:1px solid #cbd0d7;border-radius:3px;width:20px;height:12px;display:inline-block}.plan-legend-dot.inspection{background:#98e8af;border-color:#80d99e}.plan-legend-dot.confirmed{background:#f8b6b6;border-color:#efa2a2}@media (width<=1280px){.monthly-filter-grid,.work-reports-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.monthly-table-filters{grid-template-columns:repeat(3,minmax(170px,1fr))}.monthly-table-filters .sections-search{grid-column:span 2}}@media (width<=760px){.monthly-filter-card{padding:20px 16px}.monthly-filter-grid,.work-reports-filter-grid,.monthly-table-filters{grid-template-columns:1fr}.work-reports-title,.work-reports-title-actions,.work-reports-table-toolbar{flex-direction:column;align-items:stretch}.work-reports-title-actions button,.work-reports-table-toolbar label{width:100%}.work-reports-table-toolbar>span{padding-bottom:0}.work-reports-table-summary{justify-content:space-between;width:100%}.monthly-multiselect,.monthly-table-filters .sections-search{grid-column:auto}.monthly-filter-card>footer{flex-direction:column;align-items:stretch}.monthly-filter-card>footer>div:last-child{flex-direction:column-reverse}.monthly-filter-card>footer button{width:100%}}.road-type-badge{border:1px solid var(--border-subtle);min-width:34px;color:var(--ink-700);background:#fff;border-radius:999px;justify-content:center;padding:4px 7px;font-size:12px;font-weight:500;display:inline-flex}.section-files-cell{min-width:82px}.section-documents-button{color:#29458f;min-width:48px;height:30px;font:inherit;cursor:pointer;background:#fff;border:1px solid #d8dfeb;border-radius:8px;justify-content:center;align-items:center;gap:5px;padding:0 9px;font-size:12px;font-weight:700;display:inline-flex}.section-documents-button:hover{background:#f3f6ff;border-color:#29458f}.section-documents-empty{color:#a0a8b6}.section-documents-overlay{z-index:1200;background:#141f3a9e;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.section-documents-dialog::backdrop{background:#141f3a9e}.section-documents-dialog{background:#fff;border:1px solid #dbe1eb;border-radius:18px;width:min(700px,100%);max-height:min(720px,100vh - 48px);margin:auto;padding:0;overflow:hidden;box-shadow:0 24px 70px #0d1b3a47}.section-documents-header{border-bottom:1px solid #e0e5ed;justify-content:space-between;align-items:flex-start;gap:24px;padding:26px 28px 22px;display:flex}.section-documents-header>div>span{color:#29458f;letter-spacing:.1em;margin-bottom:7px;font-size:11px;font-weight:800;display:block}.section-documents-header h2{color:#172033;margin:0;font-size:23px;line-height:1.25}.section-documents-header p{color:#737d8e;margin:7px 0 0;font-size:13px}.section-documents-body{max-height:calc(100vh - 210px);padding:18px 28px 28px;overflow-y:auto}.section-documents-message{color:#697386;justify-content:center;align-items:center;gap:9px;min-height:110px;font-size:14px;display:flex}.section-documents-message.error{color:#bd3030}.section-documents-list{gap:9px;display:grid}.section-document-row{background:#fff;border:1px solid #e0e5ed;border-radius:12px;grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:13px;padding:13px 14px;display:grid}.section-document-icon{color:#cf3434;background:#fff0f0;border-radius:10px;place-items:center;width:38px;height:38px;display:grid}.section-document-info{min-width:0}.section-document-info strong,.section-document-info span{display:block}.section-document-info strong{overflow-wrap:anywhere;color:#20293a;font-size:14px}.section-document-info span{color:#7b8494;margin-top:4px;font-size:12px}.section-document-open{color:#29458f;border:1px solid #29458f;border-radius:9px;align-items:center;gap:6px;min-height:34px;padding:0 12px;font-size:12px;font-weight:750;text-decoration:none;display:inline-flex}.section-document-open:hover{color:#fff;background:#29458f}@media (width<=700px){.section-documents-overlay{padding:12px}.section-documents-header,.section-documents-body{padding-left:18px;padding-right:18px}.section-document-row{grid-template-columns:38px minmax(0,1fr)}.section-document-open{grid-column:1/-1;justify-content:center}}.section-map-overlay{z-index:1000;background:#0e1729b3;place-items:center;padding:28px;display:grid;position:fixed;inset:0}.section-map-dialog{background:#fff;border-radius:20px;grid-template-rows:auto minmax(0,1fr) auto;width:min(1180px,100%);height:min(780px,100vh - 56px);display:grid;position:relative;overflow:hidden;box-shadow:0 24px 70px #00000040}.section-map-header{border-bottom:1px solid #e5e8ed;justify-content:space-between;align-items:center;gap:16px;min-height:68px;padding:13px 18px 13px 22px;display:flex}.section-map-header h2{color:var(--ink-900);margin:0;font-size:17px;font-weight:600}.section-map-header p{color:var(--ink-500);margin:4px 0 0;font-size:10px}.section-map-header small,.section-map-header span{color:var(--ink-500);font-size:10px}.section-map-close{width:38px;height:38px;color:var(--ink-600);cursor:pointer;background:#f3f5f7;border:0;border-radius:10px;place-items:center;display:grid}.section-map-close:hover{color:var(--primary);background:#eef3ff}.section-map-canvas{background:#e9edf1;min-height:500px}.section-map-status{z-index:2;color:var(--ink-600);text-align:center;pointer-events:none;background:#f7f9fbe0;place-items:center;display:grid;position:absolute;inset:68px 0 54px}.section-map-status.error{color:var(--danger)}.section-map-legend{background:#fff;border-top:1px solid #e5e8ed;align-items:center;gap:15px;min-height:54px;padding:10px 18px;display:flex;overflow-x:auto}.section-map-legend>button{border:1px solid var(--border-subtle);border-radius:var(--radius-pill,9999px);min-height:32px;color:var(--ink-700);font:inherit;cursor:pointer;background:#fff;flex:none;align-items:center;gap:6px;padding:6px 10px;font-size:11px;font-weight:500;transition:opacity .15s,background .15s,border-color .15s;display:inline-flex}.section-map-legend>button:hover{border-color:var(--primary);background:#f4f5f7}.section-map-legend>button.inactive{color:var(--ink-500);background:var(--sunken);opacity:.52}.section-map-legend>button.inactive i{filter:grayscale()}.section-map-legend i{border-radius:99px;width:22px;height:4px}.section-map-legend .area-layer i{background:#263c7e24;border:2px solid #263c7e;border-radius:3px;width:18px;height:12px}.road-section-popup{color:#303745;min-width:220px;padding:3px 2px;font:12px/1.45 Arial,sans-serif}.road-section-popup strong{color:#17233b;margin-bottom:7px;font-size:13px;display:block}.road-section-popup div{grid-template-columns:60px 1fr;gap:8px;display:grid}.road-section-popup span{color:#7b8492}.monthly-plan-map-popup{width:min(360px,70vw);font-family:var(--font-body)}.monthly-plan-map-popup>strong{color:var(--primary);border-bottom:1px solid #e1e5eb;padding-bottom:8px;font-size:14px}.monthly-plan-map-popup .monthly-plan-map-jobs{max-height:230px;display:block;overflow-y:auto}.monthly-plan-map-popup .monthly-plan-map-jobs>div{border-top:1px solid #edf0f4;grid-template-columns:minmax(150px,1fr) auto;align-items:start;gap:14px;padding:7px 0;display:grid}.monthly-plan-map-popup .monthly-plan-map-jobs>div:first-child{border-top:0}.monthly-plan-map-popup .monthly-plan-map-jobs span{color:#303745}.monthly-plan-map-popup .monthly-plan-map-jobs b{color:var(--primary);white-space:nowrap}.road-section-map-label{color:#263c7e;font-family:var(--font-body);white-space:nowrap;pointer-events:none;background:#ffffffe0;border:1px solid #263c7e59;border-radius:5px;padding:3px 7px;font-size:11px;font-weight:600;line-height:1.2;transform:translateY(-50%);box-shadow:0 1px 3px #14192024}.road-section-start-marker{pointer-events:none;border:1px solid #fff;border-radius:50%;width:6px;height:6px;display:block;box-shadow:0 0 1px #111;background:#111!important}.kpi-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;display:grid}.kpi{background:#fff;border:1px solid #e7e9ec;border-radius:16px;min-height:130px;padding:22px}.kpi small{color:var(--ink-600);letter-spacing:.08em;font-size:11px;font-weight:600}.kpi strong{margin-top:17px;font-size:28px;font-weight:500;display:block}.kpi span{color:var(--ink-500);margin-top:5px;font-size:11px;display:block}@media (width<=1050px){.login-shell{grid-template-columns:38% 1fr}.login-brand{padding-inline:34px}.capabilities{display:none}.dashboard{grid-template-columns:250px minmax(0,1fr)}.quick-actions,.kpi-grid,.camera-gallery-grid,.sections-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=760px){.login-shell{min-height:100vh;display:block}.login-brand{min-height:auto;padding:26px 24px 30px}.brand-logo{width:132px}.brand-copy{margin:34px 0 0}.brand-copy h1{margin-bottom:8px;font-size:26px}.brand-copy>p{margin:0;font-size:13px}.brand-version{display:none}.login-main{padding:26px 16px 34px}.login-card{border-radius:15px;padding:28px 20px 24px}.login-card h2{font-size:24px}.login-options{flex-direction:column;align-items:flex-start}.site-footer{flex-direction:column;align-items:flex-start;gap:13px;padding:16px 20px}.footer-links{flex-wrap:wrap;gap:14px 20px}.dashboard{display:block}.sidebar{flex-direction:column;align-items:stretch;width:100%;height:auto;max-height:70vh;padding:16px 18px;position:static}.sidebar-logo{width:112px;margin:0}.sidebar-toggle{display:none}.dashboard.nav-collapsed .sidebar{width:100%;padding:16px 18px}.dashboard.nav-collapsed .sidebar-brand{flex-direction:row;min-height:45px;padding:4px 12px}.dashboard.nav-collapsed .sidebar-logo-frame{width:120px}.dashboard.nav-collapsed .nav-heading,.dashboard.nav-collapsed .menu-label,.dashboard.nav-collapsed .menu-chevron,.dashboard.nav-collapsed .menu-guide,.dashboard.nav-collapsed .menu-status,.dashboard.nav-collapsed .menu-children,.dashboard.nav-collapsed .user-copy{display:initial}.dashboard.nav-collapsed .menu-row{justify-content:flex-start}.side-nav{min-height:180px;margin-top:12px}.sidebar-user{display:flex}.topbar{min-height:auto;padding:13px 16px}.org-card{flex:1;min-width:0}.topbar .user-copy{display:none}.logout-button{padding:0 13px}.content{padding:24px 16px 34px}.map-card{padding:16px}.map-header{flex-direction:row;align-items:center;gap:10px;margin-bottom:10px}.map-header h2{font-size:16px}.map-link{text-align:right;margin-left:auto}.map-card-expanded{padding:10px}.map-card-expanded .map-header h2{display:none}.map-card-expanded .map-filters{max-height:78px;margin-bottom:8px;overflow-y:auto}.map-container{height:52vh;min-height:360px}.quick-actions,.kpi-grid{grid-template-columns:1fr}.camera-gallery-title,.camera-gallery-toolbar{flex-direction:column;align-items:flex-start}.camera-back-button{justify-content:center;align-self:stretch}.camera-region-filters{flex-wrap:nowrap;width:100%;padding-bottom:4px;overflow-x:auto}.camera-region-filter{flex:none}.camera-gallery-grid{grid-template-columns:1fr}.sections-page-title,.sections-toolbar,.contractor-section-header,.unit-section-header{flex-direction:column;align-items:stretch}.sections-page-title .primary-icon-button,.sections-title-actions .secondary-icon-button,.sections-toolbar .secondary-icon-button{width:100%}.sections-title-actions,.work-project-actions{grid-template-columns:1fr 1fr;width:100%;display:grid}.inspector-drawer>header,.inspector-drawer form{padding-left:18px;padding-right:18px}.inspector-drawer form>footer{flex-direction:column-reverse}.inspector-drawer form>footer button,.inspectors-visibility-toggle{width:100%}.sections-title-actions .primary-icon-button{grid-column:1/-1}.sections-summary{grid-template-columns:1fr}.sections-search{width:100%}.contractor-section-header .section-map-action,.unit-section-header .section-map-action{background:#fff;justify-content:center}.section-map-overlay{padding:0}.section-map-dialog{border-radius:0;width:100%;height:100%}.section-map-dialog.schedule-map-dialog{width:100%;max-width:none;height:100%}.section-map-canvas{min-height:360px}}html .login-shell{background:var(--background);grid-template-rows:1fr auto;grid-template-columns:45% 55%;min-height:100vh;display:grid}.login-shell .login-brand{background:var(--primary);grid-area:1/1;justify-content:space-between;gap:24px;min-height:calc(100vh - 53px);padding:56px;overflow:hidden auto}.login-shell .login-main{background:var(--background);grid-area:1/2;min-height:calc(100vh - 53px);padding:40px;overflow-y:auto}.login-main .login-column{flex-direction:column;gap:24px;width:420px;max-width:100%;display:flex}.login-column .login-card{border:0;border-radius:16px;flex-direction:column;gap:20px;width:384px;min-height:498px;padding:32px;display:flex;box-shadow:0 2px 4px #1419200a}.login-shell .site-footer{grid-area:2/1/auto/-1;min-height:53px;padding:14px 32px}@media (width<=900px){html .login-shell{display:block}.login-shell .login-brand{min-height:auto;padding:32px 24px}.login-shell .login-main{min-height:auto;padding:32px 20px}.login-main .login-column{width:420px}.login-column .login-card{width:100%;min-height:auto;padding:32px}}.monthly-changed-cell{font-weight:700;color:#b42318!important}.monthly-changed-value{font-weight:750;color:#b42318!important}.monthly-entry-locked input,.monthly-entry-section select:disabled{color:#667085;cursor:not-allowed;background:#f1f3f6}.monthly-entry-note-history{background:#f7f8fa;border:1px solid #d7dce5;border-radius:12px;gap:8px;padding:12px;display:grid}.monthly-entry-note-history>small{color:#263f87;text-transform:uppercase;font-weight:750}.monthly-entry-note-history article{background:#fff;border:1px solid #e0e4ea;border-radius:9px;padding:10px 42px 10px 12px;position:relative}.monthly-entry-note-history article div{color:#475467;flex-wrap:wrap;justify-content:space-between;gap:8px;font-size:12px;display:flex}.monthly-entry-note-history article p{white-space:pre-wrap;margin:7px 0 0}.monthly-entry-note-history article>button{color:#d92d20;position:absolute;top:10px;right:10px}.monthly-entry-overhead-quantity{gap:3px;display:grid}.monthly-entry-overhead-quantity span{color:#667085;font-size:11px}.monthly-entry-overhead-quantity input{width:105px;min-height:38px}.shared-photo-gallery{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;display:grid}.shared-photo-gallery figure{cursor:zoom-in;margin:0}.shared-photo-gallery img{aspect-ratio:4/3;object-fit:cover;border:1px solid #d9dfe8;border-radius:12px;width:100%;display:block}.shared-photo-gallery figcaption{color:#667085;margin-top:6px;font-size:13px}.shared-photo-lightbox{z-index:2500;background:#091122e0;justify-content:center;align-items:center;padding:56px 84px;display:flex;position:fixed;inset:0}.shared-photo-lightbox figure{text-align:center;max-width:min(1100px,90vw);max-height:86vh;margin:0}.shared-photo-lightbox figure img{object-fit:contain;background:#fff;border-radius:12px;max-width:100%;max-height:78vh;display:block}.shared-photo-lightbox figcaption{color:#fff;margin-top:12px}.shared-photo-lightbox>button{color:#1f3b82;cursor:pointer;background:#fffffff0;border:0;border-radius:50%;place-items:center;width:48px;height:48px;display:grid;position:absolute}.shared-photo-lightbox>button svg{width:25px;height:25px}.shared-photo-lightbox-close{top:24px;right:24px}.shared-photo-lightbox-prev{top:50%;left:24px;transform:translateY(-50%)}.shared-photo-lightbox-next{top:50%;right:24px;transform:translateY(-50%)}.shared-attachment-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.shared-attachment-list li{background:#fff;border:1px solid #d9dfe8;border-radius:10px;flex-direction:column;gap:3px;padding:12px 14px;display:flex}.shared-attachment-list a{color:#233f8c;font-weight:700}.shared-attachment-list small,.shared-empty-state{color:#667085}.shared-history-timeline{margin:0;padding:0;list-style:none}.shared-history-timeline li{grid-template-columns:16px 1fr;gap:10px;padding-bottom:18px;display:grid;position:relative}.shared-history-timeline li:after{content:"";background:#d9dfe8;width:1px;position:absolute;top:14px;bottom:0;left:5px}.shared-history-timeline li:last-child:after{display:none}.shared-history-dot{background:#29448f;border-radius:50%;width:11px;height:11px;margin-top:4px}.shared-history-timeline li[data-tone=success] .shared-history-dot{background:#138a5b}.shared-history-timeline li[data-tone=warning] .shared-history-dot{background:#d29a00}.shared-history-timeline li[data-tone=danger] .shared-history-dot{background:#d43838}.shared-history-timeline small{color:#667085;margin-top:3px;display:block}.shared-history-timeline p{margin:5px 0 0}.shared-confirmation-dialog{border:0;border-radius:16px;width:min(460px,100vw - 32px);margin:auto;padding:24px;box-shadow:0 22px 70px #10182847}.shared-confirmation-dialog::backdrop{background:#10182894}.shared-dialog-actions{justify-content:flex-end;gap:10px;margin-top:24px;display:flex}.shared-dialog-actions button{background:#fff;border:1px solid #cbd3df;border-radius:10px;min-height:42px;padding:0 18px}.shared-dialog-actions .primary{color:#fff;background:#29448f;border-color:#29448f}.shared-dialog-actions .danger{color:#fff;background:#d43838;border-color:#d43838}.shared-loading-overlay{z-index:1200;color:#fff;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#121f418c;place-content:center;gap:10px;display:grid;position:fixed;inset:0}.shared-loading-overlay .menu-spinner{width:30px;height:30px;margin-inline:auto;animation:1s linear infinite menu-spin}.shared-error-boundary,.shared-inline-error{color:#9d2424;background:#fff3f3;border:1px solid #f0b7b7;border-radius:12px;padding:18px}.inspection-report-search{align-items:end;gap:14px;width:100%;display:flex}.inspection-report-search label{flex:1;gap:7px;display:grid}.inspection-report-search input{border:1px solid #bac5d5;border-radius:10px;min-height:48px;padding:0 14px}.inspection-report-search button{align-items:center;gap:8px;min-height:48px;display:inline-flex}.inspection-report-empty,.inspection-report-page-card{background:#fff;border:1px solid #dce2eb;border-radius:18px;margin-top:18px;padding:24px}.inspection-report-empty{color:#667085;justify-items:center;display:grid}.inspection-report-page-card>header{border-bottom:1px solid #e1e5ec;justify-content:space-between;align-items:start;gap:16px;padding-bottom:18px;display:flex}.inspection-report-page-card header small{color:#138a5b;letter-spacing:.08em;font-weight:800}.inspection-report-page-card h2{margin:5px 0 0}.inspection-report-page-card>section{margin-top:24px}.inspection-report-page-card>section h3{margin-bottom:12px}@media (width<=720px){.inspection-report-search{flex-direction:column;align-items:stretch}.inspection-report-page-card>header{flex-direction:column}}:is(.data-table,.monthly-plan-table,.work-reports-table,.plan-report-table){align-self:flex-start;height:auto}:is(.data-table,.monthly-plan-table,.work-reports-table,.plan-report-table) tbody,:is(.data-table,.monthly-plan-table,.work-reports-table,.plan-report-table) tbody tr{height:auto}:is(.data-table,.monthly-plan-table,.work-reports-table,.plan-report-table) tbody tr{height:38px}:is(.data-table,.monthly-plan-table,.work-reports-table,.plan-report-table) th{height:auto;padding:var(--data-table-cell-padding-y) var(--data-table-cell-padding-x);font-size:var(--data-table-header-font-size);line-height:1.25}:is(.data-table,.monthly-plan-table,.work-reports-table,.plan-report-table) td{height:auto;padding:var(--data-table-cell-padding-y) var(--data-table-cell-padding-x);font-size:var(--data-table-body-font-size);vertical-align:middle;line-height:1.3}.plan-billing-comparison-page{gap:18px}.comparison-table th,.comparison-table td{padding:7px}.comparison-table th:nth-child(3){min-width:290px}.comparison-overhead-row td{color:#42546b;font-size:var(--data-table-body-font-size);background:#eef7fb;line-height:1.3}.comparison-table .comparison-price{font-weight:400;color:var(--ink-900)!important}.comparison-table .comparison-missing-plan{font-weight:600;color:#d92d20!important}.comparison-table .comparison-missing-billing{font-weight:600;color:#1677b8!important}.comparison-table tfoot td{border-top:2px solid var(--line-strong);background:#f7f8fa}.comparison-empty{color:var(--ink-500);text-align:center;padding:34px!important}.comparison-quantity-toggle{width:100%;height:48px;color:var(--ink-900);background:#fff;border:1px solid #aeb7c5;border-radius:9px;align-items:center;gap:9px;padding:0 13px;font-size:13px;display:flex}.comparison-quantity-toggle input{width:17px;height:17px;accent-color:var(--primary)}.comparison-table-filters{grid-template-columns:repeat(2,minmax(200px,260px));justify-content:start}.comparison-table{table-layout:auto;min-width:1120px}.comparison-table th:first-child{width:110px}.comparison-table th:nth-child(2){width:auto;min-width:280px}.comparison-table th:nth-child(3){width:70px;min-width:70px}.comparison-table th:nth-child(4){width:100px}.comparison-table th:nth-child(5),.comparison-table th:nth-child(6),.comparison-table th:nth-child(7),.comparison-table th:nth-child(8){width:130px}.comparison-table th:nth-child(9){width:110px}.comparison-table th:nth-child(10){width:90px}.comparison-overhead-row td:first-child{font-weight:650}.comparison-empty svg{vertical-align:middle;margin-right:7px}@media (width<=760px){.comparison-table-filters{grid-template-columns:1fr}}.work-reports-results-card{align-self:flex-start;height:fit-content}.data-table{min-width:820px}.schedule-table{min-width:1000px}.schedule-report-table{min-width:760px}.work-reports-table{min-width:1250px}.plan-report-table{min-width:1040px}:is(.row-action-cell,.inspector-actions,.work-report-actions-cell) button,.work-note-button,.plan-report-extra-selection{width:var(--data-table-action-size);height:var(--data-table-action-size);min-width:var(--data-table-action-size);min-height:var(--data-table-action-size);border-radius:7px;margin:0 2px;padding:0}:is(.row-action-cell,.inspector-actions,.work-report-actions-cell) button svg,.work-note-button svg,.plan-report-extra-selection svg{width:var(--data-table-action-icon-size);height:var(--data-table-action-icon-size)}.data-table td.row-action-cell{width:42px;padding-block:4px}.inspector-actions{width:76px}.admin-page{color:#171b24;gap:18px;display:grid}.admin-heading{justify-content:space-between;align-items:end;display:flex}.admin-heading h1{margin:4px 0 6px;font-size:30px}.admin-heading p{color:#687184;margin:0}.admin-page .eyebrow,.admin-drawer .eyebrow{letter-spacing:.12em;color:#29458c;font-size:11px;font-weight:800}.admin-card{background:#fff;border:1px solid #dbe0e8;border-radius:20px;overflow:hidden;box-shadow:0 6px 24px #1c2c4c0d}.admin-toolbar{border-bottom:1px solid #dde2e9;align-items:center;gap:18px;padding:18px 20px;display:flex}.admin-toolbar>span{white-space:nowrap;color:#8991a0;font-size:13px}.admin-table-wrap{overflow:auto}.admin-table{border-collapse:collapse;width:100%;font-size:13px}.admin-table th{text-align:left;color:#273144;background:#e9edf3;padding:11px 14px;font-weight:700}.admin-table td{border-top:1px solid #dce1e8;padding:10px 14px}.admin-table tbody tr:nth-child(2n){background:#f1f3f6}.admin-table td:first-child strong,.admin-table td:first-child small{display:block}.admin-table td small{color:#9098a6}.admin-icon-button,.admin-close{color:#29458c;cursor:pointer;background:#fff;border:1px solid #d2d9e4;border-radius:9px;justify-content:center;align-items:center;min-width:36px;height:34px;display:inline-flex}.admin-drawer-backdrop{z-index:2000;background:#15203c99;justify-content:flex-end;display:flex;position:fixed;inset:0}.admin-drawer{background:#fff;flex-direction:column;width:min(690px,100%);height:100%;display:flex;box-shadow:-16px 0 45px #08122933}.admin-drawer>header{border-bottom:1px solid #dce1e8;justify-content:space-between;padding:24px 28px;display:flex}.admin-drawer h2{margin:4px 0;font-size:26px}.admin-drawer header p,.admin-section-title p{color:#768093;margin:0;font-size:13px}.admin-close{color:#5e6878;background:#eef1f5;border:0;width:44px;height:44px}.admin-drawer-body{gap:18px;padding:22px 28px;display:grid;overflow:auto}.admin-drawer-body section{border:1px solid #dce2eb;border-radius:15px;padding:18px}.admin-drawer-body h3{margin:0 0 12px;font-size:17px}.admin-drawer-body label:not(.admin-check){gap:6px;font-size:13px;font-weight:700;display:grid}.admin-drawer-body input[readonly]{color:#606a7a;background:#f2f4f7}.admin-readonly-grid{grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:12px;display:grid}.admin-section-title{justify-content:space-between;align-items:start;gap:12px;display:flex}.admin-section-title h3{margin-bottom:3px}.admin-section-title button{color:#29458c;cursor:pointer;background:0 0;border:0;font-weight:700}.admin-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;margin-top:14px;display:grid}.admin-check{cursor:pointer;border-radius:8px;align-items:center;gap:9px;min-height:34px;font-size:13px;display:flex}.admin-check:hover{background:#f1f4fa}.admin-check input{accent-color:#29458c;width:16px;height:16px}.admin-menu-rights{margin:12px -6px 0;display:grid}.admin-menu-rights .admin-check{border-bottom:1px solid #edf0f4}.admin-drawer>footer{color:#7a8393;border-top:1px solid #dce1e8;justify-content:space-between;align-items:center;margin-top:auto;padding:16px 28px;font-size:13px;display:flex}.admin-save{color:#fff;cursor:pointer;background:#29458c;border:0;border-radius:11px;align-items:center;gap:8px;padding:13px 20px;font-weight:800;display:inline-flex}.admin-save:disabled{opacity:.55}.admin-loading{color:#6f7888;justify-content:center;align-items:center;gap:9px;min-height:120px;display:flex}.admin-alert{border-radius:9px;align-items:center;gap:8px;padding:11px 13px;font-size:13px;display:flex}.admin-alert.error{color:#b92e37;background:#fff0f0}.admin-alert.success{color:#147b50;background:#ebf8f1}.spin{animation:1s linear infinite admin-spin}@keyframes admin-spin{to{transform:rotate(360deg)}}@media (width<=720px){.admin-readonly-grid,.admin-choice-grid{grid-template-columns:1fr}.admin-table th:nth-child(4),.admin-table td:nth-child(4),.admin-table th:nth-child(5),.admin-table td:nth-child(5){display:none}}.admin-menu-rights{gap:8px}.admin-menu-right{min-width:0}.admin-menu-right.level-0{background:#fff;border:1px solid #dce2eb;border-radius:10px;overflow:hidden}.admin-menu-right.level-0.starts-section{margin-top:6px}.admin-menu-right.level-0>.admin-check{color:#1f376f;background:#eef2f8;min-height:40px;font-weight:800}.admin-menu-right-children .admin-check{border-top:1px solid #edf0f4;border-bottom:0}.admin-menu-right-children .admin-menu-right-children{background:#fafbfd}.admin-readonly-label{color:#768093;font-size:12px;font-weight:700}.admin-check.is-readonly{cursor:default}.admin-check.is-readonly:hover{background:0 0}.admin-check.is-readonly input{cursor:default}.admin-drawer-body select:disabled{color:#606a7a;opacity:1;cursor:default;background:#f2f4f7}.admin-role-option:has(input:disabled){cursor:default}.monthly-table-filters.list-subfilters{flex-wrap:wrap;justify-content:flex-start;align-items:flex-end;display:flex}.list-subfilters>.sections-search{flex:0 470px;width:min(470px,100%);min-width:0;margin:0}.list-subfilters>label:not(.sections-search){flex:0 260px;min-width:0}.list-subfilters>label:not(.sections-search)>select{width:100%;min-width:0}@media (width<=760px){.monthly-table-filters.list-subfilters{flex-direction:column;align-items:stretch}.list-subfilters>.sections-search,.list-subfilters>label:not(.sections-search){flex:auto;width:100%}}.map-section-labels-toggle{cursor:pointer;flex-direction:row;align-items:center;gap:8px;font-size:13px;font-weight:400;line-height:1.4;display:flex}.map-section-labels-toggle input[type=checkbox]{width:16px;height:16px;min-height:16px;margin:0}.map-section-labels-hidden .road-section-map-label:not(.municipality-map-label){display:none!important}.admin-toolbar>.sections-search{flex:280px;min-width:0}:where(.monthly-filter-field,.duty-book-toolbar,.inspector-drawer,.admin-drawer-body) :is(input,select,textarea):disabled{cursor:not-allowed}.road-unit-header{padding:0 13px 0 0}.road-unit-header>.work-project-toggle{flex-direction:row;flex:1;align-items:center;width:auto;min-width:0}@media (width<=720px){.road-unit-header{padding:0 0 8px}.road-unit-header>.section-map-action{margin-inline:13px}}.road-sections-page .sections-table-scroll{position:relative}.road-sections-page .sections-summary strong{text-transform:none}@media (width>=1200px){.road-sections-page .sections-summary{grid-template-columns:repeat(4,minmax(0,1fr))}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
