:root{color-scheme:dark;--bg:#10131b;--panel:#1a2030;--text:#f4f6fc;--muted:#bac4d8;--accent:#87b5ff}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:17px/1.65 system-ui,sans-serif}main{max-width:780px;margin:5vh auto;padding:28px}h1{font-size:clamp(28px,5vw,42px);line-height:1.15}h2{margin-top:36px;font-size:24px}a{color:var(--accent)}.brand{font-weight:700;text-decoration:none}label{display:block;margin:20px 0}input,select,textarea,button,.button{font:inherit;border-radius:10px;padding:13px 16px}input:not([type=checkbox]),select,textarea{display:block;width:100%;margin-top:8px;border:1px solid #69748b;background:var(--panel);color:var(--text)}button,.button{display:inline-block;background:var(--accent);color:#10131b;border:0;cursor:pointer;font-weight:650;text-decoration:none}button.secondary{background:#39455c;color:white}.check{font-size:15px}input[type=checkbox]{width:20px;height:20px;vertical-align:middle;margin-right:10px}article,.notice{background:var(--panel);padding:18px;border-radius:14px;margin:18px 0}article p{margin-top:0}small,footer{color:var(--muted)}small{display:block}footer{font-size:14px;margin-top:50px}table{width:100%;border-collapse:collapse;font-size:14px}td,th{padding:10px;text-align:left;border-bottom:1px solid #39455c;overflow-wrap:anywhere}:focus-visible{outline:3px solid white;outline-offset:4px}.scroll{overflow-x:auto}code{overflow-wrap:anywhere}@media(max-width:500px){main{padding:20px;margin:2vh auto}}
details{background:var(--panel);padding:16px;border-radius:12px;margin:16px 0}summary{cursor:pointer;font-weight:650}fieldset{border:1px solid #69748b;border-radius:10px}fieldset label.check{display:inline-block;margin:8px 12px 8px 0}.fc{--fc-border-color:#39455c;--fc-page-bg-color:var(--bg);--fc-neutral-bg-color:var(--panel);--fc-list-event-hover-bg-color:#39455c;--fc-today-bg-color:#263852;font-size:14px}.fc .fc-toolbar{flex-wrap:wrap;gap:10px}.fc .fc-toolbar-title{font-size:20px}.fc-event.available{background:#265c49;border-color:#72cfaa}.fc-event.booked{background:#324f85;border-color:#87b5ff}.fc-event.closed{background:#444;border-color:#888}dt{font-weight:650}dd{margin:0 0 16px;white-space:pre-wrap}button:disabled{opacity:.5;cursor:wait}.admin-nav{margin:20px 0}
