.schedule-tools{margin:1.4rem 0;padding:clamp(1.1rem,3vw,1.8rem);border-radius:26px;background:#f3ede2;border:1px solid #e1d6c6;box-shadow:0 8px 28px #614b3510;color:#483c34}.schedule-tools h3{font-family:Georgia,serif;font-size:1.65rem;font-weight:400;margin:.25rem 0 .8rem}.schedule-tools h4{font-family:Georgia,serif;font-size:1.15rem;margin:0 0 .65rem}.schedule-tools p{line-height:1.65}.schedule-tools-eyebrow{font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;color:#827460;margin:0}.schedule-tools-muted{font-size:.85rem;color:#827766;line-height:1.65}.schedule-tools-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem;margin:1.2rem 0}.schedule-tools-field{display:flex;flex-direction:column;gap:.45rem;min-width:0;font-size:.8rem;color:#766751}.schedule-tools-field input,.schedule-tools-field select,.schedule-tools-field textarea{box-sizing:border-box;width:100%;min-width:0;max-width:100%;padding:.8rem .85rem;border:1px solid #d8cbbb;border-radius:12px;background:#fffcf6;color:#483c34;font:inherit;min-height:44px}.schedule-tools-field textarea{resize:vertical}.schedule-tools-grid .schedule-tools-button{align-self:end;min-height:46px}.schedule-tools-grid .schedule-tools-field:has(textarea),.schedule-tools-consent,.schedule-tools-grid>.schedule-tools-status{grid-column:1/-1}.schedule-tools-button{border:1px solid transparent;border-radius:100px;padding:.75rem 1.05rem;background:#74303c;color:#fff7ea;font:inherit;font-size:.8rem;line-height:1.4;cursor:pointer;max-width:100%;white-space:normal;transition:background .2s,transform .2s}.schedule-tools-button:hover{background:#622a34;transform:translateY(-1px)}.schedule-tools-button:disabled{opacity:.55;cursor:wait;transform:none}.schedule-tools-subtle{background:transparent;color:#765348;border-color:#d9c8b4}.schedule-tools-subtle:hover{background:#e9dfd0}.schedule-tools-time{background:#e4e9dc;color:#47533d;border-color:#cbd5bd}.schedule-tools-time:hover{background:#d7e0ca}.schedule-tools-status{font-size:.85rem;line-height:1.65;color:#803a3b;overflow-wrap:anywhere}.schedule-tools-status:empty{display:none}.schedule-tools-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:1rem;margin-top:1rem}.schedule-tools-card{background:#fffcf6;border:1px solid #e5d9c9;border-radius:20px;padding:1.2rem;margin:.9rem 0 0;overflow-wrap:anywhere}.schedule-tools-cards .schedule-tools-card{margin:0}.schedule-tools-actions,.schedule-tools-matches{display:flex;flex-wrap:wrap;align-items:center;gap:.65rem;margin-top:1rem}.schedule-tools-matches>strong{flex-basis:100%;font-size:.8rem;font-weight:500;color:#6f765f}.schedule-tools-contact{font-size:.8rem;color:#75313d;text-underline-offset:4px}.schedule-tools-note{font-size:.85rem;background:#f4ede2;padding:.7rem;border-radius:12px;white-space:pre-wrap}.schedule-tools-series{padding:0;list-style:none;display:grid;gap:.5rem;margin:1.1rem 0}.schedule-tools-week{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.4rem 1rem;padding:.85rem 1rem;background:#e7ebde;border:1px solid #d3ddc5;border-radius:13px;font-size:.82rem}.schedule-tools-week strong{font-weight:500}.schedule-tools-week span{color:#67715b}.schedule-tools-week.is-unavailable{background:#f0e2d9;border-color:#dfc9bc}.schedule-tools-week.is-unavailable span{color:#8b5049}.schedule-tools-success{padding:1rem;background:#e6ecdc;border-radius:14px;color:#4f6344}.schedule-tools-dialog{box-sizing:border-box;position:fixed;inset:0;width:min(520px,calc(100% - 24px));max-width:calc(100% - 24px);max-height:calc(100dvh - 40px);overflow:auto;padding:1.5rem;border:1px solid #dfd0bf;border-radius:25px;background:#faf4ea;color:#483c34;box-shadow:0 22px 90px #251a263d}.schedule-tools-dialog::backdrop{background:#30211d66;backdrop-filter:blur(4px)}.schedule-tools-dialog h2{font-family:Georgia,serif;font-weight:400;font-size:1.7rem;clear:both;margin:.8rem 0}.schedule-tools-close{display:block;margin-left:auto;background:transparent;color:#806b58;border:1px solid #deceba;font-size:.72rem;padding:.45rem .7rem}.schedule-tools-close:hover{background:#e9dfd0}.schedule-tools-consent{display:flex;align-items:flex-start;gap:.6rem;font-size:.8rem;line-height:1.6;color:#7b6b57;margin:.5rem 0}.schedule-tools-consent input{flex:0 0 auto;width:17px;height:17px;margin-top:3px;accent-color:#74303c}.schedule-tools :focus,.schedule-tools-dialog :focus{outline:none}.schedule-tools-field input:focus,.schedule-tools-field select:focus,.schedule-tools-field textarea:focus,.schedule-tools-dialog input:focus,.schedule-tools-dialog select:focus,.schedule-tools-dialog textarea:focus{border-color:#b49a7f;box-shadow:none}@media(max-width:480px){.schedule-tools-grid{grid-template-columns:1fr}.schedule-tools-grid .schedule-tools-button{width:100%}.schedule-tools-dialog{padding:1.15rem}.schedule-tools-actions{align-items:stretch}.schedule-tools-actions .schedule-tools-button{flex:1 1 auto}.schedule-tools-week{flex-direction:column}.schedule-tools-dialog h2{font-size:1.45rem}}@media(prefers-reduced-motion:reduce){.schedule-tools-button{transition:none}.schedule-tools-button:hover{transform:none}}

/* A short invitation stays above booking; saved requests open on demand. */
.schedule-tools-wish{padding:18px 20px;margin:18px 0 24px}
.schedule-tools-wish h3{font-size:1.45rem;margin:.2rem 0 .5rem}
.schedule-tools-wish>.schedule-tools-eyebrow{display:none}
.schedule-tools-wish>.schedule-tools-muted{font-size:.78rem;margin:.4rem 0 1rem}
.schedule-tools-saved{margin-top:14px;border-top:1px solid #d9c8b4;padding-top:8px}
.schedule-tools-saved summary{cursor:pointer;font-size:.8rem;padding:8px 0;color:inherit}
.schedule-tools-wish>.schedule-tools-button{width:100%;min-height:44px}
