:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;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:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}.week-navigation{display:flex;align-items:center;justify-content:space-between;margin:20px 0}.nav-button{background-color:#007bff;color:#fff;border:none;padding:10px;border-radius:50%;cursor:pointer;transition:background-color .3s ease}.nav-button:hover{background-color:#0056b3}.week-calendar{display:flex;justify-content:space-around;flex-grow:1;margin:0 20px}.day-card{display:flex;flex-direction:column;align-items:center;padding:10px;border:1px solid #ccc;border-radius:8px;box-shadow:0 4px 8px #0000001a;cursor:pointer;transition:box-shadow .3s ease}.day-card:hover{box-shadow:0 8px 16px #0003}.day-card.selected{background-color:#f0f0f0;border-color:#007bff}.day-card.fully-booked{background-color:#fcc}.day-card.user-booked{border-color:#007bff;background-color:green}.day-name{font-weight:700}.day-number{font-size:1.5em}.calendar{width:100%;display:flex;justify-content:center;gap:1em;margin-bottom:1em}.fully-booked{background-color:#fcc}.calendar-container{padding:1em;margin-bottom:1em;box-shadow:0 2px 4px #0000001a;border-radius:8px;background-color:#fff}.booking-details{margin-top:1em}.booked{background-color:#e0f7fa}.available{background-color:#fff}.header{padding:1em;margin-bottom:1em;box-shadow:0 2px 4px #0000001a;border-radius:8px;background-color:#fff}.error-message{color:red;margin-bottom:1em}.timeslot-list{list-style-type:none;padding:0}.timeslot-item{display:flex;align-items:center;padding:.5em;border-bottom:1px solid #ddd}.timeslot-text{margin-left:.5em}#root{margin:0 auto;padding:0;text-align:center;width:100%}.logo{height:6em;padding:1.5em;will-change:filter;transition:filter .3s}.logo:hover{filter:drop-shadow(0 0 2em #646cffaa)}.logo.react:hover{filter:drop-shadow(0 0 2em #61dafbaa)}@keyframes logo-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (prefers-reduced-motion: no-preference){a:nth-of-type(2) .logo{animation:logo-spin infinite 20s linear}}.card{padding:2em}.read-the-docs{color:#888}.App{min-height:100vh;overflow-y:auto;display:flex;flex-direction:column;align-items:center;padding:0}.header{width:100%;background-color:#fff;padding:.5em;margin-bottom:1.5em;box-shadow:0 2px 4px #0000001a;display:flex;align-items:center;justify-content:center;gap:1rem}.header-icon{width:40px!important;height:40px!important;max-width:30%!important;max-height:30vw!important;object-fit:contain!important;flex-shrink:0}.header-title{margin:0;font-size:1.8rem}.content-container{width:100%;max-width:1200px;padding:0 1em;box-sizing:border-box}
