/* Матч&мяч v49 — tournament wizard, messaging polish, aligned tables, coach/card cleanup */

/* ===================== Rating / players: one exact column grid ===================== */
@media (min-width: 901px) {
  .page-rating .rating-table-head,
  .page-rating .rank-card {
    display: grid !important;
    grid-template-columns: 42px minmax(260px,1fr) 82px 118px 96px minmax(132px,170px) !important;
    column-gap: 18px !important;
    align-items: center !important;
  }
  .page-rating .rank-card { min-height: 78px !important; padding: 12px 14px !important; }
  .page-rating .rating-table-head { padding: 0 14px 8px !important; }
  .page-rating .rating-table-head span:nth-child(3),
  .page-rating .rank-col-ntrp { text-align: center !important; }
  .page-rating .rating-table-head span:nth-child(4),
  .page-rating .rating-table-head span:nth-child(5),
  .page-rating .rating-table-head span:nth-child(6),
  .page-rating .rank-col-elo,
  .page-rating .rank-col-delta,
  .page-rating .rank-col-form { text-align: right !important; }
  .page-rating .rank-card .rank-stat { justify-self: stretch !important; }
  .page-rating .rank-card .rank-form-stat .v { justify-content: flex-end !important; }

  
  
  
  
  
}
@media (min-width:901px) and (max-width:1180px) {
  
  
  
  .page-rating .rating-table-head,
  .page-rating .rank-card { grid-template-columns:40px minmax(220px,1fr) 68px 108px 90px minmax(112px,140px) !important; column-gap:12px !important; }
}

/* ===================== Coaches: same quiet Матч&мяч card language ===================== */
.page-coaches .coach-card-v2 {
  min-height: 330px !important;
  padding: 17px !important;
  border-radius: 22px !important;
  border: 1px solid var(--border) !important;
  background: var(--card) !important;
  box-shadow: none !important;
}
.page-coaches .coach-card-v2::before { content:none !important; display:none !important; background:none !important; }
.page-coaches .coach-card-v2:hover { transform:translateY(-2px) !important; border-color:var(--border-strong) !important; box-shadow:none !important; background:var(--card-hover) !important; }
.page-coaches .coach-card-head { min-height:28px !important; }
.page-coaches .coach-card-v2 .coach-card-status { padding:5px 9px !important; border:1px solid var(--border) !important; background:var(--bg-secondary) !important; color:var(--text-dim) !important; letter-spacing:.02em !important; }
.page-coaches .coach-card-v2 .coach-card-status.is-open { color:var(--accent) !important; border-color:rgba(200,255,61,.18) !important; background:rgba(200,255,61,.055) !important; }
.page-coaches .coach-top-v2 .coach-avatar-ring,
.page-coaches .coach-top-v2 .coach-avatar-ring.is-open,
.coach-top-v2 .coach-avatar-ring.is-open { padding:0 !important; background:none !important; box-shadow:none !important; }
.page-coaches .coach-top-v2 .avatar-lg { width:78px !important; height:78px !important; border-radius:20px !important; border:1px solid var(--border) !important; }
.page-coaches .coach-card-v2 .coach-name { font-size:17px !important; }
.page-coaches .coach-tags span { background:var(--bg-secondary) !important; border-color:var(--border) !important; color:var(--text-dim) !important; }
.page-coaches .coach-stats-v2 { border-top:1px solid var(--border); padding-top:13px; }
.page-coaches .coach-schedule-btn { margin-top:auto; }

/* ===================== Clubs: compact chips, no giant “Открытые” ===================== */
.page-clubs .club-card-chips { display:flex !important; align-items:center !important; justify-content:flex-start !important; align-self:start !important; flex-wrap:wrap !important; gap:7px !important; min-height:30px; }
.page-clubs .club-card-chips span {
  display:inline-flex !important; align-items:center !important; align-self:center !important; flex:0 0 auto !important; width:auto !important; height:auto !important; min-width:0 !important; min-height:28px !important;
  padding:5px 9px !important; margin:0 !important; border-radius:999px !important; line-height:1.15 !important; font-size:10.5px !important; font-weight:650 !important;
  background:rgba(255,255,255,.035) !important; border:1px solid var(--border) !important; color:var(--text-dim) !important;
}

