.schedule-page{color:#303438;letter-spacing:0;max-width:1200px;margin:auto;padding:24px;font-family:Arial,sans-serif}.schedule-page *{box-sizing:border-box;min-width:0}.schedule-header{border-bottom:1px solid #d5e1e5;flex-wrap:wrap;align-items:center;gap:24px;padding-bottom:18px;display:flex}.schedule-header img{object-fit:contain;width:88px;height:76px}.schedule-page h1{flex:1;margin:0;font-size:26px}.schedule-page h2{font-size:20px}.schedule-page a{color:#006f95}.schedule-page button{color:#fff;min-height:44px;font:inherit;cursor:pointer;background:#303438;border:1px solid #303438;border-radius:5px;padding:11px 15px}.schedule-page button:disabled{opacity:.55;cursor:wait}.schedule-page label{flex-direction:column;gap:7px;font-size:14px;font-weight:600;display:flex}.schedule-page input,.schedule-page select,.schedule-page textarea{font:inherit;color:#303438;background:#fff;border:1px solid #b9cbd3;border-radius:5px;width:100%;min-height:44px;padding:11px}.schedule-page textarea{resize:vertical;min-height:90px}.schedule-toolbar{flex-wrap:wrap;align-items:center;gap:16px;margin:20px 0;display:flex}.schedule-toolbar label{min-width:160px}.schedule-hours{color:#4e626d;font-size:14px}.schedule-calendar{border:1px solid #d7e1e5;grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.calendar-heading{text-align:center;background:#edf7fa;padding:12px;font-size:14px}.calendar-day,.calendar-empty{overflow-wrap:anywhere;border-top:1px solid #d7e1e5;border-right:1px solid #d7e1e5;min-height:105px;padding:8px}.calendar-day time{margin-bottom:8px;font-size:14px;display:block}.schedule-page .calendar-job{text-align:left;color:#234451;overflow-wrap:anywhere;background:#e3f3f9;border:1px solid #b0d6e5;width:100%;margin:4px 0;padding:7px;font-size:12px;display:block}.calendar-job small{margin-top:5px;display:block}.schedule-page .calendar-job.in_progress{background:#fff3cd;border-color:#dfc96d}.schedule-page .calendar-job.completed{background:#e3f4e9;border-color:#aed3bb}.schedule-job-list,.schedule-workers,.schedule-detail{border-top:1px solid #d5e1e5;margin-top:28px;padding-top:20px}.schedule-page .schedule-job-row{text-align:left;color:#303438;background:#fff;border:0;border-bottom:1px solid #d5e1e5;border-radius:0;grid-template-columns:2fr 1fr 1fr;gap:12px;width:100%;display:grid}.schedule-worker{flex-wrap:wrap;align-items:center;gap:14px;margin:14px 0;display:flex}.schedule-worker b{flex:1}.schedule-login{gap:18px;max-width:420px;padding:32px 0;display:grid}.schedule-error{color:#a51c27;background:#fff0f0;border-left:3px solid #a51c27;padding:14px}.schedule-detail form{gap:14px;max-width:600px;display:grid}.schedule-instructions{white-space:pre-wrap}.schedule-photos{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:16px;margin:22px 0;display:grid}.schedule-photos img{aspect-ratio:4/3;object-fit:cover;border-radius:4px;width:100%}.schedule-photos small{display:block}.schedule-overlay{z-index:1000;background:#0007;justify-content:center;align-items:flex-start;padding:24px;display:flex;position:fixed;inset:0;overflow-y:auto}.schedule-editor{background:#fff;border-radius:8px;gap:18px;width:720px;max-width:100%;padding:24px;display:grid}.schedule-fields{grid-template-columns:1fr 1fr;align-items:end;gap:16px;display:grid}.schedule-page .schedule-check{flex-direction:row;align-items:center;gap:8px;padding:10px;display:inline-flex}.schedule-check input{width:20px;min-height:20px}.schedule-access{overflow-wrap:anywhere;background:#edf7fa;padding:16px}.schedule-access code{margin:14px 0;font-size:15px;display:block}.schedule-month{max-width:220px;margin:20px 0}.availability-calendar .calendar-day span{font-size:14px;display:block}.availability-available{color:#175535;background:#e6f5ec}.availability-booked{color:#703737;background:#f4eeee}.availability-closed{color:#697178;background:#f2f3f4}.schedule-page footer{border-top:1px solid #d5e1e5;margin-top:40px;padding:20px 0}.schedule-page :focus-visible{outline-offset:3px;outline:3px solid #007ca6}.schedule-page footer{color:#303438;background:0 0}.schedule-login-modes{flex-wrap:wrap;gap:8px;display:flex}.schedule-login-modes button[aria-pressed=false]{color:#303438;background:#fff;border-color:#b9cbd3}.schedule-login p{margin:0;line-height:1.6}.schedule-page .availability-date{text-align:left;min-height:105px;font:inherit;border-top:1px solid #d7e1e5;border-bottom:0;border-left:0;border-right:1px solid #d7e1e5;border-radius:0;padding:8px}.schedule-page .availability-available{color:#175535;background:#e6f5ec}.schedule-page .availability-booked{color:#703737;background:#f4eeee}.schedule-page .availability-closed{color:#697178;cursor:default;background:#f2f3f4}.schedule-page .availability-enquire{color:#303438;background:#fff}.schedule-page .availability-date[aria-pressed=true]{outline-offset:-3px;outline:3px solid #007ca6}.schedule-page .availability-date:disabled{opacity:1}@media (width<=640px){.schedule-page .availability-date{min-height:82px;padding:4px}.schedule-page{padding:14px}.schedule-header{gap:12px}.schedule-page h1{font-size:22px}.schedule-header img{width:60px;height:56px}.schedule-calendar:not(.availability-calendar){display:none}.schedule-fields{grid-template-columns:1fr}.schedule-overlay{padding:10px}.schedule-editor{padding:16px}.schedule-job-row{font-size:13px}.calendar-heading{padding:10px 2px;font-size:12px}.calendar-day,.calendar-empty{min-height:82px;padding:4px}.availability-calendar .calendar-day span{overflow-wrap:normal;font-size:10px}.schedule-toolbar{gap:10px}.schedule-header a{font-size:14px}}
