/* ===== Матч&мяч RELEASE v44 — court booking + club CRM calendar ===== */

/* ---------------------------------------------------------
   Public club booking
   --------------------------------------------------------- */
.page-club .club-booking-shell {
    position: relative;
    overflow: hidden;
    margin-top: 2px;
    padding: 24px;
    border: 1px solid rgba(255,255,255,.075);
    border-radius: 30px;
    background:
        radial-gradient(circle at 88% -10%, rgba(200,255,61,.10), transparent 34%),
        linear-gradient(180deg, rgba(22,26,21,.98), rgba(13,16,13,.98));
}
.page-club .club-booking-shell::before {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    background-image:
        linear-gradient(rgba(255,255,255,.018) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,.018) 1px, transparent 1px);
    background-size: 32px 32px;
    mask-image: linear-gradient(to bottom, black, transparent 68%);
}
.page-club .club-booking-head,
.page-club .booking-court-tabs,
.page-club .booking-single-court,
.page-club .club-booking-grid { position: relative; z-index: 1; }
.page-club .club-booking-head {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 18px;
    margin-bottom: 18px;
}
.page-club .club-booking-kicker {
    display: block;
    margin-bottom: 7px;
    color: var(--accent);
    font-size: 10px;
    line-height: 1;
    font-weight: 800;
    letter-spacing: .13em;
    text-transform: uppercase;
}
.page-club .club-booking-head h2 {
    margin: 0;
    font-size: clamp(25px,3vw,35px);
    letter-spacing: -.045em;
}
.page-club .club-booking-head p {
    max-width: 650px;
    margin: 8px 0 0;
    color: var(--text-dim);
    font-size: 13px;
    line-height: 1.55;
}
.page-club .club-booking-mode {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 10px 12px;
    border: 1px solid rgba(200,255,61,.16);
    border-radius: 999px;
    color: var(--accent);
    background: rgba(200,255,61,.07);
    white-space: nowrap;
    font-size: 11px;
    font-weight: 700;
}
.page-club .club-booking-mode.is-approval {
    color: var(--warning);
    border-color: rgba(214,168,90,.18);
    background: rgba(214,168,90,.07);
}
.page-club .booking-court-tabs {
    display: flex;
    gap: 9px;
    margin-bottom: 16px;
    padding-bottom: 1px;
    overflow-x: auto;
    scrollbar-width: none;
}
.page-club .booking-court-tabs::-webkit-scrollbar { display: none; }
.page-club .booking-court-tab {
    display: flex;
    flex: 0 0 auto;
    flex-direction: column;
    align-items: flex-start;
    gap: 3px;
    min-width: 145px;
    padding: 11px 14px;
    color: var(--text-dim);
    border: 1px solid rgba(255,255,255,.07);
    border-radius: 16px;
    background: rgba(255,255,255,.025);
    cursor: pointer;
    transition: .18s var(--ease);
}
.page-club .booking-court-tab span { color: var(--text); font-size: 13px; font-weight: 750; }
.page-club .booking-court-tab small { font-size: 10.5px; }
.page-club .booking-court-tab:hover { border-color: rgba(255,255,255,.14); transform: translateY(-1px); }
.page-club .booking-court-tab.is-active {
    border-color: rgba(200,255,61,.25);
    background: rgba(200,255,61,.085);
    box-shadow: inset 0 0 0 1px rgba(200,255,61,.04);
}
.page-club .booking-court-tab.is-active span { color: var(--accent); }
.page-club .booking-single-court {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 16px;
    padding: 10px 13px;
    border-radius: 15px;
    border: 1px solid rgba(255,255,255,.07);
    background: rgba(255,255,255,.028);
    font-size: 12px;
}
.page-club .booking-single-court svg { color: var(--accent); }
.page-club .booking-single-court span { color: var(--text-dim); }
.page-club .club-booking-grid {
    display: grid;
    grid-template-columns: minmax(300px, .82fr) minmax(430px, 1.4fr);
    gap: 14px;
}
.page-club .booking-calendar-card,
.page-club .booking-day-card {
    min-width: 0;
    border: 1px solid rgba(255,255,255,.065);
    border-radius: 22px;
    background: rgba(8,11,9,.52);
}
.page-club .booking-calendar-card { padding: 16px; }
.page-club .booking-calendar-toolbar {
    display: grid;
    grid-template-columns: 34px 1fr 34px;
    align-items: center;
    gap: 8px;
    margin-bottom: 14px;
}
.page-club .booking-calendar-toolbar > div { text-align: center; }
.page-club .booking-calendar-toolbar b {
    display: block;
    text-transform: capitalize;
    font-size: 13px;
}
.page-club .booking-calendar-toolbar > div button {
    margin-top: 3px;
    padding: 0;
    color: var(--accent);
    border: 0;
    background: none;
    font: inherit;
    font-size: 10px;
    cursor: pointer;
}
.page-club .booking-weekdays,
.page-club .booking-calendar-grid {
    display: grid;
    grid-template-columns: repeat(7, minmax(0,1fr));
    gap: 5px;
}
.page-club .booking-weekdays { margin-bottom: 5px; }
.page-club .booking-weekdays span {
    padding: 3px 0;
    color: var(--text-faint);
    text-align: center;
    font-size: 9px;
    font-weight: 700;
    text-transform: uppercase;
}
.page-club .booking-cal-day {
    position: relative;
    display: grid;
    place-items: center;
    aspect-ratio: 1;
    min-height: 34px;
    padding: 0;
    color: var(--text-dim);
    border: 1px solid transparent;
    border-radius: 12px;
    background: transparent;
    font: inherit;
    font-size: 11.5px;
    cursor: pointer;
    transition: .16s ease;
}
.page-club .booking-cal-day:hover { color: var(--text); background: rgba(255,255,255,.05); }
.page-club .booking-cal-day.is-out { opacity: .3; }
.page-club .booking-cal-day.is-today { border-color: rgba(255,255,255,.13); color: var(--text); }
.page-club .booking-cal-day.is-selected {
    color: var(--accent-ink);
    border-color: var(--accent);
    background: var(--accent);
    font-weight: 800;
}
.page-club .booking-cal-day i {
    position: absolute;
    right: 5px;
    bottom: 5px;
    width: 4px;
    height: 4px;
    border-radius: 50%;
    background: var(--blue);
}
.page-club .booking-cal-day i.has-pending { background: var(--warning); }
.page-club .booking-cal-day.is-selected i { background: var(--accent-ink); opacity: .7; }
.page-club .booking-calendar-legend {
    display: flex;
    flex-wrap: wrap;
    gap: 11px;
    margin-top: 13px;
    color: var(--text-faint);
    font-size: 9.5px;
}
.page-club .booking-calendar-legend span { display: inline-flex; align-items: center; gap: 5px; }
.page-club .booking-calendar-legend i { width: 5px; height: 5px; border-radius: 50%; background: var(--blue); }
.page-club .booking-calendar-legend i.pending { background: var(--warning); }
.page-club .booking-day-card { overflow: hidden; }
.page-club .booking-day-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    padding: 16px 18px;
    border-bottom: 1px solid rgba(255,255,255,.06);
}
.page-club .booking-day-head span {
    display: block;
    margin-bottom: 3px;
    color: var(--text-faint);
    font-size: 9.5px;
    text-transform: uppercase;
    letter-spacing: .1em;
}
.page-club .booking-day-head h3 { margin: 0; font-size: 16px; text-transform: capitalize; }
.page-club .booking-day-head > small {
    padding: 6px 9px;
    border-radius: 999px;
    color: var(--text-dim);
    background: rgba(255,255,255,.04);
    font-family: var(--font-mono);
    font-size: 10px;
}
.page-club .booking-day-timeline { padding: 8px; }
.page-club .booking-segment {
    display: grid;
    grid-template-columns: 92px minmax(0,1fr) auto;
    align-items: center;
    gap: 12px;
    min-height: 60px;
    padding: 10px 10px 10px 13px;
    border-bottom: 1px solid rgba(255,255,255,.045);
}
.page-club .booking-segment:last-child { border-bottom: 0; }
.page-club .booking-segment-time b,
.page-club .booking-segment-time span { display: block; font-family: var(--font-mono); }
.page-club .booking-segment-time b { color: var(--text); font-size: 12px; }
.page-club .booking-segment-time span { margin-top: 3px; color: var(--text-faint); font-size: 9.5px; }
.page-club .booking-segment-main strong { display: block; font-size: 12.5px; }
.page-club .booking-segment-main small { display: block; margin-top: 4px; color: var(--text-faint); font-size: 10.5px; }
.page-club .booking-segment.is-free .booking-segment-main strong { color: var(--accent); }
.page-club .booking-segment.is-short { opacity: .55; }
.page-club .booking-segment.is-busy {
    border-radius: 12px;
    background: rgba(255,255,255,.024);
}
.page-club .booking-segment.is-busy.is-pending { background: rgba(214,168,90,.055); }
.page-club .booking-segment.is-busy.is-pending .booking-segment-main strong { color: var(--warning); }
.page-club .booking-segment-price { color: var(--text-dim); font-size: 11px; font-weight: 700; }
.page-club .booking-day-foot {
    display: flex;
    gap: 7px;
    padding: 11px 16px 14px;
    color: var(--text-faint);
    border-top: 1px solid rgba(255,255,255,.05);
    font-size: 9.5px;
    line-height: 1.45;
}
.page-club .booking-loading,
.page-club .booking-day-error { display: grid; place-items: center; min-height: 330px; color: var(--text-faint); font-size: 12px; }
.page-club .club-booking-empty { min-height: 160px; display: grid; align-content: center; gap: 8px; }
.page-club .club-booking-empty h2 { margin: 0; }
.page-club .club-booking-empty p { max-width: 620px; margin: 0; color: var(--text-dim); }

