:root{--text-primary: #182337;--surface-page: #f3f5f9;--border-control: #cbd5e4;--text-control: #263551;--surface-control-hover: #edf2fa;--surface-navy: #101a30;--text-eyebrow: #7791c2;--text-status: #c2cfe8;--status-online: #54d5a1;--text-on-dark: #dbe6fb;--surface-control-dark: #23334f;--border-control-dark: #526381;--surface-control-dark-hover: #304566;--border-control-dark-hover: #7e9aca;--text-date-label: #adbfdf;--surface-white: #fff;--shadow-navy-soft: #101a3033;--surface-navy-hover: #263858;--focus-ring: #7897ce;--text-muted: #74829a;--border-card: #dde4ef;--text-secondary: #62718c;--text-heading: #20324f;--border-panel: #e1e6ef;--text-label: #63718b;--border-input: #ced8e7;--text-danger: #9a1d29;--surface-danger: #ffe8eb;--border-subtle: #dbe2ec;--text-table-header: #72809b;--surface-table-header: #edf1f7;--surface-hour: #f6f8fc;--text-hour: #243552;--text-empty: #a3afc0;--border-row: #e9edf4;--surface-cancelled: #fff0f1;--text-cancelled: #9e4b54;--text-caption: #7f8ba0;--text-footnote: #8491a6;--border-neutral: #ddd;--surface-backdrop: #12223a8a;--shadow-black: #0002;--text-form-label: #53617a;--shadow-panel: #12223a14;--surface-locale: #f0f3f8;--text-locale: #8290a8;--text-locale-active: #214f97;--shadow-locale: #14233a1c;--surface-login-primary: #1e4f9a}:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,sans-serif;color:var(--text-primary);background:var(--surface-page);font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input,textarea{font:inherit}button{cursor:pointer;border:1px solid var(--border-control);background:#fff;padding:9px 13px;border-radius:8px;color:var(--text-control);transition:background .15s,border-color .15s,transform .15s}button:hover:not(:disabled){background:var(--surface-control-hover)}button:disabled{opacity:.4;cursor:not-allowed}h1,h2,h3,p{margin:0}.topbar{min-height:80px;padding:12px 40px;background:var(--surface-navy);color:#fff;display:flex;align-items:center;justify-content:space-between;gap:24px}h1{font-size:21px;margin-top:4px}h2{font-size:31px;margin:5px 0 7px}h3{font-size:22px}.eyebrow{font-size:11px;letter-spacing:.12em;font-weight:800;color:var(--text-eyebrow)}.status{color:var(--text-status);font-size:13px;white-space:nowrap}.status i{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--status-online);margin-right:6px}.date-nav{display:flex;align-items:end;gap:6px}.date-nav .day-button{width:38px;height:39px;padding:0;color:var(--text-on-dark);background:var(--surface-control-dark);border-color:var(--border-control-dark);font-size:25px;line-height:1}.date-nav .day-button:hover:not(:disabled){background:var(--surface-control-dark-hover);border-color:var(--border-control-dark-hover)}.date-field{color:var(--text-date-label);font-size:11px;font-weight:600;display:flex;align-items:end;gap:6px}.date-field input{width:160px;border:1px solid var(--border-control-dark);color:var(--surface-white);color-scheme:dark;background:var(--surface-control-dark);border-radius:8px;padding:8px;height:39px}main{width:min(1500px,calc(100% - 80px));margin:36px auto}.page-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:24px;gap:20px}.agenda-controls{display:flex;align-items:end;gap:12px}.primary-action{background:var(--surface-control-dark);border-color:var(--border-control-dark);color:var(--surface-white);font-weight:750;height:39px;padding:0 17px;box-shadow:0 5px 14px var(--shadow-navy-soft)}.primary-action:hover:not(:disabled){background:var(--surface-control-dark-hover);border-color:var(--border-control-dark-hover)}.primary-action:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}.muted{color:var(--text-muted);font-size:13px}.summary{background:var(--surface-white);border:1px solid var(--border-card);border-radius:12px;display:flex;flex-direction:column;align-items:center;padding:14px 30px;color:var(--text-secondary);font-size:12px}.summary strong{font-size:27px;color:var(--text-heading)}.connection{background:var(--surface-white);border:1px solid var(--border-panel);border-radius:10px;display:flex;align-items:end;gap:15px;padding:14px 18px;margin-bottom:18px}.connection label{display:grid;gap:5px;font-size:11px;font-weight:700;color:var(--text-label)}.connection input{border:1px solid var(--border-input);border-radius:7px;padding:10px;width:260px}.connection .muted{padding-bottom:10px}.error{padding:13px;margin-bottom:16px;color:var(--text-danger);background:var(--surface-danger);border-radius:8px}.agenda{background:var(--surface-white);border:1px solid var(--border-subtle);border-radius:12px;overflow:hidden}.agenda-header,.booking-row{display:grid;grid-template-columns:145px minmax(240px,1fr) 130px 125px 130px 170px;gap:14px;align-items:center}.agenda-header{grid-template-columns:86px 145px minmax(240px,1fr) 130px 125px 130px 170px;padding:13px 20px;font-size:10px;font-weight:800;letter-spacing:.09em;color:var(--text-table-header);background:var(--surface-table-header)}.hour-group{display:grid;grid-template-columns:100px 1fr;border-top:1px solid var(--border-subtle)}.hour-label{padding:17px 20px;background:var(--surface-hour);font-size:15px;font-weight:800;color:var(--text-hour);font-variant-numeric:tabular-nums}.hour-bookings{min-width:0}.empty-hour{padding:17px 20px;color:var(--text-empty);font-size:13px}.booking-row{padding:13px 20px;border-bottom:1px solid var(--border-row);min-height:71px}.booking-row:last-child{border-bottom:0}.booking-row.cancelled{background:var(--surface-white) 0f1;color:var(--text-cancelled)}.time-range{font-weight:700;font-size:13px;font-variant-numeric:tabular-nums}.customer{display:flex;flex-direction:column;gap:4px}.customer strong{font-size:14px}.customer small{font-size:12px;color:var(--text-caption)}.booking-note{white-space:pre-wrap;overflow-wrap:anywhere;color:var(--text-primary)!important}.customer-note{white-space:pre-wrap;overflow-wrap:anywhere;color:var(--text-caption)!important}.customer .provenance,.provenance{color:var(--text-caption);font-size:11px}.lifecycle-history{padding-left:20px;color:var(--text-caption);font-size:12px}.booking-status{text-transform:capitalize;font-size:12px}.actions{display:flex;gap:6px}.actions button{padding:6px 9px;font-size:12px;border-radius:7px}.footnote{color:var(--text-footnote);font-size:12px;margin-top:14px}.outside-hours{padding:18px;border-top:1px solid var(--border-neutral)}.modal-backdrop{position:fixed;inset:0;background:var(--surface-backdrop);display:flex;justify-content:flex-end}.detail{position:relative;width:410px;background:var(--surface-white);padding:42px 28px;display:flex;flex-direction:column;gap:20px;box-shadow:-5px 0 30px var(--shadow-black)}.detail .close{position:absolute;top:15px;right:16px}@media(max-width:950px){.topbar{flex-wrap:wrap}main{width:calc(100% - 36px)}.agenda{overflow-x:auto}.agenda-header,.booking-row{min-width:1050px}.agenda-header{min-width:1150px}.agenda-controls{width:100%;flex-wrap:wrap}.page-heading{align-items:flex-start;flex-direction:column}.connection{flex-wrap:wrap}}.editor{gap:14px;overflow-y:auto}.editor label{display:grid;gap:5px;color:var(--text-form-label);font-size:12px;font-weight:700}.editor input,.editor textarea,.editor select{border:1px solid var(--border-input);padding:10px;border-radius:7px;width:100%}.editor textarea{resize:vertical}.editor .checkbox-label{display:flex;align-items:center;gap:10px}.editor .checkbox-label input{width:auto}.login-page{min-height:100vh;display:grid;place-items:center;background:var(--surface-page)}.login-card{width:min(390px,calc(100% - 36px));background:#fff;border:1px solid var(--border-subtle);border-radius:16px;padding:34px;display:grid;gap:15px;box-shadow:0 16px 50px var(--shadow-panel)}.login-locale{justify-self:end;display:flex;gap:2px;padding:3px;background:var(--surface-locale);border-radius:8px}.login-locale button,.locale-switch button{border:0;background:transparent;padding:5px 8px;border-radius:6px;color:var(--text-locale);font-size:11px;font-weight:800}.login-locale button.active,.locale-switch button.active{background:var(--surface-white);color:var(--text-locale-active);box-shadow:0 1px 3px var(--shadow-locale)}.login-card h1{color:var(--text-primary);font-size:28px;margin:0}.login-card label{display:grid;gap:6px;color:var(--text-form-label);font-size:12px;font-weight:700}.login-card input{border:1px solid var(--border-input);border-radius:7px;padding:11px;width:100%}.login-card button[type=submit]{background:var(--surface-login-primary);color:#fff;border-color:var(--surface-login-primary)}.user-actions{display:flex;align-items:center;gap:10px}.user-actions .status{max-width:190px;overflow:hidden;text-overflow:ellipsis}.locale-switch{display:flex;gap:2px;padding:3px;background:var(--surface-control-dark);border:1px solid var(--border-control-dark);border-radius:8px}.locale-switch button.active{background:var(--surface-white);color:var(--text-locale-active)}