/* ===================== Profile name editor ===================== */
.me-hero-card .me-name-editor {
  width:min(560px,100%); align-items:flex-end !important; gap:10px !important; padding:12px; border:1px solid rgba(23,26,22,.12); border-radius:16px; background:rgba(255,255,255,.36);
}
.me-name-editor-field { display:grid; gap:5px; flex:1; min-width:0; }
.me-name-editor-field > span { color:#4f574d; font-size:10px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.me-name-editor-field input[type="text"] { width:100%; min-height:42px; padding:9px 12px !important; border-radius:11px !important; border:1px solid rgba(23,26,22,.16) !important; background:rgba(255,255,255,.66) !important; color:#171a16 !important; font-size:15px !important; font-weight:750; box-shadow:none !important; }
.me-name-editor-field input[type="text"]:focus { border-color:rgba(23,26,22,.38) !important; box-shadow:0 0 0 3px rgba(23,26,22,.06) !important; }
.me-name-editor-field small { color:#687064; font-size:10.5px; }
.me-name-editor-actions { display:flex; gap:7px; flex:0 0 auto; }
@media(max-width:620px){ .me-hero-card .me-name-editor{align-items:stretch !important;flex-direction:column}.me-name-editor-actions .btn{flex:1} }

/* ===================== Messages ===================== */
.messages-head-actions { display:flex; gap:8px; flex-wrap:wrap; }
.messages-empty, .chat-first-message { min-height:320px; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:7px; text-align:center; color:var(--text-dim); }
.messages-empty > span, .chat-first-message > span { display:grid; place-items:center; width:48px; height:48px; border-radius:14px; background:var(--bg-secondary); border:1px solid var(--border); color:var(--accent); margin-bottom:4px; }
.messages-empty b, .chat-first-message b { color:var(--text); font-size:16px; }
.messages-empty p, .chat-first-message p { margin:0 0 8px; color:var(--text-faint); font-size:12px; }
.conversation-row-date { margin-left:auto; color:var(--text-faint); font-size:9.5px; font-variant-numeric:tabular-nums; }
.message-receipt { display:inline-flex; color:var(--text-faint); font-size:10px; font-weight:900; letter-spacing:-.12em; margin-right:2px; }
.message-receipt.is-read { color:var(--accent); }
.msg-time { display:flex !important; align-items:center; justify-content:flex-end; gap:6px; }
.chat-panel-head > div b, .chat-panel-head > div small { display:block; }
.chat-panel-head > div small { margin-top:2px; color:var(--text-faint); font-size:9.5px; }
.new-message-modal > p { margin:6px 0 14px; color:var(--text-dim); font-size:12.5px; }
.new-message-search { display:flex; align-items:center; gap:9px; padding:0 11px; border:1px solid var(--border); border-radius:12px; background:var(--bg-secondary); }
.new-message-search svg { color:var(--text-faint); flex:0 0 auto; }
.new-message-search input { border:0 !important; background:transparent !important; padding-inline:0 !important; min-height:42px; box-shadow:none !important; }
.new-message-results { display:grid; gap:6px; max-height:380px; overflow:auto; margin-top:10px; }
.new-message-person { width:100%; display:grid; grid-template-columns:auto minmax(0,1fr) auto; align-items:center; gap:10px; padding:9px 10px; border:1px solid var(--border); border-radius:12px; background:transparent; color:var(--text); text-align:left; cursor:pointer; }
.new-message-person:hover { background:var(--card-hover); border-color:var(--border-strong); }
.new-message-person span b,.new-message-person span small{display:block}.new-message-person span small{margin-top:2px;color:var(--text-faint);font-size:10px}

/* ===================== Tournament creation wizard ===================== */
.event-create-page-wrap { max-width:1180px; }
.event-create-page-top { display:grid; grid-template-columns:auto minmax(0,1fr); gap:18px; align-items:start; margin-bottom:18px; }
.event-create-page-top > div h1 { margin:6px 0 5px; font-size:clamp(34px,4vw,50px); letter-spacing:-.055em; }
.event-create-page-top > div p { margin:0; color:var(--text-dim); max-width:650px; }
.event-wizard-shell { display:grid; grid-template-columns:230px minmax(0,1fr); gap:14px; align-items:start; }
.event-wizard-steps { display:grid; gap:6px; position:sticky; top:92px; }
.event-wizard-step { display:grid; grid-template-columns:34px minmax(0,1fr); gap:10px; align-items:center; padding:10px; border:1px solid transparent; border-radius:14px; background:transparent; color:var(--text-dim); text-align:left; cursor:pointer; }
.event-wizard-step > span { width:34px; height:34px; display:grid; place-items:center; border:1px solid var(--border); border-radius:10px; background:var(--bg-secondary); font:700 11px var(--font-mono); }
.event-wizard-step b,.event-wizard-step small{display:block}.event-wizard-step b{font-size:12px}.event-wizard-step small{margin-top:2px;color:var(--text-faint);font-size:9.5px;line-height:1.25}
.event-wizard-step.is-on { background:var(--card); border-color:var(--border); color:var(--text); }
.event-wizard-step.is-on > span { background:var(--accent); border-color:var(--accent); color:var(--accent-ink); }
.event-wizard-step.is-done > span { color:var(--accent); border-color:rgba(200,255,61,.2); }
.event-wizard-main { min-height:620px; border:1px solid var(--border); border-radius:24px; background:var(--card); overflow:hidden; }
.event-wizard-progress { height:3px; background:rgba(255,255,255,.04); }.event-wizard-progress i{display:block;height:100%;background:var(--accent);transition:width .25s var(--ease)}
.event-wizard-head { padding:26px 28px 16px; border-bottom:1px solid var(--border); }.event-wizard-head>span{color:var(--accent);font-size:9px;font-weight:850;letter-spacing:.1em;text-transform:uppercase}.event-wizard-head h2{margin:5px 0 3px;font-size:26px}.event-wizard-head p{margin:0;color:var(--text-faint);font-size:12px}
.event-wizard-body { padding:24px 28px; }
.event-wizard-actions { display:flex; justify-content:space-between; gap:10px; padding:18px 28px 24px; border-top:1px solid var(--border); }
.event-wizard-card { padding:18px; border:1px solid var(--border); border-radius:18px; background:var(--bg-secondary); }
.event-basic-grid { display:grid; grid-template-columns:210px minmax(0,1fr); gap:20px; }
.event-cover-picker { min-height:210px; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:7px; border:1px dashed var(--border-strong); border-radius:16px; background:rgba(255,255,255,.02); overflow:hidden; cursor:pointer; text-align:center; }
.event-cover-picker > span { width:52px;height:52px;display:grid;place-items:center;border-radius:15px;background:rgba(200,255,61,.08);color:var(--accent) }.event-cover-picker b{font-size:12px}.event-cover-picker small{color:var(--text-faint);font-size:10px}.event-cover-picker img{width:100%;height:100%;min-height:210px;object-fit:cover}
.event-basic-fields { display:grid; align-content:start; gap:4px; }
.event-wizard-presets { margin-bottom:12px; }.event-wizard-presets button{min-height:68px}
.event-rule-summary,.event-limits-note { margin-top:14px; padding:11px 13px; border-radius:12px; border-left:2px solid var(--accent); background:rgba(200,255,61,.035); color:var(--text-dim); font-size:11.5px; }
.event-scope-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
.event-scope-card { min-height:154px; display:flex; flex-direction:column; align-items:flex-start; gap:7px; padding:16px; border:1px solid var(--border); border-radius:16px; background:var(--bg-secondary); color:var(--text); text-align:left; cursor:pointer; }
.event-scope-card>span{display:grid;place-items:center;width:38px;height:38px;border-radius:11px;background:rgba(255,255,255,.035);color:var(--text-dim)}.event-scope-card b{font-size:13px}.event-scope-card small{color:var(--text-faint);font-size:10.5px;line-height:1.4}.event-scope-card.is-on{border-color:rgba(200,255,61,.28);background:rgba(200,255,61,.045)}.event-scope-card.is-on>span{background:var(--accent);color:var(--accent-ink)}.event-scope-card:disabled{opacity:.42;cursor:not-allowed}
.event-player-picker { margin-top:12px; }.event-player-picker-head,.event-player-search{display:flex;align-items:center;justify-content:space-between;gap:12px}.event-player-picker-head b,.event-player-picker-head small{display:block}.event-player-picker-head small{color:var(--text-faint);font-size:10px}.event-player-picker-head label{color:var(--text-dim);font-size:10.5px}.event-player-search{margin-top:12px}.event-player-search input{flex:1}.event-player-search span{color:var(--accent);font-size:10px;font-weight:800;white-space:nowrap}
.event-player-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:6px; max-height:320px; overflow:auto; margin-top:10px; }
.event-player-choice { display:grid; grid-template-columns:auto minmax(0,1fr) 24px; align-items:center; gap:9px; padding:8px 9px; border:1px solid var(--border); border-radius:12px; background:rgba(255,255,255,.018); cursor:pointer; }.event-player-choice>input{display:none}.event-player-choice span b,.event-player-choice span small{display:block}.event-player-choice span b{font-size:11px}.event-player-choice span small{margin-top:2px;color:var(--text-faint);font-size:9px}.event-player-choice>i{display:grid;place-items:center;width:22px;height:22px;border:1px solid var(--border);border-radius:7px;color:var(--accent)}.event-player-choice.is-on{border-color:rgba(200,255,61,.22);background:rgba(200,255,61,.04)}
.event-review-card { border:1px solid var(--border); border-radius:20px; overflow:hidden; }.event-review-hero{display:flex;align-items:center;gap:14px;padding:20px;background:linear-gradient(90deg,rgba(200,255,61,.06),transparent)}.event-review-hero>span{width:48px;height:48px;display:grid;place-items:center;border-radius:14px;background:var(--accent);color:var(--accent-ink)}.event-review-hero small,.event-review-hero h3,.event-review-hero p{display:block;margin:0}.event-review-hero small{color:var(--accent);font-size:9px;text-transform:uppercase;letter-spacing:.1em}.event-review-hero h3{margin-top:3px;font-size:22px}.event-review-hero p{margin-top:3px;color:var(--text-faint);font-size:11px}
.event-review-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border-top:1px solid var(--border); }.event-review-grid>div{padding:15px;border-right:1px solid var(--border);border-bottom:1px solid var(--border)}.event-review-grid small,.event-review-grid b{display:block}.event-review-grid small{color:var(--text-faint);font-size:8.5px;text-transform:uppercase;letter-spacing:.08em}.event-review-grid b{margin-top:5px;font-size:11.5px;line-height:1.35}.event-review-players{display:flex;flex-wrap:wrap;gap:6px;padding:15px}.event-review-players>span{display:inline-flex;align-items:center;gap:6px;padding:5px 8px;border:1px solid var(--border);border-radius:999px;font-size:10px}
@media(max-width:900px){.event-wizard-shell{grid-template-columns:1fr}.event-wizard-steps{position:static;grid-template-columns:repeat(5,minmax(0,1fr));overflow:auto}.event-wizard-step{display:flex;justify-content:center;padding:7px}.event-wizard-step>div{display:none}.event-basic-grid{grid-template-columns:1fr}.event-cover-picker{min-height:150px}.event-scope-grid{grid-template-columns:1fr}.event-player-list{grid-template-columns:1fr}}
@media(max-width:560px){.event-create-page-top{grid-template-columns:1fr}.event-wizard-head,.event-wizard-body,.event-wizard-actions{padding-left:16px;padding-right:16px}.event-review-grid{grid-template-columns:1fr 1fr}.messages-section-head{align-items:flex-start;flex-direction:column}.messages-head-actions{width:100%}.messages-head-actions .btn{flex:1}}