.booking-modal-summary {
    display: flex;
    justify-content: space-between;
    gap: 16px;
    margin: 4px 0 16px;
    padding: 12px 14px;
    border-radius: 15px;
    border: 1px solid rgba(255,255,255,.07);
    background: rgba(255,255,255,.035);
}
.booking-modal-summary span { color: var(--text-dim); font-size: 11px; text-transform: capitalize; }
.booking-modal-summary b { font-family: var(--font-mono); font-size: 12px; }
.booking-quote {
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 4px 12px;
    align-items: center;
    margin-top: 12px;
    padding: 13px 14px;
    border-radius: 16px;
    border: 1px solid rgba(200,255,61,.14);
    background: rgba(200,255,61,.055);
}
.booking-quote span { color: var(--text-dim); font-size: 10px; text-transform: uppercase; letter-spacing: .08em; }
.booking-quote b { color: var(--accent); font-size: 17px; }
.booking-quote small { grid-column: 1/-1; color: var(--text-faint); font-size: 10px; }

/* ---------------------------------------------------------
   Club CRM calendar
   --------------------------------------------------------- */
.club-calendar-launch {
    width: 100%;
    display: grid;
    grid-template-columns: 48px 1fr auto;
    align-items: center;
    gap: 14px;
    margin: 0 0 16px;
    padding: 15px 16px;
    color: var(--text);
    text-align: left;
    border: 1px solid rgba(200,255,61,.15);
    border-radius: 20px;
    background: linear-gradient(110deg, rgba(200,255,61,.09), rgba(255,255,255,.025));
    cursor: pointer;
}
.club-calendar-launch-ic { display:grid;place-items:center;width:48px;height:48px;border-radius:15px;color:var(--accent);background:rgba(200,255,61,.08); }
.club-calendar-launch span:nth-child(2) { display:flex; flex-direction:column; min-width:0; }
.club-calendar-launch small { color:var(--accent);font-size:9px;text-transform:uppercase;letter-spacing:.1em;font-weight:800; }
.club-calendar-launch b { margin-top:3px;font-size:16px; }
.club-calendar-launch em { margin-top:3px;color:var(--text-dim);font-size:11px;font-style:normal; }

