body{font-family:Inter,sans-serif;margin:0;padding:0;background:#f6cdbc;background:linear-gradient(90deg,#f6cdbc,#bfdced 91%,#fff);background:-moz-linear-gradient(90deg,hsla(18,76%,85%,1) 0%,hsla(203,57%,84%,1) 91%,hsla(0,0%,100%,1) 100%);background:-webkit-linear-gradient(90deg,hsla(18,76%,85%,1) 0%,hsla(203,57%,84%,1) 91%,hsla(0,0%,100%,1) 100%);filter:progid: DXImageTransform.Microsoft.gradient(startColorstr="#f6cfbe",endColorstr="#bedbed",GradientType=1)}h1{font-size:2rem;font-weight:900;margin:1rem 0}.app-title{font-size:2.5rem;font-weight:700;margin-bottom:0}.app-subtitle{font-size:1.2rem;color:#6b7280;margin-top:.5rem;margin-bottom:1.5rem}.dashboard-title{font-size:2rem;font-weight:700;margin-bottom:1rem;color:#6b7280}.dashboard-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:1rem 0}#root{max-width:1280px;margin:0 auto;padding:2rem;text-align:center}.btn-header{display:flex;justify-content:center;gap:20px;margin-bottom:1.5rem}.time-slot{padding:1rem;margin:.5rem;border:1px solid #ccc;border-radius:5px;cursor:pointer}.date-picker{padding:1rem;border:1px solid #ccc;border-radius:5px;display:block;margin:0 auto 1rem}.time-slot:hover{background-color:#f0f0f0}.time-slot.booked{background-color:#f87171;opacity:.6;cursor:not-allowed}.time-slot.selected{background-color:#34d399}.stat{background:#fff;border:1px solid #eee;border-radius:10px;padding:12px;text-align:center;transition:box-shadow .2s ease,transform .15s ease}.stat:hover{box-shadow:0 4px 8px #0000001a;transform:translateY(-2px)}.stat-value{font-size:1.5rem;font-weight:700}.stat-label{font-size:.875rem;color:#6b7280;margin-top:4px}ul{list-style-type:none;padding:0}.booking-form{display:flex;flex-direction:column;gap:1rem}.booking-form input{padding:.5rem;border:1px solid #ccc;border-radius:5px;width:80%;align-self:center;margin:.5rem 0}.booking-info{font-size:1rem;color:#374151;font-weight:700;margin:0}.confirm-button{background-color:#34d399;color:#000;border:none;padding:.5rem 1rem;border-radius:5px;cursor:pointer;width:50%;margin:0 auto}.confirm-button.disabled{background-color:#ccc;cursor:not-allowed;color:#000}.dashboard{max-width:800px;margin:0 auto;padding:1.5rem}.dashboard h2{margin-bottom:1rem;font-size:1.6rem}.booking-list{display:flex;flex-direction:column;list-style:none;padding:0;margin-top:20px;display:grid;gap:12px}button:hover:not(.btn-header,.confirm-button){background-color:#34d399}.booking-card{border:1px solid #eee;border-radius:10px;background:#fafafa;transition:box-shadow .2s ease;margin:1rem 0;padding:1rem;transition:box-shadow .2s ease,transform .15s ease}.booking-top{display:flex;justify-content:space-between;align-items:center;padding:1rem}.booking-card.cancelled{background:#b42318;opacity:.6;border-left:4px solid #f87171}.booking-card.past{background:#f9c2c2;opacity:.8;border-left:4px solid #f87171}.booking-card.upcoming{background:#d1fae5;border-left:4px solid #34d399}.booking-card strong{font-weight:600;display:block;margin-bottom:4px;font-size:1.1rem}.booking-card:hover{box-shadow:0 2px 6px #0000000f;transform:translateY(-5px)}.booking-card .datetime{font-size:.9rem;color:#6b7280}.booking-card.upcoming .booking-datetime{color:#34d399;font-weight:700}.booking-main{display:flex;flex-direction:column;gap:5px}.dashboard-filter{display:flex;justify-content:center;gap:12px;margin:1rem 0 1.5rem}.dashboard-filter button{background:#fff;color:#000;border:1px solid #ccc;padding:8px 16px;border-radius:8px;cursor:pointer}.dashboard-filter button.active{background:#34d399;color:#fff;border-color:#34d399}.service{font-weight:600}.datetime{font-size:.9rem;color:#6b7280}.client{margin:.5rem 0;padding:.5rem;font-size:1rem;color:#374151;font-weight:600;letter-spacing:.05em;text-align:center}.empty{padding:2rem 1rem;text-align:center;margin:1rem 0;color:#6b7280;font-size:1.1rem;border:1px dashed #ccc;border-radius:10px;background:#f9fafb}.empty h3{margin-bottom:.5rem;font-size:1.2rem;font-weight:600}.empty p{margin:0;font-size:1rem;color:#6b7280}.confirmation{text-align:center;padding:40px 20px}.confirmation-actions{margin-top:20px;display:flex;gap:12px;justify-content:center}.primary{background:#000;color:#fff;border:none;padding:10px 18px;border-radius:6px;cursor:pointer}.secondary{background:#fff;color:#000;border:1px solid #ccc;padding:10px 18px;border-radius:6px;cursor:pointer}.primary:hover{opacity:.9}.secondary:hover{background:#f5f5f5}button{background:#fff;color:#000;border:1px solid #ccc;padding:10px 20px;border-radius:10px;cursor:pointer}.message{position:fixed;top:1rem;right:1rem;background:#111;margin-top:1rem;padding:.75rem 1.5rem;color:#fff;border-radius:6px;font-weight:600}form{display:flex;flex-direction:column;gap:1rem}.form-container{width:100%;display:flex;flex-direction:column;align-items:center;gap:.5rem;margin-bottom:1rem}.form-container label{font-weight:600;margin-bottom:.5rem;align-self:flex-start}.form-container input{width:100%;padding:.5rem;border:1px solid #ccc;border-radius:5px}.form-btn{background:#000;color:#fff;border:none;padding:10px 18px;border-radius:6px;cursor:pointer}.logout-button{background:#f87171;color:#fff;border:none;padding:10px 18px;border-radius:6px;cursor:pointer}.error{color:#b42318;font-size:.9rem;margin-top:.9rem}.status{margin-left:12px;padding:6px 12px;border-radius:6px;font-size:.8rem;text-transform:capitalize;font-weight:600;color:#fff;background-color:#111;cursor:pointer;transition:all .2s ease}.status:hover{transform:translateY(-2px)}.status:active{transform:translateY(0)}.status.upcoming{background:#d1fae5;color:#34d399}.status.confirmed{background:#e6f7ee;opacity:1;color:#0f7a42}.status.cancelled{background:#fdecec;opacity:.8;color:#b42318}.status.past{background:#b42318;opacity:.8;color:#fff}.loading{font-size:1.2rem;color:#6b7280}.app-footer{border-top:1px solid #eee;text-align:center;font-size:.9rem;margin-top:3rem}.app-footer .footer-inner{display:flex;justify-content:center;gap:12px;margin:1rem 0 1.5rem;flex-wrap:wrap}.app-footer .footer-inner .brand{font-weight:700}.app-footer .footer-inner .divider{color:#ccc;opacity:.7}.app-footer .footer-inner .location,.app-footer .footer-inner .year{color:#6b7280}.footer-note{font-size:.8rem;color:#6b7280}.dev a{color:#6b7280;font-weight:600}.dev a:hover{color:#111;cursor:pointer}@media(max-width:600px){.booking-card{flex-direction:column;align-items:flex-start}.btn-header{flex-direction:column;gap:10px}.btn-header button{width:100%}.booking-card{flex-direction:column;align-items:flex-start;padding:1rem;gap:.5rem}.booking-main{width:100%;padding:.5rem 0;border-bottom:1px solid #eee}.client{font-size:.9rem;width:100%;padding:.5rem 0}.status{font-size:.8rem;align-self:flex-end}.dashboard-stats{display:grid;grid-template-columns:1fr;gap:12px}.dashboard-filter{display:flex;flex-direction:column;gap:12px;margin-bottom:3rem}.booking-service,.client-email,.client-phone{word-break:break-word}}
