@font-face{font-display:swap;font-family:"Roboto";font-style:normal;font-weight:100;src:url(../fonts/roboto-v49-cyrillic_latin-100.woff2) format("woff2")}@font-face{font-display:swap;font-family:"Roboto";font-style:italic;font-weight:100;src:url(../fonts/roboto-v49-cyrillic_latin-100italic.woff2) format("woff2")}@font-face{font-display:swap;font-family:"Roboto";font-style:normal;font-weight:200;src:url(../fonts/roboto-v49-cyrillic_latin-200.woff2) format("woff2")}@font-face{font-display:swap;font-family:"Roboto";font-style:italic;font-weight:200;src:url(../fonts/roboto-v49-cyrillic_latin-200italic.woff2) format("woff2")}@font-face{font-display:swap;font-family:"Roboto";font-style:normal;font-weight:300;src:url(../fonts/roboto-v49-cyrillic_latin-300.woff2) format("woff2")}@font-face{font-display:swap;font-family:"Roboto";font-style:italic;font-weight:300;src:url(../fonts/roboto-v49-cyrillic_latin-300italic.woff2) format("woff2")}@font-face{font-display:swap;font-family:"Roboto";font-style:normal;font-weight:400;src:url(../fonts/roboto-v49-cyrillic_latin-regular.woff2) format("woff2")}@font-face{font-display:swap;font-family:"Roboto";font-style:italic;font-weight:400;src:url(../fonts/roboto-v49-cyrillic_latin-italic.woff2) format("woff2")}@font-face{font-display:swap;font-family:"Roboto";font-style:normal;font-weight:500;src:url(../fonts/roboto-v49-cyrillic_latin-500.woff2) format("woff2")}@font-face{font-display:swap;font-family:"Roboto";font-style:italic;font-weight:500;src:url(../fonts/roboto-v49-cyrillic_latin-500italic.woff2) format("woff2")}@font-face{font-display:swap;font-family:"Roboto";font-style:normal;font-weight:600;src:url(../fonts/roboto-v49-cyrillic_latin-600.woff2) format("woff2")}@font-face{font-display:swap;font-family:"Roboto";font-style:italic;font-weight:600;src:url(../fonts/roboto-v49-cyrillic_latin-600italic.woff2) format("woff2")}@font-face{font-display:swap;font-family:"Roboto";font-style:normal;font-weight:700;src:url(../fonts/roboto-v49-cyrillic_latin-700.woff2) format("woff2")}@font-face{font-display:swap;font-family:"Roboto";font-style:italic;font-weight:700;src:url(../fonts/roboto-v49-cyrillic_latin-700italic.woff2) format("woff2")}@font-face{font-display:swap;font-family:"Roboto";font-style:normal;font-weight:800;src:url(../fonts/roboto-v49-cyrillic_latin-800.woff2) format("woff2")}@font-face{font-display:swap;font-family:"Roboto";font-style:italic;font-weight:800;src:url(../fonts/roboto-v49-cyrillic_latin-800italic.woff2) format("woff2")}@font-face{font-display:swap;font-family:"Roboto";font-style:normal;font-weight:900;src:url(../fonts/roboto-v49-cyrillic_latin-900.woff2) format("woff2")}@font-face{font-display:swap;font-family:"Roboto";font-style:italic;font-weight:900;src:url(../fonts/roboto-v49-cyrillic_latin-900italic.woff2) format("woff2")}.container,.time-section,body{position:relative}.price,.time-label{writing-mode:horizontal-tb}.booking-info,.date-btn,.slot{transition:0.2s}.contacts{font-style:italic}.contacts a,.date-btn{color:#000;text-decoration:none}.booking-info,.contacts a,.date-btn{text-decoration:none}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Roboto,sans-serif;background:#f0ebe6;min-height:100vh}.container{max-width:768px;margin:0 auto;overflow:hidden}h1{display:none}.header{padding:15px 70px 0;display:flex}.logo{width:30%}.logo img{width:100%}.description{flex:1;padding:30px 0 0 40px}.description h2{font-size:1.4rem;font-weight:700;margin-bottom:15px;line-height:1.2}.description ul{list-style:none;font-size:1.1rem}.description li{margin-bottom:2px}.description .test{font-size:.8rem;margin-top:5px}.date-selection{margin-top:15px;padding:0 70px 20px}.date-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:8px}.time-headers,.time-row{grid-template-columns:120px repeat(4,1fr)}.date-btn{padding:10px 8px;border:none;border-radius:8px;background:#93c1da;font-size:1.4rem;cursor:pointer;text-align:center}.date-btn.active{background:#e7a0cc}.booking-info:hover,.date-btn:hover{opacity:.8}.time-section{margin-bottom:0;display:flex;justify-content:right;padding:15px 12px 15px 30px}.ball,.price,.time-period{position:absolute}.daytime .time-period{font-size:0.8rem;left:33px}.time-section.daytime{background:#f8d8ec}.time-section.evening{background:#b1e4ff}.time-label{display:flex;align-items:center}.time-period{font-weight:600;font-size:1.1rem;transform-origin:center;white-space:nowrap;left:15px;top:50%;transform:rotate(-90deg) translate(0,-50%)}.price{font-size:.9rem;margin-left:auto;transform:rotate(-90deg);left:70px;top:50%;transform:rotate(-90deg) translate(0,-42%)}.schedule-grid{display:flex;flex-direction:column;width:79%;margin-right:55px}.schedule{position:relative}.time-headers{display:grid;gap:8px;margin-bottom:7px}.table-header{text-align:center;font-size:1rem;padding:5px;text-transform:uppercase}.time-slots{display:flex;flex-direction:column;gap:10px}.time-row{display:grid;gap:8px;align-items:center}.time{font-size:1rem;text-align:left}.slot{height:35px;border-radius:7px}.legend-color.available,.slot.available{background:#1d6fb8}.legend-color.booked,.slot.booked{background:#e80c90}.legend-color.queue,.slot.queue{background:#9769cc}.slot:hover{opacity:.8;transform:scale(1.05)}.legend{display:flex;flex-direction:column;gap:5px}.legend-app{display:flex;flex-direction:column;gap:5px;padding:20px 70px 0}.legend-item{display:flex;align-items:center;gap:10px;font-size:1rem}.legend-color{width:69px;height:24px;border-radius:5px}.ball-blue,.ball-pink{width:100px;height:100px}.booking-info{font-size:1rem;color:#fff;background-color:#e80c90;display:block;text-align:center;padding:8px;font-weight:300;border-radius:4px;margin-top:5px}.venue-name{font-weight:700}footer.footer{padding-bottom:20px}.footer-content{display:flex;justify-content:space-between;padding:30px 70px}.contacts{text-align:right;font-size:.9rem}.hours .phone{font-weight:600}.address{border:0;border-bottom:1px solid #000;border-style:dashed}.hours{margin-top:5px}.ball{border-radius:50%;z-index:1;box-shadow:9px 10px 21px -11px rgb(0 0 0 / .75);-webkit-box-shadow:9px 10px 21px -11px rgb(0 0 0 / .75);-moz-box-shadow:9px 10px 21px -11px rgb(0 0 0 / .75);z-index:3}.ball-blue{background:radial-gradient(circle at 30% 30%,#1d6fb8,#005bab);left:-37px;top:-45px;animation:3s ease-in-out infinite float;transform:scale(1.1);transition:transform 0.3s}.ball-pink{background:radial-gradient(circle at 30% 30%,#e80c90,#930058);right:-37px;bottom:-49px;animation:4s ease-in-out infinite float}.loading-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:rgb(240 235 230 / 25%);display:none;align-items:center;justify-content:center;z-index:2;backdrop-filter:blur(2px)}.loading-overlay.active{display:flex}.policy{margin:30px 0;padding:0 36px}.policy h2{text-align:center;margin-bottom:30px}.message{position:fixed;width:max-content;left:50%;bottom:55px;transform:translateX(-50%);background:rgb(0 0 0 / .8);color:#fff;padding:6px 10px;border-radius:6px;z-index:9999;pointer-events:none;opacity:0;font-size:.55rem;transition:all 0.3s}.message.visible{opacity:1}.book{position:fixed;width:max-content;left:50%;bottom:20px;transform:translateX(-50%);background:#e80c90;color:#fff;padding:8px 12px;border-radius:6px;z-index:9999;opacity:0;font-size:.7rem;transition:all 0.3s;pointer-events:none}.book.visible{opacity:1;pointer-events:auto}main.policy p{margin-bottom:15px}main.policy p a{color:#000}@media (max-width:480px){body{font-size:12px}.app-big{padding-top:100px}.header{align-items:center;padding:10px 36px 0}.logo{width:25%;margin-left:2px}.description{padding:0 0 0 42px}.description h2{font-size:.7rem;margin-bottom:10px;line-height:1.15}.description ul{font-size:.58rem;line-height:1}.description .test{font-size:.42rem}.date-selection{padding:0 37px;margin-top:10px;margin-bottom:15px}.date-grid{grid-template-columns:repeat(5,1fr);gap:6px}.date-btn{padding:4px;font-size:.8rem;border-radius:5px}.schedule-grid{width:83%;margin-right:25px}.time-headers,.time-row{grid-template-columns:75px repeat(4,1fr);gap:10px}.time-slots{gap:4px}.time{font-size:.75rem}.table-header{font-size:.6rem;padding:0}.slot{height:20px;border-radius:6px}.time-period{font-size:.75rem;left:-7px}.daytime .time-period{font-size:0.5rem;left:9px}.price{font-size:.56rem;left:35px}.booking-info,.contacts,.legend-item{font-size:.55rem}.legend{gap:3px}.legend-item{gap:6px;white-space:nowrap}.legend-color{width:40px;height:14px;border-radius:3px}.ball-blue,.ball-pink{width:60px;height:60px}.footer-content{padding:10px 36px 15px}.booking-info{padding:4px}.ball-blue{left:-30px;top:-30px}.ball-pink{right:-30px;bottom:-30px}.legend-app{padding:20px 10px 0;flex-direction:row;justify-content:space-between}.legend-app .legend-color{width:25px}.app-big .slot{height:25px}}