@charset "UTF-8";:root{color-scheme:light;font:100%/1.5 system-ui,-apple-system,BlinkMacSystemFont,SF Pro Text,Segoe UI,sans-serif;--ink: #17201c;--muted: #66716b;--paper: #f3f4f0;--surface: rgba(255, 255, 255, .78);--solid: #fff;--line: rgba(26, 40, 33, .11);--green: #1f6f50;--green-deep: #14533b;--green-soft: #e3f0e9;--amber: #a86616;--red: #a84444;--blue: #276995;--shadow-sm: 0 1px 2px rgba(20, 32, 26, .05), 0 6px 18px rgba(20, 32, 26, .06);--shadow-lg: 0 24px 70px rgba(20, 32, 26, .19), 0 3px 12px rgba(20, 32, 26, .08);--radius-sm: .55rem;--radius-md: .85rem;--radius-lg: 1.3rem}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{background:var(--paper);color:var(--ink)}button,input,select,textarea{font:inherit}button{color:inherit}:focus-visible{outline:3px solid rgba(39,105,149,.34);outline-offset:2px}.eyebrow{margin:0 0 .25rem;color:var(--green);font-size:.72rem;font-weight:750;letter-spacing:.09em;text-transform:uppercase}.center-state{min-height:100vh;display:grid;place-content:center;gap:1rem;text-align:center;color:var(--muted)}.center-state--error{color:var(--red)}@media(prefers-reduced-transparency:reduce){:root{--surface: #fff}.app-header,.booking-editor{-webkit-backdrop-filter:none!important;backdrop-filter:none!important}}@media(prefers-contrast:more){:root{--line: #52605a;--muted: #3e4944}}.button{min-height:2.65rem;border:0;border-radius:.72rem;padding:.65rem 1rem;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;font-weight:680;cursor:pointer;transition:transform .12s ease,background .16s ease,box-shadow .16s ease}.button:active{transform:scale(.975)}.button:disabled{cursor:wait;opacity:.58}.button--primary{background:var(--green);color:#fff;box-shadow:0 7px 18px #1f6f5033}.button--primary:hover{background:var(--green-deep)}.button--secondary{background:#eeeeeeb8;box-shadow:inset 0 0 0 1px var(--line)}.button--secondary:hover{background:#fff}.button--quiet{background:transparent;color:var(--green)}.button--danger{background:var(--red);color:#fff;box-shadow:0 7px 18px #a844442e}.button--danger-quiet{background:transparent;color:var(--red)}.icon-button{width:2.65rem;height:2.65rem;border:0;border-radius:50%;background:#ffffffad;box-shadow:inset 0 0 0 1px var(--line);display:grid;place-items:center;cursor:pointer;transition:transform .12s ease,background .16s ease}.icon-button:hover{background:#fff}.icon-button:active{transform:scale(.93)}.segment{min-height:2.5rem;padding:.55rem .8rem;display:inline-flex;align-items:center;gap:.4rem;border:0;background:transparent;border-radius:.65rem;color:var(--muted);font-weight:650;cursor:pointer}.segment--active{background:#fff;color:var(--ink);box-shadow:var(--shadow-sm)}.field{display:grid;gap:.38rem;color:var(--muted);font-size:.78rem;font-weight:650;min-width:0}.field input,.field select,.field textarea{width:100%;border:1px solid var(--line);background:#ffffffd1;border-radius:.7rem;padding:.7rem .78rem;color:var(--ink);font-weight:480}.field input:focus,.field select:focus,.field textarea:focus{border-color:#1f6f508c;box-shadow:0 0 0 3px #1f6f501a;outline:0}.field input[aria-invalid=true],.field select[aria-invalid=true],.field textarea[aria-invalid=true]{border-color:var(--red);box-shadow:0 0 0 3px #a844441a}.field textarea{resize:vertical}.field__error{color:var(--red);font-size:.72rem;font-weight:600}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.callout{border-radius:.72rem;padding:.75rem .9rem;font-size:.86rem;display:flex;align-items:center;justify-content:space-between;gap:.7rem}.callout--error{background:#f9e8e6;color:#852f2f}.callout--success{margin:1rem;background:var(--green-soft);color:var(--green-deep);justify-content:flex-start}.form{display:grid;gap:1rem;margin-top:1.7rem}.form label{display:grid;gap:.4rem;color:var(--muted);font-size:.8rem;font-weight:650}.form input{border:1px solid var(--line);border-radius:.8rem;padding:.8rem;background:#fffc;font-size:1rem}.form__message{margin:0;padding:.65rem .8rem;border-radius:.7rem;background:#f6eee1;color:#80561d;font-size:.84rem}.invite-expired{display:grid;gap:1rem;margin-top:1.4rem}.invite-expired p{margin:0;color:var(--muted);line-height:1.5}.login{min-height:100vh;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(25rem,.85fr);background:radial-gradient(circle at 16% 25%,rgba(81,143,109,.19),transparent 30%),linear-gradient(135deg,#e9eee8,#f6f5ef 56%,#ecece7)}.login__intro{padding:clamp(3rem,8vw,8rem);display:flex;flex-direction:column;justify-content:center;max-width:54rem}.login__intro h1{margin:.5rem 0 1rem;font-size:clamp(2.8rem,5.8vw,5.8rem);line-height:.98;letter-spacing:-.055em;font-weight:730;max-width:12ch}.login__intro p:last-child{max-width:37rem;color:var(--muted);font-size:clamp(1rem,1.5vw,1.22rem)}.login__mark{width:4.4rem;height:4.4rem;position:relative;margin-bottom:2rem}.login__mark span{position:absolute;width:2.4rem;height:1.25rem;border:2px solid var(--green);border-radius:.25rem;transform:skewY(-14deg)}.login__mark span:nth-child(1){left:0;top:0}.login__mark span:nth-child(2){right:0;top:1rem}.login__mark span:nth-child(3){left:.7rem;bottom:0}.login__panel{align-self:center;margin:2rem;padding:clamp(2rem,5vw,4.5rem);border-radius:1.8rem;background:#ffffffa8;-webkit-backdrop-filter:blur(28px) saturate(145%);backdrop-filter:blur(28px) saturate(145%);box-shadow:var(--shadow-lg);border:1px solid rgba(255,255,255,.75)}.login__panel h2{margin:.75rem 0 .3rem;font-size:2rem;letter-spacing:-.035em}.login__panel>p{margin:0;color:var(--muted)}.login__icon{width:3rem;height:3rem;display:grid;place-items:center;border-radius:.9rem;background:var(--green-soft);color:var(--green)}@media(max-width:800px){.login{grid-template-columns:1fr}.login__intro{padding:3rem 1.5rem 1rem}.login__intro h1{font-size:2.8rem}.login__panel{margin:1rem;border-radius:1.3rem;padding:1.5rem}.login__mark{display:none}}.app-shell{min-height:100vh}.app-header{position:sticky;top:0;z-index:40;height:4.5rem;padding:.65rem 1rem;display:flex;align-items:center;gap:1rem;background:#f4f5f2ba;-webkit-backdrop-filter:blur(22px) saturate(160%);backdrop-filter:blur(22px) saturate(160%);border-bottom:1px solid rgba(255,255,255,.7)}.app-header__brand{display:flex;align-items:center;gap:.65rem;margin-right:auto;line-height:1.15;color:var(--ink);text-decoration:none}.app-header__brand-copy{display:grid}.app-header__brand-copy small{font-size:.72rem;color:var(--muted)}.app-header__symbol{flex:0 0 auto;width:1.8rem;height:1.8rem;border-radius:.55rem;background:linear-gradient(145deg,#398061,#16523c);box-shadow:inset 0 1px 1px #fff6}.app-header__nav{display:flex;gap:.2rem;overflow:auto}.company-switcher{position:relative;flex:0 0 auto}.company-switcher__trigger{min-height:2.75rem;max-width:15rem;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.5rem;padding:.36rem .58rem .36rem .7rem;border:1px solid var(--line);border-radius:.82rem;background:#ffffffb8;box-shadow:0 1px 2px #14201a0a;cursor:pointer;transition:background .14s ease,box-shadow .16s ease,transform .1s ease-out}.company-switcher__trigger:hover{background:#fffffff0;box-shadow:var(--shadow-sm)}.company-switcher__trigger:active{transform:scale(.98)}.company-switcher__label{min-width:0;display:grid;text-align:left;line-height:1.15}.company-switcher__label small{color:var(--muted);font-size:.62rem;font-weight:650}.company-switcher__label strong{overflow:hidden;color:var(--ink);font-size:.78rem;font-weight:720;text-overflow:ellipsis;white-space:nowrap}.company-switcher__chevron{color:var(--muted);transition:transform .18s cubic-bezier(.2,.85,.25,1)}.company-switcher--open .company-switcher__trigger{background:#fff;box-shadow:var(--shadow-sm)}.company-switcher--open .company-switcher__chevron{transform:rotate(180deg)}.company-switcher__menu{position:absolute;z-index:80;top:calc(100% + .45rem);right:0;width:min(20rem,100vw - 1.5rem);padding:.45rem;border:1px solid rgba(26,40,33,.12);border-radius:1rem;background:#fafaf8f0;-webkit-backdrop-filter:blur(24px) saturate(160%);backdrop-filter:blur(24px) saturate(160%);box-shadow:0 18px 48px #14201a33,0 2px 8px #14201a14;transform-origin:top right;animation:company-switcher-in .18s cubic-bezier(.2,.85,.25,1)}.company-switcher__menu-heading{padding:.35rem .55rem .45rem;color:var(--muted);font-size:.64rem;font-weight:750;letter-spacing:.06em;text-transform:uppercase}.company-switcher__options{display:grid;gap:.18rem;max-height:min(20rem,55vh);overflow-y:auto}.company-switcher__option,.company-switcher__create{width:100%;min-height:2.65rem;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.6rem;padding:.55rem .65rem;border:0;border-radius:.7rem;background:transparent;text-align:left;cursor:pointer;transition:background .12s ease,transform .1s ease-out}.company-switcher__option:hover,.company-switcher__option:focus-visible,.company-switcher__create:hover,.company-switcher__create:focus-visible{background:#1f6f5014}.company-switcher__option:active,.company-switcher__create:active{transform:scale(.985)}.company-switcher__option>span:nth-child(2){overflow:hidden;font-size:.8rem;font-weight:680;text-overflow:ellipsis;white-space:nowrap}.company-switcher__option--active{background:var(--green-soft);color:var(--green-deep)}.company-switcher__option-icon{width:1.8rem;height:1.8rem;display:grid;place-items:center;border-radius:.55rem;background:#ffffffbf;color:var(--green);box-shadow:inset 0 0 0 1px #1f6f501a}.company-switcher__create{grid-template-columns:auto minmax(0,1fr);margin-top:.38rem;padding-top:.7rem;border-top:1px solid var(--line);border-radius:0 0 .7rem .7rem;color:var(--green-deep);font-size:.78rem;font-weight:720}@keyframes company-switcher-in{0%{opacity:0;transform:translateY(-.3rem) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}@media(prefers-reduced-motion:reduce){.company-switcher__menu{animation:none}.company-switcher__chevron{transition:none}}@media(prefers-reduced-transparency:reduce){.company-switcher__menu{background:#fff;-webkit-backdrop-filter:none;backdrop-filter:none}}.nav-pill{border:0;background:transparent;border-radius:1rem;padding:.55rem .85rem;color:var(--muted);font-weight:650;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;gap:.35rem;white-space:nowrap}.nav-pill--active{background:#ffffffc7;box-shadow:var(--shadow-sm);color:var(--ink)}.ledger{padding:1.5rem}.month-toolbar{display:flex;align-items:end;gap:1rem;margin:0 auto 1rem;max-width:1800px}.month-toolbar__title{margin-right:auto}.month-toolbar__title h1{margin:0;font-size:clamp(1.7rem,3vw,2.5rem);line-height:1.05;letter-spacing:-.04em;text-transform:capitalize}.month-toolbar__group{display:flex;align-items:center;gap:.3rem;padding:.25rem;border-radius:.9rem;background:#e3e5e0c2}.month-toolbar__period{min-width:5.4rem;padding-inline:.35rem;text-align:center;font-size:.82rem;font-weight:750;text-transform:capitalize;white-space:nowrap}.connection-status{max-width:1800px;margin:0 auto .65rem;color:var(--muted);font-size:.72rem;display:flex;justify-content:flex-end;align-items:center;gap:.38rem}.connection-status span{width:.45rem;height:.45rem;border-radius:50%;background:#3c996e;box-shadow:0 0 0 3px #3c996e1f}@media(max-width:800px){.app-header{gap:.45rem;padding-inline:.65rem}.app-header__brand{margin-right:0}.app-header__brand-copy{display:none}.app-header__nav{order:3;flex:1}.app-header .icon-button{flex:0 0 auto}.company-switcher{max-width:7.5rem}.company-switcher__trigger{max-width:7.5rem;grid-template-columns:minmax(0,1fr) auto;padding-inline:.55rem}.company-switcher__trigger>svg:first-child,.company-switcher__trigger small{display:none}.company-switcher__menu{position:fixed;top:4.15rem;right:.65rem;left:.65rem;width:auto;transform-origin:top center}.nav-pill{padding:.52rem .68rem}.ledger{padding:.8rem}.month-toolbar{align-items:stretch;flex-wrap:wrap}.month-toolbar__title{width:100%}.month-toolbar__group:last-child{margin-left:auto}.month-toolbar__period{min-width:4.2rem}.month-toolbar .segment{font-size:0;width:2.5rem;justify-content:center}}.ledger-calendar{position:relative;max-width:1800px;margin:auto}.ledger-calendar__loading{position:absolute;inset:0;z-index:50;display:flex;align-items:flex-start;justify-content:center;gap:.55rem;padding-top:4.8rem;border-radius:var(--radius-lg);background:#f8f9f685;-webkit-backdrop-filter:blur(1.5px);backdrop-filter:blur(1.5px);color:var(--ink);font-size:.78rem;font-weight:750}.ledger-calendar__spinner{width:.95rem;height:.95rem;border:2px solid rgba(31,111,80,.2);border-top-color:var(--green);border-radius:50%;animation:ledger-calendar-spin .7s linear infinite}@keyframes ledger-calendar-spin{to{transform:rotate(360deg)}}.month-grid{--columns: 6;max-width:1800px;margin:auto;min-width:960px;display:grid;grid-template-columns:6rem repeat(var(--columns),minmax(10rem,1fr));border:1px solid var(--line);border-radius:var(--radius-lg);overflow:auto;background:#ffffff8f;box-shadow:var(--shadow-sm);max-height:calc(80vh - 4.5rem)}.month-grid--week .planning-cell{min-height:8rem}.month-grid--day .planning-cell{min-height:18rem}.month-grid__header{position:sticky;top:0rem;z-index:20;min-height:3.8rem;padding:.75rem;border-bottom:1px solid var(--line);border-left:1px solid var(--line);background:#f8f9f6e0;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);display:grid;align-content:center;line-height:1.15;transition:background-color .14s ease,box-shadow .14s ease}.month-grid__header span{color:var(--muted);font-size:.67rem;margin-top:.2rem}.month-grid__header--date{left:0;z-index:30;border-left:0;color:var(--muted)}.month-grid__header--highlighted{background:#ddebe2f5;box-shadow:inset 0 -3px #1f6f5057}.month-grid__row{display:contents}.month-grid__row--sunday>.month-grid__date{background:#fbefee;color:#a64d4d}.month-grid__row--today>.month-grid__date{box-shadow:inset 4px 0 var(--green)}.month-grid__date{position:sticky;left:0;z-index:10;min-height:5.7rem;padding:.65rem;display:grid;align-content:start;grid-template-columns:auto 1fr;gap:.05rem .4rem;border-bottom:1px solid var(--line);background:#f8f8f5;transition:background-color .14s ease,box-shadow .14s ease}.month-grid__date strong{font-size:1.35rem;line-height:1;grid-row:1/3;grid-column:1}.month-grid__date span:last-child{font-size:.65rem;color:var(--muted)}.month-grid__row>.month-grid__date.month-grid__date--highlighted{background:#e3eee7;box-shadow:inset 4px 0 #1f6f5080}.month-grid__weekday{text-transform:capitalize;font-weight:680;font-size:.72rem}.planning-cell{position:relative;min-height:5.7rem;display:flex;flex-direction:column;padding:.38rem;border-left:1px solid var(--line);border-bottom:1px solid var(--line);background:#ffffff57;cursor:pointer;transition:background .15s ease,box-shadow .15s ease}.planning-cell--over{background:var(--green-soft);box-shadow:inset 0 0 0 2px #1f6f504d}.planning-cell__note{display:block;width:100%;margin:0 0 .32rem;padding:.35rem .45rem;border:0;border-radius:.45rem;background:#f6eecf;color:#6b5724;text-align:left;font-size:.7rem;white-space:pre-wrap;cursor:pointer}.planning-cell__note--readonly{cursor:default}.planning-cell__bookings{display:grid;gap:.3rem}.planning-cell__actions{position:relative;flex:1;min-height:2.4rem;display:flex;align-items:flex-end;justify-content:flex-end;margin-top:.25rem}.planning-cell__actions .planning-cell__note-action{position:relative;z-index:1;width:1.9rem;height:1.9rem;max-height:1.9rem;border:0;border-radius:.5rem;background:transparent;color:transparent;display:flex;align-items:center;justify-content:center;gap:.2rem;font-size:.7rem;cursor:pointer;align-self:end;transition:background .12s ease,color .12s ease,transform .1s ease-out}.planning-cell__actions .planning-cell__note-action:active{transform:scale(.985)}.planning-cell__add-hint{position:absolute;inset:0;width:auto;height:auto;max-height:none;display:grid;place-items:center;color:#8f9792;opacity:0;bottom:2.5rem;cursor:pointer;transition:opacity .14s ease,transform .14s ease;transform:scale(.9);background-color:var(--green-soft);border:2px solid var(--green-deep);border-radius:.5rem}.planning-cell__add-hint:focus-visible{opacity:1;transform:scale(1);outline:3px solid rgba(31,111,80,.35);outline-offset:2px}.planning-cell:hover .planning-cell__add-hint{opacity:.58;transform:scale(1)}.planning-cell:has(.booking-card:hover) .planning-cell__add-hint,.planning-cell:has(.planning-cell__note-action:hover) .planning-cell__add-hint{opacity:0;transform:scale(.9)}.planning-cell:has(.booking-card) .planning-cell__add-hint{right:2.5rem;bottom:0}.planning-cell__resource-load{flex:0 0 auto;display:flex;flex-wrap:wrap;gap:.28rem;margin-top:auto;padding-top:.38rem;border-top:1px solid rgba(26,40,33,.08);overflow-x:auto;scrollbar-width:none}.planning-cell__resource-load::-webkit-scrollbar{display:none}.planning-cell__resource-dot{flex:0 0 auto;min-width:1.55rem;height:1.55rem;display:grid;place-items:center;padding:0 .38rem;border:1px solid transparent;border-radius:999px;font-size:.66rem;font-weight:780;line-height:1;white-space:nowrap;cursor:help}.planning-cell__resource-dot--empty{border-color:#1f6f502e;background:#dcefe5;color:#14533b}.planning-cell__resource-dot--partial{border-color:#a8661633;background:#f4dfad;color:#6d480d}.planning-cell__resource-dot--full{border-color:#a8444433;background:#efcccc;color:#762d2d}.planning-cell__resource-dot--unavailable{border-color:#66716b2e;background:#e3e5e2;color:#52605a}.planning-cell:hover .planning-cell__note-action,.planning-cell:focus-within .planning-cell__note-action{background:var(--green);color:var(--green-soft)}@media(hover:none){.planning-cell__actions button{color:var(--green)}}.booking-card{position:relative;padding:.45rem .5rem .5rem;border:1px solid rgba(39,105,149,.14);border-left:3px solid var(--booking-status-color, var(--blue));border-radius:.58rem;background:#fff;box-shadow:0 1px 5px #1e2d2512;cursor:pointer;touch-action:none;transition:transform .12s ease,box-shadow .16s ease}.booking-card:hover{box-shadow:0 5px 16px #1e2d251f;transform:translateY(-1px)}.booking-card:active{transform:scale(.985)}.booking-card:focus-visible{outline:3px solid rgba(31,111,80,.48);outline-offset:2px}.booking-card--selected{border-color:#1f6f5094;background:color-mix(in srgb,#fff 88%,var(--green-soft));box-shadow:0 0 0 2px #1f6f502e,var(--shadow-sm)}.booking-card__selection{position:absolute;z-index:4;top:.42rem;left:.42rem;display:grid;place-items:center;width:1.5rem;height:1.5rem;border-radius:.45rem;background:#ffffffeb;box-shadow:0 1px 5px #1e2d251f}.booking-card__selection input{margin:0;accent-color:var(--green)}.booking-card__selection+.booking-card__more+.booking-card__top{padding-left:1.65rem}.booking-card__more{position:absolute;z-index:4;top:.34rem;right:.34rem;display:grid;place-items:center;width:1.75rem;height:1.75rem;padding:0;border:0;border-radius:.48rem;background:#ffffffe6;color:var(--muted);opacity:0;pointer-events:none;transition:opacity .12s ease,background-color .12s ease}.booking-card__more:hover{background:var(--green-soft);color:var(--green)}.booking-card:hover .booking-card__more,.booking-card:focus-within .booking-card__more{opacity:1;pointer-events:auto}.booking-card__open{position:absolute;z-index:2;inset:0;width:100%;height:100%;padding:0;border:0;border-radius:inherit;background:transparent;pointer-events:none}.booking-card__open:focus-visible{outline:3px solid rgba(31,111,80,.48);outline-offset:2px}.booking-card--completed{opacity:.78}.booking-card--cancelled{opacity:.62;text-decoration-color:var(--booking-status-color, #848c88)}.booking-card--dragging{opacity:.72;z-index:100;box-shadow:var(--shadow-lg);transform:scale(1.02)}.booking-card--moving{opacity:.68;cursor:wait;pointer-events:none;box-shadow:inset 0 0 0 1px #1f6f502e}.booking-card--conflict{background:linear-gradient(135deg,#fff 58%,#a8444412);box-shadow:inset 0 0 0 1px #a8444461,0 1px 5px #1e2d2512}.booking-card--conflict:hover{box-shadow:inset 0 0 0 1px #a8444485,0 5px 16px #1e2d251f}.booking-card__top{display:flex;align-items:center;min-height:1rem}.booking-card__grip{margin:-.2rem .15rem -.1rem -.35rem;border:0;background:transparent;color:#98a09c;display:grid;place-items:center;cursor:grab}.booking-card__moving-state{display:inline-flex;align-items:center;gap:.22rem;color:var(--green);font-size:.6rem;font-weight:760}.booking-card__moving-state svg{animation:ledger-calendar-spin .7s linear infinite}.booking-card__status{font-size:.57rem;text-transform:uppercase;letter-spacing:.055em;color:var(--muted);font-weight:750}.booking-card__title{display:block;font-size:.76rem;line-height:1.2;margin:.08rem 0 .23rem;overflow-wrap:anywhere}.booking-card__time,.booking-card__volume,.booking-card__people,.booking-card__customer,.booking-card__route{display:flex;align-items:center;gap:.24rem;font-size:.66rem;color:var(--muted);line-height:1.25;margin-top:.2rem}.booking-card__availability-warning{display:inline-flex;align-items:center;gap:.22rem;margin-top:.25rem;color:#8b3d24;font-size:.64rem;font-weight:760}.booking-card__conflict-warning{display:flex;align-items:flex-start;gap:.22rem;margin:.12rem 0 .28rem;padding:.25rem .32rem;border-radius:.38rem;background:#f9e8e6;color:#852f2f;font-size:.64rem;font-weight:780;line-height:1.2}.booking-card__conflict-warning svg{flex:0 0 auto;margin-top:.02rem}.booking-card__route{margin-top:.25rem}.booking-card__notes{margin:.3rem 0 0;font-size:.65rem;color:var(--muted);white-space:pre-wrap}.booking-selection-toolbar{display:flex;align-items:center;gap:.45rem;padding:.34rem .4rem .34rem .7rem;border:1px solid rgba(31,111,80,.2);border-radius:.8rem;background:#f8faf8d1;-webkit-backdrop-filter:blur(18px) saturate(150%);backdrop-filter:blur(18px) saturate(150%);box-shadow:var(--shadow-sm)}.booking-selection-toolbar>span{font-size:.75rem;font-weight:760;white-space:nowrap}.booking-selection-toolbar .button{min-height:2rem;padding:.42rem .62rem;font-size:.72rem}.ledger-action-error{max-width:50rem;margin:.7rem auto}.booking-context-menu{position:fixed;z-index:240;width:min(17rem,100vw - 1rem);color:var(--ink);transform-origin:top left;animation:context-menu-in .12s cubic-bezier(.2,.8,.25,1)}.booking-context-menu__mobile-close{display:none}.booking-context-menu__panel{max-height:min(31rem,100vh - 1rem);overflow-y:auto;padding:.35rem;border:1px solid rgba(55,70,61,.17);border-radius:.78rem;background:#fcfcfaf0;-webkit-backdrop-filter:blur(24px) saturate(160%);backdrop-filter:blur(24px) saturate(160%);box-shadow:0 16px 42px #19261f33,0 2px 8px #19261f1a}.booking-context-menu__item,.booking-context-menu__back{width:100%;min-height:2.15rem;display:grid;grid-template-columns:1rem 1rem minmax(0,1fr) auto auto;align-items:center;gap:.45rem;padding:.42rem .55rem;border:0;border-radius:.48rem;background:transparent;color:inherit;text-align:left;font:inherit;font-size:.78rem;cursor:default}.booking-context-menu__item:hover,.booking-context-menu__item:focus-visible,.booking-context-menu__back:hover,.booking-context-menu__back:focus-visible{outline:0;background:var(--green-soft);color:var(--green)}.booking-context-menu__item:disabled,.booking-context-menu__back:disabled{opacity:.45}.booking-context-menu__item kbd,.booking-context-menu__back kbd{color:var(--muted);font:.68rem/1 system-ui,sans-serif}.booking-context-menu__back{grid-template-columns:1rem 1fr;margin-bottom:.22rem;color:var(--muted)}.booking-context-menu__check{display:grid;place-items:center}.booking-context-menu__chevron{margin-left:.1rem}.booking-context-menu__divider{height:1px;margin:.3rem .45rem;background:var(--line)}.booking-context-menu__item--danger{color:#a33d3d}.booking-context-menu__item--danger:hover,.booking-context-menu__item--danger:focus-visible{background:#f9e8e6;color:#8f2929}@keyframes context-menu-in{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.booking-confirm-layer{position:fixed;inset:0;z-index:300;display:grid;place-items:center;padding:1rem;background:#151d1952;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.booking-confirm-dialog{width:min(27rem,100%);padding:1.25rem;border:1px solid rgba(55,70,61,.16);border-radius:1rem;background:#fcfcfaf7;box-shadow:var(--shadow-lg);animation:context-menu-in .15s ease-out}.booking-confirm-dialog__icon{width:2.3rem;height:2.3rem;display:grid;place-items:center;border-radius:.7rem;background:#f9e8e6;color:#9b3333}.booking-confirm-dialog h2{margin:.8rem 0 .35rem;font-size:1.15rem;letter-spacing:-.02em}.booking-confirm-dialog p{margin:0;color:var(--muted);line-height:1.5}.booking-confirm-dialog .callout{margin-top:.8rem}.booking-confirm-dialog footer{display:flex;justify-content:flex-end;gap:.55rem;margin-top:1.15rem}.volume-capacity{display:grid;gap:.22rem;margin-bottom:.42rem;padding:.1rem .2rem;border:1px solid rgba(31,111,80,.14);border-radius:.52rem;color:var(--green-deep)}.volume-capacity__heading{display:flex;align-items:center;justify-content:space-between;gap:.4rem;min-width:0}.volume-capacity__heading strong{overflow:hidden;font-size:.65rem;text-overflow:ellipsis;white-space:nowrap}.volume-capacity__heading span{display:inline-flex;align-items:center;gap:.2rem;font-size:.62rem;font-weight:760;white-space:nowrap}.volume-capacity__track{height:.32rem;display:flex;overflow:hidden;border-radius:999px;background:#1f6f501f}.volume-capacity__committed{background:var(--volume-segment-color, var(--green))}.volume-capacity__preliminary{background:repeating-linear-gradient(135deg,var(--volume-segment-color, var(--green)) 0 3px,color-mix(in srgb,var(--volume-segment-color, var(--green)) 38%,white) 3px 6px)}.volume-capacity small{display:flex;align-items:center;gap:.2rem;color:var(--muted);font-size:.58rem;font-weight:650}.volume-capacity--near{border-color:#a8661640;background:#f4dfad7a;color:#6d480d}.volume-capacity--near .volume-capacity--compact--circle{background:#a8661640}.volume-capacity--over{border-color:#a844444d;background:#f9e8e6d1;color:#852f2f}.volume-capacity--over small{color:#852f2f}.volume-capacity--over .volume-capacity--compact--circle{background:#a844444d}.volume-capacity--unknown{border-color:var(--line);background:#e3e5e280;color:var(--muted)}.volume-capacity--unknown .volume-capacity--compact--circle{background:var(--line)}.volume-capacity--compact{display:flex;flex-direction:column;align-items:center}.volume-capacity--compact--title{font-size:12px}.volume-capacity--compact--circle{background:var(--green-soft);border-radius:50%;height:1.75rem;width:1.75rem;font-size:10px;position:relative;display:flex;justify-content:center;align-items:center}.volume-capacity--compact--circle svg{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);opacity:.5}.volume-capacity-summary{display:grid;gap:.35rem;margin-bottom:.5rem;padding:.42rem;border:1px solid var(--line);border-radius:.62rem;background:#ffffff94}.volume-capacity-summary__heading{color:var(--muted);font-size:.58rem;font-weight:780;letter-spacing:.05em;text-transform:uppercase}.volume-capacity-summary__loads{display:flex;gap:.32rem;overflow-x:auto;padding-bottom:.08rem}.volume-capacity-summary__unallocated{display:flex;align-items:center;gap:.24rem;color:#8b3d24;font-size:.62rem;font-weight:760}.volume-allocation{grid-column:1/-1;margin:0;border:1px solid var(--line);border-radius:.85rem;background:#f7f8f7c7;overflow:hidden}.volume-allocation__summary{display:flex;align-items:center;justify-content:space-between;gap:.8rem;padding:.85rem .9rem;cursor:pointer;list-style:none;font-size:.78rem;font-weight:760}.volume-allocation__summary::-webkit-details-marker{display:none}.volume-allocation__summary:before{content:"›";flex:0 0 auto;color:var(--green);font-size:1.15rem;line-height:1;transform:rotate(0);transition:transform .15s ease}.volume-allocation__summary>span{margin-right:auto}.volume-allocation__summary small{color:var(--muted);font-size:.68rem;font-weight:650;text-align:right}.volume-allocation[open] .volume-allocation__summary:before{transform:rotate(90deg)}.volume-allocation[open] .volume-allocation__summary{border-bottom:1px solid var(--line)}.volume-allocation__content{padding:.9rem}.volume-allocation__intro{margin:0 0 .75rem;color:var(--muted);font-size:.72rem}.volume-allocation__rows{display:grid;gap:.65rem}.volume-allocation__row{display:grid;grid-template-columns:minmax(8rem,.8fr) minmax(11rem,1fr) auto;align-items:end;gap:.6rem;padding-bottom:.65rem;border-bottom:1px solid var(--line)}.volume-allocation__input{position:relative}.volume-allocation__input input{padding-right:2.7rem!important}.volume-allocation__input span{position:absolute;top:50%;right:.75rem;color:var(--muted);font-size:.72rem;transform:translateY(-50%);pointer-events:none}.volume-allocation__preview{display:grid;gap:.1rem;padding:.52rem .62rem;border-radius:.65rem;background:var(--green-soft);color:var(--green-deep)}.volume-allocation__preview span{display:flex;align-items:center;gap:.25rem;font-size:.72rem;font-weight:740}.volume-allocation__preview small{color:var(--muted);font-size:.62rem}.volume-allocation__preview--near{background:#f4dfad;color:#6d480d}.volume-allocation__preview--over{background:#f9e8e6;color:#852f2f}.volume-allocation__preview--over small{color:#852f2f}.volume-allocation__preview--unknown{background:#e8eae7;color:var(--muted)}.volume-allocation__remainder{min-height:2.3rem;padding-inline:.55rem;font-size:.68rem}.volume-allocation__totals{display:flex;justify-content:flex-end;gap:1rem;margin-top:.7rem;color:var(--muted);font-size:.72rem}.volume-allocation__unallocated{color:var(--amber)}.volume-allocation .field__error{display:flex;align-items:center;gap:.25rem;margin:.6rem 0 0}.booking-editor__reminder{grid-column:1/-1;margin:0;padding:.85rem;border:1px solid var(--line);border-radius:.75rem;background:var(--surface-soft, #f7f8f7)}.booking-editor__reminder strong{font-size:.78rem}@media(max-width:800px){.volume-allocation__row{grid-template-columns:1fr;align-items:stretch}.volume-allocation__remainder{justify-self:start}.volume-allocation__totals{justify-content:space-between}}.booking-editor__reminder-fields{display:grid;gap:.75rem;margin-top:.8rem;padding-top:.8rem;border-top:1px solid var(--line)}.check-row{display:flex;align-items:flex-start;gap:.65rem;cursor:pointer}.check-row input{width:1rem;height:1rem;margin-top:.15rem;accent-color:var(--green)}.check-row>span{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:.25rem .4rem}.check-row small{grid-column:1/-1;color:var(--muted)}.check-row--nested>span{display:block;line-height:1}.column-multiselect{position:relative;min-width:0}.column-multiselect__control{min-height:2.65rem;padding:.35rem .55rem;border:1px solid var(--line);border-radius:.62rem;background:#fff;display:flex;align-items:center;gap:.5rem;cursor:pointer;transition:border-color .14s ease,box-shadow .14s ease}.column-multiselect__control:focus-visible{outline:none;border-color:var(--green);box-shadow:0 0 0 3px #376f4e21}.column-multiselect__control[aria-invalid=true]{border-color:var(--danger, #a84335)}.column-multiselect__control>svg{flex:0 0 auto;color:var(--muted);transition:transform .15s ease}.column-multiselect__chevron--open{transform:rotate(180deg)}.column-multiselect__pills{min-width:0;flex:1;display:flex;flex-wrap:wrap;gap:.32rem}.column-multiselect__pill{max-width:100%;padding:.25rem .34rem .25rem .48rem;border-radius:999px;background:var(--green-soft);color:var(--green);display:inline-flex;align-items:center;gap:.25rem;font-size:.73rem;font-weight:750;line-height:1.2}.column-multiselect__pill>span{width:1.12rem;height:1.12rem;border-radius:50%;display:grid;place-items:center}.column-multiselect__pill>span:hover{background:#376f4e1f}.column-multiselect__placeholder{align-self:center;padding:.2rem .1rem;color:var(--muted);font-size:.78rem;font-weight:400}.column-multiselect__menu{position:absolute;z-index:30;top:calc(100% + .35rem);left:0;right:0;padding:.6rem;border:1px solid var(--line);border-radius:.75rem;background:#fffffffa;box-shadow:var(--shadow-lg);animation:fade-in .14s ease}.column-multiselect__search{padding:0 .65rem;border:1px solid var(--line);border-radius:.58rem;display:flex;align-items:center;gap:.4rem;color:var(--muted)}.column-multiselect__search input{min-width:0;width:100%;padding:.65rem .75rem;border:0;outline:0;background:transparent}.column-multiselect__options{max-height:15rem;margin-top:.5rem;overflow:auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.25rem}.column-multiselect__option{min-width:0;padding:.55rem;border:0;border-radius:.52rem;background:transparent;color:var(--ink);display:flex;align-items:center;gap:.5rem;text-align:left;cursor:pointer}.column-multiselect__option span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.column-multiselect__option:hover{background:var(--green-soft)}.column-multiselect__option--selected{color:var(--green);font-weight:750}.column-multiselect__checkbox{width:1.15rem;height:1.15rem;flex:0 0 auto;border:1px solid #b8c2bb;border-radius:.34rem;display:grid;place-items:center}.column-multiselect__option--selected .column-multiselect__checkbox{border-color:var(--green);background:var(--green);color:#fff}.column-multiselect__empty{grid-column:1/-1;margin:0;padding:.8rem;color:var(--muted);text-align:center;font-size:.78rem}.person-multiselect__create{color:var(--green);font-weight:750}.person-multiselect__create svg{flex:0 0 auto}.mobile-planning{display:none}.sheet-layer{position:fixed;inset:0;z-index:100;background:#151d1947;display:flex;justify-content:flex-end;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.booking-editor{width:min(36rem,100%);height:100%;background:#fafaf8f0;-webkit-backdrop-filter:blur(28px) saturate(150%);backdrop-filter:blur(28px) saturate(150%);box-shadow:var(--shadow-lg);display:flex;flex-direction:column;animation:sheet-in .28s cubic-bezier(.2,.85,.25,1)}.booking-editor__header{padding:1.4rem 1.5rem 1rem;display:flex;justify-content:space-between;gap:1rem}.booking-editor__header h2{margin:0;font-size:1.65rem;line-height:1.12;letter-spacing:-.035em}.booking-editor__form{padding:1rem 1.5rem 1.5rem;display:grid;gap:.85rem;overflow:auto}.booking-editor__dirty-section{padding:.3rem;border:2px solid #c98422;border-radius:.82rem;background:#fff6e1b8;box-shadow:0 0 0 3px #c984221f}.booking-editor__discard-layer{position:fixed;z-index:120;inset:0;display:grid;place-items:center;padding:1rem;background:#151d196b;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.booking-editor__discard-dialog{width:min(28rem,100%);padding:1.35rem;border:1px solid var(--line);border-radius:1rem;background:var(--surface, #fff);box-shadow:var(--shadow-lg)}.booking-editor__discard-dialog h3{margin:0;font-size:1.15rem}.booking-editor__discard-dialog p{margin:.65rem 0 1.2rem;color:var(--muted);line-height:1.5}.booking-editor__discard-actions{display:flex;justify-content:flex-end;gap:.55rem;flex-wrap:wrap}.booking-editor__placement{display:flex;align-items:center;justify-content:space-between;gap:.8rem;padding:.75rem;border-radius:.8rem;background:#e3e5e09e}.booking-editor__placement>div{display:grid;gap:.15rem}.booking-editor__placement>div span{color:var(--muted);font-size:.7rem;font-weight:700}.booking-editor__placement>div strong{font-size:.82rem}.booking-editor__move-panel{padding:.75rem;border-radius:.8rem;background:var(--green-soft);animation:fade-in .16s ease}.booking-editor__footer{position:sticky;bottom:-1.5rem;margin:1rem -1.5rem -1.5rem;padding:1rem 1.5rem;display:flex;align-items:center;gap:.6rem;background:#fafaf8e6;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-top:1px solid var(--line);flex-wrap:wrap}.booking-editor__save-state{margin-right:auto;color:var(--muted);font-size:.73rem}.booking-editor__field-label{display:flex;align-items:center;justify-content:space-between;gap:.6rem}.booking-editor__notes-actions{width:100%;display:flex;justify-content:flex-end;gap:.25rem;margin-top:-.9rem}.booking-editor__notes-actions--button{min-height:1.8rem;padding:.2rem .55rem;font-size:.72rem;line-height:1;max-width:2rem;border-radius:0}.booking-editor__conflict-field{border-color:#c78a20!important;box-shadow:0 0 0 3px #c78a2021!important}.booking-editor__conflict-note{display:flex;align-items:flex-start;gap:.55rem;padding:.7rem .8rem;border:1px solid rgba(199,138,32,.38);border-radius:.75rem;background:#f5ead0ad;color:#775b1b;font-size:.75rem;line-height:1.45}.booking-editor__conflict-note svg{flex:0 0 auto;margin-top:.1rem}.field--dirty>input,.field--dirty>select,.field--dirty>textarea,.field--dirty .column-multiselect__control{background:#f8efe9;box-shadow:-5px 0 #c95d1f;border-radius:0}.check-row--dirty{padding:.45rem;background:#f8efe9;box-shadow:-5px 0 #c95d1f}.booking-details{width:min(34rem,100%);height:100%;background:#fafaf8f2;-webkit-backdrop-filter:blur(28px) saturate(150%);backdrop-filter:blur(28px) saturate(150%);box-shadow:var(--shadow-lg);display:flex;flex-direction:column;animation:sheet-in .28s cubic-bezier(.2,.85,.25,1)}.booking-details__header{display:flex;justify-content:space-between;gap:1rem;padding:1.4rem 1.5rem 1rem}.booking-details__header h2{margin:0;font-size:1.65rem;line-height:1.12;letter-spacing:-.035em}.booking-details__body{display:grid;align-content:start;gap:1rem;padding:1rem 1.5rem 2rem;overflow:auto}.booking-details__footer{margin-top:auto;padding:1rem 1.5rem;display:flex;align-items:center;gap:.6rem;flex-wrap:wrap;justify-content:flex-end;border-top:1px solid var(--line);background:#fafaf8e0;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.booking-details__delete{margin-right:auto}.booking-details__delete-confirmation{width:100%;display:flex;align-items:center;justify-content:flex-end;gap:.6rem}.booking-details__delete-confirmation span{margin-right:auto;font-size:.82rem;font-weight:700}.booking-details__action-error{margin:0 1.5rem .75rem;display:flex;align-items:center;justify-content:space-between;gap:.75rem}.booking-details__status{width:max-content;padding:.38rem .65rem;border-radius:99rem;background:color-mix(in srgb,var(--booking-status-color, var(--amber)) 16%,white);color:var(--booking-status-color, #775b1b);font-size:.7rem;font-weight:750}.booking-details__section{padding:1rem;border:1px solid var(--line);border-radius:.9rem;background:#ffffffb3}.booking-details__section h3{margin:0 0 .8rem;font-size:.78rem;text-transform:uppercase;letter-spacing:.045em;color:var(--muted)}.booking-details__section dl{display:grid;gap:.8rem;margin:0}.booking-details__detail{display:grid;grid-template-columns:minmax(7rem,.38fr) 1fr;gap:.8rem}.booking-details__detail dt{display:flex;align-items:center;gap:.4rem;color:var(--muted);font-size:.74rem;font-weight:680}.booking-details__detail dd{margin:0;line-height:1.45;overflow-wrap:anywhere}.booking-details__route{display:flex;align-items:flex-start;gap:.55rem;margin:0;line-height:1.5}.booking-details__route svg{flex:0 0 auto;margin-top:.15rem;color:var(--green)}.booking-details__notes{margin:0;white-space:pre-wrap;line-height:1.55}.booking-details__history{border:1px solid var(--line);border-radius:.9rem;background:#ffffffb3;overflow:hidden}.booking-details__history summary{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.9rem 1rem;list-style:none;cursor:pointer;color:var(--muted);font-size:.78rem;font-weight:760;letter-spacing:.045em;text-transform:uppercase}.booking-details__history summary::-webkit-details-marker{display:none}.booking-details__history summary>span{display:inline-flex;align-items:center;gap:.45rem}.booking-details__history summary>svg{transition:transform .15s ease}.booking-details__history[open] summary{border-bottom:1px solid var(--line)}.booking-details__history[open] summary>svg{transform:rotate(180deg)}.booking-details__history-content{padding:.25rem 1rem .5rem}.booking-details__history-state{margin:.75rem 0;color:var(--muted);font-size:.75rem}.booking-details__history-list{display:grid;margin:0;padding:0;list-style:none}.booking-details__history-list li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.75rem;padding:.72rem 0;border-bottom:1px solid rgba(214,220,216,.72);font-size:.76rem}.booking-details__history-list li:last-child{border-bottom:0}.booking-details__history-list time{color:var(--muted);font-size:.68rem;white-space:nowrap}.column-order{width:min(32rem,100%);height:100%;display:flex;flex-direction:column;background:#fafaf8f5;-webkit-backdrop-filter:blur(28px) saturate(150%);backdrop-filter:blur(28px) saturate(150%);box-shadow:var(--shadow-lg);animation:sheet-in .28s cubic-bezier(.2,.85,.25,1)}.column-order__header{display:flex;justify-content:space-between;gap:1rem;padding:1.4rem 1.5rem 1rem}.column-order__header h2{margin:0;font-size:1.65rem;letter-spacing:-.035em}.column-order__body{padding:1rem 1.5rem;overflow:auto}.column-order__body>p{margin:0 0 1rem;color:var(--muted);line-height:1.5}.column-order__fixed,.column-order__item{display:flex;align-items:center;gap:.7rem;min-height:3.7rem;padding:.65rem .75rem;border:1px solid var(--line);border-radius:.8rem;background:#ffffffb8}.column-order__fixed{margin-bottom:.55rem;color:var(--muted)}.column-order__fixed>span{display:grid}.column-order__fixed>span small{font-size:.68rem}.column-order__setting{display:grid;gap:.35rem;margin:0 0 1rem}.column-order__setting .toggle-field{width:100%;justify-content:flex-start}.column-order__setting small{color:var(--muted);font-size:.7rem;line-height:1.45}.column-order__list{display:grid;gap:.45rem;margin:0;padding:0;list-style:none}.column-order__item{position:relative;transition:box-shadow .15s ease,background .15s ease}.column-order__item--over{background:var(--green-soft);box-shadow:inset 0 0 0 2px #1f6f5033}.column-order__item--dragging{z-index:2;opacity:.8;box-shadow:var(--shadow-lg)}.column-order__grip{width:2.5rem;height:2.5rem;display:grid;place-items:center;flex:0 0 auto;border:0;border-radius:.65rem;background:transparent;color:var(--muted);cursor:grab;touch-action:none}.column-order__grip:hover,.column-order__grip:focus-visible{background:#1f6f5014;color:var(--green)}.column-order__grip:active{cursor:grabbing}.column-order__position{width:1.5rem;height:1.5rem;display:grid;place-items:center;border-radius:50%;background:#e7e9e7;color:var(--muted);font-size:.68rem;font-weight:750}.column-order__name{display:grid;flex:1;min-width:0}.column-order__name small{color:var(--muted);font-size:.68rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.column-order__keyboard{display:flex;gap:.2rem}.column-order__keyboard button{width:2rem;height:2rem;display:grid;place-items:center;border:0;border-radius:.5rem;background:transparent;color:var(--muted);cursor:pointer}.column-order__keyboard button:hover:not(:disabled){background:#fff;color:var(--green)}.column-order__keyboard button:disabled{opacity:.25;cursor:default}.column-order__footer{margin-top:auto;display:flex;justify-content:flex-end;gap:.55rem;padding:1rem 1.5rem;border-top:1px solid var(--line);background:#fafaf8e0;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}@keyframes sheet-in{0%{transform:translate(100%);opacity:.75}to{transform:translate(0);opacity:1}}@media(max-width:1199px){.month-grid{--columns: 6;grid-template-columns:5.2rem repeat(var(--columns),minmax(11rem,1fr))}.ledger{overflow-x:auto}}@media(max-width:767px){.booking-card__more{opacity:1;pointer-events:auto;width:2rem;height:2rem}.booking-context-menu{inset:auto 0 0!important;width:100%;padding:.55rem;transform-origin:bottom center}.booking-context-menu__panel{max-height:min(72vh,34rem);border-radius:1rem;padding:.5rem}.booking-context-menu__mobile-close{position:absolute;z-index:2;top:.9rem;right:.95rem;display:inline-flex;align-items:center;justify-content:center;gap:.35rem;min-width:4.8rem;min-height:2.5rem;padding:.45rem .7rem;border:1px solid var(--line);border-radius:.65rem;background:#fffffff0;color:var(--ink);font:inherit;font-size:.78rem;font-weight:720;box-shadow:var(--shadow-sm)}.booking-context-menu__panel:before{content:"Bokningsåtgärder";display:block;min-height:2.75rem;padding:.6rem 5.2rem .5rem .55rem;color:var(--muted);font-size:.72rem;font-weight:760;text-transform:uppercase;letter-spacing:.045em}.booking-context-menu__item,.booking-context-menu__back{min-height:2.75rem;font-size:.86rem}.booking-selection-toolbar{order:20;width:100%;justify-content:space-between}.column-multiselect__options{grid-template-columns:1fr}.month-grid{display:none}.mobile-planning{display:block}.mobile-planning__selector{position:sticky;top:4.5rem;z-index:20;display:grid;gap:.25rem;padding:.65rem .75rem;border-radius:.8rem;background:#f8f9f6e6;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);color:var(--muted);font-size:.72rem;font-weight:700}.mobile-planning__selector select{border:1px solid var(--line);border-radius:.65rem;padding:.62rem;background:#fff;color:var(--ink)}.mobile-planning__days{display:grid;gap:.55rem;margin-top:.7rem}.mobile-day{display:grid;grid-template-columns:5.2rem 1fr;scroll-margin-top:9rem;border:1px solid var(--line);border-radius:.85rem;overflow:hidden;background:#ffffff85}.mobile-day--sunday .mobile-day__header{background:#fbefee;color:#9b4747}.mobile-day--today{box-shadow:inset 4px 0 var(--green)}.mobile-day__header{padding:.65rem;background:#f8f8f5;display:grid;align-content:start}.mobile-day__header strong{font-size:.8rem}.mobile-day__header span{font-size:.68rem;color:var(--muted);text-transform:capitalize}.mobile-day .planning-cell{border:0;min-height:5.8rem}.booking-editor,.booking-details,.column-order{height:min(94vh,52rem);margin-top:auto;border-radius:1.4rem 1.4rem 0 0;animation:sheet-up .28s cubic-bezier(.2,.85,.25,1)}.booking-details__detail{grid-template-columns:1fr;gap:.2rem}.field-row{grid-template-columns:1fr}@keyframes sheet-up{0%{transform:translateY(100%);opacity:.75}to{transform:translateY(0);opacity:1}}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.booking-card:hover{transform:none}.booking-editor,.booking-details,.column-order{animation:fade-in .12s ease}@keyframes fade-in{0%{opacity:0}to{opacity:1}}}.workspace-page{width:min(72rem,100% - 2rem);margin:0 auto;padding:2.2rem 0 4rem}.workspace-page__intro{max-width:45rem;margin-bottom:1.5rem}.workspace-page__intro h1{margin:0;font-size:clamp(2rem,5vw,3.3rem);letter-spacing:-.05em}.workspace-page__intro>p:last-child{color:var(--muted);line-height:1.55}.workspace-tabs{display:flex;gap:.25rem;width:max-content;max-width:100%;margin-bottom:1.2rem;padding:.25rem;border-radius:.9rem;background:#e3e5e0c2;overflow:auto}.workspace-tabs__item{padding:.65rem .85rem;border-radius:.68rem;color:var(--muted);font-weight:680;text-decoration:none;white-space:nowrap}.workspace-tabs__item--active{background:#fff;color:var(--ink);box-shadow:var(--shadow-sm)}.search-panel{display:grid;grid-template-columns:minmax(14rem,1fr) 10rem 14rem;gap:.8rem;margin-bottom:1.2rem;padding:1rem;border:1px solid rgba(255,255,255,.8);border-radius:var(--radius-lg);background:#ffffff94;box-shadow:var(--shadow-sm)}.search-panel__input{min-height:3rem;display:flex;align-items:center;gap:.65rem;padding:0 .85rem;border:1px solid var(--line);border-radius:.78rem;background:#fff;color:var(--muted)}.search-panel__input input{flex:1;border:0;outline:0;background:transparent;font-size:1rem;color:var(--ink)}.result-list{display:grid;gap:.55rem}.result-list__count{margin:.2rem;color:var(--muted);font-size:.78rem}.result-card{display:grid;grid-template-columns:auto 1fr auto;gap:.8rem;align-items:center;padding:1rem;border:1px solid var(--line);border-radius:.9rem;background:#ffffffbd;color:var(--ink);text-decoration:none;transition:transform .14s ease,box-shadow .16s ease}.result-card:hover{transform:translateY(-1px);box-shadow:var(--shadow-sm)}.result-card__main,.result-card__meta{display:grid;gap:.22rem;min-width:0}.result-card__main small,.result-card__meta small{color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.result-card__meta{text-align:right;font-size:.8rem}.status-dot{width:.65rem;height:.65rem;border-radius:50%;background:var(--amber)}.status-dot--confirmed{background:var(--blue)}.status-dot--completed{background:var(--green)}.status-dot--cancelled{background:#8a918d}.empty-state{padding:2rem;border:1px dashed var(--line);border-radius:var(--radius-lg);color:var(--muted);text-align:center}.history-list{display:grid;gap:.65rem}.history-item{display:flex;align-items:center;gap:.9rem;padding:1rem;border:1px solid var(--line);border-radius:.95rem;background:#ffffffb8}.history-item__marker{width:.65rem;height:.65rem;border-radius:50%;background:var(--green);box-shadow:0 0 0 .3rem var(--green-soft)}.history-item__body{display:grid;gap:.15rem;flex:1;min-width:0}.history-item__body p,.history-item__body small{margin:0;color:var(--muted)}.history-item__body p{font-size:.84rem}.history-item__body small{font-size:.7rem}.history-item__details-button{width:max-content;margin-top:.25rem;padding:0;border:0;background:transparent;color:var(--green);font-weight:700;cursor:pointer}.history-item__confirm{display:flex;align-items:center;gap:.45rem;font-size:.78rem}.revision-details{display:grid;grid-template-columns:1fr 1fr;gap:.55rem;margin-top:.55rem}.revision-details__snapshot{display:grid;align-content:start;gap:.65rem;padding:.8rem;border-radius:.7rem;background:#e3e5e09e}.revision-details__snapshot>strong{font-size:.8rem}.revision-details__snapshot>p{margin:0;color:var(--muted);font-size:.72rem}.revision-details__snapshot dl{display:grid;gap:.45rem;margin:0}.revision-details__field{display:grid;grid-template-columns:5.5rem minmax(0,1fr);gap:.55rem;align-items:start;border-radius:.55rem}.revision-details__field dt{display:grid;justify-items:start;gap:.22rem;color:var(--muted);font-size:.68rem;font-weight:680}.revision-details__field dt em{padding:.12rem .3rem;border-radius:99rem;font-size:.55rem;font-style:normal;font-weight:760;letter-spacing:.025em;line-height:1.2}.revision-details__field dd{margin:0;font-size:.72rem;line-height:1.4;overflow-wrap:anywhere}.revision-details__field--description{padding:.55rem;background:#ffffff8c}.revision-details__field--description dd{white-space:pre-wrap}.revision-details__field--changed{padding:.5rem}.revision-details__field--before{background:#a8444414;box-shadow:inset 3px 0 #a8444470}.revision-details__field--before dt em{background:#f5dedd;color:#873b3b}.revision-details__field--after{background:#1f6f5017;box-shadow:inset 3px 0 #1f6f5080}.revision-details__field--after dt em{background:var(--green-soft);color:var(--green-deep)}.note-editor{width:min(31rem,100%);height:100%;display:flex;flex-direction:column;background:#fafaf8f5;-webkit-backdrop-filter:blur(28px);backdrop-filter:blur(28px);box-shadow:var(--shadow-lg);animation:sheet-in .28s cubic-bezier(.2,.85,.25,1)}.note-editor__header{display:flex;justify-content:space-between;padding:1.4rem}.note-editor__header h2{margin:0}.note-editor__body{display:grid;gap:.6rem;padding:1.2rem 1.4rem;overflow:auto}.note-editor__hint{margin:0;color:var(--muted);font-size:.75rem}.note-editor__footer{margin-top:auto;padding:1rem 1.4rem;display:flex;justify-content:flex-end;gap:.5rem;border-top:1px solid var(--line);background:#fafaf8e0}@media(max-width:700px){.search-panel{grid-template-columns:1fr}.result-card{grid-template-columns:auto 1fr}.result-card__meta{grid-column:2;text-align:left}.history-item{align-items:flex-start;flex-wrap:wrap}.history-item__body{min-width:70%}.history-item__confirm{width:100%;flex-wrap:wrap}.revision-details{grid-template-columns:1fr}.workspace-page{width:min(100% - 1.2rem,72rem);padding-top:1.2rem}.note-editor{height:min(85vh,42rem);margin-top:auto;border-radius:1.3rem 1.3rem 0 0}}.management-card{border:1px solid var(--line);border-radius:var(--radius-lg);background:#ffffff9e;box-shadow:var(--shadow-sm);overflow:hidden}.management-card__create{display:grid;grid-template-columns:1fr 1fr auto;align-items:end;gap:.8rem;padding:1rem;border-bottom:1px solid var(--line)}.management-card__create--vehicles{grid-template-columns:1fr auto 1fr 1.35fr .7fr auto}.management-card__create--members{grid-template-columns:1fr 1fr .8fr auto}.management-card>.callout{margin:1rem}.management-card__toolbar{display:flex;justify-content:flex-end;padding:.7rem 1rem;border-bottom:1px solid var(--line);background:#fafaf86b}.management-card__toolbar .toggle-field{min-height:2.3rem}.management-card__note{margin:0;padding:.75rem 1rem;border-bottom:1px solid var(--line);color:var(--muted);font-size:.72rem}.management-card__create--vehicles--regnr{text-transform:uppercase}.management-list{display:grid}.management-row{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:.8rem;padding:1rem;border-bottom:1px solid var(--line)}.management-row:last-child{border-bottom:0}.management-row>div{display:grid;gap:.2rem;min-width:0}.management-row>div small{color:var(--muted);font-size:.7rem;overflow:hidden;text-overflow:ellipsis}.management-row--editing{grid-template-columns:1fr 1fr auto auto;background:var(--green-soft)}.management-row--vehicle-edit{grid-template-columns:1fr auto 1fr 1.35fr .7fr auto;align-items:end}.management-row--member-edit{grid-template-columns:minmax(14rem,1fr) auto;align-items:end}.management-row--inactive{opacity:.7;background:#e3e5e061;color:#8d0000}.management-row__vehicle small:first-of-type{font-weight:680;color:var(--ink)}.management-row__actions{display:flex!important;grid-auto-flow:column;gap:.35rem!important}.management-row__confirm{display:flex!important;grid-auto-flow:column;align-items:center;gap:.35rem!important}.management-row__confirm span{font-size:.75rem;font-weight:700;color:var(--red)}.management-row__edit-actions{display:flex!important;grid-auto-flow:column;gap:.35rem!important}.management-row__select{min-height:2.65rem;border:1px solid var(--line);border-radius:.72rem;padding:.5rem;background:#fff;color:var(--ink)}.status-color-field span{display:flex;align-items:center;gap:.6rem;min-height:2.65rem}.status-color-field span input[type=color]{width:3rem;height:2.65rem;padding:.18rem;border:1px solid var(--line);border-radius:.72rem;background:#fff}.status-color-field span code{color:var(--muted)}.status-row{grid-template-columns:minmax(12rem,1fr) auto}.status-row.management-row--editing{grid-template-columns:minmax(12rem,1fr) minmax(10rem,.55fr) auto}.status-row__identity{display:flex!important;align-items:center;gap:.7rem!important}.status-row__swatch{width:1rem;height:1rem;flex:0 0 auto;border-radius:50%;box-shadow:0 0 0 .2rem #0000000f}.status-row__identity>span:last-child{display:grid;gap:.12rem}.vehicle-type-field{display:grid;gap:.45rem}.state-badge{padding:.35rem .55rem;border-radius:99rem;background:#e7e9e7;color:var(--muted);font-size:.68rem;font-weight:750}.state-badge--active{background:var(--green-soft);color:var(--green-deep)}.resource-availability{width:min(62rem,100%);height:100%;display:flex;flex-direction:column;background:#fafaf8f5;-webkit-backdrop-filter:blur(28px) saturate(150%);backdrop-filter:blur(28px) saturate(150%);box-shadow:var(--shadow-lg);animation:sheet-in .28s cubic-bezier(.2,.85,.25,1)}.resource-availability__header,.resource-availability__footer{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.5rem;background:#fafaf8d1;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.resource-availability__header{border-bottom:1px solid var(--line)}.resource-availability__header h2,.resource-availability__header p{margin:0}.resource-availability__header h2{font-size:1.45rem;letter-spacing:-.03em}.resource-availability__content{flex:1;display:grid;align-content:start;gap:1rem;padding:1rem 1.5rem 1.5rem;overflow:auto}.resource-availability__loading{flex:1;display:grid;place-items:center;color:var(--muted)}.resource-availability__section{display:grid;gap:.9rem;padding:1rem;border:1px solid var(--line);border-radius:1rem;background:#ffffffb3;box-shadow:var(--shadow-sm)}.resource-availability__section-heading{display:flex;align-items:start;justify-content:space-between;gap:1rem}.resource-availability__section-heading h3,.resource-availability__section-heading p{margin:0}.resource-availability__section-heading h3{font-size:.92rem}.resource-availability__section-heading p{margin-top:.2rem;color:var(--muted);font-size:.72rem;line-height:1.45}.resource-availability__presets{width:fit-content;display:flex;flex-wrap:wrap;gap:.2rem;padding:.22rem;border:1px solid var(--line);border-radius:.8rem;background:#e3e5e09e}.resource-availability__week{display:grid;gap:.45rem}.resource-availability__day{display:grid;grid-template-columns:minmax(6.8rem,1fr) auto auto 7rem 7rem;align-items:end;gap:.55rem;padding:.65rem;border-radius:.78rem;background:#e3e5e061}.resource-availability__day>strong{align-self:center;font-size:.8rem}.resource-availability__exception-form{display:grid;grid-template-columns:9rem 11rem 7rem 7rem minmax(10rem,1fr) auto;align-items:end;gap:.55rem}.resource-availability__exceptions{display:grid;gap:.4rem;margin:0;padding:0;list-style:none}.resource-availability__exceptions li{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:.7rem;padding:.65rem .75rem;border-radius:.75rem;background:#e3e5e07a}.resource-availability__exceptions div{display:grid;gap:.12rem}.resource-availability__exceptions strong{font-size:.78rem}.resource-availability__exceptions small{color:var(--muted);font-size:.7rem}.resource-availability__footer{justify-content:flex-end;border-top:1px solid var(--line)}.company-creator{width:min(52rem,100%);height:100%;display:flex;flex-direction:column;background:#fafaf8f5;-webkit-backdrop-filter:blur(28px) saturate(150%);backdrop-filter:blur(28px) saturate(150%);box-shadow:var(--shadow-lg);animation:sheet-in .28s cubic-bezier(.2,.85,.25,1)}.company-creator__header{display:flex;justify-content:space-between;gap:1rem;padding:1.4rem 1.5rem 1rem}.company-creator__header h2{margin:0;font-size:1.65rem;letter-spacing:-.035em}.company-creator__form{display:grid;gap:1rem;padding:0 1.5rem 1.5rem;overflow:auto}.company-creator__section{display:grid;gap:.8rem;padding:1rem;border:1px solid var(--line);border-radius:.95rem;background:#ffffffad}.company-creator__section>h3,.company-creator__section p{margin:0}.company-creator__section>h3{font-size:.9rem}.company-creator__hint,.company-creator__section-heading p{color:var(--muted);font-size:.72rem;line-height:1.45}.company-creator__section-heading{display:flex;align-items:center;justify-content:space-between;gap:1rem}.company-creator__section-heading h3{margin:0 0 .18rem;font-size:.9rem}.company-creator__columns{display:grid;gap:.5rem}.company-creator__column{display:grid;grid-template-columns:minmax(12rem,1fr) auto auto;align-items:end;gap:.55rem;padding:.7rem;border-radius:.75rem;background:#e3e5e07a}.company-creator__vehicle-fields{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr .7fr;gap:.55rem;padding-top:.2rem;animation:fade-in .14s ease}.company-creator__review{display:grid;gap:1rem;animation:fade-in .16s ease}.company-creator__review-details{display:grid;grid-template-columns:1fr 1fr;gap:.55rem;margin:0}.company-creator__review-details>div{min-width:0;padding:.7rem;border-radius:.75rem;background:#e3e5e07a}.company-creator__review-details dt{color:var(--muted);font-size:.68rem;font-weight:700}.company-creator__review-details dd{margin:.2rem 0 0;font-size:.84rem;font-weight:680;overflow-wrap:anywhere}.company-creator__review-columns{display:grid;gap:.45rem;margin:0;padding:0;list-style:none}.company-creator__review-columns li{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.7rem;border-radius:.75rem;background:#e3e5e07a}.company-creator__review-columns li>div{display:grid;gap:.12rem}.company-creator__review-columns li small,.company-creator__review-columns li span{color:var(--muted);font-size:.7rem}.company-creator__review-columns li span{text-align:right}.company-creator__empty-review{color:var(--muted);font-size:.76rem}.company-creator__footer{position:sticky;bottom:-1.5rem;display:flex;justify-content:flex-end;gap:.55rem;margin:0 -1.5rem -1.5rem;padding:1rem 1.5rem;border-top:1px solid var(--line);background:#fafaf8e6;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.toggle-field{min-height:2.65rem;display:inline-flex;align-items:center;gap:.5rem;padding:.55rem .7rem;border:1px solid var(--line);border-radius:.72rem;background:#ffffffd1;color:var(--ink);font-size:.76rem;font-weight:680;cursor:pointer}.toggle-field input{width:1rem;height:1rem;accent-color:var(--green)}.pending-admin{display:flex;align-items:end;gap:.8rem;padding:1rem;border-bottom:1px solid var(--line);background:#f6eecf8c}.pending-admin__copy{display:grid;gap:.18rem;margin-right:auto}.pending-admin__copy strong{font-size:.82rem}.pending-admin__copy small{color:var(--muted)}.pending-admin .field{width:min(18rem,100%)}@media(max-width:1000px){.management-card__create--vehicles,.management-card__create--members{grid-template-columns:1fr 1fr}.management-card__create--vehicles button,.management-card__create--members button{grid-column:1/-1}.management-row--vehicle-edit{grid-template-columns:1fr 1fr}.management-row--vehicle-edit .vehicle-type-field{grid-column:1/-1}.management-row--vehicle-edit>.field{grid-column:auto}.management-row--vehicle-edit>.management-row__edit-actions{grid-column:1/-1;justify-content:flex-end}.management-row--member-edit{grid-template-columns:1fr auto}}@media(max-width:700px){.resource-availability{height:min(94vh,58rem);margin-top:auto;border-radius:1.4rem 1.4rem 0 0;animation:sheet-up .28s cubic-bezier(.2,.85,.25,1)}.resource-availability__header,.resource-availability__content,.resource-availability__footer{padding-right:1rem;padding-left:1rem}.resource-availability__section-heading{display:grid}.resource-availability__day{grid-template-columns:1fr 1fr}.resource-availability__day>strong{grid-column:1/-1}.resource-availability__exception-form{grid-template-columns:1fr 1fr}.resource-availability__exception-form .resource-availability__reason{grid-column:1/-1}.company-creator{height:min(94vh,58rem);margin-top:auto;border-radius:1.4rem 1.4rem 0 0;animation:sheet-up .28s cubic-bezier(.2,.85,.25,1)}.company-creator__column{grid-template-columns:1fr 1fr}.company-creator__column .icon-button{grid-column:2;justify-self:end}.company-creator__vehicle-fields,.company-creator__review-details{grid-template-columns:1fr}.company-creator__review-columns li{align-items:flex-start;flex-direction:column;gap:.35rem}.company-creator__review-columns li span{text-align:left}.company-creator__section-heading,.company-creator .field-row{grid-template-columns:1fr;flex-direction:column;align-items:stretch}.pending-admin{display:grid;grid-template-columns:1fr}.pending-admin .field{width:100%}.management-card__create,.management-card__create--vehicles,.management-card__create--members{grid-template-columns:1fr}.management-card__create .vehicle-type-field,.management-card__create button,.management-card__create--vehicles .vehicle-type-field,.management-card__create--vehicles button,.management-card__create--members .vehicle-type-field,.management-card__create--members button{grid-column:1}.management-row{grid-template-columns:1fr auto}.management-row--editing,.management-row--vehicle-edit{grid-template-columns:1fr 1fr}.management-row--editing .field,.management-row--editing .vehicle-type-field,.management-row--vehicle-edit .field,.management-row--vehicle-edit .vehicle-type-field{grid-column:1/-1}.management-row--editing .button,.management-row--vehicle-edit .button{grid-column:auto}.management-row--member-edit{grid-template-columns:1fr}.management-row--member-edit .field,.management-row--member-edit .management-row__edit-actions,.management-row__select{grid-column:1}.management-row .state-badge{grid-column:2;grid-row:1}.management-row .button{grid-column:2}.management-row__actions,.management-row__confirm{grid-column:1/-1;justify-content:flex-end}}@page{size:A3 landscape;margin:8mm}@media print{:root{font-size:9pt;color:#000;--line:#9aa09d}body{background:#fff}.app-header,.month-toolbar__group,.month-toolbar__today,.connection-status,.planning-cell__add,.booking-card__grip,.sheet-layer,.mobile-planning{display:none!important}.ledger{padding:0}.month-toolbar{margin:0 0 4mm}.month-toolbar__title h1{font-size:20pt}.month-grid{display:grid!important;min-width:0;width:100%;overflow:visible;border-radius:0;box-shadow:none;break-inside:auto;grid-template-columns:14mm repeat(var(--columns),1fr)}.month-grid__header{position:static;min-height:7mm;padding:1mm;background:#eee}.month-grid__date{position:static;min-height:8mm;padding:1mm}.planning-cell{min-height:8mm;padding:1mm;break-inside:avoid}.booking-card{padding:1mm;box-shadow:none;break-inside:avoid}.booking-card__status{font-size:5pt}.booking-card__title{font-size:7pt}.booking-card__time,.booking-card__volume,.booking-card__people,.booking-card__route{font-size:6pt}}
