:root{font-family:system-ui,-apple-system,"Segoe UI",sans-serif;color:#172026;background:#f3f6f7;font-synthesis:none}*{box-sizing:border-box}body{margin:0}.top{display:flex;align-items:center;justify-content:space-between;padding:1rem max(1.2rem,calc((100vw - 980px)/2));background:#153d47;color:#fff}.brand{font-size:1.1rem;font-weight:750;color:#fff;text-decoration:none}.top nav{display:flex;gap:1.2rem}.top nav a{color:#dff4ed;text-decoration:none}.wrap{width:min(920px,calc(100% - 2rem));margin:2rem auto}.foot{color:#607177;font-size:.9rem;border-top:1px solid #d7e0e2;padding-top:1rem}.intro{max-width:66ch;color:#41565c;line-height:1.6}.slots{display:grid;gap:.85rem;margin-top:1.5rem}.slot{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;background:#fff;border:1px solid #d7e0e2;border-left:5px solid #64848b;border-radius:.65rem;padding:1.1rem 1.2rem;box-shadow:0 2px 8px #183b450a}.slot.free{border-left-color:#2e9070}.slot.occupied{border-left-color:#e39a36}.slot.confirmed{border-left-color:#3977b5}.slot.past{border-left-color:#9aa7aa}.date{font-weight:700;font-size:1.1rem;margin:.1rem 0}.state,.person{margin:.25rem 0;color:#53676d}.book-form{display:flex;align-items:end;gap:.6rem;flex-wrap:wrap;justify-content:flex-end}label{display:grid;gap:.3rem;font-size:.9rem;color:#40545a}input{font:inherit;border:1px solid #b7c7ca;border-radius:.4rem;padding:.58rem .65rem;min-width:11rem;background:#fff}button,.button{font:inherit;font-weight:650;border:0;border-radius:.45rem;background:#176a58;color:white;text-decoration:none;padding:.65rem .95rem;cursor:pointer}button:hover,.button:hover{background:#105342}.secondary{background:#e5ecee;color:#29444b}.secondary:hover{background:#d6e1e3}.login-form{max-width:28rem;display:grid;gap:1rem;background:white;border:1px solid #d7e0e2;border-radius:.65rem;padding:1.2rem}.login-form input{width:100%}.notice{padding:.8rem 1rem;border-radius:.5rem;background:#e9eff0;color:#334f56}.notice.success{background:#e2f4ec;color:#14583e}.notice.error{background:#fff0e9;color:#823d22}.logout{display:flex;justify-content:flex-end}.muted{color:#788a8f;font-weight:400;font-size:.82rem}@media(max-width:680px){.top{align-items:flex-start;gap:1rem;flex-direction:column}.slot{align-items:flex-start;flex-direction:column}.book-form{justify-content:flex-start;width:100%}.book-form label{flex:1 1 13rem}.book-form input{width:100%}}
