:root{font-family:Inter,system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light;color:#213547;background-color:#fff;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#747bff}body{display:flex;place-items:center;min-width:320px;min-height:100vh;margin:0}h1{font-size:3.2em;line-height:1.1}button{padding:.6em 1.2em;font-family:inherit;font-size:1em;font-weight:500;cursor:pointer;background-color:#f9f9f9;border:1px solid transparent;border-radius:8px;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}#root{width:100%;padding:2rem;margin:0 auto;text-align:center}#root.holiday-mode{display:flex;flex-direction:column;min-height:100vh;padding:0;color:#fff;background:linear-gradient(135deg,#ff6b6b,#feca57,#48dbfb,#5f27cd,#10ac84);background-size:cover}#root.holiday-mode h1,#root.holiday-mode h2,#root.holiday-mode p,#root.holiday-mode button{color:#fff}#root.holiday-mode h1.holidays,#root.holiday-mode h2.holidays{text-shadow:0 2px 8px rgba(0,0,0,.35)}#root.holiday-mode .main{display:flex;flex:1;flex-direction:column;align-items:center;justify-content:center}#root.holiday-mode .footer{color:rgba(255,255,255,.9)}#root.holiday-mode button.linkbutton{color:#fff}h1{margin-bottom:0;font-size:1.5rem}h1.holidays{font-size:10rem;letter-spacing:.25rem}h2{margin-top:0;font-size:1.25rem;font-weight:400;color:#888}h2.holidays{font-size:2rem;font-weight:700;font-style:italic;margin-bottom:5rem;padding:0 5em}h2.holidays span{background:rgba(255,255,0,.9);color:#000;padding:0 .2em;border-radius:.15em;font-style:italic;text-shadow:none}.timetable{min-width:80%;margin:0 auto;border-collapse:collapse;border:2px solid gray}.timetable td,.timetable th{padding:.5em;border:1px solid gray}.timetable td b,.timetable th b{font-size:1em}.timetable td.cancelled,.timetable th.cancelled{color:#888;background-color:#eee}p.notes{margin:0 auto;font-size:.8em}.footer{margin-top:1rem;font-size:1rem;color:#888}button.linkbutton{display:inline;padding:0;margin:0;color:#00f;text-decoration:underline;cursor:pointer;background:none;border:none}button.linkbutton[disabled]{color:#888;cursor:not-allowed}@media (max-width: 700px){#root{padding:.5rem}.timetable th,.timetable td{padding:.1em;font-size:90%}}@media (max-width: 500px){#root{padding:.25rem}.timetable th,.timetable td{padding:2px;font-size:85%}}.token-input-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:flex;align-items:center;justify-content:center;background-color:rgba(0,0,0,.5)}.token-input-modal{width:90%;max-width:400px;padding:2rem;background:#fff;border-radius:8px;box-shadow:0 4px 6px rgba(0,0,0,.1)}.token-input-modal h2{margin-top:0;color:#333}.token-input-modal form{display:flex;flex-direction:column;gap:1rem}.token-input-modal input{padding:.75rem;font-size:1rem;border:2px solid #ddd;border-radius:4px}.token-input-modal input:focus{outline:none;border-color:#06c}.token-input-modal button{padding:.75rem;font-size:1rem;color:#fff;cursor:pointer;background-color:#06c;border:none;border-radius:4px}.token-input-modal button:hover{background-color:#0052a3}.token-input-modal button:disabled{cursor:not-allowed;background-color:#ccc}