.crm-calendar-toolbar {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:14px;
    margin-bottom:12px;
    padding:12px 13px;
    border:1px solid var(--border);
    border-radius:18px;
    background:rgba(255,255,255,.025);
}
.crm-calendar-date-nav { display:flex;align-items:center;gap:8px;flex-wrap:wrap; }
.crm-calendar-date-nav > div { min-width:180px; }
.crm-calendar-date-nav small { display:block;color:var(--text-faint);font-size:9px;text-transform:uppercase;letter-spacing:.1em; }
.crm-calendar-date-nav b { display:block;margin-top:2px;font-size:13px;text-transform:capitalize; }
.crm-calendar-date-nav input[type="date"] { width:138px; min-height:34px; padding:6px 8px; font-size:11px; }
.crm-calendar-hours { color:var(--text-faint);font-family:var(--font-mono);font-size:10px; }
.crm-calendar-summary {
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:9px;
    margin-bottom:12px;
}
.crm-calendar-summary > div { padding:13px 14px;border:1px solid var(--border);border-radius:17px;background:rgba(255,255,255,.025); }
.crm-calendar-summary span { display:block;color:var(--text-faint);font-size:9px;text-transform:uppercase;letter-spacing:.08em; }
.crm-calendar-summary b { display:block;margin-top:6px;color:var(--text);font-size:20px;letter-spacing:-.04em; }
.crm-calendar-summary .is-attn b { color:var(--warning); }
.crm-courts-board {
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(300px,1fr));
    gap:10px;
    align-items:start;
}
.crm-court-column { min-width:0;border:1px solid var(--border);border-radius:20px;background:rgba(255,255,255,.018);overflow:hidden; }
.crm-court-column > header { display:flex;align-items:center;justify-content:space-between;gap:10px;padding:13px 14px;border-bottom:1px solid var(--border);background:rgba(255,255,255,.02); }
.crm-court-column > header > div { display:flex;align-items:center;gap:8px; }
.crm-court-column > header b { font-size:12.5px; }
.crm-court-column > header small { color:var(--text-faint);font-size:9.5px; }
.crm-court-timeline { padding:6px; }
.crm-slot {
    display:grid;
    grid-template-columns:76px minmax(0,1fr) auto;
    align-items:center;
    gap:9px;
    min-height:52px;
    padding:8px 8px 8px 10px;
    border-bottom:1px solid rgba(255,255,255,.045);
}
.crm-slot:last-child { border-bottom:0; }
.crm-slot-time { color:var(--text-faint);font-family:var(--font-mono);font-size:9.5px; }
.crm-slot > div b { display:block;font-size:11.5px; }
.crm-slot > div small { display:block;margin-top:3px;color:var(--text-faint);font-size:9.5px; }
.crm-slot.is-free > div b { color:var(--accent); }
.crm-slot.is-busy { grid-template-columns:76px minmax(0,1fr) auto auto; margin:3px 0;border:1px solid rgba(255,255,255,.055);border-radius:13px;background:rgba(255,255,255,.025); }
.crm-slot.is-pending { border-color:rgba(214,168,90,.18);background:rgba(214,168,90,.055); }
.crm-slot-status { padding:4px 6px;border-radius:999px;color:var(--text-faint);background:rgba(255,255,255,.045);font-size:8.5px;font-weight:700;text-transform:uppercase; }
.crm-slot.is-pending .crm-slot-status { color:var(--warning);background:rgba(214,168,90,.08); }
.crm-slot-actions { display:flex;gap:3px; }
.crm-slot-actions .btn-icon { width:28px;height:28px; }
.crm-slot-actions .btn-icon.ok { color:var(--accent); }

.crm-setting-check { display:flex;align-items:flex-start;gap:10px;margin-top:12px;padding:12px;border:1px solid var(--border);border-radius:15px;background:rgba(255,255,255,.025);cursor:pointer; }
.crm-setting-check input { margin-top:3px; }
.crm-setting-check span { display:flex;flex-direction:column;gap:3px; }
.crm-setting-check b { font-size:11.5px; }
.crm-setting-check small { color:var(--text-faint);font-size:9.5px;line-height:1.4; }
.crm-staff-layout { display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px; }
.crm-staff-layout .cab-card { padding:16px; }

.rate-rules { display:grid;gap:7px;margin:12px 0; }
.rate-rule-row { display:grid;grid-template-columns:minmax(90px,1.2fr) 82px 105px 14px 105px 95px 30px;align-items:center;gap:6px; }
.rate-rule-row input,.rate-rule-row select { min-width:0;padding:8px 9px;font-size:10.5px; }
.rate-rule-row > span { color:var(--text-faint);text-align:center; }
.danger-text { color:var(--danger) !important; }

