:root{font-family:Arial,Helvetica,sans-serif;color:#eff2f8;background:#090909;font-size:16px;--lime:#ddbc60;--muted:#bdb5a5;--line:#3a3529}*{box-sizing:border-box}body{margin:0}button,input{font:inherit}button{cursor:pointer;transition:background .15s,transform .15s}button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,[tabindex]:focus-visible{outline:3px solid #7ba7ff;outline-offset:4px}button:disabled{opacity:.4;cursor:not-allowed}a{color:inherit;text-decoration:none}.demo-banner{padding:10px 18px;background:#202a19;color:#d8eea9;text-align:center;font-size:13px;line-height:1.5}header{max-width:1440px;padding:25px 40px;display:flex;align-items:center;justify-content:space-between;margin:auto;border-bottom:1px solid var(--line)}.brand{display:flex;gap:9px;align-items:center;font-size:24px;letter-spacing:-1px;font-weight:900}.brand b{color:var(--lime)}.brand small{font-size:11px;letter-spacing:2px;margin-left:14px;color:var(--muted)}.brand-mark{background:var(--lime);color:#101510;width:37px;height:37px;border-radius:10px;display:grid;place-items:center;font-weight:900;font-size:25px;margin-right:5px}.ghost{background:transparent;color:#e5e9f0;border:1px solid var(--line);padding:12px 16px;border-radius:10px;font-size:14px}.ghost:hover{background:#222a39}#orderCount{background:#343e50;margin-left:8px;padding:2px 7px;border-radius:5px}main{max-width:1440px;margin:auto;padding:32px 40px}.page-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:28px;gap:15px}.eyebrow{font-size:12px;letter-spacing:2px;color:var(--muted);font-weight:700}h1{font-size:clamp(28px,3vw,42px);letter-spacing:-1.6px;margin:10px 0 0;line-height:1.1}h2{font-size:21px;letter-spacing:-.5px;margin:0 0 9px}p{line-height:1.55}button{border:0}.event-tabs{display:flex;gap:10px;margin-bottom:22px}.event-tabs button{background:#161c28;border:1px solid var(--line);color:#bdc5d3;border-radius:12px;padding:17px 22px;text-align:left;font-weight:700}.event-tabs button span{font-size:13px;font-weight:400;margin-left:12px;opacity:.75}.event-tabs button.active{color:#101709;background:var(--lime);border-color:var(--lime)}.layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:24px;align-items:start}.card{background:#171614;border:1px solid var(--line);border-radius:18px;overflow:hidden}.venue-heading{padding:25px 25px 15px;display:flex;gap:12px;justify-content:space-between;align-items:start}.venue-heading p{color:var(--muted);font-size:14px;margin:0;max-width:440px}.outline-tag{font-size:12px;white-space:nowrap;border:1px solid #454f39;color:#c7dd9d;padding:6px 9px;border-radius:6px}.map-toolbar{display:flex;align-items:center;justify-content:space-between;padding:4px 25px 15px;gap:12px}.floor-tabs{display:flex;background:#10100f;padding:4px;border-radius:9px;gap:4px}.floor-tabs button{padding:9px 14px;background:transparent;color:var(--muted);border-radius:6px;font-size:14px}.floor-tabs button.active{background:#313c50;color:#fff}#availability{font-size:13px;color:var(--muted)}.legend{display:flex;gap:18px;padding:0 25px 15px;font-size:12px;color:var(--muted);flex-wrap:wrap}.legend span{display:flex;align-items:center;gap:6px}.legend i{width:9px;height:9px;border-radius:3px;display:inline-block}.free{background:#718594}.chosen{background:var(--lime)}.taken{background:#383e49}.map-scroll{overflow:auto;margin:0 15px;background:#11110f;border-radius:12px;border:1px solid #252e3b}.map{position:relative;min-width:570px;height:490px;background-image:radial-gradient(#2e374633 .8px,transparent .8px);background-size:17px 17px}.stage{position:absolute;left:2%;top:42%;width:17%;height:33%;border:1px solid #516039;background:#ddbc6010;border-radius:4px 40% 40% 4px;display:flex;justify-content:center;align-items:center;color:#d3e6b0;letter-spacing:4px;font-size:13px;writing-mode:vertical-rl;transform:rotate(180deg)}.bar{position:absolute;bottom:4%;left:3%;width:28%;border-top:3px solid #556173;padding-top:12px;color:#8993a3;font-size:12px;letter-spacing:3px;text-align:center}.entrance{position:absolute;right:3%;bottom:5%;font-size:12px;letter-spacing:2px;color:#7f899a}.table-wrap{position:absolute;width:10%;height:20%}.table-button{position:absolute;inset:10px 7px;background:#223343;color:#e1ecf4;border:1px solid #597386;border-radius:8px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:4px;box-shadow:0 7px 12px #0003}.table-button::before,.table-button::after{content:'';position:absolute;top:16%;bottom:16%;width:5px;border-top:10px solid #3b4d5e;border-bottom:10px solid #3b4d5e}.table-button::before{left:-7px}.table-button::after{right:-7px}.table-button:hover{background:#334a5d}.table-button.selected{background:var(--lime);color:#211903;border-color:var(--lime)}.table-button.busy{background:#282d37;border-color:#3d4450;color:#788290}.table-button strong{font-size:22px}.table-button small{font-size:12px;white-space:nowrap}.table-wrap.wide{width:20%;height:15%}.table-wrap.second{width:24%;height:25%}.floor-label{position:absolute;top:9%;left:7%;font-size:13px;letter-spacing:3px;color:#8591a4}.venue-foot{display:flex;justify-content:space-between;gap:12px;padding:15px 25px;font-size:12px;color:var(--muted);line-height:1.5}.mobile-hint{display:none}.reference{padding:0 25px 20px;font-size:13px;color:var(--muted)}summary{cursor:pointer;padding:8px 0}.reference img{width:100%;margin-top:10px;border-radius:8px}.booking{padding:25px;position:sticky;top:20px}.booking h2{margin-top:16px;font-size:24px}.muted{font-size:14px;color:var(--muted)}.empty-visual{margin:25px 0;min-height:120px;border:1px dashed #425065;border-radius:12px;display:grid;place-items:center;text-align:center;color:var(--muted);padding:20px;font-size:14px;line-height:1.6}.capacity{font-size:14px;color:var(--muted);padding-bottom:20px}.counter{display:flex;justify-content:space-between;align-items:center;background:#0e141f;padding:10px;border-radius:10px;margin:10px 0 18px;gap:10px}.counter button{color:#fff;background:#303d50;width:42px;height:42px;border-radius:8px;font-size:23px}.counter input{width:70px;text-align:center;background:none;border:none;color:white;font-size:24px;appearance:textfield}.counter input::-webkit-inner-spin-button{appearance:none}.counter-label{font-size:14px}.price-block{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding-top:22px;margin-top:24px}.price-block span{font-size:14px;color:var(--muted)}.price-block strong{font-size:30px;letter-spacing:-1px}.primary{width:100%;background:var(--lime);color:#142006;border:0;border-radius:10px;padding:16px;font-weight:700;margin-top:12px}.primary:hover:not(:disabled){background:#f1d78a}.safe-note{text-align:center;font-size:12px;color:#939cad;margin-bottom:0}.seat-list{display:flex;flex-wrap:wrap;gap:7px;margin-top:16px}.seat-chip{background:#293644;color:#e3ebf5;font-size:13px;padding:9px;border-radius:6px;border:1px solid #435364}.seat-chip:hover{background:#4e3b42}.seat-group{position:absolute;width:20%;height:24%;--seat-color:#b38bdd}.concert-table{position:absolute;left:29%;right:29%;top:26%;bottom:26%;border-radius:6px;background:#242e3d;border:1px solid #536070;display:grid;place-items:center;color:#e8edf5;font-weight:700;font-size:21px}.seat{position:absolute;width:28px;height:28px;border-radius:50%;background:var(--seat-color);color:#0b121b;font-size:12px;font-weight:700;padding:0;transform:translate(-50%,-50%);border:1px solid transparent}.seat:hover{filter:brightness(1.2)}.seat.selected{background:var(--lime);outline:2px solid #ddff9c;outline-offset:2px}.seat:disabled{opacity:1;background:#303744;color:#7f8a9d;border:1px solid #4a5364}.table-price{position:absolute;left:0;right:0;bottom:-2%;text-align:center;font-size:12px;color:var(--seat-color)}.select-whole{color:#e4eaf5;background:#283347;border-radius:8px;padding:10px 12px;font-size:13px;margin-top:12px;width:100%}footer{display:flex;justify-content:space-between;font-size:12px;color:#8490a2;padding:28px 0;gap:10px}dialog{border:1px solid #414d61;background:#171f2d;color:#f0f4fa;border-radius:18px;width:min(470px,calc(100% - 30px));padding:26px;max-height:90vh;overflow:auto}dialog::backdrop{background:#050913b8;backdrop-filter:blur(4px)}.dialog-heading{display:flex;align-items:start;justify-content:space-between;gap:15px}.close{background:transparent;color:#aab6c9;font-size:30px;line-height:1;padding:0 3px}label{display:block;font-size:14px;margin:22px 0 12px}label input{display:block;background:#0e1520;color:#fff;border:1px solid #4c5a6f;border-radius:8px;padding:13px;width:100%;margin-top:9px}.notice{background:#273422;color:#daedc0;padding:14px;border-radius:10px;font-size:14px;line-height:1.5;margin:20px 0}.order{border:1px solid var(--line);border-radius:10px;padding:17px;margin-top:14px}.order p{margin:8px 0;font-size:14px;color:var(--muted)}.order .cancel{color:#ffc3bd;background:none;padding:10px 0 0;font-size:14px}.order strong{overflow-wrap:anywhere}#toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%,20px);background:#f5e0a1;color:#1c2a09;padding:16px 22px;border-radius:12px;opacity:0;pointer-events:none;z-index:20;max-width:90vw;box-shadow:0 10px 40px #0008;transition:all .2s}#toast.visible{opacity:1;transform:translate(-50%,0)}#limits{font-size:13px;line-height:1.8}.price-key{font-size:12px;line-height:1.8}.error{color:#ffaca6;font-size:14px}
@media(min-width:1300px){.map{height:550px}.seat{width:32px;height:32px;font-size:13px}}
@media(max-width:1080px){.layout{grid-template-columns:minmax(0,1fr) 290px;gap:16px}main{padding:25px 22px}header{padding:22px}.outline-tag{display:none}.booking{padding:20px}.venue-heading,.map-toolbar{padding-left:18px;padding-right:18px}}
@media(max-width:850px){.layout{grid-template-columns:1fr}.booking{position:static}.brand small{display:none}.page-heading{align-items:start}h1{letter-spacing:-1px}.event-tabs button{flex:1;padding:14px}.event-tabs button span{display:block;margin:7px 0 0}.map{height:490px}.booking h2{font-size:23px}.empty-visual{min-height:70px;margin:15px 0}.mobile-hint{display:block}footer{flex-direction:column}.legend{gap:13px}}
@media(max-width:480px){main{padding:25px 12px}header{padding:18px 14px}.brand{font-size:21px}.brand-mark{width:31px;height:31px;font-size:21px}.ghost{font-size:12px;padding:10px}.page-heading{flex-direction:column;gap:18px}.page-heading .ghost{align-self:flex-start}.eyebrow{font-size:11px}h1{font-size:30px}.venue-heading{padding-top:20px}.venue-heading h2{font-size:20px}.map-toolbar{align-items:start}#availability{max-width:125px;text-align:right;font-size:12px}.legend{font-size:11px;padding-left:18px}.map-scroll{margin:0 9px}.venue-foot{padding:13px 18px}.demo-banner{font-size:12px}}
/* Event selection and unified team seating. */
[hidden]{display:none!important}.catalog-intro{margin:3px 0 24px}.catalog-intro h2{font-size:26px}.featured-events{display:grid;grid-template-columns:1fr 1fr;gap:24px}.event-card{display:grid;grid-template-columns:44% 1fr;background:#191815;border:1px solid var(--line);border-radius:18px;overflow:hidden}.poster-button{padding:0;background:#0b1019;display:block;width:100%;height:100%;min-height:320px}.poster-button img{width:100%;height:100%;object-fit:contain;display:block}.event-copy{padding:26px 22px;display:flex;flex-direction:column;align-items:start}.event-copy .eyebrow{font-size:11px;line-height:1.6;letter-spacing:1.5px}.event-copy h2{margin:15px 0 0;font-size:25px}.event-copy p{font-size:14px;margin:13px 0}.event-copy strong{margin-top:8px;font-size:16px}.event-copy .primary{margin-top:auto}.schedule-layout{display:grid;grid-template-columns:1.5fr 1fr;gap:24px;margin-top:28px;align-items:start}.schedule-card{padding:25px}.schedule-row{display:grid;grid-template-columns:110px 1fr 50px;text-align:left;align-items:center;gap:18px;border-bottom:1px solid #333d4c;background:none;color:#edf0f8;width:100%;padding:19px 3px;font-size:14px}.schedule-row:hover{background:#253247}.schedule-date,.schedule-time{color:#b8c3d3}.schedule-note{font-size:13px}.general-poster{padding:18px}.general-poster img{display:block;max-width:100%;border-radius:8px;margin-top:15px}.general-poster summary{font-size:16px}.event-context{display:flex;align-items:center;gap:18px;margin:0 0 24px}.event-context img{width:62px;height:82px;border-radius:8px;object-fit:cover}.event-context h2{margin:8px 0;font-size:25px}.event-context p{margin:0;color:#b0bdcd;font-size:14px}.event-context .eyebrow{font-size:11px}.view-warning{margin:0 20px 15px;padding:12px 14px;background:#3a2d1f;color:#f4c98b;border:1px solid #685030;border-radius:8px;font-size:13px;line-height:1.5}dialog .view-warning{margin:15px 0}.combined-map{height:750px!important}.combined-map .table-wrap{height:14%}.combined-map .table-wrap.wide{height:12%}.combined-map .table-wrap.second{height:10%;width:21%}.combined-map .second .table-button{inset:3px 7px}.combined-map .stage{top:42%;height:26%}.combined-map .bar{bottom:8%}.combined-map .entrance{bottom:27%}.second-floor-zone{position:absolute;left:32%;right:5%;top:73%;bottom:1%;border:1px solid #786996;border-radius:12px;background:#74649316}.second-floor-zone>span{position:absolute;top:10px;left:14px;letter-spacing:2px;font-size:12px;color:#c8b4e6}.first-floor-label{position:absolute;left:5%;top:2%;font-size:12px;letter-spacing:2px;color:#a0afc2}.pillar{position:absolute;left:47%;top:51%;width:17px;height:17px;background:#050608;border:2px solid #f8bf70;border-radius:2px;z-index:2;padding:0}.pillar span{position:absolute;bottom:22px;left:50%;transform:translateX(-50%);color:#ffd297;font-size:11px;background:#1a202c;padding:3px 5px;white-space:nowrap;border-radius:3px}.combined-map .pillar{left:39%;top:38%}.combined-map .pillar span{left:25px;bottom:-4px;transform:none}.map-toolbar:has(#floorTabs[hidden]){justify-content:flex-end}.page-heading h1{font-size:36px}
@media(max-width:1100px){.event-card{grid-template-columns:40% 1fr}.event-copy{padding:18px}.event-copy h2{font-size:21px}}
@media(max-width:850px){.featured-events{grid-template-columns:1fr}.event-card{grid-template-columns:38% 1fr}.poster-button{min-height:280px}.schedule-layout{grid-template-columns:1fr}.general-poster{max-width:500px}.event-context{flex-wrap:wrap}.event-context .ghost{order:-1}.event-context>div{flex:1}.combined-map{height:690px!important}}
@media(max-width:480px){.event-card{grid-template-columns:1fr}.poster-button{height:300px;min-height:0}.event-copy{padding:22px}.event-copy .primary{margin-top:14px}.schedule-card{padding:18px}.schedule-row{grid-template-columns:83px 1fr 40px;gap:10px;font-size:13px}.schedule-date{font-size:12px}.event-context img{display:none}.event-context>div{flex-basis:100%}.view-warning{margin:0 12px 13px}.page-heading h1{font-size:30px}}

.game-price-legend{display:flex;flex-wrap:wrap;gap:8px;padding:0 20px 16px;font-size:12px}.game-price-legend span{border:1px solid;border-radius:6px;padding:6px 9px}.rate-high{color:#f7c38b;background:#4e3324}.rate-mid{color:#b8e4ff;background:#1b3448}.rate-low{color:#d8c5ff;background:#382c4a}.table-button.tier-1300{background:#483428;border-color:#c28d5b}.table-button.tier-1100{background:#223c50;border-color:#709cba}.table-button.tier-800{background:#392f4d;border-color:#a78cc8}.table-button.selected{background:var(--lime);color:#211903;border-color:var(--lime)}.table-button.busy{background:#282d37;border-color:#3d4450;color:#788290}.table-rate{font-size:12px;font-weight:700;white-space:nowrap}.combined-map .table-button{gap:2px}.combined-map .table-button strong{font-size:20px}.combined-map .table-button small{font-size:11px}.tariff-summary{background:#111924;border-radius:10px;padding:15px;margin-top:18px;font-size:14px;line-height:1.7}.tariff-summary p{margin-bottom:0}

/* Simplified concert map, large seat picker, and same-booking additions. */
.concert-overview{position:absolute;width:20%;height:21%}.concert-overview-button{position:absolute;inset:4px 5px;border:1px solid #8f74ac;background:#302740;border-radius:10px;color:#f0e4ff;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:3px;padding:7px;width:calc(100% - 10px)}.concert-overview-button strong{font-size:16px}.overview-price{font-size:19px;font-weight:800;white-space:nowrap}.concert-overview-button small{font-size:12px;color:inherit;opacity:.9}.overview-availability{font-size:12px;margin-top:3px}.concert-tier-1500{background:#193d38;border-color:#4cae98;color:#c4f8e9}.concert-tier-1000{background:#453024;border-color:#c88e5e;color:#ffe1c5}.concert-overview-button:hover{filter:brightness(1.15)}.concert-overview-button.selected{background:var(--lime);border-color:var(--lime);color:#1c2a0b}.concert-overview-button.busy{background:#282d37;color:#9aa4b3;border-color:#4a5364;opacity:1}.seat-dialog-meta{font-size:20px;color:#e7c96e;font-weight:700;margin:20px 0}.seat-picker-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:20px 0}.picker-seat{background:#293a50;color:#e6eef9;border:1px solid #687e97;border-radius:10px;padding:14px 5px;display:flex;flex-direction:column;align-items:center;gap:6px;min-height:76px}.picker-seat strong{font-size:24px}.picker-seat small{font-size:11px}.picker-seat.selected{background:var(--lime);color:#1c2a0b;border-color:var(--lime)}.picker-seat:disabled{opacity:1;background:#242a34;color:#929ba9;border-color:#414b59}.add-players-button{background:#ddbc60;color:#1a2809;border-radius:8px;padding:12px 16px;font-size:14px;font-weight:700;display:block;margin:12px 0}.addition-record{border-left:2px solid #a4cb66;padding-left:10px}.add-owner{font-size:14px;line-height:1.6;padding:12px;background:#101925;border-radius:8px;overflow-wrap:anywhere}#addPlayersDialog .price-block strong{font-size:26px}#addPlayersDialog .notice{font-size:13px}
@media(max-width:480px){.seat-picker-grid{gap:7px}.picker-seat{padding:12px 3px}.picker-seat small{font-size:11px}.seat-dialog-meta{font-size:18px}.concert-overview-button{gap:2px}.overview-price{font-size:18px}}

.concert-combined-map{height:850px!important}.concert-combined-map .concert-overview{height:15%}.concert-combined-map .stage{top:44%;height:30%}.concert-combined-map .bar{bottom:8%}.concert-combined-map .entrance{bottom:23%}.concert-second-floor-zone{position:absolute;left:32%;right:5%;top:79%;bottom:1%;border:1px solid #786996;border-radius:12px;background:#74649316}.concert-second-floor-zone>span{position:absolute;left:14px;top:10px;letter-spacing:2px;font-size:12px;color:#c8b4e6}.concert-combined-map .pillar{left:48%;top:41%}.concert-combined-map .pillar span{left:23px;bottom:-3px;transform:none}@media(max-width:850px){.concert-combined-map{height:820px!important}}

.venue-logo{width:94px;height:94px;object-fit:contain;border-radius:4px}.brand-caption{font-size:12px;letter-spacing:2px;color:#c5aa67}.header-actions{display:flex;gap:10px;align-items:center}.venue-contacts{display:grid;grid-template-columns:1fr 1fr;gap:35px;border-top:1px solid #55472d;margin-top:35px;font-size:14px;color:#bcb5a8;line-height:1.7}.venue-contacts h2{color:#e3c26b}.venue-contacts a{color:#e8d49c}.venue-contacts summary{color:#ddd1b7}.add-event-main{width:auto;margin:5px 0 18px}.admin-heading{display:flex;align-items:center;gap:15px;flex-wrap:wrap}.admin-heading .primary{width:auto;margin:0}.admin-heading>div{margin-right:auto}.admin-item{padding:20px;border:1px solid #49402d;border-radius:12px;margin:16px 0;background:#171614}.admin-item h3{margin:0 0 10px}.admin-item-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:15px}.status-label{color:#dec374;font-size:13px}.admin-item p{font-size:14px;color:#bdb5a5}select,textarea{font:inherit;color:#eee5d2;background:#141310;border:1px solid #695b3b;border-radius:8px;padding:12px;width:100%;margin-top:8px}#adminFilter{max-width:340px;display:block}#eventEditor{width:min(720px,calc(100% - 26px))}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}.editor-poster{height:150px;width:120px;object-fit:contain;display:block;background:#080808}.check-label{display:flex;align-items:center;gap:10px;line-height:1.5}.check-label input{width:20px;margin:0}.general-poster{margin-top:28px}.featured-events:empty::after{content:'Загружаем мероприятия…';padding:24px;color:#c7b990}.event-card .poster-button{min-height:280px}.event-copy .sales-closed{color:#e9ba80}#eventLoadError button{margin:10px 0 0}.demo-banner{background:#302714;color:#ead392}@media(max-width:700px){header{flex-wrap:wrap;gap:12px}.header-actions{flex-wrap:wrap}.venue-contacts{grid-template-columns:1fr;gap:20px}.brand-caption{font-size:10px}.venue-logo{height:72px;width:72px}.form-grid{grid-template-columns:1fr}.admin-heading h2{font-size:23px}}
#guestListDialog{width:min(1100px,calc(100% - 24px))}.guest-actions{display:flex;gap:12px;flex-wrap:wrap;margin:20px 0}.guest-actions .primary{width:auto;margin:0}.guest-table-scroll{overflow:auto}.guest-table{border-collapse:collapse;width:100%;font-size:14px}.guest-table th,.guest-table td{padding:12px;border:1px solid #645635;text-align:left;vertical-align:top}.guest-table th{background:#312819;color:#f8e5b6}.guest-table td:nth-child(2){min-width:170px}.guest-table td:nth-child(7){font-size:12px;overflow-wrap:anywhere}.guest-table td:last-child{min-width:90px}.guest-table tbody tr{break-inside:avoid}@media print{@page{size:A4 landscape;margin:12mm}body{background:white!important;color:black!important}body>*:not(#printRoot){display:none!important}#printRoot{display:block!important;font-family:Arial,sans-serif;color:black}#printRoot h1{font-size:20px;letter-spacing:0}#printRoot h2{font-size:16px;margin-top:12px}#printRoot p{font-size:11px;line-height:1.4}.guest-table{font-size:10px}.guest-table th,.guest-table td{padding:8px;border:1px solid #555;color:black!important;background:white!important}.guest-table th{font-weight:bold}.guest-table td:nth-child(7){font-size:9px}.guest-table thead{display:table-header-group}.guest-table td{height:34px}}
