:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#17202a;background:#eef2f6;font-synthesis:none;text-rendering:optimizeLegibility;--surface:#fff;--text:#17202a;--muted:#526274;--border:#d5dee8;--accent:#245bb4;--background:#eef2f6;color-scheme:light}:root[data-theme=dark]{--surface:#202c38;--text:#ecf1f8;--muted:#b6c4d5;--border:#435568;--accent:#90bbff;--background:#17202a;color:var(--text);background:var(--background);color-scheme:dark}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}a{color:var(--accent)}button{border:0;border-radius:12px;background:#245bb4;color:#fff;min-height:48px;padding:12px 18px;cursor:pointer;font-weight:650;display:inline-flex;gap:8px;align-items:center;justify-content:center}button:disabled{opacity:.65;cursor:default}.secondary{color:var(--text);background:var(--background);border:1px solid var(--border)}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--accent);outline-offset:3px}input,select{width:100%;min-width:0;min-height:48px;border:1px solid var(--border);border-radius:10px;padding:10px 12px;background:var(--surface);color:var(--text);font-size:16px}label{display:grid;gap:8px;font-weight:600}form{display:grid;gap:20px}h1{font-size:clamp(24px,5vw,30px);line-height:1.2;margin:0}h2{font-size:20px;line-height:1.35;margin:0 0 10px}p{line-height:1.55;margin:8px 0;color:var(--muted)}.pwa{min-width:0;min-height:100dvh;overflow-x:clip;padding-bottom:calc(100px + env(safe-area-inset-bottom))}.top{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:calc(16px + env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) 16px max(16px,env(safe-area-inset-left));background:var(--surface);border-bottom:1px solid var(--border)}.brand{display:flex;align-items:center;gap:9px;font-size:20px;font-weight:800;color:var(--text);text-decoration:none}.connection{font-size:12px;color:var(--muted);white-space:nowrap}.pwa main{max-width:1100px;margin:auto;padding:20px max(16px,env(safe-area-inset-right)) 0 max(16px,env(safe-area-inset-left));display:grid;gap:20px;min-width:0}.pageHeading{display:grid;gap:12px}.card{background:var(--surface);border:1px solid var(--border);border-radius:18px;padding:20px;min-width:0;overflow-wrap:anywhere}.cards{display:grid;gap:14px}.install{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between}.install strong{font-size:16px}.install p{font-size:14px}.instructions{flex-basis:100%;border-top:1px solid var(--border);padding-top:12px}.eyebrow{font-size:13px;color:var(--accent);font-weight:750;display:block;margin-bottom:8px}.welcome h2{font-size:24px}.sectionLink{display:flex;gap:12px;align-items:center;justify-content:space-between;text-decoration:none;color:var(--text)}.sectionLink svg{flex-shrink:0}.sectionLink h2{font-size:18px}.sectionLink p{font-size:14px}.back{display:flex;align-items:center;gap:8px;min-height:44px;width:fit-content}.login{max-width:520px;width:100%;justify-self:center}.login a{display:inline-flex;align-items:center;min-height:48px;margin-top:14px}.branch,.theme label{font-size:14px}.logout{justify-self:start}.status{line-height:1.55}.bottom{position:fixed;bottom:0;left:0;right:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));padding:8px max(8px,env(safe-area-inset-right)) calc(8px + env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left));background:var(--surface);border-top:1px solid var(--border);z-index:3}.bottom a{min-width:0;display:flex;flex-direction:column;gap:5px;align-items:center;justify-content:center;min-height:52px;text-decoration:none;color:var(--muted);font-size:11px;text-align:center;overflow-wrap:anywhere}.bottom a[aria-current=page]{color:var(--accent);font-weight:750}.bottom svg{width:22px;height:22px}dl{margin:0;display:grid;gap:8px}dt{font-size:13px;color:var(--muted)}dd{margin:0 0 12px;overflow-wrap:anywhere}.muted{font-size:14px}@media(min-width:768px){.cards{grid-template-columns:repeat(2,minmax(0,1fr))}.pwa main{padding-top:28px}.bottom{max-width:700px;margin:auto;border:1px solid var(--border);border-radius:18px 18px 0 0}.theme,.branch{max-width:520px}}@media(min-width:1100px){.cards{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-height:480px){.bottom{position:static;margin-top:20px}.pwa{padding-bottom:env(safe-area-inset-bottom)}}.device{border-top:1px solid var(--border);padding-top:12px;margin-top:12px}.device button{margin:4px 0}.device h3{overflow-wrap:anywhere}textarea{font:inherit;width:100%;min-width:0;min-height:96px;resize:vertical;border:1px solid var(--border);border-radius:10px;padding:10px 12px;background:var(--surface);color:var(--text);font-size:16px}textarea:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.bookingSelection{display:grid;gap:16px;margin-top:24px}.slots{display:grid;grid-template-columns:repeat(auto-fit,minmax(78px,1fr));gap:8px}.calendarLanes{display:grid;gap:16px;margin-top:20px}.calendarLane{min-width:0}.calendarEntry{display:grid;width:100%;text-align:left;justify-content:stretch;margin:8px 0}.calendarEntry span{overflow-wrap:anywhere}summary{cursor:pointer;min-height:48px;padding:12px 0;line-height:1.5}input[type=checkbox]{width:24px;min-height:24px}h3{overflow-wrap:anywhere}@media(min-width:768px){.calendarLanes{grid-template-columns:repeat(2,minmax(0,1fr))}}.scheduleControls{align-content:start}.scheduleLanes{display:grid;gap:14px;min-width:0}.scheduleLane{display:grid;gap:10px}.scheduleViewport{max-width:100%;overflow-x:auto;overscroll-behavior-inline:contain;border:1px solid var(--border);border-radius:12px;scrollbar-color:var(--accent) var(--background)}.scheduleTimeline{width:1728px;min-height:96px}.scheduleHours,.scheduleTrack{display:grid;grid-template-columns:repeat(96,minmax(18px,1fr))}.scheduleHours{position:sticky;top:0;z-index:1;background:var(--surface);border-bottom:1px solid var(--border)}.scheduleHours span{grid-column:span 4;padding:8px 4px;color:var(--muted);font-size:12px;border-right:1px solid var(--border);white-space:nowrap}.scheduleTrack{grid-auto-rows:minmax(76px,auto);background-image:linear-gradient(to right,transparent 95%,var(--border) 95%);background-size:72px 100%;padding:8px 0}.scheduleEntry{display:grid;align-content:start;gap:4px;min-width:0;margin:0 2px;border-left:4px solid var(--accent);padding:8px;background:var(--background);border-radius:0 10px 10px 0;font-size:13px;overflow-wrap:anywhere}.scheduleEntry span{color:var(--muted)}@media(min-width:768px){.scheduleLanes{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:1050px){.scheduleLanes{grid-template-columns:repeat(3,minmax(0,1fr))}}.materialPanel,.materialFiles,.materialChecklist{min-width:0;overflow-wrap:anywhere}.materialPanel input[type=file]{max-width:100%;width:100%;min-width:0}.materialChecklist label{display:flex;align-items:center;gap:.6rem}.materialChecklist input[type=checkbox]{width:1.25rem;flex:none}.materialPanel fieldset{min-width:0;max-width:100%}
