:root{--navy-950:#10233f;--navy-800:#263b57;--navy-600:#5a6b80;--navy-300:#bac4d0;--navy-150:#dce2e9;--navy-075:#edf1f5;--paper:#fff;--canvas:#f5f4ef;--amber-500:#eea52e;--amber-600:#d98a13;--amber-100:#fff0ce;--amber-075:#fff8e8;--teal-700:#17657a;--teal-600:#20819a;--teal-200:#a9dfe8;--teal-100:#dff3f6;--teal-050:#f1fafb;--shadow:0 18px 54px #10233f1a}*{box-sizing:border-box}html{background:var(--canvas);min-width:320px}body{background:var(--canvas);min-height:100vh;color:var(--navy-950);-webkit-font-smoothing:antialiased;margin:0;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Hiragino Sans,Noto Sans JP,sans-serif}button{font:inherit}.page-shell{min-height:100vh;padding:52px 72px 42px}.page{width:min(1296px,100%);margin:0 auto}.masthead{justify-content:space-between;align-items:flex-end;gap:48px;margin-bottom:28px;display:flex}.eyebrow{color:var(--amber-600);letter-spacing:.16em;margin:0 0 10px;font-size:12px;font-weight:800}h1{color:var(--navy-950);letter-spacing:-.045em;margin:0;font-size:clamp(34px,3.1vw,50px);font-weight:760;line-height:1.08}.intro{color:var(--navy-600);margin:11px 0 0;font-size:15px;font-weight:500;line-height:1.65}.updated{color:var(--navy-600);white-space:nowrap;flex:none;align-items:center;gap:9px;margin:0 0 6px;font-size:13px;font-weight:650;display:flex}.masthead-side{justify-items:end;gap:12px;display:grid}.account-mode{color:var(--navy-600);align-items:center;gap:10px;font-size:11px;font-weight:700;display:flex}.account-mode a{border:1px solid var(--navy-150);background:var(--paper);color:var(--teal-700);border-radius:8px;padding:7px 10px;text-decoration:none}.account-mode a:hover{border-color:var(--teal-200)}.live-dot{background:var(--amber-500);width:8px;height:8px;box-shadow:0 0 0 4px var(--amber-100);border-radius:999px}.calendar-shell{border:1px solid var(--navy-150);background:var(--paper);box-shadow:var(--shadow);border-radius:22px;overflow:hidden}.toolbar{border-bottom:1px solid var(--navy-150);grid-template-columns:minmax(240px,1fr) auto minmax(180px,1fr);align-items:center;gap:20px;min-height:88px;padding:22px 26px;display:grid}.week-meta{min-width:0}.week-label{color:var(--navy-600);letter-spacing:.12em;margin:0 0 4px;font-size:11px;font-weight:800}.week-range{color:var(--navy-950);font-variant-numeric:tabular-nums;letter-spacing:-.02em;margin:0;font-size:22px;font-weight:760;line-height:1.35}.week-controls{border:1px solid var(--navy-150);background:var(--navy-075);border-radius:13px;align-items:center;gap:7px;padding:5px;display:inline-flex}.week-controls button{min-height:38px;color:var(--navy-800);cursor:pointer;background:0 0;border:0;border-radius:9px;padding:0 15px;font-size:13px;font-weight:700;transition:color .16s,background-color .16s,box-shadow .16s,transform .16s}.week-controls button:hover:not(:disabled){background:var(--paper)}.week-controls button:active:not(:disabled){transform:translateY(1px)}.week-controls button:focus-visible{outline:3px solid var(--amber-100);outline-offset:2px}.week-controls button.current{background:var(--amber-500);color:#342100;box-shadow:0 3px 10px #d98a1333}.week-controls button:disabled{cursor:not-allowed;opacity:.4}.legend{color:var(--navy-600);justify-self:end;align-items:center;gap:18px;font-size:12px;font-weight:700;display:flex}.legend-item{white-space:nowrap;align-items:center;gap:8px;display:inline-flex}.booking-tools{border-bottom:1px solid var(--navy-150);background:linear-gradient(90deg, var(--teal-050), var(--paper));grid-template-columns:minmax(280px,.8fr) minmax(320px,1.2fr);gap:22px;padding:18px 26px;display:grid}.duration-picker,.selection-guide{align-items:center;gap:13px;min-width:0;display:flex}.tool-step{background:var(--teal-700);width:28px;height:28px;color:var(--paper);border-radius:999px;flex:none;place-items:center;font-size:12px;font-weight:800;display:grid}.tool-label,.tool-description{margin:0}.tool-label{color:var(--navy-950);font-size:12px;font-weight:800}.tool-description{color:var(--navy-600);margin-top:3px;font-size:12px;line-height:1.5}.duration-options{border:1px solid var(--teal-200);background:var(--paper);border-radius:10px;flex-wrap:wrap;align-items:center;gap:4px;margin-top:7px;padding:3px;display:inline-flex}.custom-duration-field{border-left:1px solid var(--teal-200);min-height:32px;color:var(--navy-600);align-items:center;gap:5px;padding:0 8px;font-size:10px;font-weight:800;display:inline-flex}.custom-duration-field input{border:1px solid var(--navy-150);background:var(--paper);width:54px;height:28px;color:var(--navy-950);font:inherit;font-variant-numeric:tabular-nums;text-align:right;border-radius:6px;padding:0 4px;font-size:12px}.duration-options button{min-width:58px;min-height:32px;color:var(--navy-600);cursor:pointer;background:0 0;border:0;border-radius:7px;padding:0 10px;font-size:12px;font-weight:800}.duration-options button:hover,.duration-options button:focus-visible{background:var(--teal-100);color:var(--teal-700)}.duration-options button:focus-visible,.slot-start-button:focus-visible,.copy-button:focus-visible,.candidate-chip button:focus-visible{outline:3px solid var(--teal-200);outline-offset:2px}.duration-options button.selected{background:var(--teal-700);color:var(--paper)}.swatch{border-radius:4px;width:18px;height:12px}.swatch.free{border:1px solid var(--navy-300);background:var(--paper)}.swatch.busy{border:1px solid var(--amber-600);background:var(--amber-500)}.calendar-scroll{overscroll-behavior-inline:contain;overflow-x:auto}.weekly-calendar{min-width:840px;padding:20px 26px 26px}.calendar-header,.calendar-body{grid-template-columns:72px repeat(5,minmax(135px,1fr));display:grid}.calendar-header{border-bottom:1px solid var(--navy-150);min-height:76px}.calendar-corner{color:var(--navy-600);letter-spacing:.08em;align-items:flex-end;padding:0 12px 14px 0;font-size:11px;font-weight:800;display:flex}.calendar-day-header{border-left:1px solid var(--navy-150);color:var(--navy-950);text-align:left;justify-content:center;align-items:center;gap:12px;display:flex}.calendar-day-header.today{background:var(--amber-075);box-shadow:inset 0 -3px 0 var(--amber-500)}.header-date{background:var(--navy-075);font-variant-numeric:tabular-nums;border-radius:12px;place-items:center;width:42px;height:42px;font-size:20px;font-weight:800;display:grid}.calendar-day-header.today .header-date{background:var(--amber-100)}.header-weekday,.header-month{display:block}.header-weekday{margin-bottom:3px;font-size:13px;font-weight:800}.header-month{color:var(--navy-600);font-size:11px;font-weight:650}.calendar-body{height:540px}.time-axis{border-right:1px solid var(--navy-150);color:var(--navy-600);font-variant-numeric:tabular-nums;font-size:11px;font-weight:700;position:relative}.time-label{top:var(--y);position:absolute;right:12px;transform:translateY(-50%)}.time-label.first{transform:none}.time-label.last{transform:translateY(-100%)}.day-column{border-right:1px solid var(--navy-150);background-color:var(--paper);background-image:linear-gradient(to bottom, transparent calc(100% - 1px), var(--navy-150) calc(100% - 1px)), linear-gradient(to bottom, transparent calc(100% - 1px), #bac4d06b calc(100% - 1px));background-position:0 0;background-size:100% 11.1111%,100% 5.55556%;position:relative;overflow:hidden}.day-column.today{background-color:#fffdf8}.busy-slot,.free-slot{justify-content:center;align-items:center;min-height:2px;display:flex;position:absolute;left:6px;right:6px;overflow:hidden}.busy-slot{z-index:3;border:1px solid var(--amber-600);background:var(--amber-500);color:#3f2800;border-radius:7px;font-size:11px;font-weight:800;transition:filter .16s,transform .16s;box-shadow:inset 0 2px #ffffff73,inset 0 -2px #ffffff59,0 4px 12px #d98a1329}.busy-slot:hover{z-index:4;filter:brightness(1.03);transform:translateY(-1px)}.busy-slot.short .block-text{display:none}.free-slot{z-index:2;color:var(--navy-600);pointer-events:none;gap:7px;font-size:11px;font-weight:700}.free-slot.selectable{color:var(--teal-700);background:#dff3f69e;border-block:1px solid #20819a38}.free-slot.selectable .free-dot{background:var(--teal-600)}.free-slot.short span:last-child{display:none}.free-dot{background:var(--navy-300);border-radius:999px;flex:none;width:6px;height:6px}.slot-start-button{top:var(--slot-top);z-index:4;cursor:pointer;background:0 0;border:0;height:5.55556%;padding:0;position:absolute;left:6px;right:6px}.slot-preview{height:var(--preview-height);border:2px solid var(--teal-600);color:var(--teal-700);opacity:0;pointer-events:none;transform-origin:top;background:#dff3f6f5;border-radius:7px;justify-content:space-between;align-items:center;padding:6px 8px;font-size:10px;font-weight:850;transition:opacity .12s,transform .12s;display:flex;position:absolute;top:0;left:0;right:0;transform:scale(.98);box-shadow:0 5px 16px #17657a29}.slot-start-button:hover,.slot-start-button:focus-visible,.slot-start-button.selected{z-index:6}.slot-start-button:hover .slot-preview,.slot-start-button:focus-visible .slot-preview,.slot-start-button.selected .slot-preview{opacity:1;transform:scale(1)}.slot-start-button.selected .slot-preview{border-color:var(--teal-700);background:var(--teal-700);color:var(--paper);box-shadow:0 7px 20px #17657a47}.day-column.unavailable{background-color:var(--navy-075);background-image:repeating-linear-gradient(-45deg,#0000 0 8px,#bac4d029 8px 16px)}.unavailable-label{z-index:2;color:var(--navy-600);writing-mode:vertical-rl;place-items:center;font-size:11px;font-weight:700;display:grid;position:absolute;inset:0}.candidate-tray{border-top:1px solid var(--navy-150);background:var(--paper);padding:22px 26px}.candidate-heading{justify-content:space-between;align-items:center;gap:20px;display:flex}.candidate-kicker{color:var(--teal-700);letter-spacing:.12em;margin:0 0 4px;font-size:10px;font-weight:850}.candidate-heading h3{color:var(--navy-950);letter-spacing:-.01em;margin:0;font-size:17px}.candidate-heading h3 span{color:var(--navy-600);margin-left:6px;font-size:12px;font-weight:750}.copy-button{background:var(--teal-700);min-height:40px;color:var(--paper);cursor:pointer;border:0;border-radius:10px;padding:0 18px;font-size:12px;font-weight:800;box-shadow:0 5px 14px #17657a33}.copy-button:hover:not(:disabled){background:var(--teal-600)}.copy-button:disabled{box-shadow:none;cursor:not-allowed;opacity:.4}.empty-candidates{border:1px dashed var(--navy-300);color:var(--navy-600);border-radius:10px;margin:14px 0 0;padding:12px 14px;font-size:12px}.candidate-list{flex-wrap:wrap;gap:9px;margin-top:14px;display:flex}.candidate-chip{border:1px solid var(--teal-200);background:var(--teal-050);min-height:42px;color:var(--teal-700);font-variant-numeric:tabular-nums;border-radius:10px;align-items:center;gap:10px;padding:0 6px 0 14px;font-size:13px;font-weight:800;display:inline-flex}.candidate-chip button{width:30px;height:30px;color:var(--teal-700);cursor:pointer;background:0 0;border:0;border-radius:7px;place-items:center;font-size:19px;display:grid}.candidate-chip button:hover{background:var(--teal-100)}.selection-message{min-height:18px;color:var(--teal-700);margin:8px 0 0;font-size:11px;font-weight:700}.booking-request-section{border-top:1px solid var(--navy-150);background:linear-gradient(135deg, var(--teal-050), var(--paper) 62%);padding:26px}.booking-request-heading{align-items:flex-start;gap:13px;margin-bottom:20px;display:flex}.booking-request-heading h3,.booking-request-heading p{margin:0}.booking-request-heading h3{font-size:19px}.booking-request-heading p:last-child{color:var(--navy-600);margin-top:5px;font-size:12px;line-height:1.65}.booking-request-form{position:relative}.booking-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px 18px;display:grid}.booking-form-grid .booking-code-field{grid-column:1/-1}.booking-login-note{border:1px solid var(--teal-200);background:var(--teal-050);color:var(--teal-700);border-radius:10px;grid-column:1/-1;margin:0;padding:12px 14px;font-size:12px;font-weight:750}.booking-request-form label{color:var(--navy-800);gap:7px;font-size:12px;font-weight:750;display:grid}.booking-request-form label>span strong{color:var(--amber-600);margin-left:5px;font-size:9px}.booking-request-form input,.booking-request-form textarea{border:1px solid var(--navy-300);background:var(--paper);width:100%;color:var(--navy-950);font:inherit;border-radius:10px;outline:none;font-size:14px;transition:border-color .14s,box-shadow .14s}.booking-request-form input{height:44px;padding:0 12px}.booking-request-form textarea{resize:vertical;min-height:86px;padding:11px 12px;line-height:1.6}.booking-request-form input:focus,.booking-request-form textarea:focus{border-color:var(--teal-600);box-shadow:0 0 0 3px var(--teal-100)}.booking-message-field{margin-top:15px}.booking-honeypot{width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}.booking-submit-row{justify-content:space-between;align-items:center;gap:22px;margin-top:18px;display:flex}.booking-submit-row p{color:var(--navy-600);margin:0;font-size:12px}.booking-submit-row p>span{margin-top:4px;font-size:10px;display:block}.booking-submit-row button{background:var(--teal-700);min-height:46px;color:var(--paper);cursor:pointer;border:0;border-radius:11px;padding:0 24px;font-size:13px;font-weight:850;box-shadow:0 7px 18px #17657a38}.booking-submit-row button:hover:not(:disabled){background:var(--teal-600)}.booking-submit-row button:disabled{box-shadow:none;cursor:not-allowed;opacity:.45}.booking-error{color:#a13c30;margin:12px 0 0;font-size:12px;font-weight:700}.booking-success,.booking-checking{border:1px solid var(--teal-200);background:var(--paper);border-radius:13px;align-items:flex-start;gap:14px;padding:18px;display:flex}.booking-success>span{background:var(--teal-700);width:34px;height:34px;color:var(--paper);border-radius:50%;flex:none;place-items:center;font-weight:900;display:grid}.booking-success h4,.booking-success p,.booking-checking h4,.booking-checking p{margin:0}.booking-success h4,.booking-checking h4{font-size:15px}.booking-success p,.booking-checking p{color:var(--navy-600);margin-top:5px;font-size:12px;line-height:1.6}.booking-success .booking-reference,.booking-checking .booking-reference{color:var(--teal-700);letter-spacing:.06em;font-size:10px;font-weight:800}.booking-checking-dot{border:3px solid var(--teal-200);border-top-color:var(--teal-700);border-radius:50%;flex:none;width:18px;height:18px;margin:8px;animation:.9s linear infinite booking-checking-spin}@keyframes booking-checking-spin{to{transform:rotate(360deg)}}.privacy-bar{border-top:1px solid var(--amber-100);background:var(--amber-075);color:var(--navy-800);justify-content:space-between;align-items:center;gap:28px;padding:22px 26px;font-size:12px;line-height:1.65;display:flex}.privacy-bar p{margin:0}.privacy-bar strong{color:var(--navy-950);margin-right:16px}.timezone{color:var(--navy-600);white-space:nowrap;flex:none;font-weight:700}.snapshot-note{color:var(--navy-600);text-align:right;margin:0;font-size:11px}.snapshot-note-row{justify-content:space-between;align-items:center;gap:24px;margin:12px 5px 0;display:flex}.private-calendar-link{color:var(--teal-700);font-size:11px;font-weight:800;text-decoration:none}.private-calendar-link:hover{text-decoration:underline}.private-access-shell,.private-loading{min-height:100vh;padding:48px 20px}.private-access-shell{place-items:center;display:grid}.private-access-card{border:1px solid var(--navy-150);background:var(--paper);width:min(620px,100%);box-shadow:var(--shadow);border-radius:22px;padding:38px}.private-access-card h1{font-size:clamp(30px,5vw,42px)}.private-access-card>p:not(.eyebrow){color:var(--navy-600);margin:18px 0 0;line-height:1.8}.private-access-card>a,.private-access-actions a{background:var(--teal-700);min-height:42px;color:var(--paper);border-radius:10px;justify-content:center;align-items:center;margin-top:22px;padding:0 18px;font-size:13px;font-weight:800;text-decoration:none;display:inline-flex}.private-access-actions{flex-wrap:wrap;gap:10px;display:flex}.private-access-actions a:last-child{border:1px solid var(--navy-150);background:var(--paper);color:var(--navy-800)}.private-loading{color:var(--navy-600);justify-content:center;align-items:center;gap:12px;font-size:14px;font-weight:700;display:flex}.private-loading-dot{background:var(--teal-600);width:10px;height:10px;box-shadow:0 0 0 6px var(--teal-100);border-radius:999px}.detail-page-shell{min-height:100vh;padding:38px 42px}.detail-page{width:min(1460px,100%);margin:0 auto}.detail-masthead{justify-content:space-between;align-items:flex-end;gap:32px;margin-bottom:24px;display:flex}.detail-account{color:var(--navy-600);align-items:center;gap:12px;font-size:12px;font-weight:700;display:flex}.detail-account>span{text-overflow:ellipsis;white-space:nowrap;max-width:220px;overflow:hidden}.detail-account a{border:1px solid var(--navy-150);background:var(--paper);min-height:36px;color:var(--navy-800);border-radius:9px;padding:9px 12px;text-decoration:none}.detail-account a:hover{border-color:var(--teal-200);color:var(--teal-700)}.booking-admin{border:1px solid var(--navy-150);background:var(--paper);box-shadow:var(--shadow);border-radius:20px;margin-bottom:24px;padding:24px}.booking-admin-heading{justify-content:space-between;align-items:flex-start;gap:24px;display:flex}.booking-admin-heading h2,.booking-admin-heading p{margin:0}.booking-admin-heading h2{align-items:center;gap:9px;font-size:20px;display:flex}.booking-admin-heading h2 span{background:var(--amber-500);color:#342100;border-radius:999px;place-items:center;min-width:24px;height:24px;font-size:11px;display:grid}.booking-admin-heading p:last-child{color:var(--navy-600);margin-top:5px;font-size:12px}.booking-admin-heading>button{border:1px solid var(--navy-150);background:var(--navy-075);min-height:38px;color:var(--navy-800);cursor:pointer;border-radius:9px;padding:0 14px;font-size:11px;font-weight:800}.booking-admin-message{background:var(--teal-050);color:var(--teal-700);border-radius:8px;margin:15px 0 0;padding:10px 12px;font-size:11px;font-weight:750}.booking-settings{border:1px solid var(--navy-150);background:var(--navy-075);border-radius:11px;margin-top:15px}.booking-settings summary{min-height:44px;color:var(--navy-800);cursor:pointer;align-items:center;gap:10px;padding:0 13px;font-size:11px;font-weight:800;display:flex}.booking-settings summary span{color:var(--teal-700);margin-left:auto;font-size:9px}.booking-settings-body{padding:0 13px 13px}.booking-settings-body>p{color:var(--navy-600);margin:0 0 10px;font-size:10px;line-height:1.6}.booking-settings-body>div{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.booking-settings-body label{color:var(--navy-600);gap:5px;font-size:9px;font-weight:750;display:grid}.booking-settings-body input{border:1px solid var(--navy-300);background:var(--paper);height:39px;color:var(--navy-950);font:inherit;border-radius:8px;padding:0 10px;font-size:12px}.booking-settings-body>button{background:var(--teal-700);min-height:38px;color:var(--paper);cursor:pointer;border:0;border-radius:8px;margin-top:10px;padding:0 13px;font-size:10px;font-weight:800}.booking-settings-body>button:disabled{cursor:not-allowed;opacity:.45}.booking-admin-empty{border:1px dashed var(--navy-300);color:var(--navy-600);border-radius:10px;margin:18px 0 0;padding:16px;font-size:12px}.booking-admin-list{gap:12px;margin-top:18px;display:grid}.booking-history{border-top:1px solid var(--navy-150);margin-top:18px;padding-top:14px}.booking-history summary{border:1px solid var(--navy-150);background:var(--navy-075);min-height:42px;color:var(--navy-800);cursor:pointer;border-radius:10px;align-items:center;gap:9px;padding:0 12px;font-size:11px;font-weight:800;list-style:none;display:flex}.booking-history summary::-webkit-details-marker{display:none}.booking-history summary:before{content:"＋";width:18px;color:var(--teal-700);font-size:15px;line-height:1}.booking-history[open] summary:before{content:"−"}.booking-history summary span{color:var(--navy-600);margin-left:auto;font-size:9px}.booking-history .booking-admin-list{margin-top:12px}.booking-admin-card{border:1px solid var(--navy-150);background:var(--paper);border-radius:13px;padding:17px}.booking-admin-card.status-pending,.booking-admin-card.status-failed{border-color:var(--amber-500);box-shadow:inset 3px 0 var(--amber-500)}.booking-admin-card.status-sent{opacity:.8}.booking-card-topline{color:var(--navy-600);align-items:center;gap:10px;font-size:9px;font-weight:750;display:flex}.booking-status{background:var(--navy-075);color:var(--navy-800);border-radius:999px;padding:4px 7px}.status-pending .booking-status,.status-failed .booking-status{background:var(--amber-100);color:#6d4500}.status-sent .booking-status{background:var(--teal-100);color:var(--teal-700)}.booking-short-id{letter-spacing:.06em;margin-left:auto}.booking-card-main{grid-template-columns:minmax(240px,.85fr) minmax(360px,1.15fr);gap:24px;margin-top:13px;display:grid}.booking-card-main h3,.booking-card-main p{margin:0}.booking-card-main h3{font-size:16px}.booking-requester{color:var(--navy-800);font-size:12px;font-weight:750;margin-top:6px!important}.booking-requester span{color:var(--navy-600);margin-left:9px;font-weight:600}.booking-card-main a{color:var(--teal-700);margin-top:4px;font-size:11px;display:inline-block}.booking-email-missing{color:var(--navy-600);font-size:10px;margin-top:4px!important}.booking-request-message,.booking-failure{font-size:11px;line-height:1.6;margin-top:9px!important}.booking-request-message{color:var(--navy-600)}.booking-failure{color:#a13c30;font-weight:700}.booking-candidate-options{border:0;gap:7px;min-width:0;margin:0;padding:0;display:grid}.booking-candidate-options legend{color:var(--navy-600);margin-bottom:6px;font-size:10px;font-weight:800}.booking-candidate-options label{border:1px solid var(--navy-150);min-height:39px;color:var(--navy-800);cursor:pointer;border-radius:9px;align-items:center;gap:8px;padding:0 11px;font-size:11px;font-weight:750;display:flex}.booking-candidate-options label.selected{border-color:var(--teal-600);background:var(--teal-050);color:var(--teal-700)}.booking-candidate-options input{accent-color:var(--teal-700)}.booking-card-actions{justify-content:flex-end;gap:9px;margin-top:15px;display:flex}.booking-card-actions button{cursor:pointer;border-radius:9px;min-height:40px;padding:0 15px;font-size:11px;font-weight:850}.booking-card-actions .reject{border:1px solid var(--navy-150);background:var(--paper);color:var(--navy-600)}.booking-card-actions .approve{background:var(--teal-700);color:var(--paper);border:0}.booking-card-actions button:disabled{cursor:wait;opacity:.5}.detail-calendar-shell{border:1px solid var(--navy-150);background:var(--paper);box-shadow:var(--shadow);border-radius:22px;overflow:hidden}.detail-toolbar{border-bottom:1px solid var(--navy-150);justify-content:space-between;align-items:center;gap:24px;padding:20px 26px;display:flex}.detail-updated{color:var(--navy-600);margin:5px 0 0;font-size:11px;font-weight:650}.private-booking-compose{border-bottom:1px solid var(--navy-150);background:linear-gradient(135deg, var(--teal-050), var(--paper) 72%);padding:18px 26px}.private-booking-intro{justify-content:space-between;align-items:center;gap:24px;display:flex}.private-booking-kicker,.private-booking-intro h3,.private-booking-intro p{margin:0}.private-booking-kicker{color:var(--teal-700);letter-spacing:.12em;font-size:9px;font-weight:850}.private-booking-intro h3{margin-top:3px;font-size:17px}.private-booking-intro p:not(.private-booking-kicker){color:var(--navy-600);margin-top:5px;font-size:11px;line-height:1.6}.private-duration-picker{border:1px solid var(--navy-150);background:var(--paper);border-radius:10px;flex:none;align-items:center;display:inline-flex;overflow:hidden}.private-duration-picker .custom-duration-field{border-left:0;min-height:38px}.private-duration-picker button{border:0;border-right:1px solid var(--navy-150);min-width:62px;min-height:38px;color:var(--navy-600);cursor:pointer;background:0 0;padding:0 12px;font-size:11px;font-weight:800}.private-duration-picker button:last-child{border-right:0}.private-duration-picker button.selected{background:var(--teal-700);color:var(--paper)}.private-booking-form{border-top:1px solid var(--teal-200);margin-top:16px;padding-top:16px}.private-selected-slots{margin-bottom:14px}.private-selected-slots-heading{align-items:center;gap:12px;margin-bottom:8px;display:flex}.private-selected-slots-heading>span{background:var(--teal-100);color:var(--teal-700);border-radius:5px;padding:4px 7px;font-size:9px;font-weight:850}.private-selected-slots-heading>button{color:var(--navy-600);cursor:pointer;background:0 0;border:0;margin-left:auto;padding:5px 8px;font-size:10px;font-weight:750}.private-selected-slots-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.private-selected-slot{border:1px solid var(--teal-200);background:var(--paper);border-radius:9px;align-items:center;gap:10px;min-height:42px;padding:6px 8px 6px 11px;display:flex}.private-selected-slot strong{font-size:12px}.private-selected-slot button{border:1px solid var(--navy-150);background:var(--paper);width:28px;height:28px;color:var(--navy-600);cursor:pointer;border-radius:7px;margin-left:auto;padding:0;font-size:10px;font-weight:750}.private-booking-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.private-booking-fields label{gap:6px;display:grid}.private-booking-fields label>span{color:var(--navy-600);font-size:10px;font-weight:800}.private-booking-fields input,.private-booking-fields textarea{border:1px solid var(--navy-150);background:var(--paper);width:100%;color:var(--navy-950);font:inherit;border-radius:8px;outline:none;font-size:12px}.private-booking-fields input{min-height:42px;padding:0 11px}.private-booking-fields textarea{resize:vertical;min-height:66px;padding:10px 11px}.private-booking-fields input:focus,.private-booking-fields textarea:focus{border-color:var(--teal-600);box-shadow:0 0 0 3px var(--teal-100)}.private-booking-message{grid-column:1/-1}.private-booking-submit{justify-content:space-between;align-items:center;gap:20px;margin-top:14px;display:flex}.private-booking-submit p{color:var(--navy-600);margin:0;font-size:10px;line-height:1.55}.private-booking-submit button{background:var(--teal-700);min-height:44px;color:var(--paper);cursor:pointer;border:0;border-radius:9px;flex:none;padding:0 18px;font-size:11px;font-weight:850}.private-booking-submit button:disabled{cursor:wait;opacity:.58}.private-booking-notice{border-radius:8px;margin:14px 0 0;padding:10px 12px;font-size:11px;font-weight:750;line-height:1.55}.private-booking-notice.success{border:1px solid var(--teal-200);background:var(--teal-100);color:var(--teal-700)}.private-booking-notice.checking{border:1px solid var(--amber-500);background:var(--amber-100);color:#6d4500}.private-booking-notice.error{color:#8b2f2f;background:#fff1f1;border:1px solid #e4b6b6}.source-filter{border-bottom:1px solid var(--navy-150);background:var(--navy-075);flex-wrap:wrap;align-items:center;gap:8px;min-height:60px;padding:12px 26px;display:flex}.source-filter-label{color:var(--navy-600);margin-right:5px;font-size:11px;font-weight:800}.source-filter button{border:1px solid var(--navy-150);background:var(--paper);min-height:34px;color:var(--navy-600);cursor:pointer;opacity:.58;border-radius:999px;align-items:center;gap:7px;padding:0 11px;font-size:11px;font-weight:750;display:inline-flex}.source-filter button>span,.event-inspector-dot{background:var(--event-accent);border-radius:999px;flex:none;width:8px;height:8px}.source-filter button.visible{border-color:var(--event-accent);color:var(--navy-950);opacity:1}.source-filter button:focus-visible,.private-duration-picker button:focus-visible,.private-selected-slot button:focus-visible,.private-booking-submit button:focus-visible,.booking-slot-button:focus-visible,.all-day-event:focus-visible,.detail-event:focus-visible,.event-inspector button:focus-visible{outline:3px solid var(--teal-200);outline-offset:2px}.source-0{--event-bg:#dcecff;--event-border:#4d87c7;--event-accent:#28669f;--event-text:#123e68}.source-1{--event-bg:#ffe8d7;--event-border:#dc7d37;--event-accent:#b85a18;--event-text:#6b330e}.source-2{--event-bg:#e3f3e5;--event-border:#4d9a5b;--event-accent:#337a40;--event-text:#1f552a}.source-3{--event-bg:#eee5ff;--event-border:#8065be;--event-accent:#6446a4;--event-text:#422a79}.source-4{--event-bg:#ffe5ec;--event-border:#c95b77;--event-accent:#a73d5a;--event-text:#71243a}.detail-calendar-scroll{overscroll-behavior-inline:contain;overflow-x:auto}.detail-weekly-calendar{min-width:980px;padding:20px 26px 26px}.detail-calendar-header,.all-day-row,.detail-calendar-body{grid-template-columns:72px repeat(5,minmax(165px,1fr));display:grid}.detail-calendar-header{border-bottom:1px solid var(--navy-150);min-height:76px}.all-day-row{border-bottom:1px solid var(--navy-150);background:var(--navy-075);min-height:48px}.all-day-label{border-right:1px solid var(--navy-150);color:var(--navy-600);justify-content:flex-end;align-items:flex-start;padding:10px 12px 0 0;font-size:10px;font-weight:800;display:flex}.all-day-cell{border-right:1px solid var(--navy-150);flex-direction:column;align-items:flex-start;gap:4px;min-height:48px;padding:6px;display:flex}.all-day-empty{color:var(--navy-300);align-self:center;margin-top:6px}.all-day-event{border:1px solid var(--event-border);background:var(--event-bg);width:100%;min-height:28px;color:var(--event-text);cursor:pointer;text-align:left;text-overflow:ellipsis;white-space:nowrap;border-radius:6px;padding:5px 8px;font-size:10px;font-weight:800;line-height:1.35;overflow:hidden}.detail-calendar-body{height:660px}.detail-day-column{border-right:1px solid var(--navy-150);background-color:var(--paper);background-image:linear-gradient(to bottom, transparent calc(100% - 1px), var(--navy-150) calc(100% - 1px)), linear-gradient(to bottom, transparent calc(100% - 1px), #bac4d06b calc(100% - 1px));background-size:100% 9.09091%,100% 4.54545%;position:relative;overflow:hidden}.detail-day-column.today{background-color:#fffdf8}.detail-fresh-reservation{z-index:1;border:1px dashed var(--amber-600);background:repeating-linear-gradient(-45deg, var(--amber-075) 0 7px, var(--amber-100) 7px 14px);color:#79500c;pointer-events:none;border-radius:6px;place-items:center;min-height:5px;font-size:9px;font-weight:850;display:grid;position:absolute;left:4px;right:4px;overflow:hidden}.booking-slot-button{z-index:1;min-height:4px;color:var(--teal-700);cursor:pointer;opacity:0;background:0 0;border:1px solid #0000;border-radius:5px;place-items:center;padding:0;font-size:9px;font-weight:850;transition:background .12s,border-color .12s,opacity .12s;display:grid;position:absolute;left:4px;right:4px}.booking-slot-button:hover,.booking-slot-button:focus-visible{z-index:4;border-color:var(--teal-200);opacity:1;background:#dff3f6e0}.booking-slot-button.selected{z-index:4;border-color:var(--teal-600);box-shadow:inset 0 0 0 1px var(--teal-600), 0 5px 14px #17657a29;opacity:1;background:#dff3f6f5}.booking-slot-button:disabled{cursor:default;pointer-events:none}.detail-event{z-index:2;border:1px solid var(--event-border);background:var(--event-bg);min-height:5px;color:var(--event-text);cursor:pointer;text-align:left;border-radius:6px;padding:5px 6px;line-height:1.25;position:absolute;overflow:hidden;box-shadow:0 3px 8px #10233f1a}.detail-event:hover{z-index:4;filter:saturate(1.08)}.detail-event-time,.detail-event-title,.detail-event-source{display:block}.detail-event-time{margin-bottom:2px;font-size:9px;font-weight:850}.detail-event-title{font-size:10px;font-weight:800}.detail-event-source{opacity:.72;text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:8px;font-weight:700;overflow:hidden}.detail-event.short .detail-event-title,.detail-event.short .detail-event-source{display:none}.event-inspector{border-top:1px solid var(--navy-150);background:var(--paper);align-items:center;gap:14px;min-height:90px;padding:18px 26px;display:flex}.event-inspector-dot{width:12px;height:12px}.event-inspector-kicker,.event-inspector h3,.event-inspector p{margin:0}.event-inspector-kicker{color:var(--navy-600);letter-spacing:.08em;font-size:9px;font-weight:850}.event-inspector h3{margin-top:3px;font-size:15px}.event-inspector p:not(.event-inspector-kicker):not(.event-inspector-empty){color:var(--navy-600);margin-top:4px;font-size:11px}.event-inspector p span{margin-left:12px;font-weight:800}.event-inspector>button{background:var(--navy-075);width:34px;height:34px;color:var(--navy-600);cursor:pointer;border:0;border-radius:8px;place-items:center;margin-left:auto;font-size:20px;display:grid}.event-inspector-empty{color:var(--navy-600);margin:auto;font-size:12px}@media (width<=1020px){.page-shell{padding-inline:36px}.toolbar{grid-template-columns:1fr auto}.week-controls{grid-area:2/1/auto/-1;justify-self:center}.legend{grid-area:1/2}}@media (width<=720px){.page-shell{padding:28px 16px 30px}.masthead{margin-bottom:20px;display:block}h1{font-size:34px}.intro{font-size:14px}.updated{white-space:normal;margin-top:14px}.masthead-side{justify-items:start}.account-mode{flex-wrap:wrap;align-items:flex-start}.calendar-shell{border-radius:16px}.toolbar{flex-direction:column;align-items:stretch;gap:16px;padding:20px;display:flex}.booking-tools{grid-template-columns:1fr;gap:16px;padding:18px 20px}.week-range{font-size:19px}.week-controls,.legend{align-self:flex-start}.week-controls button{padding-inline:12px}.weekly-calendar{min-width:760px;padding:16px 18px 22px}.calendar-header,.calendar-body{grid-template-columns:62px repeat(5,minmax(132px,1fr))}.calendar-body{height:510px}.candidate-tray{padding:20px}.candidate-heading{align-items:flex-start}.copy-button{min-height:44px}.candidate-list{display:grid}.candidate-chip{justify-content:space-between}.booking-request-section{padding:20px}.booking-form-grid{grid-template-columns:1fr}.booking-submit-row{flex-direction:column;align-items:stretch}.booking-submit-row button{width:100%}.privacy-bar{flex-direction:column;align-items:flex-start;gap:8px;padding:20px}.privacy-bar strong{margin:0 0 4px;display:block}.timezone{white-space:normal}.snapshot-note{text-align:left}.snapshot-note-row{flex-direction:column;align-items:flex-start;gap:8px}.detail-page-shell{padding:28px 16px}.detail-masthead{flex-direction:column;align-items:flex-start}.detail-account{flex-wrap:wrap}.booking-admin{padding:20px}.booking-admin-heading{gap:16px}.booking-card-main{grid-template-columns:1fr;gap:16px}.booking-settings-body>div{grid-template-columns:1fr}.booking-card-actions{grid-template-columns:1fr 1fr;display:grid}.detail-toolbar{flex-direction:column;align-items:flex-start}.private-booking-compose{padding:18px 20px}.private-booking-intro,.private-booking-submit{flex-direction:column;align-items:stretch}.private-duration-picker{align-self:flex-start}.private-booking-fields{grid-template-columns:1fr}.private-booking-message{grid-column:auto}.private-booking-submit button{width:100%}.private-selected-slots-list{grid-template-columns:1fr}.source-filter{padding-inline:20px}.detail-weekly-calendar{min-width:900px;padding:16px 18px 22px}.event-inspector{align-items:flex-start;min-height:110px;padding:18px 20px}}@media (prefers-reduced-motion:reduce){.booking-checking-dot{animation:none}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important}}
