/* BBPlay: локальные фирменные шрифты и палитра из мобильного приложения. */
.primary-button:disabled{opacity:.5;cursor:wait;transform:none}.payment-button{margin-top:20px}.room-scroll{overflow-x:auto;margin-bottom:24px;padding:5px}.real-room{display:grid;grid-template-columns:repeat(6,42px);gap:7px}.real-room.positioned{display:block;position:relative}.real-room.positioned .pc{position:absolute;width:42px;height:50px}.real-room .pc{font-size:11px}.club-map{overflow:hidden}#sms-controls label{margin-top:20px}
.login-layout:not([hidden]){display:flex;justify-content:center;max-width:532px;margin:0 auto}.login-layout .intro{display:none}.login-layout .auth-card{width:100%}
@font-face{font-family:'DIN Round Pro';src:url('./assets/din-round-regular.otf') format('opentype');font-weight:400 500;font-style:normal;font-display:swap}
@font-face{font-family:'DIN Round Pro';src:url('./assets/din-round-bold.otf') format('opentype');font-weight:600 900;font-style:normal;font-display:swap}
:root{--bg:#141f2d;--surface:#223141;--line:#314356;--muted:#9ca8b7;--text:#f3f6fb;--accent:#20d36a;--button:#009a1a;--pink:#ff00ba;font-family:'DIN Round Pro',Arial,sans-serif;background:var(--bg)}
body{background:radial-gradient(ellipse at 0% 15%,#20d36a08,transparent 45%),radial-gradient(ellipse at 100% 80%,#b01aa309,transparent 45%),var(--bg)}
.header{background:#141f2df0;border-color:var(--line);height:94px}
.brand{font-size:18px;letter-spacing:.4px;gap:12px}.brand-logo{width:63px;height:63px;object-fit:cover;clip-path:inset(18% 20% 17% 26%);transform:scale(1.55);margin-right:3px}.brand-sub{font-size:10px;letter-spacing:2px;color:var(--accent)}
.header-caption{color:#b7c5d4;font-size:11px}.text-button{color:var(--accent)}
main{padding-top:48px}.login-layout{gap:65px}.intro h1{font-size:clamp(40px,4.4vw,62px);letter-spacing:-1.8px;line-height:1.08}.intro-description{font-size:16px;line-height:1.65}.eyebrow{font-size:11px;letter-spacing:1.4px}.intro-features{font-size:9px;letter-spacing:.5px;gap:16px}
.hero-art{height:225px;border-radius:16px;background:#182636;border-color:#41576d;position:relative;isolation:isolate}.hero-art>img{position:absolute;right:0;top:0;width:57%;height:100%;object-fit:cover;object-position:center;z-index:-1}.hero-art:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#182636 30%,#182636b3 47%,transparent 75%)}.hero-art-caption{position:absolute;left:28px;top:36px;display:flex;flex-direction:column;gap:17px}.hero-art-caption>span{font-size:10px;color:var(--accent);letter-spacing:2px}.hero-art-caption strong{font-size:34px;line-height:1.1;font-weight:700;letter-spacing:-.6px}
.auth-card{border-radius:20px;padding:38px;background:#223141;box-shadow:0 20px 60px #09132130;border-color:#314356}.auth-card h2{font-size:29px;letter-spacing:-.5px}.auth-card>p{font-size:15px}.auth-card label{font-size:14px}.auth-card .inline-link{font-size:12px}.auth-links{font-size:13px}.demo-note{font-size:12px}.demo-note>span{min-width:17px;height:17px;border-color:#647a91}
input,select{height:53px;background:#182636;border-color:#41576d;border-radius:10px;font-size:15px;color:#f3f6fb}input::placeholder{color:#8191a4}label{font-size:14px}.password-field button{color:#9ca8b7;top:11px}
.primary-button{background:var(--button);color:#fff;border-radius:10px;min-height:53px;font-size:16px;box-shadow:0 4px 14px #009a1a18}.primary-button:hover{background:#00b720}.primary-button:active{background:#006b12;transform:none}.inline-link:hover,.text-button:hover{color:#57ee95}
.page-heading h1{letter-spacing:-.6px;font-size:40px}.page-heading p{font-size:15px}.demo-badge{color:var(--accent);border-color:#20d36a40;background:#20d36a0a}.tabs{gap:10px;border:0;background:#182636;padding:5px;border-radius:12px;width:max-content;margin-bottom:32px}.tab{padding:12px 23px;border:0;border-radius:9px;gap:35px;font-size:16px}.tab.active{background:#2a3c4f;color:#fff;box-shadow:0 2px 8px #09132130}.tab.active span{color:var(--accent)}
.section-heading h2{font-size:23px;letter-spacing:-.3px}.section-heading p{font-size:13px}.step{border-color:#20d36a50;background:#20d36a0a;width:36px;height:36px;font-size:13px}.map-card,.booking-panel{border-radius:16px;background:#223141;border-color:#314356}.map-heading h3{font-size:23px}.free-badge{background:#20d36a12;border-color:#20d36a40;font-size:12px}.map-legend{font-size:11px}.legend-free{background:#223141;border-color:#7a92ab}.legend-busy{background:#dc2626}.legend-selected{background:#22c55e}.club-map{background:#182636;border-color:#41576d;border-radius:12px}.zone-heading{font-size:11px;color:#9ca8b7}.zone-heading span:last-child{color:#20d36a}.pc-grid.vip{border-color:#b01aa350}.pc-grid.vip .pc:not(:disabled):not(.selected){border-color:#b01aa3;background:#b01aa311}.pc-grid.vip .pc:not(:disabled):not(.selected)::before{background:#cf4dc2}
.pc{background:#223141;color:#f3f6fb;border-color:#7a92ab;height:52px;font-size:13px;border-radius:7px}.pc::before{background:#7a92ab}.pc:hover:not(:disabled){background:#2a3c4f;border-color:#20d36a}.pc:disabled{background:#dc262617;border-color:#dc26266b;color:#f08484}.pc:disabled::before{background:#dc2626}.pc.selected{background:#22c55e;border-color:#22c55e;color:#092314;box-shadow:0 0 0 3px #22c55e20}.pc.selected::before{background:#0d6830}.map-footnote{font-size:12px}.map-bottom{font-size:9px}.booking-panel .section-heading{margin-bottom:23px}
.seat-placeholder-icon{background:#20d36a0a;border-color:#20d36a35;color:var(--accent)}.seat-placeholder p{font-size:14px}.seat-placeholder h3{font-size:23px}.selected-seat{background:#173226;border-color:#20d36a40;border-radius:12px}.selected-seat h3{font-size:24px}.selected-seat .eyebrow{font-size:9px}.zone-badge{font-size:11px}.day{background:#182636;border-color:#41576d;font-size:12px;border-radius:9px}.day strong{font-size:20px}.day.active{background:#009a1a;border-color:#009a1a;color:white}.day.active strong{color:white}.time-row input,.time-row select{font-size:15px}.booking-summary>span{font-size:12px}.booking-summary>div{font-size:15px}.booking-summary strong{font-size:34px;letter-spacing:0}.booking-summary small{font-size:12px}.action-note{font-size:11px}
.balance-card{background:linear-gradient(135deg,#006b12,#009a1a 60%,#00af40);color:white;border:1px solid #20d36a50;border-radius:20px;min-height:295px;box-shadow:0 15px 40px #06110c20}.balance-card:after{border-color:#ffffff30;box-shadow:0 0 0 28px #ffffff06,0 0 0 56px #ffffff05}.balance-amount{letter-spacing:-1px}.balance-amount>span:last-child{color:#aaf1c3}.balance-card p{font-size:15px;color:#ceebd5}.balance-card-bottom{border-color:#ffffff35;font-size:12px}.balance-card-bottom>span:last-child{color:#fff}.topup-panel{padding:28px;background:#223141;border:1px solid #314356;border-radius:16px}.topup-panel h2{font-size:29px;letter-spacing:-.5px}.topup-panel>p{font-size:15px}.quick-amounts button{background:#182636;border-color:#41576d;font-size:14px;border-radius:8px;padding:11px 4px}.quick-amounts button:hover{background:#173226}
dialog{background:#223141;border-color:#41576d;border-radius:20px}dialog::backdrop{background:#0b1422d9}.success-icon{background:#20d36a15;border-color:#20d36a60;color:#20d36a}dialog h2{letter-spacing:-.3px;font-size:29px}dialog p{font-size:15px}footer{color:#9ca8b7;font-size:9px;border-color:#314356}
@media(max-width:1000px){.login-layout{gap:35px}.auth-card{padding:28px}.hero-art-caption{left:20px}.hero-art-caption strong{font-size:29px}.intro-features{font-size:8px;gap:10px}.time-row input,.time-row select{font-size:13px}}
@media(max-width:760px){.header{height:80px}.brand-logo{width:49px;height:49px}.brand{font-size:16px}.brand-sub{font-size:9px}main{padding-top:30px}.login-layout{gap:28px}.intro h1{font-size:45px;letter-spacing:-1px}.intro-description{font-size:15px}.intro>.eyebrow{font-size:10px;letter-spacing:.6px}.hero-art{height:190px}.hero-art-caption{top:30px;left:23px}.hero-art-caption strong{font-size:30px}.intro-features{font-size:8px}.auth-card{padding:26px}.page-heading h1{font-size:31px}.page-heading p{font-size:13px}.tabs{width:100%;display:grid;grid-template-columns:1fr 1fr}.tab{justify-content:space-between;padding:12px 14px;gap:10px;font-size:15px}.section-heading h2{font-size:21px}.map-card{padding:18px}.map-legend{gap:14px;font-size:10px}.free-badge{font-size:10px}.map-heading h3{font-size:21px}.map-footnote{font-size:11px}.topup-panel{padding:23px}.balance-card{min-height:270px}.balance-amount{font-size:57px}.quick-amounts button{font-size:13px}.time-row input,.time-row select{font-size:15px}footer{font-size:8px}}
