.calendar-page{max-width:760px;margin:48px auto;padding:0 20px 50px}.calendar-page h1{margin:20px 0 12px}.calendar-languages{margin:24px 0}.calendar-controls{display:flex;align-items:center;justify-content:space-between;gap:10px}.calendar-controls h2{font-size:1.35rem;text-align:center}.calendar-page button{min-width:44px;min-height:44px;border:1px solid #d5c9b5;border-radius:8px;background:#fffdf7;color:#352d23;cursor:pointer;font:inherit}.calendar-page button:disabled{cursor:default;opacity:.45}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px}.weekday{text-align:center;padding:8px 0;color:#756a5d;font-size:.8rem}.calendar-grid .day{position:relative;min-height:64px;width:100%;border-radius:6px}.day.busy{background:#eee8df;color:#756a5d}.day .cross{display:block;font-size:22px;line-height:20px;color:#9d5748}.calendar-grid .selected{background:#d7c4a4;outline:2px solid #745c38}.calendar-grid .in-range{background:#f1e7d7}.calendar-actions{display:flex;flex-wrap:wrap;gap:12px;margin:24px 0}.calendar-actions button{padding:8px 14px}#status{min-height:1.5em}#selection{font-weight:600}a:focus-visible,button:focus-visible{outline:3px solid #765a32;outline-offset:3px}@media(max-width:480px){.calendar-page{margin:24px auto;padding:0 12px 32px}.calendar-grid{gap:3px}.calendar-grid .day{min-height:55px}.calendar-page h1{font-size:2rem}}
.calendar-grid .day.busy:disabled{opacity:1}.calendar-grid .day.selected:disabled{opacity:1}
.calendar-language-header{position:relative;top:auto;display:flex;justify-content:flex-end;border:0;background:transparent;margin:20px 0}.calendar-language-header .flag{width:22px;height:15px}.calendar-language-header .language-list{right:0}
