:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:#1d1d1f;font-synthesis:none;background:#f5f5f7;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Segoe UI Variable,Segoe UI,system-ui,sans-serif}*{box-sizing:border-box}button,summary,a,label{touch-action:manipulation;-webkit-tap-highlight-color:transparent}button svg{flex-shrink:0;display:block}.animated-details{overflow:hidden}.animated-details>summary:after{display:none}.disclosure-icon{color:#0066d6;background:#f2f6fb;border-radius:50%;flex:0 0 28px;place-items:center;width:28px;height:28px;padding:0;display:grid}.disclosure-icon svg{transition:transform .24s ease-in-out;display:block}[aria-expanded=true]>.disclosure-icon svg,.animated-details[data-expanded=true]>summary .disclosure-icon svg{transform:rotate(180deg)}.collapse[hidden]{display:none}.collapse>div,.disclosure-body{display:flow-root}@media (prefers-reduced-motion:reduce){.collapse,.disclosure-icon svg{transition:none}}body{background:#f5f5f7;min-width:320px;min-height:100vh;margin:0}button,input{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.62}.boot-screen{color:#6e6e73;place-items:center;min-height:100vh;font-weight:650;display:grid}.login-page{place-items:center;min-height:100vh;padding:24px;display:grid}.login-card{background:#fff;border:1px solid #dfe3ea;border-radius:16px;gap:30px;width:min(100%,440px);padding:32px;display:grid;box-shadow:0 18px 42px #1d1d1f14}.brand{color:#1d1d1f;align-items:center;gap:13px;text-decoration:none;display:inline-flex}.brand-mark{color:#fff;letter-spacing:0;background:#007aff;border-radius:9px;flex:none;place-items:center;width:40px;height:40px;font-size:12px;font-weight:780;display:grid}.brand small,.brand strong{display:block}.brand small{color:#6e6e73;font-size:10px;font-weight:750}.brand strong{letter-spacing:0;font-size:20px;line-height:1.12}.eyebrow{color:#6e6e73;margin:0 0 6px;font-size:11px;font-weight:780;line-height:1.3}.login-card h1,.page-header h1,.migration-panel h2{letter-spacing:0;margin:0}.login-card h1{font-size:28px;line-height:1.16}.login-copy{color:#6e6e73;margin:8px 0 0;font-size:15px;line-height:1.48}form{gap:16px;display:grid}label{color:#35353a;gap:7px;font-size:13px;font-weight:700;display:grid}input{color:#1d1d1f;background:#fff;border:1px solid #cfd5dd;border-radius:9px;outline:none;width:100%;min-height:46px;padding:10px 12px}input:focus{border-color:#007aff;box-shadow:0 0 0 3px #007aff24}.primary-button{color:#fff;background:#007aff;border:0;border-radius:9px;min-height:46px;font-weight:740}.danger-button{color:#a1382b;background:#fff4f1;border:1px solid #f0c4bd;border-radius:8px;min-height:40px;padding:0 13px;font-size:13px;font-weight:720}@media (hover:hover) and (pointer:fine){.primary-button:not(.compact-button):hover{background:#0066d6}.compact-button:hover,.secondary-button:hover{background:#e2efff}.danger-button:hover{background:#ffece8;border-color:#e6a9a1}}.form-error{color:#a1382b;background:#fff1ed;border-radius:9px;margin:-2px 0 0;padding:10px 12px;font-size:13px;font-weight:650;line-height:1.35}.app-shell{grid-template-columns:260px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{background:#fff;border-right:1px solid #dfe3ea;flex-direction:column;gap:30px;height:100vh;padding:24px;display:flex;position:sticky;top:0}.sidebar-brand{align-items:center;gap:10px;display:flex}.sidebar-brand-mark{color:#fff;background:#007aff;border-radius:8px;place-items:center;width:36px;height:36px;display:grid}.sidebar-brand-mark svg,.sidebar-brand strong,.sidebar-brand small{display:block}.sidebar-brand strong{color:#1d1d1f;font-size:16px;line-height:1.1}.sidebar-brand small{color:#6e6e73;margin-top:3px;font-size:11px;font-weight:650}.main-nav{gap:6px;display:grid}.nav-item,.logout-button{color:#4d4d52;text-align:left;background:0 0;border:1px solid #0000;border-radius:8px;justify-content:flex-start;align-items:center;min-height:42px;padding:0 12px;font-size:14px;font-weight:680;display:flex}.nav-item:hover{background:#f2f2f7}.nav-item.active{color:#0066d6;background:#eef6ff}.logout-button{color:#6e6e73;border-color:#dfe3ea;margin-top:auto}.main-content{width:min(100%,1380px);margin:0 auto;padding:30px}.main-content.management-content,.main-content.invoices-content{width:min(100%,1180px)}.page-header{justify-content:space-between;align-items:center;gap:24px;margin-bottom:28px;display:flex}.page-header h1{font-size:28px;line-height:1.16}.account{align-items:center;gap:10px;min-width:0;display:flex}.account>span{color:#fff;background:#007aff;border-radius:9px;flex:none;place-items:center;width:38px;height:38px;font-size:12px;font-weight:780;display:grid}.account div{min-width:0}.account strong,.account small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.account strong{font-size:13px}.account small{color:#6e6e73;font-size:12px}.migration-panel{background:#fff;border:1px solid #dfe3ea;border-radius:12px;max-width:680px;padding:28px;box-shadow:0 12px 28px #1d1d1f0d}.migration-panel h2{font-size:21px;line-height:1.24}.migration-panel>p:last-child{color:#6e6e73;margin:10px 0 0;line-height:1.52}.calendar-screen{background:#fff;border:1px solid #dfe3ea;border-radius:12px;padding:24px;box-shadow:0 12px 28px #1d1d1f0d}.calendar-toolbar{justify-content:space-between;align-items:center;gap:18px;margin-bottom:22px;display:flex}.calendar-toolbar h2{letter-spacing:0;margin:0;font-size:22px}.week-switcher{border:1px solid #dfe3ea;border-radius:9px;grid-template-columns:40px auto 40px;align-items:center;min-height:42px;display:inline-grid;overflow:hidden}.week-switcher button{color:#1d1d1f;background:#fff;border:0;place-items:center;height:40px;font-size:24px;line-height:1;display:grid}.week-switcher button:disabled{opacity:.34}.week-switcher strong{text-align:center;border-inline:1px solid #dfe3ea;min-width:126px;padding:0 12px;font-size:13px}.calendar-grid{border:1px solid #dfe3ea;border-radius:10px;grid-template-columns:54px minmax(0,1fr);display:grid;overflow:hidden}.calendar-time-rail{height:var(--calendar-height);background:#fafafd;border-right:1px solid #dfe3ea;position:relative}.calendar-time-rail span{color:#8b8b91;font-size:11px;line-height:1;position:absolute;right:9px;transform:translateY(-50%)}.calendar-days{grid-template-columns:repeat(7,minmax(110px,1fr));min-width:0;display:grid;overflow-x:auto}.calendar-day{border-right:1px solid #dfe3ea;min-width:110px}.calendar-day:last-child{border-right:0}.calendar-day>header{border-bottom:1px solid #dfe3ea;gap:2px;min-height:50px;padding:10px 11px;display:grid}.calendar-day>header strong{font-size:13px}.calendar-day>header span{color:#6e6e73;font-size:12px}.calendar-day-body{height:var(--calendar-height);background:repeating-linear-gradient(#0000 0 35px,#dfe3ea6b 36px);position:relative}.calendar-hour-line{background:#dfe3ea;height:1px;position:absolute;left:0;right:0}.calendar-event{z-index:1;border-radius:7px;align-content:start;gap:2px;padding:8px;font-size:11px;line-height:1.2;display:grid;position:absolute;left:5px;right:5px;overflow:hidden}.calendar-event strong{font-size:12px}.calendar-event small{color:inherit;text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.calendar-event.own{color:#075cad;background:#eaf4ff}.calendar-event.booked{color:#5c5c64;background:#f2f2f7}.calendar-event.unavailable{color:#a1382b;background:#fff1ed}.mobile-day-picker{display:none}.calendar-loading,.screen-state{color:#6e6e73;background:#fff;border:1px solid #dfe3ea;border-radius:12px;align-content:center;justify-items:start;gap:7px;min-height:220px;padding:24px;display:grid}.screen-state strong{color:#1d1d1f;font-size:17px}.error-state strong{color:#a1382b}.invoices-screen{gap:14px;display:grid}.invoice-hero{background:#fff;border:1px solid #dfe3ea;border-radius:12px;justify-content:space-between;align-items:end;gap:20px;padding:26px;display:flex;box-shadow:0 12px 28px #1d1d1f0d}.invoice-hero>div{gap:2px;display:grid}.invoice-hero>div>strong{font-size:clamp(34px,4vw,54px);line-height:1}.invoice-hero>div>span,.balance-pill span{color:#6e6e73;font-size:13px;font-weight:620}.balance-pill{background:#f2f7fc;border-radius:9px;min-width:180px;padding:13px 15px}.balance-pill strong{font-size:19px!important}.invoice-list,.review-list,.history-list,.payment-panel,.empty-invoice{background:#fff;border:1px solid #dfe3ea;border-radius:10px}.invoice-list>header,.review-list>header,.history-list>header{border-bottom:1px solid #dfe3ea;justify-content:space-between;align-items:center;min-height:50px;padding:0 14px;font-size:14px;display:flex}.history-list>header>div{align-items:center;gap:10px;display:flex}.text-button{color:#0066d6;background:#eef6ff;border:0;border-radius:6px;min-height:32px;padding:0 9px;font-size:13px;font-weight:700}.invoice-row{border-bottom:1px solid #edf0f4;grid-template-columns:24px minmax(0,1fr) auto;align-items:center;gap:12px;min-height:68px;padding:11px 14px;display:grid}.invoice-row:last-child{border-bottom:0}.invoice-row.selected{background:#f4f9ff}.invoice-row input{accent-color:#007aff;width:18px;height:18px}.invoice-row>div{gap:2px;min-width:0;display:grid}.invoice-row strong{text-overflow:ellipsis;white-space:nowrap;font-size:14px;overflow:hidden}.invoice-row small,.invoice-row-amount span,.history-list article small{color:#6e6e73;font-size:12px;font-weight:600}.invoice-row-amount{justify-items:end}.invoice-row-amount b{font-size:15px}.payment-panel{justify-content:space-between;align-items:center;gap:18px;padding:15px;display:flex}.payment-panel>div:first-child{gap:3px;display:grid}.payment-panel>div:first-child span{color:#6e6e73;font-size:12px}.payment-panel>div:first-child strong{font-size:21px}.payment-actions{flex-wrap:wrap;gap:9px;display:flex}.secondary-button,.compact-button{color:#0066d6;background:#eef6ff;border:1px solid #bcdcff;border-radius:8px;min-height:40px;padding:0 13px;font-size:13px;font-weight:720}.primary-button.compact-button{min-height:40px}.file-button{cursor:pointer;border-radius:8px;place-items:center;min-height:40px;padding:0 14px;display:inline-grid}.file-button input{display:none}.file-button.disabled{cursor:not-allowed;opacity:.54}.empty-invoice{gap:4px;padding:24px;display:grid}.empty-invoice strong{font-size:19px}.empty-invoice span{color:#6e6e73}.status-badge{border-radius:999px;align-items:center;width:max-content;min-height:22px;padding:0 8px;font-size:11px;font-weight:720;display:inline-flex}.status-badge.review{color:#956511;background:#fff5dd}.status-badge.approved{color:#21864a;background:#eaf8ef}.history-list article{border-top:1px solid #edf0f4;justify-content:space-between;align-items:center;gap:16px;padding:13px 14px;display:flex}.history-list article>div{gap:6px;display:grid}.inline-notice{color:#21864a;background:#eaf8ef;border-radius:9px;margin:0;padding:11px 13px;font-size:13px;font-weight:650}.confirm-strip{background:#fff;border:1px solid #bcdcff;border-radius:10px;justify-content:space-between;align-items:center;gap:18px;padding:15px;display:flex;position:sticky;bottom:16px;box-shadow:0 16px 38px #1d1d1f24}.confirm-strip>div{gap:4px;display:grid}.confirm-strip span{color:#6e6e73;font-size:13px}.confirm-strip>div:last-child{gap:8px;display:flex}@media (width<=700px){.login-page{align-items:start;padding:16px}.login-card{border-radius:12px;margin-top:24px;padding:24px 20px}.app-shell{display:block}.sidebar{border-bottom:1px solid #dfe3ea;border-right:0;gap:18px;width:auto;height:auto;padding:16px;position:static}.main-nav{grid-template-columns:repeat(2,minmax(0,1fr))}.nav-item{text-align:center;justify-content:center}.logout-button{margin-top:0}.main-content{padding:20px 16px}.page-header{align-items:start;gap:12px;margin-bottom:22px}.page-header h1{font-size:24px}.account{max-width:148px}.migration-panel{padding:22px 18px}.migration-panel h2{font-size:19px}.calendar-screen{border-radius:10px;padding:18px 0 0}.calendar-toolbar{align-items:start;padding:0 16px}.calendar-toolbar h2{font-size:20px}.week-switcher{grid-template-columns:36px minmax(0,1fr) 36px;max-width:180px}.week-switcher button{height:40px}.week-switcher strong{min-width:0;padding:0 7px;font-size:12px}.mobile-day-picker{grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;padding:0 12px 14px;display:grid}.mobile-day-picker button{color:#6e6e73;background:#f2f2f7;border:0;border-radius:7px;place-items:center;gap:2px;min-height:50px;padding:4px;display:grid}.mobile-day-picker button.active{color:#0066d6;background:#eef6ff}.mobile-day-picker span{font-size:10px;font-weight:680}.mobile-day-picker strong{font-size:14px}.calendar-grid{border-left:0;border-right:0;border-radius:0;grid-template-columns:47px minmax(0,1fr)}.calendar-days{display:block;overflow:hidden}.calendar-day{border-right:0;min-width:0;display:none}.calendar-day.mobile-active{display:block}.calendar-day>header{grid-template-columns:auto 1fr;align-items:center;min-height:46px;padding:9px 12px}.calendar-day>header span{text-align:right}.calendar-event{left:7px;right:7px}.invoice-hero{flex-direction:column;align-items:start;padding:20px}.invoice-hero>div>strong{font-size:38px}.balance-pill{width:100%}.payment-panel,.confirm-strip{flex-direction:column;align-items:stretch}.payment-actions,.confirm-strip>div:last-child{grid-template-columns:1fr 1fr;display:grid}.payment-actions>*,.confirm-strip button{width:100%}.invoice-row{grid-template-columns:22px minmax(0,1fr);gap:9px}.invoice-row-amount{grid-column:2;justify-items:start}.invoice-row strong{white-space:normal}.review-list .invoice-row{grid-template-columns:minmax(0,1fr)}.review-list .invoice-row-amount{grid-column:auto}}.invoice-row.review-row{grid-template-columns:minmax(98px,auto) minmax(0,1fr) auto}@media (width<=700px){.review-list .invoice-row.review-row{grid-template-columns:minmax(0,1fr)}.review-list .invoice-row.review-row .status-badge{justify-self:start}}.app-shell{grid-template-columns:220px minmax(0,1fr)}.sidebar{padding:22px 18px}.main-content{width:min(100%,1440px)}.nav-item{justify-content:space-between;gap:8px}.nav-item>span:first-child{min-width:0}.nav-attention{color:#0066d6;font-variant-numeric:tabular-nums;background:#e8f4ff;border-radius:999px;flex:none;place-items:center;min-width:18px;height:18px;padding:0 4px;font-size:10px;font-weight:780;display:inline-grid}.nav-item.active .nav-attention{color:#fff;background:#007aff}@media (width>=1800px){.main-content{width:min(100% - 96px,1640px)}}@media (width>=2300px){.main-content{width:min(100% - 120px,1880px)}}@media (width<=700px){.app-shell{display:block}.sidebar{padding:16px}.main-content{width:100%}}.sidebar-top{justify-content:space-between;align-items:center;gap:12px;display:flex}.account-menu{flex:none;position:relative}.sidebar-account{display:none}.account-trigger{font:inherit;text-align:left;background:0 0;border:0;padding:0}.account-trigger:hover{opacity:.78}.account-trigger:focus-visible{outline-offset:3px;outline:2px solid #007aff}.account-popover{z-index:20;background:#fff;border:1px solid #dfe3ea;border-radius:8px;min-width:116px;padding:4px;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 10px 24px #21304229}.account-popover button{color:#35353a;width:100%;min-height:34px;font:inherit;text-align:left;background:0 0;border:0;border-radius:5px;align-items:center;padding:0 9px;font-size:13px;font-weight:680;display:flex}.account-popover button:hover,.account-popover button:focus-visible{color:#a1382b;background:#fff1ed;outline:none}@media (width<=700px){.sidebar{gap:18px}.sidebar-account{display:block}.sidebar-account .account{max-width:148px}.calendar-page-header,.page-header .page-account{display:none}}.calendar-empty{background:#fff;border:1px solid #dfe3ea;border-radius:12px;place-items:center;min-height:clamp(420px,52vh,520px);padding:32px;display:grid;box-shadow:0 12px 28px #1d1d1f0d}.calendar-empty__content{text-align:center;justify-items:center;gap:18px;width:min(100%,420px);display:grid}.calendar-empty__icon{color:#007aff;background:#eef6ff;border-radius:50%;place-items:center;width:68px;height:68px;display:grid}.calendar-empty__content>div{gap:7px;display:grid}.calendar-empty__content strong{color:#1d1d1f;font-size:20px;line-height:1.24}.calendar-empty__content p{color:#6e6e73;margin:0;font-size:14px;line-height:1.45}.calendar-empty__action{white-space:nowrap;justify-content:center;align-items:center;gap:8px;width:auto;min-height:44px;padding:0 16px;display:inline-flex}.calendar-empty__action svg{flex:none}.calendar-empty__error{color:#a1382b;margin:-4px 0 0;font-size:13px;line-height:1.4}@media (width<=700px){.calendar-empty{min-height:420px;padding:24px 16px}.calendar-empty__content{gap:16px}.calendar-empty__icon{width:60px;height:60px}.calendar-empty__content strong{font-size:19px}.calendar-empty__action{width:100%}}.calendar-grid{--day-header-height:50px;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;padding-block:12px}.calendar-day>header{height:var(--day-header-height);min-height:0;padding-block:8px}.calendar-time-rail{margin-top:var(--day-header-height);height:var(--calendar-height)}.calendar-time-rail span:first-child{transform:translateY(-50%)}.calendar-day-body{height:var(--calendar-height);box-shadow:inset 0 -1px #cfd5dd}.calendar-days{overflow-y:clip}.calendar-event.compact-event{padding-block:4px}.calendar-event.compact-event>span,.calendar-event.compact-event>small{display:none}.calendar-outside-hours{margin-top:20px}.calendar-outside-hours h3{margin:0 0 10px;font-size:14px}.calendar-outside-hours>div{gap:8px;display:grid}.calendar-outside-hours .calendar-event{min-height:66px;position:relative;inset:auto}.calendar-notice{margin:0 0 16px}.calendar-event:has(.admin-event-actions){padding-right:42px;overflow:visible}.admin-event-actions{z-index:3;display:grid;position:absolute;top:4px;right:4px}.calendar-event.compact-event{padding-right:42px}.booking-dialog,.receipt-dialog{min-width:0;max-width:100%}.booking-dialog-head>div,form,fieldset,input,select,textarea{min-width:0}.booking-dialog-head h3{overflow-wrap:anywhere}@media (width<=700px){.calendar-grid{--day-header-height:0px}.calendar-day>header{display:none}.calendar-notice{margin-inline:12px}.calendar-outside-hours{margin:20px 12px 12px}.calendar-outside-hours:not(.mobile-has-events),.outside-hours-entry[data-mobile-visible=false]{display:none}.calendar-event:has(.admin-event-actions){padding-right:46px}.delete-event-button,.event-menu-trigger{width:32px;height:32px}}@media (width<=700px),(pointer:coarse){html body input,html body select,html body textarea{font-size:16px}.booking-dialog-backdrop{padding:12px}.booking-dialog{max-height:calc(100dvh - 24px);padding:20px}}
