body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#fff;color:#333;font-family:Montserrat,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0;overflow-x:hidden}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}*{box-sizing:border-box}a{color:inherit;text-decoration:none}.App{overflow-x:hidden;text-align:center}.page-slide-left{animation:slideFromRight .25s ease-out}.page-slide-right{animation:slideFromLeft .25s ease-out}@keyframes slideFromRight{0%{transform:translate3d(100%,0,0)}to{transform:translateZ(0)}}@keyframes slideFromLeft{0%{transform:translate3d(-100%,0,0)}to{transform:translateZ(0)}}*{transition:all .2s ease}.App-logo{height:40vmin;pointer-events:none}@media (prefers-reduced-motion:no-preference){.App-logo{animation:App-logo-spin 20s linear infinite}}.App-header{align-items:center;background-color:#282c34;color:#fff;display:flex;flex-direction:column;font-size:calc(10px + 2vmin);justify-content:center;min-height:100vh}.App-link{color:#61dafb}@keyframes App-logo-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.home-page{align-items:center;background-color:#fff;color:#000;display:flex;font-family:Montserrat,sans-serif;justify-content:center;line-height:1.2;min-height:100vh;opacity:1;overflow:hidden;position:relative;transition:opacity .5s ease-in-out}.home-left-panel,.home-right-panel{display:none}.home-mobile-layout{display:block;text-align:center;width:100%}@media (min-width:769px){.home-page{align-items:stretch;justify-content:flex-start;padding:0}.home-mobile-layout{display:none}.home-left-panel,.home-right-panel{display:flex}.home-left-panel{align-items:center;background-color:#fff;flex-direction:column;justify-content:center;padding:60px;position:relative;z-index:2}.home-left-panel,.home-right-panel{display:flex;min-height:100vh;width:50%}.home-right-panel{align-items:stretch;background-color:#f8f8f8;height:100vh;justify-content:stretch;overflow:hidden;position:fixed;right:0;top:0}.studio-gallery-container{background-color:#f8f8f8;display:flex;flex-direction:column;gap:0;height:100%;width:100%}.image-slot{flex:1 1;height:33.333%;overflow:hidden;position:relative;width:100%}.image-slot:not(:first-child){margin-top:-1px}.carousel-track-slider{display:flex;height:100%;left:0;position:absolute;top:0;transition:transform .6s ease;will-change:transform}.carousel-slide{background-position:50%;background-repeat:no-repeat;background-size:cover;flex-shrink:0;height:100%}.gallery-placeholder{color:#999;font-size:18px;font-weight:300;left:50%;letter-spacing:1px;opacity:1;pointer-events:none;position:absolute;text-align:center;text-transform:uppercase;top:50%;transform:translate(-50%,-50%);transition:opacity .3s ease;z-index:1}.home-left-panel .logo a{position:relative;transition:all .3s ease}.home-left-panel .logo a:after{background-color:#000;bottom:-5px;content:"";height:2px;left:0;position:absolute;transition:width .3s ease;width:0}.home-left-panel .logo a:hover:after{width:100%}.home-left-panel .logo a:hover{opacity:1;transform:translateX(10px)}.home-left-panel .home-credit{bottom:30px;left:50%;position:absolute;transform:translateX(-50%)}}.home-page.page-exit{opacity:0}.home-page.page-enter{animation:fadeIn .5s ease-in-out forwards;opacity:0}.home-page .container{margin:0 auto;max-width:1200px;padding:0 15px;position:relative;text-align:center;width:100%;z-index:2}.animated-background{display:none}.home-page .logo{display:inline-block;margin-bottom:50px;position:relative;text-align:left}.home-page .logo-line{display:none}.home-page .logo-text{align-items:flex-start;display:flex;flex-direction:column}.home-page .logo h1{letter-spacing:2px;margin:0;padding-left:8px}.home-page .logo a{color:inherit;cursor:pointer;text-decoration:none}.home-page .logo a:hover{opacity:.8}.home-page .logo-top{font-size:80px;font-style:italic;font-weight:300;text-transform:uppercase}.home-page .logo-middle{font-size:90px;font-weight:700;letter-spacing:4px;margin-top:-10px!important;text-transform:uppercase}.home-page .logo-middle.logo-masterskaya-playfair{color:#000;font-family:Roboto Flex,Roboto,Montserrat,system-ui,-apple-system,Segoe UI,Arial,sans-serif;font-style:normal;font-weight:400;letter-spacing:2px;margin-top:-6px!important}.home-page .logo-bottom{align-items:flex-start;display:flex;flex-direction:column;margin-top:60px}.home-page .school{font-size:70px;font-weight:200;text-transform:uppercase}.home-credit{bottom:26px;color:#000;display:inline-block;font-size:12.5px;font-weight:300;left:50%;letter-spacing:.18em;line-height:1.35;max-width:480px;padding:0;position:fixed;text-align:center;text-transform:uppercase;transform:translateX(-50%);z-index:10}.home-credit a{border-bottom:1px solid #000;color:inherit;padding-bottom:2px;text-decoration:none;transition:opacity .2s ease}.home-credit a:hover{opacity:.75}.home-mobile-layout .header{width:100%}.home-mobile-layout .logo{display:inline-block;margin-bottom:50px;position:relative;text-align:left}@media (max-width:768px){.home-page .container{text-align:left}.home-page .logo{align-items:flex-start;display:flex;flex-direction:row}.home-page .logo-top{font-size:65px}.home-page .logo-middle{font-size:75px;letter-spacing:3px}.home-page .logo-middle.logo-masterskaya-playfair{letter-spacing:1.5px}.home-page .school{font-size:60px}.home-credit{bottom:20px;font-size:11.5px;left:50%;padding:0;transform:translateX(-50%)}}@media (max-width:576px){.home-page .logo-top{font-size:45px}.home-page .logo-middle{font-size:50px;letter-spacing:2px}.home-page .logo-middle.logo-masterskaya-playfair{letter-spacing:1px}.home-page .school{font-size:50px}.home-credit{bottom:16px;font-size:10.5px;left:50%;padding:0;transform:translateX(-50%)}}.halls-page{display:flex;flex-direction:column;min-height:100vh;opacity:1;overflow-x:hidden;transition:opacity .5s ease-in-out}.halls-page.page-enter{animation:fadeIn .5s ease-in-out forwards;opacity:0}.header{display:flex;flex-direction:column;width:100%}.header-top{align-items:center;display:flex;justify-content:space-between;padding:0 20px;position:relative}.logo-brand{color:inherit;cursor:pointer;font-family:League Spartan,sans-serif;font-size:2.5rem;font-weight:700;text-decoration:none;transition:opacity .3s ease}.logo-brand:hover{opacity:.8}.sov-text-container{padding:10px 0;text-align:center}.pochta-header-text{color:#1a1a1a;font-family:Andale Mono,monospace;font-size:1.8rem;font-weight:400;letter-spacing:3px;margin-bottom:10px;text-align:center}.studio-pochta .pochta-header-text{color:#000;font-family:Raleway,sans-serif;font-style:italic;font-weight:400;letter-spacing:.06em}.studio-kirova .kirova-header-text,.studio-kirova .pochta-header-text{color:#000;font-family:Rubik,sans-serif;font-style:normal;font-weight:400}.studio-masterskaya .masterskaya-header-text,.studio-masterskaya .pochta-header-text{color:#000;font-family:Roboto Flex,sans-serif;font-style:normal;font-weight:400}.logo{position:relative}.logo,.logo-text{display:inline-block}.logo-text{text-align:left}.logo-top{font-family:Raleway,sans-serif;font-style:italic}.logo-middle{font-family:Rubik,sans-serif;font-size:5.5rem;font-style:normal;font-weight:700}.school{font-family:Lora,serif;font-size:3rem;font-style:normal;margin-top:.5rem}.main-nav{margin:0 0 5px;position:relative}.main-nav ul{display:flex;justify-content:center;list-style:none;margin:0;padding:0;position:relative}.nav-underline{background-color:#000;border-radius:2px;bottom:-2px;height:3px;left:0;opacity:0;position:absolute;transition:all .4s cubic-bezier(.25,.46,.45,.94);width:0}.main-nav li{margin:8px 20px}.halls-page .main-nav a{color:#333;font-family:Andale Mono,monospace!important;font-size:1.1rem;font-weight:500;letter-spacing:1px;padding-bottom:2px;position:relative;text-decoration:none;transition:all .4s cubic-bezier(.25,.46,.45,.94)}.halls-page .main-nav a:not(.active){color:#888}.halls-page .main-nav a:hover{color:#000;transform:translateY(-1px)}.halls-page .main-nav a.active{color:#000;font-weight:600}.halls-content{-webkit-backface-visibility:hidden;backface-visibility:hidden;flex:1 1;margin:0;opacity:1;padding:0;transform:translateZ(0);transition:opacity .2s ease;will-change:transform}.halls-content.content-ready{opacity:1}.halls-grid{grid-gap:30px;display:grid;gap:30px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));margin:0 auto;max-width:1200px;padding:0 20px}.hall-card{background-color:#fff;border-radius:10px;box-shadow:0 5px 15px #0000001a;overflow:hidden;transition:transform .3s ease,box-shadow .3s ease}.hall-card:hover{box-shadow:0 15px 30px #00000026;transform:translateY(-10px)}.hall-image{height:250px;overflow:hidden}.hall-image img{height:100%;object-fit:cover;transition:transform .5s ease;width:100%}.hall-card:hover .hall-image img{transform:scale(1.05)}.hall-info{font-family:Andale Mono,monospace;margin:80px auto;max-width:800px;padding:0 20px}.hall-details{padding:0}.hall-size{color:#000;font-family:Andale Mono,monospace;font-size:6rem;font-weight:300;letter-spacing:-2px;line-height:1;margin:0 0 40px}.hall-features{list-style:none;margin:0;padding:0}.hall-features li{border-bottom:1px solid #f0f0f0;color:#000;font-family:Andale Mono,monospace;font-size:1.2rem;font-weight:300;line-height:1.6;margin-bottom:12px;padding-bottom:8px}.hall-features li:last-child{border-bottom:none}.footer{background-color:#f8f8f8;padding:30px 0}.footer-content{align-items:center;display:flex;justify-content:space-between;margin:0 auto;max-width:1200px;padding:0 20px}.contact-info p{color:#666;margin:5px 0}.social-links a{color:#333;font-size:1.5rem;margin-left:15px;transition:color .3s ease}.social-links a:hover{color:#000}@media (max-width:768px){.main-nav ul{flex-direction:row;flex-wrap:wrap;justify-content:center}.main-nav li,.main-nav ul{font-family:Andale Mono,monospace}.main-nav li{margin:8px 10px}.main-nav a{font-family:Andale Mono,monospace}.page-slide-left{animation:slideInFromRight .45s cubic-bezier(.25,.46,.45,.94) forwards}.page-slide-left,.page-slide-right{transform:translateZ(0);will-change:transform}.page-slide-right{animation:slideInFromLeft .45s cubic-bezier(.25,.46,.45,.94) forwards}.booking-content,.halls-content{-webkit-backface-visibility:hidden;backface-visibility:hidden;position:relative;will-change:transform}.halls-content{padding:10px 0}.hall-info{margin:40px auto;padding:0 20px}.hall-info,.hall-size{font-family:Andale Mono,monospace}.hall-size{font-size:4rem;margin-bottom:30px}.hall-features li{font-family:Andale Mono,monospace;font-size:1.1rem;margin-bottom:10px;padding-bottom:6px}.footer-content{flex-direction:column;text-align:center}.contact-info p{margin:5px 0}.header-top{align-items:flex-start;flex-direction:column;padding:10px 20px}.logo-brand,.pochta-header-text{font-size:1.8rem}.pochta-header-text{font-size:1.4rem;letter-spacing:2px;margin-bottom:15px}}@media (min-width:1024px){.main-nav{margin:0 0 30px}.main-nav ul{gap:80px}.main-nav li{margin:0}.halls-page .main-nav a{font-size:1.3rem;font-weight:400;letter-spacing:2px;padding:15px 0;transition:all .3s cubic-bezier(.25,.46,.45,.94)}.halls-page .main-nav a:not(.active){color:#999}.halls-page .main-nav a:hover{color:#333;transform:translateY(-2px)}.halls-page .main-nav a.active{color:#000;font-weight:600}.nav-underline{background:linear-gradient(90deg,#000,#333);bottom:-4px;box-shadow:0 2px 8px #0003;height:4px}}.booking-content{-webkit-backface-visibility:hidden;backface-visibility:hidden;opacity:1;position:relative;transform:translateZ(0);transition:opacity .2s ease;will-change:transform}.booking-content.content-ready{opacity:1}.page-slide-left,.page-slide-right{transform:translateZ(0);will-change:transform}.page-exit-right{animation:slideOutToRight .3s cubic-bezier(.23,1,.32,1) forwards}.booking-page{overflow-x:hidden}.login-icon{color:#333;font-size:1.6rem;margin-left:0;position:absolute;right:20px;text-decoration:none;top:50%;transform:translateY(-50%);transition:opacity .2s}.login-icon:hover{opacity:.7}.my-cabinet-link{background:#fff;border:1px solid #333;border-radius:4px;color:#333;display:inline-block;font-family:Andale Mono,monospace;font-size:.9rem;font-weight:500;padding:8px 16px;position:absolute;right:20px;text-align:center;text-decoration:none;top:50%;transform:translateY(-50%);transition:all .3s ease}.my-cabinet-link:hover{background-color:#333;color:#fff;text-decoration:none}@media (max-width:768px){.my-cabinet-link{font-size:.8rem;padding:6px 12px;right:10px}}.page-loading{animation:pulse 1.5s ease-in-out infinite}.photo-placeholder{align-items:center;animation:shimmer 2s infinite;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%);background-size:200% 100%;border-radius:0;display:flex;height:60vh;justify-content:center;margin:0 -20px;max-width:none;width:calc(100% + 40px)}.placeholder-content{color:#666;font-family:Andale Mono,monospace;text-align:center}.spinner{animation:spin 1s linear infinite;border:3px solid #f0f0f0;border-radius:50%;border-top-color:#666;height:40px;margin:0 auto 15px;width:40px}.hall-size-placeholder{animation:shimmer 2s infinite;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%);background-size:200% 100%;border-radius:4px;height:120px;margin-bottom:40px;width:300px}.hall-features-placeholder{display:flex;flex-direction:column;gap:12px}.feature-placeholder{animation:shimmer 2s infinite;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%);background-size:200% 100%;border-bottom:1px solid #f0f0f0;border-radius:4px;height:20px;padding-bottom:8px}.feature-placeholder:first-child{width:85%}.feature-placeholder:nth-child(2){width:75%}.feature-placeholder:nth-child(3){width:90%}.feature-placeholder:nth-child(4){width:70%}.feature-placeholder:nth-child(5){width:80%}.feature-placeholder:nth-child(6){width:95%}.feature-placeholder:nth-child(7){width:88%}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.8}}@media (max-width:768px){.photo-placeholder{height:50vh;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);width:100vw}.hall-size-placeholder{height:80px;margin-bottom:30px;width:250px}}.slider{margin:0 -20px;max-width:none;overflow:hidden;position:relative;width:calc(100% + 40px)}.slide-container{display:flex;transition:transform .5s ease-in-out;will-change:transform}.slide-image{border-radius:0;cursor:pointer;flex-shrink:0;height:60vh;object-fit:cover;object-position:center;transition:opacity .3s ease;width:100%}.slide-image.image-loading{animation:shimmer 2s infinite;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%);background-size:200% 100%;opacity:.7}.slide-image:hover{opacity:.9}.next,.prev{background:#0009;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1.8rem;padding:20px 15px;position:absolute;top:50%;transform:translateY(-50%);transition:all .3s ease;z-index:10}.prev{left:10px}.next{right:10px}.next:hover,.prev:hover{background:#000c;transform:translateY(-50%) scale(1.05)}.modal-overlay{background:#000000e6;height:100%;width:100%}.modal-overlay.modal-opening{animation:fadeIn .3s ease forwards}.modal-overlay.modal-closing{animation:fadeOut .3s ease forwards}.modal-content{align-items:center;justify-content:center}.modal-content,.modal-image{height:auto;max-width:90vw;width:auto}.modal-image{border-radius:8px;display:block;max-height:90vh;object-fit:contain}.modal-content--16x9{aspect-ratio:16/9;height:auto;max-height:90vh;width:clamp(360px,90vw,1100px)}.modal-image--16x9{border-radius:inherit;height:100%;max-height:none;max-width:none;object-fit:cover;width:100%}.modal-image-opening{animation:scaleFromPosition .4s cubic-bezier(.25,.46,.45,.94) forwards}.modal-image-closing{animation:scaleToPosition .3s cubic-bezier(.55,.06,.68,.19) forwards}.modal-close{background:none;border:none;color:#fff;cursor:pointer;font-size:2rem;line-height:1;padding:5px;position:absolute;right:0;top:-40px;transition:opacity .2s ease;z-index:1001}.modal-close:hover{opacity:.7}.modal-next,.modal-prev{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0009;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:2rem;padding:25px 18px;position:absolute;top:50%;transform:translateY(-50%);transition:all .3s ease;z-index:1001}.modal-next:hover,.modal-prev:hover{background:#000c;transform:translateY(-50%) scale(1.05)}.modal-prev{left:20px}.modal-next{right:20px}.modal-counter{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#00000080;border-radius:20px;bottom:-40px;color:#fff;font-family:Andale Mono,monospace;font-size:14px;left:50%;padding:8px 16px;position:absolute;transform:translateX(-50%)}@keyframes scaleFromPosition{0%{border-radius:0;opacity:.8;transform:translate(calc(var(--start-x) + var(--start-width)/2 - 50vw),calc(var(--start-y) + var(--start-height)/2 - 50vh)) scale(calc(var(--start-width)/min(100vw, 100vh)))}to{border-radius:12px;opacity:1;transform:translate(0) scale(1)}}@keyframes scaleToPosition{0%{border-radius:12px;opacity:1;transform:translate(0) scale(1)}to{border-radius:0;opacity:.8;transform:translate(calc(var(--start-x) + var(--start-width)/2 - 50vw),calc(var(--start-y) + var(--start-height)/2 - 50vh)) scale(calc(var(--start-width)/min(100vw, 100vh)))}}@media (max-width:768px){.slider{margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);width:100vw}.slide-image{height:50vh}.next,.prev{font-size:1.4rem;padding:15px 12px}.modal-content{max-height:95vh;max-width:95vw}.modal-close{font-size:1.5rem;top:-35px}.modal-next,.modal-prev{font-size:1.6rem;padding:20px 15px}.modal-prev{left:15px}.modal-next{right:15px}.modal-counter{bottom:-35px;font-size:12px;padding:6px 12px}}@media (min-width:769px) and (max-width:1023px){.modal-content{height:calc(100vh - 60px);width:calc(100vw - 60px)}.modal-content,.modal-image{max-height:calc(100vh - 60px);max-width:calc(100vw - 60px)}.modal-image{height:100%;width:100%}.modal-next,.modal-prev{font-size:2rem;padding:25px 18px}.modal-close{font-size:2.2rem;height:45px;top:-45px;width:45px}.modal-counter{bottom:-45px;font-size:15px;padding:10px 18px}}@media (min-width:1024px){.slider{border-radius:12px;box-shadow:0 8px 32px #0000001f;margin:0 auto;max-width:1200px;overflow:hidden;width:80%}.modal-overlay{box-sizing:border-box;padding:0}.slide-image{border-radius:0;height:70vh;max-height:600px}.next,.prev{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffe6;border-radius:12px;box-shadow:0 4px 16px #0000001a;color:#333;font-size:2rem;padding:25px 18px;transition:all .3s cubic-bezier(.25,.46,.45,.94)}.prev{left:20px}.next{right:20px}.next:hover,.prev:hover{background:#fffffff2;box-shadow:0 6px 24px #00000026;color:#000;transform:translateY(-50%) scale(1.1)}.modal-content{height:calc(100vh - 40px);width:calc(100vw - 40px)}.modal-content,.modal-image{max-height:calc(100vh - 40px);max-width:calc(100vw - 40px)}.modal-image{border-radius:12px;height:100%;object-fit:contain;width:100%}.modal-content--16x9{aspect-ratio:16/9;height:auto;max-height:92vh;max-width:clamp(960px,92vw,1600px);min-width:clamp(960px,92vw,1600px);width:clamp(960px,92vw,1600px)}.modal-next,.modal-prev{background:#ffffffe6;border-radius:12px;box-shadow:0 4px 16px #0003;color:#333;font-size:2.2rem;padding:30px 22px;z-index:10001}.modal-next:hover,.modal-prev:hover{background:#fffffff2;color:#000;transform:translateY(-50%) scale(1.1)}.modal-prev{left:30px}.modal-next{right:30px}.modal-close{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffe6;border-radius:50%;box-shadow:0 4px 16px #0003;color:#333;display:flex;font-size:2.5rem;height:50px;justify-content:center;right:20px;top:20px;transition:all .3s ease;width:50px;z-index:10001}.modal-close:hover{background:#fffffff2;color:#000;transform:scale(1.1)}.modal-counter{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffe6;border-radius:25px;bottom:20px;box-shadow:0 4px 16px #0000001a;color:#333;font-size:16px;padding:12px 20px;z-index:10001}}@media (min-width:1440px){.slider{max-width:1400px;width:70%}.slide-image{height:75vh;max-height:700px}.next,.prev{font-size:2.2rem;padding:30px 22px}.prev{left:30px}.next{right:30px}.modal-content{height:calc(100vh - 20px);width:calc(100vw - 20px)}.modal-content,.modal-image{max-height:calc(100vh - 20px);max-width:calc(100vw - 20px)}.modal-image{height:100%;width:100%}.modal-content--16x9{aspect-ratio:16/9;height:auto;max-height:92vh;max-width:clamp(1200px,88vw,1800px);min-width:clamp(1200px,88vw,1800px);width:clamp(1200px,88vw,1800px)}.modal-image--16x9{border-radius:inherit;height:100%;object-fit:cover;width:100%}.modal-prev{left:40px}.modal-next{right:40px}.modal-close{font-size:3rem;height:60px;right:30px;top:30px;width:60px}.modal-counter{bottom:30px;font-size:18px;padding:14px 24px}}.slider.loading{align-items:center;background:#f5f5f5;display:flex;justify-content:center;min-height:400px}.loading-text{color:#666;font-family:Roboto,sans-serif;font-size:16px}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.slide-image[src=""]{animation:shimmer 2s infinite;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%);background-size:200% 100%;position:relative}.slide-image[src=""]:after{color:#ccc;content:"📷";font-size:2rem;left:50%;opacity:.7;position:absolute;top:50%;transform:translate(-50%,-50%)}.slide-image{transition:opacity .3s ease,background-color .3s ease}.slide-image.image-loading{opacity:.8}.slide-image:not(.image-loading){opacity:1}.yandex-map-container{border-radius:8px;box-shadow:0 2px 8px #0000000f;margin-top:20px;overflow:hidden;width:100%}@media (max-width:768px){.yandex-map-container{border-radius:6px;margin-top:16px}}.booking-page{display:flex;flex-direction:column;min-height:100vh}.top-menu{justify-content:space-between;padding:20px 0}.logo-small,.top-menu{align-items:center;display:flex}.logo-small{color:#333;text-decoration:none}.logo-text-small{font-size:1.3rem;font-weight:700;letter-spacing:1px}.main-title{flex-grow:1;text-align:center}.studio-link{color:#333;font-size:1.5rem;font-weight:700;letter-spacing:2px;text-decoration:none;transition:color .3s ease}.studio-link:hover{color:#000}.booking-content{flex:1 1;margin:0 auto;max-width:1000px;padding:20px 0 50px}.step-section{margin-bottom:40px}.step-section h4{font-size:1.2rem;font-weight:600;margin-bottom:20px;padding-left:0}.rounded-list{margin:0 0 20px}.rounded-list li{margin-right:20px}.rounded-list i{border-radius:50%;display:block;height:10px;margin-right:8px;width:10px}.rounded-list i.gray{background-color:#bdbdbd}.rounded-list i.yellow{background-color:#ffebee}@media (max-width:768px){.top-menu{flex-direction:column;text-align:center}.logo-small,.main-title{margin-bottom:10px}.booking-content{padding:20px 15px 40px}}.discount-hint{color:#1976d2;font-size:.9rem;margin-top:8px;text-align:center}.booking-success{align-items:center;background:#fff;box-shadow:0 6px 20px #00000014;box-sizing:border-box;display:flex;flex-direction:column;gap:12px;margin:0 auto;max-width:900px;padding:24px}.booking-success .success-icon{align-items:center;background:#e6ffed;border-radius:50%;color:#0a8a3f;display:flex;font-size:48px;height:72px;justify-content:center;width:72px}.booking-success .info-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));text-align:left;width:100%}.booking-success h3,.booking-success p{margin:0}.booking-success .booking-success .new-booking-btn{margin-top:8px}@media (max-width:768px){.step-section{box-sizing:border-box;left:-15px;padding-left:15px;padding-right:15px;position:relative;width:100vw}}.desktop-calendar *,.mobile-vertical-calendar *{box-sizing:border-box}h4{color:#333;font-family:Andale Mono,monospace;font-weight:400}.calendar-error p{color:#d32f2f;font-size:.9rem;margin-bottom:15px}.calendar-error .btn{background-color:#f44336;border:none;color:#fff}.calendar-error .btn:hover{background-color:#d32f2f}.rounded-list{padding:0 0 0 8px}.rounded-list li{padding-left:8px}.rounded-list li i.yellow{background-color:#fdd835}.calendar-header{justify-content:space-between}.table td,.table th{box-sizing:border-box;height:70px;overflow:hidden;padding:8px;position:relative}.table .price{color:#555!important}.table th{padding:0}.day-header,.time-header{padding:12px!important}.day-header{width:12.5%}.day-header.current-day{background-color:#e8f4fc;color:#2196f3}.desktop-calendar .day-header.weekend{background-color:#ffebee}.time-slot{color:#555;font-weight:500;white-space:nowrap}.available{transition:all .2s ease}.available:hover{background-color:#e8f5e9}.booked{background-color:#bdbdbd!important;box-sizing:border-box;cursor:not-allowed;overflow:hidden}.user-booked{background-color:#fdd835!important;color:#333!important;cursor:pointer}.desktop-calendar td.hour-cell.user-booked{background-color:#fdd835!important;box-shadow:inset 0 0 0 2px #d4af37}.desktop-calendar td.half-hour-cell .hour-half.user-booked,.desktop-calendar td.hour-cell .hour-half.user-booked,.slot.half-mode .half-slot.user-booked{background-color:#fdd835!important;color:#333!important;font-weight:600}.user-booked:hover{background-color:#fbc02d!important}.selected{background-color:#fdd835!important;color:#333!important}.past{cursor:not-allowed!important}.past,.past:hover{background-color:#f5f5f5!important;color:#bdbdbd!important}.nav-btn.disabled{cursor:not-allowed!important;opacity:.5;pointer-events:none}.nav-btn.disabled:hover{background-color:#f5f5f5}.price{color:#555;font-family:Andale Mono,monospace;font-size:.9rem;font-weight:600}.month-badges-container{background-color:#f5f5f5;border-bottom:2px solid #e0e0e0;display:flex;height:40px;overflow:hidden;position:relative}.month-badges-spacer{background-color:#f5f5f5;flex-shrink:0;position:relative;width:60px;z-index:0}.month-badges-scroll-wrapper{-ms-overflow-style:none;flex:1 1;overflow-x:scroll;overflow-y:hidden;position:relative;scrollbar-width:none;z-index:1}.month-badges-scroll-wrapper::-webkit-scrollbar{display:none}.month-badges-row{display:flex;height:100%}.month-badges-week{display:flex;flex-basis:calc(100vw - 60px);flex-grow:0;flex-shrink:0;min-width:calc(100vw - 60px)}.month-badge-day-cell{align-items:center;display:flex;flex:1 1;justify-content:flex-start;min-width:0;position:relative}.month-badge-day-cell.month-start .month-start-line{background-color:#424242;bottom:0;left:0;position:absolute;top:0;width:3px;z-index:155}.month-badge-sticky{background:#0000;border-radius:0;box-shadow:none;color:#424242;display:inline-block;font-family:Rubik,sans-serif;font-size:.9rem;font-weight:600;left:0;margin-top:6px;padding:8px 20px;position:absolute;text-transform:uppercase;top:0;transition:none;white-space:nowrap;will-change:transform;z-index:160}.month-indicator{height:100%;position:relative;width:0}.day-cell{padding:10px 5px}.day-cell.weekend{background-color:#ffebee;color:#d32f2f}.time-label{font-size:.8rem;padding:15px 8px}.slot{align-items:stretch;min-height:80px;padding:0 3px;position:relative}.slot.available:hover{background-color:#e8f5e9}.slot.booked{box-sizing:border-box;cursor:not-allowed;overflow:hidden}.slot.user-booked{background-color:#fdd835;color:#333;cursor:pointer}.slot.user-booked:hover{background-color:#fbc02d}.slot.selected{background-color:#fdd835!important;color:#333!important}.slot.past{cursor:not-allowed!important}.slot.past,.slot.past:hover{background-color:#f5f5f5!important;color:#bdbdbd!important}.slot .price{color:#555;font-family:Andale Mono,monospace;font-size:.8rem;line-height:1.1;text-align:center}.mb-3{margin-bottom:1rem!important}.mb-4{margin-bottom:1.5rem!important}.mb-5{margin-bottom:3rem!important}@media (max-width:768px){:root{--mobile-hour-height:90px;--mobile-hour-half-divider:1px}.desktop-calendar{display:none}.step-section .booking-calendar-container{box-sizing:border-box;margin-left:-15px!important;margin-right:-15px!important;max-width:none!important;overflow:visible;position:relative;width:100vw!important}.mobile-vertical-calendar{border-radius:0;box-shadow:0 2px 10px #0000001a;display:block;left:0;margin:0;overflow:visible;position:relative;width:100%}.rounded-list{flex-direction:column;gap:10px;margin:0 0 20px;padding:0 15px}.rounded-list li{font-size:.9rem}.month-nav{margin:0;padding:12px 15px}.month-nav .month-year{font-size:1.1rem}.btn{font-size:.85rem;padding:8px 10px}.nav-btn{height:32px;width:32px}.days-row{margin-left:60px;min-width:0;overflow-x:auto}.time-label{flex-shrink:0;font-size:.7rem;max-width:60px;min-width:60px;padding:12px 3px;width:60px}.slot,.slot-cells{display:flex;flex:1 1;min-width:0}.slot{align-items:center;height:var(--mobile-hour-height);justify-content:center;max-width:none;min-height:var(--mobile-hour-height);padding:0 1px}.slot.half-mode{flex:1 1!important;max-width:none;padding:0 1px!important}.slot.half-mode .half-hour-wrapper{width:100%}.slot.half-mode .half-slot{flex:0 0 40px;width:100%}.slot,.slot.half-mode{display:flex}.slot .price{font-size:.7rem;line-height:1;word-break:break-all}.slot.half-mode{box-sizing:border-box;height:var(--mobile-hour-height);min-height:var(--mobile-hour-height);padding:0 1px}.slot.half-mode .half-hour-wrapper{display:flex;flex-direction:column;height:100%;position:relative}.slot.half-mode .half-hour-wrapper:after{background:#eee;content:"";height:1px;left:0;pointer-events:none;position:absolute;right:0;top:50%}.slot.half-mode .half-slot,.slot.half-mode .half-slot.booked,.slot.half-mode .half-slot.selected{flex:1 1;height:auto}.slot.half-mode .half-slot{border:none;font-family:Andale Mono,monospace;font-size:.7rem;line-height:1.05}.slot.half-mode .half-slot.selected{background:#fdd835!important;color:#333;font-weight:600}.slot.half-mode .half-slot.booked{background:#bdbdbd;color:#555;cursor:not-allowed}.slot.half-mode:not(.selected-hour-has-half){border-right:1px solid #e0e0e0}.day-cell{flex:1 1;font-size:.75rem;min-width:0;padding:10px 2px;text-align:center}}@media (max-width:480px){:root{--mobile-hour-height-xs:60px}.mobile-vertical-calendar{border-radius:4px;margin:0}.rounded-list{margin:0 0 15px;padding:0 10px}.month-nav{padding:10px 12px}.days-row{margin-left:50px}.time-label{font-size:.65rem;max-width:50px;min-width:50px;padding:10px 2px;width:50px}.slot{align-items:center;display:flex;height:var(--mobile-hour-height-xs);justify-content:center;min-height:var(--mobile-hour-height-xs);min-width:0;padding:0 .5px}.slot.half-mode{flex:1 1!important;max-width:none;padding:0 .5px!important}.slot.half-mode .half-hour-wrapper{width:100%}.slot.half-mode .half-slot{flex:1 1;height:auto;width:100%}.slot .price{font-size:.65rem;line-height:.9}.slot.half-mode{box-sizing:border-box;height:var(--mobile-hour-height-xs);min-height:var(--mobile-hour-height-xs);padding:0 .5px}.slot.half-mode .half-hour-wrapper{display:flex;flex-direction:column;height:100%;position:relative}.slot.half-mode .half-hour-wrapper:after{background:#eee;content:"";height:1px;left:0;pointer-events:none;position:absolute;right:0;top:50%}.slot.half-mode .half-slot,.slot.half-mode .half-slot.booked,.slot.half-mode .half-slot.selected{flex:1 1;height:auto}.slot.half-mode .half-slot{border:none;font-size:.65rem}.day-cell{font-size:.7rem;min-width:0;padding:8px 1px}}.month-year.exit-left{animation:slideOutLeft .3s ease-in-out forwards}.month-year.enter-right{animation:slideInRight .3s ease-in-out forwards}.booking-calendar-container{position:relative}.discount-tooltip{background-color:#000000d9;background-color:var(--tooltip-bg,#000000d9);border-radius:4px;box-shadow:0 2px 8px #0003;color:#fff;font-size:14px;line-height:1.4;max-width:200px;padding:8px 12px;pointer-events:none;position:absolute;text-align:center;white-space:normal;z-index:1000}.discount-tooltip:after{border-style:solid;content:"";height:0;position:absolute;width:0}.discount-tooltip.tooltip-right:after{border-color:#0000 #000000d9 #0000 #0000;border-color:#0000 var(--tooltip-bg,#000000d9) #0000 #0000;border-width:6px 6px 6px 0;left:-6px;margin-top:-6px;top:50%}.discount-tooltip.tooltip-left:after{border-color:#0000 #0000 #0000 #000000d9;border-color:#0000 #0000 #0000 var(--tooltip-bg,#000000d9);border-width:6px 0 6px 6px;margin-top:-6px;right:-6px;top:50%}.discount-tooltip.tooltip-top:after{border-color:#000000d9 #0000 #0000;border-color:var(--tooltip-bg,#000000d9) #0000 #0000 #0000;border-width:6px 6px 0;bottom:-6px;left:50%;margin-left:-6px}.old-price{color:#999;text-decoration:line-through}.new-price,.old-price{display:block;margin:0}.new-price{color:#d32f2f;font-weight:600}.tooltip-right{transform:translateY(-50%)}.tooltip-left{transform:translate(-100%,-50%)}.tooltip-top{transform:translate(-50%,-100%)}.discount-badge{background-color:#ffc107;border-radius:3px;color:#212529;display:inline-block;font-size:10px;font-weight:500;margin-left:4px;padding:2px 6px}.discount-info{background-color:#fff3cd;border:1px solid #ffeeba;border-radius:4px;margin-top:16px;padding:10px 12px}.discount-info h4{color:#856404;font-size:16px;font-weight:600;margin:0 0 8px}.discount-info ul{margin:0;padding-left:20px}.discount-info li{color:#856404;font-size:14px;line-height:1.4}.half-hour-toggle{display:flex;font-family:Andale Mono,monospace;justify-content:flex-start;margin-bottom:10px;padding-left:8px;width:100%}.half-hour-toggle label{align-items:center;cursor:pointer;display:inline-flex;flex-direction:row;font-size:.9rem;gap:6px;-webkit-user-select:none;user-select:none;white-space:nowrap}.half-hour-toggle input{cursor:pointer;height:20px;margin-left:6px;order:1;width:20px}.half-hour-wrapper{height:60px}.slot.half-mode,.table td.half-mode,td.half-mode{height:60px;padding:0!important}.half-slot{box-sizing:border-box;cursor:pointer;flex:0 0 30px;font-size:.7rem;height:30px;line-height:1;padding:0;transition:background .2s;width:100%}.half-slot:hover{background:#e8f5e9}.half-slot.selected{color:#333}.half-slot.merged,.half-slot.selected{background:#fdd835!important;font-weight:600}.half-slot.merged{box-shadow:inset 0 0 0 2px #d4af37}td.half-cell.merged-first{background:#fdd835!important}td.half-cell.merged-first .half-price.merged{font-size:.75rem;font-weight:600}.half-hour-wrapper{display:flex;flex:1 1;flex-direction:column;width:100%}.half-slot{align-items:center;background-color:#fff;border-bottom:1px solid #eee;display:flex;flex:1 1;font-size:.65rem;justify-content:center;padding:0 2px}.half-slot:last-child{border-bottom:none}.merged-hour-mobile{align-items:center;background:#fdd835;border-radius:2px;box-shadow:inset 0 0 0 2px #d4af37;display:flex;flex:1 1;font-size:.75rem;font-weight:600;justify-content:center;width:100%}.merged-hour-mobile:hover{background:#fcd533;cursor:pointer}@media (max-width:768px){.half-slot{font-size:.6rem}}@media (max-width:480px){.half-slot{font-size:.55rem}}.merged-hour-cell{background:#fdd835!important;box-shadow:inset 0 0 0 2px #d4af37;font-weight:600;position:relative}.merged-hour-cell .merged-hour-price{align-items:center;display:flex;font-size:.8rem;height:100%;justify-content:center}.merged-hour-cell:hover{background:#fcd533!important;cursor:pointer}.half-row.merged-hidden,.half-row.merged-hidden td{border:none;height:0;padding:0}.half-slot.booked{background:#ddd}.half-slot.booked:last-child{border-bottom:none}td.partial{background:#bdbdbd!important}td.partial-user-booked{background:#fdd835!important}.half-mode{padding:0!important}.selected-hour-has-half{background:#fff8d1!important}.slot.half-mode,td.half-mode{position:relative}.half-hour-wrapper{height:100%}.slot.half-mode .half-hour-wrapper,td.half-mode .half-hour-wrapper{display:flex;flex-direction:column;height:100%}.half-slot,.half-slot.booked,.half-slot.selected{flex:0 0 30px;height:30px}.half-slot.booked{cursor:default}.half-slot:not(:last-child){border-bottom:1px solid #eee}@media (max-width:768px){.half-slot,.half-slot.booked,.half-slot.selected{flex:0 0 25px;height:25px}.half-hour-wrapper,.slot.half-mode,.table td.half-mode,td.half-mode{height:50px}.half-slot{flex:0 0 25px;font-size:.6rem;height:25px}}.desktop-calendar .hour-mode-empty{border:none;height:0;padding:0}.desktop-calendar .hour-mode-empty td{border:none;height:0;padding:0;visibility:hidden}.desktop-calendar .half-row:nth-of-type(odd) td.time-slot{background:#fafafa}.desktop-calendar .half-row:nth-of-type(odd) td.time-slot:after{content:"";inset:0;pointer-events:none;position:absolute}.desktop-calendar td.time-slot{font-size:.8rem;font-weight:600;height:61px;letter-spacing:.5px;min-width:78px;width:78px}.desktop-calendar td.half-cell{font-size:.8rem;height:30px;padding:0;position:relative}.desktop-calendar td.hour-cell{font-size:.85rem;height:60px;padding:0;position:relative;text-align:center;vertical-align:middle}.desktop-calendar td.hour-cell.available:hover{background:#f3fbf4;cursor:pointer}.desktop-calendar td.hour-cell.selected{background:#fdd835!important;box-shadow:inset 0 0 0 2px #d4af37}.desktop-calendar td.hour-cell.booked{background:#bdbdbd!important;cursor:not-allowed}.desktop-calendar td.hour-cell.partial{background:#fff}.booking-calendar-container.half-hour-active .desktop-calendar td.half-hour-cell:before,.booking-calendar-container.half-hour-active .desktop-calendar td.hour-cell:before{background:#e6e6e6;content:"";height:1px;left:0;pointer-events:none;position:absolute;right:0;top:50%;z-index:3}.desktop-calendar td.hour-cell.partial:after{background:#bdbdbd59;content:"";inset:0;pointer-events:none;position:absolute;z-index:1}.desktop-calendar td.hour-cell.past{background:#f5f5f5!important;color:#bdbdbd;cursor:not-allowed}.desktop-calendar td.hour-cell.past:after{background:#f5f5f5;content:"";inset:0;pointer-events:none;position:absolute;z-index:5}.desktop-calendar td.half-hour-cell.past{background:#f5f5f5!important;color:#bdbdbd;cursor:not-allowed}.desktop-calendar td.half-hour-cell.past:after{background:#f5f5f5;content:"";inset:0;pointer-events:none;position:absolute;z-index:5}.desktop-calendar td.hour-cell .hour-halves{display:flex;flex-direction:column;height:100%;width:100%}.desktop-calendar td.hour-cell .hour-half{align-items:center;border-top:1px solid #eee;display:flex;flex:1 1;font-size:.7rem;justify-content:center;position:relative;z-index:2}.desktop-calendar td.hour-cell.partial .hour-half.free{background:#fff}.desktop-calendar td.hour-cell.partial .hour-half.booked{background:#c9c9c9}.desktop-calendar td.hour-cell.partial .hour-half{border-top:1px dashed #d7d7d7}.desktop-calendar td.hour-cell.partial .hour-half:first-child{border-top:none}.desktop-calendar td.hour-cell.partial .hour-half.free{cursor:pointer}.desktop-calendar td.hour-cell.partial .hour-half.selected{background:#fdd835!important;color:#333;font-weight:600}.desktop-calendar td.hour-cell.partial-user-booked .hour-half.free{background:#fff}.desktop-calendar td.hour-cell.partial-user-booked .hour-half.user-booked{background:#fdd835}.desktop-calendar td.hour-cell.partial-user-booked .hour-half{border-top:1px dashed #d7d7d7}.desktop-calendar td.hour-cell.partial-user-booked .hour-half:first-child{border-top:none}.desktop-calendar td.hour-cell.partial-user-booked .hour-half.free{cursor:pointer}.desktop-calendar td.hour-cell.partial-user-booked .hour-half.free:hover{background:#f3fbf4}.desktop-calendar td.hour-cell.partial-user-booked .hour-half.selected{background:#fdd835!important;color:#333;font-weight:600}.desktop-calendar td.hour-cell .hour-half:first-child{border-top:none}.desktop-calendar td.hour-cell .hour-half.free{background:#fff}.desktop-calendar td.hour-cell .hour-half.booked{background:#c9c9c9;color:#555}.desktop-calendar td.hour-cell.partial .hour-half.free:hover{background:#f3fbf4}.desktop-calendar td.hour-cell .hour-halves.full-booked{background:#bdbdbd;height:100%;width:100%}.desktop-calendar td.hour-cell .hour-halves.past-mask{background:#f5f5f5cc}.desktop-calendar.half-hour-active td.half-cell,.desktop-calendar:not(.half-hour-active) td.half-cell{height:30px}.desktop-calendar td.half-hour-cell{background:#fff;font-size:.85rem;height:60px;padding:0;position:relative;text-align:center;vertical-align:middle}.desktop-calendar td.half-hour-cell.available:hover{background:#f3fbf4;cursor:pointer}.desktop-calendar td.half-hour-cell.selected{background:#fdd835!important;box-shadow:inset 0 0 0 2px #d4af37}.desktop-calendar td.half-hour-cell.booked{background:#bdbdbd!important;cursor:not-allowed}.desktop-calendar td.half-hour-cell .hour-halves{display:flex;flex-direction:column;height:100%;width:100%}.desktop-calendar td.half-hour-cell .hour-half{align-items:center;border-top:1px solid #eee;display:flex;flex:1 1;font-size:.7rem;justify-content:center;position:relative;z-index:2}.desktop-calendar td.half-hour-cell .hour-half:first-child{border-top:none}.desktop-calendar td.half-hour-cell .hour-half.free{background:#fff}.desktop-calendar td.half-hour-cell .hour-half.booked{background:#c9c9c9;color:#555}.desktop-calendar td.half-hour-cell .hour-half.free:hover{background:#f3fbf4}.desktop-calendar td.half-hour-cell .hour-half.selected{background:#fdd835!important;box-shadow:inset 0 0 0 2px #d4af37;color:#333;font-weight:600}td.hour-hidden{display:none}.desktop-calendar td.half-cell.selected{box-shadow:inset 0 0 0 2px #d4af37}.desktop-calendar td.half-cell.available:hover{background:#f3fbf4}.desktop-calendar td.half-cell.booked{background:#c9c9c9!important}.desktop-calendar td.half-cell.user-booked{background:#fdd835!important;font-weight:600}.desktop-calendar .price{align-items:center;display:flex;flex-direction:column;font-size:.8rem;gap:2px;justify-content:center;line-height:1.1}.desktop-calendar .price .old-price{font-size:.7rem}.desktop-calendar .price .new-price{font-size:.9rem}.desktop-calendar table.table tbody tr .time-slot{border-right:2px solid #e0e0e0}.desktop-calendar table.table tbody tr td.half-cell:last-child{border-right:1px solid #e0e0e0}.desktop-calendar .half-row+.half-row td.half-cell,.desktop-calendar .half-row+.half-row td.time-slot{border-top:none}.booking-calendar-container{--transition:0.25s ease}.desktop-calendar .time-slot,.desktop-calendar td.half-cell{transition:background var(--transition),height var(--transition),box-shadow var(--transition)}.booking-calendar-container .discount-tooltip{z-index:2000}.booking-calendar-container.half-hour-active .desktop-calendar .half-row.collapsed-half{height:auto}.booking-calendar-container.half-hour-active .desktop-calendar .half-row.collapsed-half td{border:1px solid #e0e0e0;height:30px;padding:0;visibility:visible}.booking-calendar-container.half-hour-active .desktop-calendar .half-row.collapsed-half td.time-slot{height:61px}.desktop-calendar td.half-cell:nth-child(n+2)[data-today=true]{box-shadow:inset 0 0 0 2px #2196f3}.calendar-layout-wrapper{display:flex;position:relative;width:100%}.time-column-fixed{background-color:#fff;border-right:2px solid #dee2e6;flex-shrink:0;z-index:12}.time-table{border-collapse:initial;border-spacing:0;width:80px}.time-header-fixed{background-color:#f8f9fa;font-weight:600;height:68px;padding:16px 8px}.time-header-fixed,.time-slot-fixed{border:1px solid #dee2e6;text-align:center}.time-slot-fixed{background-color:#fff;border-top:none;font-weight:500;height:60px;padding:8px}.horizontal-scroll-calendar .calendar-scroll-wrapper{-webkit-overflow-scrolling:touch;cursor:grab;flex:1 1;overflow-x:auto;overflow-y:visible;position:relative;scroll-behavior:smooth}.horizontal-scroll-calendar .calendar-scroll-wrapper:active{cursor:grabbing}.horizontal-scroll-calendar:after,.horizontal-scroll-calendar:before{bottom:20px;content:"";pointer-events:none;position:absolute;top:0;transition:opacity .3s ease;width:40px;z-index:9}.horizontal-scroll-calendar:before{background:linear-gradient(90deg,#ffffffe6,#fff0);left:80px}.horizontal-scroll-calendar:after{background:linear-gradient(270deg,#ffffffe6,#fff0);right:0}.horizontal-scroll-calendar.scroll-at-end:after,.horizontal-scroll-calendar.scroll-at-start:before{opacity:0}.calendar-slots-table{border-collapse:initial;border-spacing:0;min-width:100%;width:auto}.calendar-slots-table thead th{background-color:#f8f9fa;border:1px solid #dee2e6;height:60px;min-width:120px;padding:12px 8px;position:-webkit-sticky;position:sticky;text-align:center;top:0;z-index:5}.calendar-slots-table tbody td{border:1px solid #dee2e6;border-top:none;height:60px;min-width:120px}.calendar-scroll-wrapper::-webkit-scrollbar{height:10px}.calendar-scroll-wrapper::-webkit-scrollbar-track{background:#f1f1f1;border-radius:5px}.calendar-scroll-wrapper::-webkit-scrollbar-thumb{background:#888;border-radius:5px}.calendar-scroll-wrapper::-webkit-scrollbar-thumb:hover{background:#555}.sentinel-cell{background:#0000!important;border:none!important;margin:0!important;max-width:1px!important;min-width:1px!important;opacity:0!important;overflow:hidden!important;padding:0!important;pointer-events:none!important;width:1px!important}.day-month-indicator{color:#999;font-size:.75rem;font-weight:400;margin-top:2px}.loading-indicator-inline{align-items:center;color:#666;display:flex;font-size:.85rem;font-style:italic;justify-content:center;min-width:100px;padding:12px}.loading-cell{background-color:#f9f9f9;border:1px dashed #ddd!important}@media (max-width:1200px){.time-table{width:70px}.time-slot-fixed{font-size:.9rem}.day-header{font-size:.85rem;min-width:90px}}@media (max-width:768px){.horizontal-scroll-calendar{display:none}.time-table{width:60px}.time-slot-fixed{font-size:.8rem}.mobile-vertical-calendar .calendar-content-wrapper{display:flex;margin-left:0;margin-right:0;overflow:visible;position:relative}.mobile-vertical-calendar .time-labels-column{background:#fff;border-right:1px solid #e0e0e0;display:flex;flex-direction:column;flex-shrink:0;left:0;min-width:60px;position:-webkit-sticky;position:sticky;width:60px;z-index:20}.mobile-vertical-calendar .time-column-header{background:#fff;border-bottom:2px solid #e0e0e0;box-sizing:border-box;height:40px;min-height:40px}.mobile-vertical-calendar .time-label-sticky{align-items:center;border-bottom:1px solid #e0e0e0;box-sizing:border-box;color:#666;display:flex;font-size:.6rem;font-weight:500;height:62px;justify-content:center;line-height:1;min-height:62px;padding:2px}.booking-calendar-container.half-hour-active .mobile-vertical-calendar .time-label-sticky{height:62px;min-height:62px}.mobile-vertical-calendar .mobile-horizontal-scroll{-webkit-overflow-scrolling:touch;-ms-overflow-style:none;display:flex;flex:1 1;gap:0;overflow-x:auto;overflow-y:visible;scroll-behavior:smooth;scrollbar-width:none}.mobile-vertical-calendar .mobile-horizontal-scroll::-webkit-scrollbar{display:none}.mobile-vertical-calendar .week-column{box-sizing:border-box;flex-shrink:0;min-width:calc(100vw - 60px);position:relative;width:calc(100vw - 60px)}.mobile-vertical-calendar .week-month-line{background-color:#424242;bottom:0;pointer-events:none;position:absolute;top:0;width:3px;z-index:150}.mobile-vertical-calendar .time-row{align-items:stretch;display:flex;position:relative}.mobile-vertical-calendar .slot-cells{box-sizing:border-box;display:flex;min-width:0;width:100%}.mobile-vertical-calendar .calendar-content.enter-left,.mobile-vertical-calendar .calendar-content.enter-left .days-row,.mobile-vertical-calendar .calendar-content.enter-left .slot-cells,.mobile-vertical-calendar .calendar-content.enter-right,.mobile-vertical-calendar .calendar-content.enter-right .days-row,.mobile-vertical-calendar .calendar-content.enter-right .slot-cells,.mobile-vertical-calendar .calendar-content.exit-left,.mobile-vertical-calendar .calendar-content.exit-left .days-row,.mobile-vertical-calendar .calendar-content.exit-left .slot-cells,.mobile-vertical-calendar .calendar-content.exit-right,.mobile-vertical-calendar .calendar-content.exit-right .days-row,.mobile-vertical-calendar .calendar-content.exit-right .slot-cells{animation:none!important}.mobile-vertical-calendar .days-row{box-sizing:border-box;display:flex;margin-left:0;width:100%}.mobile-vertical-calendar .day-cell{align-items:center;border-bottom:2px solid #e0e0e0;border-right:none;box-sizing:border-box;display:flex;flex:1 1;flex-direction:column;font-size:.8rem;gap:2px;justify-content:center;min-width:0;padding:8px 4px;position:relative;text-align:center}.mobile-vertical-calendar .day-cell:last-child{border-right:none}.mobile-vertical-calendar .day-cell .day-name{color:#666;font-size:.7rem}.mobile-vertical-calendar .day-cell .day-num{font-size:.9rem;font-weight:600}.mobile-vertical-calendar .slot{border-right:none;box-sizing:border-box;flex:1 1;font-size:.7rem;min-height:60px;min-width:0;padding:2px;position:relative}.mobile-vertical-calendar .slot:last-child{border-right:none}.mobile-vertical-calendar .slot .price{font-size:.65rem;line-height:1}.mobile-vertical-calendar .slot .old-price{color:#999;font-size:.6rem;text-decoration:line-through}.mobile-vertical-calendar .slot .new-price{color:#4caf50;font-size:.7rem;font-weight:600}.mobile-vertical-calendar .half-hour-wrapper{display:flex;flex-direction:column;height:100%;width:100%}.mobile-vertical-calendar .half-slot{align-items:center;border-bottom:1px dashed #e0e0e0;display:flex;flex:1 1;font-size:.65rem;justify-content:center;min-height:30px}.mobile-vertical-calendar .half-slot:last-child{border-bottom:none}.mobile-vertical-calendar .merged-hour-mobile{align-items:center;display:flex;font-size:.7rem;height:100%;justify-content:center;width:100%}.mobile-vertical-calendar .day-cell{max-width:60px;min-width:45px;padding:6px 2px;width:45px}.mobile-vertical-calendar .day-cell .day-name{font-size:.6rem}.mobile-vertical-calendar .day-cell .day-num{font-size:.85rem}.mobile-vertical-calendar .time-label{font-size:.7rem;padding:2px;width:55px}.mobile-vertical-calendar .time-row{min-height:60px}}@media (max-width:480px){.mobile-vertical-calendar .slot{flex:1 1;font-size:.6rem;min-height:61px;min-width:0;padding:1px}.mobile-vertical-calendar .slot .price{font-size:.6rem}.mobile-vertical-calendar .slot .old-price{font-size:.55rem}.mobile-vertical-calendar .slot .new-price{font-size:.65rem}.mobile-vertical-calendar .day-cell{flex:1 1;min-width:0;padding:4px 1px}.mobile-vertical-calendar .day-cell .day-name{font-size:.55rem}.mobile-vertical-calendar .day-cell .day-num{font-size:.75rem}.mobile-vertical-calendar .time-label{font-size:.65rem;width:50px}.mobile-vertical-calendar .time-row{min-height:61px}.mobile-vertical-calendar .half-slot{font-size:.6rem;min-height:30.5px}.mobile-vertical-calendar .merged-hour-mobile{font-size:.65rem}}.booking-summary,.booking-summary *{box-sizing:border-box;font-family:Andale Mono,monospace}.booking-summary{background:#0000;margin:0 auto 32px;padding:0;width:100%}.bs-container{align-items:flex-start;display:flex;flex-direction:row;gap:24px;margin:0 auto;max-width:1100px;padding:16px 8px 8px}@media (max-width:900px){.bs-container{flex-direction:column;gap:20px;padding:12px 12px 4px}}.bs-col{display:flex;flex:1 1;flex-direction:column;gap:16px;min-width:320px;position:relative}.bs-col:first-of-type{flex:0 0 54%;max-width:54%}.bs-col.bs-form{flex:0 0 46%;max-width:46%}@media (max-width:1100px){.bs-col.bs-form,.bs-col:first-of-type{flex:1 1 auto;max-width:100%}}.bs-breakdown-list,.bs-date-block,.bs-inline-breakdown,.bs-text,.bs-time-list{max-width:100%;overflow-wrap:anywhere}.bs-text>div{overflow-wrap:anywhere}.bs-total-row{position:relative}.bs-total-row .bs-note,.bs-total-row .bs-success{transition:opacity .25s ease}.bs-title{color:#222;font-size:18px;font-weight:700;line-height:1.3;margin:0 0 8px}.bs-section{gap:10px;padding:0}.bs-row,.bs-section{display:flex;flex-direction:column}.bs-row{gap:6px}.bs-label{color:#6b7280;font-size:14px;font-weight:600;letter-spacing:.5px}.bs-text{color:#444;font-size:14px;font-weight:400}.bs-muted{color:#6c757d;font-size:12px;font-weight:400}.bs-note{color:#666;font-size:13px;font-weight:400}.bs-success{color:#2e7d32;font-size:12px;font-weight:500}.bs-total{color:#111;font-size:18px;font-weight:800}.bs-times-wrapper{gap:10px}.bs-date-block,.bs-times-wrapper{display:flex;flex-direction:column}.bs-date-block{gap:6px}.bs-date-label{color:#222;font-size:14px;font-weight:600}.bs-time-list{display:flex;flex-wrap:wrap;gap:6px}.bs-time-pill{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;color:#444;font-size:12px;line-height:1.2;padding:4px 8px}.bs-inline-breakdown{color:#444;font-size:14px;line-height:1.35}.bs-breakdown-list{color:#555;display:flex;flex-direction:column;font-size:12px;gap:4px}.bs-breakdown-line strong{color:#222}.bs-divider{background:linear-gradient(90deg,#eee,#f5f5f5,#eee);border:0;height:1px;margin:4px 0}.bs-total-row{gap:4px;margin-top:4px}.bs-form form,.bs-total-row{display:flex;flex-direction:column}.bs-form form{gap:14px}.bs-field{display:flex;flex-direction:column;gap:6px}.bs-field label{color:#6b7280;font-size:14px;font-weight:600}.bs-field input,.bs-field textarea{background:#fff;border:1px solid #e5e7eb;border-radius:6px;font-family:Andale Mono,monospace;font-size:14px;outline:none;padding:10px 10px 8px;transition:border-color .15s ease;width:100%}.bs-field input:focus,.bs-field textarea:focus{border-color:#1976d2}.bs-field textarea{min-height:70px;resize:vertical}.bs-promo-row{align-items:stretch;display:flex;gap:8px}.bs-btn{background:#111;border:1px solid #111;border-radius:6px;color:#fff;cursor:pointer;font-family:Andale Mono,monospace;font-size:13px;letter-spacing:.5px;padding:10px 14px 8px;transition:background .18s ease,color .18s ease}.bs-btn:hover:not(:disabled){background:#000}.bs-btn:disabled{cursor:not-allowed;opacity:.45}.bs-checkbox{align-items:flex-start;color:#444;display:flex;font-size:12px;gap:10px}.bs-checkbox input{margin-top:4px;transform:scale(1.1)}.bs-checkbox a{color:#1976d2;text-decoration:underline}.bs-checkbox a:hover{text-decoration:none}.bs-user-info{color:#444;display:flex;font-size:12px;gap:12px;padding:0}.bs-user-icon{align-items:center;border:1px solid #e5e7eb;border-radius:50%;display:flex;font-size:14px;height:28px;justify-content:center;width:28px}.bs-error{color:#d32f2f;font-size:12px}.bs-success-msg{color:#2e7d32;font-size:12px}.bs-submit{margin-top:4px}.booking-summary :focus-visible{border-radius:4px;outline:2px solid #1976d2;outline-offset:2px}.booking-details,.contact-form,.detail-item,.detail-item.total-price,.services-list,.summary-content,.time-slots-structured,.user-info-notice{all:unset}@media (max-width:600px){.bs-time-list{gap:4px}.bs-time-pill{font-size:11px;padding:3px 6px}.bs-title,.bs-total{font-size:16px}}.submit-btn{background:#111;border:1px solid #111;border-radius:8px;color:#fff;cursor:pointer;font-family:Andale Mono,monospace;font-size:14px;font-weight:600;letter-spacing:.5px;padding:12px 18px 10px;transition:background .18s ease;width:100%}.submit-btn:hover:not(:disabled){background:#000}.submit-btn:disabled{cursor:not-allowed;opacity:.45}body .booking-summary .booking-success{background:#fff;border:0;box-shadow:none}.booking-success h3{font-weight:700;letter-spacing:.5px}.summary-label{color:#6b7280;font:inherit;font-weight:600}.summary-value{color:#444;font:inherit}.services-list{margin:5px 0;padding-left:20px}.services-list li{margin-bottom:5px}input.error,textarea.error{border-color:#d32f2f}.error-message{color:#d32f2f;font-size:12px;margin-top:4px}.error-box{background:#fff5f5;border:1px solid #fecaca;border-radius:4px;color:#b91c1c;padding:10px}.booking-success{background-color:#e8f5e9;border-radius:8px;padding:30px;text-align:center}.success-icon{background-color:#fff;border-radius:50%;box-shadow:0 3px 10px #0000001a;color:#4caf50;display:inline-block;font-size:50px;height:80px;line-height:80px;margin-bottom:20px;width:80px}.booking-success h3{color:#2e7d32;margin-bottom:15px}.booking-success p{margin-bottom:10px}.info-text{color:#555;font-style:italic;margin:20px 0}.booking-details{background-color:#fafafa;border-radius:6px;margin-bottom:25px;padding:20px;text-align:center}.booking-details h5{border-bottom:2px solid #e0e0e0;color:#333;font-size:1.1rem;font-weight:500;margin:0 0 20px;padding-bottom:10px;text-align:center}.detail-item{align-items:flex-start;border-bottom:1px solid #f0f0f0;gap:15px;justify-content:space-between;margin:0;max-width:500px;padding:12px 0}.detail-item:last-child{border-bottom:none}.detail-item .label{flex-shrink:0;font-weight:500;min-width:120px}.detail-item .value{color:#333;flex:1 1;text-align:right}.detail-item.total-price{border-top:2px solid #e0e0e0;margin-top:10px;padding-top:15px}.detail-item.total-price .label{color:#333;font-size:1.1rem;font-weight:600}.detail-item.total-price .value{color:#333;font-size:1.2rem}.services-list{flex:1 1;text-align:left}.services-list .service-item{color:#333;font-size:.95rem;margin-bottom:0}.services-list .service-item:last-child{margin-bottom:0}.time-slots-structured{flex:1 1;text-align:left}.date-group{margin-bottom:8px}.date-group:last-child{margin-bottom:0}.date-label{color:#444;font-size:.95rem;font-weight:500;margin-bottom:4px}.time-list{display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-start}.time-slot{border-radius:3px;color:#666;font-size:.85rem;padding:2px 6px}.account-info{background-color:#f3e5f5;border:2px solid #9c27b0;border-radius:8px;margin:20px auto;max-width:500px;padding:20px;text-align:center}.account-info h4{color:#7b1fa2;font-size:1.1rem;margin-bottom:15px}.account-info p{color:#555;margin-bottom:8px}.login-link{margin-top:15px}.btn-link{background-color:#9c27b0;border-radius:4px;color:#fff;display:inline-block;font-weight:500;padding:10px 20px;text-decoration:none;transition:background-color .2s}.btn-link:hover{background-color:#7b1fa2;color:#fff}.booking-summary-info{background-color:#f5f5f5;border-radius:6px;margin:20px auto;max-width:500px;padding:15px;text-align:center}.booking-summary-info h5{color:#333;margin-bottom:15px}.info-grid{display:flex;flex-direction:column;gap:8px}.info-item{display:flex;justify-content:space-between}.info-item span:first-child{color:#666;font-weight:500}.new-booking-btn{background-color:#4a76a8;border:none;border-radius:4px;color:#fff;cursor:pointer;font-weight:500;margin-top:20px;padding:12px 25px;transition:background-color .2s}.new-booking-btn:hover{background-color:#3b5998}.checkbox-group{margin-bottom:20px!important}.checkbox-label{align-items:flex-start;cursor:pointer;display:flex!important;font-weight:400!important;gap:10px;margin-bottom:8px!important}.checkbox-label input[type=checkbox]{margin:0!important;transform:scale(1.2);width:auto!important}.checkbox-label a{color:#4a76a8;font-weight:500;text-decoration:underline}.checkbox-label a:hover{color:#3b5998;text-decoration:none}.checkbox-hint{color:#666;font-size:.85rem;line-height:1.3;margin:0!important;padding-left:30px}.user-info-notice{align-items:flex-start;background:#f8f9fa;border:1px solid #e9ecef;border-radius:6px;display:flex;gap:12px;margin:20px auto;max-width:500px;padding:16px}.user-icon{align-items:center;background:#fff;border:1px solid #dee2e6;border-radius:50%;display:flex;flex-shrink:0;font-size:20px;height:36px;justify-content:center;width:36px}.user-details{color:#495057;flex:1 1;font-size:.95rem;line-height:1.5}.user-details strong{color:#343a40}@media (min-width:1024px){.booking-summary{margin:0 auto 2rem;max-width:900px;padding:40px}.summary-content{max-width:800px}.booking-details{margin-bottom:35px;margin-left:auto;margin-right:auto;max-width:600px;padding:30px}.detail-item{max-width:550px;padding:15px 0}.contact-form{max-width:600px;padding:20px}.user-info-notice{margin:30px auto;max-width:600px}.account-info,.booking-summary-info{max-width:600px}}@media (max-width:768px){.user-info-notice{gap:10px;padding:14px}.user-icon{font-size:18px;height:32px;width:32px}.user-details{font-size:.9rem}}.services-list{box-sizing:border-box;contain:layout paint;display:flex;flex-direction:column;font-family:Andale Mono,monospace;gap:8px;margin:0;padding:0;width:100%}.shooting-format-root{min-height:180px;position:relative;transition:min-height .25s ease}.shooting-format-root:has(.event-options),.shooting-format-root:has(.photographer-options){min-height:230px}.service-item{position:relative}.service-item label{align-items:center;background:#0000;border:none;border-bottom:1px solid #f0f0f0;color:#666;cursor:pointer;display:flex;font-size:14px;font-weight:400;gap:12px;padding:12px 4px;transition:all .3s ease}.service-item label:hover{border-bottom-color:#666;color:#333}.service-item input[type=radio]{accent-color:#666;cursor:pointer;height:16px;transition:transform .2s ease;width:16px}.service-item input[type=radio]:hover{transform:scale(1.1)}.service-item input[type=radio]:checked+span{color:#444;font-weight:500;transition:all .3s ease}.service-item input[type=radio]:checked~.price{color:#444;font-weight:600;transition:all .3s ease}.service-item label:has(input[type=radio]:checked){border-bottom-color:#666;border-bottom-width:2px;color:#444}.service-item .price{color:#999;font-size:13px;font-weight:400;margin-left:auto;transition:all .3s ease}.event-options,.photographer-options{animation:slideIn .35s ease forwards;display:flex;flex-direction:column;gap:4px;margin-left:28px;margin-top:8px;max-height:0;opacity:0;overflow:hidden;padding-left:0;will-change:max-height,opacity}.photographer-options{animation:slideInPhotographers .35s ease forwards;max-height:none;overflow:visible}@keyframes slideIn{0%{max-height:0;opacity:0;transform:translateY(-6px)}60%{opacity:1}to{max-height:200px;opacity:1;transform:translateY(0)}}@keyframes slideInPhotographers{0%{opacity:0;transform:translateY(-6px)}60%{opacity:1}to{opacity:1;transform:translateY(0)}}.event-options label,.photographer-options .service-item label{background:#0000;border:none;border-bottom:1px solid #f5f5f5;color:#777;font-size:13px;font-weight:300;padding:8px 4px}.event-options label:hover,.photographer-options .service-item label:hover{border-bottom-color:#ddd;color:#555}.event-options input[type=radio],.photographer-options .service-item input[type=radio]{height:14px;width:14px}.photographer-options .service-item input[type=radio]:checked+span{color:#555;font-weight:400}.photographer-options .service-item input[type=radio]:checked~.price{color:#555;font-weight:500}.event-options input[type=number]{background:#0000;border:none;border-bottom:1px solid #ddd;font-family:Andale Mono,monospace;font-size:12px;margin-left:8px;padding:2px 6px;transition:border-color .3s ease;width:50px}.event-options input[type=number]:focus{border-bottom-color:#666;outline:none}.loading-message,.no-photographers{background:#ffffff80;border:1px dashed #ddd;border-radius:4px;font-style:italic;margin:4px 0;padding:16px 8px;text-align:center}.loading-message{color:#666}.no-photographers{color:#999}@media (max-width:768px){.service-item label{font-size:13px;padding:10px 4px}.event-options,.photographer-options{margin-left:20px}.photographer-options{margin-top:8px;padding:6px}.event-options input[type=number]{font-size:12px}}.services-container{font-family:Andale Mono,monospace;margin-bottom:2rem}.services-grid{display:flex;flex-direction:column;gap:8px;margin-bottom:30px}.service-card{-webkit-tap-highlight-color:rgba(0,0,0,0);align-items:flex-start;background-color:initial;border:none;border-bottom:1px solid #f0f0f0;cursor:pointer;display:flex;gap:16px;justify-content:space-between;padding:12px 4px;transition:all .3s ease}.service-card:hover{border-bottom-color:#666}.service-card.selected{border-bottom-color:#444;border-bottom-width:2px}.service-card,.service-card *,.service-card :after,.service-card :before{-webkit-tap-highlight-color:rgba(0,0,0,0)!important;background-color:initial!important}.service-card :active,.service-card :focus,.service-card:active,.service-card:focus{background-color:initial!important;background:#0000!important}.service-info{align-items:flex-start;display:flex;flex:1 1;flex-direction:column;gap:4px;text-align:left}.service-name{color:#333;font-size:14px;font-weight:400;margin:0;text-align:left}.service-description{color:#888;font-size:12px;font-weight:300;margin:0;text-align:left}.service-actions{align-items:flex-end;display:flex;flex-direction:column;flex-shrink:0;gap:8px}.service-price{color:#000!important;font-size:13px;font-weight:500;text-align:right}.price-type{color:#999;display:block;font-size:11px;font-weight:300;line-height:1.2}.checkbox-container{align-items:center;color:#777;display:flex;font-size:12px;gap:8px;position:relative;-webkit-user-select:none;user-select:none}.checkbox-container,.checkbox-container input{-webkit-tap-highlight-color:transparent;cursor:pointer}.checkbox-container input{accent-color:#666;height:18px;margin:0;outline:none;transform:scale(1.1);width:18px}.checkmark{display:none}.checkbox-container input[type=checkbox]:checked{animation:checkmark-appear .3s ease forwards}@keyframes checkmark-appear{0%{transform:scale(1.5)}50%{transform:scale(1.8)}to{transform:scale(1.5)}}@media (max-width:768px){.service-card{gap:12px;padding:10px 4px}.service-card,.service-info{font-family:Andale Mono,monospace}.service-info{gap:2px}.service-name{font-size:13px}.service-name,.service-price{font-family:Andale Mono,monospace}.service-price{font-size:12px;letter-spacing:0}.service-actions{font-family:Andale Mono,monospace;gap:6px}}.rules-page{display:flex;flex-direction:column;min-height:100vh;opacity:1;overflow-x:hidden;transition:opacity .5s ease-in-out}.rules-page.page-enter{animation:fadeIn .5s ease-in-out forwards;opacity:0}.rules-content{-webkit-backface-visibility:hidden;backface-visibility:hidden;flex:1 1;margin:0;opacity:1;padding:0;transform:translateZ(0);transition:opacity .2s ease;will-change:transform}.rules-content.content-ready{opacity:1}.rules-container{margin:0 auto;max-width:800px;padding:40px 20px}.rules-title{color:#1a1a1a;font-size:2.2rem;font-weight:500;letter-spacing:2px;margin-bottom:40px}.loading-message,.rules-title{font-family:Andale Mono,monospace;text-align:center}.loading-message{color:#6c757d;font-size:1.1rem;padding:40px 20px}.rules-list{display:flex;flex-direction:column;gap:25px}.rule-item{align-items:flex-start;background-color:#fff;border:1px solid #00000014;box-shadow:0 2px 8px #0000000d;display:flex;gap:20px;padding:20px;transition:box-shadow .3s ease,transform .3s ease}.rule-item:hover{box-shadow:0 4px 15px #0000001a;transform:translateY(-2px)}.rule-number{background-color:#1a1a1a;height:35px;margin-top:2px;width:35px}.rule-number,.rule-title{font-family:Andale Mono,monospace;font-size:1rem}.rule-title{color:#1a1a1a;line-height:1.5;margin-bottom:8px}.rule-description{color:#666;font-family:Andale Mono,monospace;font-size:.95rem;font-weight:400;line-height:1.6;margin-top:8px}.page-slide-left{animation:slideInFromRight .5s cubic-bezier(.25,.46,.45,.94) forwards}.page-slide-right{animation:slideInFromLeft .5s cubic-bezier(.25,.46,.45,.94) forwards}@keyframes slideInFromRight{0%{opacity:0;transform:translateX(100%)}to{opacity:1;transform:translateX(0)}}@keyframes slideInFromLeft{0%{opacity:0;transform:translateX(-100%)}to{opacity:1;transform:translateX(0)}}.page-exit{animation:fadeOut .5s ease-in-out forwards}.page-exit-right{animation:slideOutToRight .5s cubic-bezier(.25,.46,.45,.94) forwards}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}@keyframes slideOutToLeft{0%{opacity:1;transform:translateX(0)}to{opacity:0;transform:translateX(-100%)}}@keyframes slideOutToRight{0%{opacity:1;transform:translateX(0)}to{opacity:0;transform:translateX(100%)}}@media (max-width:768px){.page-slide-left{animation:slideInFromRight .45s cubic-bezier(.25,.46,.45,.94) forwards}.page-slide-right{animation:slideInFromLeft .45s cubic-bezier(.25,.46,.45,.94) forwards}.rules-content{padding:0}.rules-container{padding:30px 15px}.rules-title{font-size:1.8rem;margin-bottom:30px}.rule-item{gap:15px;padding:15px}.rule-number{font-size:.9rem;height:30px;width:30px}.rule-title{font-size:.95rem}.rule-description{font-size:.9rem}}.admin-login-container{background-color:#f3f7f9;padding:24px}.btn-delete-admin{align-items:center;background:#dc3545;border:none;border-radius:4px;color:#fff;cursor:pointer;display:inline-flex;font-size:1.1rem;justify-content:center;padding:6px 10px;transition:background-color .3s}.btn-delete-admin:hover{background:#c82333;transform:scale(1.05)}.no-action{color:#999;font-size:.9rem}.admin-login-card{background:linear-gradient(180deg,#fff,#fbfeff);border:1px solid #e6eef2;border-radius:14px;box-shadow:0 12px 30px #1018280f;max-width:520px;padding:36px}.form-group input,.form-group select{border:1px solid #ccc;border-radius:4px;box-sizing:border-box;font-family:Andale Mono,monospace;font-size:1rem;padding:10px;transition:border-color .3s;width:100%}.form-group input:focus,.form-group select:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff40;outline:none}.form-group select{cursor:pointer}.admin-header{background:#0000;padding:18px 0 8px}.admin-content{padding:22px}.studio-selector{background:linear-gradient(180deg,#fff,#fbfeff);border:1px solid #e6eef2;border-radius:10px;box-shadow:0 6px 20px #1018280a;margin-bottom:20px;padding:18px}.studio-selector-content{align-items:center;display:flex;gap:20px}.studio-selector-label{color:#333;font-family:Andale Mono,monospace;font-size:1rem;font-weight:500}.studio-buttons{display:flex;gap:15px}.studio-btn{align-items:center;background:#f6fbfc;border:1px solid #e6eef2;border-radius:10px;color:#334b52;display:flex;font-family:Andale Mono,monospace;font-size:.9rem;gap:10px;padding:10px 18px}.studio-btn:hover{background:#e9ecef;border-color:#007bff}.studio-btn.active{background:linear-gradient(180deg,#f4feff,#d7f1f7);border-color:#9cd3e3;box-shadow:0 8px 22px #9cd3e359;color:#111}.studio-icon{font-size:1.2rem}.studio-name{font-weight:600;letter-spacing:.5px}.admin-tabs{background:#0000;border-radius:8px;margin-bottom:20px}.tab-list{border-bottom:1px solid #e9ecef;display:flex}.tab-button{align-items:center;background:none;border:none;border-bottom:3px solid #0000;color:#666;cursor:pointer;display:flex;font-family:Andale Mono,monospace;font-size:.9rem;gap:8px;justify-content:center;min-width:120px;padding:15px 20px;transition:all .3s}.tab-button:hover{background:#f8f9fa;color:#333}.tab-button.active{background:#f8f9fa;border-bottom-color:#007bff;color:#007bff}.tab-icon{font-size:1rem}.tab-label{font-weight:500}.tab-content{background:#fff;border-radius:8px;box-shadow:0 8px 28px #1018280a;min-height:420px;opacity:1;padding:18px;transition:opacity .2s ease-in-out}.tab-content.loading{opacity:.7}.admins-section,.clients-section,.prices-section,.services-section{background:#0000;border-radius:0;box-shadow:none;padding:0}.studio-info{background:#f8f9fa;border-left:4px solid #007bff;border-radius:8px;margin-bottom:20px;padding:20px}.studio-info h3{color:#007bff;font-family:Andale Mono,monospace;font-size:1.2rem;font-weight:600;margin:0}.section-header{padding-bottom:15px}.section-header h2{color:#333;font-family:Andale Mono,monospace;font-size:1.5rem;font-weight:500}.btn-create-admin,.btn-create-service{background:#28a745;border:none;border-radius:4px;color:#fff;cursor:pointer;font-family:Andale Mono,monospace;font-size:.9rem;padding:10px 20px;transition:background-color .3s}.btn-create-admin:hover,.btn-create-service:hover{background:#218838}.btn-create-price{display:none}.admins-loading,.clients-loading,.prices-loading,.services-loading{font-family:Andale Mono,monospace;padding:40px 20px;text-align:center}.admins-loading p,.clients-loading p,.prices-loading p,.services-loading p{color:#666;font-size:1rem}.prices-info p{margin:0}.btn-retry,.prices-info p{font-family:Andale Mono,monospace}.btn-retry{background:#6c757d;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.85rem;margin-left:10px;padding:8px 16px;transition:background-color .3s}.btn-retry:hover{background:#5a6268}.admins-table-container,.clients-table-container,.prices-table-container,.services-table-container{border:1px solid #e9ecef;border-radius:8px;overflow-x:auto}.admins-table,.clients-table,.prices-table,.services-table{background:#fff;border-collapse:collapse;font-family:Andale Mono,monospace;width:100%}.admins-table thead,.clients-table thead,.prices-table thead,.services-table thead{background:#f8f9fa}.admins-table th,.clients-table th,.prices-table th,.services-table th{border-bottom:2px solid #e9ecef;color:#495057;font-weight:600;padding:15px 12px;text-align:left;white-space:nowrap}.admins-table td,.clients-table td,.prices-table td,.services-table td{border-bottom:1px solid #e9ecef;padding:12px;vertical-align:middle}.admins-table tbody tr:hover,.clients-table tbody tr:hover,.prices-table tbody tr:hover,.services-table tbody tr:hover{background-color:#f8f9fa}.admins-table tbody tr:last-child td,.clients-table tbody tr:last-child td,.prices-table tbody tr:last-child td,.services-table tbody tr:last-child td{border-bottom:none}.actions-cell{white-space:nowrap}.actions-cell button{background:#0000;border:1px solid #0000002e;border-radius:0;color:#000;cursor:pointer;font:inherit;font-size:11px;font-weight:500;letter-spacing:.08em;margin-right:8px;padding:8px 14px;text-transform:uppercase;transition:background .2s,color .2s,border-color .2s}.actions-cell button:last-child{margin-right:0}.btn-edit{background:#000;border:1px solid #000;color:#fff}.btn-edit:hover{background:#111}.btn-delete{background:#000;border:1px solid #000;transition:background .2s,color .2s}.btn-delete:hover{background:#111}.no-admins,.no-clients,.no-prices,.no-services{color:#6c757d;font-style:italic;padding:40px 20px;text-align:center}.admin-form,.price-form,.service-form{padding:20px;position:relative}.admin-form h3,.price-form h3,.service-form h3{color:#333;font-family:Andale Mono,monospace;font-size:1.3rem;font-weight:500;margin:0 0 20px}.admin-form .form-group,.price-form .form-group,.service-form .form-group{margin-bottom:20px}.admin-form .form-group label,.price-form .form-group label,.service-form .form-group label{color:#333;display:block;font-family:Andale Mono,monospace;font-size:.9rem;font-weight:500;margin-bottom:8px}.admin-form .form-group input,.admin-form .form-group textarea,.price-form .form-group input,.price-form .form-group textarea,.service-form .form-group input,.service-form .form-group textarea{border:1px solid #ddd;border-radius:4px;box-sizing:border-box;font-family:Andale Mono,monospace;font-size:1rem;padding:10px 12px;transition:border-color .3s,box-shadow .3s;width:100%}.admin-form .form-group input:focus,.admin-form .form-group textarea:focus,.price-form .form-group input:focus,.price-form .form-group textarea:focus,.service-form .form-group input:focus,.service-form .form-group textarea:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff40;outline:none}.admin-form .form-group textarea,.price-form .form-group textarea,.service-form .form-group textarea{min-height:80px;resize:vertical}.modal-actions{border-top:1px solid #e9ecef;gap:10px;margin-top:25px;padding-top:20px}.btn-save{background:#000;border:1px solid #000;border-radius:0;color:#fff;cursor:pointer;font:inherit;font-size:11px;font-weight:500;letter-spacing:.08em;padding:10px 20px;text-transform:uppercase;transition:background .2s,color .2s,border-color .2s}.btn-save:hover{background:#111}.btn-cancel{border:1px solid #0000002e;font:inherit;padding:10px 20px;transition:background .2s,color .2s,border-color .2s}.btn-cancel:hover{background:#000;border-color:#000;color:#fff}.delete-confirmation{padding:20px;position:relative;text-align:center}.delete-confirmation h3{color:#dc3545;font-family:Andale Mono,monospace;font-size:1.3rem;font-weight:500;margin:0 0 20px}.delete-confirmation p{color:#333;font-family:Andale Mono,monospace;margin-bottom:15px}.delete-confirmation .warning{color:#dc3545;font-style:italic;font-weight:500}.btn-delete-confirm{background:#000;border:1px solid #000;border-radius:0;color:#fff;cursor:pointer;font:inherit;font-size:11px;font-weight:500;letter-spacing:.08em;margin-right:10px;padding:10px 20px;text-transform:uppercase;transition:background .2s,color .2s,border-color .2s}.btn-delete-confirm:hover{background:#111}.admin-login-container{align-items:center;background-color:#f8f9fa;display:flex;flex-direction:column;font-family:Andale Mono,monospace;justify-content:center;min-height:100vh;padding:20px}.admin-login-card{.admin-statistics.enhanced{display:flex;flex-direction:column;gap:24px}.admin-statistics .stats-header{align-items:flex-end;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between}.admin-statistics .kpi-panel input[type=date],.admin-statistics .kpi-panel select{background:#fff;border:1px solid #d1d5db;border-radius:6px;font-size:13px;padding:6px 10px}.admin-statistics .kpi-cards{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.admin-statistics .kpi-card{background:linear-gradient(135deg,#fff,#f1f5f9);border:1px solid #e2e8f0;border-radius:12px;display:flex;flex-direction:column;gap:4px;overflow:hidden;padding:14px 16px;position:relative}.admin-statistics .kpi-card:after{background:radial-gradient(circle at 80% 20%,#ffc8964d,#0000 60%);content:"";inset:0;pointer-events:none;position:absolute}.admin-statistics .kpi-label{color:#64748b;font-size:12px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.admin-statistics .kpi-value{color:#0f172a;font-size:20px;font-weight:700}.admin-statistics .dist-section{grid-gap:28px;display:grid;gap:28px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.admin-statistics .dist-block{background:#fff;border:1px solid #e2e8f0;border-radius:14px;box-shadow:0 4px 8px -2px #0000000a;display:flex;flex-direction:column;gap:14px;padding:18px 20px}.admin-statistics .dist-block h3{color:#1e293b;font-size:15px;font-weight:600;margin:0}.admin-statistics .mini-bars{display:flex;flex-direction:column;gap:6px}.mini-bar-row{grid-gap:10px;align-items:center;display:grid;font-size:12px;gap:10px;grid-template-columns:70px 1fr 40px}.mini-bar-label{color:#475569;font-weight:500}.mini-bar-track{background:#f1f5f9;border-radius:6px;height:10px;overflow:hidden;position:relative}.mini-bar-fill{background:linear-gradient(90deg,#f59e0b,#f97316);border-radius:6px;bottom:0;left:0;position:absolute;top:0}.mini-bar-value{color:#0f172a;font-weight:600;text-align:right}.admin-statistics .range-hint{color:#64748b;font-size:12px;font-weight:500}.stats-loading{color:#475569;font-size:14px}.stats-error{color:#dc2626;font-weight:600}@media (max-width:600px){.admin-statistics .kpi-cards{grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}.mini-bar-row{grid-template-columns:60px 1fr 34px}}.kpi-groups{gap:28px}.kpi-group,.kpi-groups{display:flex;flex-direction:column}.kpi-group{gap:12px}.kpi-group .group-title{color:#334155;font-size:14px;font-weight:700;letter-spacing:.5px;padding-left:4px;text-transform:uppercase}.kpi-value-row{align-items:center;display:flex;gap:8px}.delta{background:#e2e8f0;border-radius:10px;color:#334155;font-size:11px;font-weight:600;line-height:1.2;padding:2px 6px}.delta.pos{background:#dcfce7;color:#166534}.delta.neg{background:#fee2e2;color:#b91c1c}.delta.neutral{background:#e2e8f0;color:#475569}.kpi-card.utilization{display:flex;flex-direction:column}.utilization-wrapper{align-items:center;display:flex;gap:10px}.util-donut{--u:0;align-items:center;background:conic-gradient(#10b981 calc(var(--u)*1%),#e2e8f0 0);border-radius:50%;color:#0f172a;display:flex;font-size:11px;font-weight:700;height:60px;justify-content:center;position:relative;width:60px}.util-donut:after{background:#fff;border-radius:50%;content:"";inset:6px;position:absolute}.util-donut span{position:relative;z-index:2}.stats-skeleton-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin-top:10px}.kpi-card.skeleton{animation:skeleton 1.2s ease-in-out infinite;background:linear-gradient(90deg,#f1f5f9,#e2e8f0 40%,#f1f5f9 80%);background-size:200% 100%;min-height:88px}.prev-hint{color:#64748b;font-size:12px}@media (max-width:900px){.kpi-groups{gap:40px}}background:#fff;border-radius:12px;box-shadow:0 8px 25px #0000001a;max-width:450px;padding:40px;width:100%}.admin-login-card h2{color:#333;font-size:1.8rem;margin-bottom:30px;text-align:center}.admin-login-form{width:100%}.primary-button{background-color:#000;border-radius:4px;font-family:Andale Mono,monospace;font-size:1rem;font-weight:500;padding:12px;transition:background-color .3s;width:100%}.primary-button:hover{background-color:#333}.primary-button:disabled{background-color:#ccc}.admin-container{background-color:#f8f9fa;font-family:Andale Mono,monospace;min-height:100vh}.admin-header{background:#fff;border-bottom:1px solid #e9ecef;padding:20px 0;position:-webkit-sticky;position:sticky;top:0;z-index:100}.admin-header-content{align-items:center;display:flex;justify-content:space-between;margin:0 auto;max-width:1200px;padding:0 20px}.admin-header h1{color:#333;font-size:1.5rem;font-weight:500;margin:0}.admin-user-info{align-items:center;color:#666;display:flex;gap:15px}.logout-btn{background:#dc3545;border-radius:4px;color:#fff;font-family:inherit;font-size:.9rem;padding:8px 16px;transition:background-color .3s}.logout-btn:hover{background:#c82333}.services-link{background:#17a2b8;border-radius:4px;color:#fff;font-family:inherit;font-size:.9rem;padding:8px 16px;text-decoration:none;transition:background-color .3s}.services-link:hover{background:#138496;color:#fff;text-decoration:none}.admin-content{margin:0 auto;max-width:1200px;padding:20px}.calendar-section{background:#0000;border-radius:0;box-shadow:none;padding:0}.transfer-mode-banner{align-items:center;align-items:stretch;background:#fff3cd;border:1px solid #ffeaa7;border-radius:6px;flex-direction:column;gap:15px;margin-bottom:20px;padding:15px}.transfer-info{gap:5px;text-align:center}.transfer-info span:first-child{color:#856404;font-size:.95rem;font-weight:600}.transfer-instruction{color:#6c757d;font-size:.85rem;font-style:italic}.btn-cancel-transfer{background:#0000;border:1px solid #0003;color:#000;font:inherit;letter-spacing:.08em;padding:10px 16px;transition:background .2s,color .2s,border-color .2s;white-space:nowrap;width:100%}.btn-cancel-transfer:hover{background:#000;border-color:#000;color:#fff}.rounded-list{display:flex;gap:20px;list-style:none;margin-bottom:20px;padding:0}.rounded-list li{align-items:center;display:flex;font-family:Andale Mono,monospace;font-size:.9rem}.rounded-list li i{border-radius:2px;display:inline-block;height:16px;margin-right:8px;width:16px}.rounded-list li i.gray{background-color:#bdbdbd}.rounded-list li i.blue{background-color:#2196f3}.calendar-error,.calendar-loading{font-family:Andale Mono,monospace;padding:40px 20px;text-align:center}.calendar-loading p{color:#666;font-size:1rem}.desktop-calendar{display:block}.mobile-vertical-calendar{box-sizing:border-box;display:none;max-width:100%;overflow:hidden;width:100%}.calendar-wrapper{border-radius:8px;box-shadow:0 2px 10px #0000001a;margin-bottom:2rem;overflow-x:auto;overflow:hidden;position:relative;width:100%}.slot.hour-cell,td.hour-cell{padding:0!important;vertical-align:top}.hour-cell .half-wrapper{display:flex;flex-direction:column;height:100%;min-height:60px;width:100%}.hour-cell .half{align-items:center;background:#fff;border:0!important;box-sizing:border-box;cursor:pointer;display:flex;flex:1 1;font-size:10px;justify-content:center;padding:0!important;position:relative;width:100%}.hour-cell .half+.half{border-top:1px solid #eee}.hour-cell .half.booked{background:#ffd9a6;font-weight:600}.hour-cell .half.booked .len{color:#8a4b00}.hour-cell .half .half-info{display:flex;flex-direction:column;gap:1px;line-height:1.1;max-width:100%;padding:0;text-align:center}.hour-cell .half .phone{max-width:70px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hour-cell .half .len{color:#666;font-size:9px}.hour-cell .half:hover{outline:1px solid #0097a7;z-index:2}.hour-cell .half.booked:hover{outline:1px solid #f57c00}.hour-cell,.hour-cell .half,.hour-cell .half .len,.hour-cell .half .phone,.hour-cell .half-info,.hour-cell .half-wrapper{margin:0!important;padding:0!important}@media (max-width:768px){.mobile-vertical-calendar .hour-cell .half .phone{display:none!important}.mobile-vertical-calendar .hour-cell .half{min-height:32px}.mobile-vertical-calendar .hour-cell .half .len{font-size:10px}}.calendar{background-color:#fff;min-width:800px}.month-nav{align-items:center;background-color:#f5f5f5;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;padding:15px 20px}.month-nav .month-year{font-size:1.1rem;font-weight:600}.days-row{background-color:#f5f5f5;border-bottom:1px solid #e0e0e0;display:flex;margin-left:80px}.day-cell{border-right:1px solid #e0e0e0;color:#333;flex:1 1;font-family:Andale Mono,monospace;font-size:.85rem;font-weight:600;min-width:0;padding:14px 5px;text-align:center}.day-cell:last-child{border-right:none}.day-cell.weekend{color:#666}.day-cell.current-day{background-color:#e8f4fc;color:#2196f3}.time-slots{background-color:#fff}.time-row{border-bottom:1px solid #e0e0e0;display:flex}.time-label{align-items:center;background-color:#f5f5f5;border-right:1px solid #e0e0e0;color:#555;display:flex;font-family:Andale Mono,monospace;font-size:.85rem;font-weight:500;justify-content:center;min-width:80px;padding:18px 8px;width:80px}.slot-cells{padding:0;width:calc(100% - 80px)}.slot,.slot-cells{display:flex;flex:1 1;min-width:0}.slot{align-items:center;border-right:1px solid #e0e0e0;cursor:pointer;justify-content:center;min-height:55px;padding:18px 4px;transition:all .2s ease}.slot:last-child{border-right:none}.slot.available{background-color:#fff}.slot.available:hover{background-color:#f8f9fa}.slot.booked{background-color:#bdbdbd}.slot.booked:hover{background-color:#9e9e9e}.slot .booking-info{text-align:center;width:100%}.slot .client-phone{color:#333;font-size:.7rem;font-weight:500;word-break:break-all}.calendar-content{transition:all .3s ease}.calendar-content.slide-left,.calendar-content.slide-right{transform:translateX(-20px)}.calendar-content.slide-right{transform:translateX(20px)}.calendar-header{align-items:center;display:flex;gap:15px;justify-content:flex-start;padding:15px 20px}.month-year{font-family:Andale Mono,monospace;font-size:1.2rem;font-weight:600;margin-right:auto;text-transform:capitalize}.calendar-controls{align-items:center;display:flex;flex-wrap:wrap;gap:5px}.view-mode-toggle{background:#f5f5f5;border-radius:4px;display:inline-flex;gap:2px;margin-right:8px;padding:2px}.view-mode-toggle .view-btn{background:#0000;border:none;font-size:.85rem;padding:6px 12px;transition:all .2s}.view-mode-toggle .view-btn.active{background:#fff;box-shadow:0 1px 3px #0000001a;font-weight:600}.view-mode-toggle .view-btn:hover:not(.active){background:#ffffff80}.full-hour-toggle{gap:6px;margin:0;padding:0}.full-hour-toggle input[type=checkbox]{height:16px;margin:0;width:16px}.full-hour-toggle .toggle-label{cursor:pointer;font-size:.9rem;font-weight:400;margin:0;white-space:nowrap}@media (max-width:768px){.calendar-header{align-items:stretch;flex-direction:column;gap:10px;padding:10px 12px}.month-year{font-size:1.1rem;margin-right:0;text-align:center}.calendar-controls{flex-wrap:wrap;gap:6px;justify-content:center}.view-mode-toggle{margin-right:4px}.view-mode-toggle .view-btn{font-size:.8rem;padding:5px 8px}.full-hour-toggle .toggle-label{font-size:.8rem}.nav-btn{font-size:.85rem;padding:6px 10px}.multi-select-btn{font-size:.75rem;padding:5px 8px}}@media (max-width:480px){.calendar-header{gap:8px;padding:8px}.month-year{font-size:1rem}.calendar-controls{gap:4px}.view-mode-toggle .view-btn{font-size:.75rem;padding:4px 6px}.full-hour-toggle .toggle-label{font-size:.7rem}.full-hour-toggle input[type=checkbox]{height:14px;width:14px}.nav-btn{font-size:.8rem;padding:5px 8px}.multi-select-btn{font-size:.7rem;padding:4px 6px}}.btn{background-color:#f5f5f5;border:1px solid #ddd;display:inline-block;flex-shrink:0;padding:8px 12px}.btn:hover{background-color:#e0e0e0}.btn.static-label{background:none;border:none;color:#333;cursor:default;font-family:Andale Mono,monospace;font-size:.9rem;padding:8px 12px}.btn.static-label:hover{background:none}.nav-btn{align-items:center;border-radius:50%;display:flex;height:32px;justify-content:center;padding:0;width:32px}.table{border-collapse:collapse;font-family:Andale Mono,monospace;margin:0;width:100%}.table td,.table th{border:1px solid #e0e0e0;min-height:60px;padding:16px;text-align:center;vertical-align:middle}.table th{background-color:#f5f5f5;padding:16px}.time-header{max-width:120px;padding:12px 8px!important;width:100px}.day-header,.time-header{background-color:#f5f5f5;color:#333;font-weight:600;min-width:100px}.day-header{padding:16px!important}.day-header.current-day{background-color:#e3f2fd;color:#1976d2}.time-slot{background-color:#f5f5f5;color:#333;font-size:.9rem;font-weight:600;max-width:120px;min-width:100px;padding:12px 8px!important;width:100px}.available{background-color:#fff;cursor:pointer;min-height:60px;padding:16px;transition:background-color .2s}.available:hover{background-color:#f8f9fa}.booked{background-color:#bdbdbd;cursor:pointer;min-height:25px;padding:0;transition:background-color .2s}.booked:hover{background-color:#9e9e9e}.booking-info{display:flex;flex-direction:column;gap:2px;padding:2px}.client-phone{color:#333;font-size:.75rem;font-weight:500}.modal-overlay{height:100vh;padding:20px;width:100vw}.modal-overlay:has(.modal-content.wide){align-items:center;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);background:#fafafaeb;justify-content:center;padding:32px}.modal-content{border-radius:12px;box-shadow:0 10px 40px #00000026;max-width:560px;padding:0}.modal-content.wide{background:#fff;border:1px solid #0000000f;border-radius:2px;box-shadow:0 1px 3px #00000014;display:flex;flex-direction:column;margin:0;max-height:90vh;max-width:min(1400px,94vw);overflow:hidden;padding:0;position:relative;width:100%}@media (min-width:768px){.modal-content:not(.wide){max-width:1000px}}.booking-details.full-width{box-sizing:border-box;max-width:none;width:100%}.modal-content.wide .booking-details.full-width{max-width:100%;width:100%}@media (min-width:1600px){.booking-details.full-width{grid-template-columns:minmax(0,5.5fr) minmax(380px,.8fr);padding:24px 64px}}@media (min-width:1024px){.booking-details.full-width{grid-gap:20px 32px;display:grid;gap:20px 32px;grid-template-columns:minmax(0,4.5fr) minmax(340px,.9fr);padding:16px 24px}.booking-details.full-width>.modal-actions{background:#0000;border-top:none;display:flex;grid-column:1/-1;justify-content:flex-end;margin-top:0;padding:12px 24px}.booking-details.full-width>.payment-summary,.booking-details.full-width>.refund-section{grid-column:2/3}.booking-details.full-width>.detail-meta-row{grid-column:1/-1}.booking-details.full-width>.detail-item:first-of-type,.booking-details.full-width>.detail-item:nth-of-type(2){display:flex;flex-direction:column;justify-content:center;min-height:72px}}@media (min-width:1400px){.booking-details.full-width{gap:24px 32px;grid-template-columns:minmax(0,5fr) minmax(360px,.85fr);padding:16px 24px}}body.modal-open-locked{height:100vh;overflow:hidden;overscroll-behavior:contain;touch-action:none}.create-booking-form-desktop{position:relative}.create-booking-form-desktop .close-btn{position:absolute;right:16px;top:12px;z-index:10}.create-booking-form-desktop .create-header{padding:8px 0 24px;text-align:center}.create-booking-form-desktop .create-title{color:#111827;font-size:22px;font-weight:600;letter-spacing:.5px;margin:0}.create-booking-form-desktop .create-subline{color:#6b7280;font-size:13px;font-weight:500;margin-top:6px}.selected-slots-box{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;margin-bottom:28px;max-height:210px;overflow-y:auto;padding:14px 16px 16px}.slots-box-title{color:#475569;font-size:12px;font-weight:600;letter-spacing:.6px;margin-bottom:10px;text-transform:uppercase}.selected-slots-list{display:flex;flex-direction:column;gap:6px;list-style:none;margin:0;padding:0}.slot-chip{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:6px;display:flex;font-size:12px;gap:6px;padding:6px 10px}.slot-chip-time{color:#1f2937;font-weight:600}.slot-chip-range{color:#374151;font-family:monospace}.slots-total{color:#334155;font-size:12px;font-weight:600;margin-top:12px}.create-form-grid{grid-gap:28px 36px;display:grid;gap:28px 36px;grid-template-columns:repeat(12,1fr)}.create-form-grid .form-group{display:flex;flex-direction:column;gap:6px}.create-form-grid .form-group label{color:#000;font-size:10px;font-weight:500;letter-spacing:.12em;text-transform:uppercase}.create-form-grid .form-group input{background:#0000;border:1px solid #0000001f;border-radius:0;font-size:14px;padding:12px 14px;transition:.2s}.create-form-grid .form-group input:focus{border-color:#0000004d;box-shadow:none;outline:none}.create-form-grid .form-group input:disabled{background:#0000;color:#0006;cursor:not-allowed}.form-group .field-hint{color:#00000080;font-size:11px;margin-top:2px}.req{color:#000}.span-12{grid-column:span 12}.span-6{grid-column:span 6}.span-3{grid-column:span 3}.span-4{grid-column:span 4}.span-8{grid-column:span 8}@media (max-width:1023px){.span-12-md{grid-column:span 12!important}.span-6-md{grid-column:span 6!important}}@media (max-width:768px){.create-form-grid{gap:20px 20px;grid-template-columns:repeat(6,1fr)}.span-12,.span-12-md,.span-3,.span-4,.span-6,.span-6-md,.span-8{grid-column:span 6!important}}.payment-toggle{position:relative}.payment-toggle .inline-checkbox-label{align-items:center;cursor:pointer;display:flex;font-size:12px;font-weight:600;gap:10px}.payment-toggle input[type=checkbox]{height:18px;width:18px}.amount-field.disabled input{opacity:.45}.technical-group .checkbox-label.large{font-size:13px}.action-bar-sticky{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:linear-gradient(180deg,#ffffffd9,#fff 60%);border-top:1px solid #e2e8f0;bottom:0;display:flex;gap:16px;margin-top:8px;padding:18px 0 8px;position:-webkit-sticky;position:sticky}.action-bar-sticky .btn-cancel,.action-bar-sticky .btn-create{min-width:170px}.modal-header{background:linear-gradient(135deg,#f8f9fa,#fff);border-bottom:2px solid #e9ecef;border-radius:12px 12px 0 0;padding:24px 40px 20px}.modal-header h3{color:#212529;font-size:1.5rem}.close-btn{background:#fff;border:2px solid #dee2e6;border-radius:8px;font-size:1.5rem;font-weight:600;height:36px;transition:all .2s;width:36px}.close-btn:hover{background:#dc3545;border-color:#dc3545;color:#fff;transform:scale(1.05)}.modal-body{padding:30px}.modal-content.wide .modal-body.full{flex:1 1;min-height:0;overflow-y:auto;padding:0}.modal-body.full{padding:32px 0 0}.booking-details{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(2,1fr);position:relative}.modal-content.wide .booking-details{margin:0}.booking-details .close-btn{align-items:center;background:#f8f9fa;border:1px solid #ddd;border-radius:50%;color:#6c757d;cursor:pointer;display:flex;font-size:1.2rem;height:30px;justify-content:center;position:absolute;right:-10px;top:-10px;transition:all .2s;width:30px;z-index:10}.booking-details .close-btn:hover{background:#e9ecef;border-color:#adb5bd;color:#495057}@media (min-width:1024px){.booking-view-root{position:relative}.booking-view-root .full-span{grid-column:1/-1}.booking-view-header{background:#0000;border-bottom:1px solid #0000000f;display:flex;flex-direction:column;gap:14px;margin:-32px -48px 0;padding:24px 48px}.booking-view-title-row{align-items:center;display:flex;flex-wrap:wrap;gap:14px}.booking-view-title{color:#0f172a;font-size:32px;font-weight:700;letter-spacing:-.3px;margin:0}.booking-view-subline{color:#475569;font-family:monospace;font-size:15px;font-weight:500}.badge{align-items:center;background:#0000;border:1px solid #0000001f;border-radius:0;color:#000;display:inline-flex;font-size:10px;font-weight:500;letter-spacing:.12em;padding:4px 10px;text-transform:uppercase;transition:border-color .2s,background .2s}.badge:hover{background:#0000000a;border-color:#0003}.badge.duration,.badge.payment-status.canceled,.badge.payment-status.failed,.badge.payment-status.pending,.badge.payment-status.succeeded,.badge.payment-status.waiting_for_payment{background:#0000;border:1px solid #0000001f;color:#000}.booking-main-panel{display:flex;flex-direction:column;gap:24px;grid-column:1/2}.booking-side-panel{align-self:start;gap:20px;grid-column:2/3;position:-webkit-sticky;position:sticky;top:24px}.booking-side-panel,.side-actions{display:flex;flex-direction:column}.side-actions{gap:12px}.side-actions .w100{font-size:15px;font-weight:600;padding:12px 20px;transition:all .2s;width:100%}.section-card{background:#0000;border:none;border-radius:0;box-shadow:none;display:flex;flex-direction:column;gap:16px;margin-bottom:8px;padding:24px 0;transition:none}.section-card:hover{border-color:#0000;box-shadow:none}.section-card.tight{padding:16px 0}.section-card.meta.compact{gap:8px}.section-card.warning{background:#0000;border-color:#0000}.section-title{border-bottom:none;color:#000;font-size:11px;font-weight:500;letter-spacing:.12em;margin:0;padding-bottom:0;text-transform:uppercase}.section-header-inline{align-items:center;display:flex;justify-content:space-between}.section-grid.two-cols{grid-gap:12px 24px;display:grid;font-size:14px;gap:12px 24px;grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}.section-inline-pairs{display:flex;flex-wrap:wrap;gap:12px 24px}.pair{font-size:14px}.label{color:#000;font-size:11px;font-weight:500;letter-spacing:.12em;text-transform:uppercase}.text-block{color:#000;font-size:14px;line-height:1.6}.text-block.muted{color:#0009}.text-block .placeholder{color:#0006;font-style:italic;font-weight:400}.secondary-text{color:#0009;font-size:12px}.mt8{margin-top:8px}.interval-chip-list{display:flex;flex-wrap:wrap;gap:10px;list-style:none;margin:0;padding:0}.interval-chip{background:#0000;border:1px solid #0000001f;border-radius:0;color:#000;font-family:monospace;font-size:11px;font-weight:500;letter-spacing:.12em;padding:6px 12px;text-transform:uppercase;transition:border-color .2s,background .2s}.interval-chip:hover{background:#0000000a;border-color:#0003}.service-chip-flex{display:flex;flex-wrap:wrap;gap:12px;list-style:none;margin:0;padding:0}.service-chip{align-items:center;background:#0000;border:1px solid #0000001f;border-radius:0;color:#000;display:flex;font-size:11px;font-weight:500;gap:12px;letter-spacing:.08em;padding:8px 14px;text-transform:uppercase;transition:border-color .2s,background .2s}.service-chip:hover{background:#0000000a;border-color:#0003}.service-name{font-weight:500}.service-price{background:#000;border-radius:0;color:#fff;font-size:10px;font-weight:600;letter-spacing:.08em;padding:2px 8px}.customer-comment-section{background:#0000!important;border:1px solid #0000001f!important;box-shadow:none!important}.section-header-with-icon{align-items:center;display:flex;gap:10px;margin-bottom:14px}.comment-icon{display:none}.customer-comment-text{background:#0000;border:none;border-radius:0;color:#000;font-size:14px;font-weight:400;line-height:1.6;padding:12px 0;white-space:pre-wrap;word-break:break-word}.notes-editor textarea{background:#0000;border:1px solid #0000001f;border-radius:0;font:inherit;font-size:14px;min-height:120px;padding:12px 14px;resize:vertical;transition:border-color .2s;width:100%}.notes-editor textarea:focus{border-color:#0000004d;box-shadow:none;outline:none}.notes-editor textarea:disabled{background:#0000;opacity:.5}.notes-actions{display:flex;gap:12px;margin-top:12px}.btn-notes-edit{background:#0000;border:1px solid #0000001f;border-radius:0;color:#000;cursor:pointer;font-size:11px;font-weight:500;letter-spacing:.08em;padding:8px 12px;text-transform:uppercase;transition:.2s}.btn-notes-edit:hover{background:#0000000a;border-color:#0003}.btn-save-note{background:#000;border:none;border-radius:0;box-shadow:none;color:#fff;cursor:pointer;font-size:11px;font-weight:500;letter-spacing:.08em;padding:10px 16px;text-transform:uppercase;transition:all .2s}.btn-save-note:hover{background:#000c}.btn-save-note:disabled{cursor:not-allowed;opacity:.6}.btn-cancel-note{background:#0000;border:1px solid #0000001f;border-radius:0;color:#000;cursor:pointer;font-size:11px;font-weight:500;letter-spacing:.08em;padding:10px 16px;text-transform:uppercase}.btn-cancel-note:hover{background:#0000000a;border-color:#0003}.notes-error{color:#dc2626;font-size:13px;margin-top:8px}.notes-list{display:flex;flex-direction:column;gap:12px;margin-bottom:12px}.note-item{background:#0000;border:1px solid #0000000f;border-left:none;border-radius:0;padding:14px 0;transition:all .2s}.note-item:hover{border-color:#0000001f;box-shadow:none}.note-header{align-items:center;display:flex;gap:12px;justify-content:space-between;margin-bottom:8px}.note-author{background:#0000;border:none;border-radius:0;color:#000;font-size:10px;font-weight:500;letter-spacing:.12em;padding:0;text-transform:uppercase}.note-date{color:#00000080;font-size:10px;font-weight:400;letter-spacing:.08em}.note-text{color:#000;font-size:14px;line-height:1.6;white-space:pre-wrap;word-break:break-word}.meta-row{display:flex;flex-wrap:wrap;font-size:11px;gap:14px 24px}.meta-item{background:#0000;border:none;border-radius:0;font-weight:500;letter-spacing:.08em;padding:6px 0;text-transform:uppercase}.price-row{align-items:center;display:flex;font-size:16px;font-weight:600;justify-content:space-between;padding:8px 0}.price-row:not(:last-child){border-bottom:1px solid #f1f5f9}.status-chip.w100{font-size:14px;justify-content:center;margin-top:8px;padding:10px 16px;width:100%}}.detail-item{background:#0000;border:none;border-bottom:1px solid #0000000f;border-radius:0;display:flex;flex-direction:column;gap:8px;padding:16px 0;transition:all .2s}.detail-item:hover{background:#0000;border-color:#0000001f;box-shadow:none}.detail-item:last-child{border-bottom:1px solid #0000000f}.detail-item strong{color:#000;font-size:10px;font-weight:500;letter-spacing:.12em;text-transform:uppercase}.detail-item span{color:#000;font-size:14px;font-weight:400}.modal-actions{background:#0000;border-radius:0;border-top:1px solid #0000000f;display:flex;gap:12px;margin-top:0;padding:20px 30px}.btn-transfer{border:1px solid #0000001f;margin-bottom:10px;width:100%}.btn-delete,.btn-transfer{font-family:inherit;letter-spacing:.08em;padding:12px 20px;transition:all .2s}.create-booking-form{padding:0;position:relative}@media (min-width:769px){.create-booking-form{grid-gap:20px 30px;display:grid;gap:20px 30px;grid-template-columns:1fr 1fr;padding:10px 0}.create-booking-form>div[style*="background: #f8fafc"],.create-booking-form>p{grid-column:1/-1}.create-booking-form>form{grid-gap:20px 30px;display:grid;gap:20px 30px;grid-column:1/-1;grid-template-columns:1fr 1fr}.create-booking-form form>.form-group{margin-bottom:0}.create-booking-form form>.checkbox-group{grid-column:1/-1;margin-bottom:0}.create-booking-form form>.modal-actions{grid-column:1/-1}}.create-booking-form .close-btn{align-items:center;background:#f8f9fa;border:1px solid #ddd;border-radius:50%;color:#6c757d;cursor:pointer;display:flex;font-size:1.2rem;height:30px;justify-content:center;position:absolute;right:-10px;top:-10px;transition:all .2s;width:30px;z-index:10}.create-booking-form .close-btn:hover{background:#e9ecef;border-color:#adb5bd;color:#495057}.create-booking-form p{color:#333;font-weight:500;margin-bottom:20px}.create-booking-form .form-group{margin-bottom:20px}.create-booking-form .form-group label{color:#212529;display:block;font-size:.95rem;font-size:.85rem;font-weight:600;letter-spacing:.3px;margin-bottom:10px;text-transform:uppercase}.create-booking-form .form-group input[type=text]{background:#0000;border:1px solid #0000001f;border-radius:0;box-sizing:border-box;font-family:Andale Mono,monospace;font-size:14px;padding:12px 14px;transition:all .2s;width:100%}.create-booking-form .form-group input[type=text]:focus{background:#0000;border-color:#0000004d;box-shadow:none;outline:none}.create-booking-form .form-group input[type=text]:disabled{background-color:initial;border-color:#dee2e6;color:#6c757d;cursor:not-allowed}.create-booking-form .checkbox-group{align-items:center!important;display:flex!important;margin-bottom:20px}.create-booking-form .checkbox-label{align-items:center!important;color:#333;cursor:pointer;display:flex!important;font-size:.9rem;margin:0;padding:0;-webkit-user-select:none;user-select:none}.create-booking-form .checkbox-label input[type=checkbox]{height:0!important;margin:0;opacity:0!important;padding:0;position:absolute!important;width:0!important}.create-booking-form .checkmark{background-color:#fff!important;border:2px solid #ddd!important;border-radius:4px!important;display:inline-block!important;flex-shrink:0!important;height:20px!important;margin-right:12px!important;position:relative!important;transition:all .3s ease;vertical-align:middle;width:20px!important}.create-booking-form .checkbox-label:hover .checkmark{border-color:#007bff!important;box-shadow:0 0 0 2px #007bff1a}.create-booking-form .checkbox-label input[type=checkbox]:checked+.checkmark{background-color:#007bff!important;border-color:#007bff!important}.create-booking-form .checkbox-label input[type=checkbox]:checked+.checkmark:after{border:solid #fff!important;border-width:0 3px 3px 0!important;content:""!important;display:block!important;height:12px!important;left:6px!important;position:absolute!important;top:2px!important;transform:rotate(45deg)!important;width:6px!important}.btn-create{background:#000;border:1px solid #0000001f;border-radius:0;box-shadow:none;font-family:inherit;font-size:11px;font-weight:500;letter-spacing:.08em;padding:12px 20px;text-transform:uppercase;transition:all .2s}.btn-create:hover{background:#000c}.btn-cancel{background:#0000;border:1px solid #0000001f;border-radius:0;color:#000;cursor:pointer;font-family:inherit;font-size:11px;font-weight:500;letter-spacing:.08em;padding:12px 20px;text-transform:uppercase;transition:all .2s}.btn-cancel:hover{background:#0000000a;border-color:#0003}.create-booking-form .notice{background:#f8f9fa;border-radius:4px;color:#6c757d;font-style:italic;margin-top:15px;padding:10px}.booking-details>.payment-summary,.booking-details>.refund-section{grid-column:2/3}.booking-details>.refund-section{margin-top:24px}.booking-details>.payment-summary+.refund-section{margin-top:32px}.booking-details>.modal-actions{background:#0000;border-top:none;grid-column:1/-1;justify-content:flex-end;margin-top:8px;padding:8px 0 0}.modal-body{padding:48px 56px 40px}.modal-header{padding:28px 56px 24px}.modal-actions{padding:24px 56px}.booking-summary-section,.detail-meta-row,.payment-summary,.refund-section{background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 2px 6px #0000000a;padding:20px 22px 22px;position:relative}.payment-summary{background:linear-gradient(180deg,#fff,#f9fafb);border-color:#e2e8f0;padding:24px 24px 26px}.payment-summary .amount-main{color:#111827;font-size:15px;font-weight:600;margin-bottom:6px}.payment-summary .status-chip{margin-top:10px}.refund-section{border-color:#f1f5f9}.booking-details>.detail-item{background:#0000;border:none;border-bottom:1px solid #0000000f;border-radius:0;padding:14px 0}.booking-details>.detail-item strong{color:#000;font-size:10px;font-weight:500;letter-spacing:.12em;text-transform:uppercase}.notes-edit-block textarea{font-size:13px!important}.modal-actions .btn-delete,.modal-actions .btn-transfer{font-weight:500;margin-bottom:0;min-width:150px;width:auto}.modal-actions .btn-transfer{background:#000;border:1px solid #0000001f;border-radius:0;box-shadow:none;padding:10px 16px;transition:all .2s}.modal-actions .btn-transfer:hover{background:#000c}.modal-actions .btn-delete{background:#0000;border:1px solid #0000001f;border-radius:0;box-shadow:none;color:#000;padding:10px 16px;transition:all .2s}.modal-actions .btn-delete:hover{background:#0000000a;border-color:#0003}@media (min-width:769px) and (max-width:1023px){.modal-content{max-width:950px!important}}.mb-3{margin-bottom:1rem}.mb-4{margin-bottom:1.5rem}.mb-5{margin-bottom:3rem}.text-left{text-align:left!important}.text-center{text-align:center!important}.desktop-calendar .table tbody{opacity:1;transition:opacity .2s ease-in-out}.desktop-calendar .table tbody.slide-left,.desktop-calendar .table tbody.slide-right{opacity:0}.calendar-content{opacity:1;transition:opacity .2s ease-in-out}.calendar-content.slide-left,.calendar-content.slide-right{opacity:0}.desktop-calendar .table tbody.exit-left tr>td:not(.time-slot){animation:slideOutLeft .3s ease-in-out forwards}.desktop-calendar .table tbody.enter-left tr>td:not(.time-slot){animation:slideInLeft .3s ease-in-out forwards}.desktop-calendar .table tbody.exit-right tr>td:not(.time-slot){animation:slideOutRight .3s ease-in-out forwards}.desktop-calendar .table tbody.enter-right tr>td:not(.time-slot){animation:slideInRight .3s ease-in-out forwards}.calendar-content.exit-left .days-row,.calendar-content.exit-left .slot-cells{animation:slideOutLeft .3s ease-in-out forwards}.calendar-content.enter-left .days-row,.calendar-content.enter-left .slot-cells{animation:slideInLeft .3s ease-in-out forwards}.calendar-content.exit-right .days-row,.calendar-content.exit-right .slot-cells{animation:slideOutRight .3s ease-in-out forwards}.calendar-content.enter-right .days-row,.calendar-content.enter-right .slot-cells{animation:slideInRight .3s ease-in-out forwards}@keyframes slideOutLeft{0%{opacity:1;transform:translateX(0)}to{opacity:0;transform:translateX(-100%)}}@keyframes slideInLeft{0%{opacity:0;transform:translateX(100%)}to{opacity:1;transform:translateX(0)}}@keyframes slideOutRight{0%{opacity:1;transform:translateX(0)}to{opacity:0;transform:translateX(100%)}}@keyframes slideInRight{0%{opacity:0;transform:translateX(-100%)}to{opacity:1;transform:translateX(0)}}.month-year.exit-up{animation:slideOutUp .3s ease-in-out forwards}.month-year.enter-down{animation:slideInDown .5s cubic-bezier(.25,.8,.25,1) forwards}@keyframes slideOutUp{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-20px)}}@keyframes slideInDown{0%{opacity:0;transform:translateY(-20px)}80%{opacity:1;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}.desktop-calendar .time-header,.desktop-calendar .time-slot,.mobile-vertical-calendar .time-label{background-color:#f5f5f5;position:relative;z-index:2}@media (max-width:768px){.desktop-calendar{display:none}.mobile-vertical-calendar{display:block}.admin-header-content{flex-direction:column;gap:10px;text-align:center}.admin-content{padding:15px}.rounded-list{margin-bottom:20px!important}.rounded-list li{font-size:.85rem}.btn{font-size:10px;padding:8px 12px}.btn,.nav-btn{border-radius:0}.nav-btn{height:32px;width:32px}.days-row{margin-left:60px}.time-label{font-size:.75rem;min-width:60px;padding:12px 6px;width:60px}.slot{min-height:45px;padding:12px 2px}.slot .client-phone{font-size:.65rem}.day-cell{font-size:.75rem;min-width:0;padding:10px 3px}.modal-overlay{background:#fff!important;padding:0!important}.modal-overlay:has(.modal-content.wide){backdrop-filter:none!important;-webkit-backdrop-filter:none!important;background:#fff!important;padding:0!important}.modal-content{margin:0;max-width:100%;overflow-y:auto;width:100%}.modal-content,.modal-content.wide{border:none;border-radius:0;box-shadow:none;height:100vh;max-height:100vh}.modal-body,.modal-body.full{height:100%;overflow-y:auto}.modal-header{border-radius:0;padding:16px}.modal-header h3{font-size:1rem}.close-btn{font-size:1.3rem;height:32px;width:32px}.modal-body{padding:16px}.booking-details{gap:8px;grid-template-columns:1fr}.detail-item{padding:8px 0}.modal-actions{background:#0000;border-radius:0;border-top:1px solid #00000014;flex-direction:column;gap:8px;padding:16px}.btn-cancel,.btn-create,.btn-delete,.btn-transfer{font-size:10px;margin-bottom:0;padding:10px 16px;width:100%}.booking-view-header{background:#0000!important;border-bottom:1px solid #00000014!important;margin-bottom:24px;padding:16px 0}.booking-view-title{color:#000!important;font-size:24px!important;font-weight:300!important;margin-bottom:8px!important}.booking-view-subline{color:#00000080!important;font-size:12px!important;font-weight:400!important}.booking-view-title-row{gap:8px}.badge{border:1px solid #0000001f;border-radius:0!important;box-shadow:none!important;font-size:9px!important;font-weight:500!important;letter-spacing:.08em;padding:3px 8px!important}.booking-view-content{background:#0000!important;gap:16px!important;grid-template-columns:1fr!important;padding:16px!important}.booking-main-panel{gap:16px}.booking-side-panel{gap:16px;position:static!important}.section-card{background:#0000!important;border:none!important;border-radius:0!important;box-shadow:none!important;margin-bottom:8px!important;padding:16px 0!important}.section-card:last-child{margin-bottom:0!important}.section-title{border-bottom:none!important;color:#0006!important;font-size:10px!important;font-weight:500!important;letter-spacing:.12em;margin-bottom:12px!important;padding-bottom:0!important;text-transform:uppercase}.text-block{background:#0000!important;border:none!important;border-radius:0!important;margin:8px 0!important;padding:12px 0!important}.label-value{padding:8px 0!important}.label-value,.label-value:last-child{border-bottom:none!important}.label{color:#0000008c!important;font-size:9px;letter-spacing:.14em;margin-bottom:0!important;text-transform:uppercase}.detail-value,.label{display:inline!important;font-weight:500!important}.detail-value{color:#000!important;font-size:9px!important}.section-header-inline{align-items:flex-start!important;flex-direction:column;gap:10px}.btn-notes-edit{font-size:13px!important;width:100%}.detail-value,.label-value,.text-block{font-size:14px!important;line-height:1.5!important}.label{font-size:13px!important}.interval-chip,.service-chip{border-radius:10px!important;box-shadow:0 2px 6px #0000001a!important;font-size:13px!important;margin:6px 0!important;padding:10px 14px!important}.interval-chip{background:linear-gradient(135deg,#fef3c7,#fde68a)!important;border:2px solid #fbbf24!important}.service-chip{background:linear-gradient(135deg,#e0e7ff,#c7d2fe)!important;border:2px solid #818cf8!important}.interval-time{font-size:13px!important}.service-price{font-size:12px!important;padding:3px 10px!important}.customer-comment-section{background:linear-gradient(135deg,#fffbeb,#fef3c7)!important;border:3px solid #fbbf24!important;box-shadow:0 6px 16px #fbbf244d!important;margin:0!important}.section-header-with-icon{border-bottom:2px solid #fde047;margin-bottom:12px;padding-bottom:12px}.comment-icon{font-size:22px!important}.customer-comment-text{background:#ffffffb3!important;border:2px solid #fde047!important;border-radius:10px!important;font-size:14px!important;line-height:1.6!important;padding:14px 16px!important}.notes-list{gap:12px}.note-item{background:linear-gradient(135deg,#f8fafc,#eff6ff)!important;border:2px solid #bfdbfe!important;border-left:5px solid #3b82f6!important;border-radius:10px!important;box-shadow:0 3px 8px #3b82f626!important;padding:14px 16px!important}.note-header{align-items:flex-start!important;border-bottom:1px solid #dbeafe;flex-direction:column;gap:8px!important;margin-bottom:10px;padding-bottom:10px}.note-author{background:linear-gradient(135deg,#dbeafe,#bfdbfe)!important;border:2px solid #93c5fd!important;border-radius:8px!important;font-size:12px!important;font-weight:700!important;padding:4px 10px!important}.note-date{color:#64748b!important;font-size:11px!important;font-weight:500!important}.note-text{color:#1e293b!important;font-size:13px!important;line-height:1.6!important}.notes-editor textarea{font-size:14px!important;min-height:100px!important;padding:10px 12px!important}.notes-actions{flex-direction:column;gap:8px}.btn-cancel-note,.btn-save-note{font-size:13px!important;padding:10px 16px!important;width:100%}.payment-summary{background:linear-gradient(135deg,#fffbeb,#fef3c7)!important;border:2px solid #fbbf24!important;border-radius:12px!important;box-shadow:0 4px 10px #fbbf2433!important;padding:18px!important}.price-row{border-bottom:1px solid #fde68a!important;font-size:14px!important;padding:8px 0!important}.price-row:last-child{border-bottom:none!important;border-top:2px solid #fbbf24!important;font-size:16px!important;font-weight:700!important;margin-top:8px!important;padding-top:12px!important}.price-label{font-size:14px!important;font-weight:600!important}.price-value{font-size:14px!important;font-weight:700!important}.status-chip{border-radius:999px!important;box-shadow:0 2px 6px #0000001f!important;font-size:13px!important;font-weight:700!important;margin:8px 0!important;padding:8px 16px!important}.refund-section{background:#f8fafc!important;border:2px solid #cbd5e1!important;border-radius:12px!important;padding:18px!important}.refund-option{background:#fff!important;border:2px solid #e2e8f0!important;border-radius:10px!important;box-shadow:0 2px 6px #00000014!important;font-size:14px!important;margin:8px 0!important;padding:14px 16px!important}.refund-option:hover{background:#eff6ff!important;border-color:#3b82f6!important}.refund-option-text{font-size:14px!important;font-weight:600!important}.refund-option-amount{background:#dbeafe!important;border-radius:6px!important;color:#1e40af!important;font-size:13px!important;font-weight:700!important;padding:4px 12px!important}.side-actions{gap:12px;margin-top:8px}.btn-delete,.btn-transfer{border:none!important;border-radius:10px!important;box-shadow:0 4px 10px #00000026!important;font-size:15px!important;font-weight:700!important;padding:14px 20px!important;transition:all .2s!important}.btn-transfer{background:linear-gradient(135deg,#3b82f6,#2563eb)!important}.btn-delete{background:linear-gradient(135deg,#ef4444,#dc2626)!important}.btn-delete:active,.btn-transfer:active{box-shadow:0 2px 6px #0003!important;transform:scale(.98)!important}.meta-row{flex-direction:column;gap:10px!important}.meta-item{font-size:13px!important;padding:8px 12px!important}.section-grid.two-cols{gap:12px!important;grid-template-columns:1fr!important}}@media (max-width:480px){.mobile-vertical-calendar{margin:0}.rounded-list{margin:0 0 20px!important}.month-nav{padding:12px 15px}.days-row{margin-left:50px}.time-label{font-size:.7rem;min-width:50px;padding:10px 3px;width:50px}.slot{min-height:40px;padding:10px 1px}.slot .client-phone{font-size:.6rem}.day-cell{font-size:.7rem;padding:8px 2px}.modal-overlay{background:#fff!important;padding:0!important}.modal-overlay:has(.modal-content.wide){backdrop-filter:none!important;-webkit-backdrop-filter:none!important;background:#fff!important;padding:0!important}.modal-content{border:none!important;border-radius:0!important;box-shadow:none!important;height:100vh;margin:0!important;max-height:100vh;width:100%}.booking-view-header{padding:14px!important}.booking-view-title{font-size:18px!important}.booking-view-subline{font-size:12px!important}.booking-view-content{gap:12px!important}.booking-view-content,.section-card{padding:12px!important}.section-title{font-size:15px!important;margin-bottom:10px!important}.badge{font-size:11px!important;padding:4px 10px!important}.label-value,.text-block{font-size:13px!important}.interval-chip,.service-chip{font-size:12px!important;padding:6px 10px!important}.customer-comment-text{font-size:13px!important}.customer-comment-text,.note-item{padding:10px 12px!important}.note-text{font-size:12px!important}.btn-delete,.btn-transfer{font-size:13px!important;padding:10px 16px!important}.payment-summary,.refund-section{padding:12px!important}.price-row{font-size:13px!important}.status-chip{font-size:12px!important;padding:6px 12px!important}}.btn-create-admin,.btn-create-price{background:#28a745;border:none;border-radius:4px;color:#fff;cursor:pointer;font-family:Andale Mono,monospace;font-size:.9rem;padding:10px 20px;transition:background-color .3s}.btn-create-admin:hover,.btn-create-price:hover{background:#218838}.prices-info{background:#e3f2fd;border:1px solid #bbdefb;border-radius:4px;color:#1565c0;font-size:.9rem;margin-bottom:20px;padding:15px}.clients-stats{align-items:center;color:#666;display:flex;font-size:.9rem;gap:20px}.admin-role{border-radius:4px;font-size:.8rem;font-weight:500;padding:4px 8px}.admin-role.admin{background:#d4edda;color:#155724}.admin-role.super{background:#f8d7da;color:#721c24}.pagination{align-items:center;border-top:1px solid #e9ecef;display:flex;flex-wrap:wrap;gap:15px;justify-content:space-between;margin-top:20px;padding:20px 0}.pagination-info{color:#666;font-family:Andale Mono,monospace;font-size:.9rem}.pagination-controls{align-items:center;display:flex;flex-wrap:wrap;gap:5px}.pagination-pages{display:flex;gap:2px}.pagination-btn{background:#f8f9fa;border:1px solid #ddd;border-radius:4px;color:#333;cursor:pointer;font-family:Andale Mono,monospace;font-size:.85rem;padding:8px 12px;transition:all .3s}.pagination-btn:hover:not(:disabled){background:#e9ecef}.pagination-btn.active{background:#007bff;border-color:#007bff;color:#fff}.pagination-btn:disabled{background:#f8f9fa;color:#6c757d;cursor:not-allowed;opacity:.6}@media (max-width:768px){.studio-selector-content{align-items:flex-start;flex-direction:column;gap:15px}.studio-buttons{align-items:center;flex-direction:column;gap:10px;justify-content:center;width:100%}.studio-btn{flex:1 1;justify-content:center;min-width:120px}.tab-list{flex-wrap:wrap;overflow-x:auto}.tab-button{min-width:100px;padding:12px 15px}.pagination{flex-direction:column;gap:10px}.pagination-controls{flex-wrap:wrap;justify-content:center}}.desktop-calendar .table tbody tr:has(td.day-header:only-of-type) .time-header,.desktop-calendar .table tbody tr:has(td.day-header:only-of-type)~tr .time-slot{max-width:80px!important;min-width:80px!important;width:80px!important}.week-calendar.day-view .time-header,.week-calendar.day-view .time-slot{max-width:100px!important;min-width:100px!important;padding:12px 8px!important;width:100px!important}.week-calendar.day-view .day-header{min-width:200px;width:auto!important}@media (max-width:768px){.admins-table-container,.clients-table-container,.prices-table-container,.services-table-container{border:none;border-radius:0;overflow:visible}.admins-table thead,.clients-table thead,.prices-table thead,.services-table thead{display:none}.admins-table,.clients-table,.prices-table,.services-table{border:none;box-shadow:none}.admins-table tbody,.clients-table tbody,.prices-table tbody,.services-table tbody{display:block}.admins-table tbody tr,.clients-table tbody tr,.prices-table tbody tr,.services-table tbody tr{background:#fff;border:1px solid #e9ecef;border-radius:8px;box-shadow:0 2px 8px #0000001a;display:block;margin-bottom:16px;padding:16px}.admins-table tbody tr:hover,.clients-table tbody tr:hover,.prices-table tbody tr:hover,.services-table tbody tr:hover{background:#fff;box-shadow:0 4px 12px #00000026;transform:translateY(-2px);transition:all .2s ease}.admins-table td,.clients-table td,.prices-table td,.services-table td{border:none;display:block;min-height:30px;padding:8px 0 8px 35%;position:relative;text-align:left}.services-table td:first-child:before{content:"ID: "}.services-table td:nth-child(2):before{content:"Название: "}.services-table td:nth-child(3):before{content:"Цена: "}.services-table td:nth-child(4):before{content:"Описание: "}.services-table td:nth-child(5):before{content:"Действия: "}.prices-table td:first-child:before{content:"ID: "}.prices-table td:nth-child(2):before{content:"Цена за час: "}.prices-table td:nth-child(3):before{content:"Цена за полчаса: "}.prices-table td:nth-child(4):before{content:"Создано: "}.prices-table td:nth-child(5):before{content:"Обновлено: "}.prices-table td:nth-child(6):before{content:"Действия: "}.clients-table td:first-child:before{content:"ID: "}.clients-table td:nth-child(2):before{content:"Имя: "}.clients-table td:nth-child(3):before{content:"Телефон: "}.clients-table td:nth-child(4):before{content:"Последнее бронирование: "}.clients-table td:nth-child(5):before{content:"Всего бронирований: "}.admins-table td:first-child:before{content:"ID: "}.admins-table td:nth-child(2):before{content:"Имя: "}.admins-table td:nth-child(3):before{content:"Логин: "}.admins-table td:nth-child(4):before{content:"Права: "}.admins-table td:nth-child(5):before{content:"Дата создания: "}.admins-table td:nth-child(6):before{content:"Действия: "}.admins-table td:before,.clients-table td:before,.prices-table td:before,.services-table td:before{color:#666;font-size:.85rem;font-weight:600;left:0;position:absolute;width:30%}.actions-cell{margin-top:12px;padding-left:0!important}.actions-cell:before{display:none}.actions-cell button{border-radius:6px;display:block;font-size:.9rem;margin:0 0 8px;padding:10px;width:100%}.actions-cell button:last-child{margin-bottom:0}.admins-table td:first-child,.clients-table td:first-child,.prices-table td:first-child,.services-table td:first-child{color:#007bff;font-size:.9rem;font-weight:600}.admins-table td:nth-child(2),.clients-table td:nth-child(2),.services-table td:nth-child(2){color:#333;font-size:1rem;font-weight:600}.prices-table td:nth-child(2),.prices-table td:nth-child(3),.services-table td:nth-child(3){color:#28a745;font-size:1rem;font-weight:600}.services-table td:nth-child(4){color:#666;font-size:.9rem;line-height:1.4}.prices-table td:nth-child(4),.prices-table td:nth-child(5){color:#666;font-size:.9rem}}@media (max-width:480px){.admins-table tbody tr,.clients-table tbody tr,.prices-table tbody tr,.services-table tbody tr{margin-bottom:12px;padding:12px}.admins-table td,.clients-table td,.prices-table td,.services-table td{font-size:.85rem;padding:6px 0 6px 35%}.admins-table td:before,.clients-table td:before,.prices-table td:before,.services-table td:before{font-size:.8rem}.actions-cell button{font-size:.85rem;padding:8px}}.admin-photographers{max-width:1000px}.admin-photographers .admin-header{align-items:center;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;margin-bottom:30px;padding-bottom:15px}.admin-photographers .admin-header h2{color:#333;font-family:Andale Mono,monospace;font-size:1.5rem;margin:0}.add-button{background:#007bff;border:none;border-radius:6px;color:#fff;cursor:pointer;font-family:Andale Mono,monospace;font-size:.95rem;padding:10px 20px;transition:background .2s ease}.add-button:hover:not(:disabled){background:#0056b3}.add-button:disabled{background:#ccc;cursor:not-allowed}.photographer-form{background:#f8f9fa;border:1px solid #e0e0e0;border-radius:8px;margin-bottom:20px;padding:20px}.photographer-form h3{color:#333;font-family:Andale Mono,monospace;font-size:1.2rem;margin:0 0 15px}.form-row{align-items:flex-end;display:flex;flex-wrap:wrap;gap:15px}.form-row input{border:1px solid #ddd;border-radius:4px;flex:1 1;font-family:Andale Mono,monospace;font-size:.95rem;min-width:200px;padding:10px}.form-row input:focus{border-color:#007bff;outline:none}.save-button{background:#28a745;border:none;border-radius:4px;color:#fff;cursor:pointer;font-family:Andale Mono,monospace;font-size:.9rem;padding:10px 15px;transition:background .2s ease}.save-button:hover{background:#218838}.cancel-button{background:#6c757d;border:none;border-radius:4px;color:#fff;cursor:pointer;font-family:Andale Mono,monospace;font-size:.9rem;padding:10px 15px;transition:background .2s ease}.cancel-button:hover{background:#5a6268}.photographers-list{display:flex;flex-direction:column;gap:15px}.photographer-item{background:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:20px;transition:box-shadow .2s ease}.photographer-item:hover{box-shadow:0 2px 8px #0000001a}.photographer-info{align-items:center;display:flex;justify-content:space-between}.photographer-details h4{color:#333;font-family:Andale Mono,monospace;font-size:1.2rem;margin:0 0 5px}.photographer-price{color:#007bff;font-family:Andale Mono,monospace;font-size:1.1rem;font-weight:500;margin:5px 0}.photographer-meta{color:#6c757d;font-family:Andale Mono,monospace;font-size:.85rem;margin:5px 0 0}.photographer-actions{display:flex;gap:10px}.edit-button{background:#ffc107;border:none;border-radius:4px;color:#212529;cursor:pointer;font-family:Andale Mono,monospace;font-size:.9rem;padding:8px 15px;transition:background .2s ease}.edit-button:hover{background:#e0a800}.delete-button{background:#dc3545;border:none;border-radius:4px;color:#fff;cursor:pointer;font-family:Andale Mono,monospace;font-size:.9rem;padding:8px 15px;transition:background .2s ease}.delete-button:hover{background:#c82333}.empty-state{background:#f8f9fa;border:1px dashed #ddd;border-radius:8px;text-align:center}.empty-state,.loading{color:#6c757d;font-family:Andale Mono,monospace;font-size:1.1rem;padding:40px 20px}@media (max-width:768px){.admin-photographers .admin-header{gap:15px}.admin-photographers .admin-header,.form-row{align-items:stretch;flex-direction:column}.form-row input{min-width:auto}.photographer-info{align-items:stretch;flex-direction:column;gap:15px}.photographer-actions{justify-content:center}}.stats-dashboard{background:#f8f9fa;border:1px solid #e2e8f0;border-radius:6px;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;padding:20px 24px}.stats-toolbar{align-items:center;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;margin-bottom:18px}.stats-toolbar-right{align-items:center;display:flex;gap:12px}.info-tabs,.period-tabs{display:flex;gap:4px}.itab,.ptab{background:#fff;border:1px solid #d1d5db;border-radius:4px;cursor:pointer;font-size:13px;line-height:1.2;padding:6px 14px}.itab.active,.ptab.active{background:#2563eb;border-color:#2563eb;color:#fff}.itab:hover:not(.active),.ptab:hover:not(.active){background:#f1f5f9}.metric-grid{grid-gap:4px;display:grid;gap:4px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:16px}.metric-grid.secondary{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.metric-card{background:#fff;border:1px solid #e2e8f0;border-radius:4px;display:flex;flex-direction:column;gap:6px;min-height:90px;padding:14px 16px;position:relative}.metric-card .m-label{color:#475569;font-size:11px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.metric-card .m-value{color:#111827;font-size:34px;font-weight:600;line-height:1}.m-value-row{align-items:center;display:flex;gap:8px}.delta{line-height:1.1}.metric-card .m-foot{color:#64748b;font-size:11px;margin-top:auto}.chart-block{background:#fff;border:1px solid #e2e8f0;border-radius:4px;margin-bottom:18px;overflow:auto;padding:6px 8px 12px}.area-chart-wrapper{overflow:auto;width:100%}.area-chart-svg{display:block}.interactive-chart-wrapper{overflow:hidden;position:relative;width:100%}.interactive-chart-wrapper.full{width:100%}.multi-chart-svg{background:linear-gradient(#fff,#f8fafc);border-radius:6px}.multi-chart-svg path{transition:stroke .25s ease,opacity .25s}.chart-toggles label input{accent-color:#2563eb}.multi-chart-svg text{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}.multi-chart-svg .grid-line line{stroke:#e2e8f0}.chart-toggles{display:flex;flex-wrap:wrap;font-size:12px;gap:14px;padding:4px 6px 10px}.chart-toggles label{align-items:center;cursor:pointer;display:flex;gap:4px;-webkit-user-select:none;user-select:none}.chart-toggles label .lg-dot{border-radius:50%;box-shadow:0 0 0 2px #fff,0 0 0 1px #00000026;height:12px;position:relative;width:12px}.chart-toggles label .lg-dot.rev{background:#2563eb}.chart-toggles label .lg-dot.book{background:#0d9488}.chart-toggles label .lg-dot.canc{background:#dc2626}.chart-toggles label .lg-dot.cum{background:#9333ea}.chart-toggles label:not(.active) .lg-dot{filter:grayscale(.4) brightness(.85);opacity:.6}.chart-toggles label input{position:relative;top:1px}.chart-toggles label .lg-text{font-weight:500;letter-spacing:.2px}.brush-apply{align-items:center;display:flex;font-size:12px;gap:12px;margin-top:6px}.brush-apply button{background:#2563eb;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:12px;padding:4px 10px}.brush-apply button:last-child{background:#e2e8f0;color:#334155}.brush-apply button:hover{opacity:.9}.highlight-range{pointer-events:none}.chart-tooltip{left:14px;min-width:150px;top:10px}.chart-block{position:relative}.chart-tooltip{background:#1e293b;border-radius:6px;box-shadow:0 4px 12px -2px #00000040;color:#fff;font-size:12px;min-width:140px;padding:8px 10px;pointer-events:none;position:absolute;right:12px;top:8px}.chart-tooltip .ct-date{font-weight:600;margin-bottom:4px}.chart-tooltip.pretty{background:#fff;border:1px solid #e2e8f0;border-radius:10px;box-shadow:0 6px 18px -4px #0000002e;color:#0f172a;min-width:190px;padding:10px 14px}.chart-tooltip.pretty .ct-header{display:flex;flex-direction:column;margin-bottom:6px}.chart-tooltip.pretty .ct-date{color:#1e293b;font-size:13px;font-weight:600;margin:0 0 2px}.chart-tooltip.pretty .ct-sub{color:#64748b;font-size:11px}.chart-tooltip.pretty .ct-metrics{display:flex;flex-direction:column;gap:4px}.chart-tooltip.pretty .ct-row{align-items:center;display:flex;font-size:12px;gap:6px}.chart-tooltip.pretty .ct-row.subtle{font-size:11.5px;opacity:.75}.chart-tooltip.pretty .m-dot{border-radius:50%;box-shadow:0 0 0 2px #fff;height:10px;width:10px}.m-dot.revenue{background:#2563eb}.m-dot.bookings{background:#0d9488}.m-dot.canceled{background:#dc2626}.m-dot.cumulative{background:#9333ea}.m-dot.ratio{background:linear-gradient(45deg,#dc2626,#f59e0b)}.chart-tooltip.pretty .m-name{color:#334155;flex:1 1}.chart-tooltip.pretty .m-val{font-feature-settings:"tnum";color:#0f172a;font-variant-numeric:tabular-nums;font-weight:600}.empty-chart{color:#64748b;font-size:13px;padding:20px}.stats-error{margin-bottom:12px}@media (max-width:800px){.metric-card .m-value{font-size:26px}}.services-breakdown{background:#fff;border:1px solid #e2e8f0;border-radius:4px;margin-top:12px;padding:16px 18px}.services-head{align-items:center;display:flex;flex-wrap:wrap;gap:8px;justify-content:space-between;margin-bottom:12px}.services-head h3{font-size:15px;font-weight:600;margin:0}.services-totals{color:#475569;font-size:12px}.format-table-wrapper{overflow:auto}.format-table{border-collapse:collapse;font-size:13px;width:100%}.format-table td,.format-table th{border-bottom:1px solid #f1f5f9;padding:8px 10px;text-align:left;white-space:nowrap}.format-table th{cursor:pointer;font-weight:600;position:-webkit-sticky;position:sticky;top:0}.format-table tbody tr:hover,.format-table th{background:#f8fafc}.pct-bar{background:#f1f5f9;border-radius:5px;height:10px;position:relative;width:120px}.pct-bar span{background:linear-gradient(90deg,#2563eb,#4f46e5);border-radius:5px;bottom:0;left:0;position:absolute;top:0}.month-switcher{align-items:center;display:flex;font-size:13px;gap:8px;margin:4px 4px 10px}.month-switcher.small{margin:2px 4px 8px}.month-switcher.compact{margin:0 4px 10px}.ms-btn{align-items:center;background:#fff;border:1px solid #d1d5db;border-radius:6px;color:#334155;cursor:pointer;display:flex;font-size:16px;font-weight:600;height:30px;justify-content:center;padding:0;transition:all .16s;width:30px}.ms-btn:hover{background:#f1f5f9}.ms-btn:active{background:#e2e8f0;transform:translateY(1px)}.ms-label{color:#1e293b;font-weight:600;letter-spacing:.3px;min-width:120px;text-align:center}@media (max-width:640px){.ms-label{font-size:12px;min-width:100px}.ms-btn{font-size:15px;height:26px;width:26px}}.studio-selector{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}.studio-btn{background:#fff;border:2px solid #cbd5e1;border-radius:30px;box-shadow:0 1px 2px #0000000a;color:#334155;cursor:pointer;font-size:13px;font-weight:600;padding:6px 14px;transition:all .18s}.studio-btn:hover{background:#f1f5f9}.studio-btn.active{background:#f0f9ff;box-shadow:0 0 0 3px #38bdf840}.studio-btn.ghost{border-style:dashed}.multi-studio-chart{margin-top:8px;position:relative}.studio-chart-legend{display:flex;flex-wrap:wrap;gap:14px;margin-top:6px}.studio-legend-item{align-items:center;color:#334155;display:inline-flex;font-size:12px;font-weight:500;gap:6px}.studio-dot{border-radius:50%;box-shadow:0 0 0 2px #fff,0 0 0 1px #00000026;height:14px;width:14px}.comparison-table-wrapper{margin-top:18px;overflow:auto}.comparison-table{border-collapse:collapse;font-size:13px;width:100%}.comparison-table th{background:#f1f5f9;border-bottom:1px solid #e2e8f0;color:#334155;font-weight:600;padding:8px 10px;text-align:left}.comparison-table td{border-bottom:1px solid #f1f5f5;padding:6px 10px}.comparison-table tbody tr:hover{background:#f8fafc}.chart-block.multi{margin-top:26px}.chart-block-head{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.chart-block-head h4{color:#334155;font-size:15px;font-weight:600;margin:0}.studio-legend-item.clickable{cursor:pointer;-webkit-user-select:none;user-select:none}.studio-legend-item.hidden{opacity:.35;text-decoration:line-through}.studio-hover-tooltip{animation:fadeIn .15s ease-out;background:#fff;border:1px solid #e2e8f0;border-radius:8px;box-shadow:0 4px 14px #0000001f;font-size:12px;line-height:1.35;min-width:160px;padding:10px 12px;pointer-events:none;position:absolute;right:8px;top:8px}.studio-hover-tooltip .sht-date{color:#1e293b;font-size:12.5px;font-weight:600;margin-bottom:6px}.studio-hover-tooltip .sht-row{align-items:center;display:flex;gap:8px;justify-content:space-between}.studio-hover-tooltip .sht-row+.sht-row{margin-top:4px}.studio-hover-tooltip .dot{border-radius:50%;display:inline-block;height:10px;margin-right:4px;width:10px}.studio-hover-tooltip .lab{color:#334155;flex:1 1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.studio-hover-tooltip .val{font-feature-settings:"tnum";color:#0f172a;font-variant-numeric:tabular-nums;font-weight:500}.studio-hover-tooltip.pretty{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 6px 20px -6px #0000002e;padding:12px 14px}.studio-hover-tooltip.pretty .sht-head{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:6px}.studio-hover-tooltip.pretty .sht-date{color:#1e293b;font-size:13px;font-weight:600;margin:0}.studio-hover-tooltip.pretty .sht-sub{color:#64748b;font-size:11px}.studio-hover-tooltip.pretty .sht-rows{display:flex;flex-direction:column;gap:4px}.studio-hover-tooltip.pretty .sht-row{font-size:12px}.studio-hover-tooltip.pretty .sht-row.total{border-top:1px solid #f1f5f9;font-weight:600;margin-top:4px;padding-top:4px}.studio-hover-tooltip.pretty .dot.total{background:linear-gradient(135deg,#6366f1,#2563eb)}.multi-chart-svg .ms-line{transition:opacity .25s ease}.multi-studio-chart:hover .ms-line{opacity:.55}.multi-studio-chart:hover .ms-line:hover{opacity:1}.crosshair circle,.crosshair line{pointer-events:none}@keyframes fadeIn{0%{opacity:0;transform:translateY(2px)}to{opacity:1;transform:translateY(0)}}@media (max-width:820px){.studio-btn{font-size:12px;padding:5px 12px}.comparison-table td,.comparison-table th{padding:6px 8px}}@media (max-width:560px){.studio-selector{gap:6px}.studio-btn{padding:5px 10px}.studio-chart-legend{gap:10px}.comparison-table{font-size:12px}}.client-section{padding:24px 0!important;padding:var(--space-4) 0!important}.client-grid{display:flex;flex-wrap:wrap;gap:10px;margin:0;padding:0}.field-row{align-items:center;background:#0000;border:1px solid #0000001f;border:1px solid var(--c-border);border-radius:0;display:inline-flex;gap:6px;letter-spacing:.12em;line-height:1.2;padding:6px 12px;text-transform:uppercase}.field-row,.field-row .label{font-size:11px;font-weight:500}.field-row .label{letter-spacing:.14em;margin:0;opacity:.55}.field-value{color:#000;color:var(--c-text);font-size:11px;font-weight:500;letter-spacing:.05em;text-transform:none}.field-value .placeholder{font-style:italic;font-weight:400;letter-spacing:0;opacity:.45}.contact-value{display:inline-flex;flex-wrap:wrap;gap:6px}.contact-link{border-bottom:1px solid #0000;color:#000;color:var(--c-text);letter-spacing:.12em;padding:0 0 2px;position:relative;text-transform:uppercase;transition:border-color .15s}.contact-link:hover{border-color:#00000047;border-color:var(--c-border-strong)}.link-secondary{border:1px solid #0000001f;border:1px solid var(--c-border);font-size:10px;letter-spacing:.12em;line-height:1;padding:2px 6px;text-transform:uppercase}.link-secondary:hover{background:#0000000a;border-color:#00000047;border-color:var(--c-border-strong)}:root{--c-text:#000;--c-border:#0000001f;--c-border-strong:#00000047;--space-1:4px;--space-2:8px;--space-3:16px;--space-4:24px;--space-5:32px;--font-label:11px;--font-badge:11px}.booking-view-root :focus-visible{outline:2px solid #000;outline:2px solid var(--c-text);outline-offset:2px}.booking-view-title-row .booking-id{align-items:center;background:#0000;border:1px solid #0000001f;border:1px solid var(--c-border);border-radius:0;color:#000;color:var(--c-text);display:inline-flex;font-size:11px;font-size:var(--font-badge);font-weight:500;gap:4px;letter-spacing:.12em;padding:4px 10px;text-transform:uppercase}.booking-view-root .divider,.booking-view-root .section-separator,.booking-view-root hr{background:#0000;border:0;border-top:1px solid #0000001f;border-top:1px solid var(--c-border);height:0;margin:24px 0}.booking-view-root .payment-link-box,.booking-view-root .payment-summary,.booking-view-root .refund-section{background:#0000!important;border:none!important;border-radius:0!important;box-shadow:none!important;margin-bottom:8px!important;padding:16px 0!important}.booking-view-root .status-chip,.booking-view-root .status-chip.danger,.booking-view-root .status-chip.neutral,.booking-view-root .status-chip.success{align-items:center;background:#0000!important;border:1px solid #0000001f!important;border:1px solid var(--c-border)!important;border-radius:0!important;box-shadow:none!important;color:#000!important;color:var(--c-text)!important;display:inline-flex;font-size:11px!important;font-size:var(--font-badge)!important;font-weight:500!important;gap:6px;letter-spacing:.12em;padding:4px 10px;text-transform:uppercase}.booking-view-root .status-chip.neutral:before{content:"\25C7"}.booking-view-root .status-chip.danger:before{content:"\25B3"}.booking-view-root .status-chip.success:before{content:"\25A0"}.booking-view-root .booking-interval,.booking-view-root .interval-badge,.booking-view-root .interval-chip,.booking-view-root .payment-rest-box,.booking-view-root .rest-due,.booking-view-root .rest-to-pay,.booking-view-root .selected-interval,.booking-view-root .time-interval-pill{background:#0000!important;border:1px solid #0000001f!important;border:1px solid var(--c-border)!important;border-radius:0!important;box-shadow:none!important;color:#000!important;color:var(--c-text)!important;font-size:11px!important;font-size:var(--font-badge)!important;font-weight:500!important;letter-spacing:.12em;padding:4px 10px!important;text-transform:uppercase}.booking-view-root .contact-block a,.booking-view-root .contact-block span,.booking-view-root .contact-pill,.booking-view-root .email-display,.booking-view-root .email-pill,.booking-view-root .phone-display,.booking-view-root .phone-pill{background:#0000!important;border:none!important;border-radius:0!important;box-shadow:none!important;color:#000!important;color:var(--c-text)!important;font-size:14px!important;font-weight:400!important;padding:0!important}.booking-view-root .btn-manual-paid,.booking-view-root .btn-mark-paid,.booking-view-root .btn-rest-paid,.booking-view-root .btn-transfer-payment,.booking-view-root .client-paid-btn{background:#000!important;border:1px solid #0000001f!important;border:1px solid var(--c-border)!important;border-radius:0!important;box-shadow:none!important;color:#fff!important;font-size:11px!important;font-weight:500!important;letter-spacing:.08em;padding:12px 20px!important;text-transform:uppercase}.booking-view-root .btn-manual-paid:hover,.booking-view-root .btn-mark-paid:hover,.booking-view-root .btn-rest-paid:hover,.booking-view-root .btn-transfer-payment:hover,.booking-view-root .client-paid-btn:hover{background:#000c!important}.booking-view-root .btn-cancel,.booking-view-root .btn-delete,.booking-view-root .btn-refund-trigger,.booking-view-root .btn-remove{background:#0000!important;border:1px solid #0000001f!important;border:1px solid var(--c-border)!important;border-radius:0!important;box-shadow:none!important;color:#000!important;color:var(--c-text)!important;font-size:11px!important;font-weight:500!important;letter-spacing:.08em;padding:12px 20px!important;text-transform:uppercase}.booking-view-root .btn-cancel:hover,.booking-view-root .btn-delete:hover,.booking-view-root .btn-refund-trigger:hover,.booking-view-root .btn-remove:hover{background:#0000000a!important;border-color:#00000047!important;border-color:var(--c-border-strong)!important}.booking-view-root .dwc-chain-finance .fin-paid,.booking-view-root .dwc-chain-finance .fin-rem,.booking-view-root .dwc-chain-people,.booking-view-root .dwc-chain-status,.booking-view-root .dwc-chain-status.unpaid{background:#0000!important;border:1px solid #0000001f!important;border:1px solid var(--c-border)!important;border-radius:0!important;box-shadow:none!important;color:#000!important;color:var(--c-text)!important}.booking-view-root .group-block,.booking-view-root .meta-section,.booking-view-root .payment-section,.booking-view-root .section-card{margin:0 0 8px!important;padding:24px 0!important}.booking-view-root .meta-row,.booking-view-root .notes-list{margin:16px 0!important}.full-hour-booking{align-items:center;background:linear-gradient(135deg,#ffe8c2,#ffd9a6);box-sizing:border-box;cursor:pointer;display:flex;font-weight:600;height:100%;justify-content:center;min-height:60px;padding:0 2px;position:relative}.full-hour-booking .half-info{align-items:center;display:flex;flex-direction:column;line-height:1.15}.full-hour-booking .half-info .phone{display:none}.full-hour-booking .half-info .len{color:#8a4b00;font-size:10px;margin-top:2px}.hour-cell.chain-head .full-hour-booking{border-radius:6px 6px 0 0}.hour-cell.chain-middle .full-hour-booking{border-radius:0}.hour-cell.chain-tail .full-hour-booking{border-radius:0 0 6px 6px}.hour-cell.chain-middle .full-hour-booking .half-info,.hour-cell.chain-middle .full-hour-booking .slot-hover-info,.hour-cell.chain-tail .full-hour-booking .half-info,.hour-cell.chain-tail .full-hour-booking .slot-hover-info{display:none}.hour-cell.chain-middle,.hour-cell.chain-tail{border-top:0!important}.full-hour-booking.chain-head,.full-hour-booking.chain-middle,.full-hour-booking.chain-tail{box-shadow:inset 0 0 0 1px #00000014;position:relative}.hour-cell.chain-middle,.hour-cell.chain-tail{border-top:1px solid #0000000a!important}.hour-cell.chain-partial-support .half.chain-half{position:relative}.half.chain-half{background:linear-gradient(135deg,#ffe8c2,#ffd9a6);box-shadow:inset 0 0 0 1px #0000000d}.half.chain-half.chain-half-unpaid{background:linear-gradient(135deg,#ffe5e5,#ffd3d3)}.half.chain-half:before{background:#f59e0b;border-radius:2px;bottom:0;content:"";left:0;opacity:.75;position:absolute;top:0;width:3px}.half.chain-half.chain-half-unpaid:before{background:#dc2626;opacity:.85}.hour-cell.chain-partial-support .half.chain-half:not(:last-child){border-bottom:1px solid #0000000a}.chain-len-badge{background:#0000002e;border-radius:12px;box-shadow:0 1px 2px #00000040;color:#fff!important;font-size:10px!important;letter-spacing:.4px;line-height:1;padding:2px 6px;position:relative}.hour-cell.chain-head.chain-unpaid .full-hour-booking,.hour-cell.chain-middle.chain-unpaid .full-hour-booking,.hour-cell.chain-tail.chain-unpaid .full-hour-booking{background:linear-gradient(135deg,#ffe5e5,#ffd3d3)}.hour-cell.chain-head.chain-unpaid .full-hour-booking:before,.hour-cell.chain-middle.chain-unpaid .full-hour-booking:before,.hour-cell.chain-tail.chain-unpaid .full-hour-booking:before{background:#dc2626;opacity:.8}.full-hour-booking.chain-has-unpaid{box-shadow:inset 0 0 0 1px #dc262659}.full-hour-booking.chain-head:before,.full-hour-booking.chain-middle:before,.full-hour-booking.chain-tail:before{background:#f59e0b;border-radius:2px;bottom:0;box-shadow:inset 0 0 0 1px #fff6;content:"";left:0;opacity:.75;position:absolute;top:0;width:3px}td.hour-cell.chain-head{position:relative}td.hour-cell.chain-head .full-hour-booking.chain-head-wrap{background:linear-gradient(135deg,#ffe8c2,#ffd9a6);border-radius:10px;box-shadow:0 2px 6px #0000001f,0 0 0 1px #0000000f;display:flex;flex-direction:column;gap:6px;justify-content:center;padding:8px 6px;pointer-events:auto;z-index:1}td.hour-cell.chain-head.chain-unpaid .full-hour-booking.chain-head-wrap{background:linear-gradient(135deg,#ffe5e5,#ffd3d3)}td.hour-cell.chain-middle .full-hour-booking,td.hour-cell.chain-tail .full-hour-booking{visibility:hidden}.full-hour-booking.chain-head-wrap .slot-hover-info{display:flex!important;flex-direction:column;gap:2px;opacity:1;text-align:center;visibility:visible}.full-hour-booking.chain-head-wrap .half-info.both{display:none}.full-hour-booking.chain-head-wrap .hover-name{font-size:13px;font-weight:600}.full-hour-booking.chain-head-wrap .hover-phone{font-size:12px;opacity:.85}.full-hour-booking.chain-head-wrap .hover-price{font-size:12px;font-weight:500}.full-hour-booking.chain-head-wrap .hover-payment-status{font-size:11px;margin-top:2px}.hour-cell.chain-hover .full-hour-booking,.hour-cell.chain-hover .half.chain-half{position:relative;transition:.15s}.hour-cell.chain-hover .full-hour-booking:after,.hour-cell.chain-hover .half.chain-half:after{background:#ffffff80;border-radius:inherit;content:"";inset:0;pointer-events:none;position:absolute}.hour-cell.chain-hover.chain-unpaid .full-hour-booking:after,.hour-cell.chain-hover.chain-unpaid .half.chain-half:after{background:#ffffff80}.hour-cell.chain-hover .slot-hover-info{opacity:1!important;visibility:visible!important}.hour-cell.chain-hover .half-info.both .chain-len-badge{background:#0000008c}.full-hour-booking.hovered .slot-hover-info,.half.hovered .slot-hover-info{opacity:1;visibility:visible}.calendar.desktop-view{position:relative}.chain-hover-overlay{align-items:center;background:linear-gradient(135deg,#ffe8c2eb,#ffd9a6eb);border-radius:10px;box-shadow:0 4px 18px #0000002e,0 0 0 2px #f59e0b59;display:flex;justify-content:center;pointer-events:auto;position:absolute;z-index:70}.chain-hover-overlay.unpaid{background:linear-gradient(135deg,#ffe5e5eb,#ffd3d3eb);box-shadow:0 4px 18px #0000002e,0 0 0 2px #dc262666}.chain-overlay-content{color:#222;display:flex;flex-direction:column;font-size:12px;font-weight:500;gap:4px;line-height:1.35;padding:8px 10px;text-align:center}.chain-overlay-row.primary{align-items:center;display:flex;flex-wrap:wrap;font-size:13px;font-weight:600;gap:8px;justify-content:center}.chain-overlay-row .len-badge,.len-badge{background:#111;border-radius:14px;box-shadow:0 1px 2px #0006;color:#fff;font-size:11px;font-weight:600;letter-spacing:.4px;padding:2px 8px}.chain-overlay-name{font-size:13px;font-weight:600}.chain-overlay-phone{font-size:12px;letter-spacing:.3px;opacity:.85}.chain-overlay-hint{font-size:10px;opacity:.55}body .chain-hover-overlay~.calendar-table td.hour-cell.chain-hover .slot-hover-info{display:none!important}.half-info.both .phone{display:none}.half-info{max-width:100%;overflow:hidden}.half-info .len{display:block}.full-hour-toggle{align-items:center;display:inline-flex;gap:4px;margin-left:12px;white-space:nowrap}.full-hour-toggle,.full-hour-toggle input[type=checkbox]{cursor:pointer;flex-shrink:0}.full-hour-toggle .toggle-label{flex-shrink:0;font-size:12px;-webkit-user-select:none;user-select:none}@media (max-width:768px){.full-hour-toggle{gap:3px;margin-left:6px}.full-hour-toggle .toggle-label{font-size:10px}.full-hour-toggle input[type=checkbox]{height:14px;width:14px}}@media (max-width:480px){.full-hour-toggle{gap:2px;margin-left:4px}.full-hour-toggle .toggle-label{font-size:9px}.full-hour-toggle input[type=checkbox]{height:12px;width:12px}}@media (max-width:768px){.mobile-vertical-calendar .time-row{border-bottom:1px solid #e2e2e2;position:relative}.mobile-vertical-calendar .time-row:last-child{border-bottom:none}.mobile-vertical-calendar .time-row .time-label{padding-bottom:6px}.mobile-vertical-calendar .time-row .slot-cells{padding-bottom:0}.mobile-vertical-calendar .hour-cell .half+.half{border-top:1px solid #f0f0f0}.mobile-vertical-calendar .hour-cell{display:flex;flex-direction:column;height:64px;position:relative}.mobile-vertical-calendar .hour-cell .half-wrapper{height:100%}.mobile-vertical-calendar .hour-cell .half{flex:1 0 50%;min-height:0}.mobile-vertical-calendar .hour-cell .full-hour-booking{height:100%;min-height:0;width:100%}.mobile-vertical-calendar .hour-cell .full-hour-booking .half-info{justify-content:center}.mobile-vertical-calendar.day-view .hour-cell{height:90px}@media (max-width:480px){.mobile-vertical-calendar .hour-cell{height:56px}.mobile-vertical-calendar.day-view .hour-cell{height:80px}}}.booking-summary-section{display:flex;flex-direction:column;gap:12px;margin-top:12px}.booking-summary-section h4{font-size:16px;font-weight:600;margin:0}.detail-block{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:12px}.detail-grid{grid-gap:6px;display:grid;gap:6px;grid-template-columns:1fr}.detail-label{color:#1e293b;font-weight:600}.booking-meta-list,.service-chip-list{margin:8px 0 0;padding-left:18px}.service-chip-list li{margin-bottom:4px}.detail-note{color:#4a5568;font-size:14px;margin-top:8px}.payment-summary{background:linear-gradient(135deg,#fffbeb,#fef3c7);border:2px solid #fbbf24;border-radius:12px;box-shadow:0 2px 8px #fbbf2426;display:flex;flex-direction:column;gap:10px;margin-top:16px;padding:20px}.payment-summary .amount-main{color:#0f172a;font-size:18px;font-weight:700}.refund-section{background:linear-gradient(135deg,#f8fafc,#f1f5f9);border:2px solid #cbd5e1;border-radius:12px;box-shadow:0 2px 8px #0000000f;display:flex;flex-direction:column;gap:14px;margin-top:16px;padding:18px}.refund-section-header{display:flex;flex-direction:column;gap:6px}.refund-section-header h5{color:#0f172a;font-size:16px;font-weight:700;letter-spacing:.3px;margin:0}.refund-section-note{color:#64748b;font-size:13px;font-weight:500}.refund-option-list{display:flex;flex-direction:column;gap:8px}.refund-option{background:#fff;border:2px solid #e2e8f0;border-radius:10px;box-shadow:0 1px 3px #0000000f;cursor:pointer;padding:14px 16px;transition:all .2s ease}.refund-option:hover{border-color:#94a3b8;box-shadow:0 2px 6px #0000001a}.refund-option.selected{background:linear-gradient(135deg,#eef2ff,#e0e7ff);border-color:#4f46e5;box-shadow:0 0 0 3px #4f46e526}.refund-option.disabled{background:#f8fafc;cursor:not-allowed;opacity:.5}.refund-option-header{align-items:flex-start;display:flex;gap:12px;justify-content:space-between}.refund-option-label{color:#0f172a;font-size:15px;font-weight:700}.refund-option-id{color:#64748b;font-size:13px;font-weight:500;margin-top:2px}.refund-option-id span{font-family:Fira Code,Consolas,monospace;font-weight:600}.refund-option-available{color:#0f172a;font-size:15px;font-weight:700}.refund-option-meta{color:#475569;display:flex;flex-wrap:wrap;font-size:13px;font-weight:500;gap:12px;margin-top:8px}.refund-option-status{background:linear-gradient(135deg,#e0e7ff,#c7d2fe);border-radius:999px;color:#3730a3;font-weight:600;padding:2px 8px}.refund-form{display:flex;flex-direction:column;gap:16px;margin-top:4px}.transfer-selection-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f172a8c;display:flex;inset:0;justify-content:center;padding:32px 16px;position:fixed;z-index:150}.transfer-selection-dialog{background:#fff;border-radius:18px;box-shadow:0 24px 60px #0f172a47;color:#0f172a;display:flex;flex-direction:column;gap:20px;padding:28px;width:min(520px,100%)}.transfer-selection-dialog h3{font-size:22px;font-weight:700;line-height:1.25;margin:0}.transfer-selection-hint{color:#475569;font-size:14px;line-height:1.5;margin:0}.transfer-selection-list{background:linear-gradient(135deg,#f8fafc,#f1f5f9);border:1px solid #e2e8f0;border-radius:14px;display:flex;flex-direction:column;gap:10px;max-height:260px;overflow:auto;padding:12px}.transfer-selection-item{grid-gap:14px;align-items:center;background:#fff;border:2px solid #0000;border-radius:12px;box-shadow:0 1px 3px #0f172a14;display:grid;font-size:15px;font-weight:600;gap:14px;grid-template-columns:36px 1fr;padding:12px 14px;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}.transfer-selection-item:hover{box-shadow:0 6px 16px #0f172a24;transform:translateY(-1px)}.transfer-selection-item.selected{background:linear-gradient(135deg,#eef2ff,#e0e7ff);border-color:#6366f1;box-shadow:0 0 0 4px #6366f12e}.transfer-selection-order{align-items:center;background:#e2e8f0;border-radius:10px;color:#0f172a;display:flex;font-size:15px;font-weight:700;height:36px;justify-content:center;letter-spacing:.2px;width:36px}.transfer-selection-item.selected .transfer-selection-order{background:#4338ca;color:#fff}.transfer-selection-time{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.transfer-selection-controls{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(210px,1fr))}.transfer-selection-controls label{color:#334155;display:block;font-size:13px;font-weight:600;margin-bottom:6px}.transfer-selection-controls select{-webkit-appearance:none;appearance:none;background:#fff;border:1px solid #cbd5f5;border-radius:10px;box-shadow:0 1px 2px #0f172a14;color:#111827;font-size:15px;font-weight:500;padding:10px 14px;transition:border-color .18s ease,box-shadow .18s ease;width:100%}.transfer-selection-controls select:focus{border-color:#6366f1;box-shadow:0 0 0 4px #6366f12e;outline:none}.transfer-selection-summary{background:linear-gradient(135deg,#fef3c7,#fde68a);border:1px solid #f59e0b59;border-radius:12px;box-shadow:0 1px 3px #f59e0b38;color:#92400e;display:flex;flex-direction:column;font-size:14px;font-weight:600;gap:6px;padding:14px 16px}.transfer-selection-summary span{display:block}.transfer-selection-summary span:first-child{color:#78350f;font-size:15px;font-weight:700}.transfer-selection-actions{display:flex;flex-wrap:wrap;gap:12px;justify-content:flex-end}.transfer-selection-actions .btn{border-radius:12px;font-size:14px;font-weight:600;letter-spacing:.2px;min-width:140px;padding:10px 18px}.transfer-selection-actions .btn.primary{background:linear-gradient(135deg,#4f46e5,#4338ca);box-shadow:0 10px 22px #4f46e559;color:#fff}.transfer-selection-actions .btn.primary:hover{filter:brightness(1.05)}.transfer-selection-actions .btn.secondary{background:#e2e8f0;box-shadow:0 2px 6px #0f172a1f;color:#0f172a}.transfer-selection-actions .btn.secondary:hover{background:#cbd5f5}.transfer-mode-banner{align-items:flex-start;background:linear-gradient(135deg,#eef2ff,#e0e7ff);border:1px solid #6366f159;border-radius:14px;box-shadow:0 8px 24px #4f46e52e;display:flex;gap:16px;justify-content:space-between;margin-bottom:22px;padding:16px 18px}.transfer-info{color:#312e81;display:flex;flex-direction:column;font-size:14px;font-weight:600;gap:6px}.transfer-info span{display:block}.transfer-instruction{color:#4338ca;font-size:13px;font-weight:500}.transfer-meta{color:#3730a3;font-size:13px;font-weight:600}.transfer-warning{color:#b91c1c;font-size:13px;font-weight:700}.btn-cancel-transfer{background:#000;border:none;border-radius:0;box-shadow:none;color:#fff;cursor:pointer;font-size:11px;font-weight:500;letter-spacing:.12em;padding:14px 20px;text-transform:uppercase;transition:all .2s ease}.btn-cancel-transfer:hover{background:#000c}@media (max-width:640px){.transfer-selection-dialog{gap:16px;padding:22px}.transfer-selection-list{max-height:220px}.transfer-selection-controls{grid-template-columns:1fr}.transfer-selection-actions{justify-content:stretch}.transfer-selection-actions .btn{flex:1 1 100%;text-align:center}.transfer-mode-banner{align-items:stretch;flex-direction:column}.btn-cancel-transfer{width:100%}}.refund-form .input-row{display:flex;flex-direction:column;gap:8px}.refund-form label{color:#0f172a;font-size:14px;font-weight:700;letter-spacing:.3px}.refund-form input,.refund-form select,.refund-form textarea{background:#fff;border:2px solid #cbd5e1;border-radius:8px;font-family:inherit;font-size:15px;padding:10px 12px;transition:all .2s}.refund-form input:focus,.refund-form select:focus,.refund-form textarea:focus{border-color:#4f46e5;box-shadow:0 0 0 3px #4f46e526;outline:none}.refund-form textarea{min-height:80px;resize:vertical}.refund-helper{color:#64748b;font-size:13px;font-weight:500;margin-top:4px}.refund-message{border-radius:8px;font-size:14px;font-weight:600;padding:10px 14px}.refund-message.error{background:linear-gradient(135deg,#fef2f2,#fee2e2);border:2px solid #fca5a5;color:#b91c1c}.refund-message.success{background:linear-gradient(135deg,#f0fdf4,#dcfce7);border:2px solid #86efac;color:#166534}.refund-message.info{background:linear-gradient(135deg,#eff6ff,#dbeafe);border:2px solid #93c5fd;color:#1e40af}.btn-refund{align-self:flex-start;background:#000;border:none;border-radius:0;box-shadow:none;color:#fff;cursor:pointer;font-size:11px;font-weight:500;letter-spacing:.12em;padding:14px 20px;text-transform:uppercase;transition:all .2s ease}.btn-refund:hover{background:#000c;box-shadow:none;transform:none}.btn-refund:disabled{cursor:not-allowed;opacity:.3;transform:none}.status-chip{align-items:center;background:#edf2f7;border:2px solid #cbd5e1;box-shadow:0 1px 3px #00000014;color:#2d3748;display:inline-flex;font-weight:700;gap:8px;letter-spacing:.3px;padding:8px 14px}.status-chip.success{background:linear-gradient(135deg,#dcfce7,#bbf7d0);border-color:#86efac;color:#15803d}.status-chip.danger{background:linear-gradient(135deg,#fee2e2,#fecaca);border-color:#fca5a5;color:#b91c1c}.status-chip.neutral{background:linear-gradient(135deg,#e0e7ff,#c7d2fe);border-color:#a5b4fc;color:#3730a3}ul.rounded-list i.red{background:#ff6b6b;border:1px solid #c33}.payment-link-box{background:#fff;border:1px solid #e2e8f0;border-radius:6px;display:flex;flex-direction:column;gap:4px;margin-top:8px;padding:8px 10px}.payment-link-label{color:#334155;font-size:12px;font-weight:600}.payment-link-row{align-items:center;display:flex;gap:6px}.payment-link-anchor{color:#0f62fe;flex:1 1;font-size:12px;text-decoration:underline;word-break:break-all}.btn-copy-link{background:#0000;border:1px solid #0000001f;border-radius:0;color:#000;cursor:pointer;font-size:11px;font-weight:500;letter-spacing:.08em;line-height:1;padding:8px 12px;text-transform:uppercase;transition:all .2s}.btn-copy-link:hover{background:#0000000a;border-color:#0003}.btn-copy-link:active{background:#00000014}.btn-open-link{background:#000;border:1px solid #0000001f;border-radius:0;color:#fff;cursor:pointer;font-size:11px;font-weight:500;letter-spacing:.08em;line-height:1;padding:8px 12px;text-transform:uppercase;transition:all .2s}.btn-open-link:hover{background:#000c}.btn-open-link:active{background:#000000e6}.copy-toast{animation:fadeInOut 1.8s ease forwards;background:#111827e6;border-radius:6px;color:#fff;font-size:12px;font-weight:600;padding:6px 10px;pointer-events:none;position:absolute;right:8px;top:8px;z-index:50}@keyframes fadeInOut{0%{opacity:0;transform:translateY(-4px)}10%{opacity:1;transform:translateY(0)}90%{opacity:1}to{opacity:0;transform:translateY(-4px)}}.warning-text{color:#b45309;margin-top:8px}.calendar-inline-error{background:#fde8e8;border:1px solid #f8b4b4;border-radius:6px;color:#9b1c1c;font-size:14px;margin:8px 0 16px;padding:8px 12px}.calendar-inline-info{background:#eef2ff;border:1px solid #c7d2fe;border-radius:6px;color:#3730a3;font-size:13px;margin:8px 0 16px;padding:6px 12px}.detail-meta-row{display:flex;flex-direction:column;gap:6px;margin-top:12px}.detail-item.meta{margin:0}.calendar-modal-body{background:#fafafa;display:flex;flex:1 1;flex-direction:column;max-height:100vh;overflow-y:auto;padding:0;position:relative;width:100%}.modal-content.wide .calendar-modal-body{flex:1 1;max-height:none;min-height:0;padding:0}.modal-content.wide .booking-view-root{background:#fafafa;flex:1 1;min-height:100%;padding:56px 64px 64px}@supports (scrollbar-gutter:stable){.calendar-modal-body{scrollbar-gutter:stable both-edges}}@media (max-width:600px){.calendar-modal-body{max-height:calc(98vh - 30px);padding:0}.modal-content.wide .booking-view-root{padding:40px 24px 48px}}@media (min-width:768px){.detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.detail-meta-row{flex-direction:row;gap:16px}}.half.booked{background:linear-gradient(135deg,#ffe8c2,#ffd9a6)}.half.booked.available,.half.booked.booked,.half.chain-half{background:linear-gradient(135deg,#ffe8c2,#ffd9a6)!important}.full-hour-booking.booked{background:linear-gradient(135deg,#ffe8c2,#ffd9a6)}.full-hour-booking.unpaid,.half.unpaid.booked{animation:unpaid-pulse 2s ease-in-out infinite;background:linear-gradient(135deg,#ffe5e5,#ffd3d3)!important;border:1px solid #ff6b6b!important;box-shadow:inset 0 0 0 1px #ffb3b3;position:relative}.full-hour-booking.unpaid:after,.half.unpaid.booked:after{content:"";display:none}@keyframes unpaid-pulse{0%,to{box-shadow:inset 0 0 0 1px #ffb3b3,0 0 0 #ff6b6b00}50%{box-shadow:inset 0 0 0 1px #ff6b6b,0 0 6px #ff6b6b59}}.notes-edit-block{margin-top:8px}.notes-edit-block textarea{border:1px solid #ccc;border-radius:4px;font-family:inherit;font-size:14px;padding:8px;resize:vertical;transition:border-color .2s;width:100%}.notes-edit-block textarea:focus{border-color:#4caf50;outline:none}.notes-edit-block textarea:disabled{background-color:#f5f5f5;cursor:not-allowed}.btn-edit-notes{background:#0000;border:1px solid #0000001f;border-radius:0;color:#000;cursor:pointer;font-size:11px;font-weight:500;letter-spacing:.12em;padding:8px 16px;text-transform:uppercase;transition:all .2s}.btn-edit-notes:hover{background:#0000000a;border-color:#0003}.btn-edit-notes:active{background:#00000014}.slot-hover-info{word-wrap:break-word;align-items:center;background:#ffffff80;border-radius:2px;display:flex;flex-direction:column;gap:2px;inset:0;justify-content:center;opacity:0;overflow-wrap:break-word;overflow-y:auto;padding:4px;position:absolute;transition:opacity .18s ease,visibility .18s ease;visibility:hidden;z-index:10}@media (min-width:769px){.full-hour-booking:hover .slot-hover-info,.half.booked:hover .slot-hover-info{opacity:1;visibility:visible}.slot-hover-info .hover-name{color:#0f172a;font-size:11px;font-weight:700;line-height:1.2;margin-bottom:2px;text-align:center}.slot-hover-info .hover-phone{color:#1e293b;font-size:10px;font-weight:600;line-height:1.2;text-align:center;word-break:break-all}.slot-hover-info .hover-price{color:#0f766e;font-size:11px;font-weight:700;text-align:center}.slot-hover-info .hover-payment-status{border-radius:3px;font-size:9px;font-weight:600;letter-spacing:.3px;margin-top:2px;padding:2px 6px;position:relative;text-align:center;text-transform:uppercase;z-index:15}.slot-hover-info .hover-payment-status.paid{background:#22c55e26;border:1px solid #22c55e4d;color:#15803d}.slot-hover-info .hover-payment-status.unpaid{background:#fb923c26;border:1px solid #fb923c4d;color:#c2410c}.full-hour-booking .slot-hover-info{gap:4px}.full-hour-booking .slot-hover-info .hover-name{font-size:12px}.full-hour-booking .slot-hover-info .hover-phone{font-size:11px}.full-hour-booking .slot-hover-info .hover-price{font-size:13px}.full-hour-booking:hover,.half.booked:hover{box-shadow:0 2px 8px #00000026;transform:scale(1.02);transition:transform .2s ease,box-shadow .2s ease;z-index:5}.full-hour-booking.unpaid:after,.half.unpaid.booked:after{z-index:11}}.week-calendar.day-view .full-hour-booking .slot-hover-info,.week-calendar.day-view .half.booked .slot-hover-info{background:#ffffffbf;opacity:1;visibility:visible}.week-calendar.day-view .full-hour-booking,.week-calendar.day-view .half.booked{background:linear-gradient(135deg,#ffe8c2,#ffd9a6)!important}.week-calendar.day-view .full-hour-booking.unpaid,.week-calendar.day-view .half.booked.unpaid{background:linear-gradient(135deg,#ffe5e5,#ffd3d3)!important}.week-calendar.day-view .slot-hover-info .hover-name{color:#0f172a;font-size:12px;font-weight:700;line-height:1.2;margin-bottom:2px;text-align:center}.week-calendar.day-view .slot-hover-info .hover-phone{color:#1e293b;font-size:11px;font-weight:600;line-height:1.2;text-align:center;word-break:break-all}.week-calendar.day-view .slot-hover-info .hover-price{color:#0f766e;font-size:12px;font-weight:700;text-align:center}.week-calendar.day-view .slot-hover-info .hover-payment-status{font-size:10px;padding:3px 8px}.week-calendar.day-view .full-hour-booking .slot-hover-info .hover-name{font-size:13px}.week-calendar.day-view .full-hour-booking .slot-hover-info .hover-phone{font-size:12px}.week-calendar.day-view .full-hour-booking .slot-hover-info .hover-price{font-size:14px}@media (max-width:768px){.slot-hover-info{display:none}.mobile-vertical-calendar.day-view .slot-hover-info,.week-calendar.day-view .slot-hover-info{background:#ffffffbf;display:flex;opacity:1;visibility:visible}.mobile-vertical-calendar.day-view .slot-hover-info{gap:1px;padding:3px}.mobile-vertical-calendar.day-view .full-hour-booking .slot-hover-info,.mobile-vertical-calendar.day-view .half.booked .slot-hover-info,.week-calendar.day-view .full-hour-booking .slot-hover-info,.week-calendar.day-view .half.booked .slot-hover-info{opacity:1;visibility:visible}.mobile-vertical-calendar.day-view .full-hour-booking,.mobile-vertical-calendar.day-view .half.booked{background:#f0fdf4e6!important}.mobile-vertical-calendar.day-view .full-hour-booking.unpaid,.mobile-vertical-calendar.day-view .half.booked.unpaid{background:#fef3c7e6!important}.mobile-vertical-calendar.day-view .slot-hover-info .hover-name,.week-calendar.day-view .slot-hover-info .hover-name{color:#0f172a;font-size:11px;font-weight:700;line-height:1.2;margin-bottom:2px;text-align:center}.mobile-vertical-calendar.day-view .slot-hover-info .hover-phone,.week-calendar.day-view .slot-hover-info .hover-phone{color:#1e293b;font-size:10px;font-weight:600;line-height:1.2;text-align:center;word-break:break-all}.mobile-vertical-calendar.day-view .slot-hover-info .hover-price,.week-calendar.day-view .slot-hover-info .hover-price{color:#0f766e;font-size:11px;font-weight:700;text-align:center}.mobile-vertical-calendar.day-view .slot-hover-info .hover-payment-status,.week-calendar.day-view .slot-hover-info .hover-payment-status{font-size:9px;padding:2px 5px}.mobile-vertical-calendar.day-view .slot-hover-info .hover-payment-status{font-size:8px;padding:1px 4px}.mobile-vertical-calendar.day-view .full-hour-booking .slot-hover-info .hover-name,.week-calendar.day-view .full-hour-booking .slot-hover-info .hover-name{font-size:12px}.mobile-vertical-calendar.day-view .full-hour-booking .slot-hover-info .hover-phone,.week-calendar.day-view .full-hour-booking .slot-hover-info .hover-phone{font-size:11px}.mobile-vertical-calendar.day-view .full-hour-booking .slot-hover-info .hover-price,.week-calendar.day-view .full-hour-booking .slot-hover-info .hover-price{font-size:12px}}.half.selected{background:#3b82f61a!important;box-shadow:inset 0 0 0 3px #3b82f6!important;position:relative}.half.selected:after{align-items:center;background:#fff;border-radius:50%;color:#3b82f6;content:"✓";display:flex;font-size:12px;font-weight:700;height:16px;justify-content:center;line-height:1;position:absolute;right:2px;top:2px;width:16px;z-index:10}.multi-select-btn{background:#fff;border:1px solid #cbd5e1;border-radius:4px;cursor:pointer;font-size:12px;margin-left:12px;padding:6px 12px;transition:all .2s;white-space:nowrap}.multi-select-btn:hover{background:#f1f5f9;border-color:#94a3b8}.multi-select-btn.active{background:#3b82f6;border-color:#3b82f6;color:#fff}.multi-select-btn.active:hover{background:#2563eb;border-color:#2563eb}.multi-select-btn i{margin-right:4px}.create-multi-booking-btn{animation:pulse-btn 2s ease-in-out infinite;background:linear-gradient(135deg,#10b981,#059669);border:2px solid #059669;border-radius:6px;box-shadow:0 3px 12px #10b98180,0 0 0 3px #10b9811a;color:#000;cursor:pointer;font-size:14px;font-weight:700;margin-left:8px;padding:8px 16px;text-shadow:none;transition:all .2s;white-space:nowrap}@keyframes pulse-btn{0%,to{box-shadow:0 3px 12px #10b98180,0 0 0 3px #10b9811a;transform:scale(1)}50%{box-shadow:0 5px 20px #10b981b3,0 0 0 5px #10b98133;transform:scale(1.03)}}.calendar-legend{background:#fff;border:1px solid #e2e8f0;border-radius:10px;box-shadow:0 2px 4px #0000000a;display:flex;flex-wrap:wrap;gap:10px 18px;margin:10px 0 18px;padding:10px 14px}.calendar-legend-item{align-items:center;color:#334155;display:inline-flex;font-size:12px;font-weight:500;gap:8px;position:relative}.calendar-legend-item .legend-label{white-space:nowrap}.legend-swatch{align-items:center;border:1px solid #cbd5e1;border-radius:4px;display:inline-flex;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:9px;font-weight:600;height:18px;justify-content:center;letter-spacing:.3px;position:relative;width:30px}.legend-swatch.swatch-available{background:linear-gradient(135deg,#f1f5f9,#e2e8f0);border-color:#cbd5e1}.legend-swatch.swatch-booked{background:linear-gradient(135deg,#ffe8c2,#ffd9a6);border-color:#fbbf24}.legend-swatch.swatch-unpaid{background:#ffe5e5;border-color:#ff6b6b;box-shadow:inset 0 0 0 2px #ff6b6b26}.legend-swatch.swatch-partial{background:repeating-linear-gradient(45deg,#dbeafe 0 6px,#bfdbfe 6px 12px);border-color:#60a5fa;color:#1e3a8a}.legend-swatch.swatch-partial .cut-label{bottom:1px;color:#1e3a8a;font-size:8px;font-weight:700;position:absolute;right:3px;text-shadow:0 1px 0 #fff6}.legend-swatch.swatch-chain{background:linear-gradient(135deg,#ffc983,#ffd28f);border-color:#f59e0b;box-shadow:inset 0 0 0 2px #d9770640}.legend-swatch.swatch-selected{background:#3b82f61f;border:2px solid #3b82f6}.legend-swatch.swatch-selected .check{color:#1d4ed8;font-size:12px;line-height:1}@media (max-width:820px){.calendar-legend{gap:8px 14px;padding:8px 10px}.calendar-legend-item{font-size:11px;gap:6px}.legend-swatch{font-size:8px;height:16px;width:26px}.legend-swatch.swatch-selected .check{font-size:11px}}@media (max-width:540px){.calendar-legend{flex-direction:row}.calendar-legend-item{flex-basis:calc(50% - 8px);flex-grow:0;flex-shrink:1}}.create-multi-booking-btn:hover{animation:none;background:linear-gradient(135deg,#059669,#047857);border-color:#047857;box-shadow:0 6px 16px #05966999,0 0 0 4px #10b98126;color:#000;transform:translateY(-2px) scale(1.05)}.create-multi-booking-btn:disabled{animation:none;background:linear-gradient(135deg,#9e9e9e,#757575);border-color:#9e9e9e;box-shadow:none;color:#e0e0e0;cursor:not-allowed;opacity:.6}.create-multi-booking-btn:disabled:hover{box-shadow:none;transform:none}.create-multi-booking-btn i{color:#000;font-size:16px;margin-right:6px}.create-multi-booking-btn:disabled i{color:#e0e0e0}.clear-selection-btn{align-items:center;background:linear-gradient(135deg,#dc3545,#c82333);border:2px solid #dc3545;border-radius:6px;box-shadow:0 2px 8px #dc354566;color:#fff;cursor:pointer;display:inline-flex;font-size:16px;font-weight:600;justify-content:center;margin-left:8px;padding:8px 12px;text-shadow:0 1px 2px #0003;transition:all .2s;white-space:nowrap}.clear-selection-btn:hover{background:linear-gradient(135deg,#c82333,#bd2130);border-color:#bd2130;box-shadow:0 4px 12px #dc354580;transform:translateY(-1px) scale(1.05)}.clear-selection-btn:disabled{background:linear-gradient(135deg,#9e9e9e,#757575);border-color:#9e9e9e;box-shadow:none;cursor:not-allowed;opacity:.6}.clear-selection-btn:disabled:hover{box-shadow:none;transform:none}.clear-selection-btn i{color:#000;font-size:18px;margin:0}.clear-selection-btn:disabled i{color:#e0e0e0}@media (max-width:768px){.multi-select-btn{font-size:10px;margin-left:4px;padding:5px 8px}.clear-selection-btn,.create-multi-booking-btn{border-width:1.5px;font-size:11px;margin-left:4px;padding:6px 10px}.clear-selection-btn i,.create-multi-booking-btn i{font-size:13px;margin-right:4px}.half.selected:after{font-size:10px;height:14px;right:1px;top:1px;width:14px}}@media (max-width:480px){.multi-select-btn{font-size:9px;margin-left:3px;padding:4px 6px}.clear-selection-btn,.create-multi-booking-btn{border-width:1px;font-size:10px;margin-left:3px;padding:5px 8px}.clear-selection-btn i,.create-multi-booking-btn i{font-size:12px;margin-right:3px}}@media (max-width:360px){.calendar-controls{justify-content:center}.clear-selection-btn,.create-multi-booking-btn,.multi-select-btn{flex:1 1 auto;max-width:120px;min-width:70px}}.div-week-calendar{font-size:12px;margin-top:8px;position:relative;width:100%}.calendar-header-bar,.div-week-calendar{background:#fff;border:1px solid #e5e7eb;border-radius:8px}.calendar-header-bar{align-items:center;display:flex;gap:12px;justify-content:space-between;margin:6px 0 10px;padding:6px 14px}.calendar-header-bar .month-year{color:#202124;font-size:16px;font-weight:600;letter-spacing:.3px;text-transform:capitalize}.calendar-header-bar .view-mode-toggle{display:inline-flex;gap:4px}.calendar-header-bar .view-btn{background:#fff;border:1px solid #dadce0;border-radius:6px;color:#3c4043;cursor:pointer;font-size:12px;font-weight:500;letter-spacing:.2px;padding:6px 12px;transition:.15s}.calendar-header-bar .view-btn:hover{background:#f1f3f4}.calendar-header-bar .view-btn.active{background:#e8f0fe;border-color:#aecbfa;box-shadow:0 0 0 1px #aecbfa;color:#174ea6}.calendar-header-bar .nav-cluster{align-items:center;display:flex;gap:8px}.calendar-header-bar .month-nav-cluster{flex:0 0 auto}.calendar-header-bar .month-nav-cluster .month-year{min-width:120px;text-align:center}.calendar-header-bar .nav-btn{background:#fff;border:1px solid #dadce0;border-radius:6px;color:#3c4043;cursor:pointer;padding:6px 10px;transition:.15s}.calendar-header-bar .nav-btn:hover{background:#f1f3f4}.calendar-header-bar .clear-selection-btn,.calendar-header-bar .create-multi-booking-btn{border-width:1px;box-shadow:none;margin-left:0}.calendar-header-bar .clear-selection-btn{background:#fff;border-color:#eb9090;color:#b31412;font-size:13px;padding:6px 10px}.calendar-header-bar .clear-selection-btn:hover:not(:disabled){background:#fdeceb}.calendar-header-bar .create-multi-booking-btn{background:#1a73e8;border:1px solid #1a73e8;color:#fff;font-size:13px;font-weight:600;padding:6px 12px}.calendar-header-bar .create-multi-booking-btn:hover:not(:disabled){background:#1967d2}.calendar-header-bar .create-multi-booking-btn:disabled{background:#e0e0e0;border-color:#dadce0;color:#9e9e9e}.calendar-header-bar .ch-center,.calendar-header-bar .ch-left,.calendar-header-bar .ch-right{align-items:center;display:flex;gap:8px}.calendar-header-bar .ch-left{flex:0 0 auto;min-width:0}.calendar-header-bar .ch-center{flex:0 0 auto;justify-content:center}.calendar-header-bar .ch-right{flex:1 1 auto;gap:8px;justify-content:flex-end}@media (max-width:1024px){.calendar-header-bar{flex-wrap:wrap;padding:10px 16px;row-gap:10px}.calendar-header-bar .month-year{font-size:15px}.calendar-header-bar .view-mode-toggle{flex:1 1 auto;justify-content:center}.calendar-header-bar .month-nav-cluster{flex:1 1 auto;justify-content:flex-start}.calendar-header-bar .month-nav-cluster .month-year{min-width:0}.calendar-header-bar .view-btn{padding:6px 10px}.calendar-header-bar .ch-center,.calendar-header-bar .ch-left,.calendar-header-bar .ch-right{flex:1 1 100%}.calendar-header-bar .ch-left{justify-content:center}.calendar-header-bar .ch-right{flex-wrap:wrap;justify-content:flex-end}}@media (max-width:768px){.calendar-header-bar{gap:10px;padding:10px 12px}.calendar-header-bar .view-mode-toggle{order:3}.calendar-header-bar .ch-left{order:1}.calendar-header-bar .ch-right{order:2}.calendar-header-bar .ch-left{justify-content:center}.calendar-header-bar .month-nav-cluster{justify-content:center;width:100%}.calendar-header-bar .ch-right{column-gap:6px;display:flex;flex-wrap:wrap;row-gap:6px}.calendar-header-bar .nav-btn{padding:6px 8px}.calendar-header-bar .view-btn{flex:1 1 50%}}@media (max-width:540px){.calendar-header-bar{border-radius:10px}.calendar-header-bar .ch-left{align-items:flex-start}.calendar-header-bar .month-year{font-size:14px}.calendar-header-bar .ch-center,.calendar-header-bar .ch-right{width:100%}.calendar-header-bar .view-mode-toggle{gap:6px;width:100%}.calendar-header-bar .view-btn{flex:1 1 100%;padding:6px}.calendar-header-bar .month-nav-cluster{width:100%}.calendar-header-bar .month-nav-cluster .month-year{font-size:13px}.calendar-header-bar .month-nav-cluster .nav-btn{flex:1 1 auto;justify-content:center}.calendar-header-bar .ch-right{grid-gap:6px;display:grid;gap:6px;grid-template-columns:repeat(2,minmax(0,1fr))}.calendar-header-bar .clear-selection-btn,.calendar-header-bar .create-multi-booking-btn{width:100%}}@media (max-width:400px){.calendar-header-bar{padding:10px}.calendar-header-bar .month-nav-cluster{gap:6px}.calendar-header-bar .month-nav-cluster .month-year{font-size:12px}.calendar-header-bar .month-nav-cluster .nav-btn{padding:5px 0}.calendar-header-bar .ch-right{grid-template-columns:repeat(2,minmax(0,1fr))}.calendar-header-bar .clear-selection-btn,.calendar-header-bar .create-multi-booking-btn{font-size:11px}}.div-week-calendar.single-day .dwc-day-col{flex:1 0 100%}.dwc-header-row{display:flex}.dwc-time-col-head{color:#5f6368;font-size:11px;font-weight:600;padding:4px 6px;width:70px}.dwc-day-head,.dwc-time-col-head{background:#fff;border:1px solid #e5e7eb}.dwc-day-head{color:#202124;flex:1 1;font-size:12px;font-weight:500;letter-spacing:.2px;padding:6px 4px 8px;position:relative;text-align:center}.dwc-day-head.today{color:#1a73e8;font-weight:600}.dwc-body{border-top:1px solid #e5e7eb;display:flex;width:100%}.dwc-time-col{position:relative;width:70px}.dwc-hour-mark{align-items:flex-start;color:#5f6368;display:flex;font-size:10px;height:64px;justify-content:flex-end;padding:2px 6px;position:relative}.dwc-day-col{background:#fff;border-left:1px solid #e5e7eb;flex:1 1}.dwc-day-col,.dwc-grid{position:relative}.dwc-slot{background:#0000;border:1px solid #0000;border-radius:4px;cursor:pointer;left:6px;overflow:hidden;position:absolute;right:6px;transition:.12s}.dwc-slot.free:hover{background:#f8f9fa;border-color:#e5e7eb}.dwc-slot.booked{background:#f1f3f4;border:1px solid #dadce0}.dwc-slot.booked.unpaid{background:#fdeceb;border-color:#fad2cf}.dwc-slot.selected{outline:2px solid #1a73e8;outline-offset:-2px}.dwc-slot.transfer-preview{background:linear-gradient(135deg,#3b82f61f,#3b82f638);border-color:#2563eba6;box-shadow:0 6px 14px -8px #2563eb99}.dwc-slot.transfer-preview.transfer-preview-conflict{background:linear-gradient(135deg,#f8717138,#fecaca47);border-color:#dc2626b3;box-shadow:0 6px 16px -8px #dc262694}.dwc-slot.transfer-preview-base{z-index:80}.dwc-slot.transfer-preview .transfer-preview-chip,.dwc-slot.transfer-preview .transfer-preview-conflict-badge{pointer-events:none}.transfer-preview-chip{background:#fffffff0;border-radius:8px;box-shadow:0 6px 18px #0f172a2e;color:#1e3a8a;display:flex;flex-direction:column;font-size:11px;font-weight:600;gap:2px;left:6px;line-height:1.3;padding:6px 8px;position:absolute;right:6px;top:6px}.dwc-slot.transfer-preview-conflict .transfer-preview-chip{background:#fef2f2f2;box-shadow:0 6px 18px #991b1b38;color:#991b1b}.transfer-preview-chip-meta{color:#1e293bc7;font-size:10px;font-weight:500}.dwc-slot.transfer-preview-conflict .transfer-preview-chip-meta{color:#dc2626c7}.transfer-preview-conflict-badge{background:#dc2626e6;border-radius:6px;bottom:6px;box-shadow:0 4px 10px #dc26265c;color:#fff;font-size:10px;font-weight:600;left:6px;letter-spacing:.3px;padding:4px 6px;position:absolute;text-transform:uppercase}.dwc-slot-lbl{border-radius:3px;font-size:10px;font-weight:500;left:6px;padding:1px 5px;top:3px}.dwc-chain-card,.dwc-slot-lbl{background:#e8f0fe;color:#174ea6;position:absolute}.dwc-chain-card{border:1px solid #d2e3fc;border-radius:6px;cursor:pointer;display:flex;flex-direction:column;font-size:11px;gap:2px;left:4px;line-height:1.25;padding:4px 8px 6px 10px;right:4px;transition:all .2s cubic-bezier(.4,0,.2,1)}.dwc-chain-card:before{background:#1a73e8;border-radius:4px 0 0 4px;bottom:0;content:"";left:0;position:absolute;top:0;transition:width .2s ease;width:4px}.dwc-chain-card:hover{background:#dbe8fd}.dwc-chain-card.unpaid{background:#fdeceb;border-color:#fad2cf;color:#b31412}.dwc-chain-card.unpaid:before{background:#d93025}.dwc-chain-comment{line-clamp:3;-webkit-line-clamp:3;-webkit-box-orient:vertical;background:#ffffffb3;border:1px solid #fbbf2499;border-radius:6px;color:#4c1d05;display:-webkit-box;font-size:10px;line-height:1.35;margin-top:1px;overflow:hidden;padding:4px 6px;text-overflow:ellipsis;white-space:pre-wrap;word-break:break-word}.dwc-chain-card.unpaid .dwc-chain-comment{background:#ffffffd9;border-color:#facccdb3;color:#7f1d1d}.dwc-chain-card.hover-expand{background:#d3e3fd;box-shadow:0 8px 24px #00000026,0 3px 8px #0000001a,0 0 0 2px #1a73e84d;overflow:visible;padding-bottom:10px;transform:translateY(-3px) scale(1.025)}.dwc-chain-card.unpaid.hover-expand{background:#fce2e1;box-shadow:0 8px 24px #d9302526,0 3px 8px #d930251a,0 0 0 2px #d930254d}.dwc-chain-card.hover-expand:before{width:5px}.dwc-chain-card:not(.hover-expand){overflow:hidden}.dwc-chain-card.hover-expand .dwc-chain-comment{line-clamp:none;-webkit-line-clamp:unset;-webkit-box-orient:unset;display:block;max-height:none;overflow:visible;text-overflow:clip}.dwc-chain-ranges{color:inherit;font-size:10px;font-weight:600;margin-top:2px;word-break:break-word}.dwc-chain-services{display:flex;flex-direction:column;gap:3px;margin-top:4px}.dwc-chain-service{align-items:center;background:#ffffffbf;border-radius:4px;color:#0f172a;display:flex;font-size:10px;gap:6px;line-height:1.3;padding:2px 6px}.dwc-chain-service .svc-name{flex:1 1;font-weight:600;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dwc-chain-service .svc-price{font-feature-settings:"tnum";color:#111827;font-variant-numeric:tabular-nums;margin-left:auto}.dwc-chain-card.unpaid .dwc-chain-service{background:#ffffffe6;color:#7f1d1d}.dwc-day-col{perspective:1000px}.dwc-chain-time{color:#174ea6;font-size:11px;font-weight:600}.dwc-chain-duration{font-weight:500;margin-left:6px;opacity:.7}.dwc-chain-name{color:#202124;font-size:12px;font-weight:500;line-height:1.15}.dwc-chain-phone{color:#5f6368;font-size:11px;opacity:.75}.dwc-chain-price{color:#174ea6;font-size:11px;font-weight:600}.dwc-chain-status{align-self:flex-start;background:#e6f4ea;border-radius:10px;color:#137333;font-size:10px;font-weight:600;padding:2px 6px}.dwc-chain-status.unpaid{background:#fce8e6;color:#c5221f}.dwc-chain-status.paid{background:#e6f4ea;color:#137333}.dwc-chain-row-top{align-items:center;display:flex;gap:6px;justify-content:space-between}.dwc-chain-people{background:#f1f3f4;border:1px solid #dadce0;border-radius:12px;color:#5f6368;font-size:10px;font-weight:500;line-height:1;min-width:24px;padding:2px 6px;text-align:center}.dwc-chain-finance{align-items:center;color:#174ea6;display:flex;flex-wrap:wrap;font-size:10px;gap:4px;margin-top:2px}.dwc-chain-finance .fin-paid{background:#e6f4ea;border-radius:4px;color:#137333;font-weight:600;padding:1px 4px}.dwc-chain-finance .fin-full{font-weight:600}.dwc-chain-finance .fin-rem{background:#fdeceb;border-radius:4px;color:#b31412;font-weight:600;padding:1px 4px}.dwc-chain-finance .fin-sep{opacity:.5}.dwc-hour-line{background:#eceff1;height:1px;left:0;pointer-events:none;position:absolute;right:0}.dwc-hour-line:after{background:linear-gradient(90deg,#0000000d,#0000);content:"";height:2px;left:0;position:absolute;right:0;top:-1px}@media (max-width:1100px){.dwc-chain-card,.dwc-chain-name,.dwc-header-row{font-size:11px}}.price-row.total{border-bottom:2px solid #e2e8f0;font-size:15px;margin-bottom:12px;padding-bottom:12px}.payment-details-block{background:#f0fdf4;border:1px solid #86efac;border-radius:8px;margin:8px 0;padding:10px 12px}.payment-details-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:4px}.payment-label{color:#166534;font-size:13px;font-weight:600}.payment-amount{color:#166534;font-size:14px;font-weight:700}.payment-id-hint{color:#6b7280;font-family:Courier New,monospace;font-size:10px;margin-top:4px}.remainder-block{margin-top:8px;padding:12px!important}.remainder-block strong{display:block;margin-bottom:4px}.remainder-status{font-size:11px;font-weight:400;opacity:.85}.contact-field{display:flex;flex-direction:column;gap:8px}.contact-actions{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.contact-link{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:8px;box-shadow:0 1px 2px #0000000d;color:#1a73e8;display:inline-flex;font-size:11px;font-weight:600;gap:6px;padding:8px 12px;text-decoration:none;transition:all .2s cubic-bezier(.4,0,.2,1)}.contact-link:hover{background:#e8f0fe;border-color:#1a73e8;box-shadow:0 4px 8px #1a73e826;text-decoration:none;transform:translateY(-2px)}.contact-link.phone{background:linear-gradient(135deg,#dbeafe,#eff6ff);border-color:#bfdbfe;color:#1a73e8}.contact-link.phone:hover{background:linear-gradient(135deg,#bfdbfe,#dbeafe);border-color:#3b82f6}.contact-link.whatsapp{align-items:center;background:linear-gradient(135deg,#25d366,#128c7e);border:2px solid #ffffff4d;border-radius:50%;box-shadow:0 4px 12px #25d3664d;color:#fff;display:inline-flex;font-size:18px;justify-content:center;line-height:1;min-height:40px;min-width:40px;padding:10px}.contact-link.whatsapp:hover{background:linear-gradient(135deg,#20b858,#0d6e60);box-shadow:0 6px 16px #25d36666;text-decoration:none;transform:translateY(-3px) scale(1.08)}.contact-link.whatsapp-link{align-items:center;background:#0000;border:none;box-shadow:none;color:#25d366;display:inline-flex;justify-content:center;padding:4px 6px;transition:all .2s ease}.contact-link.whatsapp-link:hover{background:#25d3661a;box-shadow:none;color:#128c7e;transform:scale(1.15)}.contact-link.whatsapp-link svg{display:block}.contact-link.telegram-link{align-items:center;background:#0000;border:none;box-shadow:none;color:#08c;display:inline-flex;justify-content:center;padding:4px 6px;transition:all .2s ease}.contact-link.telegram-link:hover{background:#0088cc1a;box-shadow:none;color:#069;transform:scale(1.15)}.contact-link.telegram-link svg{display:block}.contact-link.email{background:linear-gradient(135deg,#fee2e2,#fef2f2);border-color:#fecaca;color:#ea4335}.contact-link.email:hover{background:linear-gradient(135deg,#fecaca,#fee2e2);border-color:#ef4444}.refund-section-header.clickable{background:#f8fafc;border-radius:8px;cursor:pointer;padding:12px;transition:background .2s ease;-webkit-user-select:none;user-select:none}.refund-section-header.clickable:hover{background:#f1f5f9}.refund-header-title{align-items:center;display:flex;gap:8px}.refund-icon{font-size:18px}.expand-icon{color:#64748b;font-size:12px;margin-left:auto;transition:transform .2s ease}.refund-content{animation:slideDown .3s ease;margin-top:12px}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.booking-view-root{grid-gap:16px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;gap:16px;grid-template-columns:1fr;grid-template-rows:auto 1fr;max-width:100%;padding:20px}.close-btn{background:#0000;color:#000;font-size:20px;font-weight:300;height:40px;line-height:1;opacity:.4;right:24px;top:24px;transition:all .2s ease;width:40px;z-index:100}.close-btn:hover{opacity:1;transform:rotate(90deg)}.booking-view-header{background:#0000;border-bottom:1px solid #00000014;border-radius:0;box-shadow:none;color:#000;margin-bottom:32px;padding:0 0 24px}.booking-view-header.full-span{grid-column:1/-1}.booking-view-title-row{align-items:baseline;display:flex;flex-wrap:wrap;gap:16px;margin-bottom:12px}.booking-view-title{color:#000;font-size:32px;font-weight:300;letter-spacing:-.02em;margin:0}.badge{border:1px solid #0000001f;border-radius:0;font-size:10px;font-weight:500;letter-spacing:.08em;padding:4px 12px;text-transform:uppercase}.badge.payment-status{-webkit-backdrop-filter:none;backdrop-filter:none;background:#0000;border:1px solid #0000001f;color:#000}.badge.payment-status.succeeded{background:#000;border-color:#000;color:#fff}.badge.format{background:#0000;border:1px solid #0000002e;color:#000;font-weight:600;letter-spacing:.1em}.booking-view-subline{font-size:13px;font-weight:400;letter-spacing:.02em;opacity:.5}.booking-view-root{grid-gap:64px;align-items:start;display:grid;gap:64px;grid-template-columns:1fr 380px;padding:0}.booking-main-panel,.booking-side-panel{display:flex;flex-direction:column;gap:24px}.booking-side-panel{position:-webkit-sticky;position:sticky;top:24px}.section-card{background:#0000;border:none;border-radius:0;box-shadow:none;overflow:visible;padding:0;position:relative;transition:none}.section-card:before{display:none}.section-card:hover{border-color:#0000;box-shadow:none;transform:none}.section-card:hover:before{transform:none}.section-card.compact,.section-card.tight{padding:0}.section-title{border:none;color:#0006;display:block;font-size:11px;font-weight:500;letter-spacing:.12em;margin:0 0 16px;padding:0;text-transform:uppercase}.section-title:before{display:none}.section-card.compact .section-title{font-size:11px;margin-bottom:16px}.section-grid{grid-gap:16px;display:grid;gap:16px}.section-grid.two-cols{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.section-grid>div{background:#0000;border:none;border-radius:0;display:flex;flex-direction:column;gap:4px;overflow:visible;padding:0;position:relative;transition:none}.section-grid>div:after{display:none}.section-grid>div:hover{background:#0000;box-shadow:none}.section-grid>div:hover:after{opacity:0}.label{color:#0006;font-weight:500;letter-spacing:.08em}.section-grid>div>*{color:#000;font-size:15px;font-weight:400;line-height:1.6}.section-grid>div:hover{background:linear-gradient(135deg,#f1f5f9,#f8fafc);border-color:#cbd5e1;box-shadow:0 4px 12px #00000014;transform:translateY(-2px)}.section-grid>div:hover:after{opacity:1}.label{align-items:center;color:#64748b;display:flex;font-size:11px;font-weight:700;gap:4px;letter-spacing:.8px;margin-bottom:4px;text-transform:uppercase}.section-grid>div>:not(.label):not(.contact-field):not(.contact-actions){color:#1e293b;font-size:15px;font-weight:500;line-height:1.4}.section-inline-pairs{border-top:2px solid #e2e8f0;display:flex;flex-wrap:wrap;gap:12px;margin-top:16px;padding-top:16px}.pair{align-items:center;background:linear-gradient(135deg,#f8fafc,#f1f5f9);border:1px solid #cbd5e1;border-radius:8px;display:flex;gap:8px;padding:10px 16px;transition:all .2s ease}.pair:hover{background:linear-gradient(135deg,#e2e8f0,#f1f5f9);border-color:#94a3b8;box-shadow:0 2px 4px #0000000d;transform:translateY(-1px)}.pair .label{color:#475569;font-size:10px;margin-bottom:0}.pair>:not(.label){color:#1e293b;font-size:14px;font-weight:600}.interval-chip-list{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:0;padding:0}.interval-chip{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:20px;box-shadow:0 2px 6px #667eea40;color:#fff;font-size:11px;font-weight:600;padding:8px 16px}.section-header-inline{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.section-header-inline .section-title{margin:0}.btn-notes-edit{background:#0000;border:1px solid #0000001f;border-radius:0;color:#000;cursor:pointer;font-size:11px;font-weight:500;letter-spacing:.12em;padding:8px 16px;text-transform:uppercase;transition:all .2s ease}.btn-notes-edit:hover{background:#0000000a;border-color:#0003;box-shadow:none;transform:none}.text-block{color:#475569;font-size:14px;line-height:1.6}.text-block.muted{color:#94a3b8;font-style:italic}.placeholder{opacity:.7}.section-card.meta.compact{background:#f8fafc;border-color:#cbd5e1}.meta-row{display:flex;flex-wrap:wrap;gap:16px}.meta-item{display:flex;font-size:13px;gap:6px}.payment-summary{background:#0000;border:1px solid #00000014;border-radius:0;padding:24px}.side-actions{display:flex;flex-direction:column;gap:12px}.w100{width:100%}.btn-transfer{background:#000;border:none;border-radius:0;color:#fff;cursor:pointer;font-size:11px;font-weight:500;letter-spacing:.12em;padding:14px 20px;text-transform:uppercase;transition:all .2s ease}.btn-transfer:hover{background:#000c;box-shadow:none;transform:none}.btn-delete{background:#0000;border:1px solid #0000001f;border-radius:0;color:#000;font-size:11px;font-weight:500;letter-spacing:.12em;padding:14px 20px;text-transform:uppercase}.btn-delete:hover{background:#0000000a;border-color:#0003;box-shadow:none;transform:none}.btn-delete{background:#ef4444;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:12px;transition:all .2s ease}.btn-delete:hover{background:#dc2626;box-shadow:0 4px 12px #ef44444d;transform:translateY(-2px)}.btn-create{background:#10b981;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:13px;font-weight:600;padding:10px 16px;transition:all .2s ease;width:100%}.btn-create:hover{background:#059669;box-shadow:0 4px 8px #10b9814d;transform:translateY(-1px)}@media (max-width:968px){.booking-view-root{gap:32px;grid-template-columns:1fr;padding:24px}.booking-side-panel{gap:16px;position:static}.booking-main-panel{gap:16px}.section-card{animation:fadeInUp .4s ease-out;margin-bottom:8px;padding:16px 0}}@media (max-width:600px){.booking-view-root{gap:24px;padding:16px}.booking-view-header{margin-bottom:24px;padding-bottom:16px}.booking-view-title{font-size:24px}.booking-view-title-row{gap:8px}.badge{font-size:9px;padding:3px 8px}.section-card{margin-bottom:8px;padding:16px 0}.section-title{font-size:10px;margin-bottom:12px}.section-grid{gap:12px}.section-grid.two-cols{grid-template-columns:1fr}.section-grid>div{padding:0}.client-grid{gap:8px}.field-row{padding:5px 10px}.field-row,.field-row .label,.field-value{font-size:9px}.contact-link{font-size:9px;padding:2px 4px}.link-secondary{font-size:9px;padding:2px 5px}.interval-chip-list{gap:8px}.interval-chip{font-size:9px;padding:5px 10px}.service-chip-flex{gap:8px}.service-chip{font-size:9px;padding:6px 10px}.service-price{font-size:8px;padding:2px 6px}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.section-card{animation:fadeInUp .5s ease-out backwards}.section-card:first-child{animation-delay:.05s}.section-card:nth-child(2){animation-delay:.1s}.section-card:nth-child(3){animation-delay:.15s}.section-card:nth-child(4){animation-delay:.2s}.section-card:nth-child(5){animation-delay:.25s}.admin-promocodes{background-color:#f3f7f9;color:#333;font-family:Roboto,sans-serif;min-height:calc(100vh - 80px);padding:20px}.section-header{margin-bottom:24px;padding-bottom:16px}.section-header h2{color:#343a40}.primary-button{font-size:15px;letter-spacing:.5px;padding:10px 18px;transition:transform .12s,box-shadow .12s}.primary-button:active:not(:disabled){transform:scale(.98)}.primary-button:disabled{cursor:not-allowed;opacity:.6}.promocodes-table-container{background:#fff;border:1px solid #eaf4f6;border-radius:10px;box-shadow:0 8px 24px #1018280a;overflow:hidden}.promocodes-table{border-collapse:collapse;font-size:15px;width:100%}.promocodes-table td,.promocodes-table th{border-bottom:1px solid #eef6f8;padding:12px 15px;text-align:left;vertical-align:middle}.promocodes-table th{background-color:#fbfeff;color:#2b5560;font-size:13px;font-weight:700;letter-spacing:.3px;text-transform:uppercase}.promocodes-table tbody tr:last-child td{border-bottom:none}.promocodes-table tbody tr:hover{background-color:#f8f9fa}.promocode-code{background-color:#e9ecef;border-radius:4px;color:#007bff;display:inline-block;font-family:Courier New,monospace;font-size:15px;font-weight:700;padding:4px 8px}.status{border-radius:20px;display:inline-block;font-size:11px;font-weight:600;padding:4px 10px;text-transform:uppercase}.status.active{background-color:#d4edda;color:#155724}.status.inactive{background-color:#f8d7da;color:#721c24}.status.used{background-color:#e2e3e5;color:#6c757d}.status.expired{background-color:#fff3cd;color:#856404}.actions{white-space:nowrap}.actions button{background:none;border:none;color:#6c757d;cursor:pointer;font-size:18px;margin:0 4px;padding:6px;transition:color .2s ease,transform .1s ease}.actions button:hover{color:#007bff}.actions button:active{transform:scale(.9)}.no-data{background-color:#fff;border-radius:8px;color:#7f8c8d;font-style:italic;padding:40px!important;text-align:center}.modal-overlay{z-index:1050}.modal-content{border-radius:8px;box-shadow:0 5px 15px #0000004d;max-width:500px;overflow-y:auto;width:95%}.modal-header{align-items:center;border-bottom:1px solid #dee2e6;display:flex;justify-content:space-between;padding:15px 20px}.modal-header h3{color:#343a40;font-size:20px;font-weight:600;margin:0}.close-btn{background:none;color:#6c757d;font-size:24px;padding:5px;transition:color .2s ease}.close-btn:hover{color:#dc3545}.promocode-form{padding:20px}.form-group{margin-bottom:15px}.form-group label{font-size:14px}.form-group input[type=\"date\"],.form-group input[type=\"number\"],.form-group input[type=text]{border:1px solid #ced4da;border-radius:4px;box-sizing:border-box;font-size:14px;padding:10px 12px;transition:border-color .2s ease,box-shadow .2s ease;width:100%}.form-group input:focus{box-shadow:0 0 0 .2rem #007bff40}.disabled-input{background-color:#e9ecef!important;color:#6c757d!important;cursor:not-allowed!important}.form-actions{border-top:1px solid #dee2e6;gap:10px;margin-top:25px;padding-top:20px}@media (max-width:768px){.admin-promocodes{padding:15px}.section-header{align-items:stretch;flex-direction:column;gap:15px;margin-bottom:20px;padding-bottom:12px}.section-header h2{font-size:22px;text-align:center}.primary-button{padding:12px 15px;text-align:center;width:100%}.promocodes-table-container{overflow-x:auto}.promocodes-table{min-width:700px}.promocodes-table td,.promocodes-table th{padding:10px 12px}.promocodes-table td:nth-child(4),.promocodes-table td:nth-child(5),.promocodes-table th:nth-child(4),.promocodes-table th:nth-child(5){display:none}.modal-content{margin:10px;width:95%}.form-actions{flex-direction:column;gap:10px}.form-actions button{text-align:center;width:100%}}@media (max-width:576px){.admin-promocodes{padding:10px}.section-header{margin-bottom:16px;padding:12px}.section-header h2{font-size:20px}.primary-button{font-size:14px;padding:10px 15px}.promocodes-table{min-width:auto}.promocodes-table thead{display:none}.promocodes-table,.promocodes-table tbody,.promocodes-table td,.promocodes-table tr{display:block;width:100%}.promocodes-table tr{background-color:#fff;border:1px solid #e9ecef;border-radius:8px;box-shadow:0 2px 8px #0000001a;margin-bottom:12px;padding:15px}.promocodes-table td{align-items:center;border:none;display:flex;font-size:14px;justify-content:space-between;margin:0;padding:8px 0}.promocodes-table td:first-child{border-bottom:1px solid #e9ecef;margin-bottom:10px;padding-bottom:10px}.promocodes-table td:before{color:#6c757d;content:attr(data-label);flex-shrink:0;font-size:12px;font-weight:500;margin-right:10px;min-width:120px}.promocodes-table td>:not(.actions):last-child{flex-grow:1;text-align:right}.promocodes-table td.actions{border-top:1px solid #e9ecef;gap:10px;justify-content:center;margin-top:15px;padding-left:0;padding-top:15px}.promocodes-table td.actions:before{display:none}.actions button{background-color:#e9ecef;border:1px solid #ced4da;border-radius:5px;font-size:14px;margin:0;min-width:40px;opacity:1;padding:8px 12px}.modal-overlay{align-items:flex-start;padding-top:20px}.modal-content{border-radius:8px;box-shadow:0 3px 10px #0003;margin:0 auto;max-width:none;width:95%}.promocode-form{padding:15px}.form-group label{font-size:13px;margin-bottom:5px}.form-group input[type=\"date\"],.form-group input[type=\"number\"],.form-group input[type=text]{border-radius:4px;font-size:14px;padding:10px}.form-actions{flex-direction:column;gap:10px}.form-actions button{border-radius:5px;font-size:14px;padding:12px}}@media (max-width:360px){.promocodes-table td:before{min-width:100px}.promocode-code{font-size:13px;padding:3px 6px}.status{font-size:9px;padding:2px 6px}.actions button{font-size:13px;padding:6px 10px}}.admin-discounts{background-color:#f3f7f9;color:#333;font-family:Roboto,sans-serif;min-height:calc(100vh - 80px);padding:20px}.section-header{align-items:center;border-bottom:1px solid #e9ecef;display:flex;justify-content:space-between;margin-bottom:20px;padding-bottom:10px}.section-header h2{font-size:24px;font-weight:600;margin:0}.primary-button{background:linear-gradient(180deg,#2b9bb0,#167fa0);border:none;border-radius:8px;box-shadow:0 8px 20px #1580900f;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:10px 16px;text-transform:uppercase}.primary-button:hover:not(:disabled){background-color:#218838}.discounts-table{background-color:#fff;border-collapse:collapse;width:100%}.discounts-table td,.discounts-table th{border:none;border-bottom:1px solid #eef6f8;padding:12px 14px;text-align:left}.discounts-table th{background-color:#fbfeff;color:#2b5560;font-weight:700;text-transform:uppercase}.text-center{text-align:center}.modal-overlay{background:#00000080;bottom:0;left:0;right:0;top:0;z-index:1000}.modal-content{border-radius:6px;padding:20px;width:90%}.discount-form .form-group{margin-bottom:15px}.discount-form label{display:block;font-weight:500;margin-bottom:6px}.discount-form input,.discount-form select,.discount-form textarea{border:1px solid #ced4da;border-radius:4px;font-size:14px;padding:8px;width:100%}.discount-form .form-actions{display:flex;gap:10px;justify-content:flex-end}.discount-form .primary-button{margin-left:10px}.discounts-table-container{-webkit-overflow-scrolling:touch;overflow-x:auto}.admin-pochta{background:#f7f9fb;border-radius:10px;font-family:Roboto,sans-serif;padding:24px}.admin-pochta h2{color:#222;font-weight:600;margin-bottom:8px}.form-group{margin-bottom:16px}.form-group label{color:#495057}.form-group input[type=text]{background:#fff;border:1px solid #dde6eb;border-radius:8px;box-shadow:0 1px 2px #10182808;font-size:14px;padding:10px 12px;width:100%}.features-list{display:flex;flex-wrap:wrap;gap:8px;list-style:none;padding:0}.features-list li{align-items:center;background:#fff;border:1px solid #e6eef2;border-radius:20px;color:#29606a;display:inline-flex;font-weight:500;gap:8px;padding:6px 10px}.features-list .remove-btn{background:#0000;border:none;color:#9b2b2b;cursor:pointer;font-size:14px}.add-feature{display:flex;gap:8px;margin-top:8px}.rules-list{margin-bottom:16px}.rule-item{background:#fff;border:1px solid #e9f0f3;border-radius:8px;box-shadow:0 2px 6px #10182808;margin-bottom:12px;padding:16px}.rule-display{align-items:flex-start;display:flex;gap:16px}.rule-number{align-items:center;background-color:#495057;border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:.9rem;font-weight:600;height:28px;justify-content:center;width:28px}.rule-content{flex:1 1}.rule-title{color:#343a40;font-weight:500;line-height:1.4;margin-bottom:4px}.rule-description{color:#6c757d;font-size:.9rem;line-height:1.4}.rule-actions{display:flex;flex-shrink:0;gap:8px}.edit-rule-btn,.remove-rule-btn{background:none;border:none;border-radius:4px;cursor:pointer;font-size:14px;padding:4px 8px;transition:background-color .2s}.edit-rule-btn{color:#007bff}.edit-rule-btn:hover{background-color:#007bff1a}.remove-rule-btn{color:#dc3545;font-size:16px}.remove-rule-btn:hover{background-color:#dc35451a}.rule-edit{align-items:flex-start;display:flex;gap:16px}.rule-edit-content{flex:1 1}.rule-description-input,.rule-title-input{border:1px solid #ced4da;border-radius:4px;font-family:inherit;font-size:14px;margin-bottom:8px;padding:8px;width:100%}.rule-description-input{min-height:50px;resize:vertical}.rule-edit-actions{display:flex;gap:8px}.cancel-rule-btn,.save-rule-btn{border:none;border-radius:4px;cursor:pointer;font-size:13px;padding:6px 12px;transition:background-color .2s}.save-rule-btn{background-color:#28a745;color:#fff}.save-rule-btn:hover{background-color:#218838}.cancel-rule-btn{background-color:#6c757d;color:#fff}.cancel-rule-btn:hover{background-color:#5a6268}.add-rule{background:linear-gradient(180deg,#fff,#fbfdff);border:1px dashed #d6e6ea;border-radius:8px;padding:14px}.add-rule-content{margin-bottom:12px}.new-rule-description,.new-rule-title{border:1px solid #ced4da;border-radius:4px;font-family:inherit;font-size:14px;margin-bottom:8px;padding:8px;width:100%}.new-rule-description{min-height:50px;resize:vertical}.add-rule-btn{background-color:#007bff;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;padding:8px 16px;transition:background-color .2s}.add-rule-btn:hover{background-color:#0056b3}.photos-container{grid-gap:12px;align-items:start;display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}.photo-item{background:#fff;border:1px solid #eef6f8;border-radius:8px;overflow:hidden;padding:8px;position:relative}.photo-item img{display:block;height:110px;object-fit:cover;transition:transform .25s ease;width:100%}.photo-item img:hover{transform:scale(1.03)}.delete-photo-btn{align-items:center;background:#0000008c;border:none;border-radius:50%;color:#fff;cursor:pointer;display:inline-flex;height:28px;justify-content:center;position:absolute;right:8px;top:8px;width:28px}.image-loading{background:#000000b3;border-radius:4px;color:#fff;font-size:12px;left:50%;padding:4px 8px;pointer-events:none;position:absolute;top:50%;transform:translate(-50%,-50%);z-index:1}.photo-item button{background:#0009;border:none;border-radius:4px;color:#fff;cursor:pointer;padding:2px 6px;position:absolute;right:4px;top:4px}.upload-section{align-items:center;display:flex;gap:12px;margin-top:12px}.upload-btn{background:linear-gradient(180deg,#2b9bb0,#167fa0);border:none;border-radius:8px;box-shadow:0 6px 12px #1580901f;color:#fff;cursor:pointer;padding:8px 14px}.upload-btn:disabled{cursor:not-allowed;opacity:.6}.selected-files-info{background-color:#fbfeff;border:1px solid #eef6f8;border-radius:6px;margin:8px 0;padding:8px}.selected-files-info p{color:#495057;font-weight:500;margin:0 0 4px}.selected-files-list{list-style:none;margin:0;max-height:120px;overflow-y:auto;padding:0}.selected-file-item{border-bottom:1px solid #e9ecef;color:#6c757d;font-size:12px;padding:2px 0}.selected-file-item:last-child{border-bottom:none}.form-actions{gap:12px;justify-content:flex-end;margin-top:20px}.save-btn-main{background:linear-gradient(180deg,#ffb347,#ff9f00);border:none;border-radius:10px;box-shadow:0 8px 20px #ff9f001f;color:#102a43;cursor:pointer;font-weight:600;padding:12px 18px}.save-btn-main:disabled{cursor:not-allowed;opacity:.6}@media (max-width:768px){.photos-container{grid-template-columns:repeat(2,1fr)}.photo-item img{height:100px}}.admin-statistics.enhanced{display:flex;flex-direction:column;gap:24px}.admin-statistics .stats-header{align-items:flex-end;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between}.stats-header-actions{align-items:flex-end;display:flex;gap:12px}.stats-refresh-btn{align-items:center;background:#fff;border:1px solid #0f172a14;border-radius:8px;box-shadow:none;color:#0f172a;cursor:pointer;display:flex;font-size:16px;height:32px;justify-content:center;transition:background-color .18s ease,border-color .18s ease,transform .18s ease;width:32px}.stats-refresh-btn:hover:not(:disabled){background:#0f172a0a;border-color:#0f172a24}.stats-refresh-btn:active:not(:disabled){background:#0f172a0f;transform:translateY(1px)}.stats-refresh-btn:disabled{cursor:default;opacity:.5}.stats-refresh-btn:focus-visible{outline:2px solid #2563eb;outline-offset:2px}.stats-refresh-btn .icon{display:inline-block;line-height:1}.stats-refresh-btn.is-loading .icon{animation:stats-spin .8s linear infinite}.admin-statistics .kpi-panel input[type=date],.admin-statistics .kpi-panel select{background:#fff;border:1px solid #d1d5db;border-radius:6px;font-size:13px;padding:6px 10px}.kpi-groups{gap:28px}.kpi-group,.kpi-groups{display:flex;flex-direction:column}.kpi-group{gap:12px}.kpi-group .group-title{color:#334155;font-size:14px;font-weight:700;letter-spacing:.5px;padding-left:4px;text-transform:uppercase}.kpi-cards{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.kpi-card{background:linear-gradient(135deg,#fff,#f1f5f9);border:1px solid #e2e8f0;border-radius:12px;display:flex;flex-direction:column;gap:4px;min-height:88px;overflow:hidden;padding:14px 16px;position:relative}.kpi-card:after{background:radial-gradient(circle at 80% 20%,#ffc89640,#0000 60%);content:"";inset:0;pointer-events:none;position:absolute}.kpi-label{color:#64748b;font-size:11px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.kpi-value{color:#0f172a;font-size:20px;font-weight:700}.kpi-value-row{align-items:center;display:flex;gap:8px}.delta{background:#e2e8f0;border-radius:10px;color:#334155;font-size:11px;font-weight:600;line-height:1.2;padding:2px 6px}.delta.pos{background:#dcfce7;color:#166534}.delta.neg{background:#fee2e2;color:#b91c1c}.delta.neutral{background:#e2e8f0;color:#475569}.utilization-wrapper{align-items:center;display:flex;gap:10px}.util-donut{--u:0;align-items:center;background:conic-gradient(#0ea5e9 calc(var(--u)*1%),#e2e8f0 0);border-radius:50%;color:#0f172a;display:flex;font-size:11px;font-weight:700;height:60px;justify-content:center;position:relative;width:60px}.util-donut:after{background:#fff;border-radius:50%;content:"";inset:6px;position:absolute}.util-donut span{position:relative;z-index:2}.dist-section{grid-gap:28px;display:grid;gap:28px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.dist-block{background:#fff;border:1px solid #e2e8f0;border-radius:14px;box-shadow:0 4px 8px -2px #0000000a;display:flex;flex-direction:column;gap:14px;padding:18px 20px}.dist-block h3{color:#1e293b;font-size:15px;font-weight:600;margin:0}.mini-bars{display:flex;flex-direction:column;gap:6px}.mini-bar-row{grid-gap:10px;align-items:center;display:grid;font-size:12px;gap:10px;grid-template-columns:70px 1fr 40px}.mini-bar-label{color:#475569;font-weight:500}.mini-bar-track{background:#f1f5f9;border-radius:6px;height:10px;overflow:hidden;position:relative}.mini-bar-fill{background:linear-gradient(90deg,#0ea5e9,#6366f1);border-radius:6px;bottom:0;left:0;position:absolute;top:0}.mini-bar-value{color:#0f172a;font-weight:600;text-align:right}.range-hint{font-weight:500}.prev-hint,.range-hint{color:#64748b;font-size:12px}.stats-skeleton-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin-top:10px}.kpi-card.skeleton{animation:skeleton 1.2s ease-in-out infinite;background:linear-gradient(90deg,#f1f5f9,#e2e8f0 40%,#f1f5f9 80%);background-size:200% 100%}.services-block{padding-bottom:16px}.services-table{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 6px 12px -6px #0f172a33;display:flex;flex-direction:column;overflow:hidden}.services-row{grid-gap:12px;align-items:center;color:#1f2937;display:grid;font-size:13px;gap:12px;grid-template-columns:40px 1fr 80px 110px 80px;padding:10px 14px}.services-row:nth-child(2n){background:#f8fafc}.services-head{background:#0f172a;color:#f8fafc;font-size:11px;font-weight:600;letter-spacing:.6px;text-transform:uppercase}.services-head span{align-items:center;display:flex}.services-body{display:flex;flex-direction:column}.services-name{color:#0f172a;font-weight:600}.services-row.flag-multi{background:linear-gradient(90deg,#f7fee7d9,#ecfccbf2);box-shadow:inset 3px 0 0 0 #65a30d}.services-row.flag-multi:nth-child(2n){background:linear-gradient(90deg,#f3ffdfe6,#e4facdf2)}.services-hint{align-items:flex-start;color:#6b7280;display:flex;font-size:11px;gap:4px;margin-top:8px}.services-hint span{flex:1 1}@keyframes skeleton{0%{background-position:0 0}to{background-position:-200% 0}}.stats-refresh-btn.is-loading{pointer-events:none}@keyframes stats-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.stats-loading{color:#475569;font-size:14px}.stats-error{color:#dc2626;font-weight:600}@media (max-width:900px){.kpi-groups{gap:40px}}@media (max-width:700px){.services-row{font-size:12px;gap:10px;grid-template-columns:30px 1fr 70px 90px 70px}.services-head{font-size:10px}}@media (max-width:600px){.kpi-cards{grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}.mini-bar-row{grid-template-columns:60px 1fr 34px}}.login-page{align-items:center;background-color:#f8f9fa;display:flex;flex-direction:column;font-family:Andale Mono,monospace;justify-content:center;min-height:100vh;padding:20px;transition:opacity .5s ease-out}.login-page.page-exit{opacity:0}.login-container{background:#fff;border-radius:12px;box-shadow:0 8px 25px #0000001a;max-width:450px;overflow:hidden;padding:40px;width:100%}.login-container h2{color:#333;font-size:1.8rem;margin-bottom:30px;text-align:center}.login-form{background:#0000;border-radius:0;box-shadow:none;max-width:400px;padding:0;width:100%}.error-message{margin-bottom:10px}.auth-button,.primary-button{background:#fdd835;border:1px solid #333;border-radius:4px;color:#222;cursor:pointer;display:inline-block;font-family:Andale Mono,monospace;font-size:.9rem;font-weight:500;letter-spacing:.5px;padding:10px 18px;position:relative;text-decoration:none;transition:all .25s ease;width:100%}.auth-button:hover:not(:disabled),.primary-button:hover{background:#fbd42a;box-shadow:inset 0 0 0 2px #0000000d;color:#111;text-decoration:none}.auth-button:active:not(:disabled),.primary-button:active{background:#e6be00;transform:translateY(1px)}.auth-button:disabled,.primary-button:disabled{background:#e0e0e0;border-color:#c8c8c8;color:#888;cursor:not-allowed}.login-form .captcha-group{margin:15px 0;overflow:hidden;width:100%}.login-form .captcha-group>div,.login-form .form-group .h-captcha,.login-form .form-group>div{border-radius:4px;display:flex;justify-content:flex-start;margin:10px 0;overflow:hidden;width:100%}.login-form .captcha-group iframe,.login-form .form-group iframe{border-radius:4px;height:78px!important;transform:scale(1.3);transform-origin:left center;width:100%!important}@media (max-width:480px){.login-container{max-width:100%;overflow:visible;padding:20px}.login-form{max-width:100%}.login-form .captcha-group iframe,.login-form .form-group iframe{height:72px!important;transform:scale(1.1)}}.auth-container{align-items:center;background-color:#f8f9fa;display:flex;flex-direction:column;font-family:Andale Mono,monospace;justify-content:center;min-height:100vh;padding:20px;transition:opacity .5s ease-out}.auth-container.page-exit{opacity:0}.auth-card{background:#fff;border-radius:12px;box-shadow:0 8px 25px #0000001a;max-width:450px;padding:40px;width:100%}.auth-card h2{color:#333;font-size:1.8rem;margin-bottom:30px;text-align:center}.auth-form{width:100%}.form-group{margin-bottom:20px}.form-group label{color:#333;margin-bottom:5px}.form-group input{border:1px solid #ccc;font-size:1rem;padding:10px;transition:border-color .3s}.form-group input:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff40}.form-group input.error{border-color:#d9534f;box-shadow:0 0 0 2px #d9534f40}.form-group .h-captcha{border-radius:4px;margin:10px 0;max-width:302px;overflow:hidden;width:100%}.error-text{color:#d9534f;margin-top:5px}.error-message{background-color:#f8d7da;border:1px solid #f5c6cb;color:#d9534f;margin-bottom:20px;padding:10px;text-align:center}.auth-button{margin-top:10px}.auth-links{border-top:1px solid #eee;margin-top:20px;padding-top:20px;text-align:center}.auth-links p{color:#666;font-size:.9rem;margin:0}.auth-links a{color:#007bff;font-weight:500;text-decoration:none}.auth-links a:hover{text-decoration:underline}.back-link{display:inline-block;font-size:.9rem;margin-bottom:20px;transition:color .3s}.back-link:hover{color:#333}@media (max-width:480px){.auth-container{padding:10px}.auth-card{max-width:100%;padding:20px}.form-group .h-captcha{margin-bottom:5px;transform:scale(.8);transform-origin:left top}}.dashboard-page{-webkit-font-smoothing:antialiased;background:#fff;font-family:Montserrat,sans-serif;font-weight:400;line-height:1.45;min-height:100vh}.dashboard-header{background:#fff;border-bottom:1px solid #f2f2f2;padding:16px 0}.header-content{align-items:center;display:flex;height:48px;justify-content:space-between;margin:0 auto;max-width:1080px;padding:0 40px}.header-content h1{color:#111;font-size:1.35rem;font-weight:600;letter-spacing:.5px;margin:0}.back-link{align-items:center;border-radius:10px;color:#666;display:flex;font-size:1.6rem;font-weight:700;height:36px;justify-content:center;text-decoration:none;transition:.25s;width:36px}.back-link:hover{background:#f4f4f4;color:#111}.logout-btn{align-items:center;background:none;border:none;border-radius:10px;color:#666;cursor:pointer;display:flex;font-size:1.2rem;height:40px;justify-content:center;transition:.25s;width:40px}.logout-btn:hover{background:#f4f4f4;color:#111}.dashboard-content{margin:0 auto;max-width:1080px;padding:48px 40px 140px}.user-info-block{margin-bottom:56px}.user-info-block h2{color:#111;font-size:2rem;font-weight:400;letter-spacing:.5px;margin:0 0 28px}.user-details{margin-bottom:34px}.user-details p{color:#555;font-size:.95rem;margin:10px 0}.user-details strong{color:#111;font-weight:600}.profile-actions{display:flex;flex-wrap:wrap;gap:14px}.btn{border-radius:14px;font-family:inherit;font-weight:600;letter-spacing:.5px;transition:.25s}.btn,.btn i{font-size:.85rem}.btn-primary{background:#111;border-color:#111}.btn-primary:hover{background:#222;border-color:#222}.btn-secondary{background:#fff;border-color:#ddd;color:#111}.btn-secondary:hover{border-color:#111}.btn-outline-primary{background:#fff;border-color:#ddd;color:#111}.btn-outline-primary:hover{background:#f7f7f7;border-color:#111}.btn-outline-danger{background:#fff;border-color:#ddd;color:#d73a49}.btn-outline-danger:hover{background:#fff5f5;border-color:#d73a49}.bookings-section{margin-bottom:56px}.bookings-section h3{color:#111;font-size:1.2rem;font-weight:600;letter-spacing:.4px;margin:0 0 22px}.loading{color:#999;padding:64px 0;text-align:center}.error-message{background:#ffeaea;border:1px solid #f5c2c2;border-radius:14px;font-size:.85rem;padding:16px 20px}.no-bookings{color:#666;padding:72px 0;text-align:center}.no-bookings p{font-size:.95rem;margin:0 0 24px}.bookings-list{grid-gap:22px;align-items:start;display:grid;gap:22px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.booking-card{position:relative}.booking-card.compact{padding:0}.booking-summary{background:#fafafa;border:1px solid #efefef;border-radius:18px;cursor:pointer;display:flex;flex-direction:column;gap:10px;padding:16px 18px 18px;position:relative;transition:.28s}.booking-summary:hover{background:#fff;border-color:#e2e2e2;box-shadow:0 4px 18px -4px #0000000f,0 2px 6px -2px #0000000a}.booking-summary:active{transform:translateY(1px)}.booking-date{color:#111;font-size:.9rem;font-weight:600;letter-spacing:.25px}.booking-price{color:#111;font-size:1.05rem;font-weight:600}.booking-studio{background:#111;color:#fff;font-size:.55rem;letter-spacing:1px;padding:3px 8px 2px}.booking-pay-label,.booking-studio{border-radius:30px;display:inline-block;font-weight:600;text-transform:uppercase}.booking-pay-label{font-size:.65rem;letter-spacing:.5px;padding:4px 10px 3px}.booking-pay-label,.booking-pay-label.prepay{background:#fff4d8;color:#b86800}.booking-pay-label.paid{background:#e5f8e9;color:#2e7d32}.booking-pay-channel{align-items:center;background:#f7f7f7;border:1px solid #0000000d;border-radius:30px;color:#333;display:inline-flex;font-size:.55rem;font-weight:600;letter-spacing:.45px;padding:4px 10px 3px;text-transform:uppercase}.booking-pay-channel.manual_transfer{background:#f5f0ff;border-color:#6366f159;color:#4338ca}.booking-pay-channel.yookassa{background:#ecfdf5;border-color:#04785759;color:#047857}.booking-meta-row{align-items:center;display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}.booking-card.past .booking-summary{opacity:.65}.booking-card.overdue .booking-summary{background:#fff4f2;border-color:#ffd7d2;box-shadow:0 0 0 1px #ff786426}.booking-card.overdue .booking-summary:hover{background:#fff9f8;border-color:#ffbdb2}.booking-card.overdue .booking-pay-label.prepay{background:#ffe1db;color:#c23c1d}.booking-card.past .booking-summary:hover{background:#fcfcfc;opacity:.85}.payment-progress{background:#e9e9e9;border-radius:4px;height:6px;margin-top:4px;overflow:hidden;position:relative}.payment-progress-bar{background:linear-gradient(90deg,#ffb547,#ff8c42 40%,#2e7d32 90%);height:100%;transition:width .4s ease;width:0}.payment-progress-bar.full{background:#2e7d32}.payment-hint{color:#4b5563;font-size:.7rem;font-weight:600;letter-spacing:.4px;margin-bottom:10px}.payment-hint.transfer{background:#fff7ed;border:1px solid #fed7aa;border-radius:12px;color:#9a3412;padding:10px 14px}.history-pagination{display:flex;justify-content:center;margin-top:18px}.history-pagination .btn-toggle-history{background:#fff;border:1px solid #ddd;border-radius:30px;cursor:pointer;font-size:.7rem;font-weight:600;letter-spacing:.5px;padding:8px 18px;transition:.25s}.history-pagination .btn-toggle-history:hover{background:#f8f8f8;border-color:#111}.modal-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0000008c;display:flex;inset:0;justify-content:center;padding:24px;position:fixed;z-index:9999}.booking-modal-shell{animation:dashPop .33s ease;background:#fff;border:1px solid #ececec;border-radius:28px;box-shadow:0 30px 70px -25px #00000052,0 10px 28px -6px #0000002e;display:flex;flex-direction:column;max-height:92vh;overflow:hidden;position:relative;width:min(760px,100%)}.booking-modal-head{align-items:flex-start;background:linear-gradient(135deg,#fafafa,#f3f3f3 60%,#f8f8f8);border-bottom:1px solid #ececec;display:flex;gap:20px;justify-content:space-between;padding:26px 34px 18px}.modal-title-row{align-items:center;display:flex;flex-wrap:wrap;gap:10px}.modal-title{font-size:1.35rem;font-weight:600;letter-spacing:.5px;margin:0}.status-chip,.studio-chip{background:#eee;border-radius:30px;color:#333;font-size:.6rem;font-weight:600;letter-spacing:.9px;padding:6px 10px 5px;text-transform:uppercase}.studio-chip{background:#111;color:#fff}.status-chip.chip-confirmed{background:#e4f7e6;color:#2d7e35}.status-chip.chip-pending{background:#fff4d8;color:#b86800}.status-chip.chip-completed{background:#e6f4ff;color:#0f6f9a}.status-chip.chip-canceled{background:#ffe2e2;color:#c02b2b}.time-line{align-items:center;color:#555;display:flex;flex-wrap:wrap;font-size:.8rem;gap:10px;margin-top:10px}.time-line .dot{background:#ccc;border-radius:50%;display:inline-block;height:6px;width:6px}.close-btn.modern{background:#fff;border:1px solid #e2e2e2;border-radius:14px;font-size:1.1rem;height:40px;position:static;width:40px}.close-btn.modern:hover{background:#f2f2f2}.payment-summary-block{background:#fff;border-bottom:1px solid #eee;display:flex;flex-direction:column;gap:14px;padding:18px 34px 14px}.payment-summary-block .amounts{grid-gap:6px;display:grid;gap:6px;grid-template-columns:repeat(auto-fit,minmax(190px,1fr))}.amount-line{display:flex;font-size:.8rem;justify-content:space-between}.amount-line .lbl{color:#777;font-weight:600;letter-spacing:.7px;text-transform:uppercase}.amount-line .val{color:#111;font-weight:600}.amount-line.remaining .val{color:#c46b00}.amount-line .val.warn .meta{background:#fff4d8;border-radius:12px;font-size:.65rem;font-weight:500;letter-spacing:.5px;margin-left:6px;padding:3px 6px 2px}.progress-wrap{margin-top:4px}.progress-track{background:#ececec;border-radius:5px;height:8px;overflow:hidden;position:relative}.progress-bar{background:linear-gradient(90deg,#ffb547,#ff8c42 40%,#2e7d32 95%);height:100%;transition:width .5s ease;width:0}.progress-bar.done{background:#2e7d32}.booking-modal-body{flex:1 1;overflow-y:auto;padding:28px 34px 10px}.info-grid{grid-gap:20px 26px;display:grid;gap:20px 26px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.info-item{position:relative}.info-label{color:#777;font-size:.6rem;font-weight:600;letter-spacing:.8px;margin-bottom:6px;text-transform:uppercase}.info-value{color:#111;font-size:.95rem;font-weight:500;line-height:1.35}.info-value.mono{font-family:Fira Code,Consolas,monospace;word-break:break-all}.info-value.small{font-size:.75rem;opacity:.8}.info-item.span-2{grid-column:1/-1}.booking-modal-footer{background:#fafafa;border-top:1px solid #eee;display:flex;flex-direction:column;gap:14px;padding:18px 34px 28px}.booking-modal-footer .footer-actions{display:flex;flex-wrap:wrap;gap:12px}.booking-modal-footer .btn{flex:1 1;justify-content:center}.inline-error{color:#d73a49;font-size:.7rem;font-weight:600}@media (max-width:640px){.booking-modal-shell{border-radius:22px}.booking-modal-head{padding:22px 22px 14px}.payment-summary-block{padding:16px 22px 12px}.booking-modal-body{padding:24px 22px 6px}.booking-modal-footer{padding:16px 22px 22px}.modal-title{font-size:1.15rem}.info-grid{gap:16px 18px}.amount-line{font-size:.7rem}}.modal-content{animation:dashPop .33s ease;background:#fff;border:1px solid #ececec;border-radius:22px;box-shadow:0 24px 60px -24px #00000059;display:flex;flex-direction:column;max-height:90vh;max-width:480px;overflow:hidden;position:relative;width:100%}@keyframes dashPop{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.close-btn{align-items:center;background:#f5f5f5;border:none;border-radius:50%;color:#666;cursor:pointer;display:flex;font-size:1.1rem;height:34px;justify-content:center;position:absolute;right:14px;top:14px;transition:.25s;width:34px}.close-btn:hover{background:#ececec;color:#111}.booking-details{flex:1 1;max-height:calc(90vh - 72px);overflow-y:auto;padding:26px 26px 30px}.booking-details::-webkit-scrollbar{width:12px}.booking-details::-webkit-scrollbar-track{background:#f5f5f5;border-radius:12px}.booking-details::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#d0d0d0,#ababab);border:2px solid #f5f5f5;border-radius:12px}.booking-details{scrollbar-color:#b0b0b0 #f5f5f5;scrollbar-width:thin}.detail-item{border-bottom:1px solid #f2f2f2;margin:0 0 18px;padding:0 0 14px}.detail-item:last-of-type{border-bottom:none;margin-bottom:0}.detail-item .label{color:#666;display:block;font-size:.7rem;font-weight:600;letter-spacing:.8px;margin:0 0 6px;text-transform:uppercase}.detail-item .value{color:#111;font-size:.95rem;font-weight:500;line-height:1.45}.detail-item .value.mono{font-family:Fira Code,Consolas,Courier New,monospace;letter-spacing:.3px;word-break:break-all}.detail-item .hint{color:#777;display:block;font-size:.75rem;line-height:1.25;margin-top:4px}.detail-item.total-price{border-bottom:none;border-top:2px solid #efefef;margin-top:24px;padding-top:18px}.detail-item.total-price .label{font-size:.65rem}.detail-item.total-price .value{font-size:1.15rem;font-weight:600}.booking-actions{border-top:1px solid #f0f0f0;display:flex;gap:10px;margin-top:26px;padding-top:16px}.booking-actions .btn{border-radius:10px;flex:1 1;font-size:.75rem;justify-content:center;padding:10px 16px}.status-badge{border-radius:4px;font-size:.6rem;font-weight:600;letter-spacing:.8px;padding:4px 8px;text-transform:uppercase}.status-badge.status-confirmed{background:#e9f8ea;color:#2d8a37}.status-badge.status-pending{background:#fff6dd;color:#c07b00}.status-badge.status-completed{background:#e6f6ff;color:#0f7da2}.status-badge.status-canceled{background:#ffe8e8;color:#d73a49}.error-message,.loading,.no-bookings{font-family:inherit}@media (max-width:1100px){.dashboard-content{padding:44px 34px 130px}}@media (max-width:900px){.bookings-list{gap:20px;grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}}@media (max-width:780px){.dashboard-content{padding:36px 28px 120px}.bookings-list{grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}}@media (max-width:640px){.bookings-list{grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.booking-summary{padding:14px 16px 16px}}@media (max-width:520px){.bookings-list{gap:16px;grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}.dashboard-content{padding:30px 18px 110px}.booking-price{font-size:1rem}}@media (max-width:480px){.booking-actions{flex-wrap:wrap;gap:10px}.booking-actions .btn{flex:1 1;font-size:.7rem;min-width:140px;padding:11px 12px}.detail-item{margin-bottom:16px}}@media (max-width:768px){.header-content{padding:0 22px}.header-content h1{font-size:1.15rem}.user-info-block h2{font-size:1.7rem}.profile-actions{align-items:stretch;flex-direction:column}.modal-overlay{padding:18px}.modal-content{border-radius:20px;max-width:100%}.booking-details{padding:22px 22px 26px}}.profile-page{background-color:#fff;font-family:Andale Mono,monospace;font-weight:400;line-height:1.6;min-height:100vh}.profile-header{background:#fff;border-bottom:1px solid #f0f0f0;padding:16px 0}.profile-header .header-content{align-items:center;display:flex;height:40px;justify-content:space-between;margin:0 auto;max-width:800px;padding:0 24px}.profile-header h1{color:#1a1a1a;font-size:1.3rem;font-weight:500}.profile-header .back-link,.profile-header h1{align-items:center;display:flex;height:32px;line-height:32px;margin:0}.profile-header .back-link{color:#666;font-size:1.6rem;font-weight:700;justify-content:center;text-decoration:none;transition:color .2s;width:32px}.profile-header .back-link:hover{color:#1a1a1a}.profile-content{margin:0 auto;max-width:600px;padding:48px 24px}.profile-form{background:#fff}.error-message{background-color:#ffeaea;border:1px solid #f0c0c0;border-radius:4px;color:#d73a49}.error-message,.success-message{font-size:.9rem;margin-bottom:24px;padding:16px}.success-message{background-color:#f0f8f0;border:1px solid #c0f0c0;border-radius:4px;color:#28a745}.form-section{margin-bottom:48px}.form-section h3{border-bottom:1px solid #f5f5f5;color:#1a1a1a;font-size:1.1rem;font-weight:500;margin:0 0 24px;padding-bottom:12px}.form-group{margin-bottom:24px}.form-group label{color:#1a1a1a;display:block;font-size:.9rem;font-weight:500;margin-bottom:8px}.form-group input{background-color:#fff;border:1px solid #e0e0e0;border-radius:4px;box-sizing:border-box;color:#1a1a1a;font-family:Andale Mono,monospace;font-size:.9rem;padding:12px 16px;transition:border-color .2s;width:100%}.form-group input:focus{border-color:#1a1a1a;outline:none}.form-group input.error{border-color:#d73a49}.form-group input.disabled-field,.form-group input:disabled{background-color:#f8f9fa;color:#666;cursor:not-allowed}.error-text{color:#d73a49}.error-text,.field-note{display:block;font-size:.8rem;margin-top:4px}.field-note{color:#666}.form-actions{border-top:1px solid #f5f5f5;display:flex;gap:16px;margin-top:32px;padding-top:24px}.btn{align-items:center;background:none;border:1px solid;border-radius:4px;cursor:pointer;display:inline-flex;font-family:Andale Mono,monospace;font-size:.9rem;font-weight:400;gap:8px;padding:12px 20px;text-decoration:none;transition:all .2s}.btn-primary{background-color:#1a1a1a;border-color:#1a1a1a;color:#fff}.btn-primary:hover{background-color:#333;border-color:#333}.btn-primary:disabled{background-color:#ccc;border-color:#ccc;cursor:not-allowed}.btn-secondary{background-color:#fff;border-color:#e0e0e0;color:#1a1a1a}.btn-secondary:hover{border-color:#1a1a1a}@media (max-width:768px){.profile-header .header-content{padding:0 16px}.profile-header h1{font-size:1.2rem}.profile-content{padding:32px 16px}.form-section{margin-bottom:32px}.form-actions{flex-direction:column}.btn{justify-content:center}}@media (max-width:480px){.form-group input{font-size:.95rem}.form-section h3{font-size:1rem}}.education-page{background:#fff;color:#000;font-family:Montserrat,sans-serif;height:100vh;overflow:hidden;position:relative;width:100vw}.edu-canvas{display:block;height:100%;left:0;position:absolute;top:0;width:100%}.edu-overlay{flex-direction:column;inset:0;position:absolute}.edu-overlay,.edu-top-bar{display:flex;pointer-events:none}.edu-top-bar{align-items:flex-start;gap:24px;justify-content:space-between;padding:24px clamp(14px,4vw,48px)}.education-page .logo-brand{color:#000;cursor:pointer;font-family:League Spartan,sans-serif;font-size:clamp(32px,4.5vw,64px);font-weight:700;line-height:.9;pointer-events:auto;text-decoration:none;transition:opacity .3s ease}.education-page .logo-brand:hover{opacity:.8}.logo-mini{cursor:pointer;display:flex;flex-direction:column;line-height:1;pointer-events:auto;-webkit-user-select:none;user-select:none}.logo-mini .logo-word{text-transform:uppercase}.logo-mini .logo-word.thin{font-size:clamp(20px,3vw,38px);font-weight:300}.logo-mini .logo-word.bold{font-size:clamp(28px,4vw,56px);font-weight:700;letter-spacing:3px;margin-top:-4px}.edu-title{flex:1 1;font-size:clamp(40px,6vw,90px);font-weight:300;letter-spacing:4px;line-height:.9;pointer-events:none;text-align:center;text-transform:uppercase}.score-box{font-size:clamp(24px,3vw,46px);min-width:80px;text-align:right}.notice-center,.score-box{font-weight:600;letter-spacing:4px;pointer-events:none}.notice-center{font-size:clamp(18px,2.4vw,34px);margin-top:clamp(20px,5vh,80px)}.hint-bottom,.notice-center{text-align:center;text-transform:uppercase}.hint-bottom{font-size:12px;letter-spacing:3px;margin-top:auto;opacity:.55;padding:0 0 28px;pointer-events:none}.restart-overlay{align-items:center;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#ffffffe0;cursor:pointer;display:flex;inset:0;justify-content:center;pointer-events:auto;position:absolute}.restart-inner{text-align:center}.restart-title{font-size:clamp(34px,5vw,70px);font-weight:600;letter-spacing:6px;text-transform:uppercase}.restart-score{font-size:clamp(18px,2.5vw,32px);letter-spacing:3px;margin-top:10px}.restart-actions{display:flex;gap:18px;justify-content:center;margin-top:26px}.btn-action{background:#000;border:none;color:#fff;cursor:pointer;font-family:inherit;font-size:14px;letter-spacing:2px;padding:12px 26px;text-transform:uppercase;transition:background .25s,transform .25s}.btn-action:hover{background:#222}.btn-action:active{transform:translateY(2px)}.restart-hint{font-size:11px;letter-spacing:3px;margin-top:18px;opacity:.55;text-transform:uppercase}@media (max-width:680px){.edu-top-bar{align-items:flex-start;flex-direction:column}.edu-title{text-align:left}.score-box{align-self:flex-end}.notice-center{letter-spacing:2px}}.payment-success-layout{background:#f5f5f5;font-family:Montserrat,sans-serif;padding:50px 20px 70px}.payment-container{margin:0 auto;max-width:1180px}.payment-header{margin-bottom:30px;text-align:left}.payment-title{font-size:34px;font-weight:600;letter-spacing:1px;margin:0 0 15px}.status-chip{background:#ececec;border-radius:999px;color:#333;display:inline-block;font-size:14px;font-weight:600;letter-spacing:.5px;padding:8px 18px}.status-succeeded{background:#e3f9e6;color:#167b2d}.status-pending,.status-waiting_for_capture{background:#fff5d6;color:#9c6a00}.status-canceled,.status-failed{background:#ffe5e5;color:#b40000}.status-unknown{background:#d9d9d9;color:#555}.status-hint{color:#666;font-size:12px;margin-top:8px}.error-box{background:#ffe5e5;border-radius:10px;color:#7d0000;font-size:14px;margin:18px 0 0;padding:12px 18px}.grid-sections{grid-gap:28px;display:grid;gap:28px;grid-template-columns:repeat(auto-fit,minmax(360px,1fr))}.panel{background:#fff;border:1px solid #eee;border-radius:14px;box-shadow:0 4px 18px -4px #0000000f;overflow:hidden;padding:26px 28px 30px;position:relative}.panel:before{background:#ffeb3b;border-radius:0 0 6px 0;content:"";height:4px;left:0;position:absolute;top:0;width:60px}.panel-title{font-size:20px;font-weight:600;letter-spacing:.5px;margin:0 0 18px}.kv-grid{grid-gap:14px;display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.kv-item{background:#fafafa;border:1px solid #f0f0f0;border-radius:10px;display:flex;flex-direction:column;gap:4px;padding:12px 14px 14px;position:relative}.kv-item.highlight{background:#fffef0;border-color:#ffeb3b}.kv-label{color:#666;font-size:12px;font-weight:600;letter-spacing:.8px;text-transform:uppercase}.kv-value{color:#222;font-size:14px;word-break:break-all}.kv-value.mono{font-family:Roboto Mono,monospace;font-size:12px}.kv-value.strong{font-size:18px;font-weight:600}.kv-value.small{font-size:11px;opacity:.85}.placeholder{background:#fafafa;border:1px dashed #ddd;border-radius:10px;color:#666;font-size:14px;padding:18px 20px;text-align:center}.booking-blocks{display:flex;flex-direction:column;gap:18px}.booking-date-card{background:#fffefc;border:1px solid #f4e7aa;border-radius:12px;box-shadow:0 2px 10px -2px #0000000d;padding:18px 20px 16px}.date-head{align-items:center;display:flex;flex-wrap:wrap;gap:14px;margin-bottom:10px}.date-text{font-size:16px;font-weight:600}.range-text{color:#555;font-size:13px}.slot-list{display:flex;flex-direction:column;gap:8px}.slot-line{align-items:center;background:#fff;border:1px solid #eee;border-radius:10px;display:grid;font-size:14px;grid-template-columns:130px 1fr 120px;padding:10px 14px}.slot-time{font-weight:600}.slot-format{color:#333}.slot-price{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-weight:500;text-align:right}.payment-actions{display:flex;flex-wrap:wrap;gap:18px;margin-top:40px}.btn-ghost,.btn-main,.btn-outline{border-radius:10px;cursor:pointer;display:inline-block;font-size:14px;font-weight:600;letter-spacing:.5px;padding:14px 26px;text-align:center;text-decoration:none;transition:background .25s,color .25s,border-color .25s}.btn-main{background:#ffeb3b;border:1px solid #e6d200;color:#222}.btn-main:hover{background:#fdd835}.btn-ghost{background:#f5f5f5;border:1px solid #ddd;color:#222}.btn-ghost:hover{background:#ececec}.btn-outline{background:#fff;border:1px solid #ccc;color:#333}.btn-outline:hover{border-color:#999}.btn-outline.full{margin-top:20px;width:100%}@media (max-width:860px){.kv-grid{grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}.slot-line{grid-template-columns:110px 1fr 100px}}@media (max-width:640px){.payment-title{font-size:28px}.grid-sections{grid-template-columns:1fr}.panel{padding:22px 22px 26px}.kv-item{padding:10px 12px 12px}.booking-date-card{padding:16px 16px 14px}.slot-line{grid-template-columns:90px 1fr 90px;padding:8px 12px}.payment-actions{flex-direction:column}.btn-ghost,.btn-main{width:100%}}@media (max-width:480px){.payment-success-layout{padding:30px 14px 50px}.payment-title{font-size:24px}.kv-grid{grid-template-columns:1fr}.kv-item{padding:9px 11px 11px}.kv-value.strong{font-size:16px}.slot-line{grid-template-areas:"time price" "format price";grid-template-columns:1fr 80px;row-gap:4px}.slot-time{grid-area:time}.slot-format{font-size:12px;grid-area:format;opacity:.85}.slot-price{grid-area:price;justify-self:end}.date-head{align-items:flex-start;flex-direction:column;gap:4px}.range-text{font-size:12px}.btn-ghost,.btn-main,.btn-outline{font-size:13px;padding:12px 20px}.status-chip{font-size:13px;padding:6px 14px}.kv-value.small{font-size:10px}}@media (max-width:360px){.payment-title{font-size:22px}.kv-item{padding:8px 10px 10px}.slot-line{padding:7px 10px}.btn-ghost,.btn-main,.btn-outline{font-size:12px;padding:11px 16px}}.kv-value.mono,.kv-value.small{overflow-wrap:anywhere;word-break:break-all}
/*# sourceMappingURL=main.194d5e2b.css.map*/