@media (max-width: 980px) {
    .page-club .club-booking-grid { grid-template-columns:1fr; }
    .page-club .booking-calendar-card { max-width:none; }
    .crm-calendar-summary { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .crm-staff-layout { grid-template-columns:1fr; }
    .rate-rule-row { grid-template-columns:1fr 82px 1fr 14px 1fr 90px 30px; }
}

@media (max-width: 640px) {
    .page-club .club-booking-shell { padding:16px;border-radius:24px; }
    .page-club .club-booking-head { flex-direction:column; }
    .page-club .club-booking-mode { align-self:flex-start; }
    .page-club .booking-calendar-card { padding:12px; }
    .page-club .booking-cal-day { min-height:36px;border-radius:10px; }
    .page-club .booking-segment { grid-template-columns:72px minmax(0,1fr);gap:8px;padding:10px 7px; }
    .page-club .booking-segment .btn,.page-club .booking-segment-price { grid-column:2;justify-self:start; }
    .page-club .booking-day-head { padding:14px 13px; }
    .booking-modal-summary { flex-direction:column;gap:5px; }
    .crm-calendar-toolbar { align-items:flex-start;flex-direction:column; }
    .crm-calendar-date-nav > div { min-width:150px; }
    .crm-calendar-date-nav input[type="date"] { width:100%; }
    .crm-calendar-summary { grid-template-columns:1fr 1fr; }
    .crm-courts-board { grid-template-columns:1fr; }
    .crm-slot.is-busy { grid-template-columns:68px minmax(0,1fr) auto; }
    .crm-slot.is-busy .crm-slot-status { display:none; }
    .crm-slot.is-busy .crm-slot-actions { grid-column:2/4;justify-content:flex-end; }
    .crm-slot.is-free { grid-template-columns:68px minmax(0,1fr); }
    .crm-slot.is-free .btn { grid-column:2;justify-self:start; }
    .club-calendar-launch { grid-template-columns:42px 1fr auto;padding:13px; }
    .club-calendar-launch-ic { width:42px;height:42px; }
    .club-calendar-launch em { display:none; }
    .rate-rule-row { grid-template-columns:1fr 80px;gap:7px;padding:9px;border:1px solid var(--border);border-radius:14px; }
    .rate-rule-row > span { display:none; }
    .rate-rule-row [data-rate-start],.rate-rule-row [data-rate-end],.rate-rule-row [data-rate-price] { width:100%; }
}

.crm-calendar-closed {
    margin-top:12px;
    border:1px solid var(--border);
    border-radius:18px;
    background:rgba(255,255,255,.018);
    overflow:hidden;
}
.crm-calendar-closed > summary {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
    padding:12px 14px;
    color:var(--text-dim);
    font-size:10.5px;
    font-weight:700;
    cursor:pointer;
    list-style:none;
}
.crm-calendar-closed > summary::-webkit-details-marker { display:none; }
.crm-calendar-closed > summary span { min-width:24px;padding:3px 7px;border-radius:999px;text-align:center;background:rgba(255,255,255,.05);font-size:9px; }
.crm-calendar-closed .cab-list { border-top:1px solid var(--border); }
.crm-calendar-closed .cab-row.is-muted { opacity:.68; }

/* ---------------------------------------------------------
   v45 · booking visibility + light booking island
   --------------------------------------------------------- */
.page-club .club-online-booking-callout{
    width:100%;display:grid;grid-template-columns:38px max-content 1fr 22px;align-items:center;gap:10px;
    margin:4px 0 16px;padding:12px 14px;border:1px solid rgba(200,255,61,.22);border-radius:18px;
    background:linear-gradient(90deg,rgba(200,255,61,.12),rgba(200,255,61,.035));color:var(--text);text-align:left;cursor:pointer
}
.page-club .club-online-booking-callout>span{width:38px;height:38px;border-radius:12px;background:var(--accent);color:var(--accent-ink);display:grid;place-items:center}
.page-club .club-online-booking-callout strong{font-size:12.5px}.page-club .club-online-booking-callout small{color:var(--text-faint);font-size:10.5px}
.page-club .club-online-booking-callout>svg{justify-self:end;color:var(--accent)}

.page-club .club-booking-shell{
    margin-top:18px;padding:30px;border-color:rgba(23,25,22,.08);
    background:#f3f1e8;color:#151812;
    box-shadow:0 28px 80px rgba(0,0,0,.22)
}
.page-club .club-booking-shell::before{
    background-image:linear-gradient(rgba(23,25,22,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(23,25,22,.035) 1px,transparent 1px);
    mask-image:linear-gradient(to bottom,black,transparent 74%)
}
.page-club .club-booking-shell::after{content:"";position:absolute;width:520px;height:520px;right:-180px;top:-330px;border:1px solid rgba(97,119,30,.18);border-radius:50%;pointer-events:none}
.page-club .club-booking-kicker{color:#61771e}
.page-club .club-booking-head h2{color:#151812;font-size:clamp(30px,3.2vw,43px)}
.page-club .club-booking-head p{color:#666c61}
.page-club .club-booking-mode{color:#526416;border-color:rgba(97,119,30,.2);background:rgba(97,119,30,.08)}
.page-club .club-booking-mode.is-approval{color:#8b6425;border-color:rgba(139,100,37,.18);background:rgba(139,100,37,.07)}
.page-club .booking-court-tab{color:#6a7065;border-color:rgba(23,25,22,.1);background:rgba(23,25,22,.035)}
.page-club .booking-court-tab span{color:#252922}.page-club .booking-court-tab:hover{border-color:rgba(23,25,22,.18);background:rgba(23,25,22,.055)}
.page-club .booking-court-tab.is-active{border-color:rgba(97,119,30,.26);background:rgba(200,255,61,.28);box-shadow:none}
.page-club .booking-court-tab.is-active span{color:#26310f}
.page-club .booking-single-court{border-color:rgba(23,25,22,.1);background:rgba(23,25,22,.035);color:#252922}.page-club .booking-single-court svg{color:#61771e}.page-club .booking-single-court span{color:#6a7065}
.page-club .booking-calendar-card,.page-club .booking-day-card{border-color:rgba(23,25,22,.09);background:rgba(255,255,255,.5);box-shadow:0 8px 28px rgba(39,42,34,.055)}
.page-club .booking-calendar-toolbar b,.page-club .booking-day-head h3,.page-club .booking-segment-time b{color:#20241d}
.page-club .booking-calendar-toolbar>div button{color:#61771e;font-weight:750}
.page-club .booking-calendar-card .btn-icon{color:#252922;border-color:rgba(23,25,22,.1);background:rgba(23,25,22,.04)}
.page-club .booking-weekdays span,.page-club .booking-calendar-legend,.page-club .booking-day-head span,.page-club .booking-day-foot,.page-club .booking-segment-time span,.page-club .booking-segment-main small{color:#747b6f}
.page-club .booking-cal-day{color:#555c51}.page-club .booking-cal-day:hover{color:#151812;background:rgba(23,25,22,.055)}
.page-club .booking-cal-day.is-today{border-color:rgba(23,25,22,.18);color:#151812}.page-club .booking-cal-day.is-selected{color:#19200b;border-color:#bce839;background:var(--accent)}
.page-club .booking-day-head{border-bottom-color:rgba(23,25,22,.08)}.page-club .booking-day-head>small{color:#4f554b;background:rgba(23,25,22,.05)}
.page-club .booking-day-timeline{padding:10px}
.page-club .booking-segment{border-bottom-color:rgba(23,25,22,.07)}
.page-club .booking-segment.is-free{border-radius:14px}.page-club .booking-segment.is-free:hover{background:rgba(200,255,61,.1)}
.page-club .booking-segment.is-free .booking-segment-main strong{color:#536719}
.page-club .booking-segment.is-busy{background:#20241d;color:#f3f4ee;border-bottom-color:transparent;margin:5px 0}
.page-club .booking-segment.is-busy .booking-segment-time b,.page-club .booking-segment.is-busy .booking-segment-main strong{color:#f3f4ee}
.page-club .booking-segment.is-busy .booking-segment-time span,.page-club .booking-segment.is-busy .booking-segment-main small,.page-club .booking-segment.is-busy .booking-segment-price{color:#aab0a4}
.page-club .booking-segment.is-busy.is-pending{background:#3d3526}.page-club .booking-segment.is-busy.is-pending .booking-segment-main strong{color:#f0c476}
.page-club .booking-day-foot{border-top-color:rgba(23,25,22,.08)}

.page-clubs .club-card-cover{position:relative}
.page-clubs .club-online-badge{position:absolute;left:12px;bottom:12px;z-index:3;display:inline-flex;align-items:center;gap:6px;padding:7px 10px;border-radius:999px;background:var(--accent);color:var(--accent-ink);font-size:10px;font-weight:850;box-shadow:0 8px 26px rgba(200,255,61,.18)}
.page-clubs .club-reference-badge{position:absolute;left:12px;top:12px;z-index:3;display:inline-flex;align-items:center;gap:6px;padding:7px 10px;border-radius:999px;background:rgba(22,24,20,.82);backdrop-filter:blur(10px);border:1px solid rgba(255,203,96,.22);color:#ffd782;font-size:10px;font-weight:800;box-shadow:0 10px 26px rgba(0,0,0,.2)}
.page-clubs .club-card:has(.club-online-badge){border-color:rgba(200,255,61,.16)}
.page-clubs .club-booking-cta{box-shadow:0 8px 28px rgba(200,255,61,.12)}
.page-club .club-source-warning{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:14px;align-items:center;padding:16px 18px;margin-bottom:14px;border:1px solid rgba(255,203,96,.2);border-radius:20px;background:linear-gradient(135deg,rgba(255,203,96,.1),rgba(255,255,255,.58));box-shadow:0 8px 28px rgba(36,34,26,.06)}
.page-club .club-source-warning-ic{width:42px;height:42px;border-radius:14px;display:grid;place-items:center;background:rgba(255,203,96,.18);color:#7f5b17}
.page-club .club-source-warning-copy b{display:block;font-size:13px;color:#24281f}.page-club .club-source-warning-copy p{margin:4px 0 0;color:#6a7065;font-size:11px;line-height:1.55}
.page-club .club-source-warning-action{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap}
@media(max-width:640px){
    .page-club .club-online-booking-callout{grid-template-columns:38px 1fr 20px}.page-club .club-online-booking-callout small{display:none}.page-club .club-online-booking-callout>svg{grid-column:3}
    .page-club .club-booking-shell{padding:18px}
    .page-club .club-source-warning{grid-template-columns:1fr;padding:14px}.page-club .club-source-warning-ic{display:none}.page-club .club-source-warning-action{justify-content:flex-start}
}

/* CRM · «Сейчас в городе» */
.city-live-studio-intro{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:22px;align-items:center;padding:22px;border:1px solid var(--border);border-radius:24px;background:linear-gradient(135deg,rgba(200,255,61,.07),rgba(255,255,255,.02));margin-bottom:12px}
.city-live-studio-intro h2{margin:7px 0 6px;font-size:25px;letter-spacing:-.04em}.city-live-studio-intro p{margin:0;max-width:650px;color:var(--text-faint);font-size:11px;line-height:1.55}
.city-live-studio-metrics{display:flex;gap:8px}.city-live-studio-metrics>span{min-width:88px;padding:12px;border:1px solid var(--border);border-radius:16px;background:rgba(0,0,0,.14)}.city-live-studio-metrics b{display:block;font:800 20px var(--font-mono)}.city-live-studio-metrics small{display:block;margin-top:3px;color:var(--text-faint);font-size:9px}
.city-live-partner-note{display:flex;align-items:center;gap:12px;padding:14px 16px;margin-bottom:12px;border:1px solid rgba(200,255,61,.13);border-radius:18px;background:rgba(200,255,61,.045)}.city-live-partner-note>svg{color:var(--accent)}.city-live-partner-note span{display:flex;flex-direction:column;gap:3px}.city-live-partner-note b{font-size:11.5px}.city-live-partner-note small{font-size:9.5px;color:var(--text-faint);line-height:1.4}
.city-live-studio-list{display:grid;gap:9px}.city-live-studio-card{display:grid;grid-template-columns:78px minmax(0,1fr) auto auto;align-items:center;gap:14px;padding:10px;border:1px solid var(--border);border-radius:20px;background:var(--card)}.city-live-studio-card.is-expired{opacity:.58}
.city-live-studio-thumb{width:78px;height:64px;border-radius:14px;overflow:hidden;display:grid;place-items:center;background:rgba(255,255,255,.035);color:var(--accent)}.city-live-studio-thumb img{width:100%;height:100%;object-fit:cover}
.city-live-studio-copy{min-width:0}.city-live-studio-tags{display:flex;gap:7px;align-items:center;margin-bottom:5px}.city-live-studio-tags span,.city-live-studio-tags em{padding:4px 7px;border-radius:999px;font-size:8.5px;font-style:normal;font-weight:750}.city-live-studio-tags span{background:rgba(200,255,61,.08);color:var(--accent)}.city-live-studio-tags em{background:rgba(255,255,255,.05);color:var(--text-faint)}.city-live-studio-card.is-live .city-live-studio-tags em{color:#7ef2ae;background:rgba(102,233,152,.08)}
.city-live-studio-copy>b{display:block;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.city-live-studio-copy>small{display:block;margin-top:5px;color:var(--text-faint);font-size:9.5px}
.city-live-studio-stats{display:flex;gap:7px}.city-live-studio-stats>span{min-width:70px;padding:8px 10px;border-radius:13px;background:rgba(255,255,255,.025)}.city-live-studio-stats b{display:block;font:700 12px var(--font-mono)}.city-live-studio-stats small{font-size:8.5px;color:var(--text-faint)}
.city-live-studio-actions{display:flex;gap:5px}.city-live-editor-modal{width:min(720px,calc(100vw - 28px))}.city-live-editor-help{margin:-7px 0 12px}.city-live-current-image{margin-top:8px;width:140px;height:80px;border-radius:12px;overflow:hidden}.city-live-current-image img{width:100%;height:100%;object-fit:cover}
@media(max-width:760px){.city-live-studio-intro{grid-template-columns:1fr}.city-live-studio-metrics{overflow:auto}.city-live-studio-card{grid-template-columns:64px minmax(0,1fr) auto}.city-live-studio-thumb{width:64px;height:58px}.city-live-studio-stats{grid-column:2}.city-live-studio-actions{grid-column:3;grid-row:1/3}.city-live-studio-stats>span{min-width:62px}}

/* ===== v46 · booking polish ===== */
/* Календарь остаётся светлым, но без фоновой координатной сетки. */
.page-club .club-booking-shell::before{background:none!important;mask-image:none!important}

/* ===== v46 · Platform Admin settings / light mode ===== */
.page-admin .adm-settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.page-admin .adm-setting-card{padding:18px}
.page-admin .adm-setting-head{display:flex;align-items:flex-start;gap:12px;margin-bottom:16px}
.page-admin .adm-setting-icon{width:38px;height:38px;flex:0 0 38px;border-radius:12px;display:grid;place-items:center;background:var(--accent-dim);color:var(--accent)}
.page-admin .adm-setting-head>div{display:flex;flex-direction:column;gap:4px}.page-admin .adm-setting-head b{font-size:13px}.page-admin .adm-setting-head small{color:var(--text-faint);font-size:10.5px;line-height:1.45}
.page-admin .adm-theme-picker{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.page-admin .adm-theme-picker button{display:grid;grid-template-columns:54px minmax(0,1fr);align-items:center;gap:10px;padding:9px;border:1px solid var(--border);border-radius:15px;background:var(--bg-secondary);color:var(--text);text-align:left;cursor:pointer}
.page-admin .adm-theme-picker button.is-active{border-color:rgba(200,255,61,.38);box-shadow:0 0 0 1px rgba(200,255,61,.08) inset}
.page-admin .adm-theme-picker button>span{display:flex;flex-direction:column;gap:2px}.page-admin .adm-theme-picker button b{font-size:11px}.page-admin .adm-theme-picker button small{font-size:9px;color:var(--text-faint)}
.page-admin .adm-theme-preview{width:54px;height:38px;border-radius:10px;border:1px solid rgba(255,255,255,.09);position:relative;overflow:hidden}
.page-admin .adm-theme-preview::before{content:"";position:absolute;left:7px;top:7px;width:9px;bottom:7px;border-radius:3px;background:currentColor;opacity:.12}.page-admin .adm-theme-preview::after{content:"";position:absolute;left:21px;right:7px;top:7px;height:7px;border-radius:3px;background:currentColor;opacity:.16;box-shadow:0 11px 0 rgba(127,127,127,.18)}
.page-admin .adm-theme-preview.is-dark{background:#11130f;color:#eff2e9}.page-admin .adm-theme-preview.is-light{background:#f4f5f0;color:#22251f;border-color:#d9ddd4}
.page-admin .adm-feature-switch{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:13px 14px;border:1px solid var(--border);border-radius:15px;background:var(--bg-secondary);cursor:pointer}
.page-admin .adm-feature-switch>span{display:flex;flex-direction:column;gap:3px}.page-admin .adm-feature-switch b{font-size:11px}.page-admin .adm-feature-switch small{font-size:9.5px;color:var(--text-faint)}
.page-admin .adm-feature-switch input{position:absolute;opacity:0;pointer-events:none}.page-admin .adm-feature-switch>i{position:relative;width:42px;height:24px;flex:0 0 42px;border-radius:999px;background:var(--border-strong);transition:.18s ease}.page-admin .adm-feature-switch>i::after{content:"";position:absolute;width:18px;height:18px;left:3px;top:3px;border-radius:50%;background:#f4f5f1;transition:.18s ease}.page-admin .adm-feature-switch input:checked+i{background:var(--accent)}.page-admin .adm-feature-switch input:checked+i::after{transform:translateX(18px);background:#172009}

/* Светлая тема только внутреннего Platform Admin. */
.page-admin.admin-theme-light{
    color-scheme:light;
    --bg:#F1F3EE;
    --bg-secondary:#F7F8F4;
    --bg-elevated:#FFFFFF;
    --card:#FFFFFF;
    --card-hover:#F5F7F2;
    --card-elevated:#FFFFFF;
    --glass:rgba(22,27,20,.035);
    --glass-2:rgba(22,27,20,.055);
    --border:#DCE1D8;
    --border-strong:#C9D0C4;
    --text:#1C211A;
    --text-dim:#687064;
    --text-faint:#8A9185;
    --navy:#1C211A;
    --accent-ink:#172009;
    --shadow-pop:0 22px 60px -34px rgba(31,39,25,.24);
}
.page-admin.admin-theme-light{background:var(--bg);color:var(--text)}
.page-admin.admin-theme-light .cab-nav,.page-admin.admin-theme-light .cab-main,.page-admin.admin-theme-light .modal,.page-admin.admin-theme-light .global-tools{background:var(--bg-secondary)!important;border-color:var(--border)!important;color:var(--text)!important}
.page-admin.admin-theme-light .cab-tab:hover,.page-admin.admin-theme-light .cab-tab.is-active{background:rgba(28,33,26,.055)!important}
.page-admin.admin-theme-light .cab-tab.is-active{color:#30420e!important}
.page-admin.admin-theme-light .cab-ident-av{background:#E7F0CE!important;color:#344315!important}
.page-admin.admin-theme-light .btn-ghost,.page-admin.admin-theme-light .btn-icon{background:#fff!important;border-color:var(--border)!important;color:var(--text)!important}
.page-admin.admin-theme-light input,.page-admin.admin-theme-light select,.page-admin.admin-theme-light textarea,.page-admin.admin-theme-light .adm-search,.page-admin.admin-theme-light .adm-filters select{background:#fff!important;border-color:var(--border-strong)!important;color:var(--text)!important}
.page-admin.admin-theme-light .adm-th{background:#F2F4EF!important}.page-admin.admin-theme-light .adm-attn-row{background:#fff!important}.page-admin.admin-theme-light .adm-attn-row:hover:not(:disabled){background:#FAFBF8!important}
.page-admin.admin-theme-light .skeleton{background:linear-gradient(90deg,#e9ece5 25%,#f6f7f3 50%,#e9ece5 75%)!important;background-size:200% 100%!important}
.page-admin.admin-theme-light .pro-badge{color:#26330e!important}
@media(max-width:800px){.page-admin .adm-settings-grid{grid-template-columns:1fr}.page-admin .adm-theme-picker{grid-template-columns:1fr}}

/* ===== v46 · Studio/CRM theme settings ===== */
.page-studio .workspace-settings-grid{display:grid;grid-template-columns:minmax(0,640px);gap:12px}
.page-studio .workspace-setting-card{padding:18px}
.page-studio .workspace-setting-head{display:flex;align-items:flex-start;gap:12px;margin-bottom:16px}
.page-studio .workspace-setting-head>span{width:38px;height:38px;flex:0 0 38px;border-radius:12px;display:grid;place-items:center;background:var(--accent-dim);color:var(--accent)}
.page-studio .workspace-setting-head>div{display:flex;flex-direction:column;gap:4px}.page-studio .workspace-setting-head b{font-size:13px}.page-studio .workspace-setting-head small{color:var(--text-faint);font-size:10.5px;line-height:1.45}
.page-studio .workspace-theme-picker{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.page-studio .workspace-theme-picker button{display:grid;grid-template-columns:58px minmax(0,1fr);align-items:center;gap:10px;padding:9px;border:1px solid var(--border);border-radius:15px;background:var(--bg-secondary);color:var(--text);text-align:left;cursor:pointer}
.page-studio .workspace-theme-picker button.is-active{border-color:rgba(200,255,61,.38);box-shadow:0 0 0 1px rgba(200,255,61,.08) inset}
.page-studio .workspace-theme-picker button>span{display:flex;flex-direction:column;gap:2px}.page-studio .workspace-theme-picker button b{font-size:11px}.page-studio .workspace-theme-picker button small{font-size:9px;color:var(--text-faint)}
.page-studio .workspace-theme-preview{width:58px;height:40px;border-radius:10px;border:1px solid rgba(255,255,255,.09);position:relative;overflow:hidden}
.page-studio .workspace-theme-preview::before{content:"";position:absolute;left:7px;top:7px;width:10px;bottom:7px;border-radius:3px;background:currentColor;opacity:.12}.page-studio .workspace-theme-preview::after{content:"";position:absolute;left:23px;right:7px;top:7px;height:8px;border-radius:3px;background:currentColor;opacity:.16;box-shadow:0 12px 0 rgba(127,127,127,.18)}
.page-studio .workspace-theme-preview.is-dark{background:#11130f;color:#eff2e9}.page-studio .workspace-theme-preview.is-light{background:#f4f5f0;color:#22251f;border-color:#d9ddd4}

.page-studio.studio-theme-light{
    color-scheme:light;
    --bg:#F1F3EE;
    --bg-secondary:#F7F8F4;
    --bg-elevated:#FFFFFF;
    --card:#FFFFFF;
    --card-hover:#F5F7F2;
    --card-elevated:#FFFFFF;
    --glass:rgba(22,27,20,.035);
    --glass-2:rgba(22,27,20,.055);
    --border:#DCE1D8;
    --border-strong:#C9D0C4;
    --text:#1C211A;
    --text-dim:#687064;
    --text-faint:#8A9185;
    --navy:#1C211A;
    --accent-ink:#172009;
    --shadow-pop:0 22px 60px -34px rgba(31,39,25,.24);
}
.page-studio.studio-theme-light{background:var(--bg);color:var(--text)}
.page-studio.studio-theme-light .cab-nav,.page-studio.studio-theme-light .cab-main,.page-studio.studio-theme-light .modal,.page-studio.studio-theme-light .global-tools{background:var(--bg-secondary)!important;border-color:var(--border)!important;color:var(--text)!important}
.page-studio.studio-theme-light .cab-tab:hover,.page-studio.studio-theme-light .cab-tab.is-active{background:rgba(28,33,26,.055)!important}.page-studio.studio-theme-light .cab-tab.is-active{color:#30420e!important}
.page-studio.studio-theme-light .cab-ident-av{background:#E7F0CE!important;color:#344315!important}.page-studio.studio-theme-light .cab-card,.page-studio.studio-theme-light .crm-request-card,.page-studio.studio-theme-light .cab-table-row,.page-studio.studio-theme-light .club-calendar-launch{background:#fff!important;border-color:var(--border)!important;color:var(--text)!important}
.page-studio.studio-theme-light .btn-ghost,.page-studio.studio-theme-light .btn-icon{background:#fff!important;border-color:var(--border)!important;color:var(--text)!important}
.page-studio.studio-theme-light input,.page-studio.studio-theme-light select,.page-studio.studio-theme-light textarea{background:#fff!important;border-color:var(--border-strong)!important;color:var(--text)!important}
.page-studio.studio-theme-light .cab-table-head,.page-studio.studio-theme-light .crm-calendar-summary>div{background:#F3F5F0!important;border-color:var(--border)!important}
.page-studio.studio-theme-light .crm-court-board,.page-studio.studio-theme-light .crm-calendar-closed{background:#fff!important;border-color:var(--border)!important}
.page-studio.studio-theme-light .crm-slot.is-busy{background:#F5F7F2!important;border-color:var(--border)!important}.page-studio.studio-theme-light .crm-slot.is-busy .crm-slot-client b{color:var(--text)!important}.page-studio.studio-theme-light .crm-slot.is-busy .crm-slot-client small,.page-studio.studio-theme-light .crm-slot.is-busy .crm-slot-time{color:var(--text-faint)!important}
.page-studio.studio-theme-light .pro-badge{color:#26330e!important}
@media(max-width:640px){.page-studio .workspace-theme-picker{grid-template-columns:1fr}}

/* ===== v47 · public booking theme + visible flexible rates ===== */
.booking-theme-setting{margin-top:14px;padding-top:14px;border-top:1px solid var(--border)}
.booking-setting-label{display:flex;flex-direction:column;gap:3px;margin-bottom:9px}.booking-setting-label b{font-size:11px}.booking-setting-label small{font-size:9.5px;color:var(--text-faint)}
.booking-theme-picker{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.booking-theme-picker button{display:grid;grid-template-columns:56px minmax(0,1fr);align-items:center;gap:10px;padding:9px;border:1px solid var(--border);border-radius:14px;background:var(--bg-secondary);color:var(--text);text-align:left;cursor:pointer}
.booking-theme-picker button.is-active{border-color:rgba(200,255,61,.38);box-shadow:inset 0 0 0 1px rgba(200,255,61,.06)}
.booking-theme-picker button>span{display:flex;flex-direction:column;gap:2px}.booking-theme-picker button b{font-size:10.5px}.booking-theme-picker button small{font-size:8.5px;color:var(--text-faint)}
.booking-theme-preview{position:relative;width:56px;height:38px;border:1px solid var(--border);border-radius:10px;overflow:hidden;background:#f3f1e8}
.booking-theme-preview::before{content:"";position:absolute;left:6px;right:6px;top:7px;height:5px;border-radius:999px;background:currentColor;opacity:.16;box-shadow:0 10px 0 rgba(120,120,120,.14),0 20px 0 rgba(120,120,120,.1)}
.booking-theme-preview.is-light{background:#f3f1e8;color:#23271f;border-color:#d7d7cf}.booking-theme-preview.is-dark{background:#151814;color:#f0f3eb;border-color:#2b3028}
.booking-rates-entry{display:grid;gap:10px;margin-top:12px;padding:13px;border:1px solid var(--border);border-radius:15px;background:var(--bg-secondary)}
.booking-rates-entry>div:first-child{display:flex;align-items:flex-start;gap:10px}.booking-rates-entry>div:first-child>span{width:32px;height:32px;flex:0 0 32px;border-radius:10px;display:grid;place-items:center;background:var(--accent-dim);color:var(--accent)}
.booking-rates-entry p{display:flex;flex-direction:column;gap:3px;margin:0}.booking-rates-entry p b{font-size:11px}.booking-rates-entry p small{font-size:9.5px;line-height:1.45;color:var(--text-faint)}
.booking-rates-courts{display:flex;flex-wrap:wrap;gap:6px}
.booking-rate-hub{display:grid;gap:7px;margin-top:12px}.booking-rate-hub>button{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;padding:12px 13px;border:1px solid var(--border);border-radius:14px;background:var(--bg-secondary);color:var(--text);text-align:left;cursor:pointer}.booking-rate-hub>button:hover{border-color:var(--border-strong)}
.booking-rate-hub>button>span{display:flex;flex-direction:column;gap:3px}.booking-rate-hub b{font-size:11px}.booking-rate-hub small{font-size:9px;color:var(--text-faint)}
.rate-example{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin:12px 0;padding:9px 10px;border:1px solid rgba(200,255,61,.14);border-radius:13px;background:rgba(200,255,61,.045)}
.rate-example span{font-size:8px;font-weight:850;letter-spacing:.1em;text-transform:uppercase;color:var(--accent)}.rate-example b{padding:4px 7px;border-radius:8px;background:rgba(255,255,255,.035);font:700 8.5px var(--font-mono)}
.rate-rules-head{display:grid;grid-template-columns:minmax(90px,1.2fr) 82px 105px 14px 105px 95px 30px;gap:6px;padding:0 8px;color:var(--text-faint);font-size:8px;text-transform:uppercase;letter-spacing:.05em}
.rate-actions{display:flex;flex-wrap:wrap;gap:6px;margin-top:9px}
.page-admin .adm-settings-grid{grid-template-columns:minmax(0,620px)}

/* Light is the default public booking theme. Dark can be selected per club. */
.page-club .club-booking-shell.booking-theme-dark{
    color:#f1f4ec;
    border-color:rgba(255,255,255,.075);
    background:linear-gradient(180deg,#171a16,#0f120f);
    box-shadow:0 26px 72px rgba(0,0,0,.24)
}
.page-club .club-booking-shell.booking-theme-dark::after{border-color:rgba(200,255,61,.08)}
.page-club .booking-theme-dark .club-booking-kicker{color:var(--accent)}
.page-club .booking-theme-dark .club-booking-head h2{color:#f2f4ee}
.page-club .booking-theme-dark .club-booking-head p{color:#9ca399}
.page-club .booking-theme-dark .club-booking-mode{color:var(--accent);border-color:rgba(200,255,61,.17);background:rgba(200,255,61,.065)}
.page-club .booking-theme-dark .club-booking-mode.is-approval{color:#dfb96f;border-color:rgba(223,185,111,.18);background:rgba(223,185,111,.06)}
.page-club .booking-theme-dark .booking-court-tab{color:#9aa195;border-color:rgba(255,255,255,.075);background:rgba(255,255,255,.025)}
.page-club .booking-theme-dark .booking-court-tab span{color:#eef1e9}.page-club .booking-theme-dark .booking-court-tab:hover{border-color:rgba(255,255,255,.14);background:rgba(255,255,255,.04)}
.page-club .booking-theme-dark .booking-court-tab.is-active{border-color:rgba(200,255,61,.24);background:rgba(200,255,61,.08)}.page-club .booking-theme-dark .booking-court-tab.is-active span{color:var(--accent)}
.page-club .booking-theme-dark .booking-single-court{border-color:rgba(255,255,255,.075);background:rgba(255,255,255,.025);color:#eef1e9}.page-club .booking-theme-dark .booking-single-court svg{color:var(--accent)}.page-club .booking-theme-dark .booking-single-court span{color:#90988d}
.page-club .booking-theme-dark .booking-calendar-card,.page-club .booking-theme-dark .booking-day-card{border-color:rgba(255,255,255,.07);background:rgba(255,255,255,.025);box-shadow:none}
.page-club .booking-theme-dark .booking-calendar-toolbar b,.page-club .booking-theme-dark .booking-day-head h3,.page-club .booking-theme-dark .booking-segment-time b{color:#eef1e9}
.page-club .booking-theme-dark .booking-calendar-toolbar>div button{color:var(--accent)}
.page-club .booking-theme-dark .booking-calendar-card .btn-icon{color:#e8ece4;border-color:rgba(255,255,255,.08);background:rgba(255,255,255,.025)}
.page-club .booking-theme-dark .booking-weekdays span,.page-club .booking-theme-dark .booking-calendar-legend,.page-club .booking-theme-dark .booking-day-head span,.page-club .booking-theme-dark .booking-day-foot,.page-club .booking-theme-dark .booking-segment-time span,.page-club .booking-theme-dark .booking-segment-main small{color:#8e968b}
.page-club .booking-theme-dark .booking-cal-day{color:#a4aba0}.page-club .booking-theme-dark .booking-cal-day:hover{color:#fff;background:rgba(255,255,255,.045)}
.page-club .booking-theme-dark .booking-cal-day.is-today{border-color:rgba(255,255,255,.16);color:#fff}.page-club .booking-theme-dark .booking-cal-day.is-selected{color:var(--accent-ink);border-color:var(--accent);background:var(--accent)}
.page-club .booking-theme-dark .booking-day-head{border-bottom-color:rgba(255,255,255,.065)}.page-club .booking-theme-dark .booking-day-head>small{color:#abb2a7;background:rgba(255,255,255,.04)}
.page-club .booking-theme-dark .booking-segment{border-bottom-color:rgba(255,255,255,.055)}.page-club .booking-theme-dark .booking-segment.is-free:hover{background:rgba(200,255,61,.055)}
.page-club .booking-theme-dark .booking-segment.is-free .booking-segment-main strong{color:var(--accent)}
.page-club .booking-theme-dark .booking-segment.is-busy{background:#262b24;color:#f4f6f0}.page-club .booking-theme-dark .booking-segment.is-busy .booking-segment-time b,.page-club .booking-theme-dark .booking-segment.is-busy .booking-segment-main strong{color:#f4f6f0}.page-club .booking-theme-dark .booking-segment.is-busy .booking-segment-time span,.page-club .booking-theme-dark .booking-segment.is-busy .booking-segment-main small,.page-club .booking-theme-dark .booking-segment.is-busy .booking-segment-price{color:#aeb5aa}
.page-club .booking-theme-dark .booking-segment.is-busy.is-pending{background:#3a3325}.page-club .booking-theme-dark .booking-day-foot{border-top-color:rgba(255,255,255,.06)}
@media(max-width:760px){.rate-rules-head{display:none}.booking-theme-picker{grid-template-columns:1fr}}

/* v81.3 — imported club trust state + destructive admin action */
.page-club .club-source-warning{
    background:linear-gradient(135deg,rgba(255,203,96,.085),rgba(255,255,255,.025));
    border-color:rgba(255,203,96,.20);
    box-shadow:none;
}
.page-club .club-source-warning-ic{background:rgba(255,203,96,.12);color:#ffd782}
.page-club .club-source-warning-copy b{color:var(--text)}
.page-club .club-source-warning-copy p{color:var(--text-dim)}
.page-admin .btn-icon.is-danger{color:#ff8b8b}
.page-admin .btn-icon.is-danger:hover{color:#ffb0b0;border-color:rgba(255,105,105,.24);background:rgba(255,88,88,.08)}
.page-club .club-court-card.is-fallback-photo .club-court-visual::after,
.page-club .club-court-card:not(.has-real-photo) .club-court-visual::after{
    content:"Фото-заглушка · по типу покрытия";
    position:absolute;
    left:10px;
    bottom:10px;
    z-index:2;
    padding:5px 8px;
    border-radius:999px;
    background:rgba(10,13,11,.72);
    border:1px solid rgba(255,255,255,.08);
    color:rgba(255,255,255,.72);
    font-size:8.5px;
    font-weight:700;
    backdrop-filter:blur(10px);
}
.page-club .club-court-visual{position:relative}
