@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/fef07dbb0973bf53-s.3p2_lha1f2xer.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/8a480f0b521d4e75-s.1qq4vpdcun5oj.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/53b9e256198e5412-s.390ncx5urfkfu.woff2)format("woff2");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:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/7178b3e590c64307-s.21jp631_3pja2.woff2)format("woff2");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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/caa3a2e1cccd8315-s.p.0wgildi0cnwt9.woff2)format("woff2");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:Geist Fallback;src:local(Arial);ascent-override:95.94%;descent-override:28.16%;line-gap-override:0.0%;size-adjust:104.76%}.geist_a71539c9-module__T19VSG__className{font-family:Geist,Geist Fallback;font-style:normal}.geist_a71539c9-module__T19VSG__variable{--font-geist-sans:"Geist", "Geist Fallback"}
@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/5ce348bf30bf5439-s.31988l_ccedte.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/4fa387ec64143e14-s.2tuy5pz7dlieh.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/6306c77e7c8268e4-s.2dbetqa9o8jxf.woff2)format("woff2");unicode-range:U+2000-2001,U+2004-2008,U+200A,U+23B8-23BD,U+2500-259F}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/7d817b4c03b0c5f1-s.1uyisp29ctx0d.woff2)format("woff2");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:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/bbc41e54d2fcbd21-s.1rgnod-3esatf.woff2)format("woff2");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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/797e433ab948586e-s.p.0r6juujl39pe6.woff2)format("woff2");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:Geist Mono Fallback;src:local(Arial);ascent-override:74.67%;descent-override:21.92%;line-gap-override:0.0%;size-adjust:134.59%}.geist_mono_8d43a2aa-module__8Li5zG__className{font-family:Geist Mono,Geist Mono Fallback;font-style:normal}.geist_mono_8d43a2aa-module__8Li5zG__variable{--font-geist-mono:"Geist Mono", "Geist Mono Fallback"}
@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-border-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;--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}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.fixed{position:fixed}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.block{display:block}.contents{display:contents}.hidden{display:none}.table{display:table}.resize{resize:both}.border{border-style:var(--tw-border-style);border-width:1px}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.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,)}}:root{--ink:#17221d;--muted:#6c776f;--line:#dfe5df;--green:#156b4d;--paper:#f5f7f4}*{box-sizing:border-box}body{background:var(--paper);color:var(--ink);margin:0;font-family:Arial,Helvetica,sans-serif}button,input{font:inherit}button{cursor:pointer}.app-shell{min-height:100vh}.topbar{background:var(--theme-surface,#fff);border-bottom:1px solid var(--line);grid-template-columns:1fr auto 1fr;align-items:center;height:74px;padding:0 4vw;display:grid}.brand,.user{align-items:center;gap:12px;display:flex}.brand-mark{background:var(--green);width:48px;height:48px;color:var(--theme-on-accent,#fff);border-radius:14px;place-items:center;font-weight:800;display:grid}.brand-vehicle{background:currentColor;width:42px;height:42px;-webkit-mask:url(/brand-vehicle.png) 50%/contain no-repeat;mask:url(/brand-vehicle.png) 50%/contain no-repeat}.brand div{display:grid}.brand small,.user span{color:var(--muted);font-size:12px}.topbar nav{background:var(--theme-surface-soft,#f3f5f2);border-radius:12px;gap:6px;padding:5px;display:flex}.topbar nav button{color:var(--muted);background:0 0;border:0;border-radius:9px;padding:9px 15px}.user{justify-self:end}.avatar{background:var(--theme-accent-soft,#e6eee9);border-radius:50%;place-items:center;width:36px;height:36px;font-weight:700;display:grid;color:var(--green)!important}.hero{justify-content:space-between;align-items:end;max-width:1500px;margin:auto;padding:42px 4vw 28px;display:flex}.eyebrow{text-transform:uppercase;letter-spacing:.11em;color:var(--green);margin:0 0 9px;font-size:11px;font-weight:800}.hero h1{letter-spacing:-.04em;margin:0;font-size:40px}.hero p:last-child{color:var(--muted);margin:8px 0 0}.month-switcher{background:var(--theme-surface,#fff);border:1px solid var(--line);border-radius:13px;align-items:center;gap:17px;padding:6px;display:flex}.month-switcher button{background:var(--theme-surface-soft,#f3f5f2);border:0;border-radius:9px;width:34px;height:34px;font-size:22px}.month-switcher strong{text-align:center;min-width:112px;font-size:14px}.stats{grid-template-columns:repeat(3,1fr);gap:14px;max-width:1500px;margin:0 auto 22px;padding:0 4vw;display:grid}.stats article{background:var(--theme-surface,#fff);border:1px solid var(--line);border-radius:16px;grid-template-columns:1fr auto;align-items:center;padding:19px 22px;display:grid}.stats span,.stats small{color:var(--muted);font-size:12px}.stats strong{color:var(--green);grid-area:1/2/3;font-size:28px}.stats small{margin-top:4px}.workspace{grid-template-columns:minmax(440px,.9fr) minmax(560px,1.35fr);gap:18px;max-width:1500px;margin:auto;padding:0 4vw 50px;display:grid}.calendar-panel,.schedule-panel{background:var(--theme-surface,#fff);border:1px solid var(--line);border-radius:18px;overflow:hidden}.panel-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:22px 24px;display:flex}.panel-heading h2{margin:0;font-size:20px}.legend{color:var(--muted);align-items:center;gap:7px;font-size:12px;display:flex}.legend i{background:var(--theme-warning-solid,#e1a727);border-radius:50%;width:8px;height:8px}.legend .night-dot{background:var(--theme-info-solid,#435d83);margin-left:8px}.weekdays,.calendar-grid{grid-template-columns:repeat(7,1fr);gap:8px;padding:0 20px;display:grid}.weekdays{margin-bottom:8px;padding-top:17px}.weekdays span{text-align:center;color:var(--theme-muted,#8a938d);text-transform:uppercase;font-size:11px;font-weight:700}.calendar-grid{padding-bottom:20px}.calendar-grid button,.calendar-grid .empty{background:var(--theme-surface-soft,#f7f9f6);border:1px solid #0000;border-radius:11px;flex-direction:column;justify-content:center;align-items:center;gap:4px;min-height:56px;display:flex}.calendar-grid button:hover{border-color:var(--theme-accent-line,#b8d5c6)}.calendar-grid button small{color:var(--theme-muted,#8c968f);font-size:10px}.calendar-grid .selected{background:var(--green);color:var(--theme-on-accent,#fff);box-shadow:0 7px 18px var(--theme-shadow,#156b4d33)}.calendar-grid .selected small{color:var(--theme-on-accent,#d8eee4)}.schedule-heading{border-bottom:0}.primary{background:var(--green);color:var(--theme-on-accent,#fff);border:0;border-radius:10px;padding:11px 15px;font-size:13px;font-weight:700}.filters{gap:10px;padding:0 24px 18px;display:flex}.filters input{border:1px solid var(--line);border-radius:10px;outline:none;flex:1;padding:11px 14px}.filters input:focus{border-color:var(--theme-accent-line,#76a991)}.segmented{background:var(--theme-surface-soft,#f2f5f2);border-radius:10px;padding:4px;display:flex}.segmented button{color:var(--muted);background:0 0;border:0;border-radius:7px;padding:7px 12px;font-size:12px}.segmented .active{background:var(--theme-surface,#fff);color:var(--ink);box-shadow:0 1px 5px var(--theme-shadow,#17221d14)}.schedule-list{border-top:1px solid var(--line);max-height:493px;overflow:auto}.schedule-list article{border-bottom:1px solid var(--theme-line,#edf0ed);grid-template-columns:38px 1fr 120px 64px 30px;align-items:center;gap:12px;min-height:72px;padding:12px 22px;display:grid}.shift-icon{background:var(--theme-warning-soft,#fff3d7);width:34px;height:34px;color:var(--theme-warning,#9a6a00);border-radius:10px;place-items:center;display:grid}.shift-icon.night{background:var(--theme-info-soft,#e9eef7);color:var(--theme-info,#435d83)}.person{gap:4px;display:grid}.person strong{font-size:14px}.person small,.vehicle span{color:var(--muted);font-size:11px}.vehicle{gap:3px;display:grid}.vehicle strong{font-size:13px}.shift-badge{text-align:center;background:var(--theme-warning-soft,#fff2d1);color:var(--theme-warning,#8b640a);border-radius:20px;padding:6px 7px;font-size:11px}.shift-badge.night{background:var(--theme-info-soft,#e8edf6);color:var(--theme-info,#435d83)}.more{color:var(--theme-muted,#8d9690);background:0 0;border:0}.empty-state{min-height:280px;color:var(--muted);flex-direction:column;justify-content:center;align-items:center;gap:8px;display:flex}.empty-state span{font-size:32px}.empty-state strong{color:var(--ink)}.brand{color:inherit;text-decoration:none}.topbar nav a{color:var(--muted);background:0 0;border:0;border-radius:9px;padding:9px 15px;text-decoration:none}.topbar nav .nav-active{background:var(--theme-surface,#fff);color:var(--ink);box-shadow:0 2px 8px var(--theme-shadow,#17221d12)}.directory-hero{justify-content:space-between;align-items:end;max-width:1500px;margin:auto;padding:42px 4vw 26px;display:flex}.directory-hero h1{letter-spacing:-.04em;margin:0;font-size:40px}.directory-hero>div>p:last-child{color:var(--muted);margin:8px 0 0}.directory-card{background:var(--theme-surface,#fff);border:1px solid var(--line);border-radius:18px;max-width:1500px;margin:0 auto 50px;overflow:hidden}.directory-toolbar{border-bottom:1px solid var(--line);align-items:center;gap:16px;padding:18px 22px;display:flex}.directory-toolbar input{border:1px solid var(--line);border-radius:10px;flex:1;padding:12px 14px}.directory-toolbar span{color:var(--muted);font-size:12px}.directory-row{border-bottom:1px solid var(--theme-line,#edf0ed);grid-template-columns:80px 1.25fr 1fr 110px 1.35fr 130px 90px;align-items:center;gap:14px;padding:15px 22px;font-size:13px;display:grid}.directory-head{background:var(--theme-surface-soft,#f7f9f6);color:var(--muted);text-transform:uppercase;font-size:11px;font-weight:700}.brigade-pill{background:var(--theme-accent-soft,#eaf5ef);width:max-content;color:var(--green);border-radius:20px;padding:6px 9px;font-weight:700}.vehicle-chips{flex-wrap:wrap;gap:5px;display:flex}.vehicle-chips i{background:var(--theme-surface-soft,#f0f3f0);border-radius:7px;padding:5px 7px;font-size:11px;font-style:normal}.edit-button{border:1px solid var(--line);background:var(--theme-surface,#fff);color:var(--green);border-radius:8px;padding:7px 9px}.modal-backdrop{background:var(--theme-overlay,#17221d66);z-index:20;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.employee-modal{background:var(--theme-surface,#fff);width:min(720px,100%);max-height:90vh;box-shadow:0 24px 70px var(--theme-shadow,#17221d40);border-radius:18px;padding:26px;overflow:auto}.employee-modal h2{margin:0 0 22px}.form-grid{grid-template-columns:1fr 2fr;gap:14px;display:grid}.employee-modal label{color:var(--muted);gap:7px;font-size:12px;display:grid}.employee-modal input,.employee-modal select{border:1px solid var(--line);width:100%;color:var(--ink);background:var(--theme-surface,#fff);border-radius:9px;padding:11px}.employee-modal fieldset{border:1px solid var(--line);border-radius:12px;margin:18px 0;padding:14px}.employee-modal legend{color:var(--muted);padding:0 6px;font-size:12px}.vehicle-options{grid-template-columns:repeat(3,1fr);gap:9px;display:grid}.vehicle-options label{background:var(--theme-surface-soft,#f6f8f5);color:var(--ink);border-radius:8px;align-items:center;gap:7px;padding:9px;display:flex}.vehicle-options input{width:auto}.modal-actions{justify-content:flex-end;gap:9px;margin-top:22px;display:flex}.modal-actions>button:not(.primary){border:1px solid var(--line);background:var(--theme-surface,#fff);border-radius:9px;padding:10px 14px}.form-error{color:var(--theme-danger,#a33);font-size:12px}.shift-counts{gap:5px!important;display:flex!important}.shift-counts span{border-radius:7px;min-width:18px;padding:2px 4px;color:#fff!important}.day-count{background:var(--theme-warning-solid,#d69b18)}.night-count{background:var(--theme-info-solid,#435d83)}.schedule-modal{background:var(--theme-surface,#fff);width:min(760px,100%);max-height:90vh;box-shadow:0 24px 70px var(--theme-shadow,#17221d40);border-radius:18px;padding:26px;overflow:auto}.schedule-modal-head{justify-content:space-between;align-items:start;display:flex}.schedule-modal h2{margin:0}.modal-close{background:var(--theme-surface-soft,#f1f4f2);border:0;border-radius:9px;width:36px;height:36px;font-size:24px}.shift-tabs{background:var(--theme-surface-soft,#f2f5f2);border-radius:11px;gap:6px;margin:22px 0 14px;padding:5px;display:flex}.shift-tabs button{background:0 0;border:0;border-radius:8px;flex:1;padding:10px}.shift-tabs .active{background:var(--theme-surface,#fff);color:var(--green);box-shadow:0 1px 5px var(--theme-shadow,#17221d14);font-weight:700}.modal-assignment-list{border:1px solid var(--line);border-radius:12px;overflow:hidden}.modal-assignment-row{border-bottom:1px solid var(--theme-line,#edf0ed);grid-template-columns:1fr 120px 210px;align-items:center;gap:12px;padding:12px 14px;display:grid}.modal-assignment-row:last-child{border-bottom:0}.modal-empty{text-align:center;color:var(--muted);padding:18px}.add-assignment{border:1px dashed var(--theme-accent-line,#9fbaa9);background:var(--theme-surface-soft,#f7faf8);width:100%;color:var(--green);border-radius:10px;margin-top:14px;padding:12px;font-weight:700}.assignment-form{background:var(--theme-surface-soft,#f7f9f7);border-radius:12px;grid-template-columns:1fr 1fr;gap:12px;margin-top:14px;padding:16px;display:grid}.assignment-form label{color:var(--muted);gap:7px;font-size:12px;display:grid}.assignment-form select{border:1px solid var(--line);background:var(--theme-surface,#fff);border-radius:9px;padding:11px}.assignment-form .form-error,.assignment-form .modal-actions{grid-column:1/-1;margin:0}.primary:disabled{opacity:.5;cursor:not-allowed}@media (max-width:760px){.modal-assignment-row{grid-template-columns:1fr 90px}.modal-assignment-row .row-actions{grid-column:1/-1}.assignment-form{grid-template-columns:1fr}.assignment-form>*{grid-column:1!important}}@media (max-width:1100px){.directory-card{margin-inline:4vw;overflow:auto}.directory-table{min-width:1050px}}@media (max-width:980px){.topbar{grid-template-columns:1fr auto}.topbar nav{display:none}.workspace{grid-template-columns:1fr}.stats{grid-template-columns:repeat(3,1fr)}.hero{align-items:flex-start}.schedule-list{max-height:none}}@media (max-width:650px){.topbar{padding:0 18px}.user span:first-child{display:none}.hero,.directory-hero{padding:28px 18px 20px;display:block}.hero h1,.directory-hero h1{font-size:32px}.directory-hero .primary{margin-top:18px;font-size:13px}.month-switcher{width:max-content;margin-top:20px}.stats{grid-template-columns:1fr;padding:0 18px}.workspace{grid-template-columns:1fr;padding:0 18px 30px}.schedule-list article{grid-template-columns:36px 1fr 30px}.vehicle,.shift-badge{display:none}.filters{display:grid}.calendar-grid button,.calendar-grid .empty{min-height:46px}.panel-heading{padding:18px}.schedule-heading .primary{font-size:0}.schedule-heading .primary:after{content:"+";font-size:20px}.form-grid,.vehicle-options{grid-template-columns:1fr}}.calendar-panel>.panel-heading>.eyebrow{letter-spacing:.06em;margin:0;font-size:18px}.calendar-grid button b{font-size:18px}.shift-counts{gap:3px!important}.shift-counts span{min-width:15px;padding:1px 3px;font-size:8px}.topbar-single{grid-template-columns:1fr auto 1fr}.topbar-single .user{grid-column:3;justify-self:end}.user>span{text-align:right}.logout-form{margin:0}.logout-button{background:0 0;border:0;padding:0;display:block}.exit-avatar svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:19px;height:19px}.modal-assignment-row select{border:1px solid var(--line);background:var(--theme-surface,#fff);width:100%;min-width:0;color:var(--ink);border-radius:9px;padding:10px}.inline-row-actions{justify-content:flex-end;display:flex}.inline-row-actions button{border:1px solid var(--theme-danger-line,#e3bcbc);background:var(--theme-surface,#fff);border-radius:9px;padding:9px 11px}.new-assignment-row{background:var(--theme-surface-soft,#f7faf8)}.inline-editor-error{margin:10px 0 0}.schedule-save-actions{margin-top:14px}@media (max-width:760px){.modal-assignment-row{grid-template-columns:1fr}.modal-assignment-row .inline-row-actions{grid-column:1}.inline-row-actions{justify-content:stretch}.inline-row-actions button{flex:1}}.calendar-panel{align-self:start}.schedule-heading>.eyebrow{letter-spacing:.06em;margin:0;font-size:18px}.calendar-grid button.imported-date b{color:var(--theme-muted,#8c968f)}.filters input{height:28px;padding:4px 12px}.segmented{height:28px;padding:3px}.segmented button{padding:2px 10px}.calendar-grid button.today{border:2px solid var(--theme-info-line,#2878d6);box-shadow:0 0 0 2px var(--theme-shadow,#2878d622)}.calendar-grid button.selected.today{box-shadow:0 0 0 3px var(--theme-shadow,#2878d6)}.status-overview{grid-template-columns:1fr 1fr;gap:14px;max-width:1500px;margin:0 auto 22px;padding:0 4vw;display:grid}.status-overview article{background:var(--theme-surface,#fff);border:1px solid var(--line);border-radius:16px;padding:16px 20px}.status-overview h3{margin:0 0 10px;font-size:14px}.status-overview p{color:var(--muted);margin:0;font-size:12px}.status-overview ul{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.status-overview li{background:var(--theme-surface-soft,#f3f6f3);border-radius:8px;align-items:center;gap:7px;padding:7px 9px;font-size:12px;display:flex}.status-overview li span{color:var(--muted)}.unavailable-note{color:var(--theme-warning,#a36b16);margin-top:4px;display:block}.availability-fields{border:1px solid var(--line);border-radius:12px;grid-template-columns:1fr 1fr 1fr;align-items:end;gap:14px;margin-top:16px;padding:14px;display:grid}.availability-fields .check-line{color:var(--ink);grid-auto-flow:column;justify-content:start;align-items:center;display:flex}.availability-fields .check-line input{width:auto}.availability-fields input:disabled,.availability-fields textarea:disabled{background:var(--theme-surface-soft,#f1f3f1);color:var(--theme-muted,#9aa19c)}.availability-note-field{grid-column:1/-1;position:relative}.employee-modal .availability-note-field textarea{resize:vertical;border:1px solid var(--line);width:100%;min-height:76px;color:var(--ink);background:var(--theme-surface,#fff);font:inherit;border-radius:9px;padding:11px}.availability-note-field small{color:var(--muted);justify-self:end}.assignment-menu{position:relative}.menu-popover{z-index:10;background:var(--theme-surface,#fff);border:1px solid var(--line);min-width:150px;box-shadow:0 10px 28px var(--theme-shadow,#17221d24);border-radius:10px;padding:6px;display:grid;position:absolute;top:30px;right:0}.menu-popover button{background:var(--theme-surface,#fff);text-align:left;border:0;border-radius:7px;padding:10px}.menu-popover button:hover{background:var(--theme-surface-soft,#f4f6f4)}.menu-popover .danger{color:var(--theme-danger,#a33)}.modal-assignment-row select:disabled{background:var(--theme-surface-soft,#f1f3f1);color:var(--theme-muted,#929a94)}.person small{line-height:1.35}.stats-single{grid-template-columns:1fr}.stats-single article{justify-content:space-between;display:flex}.assignment-totals{gap:9px;display:flex}.assignment-totals b{border-radius:18px;padding:8px 11px;font-size:12px}.day-total{background:var(--theme-warning-soft,#fff0c9);color:var(--theme-warning,#8b640a)}.night-total{background:var(--theme-info-soft,#e8edf6);color:var(--theme-info,#435d83)}@media (max-width:650px){.status-overview{grid-template-columns:1fr;padding:0 18px}.availability-fields{grid-template-columns:1fr}}.stats-single{justify-content:flex-end;display:flex}.schedule-list .assignment-row{grid-template-columns:38px minmax(190px,1.5fr) minmax(80px,.55fr) minmax(110px,.7fr) minmax(145px,1fr) 64px;gap:10px}.assignment-brigade,.assignment-author{gap:3px;min-width:0;display:grid}.assignment-brigade small,.assignment-author small{color:var(--muted);font-size:10px}.assignment-brigade strong{font-size:12px}.assignment-author span{color:var(--muted);overflow-wrap:anywhere;font-size:11px}.assignment-vehicle{gap:2px;min-width:0;display:grid!important}.assignment-vehicle strong{font-size:14px}.assignment-vehicle small{color:var(--muted);overflow-wrap:anywhere;font-size:10px}.critical-status{line-height:1.3;display:block;color:var(--theme-danger,#e00000)!important;font-size:11px!important;font-weight:900!important}.vehicle-ok{color:var(--theme-success,#3f755c);font-size:10px;font-weight:700}.assignment-row .person{min-width:0}.assignment-row .person strong{overflow-wrap:anywhere}@media (max-width:760px){.schedule-list .assignment-row{grid-template-columns:34px minmax(0,1fr) minmax(92px,.55fr);gap:9px;padding:11px 14px}.assignment-brigade,.assignment-author,.assignment-row .shift-badge{display:none}.assignment-row .shift-icon{grid-column:1}.assignment-row .person{grid-column:2}.assignment-row .assignment-vehicle{grid-column:3}.stats-single article{width:min(500px,100%)}}@media (max-width:650px){.stats-single{padding-inline:18px}.assignment-row .person strong,.assignment-vehicle strong{font-size:13px}}.stats-single article{padding:7px 16px}.stats-single .assignment-totals b{padding:5px 9px}@media (min-width:651px){.hero{padding:16px 4vw 14px}}@media (max-width:980px){.topbar{grid-template-columns:minmax(0,1fr) auto;gap:10px;height:auto;min-height:74px;padding:10px 18px}.topbar nav{flex-wrap:wrap;grid-area:2/1/auto/-1;justify-content:center;width:100%;display:flex}.topbar nav a{white-space:nowrap}.topbar .user{max-width:min(62vw,520px)}.topbar .user>span{text-align:right;overflow-wrap:anywhere;display:block}}@media (max-width:650px){.topbar{padding:10px 18px}.topbar .user>span:first-child{display:block}.topbar nav a{padding:7px 10px}.schedule-heading .primary:after{content:"✎";font-size:22px}}@media (max-width:520px){.topbar,.topbar-single{grid-template-columns:1fr}.topbar .user,.topbar-single .user{grid-area:2/1;justify-self:start;max-width:100%}.topbar .user>span{text-align:left}.topbar nav{grid-row:3;justify-content:flex-start}}.stats-single article{width:calc(50% - 7px)}.calendar-heading-actions{align-items:center;gap:14px;display:flex}.schedule-heading-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.export-button{border:1px solid var(--theme-accent-line,#bcd3c6);background:var(--theme-surface,#fff);color:var(--green);border-radius:9px;padding:8px 12px;font-size:12px;font-weight:700}.export-button:hover{background:var(--theme-surface-hover,#f1f6f3)}.export-modal{background:var(--theme-surface,#fff);width:min(520px,100%);box-shadow:0 24px 70px var(--theme-shadow,#17221d40);border-radius:18px;padding:26px}.export-modal h2{margin:0 0 22px}.export-period{grid-template-columns:1fr 1fr;gap:14px;display:grid}.export-period label{color:var(--muted);gap:7px;font-size:12px;display:grid}.export-period input{border:1px solid var(--line);width:100%;color:var(--ink);background:var(--theme-surface,#fff);border-radius:9px;padding:11px}.logout-form,.logout-button{flex:none}.logout-button{display:block!important}.exit-avatar{display:grid!important}@media (max-width:900px){.topbar .user{justify-self:end!important}.topbar .user>span{display:none!important}.logout-button,.exit-avatar{visibility:visible!important}}@media (max-width:650px){.stats-single article{width:100%}.calendar-heading{align-items:flex-start}.calendar-heading-actions{flex-direction:column;align-items:flex-end;gap:8px}.schedule-heading{align-items:flex-start;gap:10px}.schedule-heading-actions{gap:6px}.export-period{grid-template-columns:1fr}}@media (max-width:520px){.topbar,.topbar-single{grid-template-columns:1fr auto}.topbar .user,.topbar-single .user{grid-area:1/2;justify-self:end}.topbar nav{grid-area:2/1/auto/-1}}.brand-car{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:24px;height:24px}.user-password-link{color:var(--muted);text-align:right;font-size:12px;text-decoration:none}.user-password-link:hover{text-decoration:underline}.modal-description{color:var(--muted);font-size:13px;line-height:1.5}.generate-password{border:1px solid var(--line);background:var(--theme-surface,#fff);color:var(--green);border-radius:9px;margin-top:10px;padding:9px 12px}.user-modal .password-requirements{margin:14px 0}.header-center{align-items:center;gap:12px;display:flex}.install-app-button{border:1px solid var(--theme-accent-line,#a9c9b7);background:var(--theme-surface,#fff);color:var(--green);white-space:nowrap;border-radius:11px;padding:11px 14px;font-size:13px;font-weight:700}.install-app-button:hover{background:var(--theme-surface-hover,#edf6f1)}.install-app-button span{border:1px solid;border-radius:6px;place-items:center;width:19px;height:19px;margin-right:4px;display:inline-grid}.install-app-dialog{background:var(--theme-surface,#fff);width:min(480px,100%);box-shadow:0 24px 70px var(--theme-shadow,#17221d40);border-radius:18px;padding:28px;position:relative}.install-app-dialog>.modal-close{position:absolute;top:18px;right:18px}.install-app-dialog>img{border-radius:16px;margin-bottom:18px;display:block}.install-app-dialog h2{margin:0 0 14px}.install-app-dialog>p:not(.eyebrow),.install-app-dialog li{color:var(--muted);line-height:1.55}.install-app-dialog ol{margin:14px 0 22px;padding-left:22px}.install-app-dialog li+li{margin-top:8px}.install-dialog-close{width:100%}@media (display-mode:standalone){.install-app-button{display:none}}.schedule-modal{width:min(980px,100%)}.editor-shifts{gap:18px;margin-top:22px;display:grid}.editor-shift-section{border:1px solid var(--line);border-radius:14px;overflow:hidden}.editor-shift-section.day{border-top:4px solid var(--theme-warning-solid,#e1a727)}.editor-shift-section.night{border-top:4px solid var(--theme-info-line,#435d83)}.editor-shift-heading{background:var(--theme-surface-soft,#f7f9f7);justify-content:space-between;align-items:center;padding:12px 14px;display:flex}.editor-shift-heading>div{align-items:center;gap:10px;display:flex}.editor-shift-heading h3{margin:0;font-size:15px}.editor-shift-heading small{color:var(--muted);font-size:10px}.add-shift-assignment{border:1px dashed var(--theme-accent-line,#9fbaa9);background:var(--theme-surface,#fff);color:var(--green);border-radius:9px;padding:8px 11px;font-weight:700}.editor-shift-section .modal-assignment-list{border:0;border-radius:0}.modal-assignment-row{grid-template-columns:minmax(230px,1.7fr) minmax(150px,.9fr) 145px 110px}.vehicle-select-wrap{gap:4px;min-width:0;display:grid}.vehicle-select-wrap select{width:100%}.broken-vehicle-warning{color:var(--theme-danger,#c83333);font-size:10px;font-weight:800}.attention-note-field{color:var(--muted);grid-column:1/-1;grid-template-columns:auto 1fr auto;align-items:center;gap:9px;padding:0 0 2px;font-size:11px;display:grid}.attention-note-field input{border:1px solid var(--theme-warning-line,#f1bd5b);background:var(--theme-warning-soft,#fffaf0);min-width:0;color:var(--ink);border-radius:8px;padding:8px 10px}.attention-note-display{background:var(--theme-warning-soft,#fff3d6);white-space:normal;overflow-wrap:anywhere;border-radius:7px;grid-column:2/-1;width:100%;min-width:0;padding:7px 9px;font-weight:700;line-height:1.4;display:block;color:var(--theme-warning,#7a5200)!important}.schedule-save-actions{z-index:5;background:var(--theme-surface,#fff);border-top:1px solid var(--line);margin-inline:-26px;margin-bottom:-26px;padding:14px 26px 26px;position:sticky;bottom:-26px}.modal-assignment-row .inline-row-actions button{min-width:0}.attention-checkbox{color:var(--ink);cursor:pointer;align-items:center;gap:7px;font-size:12px;line-height:1.2;display:flex}.attention-checkbox input{width:17px;height:17px;accent-color:var(--theme-warning-solid,#f59e0b);margin:0}.schedule-list .assignment-row.attention-required{border:2px solid var(--theme-warning-solid,#f59e0b);padding-top:22px;position:relative}.attention-label{z-index:1;background:var(--theme-warning-solid,#f59e0b);color:var(--theme-on-accent,#fff);white-space:nowrap;border-radius:0 0 8px 8px;padding:2px 8px;font-size:10px;font-weight:800;line-height:16px;position:absolute;top:0;left:14px}.app-shell:after{content:"© MishinRN";max-width:1500px;color:var(--muted);text-align:center;margin:0 auto;padding:0 4vw 28px;font-size:12px;display:block}@media (max-width:900px){.schedule-modal .modal-assignment-row{grid-template-columns:minmax(0,1fr) minmax(150px,.7fr)}.schedule-modal .attention-note-field{grid-column:1/-1}.schedule-modal .inline-row-actions{justify-content:stretch}.schedule-modal .inline-row-actions button{width:100%}}@media (max-width:760px){.schedule-modal .modal-assignment-row{grid-template-columns:1fr}.attention-note-field{grid-column:1;grid-template-columns:1fr auto}.attention-note-field span,.schedule-list .attention-note-display{grid-column:1/-1}.editor-shift-heading{align-items:flex-start}.app-shell:after{padding-inline:18px}}@media (max-width:980px){.header-center{flex-wrap:wrap;grid-area:2/1/auto/-1;justify-content:center;width:100%}.header-center nav{width:auto}.topbar-single .user{grid-column:2}}@media (max-width:650px){.install-app-dialog{padding:22px}}@media (max-width:520px){.header-center{grid-area:2/1/auto/-1;justify-content:flex-start}.header-center nav{justify-content:flex-start}}.topbar nav .nav-unread{color:var(--theme-danger,#b42323);animation:1.8s ease-in-out infinite program-change-pulse;position:relative}.topbar nav .nav-unread:after{content:"";background:var(--theme-danger-solid,#dc2626);width:7px;height:7px;box-shadow:0 0 0 0 var(--theme-shadow,#dc262666);border-radius:50%;animation:1.8s ease-in-out infinite program-change-dot-pulse;position:absolute;top:5px;right:6px}@keyframes program-change-pulse{0%,to{background:var(--theme-danger-soft,#fff1f1);box-shadow:0 0 0 0 var(--theme-shadow,#dc262600)}50%{background:var(--theme-danger-soft,#ffdada);box-shadow:0 0 0 5px var(--theme-shadow,#dc26261a)}}@keyframes program-change-dot-pulse{0%,to{box-shadow:0 0 0 0 var(--theme-shadow,#dc262666);transform:scale(.9)}50%{box-shadow:0 0 0 7px var(--theme-shadow,#dc262600);transform:scale(1.15)}}@media (prefers-reduced-motion:reduce){.topbar nav .nav-unread,.topbar nav .nav-unread:after{animation:none}.topbar nav .nav-unread{background:var(--theme-danger-soft,#ffdada)}}.import-modal{background:var(--theme-surface,#fff);width:min(880px,100%);max-height:92vh;box-shadow:0 24px 70px var(--theme-shadow,#17221d40);border-radius:18px;padding:26px;overflow:auto}.import-modal h2{margin:0 0 18px}.import-requirements{background:var(--theme-surface-soft,#f3f7f4);border:1px solid var(--theme-line,#d7e5db);border-radius:12px;margin-bottom:16px;padding:15px 17px;font-size:12px}.import-requirements ul{margin:8px 0 0;padding-left:18px;line-height:1.55}.import-file{color:var(--muted);gap:7px;margin-bottom:14px;font-size:12px;display:grid}.import-file input{border:1px solid var(--line);background:var(--theme-surface,#fff);color:var(--ink);border-radius:9px;padding:10px}.import-preview{margin-top:18px}.import-summary{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.import-summary b{background:var(--theme-surface-soft,#f4f6f4);border-radius:9px;padding:10px;font-size:11px}.import-preview-list{border:1px solid var(--line);border-radius:11px;max-height:260px;margin-top:10px;overflow:auto}.import-preview-list>div{border-bottom:1px solid var(--theme-line,#edf0ed);gap:3px;padding:10px 12px;display:grid}.import-preview-list>div:last-child{border-bottom:0}.import-preview-list span,.import-preview-list small{color:var(--muted);font-size:11px}.import-preview-list strong{font-size:13px}.import-preview-list .non-preferred-preview{background:var(--theme-warning-soft,#fff7df)}.import-preview details{border:1px solid var(--theme-danger-line,#efcccc);background:var(--theme-danger-soft,#fff8f8);border-radius:10px;margin-top:12px;padding:11px;font-size:12px}.import-preview details ul{margin:9px 0 0;padding-left:20px;line-height:1.5}.assignment-non-preferred{background:var(--theme-warning-soft,#fff8df)}.imported-mark,.non-preferred-mark{border-radius:6px;width:max-content;padding:3px 6px;font-weight:700}.imported-mark{background:var(--theme-info-soft,#e4f0ff);color:var(--theme-info,#275f9e)!important}.non-preferred-mark{background:var(--theme-warning-soft,#fff0b8);color:var(--theme-warning,#805d00)!important}@media (max-width:650px){.import-summary{grid-template-columns:1fr 1fr}.import-modal{padding:20px}}.modal-assignment-row select option{background:var(--theme-surface,#fff);color:var(--ink)}.directory-row,.vehicle-row,.users-row{font-size:13px}.brigade-summary{flex-wrap:wrap;align-items:center;gap:5px;display:flex}.composition-pill{background:var(--theme-surface-soft,#f0f3f0);width:max-content;color:var(--muted);white-space:nowrap;border-radius:20px;padding:6px 9px;font-size:11px;font-style:normal;font-weight:700}.directory-head,.vehicle-head,.users-head{font-size:11px}.preferred-summary{flex-wrap:wrap;gap:5px;display:flex}.preferred-summary i{background:var(--theme-success-soft,#e7f5ec);color:var(--theme-success,#255f43);border-radius:7px;padding:5px 7px;font-size:11px;font-style:normal}.preferred-vehicles-fieldset{gap:12px;display:grid}.preferred-vehicle-list{gap:7px;display:grid}.preferred-vehicle-list>div{background:var(--theme-surface-soft,#f3f8f4);border:1px solid var(--theme-success-line,#d7e8dc);border-radius:9px;grid-template-columns:28px 1fr 36px 36px 76px;align-items:center;gap:7px;padding:7px;display:grid}.preferred-vehicle-list b{background:var(--theme-accent-soft,#dcefe3);width:24px;height:24px;color:var(--green);border-radius:50%;place-items:center;font-size:11px;display:grid}.preferred-vehicle-list button{border:1px solid var(--line);background:var(--theme-surface,#fff);color:var(--green);border-radius:7px;padding:7px}.preferred-vehicle-list button:disabled{opacity:.35;cursor:not-allowed}.preferred-vehicle-list .remove-preferred{color:var(--theme-danger,#a33)}.add-preferred-label{color:var(--muted)!important;gap:7px!important;display:grid!important}.modal-assignment-row select.preferred-vehicle-selected{background:var(--theme-success-soft,#e3f5e9);border-color:var(--theme-success-line,#8bc6a0)}.modal-assignment-row select.preferred-vehicle-selected option{background:var(--theme-surface,#fff);color:var(--ink)}.modal-assignment-row select option.preferred-vehicle-option{background:var(--theme-success-soft,#e3f5e9);color:var(--theme-success,#174f36)}.modal-assignment-row select.missing-vehicle{border:2px solid var(--theme-danger-line,#d84343);background:var(--theme-danger-soft,#fff7f7);box-shadow:0 0 0 2px var(--theme-shadow,#d8434320)}.modal-assignment-row select.broken-vehicle-selected{border:2px solid var(--theme-danger-line,#d84343);background:var(--theme-danger-soft,#fff2f2);color:var(--theme-danger,#8d1f1f)}.modal-assignment-row select option.broken-vehicle-option{background:var(--theme-danger-soft,#fff0f0);color:var(--theme-danger,#a52222);font-weight:700}@media (max-width:650px){.preferred-vehicle-list>div{grid-template-columns:28px 1fr 34px 34px}.preferred-vehicle-list .remove-preferred{grid-column:2/-1}}.date-notes{border-bottom:1px solid var(--line);background:var(--theme-surface-soft,#fafbf8);padding:14px 22px 17px}.date-notes-head{justify-content:space-between;align-items:center;gap:14px;display:flex}.date-notes-head>div{align-items:baseline;gap:9px;display:flex}.date-notes-head strong{font-size:13px}.date-notes-head small,.date-notes-status{color:var(--muted);font-size:11px}.date-notes-head button{border:1px dashed var(--theme-accent-line,#9fbaa9);background:var(--theme-surface,#fff);color:var(--green);border-radius:9px;padding:7px 10px;font-size:11px;font-weight:800}.date-note-grid{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:10px;margin-top:11px;display:grid}.date-note-grid:empty{display:none}.date-note-card{border:1px solid var(--theme-warning-line,#e2d79a);background:var(--theme-warning-soft,#fff4bd);min-height:104px;box-shadow:0 4px 10px var(--theme-shadow,#5b4c1820);border-radius:4px 4px 10px;padding:13px 13px 10px;position:relative;transform:rotate(-.25deg)}.date-note-card:nth-child(2n){transform:rotate(.3deg)}.date-note-card.note-color-1{border-color:var(--theme-success-line,#b9d8c5);background:var(--theme-success-soft,#ddf2e4)}.date-note-card.note-color-2{border-color:var(--theme-info-line,#c6cee4);background:var(--theme-info-soft,#e7ebf8)}.date-note-card.note-color-3{border-color:var(--theme-danger-line,#e4c2c9);background:var(--theme-danger-soft,#f8e5e9)}.date-note-card.note-color-new{border-color:var(--theme-warning-line,#d5c36f);background:var(--theme-warning-soft,#fff7cf)}.date-note-card p{white-space:pre-wrap;overflow-wrap:anywhere;margin:0;font-size:13px;line-height:1.45}.date-note-card footer{justify-content:space-between;align-items:end;gap:8px;margin-top:13px;display:flex}.date-note-card footer>small{color:var(--theme-muted,#69736c);font-size:9px;line-height:1.3}.date-note-card footer span{gap:4px;display:flex}.date-note-card footer button{background:var(--theme-surface,#fff9);width:25px;height:25px;color:var(--green);border:1px solid #17221d20;border-radius:7px;place-items:center;font-weight:800;display:grid}.date-note-card footer .delete-note{color:var(--theme-danger,#a33)}.date-note-editor{gap:7px;display:grid}.date-note-editor textarea{resize:vertical;background:var(--theme-surface,#fff9);width:100%;color:var(--ink);font:inherit;border:1px solid #17221d26;border-radius:7px;padding:8px;line-height:1.4}.date-note-editor>small{color:var(--muted);justify-self:end;font-size:9px}.date-note-editor>div{justify-content:flex-end;gap:6px;display:flex}.date-note-editor button{background:var(--theme-surface,#fffa);border:1px solid #17221d24;border-radius:7px;padding:6px 8px;font-size:10px;font-weight:700}.date-note-editor .save-note{background:var(--green);color:var(--theme-on-accent,#fff)}.date-notes-status{margin:10px 0 0}.date-notes-error{color:var(--theme-danger,#a33);margin:10px 0 0;font-size:11px}@media (max-width:650px){.date-notes{padding:13px 14px}.date-notes-head{align-items:flex-start}.date-note-grid{grid-template-columns:1fr}}.date-note-card{flex-direction:column;display:flex}.date-note-body{flex:1;display:flow-root}.date-note-body.has-audience{padding-top:18px}.date-note-card footer{margin-top:auto;padding-top:13px}.date-note-editor{flex:1}.date-note-visibility{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:3px;width:max-content;max-width:calc(100% - 14px);line-height:1;display:flex;position:absolute;top:4px;right:7px}.date-note-visibility>span{color:var(--theme-muted,#69736c);white-space:nowrap;font-size:8px}.date-note-visibility small{background:var(--theme-surface,#ffffff80);color:var(--theme-muted,#526059);white-space:nowrap;border:1px solid #17221d1f;border-radius:999px;padding:2px 6px;font-size:8px;font-weight:750}.date-note-visibility-controls{justify-content:stretch!important;gap:5px!important;display:grid!important}.date-note-visibility-controls label{color:var(--theme-ink,#3f4d46);align-items:center;gap:7px;font-size:10px;font-weight:700;display:flex}.date-note-visibility-controls input{accent-color:var(--green);margin:0}.date-note-card p.completed{color:var(--theme-muted,#68736b);text-decoration:line-through}.date-note-card footer .complete-note{color:var(--theme-muted,#7d8880);font-size:17px}.date-note-card footer .complete-note.completed{border-color:var(--theme-success-line,#70ad87);background:var(--theme-success-soft,#e8f7ec);color:var(--theme-success,#16834c)}.date-note-visibility-controls label:has(input:disabled){opacity:.55}.directory-row{grid-template-columns:80px 1.25fr 1fr 110px 1.35fr 130px 126px}.employee-row-actions{gap:6px;display:grid}.employee-row-actions button{border-radius:8px;width:100%;padding:7px 9px}.compact-danger{border:1px solid var(--theme-danger-line,#e3bcbc);background:var(--theme-surface,#fff);color:var(--theme-danger,#a33)}.employee-subline,.qualification-summary small{color:var(--muted);margin-top:4px;display:block}.qualification-summary{gap:2px;display:grid}.driver-mark,.staff-mark{border-radius:16px;padding:5px 8px;font-size:11px;display:inline-block}.driver-mark{background:var(--theme-info-soft,#e6f2ff);color:var(--theme-info,#245b91)}.staff-mark{background:var(--theme-surface-soft,#f0f2ef);color:var(--theme-muted,#5d665f)}.qualification-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.row-actions,.employee-row-actions{grid-template-columns:1fr;justify-items:stretch;gap:6px;display:grid!important}.row-actions button,.employee-row-actions button{width:100%;min-width:112px}.employee-type-pill{background:var(--theme-surface-soft,#eef2ef);width:max-content;color:var(--muted);border-radius:20px;padding:6px 9px;font-size:11px;font-weight:700}.employee-type-pill.driver{background:var(--theme-info-soft,#e9f3ff);color:var(--theme-info,#245a8d)}.employee-type-pill.line{background:var(--theme-accent-soft,#eaf5ef);color:var(--green)}.employee-type-switch{background:var(--theme-surface-soft,#f0f3f0);border-radius:12px;grid-template-columns:1fr 1fr;gap:4px;margin:0 0 18px;padding:4px;display:grid}.employee-type-switch button{color:var(--muted);background:0 0;border:0;border-radius:9px;padding:11px;font-weight:700}.employee-type-switch button.active{background:var(--theme-surface,#fff);color:var(--green);box-shadow:0 2px 8px var(--theme-shadow,#17221d12)}.employee-type-switch button:disabled{cursor:default;opacity:1}.employee-type-display{background:var(--theme-accent-soft,#eef3ef);width:max-content;color:var(--green);border-radius:16px;margin:0 0 18px;padding:8px 12px;font-size:12px;font-weight:800}.employee-name-field{grid-column:1/-1;font-weight:800;color:var(--green)!important}.employee-name-field input{font-size:16px;font-weight:700;border:2px solid var(--theme-accent-line,#8abca3)!important;background:var(--theme-surface-soft,#f7fbf8)!important}.right-check{background:var(--theme-surface-soft,#f3f7f4);border-radius:9px;align-self:end;align-items:center;min-height:40px;padding:10px 12px;color:var(--ink)!important;display:flex!important}.right-check input{margin:0 9px 0 0;width:auto!important}.rights-summary{flex-wrap:wrap;gap:5px;display:flex}.rights-summary small{background:var(--theme-accent-soft,#eaf5ef);color:var(--green);border-radius:12px;padding:4px 7px;font-size:10px;font-weight:700;display:inline-block}.rights-grid{grid-template-columns:max-content minmax(260px,1fr);align-items:end;gap:12px 14px;display:grid}.right-row{display:contents}.rights-grid .right-check,.rights-grid .electrical-right{width:max-content}.rights-grid .electrical-right input{width:140px}.right-title{width:max-content;color:var(--ink);align-self:center;padding:0 12px;font-size:12px}@media (max-width:650px){.rights-grid{grid-template-columns:1fr}.right-row{grid-template-columns:1fr;gap:8px;display:grid}.right-row>span[aria-hidden=true]{display:none}}.employee-directory-row{grid-template-columns:80px 1.25fr 1.35fr 90px 160px 1.15fr 82px}@media (min-width:1101px){.directory-card{max-width:none;margin-inline:4vw}}.employee-row-actions{justify-content:flex-end;gap:6px;display:flex!important}.employee-row-actions button{place-items:center;width:36px;min-width:36px;height:36px;padding:0;display:grid}.employee-row-actions svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}.availability-fields{grid-template-columns:minmax(170px,1.1fr) repeat(2,minmax(135px,.9fr)) minmax(145px,1fr);align-items:start}.availability-fields .check-line{align-self:center}.availability-note-field{grid-column:auto;min-width:0}@media (max-width:650px){.availability-fields{grid-template-columns:1fr}.availability-note-field{grid-column:1}}.absence-history-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.absence-history-item{border-top:1px solid var(--border,#8885);padding:10px 0}.absence-history-item p{white-space:pre-wrap;overflow-wrap:anywhere}.absence-history-actions{flex-wrap:wrap;gap:8px;display:flex}.employee-absence>small{margin:6px 0;display:block}.employee-absence .absence-status{border-radius:6px;padding:6px 12px;font-size:13px;font-weight:700;display:inline-block}.employee-absence .absence-status.working{background:var(--theme-success-soft,#dcefe4);color:var(--theme-success,#186340)}.employee-absence .absence-status.unavailable{background:var(--theme-danger-soft,#fbe2df);color:var(--theme-danger,#a52e29)}.employee-absence .absence-history-heading{margin-top:10px}.employee-absence .absence-toggle{color:var(--ink);text-align:left;background:0 0;border:0;padding:8px 0;font-weight:700}.employee-absence .absence-toggle small{color:var(--muted);margin-left:6px;font-weight:400}.employee-absence .absence-add,.absence-editor-actions button{border:1px solid var(--line);background:var(--theme-surface,#fff);color:var(--ink);border-radius:7px;padding:7px 11px}.employee-absence .absence-add{border-color:var(--green);color:var(--green)}.absence-table-wrap{margin-bottom:-72px;padding-bottom:84px;overflow-x:auto}.absence-table{border-collapse:collapse;width:100%;font-size:13px}.absence-table th,.absence-table td{text-align:left;border-bottom:1px solid var(--line);padding:10px 8px}.absence-table th{color:var(--muted);font-size:12px;font-weight:400}.absence-table td:first-child,.absence-table th:first-child{padding-left:0}.absence-date{white-space:nowrap;font-variant-numeric:tabular-nums}.absence-note{white-space:pre-wrap;overflow-wrap:anywhere;max-width:250px}.absence-menu{position:relative}.absence-menu summary{cursor:pointer;border-radius:5px;padding:0 7px;font-size:22px;list-style:none}.absence-menu summary::-webkit-details-marker{display:none}.absence-menu>div{z-index:5;border:1px solid var(--line);background:var(--theme-surface,#fff);width:136px;box-shadow:0 5px 16px var(--theme-shadow,#17221d20);border-radius:7px;padding:4px;position:absolute;top:100%;right:0}.absence-menu button{text-align:left;width:100%;color:var(--ink);background:0 0;border:0;padding:7px 9px;display:block}.absence-menu button:hover{background:var(--theme-surface-soft,#f3f5f2)}.absence-menu .absence-delete{color:var(--theme-danger,#a33)}.absence-editor{border:1px solid var(--line);background:var(--theme-surface,#fff);border-radius:7px;margin-top:12px;padding:12px;position:relative}.absence-editor>b{font-size:13px}.absence-editor-actions{justify-content:flex-end;gap:8px;margin-top:10px;display:flex}.absence-editor [role=alert]{color:var(--theme-danger,#a33);font-size:13px}@media (max-width:600px){.absence-table{min-width:480px}}.medregister-settings{margin-top:24px;padding:20px}.medregister-settings form{flex-wrap:wrap;align-items:end;gap:12px;margin-top:14px;display:flex}.medregister-settings label{gap:5px;min-width:220px;display:grid}.medregister-settings input{border:1px solid var(--theme-border,#cdd5cd);border-radius:8px;padding:9px 10px}@property --tw-border-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}
.edit-session,.edit-presence{border:1px solid var(--theme-warning-line,#e8bc57);background:var(--theme-warning-soft,#fff8df);color:var(--theme-warning,#624715);text-align:left;border-radius:5px;flex-wrap:wrap;align-items:center;gap:3px 8px;padding:4px 7px;font-size:12px;font-weight:400;line-height:1.3;display:flex}.edit-session{margin:6px 0}.edit-session strong{font-size:inherit;font-weight:600}.edit-countdown{white-space:nowrap;font-variant-numeric:tabular-nums}.edit-countdown:before{content:"· "}.edit-presence{background:var(--theme-warning-soft,#fff3c7)}.editor-access{border:0;min-width:0;margin:0;padding:0}.editor-access:disabled{opacity:.85}:has(>.edit-presence){outline:2px solid var(--theme-warning-line,#e8bc57);outline-offset:-2px}.date-note-editor>.edit-session{justify-content:flex-start;gap:3px 8px;margin:0 0 3px}.employee-modal>.editor-access{border:0;margin:0;padding:0}.realtime-notice{z-index:20000;background:var(--theme-warning-soft,#fff3cd);border:1px solid var(--theme-warning-line,#deb347);box-shadow:0 4px 20px var(--theme-shadow,#0002);border-radius:8px;padding:14px;position:fixed;bottom:20px;left:20px;right:20px}.realtime-notice button{float:right}.crew-edit-card.drop-target{outline:3px dashed var(--theme-accent,#156b4d)}.directory-row>.edit-presence,.vehicle-row>.edit-presence,.users-row>.edit-presence{grid-column:1/-1}.reference-edit{flex-wrap:wrap}.reference-edit>.edit-session{flex-basis:100%}.reference-edit>.editor-access{flex:1;gap:8px;display:flex}@media print{.edit-presence,.edit-session{display:none!important}:has(>.edit-presence){outline:none}}.sync-status{z-index:25;background:var(--theme-success-soft,#e8f2ed);color:var(--theme-success,#275b43);box-shadow:0 1px 4px var(--theme-shadow,#0002);border-radius:5px;padding:3px 7px;font-size:11px;line-height:1.3;position:fixed;bottom:8px;right:10px}.sync-fallback,.sync-connecting{background:var(--theme-warning-soft,#fff3cd);color:var(--theme-warning,#624715)}.sync-offline{background:var(--theme-danger-soft,#fff0f0);color:var(--theme-danger,#921b1b)}@media print{.sync-status{display:none}}
.hero-actions{align-items:center;gap:10px;display:flex}.secondary-link{color:var(--green);border:1px solid var(--theme-accent-line,#bcd3c6);background:var(--theme-surface,#fff);border-radius:10px;align-items:center;padding:10px 14px;font-size:13px;font-weight:700;text-decoration:none;display:inline-flex}.reference-grid{grid-template-columns:1fr 1fr;gap:18px;max-width:1500px;margin:0 auto 50px;padding:0 4vw;display:grid}.reference-card{background:var(--theme-surface,#fff);border:1px solid var(--line);border-radius:18px;overflow:hidden}.reference-card .panel-heading>strong{color:var(--green);font-size:28px}.reference-add{border-bottom:1px solid var(--line);gap:9px;padding:18px;display:flex}.reference-add input{border:1px solid var(--line);border-radius:9px;flex:1;min-width:0;padding:11px 13px}.position-reference-add{grid-template-columns:minmax(0,1fr) minmax(150px,.65fr) auto;display:grid}.reference-list>.reference-row{border-bottom:1px solid var(--theme-line,#edf0ed);justify-content:space-between;align-items:center;gap:12px;min-height:54px;padding:8px 12px 8px 20px;display:flex}.reference-list>.reference-row:last-child{border-bottom:0}.reference-value{gap:3px;display:grid}.reference-value small{color:var(--muted);font-size:11px}.reference-menu{position:relative}.menu-trigger{width:38px;height:36px;color:var(--theme-muted,#748078);letter-spacing:1px;cursor:pointer;background:0 0;border:0;border-radius:9px;font-weight:800}.menu-trigger:hover,.menu-trigger[aria-expanded=true]{background:var(--theme-surface-soft,#f0f4f1);color:var(--green)}.menu-popover{z-index:20;background:var(--theme-surface,#fff);border:1px solid var(--line);border-radius:10px;width:160px;padding:6px;position:absolute;top:40px;right:0;box-shadow:0 12px 32px #192d2126}.menu-popover button{text-align:left;cursor:pointer;background:0 0;border:0;border-radius:7px;width:100%;padding:10px;display:block}.menu-popover button:hover{background:var(--theme-surface-soft,#f2f5f3)}.menu-popover .danger{color:var(--theme-danger,#a43535)}.reference-edit{gap:8px;width:100%;display:flex}.reference-edit input{border:1px solid var(--theme-accent-line,#91b5a0);border-radius:8px;flex:1;min-width:0;padding:9px 11px}.save-reference,.cancel-reference{cursor:pointer;border:0;border-radius:8px;padding:8px 11px;font-weight:700}.save-reference{background:var(--green);color:var(--theme-on-accent,#fff)}.cancel-reference{background:var(--theme-surface-soft,#eef2ef);color:var(--theme-muted,#526057)}.page-error{max-width:1500px;color:var(--theme-danger,#a33);margin:-30px auto 40px;padding:0 4vw}@media (max-width:760px){.hero-actions{flex-direction:column;align-items:stretch;margin-top:18px}.reference-grid{grid-template-columns:1fr;padding:0 18px}.reference-add,.position-reference-add{grid-template-columns:1fr;display:grid}.reference-edit{grid-template-columns:1fr 1fr;display:grid}.reference-edit input{grid-column:1/-1}}
.vehicle-card{background:var(--theme-surface,#fff);border:1px solid var(--line);border-radius:18px;max-width:1500px;margin:0 auto 50px;overflow:hidden}.vehicle-card .directory-toolbar{justify-content:space-between}.vehicle-row{border-bottom:1px solid var(--theme-line,#edf0ed);grid-template-columns:1.2fr 1fr 1fr 220px;align-items:center;gap:18px;padding:14px 22px;display:grid}.vehicle-head{background:var(--theme-surface-soft,#f7f9f6);color:var(--muted);text-transform:uppercase;font-size:11px;font-weight:700}.status-ok,.status-off{border-radius:20px;width:max-content;padding:6px 10px;font-size:12px;font-weight:700}.status-ok{background:var(--theme-success-soft,#e8f5ed);color:var(--green)}.status-off{background:var(--theme-danger-soft,#f9e8e8);color:var(--theme-danger,#a43535)}.row-actions{justify-content:flex-end;gap:7px;display:flex}.row-actions button{border:1px solid var(--line);background:var(--theme-surface,#fff);color:var(--green);border-radius:8px;padding:7px 9px}.row-actions .danger{color:var(--theme-danger,#a43535)}.vehicle-modal{background:var(--theme-surface,#fff);width:min(520px,100%);box-shadow:0 24px 70px var(--theme-shadow,#17221d40);border-radius:18px;padding:26px}.vehicle-modal h2{margin:0 0 22px}.vehicle-modal>label{color:var(--muted);gap:7px;margin:14px 0;font-size:12px;display:grid}.vehicle-modal input{border:1px solid var(--line);border-radius:9px;padding:11px}.vehicle-modal .check-line{color:var(--ink);align-items:center;font-size:14px;display:flex}.vehicle-modal .check-line input{width:auto}@media (max-width:760px){.vehicle-card{margin:0 18px 40px}.vehicle-head{display:none}.vehicle-row{grid-template-columns:1fr 1fr}.row-actions{grid-column:1/-1;justify-content:flex-start}}@media (min-width:761px){.vehicle-card{max-width:none;margin-inline:4vw}}
.month-switcher label{text-align:center;cursor:pointer;min-width:130px;font-size:14px;font-weight:700;position:relative}.month-switcher label input{opacity:0;cursor:pointer;width:100%;position:absolute;inset:0}.stats-single{grid-template-columns:1fr}.stats-single article{justify-content:space-between;display:flex}.assignment-totals{gap:10px;display:flex}.assignment-totals b{border-radius:20px;padding:8px 12px;font-size:13px}.day-total{background:var(--theme-warning-soft,#fff2d1);color:var(--theme-warning,#8b640a)}.night-total{background:var(--theme-info-soft,#e8edf6);color:var(--theme-info,#435d83)}.calendar-footer{justify-content:flex-end;padding:0 20px 20px;display:flex}.danger-link,.danger-action{border:1px solid var(--theme-danger-line,#dbaaaa);background:var(--theme-surface,#fff);color:var(--theme-danger,#a33);border-radius:9px;padding:10px 14px;font-weight:700}.modal-actions>.danger-action{background:var(--theme-danger-solid,#a33);color:#fff;border-color:var(--theme-danger-line,#a33)}.danger-action:disabled{opacity:.5;cursor:not-allowed}.delete-confirmation{margin:0 0 10px;line-height:1.5}.delete-count{background:var(--theme-danger-soft,#fff4f4);color:var(--theme-danger,#713333);border-radius:10px;margin:0;padding:14px}.calendar-panel{justify-self:start;width:100%}.calendar-grid button{position:relative}.calendar-note-dot{border:1px solid var(--theme-line,#fff);background:var(--theme-danger-solid,#d62929);width:5px;height:5px;box-shadow:0 0 0 1px var(--theme-shadow,#b91c1c);border-radius:50%;position:absolute;top:3px;left:3px}.status-overview{max-width:none}.schedule-list{max-height:none;overflow:visible}@media (min-width:981px){.workspace{grid-template-columns:minmax(360px,420px) minmax(0,1fr);max-width:none}}
.login-page{background:linear-gradient(145deg,var(--theme-surface-soft,#eef4ef),var(--theme-surface-soft,#f8faf7));place-items:center;min-height:100vh;padding:24px;display:grid}.login-card{background:var(--theme-surface,#fff);border:1px solid var(--line);width:min(430px,100%);box-shadow:0 20px 60px var(--theme-shadow,#173c2a18);border-radius:20px;padding:32px}.login-brand{align-items:center;gap:12px;margin-bottom:34px;display:flex}.login-brand>div{display:grid}.login-brand small{color:var(--muted)}.login-card h1{margin:0 0 8px;font-size:32px}.login-card>p{color:var(--muted);margin:0 0 24px}.login-form{gap:15px;display:grid}.login-form label{color:var(--muted);gap:7px;font-size:13px;display:grid}.login-form input{border:1px solid var(--line);border-radius:10px;padding:12px}.login-form .primary{margin-top:6px}.logout-form{margin:0}.logout-button{background:0 0;border:0;padding:0}.logout-button .avatar{cursor:pointer}.password-cancel,.password-logout{text-align:center;margin-top:14px;font-size:13px;display:block}.password-cancel{color:var(--green)}.password-logout button{color:var(--muted);background:0 0;border:0;text-decoration:underline}.password-requirements{border:1px solid var(--theme-line,#d7e5db);background:var(--theme-surface-soft,#f3f7f4);border-radius:12px;margin:0 0 20px;padding:14px 16px;font-size:12px;line-height:1.45}.password-requirements strong{margin-bottom:6px;display:block}.password-requirements ul{margin:0 0 7px;padding-left:18px}.password-requirements small{color:var(--muted)}.password-requirements a{color:var(--green)}
.users-card{background:var(--theme-surface,#fff);border:1px solid var(--line);border-radius:18px;max-width:1500px;margin:0 auto 50px;overflow:hidden}.users-card .directory-toolbar{justify-content:space-between}.users-row{border-bottom:1px solid var(--theme-line,#edf0ed);grid-template-columns:1.3fr 1fr 1fr .8fr 220px;align-items:center;gap:16px;padding:14px 22px;font-size:13px;display:grid}.users-head{background:var(--theme-surface-soft,#f7f9f6);color:var(--muted);text-transform:uppercase;font-size:11px;font-weight:700}.user-modal{background:var(--theme-surface,#fff);width:min(560px,100%);box-shadow:0 24px 70px var(--theme-shadow,#17221d40);border-radius:18px;padding:26px}.user-modal h2{margin:0 0 22px}.user-modal>label{color:var(--muted);gap:7px;margin:13px 0;font-size:12px;display:grid}.user-modal input,.user-modal select{border:1px solid var(--line);background:var(--theme-surface,#fff);border-radius:9px;padding:11px}.user-modal .check-line{color:var(--ink);align-items:center;font-size:14px;display:flex}.user-modal .check-line input{width:auto}@media (max-width:800px){.users-card{margin:0 18px 40px}.users-head{display:none}.users-row{grid-template-columns:1fr 1fr}.users-row .row-actions{grid-column:1/-1}}@media (min-width:801px){.users-card{max-width:none;margin-inline:4vw}}.user-permissions{border:1px solid var(--border);border-radius:10px;margin-top:12px;padding:10px 14px}.user-permissions legend{padding:0 6px;font-weight:700}.user-permissions .check-line{margin:7px 0}
.vehicle-table{overflow-x:auto}.vehicle-modal{overscroll-behavior:contain;max-height:calc(100vh - 32px);overflow-y:auto}.vehicle-modal .modal-actions{background:var(--theme-surface,#fff);z-index:2;border-top:1px solid var(--line);padding:14px 0 4px;position:sticky;bottom:-26px}.vehicle-row{grid-template-columns:minmax(150px,1.1fr) 110px 105px 105px 105px 110px minmax(210px,1.4fr) 130px;min-width:1180px;font-size:13px}.vehicle-brand{gap:4px;display:grid}.vehicle-brand small{background:var(--theme-info-soft,#e8eef8);width:max-content;color:var(--theme-info,#3f5f8e);border-radius:10px;padding:3px 7px;font-size:10px;font-weight:700}.vehicle-notes{white-space:pre-line;overflow-wrap:anywhere;line-height:1.35}.expired-date{background:var(--theme-danger-soft,#ffd9e2);color:var(--theme-danger,#e00020);border-radius:7px;width:max-content;padding:7px 8px;font-weight:800}.vehicle-brand-fields{grid-template-columns:1fr auto;align-items:end;gap:14px;display:grid}.vehicle-brand-fields>label:first-child{color:var(--muted);gap:7px;font-size:12px;display:grid}.vehicle-brand-fields .check-line{margin-bottom:11px}.vehicle-date-fields{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.vehicle-date-fields label{color:var(--muted);gap:7px;margin:14px 0;font-size:12px;display:grid}.vehicle-modal textarea{border:1px solid var(--line);resize:vertical;font:inherit;border-radius:9px;padding:11px}.vehicle-modal .expired-date-input{background:var(--theme-danger-soft,#ffd9e2);color:var(--theme-danger,#e00020);border-color:var(--theme-danger-line,#ff8196);font-weight:800}.notes-counter{text-align:right;color:var(--muted);font-size:10px}.vehicle-modal>label{position:relative}.vehicle-card-link{text-align:left;font:inherit;color:inherit;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:9px;padding:6px}.vehicle-card-link:hover,.vehicle-card-link:focus-visible{background:var(--theme-surface-hover,#eef7f1);border-color:var(--theme-accent-line,#afd1bb);outline:none}.vehicle-modal input:disabled,.vehicle-modal textarea:disabled{opacity:1;color:var(--ink);background:var(--theme-surface-soft,#f3f5f3);cursor:default}@media (max-width:760px){.vehicle-row{grid-template-columns:1fr 1fr;min-width:0}.vehicle-table{overflow:visible}.vehicle-row>span:nth-child(3),.vehicle-row>span:nth-child(4),.vehicle-row>span:nth-child(5),.vehicle-row>.vehicle-notes{grid-column:1/-1}.vehicle-brand-fields,.vehicle-date-fields{grid-template-columns:1fr}.vehicle-modal{max-height:calc(100vh - 16px);padding:20px}.vehicle-modal .modal-actions{bottom:-20px}}
.schedule-tabs{gap:5px;max-width:1500px;margin:0 auto 14px;padding:0 4vw;display:flex}.schedule-tabs button{border:1px solid var(--line);background:var(--theme-surface,#fff);min-width:130px;color:var(--muted);padding:10px 18px;font-weight:700}.schedule-tabs button:first-child{border-radius:11px 0 0 11px}.schedule-tabs button:last-child{border-radius:0 11px 11px 0}.schedule-tabs .active{background:var(--green);border-color:var(--green);color:var(--theme-on-accent,#fff)}.status-overview-single{grid-template-columns:1fr}.line-personnel-row{grid-template-columns:100px minmax(220px,1.5fr) minmax(160px,1fr) 130px 126px}.line-personnel-card .directory-table{min-width:850px}.crew-schedule-panel{min-width:0}.crew-board{border-top:1px solid var(--line);max-height:620px;overflow:auto}.crew-view-shift{padding:18px}.crew-view-heading{align-items:center;gap:10px;margin-bottom:14px;display:flex}.crew-view-heading h3{margin:0;font-size:16px}.crew-view-heading small{color:var(--muted);font-size:11px}.crew-view-grid{grid-template-columns:repeat(auto-fill,180px);justify-content:start;gap:11px;display:grid}.crew-view-card{border:1px solid var(--line);border-radius:12px;flex-direction:column;width:180px;display:flex;overflow:hidden}.crew-view-card-head{background:var(--theme-surface-soft,#f5f8f5);justify-content:space-between;align-items:center;padding:9px 11px;display:flex}.crew-view-card-head>span{background:var(--theme-accent-soft,#deeee4);min-width:25px;color:var(--green);text-align:center;border-radius:14px;padding:4px 7px;font-size:11px;font-weight:800}.crew-view-card ul{margin:0;padding:0;list-style:none}.crew-view-card li{border-top:1px solid var(--theme-line,#edf0ed);gap:1px;padding:5px 9px;line-height:1.15;display:grid}.crew-view-card li small,.crew-view-card>p{color:var(--muted);font-size:8px}.crew-view-card>p{margin:0;padding:9px}.crew-vehicle{font-weight:800;color:var(--green)!important}.crew-view-tasks{border-top:1px solid var(--theme-line,#edf0ed);background:var(--theme-surface-soft,#fbfcfb);margin-top:auto;padding:6px 9px}.crew-view-tasks small{color:var(--muted);font-size:8px;font-weight:700}.crew-view-tasks p{overflow-wrap:anywhere;margin:2px 0 0;font-size:9px;line-height:1.2}.crew-empty{border:1px dashed var(--theme-line,#bfd0c4);color:var(--muted);text-align:center;border-radius:12px;gap:4px;padding:20px;display:grid}.crew-empty strong{color:var(--ink);font-size:13px}.crew-empty small{font-size:11px}.crew-modal{background:var(--theme-surface,#fff);width:min(1260px,100%);max-height:94vh;box-shadow:0 24px 70px var(--theme-shadow,#17221d40);border-radius:18px;padding:26px;overflow:auto}.crew-modal h2{margin:0}.crew-editor-help{color:var(--muted);margin:14px 0;font-size:12px}.crew-editor-shifts{gap:20px;display:grid}.crew-editor-shift{border:1px solid var(--line);border-radius:14px;overflow:hidden}.crew-editor-shift.day{border-top:4px solid var(--theme-warning-solid,#e1a727)}.crew-editor-shift.night{border-top:4px solid var(--theme-info-line,#435d83)}.crew-editor-heading{background:var(--theme-surface-soft,#f7f9f7);justify-content:space-between;align-items:center;padding:12px 14px;display:flex}.crew-editor-heading>div{align-items:center;gap:10px;display:flex}.crew-editor-heading h3{margin:0;font-size:15px}.crew-editor-heading small{color:var(--muted);font-size:10px}.crew-editor-grid{background:var(--theme-surface-soft,#fbfcfb);grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:14px;display:grid}.crew-edit-card{border:1px solid var(--line);background:var(--theme-surface,#fff);border-radius:12px;flex-direction:column;min-width:0;display:flex;overflow:hidden}.crew-edit-card-head{background:var(--theme-surface-soft,#f3f6f3);gap:8px;padding:7px;display:flex}.crew-edit-card-head select,.crew-add-person{border:1px solid var(--line);background:var(--theme-surface,#fff);width:100%;min-width:0;color:var(--ink);border-radius:8px;padding:8px}.crew-edit-card-head select{font-weight:800}.crew-edit-card-head button,.crew-member>button{background:var(--theme-surface,#fff);width:30px;color:var(--theme-danger,#a33);border:0;border-radius:8px;flex:none;font-size:18px}.crew-member-list{min-height:48px}.crew-member{border-top:1px solid var(--theme-line,#edf0ed);cursor:grab;grid-template-columns:14px 1fr 24px;align-items:center;gap:4px;padding:5px 7px;line-height:1.1;display:grid}.crew-member:active{cursor:grabbing}.crew-member>div{gap:1px;min-width:0;display:grid}.crew-member strong{overflow-wrap:anywhere;font-size:11px}.crew-member small{color:var(--muted);overflow-wrap:anywhere;font-size:8px}.drag-handle{color:var(--theme-muted,#95a29a);font-size:14px}.crew-member>button{background:var(--theme-danger-soft,#f8eeee);width:23px;height:23px;font-size:14px}.crew-drop-zone{border:1px dashed var(--theme-line,#c9d5cc);color:var(--theme-muted,#89938c);text-align:center;border-radius:8px;margin:7px;padding:10px 5px;font-size:9px}.crew-add-person{width:calc(100% - 14px);color:var(--green);margin:7px;font-size:10px}@media (max-width:1050px){.crew-editor-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:650px){.schedule-tabs{padding:0 18px}.schedule-tabs button{flex:1;min-width:0}.crew-view-grid,.crew-editor-grid{grid-template-columns:1fr}.crew-modal{padding:18px}.crew-editor-heading{align-items:flex-start;gap:10px}.crew-editor-heading .add-shift-assignment,.crew-schedule-panel .schedule-heading .primary{font-size:11px}.crew-schedule-panel .schedule-heading .primary:after{content:none}}.schedule-side{min-width:0}.schedule-tabs-panel{max-width:none;margin:0 0 9px;padding:0}.crew-view-heading .primary{margin-left:auto}.crew-modal{width:min(1480px,100%)}.crew-editor-grid{grid-template-columns:repeat(auto-fill,180px);justify-content:start;overflow:visible}.crew-edit-card{width:180px}.crew-edit-card-head{gap:5px}.crew-edit-card-head select{padding-inline:6px}.crew-edit-card-head button{width:30px}.crew-card-drag-handle{color:var(--theme-muted,#7f8e85);cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;flex:0 0 14px;place-items:center;font-size:16px;display:grid}.crew-card-drag-handle:active{cursor:grabbing}.crew-tasks{color:var(--muted);gap:5px;margin-top:auto;padding:0 7px 7px;font-size:8px;font-weight:700;display:grid;position:relative}.crew-tasks textarea{resize:vertical;border:1px solid var(--line);background:var(--theme-surface,#fff);width:100%;min-height:48px;color:var(--ink);font:inherit;border-radius:8px;padding:6px;font-weight:400}.crew-tasks>small{color:var(--theme-muted,#929b95);font-size:7px;position:absolute;bottom:10px;right:12px}@media (max-width:650px){.schedule-tabs-panel{padding:0}.crew-editor-grid,.crew-view-grid{grid-template-columns:1fr;grid-auto-columns:auto;grid-auto-flow:row}.crew-edit-card,.crew-view-card{width:100%}.crew-view-heading{flex-wrap:wrap;align-items:flex-start}.crew-view-heading .primary{width:100%;margin-left:44px}}.crew-board{max-height:none;overflow:visible}.crew-view-shift{flex-direction:column;min-height:0;display:flex;overflow:visible}.crew-view-grid{grid-template-columns:repeat(auto-fill,180px);grid-auto-rows:1fr;justify-content:start;align-items:stretch;gap:11px;min-height:0;display:grid;overflow:visible}.crew-modal{flex-direction:column;max-height:96vh;padding:14px;display:flex;overflow:hidden}.crew-modal>.schedule-modal-head{flex:none;align-items:center}.crew-modal>.schedule-modal-head .eyebrow{margin-bottom:4px}.crew-modal>.schedule-modal-head h2{font-size:17px}.crew-modal>.schedule-modal-head .modal-close{width:32px;height:32px;font-size:21px}.crew-editor-help{flex:none;margin:7px 0;font-size:11px}.crew-editor-shift{flex-direction:column;flex:1;min-height:0;display:flex}.crew-editor-heading{flex:none;padding:7px 10px}.crew-editor-heading .shift-icon{border-radius:8px;width:29px;height:29px}.crew-editor-heading h3{font-size:14px}.crew-editor-heading .add-shift-assignment{padding:7px 10px}.crew-editor-grid{min-height:0;padding:10px;overflow:hidden auto}.crew-edit-card.dragging{opacity:.45;box-shadow:0 8px 24px var(--theme-shadow,#17221d33)}.crew-hired-vehicles{color:var(--muted);gap:3px;margin-top:auto;padding:0 7px 5px;font-size:8px;font-weight:700;display:grid}.crew-hired-vehicles textarea{resize:vertical;border:1px solid var(--line);background:var(--theme-surface,#fff);width:100%;min-height:40px;color:var(--ink);font:inherit;border-radius:7px;padding:5px;font-size:10px;font-weight:400;line-height:1.25}.crew-tasks{gap:3px;margin-top:0}.crew-tasks textarea{min-height:58px;font-size:10px;line-height:1.25}.crew-view-hired-vehicles{border-top:1px solid var(--theme-line,#edf0ed);background:var(--theme-surface-soft,#fbfcfb);margin-top:0;padding:5px 9px}.crew-view-hired-vehicles small{color:var(--muted);font-size:8px;font-weight:700}.crew-view-hired-vehicles p{overflow-wrap:anywhere;margin:2px 0 0;font-size:9px;line-height:1.2}.crew-view-hired-vehicles+.crew-view-tasks{margin-top:0}.crew-modal .schedule-save-actions{flex:none;margin:0 -14px -14px;padding:10px 14px 14px;position:static}@media (max-width:650px){.crew-view-grid{grid-template-columns:1fr;grid-auto-rows:auto}.crew-modal{padding:12px}.crew-modal .schedule-save-actions{margin:0 -12px -12px;padding:10px 12px 12px}}.crew-edit-card{position:relative;overflow:visible}.crew-edit-card.picker-open{z-index:10}.crew-member-list{flex:1}.crew-person-picker{flex:none;margin:7px;position:relative}.crew-add-person{text-align:left;justify-content:space-between;align-items:center;width:100%;margin:0;display:flex}.crew-person-options{z-index:20;border:1px solid var(--theme-line,#cbd9cf);background:var(--theme-surface,#fff);width:min(520px,100vw - 80px);max-height:300px;box-shadow:0 14px 34px var(--theme-shadow,#17221d33);border-radius:10px;position:absolute;top:calc(100% + 4px);left:0;overflow:auto}.crew-person-option-head,.crew-person-option{text-align:left;grid-template-columns:minmax(210px,1.7fr) 78px 58px minmax(100px,1fr);align-items:center;gap:8px;width:100%;padding:7px 9px;display:grid}.crew-person-option-head{z-index:1;background:var(--theme-surface-soft,#f0f4f1);color:var(--muted);text-transform:uppercase;font-size:8px;font-weight:800;position:sticky;top:0}.crew-person-option{border:0;border-top:1px solid var(--theme-line,#edf0ed);background:var(--theme-surface,#fff);color:var(--ink);cursor:pointer;font-size:10px}.crew-person-option:hover,.crew-person-option:focus-visible{background:var(--theme-surface-hover,#edf7f1);outline:none}.crew-person-option span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.crew-person-option span:first-child{font-weight:700}.crew-person-options>p{color:var(--muted);margin:0;padding:12px;font-size:10px}.crew-person-options{z-index:30;flex-direction:column;display:flex;position:fixed;overflow:hidden}.crew-person-search{border-bottom:1px solid var(--theme-line,#edf0ed);background:var(--theme-surface,#fff);flex:none;padding:8px}.crew-person-search input{border:1px solid var(--line);background:var(--theme-surface,#fff);width:100%;color:var(--ink);border-radius:7px;padding:8px 10px;font-size:12px}.crew-person-option-list{min-height:0;overflow:auto}.crew-person-option-list>p{color:var(--muted);margin:0;padding:12px;font-size:10px}.crew-person-option span:first-child:has(.crew-unavailable){white-space:normal}.crew-person-option span:first-child .crew-unavailable{text-overflow:ellipsis;white-space:nowrap;color:var(--theme-danger,#a33);font-size:9px;font-weight:600;display:block;overflow:hidden}.crew-member .crew-unavailable,.crew-view-card li .crew-unavailable{color:var(--theme-danger,#a33);font-size:9px;font-weight:700}.crew-import-modal{width:min(940px,100%)}.crew-schedule-file-card{border:1px solid var(--theme-line,#cddfd3);background:var(--theme-surface-soft,#f6faf7);border-radius:12px;justify-content:space-between;gap:16px;margin-bottom:14px;padding:14px 16px;display:flex}.crew-schedule-file-card>div{gap:4px;display:grid}.crew-schedule-file-card small,.crew-schedule-file-card span{color:var(--muted);font-size:11px}.crew-file-replace{grid-template-columns:1fr auto;align-items:end;gap:12px;margin-bottom:16px;display:grid}.crew-file-replace .import-file{margin:0}.crew-file-replace .primary{margin-bottom:1px}.crew-import-warning,.crew-import-conflict{background:var(--theme-warning-soft,#fff5e2);border:1px solid var(--theme-warning-line,#efd29a);color:var(--theme-warning,#6d511a);border-radius:11px;padding:13px 15px;font-size:12px}.crew-import-summary{grid-template-columns:repeat(3,1fr)}.crew-import-conflict{margin-top:12px}.crew-import-conflict p{margin:6px 0}.crew-import-conflict ul{max-height:110px;margin:8px 0;padding-left:20px;line-height:1.5;overflow:auto}.crew-import-conflict label{align-items:center;gap:8px;font-weight:700;display:flex}.crew-import-conflict input{width:16px;height:16px}.crew-import-groups{border:1px solid var(--line);border-radius:10px;margin-top:12px;padding:11px;font-size:12px}.crew-import-groups .import-preview-list{border:0}.crew-import-groups .import-preview-list small{white-space:normal;line-height:1.45}.crew-import-actions{justify-content:space-between;align-items:center}.crew-import-shift-options,.crew-import-action-buttons{align-items:center;gap:14px;display:flex}.crew-import-shift-options label{color:var(--ink);cursor:pointer;align-items:center;gap:7px;font-size:12px;display:flex}.crew-import-shift-options input{width:16px;height:16px;accent-color:var(--green);margin:0}.crew-import-action-buttons{gap:9px}.crew-import-action-buttons>button:not(.primary){border:1px solid var(--line);background:var(--theme-surface,#fff);border-radius:9px;padding:10px 14px}.form-notice{color:var(--green);font-size:12px;font-weight:700}@media (max-width:650px){.crew-file-replace{grid-template-columns:1fr}.crew-import-summary{grid-template-columns:1fr 1fr}.crew-import-actions{flex-direction:column;align-items:stretch}.crew-import-shift-options{flex-wrap:wrap}.crew-import-action-buttons{justify-content:flex-end}}.crew-view-shift+.crew-view-shift{border-top:4px solid var(--theme-info-line,#71849f)}.crew-shift-summary{flex:none}.crew-view-meta{align-items:center;gap:14px;margin-left:auto;display:flex}.crew-view-audit{text-align:right;gap:2px;display:grid}.crew-view-audit small{white-space:nowrap;font-size:10px;line-height:1.25}.crew-view-audit span{color:var(--ink);font-weight:700}.crew-view-actions{align-items:center;gap:8px;display:flex}.crew-view-actions .primary{margin-left:0}.crew-print-title{display:none}.crew-view-card-head>strong{font-size:14px}.crew-view-card li b{font-size:12px}.crew-view-card li small,.crew-view-card>p{font-size:9px;line-height:1.25}.crew-view-details{flex-direction:column;margin-top:auto;display:flex}.crew-view-hired-vehicles small,.crew-view-tasks small{font-size:9px}.crew-view-hired-vehicles p,.crew-view-tasks p{white-space:pre-wrap;font-size:10px;line-height:1.3}@media (max-width:650px){.crew-view-meta{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;width:calc(100% - 44px);margin-left:44px}.crew-view-audit{text-align:left}.crew-view-audit small{white-space:normal}.crew-view-heading .primary{width:auto;margin-left:0}}@media print{@page{size:A4 landscape;margin:0}body[data-crew-print-shift]{box-sizing:border-box;margin:0;padding:10mm}body[data-crew-print-shift] .app-shell:after,body[data-crew-print-shift]>:not(.app-shell),body[data-crew-print-shift] .app-shell>:not(.workspace),body[data-crew-print-shift] .workspace>:not(.schedule-side),body[data-crew-print-shift] .schedule-side>:not(.crew-schedule-panel),body[data-crew-print-shift] .crew-schedule-panel>:not(.crew-board),body[data-crew-print-shift] .crew-board>.crew-view-shift{display:none!important}body[data-crew-print-shift] .workspace,body[data-crew-print-shift] .schedule-side,body[data-crew-print-shift] .crew-schedule-panel,body[data-crew-print-shift] .crew-board{box-shadow:none;border:0;margin:0;padding:0;display:block!important}body[data-crew-print-shift=day] .crew-view-shift[data-crew-shift=day],body[data-crew-print-shift=night] .crew-view-shift[data-crew-shift=night]{color:#111;zoom:var(--crew-print-scale,1);break-inside:avoid;background:#fff;border:0;width:100%;padding:0;display:flex!important}.crew-print-title{margin:0 0 12px;font-size:18px;font-weight:800;display:block}.crew-view-actions,.crew-view-heading>.shift-icon,.crew-view-audit{display:none!important}.crew-view-heading{margin-bottom:12px}.crew-view-meta{margin-left:auto}.crew-view-grid{grid-template-columns:repeat(5,minmax(0,1fr));grid-auto-rows:auto;gap:8px}.crew-view-card{break-inside:avoid;border-color:#9ca59f;width:auto}.crew-view-card-head,.crew-view-hired-vehicles,.crew-view-tasks{background:#fff}.crew-view-card li{break-inside:avoid}}.crew-view-tasks .crew-task-text,.crew-tasks textarea{font-weight:700}.crew-medical-marks{vertical-align:middle;white-space:nowrap;gap:4px;margin-left:6px;display:inline-flex}.crew-medical-badge{border:1px solid;border-radius:5px;align-items:center;gap:3px;padding:1px 4px;font-size:10px;font-weight:800;line-height:1.3;display:inline-flex}.crew-medical-badge.not_passed{color:#697178;background:#f4f5f5}.crew-medical-badge.allowed{color:#087440;background:#e7f6ed}.crew-medical-badge.denied{color:#b52121;background:#fff0ed}.crew-medical-badge.completed{color:#175a96;background:#e8f3ff}.crew-medical-badge.unknown{color:#805500;background:#fff4d8}.schedule-tabs-row{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:9px;display:flex}.schedule-tabs-row .schedule-tabs-panel{margin-bottom:0}.medical-visibility-toggle{color:var(--ink);cursor:pointer;align-items:center;gap:7px;font-size:12px;font-weight:600;display:inline-flex}.medical-visibility-toggle input{accent-color:var(--green);cursor:pointer;width:16px;height:16px;margin:0}@media (max-width:650px){.schedule-tabs-row .schedule-tabs-panel{flex:100%}}.crew-vehicle.crew-vehicle-broken{color:var(--theme-danger,#e00000)!important}.crew-medical-marks.stale{white-space:normal;flex-wrap:wrap;margin-left:0;display:flex}.crew-medical-stale{white-space:normal;color:#805500;flex-direction:column;flex-basis:100%;font-size:10px;line-height:1.3;display:inline-flex}.crew-medical-stale span{font-size:9px;font-weight:400}
.program-changes-card{background:var(--theme-surface,#fff);border:1px solid var(--line);border-radius:18px;max-width:1100px;margin:0 auto 50px;overflow:hidden}.program-changes-toolbar{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:18px 22px;display:flex}.program-changes-toolbar span{color:var(--muted);font-size:12px}.program-changes-list{display:grid}.program-change{border-bottom:1px solid var(--theme-line,#edf0ed);padding:24px 26px}.program-change:last-child{border-bottom:0}.program-change-heading{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.program-change-heading time{color:var(--green);text-transform:uppercase;margin-bottom:6px;font-size:11px;font-weight:800;display:block}.program-change h2{margin:0;font-size:21px}.program-change>p{white-space:pre-wrap;overflow-wrap:anywhere;color:var(--theme-ink,#3f4b44);margin:14px 0 0;font-size:14px;line-height:1.65}.program-change-actions{gap:7px;display:flex}.program-change-actions button{border:1px solid var(--line);background:var(--theme-surface,#fff);color:var(--green);border-radius:8px;padding:8px 10px;font-size:12px}.program-change-actions .danger{color:var(--theme-danger,#a33);border-color:var(--theme-danger-line,#e3bcbc)}.program-change footer{color:var(--muted);flex-wrap:wrap;align-items:center;gap:6px;margin-top:17px;font-size:10px;display:flex}.program-change footer small{background:var(--theme-accent-soft,#eaf5ef);color:var(--green);border-radius:12px;padding:4px 7px;font-weight:700}.program-changes-empty{text-align:center;color:var(--muted);place-items:center;gap:8px;padding:70px 24px;display:grid}.program-changes-empty span{font-size:34px}.program-changes-empty strong{color:var(--ink)}.program-changes-empty p{margin:0}.program-change-modal{background:var(--theme-surface,#fff);width:min(650px,100%);max-height:92vh;box-shadow:0 24px 70px var(--theme-shadow,#17221d40);border-radius:18px;padding:26px;overflow:auto}.program-change-modal h2{margin:0 0 22px}.program-change-modal>label{color:var(--muted);gap:7px;margin:14px 0;font-size:12px;display:grid}.program-change-modal input,.program-change-modal textarea{border:1px solid var(--line);background:var(--theme-surface,#fff);width:100%;color:var(--ink);border-radius:9px;padding:11px}.program-change-modal textarea{resize:vertical;line-height:1.5}.program-change-modal fieldset{border:1px solid var(--line);border-radius:12px;margin:18px 0 0;padding:14px}.program-change-modal legend{padding:0 6px;font-size:12px;font-weight:700}.program-change-modal fieldset>p{color:var(--muted);margin:0 0 12px;font-size:11px}.program-change-role-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;display:grid}.program-change-role-grid label{background:var(--theme-surface-soft,#f6f8f5);border-radius:8px;align-items:center;gap:8px;padding:9px;font-size:12px;display:flex}.program-change-role-grid input{width:auto;accent-color:var(--green)}@media (max-width:1140px){.program-changes-card{margin-inline:4vw}}@media (max-width:650px){.program-changes-card{margin:0 18px 40px}.program-change{padding:20px 18px}.program-change-heading{display:grid}.program-change-actions{width:100%}.program-change-actions button{flex:1}.program-change-role-grid{grid-template-columns:1fr}.program-change-modal{padding:22px}}
.topbar,.topbar-single{grid-template-columns:auto minmax(0,1fr) auto;gap:18px}.brand-group{align-items:center;gap:8px;min-width:0;display:flex}.header-center{justify-content:center;min-width:0}.brand-group .install-app-button{border-radius:7px;padding:5px 8px;font-size:11px;line-height:1.25}.topbar nav{flex-wrap:wrap;justify-content:center}.schedule-side>.schedule-panel{background:0 0;border:0;border-radius:0;overflow:visible}.schedule-panel>.schedule-heading{padding:16px 4px}.schedule-panel>.date-notes{border:1px solid var(--line);background:var(--theme-surface-soft,#fafbf8);border-radius:12px;margin:0 0 16px}.crew-board,.assignments-area{border:1px solid var(--line);background:var(--theme-surface,#fff);border-radius:12px;overflow:hidden}.crew-view-shift>.edit-presence,.assignments-area>.edit-presence{margin:8px 12px 0}.assignments-heading{justify-content:space-between;align-items:center;gap:12px;padding:16px 18px;display:flex}.assignments-heading h3{margin:0;font-size:16px}.schedule-heading-actions,.crew-view-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.schedule-heading-actions .schedule-secondary,.crew-view-actions .schedule-secondary{border-radius:7px;min-height:30px;padding:6px 9px;font-size:11px;line-height:1.25}.crew-view-heading{flex-wrap:wrap}.crew-view-meta{flex-wrap:wrap;justify-content:flex-end}.employee-card-name{cursor:pointer;border-radius:3px}.employee-card-name:hover{color:var(--green);-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.employee-card-name:focus-visible{outline:2px solid var(--green);outline-offset:2px}.employee-card-backdrop{z-index:40}@media (max-width:1150px){.topbar,.topbar-single{grid-template-columns:minmax(0,1fr) auto;gap:10px;height:auto;min-height:74px;padding-block:10px}.header-center{grid-area:2/1/auto/-1}.topbar-single .user{grid-column:2}}@media (max-width:650px){.brand-group{flex-wrap:wrap;gap:5px 8px}.brand-mark{width:36px;height:36px}.brand-vehicle{width:32px;height:32px}.brand{gap:8px}.brand strong{font-size:14px}.assignments-heading{flex-direction:column;align-items:flex-start;padding:14px}.crew-view-meta{justify-content:flex-start;margin-left:0}.crew-view-audit{text-align:left}.schedule-panel>.schedule-heading{padding:14px 2px}}@media print{.employee-card-name{color:inherit;text-decoration:none}.crew-board>.edit-presence{display:none!important}}button.edit-launcher{position:relative}.edit-launcher-size{justify-content:center;align-items:center;display:inline-flex}.is-observing>.edit-launcher-size{visibility:hidden}.edit-launcher-label{white-space:nowrap;flex-direction:column;justify-content:center;align-items:center;font-size:12px;line-height:1.05;display:flex;position:absolute;inset:2px 4px;overflow:hidden}:is(.modal-actions:has(>.save-error),.note-save-actions){flex-wrap:wrap}.save-error{border:1px solid var(--theme-danger-line,#ca4545);border-left:4px solid var(--theme-danger-line,#b42323);background:var(--theme-danger-soft,#fff0f0);color:var(--theme-danger,#921b1b);text-align:left;white-space:normal;border-radius:7px;flex-direction:column;flex:0 0 100%;grid-column:1/-1;gap:3px;margin:0 0 3px;padding:10px 12px;font-size:13px;line-height:1.4;display:flex}.save-error strong{font-size:inherit}.save-error span{color:inherit}.note-save-actions{justify-content:flex-end;gap:6px;display:flex}.date-note-card footer{flex-wrap:wrap;justify-content:flex-end}.date-note-card footer>small{flex:100%}.date-note-card footer>.copy-note{flex:none;justify-content:center;align-items:center;display:inline-flex}.copy-note-backdrop{z-index:1000}.copy-note-dialog{background:var(--theme-surface,#fff);width:min(430px,100%);box-shadow:0 20px 60px var(--theme-shadow,#17221d40);border-radius:16px;padding:24px}.copy-note-dialog h2{margin:0 0 18px;font-size:20px}.copy-note-dialog label{gap:8px;margin-top:14px;font-size:14px;display:grid}.copy-note-dialog input{border:1px solid var(--line);border-radius:8px;width:100%;padding:10px}.crew-view-shift>.edit-presence{margin:0 0 12px}.employee-modal .form-grid>.availability-fields{grid-column:1/-1;margin-top:0}
.compact-employee-modal{border-radius:12px;flex-direction:column;width:min(760px,100%);max-height:94dvh;padding:0;display:flex;overflow:hidden}.employee-modal-heading{justify-content:space-between;align-items:center;gap:12px;padding:16px 20px 10px;display:flex}.employee-modal-heading h2{margin:0;font-size:21px}.employee-modal-heading .modal-close{width:30px;height:30px;padding:0;font-size:24px}.employee-modal-body{scrollbar-gutter:stable;min-height:0;padding:0 20px 12px;overflow:auto}.compact-employee-modal .editor-access{border:0;min-width:0;margin:0;padding:0}.compact-employee-modal label{gap:4px;min-width:0;font-size:12px}.compact-employee-modal input,.compact-employee-modal select{border-radius:5px;min-width:0;height:32px;padding:5px 8px;font-size:14px}.compact-employee-modal input[type=checkbox]{width:16px;height:16px;accent-color:var(--green);flex:none;margin:0}.compact-employee-modal .employee-type-switch{border-radius:7px;margin:0 0 12px;padding:3px}.compact-employee-modal .employee-type-switch button{border-radius:5px;padding:6px;font-size:13px}.compact-employee-modal .employee-type-display{margin-bottom:12px;padding:5px 9px}.employee-identity-grid{grid-template-columns:minmax(0,1fr) 155px;gap:12px;display:grid}.employee-assignment-grid{grid-template-columns:minmax(0,2fr) minmax(0,1fr) 110px;gap:12px;margin-top:12px;display:grid}.employee-absence{background:var(--theme-surface-soft,#f5f7f4);border-radius:6px;margin-top:12px;padding:8px 10px}.compact-employee-modal .compact-check{min-height:24px;color:var(--ink);white-space:nowrap;cursor:pointer;align-items:center;gap:7px;font-size:13px;display:flex}.compact-check:has(input:disabled){color:var(--muted);cursor:default}.employee-absence-details{grid-template-columns:145px 145px minmax(0,1fr);gap:10px;margin-top:8px;display:grid}.compact-employee-modal .employee-section{border:0;border-top:1px solid var(--line);border-radius:0;min-width:0;margin:14px 0 0;padding:10px 0 0}.compact-employee-modal .employee-section legend{color:var(--ink);padding:0 8px 0 0;font-size:14px;font-weight:700}.employee-electrical-grid{grid-template-columns:220px 250px;gap:12px;display:grid}.employee-rights-checks{flex-wrap:wrap;gap:5px 18px;margin-top:10px;display:flex}.employee-check-dates{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:10px;margin-top:8px;display:grid}.employee-check-dates:empty{display:none}.employee-vehicle-count{color:var(--muted);text-align:right;margin:0 0 6px;font-size:11px}.compact-employee-modal .vehicle-options{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:6px}.compact-employee-modal .vehicle-options label{border:1px solid var(--line);border-radius:5px;gap:6px;padding:5px 7px;font-size:12px}.compact-employee-modal .vehicle-options label:has(input:checked){background:var(--theme-accent-soft,#eaf3ee);border-color:var(--theme-accent-line,#aecabd)}.compact-employee-modal .preferred-vehicles-fieldset{gap:8px}.compact-employee-modal .preferred-vehicle-list{flex-wrap:wrap;gap:6px;display:flex}.compact-employee-modal .preferred-vehicle-list>div{border-radius:7px;gap:5px;padding:4px 6px;font-size:12px;display:flex}.compact-employee-modal .preferred-vehicle-list b{width:20px;height:20px}.compact-employee-modal .preferred-vehicle-list button{border-radius:4px;width:25px;height:25px;padding:0}.compact-employee-modal .add-preferred-label{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.compact-employee-modal .add-preferred-label select{width:auto;max-width:100%}.compact-employee-modal .modal-actions{border-top:1px solid var(--line);background:var(--theme-surface,#fff);flex:none;align-items:center;margin:0;padding:12px 20px}.compact-employee-modal .modal-actions>small{color:var(--muted);margin-right:auto;font-size:11px}.compact-employee-modal .modal-actions>button{border-radius:7px;padding:8px 14px}.compact-employee-modal .save-error{max-height:20vh;overflow:auto}.directory-hero{gap:20px;max-width:none}.employee-action-menu{position:relative}.employee-action-menu summary{cursor:pointer;border:1px solid var(--line);width:36px;height:36px;color:var(--muted);border-radius:8px;place-items:center;font-size:13px;list-style:none;display:grid}.employee-action-menu summary::-webkit-details-marker{display:none}.employee-action-menu summary:hover,.employee-action-menu[open] summary{background:var(--theme-surface-hover,#edf4ef);color:var(--green)}.employee-row-actions .employee-action-menu>button{z-index:5;border:1px solid var(--theme-danger-line,#e3bcbc);background:var(--theme-surface,#fff);width:165px;padding:8px;font-size:12px;position:absolute;top:0;right:0;transform:translate(-42px);box-shadow:0 4px 16px #17221d20}@media screen{.crew-view-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,200px),1fr));grid-auto-rows:auto;align-items:stretch;gap:12px}.crew-view-card{width:100%;min-width:0}.crew-view-card li{gap:3px;padding:7px 10px;line-height:1.3}.crew-view-card li b{font-size:14px}.crew-view-card li small,.crew-view-card>p{font-size:11px;line-height:1.35}.crew-view-hired-vehicles small,.crew-view-tasks small{font-size:11px}.crew-view-hired-vehicles p,.crew-view-tasks p{font-size:13px;line-height:1.4}.crew-view-tasks .crew-task-text:not(.expanded){-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}}.crew-task-toggle{border:1px solid var(--theme-accent-line,#aecabd);background:var(--theme-accent-soft,#eaf3ee);color:var(--green);cursor:pointer;border-radius:6px;margin-top:7px;padding:5px 8px;font-size:12px;font-weight:700}.crew-task-toggle.pulse{animation:2.2s ease-in-out infinite task-expand-pulse}@keyframes task-expand-pulse{0%,to{background:var(--theme-accent-soft,#eaf3ee);box-shadow:0 0 #156b4d00}50%{background:var(--theme-surface-hover,#d9eddf);box-shadow:0 0 0 3px #156b4d25}}@media (prefers-reduced-motion:reduce){.crew-task-toggle.pulse{border:2px solid var(--green);animation:none}}.status-overview article:not(:has(ul)){border-radius:10px;flex-wrap:wrap;align-items:center;gap:4px 14px;padding:10px 16px;display:flex}.status-overview article:not(:has(ul)) h3{margin:0}.schedule-panel>.date-notes-empty{margin-bottom:10px;padding:8px 12px}.date-notes-empty .date-note-grid{display:none}.calendar-today{border:1px solid var(--theme-accent-line,#bcd3c6);background:var(--theme-surface,#fff);color:var(--green);cursor:pointer;border-radius:6px;padding:5px 8px;font-size:12px;font-weight:700}.calendar-heading-actions{flex-wrap:wrap}.test-environment-badge{border:1px solid var(--theme-warning-line,#dfc47d);background:var(--theme-warning-soft,#fff3d7);color:var(--theme-warning,#765414);white-space:nowrap;border-radius:6px;padding:4px 7px;font-size:11px;font-weight:700}@media (max-width:650px){.compact-employee-modal{max-height:96dvh}.employee-modal-heading{padding:12px 12px 8px}.employee-modal-heading h2{font-size:18px}.employee-modal-body{padding:0 12px 10px}.employee-identity-grid{grid-template-columns:minmax(0,1fr) 110px;gap:8px}.employee-assignment-grid{grid-template-columns:1fr 1fr;gap:8px}.employee-assignment-grid>label:first-child{grid-column:1/-1}.employee-electrical-grid,.employee-absence-details{grid-template-columns:1fr 1fr;gap:8px}.employee-absence-details>label:last-child{grid-column:1/-1}.employee-rights-checks{gap:4px 14px}.compact-employee-modal .modal-actions{gap:6px;padding:10px 12px}.compact-employee-modal .modal-actions>small{flex-basis:100%}.directory-hero .hero-actions .primary{margin-top:0}}@media print{.crew-view-tasks .crew-task-text{white-space:pre-wrap;-webkit-line-clamp:unset!important;height:auto!important;max-height:none!important;display:block!important;overflow:visible!important}.crew-task-toggle,.test-environment-badge{animation:none!important;display:none!important}}
.employee-training-general{margin:16px 0}.employee-training-general h3{margin:0 0 10px;font-size:14px}.employee-training-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.employee-training-grid>div{border:1px solid var(--line);border-radius:8px;gap:4px;min-width:0;padding:9px;display:grid}.employee-training-grid small,.employee-training-row small{color:var(--muted);font-size:11px}.employee-training-grid strong{overflow-wrap:anywhere;font-size:13px}.employee-training-details{border:1px solid var(--line);border-radius:9px;margin:16px 0;overflow:hidden}.employee-training-details summary{cursor:pointer;background:var(--theme-surface-soft,#f7f9f6);padding:12px 14px;font-weight:700}.employee-training-details summary span{color:var(--muted);margin-left:8px;font-size:11px;font-weight:400}.employee-training-list{padding:4px 14px 12px}.employee-training-row{border-bottom:1px solid var(--line);padding:10px 0}.employee-training-row:last-child{border-bottom:0}.employee-training-row strong{font-size:12px}.employee-training-row p{white-space:pre-wrap;overflow-wrap:anywhere;margin:4px 0;font-size:13px}.training-empty{color:var(--muted);padding:12px}.training-error,.training-import-warning{color:var(--theme-danger,#9a3a24)}.training-import-dialog{width:min(760px,100%)}.training-import-dialog>p{line-height:1.5}.training-import-dialog>button{margin-top:12px}.training-import-preview{border-top:1px solid var(--line);margin-top:18px;padding-top:14px}.training-import-preview h3{margin:0}.training-import-preview details{margin:10px 0}.training-import-preview summary{cursor:pointer}.training-import-preview ul{max-height:170px;padding-left:22px;font-size:12px;overflow:auto}.training-import-confirm{align-items:center;gap:8px;margin-top:14px;color:var(--ink)!important;display:flex!important}.training-import-confirm input{width:auto!important}.training-import-dialog .modal-actions{align-items:center}@media (max-width:650px){.employee-training-grid{grid-template-columns:1fr}.training-import-dialog{padding:16px}}.hero-actions .training-import-trigger{text-align:center;flex-direction:column;flex-shrink:0;justify-content:center;gap:0;display:flex}.training-import-trigger span{white-space:nowrap;display:block}.training-file-field{gap:8px;margin-top:14px;display:grid}.training-file-label{color:var(--muted);font-size:12px}.training-file-selection{border:1px solid var(--line);background:var(--theme-surface-soft,#f7f9f7);border-radius:10px;flex-wrap:wrap;align-items:center;gap:12px;padding:12px;display:flex}.training-file-selection .secondary-link{flex-shrink:0;justify-content:center}.training-file-name{background:var(--theme-accent-soft,#e6f1e9);min-width:0;color:var(--green);overflow-wrap:anywhere;border-radius:8px;flex:240px;padding:10px 12px;font-size:14px;font-weight:700}.training-file-placeholder{color:var(--muted);font-size:13px}.training-import-dialog .training-check-button{justify-content:center;margin-top:16px}.training-import-dialog .secondary-link:disabled{opacity:.5;cursor:not-allowed}.training-import-dialog .secondary-link:not(:disabled):hover,.training-import-trigger:hover{background:var(--theme-surface-hover,#edf5ef);border-color:var(--theme-accent-line,#8abca3)}.training-import-dialog .secondary-link:focus-visible,.training-import-trigger:focus-visible{outline:2px solid var(--green);outline-offset:3px}@media (max-width:650px){.training-file-selection{flex-direction:column;align-items:stretch}.training-file-name{flex-basis:auto}.training-check-button{width:100%}}.employee-training-grid{grid-template-columns:repeat(2,minmax(0,1fr));margin:12px 0}.employee-training-row{align-content:start;gap:6px;min-width:0;display:grid}.employee-training-row textarea{resize:vertical;border:1px solid var(--line);width:100%;min-height:42px;font:inherit;color:var(--ink);background:var(--paper,#fff);border-radius:6px;padding:8px}.employee-training-row small{overflow-wrap:anywhere;line-height:1.45}.training-rights{flex-wrap:wrap;gap:6px;margin-top:10px;display:flex}.employee-modal .training-overdue,.employee-training-details summary .training-overdue{color:var(--theme-danger,#b42318)!important}.employee-modal input.training-overdue{border-color:var(--theme-danger-line,#d92d20);background:var(--theme-danger-soft,#fff2f0)}.training-overdue-mark{background:var(--theme-danger-solid,#b42318);color:#fff;vertical-align:middle;border-radius:50%;justify-content:center;align-items:center;width:19px;height:19px;margin-left:7px;font-size:14px;font-weight:800;display:inline-flex}@media (max-width:650px){.employee-training-grid{grid-template-columns:1fr}}.employee-training-row>label:first-child{color:var(--muted);font-size:12px}.employee-modal .training-ignore{color:var(--ink);flex-direction:row;align-items:center;gap:7px;font-size:12px;display:flex}.employee-modal .training-ignore input{width:16px;height:16px;min-height:0;accent-color:var(--green);margin:0}.hero-actions.employee-hero-actions{flex-wrap:wrap;align-items:stretch;display:flex}.hero-actions.employee-hero-actions>a,.hero-actions.employee-hero-actions>button{box-sizing:border-box;text-align:center;flex:0 0 220px;justify-content:center;align-items:center;width:220px;height:58px;min-height:58px;padding:8px 12px;display:flex}@media (max-width:650px){.hero-actions.employee-hero-actions{width:100%}.hero-actions.employee-hero-actions>a,.hero-actions.employee-hero-actions>button{flex-basis:100%;width:100%}}.employee-modal .employee-training-row{border:0;gap:4px;padding:0}.employee-modal .employee-training-row>label:first-child{color:var(--ink);font-size:12px;font-weight:700;line-height:1.3}.employee-modal .employee-training-row .training-source{color:var(--muted);font-size:10px;font-weight:400;line-height:1.3}.employee-modal .employee-training-grid{gap:10px;margin:10px 0}.employee-modal .employee-training-grid>.employee-training-row{border:1px solid var(--line);border-radius:8px;padding:8px}.employee-modal .employee-training-row textarea{field-sizing:content;min-height:34px;max-height:140px;padding:6px 8px;font-size:13px;line-height:1.35}.employee-modal .employee-training-row input:not([type=checkbox]){width:100%;height:34px;min-height:34px;padding:6px 8px;font-size:13px}.employee-modal .training-date-controls{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.employee-modal .training-date-controls>input{flex:105px;width:105px;min-width:100px}.employee-modal .training-ignore{white-space:nowrap;flex:none;gap:5px;margin:0;font-size:11px}.employee-modal .training-rights{margin:0}.employee-modal .employee-training-details{margin:10px 0}.employee-modal .employee-training-details summary{padding:10px 12px}.employee-modal .training-group-list{gap:10px;padding:8px 10px 10px;display:grid}.employee-modal .training-group{border:1px solid var(--theme-line,#cedbd2);background:var(--theme-surface-soft,#fbfcfb);border-radius:8px;min-width:0;margin:0;padding:8px 10px 10px}.employee-modal .training-group>legend{color:var(--green);padding:0 5px;font-size:13px;font-weight:700}.employee-modal .training-group-fields{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:8px 12px;display:grid}.employee-modal .training-group-value{grid-column:1/-1;max-width:180px}.employee-modal .training-other-groups{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}@media (max-width:650px){.employee-modal .training-group-fields,.employee-modal .training-other-groups{grid-template-columns:1fr}.employee-modal .training-group-value{grid-column:auto}.employee-modal .training-date-controls{flex-wrap:nowrap}}