/* Rating responsive layout: keep the semantic columns aligned instead of falling back
   to the old 2-column v3 card rule. */
@media (max-width: 900px) {
  .page-rating .rank-card {
    display:grid !important;
    grid-template-columns:34px minmax(0,1fr) 68px 92px !important;
    grid-template-areas:
      "rank person ntrp elo"
      "rank person delta delta" !important;
    column-gap:10px !important;
    row-gap:6px !important;
  }
  .page-rating .rank-card > .rank-badge,
  .page-rating .rank-card > .rank-num { grid-area:rank !important; align-self:center; }
  .page-rating .rank-card > .rank-identity { grid-area:person !important; }
  .page-rating .rank-col-ntrp { grid-area:ntrp !important; text-align:right !important; }
  .page-rating .rank-col-elo { grid-area:elo !important; text-align:right !important; }
  .page-rating .rank-col-delta { grid-area:delta !important; text-align:right !important; }
  .page-rating .rank-col-form { display:none !important; }
}
@media (max-width: 560px) {
  .page-rating .rank-card {
    grid-template-columns:32px minmax(0,1fr) auto !important;
    grid-template-areas:
      "rank person elo"
      "rank person ntrp"
      "rank delta delta" !important;
  }
  .page-rating .rank-stat .v { font-size:14px !important; }
  .page-rating .rank-stat .l { font-size:7.5px !important; }
}
.me-name-edit-trigger { min-height:32px !important; padding:0 10px !important; font-size:10.5px !important; white-space:nowrap; }
.event-player-picker-head label.is-disabled { opacity:.45; }
