@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@600;700;800&display=swap";:root{font-family:DM Sans,sans-serif;color:#173221;background:#f4f6f2;font-synthesis:none;--green-950: #123c24;--green-800: #1e5834;--green-650: #32784b;--green-100: #e7f0e6;--ink: #173221;--muted: #6c7a70;--line: #dce4dc;--surface: #ffffff;--shadow: 0 12px 34px rgba(29, 62, 40, .09)}*{box-sizing:border-box}body{margin:0;min-width:320px;background:#f4f6f2}button,input,select,textarea{font:inherit}button{cursor:pointer}h1,h2,h3,p{margin-top:0}h1,h2,h3,.brand strong{font-family:Manrope,sans-serif}.app-shell{min-height:100vh;min-height:100dvh;display:grid;grid-template-columns:238px minmax(0,1fr)}.sidebar{background:var(--green-950);color:#fff;display:flex;flex-direction:column;position:sticky;top:0;height:100vh;padding:22px 14px;z-index:20}.brand{display:flex;align-items:center;gap:11px;padding:0 8px 23px}.brand-logo{width:42px;height:42px;border-radius:11px;object-fit:cover;box-shadow:0 5px 14px #0003}.brand div{display:flex;flex-direction:column}.brand strong{font-size:.95rem}.brand small{color:#abc3b1;font-size:.72rem;margin-top:2px}.sidebar nav{display:grid;gap:5px}.sidebar nav button{border:0;background:transparent;color:#bed0c2;border-radius:10px;display:flex;align-items:center;gap:11px;padding:11px 12px;text-align:left;font-weight:600}.sidebar nav button:hover{background:#ffffff12;color:#fff}.sidebar nav button.active{background:#fff;color:var(--green-950);box-shadow:0 7px 18px #00000021}.language-picker{margin-top:14px;display:grid;grid-template-columns:18px auto 1fr;align-items:center;gap:8px;color:#dce9df;font-size:.75rem}.language-picker select{min-width:0;border:1px solid rgba(255,255,255,.18);background:#ffffff1a;color:#fff;padding:7px 8px;border-radius:8px}.language-picker option{color:#173b2b;background:#fff}.install-app{position:relative;margin-top:auto;padding:0 7px}.install-app>button{width:100%;border:1px solid rgba(255,255,255,.16);border-radius:9px;background:#ffffff14;color:#e7f1e8;padding:9px 10px;display:flex;align-items:center;justify-content:center;gap:7px;font-weight:700}.install-app>button:hover{background:#ffffff24}.install-app>small{display:block;padding:5px 2px 0;color:#abc3b1;text-align:center;font-size:.62rem}.install-help{position:absolute;z-index:80;left:8px;bottom:calc(100% + 8px);width:250px;padding:12px;border-radius:10px;background:#fff;color:var(--ink);box-shadow:var(--shadow);display:grid;gap:4px;font-size:.76rem}.install-help span{color:var(--muted);line-height:1.45}.install-app+.sidebar-account{margin-top:10px}.sidebar-account{margin-top:auto;border-top:1px solid rgba(255,255,255,.13);padding:18px 7px 0;display:grid;grid-template-columns:34px 1fr auto;align-items:center;gap:9px}.sidebar-account>div{display:flex;flex-direction:column;min-width:0}.sidebar-account strong{font-size:.82rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-account small{color:#a8c1ae;font-size:.7rem}.avatar{width:34px;height:34px;border-radius:50%;object-fit:cover;background:#dce8dc}.avatar.fallback{display:grid;place-items:center;color:var(--green-950);font-weight:800}.main-shell{min-width:0}.mobile-header,.mobile-nav{display:none}.calendar-toolbar{min-height:74px;background:#fff;border-bottom:1px solid var(--line);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:15px;padding:12px 28px;position:sticky;top:0;z-index:15}.calendar-toolbar h2{font-size:1.05rem;margin:0;text-transform:capitalize;text-align:center}.calendar-navigation{display:flex;align-items:center;gap:5px}.icon-button{width:36px;height:36px;border:1px solid var(--line);border-radius:9px;background:#fff;color:var(--ink);display:inline-grid;place-items:center;padding:0}.icon-button:hover{background:#f0f4ef}.today-button{border:1px solid var(--line);background:#fff;border-radius:9px;padding:8px 12px;color:var(--ink);font-weight:700}.view-switcher{justify-self:end;display:flex;padding:3px;background:#edf2ec;border-radius:10px}.view-switcher button{border:0;background:transparent;color:var(--muted);padding:7px 12px;border-radius:8px;font-weight:700;font-size:.8rem}.view-switcher button.active{background:#fff;color:var(--green-950);box-shadow:0 2px 8px #23452d1c}.main-content{padding:28px;max-width:1680px;margin:0 auto}.workspace-section{min-width:0}.workspace-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:22px}.workspace-heading.compact{margin-bottom:17px}.workspace-heading h1{font-size:1.65rem;margin:2px 0 4px;letter-spacing:-.025em}.workspace-heading p:last-child{margin:0;color:var(--muted);font-size:.9rem}.eyebrow{margin:0;color:var(--green-650);font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.1em}.button{border:0;border-radius:9px;padding:9px 13px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;gap:7px}.button.primary{background:var(--green-950);color:#fff;box-shadow:0 5px 13px #123c242e}.button.primary:hover{background:var(--green-800)}.button.secondary{color:var(--green-950);background:#e6eee4}.button.text{color:var(--green-650);background:transparent;padding-inline:7px}.button.full{width:100%}.button:disabled{opacity:.55;cursor:wait}.notice{border-radius:10px;padding:12px 14px;margin-bottom:18px;background:#e5efe4;color:#285f3b}.notice.warning{background:#fff3cf;color:#775b0a}.notice.error,.form-error{background:#fae7e3;color:#953a2f}.week-board{background:#fff;border:1px solid var(--line);border-radius:14px;overflow-x:auto;display:grid;grid-template-columns:repeat(7,minmax(145px,1fr));min-height:580px;box-shadow:0 5px 22px #27442e0b}.week-column{border-right:1px solid var(--line);min-width:0;background:#fbfcfa}.week-column:last-child{border-right:0}.week-column.active{background:#f5f9f3}.calendar-day-header{width:100%;min-height:83px;border:0;border-bottom:1px solid var(--line);background:#fff;display:grid;grid-template-columns:1fr;place-items:center;align-content:center;padding:8px;color:var(--ink);text-transform:capitalize;position:sticky;top:0;z-index:2}.calendar-day-header span{font-size:.72rem;color:var(--muted);text-transform:uppercase;font-weight:800;letter-spacing:.07em}.calendar-day-header strong{font:800 1.35rem Manrope;line-height:1.25}.calendar-day-header small{color:var(--muted);font-size:.69rem}.calendar-day-header.active strong{background:var(--green-950);color:#fff;width:33px;height:33px;display:grid;place-items:center;border-radius:50%}.week-column-content{padding:8px;display:grid;gap:7px}.empty-day{border:1px dashed #ced9ce;background:transparent;color:#9aa79e;border-radius:9px;min-height:60px;font-size:.75rem}.calendar-entry{background:#fff;border:1px solid #dde5dd;border-left:4px solid var(--team-color);border-radius:9px;padding:9px;position:relative;display:grid;gap:6px;transition:transform .12s,box-shadow .12s}.calendar-entry:hover{transform:translateY(-1px);box-shadow:0 7px 15px #22412a17}.calendar-entry.selected{outline:2px solid var(--green-650);background:#f3f8f2}.calendar-entry.approved{background:#edf7ea;border-top-color:#c8ddc4;border-right-color:#c8ddc4;border-bottom-color:#c8ddc4}.calendar-entry.approved.selected{background:#e4f1e1}.entry-check{position:absolute;right:7px;top:7px;width:16px;height:16px;border:1px solid #acbbae;border-radius:4px;display:grid;place-items:center;background:#fff;color:#fff}.calendar-entry.selected .entry-check{background:var(--green-650);border-color:var(--green-650)}.entry-person{display:flex;align-items:center;gap:6px;min-width:0;padding-right:17px}.entry-person strong{font-size:.78rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mini-avatar{flex:0 0 auto;width:23px;height:23px;background:#e2ebe0;border-radius:50%;display:inline-grid;place-items:center;overflow:hidden;color:var(--green-800);font-size:.68rem;font-weight:800}.mini-avatar img{width:100%;height:100%;object-fit:cover}.approved-icon{margin-left:auto;color:#348352}.entry-time{display:flex;justify-content:space-between;gap:5px;font-size:.72rem;font-weight:700}.entry-time span{color:var(--muted);font-weight:500;font-size:.65rem}.entry-tags{display:flex;flex-wrap:wrap;gap:4px}.entry-tags span{display:inline-flex;align-items:center;gap:3px;background:color-mix(in srgb,var(--tag-color, #59715f) 13%,white);color:#4a5f50;border-radius:999px;padding:2px 5px;font-size:.61rem}.entry-tags .entry-location-tag{flex-basis:100%;width:fit-content;border-radius:6px;background:#eaf2df;color:#375326;font-weight:700;padding:4px 6px}.entry-vehicle-select{min-width:0;display:grid;grid-template-columns:16px minmax(0,1fr);align-items:center;gap:5px;color:var(--green-650)}.entry-vehicle-select select{width:100%;min-width:0;min-height:34px;padding:5px 25px 5px 7px;border-color:#cbd9ca;background-color:#f5f9f3;font-size:.72rem;font-weight:700}.calendar-entry.compact .entry-vehicle-select select{min-height:31px;padding-block:3px;font-size:.66rem}.holiday-badges{display:flex;gap:5px;flex-wrap:wrap}.holiday-badges span{display:inline-flex;align-items:center;gap:3px;background:#fff0c9;color:#79600d;border-radius:999px;padding:3px 7px;font-size:.68rem;font-weight:700}.week-column>.holiday-badges{padding:7px 7px 0}.holiday-badges.compact span{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.month-board{background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden;display:grid;grid-template-columns:repeat(7,minmax(105px,1fr));box-shadow:0 5px 22px #27442e0b}.month-weekday{background:#f1f5f0;border-right:1px solid var(--line);padding:9px;text-align:center;font-size:.7rem;font-weight:800;text-transform:uppercase;color:var(--muted)}.month-day{min-height:130px;border:0;border-right:1px solid var(--line);border-top:1px solid var(--line);background:#fff;padding:8px;text-align:left;color:var(--ink);overflow:hidden}.month-day:hover,.month-day.active{background:#f3f8f2}.month-date{display:flex;align-items:baseline;gap:5px}.month-date b{font:800 .9rem Manrope}.month-date small{color:var(--muted);text-transform:capitalize}.month-day .holiday-badges{margin:5px 0}.month-entries{display:grid;gap:3px}.month-entries>span{border-left:3px solid var(--team-color);background:#f0f4ef;padding:3px 5px;border-radius:3px;display:flex;justify-content:space-between;gap:4px;font-size:.64rem;overflow:hidden}.month-entries span small{color:var(--muted)}.month-entries em{color:var(--muted);font-size:.63rem}.day-view-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.day-view-heading h2{margin:2px 0 0;font-size:1.18rem;text-transform:capitalize}.team-day-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(310px,1fr));gap:14px;align-items:start}.team-day-card{background:#fff;border:1px solid var(--line);border-top:5px solid var(--team-color);border-radius:12px;overflow:hidden;box-shadow:0 5px 17px #23442b0e}.team-day-card>header{display:flex;align-items:center;justify-content:space-between;padding:13px 14px;border-bottom:1px solid var(--line)}.team-day-card>header>div{display:flex;align-items:center;gap:8px}.team-day-card>header i{width:9px;height:9px;border-radius:50%;background:var(--team-color)}.team-day-card h3{margin:0;font-size:.94rem}.approval-button{border:0;background:#edf2eb;color:var(--green-800);border-radius:8px;padding:6px 8px;font-size:.67rem;font-weight:800;display:flex;align-items:center;gap:4px}.approval-button.approved{background:#dff0df;color:#257044}.day-details{background:#f6f8f4;padding:9px 13px;display:flex;flex-wrap:wrap;gap:7px 12px;font-size:.73rem;color:#526259}.day-details span{display:inline-flex;align-items:center;gap:4px}.day-details p{margin:0;width:100%}.team-day-entries{display:grid;gap:7px;padding:10px}.bulk-toolbar,.selection-hint{background:#fff;border:1px solid var(--line);border-radius:10px;padding:9px 12px;margin-bottom:12px;display:flex;align-items:center;gap:8px}.bulk-toolbar strong{margin-right:auto}.selection-hint{justify-content:space-between;color:var(--muted);font-size:.78rem}.planning-form{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(270px,.65fr);gap:20px}.planning-form-main,.form-stack{display:grid;gap:14px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:11px}.form-row.three{grid-template-columns:1fr 1fr 1fr}label{display:flex;flex-direction:column;gap:5px;color:#536159;font-size:.76rem;font-weight:700}input,select,textarea{width:100%;border:1px solid #ccd8cc;border-radius:8px;background:#fff;color:var(--ink);padding:9px 10px;outline:none}input:focus,select:focus,textarea:focus{border-color:var(--green-650);box-shadow:0 0 0 3px #32784b1c}textarea{min-height:78px;resize:vertical}label small{color:var(--muted);font-weight:400}.people-picker{border:1px solid var(--line);border-radius:11px;overflow:hidden;min-height:430px}.people-picker>header{padding:12px;background:#f2f6f1;display:flex;justify-content:space-between;align-items:center}.people-picker>header>div{display:flex;align-items:center;gap:7px}.people-picker>header span{font-size:.7rem;color:var(--muted)}.picker-actions{display:flex;justify-content:flex-end;padding:5px 8px;border-bottom:1px solid var(--line)}.people-options{max-height:355px;overflow:auto;padding:7px;display:grid;gap:4px}.people-options label{display:grid;grid-template-columns:17px 25px 1fr;align-items:center;gap:7px;padding:7px;border-radius:8px;cursor:pointer}.people-options label.selected{background:#edf4eb}.people-options input{width:auto}.people-options label>div{display:flex;flex-direction:column}.people-options strong{color:var(--ink);font-size:.76rem}.people-options small{font-size:.65rem}.planning-error{grid-column:1/-1;padding:9px;border-radius:8px;margin:0}.form-actions{display:flex;justify-content:flex-end;align-items:center;gap:8px;margin-top:4px}.planning-actions{grid-column:1/-1;border-top:1px solid var(--line);padding-top:14px}.selection-summary{background:#edf4eb;padding:10px;border-radius:8px;color:#42604a}.form-error{padding:9px;border-radius:8px;margin:0}.person-context{background:var(--green-950);color:#fff;border-radius:12px;padding:13px 16px;display:grid;grid-template-columns:38px 1fr minmax(220px,340px);align-items:center;gap:11px;margin-bottom:15px}.context-avatar{width:38px;height:38px;border-radius:50%;overflow:hidden;background:#dce8a0;color:var(--green-950);display:grid;place-items:center;font-weight:800}.context-avatar img{width:100%;height:100%;object-fit:cover}.person-context>div{display:flex;flex-direction:column}.person-context small{color:#a9c1af}.person-context select{background:#fff}.date-switcher{display:grid;grid-template-columns:repeat(7,1fr);background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden;margin-bottom:15px}.date-switcher button{border:0;border-right:1px solid var(--line);background:#fff;min-height:69px;display:grid;place-items:center;align-content:center;color:var(--ink);text-transform:capitalize}.date-switcher button:last-child{border:0}.date-switcher span{color:var(--muted);font-size:.67rem;text-transform:uppercase;font-weight:800}.date-switcher strong{font:800 1.1rem Manrope}.date-switcher small{color:var(--muted);font-size:.62rem}.date-switcher button.active{background:var(--green-950);color:#fff}.date-switcher button.active span,.date-switcher button.active small{color:#bcd1c1}.hours-list{display:grid;gap:7px}.hours-row{background:#fff;border:1px solid var(--line);border-radius:10px;display:grid;grid-template-columns:105px minmax(150px,1fr) 140px 70px 125px 90px;align-items:center;gap:10px;padding:10px 12px}.hours-row.highlight{border-color:#80a98b;box-shadow:0 0 0 2px #32784b14}.hours-date{border:0;background:transparent;display:flex;flex-direction:column;text-align:left;color:var(--ink);padding:0;text-transform:capitalize}.hours-date span{color:var(--muted);font-size:.68rem;text-transform:uppercase;font-weight:800}.hours-team{display:flex;align-items:center;gap:8px;min-width:0}.hours-team i{width:8px;height:34px;border-radius:999px}.hours-team>div,.hours-times,.hours-total{display:flex;flex-direction:column}.hours-team strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hours-team span,.hours-times span,.hours-total span{color:var(--muted);font-size:.7rem}.hours-team .hours-location{color:#375326;font-weight:700;margin-top:2px}.hours-times strong,.hours-team strong{font-size:.82rem}.hours-total strong{font:800 1.05rem Manrope}.approved-pill,.open-pill{display:inline-flex;align-items:center;gap:4px;border-radius:999px;padding:4px 7px;font-size:.65rem;font-weight:800}.approved-pill{background:#e0f0df;color:#2c7448}.open-pill{background:#f0f1ec;color:#6b756d}.settings-tabs{display:flex;gap:5px;border-bottom:1px solid var(--line);margin-bottom:15px;overflow-x:auto}.settings-tabs button{border:0;background:transparent;padding:10px 12px;color:var(--muted);display:flex;align-items:center;gap:6px;font-weight:700;border-bottom:3px solid transparent;white-space:nowrap}.settings-tabs button.active{color:var(--green-950);border-color:var(--green-650)}.accounting-year{min-width:118px}.accounting-heading-actions{display:flex;align-items:flex-end;gap:8px}.accounting-summary{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-bottom:14px}.accounting-summary article,.accounting-summary>button{background:#fff;border:1px solid var(--line);border-radius:11px;padding:13px;display:flex;align-items:center;gap:10px;color:var(--green-650);text-align:left}.accounting-summary article>div,.accounting-summary>button>div{min-width:0;display:flex;flex-direction:column}.accounting-summary strong{color:var(--ink);font:800 1rem Manrope;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.accounting-summary span{color:var(--muted);font-size:.68rem}.accounting-summary article.warning,.accounting-summary>button.warning{background:#fff7dd;color:#9a7415}.accounting-exceptions{margin-bottom:14px;padding:15px;border:1px solid #ead8a6;border-radius:12px;background:#fffaf0}.accounting-exceptions>header{display:flex;justify-content:space-between;gap:12px;align-items:start}.accounting-exceptions h2{margin:0;font-size:1rem}.accounting-exceptions p{margin:3px 0 0;color:var(--muted);font-size:.74rem}.exception-breakdown{display:flex;flex-wrap:wrap;gap:8px;margin:13px 0}.exception-breakdown span{padding:7px 10px;border-radius:8px;background:#fff;border:1px solid #eadfbd;font-size:.72rem}.exception-breakdown strong{margin-right:4px}.exception-list{max-height:280px;overflow:auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px}.exception-list article{display:flex;gap:8px;align-items:start;padding:8px;border-radius:8px;background:#fff}.exception-list article svg{flex:0 0 auto;color:#9a7415}.exception-list article div{display:flex;flex-direction:column}.exception-list article span{color:var(--muted);font-size:.68rem}.accounting-layout{min-height:650px;display:grid;grid-template-columns:minmax(245px,310px) minmax(0,1fr);background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden;box-shadow:0 7px 24px #23442b0e}.accounting-people{border-right:1px solid var(--line);background:#f8faf7;display:flex;flex-direction:column;min-width:0}.accounting-search{margin:12px 12px 7px;display:grid;grid-template-columns:auto 1fr;align-items:center;gap:7px;padding-left:9px;border:1px solid #ccd8cc;border-radius:9px;background:#fff;color:var(--muted)}.accounting-search:focus-within{border-color:var(--green-650);box-shadow:0 0 0 3px #32784b1c}.accounting-search input{border:0;box-shadow:none;padding-left:0}.accounting-search input:focus{box-shadow:none}.inline-check{flex-direction:row;align-items:center;gap:7px;color:var(--ink)}.inline-check input{width:auto}.inline-check.compact{padding:4px 14px 10px;font-size:.7rem;color:var(--muted)}.accounting-person-list{overflow-y:auto;border-top:1px solid var(--line)}.accounting-person-list>button{width:100%;border:0;border-bottom:1px solid #e5ebe4;background:transparent;color:var(--ink);padding:10px 12px;display:grid;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:9px;text-align:left}.accounting-person-list>button:hover{background:#eef4ec}.accounting-person-list>button.active{background:var(--green-950);color:#fff}.accounting-person-list>button>span{min-width:0;display:flex;flex-direction:column}.accounting-person-list strong{font-size:.78rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.accounting-person-list small{color:var(--muted);font-size:.64rem}.accounting-person-list button.active small{color:#b9cfbf}.accounting-person-list button>svg{color:#b1bab2}.accounting-person-list button.active>svg{color:#bfe0c7}.accounting-detail{min-width:0;display:flex;flex-direction:column}.accounting-person-header{min-height:75px;padding:14px 18px;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:10px}.accounting-person-header .avatar{width:42px;height:42px}.accounting-person-header>div{display:flex;flex-direction:column}.accounting-person-header h2{margin:0;font-size:1rem}.accounting-person-header span{color:var(--muted);font-size:.7rem}.accounting-person-header .inactive-pill{margin-left:auto;background:#edf0ec;padding:5px 8px;border-radius:999px}.accounting-form-sections{padding:17px;display:grid;grid-template-columns:1fr 1fr;gap:12px;align-items:start}.accounting-form-sections>section{border:1px solid var(--line);border-radius:11px;padding:13px;display:grid;gap:13px}.accounting-form-sections>section>header{display:flex;gap:8px;color:var(--green-650)}.accounting-form-sections>section>header h3{color:var(--ink);margin:0 0 2px;font-size:.86rem}.accounting-form-sections>section>header p{margin:0;color:var(--muted);font-size:.67rem}.accounting-vacations{grid-column:1 / -1}.accounting-vacation-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:8px}.accounting-vacation-list article{border:1px solid var(--line);border-radius:9px;padding:10px;display:grid;gap:5px}.accounting-vacation-list strong{font-size:.78rem}.accounting-vacation-list small,.accounting-no-vacations{color:var(--muted);font-size:.68rem;margin:0}.vacation-status{width:fit-content;border-radius:999px;padding:3px 7px;background:#f0f1ec;color:#68736b;font-size:.62rem;font-weight:800}.vacation-status.approved{background:#dff0df;color:#287147}.vacation-status.requested{background:#fff1c9;color:#78610c}.vacation-status.rejected{background:#f8e3df;color:#98483e}.accounting-fields{display:grid;grid-template-columns:1fr 1fr;gap:11px}.accounting-fields .full{grid-column:1 / -1}.accounting-number-field{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:stretch}.accounting-number-field input{border-radius:8px 0 0 8px}.accounting-number-field span{min-width:42px;border:1px solid #ccd8cc;border-left:0;border-radius:0 8px 8px 0;background:#f2f5f1;color:var(--muted);display:grid;place-items:center;padding:0 8px;font-size:.7rem}.accounting-actions{position:sticky;bottom:0;margin-top:auto;border-top:1px solid var(--line);background:#fffffff5;padding:12px 17px;display:flex;justify-content:flex-end;align-items:center;gap:8px}.accounting-actions>span{margin-right:auto;color:#2f7748;font-size:.72rem;font-weight:700}.accounting-actions>span.error-text{color:#9b473b}.travel-reset{display:flex;flex-direction:column;justify-content:flex-end;align-items:flex-start;gap:7px}.travel-reset>span{display:inline-flex;align-items:center;gap:5px;color:#a26425;font-size:.68rem;font-weight:800}.travel-reset>span.source-ok{color:#317849}.report-controls{background:#fff;border:1px solid var(--line);border-radius:12px;padding:13px;display:grid;grid-template-columns:minmax(180px,1.4fr) repeat(5,minmax(105px,1fr));gap:10px;margin-bottom:14px}.report-weeks{display:grid;gap:13px}.report-week{background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden}.report-week>header{min-height:43px;padding:9px 12px;background:#f2f5f1;display:flex;align-items:center;gap:10px}.report-week>header span{background:#fff1c9;color:#75600f;border-radius:999px;padding:3px 7px;font-size:.65rem}.report-week>header span.closed-week{display:inline-flex;align-items:center;gap:4px;background:#dfece0;color:#2e7045}.week-closure-button{margin-left:auto;border:1px solid var(--line);border-radius:7px;background:#fff;color:var(--green-800);padding:6px 8px;display:inline-flex;align-items:center;gap:5px;font-size:.67rem;font-weight:800}.week-closure-button.closed{color:#9a5b2f}.report-table-scroll{overflow-x:auto}.report-week table{width:100%;min-width:1220px;border-collapse:collapse;font-size:.7rem}.report-week th,.report-week td{border:1px solid var(--line);padding:7px;text-align:right;white-space:nowrap}.report-week th{background:#f8faf7;color:var(--muted);font-size:.63rem}.report-week th:first-child,.report-week td:first-child,.report-week td:nth-child(2){text-align:left}.report-total{background:#eef4ec;font-weight:800}.report-total td:first-child{text-align:right}.report-override{display:flex;align-items:center;justify-content:flex-end;gap:3px}.report-override input{width:75px;padding:5px;text-align:right}.report-override button{width:27px;height:27px;padding:0;border:1px solid var(--line);border-radius:6px;background:#fff;color:var(--green-650);display:grid;place-items:center}.report-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:14px}.report-summary article{background:var(--green-950);color:#fff;border-radius:11px;padding:13px;display:flex;flex-direction:column}.report-summary span,.report-summary small{color:#b9cebf;font-size:.68rem}.report-summary strong{font:800 1.15rem Manrope;margin:3px 0}.summary-breakdown dl{margin:7px 0 0;padding-top:6px;border-top:1px solid rgba(255,255,255,.18);font-size:.67rem}.summary-breakdown dl div{display:flex;justify-content:space-between;gap:10px}.summary-breakdown dt,.summary-breakdown dd{margin:0}.bulk-download-panel{margin-top:16px;padding:16px;border:1px solid var(--line);border-radius:13px;background:#fff}.bulk-download-workspace>.bulk-download-panel:first-of-type{margin-top:0}.bulk-download-panel .notice.compact{margin-top:12px}.bulk-download-panel>header h2{margin:0;font-size:1rem}.bulk-download-panel>header p{margin:4px 0 13px;color:var(--muted);font-size:.75rem}.bulk-controls{display:grid;grid-template-columns:repeat(4,minmax(135px,1fr)) auto;align-items:end;gap:9px}.bulk-person-selection{margin-top:12px;padding:11px;border-radius:9px;background:#f7f9f6}.bulk-person-selection>div{max-height:210px;overflow:auto;display:grid;grid-template-columns:repeat(3,minmax(180px,1fr));gap:7px;margin-top:9px}.agency-management{margin-top:14px;border-top:1px solid var(--line);padding-top:12px}.agency-management summary{cursor:pointer;color:var(--green-800);font-weight:800;font-size:.78rem}.agency-create{display:flex;gap:8px;max-width:520px;margin:12px 0}.agency-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:9px}.agency-list>article{padding:11px;border:1px solid var(--line);border-radius:9px}.agency-list>article>header{display:flex;justify-content:space-between;align-items:center}.agency-list button{border:0;background:transparent;color:var(--muted);padding:4px;display:grid;place-items:center}.agency-members{display:flex;flex-wrap:wrap;gap:5px;margin:9px 0}.agency-members span{display:flex;align-items:center;gap:2px;padding:4px 5px 4px 8px;border-radius:999px;background:#edf3ec;color:var(--green-800);font-size:.68rem}.agency-add-member{display:grid;grid-template-columns:1fr 34px;gap:6px}.agency-add-member button{border:1px solid var(--line);border-radius:7px;color:var(--green-800)}.hours-report-workspace>.notice.compact{display:flex;align-items:center;gap:7px;margin-bottom:12px}.team-display{min-height:calc(100vh - 56px);border-radius:16px;overflow:hidden;color:#fff;background:#24351f url(/broccolibgrustig.png) center / cover fixed;box-shadow:0 12px 34px #18341f2e}.team-display.tv-mode{width:100vw;height:100vh;border-radius:0;overflow:hidden;display:flex;flex-direction:column}.team-display-header{min-height:6.5vw;display:flex;align-items:baseline;justify-content:center;gap:1.8vw;padding:1.1vw 1.5vw;background:transparent;text-shadow:0 .2vw .7vw rgba(0,0,0,.9)}.team-display-header>strong{font:800 3.15vw Manrope;text-transform:capitalize}.team-display-header>time{font:800 3.15vw Manrope}.team-display-brand{display:flex;align-items:center;gap:10px}.team-display-brand img{width:45px;height:45px;border-radius:11px;background:#ffffffeb;padding:4px}.team-display-brand div,.display-clock{display:flex;flex-direction:column}.team-display-brand small,.display-clock span{color:#b9cfbf;font-size:.68rem}.team-display-brand strong{font:800 1.05rem Manrope}.display-date-controls{display:flex;align-items:center;justify-content:center;gap:7px}.display-date-controls>div{min-width:300px;display:flex;align-items:center;justify-content:center;gap:8px;font:800 .9rem Manrope;text-transform:capitalize}.display-date-controls button,.display-actions button{min-width:38px;min-height:38px;border:1px solid rgba(255,255,255,.18);border-radius:9px;background:#ffffff17;color:#fff;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:7px 9px}.display-clock{text-align:right}.display-clock strong{font:800 1.3rem Manrope}.display-actions{display:flex;justify-content:flex-end;gap:6px}.display-actions span{font-size:.69rem;font-weight:800}.display-status{margin:12px 16px 0;border-radius:9px;padding:10px;background:#fff8daf0;color:#71590c}.team-display-grid{display:grid;grid-template-columns:repeat(var(--display-team-count),minmax(0,18.7vw));justify-content:center;align-items:start;align-content:start;gap:.8vw;padding:.9vw}.tv-mode .team-display-grid{flex:1;min-height:0;overflow:hidden}.team-display-grid.over-five{grid-template-columns:repeat(var(--display-team-count),minmax(0,1fr));gap:.55vw;padding-inline:.7vw}.display-team{overflow:hidden;border:.08vw solid rgba(255,255,255,.35);border-top:.35vw solid var(--display-team-color);border-radius:.75vw;background:#fffffff0;color:#17261b;box-shadow:0 .55vw 1.65vw #071b0d3b}.display-team>header{min-height:4.7vw;display:grid;grid-template-columns:.65vw 1fr;align-items:center;gap:.7vw;padding:.7vw .85vw;background:#edf4ebf5}.display-team>header i{width:.65vw;height:3vw;border-radius:99px;background:var(--display-team-color)}.display-team>header div{min-width:0;display:flex;flex-direction:column}.display-team>header strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:800 1.65vw Manrope}.display-team>header span{color:#718078;font-size:.63rem}.display-team-details{display:flex;flex-wrap:wrap;gap:.4vw;padding:.65vw .75vw;border-top:.08vw solid #dce5da;border-bottom:.08vw solid #dce5da;background:#f7f1db}.display-team-details strong,.display-team-details span{border-radius:999px;padding:.3vw .55vw;background:#fff;color:#5f542d;font-size:1.05vw}.display-team-details strong{color:#284d31}.display-employees{display:grid;gap:.08vw;padding:.3vw}.display-employees>p{margin:12px;color:#7a887d;text-align:center;font-size:.72rem}.display-employee{min-width:0;display:grid;grid-template-columns:3.25vw minmax(0,1fr);align-items:center;gap:.65vw;padding:.4vw;border-radius:.5vw;background:#fff}.display-employee:nth-child(2n){background:#f7faf6}.display-employee img{width:3.25vw;height:3.25vw;border-radius:.6vw;object-fit:cover;background:#e2ebe0}.display-employee>div{min-width:0;display:flex;flex-direction:column}.display-employee strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:1.25vw}.display-employee span{color:#6b786e;font-size:.92vw}.display-employee em{grid-column:2;width:fit-content;max-width:100%;margin-top:-.35vw;display:inline-flex;align-items:center;gap:.25vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border-radius:999px;padding:.25vw .45vw;background:#e8f0e6;color:#315b44;font-size:.78vw;font-style:normal;font-weight:800}.display-employee em svg{width:.85vw;height:.85vw}.team-display-grid.over-five .display-team>header{min-height:4.2vw;padding:.6vw}.team-display-grid.over-five .display-team>header strong{font-size:1.45vw}.team-display-grid.over-five .display-team-details strong,.team-display-grid.over-five .display-team-details span{font-size:.9vw}.team-display-grid.over-five .display-employee{grid-template-columns:3vw minmax(0,1fr);gap:.5vw;padding:.35vw}.team-display-grid.over-five .display-employee img{width:3vw;height:3vw}.team-display-grid.over-five .display-employee strong{font-size:1.15vw}.team-display-grid.very-many .display-team>header{min-height:3.2vw;padding:.4vw}.team-display-grid.very-many .display-team>header strong{font-size:1.05vw}.team-display-grid.very-many .display-employee{grid-template-columns:2.2vw minmax(0,1fr);gap:.3vw;padding:.22vw}.team-display-grid.very-many .display-employee img{width:2.2vw;height:2.2vw}.team-display-grid.very-many .display-employee strong{font-size:.88vw}.team-display-grid.very-many .display-employee span{font-size:.68vw}@media(max-width:900px){.team-display-header{display:flex}.team-display-grid.over-five,.team-display-grid.very-many{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.team-display{border-radius:0;margin:0 -10px}.team-display-header{padding:9px;gap:8px}.team-display-brand small{display:none}.team-display-brand img{width:37px;height:37px}.display-date-controls>div{min-width:0;flex:1;font-size:.76rem}.team-display-grid,.team-display-grid.over-five,.team-display-grid.very-many{grid-template-columns:1fr;padding:8px;overflow:auto}}@media(max-width:1050px){.accounting-summary{grid-template-columns:repeat(3,1fr)}.accounting-layout{grid-template-columns:245px minmax(0,1fr)}.accounting-form-sections{grid-template-columns:1fr}.report-controls{grid-template-columns:repeat(3,1fr)}.report-summary{grid-template-columns:1fr 1fr}.bulk-controls{grid-template-columns:repeat(2,1fr)}.bulk-person-selection>div{grid-template-columns:repeat(2,1fr)}}@media(max-width:720px){.accounting-summary{grid-template-columns:1fr 1fr}.accounting-layout{display:block}.exception-list,.bulk-person-selection>div,.bulk-controls{grid-template-columns:1fr}.accounting-people{border-right:0;border-bottom:1px solid var(--line);max-height:330px}.accounting-form-sections{padding:11px}.accounting-fields{grid-template-columns:1fr}.accounting-actions{flex-wrap:wrap}.accounting-actions>span{width:100%}}.settings-panel,.resource-create,.quick-create{background:#fff;border:1px solid var(--line);border-radius:12px}.settings-panel{padding:16px}.settings-stack{display:grid;gap:14px}.quick-create{padding:12px;display:grid;grid-template-columns:1fr 48px auto;gap:8px}.quick-create input[type=color]{padding:3px;height:39px}.team-settings-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(310px,1fr));gap:10px;align-items:start}.team-settings-card{border:1px solid var(--line);border-left:5px solid var(--team-color);border-radius:10px;overflow:hidden;background:#fff}.team-settings-summary{width:100%;border:0;background:#fff;color:var(--ink);display:grid;grid-template-columns:10px 1fr auto;align-items:center;gap:9px;text-align:left;padding:12px}.team-settings-summary i{width:9px;height:9px;background:var(--team-color);border-radius:50%}.team-settings-summary div{display:flex;flex-direction:column}.team-settings-summary span{color:var(--muted);font-size:.68rem}.team-settings-body{border-top:1px solid var(--line);padding:12px;display:grid;gap:11px}.color-field input{padding:3px;height:39px}.toggle-line{flex-direction:row;align-items:center}.toggle-line input{width:auto}.member-assignment{border:1px solid var(--line);border-radius:8px;max-height:270px;overflow:auto;padding:6px;display:grid;grid-template-columns:repeat(2,1fr);gap:3px}.member-assignment header{grid-column:1/-1;padding:6px;display:flex;flex-direction:column}.member-assignment header small{margin-top:2px}.member-assignment label{flex-direction:row;align-items:center;gap:6px;padding:6px;border-radius:7px;cursor:pointer}.member-assignment label.selected{background:#edf4eb}.member-assignment input{width:auto}.resource-create{padding:15px;display:grid;gap:11px}.resource-create h3{font-size:.9rem;margin:0}.resource-create .form-row{grid-template-columns:1.4fr 1fr 1fr .7fr 55px}.resource-create .button{justify-self:start}.resource-list,.people-admin-list{display:grid;gap:6px}.resource-list article,.people-admin-list article{background:#fff;border:1px solid var(--line);border-radius:9px;display:grid;grid-template-columns:10px 1fr auto;align-items:center;gap:10px;padding:10px 12px}.resource-list i{width:9px;height:35px;border-radius:999px}.resource-list article>div,.people-admin-list article>div{display:flex;flex-direction:column}.resource-list span,.people-admin-list span{color:var(--muted);font-size:.71rem}.people-admin-list article{grid-template-columns:28px 1fr auto}.people-admin-list article.inactive{opacity:.55}.settings-actions{display:flex;align-items:center;gap:10px}.allowance-settings{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:10px}.allowance-settings article{border:1px solid var(--line);border-radius:10px;padding:14px;display:flex;align-items:center;justify-content:space-between}.allowance-settings article>div{display:flex;align-items:center;gap:9px}.allowance-settings article>div span{display:flex;flex-direction:column}.allowance-settings small{color:var(--muted)}.allowance-settings label{flex-direction:row;align-items:center}.allowance-settings input{width:75px;text-align:right}.holiday-layout{display:grid;grid-template-columns:minmax(280px,.7fr) minmax(420px,1.3fr);gap:15px;align-items:start}.holiday-form,.holiday-overview{background:#fff;border:1px solid var(--line);border-radius:12px;padding:16px;display:grid;gap:13px}.holiday-form h3,.holiday-overview>h3{display:flex;align-items:center;gap:7px;font-size:.92rem;margin:0}.holiday-overview article{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:10px;padding:11px 0;border-bottom:1px solid var(--line)}.holiday-person{display:flex;align-items:center;gap:8px}.holiday-person>div{display:flex;flex-direction:column}.holiday-person span,.holiday-person small{color:var(--muted);font-size:.7rem}.status-pill{border-radius:999px;padding:4px 8px;font-size:.67rem;font-weight:800}.status-pill.approved{background:#e0f0df;color:#2c7448}.status-pill.requested{background:#fff1c9;color:#7d610d}.status-pill.rejected,.status-pill.cancelled{background:#f6e4e1;color:#904238}.holiday-actions{display:flex;gap:4px}.icon-button.positive{color:#2d7b49}.icon-button.negative{color:#a3463b}.form-feedback{margin:0;color:var(--green-650)}.modal-backdrop{position:fixed;inset:0;background:#0d21158f;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:100;display:grid;place-items:center;padding:20px}.modal-card{width:min(510px,100%);max-height:calc(100vh - 40px);background:#fff;border-radius:15px;box-shadow:0 28px 80px #081c1047;display:flex;flex-direction:column;overflow:hidden}.modal-card.wide{width:min(980px,100%)}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:17px 19px;border-bottom:1px solid var(--line)}.modal-header h2{margin:2px 0 0;font-size:1.08rem}.modal-content{padding:18px;overflow:auto}.empty-state{min-height:180px;border:1px dashed #cbd7cb;border-radius:11px;display:grid;place-items:center;align-content:center;text-align:center;color:var(--muted);padding:22px;grid-column:1/-1}.empty-state h3{margin:8px 0 3px;color:var(--ink);font-size:.95rem}.empty-state p{margin:0;font-size:.78rem}.empty-calendar-icon{width:42px;height:42px;border:2px solid #9bb09f;border-radius:9px;display:grid;place-items:center}.empty-calendar-icon span{font-size:1.3rem}.loading-screen{min-height:100vh;display:grid;place-content:center;text-align:center;color:var(--muted)}.loader{width:36px;height:36px;border:4px solid #d7e1d6;border-top-color:var(--green-800);border-radius:50%;animation:spin .8s linear infinite;margin:auto}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:1050px){.app-shell{grid-template-columns:195px minmax(0,1fr)}.sidebar nav button{padding-inline:9px}.main-content{padding:20px}.hours-row{grid-template-columns:90px 1fr 125px 60px 110px}.hours-row>.button{grid-column:2/-1;justify-self:end}.planning-form{grid-template-columns:1fr}.people-picker{min-height:300px}.planning-actions,.planning-error{grid-column:auto}}@media(max-width:760px){.app-shell{display:block}.sidebar{display:none}.mobile-header{display:flex;position:sticky;top:0;z-index:30;background:var(--green-950);color:#fff;min-height:58px;padding:9px 13px;justify-content:space-between;align-items:center}.mobile-header .brand{padding:0}.mobile-header .brand-logo{width:36px;height:36px;border-radius:9px}.mobile-header-actions{display:flex;align-items:center;gap:8px}.mobile-language-picker{width:auto;padding:5px 7px;border-radius:8px;border:1px solid var(--line);background:#fff;font-weight:800;color:var(--green-950)}.install-app.compact{margin:0;padding:0}.install-app.compact>button{width:36px;height:36px;padding:0;background:#ffffff1a}.install-app.compact .install-help{position:fixed;inset:66px 12px auto;width:auto}.mobile-nav{display:flex;background:#fff;border-bottom:1px solid var(--line);overflow-x:auto;position:sticky;top:58px;z-index:28}.mobile-nav button{border:0;background:transparent;color:var(--muted);display:flex;align-items:center;gap:5px;padding:11px 12px;white-space:nowrap;font-size:.75rem;font-weight:700;border-bottom:3px solid transparent}.mobile-nav button.active{color:var(--green-950);border-color:var(--green-650)}.calendar-toolbar{position:static;grid-template-columns:auto 1fr;padding:10px 12px;min-height:62px}.calendar-toolbar h2{font-size:.85rem;text-align:right}.view-switcher{grid-column:1/-1;justify-self:stretch}.view-switcher button{flex:1}.main-content{padding:15px 10px 40px}.workspace-heading{align-items:flex-start}.workspace-heading h1{font-size:1.35rem}.workspace-heading p:last-child{display:none}.week-board{grid-template-columns:repeat(7,minmax(138px,1fr));min-height:480px}.month-board{grid-template-columns:repeat(7,minmax(92px,1fr));overflow-x:auto}.month-day{min-height:110px}.team-day-grid{grid-template-columns:1fr}.bulk-toolbar{flex-wrap:wrap}.selection-hint{display:none}.form-row,.form-row.three,.resource-create .form-row{grid-template-columns:1fr}.planning-form{gap:13px}.person-context{grid-template-columns:36px 1fr}.person-context select{grid-column:1/-1}.date-switcher{overflow-x:auto;grid-template-columns:repeat(7,minmax(76px,1fr))}.hours-row{grid-template-columns:90px 1fr 90px}.hours-times{grid-column:2}.hours-total{grid-column:3;grid-row:1}.hours-status{grid-column:3}.hours-row>.button{grid-column:2/-1}.holiday-layout{grid-template-columns:1fr}.quick-create{grid-template-columns:1fr 45px}.quick-create .button{grid-column:1/-1}.team-settings-grid,.member-assignment{grid-template-columns:1fr}.modal-backdrop{padding:8px;align-items:end}.modal-card{max-height:94vh;border-radius:15px 15px 0 0}}.button.danger{background:#a84336;color:#fff}.button.danger:hover{background:#8f342a}.button.small{padding:7px 9px;font-size:.72rem}.danger-text{color:#a84336!important}.confirm-stack{display:grid;gap:14px}.confirm-stack p{margin:0;color:var(--muted);line-height:1.55}.vacation-override{flex-direction:row;align-items:flex-start;background:#fff4ce;color:#775b0a;padding:10px;border-radius:8px}.vacation-override input{width:auto;margin-top:2px}.planning-message{margin:0 0 12px}.team-week-cell.draggable{cursor:grab}.team-week-cell.draggable:active{cursor:grabbing}.team-week-cell-actions button.approved{background:#dff0df;color:#257044;border-color:#b8d8be}.resource-buttons{display:flex;align-items:center;gap:3px}.inline-warning{grid-column:1 / -1;background:#fff4ce;border:1px solid #ead694;border-radius:8px;padding:11px}.inline-warning p{margin:4px 0 9px;color:#775b0a;font-size:.75rem}.inline-warning>div{display:flex;gap:7px;justify-content:flex-end}.editable-resource small{color:#8a5b0e;font-size:.67rem}.archived-resources{border:1px solid var(--line);border-radius:10px;background:#f7f9f6;padding:11px}.archived-resources>summary{cursor:pointer;color:var(--green-800);font-weight:800}.archived-resources>p{margin:7px 0 10px;color:var(--muted);font-size:.74rem}.archived-resources .editable-resource{opacity:.72}.people-management{gap:12px}.people-management-header{background:linear-gradient(135deg,#173f27,#28633d);color:#fff;border-radius:13px;padding:18px;display:grid;grid-template-columns:1fr auto;align-items:center;gap:5px 14px}.people-management-header h3{margin:0 0 3px;font-size:1.1rem}.people-management-header p{margin:0;color:#c5d8c9;font-size:.78rem}.people-management-header small{grid-column:1 / -1;color:#abc5b1}.people-management-header .button{background:#fff}.people-toolbar{background:#fff;border:1px solid var(--line);border-radius:11px;padding:10px;display:flex;align-items:center;justify-content:space-between;gap:10px}.people-search{position:relative;flex:1;max-width:520px}.people-search svg{position:absolute;left:11px;bottom:10px;color:var(--muted)}.people-search input{padding-left:36px}.people-toolbar>span{color:var(--muted);font-size:.72rem}.add-person-panel{background:#fff;border:1px solid var(--line);border-radius:11px;overflow:hidden}.add-person-panel summary{padding:11px 13px;cursor:pointer;color:var(--green-800);font-size:.78rem;font-weight:800;display:flex;align-items:center;gap:6px}.add-person-panel .resource-create{border:0;border-top:1px solid var(--line);border-radius:0}.people-admin-list{grid-template-columns:repeat(auto-fit,minmax(390px,1fr));align-items:start}.people-admin-list article.person-admin-card{border:1px solid var(--line);border-radius:12px;background:#fff;overflow:hidden;box-shadow:0 4px 13px #1c40260a}.people-admin-list article.person-admin-card.open{grid-column:1 / -1}.person-admin-summary{grid-template-columns:46px minmax(0,1fr) auto auto;min-height:78px}.person-avatar{width:44px;height:44px;border-radius:12px;object-fit:cover;background:#e4ece2}.person-avatar.fallback{display:grid;place-items:center;color:var(--green-800);font:800 1rem Manrope}.person-admin-summary>div strong{font-size:.87rem}.linked-account{color:#2f7b4a!important}.unlinked-account{color:#9b5e29!important}.vacation-count{background:#fff1c9;color:#7d610d!important;padding:5px 8px;border-radius:999px;white-space:nowrap;font-weight:700}.person-editor{grid-template-columns:1fr 1fr;align-items:start;background:#f7f9f6}.person-editor-block{background:#fff;border:1px solid var(--line);border-radius:10px;padding:13px;display:grid;gap:10px}.person-editor-block h4{margin:0;font:800 .78rem Manrope;color:var(--green-950)}.vacations-block{grid-column:1 / -1}.person-vacation{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding:7px 0;font-size:.76rem}.person-vacation:last-child{border-bottom:0}.person-vacation .status-pill{font-style:normal}.active-toggle{align-self:center}.person-editor>.button{align-self:center}@media(max-width:760px){.people-admin-list{grid-template-columns:1fr}.person-admin-summary{grid-template-columns:42px 1fr auto}.person-admin-summary .vacation-count{grid-column:2}.person-admin-summary .button{grid-column:3;grid-row:1 / span 2}.person-editor{grid-template-columns:1fr}.vacations-block{grid-column:auto}.people-management-header{grid-template-columns:1fr}.people-management-header .button{justify-self:start}}.team-week-board{display:grid;grid-template-columns:150px repeat(7,minmax(150px,1fr));width:100%;min-width:0;border:1px solid var(--line);border-radius:12px;overflow:auto;background:#fff}.team-week-corner{position:sticky;left:0;z-index:8;background:#edf3ec;display:flex;align-items:center;padding:12px;font-weight:800;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.team-week-day{border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:#fff}.team-week-day .calendar-day-header{border-bottom:0}.team-week-day .holiday-badges{padding:0 6px 6px}.team-week-row{grid-column:1 / -1;display:grid;grid-template-columns:150px repeat(7,minmax(150px,1fr));min-height:105px;border-bottom:1px solid var(--line)}.team-week-row:last-child{border-bottom:0}.team-week-name{position:sticky;left:0;z-index:6;background:#f8faf7;border-right:1px solid var(--line);border-left:5px solid var(--team-color);padding:12px 9px;display:flex;gap:7px;align-items:flex-start}.team-week-name i{width:9px;height:9px;border-radius:50%;background:var(--team-color);margin-top:4px;flex:0 0 auto}.team-week-name strong{font-size:.78rem}.team-week-cell{position:relative;border-right:1px solid var(--line);padding:30px 5px 6px;display:grid;align-content:start;gap:5px;min-width:0}.team-week-cell-actions{position:absolute;top:4px;right:4px;display:flex;gap:3px}.team-week-cell-actions button{border:1px solid var(--line);background:#fff;color:var(--green-800);width:23px;height:23px;border-radius:6px;display:grid;place-items:center;padding:0}.team-week-details{border:1px solid #dbe7cf;background:#f0f4ea;color:#375326;border-radius:7px;padding:5px 6px;text-align:left;font-size:.65rem;display:flex;align-items:center;justify-content:flex-start;gap:4px;font-weight:700}.team-week-details small{color:var(--muted)}.team-week-empty{border:1px dashed #ccd7cc;background:transparent;color:var(--muted);border-radius:7px;min-height:43px;font-size:.7rem}.calendar-entry.compact{padding:7px 7px 6px;min-height:0}.calendar-entry.compact .entry-time{font-size:.68rem}.calendar-entry.compact .entry-tags{display:flex}.calendar-entry.compact .entry-tags span:not(.entry-location-tag){display:none}.entry-edit{position:absolute;right:4px;top:4px;width:23px;height:23px;display:grid;place-items:center;border:0;border-radius:6px;background:#ffffffd9;color:var(--green-800)}.team-name-tag{border-left:3px solid var(--tag-color)!important}.team-day-actions{display:flex;align-items:center;gap:5px}.team-day-actions .button{padding:5px 7px}.day-details.editable{width:100%;border:0;text-align:left;cursor:pointer}.editing-person-banner{background:#edf4eb;border-radius:9px;padding:10px;display:flex;align-items:center;gap:9px}.editing-person-banner div{display:flex;flex-direction:column}.editing-person-banner small{color:var(--muted)}.planning-form.single-person{display:block}.planning-form.single-person .planning-actions{margin-top:14px}.hours-row{grid-template-columns:90px minmax(135px,.7fr) minmax(360px,1.5fr) 62px 108px 105px}.inline-hours-editor{display:grid;grid-template-columns:1fr 1fr 88px 34px;gap:7px;align-items:end}.inline-hours-editor label{font-size:.66rem}.inline-hours-editor input{min-height:42px;font-size:1rem;font-weight:800;padding:7px}.inline-hours-editor label:last-of-type{position:relative}.inline-hours-editor label:last-of-type small{position:absolute;right:7px;bottom:13px}.inline-hours-editor label:last-of-type input{padding-right:30px}.inline-hours-editor .icon-button{margin-bottom:1px;width:40px;height:40px}.hours-times-readonly{display:flex;flex-direction:column;font-size:1rem}.hours-times-readonly span{color:var(--muted);font-size:.72rem}.hours-form-times{display:grid;grid-template-columns:1fr 1fr 110px;gap:10px}.hours-form-times input{min-height:48px;font-size:1.08rem;font-weight:800}.resource-list article.editable-resource{grid-template-columns:10px 1fr auto}.resource-list article.editable-resource.open{grid-template-columns:10px 1fr auto}.resource-editor{grid-column:1 / -1;border-top:1px solid var(--line);padding-top:12px;display:grid;grid-template-columns:1.4fr 1fr 1fr .8fr 58px auto auto;align-items:end;gap:8px}.resource-editor.vehicle{grid-template-columns:1fr 70px auto auto}.resource-editor input[type=color]{padding:3px;height:39px}.people-admin-list article.person-admin-card{display:block;padding:0}.person-admin-summary{display:grid;grid-template-columns:34px 1fr auto;align-items:center;gap:10px;padding:12px}.person-admin-summary>div{display:flex;flex-direction:column}.person-admin-summary span,.person-admin-summary small{color:var(--muted);font-size:.7rem}.mini-avatar.image{object-fit:cover;padding:0}.person-editor{border-top:1px solid var(--line);background:#fbfcfa;padding:14px;display:grid;gap:11px}.person-editor>.button{justify-self:end}.notice:not(.error):not(.warning){background:#edf4eb;color:#315b44;border:1px solid #cfddce}.planning-layout-settings{padding:15px;border:1px solid var(--line);border-radius:12px;background:#f7f9f6}.planning-layout-settings h3{margin:0}.planning-layout-settings p{margin:4px 0 13px;color:var(--muted);font-size:.76rem}.planning-layout-preview{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:8px}.planning-layout-preview article{display:flex;align-items:center;gap:9px;min-width:0;padding:10px;border:1px solid var(--line);border-radius:9px;background:#fff}.planning-layout-preview article>span{width:28px;height:28px;flex:0 0 auto;display:grid;place-items:center;border-radius:7px;background:#e8f0e6;color:var(--green-800);font-weight:800}.planning-layout-preview article div{min-width:0;display:flex;flex-direction:column}.planning-layout-preview article small{overflow:hidden;color:var(--muted);text-overflow:ellipsis;white-space:nowrap}.quick-create.team-create{grid-template-columns:minmax(180px,1fr) minmax(180px,.8fr) 48px auto}.team-planning-position{padding:12px;border:1px solid #d8e2d5;border-radius:10px;background:#f7faf6}.team-planning-position>header{display:flex;flex-direction:column;margin-bottom:9px}.team-planning-position>header small,.team-planning-position label small{color:var(--muted);font-size:.68rem}@media(max-width:1050px){.hours-row{grid-template-columns:85px 1fr}.inline-hours-editor{grid-column:1 / -1}.hours-total,.hours-status{grid-column:auto}.hours-row>.button{grid-column:auto}.resource-editor,.resource-editor.vehicle{grid-template-columns:1fr 1fr}.quick-create.team-create{grid-template-columns:1fr 1fr 48px}.quick-create.team-create .button{grid-column:1 / -1}}@media(max-width:760px){.hours-form-times{grid-template-columns:1fr 1fr}.hours-form-times label:last-child{grid-column:1 / -1}.inline-hours-editor{grid-template-columns:1fr 1fr 80px 38px}.team-week-board,.team-week-row{grid-template-columns:125px repeat(7,minmax(135px,1fr))}.resource-editor,.resource-editor.vehicle,.person-editor .form-row{grid-template-columns:1fr}.quick-create.team-create{grid-template-columns:1fr 48px}.quick-create.team-create input[list]{grid-column:1 / -1}}.people-management .person-admin-summary{grid-template-columns:46px minmax(0,1fr) auto auto;min-height:78px}.people-management .person-editor{grid-template-columns:1fr 1fr;align-items:start;background:#f7f9f6}.people-management .vacations-block{grid-column:1 / -1}@media(max-width:760px){.people-management .person-admin-summary{grid-template-columns:42px 1fr auto}.people-management .person-editor{grid-template-columns:1fr}.people-management .vacations-block{grid-column:auto}}.team-week-row-wrap{display:contents}.team-group-divider{grid-column:1 / -1;position:sticky;left:0;z-index:7;min-height:34px;display:flex;align-items:center;padding:6px 12px;background:#e9f0e7;border-top:8px solid white;border-bottom:1px solid #d2ddd0;color:var(--green-900);font:800 .72rem Manrope;letter-spacing:.04em;text-transform:uppercase}.team-group-divider.harvest{background:#edf4e4}.team-group-divider.seal{background:#e8f1f2}.team-group-divider.students{background:#f5eee2}.day-group-divider{grid-column:1 / -1;margin-top:12px;padding:8px 12px;border-radius:9px;background:#e9f0e7;color:var(--green-900);font:800 .76rem Manrope;letter-spacing:.04em;text-transform:uppercase}.day-group-divider:first-child{margin-top:0}.day-group-divider.harvest{background:#edf4e4}.day-group-divider.seal{background:#e8f1f2}.day-group-divider.students{background:#f5eee2}.calendar-entry[draggable=true]{cursor:grab}.calendar-entry[draggable=true]:active{cursor:grabbing;opacity:.72}.weekday-picker{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}.weekday-picker button{min-height:38px;border:1px solid var(--line);border-radius:8px;background:#f7f9f6;color:var(--muted);font-weight:800}.weekday-picker button.active{background:var(--green-800);border-color:var(--green-800);color:#fff}.availability-block p{margin:0;color:var(--muted);font-size:.75rem;line-height:1.45}.notice.compact{margin:0;padding:10px;font-size:.75rem}.fellows-override-block{grid-column:1 / -1;border-color:#e4c77e;background:#fffaf0}.fellows-override-block>div{display:flex;align-items:center;justify-content:space-between;gap:10px}.fellows-override-block p{margin:0;color:#755f32;font-size:.76rem;line-height:1.5}.fellows-override-block .override-toggle{padding:10px;border-radius:8px;background:#fff;border:1px solid #ead8aa}.fellows-override-block .override-toggle span{font-weight:800;color:var(--green-900)}.vacation-calendar{background:#fff;border:1px solid var(--line);border-radius:13px;overflow:hidden;margin-bottom:16px}.vacation-calendar>header{min-height:66px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;padding:10px 14px;border-bottom:1px solid var(--line)}.vacation-calendar>header h3{margin:0;text-align:center;text-transform:capitalize}.vacation-calendar>header .view-switcher{justify-self:end}.vacation-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(110px,1fr));overflow:auto}.vacation-weekday{padding:7px 10px;background:#f3f6f2;color:var(--muted);border-right:1px solid var(--line);text-transform:uppercase;font:800 .65rem Manrope}.vacation-calendar-grid article{min-height:118px;padding:8px;border-top:1px solid var(--line);border-right:1px solid var(--line);background:#fff}.vacation-calendar.week .vacation-calendar-grid article{min-height:210px}.vacation-calendar-grid article.today{box-shadow:inset 0 0 0 2px var(--green-700);background:#fbfdf9}.vacation-date{display:flex;align-items:baseline;gap:5px;margin-bottom:7px}.vacation-date strong{font:800 1rem Manrope}.vacation-date span,.vacation-date small{color:var(--muted);font-size:.65rem}.vacation-calendar-event{display:flex;align-items:center;gap:5px;width:100%;min-width:0;margin:3px 0;padding:4px 6px;border-radius:6px;background:#e3efe3;color:#315b44;font-size:.67rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.vacation-calendar-event.requested{background:#fff0ce;color:#855e13}.vacation-calendar-event i{width:17px;height:17px;flex:0 0 auto;display:grid;place-items:center;border-radius:50%;background:#ffffffb3;font-style:normal;font-weight:800}.vacation-calendar-event i{overflow:hidden}.vacation-calendar-event i img{width:100%;height:100%;object-fit:cover}.dashboard-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.dashboard-metric{display:flex;align-items:center;gap:12px;padding:16px;border:1px solid var(--line);border-radius:12px;background:#fff}.dashboard-metric>span{width:40px;height:40px;display:grid;place-items:center;border-radius:10px;background:#e9f1e8;color:var(--green-800)}.dashboard-metric.warning>span{background:#fff0ce;color:#8a5f0e}.dashboard-metric.positive>span{background:#def0df;color:#327044}.dashboard-metric div{display:flex;flex-direction:column}.dashboard-metric strong{font:800 1.45rem Manrope;color:var(--green-950)}.dashboard-metric small{color:var(--muted)}.dashboard-grid{display:grid;grid-template-columns:1.3fr .7fr;gap:14px;margin-top:14px}.dashboard-panel{padding:16px;border:1px solid var(--line);border-radius:12px;background:#fff}.dashboard-panel>header h3,.history-heading h3{margin:0}.dashboard-panel>header p,.history-heading p{margin:4px 0 14px;color:var(--muted);font-size:.76rem}.dashboard-action{width:100%;display:flex;align-items:center;gap:11px;padding:12px 4px;border:0;border-top:1px solid var(--line);background:transparent;text-align:left}.dashboard-action>span{width:34px;height:34px;display:grid;place-items:center;border-radius:9px;background:#edf3ec;color:var(--green-800)}.dashboard-action>span.warning{background:#fff0ce;color:#865d12}.dashboard-action>span.danger{background:#fce7e3;color:#9d3f31}.dashboard-action div{display:flex;flex-direction:column;gap:2px}.dashboard-action small{color:var(--muted)}.dashboard-team-list>div{display:flex;justify-content:space-between;align-items:center;padding:10px 0;border-top:1px solid var(--line)}.dashboard-team-list span{display:flex;align-items:center;gap:8px}.dashboard-team-list i{width:9px;height:9px;border-radius:50%}.dashboard-empty{color:var(--muted)}.history-heading{display:flex;justify-content:space-between;gap:12px}.history-list article{display:grid;grid-template-columns:36px 1fr auto;align-items:center;gap:10px;padding:11px 0;border-top:1px solid var(--line)}.history-icon{width:34px;height:34px;display:grid;place-items:center;border-radius:9px;background:#edf3ec;color:var(--green-800)}.history-list article div{display:flex;flex-direction:column}.history-list article span,.history-list article small{color:var(--muted);font-size:.7rem}@media(max-width:900px){.dashboard-metrics{grid-template-columns:1fr 1fr}.dashboard-grid{grid-template-columns:1fr}.vacation-calendar>header{grid-template-columns:1fr}.vacation-calendar>header h3{text-align:left}.vacation-calendar>header .view-switcher{justify-self:start}}@media(max-width:560px){.dashboard-metrics{grid-template-columns:1fr}.weekday-picker{grid-template-columns:repeat(4,1fr)}}.tablet-vehicle-panel{margin:-7px 0 15px;border:1px solid var(--line);border-radius:12px;background:#fff;overflow:hidden}.tablet-vehicle-panel>header{min-height:50px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 13px;color:var(--green-900)}.tablet-vehicle-panel>header>span{display:flex;align-items:center;gap:8px}.tablet-vehicle-panel>header small{color:var(--muted)}.tablet-vehicle-panel .notice{margin:0 10px 8px}.tablet-vehicle-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(310px,1fr));gap:7px;padding:10px;border-top:1px solid var(--line);background:#f6f9f5}.tablet-vehicle-grid article{min-width:0;display:grid;grid-template-columns:38px minmax(0,1fr) minmax(125px,.8fr);align-items:center;gap:9px;border-left:4px solid var(--team-color);border-radius:9px;padding:8px;background:#fff}.tablet-vehicle-grid .mini-avatar{width:38px;height:38px;border-radius:9px;display:grid;place-items:center;overflow:hidden;background:#e4ece2;color:var(--green-800);font-weight:800}.tablet-vehicle-grid .mini-avatar img{width:100%;height:100%;object-fit:cover}.tablet-vehicle-grid article>div{min-width:0;display:flex;flex-direction:column}.tablet-vehicle-grid article strong,.tablet-vehicle-grid article small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tablet-vehicle-grid article small{color:var(--muted);font-size:.66rem}@media(pointer:coarse){input,select,textarea{min-height:46px}.button,.today-button,.settings-tabs button{min-height:44px}.icon-button{width:44px;height:44px}.team-week-cell-actions button{width:34px;height:34px}.team-week-cell{padding-top:44px}.team-week-cell-actions{top:4px;left:5px;right:5px;justify-content:flex-end}.team-week-details{min-height:38px;padding:7px}.calendar-entry.compact{min-height:48px;padding:9px}}@media(min-width:700px)and (max-width:1200px){.modal-card.wide{width:calc(100vw - 24px);max-height:calc(100dvh - 24px)}.planning-form{grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr)}.people-options label{min-height:46px}.team-week-board,.team-week-row{grid-template-columns:145px repeat(7,minmax(170px,1fr))}.tablet-vehicle-grid select{min-height:48px;font-size:.95rem}}@media(max-width:760px){.workspace-heading{flex-direction:column;gap:12px;margin-bottom:15px}.workspace-heading>.button{width:100%;min-height:48px}.date-switcher{scroll-snap-type:x mandatory}.date-switcher button{min-height:74px;scroll-snap-align:start}.hours-list{gap:10px}.hours-row{grid-template-columns:minmax(0,1fr) auto;gap:9px;padding:12px;border-radius:13px}.hours-date{grid-column:1}.hours-team{grid-column:1 / -1;padding:8px;border-radius:9px;background:#f5f8f4}.inline-hours-editor,.hours-times-readonly{grid-column:1 / -1}.inline-hours-editor{grid-template-columns:1fr 1fr;padding-top:4px}.inline-hours-editor label:last-of-type{grid-column:1}.inline-hours-editor .icon-button{grid-column:2;align-self:end;width:100%}.hours-total{grid-column:2;grid-row:1;text-align:right}.hours-status{grid-column:2;grid-row:2;justify-self:end}.hours-row>.button{grid-column:1 / -1;width:100%;min-height:44px;border-top:1px solid var(--line)}.modal-backdrop{padding:0}.modal-card,.modal-card.wide{width:100%;max-height:96dvh;border-radius:16px 16px 0 0}.modal-content{padding:14px}.form-stack .form-row,.hours-form-times{grid-template-columns:1fr}.hours-form-times label:last-child{grid-column:auto}.form-actions{position:sticky;bottom:-14px;margin:8px -14px -14px;padding:12px 14px max(12px,env(safe-area-inset-bottom));background:#fff;border-top:1px solid var(--line)}.form-actions .button{min-height:48px;flex:1}.tablet-vehicle-grid{grid-template-columns:1fr}.tablet-vehicle-grid article{grid-template-columns:42px minmax(0,1fr)}.tablet-vehicle-grid select{grid-column:1 / -1;min-height:48px}}
