:root{
  --ui-radius-pill: 999px;
  --ui-radius-round: 50%;
  --ui-radius-xs: 8px;
  --ui-radius-sm: 10px;
  --ui-radius-md: 12px;
  --ui-radius-lg: 14px;
  --ui-radius-xl: 16px;

  --ui-white:#fff;
  --ui-ink:#111827;
  --ui-muted:#64748b;
  --ui-muted-warm:#68717b;
  --ui-danger:#d93645;
  --ui-text:#202124;
  --ui-black:#000;
  --ui-surface-soft:#eef2f5;
  --ui-surface-light:#f8fafc;
  --ui-success:#18a35b;
  --ui-accent:#b73165;
  --ui-border:#d8dee6;

  --ui-shadow-line: 0 1px 0 rgba(16,24,40,.04);
  --ui-shadow-line-soft: 0 1px 0 rgba(16,24,40,.03);
  --ui-shadow-accent: 0 3px 10px rgba(7,89,154,.10);
  --ui-shadow-control: 0 2px 8px rgba(16,24,40,.12);
  --ui-shadow-control-soft: 0 2px 6px rgba(16,24,40,.12);
  --ui-shadow-dark: 0 2px 10px rgba(0,0,0,.22);
  --ui-shadow-focus: 0 0 0 3px rgba(0,95,174,.12);
  --ui-border-soft: rgba(15,23,42,.08);
  --ui-border-medium: rgba(15,23,42,.12);
  --ui-border-subtle: rgba(15,23,42,.06);

  --ui-transition-basic: .18s ease;
  --ui-transition-control: background .15s ease, color .15s ease, border-color .15s ease, box-shadow .15s ease;
  --ui-transition-tab: background-color .16s ease, color .16s ease;
  --ui-font-xs: 11px;
  --ui-font-sm: 12px;
  --ui-font-md: 13px;
  --ui-font-compact: .78rem;
  --ui-font-control: .82rem;
  --ui-font-label: .86rem;
  --ui-font-body-sm: .9rem;
  --ui-font-body: 1rem;
  --ui-font-heading-sm: 1.35rem;

  --ui-weight-medium: 500;
  --ui-weight-semibold: 600;
  --ui-weight-strong: 650;
  --ui-weight-bold: 700;
  --ui-weight-heavy: 750;
  --ui-weight-extrabold: 800;
  --ui-weight-black-soft: 850;
  --ui-weight-black: 900;
  --ui-weight-label: 520;

  --ui-line-tight: 1;
  --ui-line-snug: 1.1;
  --ui-line-compact: 1.15;
  --ui-line-control: 1.2;
  --ui-line-label: 1.25;
  --ui-line-body: 1.35;
  --ui-line-relaxed: 1.45;
  --ui-line-loose: 1.6;

  --ui-size-xs: 30px;
  --ui-size-sm: 32px;
  --ui-size-md: 34px;
  --ui-size-control: 36px;
  --ui-size-lg: 42px;
  --ui-size-touch: 44px;
  --ui-size-xl: 46px;

  --ui-space-2xs: 4px;
  --ui-space-xs: 5px;
  --ui-space-sm: 6px;
  --ui-space-compact: 7px;
  --ui-space-md: 8px;
  --ui-space-control: 10px;
  --ui-space-lg: 12px;
  --ui-space-xl: 14px;
  --ui-space-2xl: 18px;

  --ui-inset-5-9: 5px 9px;
  --ui-inset-6-10: 6px 10px;
  --ui-inset-9-10: 9px 10px;
  --ui-inset-10-12: 10px 12px;
  --ui-inset-8-10: 8px 10px;
  --ui-inset-8-12: 8px 12px;
  --ui-inset-9-14: 9px 14px;
  --ui-inset-7-12: 7px 12px;

  --ui-margin-bottom-control: 0 0 10px;
  --ui-margin-bottom-md: 0 0 8px;
  --ui-margin-bottom-2xl: 0 0 18px;
  --ui-margin-top-xs: 5px 0 0;
  --ui-margin-bottom-xl: 0 0 14px;
  --ui-margin-panel: 0 10px 10px;

  --panel: rgba(255,255,255,0.06);

  --border: rgba(255,255,255,0.12);
  --muted: rgba(255,255,255,0.72);

  --shadow: 0 20px 45px rgba(0,0,0,.35);
  --app-blue: #222;

  --app-yellow: #f2b71b;
  --app-text: #161616;
  --app-muted: #777b80;
  --app-line: #e1e1e1;

  --app-green: #18a55b;
  --app-red: #c83f4b;
  --app-font-size-base: 14px;
  --app-font-size-small: 12px;
  --app-font-size-heading: 18px;
  --app-font-size-title: 22px;
  --app-page-gap-x: 18px;
  --app-page-gap-y: 18px;
  --app-shell-max-width: 760px;
  --app-shell-side-gap: 0px;
  --app-panel-inner-gap: 4px;
  --app-panel-radius: 12px;
  --app-shell-block-gap: 10px;
  --app-font-weight-normal: 300;
}

*{box-sizing:border-box;}
html,
body{margin:0;padding:0;}
body{
  font-family: "Roboto", sans-serif;
  color:var(--ui-white);
  min-height:100vh;
  background:
    radial-gradient(circle at 20% 20%, rgba(255,255,255,.06), transparent 24%),
    radial-gradient(circle at 80% 10%, rgba(255,255,255,.04), transparent 20%),
    radial-gradient(circle at 30% 80%, rgba(255,255,255,.05), transparent 22%),
    linear-gradient(145deg, #020202 0%, #0b0b0b 40%, #111 100%);
}
a{color:inherit;text-decoration:none;}
img{max-width:100%;display:block;}
.app-surface{background:var(--panel);border:1px solid var(--border);}
.app-surface--shadow{box-shadow:var(--shadow);}
.app-shell{margin:0 auto;}
.app-header{position:sticky;top:0;z-index:50;background:rgba(0,0,0,.72);backdrop-filter:blur(16px);border-bottom:1px solid rgba(255,255,255,.06);}
.app-header__inner{display:flex;justify-content:space-between;align-items:center;min-height:72px;gap:16px;}
.app-brand{display:flex;align-items:center;gap:12px;font-weight: var(--ui-weight-black);letter-spacing:.04em;text-transform:uppercase;}
.app-brand img{width:42px;height:42px;object-fit:contain;}
.app-header__nav{display:flex;gap:12px;align-items:center;}
.app-header__logout-form{margin:0;display:inline-flex;}
.app-header__logout-button{appearance:none;border:0;background:none;padding:0;color:inherit;font:inherit;cursor:pointer;}
.app-user-pill,
.pill{padding:var(--ui-inset-8-12);border-radius:var(--ui-radius-pill);background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.08);font-size:var(--ui-font-body-sm);}
.app-notice{box-sizing:border-box;margin-bottom:18px;}
.flash{margin:18px 0 0;padding:14px 16px;border-radius:var(--ui-radius-xl);border:1px solid var(--border);box-shadow:var(--shadow);}
.flash--success{background:rgba(30,100,54,.28);}
.flash--error{background:rgba(130,35,35,.28);}
.auth-page main{padding:28px 0 48px;}
.auth-wrap{min-height:100vh;display:grid;place-items:center;padding:24px 16px;}
.auth-card{width:min(520px,100%);background:var(--panel);border:1px solid var(--border);border-radius:28px;padding:28px;box-shadow:var(--shadow);backdrop-filter:blur(12px);}
.auth-card--wide{width:min(620px,100%);}
.auth-brand{text-align:center;margin-bottom:24px;}
.auth-brand img{width:120px;height:120px;object-fit:contain;margin:0 auto 16px;}
.auth-brand h1{margin:var(--ui-margin-bottom-md);font-size:2rem;}
.app-muted-copy{
  margin:0;
  color:var(--muted);
  line-height:var(--ui-line-loose);
}

.auth-form{display:grid;gap:14px;}
.app-form input,
.app-form select,
.app-form textarea{
  width:100%;
  font:inherit;
  outline:none;
}

.app-field-label{
  display:grid;
}

.auth-form label{gap:8px;}
.auth-form span{font-weight: var(--ui-weight-bold);font-size:.95rem;}
.auth-form input,
.auth-form select{padding:14px 16px;border-radius:var(--ui-radius-xl);border:1px solid var(--border);background:rgba(255,255,255,.06);color:var(--ui-white);}
.auth-form input:focus,
.auth-form select:focus{border-color:rgba(255,255,255,.4);background:rgba(255,255,255,.08);}
.auth-form select option{color:#111;}
.auth-remember{display:flex;align-items:center;gap:10px;cursor:pointer;}
.auth-remember input[type="checkbox"]{width:20px;height:20px;margin:0;flex:0 0 20px;padding:0;accent-color:#fff;}
.auth-remember span{font-size:.92rem;font-weight:var(--ui-weight-medium);}
.checkbox-line{display:flex!important;align-items:flex-start;gap:10px;padding-top:4px;}
.checkbox-line input{width:18px;height:18px;min-width:18px;padding:0;margin-top:2px;}
.app-actions{display:flex;}

.auth-links{margin-top:18px;justify-content:space-between;gap:12px;flex-wrap:wrap;}
.auth-links a{color:var(--muted);}
.btn{appearance:none;border:0;border-radius:var(--ui-radius-xl);padding:14px 18px;font:inherit;cursor:pointer;transition:var(--ui-transition-basic);display:inline-flex;align-items:center;justify-content:center;gap:10px;}
.btn--ghost{background:rgba(255,255,255,.06);color:var(--ui-white);border:1px solid rgba(255,255,255,.08);}
.btn--block{width:100%;}
.btn:disabled{opacity:.6;cursor:not-allowed;}

.muted{margin:0;color:var(--muted);}

.app-section-head{display:flex;justify-content:space-between;}

.section-head{align-items:center;gap:12px;margin-bottom:20px;}
.section-head h2{margin:0;}
.app-card{box-sizing:border-box;}
.notice-card,
.empty-card,
.team-card{background:var(--panel);border:1px solid var(--border);border-radius:24px;box-shadow:var(--shadow);}
.notice-card{padding:18px 20px;}
.notice-card--warning{color:#fff1c5;border-color:rgba(255,217,120,.3);background:rgba(105,82,11,.22);}
.empty-card h3{margin:var(--ui-margin-bottom-control);}
.team-grid{display:grid;}

.team-card h3{margin:var(--ui-margin-bottom-control);}
.team-card p{margin:var(--ui-margin-bottom-2xl);color:var(--muted);min-height:22px;}
.intro-page{overflow:hidden;}
.intro-screen{
  position:fixed;
  inset:0;
  display:grid;
  place-items:center;
  isolation:isolate;
  background:var(--ui-black);
}
.intro-texture{
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 50% 22%, rgba(255,255,255,.055), transparent 24%),
    radial-gradient(circle at 18% 32%, rgba(255,255,255,.03), transparent 20%),
    radial-gradient(circle at 82% 18%, rgba(255,255,255,.028), transparent 18%),
    radial-gradient(circle at 28% 78%, rgba(255,255,255,.03), transparent 22%),
    radial-gradient(circle at 76% 72%, rgba(255,255,255,.022), transparent 20%),
    linear-gradient(180deg, #070707 0%, #020202 44%, #090909 100%);
}
.intro-texture::before,
.intro-texture::after{
  content:"";
  position:absolute;
  inset:-12%;
  background-image:
    radial-gradient(rgba(255,255,255,.04) .6px, transparent .7px),
    radial-gradient(rgba(255,255,255,.024) .45px, transparent .55px);
  background-size: 18px 18px, 11px 11px;
  mix-blend-mode:soft-light;
  opacity:.22;
  filter: blur(.2px) contrast(115%);
}
.intro-texture::after{
  inset:0;
  background:
    linear-gradient(135deg, rgba(255,255,255,.06), transparent 35%),
    linear-gradient(315deg, rgba(255,255,255,.03), transparent 32%);
  opacity:.16;
}
.intro-particles{
  position:absolute;
  inset:-15%;
  pointer-events:none;
  opacity:.24;
  filter: blur(.4px);
}
.intro-particles::before,
.intro-particles::after{
  content:"";
  position:absolute;
  inset:0;
  background-image:
    radial-gradient(circle, rgba(255,255,255,.14) 0 1px, transparent 1.8px),
    radial-gradient(circle, rgba(255,255,255,.08) 0 .8px, transparent 1.6px),
    radial-gradient(circle, rgba(255,255,255,.06) 0 .6px, transparent 1.4px);
  background-size: 210px 210px, 160px 160px, 260px 260px;
  animation: dustFloat 9s linear infinite;
}
.intro-particles::after{animation-duration:13s; animation-direction:reverse; opacity:.7;}
.intro-particles--two{opacity:.16; transform:scale(1.08);}
.intro-particles--two::before,
.intro-particles--two::after{animation-duration:16s;}
.intro-stage{
  position:relative;
  width:min(360px, 76vw);
  aspect-ratio:1/1;
  display:grid;
  place-items:center;
}
.intro-logo-shadow{
  position:absolute;
  left:50%;
  top:56%;
  width:min(240px, 50vw);
  height:min(240px, 50vw);
  transform:translate(-50%, -50%);
  border-radius:var(--ui-radius-round);
  background:radial-gradient(circle, rgba(255,255,255,.22) 0%, rgba(255,255,255,.10) 22%, rgba(255,255,255,.035) 48%, transparent 72%);
  filter:blur(28px);
  opacity:.82;
  animation: logoGlow 3.2s ease-in-out infinite;
}
.intro-logo-wrap{
  position:relative;
  width:min(182px, 40vw);
  aspect-ratio:1/1;
  display:grid;
  place-items:center;
  transform-origin:center center;
}
.intro-logo{
  position:relative;
  width:100%;
  height:100%;
  object-fit:contain;
  z-index:3;
  filter: drop-shadow(0 18px 30px rgba(0,0,0,.45)) drop-shadow(0 0 18px rgba(255,255,255,.07));
  animation: heartbeatUltra 3.2s ease-in-out infinite;
  transition: opacity .45s ease, transform .45s ease, filter .45s ease;
}
.intro-gif{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:contain;
  z-index:4;
  opacity:0;
  transform:scale(.965);
  filter: drop-shadow(0 18px 30px rgba(0,0,0,.45)) drop-shadow(0 0 22px rgba(255,255,255,.08));
  transition: opacity .55s ease, transform .55s ease;
}
.intro-ring{
  position:absolute;
  left:50%;
  top:50%;
  border-radius:var(--ui-radius-round);
  border:1px solid rgba(255,255,255,.10);
  transform:translate(-50%, -50%);
  pointer-events:none;
  z-index:2;
}
.intro-ring--one{width:126%;height:126%;animation:ringPulse 3.2s ease-in-out infinite;}
.intro-ring--two{width:148%;height:148%;opacity:.55;animation:ringPulse 3.2s ease-in-out infinite .28s;}
.intro-screen.is-roaring .intro-logo{
  opacity:0;
  transform:scale(.92);
  filter: drop-shadow(0 12px 20px rgba(0,0,0,.38));
}
.intro-screen.is-roaring .intro-gif{
  opacity:1;
  transform:scale(1);
}
.intro-screen.is-roaring .intro-logo-shadow{
  animation-duration:1.7s;
}
.intro-copy{
  position:absolute;
  bottom:11vh;
  display:grid;
  gap:var(--ui-space-compact);
  text-align:center;
  letter-spacing:.18em;
  text-transform:uppercase;
  text-shadow:0 3px 14px rgba(0,0,0,.35);
}
.intro-copy strong{font-size:1.02rem;}
.intro-copy span{font-size:var(--ui-font-control);color:var(--muted);}
.intro-skip{
  position:absolute;
  right:18px;
  bottom:18px;
  padding:10px 14px;
  border-radius:var(--ui-radius-pill);
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.09);
  color:var(--muted);
  backdrop-filter:blur(8px);
}
.intro-screen.is-fading{animation:introFade .95s ease forwards;}
@keyframes heartbeatUltra{
  0%{transform:scale(.97);}
  10%{transform:scale(1.03);}
  18%{transform:scale(.985);}
  30%{transform:scale(1.07);}
  38%{transform:scale(1.01);}
  58%{transform:scale(.995);}
  70%{transform:scale(1.028);}
  100%{transform:scale(.97);}
}
@keyframes logoGlow{
  0%,100%{opacity:.62; transform:translate(-50%, -50%) scale(.94);}
  35%{opacity:.95; transform:translate(-50%, -50%) scale(1.08);}
  55%{opacity:.72; transform:translate(-50%, -50%) scale(1.01);}
}
@keyframes ringPulse{
  0%,100%{opacity:.22; transform:translate(-50%, -50%) scale(.92);}
  32%{opacity:.65; transform:translate(-50%, -50%) scale(1);}
  62%{opacity:.18; transform:translate(-50%, -50%) scale(1.09);}
}
@keyframes dustFloat{
  from{transform:translate3d(0,0,0);}
  50%{transform:translate3d(-1.8%, -2.2%, 0);}
  to{transform:translate3d(1.6%, 2.4%, 0);}
}
@keyframes introFade{from{opacity:1;}to{opacity:0;visibility:hidden;}}

@media (max-width: 720px){
  .auth-card{padding:22px 18px;border-radius:22px;}
  .app-header__inner{min-height:64px;}
  .app-brand span{font-size:.95rem;}

  .section-head{align-items:flex-start;}
  .intro-stage{width:min(320px,82vw);}
  .intro-copy{bottom:12vh;}
  .intro-copy strong{font-size:.92rem;}
}

.team-hero__back{margin-bottom:16px;}
.team-hero__main{justify-content:space-between;align-items:flex-start;flex-wrap:wrap;}

.team-hero__stats{min-width:min(420px,100%);}
.stat-card{border-radius:22px;padding:var(--ui-space-2xl);text-align:center;}
.stat-card strong{display:block;font-size:1.65rem;line-height:var(--ui-line-tight);margin-bottom:8px;}
.stat-card span{color:var(--ui-muted-warm);font-size:.92rem;}
.team-dashboard-grid{padding:10px 0 42px;}
.list-card{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.07);}
.list-card p{margin:var(--ui-margin-bottom-control);}
.list-card p:last-child{margin-bottom:0;}
.app-between-row{
  display:flex;
  justify-content:space-between;
}

.list-card__top{align-items:flex-start;gap:10px;margin-bottom:10px;}
.app-badge{
  display:inline-flex;
  align-items:center;
  border-radius:var(--ui-radius-pill);
}

.score-pill{justify-content:center;padding:var(--ui-inset-8-12);font-weight: var(--ui-weight-black);min-width:72px;}
.pill--danger{background:rgba(255,100,100,.16);}
.empty-card--compact{padding:18px 20px;}

@media (max-width: 900px){
  .team-dashboard-grid{grid-template-columns:1fr;}
  .team-hero__stats{grid-template-columns:1fr;min-width:0;width:100%;}
}
.app-tab{
  position:relative;
  text-transform:uppercase;
}

.team-tab{
  box-shadow:var(--shadow);

  transition:var(--ui-transition-basic);
}
.team-tab:hover{background:rgba(255,255,255,.08);color:var(--ui-white);}
.team-tab.is-active{
  border-color:var(--ui-white);
}
.team-dashboard-grid--single{
  grid-template-columns:1fr;
}

@media (max-width: 900px){
  .team-tabs{grid-template-columns:repeat(2,minmax(0,1fr));}

}

.attendance-btn{flex:1;}
.event-topbar{display:grid;grid-template-columns:44px 1fr 44px;align-items:center;gap:12px;}
.event-topbar h1{margin:0;text-align:center;}
.app-icon-action{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:var(--ui-radius-round);
}

.event-back{background:rgba(255,255,255,.06);}
.event-tabs{grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:16px;}
.event-tab{text-align:center;font-weight: var(--ui-weight-extrabold);}
.event-tab.is-active{border-color:var(--ui-white);}
.event-summary-card{align-items:center;background:var(--panel);border:1px solid var(--border);box-shadow:var(--shadow);margin-bottom:16px;}
.event-summary-card__accent{height:100%;}

.event-summary-card__body p{margin:0;}
.event-summary-badges{display:flex;flex-wrap:wrap;}

.event-row--split{gap:12px;flex-wrap:wrap;}

.event-attendance-actions{margin-top:16px;}
.event-info-table{display:grid;gap:0;}.app-grid-row{
  display:grid;
}

.participants-summary{grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:16px;}.participant-row{justify-content:space-between;}
@media (max-width: 760px){.event-tabs{grid-template-columns:1fr 1fr 1fr;}.event-summary-card__body h2{font-size:1.55rem;}.participants-summary{grid-template-columns:1fr;}.participant-row,
.event-row--split{flex-direction:column;align-items:flex-start;}}

.dashboard-section--teams{padding-top:8px;}

.app-stack{display:grid;}
.app-event-card{
  display:grid;
  align-items:stretch;
  padding:0;
}
.app-event-card--match .app-event-card__bar{background:#ff4a4a;}
.app-event-card--tournament .app-event-card__bar{background:#7b61ff;}
.app-event-card__top{
  align-items:center;
  gap:var(--ui-space-lg);
}
.app-event-card__meta{
  margin:0;
}
.app-event-card__action{
  display:flex;
}
@media (max-width: 900px){
  .app-event-card{
    grid-template-columns:8px minmax(0,1fr);
  }
  .app-event-card__action{
    padding:0 18px 18px 18px;
    grid-column:2;
  }
  .app-event-card__top{
    flex-direction:column;
    align-items:flex-start;
  }
}

.app-card-link{
  display:block;
  color:inherit;
  text-decoration:none;
}

.app-event-card__open{
  font-weight: var(--ui-weight-extrabold);
}

.admin-hero .team-hero__main{align-items:stretch;}

.admin-panel--wide{grid-column:auto / span 1;}

.admin-form{display:grid;gap:12px;}
.admin-form label{font-weight: var(--ui-weight-extrabold);color:var(--ui-white);font-size:.95rem;}
.admin-form input,
.admin-form select,
.admin-form textarea{
  border:1px solid rgba(255,255,255,.12);
  background:rgba(255,255,255,.06);
  color:var(--ui-white);
  border-radius:var(--ui-radius-lg);
  padding:11px 12px;
}
.admin-form textarea{resize:vertical;min-height:110px;}
.admin-form input:focus,
.admin-form select:focus,
.admin-form textarea:focus{border-color:rgba(255,255,255,.34);}
.admin-form option{color:#111;background:var(--ui-white);}
.admin-form-row{grid-template-columns:1fr 1fr;gap:12px;}
.admin-actions{gap:10px;flex-wrap:wrap;margin-top:14px;}
.admin-actions form{margin:0;}

.check-label{white-space:nowrap;}
.check-label input{accent-color:#d8a31a;}

.btn--primary{
  border:1px solid rgba(216,163,26,.55);
  background:linear-gradient(135deg,#d8a31a,#f1c85b);
  color:#111;
  font-weight: var(--ui-weight-black);
}
.btn--small{padding:8px 11px;border-radius:13px;font-size:var(--ui-font-body-sm);}
@media (max-width: 980px){
  .admin-panel--wide{grid-column:auto;}
  .admin-form-row{grid-template-columns:1fr;}

}
@media (max-width: 680px){
  .app-header__nav{gap:8px;flex-wrap:wrap;justify-content:flex-end;}

}

.form-errors{margin:var(--ui-margin-bottom-2xl);padding:14px 16px;border-radius:var(--ui-radius-xl);border:1px solid rgba(255,120,120,.35);background:rgba(130,35,35,.28);color:#ffd9d9;}
.form-errors strong{display:block;margin-bottom:8px;}
.form-errors ul{margin:0;padding-left:20px;}
.form-errors li+li{margin-top:4px;}
.form-help{display:block;margin-top:-2px;color:var(--muted);font-size:var(--ui-font-control);line-height:var(--ui-line-body);}

.flash--info{background:rgba(30,70,130,.28);color:#dceaff;}
.pill--warning{border-color:rgba(241,200,91,.45);background:rgba(216,163,26,.18);color:#ffe8a3;}
.status-badge{
  gap:var(--ui-space-sm);
  padding:6px 9px;
  white-space:nowrap;
  border:1px solid rgba(255,255,255,.12);
}
.status-badge--active{background:rgba(30,100,54,.25);}

.admin-panel--pending{border-color:rgba(241,200,91,.18);}
.admin-pending-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px;}
.admin-pending-card{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:var(--ui-space-xl);
  padding:var(--ui-space-xl);
  border:1px solid rgba(241,200,91,.16);
  background:rgba(216,163,26,.07);
  border-radius:18px;
}
.admin-pending-card strong{display:block;color:var(--ui-white);margin-bottom:4px;}
.admin-pending-card p{margin:var(--ui-margin-bottom-md);}
.admin-note{margin-top:12px;}
@media (max-width: 720px){
  .admin-pending-card{flex-direction:column;}
}

body:not(.auth-page):not(.intro-page){
  color:var(--app-text);
  background:#eeeeee;
  padding-bottom:88px;
}
body:not(.auth-page):not(.intro-page) .muted{color:var(--app-muted);}
body:not(.auth-page):not(.intro-page) .app-shell{
  width:min(980px, calc(100% - 28px));
}

body:not(.auth-page):not(.intro-page) .app-header{
  background:var(--app-blue);
  border-bottom:0;
  box-shadow:var(--ui-shadow-dark);
  backdrop-filter:none;
}
body:not(.auth-page):not(.intro-page) .app-header__inner{
  min-height:64px;
}
body:not(.auth-page):not(.intro-page) .app-brand{
  color:var(--ui-white);
  text-transform:none;
  letter-spacing:0;
  font-size:1.05rem;
}
body:not(.auth-page):not(.intro-page) .app-brand img{
  width:38px;
  height:38px;
}
body:not(.auth-page):not(.intro-page) .app-header__nav a{
  color:var(--ui-white);
}
body:not(.auth-page):not(.intro-page) .app-user-pill,
body:not(.auth-page):not(.intro-page) .pill{
  background:#f2f3f5;
  color:#4f5357;
  border:0;
  border-radius:7px;
  padding:var(--ui-inset-5-9);
  font-weight: var(--ui-weight-extrabold);
}

body:not(.auth-page):not(.intro-page) .notice-card,
body:not(.auth-page):not(.intro-page) .event-summary-card,
body:not(.auth-page):not(.intro-page) .app-card,
body:not(.auth-page):not(.intro-page) .app-surface{
  background:var(--ui-white);
  color:var(--app-text);
  border:1px solid var(--app-line);
  box-shadow:none;
}
body:not(.auth-page):not(.intro-page) .empty-card p,
body:not(.auth-page):not(.intro-page) .team-card p,
body:not(.auth-page):not(.intro-page) .list-card .muted{
  color:var(--app-muted);
}

.dashboard-page main{
  padding:0 0 18px;
}
.dashboard-section{
  padding:26px 0 22px;
}
.section-head h2{
  color:var(--app-text);
}
.section-head p{
  margin-top:6px;
  font-size:1.02rem;
}
.dashboard-section .section-head > .pill{
  color:var(--app-blue);
  background:#f0f0f0;
  border-radius:var(--ui-radius-pill);
  font-size:var(--ui-font-body);
}
.team-grid{
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
}
.team-card h3{
  color:var(--app-text);
}

.app-event-list{
  gap:var(--ui-space-control);
}
.app-event-card{
  transition:background .18s ease,border-color .18s ease,transform .18s ease;
  grid-template-columns:11px minmax(0,1fr) 58px;
  gap:var(--ui-space-xl);
  background:var(--ui-white);
  border:1px solid #e7e7e7;
  box-shadow:none;
  min-height:104px;
  overflow:hidden;
}
.app-event-card__bar{
  width:11px;
  margin:14px 0 14px 0;
  border-radius:0 12px 12px 0;
  background:var(--app-yellow);
}
.app-event-card--match .app-event-card__bar,
.app-event-card--tournament .app-event-card__bar{background:#34383c;}
.app-event-card__body{
  padding:16px 0 14px 0;
}
.app-event-card__top{
  margin-bottom:0;
}
.app-event-card__top .pill{
  display:none;
}
.app-event-card__team{
  color:var(--app-muted);
  font-size:.98rem;
  font-weight: var(--ui-weight-medium);
}
.app-event-card h3{
  color:var(--app-text);
  margin:0 0 7px;
  font-size:1.55rem;
  line-height:1.12;
  font-weight: var(--ui-weight-extrabold);
}
.app-event-card__datetime{
  color:var(--app-muted);
  font-weight: var(--ui-weight-medium);
  margin:0;
}
.app-event-card__meta{
  color:var(--app-muted);
  margin-top:3px;
}
.app-event-card__action{
  align-items:center;
  justify-content:center;
  padding:0 14px 0 0;
  border-left:1px solid #e5e5e5;
  margin:14px 0;
}
.app-event-card__open{
  min-width:0;
  width:var(--ui-size-control);
  height:var(--ui-size-control);
  padding:0;
  color:transparent;
  background:#878b90;
  border:0;
  position:relative;
}
.app-event-card__open::after{
  content:"›";
  color:var(--ui-white);
  position:absolute;
  inset:0;
  display:grid;
  place-items:center;
  font-size:2rem;
  line-height:var(--ui-line-tight);
  font-weight: 400;
}
.app-event-card-link:hover .app-event-card,
.app-event-card-link:focus-visible .app-event-card{
  background:var(--ui-white);
  border-color:#dadada;
  transform:none;
}

.event-page{
  padding:0 0 28px;
}
.event-topbar{
  width:calc(100% + 28px);
  margin-left:-14px;
  padding:8px 14px;
  min-height:64px;
  background:var(--app-blue);
  color:var(--ui-white);
  box-shadow:var(--ui-shadow-dark);
  position:sticky;
  top:0;
  z-index:30;
}
.event-back{
  background:transparent;
  border:0;
  color:var(--ui-white);
  font-size:2rem;
  width:var(--ui-size-touch);
  height:var(--ui-size-touch);
}

.event-summary-card{
  margin:0 -14px 0;
  border-left:0!important;
  border-right:0!important;
  border-top:0!important;
  border-radius:0!important;
  display:grid;
  grid-template-columns:10px minmax(0,1fr);
  padding:22px 18px 24px 0;
  gap:var(--ui-space-2xl);
}
.event-summary-card__accent{
  width:10px;
  min-height:74px;
  border-radius:0 12px 12px 0;
}
.event-summary-card__accent--training{background:var(--app-yellow);}
.event-summary-card__accent--match{background:#34383c;}
.event-summary-card__accent--cancelled{background:#8b8b8b;}
.event-summary-card__body h2{
  color:var(--app-text);
  margin:0 0 6px;
  font-size:1.65rem;
  line-height:var(--ui-line-snug);
}
.event-summary-card__body p{
  color:var(--app-muted);
  font-size:var(--ui-font-body);
  line-height:var(--ui-line-body);
}
.event-summary-badges{
  margin-top:13px;
}
.event-summary-badges .pill{
  background:#f0f1f2;
  color:#4f5357;
  border-radius:7px;
}

.event-tabs{
  margin:0 -14px 18px;
  display:flex;
  gap:0;
  background:var(--ui-white);
  border-bottom:1px solid var(--app-line);
  padding:0 14px;
}
.event-tab{
  flex:0 0 auto;
  min-width:33.333%;
  padding:17px 6px 14px;
  background:var(--ui-white);
  border:0;
  border-radius:0;
  color:#777b80;
  font-size:.96rem;
  letter-spacing:.08em;
  position:relative;
}
.event-tab.is-active{
  color:var(--app-blue);
  background:var(--ui-white);
}
.event-tab.is-active::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  height:3px;
  background:var(--app-blue);
}
.event-tab span{
  background:#333;
  margin-left:4px;
}

.event-panel{
  margin-bottom:12px;
  overflow:hidden;
}
.event-panel h3{
  margin:0;
  color:var(--app-muted);
}
.event-row--split{
  padding:17px 18px;
  align-items:center;
}
.event-row--split strong{
  font-size:1.2rem;
  font-weight: var(--ui-weight-medium);
}

.attendance-form{
  margin:0;
}
.attendance-btn{
  padding:16px 8px;

  border-right:1px solid var(--app-line);
}
.attendance-form:last-child .attendance-btn{
  border-right:0;
}
.attendance-btn.is-active{
  background:#f0f0f0;
  color:var(--app-blue);
}

.event-info-table{
  background:var(--ui-white);
}
.event-info-row{
  grid-template-columns:120px minmax(0,1fr);
  padding:15px 18px;
  border-top:1px solid var(--app-line);
}
.event-info-row:first-child{
  border-top:0;
  padding-top:15px;
}
.event-info-row strong{
  color:var(--app-text);
}

.participants-summary{
  display:flex;
  gap:0;
  overflow-x:auto;
  margin:0;
  border-bottom:1px solid var(--app-line);
}
.attendance-summary{
  min-width:95px;
  padding:12px 10px;
  text-align:center;
  background:var(--ui-white)!important;
  border:0!important;
  border-radius:0!important;
  color:var(--app-muted)!important;
}
.attendance-summary strong{
  display:block;
  color:var(--app-text);
  font-size:var(--ui-font-heading-sm);
}
.attendance-summary span{
  font-size:var(--ui-font-control);
}
.participants-list{
  gap:0;
}
.app-list-row{
  display:grid;
  align-items:center;
}

.participant-row{
  background:var(--ui-white);
  border:0;
  border-bottom:1px solid var(--app-line);
  border-radius:0;
  padding:15px 18px;
}
.participant-row strong{
  color:var(--app-text);
  font-size:1.08rem;
  font-weight: var(--ui-weight-medium);
}
.attendance-state{
  place-items:center;

}
.attendance-state::after{
  color:var(--ui-white);
  font-size:var(--ui-font-body);
  line-height:var(--ui-line-tight);
}
.attendance-state--yes::after{content:"✓";}
.attendance-state--no::after{content:"×";}
.attendance-state--unknown::after{content:"?";}

.team-hero{
  background:var(--ui-white);
  color:var(--app-text);
  border-bottom:1px solid var(--app-line);
}
.team-hero__main{
  padding-top:22px;
  padding-bottom:20px;
}
.team-hero h1{
  color:var(--app-text);
}
.stat-card{
  background:#f2f3f5;
  border:0;
  color:var(--app-text);
  box-shadow:none;
}
.app-tabs{
  overflow-x:auto;
}

.team-tabs-shell{
  border-bottom:1px solid var(--app-line);

}
.team-tab{
  background:var(--ui-white);
  color:#777b80;
  border:0;

  letter-spacing:.06em;
}
.team-tab.is-active{
  color:var(--app-blue);
}
.team-tab.is-active::after{
  content:"";
  position:absolute;
  left:12px;
  right:12px;
  bottom:0;
  height:3px;
  background:var(--app-blue);
}
.team-dashboard-grid{
  padding-top:14px;
}
.list-card{
  border-left:0!important;
  border-right:0!important;
  border-top:0!important;
}
.list-card__top strong{
  color:var(--app-text);
}
.score-pill{
  background:#f0f1f2;
  color:#333;
  border:0;
}

.mobile-bottom-nav{
  position:fixed;
  left:0;
  right:0;
  bottom:0;
  height:72px;
  z-index:80;
  display:none;
  grid-template-columns:repeat(5,1fr);
  background:var(--ui-white);
  border-top:1px solid #d8d8d8;
  box-shadow:0 -2px 10px rgba(0,0,0,.08);
  padding-bottom:env(safe-area-inset-bottom);
}
.mobile-bottom-nav__item{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:3px;
  color:#777b80;
  font-size:var(--ui-font-compact);
  font-weight: var(--ui-weight-medium);
  line-height:var(--ui-line-tight);
}
.mobile-bottom-nav__icon{
  font-size:1.55rem;
  line-height:var(--ui-line-tight);
}
.mobile-bottom-nav__item.is-active{
  color:var(--app-blue);
}

body:not(.auth-page):not(.intro-page) .btn--primary{
  background:var(--app-blue);
  border-color:var(--app-blue);
  color:var(--ui-white);
}
body:not(.auth-page):not(.intro-page) .btn--ghost{
  background:#f2f3f5;
  border-color:#e3e3e3;
  color:var(--app-blue);
}

@media (max-width: 760px){
  body:not(.auth-page):not(.intro-page){
    padding-bottom:82px;
  }
  .mobile-bottom-nav{
    display:grid;
  }
  body:not(.auth-page):not(.intro-page) .app-header{
    display:none;
  }
  body:not(.auth-page):not(.intro-page) .app-shell{
    width:calc(100% - 28px);
  }
  .section-head{
    align-items:flex-start;
  }
  .section-head p{
    font-size:.98rem;
  }
  .app-event-card{
    grid-template-columns:10px minmax(0,1fr) 50px;
    gap:var(--ui-space-lg);
  }
  .app-event-card__body{
    padding:15px 0 13px;
  }
  .app-event-card h3{
    font-size:var(--ui-font-heading-sm);
  }
  .app-event-card__action{
    grid-column:auto;
    padding:0 12px 0 0;
  }

  .event-info-row{
    grid-template-columns:105px minmax(0,1fr);
  }

  .participants-summary{
    margin:0;
  }
}

@media (max-width: 760px){
  .event-topbar{
    width:calc(100% + 28px);
    margin-left:-14px;
  }
  .event-summary-card,
.event-tabs{
    margin-left:-14px;
    margin-right:-14px;
  }
}
.event-panel > p,
.event-panel > .muted{
  padding:0 18px 16px;
}

.participant-main{
  display:grid;
  gap:3px;
}
.participant-main small{
  color:var(--app-muted);
  font-size:var(--ui-font-label);
}
.attendance-summary--sick strong{
  color:var(--ui-accent);
}
.attendance-state--sick::after{
  content:"+";
  color:var(--ui-white);
  font-size:1.15rem;
  font-weight: var(--ui-weight-black);
}

.event-panel p{
  line-height:var(--ui-line-relaxed);
}
.event-panel h3 + p{
  margin-top:0;
}

@media (max-width: 680px){
  .event-attendance-actions{
    grid-template-columns:1fr;
  }
  .attendance-btn{
    border-right:0;
  }
}

@media (min-width: 761px){
  body:not(.auth-page):not(.intro-page){
    padding-bottom:0;
  }

  body:not(.auth-page):not(.intro-page) main{
    width:100%;
    max-width:none;
    margin:0;
    padding-top:18px;
  }

  body:not(.auth-page):not(.intro-page) .app-shell{
    width:min(1380px, calc(100% - 48px));
    margin-left:auto;
    margin-right:auto;
  }

  .team-hero,
.team-tabs-shell,
.event-topbar,
.event-summary-card,
.event-tabs{
    width:min(1380px, calc(100% - 48px))!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }

  .team-tabs-shell{
    max-width:1380px!important;
    padding-left:0;
    padding-right:0;
  }

  .event-topbar{
    border-radius:0;
  }

  .event-summary-card{
    border-left:1px solid var(--app-line)!important;
    border-right:1px solid var(--app-line)!important;

    border-radius:4px!important;
    border:1px solid var(--app-line)!important;
    margin-top:0!important;

}

  .event-tabs{
    border:1px solid var(--app-line);
    border-top:0;
  }

  .team-hero{
    border:1px solid var(--app-line);
  }

  .team-hero__main{
    padding-left:24px;
    padding-right:24px;
  }

  .team-dashboard-grid{
    width:min(1380px, calc(100% - 48px));
    margin-left:auto;
    margin-right:auto;
  }
}

.team-panel > h2{
  margin:var(--ui-margin-bottom-2xl);
}

.team-tabs a[href*="tab=attendance"]{
  display:none!important;
}

.attendance-btn:disabled{
  opacity:.55;
  cursor:not-allowed;
}
.confirm-info{
  margin:0 18px 12px;
  padding:12px 14px;
  border-radius:var(--ui-radius-xs);
  background:#f0f0f0;
  color:var(--app-blue);
  font-weight: var(--ui-weight-bold);
}
.confirm-info--muted{
  background:#f2f3f5;
  color:var(--app-muted);
}
.participant-row{
  grid-template-columns:minmax(0,1fr) auto auto;
  gap:var(--ui-space-lg);
}
.actual-state{
  min-width:54px;
  height:26px;
}
.actual-state--yes{
  background:#e5f7ed;
  color:var(--app-green);
}
.actual-state--no{
  background:#ffecef;
  color:var(--app-red);
}
.actual-attendance-form{
  gap:var(--ui-space-sm);
  margin:0;
}
.actual-attendance-form button{
  border:1px solid #d8d8d8;
  background:var(--ui-white);
  color:var(--app-muted);
  border-radius:var(--ui-radius-pill);
  padding:7px 10px;
  font:inherit;
  font-size:var(--ui-font-label);
  font-weight: var(--ui-weight-black);
  cursor:pointer;
}
.actual-attendance-form button[value="yes"].is-active{
  background:var(--app-green);
  border-color:var(--app-green);
  color:var(--ui-white);
}
.actual-attendance-form button[value="no"].is-active{
  background:var(--app-red);
  border-color:var(--app-red);
  color:var(--ui-white);
}
@media (max-width: 760px){
  .participant-row{
    grid-template-columns:minmax(0,1fr) auto;
  }
  .actual-attendance-form{
    grid-column:1 / -1;
    justify-content:flex-end;
  }

}

.participants-list--players .participant-row--expected{
  background:#fbfdff;
}
.participant-row--absent{
  background:#fff4f5;
}
.participant-row--coach{
  background:#fcfcfc;
}
.actual-state--pending{
  background:var(--ui-surface-soft);
  color:var(--ui-muted-warm);
}
.actual-absent-button{
  border:1px solid rgba(200,63,75,.28);
  background:#fff4f5;
  color:var(--app-red);
  border-radius:var(--ui-radius-pill);
  padding:var(--ui-inset-8-12);
  font:inherit;
  font-weight: var(--ui-weight-black);
  cursor:pointer;
}
.attendance-close-form{
  margin:16px 18px 18px;
  padding:16px;
  border:1px solid #dbe7f2;
  background:#f6fbff;
  border-radius:var(--ui-radius-sm);
}
.attendance-close-form p{
  margin:10px 0 0;
  color:var(--app-muted);
  line-height:var(--ui-line-relaxed);
}
.attendance-close-form strong{
  color:var(--app-text);
}
.participants-list--coaches .actual-attendance-form{
  justify-content:flex-end;
}
@media (max-width: 760px){
  .attendance-close-form{
    margin:14px 12px 16px;
  }
  .participant-row--coach{
    grid-template-columns:minmax(0,1fr) auto;
  }
}

.admin-event-list{
gap:var(--ui-space-control);
}

.dashboard-section--wall{
  padding-bottom:18px;
}
.wall-unread-pill{
  min-width:38px;
  text-align:center;
}
.wall-message-list{
gap:var(--ui-space-control);
}
.wall-message-card{
  gap:var(--ui-space-xl);
  padding:14px 16px;
  background:var(--ui-white);
  border:1px solid var(--app-line);
  border-radius:6px;
}
.wall-message-card__icon{
  width:var(--ui-size-lg);
  height:var(--ui-size-lg);
  border-radius:var(--ui-radius-sm);
  display:grid;
  place-items:center;
  background:#dcecff;
  color:var(--app-blue);
  font-weight: var(--ui-weight-black);
  font-size:1.15rem;
}
.wall-message-card__main strong{
  display:block;
  color:var(--app-text);
  font-size:1.2rem;
}
.wall-message-card__main p{
  margin:4px 0 0;
  color:var(--app-muted);
}
.wall-message-card__body{
  line-height:var(--ui-line-body);
}

.admin-form .js-message-team:disabled{
  opacity:.45;
}
@media (max-width: 760px){
  .wall-message-card{
    padding:13px 14px;
  }
  .wall-message-card__main strong{
    font-size:1.08rem;
  }
  .wall-message-card__body{
    display:none;
  }
}

.app-status-card{
  display:flex;
  align-items:center;
  justify-content:space-between;
}

.app-status-pill{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:92px;
  padding:var(--ui-inset-9-14);
  border-radius:var(--ui-radius-pill);
  background:var(--ui-surface-soft);
  color:var(--ui-muted-warm);
  font-weight:var(--ui-weight-black);
}

.attendance-status-card{
  gap:16px;
  margin:0;
  padding:18px 22px;
  background:var(--ui-white);
  border-bottom:1px solid var(--app-line);
}
.attendance-status-card strong{
  display:block;
  color:var(--app-text);
}
.attendance-status-card small{
  display:block;
  margin-top:4px;
  color:var(--app-muted);
}
.attendance-status-card > span{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:92px;
  padding:var(--ui-inset-9-14);
  border-radius:var(--ui-radius-pill);
  background:var(--ui-surface-soft);
  color:var(--ui-muted-warm);
  font-weight: var(--ui-weight-black);
}

.attendance-window-info{
  margin:14px 18px 16px!important;
  padding:14px 16px!important;
  border-radius:var(--ui-radius-sm)!important;
  background:#f6fbff!important;
  border:1px solid #dbeaf7!important;
  color:var(--app-blue)!important;
  font-weight: var(--ui-weight-extrabold)!important;
  line-height:var(--ui-line-relaxed)!important;
}
.attendance-window-info::before{
  content:"i";
  display:inline-grid;
  place-items:center;
  width:22px;
  height:22px;

  border-radius:var(--ui-radius-round);
  background:var(--app-blue);
  color:var(--ui-white);
  font-size:var(--ui-font-label);
  font-weight: var(--ui-weight-black);
  vertical-align:middle;
}
.participant-responder{
  font-style:normal;
  color:var(--app-muted);
}

@media (max-width: 760px){
  .attendance-status-card{
    padding:16px 14px;
  }
  .attendance-status-card > span{
    min-width:auto;
    padding:8px 11px;
  }
  .attendance-window-info{
    font-size:.95rem;

    margin:12px 12px 14px!important;

}
}

.admin-events-page{
  margin-top:18px;
}
.admin-events-head{
  display:flex;
  justify-content:space-between;
  gap:var(--ui-space-2xl);
  align-items:flex-start;
  padding:24px 28px;
  background:var(--ui-white);
  border:1px solid var(--app-line);
  border-radius:var(--ui-radius-lg);
  margin-bottom:14px;
}

.admin-events-head h1{
  margin:0;
  font-size:2rem;
  line-height:var(--ui-line-snug);
  letter-spacing:-.025em;
  color:var(--app-text);
}
.admin-events-head p{
  margin:8px 0 0;
  color:var(--app-muted);
  font-size:1.02rem;
}
.admin-events-count{
  display:inline-grid;
  place-items:center;
  min-width:var(--ui-size-xl);
  height:var(--ui-size-xl);
  padding:0 14px;
  border-radius:var(--ui-radius-lg);
  background:#f0f4f8;
  color:var(--app-blue);
  font-weight: var(--ui-weight-black);
  font-size:1.2rem;
}
.app-admin-list{
  display:grid;
  gap:var(--ui-space-lg);
}

.admin-event-card{
  grid-template-columns:190px minmax(0,1fr) 150px auto;
  gap:var(--ui-space-2xl);
  padding:18px 20px;
  background:var(--ui-white);
  border:1px solid var(--app-line);
  border-radius:var(--ui-radius-lg);
  box-shadow:var(--ui-shadow-line-soft);
}
.admin-event-card.is-open{
  border-color:#efd38b;
  background:#fffdf8;
}
.admin-event-card__date{
  display:grid;
  gap:var(--ui-space-compact);
}
.admin-event-card__date span{
  color:var(--app-text);
  font-weight: var(--ui-weight-black);
  line-height:var(--ui-line-body);
}
.admin-event-card__date em{
  justify-self:start;
  font-style:normal;
  padding:var(--ui-inset-5-9);
  border-radius:var(--ui-radius-pill);
  background:var(--ui-surface-soft);
  color:var(--ui-muted-warm);
  font-size:var(--ui-font-control);
  font-weight: var(--ui-weight-black);
}
.admin-event-card__titleline{
  display:flex;
  align-items:center;
  gap:var(--ui-space-control);
  flex-wrap:wrap;
}
.admin-event-card__main h3{
  margin:0;
  font-size:1.2rem;
  line-height:var(--ui-line-control);
  color:var(--app-text);
}
.admin-event-card__main p{
  margin:var(--ui-margin-top-xs);
  color:var(--app-muted);
  line-height:var(--ui-line-body);
}
.admin-event-card__attendance{
  display:grid;
  gap:3px;
  align-items:center;
}
.admin-event-card__attendance strong{
  color:var(--app-text);
  font-size:1.25rem;
  line-height:var(--ui-line-tight);
}
.admin-event-card__attendance span{
  color:var(--app-muted);
  font-size:var(--ui-font-label);
  font-weight: var(--ui-weight-bold);
}
.admin-event-card__attendance em{
  color:var(--app-blue);
  font-style:normal;
  font-weight: var(--ui-weight-black);
  font-size:.92rem;
}
.attendance-progress{
  height:8px;
  background:#e9edf2;
  border-radius:var(--ui-radius-pill);
  overflow:hidden;
  margin-top:4px;
}
.attendance-progress i{
  display:block;
  height:100%;
  background:var(--app-blue);
  border-radius:var(--ui-radius-pill);
}
.admin-event-card__actions{
  display:flex;
  gap:var(--ui-space-md);
  justify-content:flex-end;
  flex-wrap:wrap;
}
.admin-events-admininfo{
  margin-top:18px;
  margin-bottom:32px;
}
.app-admin-card{
  background:var(--ui-white);
  border:1px solid var(--app-line);
  border-radius:var(--ui-radius-lg);
}

.admin-info-card{
  display:flex;
  justify-content:space-between;
  gap:20px;
  align-items:center;
  padding:22px 26px;
}
.admin-info-card h2{
  margin:0;
  color:var(--app-text);
  font-size:1.4rem;
}
.admin-info-card p{
  margin:7px 0 0;
  color:var(--app-muted);
}
.admin-info-card__stats{
  display:flex;
  flex-wrap:wrap;
  gap:var(--ui-space-control);
  justify-content:flex-end;
}
.admin-info-card__stats span{
  display:grid;
  place-items:center;
  min-width:94px;
  min-height:72px;
  padding:var(--ui-space-lg);
  border-radius:var(--ui-radius-lg);
  background:#f3f5f7;
}
.admin-info-card__stats strong{
  color:var(--app-text);
  font-size:var(--ui-font-heading-sm);
  line-height:var(--ui-line-tight);
}
.admin-info-card__stats em{
  margin-top:5px;
  color:var(--app-muted);
  font-style:normal;
  font-size:.84rem;
  font-weight: var(--ui-weight-bold);
}
@media (max-width: 1050px){
  .admin-event-card{
    grid-template-columns:170px minmax(0,1fr);
  }
  .admin-event-card__attendance,
.admin-event-card__actions{
    grid-column:auto;
  }
}
@media (max-width: 760px){
  .admin-events-head,
.admin-info-card{
    flex-direction:column;
    align-items:stretch;
    padding:18px 16px;
  }
  .admin-events-head h1{
    font-size:1.55rem;
  }
  .admin-event-card{
    grid-template-columns:1fr;
    gap:var(--ui-space-lg);
    padding:16px;
  }
  .admin-event-card__actions,
.admin-info-card__stats{
    justify-content:flex-start;
  }
  .admin-info-card__stats span{
    min-width:calc(50% - 5px);
  }
}

.admin-modern-page{
  margin-top:18px;
}

.admin-modern-panel{
  padding:22px;
}
.admin-modern-panel h2{
  margin:0 0 16px;
  color:var(--app-text);
  font-size:var(--ui-font-heading-sm);
  letter-spacing:-.015em;
}
.admin-modern-panel .section-head{
  margin-bottom:16px;
}
.admin-form--modern{
  display:grid;
  gap:11px;
}
.admin-form--modern label{
  color:var(--app-text);
  font-weight: var(--ui-weight-black);
  font-size:.92rem;
}
.admin-form--modern input,
.admin-form--modern select,
.admin-form--modern textarea{
  width:100%;
  border:1px solid var(--ui-border);
  border-radius:var(--ui-radius-sm);
  background:var(--ui-white);
  color:var(--app-text);
  padding:11px 12px;
  font:inherit;
  outline:none;
}
.admin-form--modern input:focus,
.admin-form--modern select:focus,
.admin-form--modern textarea:focus{
  border-color:var(--app-blue);
  box-shadow:0 0 0 3px rgba(7,89,154,.11);
}
.admin-check{
  display:flex!important;
  align-items:flex-start;
  gap:var(--ui-space-control);
  padding:var(--ui-space-lg);
  border:1px solid #dbe7f2;
  border-radius:var(--ui-radius-sm);
  background:#f6fbff;
}
.admin-check input{
  width:auto!important;
  margin-top:3px;
}
.admin-check span{
  color:var(--app-blue);
  line-height:var(--ui-line-body);
}
.admin-mini-card{
  display:grid;
  grid-template-columns:170px minmax(0,1fr) auto auto;
  gap:16px;
  align-items:center;
  padding:16px 18px;
}
.admin-mini-card.is-cancelled{
  background:#fff7f8;
  border-color:#f1ccd1;
}
.app-date-block{
  display:grid;
  gap:var(--ui-space-xs);
}
.admin-mini-card__date strong{
  color:var(--app-text);
  font-size:var(--ui-font-body);
  line-height:var(--ui-line-body);
}
.admin-mini-card__date span{
  color:var(--app-muted);
  font-weight: var(--ui-weight-bold);
}
.app-card-title{
  margin:0;
  color:var(--app-text);
  font-size:1.15rem;
  line-height:var(--ui-line-control);
}

.app-card-copy{
  margin:var(--ui-margin-top-xs);
  color:var(--app-muted);
}

.app-card-actions{
  display:flex;
  gap:var(--ui-space-md);
  flex-wrap:wrap;
  justify-content:flex-end;
}
.admin-message-card{
  display:grid;
  grid-template-columns:46px minmax(0,1fr) auto;
  gap:var(--ui-space-xl);
  align-items:start;
  padding:16px 18px;
}
.admin-message-card.is-hidden{
  background:#fafafa;
  opacity:.78;
}
.admin-message-card__icon{
  width:var(--ui-size-lg);
  height:var(--ui-size-lg);
  border-radius:var(--ui-radius-md);
  display:grid;
  place-items:center;
  background:#f0f0f0;
  color:var(--app-blue);
  font-weight: var(--ui-weight-black);
}
.app-flex-center{
  display:flex;
  align-items:center;
}

.admin-message-card__titleline{
  gap:var(--ui-space-control);
  flex-wrap:wrap;
}
.admin-message-card__main p{
  margin:7px 0 0;
  color:var(--app-muted);
  line-height:var(--ui-line-relaxed);
}
.admin-message-card__plain-preview{
  display:none;
}

@media (max-width: 760px){
  .admin-modern-panel{
    padding:16px;
  }
  .admin-mini-card,
.admin-message-card{
    grid-template-columns:1fr;
    gap:var(--ui-space-lg);
    padding:15px;
  }
  .admin-mini-card__actions,
.admin-message-card__actions{
    justify-content:flex-start;
  }
}

.admin-events-head--with-action{
  align-items:center;
}
.admin-insert-toggle{
  flex:0 0 auto;
  min-width:150px;
}
.admin-insert-event-panel{
  margin-bottom:16px;
}
.admin-modern-panel--full{
  grid-column:1 / -1;
}
.admin-mini-card--event{
  grid-template-columns:190px minmax(0,1fr) auto auto;
}
.app-date-chip{
  justify-self:start;
  padding:var(--ui-inset-5-9);
  border-radius:var(--ui-radius-pill);
  background:var(--ui-surface-soft);
  color:var(--ui-muted-warm);
  font-size:var(--ui-font-control);
  font-weight:var(--ui-weight-black);
}

@media (min-width: 761px){
  .admin-mini-card--event{
    grid-template-columns:220px minmax(0,1fr) auto;
    grid-template-areas:
      "date main main"
      "date status actions";
    align-items:start;
    column-gap:var(--ui-space-2xl);
    row-gap:var(--ui-space-control);
  }
  .admin-mini-card--event .admin-mini-card__date{
    grid-area:date;
    align-self:center;
    padding-right:10px;
  }
  .admin-mini-card--event .admin-mini-card__main{
    grid-area:main;
    min-width:0;
  }
  .admin-mini-card--event .admin-mini-card__status{
    grid-area:status;
    align-self:center;
    justify-self:start;
  }
  .admin-mini-card--event .admin-mini-card__actions{
    grid-area:actions;
    align-self:center;
    justify-content:flex-start;
    justify-self:start;
  }
  .admin-mini-card--event .admin-mini-card__main h3{
    margin-bottom:6px;
  }
  .admin-mini-card--event .admin-mini-card__main p{
    line-height:var(--ui-line-relaxed);
  }
  .admin-mini-card--event .admin-mini-card__main .muted{
    display:block;
    margin-top:8px;
  }
}
@media (max-width: 760px){
  .admin-events-head--with-action{
    align-items:stretch;
  }
  .admin-insert-toggle{
    width:100%;
  }
  .admin-mini-card--event{
    grid-template-columns:1fr;
  }
}

.admin-insert-message-panel{
  margin-bottom:16px;
}
.admin-message-toolbar{
  display:flex;
  flex-wrap:wrap;
  gap:var(--ui-space-md);
  margin:var(--ui-margin-bottom-xl);
}
.admin-message-filter{
  border:1px solid var(--app-line);
  background:var(--ui-white);
  color:var(--app-muted);
  border-radius:var(--ui-radius-pill);
  padding:var(--ui-inset-8-12);
  font:inherit;
  font-size:.88rem;
  font-weight: var(--ui-weight-black);
  cursor:pointer;
}
.admin-message-filter strong{
  margin-left:5px;
  color:var(--app-text);
}
.admin-message-filter.is-active{
  background:var(--app-blue);
  border-color:var(--app-blue);
  color:var(--ui-white);
}
.admin-message-filter.is-active strong{
  color:var(--ui-white);
}
.admin-message-filter-empty{
  margin-bottom:12px;
}
.admin-message-card__body-preview{
  position:relative;
  max-height:170px;
  overflow:hidden;
  margin-top:12px;
  padding:var(--ui-space-lg);
  border:1px solid #edf0f3;
  border-radius:var(--ui-radius-md);
  background:#fbfcfd;
}
.admin-message-card__body-preview::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  height:var(--ui-size-lg);
  background:linear-gradient(180deg, rgba(251,252,253,0), #fbfcfd);
  pointer-events:none;
}
.admin-message-card__body-preview img{
  max-height:130px;
  width:auto;
  object-fit:contain;
}
.message-read-stats{
  display:grid;
  grid-template-columns:auto minmax(120px, 1fr) auto;
  gap:var(--ui-space-control);
  align-items:center;
  margin-top:12px;
  padding:var(--ui-inset-10-12);
  border-radius:var(--ui-radius-sm);
  background:#f6fbff;
  border:1px solid #dbeaf7;
}
.message-read-stats strong{
  display:block;
  color:var(--app-text);
  font-size:1.05rem;
  line-height:var(--ui-line-tight);
}
.message-read-stats span{
  color:var(--app-muted);
  font-size:var(--ui-font-control);
  font-weight: var(--ui-weight-extrabold);
}
.message-read-stats em{
  color:var(--app-blue);
  font-style:normal;
  font-weight: var(--ui-weight-black);
}
.admin-message-edit-form{
  margin-top:14px;
  padding:var(--ui-space-xl);
  border:1px solid var(--ui-border);
  border-radius:var(--ui-radius-md);
  background:var(--ui-white);
  display:grid;
  gap:var(--ui-space-control);
}
.admin-message-edit-form[hidden]{
  display:none!important;
}
.admin-message-edit-form label{
  color:var(--app-text);
  font-weight: var(--ui-weight-black);
  font-size:var(--ui-font-body-sm);
}
.admin-message-edit-form input,
.admin-message-edit-form select,
.admin-message-edit-form textarea{
  width:100%;
  border:1px solid var(--ui-border);
  border-radius:var(--ui-radius-sm);
  background:var(--ui-white);
  color:var(--app-text);
  padding:10px 11px;
  font:inherit;
}
@media (max-width: 760px){
  .admin-message-toolbar{
    gap:var(--ui-space-sm);
  }
  .admin-message-filter{
    padding:7px 10px;
    font-size:var(--ui-font-control);
  }
  .admin-message-card__body-preview{
    max-height:145px;
    padding:var(--ui-space-control);
  }
  .message-read-stats{
    grid-template-columns:1fr;
  }
}

.admin-page .flash,
.admin-page .notice-card{
  margin:16px auto 24px!important;
  width:min(1380px, calc(100% - 48px));
  border-radius:var(--ui-radius-lg)!important;
  box-shadow:0 8px 24px rgba(16,24,40,.08);
}
.admin-page .flash--success,
.admin-page .notice-card--success{
  background:#dff2e7!important;
  border:1px solid #b9dfc8!important;
}

.admin-page .team-tabs-shell{
  background:transparent!important;
  border:0!important;
  padding:0!important;
  margin-top:0!important;
}
.admin-page .team-tabs{
  display:flex;
  gap:var(--ui-space-control);
  padding:0;
  background:transparent;
  border:0;
}
.admin-page .team-tab{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:var(--ui-size-xl);
  padding:0 18px;
  border:1px solid #d9e0e7;
  border-radius:var(--ui-radius-md);
  background:var(--ui-white);
  color:#5e6873;
  font-weight: var(--ui-weight-black);
  letter-spacing:.045em;
  text-transform:uppercase;
  box-shadow:var(--ui-shadow-line);
  transition:var(--ui-transition-control);
}
.admin-page .team-tab:hover,
.admin-page .team-tab:focus-visible{
  background:#f0f0f0!important;
  color:var(--app-blue)!important;
  border-color:#f5f5f5!important;
  text-decoration:none;
  box-shadow:var(--ui-shadow-accent);
}
.admin-page .team-tab.is-active{
  background:var(--app-blue)!important;
  color:var(--ui-white)!important;
  border-color:var(--app-blue)!important;
}
.admin-page .team-tab.is-active::after{
  display:none!important;
}

.btn--danger-soft,
.admin-message-card__actions .btn--danger-soft,
.admin-mini-card__actions .btn--danger-soft{
  background:var(--ui-danger)!important;
  border-color:var(--ui-danger)!important;
  color:var(--ui-white)!important;
}
.btn--danger-soft:hover,
.btn--danger-soft:focus-visible,
.admin-message-card__actions .btn--danger-soft:hover,
.admin-message-card__actions .btn--danger-soft:focus-visible,
.admin-mini-card__actions .btn--danger-soft:hover,
.admin-mini-card__actions .btn--danger-soft:focus-visible{
  background:#b82d39!important;
  border-color:#b82d39!important;
  color:var(--ui-white)!important;
  text-decoration:none;
}

.status-badge--active,
.admin-message-card .status-badge--active,
.admin-event-card .status-badge--active,
.admin-mini-card .status-badge--active{
  background:#19a35b!important;
  border-color:#19a35b!important;
  color:var(--ui-white)!important;
}
.status-badge--pending{
  background:#fff4d8!important;
  border-color:#efd38b!important;
  color:#805b00!important;
}
.status-badge--danger,
.pill--danger{
  background:var(--ui-danger)!important;
  border-color:var(--ui-danger)!important;
  color:var(--ui-white)!important;
}

.btn--ghost:hover,
.btn--ghost:focus-visible{
  color:var(--app-blue)!important;
  background:#f0f0f0!important;
  border-color:#f5f5f5!important;
  text-decoration:none;
}

.admin-message-card__actions{
  align-items:flex-start;
}
.admin-message-card__actions .btn,
.admin-message-card__actions button{
  font-weight: var(--ui-weight-black);
}
.admin-message-card__titleline .status-badge{
  font-weight: var(--ui-weight-black);
  padding:var(--ui-inset-6-10);
  border-radius:var(--ui-radius-pill);
}

@media (max-width: 760px){
  .admin-page .team-tabs{
    gap:var(--ui-space-md);
    overflow-x:auto;
    padding-bottom:4px;
  }
  .admin-page .team-tab{
    flex:0 0 auto;
    min-height:var(--ui-size-lg);
    padding:0 14px;
    font-size:var(--ui-font-label);
  }
  .admin-page .flash,
.admin-page .notice-card{
    width:calc(100% - 28px);
    margin:12px auto 18px!important;
  }
}

.flash--success,
.notice-card--success,
.admin-page .flash--success,
.admin-page .notice-card--success{
  background:var(--ui-success)!important;
  border-color:var(--ui-success)!important;
  color:var(--ui-white)!important;
}

.flash--error,
.notice-card--error,
.admin-page .flash--error,
.admin-page .notice-card--error,
.flash--danger,
.notice-card--danger,
.admin-page .flash--danger,
.admin-page .notice-card--danger{
  background:var(--ui-danger)!important;
  border-color:var(--ui-danger)!important;
  color:var(--ui-white)!important;
}

.admin-page .flash:not(.flash--success),
.admin-page .notice-card:not(.notice-card--success){
  color:var(--ui-white);
}

.admin-page .flash--error *,
.admin-page .notice-card--error *,
.admin-page .flash--danger *,
.admin-page .notice-card--danger *,
.admin-page .flash--success *,
.admin-page .notice-card--success *{
  color:var(--ui-white)!important;
}

.wall-unread-pill{
  background:var(--ui-danger)!important;
  color:var(--ui-white)!important;
  border-color:var(--ui-danger)!important;
}

.wall-message-card-link:hover,
.wall-message-card-link:focus-visible{
  text-decoration:none;
}
.wall-message-card{
  grid-template-columns:46px minmax(0,1fr) auto;
}

.wall-message-card__arrow{
  color:#9aa3ad;
  font-size:2rem;
  line-height:var(--ui-line-tight);
  font-weight:300;
}
.wall-message-card-link:hover .wall-message-card{
  border-color:#d7e8f6;
  box-shadow:0 6px 18px rgba(16,24,40,.08);
}

.message-detail{
  padding-top:22px;
  padding-bottom:34px;
}
.message-detail__back{
  margin-bottom:14px;
}
.message-detail-card{
  background:var(--ui-white);
  border:1px solid var(--app-line);
  border-radius:var(--ui-radius-xl);
  padding:28px;
  box-shadow:var(--ui-shadow-line-soft);
}
.message-detail-card__meta{
  display:flex;
  gap:var(--ui-space-control);
  flex-wrap:wrap;
  margin-bottom:12px;
}
.message-detail-card__meta span{
  display:inline-flex;
  align-items:center;
  padding:var(--ui-inset-6-10);
  border-radius:var(--ui-radius-pill);
  background:var(--ui-surface-soft);
  color:var(--ui-muted-warm);
  font-weight: var(--ui-weight-black);
  font-size:var(--ui-font-body-sm);
}
.message-detail-card h1{
  margin:0;
  color:var(--app-text);
  font-size:2rem;
  line-height:var(--ui-line-compact);
  letter-spacing:-.025em;
}

.message-detail-card__statusline{
  display:flex;
  flex-wrap:wrap;
  gap:var(--ui-space-md);
  margin-top:14px;
}
.app-inline-center{
  display:inline-flex;
  align-items:center;
}

.message-detail-card__statusline span{
  min-height:var(--ui-size-xs);
  padding:var(--ui-inset-6-10);
  border-radius:var(--ui-radius-pill);
  background:#f6f7f9;
  color:var(--app-muted);
  font-size:.88rem;
  font-weight: var(--ui-weight-black);
}
.message-detail-card__body{
  margin-top:22px;
  padding-top:20px;
  border-top:1px solid var(--app-line);
  color:var(--app-text);
  font-size:1.08rem;
  line-height:var(--ui-line-loose);
}
@media (max-width: 760px){
  .message-detail-card{
    padding:20px 16px;
  }
  .message-detail-card h1{
    font-size:1.55rem;
  }
  .message-detail-card__statusline{
    gap:var(--ui-space-sm);
  }
  .message-detail-card__statusline span{
    width:100%;
    justify-content:center;
  }
  .wall-message-card{
    grid-template-columns:42px minmax(0,1fr) auto;
  }
}

.wall-message-card.is-unconfirmed{
  background:#fff4f5!important;
  border-color:#f3c2c8!important;
}
.wall-message-card.is-viewed-unconfirmed{
  background:#fff7e8!important;
  border-color:#f0d39a!important;
}
.wall-message-warning{
  margin:6px 0 0!important;
  color:#b23b00!important;
  font-weight: var(--ui-weight-black)!important;
}
.wall-history{
  margin-top:16px;
  background:var(--ui-white);
  border:1px solid var(--app-line);
  border-radius:var(--ui-radius-md);
  overflow:hidden;
}
.wall-history summary{
  cursor:pointer;
  padding:14px 16px;
  color:var(--app-blue);
  font-weight: var(--ui-weight-black);
  background:#f6fbff;
}
.wall-message-list--history{
  padding:var(--ui-space-lg);
}
.wall-message-card--history{
  background:var(--ui-white)!important;
  border-color:#e1e5ea!important;
}
.wall-message-card--history .wall-message-card__icon{
  background:#e5f7ed;
  color:var(--ui-success);
}
.message-confirm-box{
  margin-top:24px;
  padding:var(--ui-space-2xl);
  border-radius:var(--ui-radius-md);
  background:#fff7e8;
  border:1px solid #f0d39a;
}
.message-confirm-box strong{
  display:block;
  color:#7c4a00;
  font-size:1.1rem;
}
.message-confirm-box p{
  margin:8px 0 14px;
  color:#7c4a00;
  line-height:var(--ui-line-relaxed);
}
.message-confirm-box.is-confirmed{
  background:#e8f7ef;
  border-color:#b9dfc8;
}
.message-confirm-box.is-confirmed strong,
.message-confirm-box.is-confirmed p{
  color:#145c33;
}
@media (max-width: 760px){
  .message-confirm-box:not(.is-confirmed){
    position:sticky;
    bottom:76px;
    z-index:5;
    box-shadow:0 12px 32px rgba(16,24,40,.18);
  }
}

.admin-head-actions{
  gap:var(--ui-space-control);
  justify-content:flex-end;
  flex-wrap:wrap;
}
.admin-past-events-button{
  min-width:160px;
  justify-content:center;
  font-weight: var(--ui-weight-black);
}
@media (max-width: 760px){
  .admin-head-actions{
    justify-content:stretch;
  }

}

.team-back-shell{
  margin-top:18px;
  margin-bottom:12px;
}
.team-back-button{
  display:inline-flex;
  align-items:center;

}
.team-hero--separate{
  margin-top:0!important;
  margin-bottom:14px!important;
  border-radius:var(--ui-radius-xl);
  overflow:hidden;
  box-shadow:var(--ui-shadow-line);
}
.team-hero--separate .team-hero__main{
  padding:26px 28px;
}

.team-hero--separate h1{
  font-size:2rem;
  letter-spacing:-.025em;
}
.team-hero--separate .team-hero__stats{
  gap:var(--ui-space-control);
}
.team-hero--separate .stat-card{
  border-radius:var(--ui-radius-lg);
  min-width:112px;
}

.team-tabs-shell{
  border:0!important;

  margin-top:0!important;
}
.team-tabs-shell .team-tabs{
  display:flex;
  gap:var(--ui-space-control);
  padding:0;
  background:transparent;
  border:0;
}
.team-tabs-shell .team-tab{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:var(--ui-size-xl);
  padding:0 18px;
  border:1px solid #d9e0e7;
  border-radius:var(--ui-radius-md);
  background:var(--ui-white);
  color:#5e6873;
  font-weight: var(--ui-weight-black);
  letter-spacing:.045em;
  text-transform:uppercase;
  box-shadow:var(--ui-shadow-line);
  transition:var(--ui-transition-control);
}
.team-tabs-shell .team-tab:hover,
.team-tabs-shell .team-tab:focus-visible{
  background:#f0f0f0!important;
  color:var(--app-blue)!important;
  border-color:#f5f5f5!important;
  text-decoration:none;
  box-shadow:var(--ui-shadow-accent);
}
.team-tabs-shell .team-tab.is-active{
  background:var(--app-blue)!important;
  color:var(--ui-white)!important;
  border-color:var(--app-blue)!important;

}
.team-tabs-shell .team-tab.is-active::after{
  display:none!important;
}

.team-dashboard-grid{
  grid-template-columns:repeat(2, minmax(0, 1fr));

  align-items:start;
}
.team-panel .section-head h2{
  letter-spacing:-.02em;
}
.team-panel--matches,
.team-panel--trainings{
  grid-column:auto;
}
.team-panel--matches .section-head .pill,
.team-panel--trainings .section-head .pill{
  background:var(--app-blue);
  color:var(--ui-white);
}

.team-event-card{
  display:grid;
  grid-template-columns:170px minmax(0, 1fr) auto;
  gap:16px;
  align-items:center;
  border:1px solid var(--app-line);
  background:var(--ui-white);
  margin-bottom:12px;
}
.team-event-card:last-child{
  margin-bottom:0;
}
.team-event-card--match{
  border-left:6px solid var(--app-blue);
}
.team-event-card--training{
  border-left:6px solid var(--app-yellow);
}
.team-event-card.is-cancelled{
  border-left-color:var(--ui-danger);
  background:#fff7f8;
}
.team-event-card__date strong{
  color:var(--app-text);
  font-size:var(--ui-font-body);
  line-height:var(--ui-line-body);
}
.team-event-card__alert{
  display:inline-flex;
  margin-top:7px!important;
  padding:var(--ui-inset-5-9);
  border-radius:var(--ui-radius-pill);
  background:var(--ui-danger);
  color:var(--ui-white)!important;
  font-weight: var(--ui-weight-black);
  font-size:.85rem;
}
.team-event-card__actions{
  display:flex;
  justify-content:flex-end;
}
.team-event-card__actions .btn{
  white-space:nowrap;
  font-weight: var(--ui-weight-black);
}

@media (max-width: 980px){
  .team-dashboard-grid{
    grid-template-columns:1fr;
  }
}
@media (max-width: 760px){
  .team-tabs-shell .team-tabs{
    padding-bottom:4px;
  }
  .team-tabs-shell .team-tab{
    flex:0 0 auto;

  }

  .team-event-card__actions{
    justify-content:flex-start;
  }
}

.attendance-window-info::before{
  float:left;
  margin-top:1px;
  margin-right:10px;
}

.attendance-window-info span{
  display:block;
  overflow:hidden;
}

.attendance-status-actions{
  align-items:center;
  gap:var(--ui-space-control);
  justify-content:flex-end;
  flex-wrap:wrap;
}

.attendance-status-actions > span{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:92px;
  padding:var(--ui-inset-9-14);
  border-radius:var(--ui-radius-pill);
  background:var(--ui-surface-soft);
  color:var(--ui-muted-warm);
  font-weight: var(--ui-weight-black);
}

.attendance-status-card--yes .attendance-status-actions > span{
  background:#e5f7ed;
  color:var(--app-green);
}

.attendance-status-card--no .attendance-status-actions > span{
  background:#ffecef;
  color:var(--app-red);
}

.attendance-status-card--sick .attendance-status-actions > span{
  background:#faeaf1;
  color:var(--ui-accent);
}

.attendance-status-card--unknown .attendance-status-actions > span{
  background:var(--ui-surface-soft);
  color:var(--ui-muted-warm);
}

@media (max-width: 760px){
  .attendance-status-card{
    gap:var(--ui-space-lg);
  }
  .attendance-status-actions{
    width:100%;
    justify-content:flex-start;
  }
}

.event-attendance-actions{
  display:grid!important;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:var(--ui-space-lg);
  padding:var(--ui-space-2xl);
  border-top:1px solid var(--app-line);
  background:var(--ui-white);
}

.event-attendance-actions .attendance-form{
  margin:0;
}

.attendance-btn{
  width:100%;

  border:1px solid var(--ui-border)!important;
  border-radius:var(--ui-radius-lg)!important;
  background:var(--ui-white)!important;
  color:var(--app-blue)!important;
  font-weight: var(--ui-weight-black)!important;
  font-size:var(--ui-font-body)!important;
  cursor:pointer;
  display:flex!important;
  align-items:center;
  justify-content:center;
  gap:var(--ui-space-md);
  transition:background .15s ease, border-color .15s ease, color .15s ease, box-shadow .15s ease, transform .12s ease;
}

.attendance-btn:hover,
.attendance-btn:focus-visible{
  transform:translateY(-1px);
  box-shadow:0 8px 18px rgba(16,24,40,.08);
  text-decoration:none;
}

.attendance-btn--yes{
  border-color:#bfe8cf!important;
  background:#f2fbf6!important;
  color:#14864a!important;
}

.attendance-btn--yes::before{
  content:"✓";
  display:inline-grid;
  place-items:center;
  width:24px;
  height:24px;
  border-radius:var(--ui-radius-round);
  background:var(--ui-success);
  color:var(--ui-white);
  font-size:var(--ui-font-body-sm);
  line-height:var(--ui-line-tight);
}

.attendance-btn--no{
  border-color:#f4c6cc!important;
  background:#fff6f7!important;
  color:#c63343!important;
}

.attendance-btn--no::before{
  content:"×";
  display:inline-grid;
  place-items:center;
  width:24px;
  height:24px;
  border-radius:var(--ui-radius-round);
  background:var(--ui-danger);
  color:var(--ui-white);
  font-size:var(--ui-font-body);
  line-height:var(--ui-line-tight);
}

.attendance-btn--sick{
  border-color:#efc8da!important;
  background:#fff4fa!important;
  color:var(--ui-accent)!important;
}

.attendance-btn--sick::before{
  content:"+";
  display:inline-grid;
  place-items:center;
  width:24px;
  height:24px;
  border-radius:var(--ui-radius-round);
  background:var(--ui-accent);
  color:var(--ui-white);
  font-size:var(--ui-font-body);
  line-height:var(--ui-line-tight);
}

.attendance-btn.is-active{
  box-shadow:0 0 0 3px rgba(7,89,154,.10), 0 8px 18px rgba(16,24,40,.08);
}

.attendance-btn--yes.is-active{
  background:var(--ui-success)!important;
  border-color:var(--ui-success)!important;
  color:var(--ui-white)!important;
}

.attendance-btn--yes.is-active::before{
  background:var(--ui-white);
  color:var(--ui-success);
}

.attendance-btn--no.is-active{
  background:var(--ui-danger)!important;
  border-color:var(--ui-danger)!important;
  color:var(--ui-white)!important;
}

.attendance-btn--no.is-active::before{
  background:var(--ui-white);
  color:var(--ui-danger);
}

.attendance-btn--sick.is-active{
  background:var(--ui-accent)!important;
  border-color:var(--ui-accent)!important;
  color:var(--ui-white)!important;
}

.attendance-btn--sick.is-active::before{
  background:var(--ui-white);
  color:var(--ui-accent);
}

.event-row.event-row--split + .event-attendance-actions{
  margin-top:0;
}

.event-row.event-row--split{
  padding:18px 18px 0!important;
  border-bottom:0!important;
}

.event-row.event-row--split > strong{
  font-size:1.15rem;
  color:var(--app-text);
}

@media (max-width: 760px){
  .event-attendance-actions{
    grid-template-columns:1fr;
    padding:var(--ui-space-xl);
  }

  .attendance-btn{
    min-height:54px;
  }

  .event-row.event-row--split{
    padding:16px 14px 0!important;
  }
}

.event-page{
  width:min(1380px, calc(100% - 48px))!important;
  margin-left:auto!important;
  margin-right:auto!important;
}

.event-page .event-topbar{
  border-radius:0!important;
}

.event-page .event-summary-card{
  box-sizing:border-box;
}

.participants-list--coaches .participant-statuses{
  display:flex;
  gap:var(--ui-space-md);
  align-items:center;
  justify-content:flex-end;
  flex-wrap:wrap;
}

.participants-list--coaches .attendance-state--unknown{
  background:var(--ui-surface-soft);
}

.participants-list--coaches .attendance-state--yes{
  background:#e5f7ed;
}

.participants-list--coaches .attendance-state--no{
  background:#ffecef;
}

.participants-list--coaches .attendance-state--sick{
  background:#faeaf1;
}

.participants-list--coaches .participant-row:nth-child(even),
.participants-list--coaches .participant-row--coach:nth-child(even){
  background:var(--ui-white)!important;
}

.event-panel--attendance-summary{
  margin-top:16px;
}

.event-panel--attendance-summary h3{
  margin-bottom:14px;
}

.event-panel--attendance-summary .confirm-info{
  margin-bottom:16px;
}

.participants-summary--bottom{
  display:grid;
  grid-template-columns:repeat(4, minmax(0, 1fr));
  gap:var(--ui-space-lg);
  margin-top:0!important;
}

.participants-summary--bottom .attendance-summary{
  min-height:88px;
  padding:16px 12px;
  border:1px solid var(--app-line);
  border-radius:var(--ui-radius-lg);
  background:var(--ui-white);
  display:grid;
  place-items:center;
  text-align:center;
}

.participants-summary--bottom .attendance-summary strong{
  display:block;
  font-size:1.55rem;
  line-height:var(--ui-line-tight);
}

.participants-summary--bottom .attendance-summary span{
  margin-top:6px;
  color:var(--app-muted);
  font-weight: var(--ui-weight-extrabold);
}

.participants-summary--bottom .attendance-summary--yes{
  background:#f2fbf6;
  border-color:#ccefd9;
}

.participants-summary--bottom .attendance-summary--no{
  background:#fff6f7;
  border-color:#f4c6cc;
}

.participants-summary--bottom .attendance-summary--sick{
  background:#fff4fa;
  border-color:#efc8da;
}

.participants-summary--bottom .attendance-summary--unknown{
  background:#f6f8fa;
  border-color:#e1e5ea;
}

@media (max-width: 760px){
  .participants-summary--bottom{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }
}

.participants-list--players .participant-row:hover{
  background:#f8fbfe!important;
}

.participants-list--coaches .participant-row,
.participants-list--coaches .participant-row--coach{
  background:var(--ui-white)!important;
}

.participants-list--coaches .participant-row:hover,
.participants-list--coaches .participant-row--coach:hover{
  background:#f8fbfe!important;
}

.participant-statuses{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:var(--ui-space-md);
  min-width:var(--ui-size-touch);
}

.attendance-state{
  width:var(--ui-size-md)!important;
  height:var(--ui-size-md)!important;
  min-width:var(--ui-size-md)!important;
  min-height:var(--ui-size-md)!important;
  padding:0!important;
  border-radius:var(--ui-radius-pill)!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:hidden!important;
  color:transparent!important;
  font-size:0!important;
  line-height:var(--ui-line-tight)!important;
  font-weight: var(--ui-weight-black)!important;
  text-align:center!important;
  white-space:nowrap!important;
  position:relative;
}

.attendance-state::before{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:100%;
  height:100%;
  color:var(--ui-white)!important;
  font-size:var(--ui-font-body)!important;
  line-height:var(--ui-line-tight)!important;
  font-weight: var(--ui-weight-black)!important;
}

.attendance-state--yes{
  background:#dff6e8!important;
}
.attendance-state--yes::before{
  content:"✓";
}

.attendance-state--no{
  background:#f5c7ce!important;
}
.attendance-state--no::before{
  content:"×";
}

.attendance-state--sick{
  background:#f7dce9!important;
}
.attendance-state--sick::before{
  content:"+";
}

.attendance-state--unknown{
  background:#b9c0c8!important;
}
.attendance-state--unknown::before{
  content:"?";
}

.participants-list--coaches .attendance-state,
.participants-list--coaches .attendance-state--yes,
.participants-list--coaches .attendance-state--no,
.participants-list--coaches .attendance-state--sick,
.participants-list--coaches .attendance-state--unknown{
  width:var(--ui-size-md)!important;
  height:var(--ui-size-md)!important;
  min-width:var(--ui-size-md)!important;
  min-height:var(--ui-size-md)!important;
  padding:0!important;
  border-radius:var(--ui-radius-pill)!important;
  font-size:0!important;
  color:transparent!important;
  overflow:hidden!important;
}

.actual-state{
  justify-content:center;
  min-height:var(--ui-size-xs);
  padding:6px 11px;
  font-weight: var(--ui-weight-black);
  font-size:var(--ui-font-label);
}

@media (max-width: 760px){
  .participant-statuses{
    justify-content:flex-start;
    min-width:0;
  }
}

.participant-statuses .attendance-state,
.participants-list--players .attendance-state,
.participants-list--coaches .attendance-state{
  width:var(--ui-size-md)!important;
  height:var(--ui-size-md)!important;
  min-width:var(--ui-size-md)!important;
  max-width:var(--ui-size-md)!important;
  min-height:var(--ui-size-md)!important;
  max-height:var(--ui-size-md)!important;
  padding:0!important;
  margin:0!important;
  border-radius:var(--ui-radius-round)!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  position:relative!important;
  overflow:hidden!important;
  line-height:var(--ui-line-tight)!important;

  font-size:0!important;
  color:transparent!important;
  text-indent:-9999px!important;
  white-space:nowrap!important;
}

.participant-statuses .attendance-state::after,
.participants-list--players .attendance-state::after,
.participants-list--coaches .attendance-state::after{
  content:none!important;
  display:none!important;
}

.participant-statuses .attendance-state--yes::before,
.participants-list--players .attendance-state--yes::before,
.participants-list--coaches .attendance-state--yes::before{
  content:"✓"!important;
}

.participant-statuses .attendance-state--no::before,
.participants-list--players .attendance-state--no::before,
.participants-list--coaches .attendance-state--no::before{
  content:"×"!important;
}

.participant-statuses .attendance-state--sick::before,
.participants-list--players .attendance-state--sick::before,
.participants-list--coaches .attendance-state--sick::before{
  content:"+"!important;
}

.participant-statuses .attendance-state--unknown::before,
.participants-list--players .attendance-state--unknown::before,
.participants-list--coaches .attendance-state--unknown::before{
  content:"?"!important;
}

.participant-statuses .attendance-state--yes,
.participants-list--players .attendance-state--yes,
.participants-list--coaches .attendance-state--yes{
  background:var(--ui-success)!important;
}

.participant-statuses .attendance-state--no,
.participants-list--players .attendance-state--no,
.participants-list--coaches .attendance-state--no{
  background:var(--ui-danger)!important;
}

.participant-statuses .attendance-state--sick,
.participants-list--players .attendance-state--sick,
.participants-list--coaches .attendance-state--sick{
  background:var(--ui-accent)!important;
}

.participant-statuses .attendance-state--unknown,
.participants-list--players .attendance-state--unknown,
.participants-list--coaches .attendance-state--unknown{
  background:#aeb6bf!important;
}

.participant-statuses .attendance-state::before,
.participants-list--players .attendance-state::before,
.participants-list--coaches .attendance-state::before{
  position:absolute!important;
  inset:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  height:100%!important;
  margin:0!important;
  padding:0!important;
  text-indent:0!important;

  font-size:var(--ui-font-body)!important;
  line-height:var(--ui-line-tight)!important;
  font-weight: var(--ui-weight-black)!important;
  font-family:Arial, sans-serif!important;
  color:var(--ui-white)!important;
}

.event-tab span,
.event-tab-badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:26px;
  height:26px;
  padding:0 8px;
  border-radius:var(--ui-radius-xs);
  background:#2c2f33;
  color:var(--ui-white);
  font-size:var(--ui-font-body-sm);
  line-height:var(--ui-line-tight);
  font-weight: var(--ui-weight-black);
  letter-spacing:0;
}

.event-tab:not(.is-active) .event-tab-badge--coaches{
  background:#e4edf5!important;
}

.event-tab span::before{
  content:"";
}

.event-tab-badge--coaches::before{
  content:"T";
  margin-right:4px;
  font-size:.72rem;
  opacity:.9;
}

.event-tab > span:first-of-type::before{
  content:"H";
  margin-right:4px;
  font-size:.72rem;
  opacity:.9;
}

@media (max-width: 760px){
  .event-tab span,
.event-tab-badge{
    min-width:24px;
    height:24px;
    padding:0 7px;
    font-size:var(--ui-font-control);
  }
}

.event-tab{
  gap:var(--ui-space-compact);
}

.event-tab .event-tab-badge,
.event-tab span.event-tab-badge{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:var(--ui-size-xl)!important;
  height:26px!important;
  padding:0 9px!important;
  border-radius:var(--ui-radius-xs)!important;
  font-size:.88rem!important;
  line-height:var(--ui-line-tight)!important;
  font-weight: var(--ui-weight-black)!important;
  letter-spacing:0!important;
  color:var(--ui-white)!important;
}

.event-tab-badge--players{
  background:#2c2f33!important;
  color:var(--ui-white)!important;
}

.event-tab-badge--coaches{
  background:#aeb6bf!important;
  color:var(--ui-white)!important;
}

.event-tab > span:first-of-type::before,
.event-tab-badge--players::before,
.event-tab-badge--coaches::before{
  content:none!important;
  display:none!important;
  margin:0!important;
}

.event-tab:not(.is-active) .event-tab-badge--players,
.event-tab.is-active .event-tab-badge--players{
  background:#2c2f33!important;
  color:var(--ui-white)!important;
}

.event-tab:not(.is-active) .event-tab-badge--coaches,
.event-tab.is-active .event-tab-badge--coaches{
  background:#aeb6bf!important;
  color:var(--ui-white)!important;
}

@media (max-width: 760px){
  .event-tab .event-tab-badge,
.event-tab span.event-tab-badge{
    min-width:var(--ui-size-lg)!important;
    height:24px!important;
    padding:0 8px!important;
    font-size:.8rem!important;
  }
}

.actual-attendance-form--coach-confirm{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:var(--ui-space-md)!important;
  min-width:150px;
}

.actual-attendance-form--coach-confirm .actual-confirm-btn{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:auto!important;
  min-width:74px!important;
  height:var(--ui-size-control)!important;
  padding:0 13px!important;
  border-radius:var(--ui-radius-pill)!important;
  border:1px solid var(--ui-border)!important;
  background:var(--ui-white)!important;
  color:var(--ui-muted-warm)!important;
  font-size:.88rem!important;
  line-height:var(--ui-line-tight)!important;
  font-weight: var(--ui-weight-black)!important;
  cursor:pointer;
  box-shadow:none!important;
}

.actual-attendance-form--coach-confirm .actual-confirm-btn:hover,
.actual-attendance-form--coach-confirm .actual-confirm-btn:focus-visible{
  transform:none!important;
  box-shadow:0 4px 12px rgba(16,24,40,.08)!important;
}

.actual-attendance-form--coach-confirm .actual-confirm-btn--yes{
  border-color:#bfe8cf!important;
  color:#14864a!important;
}

.actual-attendance-form--coach-confirm .actual-confirm-btn--yes.is-active{
  background:var(--ui-success)!important;
  border-color:var(--ui-success)!important;
  color:var(--ui-white)!important;
}

.actual-attendance-form--coach-confirm .actual-confirm-btn--no{
  border-color:#f4c6cc!important;
  color:#c63343!important;
}

.actual-attendance-form--coach-confirm .actual-confirm-btn--no.is-active{
  background:var(--ui-danger)!important;
  border-color:var(--ui-danger)!important;
  color:var(--ui-white)!important;
}

.participant-row--coach .participant-statuses{
  flex:0 0 auto;
}

@media (max-width: 760px){
  .actual-attendance-form--coach-confirm{
    justify-content:flex-start!important;
    min-width:0;
  }
}

.team-card--clean{
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  min-height:170px;
  padding:26px 24px!important;
}

.team-card--clean h3{
  margin:0 0 22px!important;
  font-size:1.45rem;
  line-height:var(--ui-line-control);
  color:var(--app-text);
}

.team-card--clean .btn{
  margin-top:auto;
}

.team-card > p{
  display:none!important;
}

@media (max-width: 760px){
  .admin-page .team-tabs-shell{
    width:calc(100% - 28px)!important;
    margin:14px auto 14px!important;
    padding:0!important;
  }

  .admin-page .team-tabs-shell .team-tabs{
    display:flex!important;
    gap:var(--ui-space-md)!important;
    overflow-x:auto!important;
    padding:0 0 4px!important;
    margin:0!important;
    -webkit-overflow-scrolling:touch;
  }

  .admin-page .team-tabs-shell .team-tab{
    flex:0 0 auto!important;
    min-height:var(--ui-size-lg)!important;
    padding:0 13px!important;
    border-radius:var(--ui-radius-sm)!important;
    font-size:var(--ui-font-control)!important;
    letter-spacing:.02em!important;
  }

  .admin-page .admin-hero,
.admin-page .team-hero.admin-hero{
    width:calc(100% - 28px)!important;
    margin:12px auto 14px!important;
    border-radius:var(--ui-radius-lg)!important;
    overflow:hidden;
  }

  .admin-page .admin-hero .team-hero__main{
    padding:18px 14px!important;
    gap:16px!important;
  }

  .admin-page .admin-hero h1{
    font-size:1.55rem!important;
    line-height:1.12!important;
  }

  .admin-page .admin-hero .team-hero__stats{
    width:100%!important;
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:var(--ui-space-md)!important;
  }

  .admin-page .admin-hero .stat-card{
    min-width:0!important;
    min-height:72px!important;
    padding:var(--ui-space-control)!important;
    border-radius:var(--ui-radius-md)!important;
    background:#f3f5f7!important;
  }

  .admin-page .admin-hero .stat-card strong{
    font-size:1.15rem!important;
    color:var(--app-text)!important;
  }

  .admin-page .admin-hero .stat-card span{
    font-size:.8rem!important;
  }

  .admin-page .admin-panel,
.admin-page .team-panel.admin-panel{
    width:100%!important;
    min-width:0!important;
    padding:16px 14px!important;
    border-radius:var(--ui-radius-lg)!important;
    overflow:hidden!important;
  }

  .admin-page .admin-panel .section-head{
    align-items:flex-start!important;
    gap:var(--ui-space-control)!important;
    margin-bottom:14px!important;
  }

  .admin-page .admin-panel .section-head h2{
    font-size:1.25rem!important;
    line-height:var(--ui-line-compact)!important;
  }

  .admin-page .empty-card--compact{
    padding:var(--ui-space-xl)!important;
    border-radius:var(--ui-radius-sm)!important;
  }

  .admin-page .empty-card--compact p{
    font-size:.92rem!important;
    line-height:1.4!important;
  }

  .admin-pending-card{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:var(--ui-space-lg)!important;
    padding:var(--ui-space-xl)!important;
    border-radius:var(--ui-radius-md)!important;
  }

  .admin-pending-card .admin-actions{
    width:100%!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:var(--ui-space-md)!important;
  }

  .admin-pending-card .admin-actions form,
.admin-pending-card .admin-actions .btn,
.admin-pending-card .admin-actions button{
    width:100%!important;
  }

  .admin-form{
    min-width:0;
  }

  .admin-actions{
    flex-wrap:wrap!important;
  }
}

@media (max-width: 390px){
  .admin-page .team-tabs-shell .team-tab{
    padding:0 10px!important;
    font-size:var(--ui-font-compact)!important;
  }

  .admin-page .admin-hero .team-hero__stats{
    grid-template-columns:1fr!important;
  }
}

.admin-back-shell{
  margin-top:18px;
}
.admin-back-button{
  display:inline-flex;
  align-items:center;
  min-height:var(--ui-size-touch);
  padding:0 18px;
  border-radius:var(--ui-radius-md);
  font-weight: var(--ui-weight-black);
}

.admin-users-layout{
  display:grid;

  gap:var(--ui-space-2xl);

}

.admin-users-card h2{
  margin:var(--ui-margin-bottom-xl);
  font-size:1.45rem;
  line-height:var(--ui-line-compact);
  color:var(--app-text);
}

.admin-users-card .section-head{
  margin-bottom:16px;
}

.check-label{
  display:flex;
  align-items:center;
  gap:var(--ui-space-md);
  font-weight: var(--ui-weight-black);
  color:var(--app-text);
}

.admin-users-card--summary{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:var(--ui-space-2xl);
  padding:24px;
}
.admin-users-card--summary h2{
  margin:0 0 6px;
}
.admin-users-card--summary p{
  margin:0;
  color:var(--app-muted);
}
.admin-users-card--summary .admin-info-card__stats{
  flex:0 0 auto;
}

@media (max-width: 900px){
  .admin-users-layout{
    grid-template-columns:1fr;
  }
  .admin-users-card--pending,
.admin-users-card--users,
.admin-users-card--summary{
    grid-column:1 / -1;
  }
  .admin-users-card--summary{
    display:grid;
  }
  .admin-users-card--summary .admin-info-card__stats{
    width:100%;
  }
}

@media (max-width: 760px){
  .admin-back-shell{
    margin:12px auto 10px!important;
  }

  .admin-users-card--summary .admin-info-card__stats{
    display:grid;
    grid-template-columns:1fr 1fr;
  }

  .admin-users-card--summary .admin-info-card__stats span{
    border-radius:var(--ui-radius-md);
  }
}

@media (max-width: 390px){
  .admin-users-card--summary .admin-info-card__stats{
    grid-template-columns:1fr;
  }
}

.admin-users-layout{
  grid-template-columns:repeat(12, minmax(0, 1fr))!important;
  align-items:start!important;
}

.admin-users-card{
  background:var(--ui-white);
  border:1px solid var(--app-line);
  border-radius:var(--ui-radius-xl);
  box-shadow:var(--ui-shadow-line);
  min-width:0!important;
  box-sizing:border-box;
}

.admin-users-card--pending,
.admin-users-card--users,
.admin-users-card--summary{
  grid-column:1 / -1!important;
}

.admin-users-card--users .check-label input{
  width:auto!important;
  max-width:none!important;
}

.admin-users-card--users{
  position:relative!important;
  z-index:2!important;
}

@media (max-width: 760px){
  .admin-users-card--pending,
.admin-users-card--users,
.admin-users-card--summary{
    grid-column:1 / -1!important;
  }

}

.admin-users-card--users .check-label{
  margin:0!important;
  min-height:40px!important;
  display:inline-flex!important;
  align-items:center!important;
  gap:9px!important;
  padding:0 12px!important;
  border-radius:var(--ui-radius-pill)!important;
  background:var(--ui-surface-soft)!important;
  border:1px solid var(--ui-border)!important;
  color:var(--app-text)!important;
  font-size:var(--ui-font-body-sm)!important;
  font-weight: var(--ui-weight-black)!important;
  width:auto!important;
  justify-self:start;
}

.admin-users-card--users .check-label input[type="checkbox"]{
  width:18px!important;
  height:18px!important;
  min-width:18px!important;
  max-width:18px!important;
  accent-color:var(--ui-success);
  cursor:pointer;
}

.admin-users-card--users .check-label:has(input[type="checkbox"]:checked){
  background:#e5f7ed!important;
  border-color:#bfe8cf!important;
  color:#14864a!important;
}

@media (max-width: 760px){
  .admin-page,
.admin-page *{
    box-sizing:border-box;
  }

  .admin-users-layout{
    grid-template-columns:1fr!important;

    overflow:hidden!important;

}

  .admin-users-card,
.admin-users-card--users,
.admin-users-card--pending,
.admin-users-card--summary{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    overflow:hidden!important;
  }

  .admin-users-card--users .check-label{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    justify-self:stretch!important;

    justify-content:center!important;

}

  .admin-users-card--users{
    padding:14px 12px!important;
  }

  .admin-users-card--users .section-head{
    width:100%!important;
    max-width:100%!important;
  }

  .admin-users-card--users .section-head h2{
    font-size:1.15rem!important;
  }

}

@media (max-width: 390px){
  .admin-users-card--users{
    padding:12px 10px!important;
  }

}

.mobile-profile-hero{
  display:none;
}

@media (max-width: 760px){
  .app-header{
    display:none!important;
  }

  .mobile-profile-hero{
    display:flex;
    flex-direction:column;

    justify-content:center;
    width:100%;

    color:var(--ui-white);

    box-shadow:0 4px 18px rgba(16,24,40,.16);
    position:relative;
    z-index:5;
  }

  .mobile-profile-hero__logo{
    display:block;

    filter:drop-shadow(0 8px 18px rgba(0,0,0,.22));
  }

  .event-page{
    margin-top:0!important;
  }

  .mobile-profile-hero{
    padding-top:28px;
    padding-bottom:30px;
  }

  .mobile-profile-hero strong{
    display:block;
    max-width:100%;
    color:var(--ui-white);

    letter-spacing:-.02em;
    overflow-wrap:anywhere;

    font-weight: var(--ui-weight-black)!important;

}

  .mobile-profile-hero span{
    display:block;

    line-height:var(--ui-line-control)!important;
    font-weight: var(--ui-weight-black)!important;
    text-transform:uppercase!important;

    color:rgba(255,255,255,.82)!important;

}
}

@media (max-width: 760px){
    :root{
    --app-font-size-base: 14px;
    --app-font-size-small: 12px;
    --app-font-size-heading: 17px;
    --app-font-size-title: 21px;
    --app-page-gap-x: 22px;
    --app-page-gap-y: 18px;
    --app-shell-max-width: 760px;
    --app-shell-side-gap: 0px;
    --app-panel-inner-gap: 4px;
    --app-panel-radius: 11px;
    --app-shell-block-gap: 10px;
  }

  html,
body{
    overflow-x:hidden!important;
  }

  main{
    padding-bottom:82px!important;
  }

  .mobile-profile-hero{
    background:
      radial-gradient(circle at 50% 0%, rgba(255,255,255,.10), transparent 42%),
      linear-gradient(180deg, #292929 0%, #070707 100%)!important;
  }

  .mobile-profile-hero strong{
    line-height:var(--ui-line-compact)!important;
  }

  h1{
    line-height:1.12!important;
  }

  h2{
    line-height:var(--ui-line-compact)!important;
  }

  h3{
    line-height:var(--ui-line-control)!important;
  }

  .muted,
p{
    line-height:1.38!important;
  }

  .dashboard-section,
.team-panel,
.admin-panel,
.admin-users-card,
.event-panel,
.message-detail-card,
.team-hero,
.team-event-card,
.wall-message-card,
.empty-card{
    border-radius:14px!important;
    box-shadow:var(--ui-shadow-line)!important;
  }

  .section-head{
    gap:var(--ui-space-md)!important;

  }

  .section-head h2{
    margin:0!important;
  }

  .pill{
    min-height:26px!important;
    border-radius:var(--ui-radius-xs)!important;
    font-size:.8rem!important;
    font-weight: var(--ui-weight-black)!important;
  }

  .btn,
button,
input[type="submit"]{
    min-height:var(--ui-size-lg)!important;
    border-radius:var(--ui-radius-md)!important;
    font-size:var(--ui-font-body-sm)!important;
    font-weight: var(--ui-weight-black)!important;
  }

  .btn--small{
    min-height:var(--ui-size-control);
    padding:0 12px!important;
    font-size:.84rem!important;
  }

  .admin-insert-toggle{
    background:var(--ui-black)!important;
    border-color:var(--ui-black)!important;
    color:var(--ui-white)!important;
  }

  .btn--ghost{
    background:#f5f6f7!important;
    border-color:#d9dee5!important;
    color:var(--ui-black)!important;
  }

  .team-tabs-shell{
    margin:12px auto 14px!important;
    padding:0!important;
  }

  .team-tabs-shell .team-tabs{
    display:flex!important;
    gap:var(--ui-space-md)!important;
    overflow-x:auto!important;
    padding:0 0 4px!important;
    margin:0!important;
  }

  .team-tabs-shell .team-tab{
    letter-spacing:.035em!important;
    white-space:nowrap!important;
  }

  .team-tabs-shell .team-tab.is-active{
    background:var(--ui-black)!important;
    border-color:var(--ui-black)!important;
    color:var(--ui-white)!important;
  }

  .dashboard-section--wall,
.dashboard-section--events,
.dashboard-section--teams{
    background:transparent!important;
    border:0!important;
    box-shadow:none!important;
    padding:0!important;
  }

  .dashboard-section--wall .section-head,
.dashboard-section--events .section-head,
.dashboard-section--teams .section-head{
    display:flex!important;
    align-items:flex-start!important;
    justify-content:space-between!important;
  }

  .dashboard-section .empty-card,
.dashboard-section .wall-message-card,
.dashboard-section .app-event-card,
.team-card{
    background:var(--ui-white)!important;
    border:1px solid #ddd!important;
  }

  .empty-card h3{
    font-size:1.02rem!important;
  }

  .empty-card p{
    color:#777!important;
  }

  .team-grid{
    display:grid!important;
    grid-template-columns:1fr!important;

  }

  .team-card--clean,
.team-card{
    min-height:0!important;

  }

  .team-card h3,
.team-card--clean h3{
    margin:0 0 12px!important;
  }

  .team-back-shell{
    margin-top:0!important;
    margin-bottom:10px!important;
  }

  .team-hero--separate{
    padding:0!important;
  }

  .team-hero--separate .team-hero__main{
    display:grid!important;
    gap:var(--ui-space-xl)!important;
  }

  .team-hero__stats{
    display:grid!important;
    grid-template-columns:1fr!important;

    width:100%!important;
  }

  .stat-card{
    padding:var(--ui-space-control)!important;
    border-radius:var(--ui-radius-md)!important;
  }

  .stat-card span{
    font-size:var(--ui-font-control)!important;
    color:var(--ui-muted-warm)!important;
  }

  .team-dashboard-grid{
    gap:var(--ui-space-xl)!important;
  }

  .team-event-card{
    grid-template-columns:1fr!important;

    gap:var(--ui-space-control)!important;
    border-radius:13px!important;
  }

  .admin-back-shell{
    margin-top:0!important;
  }

  .admin-users-layout{
    margin:0 auto 28px!important;
    gap:var(--ui-space-lg)!important;
  }

  .admin-users-card h2,
.admin-panel h2{
    font-size:1.22rem!important;
  }

  .admin-info-card__stats,
.admin-users-card--summary .admin-info-card__stats{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:9px!important;
  }

  .admin-info-card__stats span{
    border-radius:var(--ui-radius-md)!important;
  }

  .admin-head-actions{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:var(--ui-space-md)!important;
    width:100%!important;
  }

  .admin-head-actions .btn,
.admin-head-actions button{
    width:100%!important;
  }

  .admin-message-card{
    border-radius:var(--ui-radius-md)!important;
    padding:13px!important;
  }

  .event-topbar{
    min-height:52px!important;
  }

  .event-topbar h1,
.event-topbar strong{
    font-size:1.08rem!important;
  }

  .event-summary-card{
    padding:16px!important;
  }

  .event-summary-card h2{
    font-size:var(--ui-font-heading-sm)!important;
  }

  .event-tabs{
    overflow-x:auto!important;
  }

  .event-tab{
    min-height:var(--ui-size-lg)!important;
    font-size:var(--ui-font-control)!important;
    white-space:nowrap!important;
  }

  .participant-row{
    padding:13px 12px!important;
  }

  .participant-main strong{
    font-size:.98rem!important;
  }

  .participant-main small{
    font-size:var(--ui-font-control)!important;
  }

  .mobile-bottom-nav{
    padding-bottom:4px!important;
  }

  .mobile-bottom-nav__item{
    gap:2px!important;
  }

}

@media (max-width: 390px){
  .team-tabs-shell .team-tab{
    padding:0 11px!important;
    font-size:var(--ui-font-compact)!important;
  }
}

@media (max-width: 760px){
  .mobile-profile-hero{
    min-height:132px!important;
    padding:16px 14px 17px!important;
  }

  .mobile-profile-hero__logo{
    margin-bottom:0px!important;
  }

  .mobile-profile-hero strong{
    font-size:.98rem!important;
  }

  .mobile-profile-hero span{
    margin-top:3px!important;
    font-size:.66rem!important;
    letter-spacing:.08em!important;
  }

  main{
    padding-top:10px!important;
  }

  .event-page{
    width:calc(100% - 20px)!important;
    max-width:calc(100% - 20px)!important;
  }

  .dashboard-section,
.team-panel,
.admin-panel,
.admin-users-card,
.event-panel{
    padding:var(--ui-space-lg)!important;
    margin-bottom:11px!important;
    border-radius:var(--ui-radius-md)!important;
  }

  h1,
h2{font-size:1.18rem!important;letter-spacing:normal!important;}
  h3{font-size:var(--ui-font-body)!important;letter-spacing:normal!important;}
  p,
.muted{font-size:.85rem!important;}

  .section-head{
    margin-bottom:9px!important;
  }

  .dashboard-section--wall,
.dashboard-section--events,
.dashboard-section--teams{
    margin-bottom:18px!important;
  }

  .dashboard-section--wall h2,
.dashboard-section--events h2,
.dashboard-section--teams h2,
.dashboard-section h2{
    font-size:1.18rem!important;
    letter-spacing: normal!important;
  }

  .dashboard-section .empty-card,
.dashboard-section .wall-message-card,
.dashboard-section .app-event-card{
    padding:var(--ui-space-lg)!important;
    border-radius:var(--ui-radius-md)!important;
  }

  .team-card{
    border-radius:var(--ui-radius-lg)!important;
  }

  .empty-card p{
    font-size:var(--ui-font-control)!important;
  }

  .team-card--clean,
.team-card{
    padding:var(--ui-space-lg)!important;
  }

  .team-card h3,
.team-card--clean h3{
    font-size:var(--ui-font-body)!important;
    margin-bottom:10px!important;
  }

  .team-card .btn{
    min-height:38px!important;
    font-size:var(--ui-font-control)!important;
  }

  .team-tabs-shell .team-tab{
    min-height:38px!important;
    padding:0 12px!important;
    border-radius:var(--ui-radius-sm)!important;
    font-size:.76rem!important;
  }

  .admin-users-card--users .check-label{
    min-height:var(--ui-size-md)!important;
    font-size:var(--ui-font-compact)!important;
  }

  .admin-info-card__stats span,
.admin-users-card--summary .admin-info-card__stats span{
    min-height:58px!important;
    padding:var(--ui-space-md)!important;
  }

  .admin-info-card__stats strong{
    font-size:1.05rem!important;
  }

  .admin-info-card__stats em{
    font-size:.72rem!important;
  }

  .team-hero--separate .team-hero__main{
    padding:var(--ui-space-xl)!important;
  }

  .team-hero--separate h1{
    font-size:1.32rem!important;
  }

  .stat-card{
    min-height:54px!important;
  }

  .stat-card strong{
    font-size:1.12rem!important;
  }

  .team-event-card{
    padding:var(--ui-space-lg)!important;
  }

  .team-event-card__main h3{
    font-size:var(--ui-font-body)!important;
  }

  .team-event-card__date strong{
    font-size:.84rem!important;
  }

  .mobile-bottom-nav{
    height:58px!important;
  }

  .mobile-bottom-nav__item{
    font-size:.68rem!important;
  }

  .mobile-bottom-nav__icon{
    font-size:1.04rem!important;
  }
}

@media (max-width: 390px){
  .app-shell,
.team-tabs-shell,
.admin-users-layout,
.event-page{
    width:calc(100% - 16px)!important;
    max-width:calc(100% - 16px)!important;
  }

  .mobile-profile-hero{
    padding-top:24px;
    padding-bottom:26px;

    min-height:120px!important;

}

  .mobile-profile-hero strong{
    font-size:var(--ui-font-body-sm)!important;
  }

  .mobile-profile-hero span{
    font-size:.6rem!important;
  }
}

.admin-form .nicEdit-panelContain{
  border:1px solid var(--app-line)!important;
  border-radius:14px 14px 0 0;
  background:#f6f7f9!important;
}

.admin-form .nicEdit-panel{
  display:flex;
  flex-wrap:wrap;
  gap:2px;
  padding:var(--ui-space-sm)!important;
}

.admin-form .nicEdit-main{
  width:auto!important;
  min-height:170px!important;
  padding:var(--ui-space-lg)!important;
  margin:0!important;
  color:var(--app-text);
  font-family:inherit;
  font-size:.96rem;
  line-height:1.55;
  background:var(--ui-white);
  outline:none;
}

.admin-form .nicEdit-main:focus{
  box-shadow:inset 0 0 0 2px rgba(0,0,0,.10);
}

.admin-form .nicEdit-main img{
  max-width:100%;
  height:auto;
  border-radius:var(--ui-radius-md);
}

.admin-form .nicEdit-main + textarea{
  display:none!important;
}

.message-rich-editor__source--fallback{
  min-height:170px;
}

.admin-form .nicEdit-main,
.admin-form .nicEdit-main:focus{
  border:1px solid var(--app-line);
  border-top:0;
  border-radius:0 0 14px 14px;
}

.admin-form .nicEdit-selected{
  outline:none;
}

.admin-form .nicEdit-buttonContain,
.admin-form .nicEdit-selectContain{
  background:var(--ui-white);
  border-radius:7px;
}

.message-rich-body{
  color:var(--app-text);
  font-size:.98rem;
  line-height:1.58;
  overflow-wrap:anywhere;
}

.message-rich-body p,
.message-detail-card__body p{
  margin:var(--ui-margin-bottom-control);
}

.message-rich-body p:last-child,
.message-detail-card__body p:last-child{
  margin-bottom:0;
}

.message-rich-body a,
.message-detail-card__body a{
  color:#005fae;
  font-weight: var(--ui-weight-black);
  text-decoration:underline;
  text-underline-offset:2px;
}

.message-rich-body img,
.message-detail-card__body img{
  display:block;
  max-width:100%;
  height:auto;
  margin:12px 0;
  border-radius:var(--ui-radius-md);
}

.message-rich-body ul,
.message-rich-body ol,
.message-detail-card__body ul,
.message-detail-card__body ol{
  margin:8px 0 12px 20px;
  padding:0;
}

.message-rich-body li,
.message-detail-card__body li{
  margin:4px 0;
}

.message-rich-body blockquote,
.message-detail-card__body blockquote{
  margin:12px 0;
  padding:var(--ui-inset-10-12);
  border-left:4px solid #111;
  border-radius:0 10px 10px 0;
  background:#f3f4f6;
  color:#344054;
}

.message-rich-body h3,
.message-detail-card__body h3{
  margin:14px 0 8px;
  font-size:1.15rem;
  line-height:var(--ui-line-control);
}

.message-rich-body h4,
.message-detail-card__body h4{
  margin:12px 0 7px;
  font-size:1.02rem;
  line-height:var(--ui-line-label);
}

@media (max-width: 760px){
  .admin-form .nicEdit-panel{
    padding:var(--ui-space-xs)!important;
  }

  .admin-form .nicEdit-main{
    min-height:150px;
    padding:11px!important;
    font-size:var(--ui-font-body-sm);
  }

  .message-rich-body{
    font-size:var(--ui-font-body-sm);
  }
}

.app-event-card__comments{
  margin-top:10px;
  padding:var(--ui-inset-9-10);
  border-radius:var(--ui-radius-sm);
  background:#f6f7f9;
  border:1px solid #e1e5ea;
}
.app-event-card__comments span{
  color:var(--app-text);
  font-size:var(--ui-font-label);
  font-weight: var(--ui-weight-black);
}
.app-event-card__comments em{
  color:var(--app-muted);
  font-style:normal;
  font-size:.84rem;
  line-height:var(--ui-line-body);
}
.app-event-card__comments.has-unread{
  background:#fff7e8;
  border-color:#f0d39a;
}
.app-event-card__comments.has-unread span{
  color:#7c4a00;
}
.event-tab .event-tab-badge--comments,
.event-tab span.event-tab-badge--comments{
  min-width:var(--ui-size-xs)!important;
  background:#fff7e8!important;
  color:#7c4a00!important;
}
.event-comments-panel{
  display:grid;

}
.event-comments-head h3{
  margin:0;
}

.event-comment{
  display:flex;
  justify-content:flex-start;
}

.event-comment__bubble{
  border:1px solid var(--app-line);

}

.event-comment__meta span,
.event-comment__meta time{
  color:var(--app-muted);
  font-size:var(--ui-font-compact);
  font-weight: var(--ui-weight-extrabold);
}
.event-comment__bubble p{
  margin:0;

  overflow-wrap:anywhere;
}
.event-comment__reply-ref{
  display:block;
  margin-bottom:9px;

  color:var(--app-muted);
  font-size:.84rem;
  font-weight: var(--ui-weight-extrabold);
  text-decoration:none;
}
.event-comment__reply-ref span{
  display:block;
  margin-top:2px;
  color:var(--app-text);
  font-weight: var(--ui-weight-bold);
}

.event-comment-form label{
  color:var(--app-text);
  font-size:var(--ui-font-body-sm);
  font-weight: var(--ui-weight-black);
}
.event-comment-form textarea{
  width:100%;

  resize:vertical;
  border:1px solid var(--ui-border);

  color:var(--app-text);
  font:inherit;
  line-height:var(--ui-line-relaxed);
}
.event-comment-form textarea:focus{
  outline:none;
  border-color:var(--app-blue);
  box-shadow:var(--ui-shadow-focus);
}
.event-comment-reply-preview{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:var(--ui-space-control);
  padding:var(--ui-inset-9-10);
  border-radius:var(--ui-radius-sm);

  color:#7c4a00;
  font-weight: var(--ui-weight-extrabold);
}
.event-comment-reply-preview[hidden]{
  display:none!important;
}
.event-comment-reply-preview button{
  border:0;
  background:transparent;
  color:#7c4a00;
  font:inherit;
  font-weight: var(--ui-weight-black);
  cursor:pointer;
}

.event-comments-panel{
  gap:0;
  overflow:hidden;
  padding:0;
  background:var(--ui-white);
}
.event-comments-head{
  align-items:center;
  gap:var(--ui-space-xl);
  padding:18px 20px 16px;
  border-bottom:1px solid var(--app-line);
  background:var(--ui-white);
}
.event-comments-head h3{
  margin-bottom:4px;
}
.event-comments-head p{
  max-width:680px;
  margin:0;
  color:var(--app-muted);
  line-height:1.4;
}
.event-comments-head .pill{
  min-width:var(--ui-size-md);
  height:28px;
  justify-content:center;
  border-radius:var(--ui-radius-pill);
  background:#f1f3f6;
  color:var(--app-text);
  font-weight: var(--ui-weight-black);
}
.event-comment-list{
  display:flex;
  flex-direction:column;
  gap:var(--ui-space-control);
  min-height:220px;
  padding:18px 20px;
  background:#f5f7fa;
}
.event-comment{
  width:100%;
}
.event-comment__bubble{
  padding:11px 13px 10px;
  border-color:#dfe5ec;
  border-radius:15px 15px 15px 5px;
  background:var(--ui-white);
  box-shadow:0 1px 1px rgba(16,24,40,.04);
}
.event-comment--mine .event-comment__bubble{
  border-color:#cddff2;
  border-radius:15px 15px 5px 15px;
  background:#eef6ff;
}
.event-comment__meta{
  display:flex;
  flex-wrap:wrap;
  align-items:baseline;
  gap:5px 7px;
  margin-bottom:5px;
  line-height:var(--ui-line-control);
}
.event-comment__meta strong{
  color:var(--app-text);
  font-size:.92rem;
}
.event-comment__meta span{
  color:var(--app-muted);
  font-size:var(--ui-font-compact);
}
.event-comment__bubble p{
  color:var(--ui-ink);
  font-size:.98rem;
  line-height:var(--ui-line-relaxed);
}
.event-comment__reply-ref{
  margin:0 0 9px;
  padding:var(--ui-inset-8-10);
  border-left:4px solid var(--app-blue);
  border-radius:var(--ui-radius-sm);
  background:rgba(0,95,174,.08);
}
.event-comment__reply-ref span{
  font-size:var(--ui-font-compact);
}

.event-comment-form{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:end;
  gap:var(--ui-space-control);
  padding:14px 20px 18px;
  border-top:1px solid var(--app-line);
  background:var(--ui-white);
}
.event-comment-form label{
  position:absolute;
  width:1px;
  height:1px;
  overflow:hidden;
  clip:rect(0 0 0 0);
  white-space:nowrap;
}
.event-comment-form textarea{
  min-height:50px;
  max-height:132px;
  padding:13px 14px;
  border-color:#d6dee8;
  border-radius:15px;
  background:var(--ui-white);
}
.event-comment-form .btn,
.event-comment-form .btn--block{
  width:auto;
  min-height:50px;
  padding:0 18px;
  border-radius:15px;
  white-space:nowrap;
}
.event-comment-reply-preview{
  grid-column:1/-1;
  margin-bottom:0;
  background:#fff4df;
}

@media (max-width: 760px){
  .event-comments-panel{
    margin-left:-6px;
    margin-right:-6px;
    border-radius:0;
  }

  .event-comments-head p{
    font-size:var(--ui-font-body-sm);
  }
  .event-comments-head .pill{
    align-self:flex-start;
  }

  .event-comment-form{
    background:var(--ui-white);

    grid-template-columns:1fr;
    position:static;
    bottom:auto;
    z-index:auto;
    margin:0;

    border:0;
    border-top:1px solid var(--app-line);
    border-radius:0;
    box-shadow:none;

}
  .event-comment-form textarea{
    min-height:var(--ui-size-xl);
  }
  .event-comment-form .btn,
.event-comment-form .btn--block{
    width:100%;
    min-height:var(--ui-size-xl);
  }
}

.dashboard-section--events .section-head,
#udalosti .section-head{
  align-items:center!important;
  justify-content:flex-start!important;
  gap:var(--ui-space-control)!important;
}
.dashboard-section--events .section-head > .pill,
#udalosti .section-head > .pill{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:var(--ui-size-xs)!important;
  height:var(--ui-size-xs)!important;
  margin-left:2px!important;
  padding:0 10px!important;
  border-radius:var(--ui-radius-pill)!important;
}
.dashboard-section--events .app-event-card,
#udalosti .app-event-card{
  display:grid!important;
  grid-template-columns:11px minmax(0,1fr) 58px!important;
  gap:var(--ui-space-xl)!important;
  min-height:104px!important;
  padding:0!important;
  border-radius:var(--ui-radius-md)!important;
  overflow:hidden!important;
}
.dashboard-section--events .app-event-card__bar,
#udalosti .app-event-card__bar{
  width:11px!important;
  margin:14px 0!important;
  border-radius:0 12px 12px 0!important;
}
.dashboard-section--events .app-event-card__body,
#udalosti .app-event-card__body{
  min-width:0!important;
  padding:16px 0 14px!important;
}
.dashboard-section--events .app-event-card__comments,
#udalosti .app-event-card__comments{
  max-width:none!important;
  margin-right:0!important;
}
.dashboard-section--events .app-event-card__action,
#udalosti .app-event-card__action{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  margin:14px 0!important;
  padding:0 12px!important;
  border-left:1px solid #e5e5e5!important;
}
.dashboard-section--events .app-event-card__open,
#udalosti .app-event-card__open{
  width:var(--ui-size-md)!important;
  min-width:var(--ui-size-md)!important;
  height:48px!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  color:transparent!important;
}
.dashboard-section--events .app-event-card__open::after,
#udalosti .app-event-card__open::after{
  color:#7f858c!important;
  font-size:2.55rem!important;
  font-weight: var(--ui-weight-medium)!important;
}

@media (max-width: 760px){
  .dashboard-section--events .app-event-card,
#udalosti .app-event-card{
    grid-template-columns:8px minmax(0,1fr) 52px!important;
    gap:var(--ui-space-lg)!important;
    border-radius:var(--ui-radius-md)!important;
  }
  .dashboard-section--events .app-event-card__bar,
#udalosti .app-event-card__bar{
    width:8px!important;
    margin:12px 0!important;
  }
  .dashboard-section--events .app-event-card__body,
#udalosti .app-event-card__body{
    padding:14px 0 13px!important;
  }
  .dashboard-section--events .app-event-card__action,
#udalosti .app-event-card__action{
    margin:12px 0!important;
    padding:0 10px!important;
  }
  .dashboard-section--events .app-event-card__open,
#udalosti .app-event-card__open{
    width:var(--ui-size-sm)!important;
    min-width:var(--ui-size-sm)!important;
    height:var(--ui-size-touch)!important;
  }
  .dashboard-section--events .app-event-card__open::after,
#udalosti .app-event-card__open::after{
    font-size:2.35rem!important;
  }
}

.admin-comment-card.is-hidden{
  opacity:.58;
  background:#f4f5f7!important;
}
.admin-comment-card.is-hidden .admin-message-card__plain-preview{
  color:#667085;
}

.event-comment-attachments{
  display:grid;
  gap:var(--ui-space-compact);
  margin-top:10px;
}
.event-comment-attachment{
  display:inline-flex;
  align-items:center;
  gap:var(--ui-space-md);
  width:max-content;
  max-width:100%;
  padding:var(--ui-inset-8-10);
  border:1px solid #d6dee8;
  border-radius:var(--ui-radius-sm);
  background:var(--ui-white);
  color:var(--app-text);
  font-size:var(--ui-font-label);
  font-weight: var(--ui-weight-extrabold);
  text-decoration:none;
}
.event-comment-attachment span:last-child{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.app-center-icon{
  display:inline-flex;
  align-items:center;
  justify-content:center;
}

.event-comment-attachment__icon{
  width:22px;
  height:22px;
  border-radius:var(--ui-radius-round);
  background:#eef2f7;
  color:#4b5563;
  font-weight: var(--ui-weight-black);
}
.event-comment-file,
.event-comment-file-hint{
  grid-column:1/-1;
}
.event-comment-file{
  width:100%;
  padding:11px 12px;
  border:1px solid #d6dee8;
  border-radius:13px;
  background:var(--ui-white);
  color:var(--app-muted);
  font:inherit;
}
.event-comment-file-hint{
  margin:-4px 0 0;
  color:var(--app-muted);
  font-size:var(--ui-font-control);
  line-height:var(--ui-line-body);
}

.dashboard-section--notifications{
  padding-bottom:18px;
}
.dashboard-notification-list{
  display:grid;
  gap:9px;
}
.dashboard-notification{
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;
  gap:var(--ui-space-lg);
  padding:13px 16px;
  border:1px solid #dde3eb;
  background:var(--ui-white);
  color:var(--app-text);
  text-decoration:none;
  box-shadow:var(--ui-shadow-line-soft);
}
.dashboard-notification:hover,
.dashboard-notification:focus-visible{
  border-color:#cbd5e1;
  background:var(--ui-surface-light);
}
.dashboard-notification__type{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:74px;
  padding:6px 9px;
  border-radius:var(--ui-radius-pill);
  background:#eef2f7;
  color:#344054;
}
.dashboard-notification__type--message{
  background:#fff7e8;
  color:#7c4a00;
}
.dashboard-notification__type--comment{
  background:#eef6ff;
  color:#005fae;
}
.dashboard-notification__type--event{
  background:#ffecec;
  color:#9f1d1d;
}
.dashboard-notification__body{
  display:grid;
  gap:3px;
  min-width:0;
}
.dashboard-notification__body strong{
  overflow:hidden;
  color:var(--app-text);
  text-overflow:ellipsis;
  white-space:nowrap;
}
.dashboard-notification__body em{
  overflow:hidden;
  color:var(--app-muted);
  font-style:normal;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.dashboard-notification__attendance--yes{
  border-color:#bbf7d0;
  background:#f0fdf4;
  color:#166534;
}
.dashboard-notification__attendance--no{
  border-color:#fecaca;
  background:#fef2f2;
  color:#991b1b;
}
.dashboard-notification__attendance--sick{
  border-color:#fed7aa;
  background:#fff7ed;
  color:#9a3412;
}
.dashboard-notification__attendance--unknown{
  border-color:#fde68a;
  background:#fffbeb;
  color:#92400e;
}
.dashboard-notification__arrow{
  color:#7f858c;
  font-size:2rem;
  line-height:var(--ui-line-tight);
}

@media (max-width: 760px){
  .dashboard-notification{
    grid-template-columns:1fr auto;
    gap:7px 10px;
    padding:var(--ui-space-lg);
  }
  .dashboard-notification__type{
    grid-column:1/-1;
    justify-self:start;
    min-width:0;
  }
  .dashboard-notification__body strong,
.dashboard-notification__body em{
    white-space:normal;
  }

.event-page{
    overflow-x:hidden!important;
  }

  .event-page .event-tabs{
    display:grid!important;
    gap:0!important;
    overflow:visible!important;
    margin:0 -10px 18px!important;
  }

  .event-page .event-tab{
    flex:initial!important;
    min-width:0!important;
    white-space:nowrap!important;
  }

  .event-page .event-tab span,
.event-page .event-tab-badge{
    min-width:22px!important;
    height:22px!important;
    margin-left:3px!important;
    padding:0 5px!important;
    font-size:.68rem!important;
  }

  .event-comments-panel{
    max-width:100%;
    overflow:hidden!important;
  }

  .event-comments-head{
    align-items:stretch;
    flex-direction:row;

    min-width:0!important;
    padding:14px 12px 12px!important;

}

  .event-comments-head > div{
    min-width:0!important;
  }

  .event-comments-head p{
    max-width:100%!important;
    overflow-wrap:anywhere;
  }

  .event-comment-list{
    overflow-x:hidden!important;
    overflow-y:auto!important;
    padding:var(--ui-space-lg)!important;
    -webkit-overflow-scrolling:touch;
    overscroll-behavior:contain;
  }

  .event-comment{
    min-width:0;
    max-width:100%;
  }

  .event-comment__bubble,
.event-comment--mine .event-comment__bubble{
    box-sizing:border-box!important;

    min-width:0!important;
    overflow:hidden!important;
  }

  .event-comment__meta{
    min-width:0!important;

  }

  .event-comment__meta strong,
.event-comment__meta span,
.event-comment__meta time,
.event-comment__bubble p,
.event-comment__reply-ref,
.event-comment__reply-ref span{
    min-width:0!important;
    overflow-wrap:anywhere!important;
  }

  .event-comment-attachments{
    min-width:0;
    max-width:100%;
  }

  .event-comment-attachment{
    box-sizing:border-box;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
  }

  .event-comment-attachment span:last-child{
    display:block!important;
    min-width:0!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
  }

  .event-comment-form{
    max-height:38vh!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    padding:10px 12px 12px!important;
    -webkit-overflow-scrolling:touch;
  }

  .event-comment-form textarea{
    max-height:110px!important;
  }

  .event-comment-file{
    max-width:100%;
    min-width:0;
    padding:var(--ui-inset-9-10)!important;
    font-size:var(--ui-font-label)!important;
  }

  .event-comment-file-hint{
    font-size:.74rem!important;
    overflow-wrap:anywhere;
  }
}

@media (max-width: 380px){
  .event-page .event-tab{
    font-size:.66rem!important;
    letter-spacing:.02em!important;
  }

  .event-page .event-tab span,
.event-page .event-tab-badge{
    min-width:20px!important;
    height:20px!important;
    padding:0 4px!important;
    font-size:.62rem!important;
  }
}

.profile-card{
  display:grid;
  gap:var(--ui-space-2xl);
  margin-top:24px;
  padding:22px;
  border:1px solid var(--app-line);
  border-radius:18px;
  background:var(--ui-white);
  box-shadow:var(--ui-shadow-line-soft);
}
.profile-card__top{
  display:flex;
  align-items:center;
  gap:var(--ui-space-xl);
}
.profile-card__top img{
  width:54px;
  height:54px;
}
.profile-card__top h1{
  margin:0;
  font-size:1.6rem;
}
.profile-card__top p{
  margin:3px 0 0;
  text-transform:uppercase;
  font-weight: var(--ui-weight-black);
}

.profile-card--edit{
  gap:20px;
}
.profile-card__top--edit{
  align-items:center;
}
.app-avatar{
  border-radius:var(--ui-radius-round);
  object-fit:cover;
}

.profile-avatar{
  flex:0 0 auto;
  width:86px!important;
  height:86px!important;
  border:3px solid var(--ui-white);
  background:#f3f4f6;
  box-shadow:0 6px 18px rgba(16,24,40,.14);
}
.profile-photo-note{
  display:block;
  margin-top:6px;
  color:var(--app-muted);
  font-size:var(--ui-font-control);
  line-height:var(--ui-line-body);
}
.app-stack-grid{
  display:grid;
}

.profile-form{
  gap:var(--ui-space-2xl);
}
.profile-form__grid,
.profile-form__password{
  gap:var(--ui-space-lg);
}
.profile-form label{
  gap:var(--ui-space-compact);
}
.profile-form label span{
  color:var(--app-text);
  font-size:var(--ui-font-body-sm);
  font-weight: var(--ui-weight-black);
}
.profile-form input{
  width:100%;
  padding:12px 13px;
  border:1px solid #d6dee8;
  border-radius:13px;
  background:var(--ui-white);
  color:var(--app-text);
  font:inherit;
  outline:none;
}
.profile-form input:focus{
  border-color:var(--app-blue);
  box-shadow:var(--ui-shadow-focus);
}
.profile-form input[type=file]{
  color:var(--app-muted);
}
.profile-form small{
  color:var(--app-muted);
  font-size:var(--ui-font-compact);
  line-height:var(--ui-line-body);
}
.profile-form__password{
  padding-top:16px;
  border-top:1px solid var(--app-line);
}
.profile-form__password h2{
  margin:0;
  font-size:1.15rem;
}
.profile-form__password p{
  margin:-6px 0 0;
}
.profile-form__actions{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:var(--ui-space-control);
}

@media (max-width: 760px){
  .mobile-bottom-nav__item{
    text-decoration:none;
    border-radius:var(--ui-radius-md)!important;
    margin:5px 3px!important;
    min-width:0;
  }

  .mobile-bottom-nav__item.is-active{
    background:#eef6ff!important;
    color:var(--app-blue)!important;
    font-weight: var(--ui-weight-black)!important;
  }

  .mobile-bottom-nav__item.is-active .mobile-bottom-nav__icon{
    color:var(--app-blue)!important;
  }

  .event-comment-list{
    max-height:66vh!important;
    min-height:360px!important;
    gap:var(--ui-space-md)!important;
  }

  .event-comment__bubble,
.event-comment--mine .event-comment__bubble{
    padding:var(--ui-inset-8-10)!important;
    border-radius:12px 12px 12px 4px!important;
  }

  .event-comment--mine .event-comment__bubble{
    border-radius:12px 12px 4px 12px!important;
  }

  .event-comment__meta{
    gap:2px 5px!important;
    margin-bottom:3px!important;
    line-height:1.12!important;
  }

  .event-comment__meta strong{
    font-size:.84rem!important;
  }

  .event-comment__meta span,
.event-comment__meta time{
    font-size:.68rem!important;
  }

  .event-comment__bubble p{
    font-size:.91rem!important;
    line-height:1.32!important;
  }

  .event-comment__reply-ref{
    margin-bottom:6px!important;
    padding:6px 8px!important;
    font-size:.76rem!important;
    line-height:var(--ui-line-label)!important;
  }

  .event-comment-attachments{
    gap:var(--ui-space-xs)!important;
    margin-top:7px!important;
  }

  .event-comment-attachment{
    padding:6px 8px!important;
    border-radius:9px!important;
    font-size:var(--ui-font-compact)!important;
  }

  .event-comment-attachment__icon{
    flex:0 0 auto!important;

    width:20px!important;
    height:20px!important;

}

  .profile-card{
    margin-top:14px;
    padding:var(--ui-space-2xl);
    border-radius:var(--ui-radius-xl);
  }

  .profile-card__top--edit{
    align-items:center;
    gap:var(--ui-space-lg);
  }

  .profile-avatar{
    width:74px!important;
    height:74px!important;
  }

  .profile-form__actions{
    grid-template-columns:1fr;
  }
}

@media (max-width: 380px){
  .event-comment-list{
    max-height:68vh!important;
    min-height:330px!important;
  }

  .event-comment__bubble,
.event-comment--mine .event-comment__bubble{
    max-width:94%!important;
  }

  .mobile-bottom-nav__item{
    margin:4px 2px!important;
  }
}

body:not(.auth-page):not(.intro-page) .app-user-pill{
  text-decoration:none;
}

body:not(.auth-page):not(.intro-page) .app-user-pill:hover,
body:not(.auth-page):not(.intro-page) .app-user-pill:focus-visible,
body:not(.auth-page):not(.intro-page) .app-header__nav a.app-user-pill{
  background:var(--ui-white)!important;
  color:#1f2937!important;
}

.participant-person{
  display:flex;
  align-items:center;
  min-width:0;
  gap:var(--ui-space-control);
}

.participant-avatar{
  flex:0 0 auto;
  width:var(--ui-size-lg);
  height:var(--ui-size-lg);
  border:2px solid var(--ui-white);
  background:#f3f4f6;
  box-shadow:var(--ui-shadow-control);
}

.participant-person .participant-main{
  min-width:0;
}

@media (max-width: 760px){
  .participant-person{
    width:100%;
    align-items:flex-start;
  }

  .participant-avatar{
    width:38px;
    height:38px;
  }
}

.event-comment{
  align-items:flex-end;
  gap:var(--ui-space-md);
}

.event-comment--mine{
  flex-direction:row-reverse;
  justify-content:flex-start;
}

.event-comment__bubble,
.event-comment--mine .event-comment__bubble{
  max-width:min(560px, calc(100% - 48px))!important;
}

.event-comment__avatar,
.admin-comment-avatar{
  flex:0 0 auto;
  width:var(--ui-size-control);
  height:var(--ui-size-control);
  border:2px solid var(--ui-white);
  background:#f3f4f6;
  box-shadow:var(--ui-shadow-control);
}

.event-comment__avatar{
  margin-bottom:2px;
}

.admin-comment-avatar{
  align-self:flex-start;
}

@media (max-width: 760px){
  .event-comment{
    gap:var(--ui-space-compact);
  }

  .event-comment__avatar,
.admin-comment-avatar{
    width:var(--ui-size-sm);
    height:var(--ui-size-sm);
  }

  .event-comment__bubble,
.event-comment--mine .event-comment__bubble{
    max-width:calc(100% - 40px)!important;
  }
}

.message-detail-author{
  display:inline-flex!important;
  align-items:center;
  gap:var(--ui-space-compact);
}

.message-detail-author__avatar{
  width:28px;
  height:28px;
  border:2px solid var(--ui-white);
  background:#f3f4f6;
  box-shadow:var(--ui-shadow-control-soft);
}

@media (max-width: 760px){
  .message-detail-author{
    width:100%;
  }
}

.admin-comment-card{
  grid-template-columns:minmax(0,1fr) auto!important;
}

.admin-comment-titleline{
  display:flex!important;
  align-items:center!important;
  gap:var(--ui-space-md)!important;
}

.admin-comment-titleline h3{
  min-width:0;
}

.admin-comment-titleline time{
  color:var(--app-muted);
  font-size:var(--ui-font-control);
  font-weight: var(--ui-weight-extrabold);
  white-space:nowrap;
}

.admin-comment-titleline .admin-comment-avatar{
  width:var(--ui-size-sm);
  height:var(--ui-size-sm);
}

@media (max-width: 760px){
  .admin-comment-card{
    grid-template-columns:1fr!important;
  }

  .admin-comment-titleline{
    gap:var(--ui-space-compact)!important;
  }

  .admin-comment-titleline h3{
    font-size:var(--ui-font-body)!important;
  }

  .admin-comment-titleline time{
    font-size:.76rem;
  }

  .admin-comment-titleline .admin-comment-avatar{
    width:var(--ui-size-xs);
    height:var(--ui-size-xs);
  }
}

.app-event-card__comments{
  display:grid!important;
  grid-template-columns:auto minmax(0,1fr)!important;
  align-items:center!important;
  gap:var(--ui-space-md)!important;
}

.app-event-card__comment-avatar{
  width:28px;
  height:28px;
  border:2px solid var(--ui-white);
  background:#f3f4f6;
  box-shadow:var(--ui-shadow-control-soft);
}

.app-event-card__comments > span{
  display:grid!important;
  gap:2px!important;
  min-width:0!important;
}

.app-event-card__comments > span > strong,
.app-event-card__comments > span > em{
  min-width:0!important;
}

.app-event-card__comments > span > strong{
  color:inherit!important;
  font-size:var(--ui-font-label)!important;
  font-weight: var(--ui-weight-black)!important;
}

.app-event-card__comments > span > em{
  overflow:hidden;
  text-overflow:ellipsis;
}

.event-comment[data-reply-comment-id]{
  cursor:pointer;
  touch-action:pan-y;
}

.event-comment[data-reply-comment-id] .event-comment__bubble{
  transition:border-color .15s ease, box-shadow .15s ease;
}

.event-comment[data-reply-comment-id]:hover .event-comment__bubble,
.event-comment[data-reply-comment-id]:focus-within .event-comment__bubble{
  border-color:#cbd5e1;
  box-shadow:0 2px 8px rgba(16,24,40,.08);
}

@media (max-width: 760px){
  .app-event-card__comment-avatar{
    width:26px;
    height:26px;
  }
}

.mobile-profile-hero__brand{
  display:none;
}

@media (max-width: 760px){
  .mobile-profile-hero{
    align-items:center!important;
    text-align:center!important;
  }

  .mobile-profile-hero__brand{
    position:relative;
    display:grid!important;
    place-items:center!important;
    width:104px;
    height:88px;
    margin:0 auto 8px!important;
  }

  .mobile-profile-hero__logo{
    width:84px!important;
    height:84px!important;
    margin:0!important;
    object-fit:contain;
  }

  .mobile-profile-hero__avatar{
    position:absolute;
    left:84px;
    top:69px;
    transform:translate(-50%, -50%);
    width:41px;
    height:41px;
    border:1px solid var(--ui-white);
    border-radius:var(--ui-radius-round);
    background:#f3f4f6;
    box-shadow:0 6px 14px rgba(0,0,0,.28);
    object-fit:cover;
  }
}

@media (max-width: 390px){
  .mobile-profile-hero__brand{
    width:96px;
    height:80px;
    margin-bottom:7px!important;
  }

  .mobile-profile-hero__logo{
    width:77px!important;
    height:77px!important;
  }

  .mobile-profile-hero__avatar{
    width:37px;
    height:37px;
    left:80px;
    top:65px;
  }
}

.app-event-card__attendance{
  margin:8px 0 0!important;
  padding:var(--ui-inset-8-10)!important;
  border:1px solid #dbe1ea!important;
  border-radius:var(--ui-radius-sm)!important;
  background:var(--ui-surface-light)!important;
  color:#4b5563!important;
  font-size:.88rem!important;
  font-weight: var(--ui-weight-extrabold)!important;
  line-height:1.3!important;
}

.app-event-card__attendance--yes{
  border-color:#bbf7d0!important;
  background:#f0fdf4!important;
  color:#166534!important;
}

.app-event-card__attendance--no{
  border-color:#fecaca!important;
  background:#fef2f2!important;
  color:#991b1b!important;
}

.app-event-card__attendance--sick{
  border-color:#fed7aa!important;
  background:#fff7ed!important;
  color:#9a3412!important;
}

.app-event-card__attendance--unknown{
  border-color:#fde68a!important;
  background:#fffbeb!important;
  color:#92400e!important;
}

@media (max-width: 760px){
  .app-event-card__attendance{
    margin-top:7px!important;
    padding:7px 9px!important;
    border-radius:9px!important;
    font-size:var(--ui-font-control)!important;
  }
}

.event-comment-attachment--image{
  align-items:flex-start!important;
  flex-direction:column!important;
  gap:var(--ui-space-compact)!important;
  width:min(260px,100%)!important;
  padding:var(--ui-space-md)!important;
}
.app-media-cover{
  display:block;
  object-fit:cover;
}

.event-comment-attachment__preview{
  display:block!important;
  width:100%!important;
  max-height:180px;
  border-radius:var(--ui-radius-xs)!important;
  border:1px solid #e5e7eb!important;
}
.event-comment-attachment--image span:last-child{
  width:100%!important;
}

.mobile-bottom-nav__item{
    position: relative;
}

.mobile-bottom-nav__badge{
    position: absolute;
    top: 5px;
    right: 18px;
    min-width: 18px;
    height: 18px;
    padding: 0 5px;
    border-radius: var(--ui-radius-pill);
    background: #dc2626;
    color: var(--ui-white);
    font-size: var(--ui-font-xs);
    font-weight: var(--ui-weight-black);
    line-height: 18px;
    text-align: center;
    box-shadow: 0 0 0 2px var(--ui-white);
}

@media (min-width: 861px){
    .mobile-bottom-nav__badge{
        display: none;
    }
}

.team-players-list .team-player-row{
  align-items:center;
}
.team-player-attendance{
  min-width:104px;
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  gap:2px;
  line-height:var(--ui-line-tight);
  font-weight: var(--ui-weight-extrabold);
}
.team-player-attendance__label{
  color:#020617;
  letter-spacing:.01em;
}
.team-player-attendance strong{
  color:inherit;
  font-size:1.65rem;
  letter-spacing:-.04em;
}
.team-player-attendance small{
  color:#020617;
  opacity:.88;
}
.team-player-attendance--green{color:#22c55e;}
.team-player-attendance--orange{color:#f59e0b;}
.team-player-attendance--red{color:#ef4444;}
.team-player-attendance--black{color:#020617;}
.team-player-attendance--empty{color:rgba(148,163,184,.95);}
@media (max-width: 760px){
  .team-players-list .team-player-row{
    flex-direction:row;
    align-items:center;
  }
  .team-player-attendance{
    min-width:82px;
  }
  .team-player-attendance strong{
    font-size:var(--ui-font-heading-sm);
  }
}

.attendance-child-list{
  display:grid;
  gap:var(--ui-space-xl);
  margin:0;
}
.attendance-child-block{
  background:var(--ui-white);
  border-bottom:1px solid var(--app-line);
}
.attendance-child-block .attendance-status-card{
  border-bottom:0;
}
.event-attendance-actions--child{
  border-top:1px solid var(--app-line);
}
@media (max-width: 760px){
  .attendance-child-list{
    gap:var(--ui-space-lg);
  }
  .attendance-child-block{
    border-radius:0;
  }
}

.admin-user-link-remove{
  appearance:none;
  border:0;
  border-radius:var(--ui-radius-pill);
  padding:var(--ui-inset-6-10);
  background:#fee2e2;
  color:#991b1b;
  font-weight: var(--ui-weight-black);
  font-size:var(--ui-font-compact);
  cursor:pointer;
}
.admin-user-link-remove:hover{
  background:#fecaca;
}

@media (max-width: 560px){
  .admin-user-link-remove{
    width:100%;
  }
}

.admin-users-card--compact{
  grid-column:1 / -1!important;
}
.admin-users-row-list{
  gap:var(--ui-space-md);
}
.admin-user-row{
  display:grid;
  grid-template-columns:minmax(230px, 1.15fr) minmax(230px, .95fr) minmax(280px, 1.5fr);
  align-items:center;
  gap:var(--ui-space-lg);
  padding:12px 14px;
  border:1px solid var(--app-line);
  border-radius:var(--ui-radius-xl);
  background:var(--ui-white);
  transition:background .15s ease, border-color .15s ease, box-shadow .15s ease, transform .12s ease;
}
.admin-user-row:hover{
  background:#f8fbfe;
  border-color:#cfe2f3;
  box-shadow:0 6px 18px rgba(16,24,40,.07);
}
.admin-user-row.is-pending{
  background:#fff8e8;
  border-color:#f0d39a;
}
.admin-user-row.is-pending:hover{
  background:#fff4d8;
}
.admin-user-row__identity{
  display:grid;
  grid-template-columns:44px minmax(0, 1fr);
  align-items:center;
  gap:var(--ui-space-lg);
  min-width:0;
}
.admin-user-row__avatar{
  width:var(--ui-size-touch);
  height:var(--ui-size-touch);
  border:2px solid var(--ui-white);
  box-shadow:0 2px 8px rgba(16,24,40,.14);
  background:var(--ui-surface-soft);
}
.admin-user-row__text{
  gap:2px;
  min-width:0;
}
.admin-user-row__text strong{
  color:var(--app-text);
  font-weight: var(--ui-weight-black);
  line-height:var(--ui-line-control);
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.admin-user-row__text span{
  color:var(--app-muted);
  font-size:var(--ui-font-label);
  font-weight: var(--ui-weight-bold);
  line-height:var(--ui-line-label);
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.admin-user-row__role{
  display:grid;
  grid-template-columns:minmax(100px, 1fr) auto auto;
  align-items:center;
  gap:var(--ui-space-md);
  margin:0;
  min-width:0;
}
.admin-user-row__role select,
.admin-user-row-link select{
  width:100%;
  min-width:0;
  min-height:38px;
  border:1px solid var(--ui-border);
  border-radius:11px;
  background:var(--ui-white);
  color:var(--app-text);
  font-weight: var(--ui-weight-black);
  padding:0 10px;
}
.admin-user-row-link select:disabled{
  opacity:1;
  color:var(--app-text);
  background:var(--ui-white);
  cursor:default;
}
.admin-user-row__active{
  min-height:38px!important;
  margin:0!important;
  padding:0 10px!important;
  border-radius:var(--ui-radius-pill)!important;
  white-space:nowrap;
}
.admin-user-row__links{
  gap:var(--ui-space-sm);
  min-width:0;
}
.admin-user-row-link{
  display:grid;
  grid-template-columns:auto minmax(150px, 1fr) auto;
  align-items:center;
  gap:var(--ui-space-md);
  margin:0;
  min-width:0;
}
.admin-user-row-link label{
  margin:0;
  color:var(--app-muted);
  font-size:var(--ui-font-compact);
  font-weight: var(--ui-weight-black);
  text-transform:uppercase;
  letter-spacing:.04em;
  white-space:nowrap;
}
.admin-user-row-link--add label{
  color:#475569;
}
.admin-user-row__empty{
  color:var(--app-muted);
  font-size:var(--ui-font-label);
  font-weight: var(--ui-weight-extrabold);
}
.admin-user-row .btn,
.admin-user-row button{
  white-space:nowrap;
}
@media (max-width: 1180px){
  .admin-user-row{
    grid-template-columns:1fr;
    align-items:stretch;
  }
  .admin-user-row__role,
.admin-user-row-link{
    grid-template-columns:minmax(0, 1fr) auto auto;
  }
}
@media (max-width: 640px){
  .admin-user-row{
    padding:var(--ui-space-lg);
    border-radius:var(--ui-radius-lg);
  }
  .admin-user-row__role,
.admin-user-row-link{
    grid-template-columns:1fr;
  }
  .admin-user-row__active,
.admin-user-row .btn,
.admin-user-row button,
.admin-user-row-link select,
.admin-user-row__role select{
    width:100%!important;
    justify-content:center!important;
  }
  .admin-user-row-link label{
    white-space:normal;
  }
}

.admin-users-filter{
  display:grid;
  grid-template-columns:minmax(220px, 1.5fr) minmax(140px, .8fr) minmax(160px, .9fr) minmax(160px, .9fr) auto;
  gap:var(--ui-space-control);
  align-items:end;
  margin:var(--ui-margin-bottom-xl);
  padding:var(--ui-space-lg);
  border:1px solid var(--app-line);
  border-radius:var(--ui-radius-xl);
  background:var(--ui-surface-light);
}
.admin-users-filter label{
  gap:var(--ui-space-xs);
  margin:0;
  min-width:0;
}
.admin-users-filter label span{
  color:var(--app-muted);
  font-size:var(--ui-font-compact);
  font-weight: var(--ui-weight-black);
  letter-spacing:.04em;
  text-transform:uppercase;
}
.admin-users-filter input,
.admin-users-filter select{
  width:100%;
  min-width:0;
  min-height:40px;
  border:1px solid var(--ui-border);
  border-radius:var(--ui-radius-md);
  background:var(--ui-white);
  color:var(--app-text);
  font-weight: var(--ui-weight-extrabold);
  padding:0 11px;
}
.admin-users-filter input::placeholder{
  color:#94a3b8;
}
.admin-users-filter__actions{
  display:flex;
  gap:var(--ui-space-md);
  align-items:center;
  justify-content:flex-end;
}
.admin-users-filter__actions .btn{
  min-height:40px;
  white-space:nowrap;
}
@media (max-width: 1180px){
  .admin-users-filter{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }
  .admin-users-filter__actions{
    justify-content:flex-start;
  }
}
@media (max-width: 640px){
  .admin-users-filter{
    grid-template-columns:1fr;
  }
  .admin-users-filter__actions,
.admin-users-filter__actions .btn{
    width:100%;
  }
  .admin-users-filter__actions{
    flex-direction:column;
  }
}

.admin-team-checklist{
  display:grid;
  gap:var(--ui-space-md);
  max-height:220px;
  overflow:auto;
  padding:var(--ui-space-control);
  border:1px solid var(--ui-border-medium);
  border-radius:var(--ui-radius-lg);
  background:rgba(255,255,255,.72);
}
.admin-team-check{
  display:flex;
  align-items:center;
  gap:9px;
  padding:var(--ui-inset-8-10);
  border-radius:var(--ui-radius-md);
  cursor:pointer;
}
.admin-team-check:hover{background:rgba(15,23,42,.06);}
.admin-team-check input{width:auto;min-width:auto;margin:0;}
.admin-team-check span{font-weight: var(--ui-weight-bold);color:var(--ui-ink);}

.dashboard-section--calendar .section-head{
  align-items:flex-start;
  gap:var(--ui-space-xl);
}

.dashboard-calendar-panel{
  background:rgba(255,255,255,.94);
  color:#050505;
  border:1px solid rgba(0,0,0,.08);
  box-shadow:0 20px 45px rgba(0,0,0,.22);
}
.dashboard-calendar-panel .muted{color:#666;}

.dashboard-calendar-grid{
  display:grid;
  grid-template-columns:repeat(7,minmax(0,1fr));
  gap:var(--ui-space-control);
}
.dashboard-calendar-weekday{
  text-align:center;
  font-weight: var(--ui-weight-black);
  text-transform:uppercase;
  color:#666;
  padding-bottom:6px;
}
.dashboard-calendar-day{
  min-height:180px;
  background:var(--ui-white);
  border:1px solid #d9d9d9;
  border-radius:18px;
  padding:var(--ui-space-lg);
  display:flex;
  flex-direction:column;
  gap:var(--ui-space-control);
}
.dashboard-calendar-day.is-outside-month{
  background:#fafafa;
  opacity:.62;
}
.dashboard-calendar-day.is-today{
  border-color:#050505;
  box-shadow:0 0 0 2px rgba(0,0,0,.05);
  background:linear-gradient(180deg,var(--ui-white) 0%,#e8e8e8 100%);
}
.dashboard-calendar-daynum{
  font-weight: var(--ui-weight-black);

  color:#050505;
}
.dashboard-calendar-items{
  display:flex;
  flex-direction:column;
  gap:var(--ui-space-md);
}
.dashboard-calendar-item{
  display:flex;
  flex-direction:column;
  gap:var(--ui-space-xs);
  padding:10px 10px 11px;
  border-radius:var(--ui-radius-lg);
  text-decoration:none;
  background:#f2f2f2;
  color:#050505;
  border:1px solid rgba(0,0,0,.06);
  transition:transform .15s ease, box-shadow .15s ease, border-color .15s ease;
}
a.dashboard-calendar-item:hover{
  transform:translateY(-1px);
  box-shadow:0 8px 18px rgba(0,0,0,.08);
  border-color:rgba(0,0,0,.12);
}

.dashboard-calendar-item__badge--tournament{background:#d9d9d9;color:#050505;}
.dashboard-calendar-item__badge--training{background:#dbeafe;color:#1e40af;}
.dashboard-calendar-item__badge--maintenance,
.dashboard-calendar-item__badge--mowing,
.dashboard-calendar-item__badge--brigade{background:#ecfccb;color:#3f6212;}
.dashboard-calendar-item__badge--village{background:#f3e8ff;color:#6b21a8;}
.dashboard-calendar-item__badge--players{background:#ffe4e6;color:#9f1239;}
.dashboard-calendar-item__badge--ending{background:var(--ui-ink);color:var(--ui-white);}
.dashboard-calendar-item__badge--other{background:#e5e7eb;color:var(--ui-ink);}
.dashboard-calendar-item__title{
  font-size:14px;
  font-weight: var(--ui-weight-black);
  line-height:var(--ui-line-body);
  color:#050505;
}

@media (max-width: 1100px){
  .dashboard-calendar-grid{grid-template-columns:repeat(4,minmax(0,1fr));}
}
@media (max-width: 768px){
  .dashboard-calendar-panel{padding:16px;border-radius:20px;}

  .dashboard-calendar-grid{grid-template-columns:1fr;}
  .dashboard-calendar-weekday{display:none;}
  .dashboard-calendar-day{min-height:auto;border-radius:var(--ui-radius-xl);}
  .dashboard-calendar-day.is-outside-month{display:none;}
  .dashboard-calendar-daynum{font-size:1.2rem;}
}

.event-summary-card--match{
  border-color:rgba(220,38,38,.45);
  background:linear-gradient(135deg,rgba(220,38,38,.14),var(--panel) 46%,var(--panel) 100%);
}
.event-summary-card--match .event-summary-card__accent--match{
  background:linear-gradient(180deg,#dc2626 0%,#7f1d1d 100%);
}
.pill--match{
  background:#dc2626!important;
  color:var(--ui-white)!important;
  border-color:#dc2626!important;
}
.pill--match-competition{
  background:rgba(220,38,38,.12)!important;
  color:#fecaca!important;
  border-color:rgba(248,113,113,.4)!important;
}
.dashboard-calendar-item--match,
.dashboard-calendar-item--friendly{
  background:linear-gradient(180deg,#fff1f2 0%,#fee2e2 100%);
  border-color:#fecaca;
}
.dashboard-calendar-item--match .dashboard-calendar-item__title,
.dashboard-calendar-item--friendly .dashboard-calendar-item__title{
  color:#7f1d1d;
}
.dashboard-calendar-item__badge--match,
.dashboard-calendar-item__badge--friendly{
  background:#dc2626;
  color:var(--ui-white);
}

.event-videos-panel{scroll-margin-top:88px;}
.event-videos-head{gap:14px;margin-bottom:16px;}
.event-videos-list{display:flex;flex-direction:column;margin-bottom:16px;}
.event-video-card{grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:flex-start;}
.event-video-card__main{min-width:0;display:flex;flex-direction:column;}
.event-video-card__badge{justify-content:center;align-self:flex-start;border-radius:var(--ui-radius-pill);background:var(--ui-ink);color:var(--ui-white);font-weight: var(--ui-weight-extrabold);text-transform:uppercase;}
.event-video-card--youtube .event-video-card__badge{background:#dc2626;}
.event-video-card--veo .event-video-card__badge{background:var(--ui-ink);}
.event-video-card__link{display:inline-flex;align-items:center;justify-content:center;align-self:flex-start;text-decoration:none;border-radius:var(--ui-radius-pill);background:var(--app-yellow);color:var(--ui-ink);font-weight: var(--ui-weight-extrabold);}
.event-video-card__embed iframe{position:absolute;inset:0;width:100%;height:100%;border:0;}

.event-video-card__preview{
  position:relative;
  display:block;
  width:100%;
  max-width:720px;
  aspect-ratio:16 / 9;
  margin-top:8px;
  border-radius:18px;
  overflow:hidden;
  background:linear-gradient(135deg,#0f172a 0%,#111827 54%,#1d4ed8 100%);
  color:var(--ui-white);
  text-decoration:none;
  box-shadow:0 12px 28px rgba(15,23,42,.12);
}
.event-video-card__preview:hover{text-decoration:none;}
.event-video-card__preview img{display:block;width:100%;height:100%;}
.event-video-card__preview::after{
  content:'';
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(15,23,42,.06) 0%,rgba(15,23,42,.58) 100%);
  pointer-events:none;
}
.event-video-card__preview--veo{
  background:linear-gradient(135deg,#0f172a 0%,#111827 45%,#1f3f7a 100%);
}
.event-video-card__preview--other{
  background:linear-gradient(135deg,#111827 0%,#1f2937 50%,#374151 100%);
}
.event-video-card__preview-art{
  position:absolute;
  inset:-10% auto auto -8%;
  width:68%;
  height:130%;
  background:
    radial-gradient(circle at 30% 30%,rgba(255,255,255,.16),transparent 44%),
    linear-gradient(110deg,rgba(255,255,255,.06) 0%,rgba(255,255,255,0) 62%),
    repeating-linear-gradient(0deg,rgba(255,255,255,.06),rgba(255,255,255,.06) 2px,transparent 2px,transparent 18px);
  transform:rotate(-12deg);
  pointer-events:none;
}
.event-video-card__preview-content{
  position:absolute;
  inset:auto 18px 18px 18px;
  z-index:1;
  display:flex;
  flex-direction:column;
  gap:6px;
  max-width:min(76%, 520px);
}
.event-video-card__preview-kicker{
  display:inline-flex;
  align-self:flex-start;
  padding:6px 10px;
  border-radius:999px;
  background:rgba(255,255,255,.16);
  color:rgba(255,255,255,.92);
  font-size:.74rem;
  font-weight:var(--ui-weight-extrabold);
  letter-spacing:.06em;
  text-transform:uppercase;
}
.event-video-card__preview-content strong{
  font-size:1.18rem;
  line-height:1.28;
  color:var(--ui-white);
}
.event-video-card__preview-content em{
  font-style:normal;
  color:rgba(255,255,255,.82);
  font-size:.92rem;
  line-height:1.35;
}
.event-video-card__preview-play{
  position:absolute;
  right:18px;
  bottom:18px;
  z-index:1;
  display:flex;
  align-items:center;
  justify-content:center;
  width:58px;
  height:58px;
  border-radius:50%;
  background:rgba(255,255,255,.16);
  border:1px solid rgba(255,255,255,.28);
  color:var(--ui-white);
  font-size:1.5rem;
  backdrop-filter:blur(4px);
}
.event-video-delete-form{margin:0;display:flex;justify-content:flex-end;}
.event-video-form{border-top:1px solid var(--border);padding-top:16px;display:grid;gap:12px;align-items:end;}
.event-video-form label{display:flex;flex-direction:column;gap:6px;font-weight: var(--ui-weight-extrabold);color:var(--ui-ink);}
.event-video-form label span{font-size:var(--ui-font-control);color:var(--muted);font-weight: var(--ui-weight-extrabold);text-transform:uppercase;letter-spacing:.04em;}
.event-video-form input{width:100%;border:1px solid var(--border);border-radius:var(--ui-radius-lg);background:var(--ui-white);color:var(--ui-ink);padding:12px 13px;font:inherit;}
@media (max-width: 760px){.event-videos-head{flex-direction:column;}.event-video-delete-form{justify-content:flex-start;}}

.event-videos-head{align-items:center;}
.event-videos-head .pill{flex:0 0 auto;}
.event-videos-list{gap:18px;}
.event-video-card{
  border:1px solid rgba(17,24,39,.09);
  background:linear-gradient(180deg,var(--ui-white) 0%,#fafafa 100%);
  border-radius:22px;
  padding:16px;
  box-shadow:0 10px 26px rgba(15,23,42,.05);
  display:block;
}
.event-video-card__main{gap:14px;}
.event-video-card__head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:var(--ui-space-xl);
}
.event-video-card__title-wrap{
  min-width:0;
  display:flex;
  flex-direction:column;
  gap:var(--ui-space-compact);
}
.event-video-card__badge{
  padding:var(--ui-inset-6-10);
  font-size:.7rem;
  letter-spacing:.06em;
}
.event-video-card__title{
  font-size:1.08rem;
  line-height:var(--ui-line-body);
  color:var(--ui-ink);
}
.event-video-card__source{
  align-self:flex-start;
  text-decoration:none;
  color:var(--muted);
  font-size:.92rem;
  font-weight: var(--ui-weight-bold);
}
.event-video-card__source:hover{color:var(--ui-ink);text-decoration:underline;}
.event-video-delete-form{flex:0 0 auto;}
.event-video-delete-form .btn{white-space:nowrap;}
.event-video-card__embed{
  position:relative;
  width:100%;
  border-radius:18px;
  overflow:hidden;
  background:var(--ui-black);
  aspect-ratio:16/9;
  margin-top:2px;
}
.event-video-card__embed--portrait{
  aspect-ratio:9/16;
  max-width:420px;
}
.event-video-card__action-row{
  justify-content:flex-start;
  padding-top:2px;
}
.event-video-card__link{
  min-height:var(--ui-size-touch);
  padding:10px 16px;
}
.event-video-card--veo .event-video-card__link,
.event-video-card--other .event-video-card__link{
  background:var(--ui-ink);
  color:var(--ui-white);
}
.event-video-form{
  margin-top:6px;
  border:1px solid rgba(17,24,39,.08);
  border-radius:20px;
  background:var(--ui-surface-light);
  padding:16px;
  grid-template-columns:minmax(180px,1fr) minmax(240px,2fr) auto;
}
.event-video-form .btn{min-height:46px;padding-inline:18px;}
@media (max-width: 760px){
  .event-video-card{
grid-template-columns:1fr;
padding:var(--ui-space-xl);
}
  .event-video-card__head{flex-direction:column;align-items:flex-start;}
  .event-video-delete-form,
.event-video-delete-form .btn{width:100%;}
  .event-video-card__embed--portrait{max-width:100%;}
.event-video-card__preview{max-width:100%;}
  .event-video-card__preview-content{max-width:calc(100% - 88px);inset:auto 14px 14px 14px;}
  .event-video-card__preview-content strong{font-size:1rem;}
  .event-video-card__preview-content em{font-size:.85rem;}
  .event-video-card__preview-play{right:14px;bottom:14px;width:52px;height:52px;font-size:1.3rem;}
  .event-video-form{grid-template-columns:1fr;}
  .event-video-form .btn{width:100%;}
}

#event-videos.event-panel{
  padding: 22px 24px !important;
  overflow: hidden;
}

#event-videos .event-videos-head{
  padding: 0 !important;
  margin: 0 0 18px 0 !important;
}

#event-videos .event-videos-list{
  display: flex !important;
  flex-direction: column !important;
  gap: var(--ui-space-2xl) !important;
  margin: 0 0 22px 0 !important;
}

#event-videos .event-video-card{
  width: 100% !important;
  max-width: 780px !important;
  margin: 0 !important;
  padding: 16px !important;
  border-radius: 22px !important;
  background: var(--ui-white) !important;
  border: 1px solid rgba(17,24,39,.10) !important;
  box-shadow: 0 8px 22px rgba(15,23,42,.06) !important;
  display: block !important;
}

#event-videos .event-video-card__main{
  width: 100% !important;
  max-width: 100%;
  display: flex !important;
  flex-direction: column !important;
  gap: var(--ui-space-lg) !important;
}

#event-videos .event-video-card__head{
  display: flex !important;
  align-items: flex-start !important;
  justify-content: space-between !important;
  gap: var(--ui-space-xl) !important;
  width: 100% !important;
}

#event-videos .event-video-card__title-wrap{
  min-width: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: var(--ui-space-sm) !important;
}

#event-videos .event-video-card__title{
  font-size: var(--ui-font-body) !important;
  line-height: 1.3 !important;
  margin: 0 !important;
}

#event-videos .event-video-delete-form{
  margin: 0 !important;
  flex: 0 0 auto !important;
}

#event-videos .event-video-card__embed{
  width: 100% !important;
  max-width: 720px !important;
  aspect-ratio: 16 / 9 !important;
  margin: 8px 0 0 0 !important;
  border-radius: 18px !important;
  overflow: hidden !important;
  background: var(--ui-black) !important;
  position: relative !important;
}

#event-videos .event-video-card__embed--portrait{
  width: min(100%, 340px) !important;
  max-width: 340px !important;
  aspect-ratio: 9 / 16 !important;
}

#event-videos .event-video-card__embed iframe{
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  border: 0 !important;
}


#event-videos .event-video-card__preview{
  width: 100% !important;
  max-width: 720px !important;
  margin: 8px 0 0 0 !important;
}

#event-videos .event-video-card__action-row{
  margin-top: 6px !important;
}

#event-videos .event-video-card__action-row{
  margin-top: 6px !important;
}

#event-videos .event-video-form{
  width: 100% !important;
  max-width: 980px;
  margin: 8px 0 0 0 !important;
  padding: 16px !important;
  border-radius: 20px !important;
  background: var(--ui-surface-light) !important;
  border: 1px solid rgba(17,24,39,.10) !important;
  display: grid !important;
  grid-template-columns: minmax(180px, 1fr) minmax(260px, 2fr) auto !important;
  gap: var(--ui-space-lg) !important;
  align-items: end !important;
}

@media (max-width: 760px) {
  #event-videos.event-panel{
    padding: 16px !important;
  }

  #event-videos .event-video-card{
    max-width: 100% !important;
    padding: var(--ui-space-xl) !important;
  }

  #event-videos .event-video-card__head{
    flex-direction: column !important;
    align-items: stretch !important;
  }

  #event-videos .event-video-delete-form .btn{
    width: 100% !important;
  }

  #event-videos .event-video-card__embed,
#event-videos .event-video-card__embed--portrait{
    max-width: 100% !important;
    width: 100% !important;
  }

  #event-videos .event-video-form{
    grid-template-columns: 1fr !important;
  }

  #event-videos .event-video-form .btn{
    width: 100% !important;
  }
}

#event-videos .event-video-form--single{
  max-width: 780px;
  grid-template-columns: minmax(260px, 1fr) auto !important;
}

#event-videos .event-video-form--single label{
  min-width: 0 !important;
}

#event-videos .event-video-form--single input{
  width: 100% !important;
}

@media (max-width: 760px) {
  #event-videos .event-video-form--single{
    grid-template-columns: 1fr !important;
  }
}

.event-summary-card__body{
  position: relative;
}

.event-summary-edit-button{
  position: absolute;
  right: 18px;
  top: 50%;
  transform: translateY(-50%);
  white-space: nowrap;
  border-radius: var(--ui-radius-xl) !important;
  padding: 10px 16px !important;
  box-shadow: 0 10px 24px rgba(15, 23, 42, .14);
}

.event-edit-panel[hidden]{
  display: none !important;
}

.event-edit-panel{
  border: 1px solid var(--ui-border-soft);
  border-radius: 22px;
  background: var(--ui-white);
  box-shadow: 0 10px 30px rgba(15,23,42,.06);
}

.event-edit-panel__head{
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: var(--ui-space-lg);
  margin-bottom: 16px;
}

.event-edit-panel__head h3{
  margin: 0 0 4px;
  font-size: 1.18rem;
}

.event-edit-panel__head p{
  margin: 0;
}

.event-edit-form{
  display: grid;
  gap: var(--ui-space-xl);
}

.event-edit-form label{
  display: block;
  font-weight: var(--ui-weight-extrabold);
  color: var(--ui-ink);
  margin-bottom: 6px;
}

.event-edit-form input[type="text"],
.event-edit-form input[type="date"],
.event-edit-form input[type="time"],
.event-edit-form select,
.event-edit-form textarea{
  width: 100%;
  border: 1px solid var(--ui-border-medium);
  border-radius: var(--ui-radius-xl);
  padding: 12px 13px;
  font: inherit;
  background: var(--ui-white);
  box-shadow: inset 0 1px 0 rgba(15,23,42,.03);
  box-sizing: border-box;
}

.event-edit-form textarea{
  resize: vertical;
  min-height: 96px;
}

.event-edit-form__row{
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: var(--ui-space-xl);
}

.event-edit-team-list{
  display: flex;
  flex-wrap: wrap;
  gap: var(--ui-space-md);
}

.event-edit-team{
  display: inline-flex !important;
  align-items: center;
  gap: var(--ui-space-compact);
  margin: 0 !important;
  border: 1px solid var(--ui-border-medium);
  border-radius: var(--ui-radius-pill);
  padding: 8px 11px;
  background: var(--ui-surface-light);
  cursor: pointer;
  font-weight: var(--ui-weight-extrabold) !important;
}

.event-edit-team input,
.event-edit-check input{
  accent-color: var(--ui-ink);
}

.event-edit-check{
  display: flex !important;
  align-items: center;
  gap: 9px;
  margin: 2px 0 0 !important;
  font-weight: var(--ui-weight-extrabold) !important;
}

@media (max-width: 760px) {
  .event-summary-card__body{
    padding-right: 18px;
  }

  .event-summary-edit-button{
    position: static;
    transform: none;
    margin-top: 12px;
    width: 100%;
  }

  .event-edit-panel__head{
    align-items: stretch;
    flex-direction: column;
  }

  .event-edit-form__row{
    grid-template-columns: 1fr;
  }

body.dashboard-page{ background: #eeeeef; }

  .dashboard-page .app-shell{
    padding-left: 18px;
    padding-right: 18px;
  }

  .dashboard-page .dashboard-section{
    margin-top: 22px;
    margin-bottom: 0;
  }

  .dashboard-page .section-head{
    align-items: center;
    margin-bottom: 13px;
  }

  .dashboard-page .section-head h2{
    font-size: 1.72rem;
    line-height: 1.05;
    letter-spacing: -0.04em;
    margin: 0;
  }

  .dashboard-page .section-head .muted{
    font-size: var(--ui-font-body);
    line-height: 1.22;
    margin-top: 5px;
    color: #777d86;
  }

  .dashboard-page .section-head > .pill,
.dashboard-page .section-head .pill{
    border: 0;
    border-radius: var(--ui-radius-pill);
    background: rgba(255,255,255,.62);
    color: #444b55;
    font-size: 1.05rem;
    font-weight: var(--ui-weight-black);
    min-width: var(--ui-size-xl);
    min-height: var(--ui-size-xl);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 14px;
  }

  .dashboard-page .wall-message-list,
.dashboard-page .team-grid{
    gap: var(--ui-space-lg);
  }

  .dashboard-page .app-event-card__top{
    display: block;
    margin: 0 0 2px;
  }

  .dashboard-page .app-event-card__top .pill{ display: none; }

  .dashboard-page .app-event-card__team{
    margin-bottom: 2px;
  }

  .dashboard-page .app-event-card__attendance{
    margin-top: 12px;
  }

  .dashboard-page .app-event-card__open{
    font-weight: var(--ui-weight-black);
    text-indent: -999px;
  }

  .dashboard-page .app-event-card__open::after{
    text-indent: 0;
  }

  .dashboard-page .notice-card,
.dashboard-page .dashboard-notification,
.dashboard-page .wall-message-card,
.dashboard-page .team-card,
.dashboard-page .empty-card{
    border-radius: var(--ui-radius-xl);
    border: 1px solid var(--ui-border-soft);
    box-shadow: none;
  }

  .dashboard-page .dashboard-notification__arrow,
.dashboard-page .wall-message-card__arrow{
    right: 16px;
    font-size: 2.1rem;
    color: #8b929b;
  }

  .dashboard-page .wall-message-card{
    padding: 15px 48px 15px 15px;
  }

  .dashboard-page .wall-message-card__icon{
    width: var(--ui-size-md);
    height: var(--ui-size-md);
    border-radius: var(--ui-radius-pill);
    font-size: var(--ui-font-body);
    flex: 0 0 34px;
  }

  .dashboard-page .wall-message-card__main strong{
    font-size: 1.22rem;
    line-height: 1.12;
    letter-spacing: -0.025em;
  }

  .dashboard-page .wall-message-card__main p,
.dashboard-page .wall-message-card__body{
    font-size: .98rem;
    line-height: var(--ui-line-label);
    color: #777d86;
  }

  .dashboard-page .team-card{
    padding: var(--ui-space-2xl);
  }

  .dashboard-page .team-card h3{
    font-size: var(--ui-font-heading-sm);
    line-height: var(--ui-line-snug);
    letter-spacing: -0.03em;
  }

  .dashboard-page .team-card .btn{
    min-height: var(--ui-size-lg);
    border-radius: var(--ui-radius-lg);
  }

  .dashboard-page .dashboard-calendar-panel{
    border-radius: 18px;
    border: 1px solid var(--ui-border-soft);
    box-shadow: none;
    overflow: hidden;
  }

  .dashboard-page .dashboard-calendar-grid{
    gap: 1px;
    background: #e5e7eb;
    border-top: 1px solid #e5e7eb;
  }

  .dashboard-page .dashboard-calendar-weekday,
.dashboard-page .dashboard-calendar-day{ background: var(--ui-white); }

  .dashboard-page .dashboard-calendar-day{
    min-height: 86px;
    padding: var(--ui-space-compact);
  }

  .dashboard-page .dashboard-calendar-item{
    border-radius: var(--ui-radius-xs);
    padding: 5px 6px;
  }

  .dashboard-page .dashboard-calendar-item__title{
    font-size: .76rem;
    line-height: var(--ui-line-compact);
  }

}

@media (max-width: 420px) {
  .dashboard-page .app-shell{
    padding-left: 14px;
    padding-right: 14px;
  }

  .dashboard-page .section-head h2{ font-size: 1.55rem; }
}

.app-event-card__count{
  display: inline-flex;
  align-items: center;
  gap: var(--ui-space-xs);
  border-radius: var(--ui-radius-xs);
  background: #f0f1f3;
  color: #1f2937;
  font-weight: var(--ui-weight-black);
  padding: 5px 8px;
}

.app-event-card__count-icon{
  position: relative;
  display: inline-block;
  width: 15px;
  height: 15px;
  flex: 0 0 15px;
  color: #3f454c;
}

@media (max-width: 760px) {
  .dashboard-page .app-event-list{
    display: grid !important;

  }

  .dashboard-page .app-event-card-link{
    display: block !important;
    width: 100% !important;
    color: inherit !important;
    text-decoration: none;
  }

  .dashboard-page .app-event-card{
    display: grid !important;
    gap: 0 !important;
    align-items: stretch !important;
    width: 100% !important;
    min-width: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    border: 1px solid rgba(17, 24, 39, .10) !important;
    box-shadow: none !important;
    transform: none !important;
  }

  .dashboard-page .app-event-card-link:hover .app-event-card,
.dashboard-page .app-event-card-link:focus-visible .app-event-card{
    background: var(--ui-white) !important;
    border-color: rgba(17,24,39,.14) !important;
    transform: none !important;
  }

  .dashboard-page .app-event-card__bar{
    left: 10px;
    top: 18px;
    bottom: 18px;

    grid-column: 1 !important;
    grid-row: 1 !important;
    height: auto !important;
    min-height: 0 !important;
    border-radius: 0 999px 999px 0 !important;
    position: static !important;

}

  .dashboard-page .app-event-card__body{
    grid-column: 2 !important;
    grid-row: 1 !important;
    display: flex !important;
    flex-direction: column !important;
    min-width: 0 !important;
    width: auto !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
  }

  .dashboard-page .app-event-card h3{
    margin: 0 !important;
    min-width: 0 !important;
  }

  .dashboard-page .app-event-card__team{
    display: inline !important;
    margin: 0 !important;
    min-width: 0 !important;
  }

  .dashboard-page .app-event-card__team::before{
    content: "|";
  }

  .dashboard-page .app-event-card__datetime,
.dashboard-page .app-event-card__meta{
    display: inline !important;
    margin: 0 !important;
  }

  .dashboard-page .app-event-card__meta::before{
    content: "|" !important;
  }

  .dashboard-page .app-event-card__count{
    border: 0 !important;
  }

  .dashboard-page .app-event-card__attendance{
    display: inline-flex !important;
    align-items: center !important;
  }

  .dashboard-page .app-event-card__attendance--no,
.dashboard-page .app-event-card__attendance--sick{
    background: #fff1f2 !important;
    color: #a21d2b !important;
    border: 1px solid #fecdd3 !important;
  }

  .dashboard-page .app-event-card__comments{
    order: 4 !important;
    margin-top: 5px !important;
  }

  .dashboard-page .app-event-card__open{
    padding: 0 !important;
    margin: 0 !important;
    border: 0 !important;
    background: transparent !important;
    color: transparent !important;
    font-size: 0 !important;
    line-height: 0 !important;
    position: relative !important;
    overflow: hidden !important;
  }

  .dashboard-page .app-event-card__open::after{
    content: "›" !important;
    position: absolute !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
  }

  .dashboard-page .app-event-card__top,
.dashboard-page .app-event-card__top .pill{
    display: none !important;
  }

  .dashboard-page .dashboard-section--events{
    margin-top: 18px !important;
  }

  .dashboard-page .dashboard-section--events .section-head{
    margin-bottom: 11px !important;
  }

  .dashboard-page .dashboard-section--events .section-head h2,
.dashboard-page .dashboard-section--calendar .section-head h2,
.dashboard-page .dashboard-section--status .section-head h2{
    font-size: 1.22rem !important;
    line-height: 1.05 !important;
    letter-spacing: -0.02em !important;
    font-weight: var(--ui-weight-extrabold) !important;
  }

  .dashboard-page .dashboard-section--events .section-head .pill{
    min-width: var(--ui-size-xs) !important;
    min-height: var(--ui-size-xs) !important;
    padding: 0 9px !important;
    font-size: var(--ui-font-compact) !important;
    font-weight: var(--ui-weight-extrabold) !important;
    background: #f7f8fa !important;
    color: #48515c !important;
  }

  .dashboard-page .app-event-list{
    gap: var(--ui-space-control) !important;
  }

  .dashboard-page .app-event-card{
    grid-template-columns: 8px minmax(0, 1fr) 44px !important;
    min-height: 88px !important;
    border-radius: var(--ui-radius-sm) !important;
    border-color: rgba(17,24,39,.075) !important;
    background: var(--ui-white) !important;
  }

  .dashboard-page .app-event-card__bar{
    margin: 10px 0 !important;
    width: 7px !important;
  }

  .dashboard-page .app-event-card__body{
    gap: var(--ui-space-2xs) !important;
    padding: 12px 10px 11px 14px !important;
  }

  .dashboard-page .app-event-card h3{
    font-size: 1.00rem !important;
    line-height: 1.06 !important;
    letter-spacing: -0.014em !important;
    font-weight: 760 !important;
    color: #14171b !important;
  }

  .dashboard-page .app-event-card__team{
    font-size: var(--ui-font-control) !important;
    line-height: 1.08 !important;
    font-weight: var(--ui-weight-strong) !important;
    color: var(--ui-muted-warm) !important;
  }

  .dashboard-page .app-event-card__team::before{
    margin-right: 5px !important;
    color: #a0a7b0 !important;
    font-weight: var(--ui-weight-strong) !important;
  }

  .dashboard-page .app-event-card__datetime,
.dashboard-page .app-event-card__meta{
    font-size: .79rem !important;
    line-height: 1.16 !important;
    font-weight: var(--ui-weight-label) !important;
    color: #6f7781 !important;
  }

  .dashboard-page .app-event-card__meta::before{
    margin: 0 5px !important;
    color: #a0a7b0 !important;
    font-weight: var(--ui-weight-semibold) !important;
  }

  .dashboard-page .app-event-card__count{
    min-height: 22px !important;
    border-radius: 6px !important;
    padding: 4px 6px !important;
    font-size: .70rem !important;
    line-height: var(--ui-line-tight) !important;
    font-weight: var(--ui-weight-heavy) !important;
    background: #f0f1f3 !important;
    color: #2f363d !important;
  }

  .dashboard-page .app-event-card__count-icon{
    flex-basis: 12px;
  }

  .dashboard-page .app-event-card__count-icon--player::before{
    left: 4px !important;
    top: 1px !important;
    width: 4px !important;
    height: 4px !important;
  }

  .dashboard-page .app-event-card__count-icon--player::after{
    left: 1px !important;
    top: 7px !important;
    width: 10px !important;
    height: 5px !important;
  }

  .dashboard-page .app-event-card__count-icon--coach::before{
    font-size: var(--ui-font-md) !important;
    line-height: 13px !important;
    top: -2px !important;
  }

  .dashboard-page .app-event-card__attendance{
    min-height: 22px !important;
    border-radius: 7px !important;
    padding: 4px 7px !important;
    font-size: .66rem !important;
    line-height: var(--ui-line-tight) !important;
    font-weight: 720 !important;
    letter-spacing: -0.01em !important;
  }

  .dashboard-page .app-event-card__attendance--yes{
    background: #e9fbef !important;
    color: #087b32 !important;
    border: 1px solid #b8efca !important;
  }

  .dashboard-page .app-event-card__attendance--unknown{
    background: #fff9eb !important;
    color: #9a5100 !important;
    border: 1px solid #f4d77d !important;
  }

  .dashboard-page .app-event-card__open::after{
    font-weight: var(--ui-weight-extrabold) !important;
  }
}

@media (max-width: 420px) {
  .dashboard-page .dashboard-section--events .section-head h2,
.dashboard-page .dashboard-section--calendar .section-head h2,
.dashboard-page .dashboard-section--status .section-head h2{
    font-size: 1.12rem !important;
  }

  .dashboard-page .app-event-card{
    grid-template-columns: 7px minmax(0, 1fr) 40px !important;
    min-height: 82px !important;
  }

  .dashboard-page .app-event-card__bar{
    width: 7px !important;
  }

  .dashboard-page .app-event-card__body{
    padding: 11px 8px 10px 12px !important;
  }

  .dashboard-page .app-event-card h3{
    font-size: .92rem !important;
  }

  .dashboard-page .app-event-card__team,
.dashboard-page .app-event-card__datetime,
.dashboard-page .app-event-card__meta{
    font-size: .73rem !important;
  }

  .dashboard-page .app-event-card__count{
    min-height: 21px !important;
    font-size: .66rem !important;
    padding: 4px 6px !important;
  }

  .dashboard-page .app-event-card__attendance{
    min-height: 21px !important;
    padding: 4px 6px !important;
  }
}

@media (max-width: 760px) {
  .dashboard-page .dashboard-section--notifications{
    margin-top: 18px !important;
  }

  .dashboard-page .dashboard-section--notifications .section-head{
    margin-bottom: 11px !important;
  }

  .dashboard-page .dashboard-section--notifications .section-head h2{
    font-size: 1.22rem !important;
    line-height: 1.05 !important;
    letter-spacing: -0.02em !important;
    font-weight: var(--ui-weight-extrabold) !important;
  }

  .dashboard-page .dashboard-section--notifications .section-head .muted{
    font-size: var(--ui-font-control) !important;
    line-height: 1.18 !important;
    color: var(--ui-muted-warm) !important;
    font-weight: var(--ui-weight-medium) !important;
    margin-top: 5px !important;
  }

  .dashboard-page .dashboard-section--notifications .section-head .pill{
    min-width: var(--ui-size-xs) !important;
    min-height: var(--ui-size-xs) !important;
    padding: 0 9px !important;
    font-size: var(--ui-font-compact) !important;
    font-weight: var(--ui-weight-extrabold) !important;
    background: #f7f8fa !important;
    color: #48515c !important;
  }

  .dashboard-page .dashboard-notification-list{
    display: grid !important;
    gap: var(--ui-space-control) !important;
  }

  .dashboard-page .dashboard-notification{
    position: relative !important;
    display: grid !important;

    gap: 0 !important;

    padding: 0 !important;
    border-radius: var(--ui-radius-lg) !important;
    border: 1px solid rgba(17,24,39,.075) !important;
    background: var(--ui-white) !important;
    box-shadow: none !important;
    overflow: hidden !important;
    color: #111317 !important;
  }

  .dashboard-page .dashboard-notification__body{
    grid-column: 1 !important;
    display: flex !important;
    flex-direction: column !important;

    min-width: 0 !important;

  }

  .dashboard-page .dashboard-notification__type{
    align-self: flex-start !important;
    align-items: center !important;
    min-height: 22px !important;
    border: 0 !important;
    border-radius: var(--ui-radius-pill) !important;
    padding: 4px 9px !important;
    margin: 0 0 8px !important;
    font-size: .66rem !important;
    line-height: var(--ui-line-tight) !important;
    font-weight: var(--ui-weight-extrabold) !important;
    letter-spacing: -0.005em !important;
    background: #fff1f2 !important;
    color: #b42318 !important;
  }

  .dashboard-page .dashboard-notification__body strong{
    display: block !important;
    margin: 0 0 4px !important;
    color: #111317 !important;
    font-size: 1.00rem !important;
    line-height: 1.08 !important;
    letter-spacing: -0.014em !important;
    font-weight: 760 !important;
  }

  .dashboard-page .dashboard-notification__body em,
.dashboard-page .dashboard-notification__body p,
.dashboard-page .dashboard-notification__body span:not(.dashboard-notification__type){
    display: block !important;
    margin: 0 !important;
    color: var(--ui-muted-warm) !important;
    font-size: var(--ui-font-control) !important;
    line-height: 1.20 !important;
    font-style: normal;
    font-weight: var(--ui-weight-label) !important;
  }

  .dashboard-page .dashboard-notification__arrow{
    color: transparent !important;
    font-size: 0 !important;
    line-height: 0 !important;
  }

  .dashboard-page .dashboard-notification__arrow::after{
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-weight: var(--ui-weight-extrabold) !important;
  }
}

@media (max-width: 420px) {
  .dashboard-page .dashboard-notification__body{
    padding: 13px 10px 12px 14px !important;
  }

  .dashboard-page .dashboard-notification__type{
    min-height: 21px !important;
    padding: 4px 8px !important;
    font-size: .62rem !important;
    margin-bottom: 7px !important;
  }

  .dashboard-page .dashboard-notification__body strong{
    font-size: .92rem !important;
  }

  .dashboard-page .dashboard-notification__body em,
.dashboard-page .dashboard-notification__body p,
.dashboard-page .dashboard-notification__body span:not(.dashboard-notification__type){
    font-size: .75rem !important;
  }
}

@media (max-width: 760px) {
  .dashboard-page .dashboard-section--notifications .section-head .muted,
.dashboard-page .dashboard-notification__type{
    display: none !important;
  }

  .dashboard-page .dashboard-notification{
    grid-template-columns: minmax(0, 1fr) 44px !important;
    min-height: 82px !important;
    align-items: stretch !important;
  }

  .dashboard-page .dashboard-notification__body{
    justify-content: center !important;
    padding: 14px 12px 14px 16px !important;
  }

  .dashboard-page .dashboard-notification__body strong{
    margin-bottom: 5px !important;
  }

  .dashboard-page .dashboard-notification__arrow,
.dashboard-page .app-event-card__action{
    position: static !important;
    align-self: stretch !important;
    justify-self: stretch !important;
    width: var(--ui-size-touch) !important;
    min-width: var(--ui-size-touch) !important;
    height: auto !important;
    min-height: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    border-left: 1px solid rgba(17,24,39,.07) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-sizing: border-box !important;
  }

  .dashboard-page .app-event-card__open{
    width: var(--ui-size-touch) !important;
    min-width: var(--ui-size-touch) !important;
    height: 100% !important;
    min-height: 100% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
  }

  .dashboard-page .dashboard-notification__arrow::after,
.dashboard-page .app-event-card__open::after{
    position: static !important;
    inset: auto !important;
    width: auto !important;
    height: auto !important;
    display: block !important;
    font-size: 1.85rem !important;
    line-height: var(--ui-line-tight) !important;
    color: #7f8790 !important;
    transform: translateY(-1px) !important;
  }

  .dashboard-page .dashboard-notification__arrow{
    grid-column: 2 !important;
  }

  .dashboard-page .app-event-card__action{
    grid-row: 1 !important;

    border-left-color: rgba(17,24,39,.085);

    grid-column: 3 !important;

}

  .dashboard-page .dashboard-notification__arrow::after{
    content: "›" !important;
  }
}

@media (max-width: 420px) {
  .dashboard-page .dashboard-notification{
    grid-template-columns: minmax(0, 1fr) 40px !important;
    min-height: 78px !important;
  }

  .dashboard-page .dashboard-notification__arrow,
.dashboard-page .app-event-card__action,
.dashboard-page .app-event-card__open{
    width: 40px !important;
    min-width: 40px !important;
  }

  .dashboard-page .dashboard-notification__arrow::after,
.dashboard-page .app-event-card__open::after{
    font-size: 1.7rem !important;
  }
}

@media (max-width: 760px) {
  .dashboard-page .dashboard-section--notifications .section-head,
.dashboard-page #udalosti.dashboard-section--events .section-head,
.dashboard-page .dashboard-section--events .section-head{
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: var(--ui-space-lg) !important;
    width: 100% !important;
  }

  .dashboard-page .dashboard-section--notifications .section-head > div,
.dashboard-page #udalosti.dashboard-section--events .section-head > div,
.dashboard-page .dashboard-section--events .section-head > div{
    min-width: 0 !important;
    flex: 1 1 auto !important;
  }

  .dashboard-page .dashboard-section--notifications .section-head > .pill,
.dashboard-page #udalosti.dashboard-section--events .section-head > .pill,
.dashboard-page .dashboard-section--events .section-head > .pill{
    flex: 0 0 auto !important;
    margin-left: auto !important;
  }

  .dashboard-page .dashboard-section--notifications{
    border: 0 !important;
    border-bottom: 0 !important;
    box-shadow: none !important;
    background: transparent !important;
    padding-bottom: 0 !important;
  }

  .dashboard-page .dashboard-section--notifications::before,
.dashboard-page .dashboard-section--notifications::after{
    display: none !important;
    content: none !important;
  }

  .dashboard-page .dashboard-notification-list{
    border: 0 !important;
    border-bottom: 0 !important;
    box-shadow: none !important;
    padding-bottom: 0 !important;
  }

  .dashboard-page #udalosti.dashboard-section--events .app-event-card,
.dashboard-page .dashboard-section--events .app-event-card{
    display: grid !important;
    grid-template-columns: 7px minmax(0, 1fr) 44px !important;
    gap: 0 !important;
    align-items: stretch !important;
    width: 100% !important;
    min-height: 88px !important;
    padding: 0 !important;
    border-radius: var(--ui-radius-md) !important;
    overflow: hidden !important;
  }

  .dashboard-page #udalosti.dashboard-section--events .app-event-card__bar,
.dashboard-page .dashboard-section--events .app-event-card__bar{
    grid-column: 1 !important;
    grid-row: 1 !important;
    width: 7px !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 10px 0 !important;
    border-radius: 0 999px 999px 0 !important;
    position: static !important;
  }

  .dashboard-page #udalosti.dashboard-section--events .app-event-card__body,
.dashboard-page .dashboard-section--events .app-event-card__body{
    grid-column: 2 !important;
    grid-row: 1 !important;
    min-width: 0 !important;
    max-width: 100% !important;
    padding: 12px 10px 11px 13px !important;
    box-sizing: border-box !important;
  }

  .dashboard-page #udalosti.dashboard-section--events .app-event-card__action,
.dashboard-page .dashboard-section--events .app-event-card__action{
    grid-column: 3 !important;
    grid-row: 1 !important;
    position: static !important;
    align-self: stretch !important;
    justify-self: stretch !important;
    width: var(--ui-size-touch) !important;
    min-width: var(--ui-size-touch) !important;
    max-width: var(--ui-size-touch) !important;
    height: auto !important;
    min-height: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    border-left: 1px solid rgba(17,24,39,.07) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-sizing: border-box !important;
  }

  .dashboard-page #udalosti.dashboard-section--events .app-event-card__open,
.dashboard-page .dashboard-section--events .app-event-card__open{
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: var(--ui-size-touch) !important;
    min-width: var(--ui-size-touch) !important;
    height: 100% !important;
    min-height: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    color: transparent !important;
    font-size: 0 !important;
    line-height: 0 !important;
    overflow: hidden !important;
  }

  .dashboard-page #udalosti.dashboard-section--events .app-event-card__open::after,
.dashboard-page .dashboard-section--events .app-event-card__open::after{
    content: "›" !important;
    position: static !important;
    inset: auto !important;
    display: block !important;
    width: auto !important;
    height: auto !important;
    color: #7f8790 !important;
    font-size: 1.85rem !important;
    line-height: var(--ui-line-tight) !important;
    font-weight: var(--ui-weight-extrabold) !important;
    transform: translateY(-1px) !important;
  }
}

@media (max-width: 420px) {
  .dashboard-page #udalosti.dashboard-section--events .app-event-card,
.dashboard-page .dashboard-section--events .app-event-card{
    grid-template-columns: 7px minmax(0, 1fr) 40px !important;
  }

  .dashboard-page #udalosti.dashboard-section--events .app-event-card__action,
.dashboard-page .dashboard-section--events .app-event-card__action,
.dashboard-page #udalosti.dashboard-section--events .app-event-card__open,
.dashboard-page .dashboard-section--events .app-event-card__open{
    width: 40px !important;
    min-width: 40px !important;
    max-width: 40px !important;
  }

  .dashboard-page #udalosti.dashboard-section--events .app-event-card__open::after,
.dashboard-page .dashboard-section--events .app-event-card__open::after{
    font-size: 1.7rem !important;
  }
}

.dashboard-calendar-eos-head,
.dashboard-calendar-eos-toolbar,
.dashboard-calendar-scope-switch,
.dashboard-calendar-eos-navs{
  display: flex;
  align-items: center;
}

.dashboard-calendar-eos-head{
  justify-content: space-between;
  gap: var(--ui-space-xl);
  margin-bottom: 18px;
}

.dashboard-calendar-scope-switch{
  gap: var(--ui-space-sm);
  padding: var(--ui-space-2xs);
  border-radius: var(--ui-radius-pill);
  background: #f3f4f6;
}

.app-control-center{
  display:flex;
  align-items:center;
  justify-content:center;
}

.dashboard-calendar-scope-switch a{
  min-height: var(--ui-size-sm);
  padding: 0 12px;
  border-radius: var(--ui-radius-pill);
  color: var(--ui-muted-warm);
  font-weight: var(--ui-weight-extrabold);
  text-decoration: none;
}

.dashboard-calendar-scope-switch a.is-active{
  background: var(--ui-ink);
  color: var(--ui-white);
}

.dashboard-calendar-eos-toolbar{
  justify-content: space-between;
  gap: var(--ui-space-xl);
  margin-bottom: 20px;
}

.dashboard-calendar-eos-navs{
  gap: var(--ui-space-lg);
}

.dashboard-calendar-eos-nav{
  text-decoration: none;
  font-weight: var(--ui-weight-black);
}

@media (max-width: 760px) {
  .dashboard-page .dashboard-calendar-panel--mobile-eos{
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    overflow: visible !important;
  }

  .dashboard-page .dashboard-calendar-grid--eos{
    display: grid !important;
    grid-template-columns: repeat(7, minmax(0, 1fr)) !important;
    gap: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    overflow: visible !important;
  }

  .dashboard-page .dashboard-calendar-grid--eos .dashboard-calendar-weekday{
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    border: 0 !important;

    text-transform: none !important;
    letter-spacing: 0 !important;
  }

  .dashboard-page .dashboard-calendar-grid--eos .dashboard-calendar-day{
    position: relative !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;

    border-top: 1px solid #ececec !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    overflow: visible !important;
  }

  .dashboard-page .dashboard-calendar-grid--eos .dashboard-calendar-day.is-outside-month .dashboard-calendar-daynum{
    color: #c9c9c9 !important;
  }

  .dashboard-page .dashboard-calendar-grid--eos .dashboard-calendar-day.is-today{
    background: var(--ui-white) !important;
  }

  .dashboard-page .dashboard-calendar-grid--eos .dashboard-calendar-daynum{
    text-align: right !important;
  }

  .dashboard-page .dashboard-calendar-grid--eos .dashboard-calendar-items{
    display: flex !important;
    flex-direction: column !important;
    gap: 2px !important;
    overflow: visible !important;
  }

  .dashboard-page .dashboard-calendar-grid--eos .dashboard-calendar-item{
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;

    max-width: none !important;
    margin: 0 !important;

    border: 0 !important;

    box-shadow: none !important;
    text-decoration: none;
    overflow: hidden !important;
  }

  .dashboard-page .dashboard-calendar-grid--eos .dashboard-calendar-item__title{
    display: block !important;
    color: var(--ui-white) !important;

    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: clip !important;
  }

  .dashboard-page .dashboard-calendar-grid--eos .dashboard-calendar-item--training,
.dashboard-page .dashboard-calendar-grid--eos .dashboard-calendar-item--friendly,
.dashboard-page .dashboard-calendar-grid--eos .dashboard-calendar-item--event{
    background: #edb91f !important;
  }

  .dashboard-page .dashboard-calendar-grid--eos .dashboard-calendar-item--match{
    background: #e633cf !important;
  }

  .dashboard-page .dashboard-calendar-grid--eos .dashboard-calendar-item--tournament,
.dashboard-page .dashboard-calendar-grid--eos .dashboard-calendar-item--brigade,
.dashboard-page .dashboard-calendar-grid--eos .dashboard-calendar-item--maintenance,
.dashboard-page .dashboard-calendar-grid--eos .dashboard-calendar-item--mowing,
.dashboard-page .dashboard-calendar-grid--eos .dashboard-calendar-item--other{
    background: #3f3f3f !important;
  }
}

@media (max-width: 760px) {
  .dashboard-page .dashboard-calendar-eos-head{
    margin: 0 0 14px !important;
  }

  .dashboard-page 
  .dashboard-page .dashboard-calendar-scope-switch{
    gap: 3px !important;
    padding: 3px !important;
    background: #f4f5f7 !important;
    border-radius: var(--ui-radius-pill) !important;
  }

  .dashboard-page .dashboard-calendar-scope-switch a{
    min-height: 28px !important;
    padding: 0 10px !important;
    border-radius: var(--ui-radius-pill) !important;
    color: var(--ui-muted-warm) !important;
    font-size: .72rem !important;
    line-height: var(--ui-line-tight) !important;
    font-weight: var(--ui-weight-heavy) !important;
    transition: var(--ui-transition-tab) !important;
  }

  .dashboard-page .dashboard-calendar-scope-switch a:hover,
.dashboard-page .dashboard-calendar-scope-switch a:focus-visible{
    background: #e7e9ec !important;
    color: #303740 !important;
  }

  .dashboard-page .dashboard-calendar-scope-switch a.is-active{
    background: var(--ui-text) !important;
    color: var(--ui-white) !important;
  }

  .dashboard-page .dashboard-calendar-eos-toolbar{
    align-items: center !important;
    margin: 0 0 12px !important;
  }

  .dashboard-page .dashboard-calendar-eos-month{
    color: #111317 !important;
    font-size: 1.12rem !important;
    line-height: 1.06 !important;

  }

  .dashboard-page .dashboard-calendar-eos-navs{
    gap: var(--ui-space-sm) !important;
  }

  .dashboard-page .dashboard-calendar-eos-nav{
    width: var(--ui-size-md) !important;
    height: var(--ui-size-md) !important;
    border-radius: var(--ui-radius-pill) !important;
    color: #7f8790 !important;
    background: transparent !important;
    font-size: 1.75rem !important;
    line-height: var(--ui-line-tight) !important;
    font-weight: var(--ui-weight-bold) !important;
    transition: var(--ui-transition-tab) !important;
  }

  .dashboard-page .dashboard-calendar-eos-nav:hover,
.dashboard-page .dashboard-calendar-eos-nav:focus-visible{
    color: #4f5862 !important;
    background: #e6e8eb !important;
  }

  .dashboard-page .dashboard-calendar-grid--eos{
    border-top: 1px solid #e6e8eb !important;
    border-left: 1px solid #e6e8eb !important;
    background: var(--ui-white) !important;
  }

  .dashboard-page .dashboard-calendar-grid--eos .dashboard-calendar-weekday{
    min-height: 38px !important;
    padding: 12px 0 9px !important;
    border-right: 1px solid #e6e8eb !important;
    border-bottom: 1px solid #e6e8eb !important;
    background: var(--ui-white) !important;
    color: #747c85 !important;
    font-size: var(--ui-font-control) !important;
    line-height: var(--ui-line-tight) !important;
    font-weight: var(--ui-weight-semibold) !important;
  }

  .dashboard-page .dashboard-calendar-grid--eos > :nth-child(7n + 6),
.dashboard-page .dashboard-calendar-grid--eos > :nth-child(7n){
    background: #f6f7f8 !important;
  }

  .dashboard-page .dashboard-calendar-grid--eos > .dashboard-calendar-weekday:nth-child(6),
.dashboard-page .dashboard-calendar-grid--eos > .dashboard-calendar-weekday:nth-child(7){
    color: #939aa2 !important;
  }

  .dashboard-page .dashboard-calendar-grid--eos .dashboard-calendar-day{
    min-height: 76px !important;
    height: 76px !important;
    padding: 7px 2px 4px !important;
    border: 0 !important;
    border-right: 1px solid #e6e8eb !important;
    border-bottom: 1px solid #e6e8eb !important;
    background: var(--ui-white) !important;
  }

  .dashboard-page .dashboard-calendar-grid--eos .dashboard-calendar-day.is-outside-month{
    background: #fafafa !important;
  }

  .dashboard-page .dashboard-calendar-grid--eos .dashboard-calendar-day.is-today{
    outline: 1px solid #8a9097 !important;
    outline-offset: -2px !important;
  }

  .dashboard-page .dashboard-calendar-grid--eos .dashboard-calendar-daynum{
    margin: 0 5px 5px 0 !important;
    color: #6f7780 !important;
    font-size: var(--ui-font-control) !important;
    line-height: var(--ui-line-tight) !important;
    font-weight: 580 !important;
  }

  .dashboard-page .dashboard-calendar-grid--eos > :nth-child(7n + 6) .dashboard-calendar-daynum,
.dashboard-page .dashboard-calendar-grid--eos > :nth-child(7n) .dashboard-calendar-daynum{
    color: #969da5 !important;
  }

  .dashboard-page .dashboard-calendar-grid--eos .dashboard-calendar-item{
    min-height: 17px !important;
    height: 17px !important;
    padding: 0 4px !important;
    border-radius: 4px !important;
    transition: filter .15s ease, opacity .15s ease !important;
  }

  .dashboard-page .dashboard-calendar-grid--eos .dashboard-calendar-item:hover,
.dashboard-page .dashboard-calendar-grid--eos .dashboard-calendar-item:focus-visible{
    filter: brightness(.94) !important;
    opacity: .92 !important;
  }

  .dashboard-page .dashboard-calendar-grid--eos .dashboard-calendar-item__title{
    font-size: .64rem !important;
    line-height: 17px !important;
    font-weight: var(--ui-weight-strong) !important;
  }
}

@media (max-width: 420px) {
  .dashboard-page 
  .dashboard-page .dashboard-calendar-eos-month{
    font-size: var(--ui-font-body) !important;
  }

  .dashboard-page .dashboard-calendar-eos-nav{
    width: var(--ui-size-sm) !important;
    height: var(--ui-size-sm) !important;
    font-size: 1.6rem !important;
  }

  .dashboard-page .dashboard-calendar-grid--eos .dashboard-calendar-weekday{
    min-height: 35px !important;
    padding: 11px 0 8px !important;
    font-size: .75rem !important;

}

  .dashboard-page .dashboard-calendar-grid--eos .dashboard-calendar-day{
    min-height: 68px !important;
    height: 68px !important;
    padding: 6px 1px 3px !important;
  }

  .dashboard-page .dashboard-calendar-grid--eos .dashboard-calendar-daynum{
    font-size: .75rem !important;
    margin-right: 4px !important;
  }

  .dashboard-page .dashboard-calendar-grid--eos .dashboard-calendar-item{
    border-radius: 4px !important;

    min-height: 15px !important;
    height: 15px !important;
    padding: 0 3px !important;

}

  .dashboard-page .dashboard-calendar-grid--eos .dashboard-calendar-item__title{
    font-size: .57rem !important;
    line-height: 15px !important;
  }
}

@media (max-width: 760px) {
  .dashboard-page .dashboard-calendar-eos-month{
    font-weight: var(--ui-weight-medium) !important;
    letter-spacing: -0.006em !important;
  }

  .dashboard-page .dashboard-section--calendar{
    margin-top: 18px !important;
    padding-bottom: 0 !important;
  }

  .dashboard-page .dashboard-section--teams{
    margin-top: 22px !important;
  }
}

@media (max-width: 420px) {
  .dashboard-page .dashboard-calendar-eos-month{
    font-weight: var(--ui-weight-medium) !important;
  }
}

@media (max-width: 760px) {
  .dashboard-page .app-event-card__count{
    flex: 0 0 auto !important;
  }

  .dashboard-page .app-event-card__attendance{
    flex: 1 1 auto !important;
    min-width: 0 !important;
    width: auto !important;
    max-width: none !important;
    margin: 0 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    justify-content: center !important;
  }
}

@media (max-width: 420px) {
  .dashboard-page .app-event-card__count{
    padding-left: 5px !important;
    padding-right: 5px !important;
  }

  .dashboard-page .app-event-card__attendance{
    font-size: .58rem !important;
    padding-left: 5px !important;
    padding-right: 5px !important;
  }
}

.app-event-card__statusbox{
  gap: var(--ui-space-sm);
  min-width: 0;
}

.app-event-card__count-icon--player::before{
  content: "";
  position: absolute;
  left: 4px;
  top: 1px;
  width: 5px;
  height: 5px;
  border-radius: var(--ui-radius-pill);
  background: currentColor;
}

.app-event-card__count-icon--player::after{
  content: "";
  position: absolute;
  left: 1px;
  top: 8px;
  width: 11px;
  height: 5px;
  border-radius: 8px 8px 3px 3px;
  background: currentColor;
}

.app-event-card__count-icon--coach::before{
  content: "♛";
  position: absolute;
  inset: -2px 0 0;
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 14px;
  line-height: 14px;
  font-weight: var(--ui-weight-black);
  color: currentColor;
}

@media (max-width: 760px) {
  .dashboard-page .app-event-card__statusbox{
    display: flex !important;
    align-items: center !important;
    gap: var(--ui-space-xs) !important;
    flex-wrap: nowrap !important;
    width: 100% !important;
    min-width: 0 !important;
    margin-top: 5px !important;
    overflow: hidden !important;
  }

  .dashboard-page .app-event-card__statusbox .app-event-card__count{
    flex: 0 0 auto !important;
    margin: 0 !important;
  }

  .dashboard-page .app-event-card__statusbox .app-event-card__attendance{
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 1 1 auto !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    margin: 0 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }

  .dashboard-page .app-event-card__count-icon{
    position: relative !important;
    display: inline-block !important;
    width: 13px !important;
    height: 13px !important;
    flex: 0 0 13px !important;
    color: #5d646d !important;
    font-size: 0 !important;
    line-height: 0 !important;
  }

}

@media (max-width: 420px) {
  .dashboard-page .app-event-card__statusbox{
    gap: var(--ui-space-2xs) !important;
  }

  .dashboard-page .app-event-card__statusbox .app-event-card__count{
    padding-left: 5px !important;
    padding-right: 5px !important;
  }

  .dashboard-page .app-event-card__statusbox .app-event-card__attendance{
    font-size: .58rem !important;
    padding-left: 5px !important;
    padding-right: 5px !important;
  }
}

.app-event-card__datebox{
  display: flex;
  align-items: center;
  gap: var(--ui-space-compact);
  min-width: 0;
  flex-wrap: wrap;
}

.app-event-card__datebox .app-event-card__datetime,
.app-event-card__datebox .app-event-card__meta{
  display: inline;
  margin: 0;
}

.app-event-card__datebox .app-event-card__meta::before{
  content: "|";
  margin-right: 7px;
  color: currentColor;
  opacity: .75;
}

@media (max-width: 760px) {
  .dashboard-page .app-event-card__datebox{
    display: flex !important;
    align-items: center !important;
    gap: 0 !important;
    flex-wrap: nowrap !important;
    width: 100% !important;
    min-width: 0 !important;
    overflow: hidden !important;
    margin: 0 !important;
  }

  .dashboard-page .app-event-card__datebox .app-event-card__datetime{
    flex: 0 1 auto !important;
    min-width: 0 !important;
    margin: 0 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }

  .dashboard-page .app-event-card__datebox .app-event-card__meta{
    flex: 0 0 auto !important;
    max-width: 42% !important;
    margin: 0 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }

  .dashboard-page .app-event-card__datebox .app-event-card__meta::before{
    content: "|" !important;
    margin: 0 6px !important;
    color: #a0a7b0 !important;
    font-weight: var(--ui-weight-semibold) !important;
    opacity: 1 !important;
  }
}

@media (max-width: 420px) {
  .dashboard-page .app-event-card__datebox .app-event-card__meta{
    max-width: 36% !important;
  }

  .dashboard-page .app-event-card__datebox .app-event-card__meta::before{
    margin: 0 5px !important;
  }
}

@media (max-width: 760px) {
  .dashboard-page .dashboard-calendar-grid--eos .dashboard-calendar-day.is-weekend,
.dashboard-page .dashboard-calendar-grid--eos .dashboard-calendar-weekday:nth-child(6),
.dashboard-page .dashboard-calendar-grid--eos .dashboard-calendar-weekday:nth-child(7){
    background: #f3f4f5 !important;
  }

  .dashboard-page .dashboard-calendar-grid--eos .dashboard-calendar-day.is-weekend.is-outside-month{
    background: #f7f7f8 !important;
  }

  .dashboard-page .dashboard-calendar-grid--eos .dashboard-calendar-day.has-events{
    cursor: pointer;
  }

  .dashboard-page .dashboard-calendar-grid--eos .dashboard-calendar-day.has-events:hover,
.dashboard-page .dashboard-calendar-grid--eos .dashboard-calendar-day.has-events:focus-within{
    background: #eef0f2 !important;
  }

  .dashboard-page .dashboard-calendar-item{
    appearance: none !important;
    border: 0 !important;
    width: 100% !important;
    text-align: center !important;
    cursor: pointer;
  }
}

.calendar-day-modal[hidden]{
  display: none !important;
}

.app-modal-overlay{
  position:fixed;
  inset:0;
  z-index:9999;
}

.calendar-day-modal__backdrop{
  position: absolute;
  inset: 0;
  background: rgba(15, 23, 42, .42);
  backdrop-filter: blur(2px);
}

.calendar-day-modal__dialog{
  position: absolute;
  left: 50%;
  top: 50%;
  width: min(92vw, 430px);
  max-height: min(78vh, 620px);
  transform: translate(-50%, -50%);
  border-radius: 24px;
  background: var(--ui-white);
  box-shadow: 0 28px 80px rgba(15, 23, 42, .28);
  overflow: hidden;
  display: flex;
  flex-direction: column;
}

.calendar-day-modal__close{
  position: absolute;
  right: 12px;
  top: 10px;
  width: var(--ui-size-control);
  height: var(--ui-size-control);
  border: 0;
  border-radius: var(--ui-radius-pill);
  background: #f1f3f5;
  color: #4b5563;
  font-size: 1.45rem;
  line-height: var(--ui-line-tight);
  font-weight: var(--ui-weight-bold);
  cursor: pointer;
}

.calendar-day-modal__close:hover,
.calendar-day-modal__close:focus-visible{
  background: #e5e7eb;
}

.calendar-day-modal__head{
  padding: 22px 56px 16px 20px;
  border-bottom: 1px solid rgba(17, 24, 39, .08);
  display: flex;
  flex-direction: column;
  gap: var(--ui-space-2xs);
}

.calendar-day-modal__head strong{
  color: #111317;
  font-size: 1.14rem;
  line-height: var(--ui-line-snug);
  font-weight: var(--ui-weight-extrabold);
}

.calendar-day-modal__head span{
  color: var(--ui-muted-warm);
  line-height: var(--ui-line-control);
}

.calendar-day-modal__items{
  padding: var(--ui-space-xl);
  overflow: auto;
  display: grid;
}

.calendar-day-modal-card{
  position: relative;
  display: grid;
  grid-template-columns: 7px minmax(0, 1fr) 40px;
  min-height: 78px;
  overflow: hidden;
  border-radius: var(--ui-radius-lg);
  background: var(--ui-white);
  border: 1px solid rgba(17, 24, 39, .09);
  color: inherit;
  text-decoration: none;
}

.calendar-day-modal-card__bar{
  grid-column: 1;
  margin: 10px 0;
  border-radius: 0 999px 999px 0;
  background: #e3b11d;
}

.calendar-day-modal-card--match .calendar-day-modal-card__bar{
  background: #333842;
}

.calendar-day-modal-card--tournament .calendar-day-modal-card__bar{
  background: #db35d0;
}

.calendar-day-modal-card__body{
  grid-column: 2;
  padding: 13px 10px 12px 13px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-width: 0;
}

.calendar-day-modal-card__body strong{
  color: #111317;
  letter-spacing: -0.014em;
}

.calendar-day-modal-card__body em{
  margin-top: 5px;
  color: var(--ui-muted-warm);
  font-style: normal;
  font-weight: var(--ui-weight-label);
}

.calendar-day-modal-card__arrow{
  grid-column: 3;
  border-left: 1px solid rgba(17, 24, 39, .07);
  color: #7f8790;
  font-size: 1.7rem;
  line-height: var(--ui-line-tight);
  font-weight: var(--ui-weight-extrabold);
}

.calendar-day-modal-open{
  overflow: hidden !important;
}

@media (max-width: 420px) {
  .calendar-day-modal__dialog{
    width: calc(100vw - 26px);
    max-height: 80vh;
    border-radius: 22px;
  }

  .calendar-day-modal__head{
    padding-left: 18px;
  }

  .calendar-day-modal-card__body strong{
    font-size: .92rem;
  }

  .calendar-day-modal-card__body em{
    font-size: .73rem;
  }
}

.dashboard-page .dashboard-section--notifications{
  display: none !important;
}

.event-map-link{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: var(--ui-size-md);
  border-radius: var(--ui-radius-pill);
  padding: var(--ui-inset-7-12);
  background: #f1f5f9;
  color: var(--ui-ink);
  font-weight: var(--ui-weight-black-soft);
  text-decoration: none;
}

.event-map-link:hover,
.event-map-link:focus-visible{
  background: #e5e7eb;
  color: var(--ui-black);
}

.event-summary-edit-button{
  z-index: 2;
}

@media (min-width: 761px) {
  .event-summary-card__body{
    padding-right: 190px;
  }
}

.event-edit-form input[name="map_url"]{
  font-family: inherit;
}

.event-map-box{
  display: grid;
  gap: var(--ui-space-lg);
  margin-top: 16px;
}

.event-map-link--button{
  justify-self: start;
  min-height: var(--ui-size-lg);
  padding: 10px 16px;
  border-radius: var(--ui-radius-lg);
  background: var(--ui-text);
  color: var(--ui-white);
  box-shadow: 0 10px 22px rgba(15, 23, 42, .14);
}

.event-map-link--button:hover,
.event-map-link--button:focus-visible{
  background: var(--ui-ink);
  color: var(--ui-white);
}

@media (max-width: 760px) {
  .event-map-box{
    margin-top: 14px;
    gap: var(--ui-space-control);
  }

  .event-map-link--button{
    width: 100%;
    justify-self: stretch;
  }
}

.event-map-placeholder{
  display: grid;
  gap: var(--ui-space-xs);
  border-radius: 18px;
  border: 1px solid rgba(15, 23, 42, .10);
  background: linear-gradient(135deg, var(--ui-surface-light), #eef2f7);
  padding: 16px;
}

.event-map-placeholder strong{
  color: var(--ui-ink);
  font-size: 1.05rem;
  line-height: var(--ui-line-compact);
  font-weight: var(--ui-weight-black-soft);
}

@media (max-width: 760px) {
  .event-map-placeholder{
    border-radius: var(--ui-radius-xl);
    padding: var(--ui-space-xl);
  }

  .event-map-placeholder strong{
    font-size: .98rem;
  }

  .event-map-placeholder span{
    font-size: .84rem;
  }
}

.event-map-box--leaflet{
  display: grid;
  gap: var(--ui-space-lg);
  margin-top: 16px;
}

.event-map-leaflet{
  width: 100%;
  height: 320px;
  min-height: 260px;
  overflow: hidden;
  border-radius: 20px;
  border: 1px solid rgba(15, 23, 42, .10);
  background: #f3f4f6;
  z-index: 0;
}

.event-map-leaflet .leaflet-control-container img{
  max-width: none;
}

.event-mapy-logo{
  padding: 0 0 4px 4px;
}

.event-mapy-logo img{
  display: block;
  width: 86px;
  height: auto;
}

@media (max-width: 760px) {
  .event-map-box--leaflet{
    margin-top: 14px;
    gap: var(--ui-space-control);
  }

  .event-map-leaflet{
    height: 260px;
    min-height: 220px;
    border-radius: var(--ui-radius-xl);
  }
}

.event-map-placeholder span{
  color: var(--ui-muted);
  font-size: .92rem;
  line-height: var(--ui-line-label);
  font-weight: var(--ui-weight-semibold);
  display: block;
  margin-top: 4px;
}

body,
.app-shell,
.dashboard-page,
.event-page,
.admin-page,
.team-tabs,
.team-panel,
.event-panel,
.list-card,
.team-card,
.event-summary-card,
.dashboard-calendar-panel,
.calendar-day-modal,
input,
select,
textarea,
button,
.btn{
  font-size: var(--app-font-size-base);
  line-height: 1.35;
}

.team-hero h1,
.event-topbar h1,
.event-summary-card h2,
.admin-hero h1,
.dashboard-section > .section-head h2,
.team-panel > .section-head h2,
.event-panel h3{
  font-size: var(--app-font-size-title);
  line-height: 1.12;
  font-weight: var(--ui-weight-black-soft);
  letter-spacing: -0.02em;
}

.section-head h2,
.event-panel h3,
.team-panel h2,
.admin-panel h2,
.card h2{
  font-size: var(--app-font-size-heading);
  line-height: var(--ui-line-compact);
  font-weight: var(--ui-weight-black-soft);
  letter-spacing: -0.01em;
}

.dashboard-notification__body strong,
.calendar-day-modal-card__body strong,
.team-event-card__main h3,
.list-card__top strong,
.team-card h3,
.event-info-row strong,
.attendance-status-card strong,
.event-row strong,
.admin-pending-card strong{
  font-size: var(--app-font-size-base);
  line-height: var(--ui-line-label);
  font-weight: 800;
}

.muted,
small,
.event-summary-card p,
.app-event-card__datetime,
.app-event-card__meta,
.app-event-card__attendance,
.app-event-card__count,
.dashboard-notification__body em,
.calendar-day-modal-card__body em,
.event-info-row span,
.attendance-status-card small,
.team-event-card__date,
.team-event-card__main p,
.list-card p,
.status-badge,
.pill{
  font-size: var(--app-font-size-small);
  line-height: 1.3;
}

.pill,
.status-badge,
.app-event-card__attendance,
.dashboard-notification__type,
.event-summary-badges .pill,
.team-tab .pill,
.calendar-day-modal__head span{
  font-size: var(--app-font-size-small);
  font-weight: var(--ui-weight-black-soft);
  letter-spacing: 0;
}

input,
select,
textarea{
  font-size: var(--app-font-size-base);
  line-height: var(--ui-line-label);
}

.btn,
button,
.attendance-btn,
.event-map-link--button{
  font-size: var(--app-font-size-base);
  font-weight: var(--ui-weight-black-soft);
  line-height: var(--ui-line-control);
}

.app-event-card,
.dashboard-notification,
.team-event-card,
.list-card,
.event-panel,
.team-panel,
.admin-panel,
.card{
  border-radius: 16px;
}

.event-summary-card__body h2,
.team-event-card__main h3{
  margin-top: 0;
}

.event-summary-card h2{
  font-size: var(--app-font-size-title);
}

.event-summary-card p{
  font-weight: var(--ui-weight-strong);
}

.event-summary-badges{
  gap: var(--ui-space-md);
}

.event-info-row{
  padding-left:18px;
  padding-right:18px;
  gap: var(--ui-space-lg);
}

.event-info-row span,
.event-info-row strong{
  font-size: var(--app-font-size-base);
}

.event-info-row span{
  color: var(--ui-muted);
  font-weight: var(--ui-weight-strong);
}

.event-info-row strong{
  text-align: right;
}

.attendance-status-card,
.event-attendance-actions,
.attendance-child-block,
.event-row{
  font-size: var(--app-font-size-base);
}

.attendance-status-actions span{
  font-size: var(--app-font-size-base);
  font-weight: var(--ui-weight-black-soft);
}

.attendance-btn{
  min-height: 48px;
}

.dashboard-calendar-eos-month{
  font-size: var(--app-font-size-base);
  font-weight: var(--ui-weight-strong);
}

.dashboard-calendar-daynum{
  font-size: var(--app-font-size-small);
}

.dashboard-calendar-item{
  font-size: var(--app-font-size-small);
  font-weight: var(--ui-weight-extrabold);
}

@media (max-width: 760px) {
  body,
.app-shell,
.dashboard-page,
.event-page,
.admin-page,
input,
select,
textarea,
button,
.btn{
    font-size: var(--app-font-size-base);
  }

  .team-hero h1,
.event-topbar h1,
.event-summary-card h2,
.admin-hero h1{
    font-size: var(--app-font-size-title);
  }

  .section-head h2,
.event-panel h3,
.team-panel h2,
.admin-panel h2,
.card h2{
    font-size: var(--app-font-size-heading);
  }

  .team-event-card__main h3,
.list-card__top strong,
.event-info-row strong,
.attendance-status-card strong,
.event-row strong{
    font-size: var(--app-font-size-base);
  }

  .muted,
small,
.pill,
.status-badge,
.event-summary-card p,
.app-event-card__datetime,
.app-event-card__meta,
.app-event-card__attendance,
.app-event-card__count,
.event-info-row span,
.attendance-status-card small{
    font-size: var(--app-font-size-small);
  }

  .event-info-row span,
.event-info-row strong{
    font-size: var(--app-font-size-base);
  }

  .team-tabs{
    font-size: var(--app-font-size-small);
  }

  .team-tab{
    font-weight: var(--ui-weight-black-soft);
  }
}

.event-page .event-back::before{
  display: block;
}

@media (max-width: 760px) {
  .event-page .event-topbar{
    padding: 0 10px !important;
  }

  .event-page .event-back{
    width: var(--ui-size-md) !important;
    height: var(--ui-size-md) !important;
  }

  .event-page .event-back::before{
    font-size: 30px;
  }

  .event-page .event-topbar h1{
    font-size: 16px !important;
  }

  .event-page .attendance-status-card{
    padding: 13px 14px !important;
    border-radius: var(--ui-radius-lg) !important;
    display: grid !important;

  }

  .event-page .attendance-status-card small{
    max-width: 125px;
    font-size: var(--ui-font-sm) !important;
    line-height: var(--ui-line-compact) !important;
  }

  .event-page .attendance-status-actions span,
.event-page .attendance-status-actions .btn{
    min-height: var(--ui-size-sm);
    padding: var(--ui-inset-7-12);
    font-size: var(--ui-font-sm) !important;
  }

}

.event-page .app-shell,
.event-page .event-topbar,
.event-page .event-summary-card,
.event-page .event-tabs,
.event-page .event-panel{
  width: min(100% - calc(var(--app-page-gap-x) * 2), 760px) !important;
  max-width: 760px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.event-page .event-topbar{
  gap: 0 !important;
  margin-top: 0 !important;
  margin-bottom: var(--app-page-gap-y) !important;
}

.event-page .event-summary-card{
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

.event-page .event-tabs,
.event-page .event-panel{
  margin-top: 0 !important;
  margin-bottom: var(--app-page-gap-y) !important;
}

.event-page .event-topbar{
  display: grid !important;
  grid-template-columns: 42px 1fr 42px !important;
  align-items: center !important;
  min-height: 54px !important;
  padding: 0 12px !important;
  background: #202020 !important;
  box-shadow: 0 8px 18px rgba(15, 23, 42, .18) !important;
}

.event-page .event-back{
  line-height: var(--ui-line-tight) !important;
  width: var(--ui-size-md) !important;
  height: var(--ui-size-md) !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  border-radius: var(--ui-radius-pill) !important;
  color: var(--ui-white) !important;
  background: transparent !important;
  box-shadow: none !important;
  text-decoration: none;
  font-size: 0 !important;
}

.event-page .event-back::before{
  content: "‹";
  font-size: 30px;
  line-height: var(--ui-line-tight);
  font-weight: var(--ui-weight-medium);
  transform: translateY(-1px);
}

.event-page .event-topbar h1{
  grid-column: 2;
  margin: 0 !important;
  text-align: center !important;
  font-size: 16px !important;
  line-height: var(--ui-line-compact) !important;
  font-weight: var(--ui-weight-black-soft) !important;
}

.event-page .attendance-status-card{
  border: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
  border-radius: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  align-items: center !important;
  gap: var(--ui-space-lg) !important;
}

.event-page .attendance-status-card::before,
.event-page .attendance-status-card::after{
  display: none !important;
  content: none !important;
}

.event-page .attendance-status-card > div:first-child{
  min-width: 0;
}

.event-page .attendance-status-card strong{
  display: block;
  margin: 0 0 3px !important;

  line-height: 1.18 !important;
  font-weight: var(--ui-weight-black-soft) !important;
}

.event-page .attendance-status-card small{
  display: block;
  max-width: none !important;
  color: var(--ui-muted) !important;

  line-height: var(--ui-line-control) !important;
  font-weight: var(--ui-weight-strong) !important;
}

.event-page .attendance-status-actions{
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  flex-wrap: nowrap !important;
  gap: var(--ui-space-md) !important;
  margin-left: auto !important;
}

.event-page .attendance-status-actions span{
  min-width: 82px !important;
  min-height: var(--ui-size-md) !important;
  padding: var(--ui-inset-7-12) !important;
  border-radius: var(--ui-radius-pill) !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: var(--ui-font-sm) !important;
  line-height: var(--ui-line-tight) !important;
  font-weight: var(--ui-weight-black-soft) !important;
}

.event-page .attendance-status-actions .btn{
  min-height: var(--ui-size-md) !important;
  padding: var(--ui-inset-7-12) !important;
  border-radius: var(--ui-radius-pill) !important;
  white-space: nowrap !important;
  font-size: var(--ui-font-sm) !important;
  line-height: var(--ui-line-tight) !important;
  font-weight: var(--ui-weight-black-soft) !important;
}

.event-page .event-panel .attendance-status-card,
.event-page .event-panel .event-row,
.event-page .event-panel .event-attendance-actions,
.event-page .event-panel .attendance-child-block{
  border-top: 0 !important;
  border-bottom: 0 !important;
}

.event-page .event-panel hr,
.event-page .attendance-status-card + hr,
.event-page .event-row + hr{
  display: none !important;
}

.event-page .event-panel > .attendance-status-card:first-child:last-child{
  padding: 0 !important;
}

@media (max-width: 760px) {
  .event-page .app-shell,
.event-page .event-topbar,
.event-page .event-summary-card,
.event-page .event-tabs,
.event-page .event-panel{
    width: calc(100% - calc(var(--app-page-gap-x) * 2)) !important;
    max-width: none !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .event-page .event-topbar{
    min-height: 54px !important;
    margin-bottom: var(--app-page-gap-y) !important;
  }

  .event-page .event-summary-card{
    margin-bottom: 0 !important;
  }

  .event-page .event-tabs{
    margin-bottom: var(--app-page-gap-y) !important;
  }

  .event-page .event-panel{
    border-radius: 14px !important;
  }

  .event-page .attendance-status-card{
    grid-template-columns: minmax(0, 1fr) auto !important;
    gap: var(--ui-space-control) !important;
  }

  .event-page .attendance-status-actions{
    gap: var(--ui-space-compact) !important;
  }

  .event-page .attendance-status-actions span{
    min-width: 78px !important;
  }
}

@media (max-width: 390px) {
    :root{
    --app-page-gap-x: 16px;
    --app-shell-side-gap: 0px;
    --app-shell-block-gap: 1px;
    --app-panel-inner-gap: 3px;
  }

  .event-page .attendance-status-card{
    grid-template-columns: 1fr !important;
    align-items: start !important;
  }

  .event-page .attendance-status-actions{
    justify-content: flex-start !important;
    margin-left: 0 !important;
  }
}

.app-shell.event-page .event-summary-card{
  margin-bottom: 0 !important;
}

.app-shell.event-page .event-summary-card + .event-tabs{
  margin-top: 0 !important;
}

.dashboard-section .dashboard-calendar-panel,
.dashboard-section .team-grid,
.team-panel,
.event-panel,
.admin-panel,
.card{
  border-radius: var(--app-panel-radius) !important;
}

.app-shell.event-page .attendance-status-card::before,
.app-shell.event-page .attendance-status-card::after{
  display: none !important;
  content: none !important;
}

.app-shell.event-page .event-panel .attendance-status-card,
.app-shell.event-page .event-panel .event-row,
.app-shell.event-page .event-panel .event-attendance-actions,
.app-shell.event-page .event-panel .attendance-child-block{
  border-top: 0 !important;
  border-bottom: 0 !important;
}

.app-shell.event-page .event-panel hr{
  display: none !important;
}

@media (max-width: 760px) {
  .app-shell.event-page .event-topbar,
.app-shell.event-page .event-summary-card,
.app-shell.event-page .event-tabs,
.app-shell.event-page .event-panel{
    width: 100% !important;
    max-width: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  .app-shell.event-page .event-panel{
    padding: var(--ui-space-xl) !important;
  }
}

.dashboard-section .section-head,
.team-panel .section-head,
.admin-panel .section-head{
  margin-bottom: 10px !important;
}

.list-cards,
.team-grid,
.calendar-day-modal__items{
  gap: var(--ui-space-control) !important;
}

.event-info-row{
  min-height: 38px;
  padding-top: 8px !important;
  padding-bottom: 8px !important;
}

.app-shell.event-page .attendance-status-card{
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  padding: 0 !important;
  margin: 0 !important;
  border-radius: 0 !important;
  gap: var(--ui-space-control) !important;
}

.app-shell.event-page .attendance-status-actions{
  gap: var(--ui-space-compact) !important;
}

@media (max-width: 760px) {
  .list-cards,
.team-grid{
    gap: var(--ui-space-control) !important;
  }
}

.event-page .attendance-window-info{
  margin: 0 0 8px !important;
  padding: var(--ui-inset-9-10) !important;
  border-radius: var(--ui-radius-sm) !important;
  font-size: var(--ui-font-sm) !important;
  line-height: var(--ui-line-label) !important;
}

.event-page .attendance-status-card{
  margin-bottom: 8px !important;
}

.event-page .attendance-status-card strong{
  font-size: var(--ui-font-md) !important;
}

.event-page .attendance-status-card small{
  font-size: var(--ui-font-xs) !important;
}

.event-page .event-attendance-actions,
.event-page .event-attendance-actions--child{
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: var(--ui-space-compact) !important;
  padding: 8px 0 0 !important;
  align-items: stretch !important;
}

.event-page .event-attendance-actions .attendance-form{
  display: block !important;
  min-width: 0 !important;
}

.event-page .event-attendance-actions .attendance-btn,
.event-page .event-attendance-actions > .attendance-btn{
  width: 100% !important;
  min-width: 0 !important;
  min-height: 38px !important;
  padding: 8px 6px !important;
  border-radius: 11px !important;
  font-size: var(--ui-font-sm) !important;
  line-height: var(--ui-line-tight) !important;
  white-space: nowrap !important;
}

.event-page .attendance-btn::before{
  width: 18px !important;
  height: 18px !important;
  font-size: var(--ui-font-xs) !important;
  margin-right: 5px !important;
}
.attendance-reason-modal[hidden]{
  display: none !important;
}

.attendance-reason-modal__backdrop{
  position: absolute;
  inset: 0;
  background: rgba(15, 23, 42, .48);
}

.attendance-reason-modal__dialog{
  position: relative;
  width: min(calc(100% - 28px), 420px);
  margin: 12vh auto 0;
  border-radius: 18px;
  background: var(--ui-white);
  box-shadow: 0 22px 60px rgba(15, 23, 42, .26);
  padding: 16px;
}

.attendance-reason-modal__close{
  position: absolute;
  top: 10px;
  right: 10px;
  width: var(--ui-size-md);
  height: var(--ui-size-md);
  border: 0;
  border-radius: var(--ui-radius-pill);
  background: #f1f5f9;
  color: #0f172a;
  font-size: 22px;
  line-height: var(--ui-line-tight);
  font-weight: var(--ui-weight-bold);
}

.attendance-reason-modal__head{
  display: grid;
  gap: var(--ui-space-2xs);
  padding-right: 38px;
  margin-bottom: 14px;
}

.attendance-reason-modal__head strong{
  font-size: 18px;
  line-height: var(--ui-line-compact);
  font-weight: var(--ui-weight-black-soft);
}

.attendance-reason-modal__head span{
  color: var(--ui-muted);
  font-size: var(--ui-font-md);
  line-height: 1.3;
  font-weight: var(--ui-weight-strong);
}

.attendance-reason-modal__form{
  display: grid;
  gap: var(--ui-space-control);
}

.attendance-reason-modal__form label{
  font-size: var(--ui-font-sm);
  font-weight: var(--ui-weight-black-soft);
  color: #334155;
}

.attendance-reason-modal__form input{
  width: 100%;
  min-height: var(--ui-size-touch);
  border-radius: var(--ui-radius-md);
  border: 1px solid #cbd5e1;
  padding: var(--ui-inset-10-12);
  font-size: 14px;
}

body.attendance-reason-modal-open{
  overflow: hidden;
}

@media (max-width: 420px) {
  .event-page .event-attendance-actions,
.event-page .event-attendance-actions--child{
    gap: var(--ui-space-xs) !important;
  }

  .event-page .event-attendance-actions .attendance-btn,
.event-page .event-attendance-actions > .attendance-btn{
    font-size: var(--ui-font-xs) !important;
    min-height: var(--ui-size-control) !important;
    padding: 7px 4px !important;
  }

  .event-page .attendance-btn::before{
    width: 16px !important;
    height: 16px !important;
    margin-right: 4px !important;
  }

  .attendance-reason-modal__dialog{
    width: calc(100% - 20px);
    margin-top: 10vh;
    padding: var(--ui-space-xl);
    border-radius: var(--ui-radius-xl);
  }
}

.event-page .event-tab{
  padding: 0 8px !important;
  display: inline-flex !important;
  gap: var(--ui-space-xs) !important;
  text-align: center !important;
}

.event-page .event-tab::after{
  display: none !important;
  content: none !important;
}

.event-page .event-tab .pill,
.event-page .event-tab span,
.event-page .event-tab strong{
  flex: 0 0 auto !important;
  line-height: var(--ui-line-tight) !important;
}

.event-page .event-tab .pill{
  margin-left: 1px !important;
  transform: none !important;
}

@media (max-width: 760px) {
  .event-page .event-tab .pill{
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
  }
}

@media (max-width: 370px) {
  .event-page .event-tab{
    font-size: 10px !important;
    padding: 0 3px !important;
    gap: 3px !important;
  }

  .event-page .event-tab .pill{
    min-width: 21px !important;
    height: 20px !important;
    font-size: 9px !important;
    padding: 0 4px !important;
  }
}

.event-page .event-tab,
.app-shell.event-page .event-tab{
  width: 100% !important;
}

.event-page .event-tab.is-active,
.event-page .event-tab.active,
.event-page .event-tab[aria-current="page"]{
  border-bottom: 3px solid var(--ui-text) !important;
}

.event-page .event-tab .pill,
.app-shell.event-page .event-tab .pill{
  box-sizing: border-box !important;
}

@media (max-width: 760px) {
  .event-page .event-tab,
.app-shell.event-page .event-tab{
    padding: 0 2px !important;
    font-weight: var(--ui-weight-black-soft) !important;
    letter-spacing: -0.01em !important;
  }

}

@media (max-width: 390px) {
  .event-page .event-tab,
.app-shell.event-page .event-tab{
    padding: 0 1px !important;
    gap: 1px !important;
  }
}

@media (max-width: 760px) {
  .event-panel,
.team-panel,
.admin-panel,
.card,
.dashboard-calendar-panel{
    padding: var(--app-panel-inner-gap) !important;
  }

}

.event-page .event-tab:nth-child(1),
.event-page .event-tab:nth-child(3),
.app-shell.event-page .event-tab:nth-child(1),
.app-shell.event-page .event-tab:nth-child(3){
  min-width: 0 !important;
}

@media (max-width: 390px) {
  .event-page .event-tabs,
.app-shell.event-page .event-tabs,
.event-page .event-tab,
.app-shell.event-page .event-tab{
    min-height: var(--ui-size-control) !important;
    height: var(--ui-size-control) !important;
  }
}

.event-page .event-panel{
  padding: var(--ui-space-xs) !important;
  border-radius: 11px !important;
}

.event-page .event-tab:nth-child(2),
.app-shell.event-page .event-tab:nth-child(2){
  overflow: hidden !important;
  font-size: var(--app-font-size-base, 14px) !important;
}

@media (max-width: 760px) {
  .event-page .event-panel{
    padding: var(--ui-space-xs) !important;
  }
}

@media (max-width: 390px) {
  .event-page .event-tabs,
.app-shell.event-page .event-tabs{
    grid-template-columns: minmax(0, 1fr) minmax(116px, 140px) minmax(0, 1fr) !important;
  }

}

.event-page .event-tabs,
.app-shell.event-page .event-tabs{
  display: grid !important;
  align-items: stretch !important;
  gap: 0 !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  height: var(--ui-size-lg) !important;
  min-height: var(--ui-size-lg) !important;
  box-sizing: border-box !important;
  background: var(--ui-white) !important;
}

.event-page .event-tab,
.app-shell.event-page .event-tab{
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  position: relative !important;
  height: var(--ui-size-lg) !important;
  min-height: var(--ui-size-lg) !important;
  min-width: 0 !important;
  max-width: none !important;
  box-sizing: border-box !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex-wrap: nowrap !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  border-radius: 0 !important;
  border-bottom: 3px solid transparent !important;
  font-size: var(--app-font-size-base, 14px) !important;
  line-height: var(--ui-line-tight) !important;
  font-weight: var(--ui-weight-black-soft) !important;
  letter-spacing: -0.01em !important;
}

.event-page .event-tab:nth-child(1),
.app-shell.event-page .event-tab:nth-child(1),
.event-page .event-tab:nth-child(3),
.app-shell.event-page .event-tab:nth-child(3){
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.event-page .event-tab:nth-child(2),
.app-shell.event-page .event-tab:nth-child(2){
  max-width: none !important;
  gap: var(--ui-space-xs) !important;
  justify-content: center !important;
}

.event-page .event-tab.is-active,
.event-page .event-tab.active,
.event-page .event-tab[aria-current="page"]{
  background: #f1f3f5 !important;
  border-bottom-color: var(--ui-text) !important;
}

.event-page .event-tab .pill,
.app-shell.event-page .event-tab .pill{
  flex: 0 0 auto !important;
  min-width: 20px !important;
  height: 20px !important;
  padding: 0 4px !important;
  border-radius: var(--ui-radius-pill) !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 10px !important;
  line-height: var(--ui-line-tight) !important;
  font-weight: var(--ui-weight-black-soft) !important;
  margin: 0 !important;
}

@media (max-width: 760px) {
  .event-page .event-tabs,
.app-shell.event-page .event-tabs{
    grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr) !important;
    height: var(--ui-size-lg) !important;
    min-height: var(--ui-size-lg) !important;
  }

  .event-page .event-tab,
.app-shell.event-page .event-tab{
    gap: 2px !important;

    height: var(--ui-size-lg) !important;
    min-height: var(--ui-size-lg) !important;
    font-size: var(--ui-font-md) !important;

}

  .event-page .event-tab:nth-child(1),
.app-shell.event-page .event-tab:nth-child(1),
.event-page .event-tab:nth-child(3),
.app-shell.event-page .event-tab:nth-child(3){
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  .event-page .event-tab:nth-child(2),
.app-shell.event-page .event-tab:nth-child(2){
    min-width: max-content !important;
    gap: var(--ui-space-2xs) !important;
    font-size: var(--ui-font-md) !important;
  }

  .event-page .event-tab .pill,
.app-shell.event-page .event-tab .pill{
    width: auto !important;
    border-radius: var(--ui-radius-pill) !important;
    line-height: var(--ui-line-tight) !important;
    font-weight: var(--ui-weight-black-soft) !important;

    min-width: 18px !important;
    height: 18px !important;
    padding: 0 3px !important;
    font-size: 9px !important;

}

  .event-page .event-tab:last-child,
.app-shell.event-page .event-tab:last-child{
    border-bottom-right-radius: 11px !important;
  }

  .event-page .event-tab:first-child.is-active,
.event-page .event-tab:first-child.active,
.event-page .event-tab:first-child[aria-current="page"]{
    border-bottom-left-radius: 11px !important;
  }

  .event-page .event-tab:last-child.is-active,
.event-page .event-tab:last-child.active,
.event-page .event-tab:last-child[aria-current="page"]{
    border-bottom-right-radius: 11px !important;
  }
}

@media (max-width: 390px) {
  .event-page .event-tab,
.app-shell.event-page .event-tab{
    font-size: var(--ui-font-sm) !important;
  }

  .event-page .event-tab:nth-child(2),
.app-shell.event-page .event-tab:nth-child(2){
    gap: 3px !important;
    font-size: var(--ui-font-sm) !important;
  }

  .event-page .event-tab .pill,
.app-shell.event-page .event-tab .pill{
    padding: 0 3px !important;

    min-width: 17px !important;
    height: 17px !important;
    font-size: 8.5px !important;

}
}

.app-shell,
.dashboard-page .app-shell,
.dashboard-section,
.team-back-shell,
.team-hero,
.team-tabs-shell,
.team-dashboard-grid,
.admin-back-shell,
.admin-users-layout,
.app-shell.event-page{
  width: min(100% - calc(var(--app-shell-side-gap) * 2), var(--app-shell-max-width, 760px)) !important;
  max-width: var(--app-shell-max-width, 760px) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  box-sizing: border-box !important;
}

@media (max-width: 760px) {
  .app-shell,
.dashboard-page .app-shell,
.dashboard-section,
.team-back-shell,
.team-hero,
.team-tabs-shell,
.team-dashboard-grid,
.admin-back-shell,
.admin-users-layout,
.app-shell.event-page{
    width: 100% !important;
    max-width: none !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
}

.team-panel,
.admin-panel,
.event-panel,
.card,
.dashboard-calendar-panel,
.app-card{
  padding: var(--app-panel-inner-gap) !important;
  border-radius: var(--app-panel-radius) !important;
}

.app-shell.event-page .event-topbar,
.app-shell.event-page .event-summary-card,
.app-shell.event-page .event-tabs,
.app-shell.event-page .event-panel{
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  box-sizing: border-box !important;
}

.event-page .event-tab:first-child,
.app-shell.event-page .event-tab:first-child{
  padding-left: 0 !important;
  margin-left: 0 !important;
  border-bottom-left-radius: 0 !important;
}

.event-page .event-tab:last-child,
.app-shell.event-page .event-tab:last-child{
  padding-right: 0 !important;
  margin-right: 0 !important;
}

.event-page .event-tabs{
  border-radius: 0 0 var(--app-panel-radius) var(--app-panel-radius) !important;
}

.event-page .event-tab:last-child,
.app-shell.event-page .event-tab:last-child,
.event-page .event-tab:last-child.is-active,
.event-page .event-tab:last-child.active,
.event-page .event-tab:last-child[aria-current="page"]{
  border-bottom-right-radius: var(--app-panel-radius) !important;
}

.event-page .event-tab:first-child.is-active,
.event-page .event-tab:first-child.active,
.event-page .event-tab:first-child[aria-current="page"]{
  border-bottom-left-radius: var(--app-panel-radius) !important;
}

.event-page .event-tabs,
.app-shell.event-page .event-tabs{
  padding: 0 !important;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr) !important;
}

.event-page .event-tab:nth-child(2),
.app-shell.event-page .event-tab:nth-child(2){
  min-width: max-content !important;
  width: auto !important;
  padding-left: 30px !important;
  padding-right: 30px !important;
}

@media (max-width: 760px) {
  .event-page .event-tabs,
.app-shell.event-page .event-tabs{
    padding: 0 !important;
  }

  .event-page .event-tab:nth-child(2),
.app-shell.event-page .event-tab:nth-child(2){
    padding-left: 24px !important;
    padding-right: 24px !important;
  }
}

@media (max-width: 390px) {
  .event-page .event-tab:nth-child(2),
.app-shell.event-page .event-tab:nth-child(2){
    padding-left: 20px !important;
    padding-right: 20px !important;
  }
}

.dashboard-section,
.team-hero,
.team-tabs-shell,
.team-dashboard-grid,
.team-panel,
.admin-back-shell,
.admin-users-layout,
.admin-panel,
.card,
.app-shell.event-page .event-topbar,
.app-shell.event-page .event-tabs,
.app-shell.event-page .event-panel{
  margin-bottom: var(--app-shell-block-gap) !important;
}

.app-shell.event-page .event-tabs{
  margin-bottom: 10px !important;
}

.app-shell.event-page .event-panel{
  margin-top: 0 !important;
}

@media (max-width: 760px) {
  .dashboard-section,
.team-hero,
.team-tabs-shell,
.team-dashboard-grid,
.team-panel,
.admin-back-shell,
.admin-users-layout,
.admin-panel,
.card,
.app-shell.event-page .event-topbar,
.app-shell.event-page .event-tabs,
.app-shell.event-page .event-panel{
    margin-bottom: var(--app-shell-block-gap) !important;
  }

  .app-shell.event-page .event-tabs{
    margin-bottom: 10px !important;
  }
}

.app-shell.event-page .attendance-status-card{
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  align-items: center !important;
  column-gap: var(--ui-space-lg) !important;
}

.app-shell.event-page .attendance-status-card > div:first-child{
  min-width: 0 !important;
}

.app-shell.event-page .attendance-status-actions{
  width: auto !important;
  min-width: 0 !important;
  margin-left: auto !important;
  justify-content: flex-end !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
}

.app-shell.event-page .attendance-status-actions > span{
  margin-left: 0 !important;
  white-space: nowrap !important;
}

@media (max-width: 760px) {
  .app-shell.event-page .attendance-status-card{
    grid-template-columns: minmax(0, 1fr) auto !important;
    column-gap: var(--ui-space-control) !important;
  }

  .app-shell.event-page .attendance-status-actions{
    width: auto !important;
    justify-content: flex-end !important;
    flex-wrap: nowrap !important;
  }

  .app-shell.event-page .attendance-status-actions > span{
    min-width: 92px !important;
  }
}

.app-shell.event-page .event-summary-badges,
.event-page .event-summary-badges{
  display: none !important;
}

.app-shell.event-page .event-summary-card,
.event-page .event-summary-card{
  display: flex !important;
  align-items: stretch !important;
}

.app-shell.event-page .event-summary-card__body,
.event-page .event-summary-card__body{
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  min-height: 92px !important;
  padding-top: 10px !important;
  padding-bottom: 10px !important;
}

.app-shell.event-page .event-summary-card h2,
.event-page .event-summary-card h2{
  margin-top: 0 !important;
  margin-bottom: 8px !important;
}

.app-shell.event-page .event-summary-card p,
.event-page .event-summary-card p{
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

@media (max-width: 760px) {
  .app-shell.event-page .event-summary-card__body,
.event-page .event-summary-card__body{
    min-height: 86px !important;
    padding-top: 9px !important;
    padding-bottom: 9px !important;
  }

  .app-shell.event-page .event-summary-card h2,
.event-page .event-summary-card h2{
    margin-bottom: 7px !important;
  }
}

.app-shell.event-page .event-topbar,
.event-page .event-topbar{
  display: none !important;
}

.app-shell.event-page .event-summary-card,
.event-page .event-summary-card{
  border-radius: var(--app-panel-radius, 12px) var(--app-panel-radius, 12px) 0 0 !important;
  overflow: hidden !important;
}

.app-shell.event-page .event-tabs,
.event-page .event-tabs{
  border-radius: 0 0 var(--app-panel-radius, 12px) var(--app-panel-radius, 12px) !important;
  overflow: hidden !important;
}

.app-shell.event-page .event-summary-card,
.app-shell.event-page .event-tabs{
  margin-top: 0 !important;
}

.app-shell.event-page .event-summary-card::before,
.event-page .event-summary-card::before{
  border-top-left-radius: var(--app-panel-radius, 12px);
}

@media (max-width: 760px) {
  .app-shell.event-page .event-summary-card,
.event-page .event-summary-card{
    border-radius: var(--app-panel-radius, 11px) var(--app-panel-radius, 11px) 0 0 !important;
  }

  .app-shell.event-page .event-tabs,
.event-page .event-tabs{
    border-radius: 0 0 var(--app-panel-radius, 11px) var(--app-panel-radius, 11px) !important;
  }
}

body,
.app-shell,
.event-page,
.dashboard-page,
.team-panel,
.event-panel,
.admin-panel,
.card,
.list-card,
.team-card{
  font-weight: var(--app-font-weight-normal) !important;
}

.event-page .event-comments-head,
.app-shell.event-page .event-comments-head{
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: var(--ui-space-lg) !important;
  padding: 14px 0 12px !important;
  margin: 0 !important;
}

.event-page .event-comments-head h3,
.app-shell.event-page .event-comments-head h3{
  margin: 0 !important;
  line-height: var(--ui-line-compact) !important;
}

.event-page .event-comments-head .pill,
.app-shell.event-page .event-comments-head .pill{
  margin-left: auto !important;
}

.event-page .event-comment-form,
.app-shell.event-page .event-comment-form{
  margin-left: 0 !important;
  margin-right: 0 !important;
  width: 100% !important;
  box-sizing: border-box !important;
  box-shadow: none !important;
}

.event-page .event-panel .event-comment-form,
.app-shell.event-page .event-panel .event-comment-form{
  border-radius: var(--ui-radius-md) !important;
}

.event-panel h3{
  padding: 0 0 10px !important;
}

.event-page .event-comments-head .pill,
.app-shell.event-page .event-comments-head .pill{
  align-self: baseline !important;
}

.dashboard-section--teams .team-grid{
  gap: var(--app-shell-block-gap, 10px) !important;
}

.dashboard-section--teams .team-card.team-card--clean{
  background: var(--ui-white) !important;
  box-shadow: none !important;
  gap: 0 !important;
}

.btn.btn--team-card,
.dashboard-section--teams .team-card.team-card--clean .btn{
  min-height: 38px !important;
  padding: var(--ui-inset-9-14) !important;
  border-radius: 11px !important;
  background: var(--ui-text) !important;
  color: var(--ui-white) !important;
  border: 1px solid var(--ui-text) !important;
  box-shadow: none !important;
  font-size: var(--ui-font-sm) !important;
  line-height: var(--ui-line-tight) !important;
  font-weight: var(--ui-weight-black-soft) !important;
}

.btn.btn--team-card:hover,
.btn.btn--team-card:focus-visible,
.dashboard-section--teams .team-card.team-card--clean .btn:hover,
.dashboard-section--teams .team-card.team-card--clean .btn:focus-visible{
  background: var(--ui-ink) !important;
  border-color: var(--ui-ink) !important;
  color: var(--ui-white) !important;
}

@media (max-width: 760px) {
  .dashboard-section--teams .team-card__image{
    aspect-ratio: 16 / 7;
    margin-bottom: 5px;
  }

  .btn.btn--team-card,
.dashboard-section--teams .team-card.team-card--clean .btn{
    min-height: var(--ui-size-control) !important;
    padding: var(--ui-inset-8-12) !important;
  }
}

.dashboard-section--teams .team-card.team-card--clean{
  padding: 0 !important;
  overflow: hidden !important;
  border-radius: var(--app-panel-radius, 12px) !important;
}

.dashboard-section--teams .team-card__body{
  display: flex !important;
  flex-direction: column !important;
  gap: 0 !important;
}

.dashboard-section--teams .team-card.team-card--clean h3{
  order: 1 !important;
  text-align: center !important;
  text-transform: uppercase !important;
  font-size: var(--app-font-size-title, 22px) !important;
  line-height: var(--ui-line-snug) !important;
  font-weight: var(--ui-weight-black-soft) !important;
  letter-spacing: .02em !important;
  margin: 0 !important;
  padding: 10px 10px 8px !important;
}

.dashboard-section--teams .team-card__image{
  order: 2 !important;
  width: auto !important;
  height: auto !important;
  margin: var(--ui-margin-panel) !important;
  border-radius: var(--app-panel-radius, 12px) !important;
  overflow: hidden !important;
  background: transparent !important;
  aspect-ratio: auto !important;
}

.dashboard-section--teams .team-card__image img{
  display: block !important;
  width: 100% !important;
  height: auto !important;
  object-fit: contain;
  border-radius: var(--app-panel-radius, 12px) !important;
}

.dashboard-section--teams .team-card.team-card--clean .btn,
.dashboard-section--teams .team-card__body .btn{
  order: 3 !important;
}

.dashboard-section--teams .team-card.team-card--clean{
  display: flex !important;
  flex-direction: column !important;
}

.dashboard-section--teams .team-card.team-card--clean > .team-card__image{
  order: 2 !important;
}

.dashboard-section--teams .team-card.team-card--clean > .team-card__body{
  display: contents !important;
}

@media (max-width: 760px) {
  .dashboard-section--teams .team-card.team-card--clean h3{
    font-size: var(--app-font-size-title, 21px) !important;
    padding: 10px 10px 8px !important;
  }

  .dashboard-section--teams .team-card__image,
.dashboard-section--teams .team-card.team-card--clean .btn,
.dashboard-section--teams .team-card__body .btn{
    margin: var(--ui-margin-panel) !important;
  }
}

.dashboard-section--teams .team-card.team-card--clean .btn,
.dashboard-section--teams .team-card__body .btn,
.dashboard-section--teams .btn.btn--team-card{
  width: calc(100% - 20px) !important;
  max-width: calc(100% - 20px) !important;
  margin: var(--ui-margin-panel) !important;
  box-sizing: border-box !important;
  align-self: stretch !important;
  justify-self: stretch !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: hidden !important;
  white-space: nowrap !important;
}

.dashboard-section--teams .team-card.team-card--clean{
  box-sizing: border-box !important;
}

.profile-page .app-shell.profile-card,
.profile-page .profile-card.profile-card--edit{
  width: min(100% - calc(var(--app-shell-side-gap, 0px) * 2), var(--app-shell-max-width, 760px)) !important;
  max-width: var(--app-shell-max-width, 760px) !important;
  margin: 0 auto var(--app-shell-block-gap, 10px) !important;
  padding: var(--app-panel-inner-gap, 4px) !important;
  border-radius: var(--app-panel-radius, 12px) !important;
  box-shadow: none !important;
  box-sizing: border-box !important;
}

.profile-page .profile-card__top{
  display: grid !important;
  grid-template-columns: 56px minmax(0, 1fr) !important;
  align-items: center !important;
  gap: var(--ui-space-control) !important;
  margin: 0 0 10px !important;
  padding: var(--ui-space-control) !important;
  border-radius: var(--app-panel-radius, 12px) !important;
  background: var(--ui-white) !important;
}

.profile-page .profile-avatar{
  width: 56px !important;
  height: 56px !important;
  border-radius: var(--ui-radius-pill) !important;
  object-fit: cover;
}

.profile-page .profile-card__top h1{
  margin: 0 0 3px !important;
  font-size: var(--app-font-size-title, 22px) !important;
  line-height: var(--ui-line-snug) !important;
  font-weight: var(--ui-weight-black-soft) !important;
  letter-spacing: -0.02em !important;
}

.profile-page .profile-card__top .muted,
.profile-page .profile-photo-note{
  font-size: var(--app-font-size-small, 12px) !important;
  line-height: var(--ui-line-label) !important;
  font-weight: var(--app-font-weight-normal, 300) !important;
}

.profile-page .profile-form,
.profile-page .profile-form__grid,
.profile-page .profile-form__password,
.profile-page .profile-form__actions{
  display: grid !important;
  gap: var(--ui-space-control) !important;
}

.profile-page .profile-form__password{
  margin-top: 10px !important;
  padding-top: 10px !important;
  border-top: 1px solid rgba(15, 23, 42, .08) !important;
}

.profile-page .profile-form label{
  display: grid !important;
  gap: var(--ui-space-xs) !important;
  margin: 0 !important;
}

.profile-page .profile-form label > span,
.profile-page .profile-form__password h2{
  font-size: var(--app-font-size-base, 14px) !important;
  line-height: var(--ui-line-control) !important;
  font-weight: var(--ui-weight-black-soft) !important;
  margin: 0 !important;
  padding: 0 !important;
}

.profile-page .profile-form__password .muted,
.profile-page .profile-form small{
  font-size: var(--app-font-size-small, 12px) !important;
  line-height: var(--ui-line-label) !important;
  font-weight: var(--app-font-weight-normal, 300) !important;
  color: var(--ui-muted) !important;
}

.profile-page .profile-form input{
  width: 100% !important;
  min-height: 40px !important;
  padding: 9px 12px !important;
  border-radius: 11px !important;
  font-size: var(--app-font-size-base, 14px) !important;
  line-height: var(--ui-line-control) !important;
  box-sizing: border-box !important;
}

.profile-page .profile-form__actions .btn{
  min-height: 38px !important;
  padding: var(--ui-inset-9-14) !important;
  border-radius: 11px !important;
  font-size: var(--ui-font-sm) !important;
  line-height: var(--ui-line-tight) !important;
  font-weight: var(--ui-weight-black-soft) !important;
}

.profile-page .profile-form__actions .btn--primary{
  background: var(--ui-text) !important;
  border-color: var(--ui-text) !important;
  color: var(--ui-white) !important;
  box-shadow: none !important;
}

.profile-page .profile-form__actions .btn--ghost{
  background: var(--ui-white) !important;
  color: var(--ui-text) !important;
  border: 1px solid var(--ui-border-medium) !important;
  box-shadow: none !important;
}

@media (max-width: 760px) {
  .profile-page .app-shell.profile-card,
.profile-page .profile-card.profile-card--edit{
    width: calc(100% - 20px) !important;
    max-width: none !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding: var(--ui-space-md) !important;
  }

  .profile-page .profile-card__top{
    grid-template-columns: 52px minmax(0, 1fr) !important;
    gap: 9px !important;
    padding: var(--ui-space-md) !important;
    margin-bottom: 10px !important;
  }

  .profile-page .profile-avatar{
    width: 52px !important;
    height: 52px !important;
  }

  .profile-page .profile-card__top h1{
    font-size: var(--app-font-size-heading, 17px) !important;
  }

  .profile-page .profile-form,
.profile-page .profile-form__grid,
.profile-page .profile-form__password,
.profile-page .profile-form__actions{
    gap: 9px !important;
  }
}

body.dashboard-page .team-back-shell,
body.dashboard-page .team-hero,
body.dashboard-page .team-tabs-shell,
body.dashboard-page .team-dashboard-grid{
  width: min(100% - calc(var(--app-shell-side-gap, 0px) * 2), var(--app-shell-max-width, 760px)) !important;
  max-width: var(--app-shell-max-width, 760px) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  margin-bottom: var(--app-shell-block-gap, 10px) !important;
  box-sizing: border-box !important;
}

.team-back-shell{
  padding: 0 !important;
}

.team-back-button{
  min-height: var(--ui-size-control);
  padding: var(--ui-inset-8-12) !important;
  border-radius: 11px !important;
  font-size: var(--ui-font-sm) !important;
  line-height: var(--ui-line-tight) !important;
  font-weight: var(--ui-weight-black-soft) !important;
  box-shadow: none !important;
}

.team-hero{
  padding: var(--app-panel-inner-gap, 4px) !important;
  border-radius: var(--app-panel-radius, 12px) !important;
  box-shadow: none !important;
  overflow: hidden !important;
}

.team-hero__main{
  display: grid !important;
  gap: var(--ui-space-control) !important;
}

.team-hero h1{
  margin: 0 0 4px !important;
  font-size: var(--app-font-size-title, 22px) !important;
  line-height: var(--ui-line-snug) !important;
  font-weight: var(--ui-weight-black-soft) !important;
  letter-spacing: -0.02em !important;
}

.team-hero .muted{
  margin: 0 !important;
  font-size: var(--app-font-size-small, 12px) !important;
  line-height: 1.3 !important;
  font-weight: var(--app-font-weight-normal, 300) !important;
}

.team-hero__stats{
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: var(--ui-space-md) !important;
}

.team-hero__stats .stat-card{
  padding: var(--ui-space-md) !important;
  border-radius: 11px !important;
  box-shadow: none !important;
}

.team-hero__stats .stat-card strong{
  font-size: var(--app-font-size-heading, 18px) !important;
  line-height: var(--ui-line-tight) !important;
  font-weight: var(--ui-weight-black-soft) !important;
}

.team-hero__stats .stat-card span{
  font-size: var(--app-font-size-small, 12px) !important;
  line-height: var(--ui-line-control) !important;
}

.team-tabs-shell{
  padding: 0 !important;
  border-radius: var(--app-panel-radius, 12px) !important;
  overflow: hidden !important;
  background: var(--ui-white) !important;
}

.team-tabs{
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 0 !important;
  width: 100% !important;
  min-height: var(--ui-size-lg);
  padding: 0 !important;
  background: var(--ui-white) !important;
}

.team-tab{
  min-width: 0;
  min-height: var(--ui-size-lg) !important;
  padding: 0 4px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-align: center !important;
  font-size: var(--app-font-size-base, 14px) !important;
  line-height: var(--ui-line-tight) !important;
  font-weight: var(--ui-weight-black-soft) !important;
  border-bottom: 3px solid transparent !important;
  border-radius: 0 !important;
}

.team-tab.is-active{
  background: #f1f3f5 !important;
  border-bottom-color: var(--ui-text) !important;
}

.team-dashboard-grid{
  display: grid !important;
  gap: var(--app-shell-block-gap, 10px) !important;
}

.team-panel{
  padding: var(--app-panel-inner-gap, 4px) !important;
  border-radius: var(--app-panel-radius, 12px) !important;
  box-shadow: none !important;
  box-sizing: border-box;
}

.team-panel .section-head{
  padding: 14px 0 12px !important;
  margin: 0 !important;
  display: flex !important;
  align-items: baseline !important;
  justify-content: space-between !important;
  gap: var(--ui-space-lg) !important;
}

.team-panel .section-head h2{
  margin: 0 !important;
  padding: 0 0 10px !important;
  font-size: var(--app-font-size-heading, 18px) !important;
  line-height: var(--ui-line-compact) !important;
  font-weight: var(--ui-weight-black-soft) !important;
}

.team-panel .section-head .pill{
  align-self: baseline !important;
  margin-left: auto !important;
}

.team-panel .list-cards,
.team-panel .participants-list,
.team-panel .team-players-list{
  display: grid !important;
  gap: var(--ui-space-control) !important;
}

.team-event-card,
.participant-row.team-player-row,
.empty-card{
  border-radius: var(--app-panel-radius, 12px) !important;
  box-shadow: none !important;
  padding: var(--ui-space-control) !important;
  box-sizing: border-box !important;
}

.team-event-card__main h3,
.participant-main strong{
  font-size: var(--app-font-size-base, 14px) !important;
  line-height: var(--ui-line-control) !important;
  font-weight: var(--ui-weight-black-soft) !important;
}

.team-event-card__main p,
.team-event-card__date,
.participant-responder,
.team-player-attendance__label,
.team-player-attendance small{
  font-size: var(--app-font-size-small, 12px) !important;
  line-height: var(--ui-line-label) !important;
  font-weight: var(--app-font-weight-normal, 300) !important;
}

.team-event-card .btn,
.team-panel .btn{
  min-height: var(--ui-size-control) !important;
  padding: var(--ui-inset-8-12) !important;
  border-radius: 11px !important;
  font-size: var(--ui-font-sm) !important;
  line-height: var(--ui-line-tight) !important;
  font-weight: var(--ui-weight-black-soft) !important;
  box-shadow: none !important;
}

@media (max-width: 760px) {
  body.dashboard-page .team-back-shell,
body.dashboard-page .team-hero,
body.dashboard-page .team-tabs-shell,
body.dashboard-page .team-dashboard-grid{
    width: calc(100% - 20px) !important;
    max-width: none !important;
  }

  .team-hero{
    padding: var(--ui-space-md) !important;
  }

  .team-hero__stats{
    gap: var(--ui-space-sm) !important;
  }

  .team-hero__stats .stat-card{
    padding: 7px 5px !important;
  }

  .team-tab{
    font-size: var(--ui-font-sm) !important;
    padding: 0 2px !important;
  }

  .team-panel{
    padding: var(--ui-space-md) !important;
  }

  .team-panel .section-head{
    padding: 12px 0 10px !important;
  }
}

.app-onboarding{
  display: grid;
  grid-template-columns: 38px minmax(0, 1fr);
  gap: var(--ui-space-control);
  align-items: center;
  margin-bottom: var(--app-shell-block-gap, 10px) !important;
  padding: var(--ui-space-control) !important;
  border-radius: var(--app-panel-radius, 12px);
  background: var(--ui-white);
  border: 1px solid var(--ui-border-soft);
  box-shadow: none;
}

.app-onboarding[hidden]{ display: none !important; }

.app-onboarding__icon{
  width: 38px; height: 38px;
  border-radius: var(--ui-radius-pill); background: #f1f3f5; font-size: 18px;
}

.app-onboarding__body{ display: grid; gap: 3px; min-width: 0; }
.app-onboarding__body strong{ font-size: var(--app-font-size-base, 14px); line-height: var(--ui-line-compact); font-weight: var(--ui-weight-black-soft); }
.app-onboarding__body span{ font-size: var(--app-font-size-small, 12px); line-height: 1.3; color: var(--ui-muted); font-weight: var(--app-font-weight-normal, 300); }

.app-onboarding__actions{
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(130px, 1fr));
  gap: var(--ui-space-md);
}

.app-onboarding__button{
  min-height: var(--ui-size-control); padding: var(--ui-inset-8-12) !important;
  border-radius: 11px !important; font-size: var(--ui-font-sm) !important;
  line-height: var(--ui-line-tight) !important; font-weight: var(--ui-weight-black-soft) !important; box-shadow: none !important;
}

@media (max-width: 760px) {
  .app-onboarding{
    width: calc(100% - 20px) !important; max-width: none;
    margin-left: auto !important; margin-right: auto !important; padding: var(--ui-space-md) !important;
  }
  .app-onboarding__actions{ grid-template-columns: 1fr; }
}

.event-match-after-panel{
  display: grid;

}

.event-match-section h4{
  font-size: var(--app-font-size-small, 12px);
  line-height: var(--ui-line-control);
  font-weight: var(--ui-weight-black-soft);
  color: var(--ui-muted);
  font-style: normal;
  margin: 0;
}

.event-match-section{
  display: grid;
  gap: var(--ui-space-md);
}

.event-match-section h4{
  color: #0f172a;
  text-transform: uppercase;
  letter-spacing: .02em;
}

.event-match-scorer span{
  text-align: center;
}

.app-match-pro-card{
  border-radius: var(--app-panel-radius, 12px);
  background: var(--ui-white);
  border: 1px solid var(--ui-border-soft);
  overflow: hidden;
}

.app-match-pro-main{
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
  align-items: center;
  gap: var(--ui-space-control);
  padding: 14px 10px;
}

.app-match-pro-team{
  display: grid;
  gap: var(--ui-space-compact);
  justify-items: center;
  text-align: center;
  min-width: 0;
}

.app-match-pro-team img,
.app-match-pro-logo-placeholder{
  width: 54px;
  height: 54px;
  object-fit: contain;
  display: block;
}

.app-match-pro-logo-placeholder{
  border-radius: var(--ui-radius-pill);
  background: #f1f5f9;
  color: var(--ui-muted);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-weight: var(--ui-weight-black);
}

.app-match-pro-team strong{
  max-width: 100%;
  font-size: var(--app-font-size-base, 14px);
  line-height: var(--ui-line-compact);
  font-weight: var(--ui-weight-black);
  overflow: hidden;
  text-overflow: ellipsis;
}

.app-match-pro-center{
  display: grid;
  gap: var(--ui-space-xs);
  justify-items: center;
  text-align: center;
  min-width: 92px;
}

.app-match-pro-score{
  font-size: clamp(34px, 12vw, 58px);
  line-height: .95;
  font-weight: var(--ui-weight-black);
  letter-spacing: .03em;
  color: var(--ui-black);
  white-space: nowrap;
}

.app-match-pro-meta{
  font-size: var(--app-font-size-small, 12px);
  line-height: var(--ui-line-control);
  font-weight: var(--app-font-weight-normal, 300);
  color: var(--ui-muted);
  white-space: nowrap;
}

.app-match-pro-badge{
  margin-top: 3px;
  padding: var(--ui-inset-6-10);
  border-radius: var(--ui-radius-pill);
  background: var(--ui-muted);
  color: var(--ui-white);
  font-size: var(--ui-font-xs);
  line-height: var(--ui-line-tight);
  font-weight: var(--ui-weight-black);
}

.app-match-pro-badge--win{ background: #16a34a; }
.app-match-pro-badge--loss{ background: #dc2626; }
.app-match-pro-badge--draw{ background: var(--ui-muted); }

.event-match-section-head{
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: var(--ui-space-control);
}

.event-match-section-head span{
  font-size: var(--app-font-size-small, 12px);
  color: var(--ui-muted);
  font-weight: var(--ui-weight-black-soft);
}

.event-match-goal-video-grid{
  display: grid;
  gap: var(--ui-space-control);
}

.event-match-goal-video-card,
.event-match-full-card{
  display: grid;
  gap: 0;
  border-radius: var(--app-panel-radius, 12px);
  overflow: hidden;
  background: var(--ui-white);

  color: #0f172a;
  text-decoration: none;
}

.event-match-goal-video-card__thumb,
.event-match-full-card__thumb{
  position: relative;
  display: block;
  aspect-ratio: 16 / 9;
  background: linear-gradient(135deg, var(--ui-ink), #374151);
  overflow: hidden;
}

.event-match-goal-video-card__thumb img,
.event-match-full-card__thumb img{
  width: 100%;
  height: 100%;
  transition: transform .2s ease;
}

.event-match-goal-video-card:hover img,
.event-match-full-card:hover img{
  transform: scale(1.03);
}

.event-match-goal-video-card__placeholder{
  position: absolute;
  inset: 0;
  display: grid;
  align-content: center;
  justify-items: center;
  gap: var(--ui-space-sm);
  padding: var(--ui-space-xl);
  color: var(--ui-white);
  text-align: center;
}

.event-match-goal-video-card__placeholder strong{
  font-size: var(--ui-font-sm);
  text-transform: uppercase;
  letter-spacing: .08em;
}

.event-match-goal-video-card__placeholder em{
  font-size: var(--app-font-size-base, 14px);
  font-style: normal;
  font-weight: var(--ui-weight-black-soft);
}

.event-match-goal-video-card__play{
  position: absolute;
  left: 50%;
  top: 50%;
  width: var(--ui-size-touch);
  height: var(--ui-size-touch);
  transform: translate(-50%, -50%);
  border-radius: var(--ui-radius-pill);
  background: rgba(255,255,255,.92);
  color: var(--ui-ink);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 18px;
  font-weight: var(--ui-weight-black);
  box-shadow: 0 10px 24px rgba(15, 23, 42, .22);
}

.event-match-goal-video-card__body,
.event-match-full-card__body{
  display: grid;
  gap: var(--ui-space-2xs);
  padding: var(--ui-space-control);
}

.event-match-goal-video-card__body em,
.event-match-full-card__body em{
  justify-self: start;
  padding: 5px 8px;
  border-radius: var(--ui-radius-pill);
  background: #fee2e2;
  color: #991b1b;
  font-size: var(--app-font-size-small, 12px);
  line-height: var(--ui-line-tight);
  font-style: normal;
  font-weight: var(--ui-weight-black);
}

.event-match-full-card__body em{
  background: #f1f5f9;
  color: var(--ui-muted);
}

.event-match-goal-video-card__body strong,
.event-match-full-card__body strong{
  font-size: var(--app-font-size-base, 14px);
  line-height: var(--ui-line-control);
  font-weight: var(--ui-weight-black);
}

.event-match-tv-link{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 38px;
  padding: var(--ui-inset-9-14);
  border-radius: 11px;
  background: var(--ui-text);
  color: var(--ui-white);
  border: 1px solid var(--ui-text);
  text-decoration: none;
  font-size: var(--ui-font-sm);
  line-height: var(--ui-line-tight);
  font-weight: var(--ui-weight-black);
}

@media (max-width: 760px) {
  .app-match-pro-main{
    gap: var(--ui-space-compact);
    padding: 12px 8px;
  }

  .app-match-pro-team img,
.app-match-pro-logo-placeholder{
    width: var(--ui-size-touch);
    height: var(--ui-size-touch);
  }

  .app-match-pro-team strong{
    font-size: var(--ui-font-sm);
  }

  .app-match-pro-center{
    min-width: 84px;
  }

  .app-match-pro-score{
    font-size: clamp(30px, 11vw, 44px);
  }

  .app-match-pro-meta{
    font-size: var(--ui-font-xs);
  }

  .event-match-goal-video-card__play{
    width: 40px;
    height: 40px;
    font-size: 16px;
  }
}

.event-match-after-panel{
  gap: 16px !important;
}

.event-match-after-panel .event-match-section{
  margin-top: 8px !important;
}

.event-match-after-panel .event-match-section + .event-match-section{
  margin-top: 18px !important;
}

.event-match-after-panel .event-match-scorers + *,
.event-match-after-panel .event-match-goal-video-grid + *,
.event-match-after-panel .event-match-full-card + *{
  margin-top: 14px !important;
}

.event-match-scorers{
  display: grid !important;
  grid-template-columns: repeat(2, max-content) !important;
  justify-content: start !important;
  align-items: start !important;
  gap: 10px 12px !important;
}

.event-match-scorer{
  display: inline-flex !important;
  align-items: center !important;
  width: auto !important;
  max-width: 100% !important;
  gap: var(--ui-space-lg) !important;
  min-width: 0 !important;
  padding: var(--ui-inset-10-12) !important;
  border: 1px solid #d8d8d8 !important;
  border-radius: var(--ui-radius-xl) !important;
  background: linear-gradient(180deg, var(--ui-white) 0%, #f7f7f7 100%) !important;
  box-shadow: 0 6px 16px rgba(0,0,0,0.05) !important;
}

.event-match-scorer span{
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: var(--ui-space-compact) !important;
  flex: 0 0 auto !important;
  min-width: 58px !important;
  padding: var(--ui-inset-7-12) !important;
  border-radius: var(--ui-radius-pill) !important;
  background: linear-gradient(135deg, #214d26 0%, #3f6f3b 100%) !important;
  color: var(--ui-white) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.16), 0 4px 10px rgba(0,0,0,0.14) !important;
  font-size: var(--app-font-size-small, 12px) !important;
  line-height: var(--ui-line-tight) !important;
  font-weight: var(--ui-weight-black) !important;
  white-space: nowrap !important;
}

.event-match-scorer strong{
  min-width: 0 !important;
  max-width: 150px !important;
  font-size: var(--app-font-size-base, 14px) !important;
  line-height: var(--ui-line-label) !important;
  font-weight: var(--ui-weight-black-soft) !important;
  color: var(--ui-black) !important;
  white-space: normal !important;
  word-break: break-word;
}

.event-match-section h4,
.event-match-section-head h4{
  margin: 0 0 10px !important;
}

@media (max-width: 760px) {
  .event-match-after-panel{
    gap: var(--ui-space-xl) !important;
  }

  .event-match-after-panel .event-match-section + .event-match-section{
    margin-top: 16px !important;
  }

  .event-match-scorers{
    grid-template-columns: repeat(auto-fit, minmax(150px, max-content)) !important;
    gap: 9px 10px !important;
  }

  .event-match-scorer{
    padding: var(--ui-inset-9-10) !important;
    border-radius: 15px !important;
  }

  .event-match-scorer span{
    min-width: 54px !important;
    padding: var(--ui-inset-6-10) !important;
  }

  .event-match-scorer strong{
    max-width: 135px !important;
    font-size: var(--ui-font-md) !important;
  }
}

@media (max-width: 390px) {
  .event-match-scorers{
    grid-template-columns: 1fr !important;
  }

  .event-match-scorer{
    width: fit-content !important;
    max-width: 100% !important;
  }
}

.event-match-goal-video-card,
.event-match-full-card{
  appearance: none;
  border: 1px solid var(--ui-border-soft);
  width: 100%;
  text-align: left;
  cursor: pointer;
  font-family: inherit;
}

.event-match-goal-video-card:focus-visible,
.event-match-full-card:focus-visible{
  outline: 3px solid rgba(32, 33, 36, .18);
  outline-offset: 2px;
}

.event-video-modal[hidden]{
  display: none !important;
}

.event-video-modal{
  position: fixed;
  inset: 0;
  z-index: 10000;
}

.event-video-modal__backdrop{
  position: absolute;
  inset: 0;
  background: rgba(15, 23, 42, .66);
}

.event-video-modal__dialog{
  position: relative;
  width: min(calc(100% - 22px), 820px);
  margin: 6vh auto 0;
  border-radius: 18px;
  background: #0f172a;
  box-shadow: 0 24px 70px rgba(0,0,0,.36);
  overflow: hidden;
}

.event-video-modal__head{
  display: flex;
  align-items: center;
  min-height: var(--ui-size-xl);
  padding: 12px 54px 12px 14px;
  color: var(--ui-white);
}

.event-video-modal__head strong{
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: var(--app-font-size-base, 14px);
  font-weight: var(--ui-weight-black);
}

.event-video-modal__close{
  position: absolute;
  top: 8px;
  right: 8px;
  width: var(--ui-size-control);
  height: var(--ui-size-control);
  border: 0;
  border-radius: var(--ui-radius-pill);
  background: rgba(255,255,255,.12);
  color: var(--ui-white);
  font-size: 24px;
  line-height: var(--ui-line-tight);
  font-weight: var(--ui-weight-black);
  cursor: pointer;
}

.event-video-modal__stage{
  width: 100%;
  aspect-ratio: 16 / 9;
  background: var(--ui-black);
}

.event-video-modal__video,
.event-video-modal__iframe{
  display: block;
  width: 100%;
  height: 100%;
  border: 0;
  background: var(--ui-black);
}

.event-video-modal__video[hidden],
.event-video-modal__iframe[hidden]{
  display: none !important;
}

body.event-video-modal-open{
  overflow: hidden;
}

@media (max-width: 760px) {
  .event-video-modal__dialog{
    width: calc(100% - 12px);
    margin-top: 10vh;
    border-radius: 15px;
  }

  .event-video-modal__head{
    min-height: var(--ui-size-lg);
    padding: 10px 50px 10px 12px;
  }

  .event-video-modal__close{
    width: var(--ui-size-md);
    height: var(--ui-size-md);
  }
}

.calendar-day-modal-card--external .calendar-day-modal-card__arrow::after{
  content: "";
}

.app-onboarding[data-app-installed="1"] .app-onboarding__icon{
  background: #dcfce7;
}

html.app-onboarding-lock,
body.app-onboarding-lock{
  overflow: hidden !important;
}

.app-onboarding--required{
  position: relative;
}

body.app-onboarding-lock .app-onboarding--required{
  position: fixed !important;
  z-index: 9999 !important;
  left: 50% !important;
  top: 50% !important;
  width: min(calc(100% - 24px), 420px) !important;
  max-width: 420px !important;
  transform: translate(-50%, -50%) !important;
  margin: 0 !important;
  padding: 16px !important;
  max-height: calc(100vh - 24px) !important;
  max-height: calc(100dvh - 24px) !important;
  overflow-y: auto !important;
  overscroll-behavior: contain;
  -webkit-overflow-scrolling: touch;
  box-shadow: 0 24px 70px rgba(15, 23, 42, .32) !important;
}

body.app-onboarding-lock::before{
  content: "";
  position: fixed;
  inset: 0;
  z-index: 9998;
  background: rgba(15, 23, 42, .66);
  backdrop-filter: blur(2px);
}

body.app-onboarding-lock .mobile-bottom-nav,
body.app-onboarding-lock .app-header,
body.app-onboarding-lock .mobile-profile-hero{
  pointer-events: none !important;
  user-select: none;
}

body.app-onboarding-lock .app-onboarding__actions{
  grid-template-columns: 1fr !important;
}

@media (max-width: 760px) {
  body.app-onboarding-lock .app-onboarding--required{
    width: calc(100% - 22px) !important;
    padding: var(--ui-space-xl) !important;
  }
}

.app-status-box{
  margin-top: var(--app-shell-block-gap, 10px) !important;
  margin-bottom: calc(var(--app-shell-block-gap, 10px) + 10px) !important;
  padding: var(--ui-inset-8-10) !important;
  border-radius: var(--app-panel-radius, 12px);
  background: rgba(255, 255, 255, .72);
  border: 1px solid var(--ui-border-subtle);
  box-shadow: none;
}

[data-app-status-box][hidden]{
  display: none !important;
}

.app-status-box__grid{
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--ui-space-compact);
}

.app-status-box__item{
  display: grid;
  gap: 2px;
  min-width: 0;
  padding: 7px 8px;
  border-radius: var(--ui-radius-sm);
  background: var(--ui-surface-light);
  border: 1px solid var(--ui-border-subtle);
}

.app-status-box__item span{
  font-size: var(--ui-font-xs);
  line-height: var(--ui-line-compact);
  font-weight: var(--app-font-weight-normal, 300);
  color: var(--ui-muted);
}

.app-status-box__item strong{
  font-size: var(--ui-font-sm);
  line-height: var(--ui-line-compact);
  font-weight: var(--ui-weight-black-soft);
  color: #334155;
}

.app-status-box__item strong[data-state="ok"]{
  color: #15803d;
}

.app-status-box__item strong[data-state="warn"]{
  color: #b45309;
}

.app-status-box__item strong[data-state="bad"]{
  color: #dc2626;
}

@media (max-width: 760px) {
  .app-status-box{
    width:100%;
    max-width: none;
    margin-left: auto !important;
    margin-right: auto !important;
    padding: var(--ui-space-md) !important;
  }
}

.profile-page .profile-logout-top{
  width: min(100% - calc(var(--app-shell-side-gap, 0px) * 2), var(--app-shell-max-width, 760px)) !important;
  max-width: var(--app-shell-max-width, 760px) !important;
  margin: 0 auto var(--app-shell-block-gap, 10px) !important;
  padding: 0 !important;
  box-sizing: border-box !important;
}

.profile-page .profile-form__actions{
  grid-template-columns: 1fr !important;
}

@media (max-width: 760px) {
  .profile-page .profile-logout-top{
    width: calc(100% - 20px) !important;
    max-width: none !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
}

.profile-page .profile-logout-top__button{
  width: 100% !important;

  box-shadow: none !important;

  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-decoration: none;
  min-height: var(--ui-size-xl) !important;
  padding: 13px 16px !important;
  border-radius: var(--ui-radius-md) !important;
  background: var(--ui-text) !important;
  color: var(--ui-white) !important;
  border: 1px solid var(--ui-text) !important;
  font-size: var(--app-font-size-base, 14px) !important;
  line-height: var(--ui-line-tight) !important;
  font-weight: var(--ui-weight-black) !important;
}

.profile-page .profile-logout-top__button:hover,
.profile-page .profile-logout-top__button:focus-visible{
  background: var(--ui-ink) !important;
  border-color: var(--ui-ink) !important;
  color: var(--ui-white) !important;
}

.app-onboarding[data-app-installed="1"] [data-app-install-button]{
  display: none !important;
}

.message-rich-editor__invalid{
  outline: 3px solid rgba(220, 38, 38, .28) !important;
  outline-offset: 2px !important;
  border-radius: var(--ui-radius-xs) !important;
}

.admin-extra-player-select,
.event-extra-player-select{
  width: 100% !important;
  min-height: 180px !important;
  padding: var(--ui-space-md) !important;
  border-radius: var(--ui-radius-md) !important;
  border: 1px solid rgba(15, 23, 42, .14) !important;
  background: var(--ui-white) !important;
  color: var(--ui-ink) !important;
  font-size: var(--ui-font-md) !important;
  line-height: var(--ui-line-body) !important;
  box-sizing: border-box !important;
}

.admin-extra-player-select option,
.event-extra-player-select option{
  padding: 6px 8px !important;
}

.event-extra-players-panel{
  scroll-margin-top: 14px;
}

.event-extra-player-current{
  display: flex;
  flex-wrap: wrap;
  gap: var(--ui-space-sm);
  margin: var(--ui-margin-bottom-control);
}

.event-extra-player-current span{
  display: inline-flex;
  align-items: center;
  min-height: 26px;
  padding: var(--ui-inset-5-9);
  border-radius: var(--ui-radius-pill);
  background: #f1f5f9;
  border: 1px solid var(--ui-border-soft);
  color: #334155;
  font-size: var(--ui-font-sm);
  font-weight: var(--ui-weight-extrabold);
}

.extra-player-native-select[hidden]{
  display: none !important;
}

.extra-player-picker{
  display: grid;
  gap: var(--ui-space-md);
  width: 100%;
  margin: 4px 0 10px;
}

.extra-player-picker__search{
  width: 100% !important;
  min-height: var(--ui-size-lg);
  padding: var(--ui-inset-10-12) !important;
  border-radius: var(--ui-radius-md) !important;
  border: 1px solid rgba(15, 23, 42, .16) !important;
  background: var(--ui-white) !important;
  color: var(--ui-ink) !important;
  font-size: 14px !important;
  box-sizing: border-box;
}

.extra-player-picker__selected{
  display: flex;
  flex-wrap: wrap;
  gap: var(--ui-space-sm);
  min-height: var(--ui-size-xs);
}

.extra-player-picker__empty{
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  color: var(--ui-muted);
  font-size: var(--ui-font-sm);
  font-weight: var(--ui-weight-bold);
}

.extra-player-picker__chip{
  appearance: none;
  border: 1px solid var(--ui-border-medium);
  background: var(--ui-ink);
  color: var(--ui-white);
  border-radius: var(--ui-radius-pill);
  padding: var(--ui-inset-6-10);
  font-size: var(--ui-font-sm);
  font-weight: var(--ui-weight-black);
  cursor: pointer;
  line-height: var(--ui-line-snug);
}

.extra-player-picker__list{
  display: grid;
  gap: var(--ui-space-2xs);
  max-height: 260px;
  overflow: auto;
  padding: var(--ui-space-sm);
  border: 1px solid var(--ui-border-medium);
  border-radius: var(--ui-radius-lg);
  background: var(--ui-surface-light);
}

.extra-player-picker__row{
  gap: 9px;
  min-height: var(--ui-size-control);
  padding: var(--ui-inset-8-10);
  border-radius: var(--ui-radius-sm);
  background: var(--ui-white);
  border: 1px solid var(--ui-border-subtle);
  color: var(--ui-ink);
  font-size: var(--ui-font-md);
  font-weight: var(--ui-weight-extrabold);
  cursor: pointer;
  user-select: none;
}

.extra-player-picker__row input{
  width: 16px;
  height: 16px;
  margin: 0;
  accent-color: var(--ui-ink);
}

.extra-player-picker__row.is-selected{
  background: #e8f5ee;
  border-color: rgba(22, 163, 74, .35);
  color: #14532d;
}

.extra-player-picker__row:hover{
  border-color: rgba(15, 23, 42, .22);
}

.extra-player-picker__no-result,
.extra-player-picker__helper{
  color: var(--ui-muted);
  font-size: var(--ui-font-sm);
  font-weight: var(--ui-weight-bold);
}

.extra-player-picker__no-result{
  padding: var(--ui-space-control);
  text-align: center;
}

@media (max-width: 720px) {
  .extra-player-picker__list{
    max-height: 310px;
  }

  .extra-player-picker__row{
    min-height: var(--ui-size-lg);
    font-size: var(--ui-font-md);
  }

  .extra-player-picker__chip{
    padding: var(--ui-inset-8-10);
  }
}

.extra-player-picker__helper::after{
  content: " Hráči vybraného týmu se v tomto seznamu nezobrazují, protože už jsou v docházce automaticky.";
}

.extra-player-collapsible{
  display: block;
  width: 100%;
  margin: 8px 0 12px;
}

.extra-player-collapsible__summary{
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: var(--ui-size-lg);
  padding: 10px 14px;
  border-radius: var(--ui-radius-lg);
  border: 1px solid var(--ui-border-medium);
  background: var(--ui-ink);
  color: var(--ui-white);
  font-size: var(--ui-font-md);
  font-weight: var(--ui-weight-black);
  cursor: pointer;
  list-style: none;
  user-select: none;
  box-sizing: border-box;
}

.extra-player-collapsible__summary::-webkit-details-marker{
  display: none;
}

.extra-player-collapsible[open] .extra-player-collapsible__summary{
  border-bottom-left-radius: 10px;
  border-bottom-right-radius: 10px;
}

.extra-player-collapsible__body{
  margin-top: 10px;
  padding: var(--ui-space-control);
  border: 1px solid rgba(15, 23, 42, .10);
  border-radius: var(--ui-radius-lg);
  background: var(--ui-white);
}

.event-extra-players-panel .extra-player-collapsible{
  margin: 0;
}

.event-extra-players-panel .extra-player-collapsible__body{
  margin-top: 12px;
}

@media (max-width: 720px) {
  .extra-player-collapsible__summary{
    min-height: var(--ui-size-xl);
    font-size: var(--ui-font-md);
  }

  .extra-player-collapsible__body{
    padding: var(--ui-space-md);
  }
}

.dashboard-past-events{
  display: block;
  width: 100%;
}

.dashboard-past-events__summary{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--ui-space-control);
  min-height: var(--ui-size-touch);
  padding: 11px 14px;
  border-radius: var(--ui-radius-lg);
  background: var(--ui-ink);
  color: var(--ui-white);
  font-size: 14px;
  font-weight: var(--ui-weight-black);
  cursor: pointer;
  list-style: none;
  user-select: none;
}

.dashboard-past-events__summary::-webkit-details-marker{
  display: none;
}

.dashboard-past-events[open] .dashboard-past-events__summary{
  margin-bottom: 12px;
}

.app-event-list--past .app-event-card--past{
  opacity: .92;
}

.app-event-list--past .app-event-card__bar{
  opacity: .55;
}

@media (min-width: 761px) {
  body:has(.admin-users-layout){
    font-size: 15px;
  }

  .admin-users-layout{
    font-size: 14px !important;
  }

  .admin-users-card h2{
    font-size: 1.18rem !important;
    line-height: var(--ui-line-compact) !important;
  }

  .admin-users-filter button,
.admin-users-filter .btn,
.admin-users-card--users .check-label,
.admin-users-card--users .btn,
.admin-users-card--users button{
    font-size: 14px !important;
    line-height: var(--ui-line-control) !important;
  }

  .admin-users-card--users .check-label{
    min-height: var(--ui-size-control) !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }

  .admin-users-card--users .participant-avatar,
.admin-users-card--users img{
    max-width: 48px;
    max-height: 48px;
  }

  .admin-users-card .pill,
.admin-users-card--users .pill,
.admin-users-card--users .status-badge{
    font-size: var(--ui-font-md) !important;
    line-height: var(--ui-line-compact) !important;
  }

.admin-users-card--compact,
.admin-users-card--users{
    font-size: var(--ui-font-md) !important;
  }

  .admin-users-card--compact .section-head h2,
.admin-users-card--users .section-head h2{
    font-size: 1.1rem !important;
    line-height: var(--ui-line-compact) !important;
  }

  .admin-users-card--compact .section-head .pill,
.admin-users-card--users .section-head .pill{
    font-size: var(--ui-font-sm) !important;
    padding: var(--ui-inset-5-9) !important;
  }

  .admin-users-filter{
    grid-template-columns: minmax(190px, 1.4fr) minmax(130px, .75fr) minmax(145px, .85fr) minmax(145px, .85fr) auto !important;
    gap: var(--ui-space-md) !important;
    padding: var(--ui-inset-9-10) !important;
    border-radius: var(--ui-radius-lg) !important;
  }

  .admin-users-filter label{
    gap: var(--ui-space-2xs) !important;
  }

  .admin-users-filter label span{
    font-size: var(--ui-font-xs) !important;
    line-height: var(--ui-line-snug) !important;
  }

  .admin-users-filter input,
.admin-users-filter select,
.admin-users-filter__actions .btn,
.admin-users-filter__actions button{
    min-height: var(--ui-size-md) !important;
    height: var(--ui-size-md) !important;
    font-size: var(--ui-font-md) !important;
    line-height: var(--ui-line-snug) !important;
    padding: 0 9px !important;
    border-radius: var(--ui-radius-sm) !important;
  }

  .admin-users-row-list{
    gap: var(--ui-space-compact) !important;
  }

  .admin-user-row{
    grid-template-columns: minmax(210px, 1.05fr) minmax(205px, .9fr) minmax(250px, 1.35fr) !important;
    gap: 9px !important;
    padding: var(--ui-inset-9-10) !important;
    border-radius: 13px !important;
  }

  .admin-user-row__identity{
    grid-template-columns: 38px minmax(0, 1fr) !important;
    gap: 9px !important;
  }

  .admin-user-row__avatar{
    width: 38px !important;
    height: 38px !important;
  }

  .admin-user-row__text{
    gap: 1px !important;
  }

  .admin-user-row__text strong{
    font-size: var(--ui-font-md) !important;
    line-height: var(--ui-line-compact) !important;
    font-weight: var(--ui-weight-extrabold) !important;
  }

  .admin-user-row__text span{
    font-size: var(--ui-font-sm) !important;
    line-height: var(--ui-line-control) !important;
    font-weight: var(--ui-weight-strong) !important;
  }

  .admin-user-row__role{
    grid-template-columns: minmax(86px, 1fr) auto auto !important;
    gap: var(--ui-space-sm) !important;
  }

  .admin-user-row__role select,
.admin-user-row-link select{
    min-height: var(--ui-size-md) !important;
    height: var(--ui-size-md) !important;
    border-radius: var(--ui-radius-sm) !important;
    padding: 0 8px !important;
    font-size: var(--ui-font-md) !important;
    line-height: var(--ui-line-snug) !important;
    font-weight: var(--ui-weight-extrabold) !important;
  }

  .admin-user-row__active{
    min-height: var(--ui-size-md) !important;
    height: var(--ui-size-md) !important;
    padding: 0 9px !important;
    font-size: var(--ui-font-md) !important;
    line-height: var(--ui-line-snug) !important;
    font-weight: var(--ui-weight-extrabold) !important;
    gap: var(--ui-space-sm) !important;
  }

  .admin-user-row__active input[type="checkbox"]{
    width: 16px !important;
    height: 16px !important;
    min-width: 16px !important;
  }

  .admin-user-row .btn,
.admin-user-row button,
.admin-user-row-link .btn,
.admin-user-row-link button,
.admin-user-link-remove{
    min-height: var(--ui-size-md) !important;
    height: var(--ui-size-md) !important;
    padding: 0 10px !important;
    border-radius: var(--ui-radius-pill) !important;
    font-size: var(--ui-font-sm) !important;
    line-height: var(--ui-line-snug) !important;
    font-weight: var(--ui-weight-extrabold) !important;
  }

  .admin-user-row__links{
    gap: var(--ui-space-xs) !important;
  }

  .admin-user-row-link{
    grid-template-columns: auto minmax(130px, 1fr) auto !important;
    gap: var(--ui-space-sm) !important;
  }

  .admin-user-row-link label{
    font-size: 10px !important;
    line-height: var(--ui-line-snug) !important;
    letter-spacing: .03em !important;
  }

  .admin-user-row__empty{
    font-size: var(--ui-font-sm) !important;
    line-height: var(--ui-line-label) !important;
  }

  @media (min-width: 761px) and (max-width: 1180px) {
    .admin-user-row{
      grid-template-columns: minmax(220px, 1fr) minmax(360px, 1.6fr) !important;
      align-items: center !important;
    }

    .admin-user-row__links{
      grid-column: 1 / -1 !important;
    }
  }
}

.app-onboarding__body span[data-app-onboarding-text]{
  overflow-wrap: anywhere;
}

@media (min-width: 761px) {
  body .admin-users-card--users,
body .admin-users-card--compact{
    font-size: var(--ui-font-sm) !important;
  }

  body .admin-users-filter{
    grid-template-columns: minmax(185px, 1.3fr) 135px 150px 150px auto !important;
    gap: var(--ui-space-compact) !important;
    padding: var(--ui-space-md) !important;
    margin-bottom: 10px !important;
    border-radius: var(--ui-radius-md) !important;
  }

  body .admin-users-filter label span{
    font-size: 10px !important;
    line-height: var(--ui-line-tight) !important;
  }

  body .admin-users-filter input,
body .admin-users-filter select,
body .admin-users-filter button,
body .admin-users-filter .btn{
    height: var(--ui-size-sm) !important;
    min-height: var(--ui-size-sm) !important;
    max-height: var(--ui-size-sm) !important;
    font-size: var(--ui-font-sm) !important;
    line-height: var(--ui-line-tight) !important;
    padding: 0 8px !important;
    border-radius: 9px !important;
  }

  body .admin-users-row-list{
    gap: var(--ui-space-sm) !important;
  }

  body .admin-user-row{
    grid-template-columns: minmax(215px, 1.05fr) minmax(255px, .95fr) minmax(300px, 1.35fr) !important;
    gap: var(--ui-space-compact) !important;
    padding: 7px 9px !important;
    border-radius: var(--ui-radius-md) !important;
    min-height: 0 !important;
  }

  body .admin-user-row__identity{
    grid-template-columns: 34px minmax(0, 1fr) !important;
    gap: var(--ui-space-md) !important;
  }

  body .admin-user-row__avatar{
    width: var(--ui-size-md) !important;
    height: var(--ui-size-md) !important;
    min-width: var(--ui-size-md);
  }

  body .admin-user-row__text{
    gap: 0 !important;
  }

  body .admin-user-row__text strong{
    font-size: var(--ui-font-sm) !important;
    line-height: 1.08 !important;
    font-weight: var(--ui-weight-extrabold) !important;
  }

  body .admin-user-row__text span{
    font-size: var(--ui-font-xs) !important;
    line-height: 1.12 !important;
    font-weight: var(--ui-weight-strong) !important;
  }

  body .admin-user-row__role{
    grid-template-columns: 96px 120px 58px !important;
    gap: var(--ui-space-xs) !important;
  }

  body .admin-user-row__role select,
body .admin-user-row-link select{
    height: var(--ui-size-sm) !important;
    min-height: var(--ui-size-sm) !important;
    max-height: var(--ui-size-sm) !important;
    font-size: var(--ui-font-sm) !important;
    line-height: var(--ui-line-tight) !important;
    font-weight: var(--ui-weight-extrabold) !important;
    padding: 0 7px !important;
    border-radius: 9px !important;
  }

  body .admin-user-row__active{
    height: var(--ui-size-sm) !important;
    min-height: var(--ui-size-sm) !important;
    max-height: var(--ui-size-sm);
    padding: 0 8px !important;
    font-size: var(--ui-font-sm) !important;
    line-height: var(--ui-line-tight) !important;
    gap: var(--ui-space-xs) !important;
  }

  body .admin-user-row__active input[type="checkbox"]{
    width: 15px !important;
    height: 15px !important;
    min-width: 15px !important;
  }

  body .admin-user-row button,
body .admin-user-row .btn,
body .admin-user-row-link button,
body .admin-user-row-link .btn,
body .admin-user-link-remove{
    height: var(--ui-size-sm) !important;
    min-height: var(--ui-size-sm) !important;
    max-height: var(--ui-size-sm) !important;
    font-size: var(--ui-font-xs) !important;
    line-height: var(--ui-line-tight) !important;
    padding: 0 8px !important;
    border-radius: var(--ui-radius-pill) !important;
  }

  body .admin-user-row__links{
    gap: var(--ui-space-2xs) !important;
  }

  body .admin-user-row-link{
    grid-template-columns: auto minmax(145px, 1fr) auto !important;
    gap: var(--ui-space-xs) !important;
  }

  body .admin-user-row-link label{
    font-size: 9px !important;
    line-height: var(--ui-line-tight) !important;
  }

  body .admin-user-row__push{
    display: inline-flex !important;
    align-items: center !important;
    gap: var(--ui-space-2xs) !important;
    width: fit-content !important;
    max-width: 100%;
    margin-top: 2px !important;
    padding: 2px 6px !important;
    border-radius: var(--ui-radius-pill) !important;
    font-size: 10px !important;
    line-height: var(--ui-line-snug) !important;
    font-weight: var(--ui-weight-black-soft) !important;
    white-space: nowrap;
  }

  body .admin-user-row__push small{
    font-size: 9px !important;
    line-height: var(--ui-line-tight) !important;
    opacity: .72;
    font-weight: var(--ui-weight-heavy) !important;
  }

  body .admin-user-row__push.is-on{
    background: #dcfce7 !important;
    color: #166534 !important;
    border: 1px solid #bbf7d0 !important;
  }

  body .admin-user-row__push.is-off{
    background: #f1f5f9 !important;
    color: var(--ui-muted) !important;
    border: 1px solid #e2e8f0 !important;
  }

  @media (min-width: 761px) and (max-width: 1100px) {
    body .admin-user-row{
      grid-template-columns: minmax(190px, 1fr) minmax(245px, 1.15fr) !important;
    }

    body .admin-user-row__links{
      grid-column: 1 / -1 !important;
    }
  }
}

.admin-user-row__push{
  display: inline-flex;
  align-items: center;
  gap: var(--ui-space-2xs);
}
.admin-user-row__push small{
  margin-left: 2px;
}
.admin-user-row__push.is-on{
  color: #166534;
}
.admin-user-row__push.is-off{
  color: var(--ui-muted);
}

.event-video-form--single{
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) auto;
}
.event-video-form--single label{
  min-width: 0;
}
.event-video-form--single input[type="text"]{
  width: 100%;
  min-height: var(--ui-size-xl);
  border: 0;
  border-radius: var(--ui-radius-lg);
  padding: 0 16px;
  background: var(--ui-white);
  color: var(--app-text);
  font-weight: var(--ui-weight-extrabold);
  box-sizing: border-box;
}

@media (max-width: 760px) {
  .event-video-form--single{
    grid-template-columns: 1fr;
  }

}

.event-push-overview__details{
  display: block;
  width: 100%;
}

.event-push-overview__summary{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--ui-space-control);
  min-height: var(--ui-size-lg);
  padding: var(--ui-inset-10-12);
  border-radius: var(--ui-radius-lg);
  background: var(--ui-ink);
  color: var(--ui-white);
  font-weight: var(--ui-weight-black);
  cursor: pointer;
  list-style: none;
}

.event-push-overview__summary::-webkit-details-marker{
  display: none;
}

.event-push-overview__details[open] .event-push-overview__summary{
  margin-bottom: 12px;
}

.event-push-overview__grid{
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: var(--ui-space-md);
  margin-bottom: 12px;
}

.event-push-stat{
  padding: var(--ui-space-control);
  border-radius: var(--ui-radius-lg);
  border: 1px solid var(--ui-border-soft);
  background: var(--ui-surface-light);
}

.event-push-stat strong{
  display: block;
  font-size: var(--ui-font-heading-sm);
  line-height: var(--ui-line-tight);
  color: var(--ui-ink);
}

.event-push-stat span{
  display: block;
  margin-top: 4px;
  font-size: var(--ui-font-sm);
  font-weight: var(--ui-weight-extrabold);
  color: var(--ui-muted);
}

.event-push-stat--sent{
  background: #ecfdf5;
}

.event-push-stat--failed{
  background: #fff1f2;
}

.event-push-stat--pending{
  background: #fffbeb;
}

.event-push-stat--off{
  background: #f1f5f9;
}

.event-push-list{
  display: grid;
  gap: var(--ui-space-sm);
}

.event-push-row{
  grid-template-columns: minmax(0, 1fr) auto;
  gap: var(--ui-space-control);
  align-items: center;
  padding: var(--ui-inset-9-10);
  border-radius: var(--ui-radius-md);
  background: var(--ui-white);
  border: 1px solid var(--ui-border-soft);
}

.event-push-row strong{
  display: block;
  font-size: var(--ui-font-md);
  line-height: var(--ui-line-compact);
}

.event-push-row span,
.event-push-row small{
  display: block;
  font-size: var(--ui-font-sm);
  line-height: var(--ui-line-control);
  color: var(--ui-muted);
}

.event-push-badge{
  display: inline-flex !important;
  width: fit-content;
  padding: 5px 8px;
  border-radius: var(--ui-radius-pill);
  font-size: var(--ui-font-xs) !important;
  font-weight: var(--ui-weight-black);
  white-space: nowrap;
}

.event-push-badge--sent{
  color: #166534 !important;
  background: #dcfce7;
}

.event-push-badge--pending{
  color: #92400e !important;
  background: #fef3c7;
}

.event-push-badge--failed,
.event-push-badge--error{
  color: #991b1b !important;
  background: #fee2e2;
}

.event-push-badge--off,
.event-push-badge--none{
  color: #475569 !important;
  background: #e2e8f0;
}

.event-push-overview__note{
  margin-top: 10px !important;
  font-size: var(--ui-font-sm);
}

@media (max-width: 760px) {
  .event-push-overview__grid{
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .event-push-row{
    grid-template-columns: 1fr;
    gap: var(--ui-space-sm);
  }
}

.event-push-error{
  margin-top: 3px;
  color: #991b1b !important;
  font-weight: var(--ui-weight-extrabold) !important;
  max-width: 280px;
  white-space: normal;
}

.event-push-row--failed,
.event-push-row--error{
  background: #fff7f7;
  border-color: #fecaca;
}

.event-push-row--none{
  background: var(--ui-surface-light);
}

.event-push-manual-form .btn{
  min-height: var(--ui-size-xs);
  padding: var(--ui-inset-5-9);
  font-size: var(--ui-font-xs);
  border-radius: var(--ui-radius-pill);
}

.event-push-manual-form{
  margin-top: 6px;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--ui-space-sm);
}

.app-result-pill{
  display:inline-flex;
  align-items:center;
  min-height:26px;
  padding:4px 8px;
  border-radius:var(--ui-radius-pill);
  font-size:var(--ui-font-xs);
  font-weight:var(--ui-weight-black-soft);
  line-height:var(--ui-line-compact);
}

.event-push-manual-result:empty{
  display: none;
}

.event-push-manual-result.is-ok{
  color: #166534;
  background: #dcfce7;
}

.event-push-manual-result.is-error{
  color: #991b1b;
  background: #fee2e2;
}

.event-push-disable-form{
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--ui-space-sm);
  margin-top: 6px;
}

.event-push-disable-result:empty{
  display: none;
}

.event-push-disable-result.is-ok{
  color: #166534;
  background: #dcfce7;
}

.event-push-disable-result.is-error{
  color: #991b1b;
  background: #fee2e2;
}

.event-push-row--device-removed{
  background: #f0fdf4 !important;
  border-color: #bbf7d0 !important;
}

.event-push-disable-form.is-removed .btn{
  opacity: .75;
}

.event-comment__meta .event-comment-read-stat{
  margin-left: 2px;
}

.event-comment-read-stat{
  display: inline-flex;
  align-items: center;
  gap: 3px;
  padding: 2px 7px;
  border-radius: var(--ui-radius-pill);
  background: #eef2ff;
  color: #334155;
  font-size: var(--ui-font-xs);
  font-weight: var(--ui-weight-black-soft);
  white-space: nowrap;
  border: 0;
  cursor: pointer;
  font-family: inherit;
}

.event-comment-read-stat:hover{
  background: #dbeafe;
}

.event-comment-read-info{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 15px;
  height: 15px;
  border-radius: var(--ui-radius-pill);
  background: #2563eb;
  color: var(--ui-white);
  font-size: 10px;
  font-weight: var(--ui-weight-black);
  line-height: var(--ui-line-tight);
}

.event-comment-read-modal[hidden]{
  display: none;
}

.event-comment-read-modal{
  position: fixed;
  inset: 0;
  z-index: 2000;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: var(--ui-space-2xl);
}

.event-comment-read-modal__backdrop{
  position: absolute;
  inset: 0;
  background: rgba(15, 23, 42, .52);
}

.event-comment-read-modal__dialog{
  position: relative;
  z-index: 1;
  width: min(720px, 100%);
  max-height: min(80vh, 760px);
  overflow: auto;
  background: var(--ui-white);
  border-radius: 22px;
  box-shadow: 0 24px 70px rgba(15, 23, 42, .28);
  padding: 22px;
}

.event-comment-read-modal__close{
  position: absolute;
  right: 14px;
  top: 12px;
  width: var(--ui-size-md);
  height: var(--ui-size-md);
  border: 0;
  border-radius: var(--ui-radius-pill);
  background: #f1f5f9;
  color: #0f172a;
  font-size: 24px;
  line-height: var(--ui-line-tight);
  cursor: pointer;
}

.event-comment-read-modal__cols{
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--ui-space-xl);
  margin-top: 14px;
}

.event-comment-read-modal__cols h4{
  margin: var(--ui-margin-bottom-md);
  font-size: 14px;
}

.event-comment-read-list{
  display: grid;
  gap: var(--ui-space-compact);
}

.event-comment-read-person,
.event-comment-read-empty{
  border: 1px solid #e2e8f0;
  border-radius: var(--ui-radius-lg);
  padding: var(--ui-inset-9-10);
  background: var(--ui-surface-light);
}

.event-comment-read-person strong{
  display: block;
  font-size: var(--ui-font-md);
}

.event-comment-read-person span,
.event-comment-read-person small{
  display: block;
  color: var(--ui-muted);
  font-size: var(--ui-font-xs);
  margin-top: 2px;
}

.event-comment-read-empty{
  color: var(--ui-muted);
  font-size: var(--ui-font-md);
}

@media (max-width: 640px) {
  .event-comment-read-modal{
    align-items: flex-end;
    padding: 0;
  }

  .event-comment-read-modal__dialog{
    width: 100%;
    max-height: 86vh;
    border-radius: 22px 22px 0 0;
  }

  .event-comment-read-modal__cols{
    grid-template-columns: 1fr;
  }
}

.event-attendance-panel,
.event-description-panel,
.event-videos-panel{
  --event-info-pad-x: 30px;
  --event-info-pad-y: 24px;
}

.event-attendance-panel{
  padding: 0;
  overflow: hidden;
}

.event-attendance-panel .attendance-status-card{
  padding: var(--event-info-pad-y) var(--event-info-pad-x);
  border-bottom: 0;
  background: var(--ui-white);
}

.event-attendance-panel .attendance-window-info,
.event-attendance-panel .event-row,
.event-attendance-panel .event-attendance-actions,
.event-attendance-panel .attendance-child-list{
  margin-left: var(--event-info-pad-x);
  margin-right: var(--event-info-pad-x);
}

.event-attendance-panel .attendance-window-info{
  margin-top: 16px;
}

.event-attendance-panel .event-row{
  margin-top: 18px;
}

.event-attendance-panel .event-attendance-actions{
  margin-bottom: var(--event-info-pad-y);
}

.event-attendance-panel .attendance-child-list{
  padding: var(--event-info-pad-y) 0;
}

.event-description-panel,
.event-videos-panel{
  padding: var(--event-info-pad-y) var(--event-info-pad-x);
}

.event-description-panel h3,
.event-description-panel p,
.event-videos-head h3,
.event-videos-head p,
.event-attendance-panel .attendance-status-card strong,
.event-attendance-panel .attendance-status-card small{
  margin-left: 0;
}

.event-description-panel h3,
.event-videos-head h3{
  margin-bottom: 8px;
}

.event-description-panel p,
.event-videos-head p,
.event-attendance-panel .attendance-status-card small{
  margin-top: 0;
}

@media (max-width: 760px) {
  .event-attendance-panel,
.event-description-panel,
.event-videos-panel{
    --event-info-pad-x: 18px;
    --event-info-pad-y: 18px;
  }

  .event-attendance-panel .attendance-status-card{
    align-items: flex-start;
  }

  .event-videos-head h3{
    margin-bottom: 6px;
  }
}

.event-attendance-panel .attendance-status-card strong{
  font-size: 1.22rem;
  line-height: 1.18;
}

.event-attendance-panel .attendance-status-card small{
  font-size: var(--ui-font-body);
  line-height: var(--ui-line-label);
}

.event-description-panel h3{
  margin: 0 0 22px !important;
}

.event-description-panel p{
  margin: 0 !important;
}

@media (max-width: 760px) {
  .event-attendance-panel .attendance-status-card strong{
    font-size: 1.05rem;
  }

  .event-attendance-panel .attendance-status-card small{
    font-size: .92rem;
  }

  .event-description-panel h3{
    margin-bottom: 18px !important;
  }
}

body .app-shell .event-attendance-panel,
body .app-shell .event-description-panel,
body .app-shell .event-videos-panel{
  --event-detail-x: 30px;
  --event-detail-y: 24px;
  box-sizing: border-box;
}

body .app-shell .event-attendance-panel{
  padding: 0 !important;
  overflow: hidden;
}

body .app-shell .event-attendance-panel .attendance-status-card{
  padding: var(--event-detail-y) var(--event-detail-x) !important;
  margin: 0 !important;
  border-bottom: 0 !important;
}

body .app-shell .event-attendance-panel .attendance-status-card > div:first-child{
  margin: 0 !important;
  padding: 0 !important;
}

body .app-shell .event-attendance-panel .attendance-status-card strong{
  margin: 0 0 6px 0 !important;
  padding: 0 !important;
  font-size: 1.22rem !important;
  line-height: 1.18 !important;
}

body .app-shell .event-attendance-panel .attendance-status-card small{
  margin: 0 !important;
  padding: 0 !important;
  font-size: var(--ui-font-body) !important;
  line-height: var(--ui-line-label) !important;
}

body .app-shell .event-description-panel,
body .app-shell .event-videos-panel{
  padding: var(--event-detail-y) var(--event-detail-x) !important;
}

body .app-shell .event-description-panel h3,
body .app-shell .event-videos-panel .event-videos-head h3{
  margin: 0 0 22px 0 !important;
  padding: 0 !important;
  transform: none !important;
  font-size: var(--ui-font-heading-sm);
  line-height: var(--ui-line-control);
}

body .app-shell .event-description-panel p,
body .app-shell .event-videos-panel .event-videos-head p{
  margin: 0 !important;
  padding: 0 !important;
  transform: none !important;
}

body .app-shell .event-videos-panel .event-videos-head{
  margin: 0 0 16px 0 !important;
  padding: 0 !important;
}

@media (max-width: 760px) {
  body .app-shell .event-attendance-panel,
body .app-shell .event-description-panel,
body .app-shell .event-videos-panel{
    --event-detail-x: 18px;
    --event-detail-y: 18px;
  }

  body .app-shell .event-attendance-panel .attendance-status-card strong{
    font-size: 1.05rem !important;
  }

  body .app-shell .event-attendance-panel .attendance-status-card small{
    font-size: .92rem !important;
  }

  body .app-shell .event-description-panel h3,
body .app-shell .event-videos-panel .event-videos-head h3{
    margin-bottom: 18px !important;
  }
}

.app-impersonation-bar{
  position: sticky;
  top: 0;
  z-index: 1200;
  border-bottom: 1px solid #f3c35b;
  background: #fff4cf;
  color: #382b08;
}

.app-impersonation-bar__inner{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--ui-space-xl);
  padding-top: 10px;
  padding-bottom: 10px;
}

.admin-user-row__impersonate{
  width: fit-content;
  margin: 4px 0 0;
}

.admin-user-row__impersonate .btn{
  white-space: nowrap;
}

@media (max-width: 760px) {
  .app-impersonation-bar__inner{
    align-items: stretch;
    flex-direction: column;
    gap: var(--ui-space-md);
  }
}

.event-comment-mention-wrap{
  position: relative;
}

.event-comment-mention-wrap textarea{
  width: 100%;
}

.event-mention-autocomplete{
  position: absolute;
  z-index: 40;
  left: 0;
  right: 0;
  top: calc(100% + 4px);
  max-height: 240px;
  overflow-y: auto;
  padding: var(--ui-space-xs);
  border: 1px solid #d8dde5;
  border-radius: var(--ui-radius-sm);
  background: var(--ui-white);
  box-shadow: 0 12px 30px rgba(15, 23, 42, .16);
}

.event-mention-option{
  display: block;
  width: 100%;
  padding: 9px 11px;
  border: 0;
  border-radius: 7px;
  background: transparent;
  color: #20242a;
  font: inherit;
  font-size: .88rem;
  font-weight: var(--ui-weight-bold);
  line-height: var(--ui-line-label);
  text-align: left;
  cursor: pointer;
}

.event-mention-option:hover,
.event-mention-option.is-active{
  background: #eef4ff;
  color: #174ea6;
}

@media (max-width: 760px) {
  .event-mention-autocomplete{
    max-height: 210px;
  }

  .event-mention-option{
    min-height: var(--ui-size-lg);
    padding: 10px 11px;
    font-size: var(--ui-font-label);
  }
}

/* PATCH 406: uživatelská karta – dva řádky v úzkém admin boxu */
body .admin-users-card--users .admin-users-filter{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
}

body .admin-users-card--users .admin-users-filter__actions{
  grid-column:1/-1!important;
  justify-content:flex-start!important;
}

body .admin-users-card--users .admin-user-row{
  grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
  align-items:start!important;
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  box-sizing:border-box!important;
  overflow:visible!important;
}

body .admin-users-card--users .admin-user-row__identity{
  grid-column:1/-1!important;
  grid-template-columns:44px minmax(0,1fr) minmax(190px,auto)!important;
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  align-items:start!important;
}

body .admin-users-card--users .admin-user-row__text,
body .admin-users-card--users .admin-user-row__identity-actions,
body .admin-users-card--users .admin-user-row__role,
body .admin-users-card--users .admin-user-row__links{
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
}

body .admin-users-card--users .admin-user-row__identity-actions{
  justify-items:start!important;
  align-content:start!important;
  gap:var(--ui-space-sm)!important;
}

body .admin-users-card--users .admin-user-row__identity-actions .admin-user-row__push,
body .admin-users-card--users .admin-user-row__identity-actions .admin-user-row__impersonate,
body .admin-users-card--users .admin-user-row__identity-actions .btn{
  width:auto!important;
  max-width:100%!important;
}

body .admin-users-card--users .admin-user-row__role{
  grid-template-columns:minmax(0,1fr) minmax(120px,auto) auto!important;
}

body .admin-users-card--users .admin-user-row__links{
  align-self:start!important;
}

body .admin-users-card--users .admin-user-row-link{
  grid-template-columns:minmax(70px,auto) minmax(0,1fr) auto!important;
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
}

body .admin-users-card--users .admin-user-row__role select,
body .admin-users-card--users .admin-user-row-link select{
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
}

@media (max-width:640px){
  body .admin-users-card--users .admin-users-filter{
    grid-template-columns:1fr!important;
  }

  body .admin-users-card--users .admin-user-row{
    grid-template-columns:1fr!important;
  }

  body .admin-users-card--users .admin-user-row__identity{
    grid-template-columns:38px minmax(0,1fr)!important;
  }

  body .admin-users-card--users .admin-user-row__identity-actions{
    grid-column:1/-1!important;
    justify-items:stretch!important;
  }

  body .admin-users-card--users .admin-user-row__identity-actions .admin-user-row__push,
  body .admin-users-card--users .admin-user-row__identity-actions .admin-user-row__impersonate,
  body .admin-users-card--users .admin-user-row__identity-actions .btn{
    width:100%!important;
  }

  body .admin-users-card--users .admin-user-row__role,
  body .admin-users-card--users .admin-user-row-link{
    grid-template-columns:1fr!important;
  }
}

/* PATCH 145: rychlé reakce u komentářů události */
.event-comment-reactions{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:5px;
  margin-top:8px;
}
.event-comment-reaction{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:3px;
  min-width:32px;
  min-height:28px;
  padding:3px 7px;
  border:1px solid var(--border, #d8dee8);
  border-radius:999px;
  background:#fff;
  color:inherit;
  font:inherit;
  line-height:1;
  cursor:pointer;
}
.event-comment-reaction:hover,
.event-comment-reaction:focus-visible{
  border-color:#7d8ba1;
  transform:translateY(-1px);
}
.event-comment-reaction.is-active{
  border-color:#111827;
  background:#eef2f7;
  box-shadow:inset 0 0 0 1px #111827;
}
.event-comment-reaction small{
  font-size:11px;
  font-weight:700;
}
@media (max-width:760px){
  .event-comment-reactions{
    gap:4px;
  }
  .event-comment-reaction{
    min-width:30px;
    min-height:28px;
    padding:3px 6px;
  }
}

/* PATCH 197: statistiky docházky v přehledu týmu */
.team-attendance-filters{
  display:grid;
  gap:var(--ui-space-lg);
  margin-bottom:var(--ui-space-xl);
  padding:var(--ui-space-xl);
}
.team-attendance-filters__grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:var(--ui-space-lg);
}
.team-attendance-filters .app-field-label{
  gap:var(--ui-space-compact);
  color:var(--app-text);
  font-size:var(--ui-font-body-sm);
  font-weight:var(--ui-weight-black);
}
.team-attendance-filters input,
.team-attendance-filters select{
  box-sizing:border-box;
  min-height:44px;
  padding:10px 12px;
  border:1px solid var(--app-line);
  border-radius:var(--ui-radius-lg);
  background:var(--ui-white);
  color:var(--app-text);
}
.team-attendance-filters__dates{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,220px));
  gap:var(--ui-space-lg);
}
.team-attendance-filters__dates[hidden]{
  display:none;
}
.team-attendance-filters__actions{
  gap:var(--ui-space-md);
  flex-wrap:wrap;
}
.team-attendance-summary{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:var(--ui-space-xl);
  margin-bottom:var(--ui-space-md);
  padding:var(--ui-space-xl);
}
.team-attendance-summary__main{
  display:grid;
  gap:2px;
}
.team-attendance-summary__main > span{
  font-weight:var(--ui-weight-black);
}
.team-attendance-summary__main > strong{
  font-size:2rem;
  line-height:var(--ui-line-tight);
}
.team-attendance-summary__main > small{
  color:var(--app-muted);
}
.team-attendance-summary__stats{
  display:grid;
  grid-template-columns:repeat(4,minmax(88px,1fr));
  gap:var(--ui-space-md);
}
.team-attendance-summary__stats span{
  display:grid;
  gap:2px;
  text-align:center;
  color:var(--app-muted);
  font-size:var(--ui-font-body-sm);
}
.team-attendance-summary__stats strong{
  color:var(--app-text);
  font-size:var(--ui-font-heading-sm);
}
.team-attendance-note{
  margin-bottom:var(--ui-space-xl);
}
.team-player-attendance-detail{
  display:block;
  margin-top:4px;
  color:var(--app-muted);
  font-style:normal;
  line-height:var(--ui-line-body);
}
@media (max-width:760px){
  .team-attendance-filters__grid,
  .team-attendance-filters__dates{
    grid-template-columns:1fr;
  }
  .team-attendance-summary{
    align-items:flex-start;
    flex-direction:column;
  }
  .team-attendance-summary__stats{
    width:100%;
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .team-attendance-summary__stats span{
    text-align:left;
  }
  .team-player-attendance-detail{
    font-size:var(--ui-font-xs);
  }
}

/* PATCH 198: oprava jednosloupcového rozložení statistik docházky */
.team-dashboard-grid.team-dashboard-grid--single{
  grid-template-columns:minmax(0,1fr)!important;
}
.team-dashboard-grid--single > .team-panel{
  width:100%;
  min-width:0;
  grid-column:1 / -1;
}
.team-attendance-filters,
.team-attendance-summary{
  width:100%;
  min-width:0;
  box-sizing:border-box;
}
.team-attendance-filters__grid > *,
.team-attendance-summary__main,
.team-attendance-summary__stats{
  min-width:0;
}


/* PATCH 199: plna sirka upravy zprav a spolehlive formatovani editoru */
.admin-message-card.is-editing{
  grid-template-columns:minmax(0,1fr);
}
.admin-message-card.is-editing .admin-message-card__icon,
.admin-message-card.is-editing > .admin-message-card__actions{
  display:none;
}
.admin-message-card.is-editing .admin-message-card__main{
  width:100%;
  min-width:0;
}
.admin-message-card.is-editing .admin-message-edit-form{
  width:100%;
  max-width:none;
}
.admin-message-edit-form .nicEdit-panelContain,
.admin-message-edit-form .nicEdit-panel,
.admin-message-edit-form .nicEdit-main,
.admin-message-edit-form .nicEdit-main + textarea{
  box-sizing:border-box;
  max-width:100%!important;
}
.admin-message-edit-form .nicEdit-panelContain,
.admin-message-edit-form .nicEdit-main{
  width:100%!important;
}
.message-rich-source-toggle{
  justify-self:start;
  margin-top:4px;
}
.message-rich-editor__source{
  display:block!important;
  min-height:280px!important;
  font-family:Consolas, Monaco, monospace!important;
  font-size:.9rem!important;
  line-height:1.5!important;
  white-space:pre-wrap;
}
.message-rich-body h1,.message-detail-card__body h1{margin:18px 0 9px;font-size:1.45rem;line-height:1.2;}
.message-rich-body h2,.message-detail-card__body h2{margin:16px 0 8px;font-size:1.28rem;line-height:1.25;}
.message-rich-body h5,.message-detail-card__body h5{margin:11px 0 6px;font-size:.98rem;line-height:1.3;}
.message-rich-body h6,.message-detail-card__body h6{margin:10px 0 5px;font-size:.92rem;line-height:1.3;}
.message-rich-body b,.message-detail-card__body b,
.message-rich-body strong,.message-detail-card__body strong{font-weight:800;}
.message-rich-body i,.message-detail-card__body i,
.message-rich-body em,.message-detail-card__body em{font-style:italic;}


/* PATCH 200: spolehlive vizualni formatovani v editoru zprav */
.message-rich-format-tools{
  display:inline-flex;
  align-items:center;
  gap:2px;
  float:left;
  margin:2px 3px 0 1px;
}
.message-rich-format-button{
  width:24px;
  height:22px;
  padding:0;
  border:1px solid #c9ced6;
  border-radius:3px;
  background:#fff;
  color:#333;
  cursor:pointer;
  font-family:Arial,sans-serif;
  font-size:14px;
  line-height:20px;
  text-align:center;
}
.message-rich-format-button:hover,
.message-rich-format-button:focus-visible{
  background:#eef1f4;
  outline:none;
}
.message-rich-format-button.is-bold{font-weight:800;}
.message-rich-format-button.is-italic{font-style:italic;}
.message-rich-format-button.is-underline{text-decoration:underline;}
.admin-form .nicEdit-main strong,
.admin-form .nicEdit-main b{font-weight:800!important;}
.admin-form .nicEdit-main em,
.admin-form .nicEdit-main i{font-style:italic!important;}
.admin-form .nicEdit-main u{text-decoration:underline!important;}

/* PATCH 203 – více týmů a přímí příjemci zpráv */
.admin-message-target-group{display:grid;gap:8px;}
.admin-player-checklist{max-height:320px;}
.admin-player-checklist .admin-team-check span{display:grid;gap:2px;}
.admin-player-checklist .admin-team-check small{font-weight:600;color:var(--ui-muted);}

/* PATCH 204: náhled obrázků v komentářích */
.event-comment-attachment--image{
  cursor:zoom-in;
}
.event-comment-image-modal[hidden]{
  display:none!important;
}
.event-comment-image-modal__backdrop{
  position:absolute;
  inset:0;
  background:rgba(15,23,42,.82);
  backdrop-filter:blur(3px);
}
.event-comment-image-modal__dialog{
  position:absolute;
  inset:20px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:12px;
  pointer-events:none;
}
.event-comment-image-modal__dialog img{
  display:block;
  max-width:min(96vw,1400px);
  max-height:calc(100vh - 110px);
  object-fit:contain;
  border-radius:12px;
  background:#fff;
  box-shadow:0 24px 70px rgba(0,0,0,.38);
  pointer-events:auto;
}
.event-comment-image-modal__dialog p{
  max-width:min(92vw,900px);
  margin:0;
  color:#fff;
  font-size:var(--ui-font-label);
  font-weight:var(--ui-weight-bold);
  text-align:center;
  overflow-wrap:anywhere;
  pointer-events:auto;
}
.event-comment-image-modal__close{
  position:fixed;
  top:14px;
  right:14px;
  z-index:1;
  width:42px;
  height:42px;
  border:0;
  border-radius:var(--ui-radius-round);
  background:rgba(255,255,255,.94);
  color:#111827;
  font-size:1.65rem;
  line-height:1;
  cursor:pointer;
  pointer-events:auto;
}


/* PATCH 205 – nové komentáře bez přerušení čtení historie */
.event-comments-new{
  position:sticky;
  top:0;
  z-index:4;
  width:100%;
  padding:10px 16px;
  border:0;
  border-bottom:1px solid #c9dcef;
  background:#eaf4ff;
  color:#145a96;
  font:inherit;
  font-weight:var(--ui-weight-black);
  cursor:pointer;
}
.event-comments-new[hidden]{
  display:none!important;
}


.team-statistics-summary-grid{
  display:grid;
  grid-template-columns:minmax(0,2fr) repeat(2,minmax(190px,1fr));
  gap:14px;
  margin-bottom:12px;
}
.team-statistics-summary-grid .team-attendance-summary{margin:0;}
.team-player-leader-card{
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:8px;
  min-width:0;
}
.team-player-leader-card > span{
  color:var(--muted);
  font-size:.84rem;
  font-weight:var(--ui-weight-extrabold);
  text-transform:uppercase;
  letter-spacing:.04em;
}
.team-player-leader-card > strong{
  color:var(--ui-ink);
  font-size:1.1rem;
  line-height:1.25;
}
.team-player-leader-card > small{color:var(--muted);}
.team-player-performance{
  display:flex;
  flex-wrap:wrap;
  gap:6px 12px;
  margin-top:5px;
  color:var(--muted);
  font-size:.83rem;
}
.team-player-performance span{white-space:nowrap;}
.team-player-performance strong{color:var(--ui-ink);}
@media (max-width:900px){
  .team-statistics-summary-grid{grid-template-columns:1fr 1fr;}
  .team-statistics-summary-grid .team-attendance-summary{grid-column:1 / -1;}
}
@media (max-width:620px){
  .team-statistics-summary-grid{grid-template-columns:1fr;}
  .team-statistics-summary-grid .team-attendance-summary{grid-column:auto;}
  .team-player-performance{gap:5px 9px;}
}


/* PATCH 216 – zvýraznění upozornění na dashboardu */
.dashboard-page .dashboard-section--notifications{
  display:block !important;
  position:relative;
  margin-top:18px;
  padding:20px 22px 22px !important;
  border:1px solid rgba(217,45,64,.18) !important;
  border-radius:20px !important;
  background:linear-gradient(180deg,#fff 0%,#fff9fa 100%) !important;
  box-shadow:0 14px 34px rgba(17,24,39,.08) !important;
  overflow:hidden;
}
.dashboard-page .dashboard-section--notifications::before{
  content:'' !important;
  display:block !important;
  position:absolute;
  inset:0 auto 0 0;
  width:6px;
  background:var(--app-red,#dc3545);
}
.dashboard-page .dashboard-section--notifications .section-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  margin:0 0 14px !important;
}
.dashboard-page .dashboard-section--notifications .section-head h2{
  margin:0;
  font-size:1.35rem;
  line-height:1.1;
  color:var(--ui-ink);
}
.dashboard-page .dashboard-section--notifications .section-head .muted{
  display:block !important;
  margin:5px 0 0;
  color:var(--app-muted);
}
.dashboard-page .dashboard-section--notifications .section-head .pill{
  display:inline-flex !important;
  align-items:center;
  justify-content:center;
  min-width:38px;
  min-height:38px;
  padding:0 11px;
  border-radius:999px;
  background:var(--app-red,#dc3545) !important;
  color:#fff !important;
  font-weight:800;
  box-shadow:0 8px 18px rgba(217,45,64,.22);
}
.dashboard-page .dashboard-notification-list{
  display:grid !important;
  gap:10px !important;
  margin:0;
  padding:0 !important;
}
.dashboard-page .dashboard-notification{
  position:relative !important;
  display:grid !important;
  grid-template-columns:auto minmax(0,1fr) 46px !important;
  align-items:center !important;
  gap:12px !important;
  min-height:72px;
  padding:12px 0 12px 14px !important;
  border:1px solid rgba(17,24,39,.09) !important;
  border-radius:16px !important;
  background:#fff !important;
  color:var(--ui-ink) !important;
  box-shadow:0 5px 16px rgba(15,23,42,.05) !important;
  overflow:hidden;
  text-decoration:none;
}
.dashboard-page .dashboard-notification--urgent{
  border-color:rgba(217,45,64,.22) !important;
  background:linear-gradient(90deg,#fff7f8 0%,#fff 42%) !important;
}
.dashboard-page .dashboard-notification__type{
  display:inline-flex !important;
  align-items:center;
  justify-content:center;
  min-width:76px;
  min-height:30px;
  margin:0 !important;
  padding:6px 10px !important;
  border:0 !important;
  border-radius:999px !important;
  font-size:.72rem !important;
  line-height:1 !important;
  font-weight:800 !important;
}
.dashboard-page .dashboard-notification__type--message{background:#fff0d7 !important;color:#8a4d00 !important;}
.dashboard-page .dashboard-notification__type--comment{background:#e8f3ff !important;color:#075e9f !important;}
.dashboard-page .dashboard-notification__type--event{background:#ffe8eb !important;color:#a61f32 !important;}
.dashboard-page .dashboard-notification__body{
  display:grid !important;
  gap:4px !important;
  min-width:0;
  padding:0 !important;
}
.dashboard-page .dashboard-notification__body strong{
  display:block;
  margin:0 !important;
  overflow:hidden;
  color:var(--ui-ink) !important;
  font-size:1rem !important;
  line-height:1.2 !important;
  font-weight:800 !important;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.dashboard-page .dashboard-notification__body em{
  display:block;
  margin:0 !important;
  overflow:hidden;
  color:var(--app-muted) !important;
  font-size:.82rem !important;
  line-height:1.25 !important;
  font-style:normal;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.dashboard-page .dashboard-notification__arrow{
  grid-column:3 !important;
  position:static !important;
  display:flex !important;
  align-self:stretch !important;
  align-items:center !important;
  justify-content:center !important;
  width:46px !important;
  min-width:46px !important;
  height:auto !important;
  min-height:100% !important;
  margin:0 !important;
  padding:0 !important;
  border-left:1px solid rgba(17,24,39,.07) !important;
  color:#777f88 !important;
  font-size:1.9rem !important;
  line-height:1 !important;
}
.dashboard-page .dashboard-notification__arrow::after{content:none !important;display:none !important;}
.dashboard-page .dashboard-notification:hover,
.dashboard-page .dashboard-notification:focus-visible{
  transform:translateY(-1px);
  border-color:rgba(217,45,64,.30) !important;
  box-shadow:0 9px 22px rgba(15,23,42,.09) !important;
}

@media (max-width:760px){
  .dashboard-page .dashboard-section--notifications{
    margin-top:14px !important;
    padding:16px 14px 16px 18px !important;
    border:1px solid rgba(217,45,64,.18) !important;
    border-radius:18px !important;
    background:linear-gradient(180deg,#fff 0%,#fff9fa 100%) !important;
    box-shadow:0 10px 26px rgba(17,24,39,.07) !important;
  }
  .dashboard-page .dashboard-section--notifications::before{
    display:block !important;
    width:5px;
  }
  .dashboard-page .dashboard-section--notifications .section-head{
    display:flex !important;
    margin-bottom:12px !important;
  }
  .dashboard-page .dashboard-section--notifications .section-head .muted{
    display:none !important;
  }
  .dashboard-page .dashboard-section--notifications .section-head .pill{
    min-width:34px;
    min-height:34px;
    font-size:.8rem !important;
  }
  .dashboard-page .dashboard-notification{
    grid-template-columns:minmax(0,1fr) 42px !important;
    min-height:74px !important;
    gap:0 !important;
    padding:0 !important;
  }
  .dashboard-page .dashboard-notification__type{
    display:none !important;
  }
  .dashboard-page .dashboard-notification__body{
    grid-column:1 !important;
    justify-content:center !important;
    padding:13px 12px 13px 15px !important;
  }
  .dashboard-page .dashboard-notification__body strong{
    font-size:.96rem !important;
    white-space:normal;
  }
  .dashboard-page .dashboard-notification__body em{
    margin-top:2px !important;
    font-size:.76rem !important;
    white-space:normal;
  }
  .dashboard-page .dashboard-notification__arrow{
    grid-column:2 !important;
    width:42px !important;
    min-width:42px !important;
    font-size:1.75rem !important;
  }
}

/* PATCH 217 – Ankety */
.admin-communication-switch{margin-bottom:16px;}
.admin-communication-switch .app-tabs{margin:0;}
.admin-poll-tabs{margin:0 0 18px;}
.admin-modern-page--polls{display:flex;flex-direction:column;gap:18px;}
.poll-date-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;}
.poll-date-grid label{display:flex;flex-direction:column;gap:7px;}
.poll-multiple-toggle{display:flex !important;flex-direction:row !important;align-items:center;gap:10px;padding:14px;border:1px solid var(--border);border-radius:var(--ui-radius-lg);background:var(--ui-surface-light);}
.poll-multiple-toggle input{width:20px;height:20px;flex:0 0 auto;}
.poll-option-builder{display:flex;flex-direction:column;gap:10px;}
.poll-option-builder__row{display:grid;grid-template-columns:minmax(0,1fr) 44px;gap:8px;align-items:center;}
.poll-option-builder__row .app-icon-action{width:44px;height:44px;}
.admin-poll-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:16px;align-items:start;}
.admin-poll-card .admin-message-card__icon{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:14px;background:var(--app-yellow);color:var(--ui-ink);font-weight:var(--ui-weight-extrabold);}
.poll-detail-page{display:flex;flex-direction:column;gap:18px;}
.poll-detail-page > .section-head h1{margin:7px 0 4px;}
.poll-description,.poll-vote-card,.poll-results-card{padding:22px;}
.poll-description p{margin:0;line-height:1.65;}
.poll-option-list{display:flex;flex-direction:column;gap:10px;}
.poll-option-choice{display:flex;align-items:center;gap:12px;padding:15px 16px;border:1px solid var(--border);border-radius:var(--ui-radius-lg);background:var(--ui-white);cursor:pointer;font-weight:var(--ui-weight-bold);transition:.18s ease;}
.poll-option-choice:hover,.poll-option-choice.is-selected{border-color:var(--ui-ink);box-shadow:0 7px 18px rgba(15,23,42,.07);}
.poll-option-choice input{width:21px;height:21px;flex:0 0 auto;}
.poll-results-list{display:flex;flex-direction:column;gap:16px;}
.poll-result-row{display:flex;flex-direction:column;gap:9px;padding:15px;border:1px solid var(--border);border-radius:var(--ui-radius-lg);background:var(--ui-white);}
.poll-result-row__head{display:flex;justify-content:space-between;gap:15px;align-items:center;}
.poll-result-row__head span{color:var(--muted);font-weight:var(--ui-weight-bold);white-space:nowrap;}
.poll-result-row .btn{align-self:flex-start;}
.poll-voters-modal{position:fixed;inset:0;z-index:10000;display:flex;align-items:center;justify-content:center;padding:18px;}
.poll-voters-modal[hidden]{display:none !important;}
.poll-voters-modal .app-modal-overlay__backdrop{position:absolute;inset:0;background:rgba(0,0,0,.72);}
.poll-voters-modal__dialog{position:relative;z-index:1;width:min(560px,100%);max-height:min(760px,88vh);overflow:auto;padding:20px;}
body.app-modal-open{overflow:hidden;}
.dashboard-page .dashboard-section--polls{
  position:relative;
  margin-top:18px;
  padding:20px 22px 22px !important;
  border:1px solid rgba(217,45,64,.18) !important;
  border-radius:20px !important;
  background:linear-gradient(180deg,#fff 0%,#fff9fa 100%) !important;
  box-shadow:0 14px 34px rgba(17,24,39,.08) !important;
  overflow:hidden;
}
.dashboard-page .dashboard-section--polls::before{
  content:'';
  position:absolute;
  inset:0 auto 0 0;
  width:6px;
  background:var(--app-red,#dc3545);
}
.dashboard-page .dashboard-section--polls .section-head{margin:0 0 14px !important;}
.dashboard-page .dashboard-poll-item{
  grid-template-columns:minmax(0,1fr) 46px !important;
  padding:12px 0 12px 18px !important;
}
.dashboard-page .dashboard-poll-item::before{
  content:'';
  position:absolute;
  inset:0 auto 0 0;
  width:5px;
  background:var(--app-red,#dc3545);
}
.dashboard-page .dashboard-poll-item--voted{
  border-color:rgba(22,163,74,.22) !important;
  background:#fff !important;
}
.dashboard-page .dashboard-poll-item--voted::before{
  background:#16a34a;
}
.dashboard-page .dashboard-poll-item--pending{
  border-color:rgba(217,45,64,.22) !important;
  background:linear-gradient(90deg,#fff7f8 0%,#fff 42%) !important;
}
.dashboard-page .dashboard-poll-item__body{
  grid-column:1 !important;
  display:grid !important;
  gap:4px !important;
  min-width:0;
}
.dashboard-page .dashboard-poll-item .dashboard-notification__arrow{grid-column:2 !important;}
.dashboard-page .dashboard-poll-item__body strong{
  display:block !important;
  margin:0 !important;
  color:var(--ui-ink) !important;
  font-size:1rem !important;
  line-height:1.2 !important;
  font-weight:800 !important;
  white-space:normal !important;
  overflow:visible !important;
  text-overflow:clip !important;
}
.dashboard-page .dashboard-poll-item__body em{
  display:block !important;
  margin:0 !important;
  color:var(--app-muted) !important;
  font-size:.82rem !important;
  line-height:1.25 !important;
  font-style:normal !important;
  white-space:normal !important;
  overflow:visible !important;
  text-overflow:clip !important;
}
.dashboard-page .dashboard-poll-item--pending .dashboard-poll-item__body em{
  color:#a61f32 !important;
}
.dashboard-page .dashboard-poll-item--voted .dashboard-poll-item__body em{
  color:#4b5563 !important;
}
@media (max-width:760px){
  .poll-date-grid{grid-template-columns:1fr;}
  .admin-poll-card{grid-template-columns:auto minmax(0,1fr);}
  .admin-poll-card .admin-message-card__actions{grid-column:1/-1;width:100%;}
  .poll-description,.poll-vote-card,.poll-results-card{padding:16px;}
  .poll-result-row__head{align-items:flex-start;flex-direction:column;gap:4px;}
  .dashboard-page .dashboard-section--polls{padding:18px 16px 18px 20px !important;}
  .dashboard-page .dashboard-poll-item{padding-left:16px !important;}
  .dashboard-page .dashboard-poll-item__body strong,
  .dashboard-page .dashboard-poll-item__body em{width:100%;}
}


/* PATCH 218 – jednotné administrační menu a karty anket */
.admin-primary-nav-shell{margin-bottom:18px;}
.admin-primary-nav{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:8px;
  width:100%;
}
.admin-primary-nav__item{
  display:flex;
  align-items:center;
  justify-content:center;
  min-width:0;
  min-height:42px;
  padding:9px 11px;
  border:1px solid var(--border);
  border-radius:12px;
  background:var(--ui-white);
  color:var(--muted);
  font-size:.86rem;
  font-weight:var(--ui-weight-extrabold);
  line-height:1.15;
  text-align:center;
  text-decoration:none;
  text-transform:uppercase;
  box-shadow:0 4px 12px rgba(15,23,42,.035);
  transition:border-color .18s ease,background .18s ease,color .18s ease,transform .18s ease;
}
.admin-primary-nav__item:hover,
.admin-primary-nav__item:focus-visible{
  border-color:rgba(17,24,39,.28);
  color:var(--ui-ink);
  transform:translateY(-1px);
}
.admin-primary-nav__item.is-active{
  border-color:var(--ui-ink);
  background:var(--ui-ink);
  color:var(--ui-white);
  box-shadow:0 8px 18px rgba(15,23,42,.14);
}
.admin-subnav{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin:0 0 18px;
}
.admin-subnav__item{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:40px;
  padding:8px 14px;
  border:1px solid var(--border);
  border-radius:11px;
  background:var(--ui-white);
  color:var(--muted);
  font-size:.88rem;
  font-weight:var(--ui-weight-extrabold);
  text-decoration:none;
}
.admin-subnav__item:hover,
.admin-subnav__item:focus-visible{border-color:rgba(17,24,39,.28);color:var(--ui-ink);}
.admin-subnav__item.is-active{border-color:var(--ui-ink);background:var(--ui-ink);color:var(--ui-white);}
.admin-modern-page--polls .admin-modern-panel--list{padding:20px;}
.admin-poll-list{gap:12px;}
.admin-poll-card{
  grid-template-columns:46px minmax(0,1fr) auto;
  gap:var(--ui-space-xl);
  align-items:start;
  padding:16px 18px;
}
.admin-poll-card .admin-message-card__icon{
  width:46px;
  height:46px;
  border-radius:var(--ui-radius-md);
}
.admin-poll-card .admin-message-card__actions{
  align-self:center;
  padding-right:0;
}
.admin-poll-card .admin-message-card__actions form{margin:0;}
.admin-poll-card .admin-message-card__actions .btn{min-height:40px;}

@media (max-width:760px){
  .admin-primary-nav{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:7px;
  }
  .admin-primary-nav__item{
    min-height:40px;
    padding:8px 9px;
    font-size:.78rem;
  }
  .admin-primary-nav__item:last-child:nth-child(odd){grid-column:1/-1;}
  .admin-subnav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));}
  .admin-subnav__item{width:100%;padding-inline:8px;font-size:.82rem;}
  .admin-subnav__item:last-child:nth-child(odd){grid-column:1/-1;}
  .admin-modern-page--polls .admin-modern-panel--list{padding:16px;}
  .admin-poll-card{
    grid-template-columns:42px minmax(0,1fr);
    gap:12px;
    padding:14px;
  }
  .admin-poll-card .admin-message-card__icon{width:42px;height:42px;}
  .admin-poll-card .admin-message-card__actions{
    grid-column:1/-1;
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:8px;
    width:100%;
    padding-top:2px;
  }
  .admin-poll-card .admin-message-card__actions .btn,
  .admin-poll-card .admin-message-card__actions form,
  .admin-poll-card .admin-message-card__actions form .btn{width:100%;}
}

/* PATCH 219 – čitelnost administračního menu a odhlášení */
.admin-primary-nav__item,
.admin-primary-nav__item:visited{
  color:#4f5357;
}
.admin-primary-nav__item:hover,
.admin-primary-nav__item:focus-visible{
  color:var(--ui-ink);
}
.admin-primary-nav__item.is-active,
.admin-primary-nav__item.is-active:visited{
  color:var(--ui-white);
}
body:not(.auth-page):not(.intro-page) .app-header__logout-button{
  color:var(--ui-white);
  opacity:1;
}
body:not(.auth-page):not(.intro-page) .app-header__logout-button:hover,
body:not(.auth-page):not(.intro-page) .app-header__logout-button:focus-visible{
  color:var(--ui-white);
  text-decoration:underline;
}

/* PATCH 220 – čitelnost podmenu anket */
.admin-subnav__item,
.admin-subnav__item:visited{
  color:#4f5357;
}
.admin-subnav__item:hover,
.admin-subnav__item:focus-visible{
  color:var(--ui-ink);
}
.admin-subnav__item.is-active,
.admin-subnav__item.is-active:visited{
  color:var(--ui-white);
}


/* PATCH 221 – sjednocený detail ankety */
.poll-detail-page{gap:var(--ui-space-xl);}
.poll-hero-card,
.poll-vote-card{
  padding:24px;
  border-radius:var(--ui-radius-2xl);
  overflow:hidden;
}
.poll-hero-card__head{margin-bottom:0;align-items:flex-start;}
.poll-hero-card__head h1{margin:8px 0 6px;}
.poll-hero-card__head .btn{flex:0 0 auto;}
.poll-description{
  margin-top:18px;
  padding:16px 18px;
  border-radius:var(--ui-radius-xl);
}
.poll-description p{margin:0;line-height:1.6;}
.poll-voter-summary{margin:7px 0 0;color:var(--ui-ink);font-weight:var(--ui-weight-bold);}
.poll-vote-form{gap:16px;}
.poll-option-list{gap:12px;}
.poll-option-card{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:12px;
  align-items:center;
  padding:14px 16px;
  border:1px solid var(--border);
  border-radius:var(--ui-radius-xl);
  background:var(--ui-white);
  transition:border-color .18s ease,box-shadow .18s ease,background .18s ease;
}
.poll-option-card:hover,
.poll-option-card.is-selected{
  border-color:var(--ui-ink);
  box-shadow:0 8px 22px rgba(15,23,42,.07);
}
.poll-option-card.is-selected{background:var(--ui-surface-light);}
.poll-option-choice{
  min-width:0;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
}
.poll-option-choice:hover,
.poll-option-choice.is-selected{border:0;box-shadow:none;}
.poll-option-choice--readonly{cursor:default;}
.poll-option-result{display:flex;align-items:center;gap:10px;}
.poll-option-result .attendance-progress{width:110px;min-width:80px;}
.poll-option-voters{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  min-width:58px;
  min-height:40px;
  padding:7px 10px;
  border:1px solid var(--border);
  border-radius:var(--ui-radius-pill);
  background:var(--ui-surface-light);
  color:var(--ui-ink);
  font:inherit;
  cursor:pointer;
}
.poll-option-voters:hover{border-color:var(--ui-ink);background:var(--ui-white);}
.poll-option-voters--static{cursor:default;}
.poll-vote-form > .btn{margin-top:4px;}
.poll-voters-modal__dialog{border-radius:var(--ui-radius-2xl);}
.poll-voter-list{gap:8px;}
.poll-voter-row{
  display:flex;
  align-items:center;
  justify-content:flex-start;
  gap:12px;
  padding:10px 12px;
  border-radius:var(--ui-radius-xl);
}
.poll-voter-row__avatar{width:44px;height:44px;flex:0 0 44px;object-fit:cover;}
@media (max-width:760px){
  .poll-hero-card,
  .poll-vote-card{padding:16px;border-radius:var(--ui-radius-xl);}
  .poll-hero-card__head{gap:14px;}
  .poll-option-card{grid-template-columns:1fr;padding:13px 14px;}
  .poll-option-result{justify-content:space-between;width:100%;}
  .poll-option-result .attendance-progress{flex:1;width:auto;}
  .poll-option-voters{flex:0 0 auto;}
}


/* PATCH 224 – pevné sjednocení detailu ankety se stylem aplikace */
body:not(.auth-page):not(.intro-page) .poll-detail-page{
  display:flex !important;
  flex-direction:column !important;
  gap:18px !important;
}
body:not(.auth-page):not(.intro-page) .poll-detail-page > .poll-hero-card,
body:not(.auth-page):not(.intro-page) .poll-detail-page > .poll-vote-card{
  width:100% !important;
  max-width:none !important;
  box-sizing:border-box !important;
  margin:0 !important;
  padding:22px 24px !important;
  border:1px solid var(--app-line) !important;
  border-radius:var(--app-panel-radius) !important;
  background:var(--ui-white) !important;
  color:var(--app-text) !important;
  box-shadow:none !important;
  overflow:hidden !important;
}
body:not(.auth-page):not(.intro-page) .poll-detail-page .poll-hero-card__head,
body:not(.auth-page):not(.intro-page) .poll-detail-page .poll-vote-card > .app-section-head{
  display:flex !important;
  align-items:flex-start !important;
  justify-content:space-between !important;
  gap:16px !important;
  margin:0 !important;
}
body:not(.auth-page):not(.intro-page) .poll-detail-page .poll-hero-card h1{
  margin:9px 0 5px !important;
  color:var(--app-text) !important;
  font-size:clamp(1.65rem,3vw,2.2rem) !important;
  line-height:1.12 !important;
}
body:not(.auth-page):not(.intro-page) .poll-detail-page .poll-vote-card h2{
  margin:0 0 4px !important;
  color:var(--app-text) !important;
  font-size:1.28rem !important;
  line-height:1.25 !important;
}
body:not(.auth-page):not(.intro-page) .poll-detail-page .app-muted-copy{
  margin:5px 0 0 !important;
  color:var(--app-muted) !important;
  line-height:1.45 !important;
}
body:not(.auth-page):not(.intro-page) .poll-detail-page .poll-description{
  margin:18px 0 0 !important;
  padding:15px 17px !important;
  border:1px solid var(--app-line) !important;
  border-radius:var(--ui-radius-xl) !important;
  background:var(--ui-surface-light) !important;
  color:var(--app-text) !important;
}
body:not(.auth-page):not(.intro-page) .poll-detail-page .poll-voter-summary{
  margin:10px 0 0 !important;
  color:var(--app-text) !important;
  font-weight:var(--ui-weight-bold) !important;
}
body:not(.auth-page):not(.intro-page) .poll-detail-page .poll-vote-form{
  display:flex !important;
  flex-direction:column !important;
  gap:16px !important;
  margin-top:18px !important;
}
body:not(.auth-page):not(.intro-page) .poll-detail-page .poll-option-list{
  display:flex !important;
  flex-direction:column !important;
  gap:11px !important;
  margin-top:18px !important;
}
body:not(.auth-page):not(.intro-page) .poll-detail-page form .poll-option-list{
  margin-top:0 !important;
}
body:not(.auth-page):not(.intro-page) .poll-detail-page .poll-option-card{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto !important;
  align-items:center !important;
  gap:14px !important;
  min-height:62px !important;
  padding:12px 14px !important;
  border:1px solid var(--app-line) !important;
  border-radius:var(--ui-radius-xl) !important;
  background:var(--ui-white) !important;
  box-shadow:none !important;
}
body:not(.auth-page):not(.intro-page) .poll-detail-page .poll-option-card.is-selected{
  border-color:var(--ui-ink) !important;
  background:var(--ui-surface-light) !important;
  box-shadow:none !important;
}
body:not(.auth-page):not(.intro-page) .poll-detail-page .poll-option-choice,
body:not(.auth-page):not(.intro-page) .poll-detail-page label.poll-option-choice{
  display:flex !important;
  align-items:center !important;
  gap:12px !important;
  width:auto !important;
  min-width:0 !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  color:var(--app-text) !important;
  font-weight:var(--ui-weight-bold) !important;
  cursor:pointer !important;
}
body:not(.auth-page):not(.intro-page) .poll-detail-page .poll-option-choice input{
  width:20px !important;
  height:20px !important;
  min-width:20px !important;
  flex:0 0 20px !important;
  margin:0 !important;
  padding:0 !important;
}
body:not(.auth-page):not(.intro-page) .poll-detail-page .poll-option-result{
  display:flex !important;
  align-items:center !important;
  gap:10px !important;
  min-width:150px !important;
}
body:not(.auth-page):not(.intro-page) .poll-detail-page .poll-option-result .attendance-progress{
  width:92px !important;
  min-width:70px !important;
  height:7px !important;
  margin:0 !important;
  border-radius:var(--ui-radius-pill) !important;
  overflow:hidden !important;
  background:#e7eaf0 !important;
}
body:not(.auth-page):not(.intro-page) .poll-detail-page .poll-option-result .attendance-progress i{
  display:block !important;
  height:100% !important;
  border-radius:inherit !important;
  background:var(--ui-ink) !important;
}
body:not(.auth-page):not(.intro-page) .poll-detail-page .poll-option-voters{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:6px !important;
  min-width:58px !important;
  min-height:38px !important;
  margin:0 !important;
  padding:6px 10px !important;
  border:1px solid var(--app-line) !important;
  border-radius:var(--ui-radius-pill) !important;
  background:var(--ui-surface-light) !important;
  color:var(--app-text) !important;
  font:inherit !important;
  font-weight:var(--ui-weight-bold) !important;
  box-shadow:none !important;
}
body:not(.auth-page):not(.intro-page) .poll-detail-page .poll-vote-form > .btn{
  width:100% !important;
  margin:0 !important;
  min-height:48px !important;
  border-radius:var(--ui-radius-xl) !important;
}
body:not(.auth-page):not(.intro-page) .poll-voters-modal__dialog{
  width:min(560px,calc(100vw - 32px)) !important;
  padding:20px !important;
  border-radius:var(--app-panel-radius) !important;
  background:var(--ui-white) !important;
  box-shadow:0 20px 60px rgba(0,0,0,.25) !important;
}
body:not(.auth-page):not(.intro-page) .poll-voter-list{
  display:flex !important;
  flex-direction:row !important;
  flex-wrap:wrap !important;
  align-items:flex-start !important;
  gap:10px !important;
}
body:not(.auth-page):not(.intro-page) .poll-voter-row{
  display:inline-flex !important;
  width:auto !important;
  max-width:100% !important;
  flex:0 0 auto !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:10px !important;
  padding:7px 12px 7px 7px !important;
  border:1px solid var(--app-line) !important;
  border-radius:var(--ui-radius-pill) !important;
  background:var(--ui-white) !important;
  white-space:nowrap !important;
}
body:not(.auth-page):not(.intro-page) .poll-voter-row__avatar{
  width:38px !important;
  height:38px !important;
  flex:0 0 38px !important;
  border-radius:50% !important;
  object-fit:cover !important;
}
@media (max-width:760px){
  body:not(.auth-page):not(.intro-page) .poll-detail-page > .poll-hero-card,
  body:not(.auth-page):not(.intro-page) .poll-detail-page > .poll-vote-card{
    padding:17px 16px !important;
    border-radius:var(--ui-radius-xl) !important;
  }
  body:not(.auth-page):not(.intro-page) .poll-detail-page .poll-hero-card__head{
    align-items:flex-start !important;
  }
  body:not(.auth-page):not(.intro-page) .poll-detail-page .poll-option-card{
    grid-template-columns:1fr !important;
    gap:10px !important;
    padding:13px 14px !important;
  }
  body:not(.auth-page):not(.intro-page) .poll-detail-page .poll-option-result{
    width:100% !important;
    min-width:0 !important;
  }
  body:not(.auth-page):not(.intro-page) .poll-detail-page .poll-option-result .attendance-progress{
    flex:1 !important;
    width:auto !important;
  }
}


/* PATCH 226 – modal hlasujících sjednocený s modalem přečtení komentáře */
body:not(.auth-page):not(.intro-page) .poll-voters-modal{
  z-index:2000 !important;
  padding:var(--ui-space-2xl) !important;
}
body:not(.auth-page):not(.intro-page) .poll-voters-modal .app-modal-overlay__backdrop{
  background:rgba(15,23,42,.52) !important;
}
body:not(.auth-page):not(.intro-page) .poll-voters-modal__dialog{
  position:relative !important;
  z-index:1 !important;
  width:min(720px,100%) !important;
  max-height:min(80vh,760px) !important;
  overflow:auto !important;
  padding:22px !important;
  background:var(--ui-white) !important;
  border:0 !important;
  border-radius:22px !important;
  box-shadow:0 24px 70px rgba(15,23,42,.28) !important;
}
body:not(.auth-page):not(.intro-page) .poll-voters-modal__head{
  position:relative !important;
  display:block !important;
  min-height:52px !important;
  padding:0 52px 0 0 !important;
  margin:0 0 14px !important;
}
body:not(.auth-page):not(.intro-page) .poll-voters-modal__head h2{
  margin:0 0 4px !important;
  color:var(--ui-ink) !important;
  font-size:var(--ui-font-xl) !important;
  line-height:var(--ui-line-tight) !important;
  font-weight:var(--ui-weight-extrabold) !important;
}
body:not(.auth-page):not(.intro-page) .poll-voters-modal__head p{
  margin:0 !important;
  color:var(--ui-muted) !important;
  font-size:var(--ui-font-md) !important;
  line-height:var(--ui-line-body) !important;
}
body:not(.auth-page):not(.intro-page) .poll-voters-modal__close{
  position:absolute !important;
  right:0 !important;
  top:-2px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:var(--ui-size-md) !important;
  height:var(--ui-size-md) !important;
  padding:0 !important;
  border:0 !important;
  border-radius:var(--ui-radius-pill) !important;
  background:#f1f5f9 !important;
  color:#0f172a !important;
  font:inherit !important;
  font-size:24px !important;
  font-weight:var(--ui-weight-bold) !important;
  line-height:1 !important;
  cursor:pointer !important;
}
body:not(.auth-page):not(.intro-page) .poll-voters-modal__close:hover{
  background:#e2e8f0 !important;
}
@media (max-width:640px){
  body:not(.auth-page):not(.intro-page) .poll-voters-modal{
    align-items:flex-end !important;
    padding:0 !important;
  }
  body:not(.auth-page):not(.intro-page) .poll-voters-modal__dialog{
    width:100% !important;
    max-height:86vh !important;
    border-radius:22px 22px 0 0 !important;
  }
}

/* PATCH 227 – kompaktní modal přečtení komentáře podle šablony aktivit */
body:not(.auth-page):not(.intro-page) .event-comment-read-modal{
  z-index:2000 !important;
  padding:var(--ui-space-2xl) !important;
}
body:not(.auth-page):not(.intro-page) .event-comment-read-modal__backdrop{
  background:rgba(15,23,42,.52) !important;
}
body:not(.auth-page):not(.intro-page) .event-comment-read-modal__dialog{
  width:min(720px,100%) !important;
  max-height:min(80vh,760px) !important;
  padding:22px !important;
  background:var(--ui-white) !important;
  border:0 !important;
  border-radius:22px !important;
  box-shadow:0 24px 70px rgba(15,23,42,.28) !important;
}
body:not(.auth-page):not(.intro-page) .event-comment-read-modal__dialog > h3{
  margin:0 52px 4px 0 !important;
  color:var(--ui-ink) !important;
  font-size:var(--ui-font-xl) !important;
  line-height:var(--ui-line-tight) !important;
  font-weight:var(--ui-weight-extrabold) !important;
}
body:not(.auth-page):not(.intro-page) .event-comment-read-modal__dialog > [data-comment-read-summary]{
  margin:0 !important;
  color:var(--ui-muted) !important;
  font-size:var(--ui-font-md) !important;
  line-height:var(--ui-line-body) !important;
}
body:not(.auth-page):not(.intro-page) .event-comment-read-modal__close{
  right:14px !important;
  top:12px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:var(--ui-size-md) !important;
  height:var(--ui-size-md) !important;
  padding:0 !important;
  border:0 !important;
  border-radius:var(--ui-radius-pill) !important;
  background:#f1f5f9 !important;
  color:#0f172a !important;
  font:inherit !important;
  font-size:24px !important;
  font-weight:var(--ui-weight-bold) !important;
  line-height:1 !important;
}
body:not(.auth-page):not(.intro-page) .event-comment-read-modal__close:hover{
  background:#e2e8f0 !important;
}
body:not(.auth-page):not(.intro-page) .event-comment-read-modal__cols{
  gap:var(--ui-space-xl) !important;
  margin-top:14px !important;
  align-items:start !important;
}
body:not(.auth-page):not(.intro-page) .event-comment-read-modal__cols h4{
  margin:0 0 10px !important;
  color:var(--ui-ink) !important;
  font-size:var(--ui-font-md) !important;
  line-height:var(--ui-line-tight) !important;
  font-weight:var(--ui-weight-extrabold) !important;
}
body:not(.auth-page):not(.intro-page) .event-comment-read-list{
  display:flex !important;
  flex-wrap:wrap !important;
  align-items:flex-start !important;
  gap:8px !important;
}
body:not(.auth-page):not(.intro-page) .event-comment-read-person{
  display:inline-flex !important;
  align-items:center !important;
  width:auto !important;
  max-width:100% !important;
  min-height:48px !important;
  padding:5px 11px 5px 5px !important;
  gap:9px !important;
  border:1px solid var(--border) !important;
  border-radius:var(--ui-radius-pill) !important;
  background:var(--ui-white) !important;
}
body:not(.auth-page):not(.intro-page) .event-comment-read-person__avatar{
  flex:0 0 auto !important;
  width:38px !important;
  height:38px !important;
  border-radius:50% !important;
  object-fit:cover !important;
}
body:not(.auth-page):not(.intro-page) .event-comment-read-person__copy{
  display:flex !important;
  flex-direction:column !important;
  min-width:0 !important;
  padding-right:2px !important;
}
body:not(.auth-page):not(.intro-page) .event-comment-read-person__copy strong{
  display:block !important;
  color:var(--ui-ink) !important;
  font-size:var(--ui-font-md) !important;
  line-height:1.2 !important;
  font-weight:var(--ui-weight-bold) !important;
  white-space:normal !important;
}
body:not(.auth-page):not(.intro-page) .event-comment-read-person__copy span,
body:not(.auth-page):not(.intro-page) .event-comment-read-person__copy small{
  display:block !important;
  margin:2px 0 0 !important;
  color:var(--ui-muted) !important;
  font-size:var(--ui-font-xs) !important;
  line-height:1.2 !important;
}
body:not(.auth-page):not(.intro-page) .event-comment-read-empty{
  width:100% !important;
  padding:10px 12px !important;
  border:1px solid var(--border) !important;
  border-radius:var(--ui-radius-lg) !important;
  background:var(--ui-surface-light) !important;
  color:var(--ui-muted) !important;
  font-size:var(--ui-font-md) !important;
}
@media (max-width:640px){
  body:not(.auth-page):not(.intro-page) .event-comment-read-modal{
    align-items:flex-end !important;
    padding:0 !important;
  }
  body:not(.auth-page):not(.intro-page) .event-comment-read-modal__dialog{
    width:100% !important;
    max-height:86vh !important;
    border-radius:22px 22px 0 0 !important;
  }
  body:not(.auth-page):not(.intro-page) .event-comment-read-modal__cols{
    grid-template-columns:1fr !important;
  }
}

/* PATCH 228 – ankety vložené do komentářů události */
.event-chat-poll{
  display:flex;
  flex-direction:column;
  gap:12px;
  margin-top:8px;
  padding:14px;
  border:1px solid var(--border);
  border-radius:var(--ui-radius-xl);
  background:var(--ui-white);
}
.event-chat-poll__head{display:flex;flex-direction:column;gap:6px;}
.event-chat-poll__head .app-badge{align-self:flex-start;}
.event-chat-poll__head strong{font-size:1.05rem;line-height:1.3;color:var(--ui-ink);}
.event-chat-poll__head p{margin:0;color:var(--muted);line-height:1.45;}
.event-chat-poll__form{display:flex;flex-direction:column;gap:12px;}
.event-chat-poll__options{display:flex;flex-direction:column;gap:8px;}
.event-chat-poll__option{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(70px,110px) auto;
  gap:10px;
  align-items:center;
  padding:10px 12px;
  border:1px solid var(--border);
  border-radius:var(--ui-radius-lg);
  background:var(--ui-surface-light);
}
.event-chat-poll__option.is-selected{border-color:var(--ui-ink);background:var(--ui-white);}
.event-chat-poll__choice{display:flex;align-items:center;gap:10px;min-width:0;cursor:pointer;}
.event-chat-poll__choice input{flex:0 0 auto;margin:0;}
.event-chat-poll__option-copy{min-width:0;font-weight:var(--ui-weight-bold);color:var(--ui-ink);overflow-wrap:anywhere;}
.event-chat-poll__result{position:relative;height:6px;border-radius:999px;background:var(--ui-surface-muted);overflow:hidden;}
.event-chat-poll__result i{position:absolute;inset:0 auto 0 0;border-radius:inherit;background:var(--ui-ink);}
.event-chat-poll__voters{display:inline-flex;align-items:center;justify-content:center;gap:4px;min-height:34px;padding:6px 10px;border:1px solid var(--border);border-radius:999px;background:var(--ui-white);color:var(--ui-ink);font:inherit;font-weight:var(--ui-weight-bold);white-space:nowrap;}
button.event-chat-poll__voters{cursor:pointer;}
.event-chat-poll__meta{margin:0!important;font-size:.86rem;}

/* Ankety v komentářích události – používají stejné komponenty jako ankety v administraci */
.event-poll-create{display:flex;flex-direction:column;gap:12px;margin-top:12px;}
.event-poll-create__panel{padding:22px;box-shadow:none;}
.event-poll-create__panel[hidden]{display:none!important;}
.event-poll-create__panel .section-head{margin-bottom:16px;}
.event-poll-create__panel .admin-form--modern{gap:11px;}
.event-poll-create__panel .poll-date-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
.event-poll-create__panel .poll-option-builder{display:flex;flex-direction:column;gap:10px;}
.event-poll-create__panel .poll-option-builder__row{display:grid;grid-template-columns:minmax(0,1fr) 44px;gap:8px;align-items:center;}
.event-poll-create__panel .poll-option-builder__row .app-icon-action{width:44px;height:44px;}
.event-poll-voters-modal .poll-voter-list{display:flex;flex-wrap:wrap;gap:10px;}
.event-poll-voters-modal .poll-voter-row{width:auto;display:inline-flex;align-items:center;gap:8px;padding:7px 12px 7px 7px;border:1px solid var(--border);border-radius:999px;background:var(--ui-white);}
.event-poll-voters-modal .poll-voter-row__avatar{width:34px;height:34px;}
@media (max-width:700px){
  .event-poll-create__panel{padding:16px;}
  .event-poll-create__panel .poll-date-grid{grid-template-columns:1fr;}
  .event-poll-create__panel .admin-form--modern > .btn{width:100%;}
}

/* PATCH 241 – administrace událostí: stav a akce se nesmí překrývat */
@media (min-width:761px){
  .admin-mini-card--event{
    grid-template-columns:220px minmax(0,1fr);
    grid-template-areas:
      "date main"
      "date status"
      "date actions";
  }

  .admin-mini-card--event .admin-mini-card__status,
  .admin-mini-card--event .admin-mini-card__actions{
    min-width:0;
    width:100%;
  }

  .admin-mini-card--event .admin-mini-card__actions{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    justify-content:flex-start;
  }

  .admin-mini-card--event .admin-mini-card__actions form{
    margin:0;
  }
}

/* PATCH 244 – přehlednější souhrn hráčských statistik */
.team-statistics-summary-grid{
  grid-template-columns:minmax(280px,1.35fr) repeat(2,minmax(230px,1fr));
  align-items:stretch;
}
.team-player-leader-card{
  justify-content:flex-start;
  gap:12px;
  padding:16px;
  overflow:hidden;
}
.team-player-leader-card__label{
  display:flex;
  align-items:center;
  gap:7px;
  color:var(--muted);
  font-size:.78rem;
  font-weight:var(--ui-weight-extrabold);
  letter-spacing:.035em;
  text-transform:uppercase;
}
.team-player-leader-card__body{
  display:grid;
  grid-template-columns:48px minmax(0,1fr) auto;
  align-items:center;
  gap:11px;
  min-width:0;
}
.team-player-leader-card__avatar{
  display:block;
  width:48px;
  height:48px;
  border:2px solid #fff;
  border-radius:50%;
  object-fit:cover;
  box-shadow:0 2px 9px rgba(15,23,42,.13);
}
.team-player-leader-card__identity{
  display:flex;
  flex-direction:column;
  gap:3px;
  min-width:0;
}
.team-player-leader-card__identity strong{
  overflow:hidden;
  color:var(--ui-ink);
  font-size:.98rem;
  line-height:1.2;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.team-player-leader-card__identity small{
  color:var(--muted);
  font-size:.76rem;
  line-height:1.2;
}
.team-player-leader-card__metric{
  display:flex;
  min-width:58px;
  padding:7px 9px;
  border:1px solid #e2e8f0;
  border-radius:12px;
  background:#f8fafc;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  line-height:1;
}
.team-player-leader-card__metric strong{
  color:var(--ui-ink);
  font-size:1.42rem;
  font-weight:var(--ui-weight-black);
}
.team-player-leader-card__metric span{
  margin-top:4px;
  color:var(--muted);
  font-size:.68rem;
  font-weight:var(--ui-weight-bold);
}
.team-player-leader-card--goals .team-player-leader-card__metric{
  border-color:#fee2e2;
  background:#fff7f7;
}
.team-player-leader-card--assists .team-player-leader-card__metric{
  border-color:#dbeafe;
  background:#f5f9ff;
}
@media (max-width:1080px){
  .team-statistics-summary-grid{grid-template-columns:1fr 1fr;}
  .team-statistics-summary-grid .team-attendance-summary{grid-column:1 / -1;}
}
@media (max-width:620px){
  .team-statistics-summary-grid{grid-template-columns:1fr;}
  .team-statistics-summary-grid .team-attendance-summary{grid-column:auto;}
  .team-player-leader-card__body{grid-template-columns:46px minmax(0,1fr) auto;}
  .team-player-leader-card__avatar{width:46px;height:46px;}
}


/* PATCH 245 – stabilní rozložení souhrnu docházky a lídrů statistik */
.team-statistics-summary-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  align-items:stretch;
}
.team-statistics-summary-grid .team-attendance-summary{
  grid-column:1 / -1;
  width:100%;
  min-width:0;
}
.team-player-leader-card{
  min-width:0;
  padding:14px;
}
.team-player-leader-card__label{
  display:block;
  margin:0 0 11px;
  color:var(--ui-ink);
  font-size:.9rem;
  font-weight:var(--ui-weight-extrabold);
  line-height:1.25;
  letter-spacing:0;
  text-transform:none;
}
.team-player-leader-card__body{
  display:grid;
  grid-template-columns:46px minmax(0,1fr) 58px;
  gap:10px;
  align-items:center;
  min-width:0;
}
.team-player-leader-card__avatar{
  width:46px;
  height:46px;
}
.team-player-leader-card__identity strong{
  display:block;
  min-width:0;
  overflow:hidden;
  font-size:.93rem;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.team-player-leader-card__identity small{
  display:block;
  margin-top:3px;
  font-size:.72rem;
}
.team-player-leader-card__metric{
  width:58px;
  min-width:58px;
  box-sizing:border-box;
}
@media (max-width:620px){
  .team-statistics-summary-grid{
    grid-template-columns:1fr;
  }
  .team-statistics-summary-grid .team-attendance-summary{
    grid-column:auto;
  }
}

/* PATCH 246 – finální vyvážení karet týmových statistik */
.team-statistics-summary-grid{
  gap:14px;
  margin-top:14px;
}
.team-statistics-summary-grid .app-card{
  box-sizing:border-box;
}
.team-attendance-summary{
  padding:18px 20px;
}
.team-player-leader-card{
  display:flex;
  flex-direction:column;
  gap:14px;
  padding:18px 20px;
  border-radius:14px;
}
.team-player-leader-card__label{
  margin:0;
  padding:0 0 12px;
  border-bottom:1px solid var(--border);
  font-size:.94rem;
  line-height:1.3;
}
.team-player-leader-card__body{
  display:grid;
  grid-template-columns:52px minmax(0,1fr) 64px;
  gap:14px;
  align-items:center;
  min-height:58px;
}
.team-player-leader-card__avatar{
  width:52px;
  height:52px;
  align-self:center;
}
.team-player-leader-card__identity{
  display:flex;
  min-width:0;
  min-height:52px;
  flex-direction:column;
  justify-content:center;
  gap:4px;
}
.team-player-leader-card__identity strong{
  margin:0;
  font-size:.96rem;
  line-height:1.25;
}
.team-player-leader-card__identity small{
  margin:0;
  font-size:.74rem;
  line-height:1.25;
}
.team-player-leader-card__metric{
  display:flex;
  width:64px;
  min-width:64px;
  height:58px;
  min-height:58px;
  padding:6px;
  box-sizing:border-box;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
}
.team-player-leader-card__metric strong{
  display:block;
  width:100%;
  margin:0;
  font-size:1.38rem;
  line-height:1;
  text-align:center;
}
.team-player-leader-card__metric span{
  display:block;
  width:100%;
  margin:5px 0 0;
  color:var(--muted);
  font-size:.68rem;
  line-height:1;
  text-align:center;
  white-space:nowrap;
}
@media (max-width:620px){
  .team-attendance-summary,
  .team-player-leader-card{padding:16px;}
  .team-player-leader-card__body{
    grid-template-columns:48px minmax(0,1fr) 60px;
    gap:11px;
  }
  .team-player-leader-card__avatar{width:48px;height:48px;}
  .team-player-leader-card__identity{min-height:48px;}
  .team-player-leader-card__metric{width:60px;min-width:60px;height:56px;min-height:56px;}
}

/* PATCH 247 – skutečné přepsání obecných app-card pravidel u týmových statistik */
.team-statistics-summary-grid > .app-card.team-attendance-summary{
  padding:18px 20px !important;
}
.team-statistics-summary-grid > .app-card.team-player-leader-card{
  display:flex !important;
  min-width:0;
  padding:18px 20px !important;
  gap:16px !important;
  border-radius:14px !important;
}
.team-statistics-summary-grid .team-player-leader-card__label{
  display:block;
  margin:0 !important;
  padding:0 0 12px !important;
  border-bottom:1px solid #e4e7eb !important;
  color:#111827 !important;
  font-size:.94rem !important;
  font-weight:800 !important;
  line-height:1.3 !important;
  letter-spacing:0 !important;
  text-transform:none !important;
}
.team-statistics-summary-grid .team-player-leader-card__body{
  display:grid !important;
  grid-template-columns:52px minmax(0,1fr) 68px !important;
  gap:14px !important;
  align-items:center !important;
  width:100%;
  min-height:60px;
  min-width:0;
}
.team-statistics-summary-grid .team-player-leader-card__avatar{
  display:block;
  width:52px !important;
  height:52px !important;
  margin:0;
  align-self:center;
}
.team-statistics-summary-grid .team-player-leader-card__identity{
  display:flex !important;
  min-width:0;
  min-height:52px;
  margin:0;
  flex-direction:column;
  justify-content:center !important;
  align-items:flex-start;
  gap:4px !important;
}
.team-statistics-summary-grid .team-player-leader-card__identity strong{
  display:block;
  width:100%;
  margin:0 !important;
  color:#111827 !important;
  font-size:.96rem !important;
  line-height:1.3 !important;
}
.team-statistics-summary-grid .team-player-leader-card__identity small{
  display:block !important;
  width:100%;
  margin:0 !important;
  color:#6b7280 !important;
  font-size:.74rem !important;
  line-height:1.3 !important;
}
.team-statistics-summary-grid .team-player-leader-card__metric{
  display:flex !important;
  width:68px !important;
  min-width:68px !important;
  height:60px !important;
  min-height:60px !important;
  margin:0;
  padding:7px 5px !important;
  box-sizing:border-box;
  flex-direction:column;
  align-items:center !important;
  justify-content:center !important;
  text-align:center !important;
}
.team-statistics-summary-grid .team-player-leader-card__metric strong{
  display:block !important;
  width:100%;
  margin:0 !important;
  color:#111827 !important;
  font-size:1.4rem !important;
  font-weight:800 !important;
  line-height:1 !important;
  text-align:center !important;
}
.team-statistics-summary-grid .team-player-leader-card__metric span{
  display:block !important;
  width:100%;
  margin:5px 0 0 !important;
  color:#6b7280 !important;
  font-size:.68rem !important;
  font-weight:600 !important;
  line-height:1 !important;
  text-align:center !important;
  white-space:nowrap;
}
@media (max-width:620px){
  .team-statistics-summary-grid > .app-card.team-attendance-summary,
  .team-statistics-summary-grid > .app-card.team-player-leader-card{
    padding:16px !important;
  }
  .team-statistics-summary-grid .team-player-leader-card__body{
    grid-template-columns:48px minmax(0,1fr) 64px !important;
    gap:11px !important;
  }
  .team-statistics-summary-grid .team-player-leader-card__avatar{
    width:48px !important;
    height:48px !important;
  }
  .team-statistics-summary-grid .team-player-leader-card__metric{
    width:64px !important;
    min-width:64px !important;
    height:58px !important;
    min-height:58px !important;
  }
}

/* PATCH 248 – automatické a vizuálně sjednocené filtry docházky */
.team-panel--players-overview > .team-attendance-filters.app-card{
  display:grid !important;
  width:100%;
  margin:14px 0 16px !important;
  padding:18px 20px !important;
  gap:16px !important;
  border:1px solid #dde2e8 !important;
  border-radius:14px !important;
  background:#fff !important;
  box-sizing:border-box;
}
.team-panel--players-overview .team-attendance-filters__grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px !important;
  align-items:end;
}
.team-panel--players-overview .team-attendance-filters .app-field-label{
  display:grid !important;
  gap:7px !important;
  margin:0 !important;
  min-width:0;
  color:#111827 !important;
  font-size:.84rem !important;
  font-weight:800 !important;
  line-height:1.25 !important;
}
.team-panel--players-overview .team-attendance-filters select,
.team-panel--players-overview .team-attendance-filters input[type="date"]{
  width:100% !important;
  min-width:0;
  min-height:46px !important;
  margin:0 !important;
  padding:10px 42px 10px 13px !important;
  border:1px solid #d7dce2 !important;
  border-radius:12px !important;
  background-color:#fff !important;
  color:#111827 !important;
  font-size:.9rem !important;
  font-weight:700 !important;
  line-height:1.25 !important;
  box-sizing:border-box;
}
.team-panel--players-overview .team-attendance-filters select:focus,
.team-panel--players-overview .team-attendance-filters input[type="date"]:focus{
  border-color:#9ca3af !important;
  outline:3px solid rgba(17,24,39,.08) !important;
  outline-offset:0;
}
.team-panel--players-overview .team-attendance-filters__dates{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,220px));
  gap:16px !important;
  padding-top:2px;
}
.team-panel--players-overview .team-attendance-filters__dates[hidden]{display:none !important;}
.team-panel--players-overview .team-attendance-filters__actions{
  display:flex !important;
  justify-content:flex-start;
  margin:0 !important;
  padding:0 !important;
}
.team-panel--players-overview .team-attendance-filters__actions .btn{
  min-height:38px;
  padding:8px 13px !important;
  border-radius:10px !important;
  font-size:.8rem !important;
}
@media (max-width:760px){
  .team-panel--players-overview > .team-attendance-filters.app-card{
    padding:16px !important;
  }
  .team-panel--players-overview .team-attendance-filters__grid,
  .team-panel--players-overview .team-attendance-filters__dates{
    grid-template-columns:1fr;
    gap:13px !important;
  }
}

/* PATCH 249 – týmové menu jako samostatná administrační tlačítka a čistá hlavička hráčů */
.team-primary-nav-shell{
  margin-bottom:18px !important;
  padding:0 !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
}
.team-primary-nav{
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
}
.team-primary-nav__item{
  min-height:44px;
}
.team-panel--players-overview{
  padding:20px !important;
}
.team-panel--players-overview .team-players-section-head{
  display:flex !important;
  align-items:center !important;
  min-height:auto !important;
  margin:0 0 18px !important;
  padding:0 0 14px !important;
  border-bottom:1px solid #e5e7eb !important;
}
.team-panel--players-overview .team-players-section-head h2{
  margin:0 !important;
  color:#111827 !important;
  font-size:1.08rem !important;
  font-weight:800 !important;
  line-height:1.25 !important;
}
@media (max-width:620px){
  .team-primary-nav{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:8px;
  }
  .team-panel--players-overview{
    padding:16px !important;
  }
  .team-panel--players-overview .team-players-section-head{
    margin-bottom:14px !important;
    padding-bottom:12px !important;
  }
}

/* PATCH 260 – karta hráče: textové statistiky a docházka */
.team-panel--players-overview .team-player-attendance-detail{
  display:none !important;
}
.team-panel--players-overview .team-player-performance{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:5px 14px;
  margin-top:6px;
  color:var(--ui-muted, #64748b);
  font-size:.82rem;
  line-height:1.35;
}
.team-panel--players-overview .team-player-performance span{
  display:inline-flex;
  align-items:baseline;
  gap:4px;
  white-space:nowrap;
}
.team-panel--players-overview .team-player-performance strong{
  color:var(--ui-ink, #0f172a);
  font-weight:800;
}
.team-panel--players-overview .team-player-attendance{
  min-width:112px;
  align-items:flex-end;
  gap:3px;
}
.team-panel--players-overview .team-player-attendance__label{
  display:flex;
  align-items:baseline;
  gap:5px;
  color:var(--ui-ink, #0f172a);
  font-weight:600;
  white-space:nowrap;
}
.team-panel--players-overview .team-player-attendance__label b{
  font-weight:800;
}
.team-panel--players-overview .team-player-attendance > strong{
  margin:0;
  line-height:1;
}
@media (max-width:620px){
  .team-panel--players-overview .team-player-performance{
    gap:4px 9px;
    font-size:.78rem;
  }
  .team-panel--players-overview .team-player-attendance{
    min-width:94px;
  }
  .team-panel--players-overview .team-player-attendance__label{
    font-size:.76rem;
  }
}

/* PATCH 262 – stabilni rozlozeni karet v prehledu tymu */
body.dashboard-page .team-dashboard-grid:not(.team-dashboard-grid--single){
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:16px !important;
  align-items:start !important;
}

body.dashboard-page .team-dashboard-grid:not(.team-dashboard-grid--single) > .team-panel{
  min-width:0 !important;
  padding:16px !important;
}

body.dashboard-page .team-dashboard-grid:not(.team-dashboard-grid--single) .team-panel .section-head{
  padding:0 0 14px !important;
  margin:0 !important;
}

body.dashboard-page .team-dashboard-grid:not(.team-dashboard-grid--single) .team-panel .section-head h2{
  padding:0 !important;
}

body.dashboard-page .team-dashboard-grid:not(.team-dashboard-grid--single) .team-event-card{
  grid-template-columns:150px minmax(0,1fr) auto !important;
  gap:16px !important;
  align-items:center !important;
  padding:16px !important;
  margin:0 !important;
  min-width:0 !important;
}

body.dashboard-page .team-dashboard-grid:not(.team-dashboard-grid--single) .team-event-card__date,
body.dashboard-page .team-dashboard-grid:not(.team-dashboard-grid--single) .team-event-card__main,
body.dashboard-page .team-dashboard-grid:not(.team-dashboard-grid--single) .team-event-card__actions{
  min-width:0 !important;
}

body.dashboard-page .team-dashboard-grid:not(.team-dashboard-grid--single) .team-event-card__main h3,
body.dashboard-page .team-dashboard-grid:not(.team-dashboard-grid--single) .team-event-card__main p{
  overflow-wrap:normal !important;
  word-break:normal !important;
  hyphens:none !important;
}

body.dashboard-page .team-dashboard-grid:not(.team-dashboard-grid--single) .team-event-card__main h3{
  margin:0 0 5px !important;
}

body.dashboard-page .team-dashboard-grid:not(.team-dashboard-grid--single) .team-event-card__main p{
  margin:3px 0 0 !important;
}

body.dashboard-page .team-dashboard-grid:not(.team-dashboard-grid--single) .team-event-card__actions{
  display:flex !important;
  justify-content:flex-end !important;
  align-items:center !important;
}

body.dashboard-page .team-dashboard-grid:not(.team-dashboard-grid--single) .team-event-card__actions .btn{
  white-space:nowrap !important;
}

@media (max-width:1180px){
  body.dashboard-page .team-dashboard-grid:not(.team-dashboard-grid--single){
    grid-template-columns:1fr !important;
  }
}

@media (max-width:760px){
  body.dashboard-page .team-dashboard-grid:not(.team-dashboard-grid--single) > .team-panel{
    padding:14px !important;
  }

  body.dashboard-page .team-dashboard-grid:not(.team-dashboard-grid--single) .team-event-card{
    grid-template-columns:1fr !important;
    gap:10px !important;
    align-items:start !important;
    padding:14px !important;
  }

  body.dashboard-page .team-dashboard-grid:not(.team-dashboard-grid--single) .team-event-card__actions{
    justify-content:flex-start !important;
  }
}


/* PATCH 263 – sjednocené klikací karty přehledu týmu */
body.dashboard-page .team-dashboard-grid:not(.team-dashboard-grid--single) .team-event-card--link{
  display:grid !important;
  grid-template-columns:142px minmax(0,1fr) 38px !important;
  gap:14px !important;
  align-items:center !important;
  width:100% !important;
  min-width:0 !important;
  padding:14px 0 14px 16px !important;
  color:inherit !important;
  text-decoration:none !important;
  box-sizing:border-box !important;
  overflow:hidden !important;
  transition:border-color .18s ease, background-color .18s ease !important;
}
body.dashboard-page .team-dashboard-grid:not(.team-dashboard-grid--single) .team-event-card--link:hover,
body.dashboard-page .team-dashboard-grid:not(.team-dashboard-grid--single) .team-event-card--link:focus-visible{
  background:#fff !important;
  border-color:#cfd5dc !important;
  outline:none !important;
}
body.dashboard-page .team-dashboard-grid:not(.team-dashboard-grid--single) .team-event-card--link .team-event-card__date{
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-start !important;
  justify-content:center !important;
  gap:7px !important;
  min-width:0 !important;
  margin:0 !important;
}
body.dashboard-page .team-dashboard-grid:not(.team-dashboard-grid--single) .team-event-card--link .team-event-card__date strong{
  margin:0 !important;
  color:#111827 !important;
  font-size:.84rem !important;
  font-weight:700 !important;
  line-height:1.3 !important;
  white-space:normal !important;
}
body.dashboard-page .team-dashboard-grid:not(.team-dashboard-grid--single) .team-event-card--link .team-event-card__main{
  display:block !important;
  min-width:0 !important;
  padding:0 !important;
}
body.dashboard-page .team-dashboard-grid:not(.team-dashboard-grid--single) .team-event-card--link .team-event-card__main h3{
  margin:0 0 4px !important;
  color:#111827 !important;
  font-size:.92rem !important;
  font-weight:800 !important;
  line-height:1.25 !important;
  overflow-wrap:anywhere !important;
}
body.dashboard-page .team-dashboard-grid:not(.team-dashboard-grid--single) .team-event-card--link .team-event-card__main p{
  margin:2px 0 0 !important;
  color:#64748b !important;
  font-size:.76rem !important;
  line-height:1.35 !important;
  overflow-wrap:anywhere !important;
}
body.dashboard-page .team-dashboard-grid:not(.team-dashboard-grid--single) .team-event-card--link .team-event-card__note{
  display:-webkit-box !important;
  -webkit-box-orient:vertical !important;
  -webkit-line-clamp:2 !important;
  overflow:hidden !important;
}
body.dashboard-page .team-dashboard-grid:not(.team-dashboard-grid--single) .team-event-card__arrow{
  align-self:stretch !important;
  display:grid !important;
  place-items:center !important;
  min-width:38px !important;
  border-left:1px solid #e5e7eb !important;
  color:#7c8794 !important;
  font-size:1.65rem !important;
  font-weight:400 !important;
  line-height:1 !important;
}
@media (max-width:620px){
  body.dashboard-page .team-dashboard-grid:not(.team-dashboard-grid--single) .team-event-card--link{
    grid-template-columns:minmax(0,1fr) 34px !important;
    grid-template-rows:auto auto !important;
    gap:8px 10px !important;
    padding:13px 0 13px 14px !important;
  }
  body.dashboard-page .team-dashboard-grid:not(.team-dashboard-grid--single) .team-event-card--link .team-event-card__date{
    grid-column:1 !important;
    grid-row:1 !important;
    gap:6px !important;
  }
  body.dashboard-page .team-dashboard-grid:not(.team-dashboard-grid--single) .team-event-card--link .team-event-card__main{
    grid-column:1 !important;
    grid-row:2 !important;
  }
  body.dashboard-page .team-dashboard-grid:not(.team-dashboard-grid--single) .team-event-card__arrow{
    grid-column:2 !important;
    grid-row:1 / span 2 !important;
    min-width:34px !important;
  }
  body.dashboard-page .team-dashboard-grid:not(.team-dashboard-grid--single) .team-event-card--link .team-event-card__main h3{
    font-size:.88rem !important;
  }
}

/* PATCH 264 – jednotný přehled týmu podle dashboardu */
body.dashboard-page .team-overview-stack{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) !important;
  gap:16px !important;
}
body.dashboard-page .team-overview-section{
  width:100% !important;
  padding:18px !important;
  border-radius:18px !important;
}
body.dashboard-page .team-overview-section .section-head{
  margin:0 0 14px !important;
}
body.dashboard-page .team-overview-list{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) !important;
  gap:10px !important;
}
body.dashboard-page .team-overview-card{
  position:relative !important;
  display:grid !important;
  grid-template-columns:6px minmax(0,1fr) 46px !important;
  align-items:stretch !important;
  min-width:0 !important;
  padding:0 !important;
  overflow:hidden !important;
  color:inherit !important;
  text-decoration:none !important;
  background:#fff !important;
  border:1px solid #dfe3e8 !important;
  border-radius:14px !important;
  box-shadow:none !important;
  transform:none !important;
  transition:none !important;
}
body.dashboard-page .team-overview-card:hover,
body.dashboard-page .team-overview-card:focus-visible{
  background:#fff !important;
  box-shadow:none !important;
  transform:none !important;
}
body.dashboard-page .team-overview-card__bar{
  display:block !important;
  width:6px !important;
  height:100% !important;
  background:#262626 !important;
}
body.dashboard-page .team-overview-card--event .team-overview-card__bar{
  background:#f0b90b !important;
}
body.dashboard-page .team-overview-card--message .team-overview-card__bar{
  background:#4d8ed8 !important;
}
body.dashboard-page .team-overview-card__body{
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
  min-width:0 !important;
  padding:14px 16px !important;
}
body.dashboard-page .team-overview-card__team{
  display:block !important;
  margin:0 0 2px !important;
  font-size:12px !important;
  line-height:1.25 !important;
  font-weight:700 !important;
  color:#6b7280 !important;
}
body.dashboard-page .team-overview-card__title{
  display:block !important;
  margin:0 !important;
  font-size:18px !important;
  line-height:1.2 !important;
  font-weight:800 !important;
  color:#111827 !important;
  overflow-wrap:anywhere !important;
}
body.dashboard-page .team-overview-card__meta,
body.dashboard-page .team-overview-card__sub{
  display:block !important;
  margin-top:5px !important;
  font-size:13px !important;
  line-height:1.35 !important;
  color:#6b7280 !important;
}
body.dashboard-page .team-overview-card__sub{
  display:-webkit-box !important;
  -webkit-box-orient:vertical !important;
  -webkit-line-clamp:2 !important;
  overflow:hidden !important;
}
body.dashboard-page .team-overview-card__state{
  display:inline-flex !important;
  align-self:flex-start !important;
  margin-top:7px !important;
  padding:3px 8px !important;
  border-radius:999px !important;
  background:#ffe6e9 !important;
  color:#b42335 !important;
  font-size:11px !important;
  font-weight:800 !important;
}
body.dashboard-page .team-overview-card__arrow{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  border-left:1px solid #e7e9ed !important;
  font-size:34px !important;
  line-height:1 !important;
  color:#7a828d !important;
}
body.dashboard-page .team-last-match-card{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) !important;
  align-items:center !important;
  gap:24px !important;
  padding:22px 24px !important;
  border:1px solid #dfe3e8 !important;
  border-radius:14px !important;
  background:#fff !important;
  color:inherit !important;
  text-decoration:none !important;
  box-shadow:none !important;
  transform:none !important;
  transition:none !important;
}
body.dashboard-page .team-last-match-card:hover,
body.dashboard-page .team-last-match-card:focus-visible{
  box-shadow:none !important;
  transform:none !important;
  background:#fff !important;
}
body.dashboard-page .team-last-match-card__team{
  text-align:center !important;
  font-size:15px !important;
  line-height:1.3 !important;
  font-weight:800 !important;
  color:#111827 !important;
}
body.dashboard-page .team-last-match-card__center{
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  gap:6px !important;
  min-width:140px !important;
}
body.dashboard-page .team-last-match-card__center strong{
  font-size:44px !important;
  line-height:1 !important;
  font-weight:900 !important;
  color:#000 !important;
}
body.dashboard-page .team-last-match-card__center em{
  font-style:normal !important;
  font-size:12px !important;
  line-height:1.35 !important;
  color:#64748b !important;
  text-align:center !important;
}
body.dashboard-page .team-last-match-card__result{
  display:inline-flex !important;
  padding:4px 10px !important;
  border-radius:999px !important;
  color:#fff !important;
  font-size:11px !important;
  font-weight:900 !important;
}
body.dashboard-page .team-last-match-card__result--win{background:#16a34a !important;}
body.dashboard-page .team-last-match-card__result--loss{background:#dc3545 !important;}
body.dashboard-page .team-last-match-card__result--draw{background:#64748b !important;}

@media (max-width:700px){
  body.dashboard-page .team-overview-stack{gap:12px !important;}
  body.dashboard-page .team-overview-section{padding:14px !important;border-radius:15px !important;}
  body.dashboard-page .team-overview-card{grid-template-columns:5px minmax(0,1fr) 40px !important;}
  body.dashboard-page .team-overview-card__body{padding:12px 13px !important;}
  body.dashboard-page .team-overview-card__title{font-size:16px !important;}
  body.dashboard-page .team-overview-card__meta,
  body.dashboard-page .team-overview-card__sub{font-size:12px !important;}
  body.dashboard-page .team-overview-card__arrow{font-size:30px !important;}
  body.dashboard-page .team-last-match-card{
    grid-template-columns:minmax(0,1fr) !important;
    gap:10px !important;
    padding:18px 14px !important;
  }
  body.dashboard-page .team-last-match-card__center{order:-1 !important;}
  body.dashboard-page .team-last-match-card__center strong{font-size:38px !important;}
}

/* PATCH 266: hlavicka vysledku stejne jako sekce Videa */
body .app-shell .event-match-after-panel{
  --event-match-x:30px;
  --event-match-y:24px;
  padding:var(--event-match-y) var(--event-match-x) !important;
  overflow:hidden !important;
  gap:0 !important;
}

body .app-shell .event-match-after-panel .event-match-after-head{
  margin:0 0 16px 0 !important;
  padding:0 !important;
}

body .app-shell .event-match-after-panel .event-match-after-head h3{
  margin:0 0 22px 0 !important;
  padding:0 !important;
  transform:none !important;
  font-size:var(--ui-font-heading-sm) !important;
  line-height:var(--ui-line-control) !important;
  font-weight:800 !important;
  color:#6b7280 !important;
  text-transform:none !important;
  letter-spacing:0 !important;
}

body .app-shell .event-match-after-panel .event-match-after-content{
  display:flex !important;
  flex-direction:column !important;
  gap:18px !important;
  min-width:0 !important;
}

body .app-shell .event-match-after-panel .event-match-section{
  margin:0 !important;
  padding:0 !important;
}

body .app-shell .event-match-after-panel .event-match-section h4,
body .app-shell .event-match-after-panel .event-match-section-head h4{
  margin:0 0 10px 0 !important;
  padding:0 !important;
  font-size:14px !important;
  line-height:1.3 !important;
  font-weight:800 !important;
  color:#111827 !important;
  text-transform:none !important;
  letter-spacing:0 !important;
}

body .app-shell .event-match-after-panel .event-match-section-head{
  align-items:center !important;
  margin:0 0 10px 0 !important;
}

body .app-shell .event-match-after-panel .event-match-section-head h4{
  margin:0 !important;
}

body .app-shell .event-match-after-panel .event-match-scorer--assist span{
  background:linear-gradient(135deg,#1d4ed8 0%,#2563eb 100%) !important;
}

@media (max-width:760px){
  body .app-shell .event-match-after-panel{
    --event-match-x:18px;
    --event-match-y:18px;
  }

  body .app-shell .event-match-after-panel .event-match-after-head h3{
    margin-bottom:18px !important;
  }

  body .app-shell .event-match-after-panel .event-match-after-content{
    gap:16px !important;
  }
}

/* PATCH 267: posledni zapas pouziva stejnou kartu jako detail udalosti */
body.dashboard-page .team-last-match-pro-card{
  display:block !important;
  color:inherit !important;
  text-decoration:none !important;
  box-shadow:none !important;
  transform:none !important;
  transition:none !important;
}
body.dashboard-page .team-last-match-pro-card:hover,
body.dashboard-page .team-last-match-pro-card:focus-visible{
  color:inherit !important;
  text-decoration:none !important;
  box-shadow:none !important;
  transform:none !important;
  background:var(--ui-white) !important;
}
body.dashboard-page .team-last-match-pro-card .app-match-pro-main{
  width:100% !important;
}

/* PATCH 274: screenshot ze schránky v komentářích */
.event-comment-paste-preview{
  display:grid;
  grid-template-columns:72px minmax(0,1fr) 36px;
  align-items:center;
  gap:12px;
  margin:10px 0 14px;
  padding:10px;
  border:1px solid #d7dee8;
  border-radius:12px;
  background:#fff;
}
.event-comment-paste-preview[hidden]{display:none!important;}
.event-comment-paste-preview img{
  display:block;
  width:72px;
  height:56px;
  object-fit:cover;
  border-radius:8px;
  background:#f2f4f7;
}
.event-comment-paste-preview__copy{
  min-width:0;
  display:flex;
  flex-direction:column;
  gap:3px;
}
.event-comment-paste-preview__copy strong{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:#172033;
  font-size:14px;
}
.event-comment-paste-preview__copy span{
  color:#667085;
  font-size:13px;
}
.event-comment-paste-preview__remove{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:34px;
  height:34px;
  padding:0;
  border:1px solid #d7dee8;
  border-radius:50%;
  background:#fff;
  color:#344054;
  font-size:22px;
  line-height:1;
  cursor:pointer;
}
@media (max-width:700px){
  .event-comment-paste-preview{grid-template-columns:60px minmax(0,1fr) 34px;gap:10px;}
  .event-comment-paste-preview img{width:60px;height:50px;}
}


/* PATCH 279B – jednotné komponenty APP pro modul Pokuty */
.fines-player-list{gap:var(--ui-space-control)!important;}
.fines-player-row{
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:var(--ui-space-lg)!important;
  min-height:64px;
  border:1px solid var(--app-line)!important;
  border-radius:var(--app-panel-radius,12px)!important;
  padding:var(--ui-space-control)!important;
  text-decoration:none!important;
}
.fines-player-row:hover,.fines-player-row:focus-visible{background:#f8fbfe!important;border-color:#cfe2f3!important;}
.fines-player-row__side{display:flex;align-items:center;justify-content:flex-end;gap:var(--ui-space-md);min-width:0;}
.fines-player-row__side .pill{min-width:72px;justify-content:center;white-space:nowrap;}
.fines-player-row__arrow{display:grid;place-items:center;width:28px;height:28px;color:var(--app-muted);font-size:1.65rem;line-height:1;}
.profile-form textarea{
  width:100%;min-height:96px;padding:12px 13px;border:1px solid #d6dee8;border-radius:13px;
  background:var(--ui-white);color:var(--app-text);font:inherit;line-height:var(--ui-line-body);
  resize:vertical;outline:none;box-sizing:border-box;
}
.profile-form textarea:focus{border-color:var(--app-blue);box-shadow:var(--ui-shadow-focus);}
.app-input-suffix{display:grid!important;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:var(--ui-space-md);}
.app-input-suffix b{color:var(--app-muted);font-size:var(--ui-font-body-sm);}
@media (max-width:760px){
  .fines-player-row{grid-template-columns:minmax(0,1fr) auto!important;align-items:center!important;}
  .fines-player-row .participant-person{width:auto;align-items:center;}
  .fines-player-row__side .pill{min-width:64px;}
}


/* PATCH 279C – oprava desktopového rozložení a fotografií modulu Pokuty */
.fines-players-panel{
  width:100%;
  min-width:0;
  box-sizing:border-box;
}
.fines-player-list{
  display:flex!important;
  flex-direction:column!important;
  width:100%!important;
  min-width:0!important;
}
.fines-player-row{
  display:grid!important;
  width:100%!important;
  min-width:0!important;
  box-sizing:border-box!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:center!important;
}
.fines-player-row .participant-person{
  display:flex!important;
  align-items:center!important;
  gap:var(--ui-space-md)!important;
  min-width:0!important;
  width:auto!important;
}
.fines-player-row .participant-avatar{
  flex:0 0 auto!important;
  width:42px!important;
  height:42px!important;
  border-radius:50%!important;
  object-fit:cover!important;
}
.fines-player-row .participant-main{
  display:flex!important;
  flex-direction:column!important;
  gap:2px!important;
  min-width:0!important;
}
.fines-player-row .participant-main strong,
.fines-player-row .participant-main small{
  display:block!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}
.fines-player-row__side{
  position:static!important;
  width:auto!important;
  max-width:none!important;
  transform:none!important;
  margin:0!important;
}
.profile-form .app-form-help{
  display:block!important;
  margin:3px 0 7px!important;
  color:var(--app-muted)!important;
  font-size:var(--ui-font-body-sm)!important;
  font-weight:400!important;
  line-height:1.35!important;
}
@media (max-width:760px){
  .fines-player-row{
    gap:var(--ui-space-control)!important;
  }
  .fines-player-row .participant-avatar{
    width:40px!important;
    height:40px!important;
  }
  .fines-player-row__side{
    gap:8px!important;
  }
}

/* PATCH 281B – fotografie hráče v detailu Pokut vyplní kruh na PC */
@media (min-width:761px){
  body.fines-page .profile-card__top img{
    object-fit:cover;
  }
}

/* PATCH 281D – mobilní zarovnání Upozornění a Pokut podle Událostí */
@media (max-width:760px){
  .dashboard-page .dashboard-section--notifications{
    width:auto !important;
    margin-left:18px !important;
    margin-right:18px !important;
  }
}
@media (max-width:420px){
  .dashboard-page .dashboard-section--notifications{
    margin-left:14px !important;
    margin-right:14px !important;
  }
}

/* PATCH 283 – týmové štítky a další plánované události */
.app-event-card__teams{
  display:inline-flex;
  align-items:center;
  flex-wrap:wrap;
  gap:4px;
  min-width:0;
}
.app-team-badge{
  display:inline-flex;
  align-items:center;
  min-height:20px;
  padding:2px 7px;
  border:1px solid transparent;
  border-radius:var(--ui-radius-pill);
  font-size:.68rem;
  font-weight:var(--ui-weight-extrabold);
  line-height:1.1;
  white-space:nowrap;
}
.app-team-badge--1{background:#e8f2ff;border-color:#c9ddf7;color:#16558f;}
.app-team-badge--2{background:#e8f8ef;border-color:#c3e8d1;color:#176a3d;}
.app-team-badge--3{background:#fff3df;border-color:#f2d7a7;color:#8a5500;}
.app-team-badge--4{background:#f2edff;border-color:#d9ccf5;color:#6240a0;}
.app-team-badge--5{background:#ffecef;border-color:#f5cbd2;color:#9b3043;}
.app-team-badge--6{background:#edf1f5;border-color:#d6dde5;color:#3f4b59;}
.dashboard-future-events{margin-top:14px;}
.dashboard-future-events__list{margin-top:0;}
@media (max-width:760px){
  .dashboard-page .app-event-card__datebox{
    flex-wrap:wrap !important;
    overflow:visible !important;
    row-gap:5px !important;
  }
  .dashboard-page .app-event-card__teams{
    flex:0 0 100%;
    margin-top:2px;
  }
  .dashboard-page .app-team-badge{
    min-height:18px;
    padding:2px 6px;
    font-size:.59rem;
  }
}

/* PATCH 283B – obnova rozbalovacích karet uživatelů po přepsání starším CSS */
body .admin-users-card--users details.admin-user-row--collapsible{
  display:block!important;
  padding:0!important;
  overflow:hidden!important;
}
body .admin-users-card--users .admin-user-row__summary{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:var(--ui-space-lg);
  min-height:64px;
  padding:12px 14px;
  cursor:pointer;
  list-style:none;
  box-sizing:border-box;
}
body .admin-users-card--users .admin-user-row__summary::-webkit-details-marker{display:none;}
body .admin-users-card--users .admin-user-row__summary-main{
  display:flex;
  align-items:center;
  gap:var(--ui-space-md);
  min-width:0;
}
body .admin-users-card--users .admin-user-row__summary-main strong{
  overflow:hidden;
  color:var(--app-text);
  font-size:var(--ui-font-body);
  line-height:1.2;
  text-overflow:ellipsis;
  white-space:nowrap;
}
body .admin-users-card--users .admin-user-row__summary-arrow{
  display:grid;
  flex:0 0 auto;
  place-items:center;
  width:28px;
  height:28px;
  color:var(--app-muted);
  font-size:1.65rem;
  line-height:1;
  transition:transform .18s ease;
}
body .admin-users-card--users details[open] > .admin-user-row__summary{
  border-bottom:1px solid var(--app-line);
}
body .admin-users-card--users details[open] > .admin-user-row__summary .admin-user-row__summary-arrow{
  transform:rotate(90deg);
}
body .admin-users-card--users .admin-user-row__details{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:var(--ui-space-lg);
  padding:14px;
  box-sizing:border-box;
}
body .admin-users-card--users .admin-user-row__details > .admin-user-row__identity{
  grid-column:1 / -1!important;
}
body .admin-users-card--users .admin-user-row__text a{
  width:max-content;
  max-width:100%;
  overflow:hidden;
  color:var(--app-muted);
  font-size:var(--ui-font-body-sm);
  line-height:1.3;
  text-decoration:none;
  text-overflow:ellipsis;
  white-space:nowrap;
}
body .admin-users-card--users .admin-user-row__text a:hover,
body .admin-users-card--users .admin-user-row__text a:focus-visible{
  color:var(--app-text);
  text-decoration:underline;
}
body .admin-users-card--users .admin-user-row__identity--contact{
  grid-template-columns:minmax(0,1fr) minmax(190px,auto)!important;
}
@media (max-width:640px){
  body .admin-users-card--users .admin-user-row__summary{
    min-height:60px;
    padding:11px 12px;
  }
  body .admin-users-card--users .admin-user-row__summary-main .admin-user-row__avatar{
    width:38px!important;
    height:38px!important;
  }
  body .admin-users-card--users .admin-user-row__details{
    grid-template-columns:1fr;
    gap:var(--ui-space-md);
    padding:12px;
  }
  body .admin-users-card--users .admin-user-row__identity--contact{
    grid-template-columns:1fr!important;
  }
}


/* PATCH 295 – sjednocení boxu Pokuty na dashboardu */
.dashboard-page .dashboard-section--fines .section-head > .app-actions{
  display:flex;
  flex:0 0 auto;
  align-items:center;
  justify-content:flex-end;
  gap:8px;
}
.dashboard-page .dashboard-section--fines .section-head > .app-actions .btn{
  width:auto;
  min-width:132px;
  min-height:38px;
  padding:8px 14px;
  white-space:nowrap;
}
.dashboard-page .dashboard-section--fines .section-head > .app-actions .pill{
  flex:0 0 auto;
}

@media (max-width:760px){
  .dashboard-page .dashboard-section--fines .section-head{
    display:grid !important;
    grid-template-columns:minmax(0,1fr) auto !important;
    align-items:center !important;
    gap:10px !important;
  }
  .dashboard-page .dashboard-section--fines .section-head > div:first-child{
    min-width:0;
  }
  .dashboard-page .dashboard-section--fines .section-head > .app-actions{
    display:flex !important;
    align-items:center !important;
    justify-content:flex-end !important;
    gap:7px !important;
    min-width:0;
  }
  .dashboard-page .dashboard-section--fines .section-head > .app-actions .btn{
    width:auto !important;
    min-width:0 !important;
    min-height:34px !important;
    padding:7px 10px !important;
    font-size:.72rem !important;
    line-height:1.05 !important;
    white-space:nowrap !important;
  }
  .dashboard-page .dashboard-section--fines .section-head > .app-actions .pill{
    min-width:34px !important;
    min-height:34px !important;
    padding:0 9px !important;
  }
}

@media (max-width:390px){
  .dashboard-page .dashboard-section--fines .section-head{
    gap:7px !important;
  }
  .dashboard-page .dashboard-section--fines .section-head > .app-actions{
    gap:5px !important;
  }
  .dashboard-page .dashboard-section--fines .section-head > .app-actions .btn{
    padding:7px 8px !important;
    font-size:.68rem !important;
  }
}

/* PATCH 345: přehled zařízení pro push oznámení */
button.admin-user-row__push{font:inherit;cursor:pointer;border:1px solid transparent;text-align:left}
.admin-push-devices-dialog{width:min(92vw,620px);max-height:85vh;border:0;border-radius:18px;padding:0;background:transparent}
.admin-push-devices-dialog::backdrop{background:rgba(15,23,42,.58)}
.admin-push-devices-dialog .app-dialog__panel{background:#fff;border-radius:18px;padding:18px;box-shadow:0 24px 70px rgba(15,23,42,.28);overflow:auto;max-height:85vh}
.admin-push-device-list{margin-top:14px}
.admin-push-device-item{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px}
.admin-push-device-item>div{display:grid;gap:4px}
.admin-push-device-item small{display:block}
@media(max-width:640px){.admin-push-device-item{align-items:stretch;flex-direction:column}.admin-push-device-item form,.admin-push-device-item button{width:100%}}


/* PATCH 346B: vysvětlení nedostupné docházky přímo v kartě účasti */
.event-page .attendance-status-card__notice{
  margin-top: 12px;
  padding: 11px 12px;
  border: 1px solid var(--ui-border, #dbe3ea);
  border-radius: var(--ui-radius-sm, 10px);
  background: var(--ui-surface-soft, #f7f9fb);
}

.event-page .attendance-status-card__notice strong{
  display: block;
  margin: 0 0 3px !important;
  font-size: var(--ui-font-sm, 13px) !important;
  line-height: 1.25 !important;
  color: var(--ui-text, #111827) !important;
}

.event-page .attendance-status-card__notice span{
  display: block;
  font-size: var(--ui-font-xs, 12px) !important;
  line-height: 1.4 !important;
  color: var(--ui-muted, #64748b) !important;
  font-weight: var(--ui-weight-strong, 600) !important;
}

@media (max-width: 760px){
  .event-page .attendance-status-card__notice{
    margin-top: 10px;
    padding: 10px;
  }
}


/* PATCH 350: pevný návod instalace PWA na iPhone */
.app-onboarding__guide{
  grid-column: 1 / -1;
  padding: 12px 14px;
  border: 1px solid var(--ui-border, #d8dee8);
  border-radius: 12px;
  background: #f8fafc;
  color: #172033;
  text-align: left;
}
.app-onboarding__guide[hidden]{display:none !important;}
.app-onboarding__guide strong{font-weight:800;}
.app-onboarding__guide ol{margin:8px 0 0;padding-left:22px;}
.app-onboarding__guide li{margin:0 0 7px;line-height:1.35;}
.app-onboarding__guide p{margin:8px 0 0;font-weight:700;line-height:1.35;}


/* PATCH 351: přehled oznámení anket */
.poll-push-dialog{width:min(94vw,720px);max-height:88vh;border:0;border-radius:18px;padding:0;background:transparent}
.poll-push-dialog::backdrop{background:rgba(15,23,42,.58)}
.poll-push-dialog .app-dialog__panel{background:#fff;border-radius:18px;padding:18px;box-shadow:0 24px 70px rgba(15,23,42,.28);overflow:auto;max-height:88vh}
.poll-push-list{display:grid;gap:8px;margin-top:14px}
.poll-push-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px}
.poll-push-row>div{display:grid;gap:3px;min-width:0}
.poll-push-row small{color:#64748b}
@media(max-width:640px){.poll-push-row{align-items:flex-start;flex-direction:column}.poll-push-row .status-badge{align-self:flex-start}}

/* PATCH 353 – sjednocení šířky bloku Ankety na mobilním dashboardu */
@media (max-width:760px){
  .dashboard-page .dashboard-section--polls{
    width:auto !important;
    margin-left:18px !important;
    margin-right:18px !important;
  }
}
@media (max-width:420px){
  .dashboard-page .dashboard-section--polls{
    margin-left:14px !important;
    margin-right:14px !important;
  }
}

/* PATCH 383 – samostatné hlasování za jednotlivé hráče */
.event-chat-poll__subject {
  margin-top: 12px;
  padding: 12px;
  border: 1px solid var(--app-border, #d9dde3);
  border-radius: 12px;
  background: #fff;
}
.event-chat-poll__subject > strong {
  display: block;
  margin-bottom: 8px;
}
.poll-voter-row small {
  display: block;
  margin-top: 2px;
}


/* PATCH 386: výrazné doporučení instalace přes Google Chrome */
.app-onboarding__browser-recommendation{
  grid-column:1 / -1;
  display:grid;
  gap:6px;
  padding:14px 16px;
  border:2px solid #f59e0b;
  border-radius:14px;
  background:#fff7ed;
  color:#172033;
  text-align:left;
}
.app-onboarding__browser-recommendation[hidden]{display:none !important;}
.app-onboarding__browser-recommendation strong{
  font-size:clamp(18px,4.8vw,22px);
  line-height:1.2;
  font-weight:900;
}
.app-onboarding__browser-recommendation span{
  font-size:14px;
  line-height:1.4;
  font-weight:700;
  color:#7c2d12;
}

/* PATCH 387 – pouze dva hlavní režimy rozložení: desktop a mobil */
@media (max-width: 760px) {
  :root {
    --app-mobile-layout-gutter: 14px;
  }

  body:not(.auth-page):not(.intro-page),
  body.dashboard-page,
  body.dashboard-page main {
    width: 100% !important;
    max-width: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  .mobile-profile-hero,
  .mobile-bottom-nav {
    width: 100% !important;
    max-width: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  .dashboard-page .app-shell {
    width: 100% !important;
    max-width: none !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  .dashboard-page .dashboard-section,
  .dashboard-page .dashboard-section--notifications,
  .dashboard-page .dashboard-section--polls,
  .dashboard-page .dashboard-section--fines {
    width: calc(100% - (var(--app-mobile-layout-gutter) * 2)) !important;
    max-width: none !important;
    margin-left: var(--app-mobile-layout-gutter) !important;
    margin-right: var(--app-mobile-layout-gutter) !important;
    box-sizing: border-box !important;
  }
}

@media (min-width: 761px) {
  .mobile-profile-hero,
  .mobile-bottom-nav {
    display: none !important;
  }

  body:not(.auth-page):not(.intro-page) .app-header {
    display: block !important;
  }
}


/* PATCH 387B – oprava mobilního odsazení po sjednocení breakpointů */
@media (max-width: 760px) {
  .dashboard-page .app-shell {
    width: 100% !important;
    max-width: none !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 14px !important;
    padding-right: 14px !important;
    box-sizing: border-box !important;
  }

  .dashboard-page .dashboard-section,
  .dashboard-page .dashboard-section--notifications,
  .dashboard-page .dashboard-section--polls,
  .dashboard-page .dashboard-section--fines {
    width: 100% !important;
    max-width: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    box-sizing: border-box !important;
  }
}


/* PATCH 410 – mobilní dashboard: správné odsazení, štítky a text vlevo */
@media (max-width: 760px) {
  /* Obalové karty zůstávají zachované, pouze se odsazují stejně jako blok Novinky. */
  .dashboard-page .dashboard-section--notifications,
  .dashboard-page .dashboard-section--polls,
  .dashboard-page .dashboard-section--fines {
    width: calc(100% - 20px) !important;
    max-width: none !important;
    margin-left: 10px !important;
    margin-right: 10px !important;
    box-sizing: border-box !important;
  }

  /* Upozornění: mobilní rozložení štítek – text – šipka, vše zarovnané vlevo. */
  .dashboard-page #upozorneni .section-head .muted {
    display: block !important;
  }

  .dashboard-page #upozorneni .dashboard-notification {
    grid-template-columns: 58px minmax(0, 1fr) 42px !important;
    align-items: center !important;
    gap: 10px !important;
    min-height: 74px !important;
    padding: 0 0 0 10px !important;
    text-align: left !important;
  }

  .dashboard-page #upozorneni .dashboard-notification__type {
    display: inline-flex !important;
    grid-column: 1 !important;
    align-self: center !important;
    justify-self: start !important;
    min-width: 0 !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 6px 9px !important;
    border-radius: var(--ui-radius-pill) !important;
    font-size: .72rem !important;
    line-height: 1 !important;
    text-align: center !important;
  }

  .dashboard-page #upozorneni .dashboard-notification__body {
    grid-column: 2 !important;
    display: grid !important;
    justify-content: stretch !important;
    justify-items: start !important;
    align-content: center !important;
    width: 100% !important;
    min-width: 0 !important;
    padding: 0 !important;
    text-align: left !important;
  }

  .dashboard-page #upozorneni .dashboard-notification__body strong,
  .dashboard-page #upozorneni .dashboard-notification__body em {
    width: 100% !important;
    max-width: 100% !important;
    text-align: left !important;
  }

  .dashboard-page #upozorneni .dashboard-notification__body strong {
    margin: 0 0 3px !important;
  }

  .dashboard-page #upozorneni .dashboard-notification__arrow {
    grid-column: 3 !important;
    width: 42px !important;
    min-width: 42px !important;
  }

  /* Ankety: text začíná vlevo, nikoli uprostřed karty. */
  .dashboard-page .dashboard-poll-item__body {
    justify-content: stretch !important;
    justify-items: start !important;
    align-content: center !important;
    width: 100% !important;
    text-align: left !important;
  }

  .dashboard-page .dashboard-poll-item__body strong,
  .dashboard-page .dashboard-poll-item__body em {
    width: 100% !important;
    max-width: 100% !important;
    text-align: left !important;
  }
}

@media (max-width: 420px) {
  .dashboard-page #upozorneni .dashboard-notification {
    grid-template-columns: 52px minmax(0, 1fr) 40px !important;
    gap: 8px !important;
    padding-left: 8px !important;
  }

  .dashboard-page #upozorneni .dashboard-notification__type {
    padding: 5px 7px !important;
    font-size: .66rem !important;
  }

  .dashboard-page #upozorneni .dashboard-notification__arrow {
    width: 40px !important;
    min-width: 40px !important;
  }
}


/* PATCH 411/730 – automaticky klikací odkazy ve všech chatech */
.event-comment__text a,
.chat-message-text a{
  color:#005fae;
  text-decoration:underline;
  text-underline-offset:2px;
  overflow-wrap:anywhere;
  word-break:break-word;
}
.event-comment__text a:hover,
.event-comment__text a:focus-visible,
.chat-message-text a:hover,
.chat-message-text a:focus-visible{
  text-decoration-thickness:2px;
}

/* PATCH 412 – systémový trenérský chat */

/* PATCH 413 – trenérský chat používá existující komponenty aplikace */
.chat-page-content{padding-bottom:28px;}
.chat-page-content .chat-topbar{margin-bottom:0;}
.chat-page-content .chat-thread{margin:0;}
.chat-page-content .chat-message-text{margin:0;}
.chat-page-content .chat-reply-button{margin-top:8px;}
.chat-page-content .chat-poll-create{padding:0 20px 20px;background:var(--ui-white);}
.chat-page-content .event-poll-create__panel{margin-top:12px;}
@media (max-width:760px){
  .chat-page-content .chat-poll-create{padding:0 14px 16px;}
}

/* PATCH 414 – společné vizuální chování komentářů a chatů */
.chat-page .flash{margin-bottom:18px;}
.chat-page .event-comment-reactions{margin-top:8px;}
.chat-page .event-comment-read-stat{margin-left:auto;}
.chat-page .event-comment-attachment--image{cursor:zoom-in;}

/* PATCH 417 – společné WhatsApp-like rozhraní všech chatů */
.event-comment{
  align-items:flex-start;
  gap:8px;
}
.conversation-message-side{
  flex:0 0 42px;
  width:42px;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:5px;
}
.conversation-message-side .event-comment__avatar{
  width:36px;
  height:36px;
  flex:0 0 36px;
}
.conversation-side-action{
  width:30px;
  height:30px;
  display:grid;
  place-items:center;
  padding:0;
  border:1px solid #dde3ea;
  border-radius:50%;
  background:#fff;
  color:#525b66;
  font:inherit;
  font-size:1rem;
  font-weight:800;
  line-height:1;
  cursor:pointer;
  box-shadow:0 1px 3px rgba(15,23,42,.08);
}
.conversation-side-action:hover,
.conversation-side-action:focus-visible,
.conversation-side-action.is-open{
  border-color:#b8c3cf;
  background:#f4f6f8;
  color:#111827;
}
.event-comment__bubble{
  position:relative;
  min-width:0;
  max-width:min(680px,calc(100% - 50px));
  padding-bottom:13px;
}
.event-comment--mine{
  justify-content:flex-end;
}
.event-comment--mine .conversation-message-side{order:2;}
.event-comment--mine .event-comment__bubble{order:1;}
.event-comment__meta{
  gap:4px;
  margin-bottom:6px;
}
.event-comment__meta strong{
  color:#0f766e;
  font-size:.92rem;
}
.event-comment--mine .event-comment__meta strong{color:#1677c8;}
.event-comment__meta time,
.event-comment__meta .conversation-meta-separator{
  color:#6b7280;
  font-size:.75rem;
  font-weight:600;
}
.event-comment-read-stat{
  margin-left:2px;
}
.conversation-reaction-picker{
  position:absolute;
  left:-48px;
  bottom:0;
  z-index:12;
  display:flex;
  gap:4px;
  padding:6px;
  border:1px solid #dde3ea;
  border-radius:999px;
  background:#fff;
  box-shadow:0 10px 28px rgba(15,23,42,.18);
}
.event-comment--mine .conversation-reaction-picker{
  left:auto;
  right:-48px;
}
.conversation-reaction-picker[hidden]{display:none!important;}
.conversation-reaction-picker .event-comment-reaction{
  width:34px;
  min-width:34px;
  height:34px;
  padding:0;
  border-radius:50%;
  font-size:1.2rem;
}
.conversation-reaction-summary{
  position:absolute;
  right:9px;
  bottom:-13px;
  display:flex;
  gap:4px;
  z-index:3;
}
.conversation-reaction-chip{
  display:inline-flex;
  align-items:center;
  gap:3px;
  min-height:26px;
  padding:2px 8px;
  border:1px solid #dfe4ea;
  border-radius:999px;
  background:#fff;
  color:#374151;
  font:inherit;
  font-size:.83rem;
  line-height:1;
  cursor:pointer;
  box-shadow:0 1px 3px rgba(15,23,42,.09);
}
.conversation-reaction-chip strong{font-size:.72rem;}
.conversation-reaction-modal .event-comment-read-modal__dialog{width:min(430px,calc(100% - 28px));}
.conversation-reaction-modal h3{margin:0 0 14px;}

.event-comment-form,
.chat-compose-form{
  display:block;
  padding:10px 12px 12px;
}
.conversation-compose{
  display:grid;
  grid-template-columns:42px 42px minmax(0,1fr) 44px;
  align-items:end;
  gap:7px;
}
.conversation-compose__icon,
.conversation-compose__send{
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  padding:0;
  border:1px solid #d9e0e7;
  border-radius:50%;
  background:#fff;
  color:#374151;
  font:inherit;
  font-size:1.25rem;
  font-weight:900;
  line-height:1;
  cursor:pointer;
}
.conversation-compose__send{
  width:44px;
  height:44px;
  border-color:#202124;
  background:#202124;
  color:#fff;
  font-size:1.15rem;
  transform:rotate(-8deg);
}
.conversation-compose__field{min-width:0;}
.conversation-compose__field textarea,
.event-comment-form .conversation-compose__field textarea,
.chat-compose-form .conversation-compose__field textarea{
  width:100%;
  min-height:44px;
  max-height:128px;
  resize:none;
  padding:11px 14px;
  border:1px solid #d9e0e7;
  border-radius:22px;
  background:#fff;
  line-height:1.35;
}
.conversation-compose__file{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  overflow:hidden!important;
  clip:rect(0 0 0 0)!important;
  opacity:0!important;
}
.event-comment-form .event-comment-reply-preview,
.chat-compose-form .event-comment-reply-preview{
  margin:0 0 8px;
}
.event-poll-create,
.chat-poll-create{
  margin-top:0;
}
.event-poll-create__panel[hidden]{display:none!important;}

@media (max-width:760px){
  .event-comment-list{padding:14px 10px 22px;}
  .event-comment{gap:6px;}
  .conversation-message-side{flex-basis:36px;width:36px;}
  .conversation-message-side .event-comment__avatar{width:34px;height:34px;flex-basis:34px;}
  .conversation-side-action{width:28px;height:28px;font-size:.92rem;}
  .event-comment__bubble{max-width:calc(100% - 42px);}
  .conversation-compose{grid-template-columns:38px 38px minmax(0,1fr) 42px;gap:5px;}
  .conversation-compose__icon{width:38px;height:38px;font-size:1.05rem;}
  .conversation-compose__send{width:42px;height:42px;}
  .conversation-reaction-picker{left:-40px;max-width:calc(100vw - 32px);}
  .event-comment--mine .conversation-reaction-picker{right:-40px;}
  .event-comment__meta{flex-wrap:wrap;}
}

/* PATCH 418 – oprava společného spodního panelu všech chatů */
.event-comment-form label.conversation-compose__icon,
.chat-compose-form label.conversation-compose__icon {
  position: static !important;
  width: 42px !important;
  height: 42px !important;
  overflow: visible !important;
  clip: auto !important;
  clip-path: none !important;
  white-space: normal !important;
  display: grid !important;
  place-items: center !important;
}

.event-comment-form .conversation-compose,
.chat-compose-form .conversation-compose {
  width: 100% !important;
  min-width: 0 !important;
}

.event-comment-form .conversation-compose__field,
.chat-compose-form .conversation-compose__field {
  width: 100% !important;
  min-width: 0 !important;
}

@media (max-width: 760px) {
  .event-comment-form label.conversation-compose__icon,
  .chat-compose-form label.conversation-compose__icon {
    width: 38px !important;
    height: 38px !important;
  }

  .event-comment-form .conversation-compose,
  .chat-compose-form .conversation-compose {
    grid-template-columns: 38px 38px minmax(0, 1fr) 42px !important;
    align-items: end !important;
    gap: 5px !important;
  }
}

/* PATCH 419 – reakce zpráv mají vlastní prostor ve všech chatech */
.event-comment--has-reactions{
  margin-bottom:16px;
}

@media (max-width:760px){
  .event-comment--has-reactions{
    margin-bottom:18px;
  }

  .conversation-reaction-summary{
    right:6px;
    bottom:-12px;
    max-width:calc(100% - 12px);
    flex-wrap:wrap;
    justify-content:flex-end;
  }
}

/* PATCH 420 – jednotné odesílací tlačítko a reakce uvnitř zprávy */
.event-comment-form .conversation-compose__send,
.chat-compose-form .conversation-compose__send {
  width: 44px !important;
  min-width: 44px !important;
  height: 44px !important;
  min-height: 44px !important;
  padding: 0 !important;
  border-radius: 50% !important;
  transform: none !important;
  display: grid !important;
  place-items: center !important;
  flex: 0 0 44px !important;
}

/* Souhrn udělených reakcí je součástí bubliny, takže jej mobil neořízne. */
.event-comment__bubble .conversation-reaction-summary {
  position: static !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 8px 0 0 !important;
  padding: 0 !important;
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: flex-end !important;
  align-items: center !important;
  gap: 4px !important;
}

.event-comment--has-reactions {
  margin-bottom: 0 !important;
}

@media (max-width: 760px) {
  .event-comment-form .conversation-compose,
  .chat-compose-form .conversation-compose {
    grid-template-columns: 38px 38px minmax(0, 1fr) 44px !important;
  }

  .event-comment-form .conversation-compose__send,
  .chat-compose-form .conversation-compose__send {
    width: 44px !important;
    min-width: 44px !important;
    height: 44px !important;
    min-height: 44px !important;
  }

  .event-comment__bubble .conversation-reaction-summary {
    margin-top: 7px !important;
  }
}

/* PATCH 422 – aktivní tlačítko A při otevřené anketě ve všech chatech */
.event-comment-form .conversation-compose__icon[data-event-poll-create-toggle][aria-expanded="true"],
.chat-compose-form .conversation-compose__icon[data-chat-poll-open][aria-expanded="true"]{
  border-color:#202124 !important;
  background:#202124 !important;
  color:#fff !important;
}

/* PATCH 425 – modal výběru reakcí pro všechny chaty (PC i mobil) */
.conversation-reaction-choice-modal .event-comment-read-modal__dialog{
  width:min(470px,calc(100% - 28px));
  padding-top:26px;
}
.conversation-reaction-choice-modal .event-comment-read-modal__close{
  top:10px !important;
  right:10px !important;
}
.conversation-reaction-choice-modal h3{
  margin:0 0 16px;
  text-align:center;
}
.conversation-reaction-choice-grid{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  margin:0;
  padding:2px 26px 0 0;
}
.conversation-reaction-choice{
  display:grid;
  place-items:center;
  width:52px;
  min-width:52px;
  height:52px;
  min-height:52px;
  padding:0;
  border:1px solid #dce3ea;
  border-radius:50%;
  background:#fff;
  color:#111827;
  font:inherit;
  font-size:1.4rem;
  line-height:1;
  cursor:pointer;
  transition:background .15s ease,border-color .15s ease,transform .15s ease;
}
.conversation-reaction-choice:hover,
.conversation-reaction-choice:focus-visible{
  border-color:#aeb9c5;
  background:#f4f6f8;
  transform:translateY(-1px);
}
.conversation-reaction-choice.is-active{
  border-color:#1f2937;
  background:#1f2937;
}

@media (max-width:760px){
  .conversation-reaction-choice-modal .event-comment-read-modal__dialog{
    width:calc(100% - 24px);
    max-width:420px;
    padding:22px 16px 18px;
  }
  .conversation-reaction-choice-grid{
    gap:8px;
    padding-right:24px;
  }
  .conversation-reaction-choice{
    width:48px;
    min-width:48px;
    height:48px;
    min-height:48px;
    font-size:1.3rem;
  }
}

/* PATCH 426 – zachování hotové velikosti bočních ikon po PATCH 425 */
.conversation-message-side .conversation-side-action,
.event-comment .conversation-side-action {
  width: 30px !important;
  min-width: 30px !important;
  height: 30px !important;
  min-height: 30px !important;
  padding: 0 !important;
  border-radius: 50% !important;
  display: grid !important;
  place-items: center !important;
  line-height: 1 !important;
  flex: 0 0 30px !important;
}

@media (max-width: 760px) {
  .conversation-message-side .conversation-side-action,
  .event-comment .conversation-side-action {
    width: 28px !important;
    min-width: 28px !important;
    height: 28px !important;
    min-height: 28px !important;
    flex-basis: 28px !important;
  }
}

/* PATCH 427 – modal výběru reakcí vždy uprostřed obrazovky */
body:not(.auth-page):not(.intro-page) .conversation-reaction-choice-modal{
  align-items:center !important;
  justify-content:center !important;
  padding:var(--ui-space-2xl) !important;
}

@media (max-width:640px){
  body:not(.auth-page):not(.intro-page) .conversation-reaction-choice-modal{
    align-items:center !important;
    justify-content:center !important;
    padding:14px !important;
  }

  body:not(.auth-page):not(.intro-page) .conversation-reaction-choice-modal .event-comment-read-modal__dialog{
    width:min(420px,100%) !important;
    max-height:calc(100vh - 28px) !important;
    border-radius:22px !important;
  }
}

/* PATCH 428 – oba reakční modaly vždy uprostřed na PC i mobilu */
body:not(.auth-page):not(.intro-page) .conversation-reaction-modal{
  align-items:center !important;
  justify-content:center !important;
  padding:var(--ui-space-2xl) !important;
}

@media (max-width:640px){
  body:not(.auth-page):not(.intro-page) .conversation-reaction-modal{
    align-items:center !important;
    justify-content:center !important;
    padding:14px !important;
  }

  body:not(.auth-page):not(.intro-page) .conversation-reaction-modal .event-comment-read-modal__dialog{
    width:min(430px,100%) !important;
    max-height:calc(100vh - 28px) !important;
    border-radius:22px !important;
  }
}

/* PATCH 430 – všechny chatové modaly vždy uprostřed na PC i mobilu */
body:not(.auth-page):not(.intro-page) .event-comment-read-modal {
  align-items: center !important;
  justify-content: center !important;
  padding: var(--ui-space-2xl) !important;
}

@media (max-width: 640px) {
  body:not(.auth-page):not(.intro-page) .event-comment-read-modal {
    align-items: center !important;
    justify-content: center !important;
    padding: 14px !important;
  }

  body:not(.auth-page):not(.intro-page) .event-comment-read-modal .event-comment-read-modal__dialog {
    width: min(720px, 100%) !important;
    max-height: calc(100vh - 28px) !important;
    border-radius: 22px !important;
  }
}


/* PATCH 431 – společná hlavička zpráv a denní oddělovače ve všech chatech */
.conversation-date-separator{
  display:flex;
  align-items:center;
  justify-content:center;
  width:100%;
  margin:12px 0 10px;
  clear:both;
}
.conversation-date-separator span{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:28px;
  padding:5px 12px;
  border:1px solid var(--app-line,#e2e5e9);
  border-radius:var(--ui-radius-pill,999px);
  background:var(--ui-white,#fff);
  color:var(--app-muted,#6b7280);
  font-size:var(--ui-font-control,.78rem);
  font-weight:var(--ui-weight-bold,700);
  line-height:1;
  box-shadow:0 1px 3px rgba(15,23,42,.06);
}
.event-comment__meta{
  display:flex !important;
  flex-wrap:nowrap !important;
  align-items:center !important;
  width:100%;
  min-width:0;
  gap:5px !important;
}
.event-comment__meta > strong{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.event-comment__meta > time,
.event-comment__meta > .conversation-meta-separator{
  flex:0 0 auto;
  white-space:nowrap;
}
.event-comment__meta .event-comment-read-stat{
  flex:0 0 auto;
  margin-left:auto !important;
}
.event-comment-read-stat{gap:4px;}
.event-comment-read-eye{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  line-height:1;
}
.event-comment-read-info{display:none !important;}
@media (max-width:760px){
  .conversation-date-separator{margin:10px 0 8px;}
  .conversation-date-separator span{
    min-height:26px;
    padding:4px 10px;
    font-size:.72rem;
  }
  .event-comment__meta{gap:4px !important;}
  .event-comment__meta > strong{font-size:.84rem !important;}
  .event-comment__meta > time,
  .event-comment__meta > .conversation-meta-separator,
  .event-comment-read-stat{font-size:.70rem !important;}
  .event-comment-read-stat{padding:3px 6px !important;}
}

/* PATCH 432 – jednotné mezery, nenápadné přečtení a společný přehled reakcí */
.event-comment-list{
  gap:16px;
}

.event-comment-read-stat,
.event-comment__meta .event-comment-read-stat{
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  color:var(--app-muted,#6b7280) !important;
  font-weight:400 !important;
}
.event-comment-read-stat:hover,
.event-comment-read-stat:focus-visible{
  background:transparent !important;
  color:var(--app-text,#111827) !important;
}

.event-comment__bubble .conversation-reaction-summary{
  width:auto !important;
  max-width:100% !important;
  margin:8px 0 0 auto !important;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  color:#374151 !important;
  box-shadow:none !important;
  cursor:pointer !important;
  display:inline-flex !important;
  flex-wrap:nowrap !important;
  align-items:center !important;
  justify-content:flex-end !important;
  gap:0 !important;
  font:inherit !important;
}
.event-comment__bubble .conversation-reaction-summary:hover,
.event-comment__bubble .conversation-reaction-summary:focus-visible{
  border:0 !important;
  background:transparent !important;
}
.conversation-reaction-summary .conversation-reaction-chip{
  min-height:auto !important;
  width:18px !important;
  height:18px !important;
  padding:0 !important;
  margin-left:-4px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  border:0 !important;
  border-radius:50% !important;
  background:transparent !important;
  box-shadow:none !important;
  cursor:inherit !important;
  font-size:.9rem !important;
  line-height:1 !important;
}
.conversation-reaction-summary .conversation-reaction-chip:first-child{
  margin-left:0 !important;
}
.conversation-reaction-summary .conversation-reaction-chip strong{
  display:none !important;
}
.conversation-reaction-summary .conversation-reaction-total{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  margin-left:5px;
  color:var(--app-muted,#6b7280);
  font-size:.75rem;
  font-weight:600;
  line-height:1;
}

.conversation-reaction-detail-tabs{
  display:flex;
  gap:6px;
  overflow-x:auto;
  margin:0 0 14px;
  padding:0 0 8px;
  border-bottom:1px solid var(--app-line,#e2e5e9);
  scrollbar-width:thin;
}
.conversation-reaction-detail-tab{
  flex:0 0 auto;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:5px;
  min-height:36px;
  padding:7px 10px;
  border:0;
  border-bottom:3px solid transparent;
  background:transparent;
  color:var(--app-muted,#6b7280);
  font:inherit;
  font-size:.88rem;
  cursor:pointer;
}
.conversation-reaction-detail-tab strong{
  font-size:.78rem;
  font-weight:700;
}
.conversation-reaction-detail-tab.is-active{
  border-bottom-color:var(--app-blue,#2563eb);
  color:var(--app-text,#111827);
}
.conversation-reaction-person-emoji{
  flex:0 0 auto;
  margin-left:auto;
  font-size:1.15rem;
  line-height:1;
}

@media (max-width:760px){
  .event-comment-list{
    gap:18px;
  }
  .event-comment__bubble .conversation-reaction-summary{
    margin-top:9px !important;
  }
  .conversation-reaction-detail-tabs{
    margin-bottom:12px;
  }
}


@media (max-width:760px){
  .conversation-reaction-summary .conversation-reaction-chip{
    width:16px !important;
    height:16px !important;
    margin-left:-5px !important;
    font-size:.8rem !important;
  }
  .conversation-reaction-summary .conversation-reaction-total{
    font-size:.72rem;
    margin-left:4px;
  }
}

/* PATCH 433 – souhrn udělených reakcí zarovnaný doprava ve všech chatech */
.event-comment__bubble .conversation-reaction-summary{
  display:flex !important;
  width:max-content !important;
  max-width:100% !important;
  margin-left:auto !important;
  margin-right:0 !important;
  align-self:flex-end !important;
}

/* PATCH 434 – společný modal označení uživatele a jednotná spodní lišta všech chatů */
.conversation-mention-modal .event-comment-read-modal__dialog{
  width:min(520px,calc(100% - 28px));
}
.conversation-mention-modal h3{
  margin:0 0 14px;
}
.conversation-mention-modal__list{
  display:grid;
  gap:8px;
  max-height:min(430px,60vh);
  overflow-y:auto;
  padding-right:2px;
}
.conversation-mention-modal__person{
  display:flex;
  align-items:center;
  width:100%;
  min-height:54px;
  padding:7px 10px;
  gap:10px;
  border:1px solid var(--app-line,#e2e5e9);
  border-radius:var(--ui-radius-lg,14px);
  background:var(--ui-white,#fff);
  color:var(--app-text,#111827);
  font:inherit;
  text-align:left;
  cursor:pointer;
}
.conversation-mention-modal__person:hover,
.conversation-mention-modal__person:focus-visible{
  border-color:#c7d0da;
  background:var(--ui-surface-light,#f7f8fa);
}
.conversation-mention-modal__person img,
.conversation-mention-modal__initial{
  flex:0 0 40px;
  width:40px;
  height:40px;
  border-radius:50%;
  object-fit:cover;
}
.conversation-mention-modal__initial{
  display:grid;
  place-items:center;
  background:#eef2f7;
  color:#374151;
  font-weight:800;
}
.conversation-mention-modal__copy{
  display:flex;
  flex-direction:column;
  min-width:0;
}
.conversation-mention-modal__copy strong{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.conversation-mention-modal__copy small{
  margin-top:2px;
  color:var(--app-muted,#6b7280);
}

.event-comment-form .conversation-compose,
.chat-compose-form .conversation-compose{
  grid-template-columns:44px 44px minmax(0,1fr) 44px !important;
  align-items:end !important;
  gap:7px !important;
}
.event-comment-form .conversation-compose__icon,
.chat-compose-form .conversation-compose__icon,
.event-comment-form label.conversation-compose__icon,
.chat-compose-form label.conversation-compose__icon,
.event-comment-form .conversation-compose__send,
.chat-compose-form .conversation-compose__send{
  width:44px !important;
  min-width:44px !important;
  height:44px !important;
  min-height:44px !important;
  flex:0 0 44px !important;
  align-self:end !important;
}
.event-comment-form .conversation-compose__field,
.chat-compose-form .conversation-compose__field{
  align-self:end !important;
}
.event-comment-form .conversation-compose__field textarea,
.chat-compose-form .conversation-compose__field textarea{
  min-height:44px !important;
  max-height:128px !important;
  margin:0 !important;
  overflow-y:auto !important;
}

@media (max-width:760px){
  .conversation-mention-modal .event-comment-read-modal__dialog{
    width:min(520px,100%) !important;
  }
  .conversation-mention-modal__list{
    max-height:min(360px,55vh);
  }
  .event-comment-form .conversation-compose,
  .chat-compose-form .conversation-compose{
    grid-template-columns:44px 44px minmax(0,1fr) 44px !important;
    gap:6px !important;
  }
}


/* PATCH 438 – chat vyplní skutečně dostupnou výšku displeje */
[data-conversation-viewport-panel].is-conversation-viewport-sized{
  height:var(--conversation-panel-height) !important;
  min-height:300px;
  max-height:none !important;
  display:flex !important;
  flex-direction:column !important;
  overflow:hidden !important;
}
[data-conversation-viewport-panel].is-conversation-viewport-sized > .event-comments-head{
  flex:0 0 auto;
}
[data-conversation-viewport-panel].is-conversation-viewport-sized > .event-comment-list{
  flex:1 1 auto;
  min-height:0 !important;
  height:auto !important;
  max-height:none !important;
  overflow-x:hidden !important;
  overflow-y:auto !important;
  overscroll-behavior:contain;
}
[data-conversation-viewport-panel].is-conversation-viewport-sized > .event-comment-form{
  flex:0 0 auto;
  position:relative;
  z-index:4;
  margin:0 !important;
  background:var(--ui-white,#fff);
}
[data-conversation-viewport-panel].is-conversation-viewport-sized > .event-poll-create{
  flex:0 0 auto;
}

@media (max-width:760px){
  body.chat-page{
    overflow-x:hidden;
  }
  .chat-page main{
    min-height:0;
  }
  [data-conversation-viewport-panel].is-conversation-viewport-sized{
    min-height:280px;
  }
}

/* PATCH 439 – kompaktní jednotné rozložení všech chatů */
.event-comments-head{
  padding:11px 14px 10px !important;
}
.event-comments-head h3{
  margin:0 !important;
  padding:0 !important;
  line-height:1.15 !important;
}
.event-comments-head p{
  margin-top:4px !important;
  line-height:1.25 !important;
}
.event-comment-list{
  gap:10px !important;
  padding:10px 12px 12px !important;
}
.event-comment__bubble,
.event-comment--mine .event-comment__bubble{
  padding:8px 10px 7px !important;
}
.event-comment__meta{
  margin-bottom:3px !important;
  line-height:1.15 !important;
}
.event-comment__bubble > p{
  margin:0 !important;
  line-height:1.38 !important;
}
.event-comment__reply-ref{
  margin:0 0 6px !important;
  padding:6px 8px !important;
}
.event-comment__bubble .conversation-reaction-summary{
  margin-top:3px !important;
  margin-bottom:0 !important;
}
.conversation-date-separator{
  margin:6px 0 5px !important;
}
.conversation-date-separator span{
  min-height:24px !important;
  padding:3px 9px !important;
}
.event-comment-form,
.chat-compose-form{
  padding:7px 10px 8px !important;
}
[data-conversation-viewport-panel].is-conversation-viewport-sized > .event-comment-list{
  border-bottom:0 !important;
}
[data-conversation-viewport-panel].is-conversation-viewport-sized > .event-comment-form{
  border-top:1px solid var(--app-line,#e2e5e9) !important;
}

@media (max-width:760px){
  .event-comments-head{
    padding:9px 10px 8px !important;
  }
  .event-comments-head p{
    margin-top:3px !important;
  }
  .event-comment-list{
    gap:8px !important;
    padding:8px 8px 10px !important;
  }
  .event-comment__bubble,
  .event-comment--mine .event-comment__bubble{
    padding:7px 9px 6px !important;
  }
  .event-comment__meta{
    margin-bottom:2px !important;
  }
  .event-comment__bubble > p{
    line-height:1.34 !important;
  }
  .event-comment__reply-ref{
    margin-bottom:5px !important;
    padding:5px 7px !important;
  }
  .event-comment__bubble .conversation-reaction-summary{
    margin-top:2px !important;
  }
  .conversation-date-separator{
    margin:5px 0 4px !important;
  }
  .event-comment-form,
  .chat-compose-form{
    padding:6px 8px 7px !important;
    max-height:none !important;
  }
}

/* PATCH 440 – drobné chatové ovládací prvky nepřebírají globální výšku tlačítek */
.event-comment-read-stat,
.event-comment__meta .event-comment-read-stat,
.event-comment__bubble .conversation-reaction-summary {
  min-height: 0 !important;
  height: auto !important;
  max-height: none !important;
  line-height: 1 !important;
}

.conversation-message-side .conversation-side-action,
.event-comment .conversation-side-action {
  min-height: 30px !important;
  max-height: 30px !important;
}

@media (max-width: 760px) {
  .conversation-message-side .conversation-side-action,
  .event-comment .conversation-side-action {
    min-height: 28px !important;
    max-height: 28px !important;
  }
}

/* PATCH 445 – výběr interního odkazu na událost přes $ */
.conversation-event-link-modal .event-comment-read-modal__dialog{
  width:min(620px,calc(100% - 28px));
}
.conversation-event-link-modal__search{
  width:100%;
  min-height:44px;
  margin:0 0 12px;
  padding:10px 13px;
  border:1px solid var(--app-line,#e2e5e9);
  border-radius:var(--ui-radius-lg,14px);
  background:var(--ui-white,#fff);
  color:var(--app-text,#111827);
  font:inherit;
  outline:none;
}
.conversation-event-link-modal__search:focus{
  border-color:#b9c3cf;
}
.conversation-event-link-modal__group{
  position:sticky;
  top:0;
  z-index:1;
  padding:7px 2px 5px;
  background:var(--ui-white,#fff);
  color:var(--app-muted,#6b7280);
  font-size:.78rem;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.03em;
}
@media (max-width:760px){
  .conversation-event-link-modal .event-comment-read-modal__dialog{
    width:min(620px,100%) !important;
  }
}

/* PATCH 454 – Přehled pokut / týmový ceník */
.fines-overview-shortcuts{
  display:flex;
  align-items:center;
  gap:12px;
}
.fines-overview-card{
  flex:1 1 auto;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:16px 18px;
  border:1px solid var(--ui-border,#e3e3e3);
  border-radius:var(--ui-radius-lg,14px);
  text-decoration:none;
  color:inherit;
}
.fines-overview-card > span:first-child{
  display:grid;
  gap:3px;
}
.fines-overview-card strong{font-size:1rem;}
.fines-overview-card small{color:var(--ui-muted,#6b7280);}
.fines-overview-card > span:last-child{font-size:1.55rem;line-height:1;}
.fines-overview-card.is-active{border-color:var(--ui-text,#111);}
.fines-settings-list{display:grid;gap:10px;}
.fines-setting-row{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:18px;
  padding:14px 16px;
}
.fines-setting-row__main{min-width:0;display:grid;gap:5px;}
.fines-setting-row__main p{margin:0;line-height:1.35;}
.fines-setting-row__title{display:flex;align-items:center;flex-wrap:wrap;gap:8px;}
.fines-setting-row__controls{display:flex;align-items:flex-end;gap:14px;}
.fines-setting-amount{display:grid;gap:5px;min-width:145px;}
.fines-setting-amount > span:first-child{font-size:.78rem;color:var(--ui-muted,#6b7280);}
.fines-money-input{display:flex;align-items:center;gap:7px;}
.fines-money-input input{width:92px;}
.fines-money-input b{font-size:.9rem;}
.fines-setting-toggle{display:flex;align-items:center;gap:7px;min-height:42px;white-space:nowrap;}
.fines-setting-toggle input{width:18px;height:18px;margin:0;}
.fines-setting-manual-amount{display:grid;gap:2px;min-width:145px;}
.fines-setting-manual-amount small{color:var(--ui-muted,#6b7280);}
.fines-settings-save{position:sticky;bottom:10px;z-index:5;justify-content:flex-end;padding-top:14px;}
.fines-settings-history{gap:8px;}
.fines-history-row{display:flex;justify-content:space-between;align-items:center;gap:16px;}
.fines-history-row > div:first-child{display:grid;gap:2px;}
.fines-history-row small{color:var(--ui-muted,#6b7280);}
.fines-history-row__change{display:grid;gap:2px;text-align:right;font-size:.9rem;}
@media (max-width:760px){
  .fines-overview-shortcuts{align-items:stretch;flex-direction:column;}
  .fines-overview-card{padding:13px 14px;}
  .fines-setting-row{grid-template-columns:1fr;gap:10px;padding:12px;}
  .fines-setting-row__controls{align-items:end;justify-content:space-between;gap:10px;}
  .fines-setting-amount,.fines-setting-manual-amount{min-width:0;}
  .fines-setting-toggle{min-height:0!important;}
  .fines-setting-toggle input{min-height:0!important;}
  .fines-settings-save{bottom:76px;}
  .fines-history-row{align-items:flex-start;flex-direction:column;gap:6px;}
  .fines-history-row__change{text-align:left;}
}

/* PATCH 455 – sjednocený ceník pokut + kompaktní responzivní rozložení */
.fines-settings-panel{
  padding:0;
  overflow:hidden;
}
.fines-settings-panel > .section-head{
  margin:0;
  padding:18px 20px;
  border-bottom:1px solid var(--app-line,#e5e7eb);
}
.fines-settings-form{display:grid;gap:0;}
.fines-settings-list{display:block;}
.fines-settings-group-head{
  display:flex;
  align-items:baseline;
  gap:10px;
  padding:11px 20px;
  border-bottom:1px solid var(--app-line,#e5e7eb);
  background:var(--ui-surface-light,#f7f8fa);
}
.fines-settings-group-head strong{
  color:var(--app-text,#111827);
  font-size:.92rem;
}
.fines-settings-group-head span{
  color:var(--app-muted,#6b7280);
  font-size:.78rem;
}
.fines-setting-row{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(260px,auto);
  align-items:center;
  gap:20px;
  margin:0;
  padding:14px 20px;
  border:0;
  border-bottom:1px solid var(--app-line,#e5e7eb);
  border-radius:0;
  background:var(--ui-white,#fff);
}
.fines-setting-row__main{min-width:0;display:grid;gap:4px;}
.fines-setting-row__title{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:8px;
}
.fines-setting-row__title > strong{
  color:var(--app-text,#111827);
  font-size:.96rem;
  line-height:1.3;
}
.fines-setting-row__main p,
.fines-setting-row__main small{line-height:1.35;}
.fines-setting-row__controls{
  display:grid;
  grid-template-columns:minmax(150px,190px) 92px;
  align-items:end;
  justify-content:end;
  gap:12px;
}
.fines-setting-amount,
.fines-setting-manual-amount{display:grid;gap:5px;min-width:0;}
.fines-setting-amount > span:first-child,
.fines-setting-manual-amount > .app-field-label{
  color:var(--app-muted,#6b7280);
  font-size:.78rem;
  font-weight:600;
}
.fines-money-input{display:flex;align-items:center;gap:8px;}
.fines-setting-input{
  width:100%!important;
  min-width:0;
  height:42px;
  min-height:42px!important;
  padding:9px 11px!important;
  border:1px solid var(--ui-border,#d8dde3)!important;
  border-radius:var(--ui-radius-sm,10px)!important;
  background:var(--ui-white,#fff)!important;
  color:var(--app-text,#111827)!important;
  font:inherit;
  outline:none;
}
.fines-setting-input:focus{
  border-color:var(--app-blue,#07599a)!important;
  box-shadow:0 0 0 3px rgba(7,89,154,.11);
}
.fines-money-input b{font-size:.9rem;font-weight:600;color:var(--app-text,#111827);}
.fines-setting-manual-amount strong{font-size:.88rem;color:var(--app-text,#111827);}
.fines-setting-manual-amount small{color:var(--app-muted,#6b7280);font-size:.78rem;}
.fines-setting-toggle{
  display:flex;
  align-items:center;
  justify-content:flex-start;
  gap:8px;
  min-height:42px!important;
  margin:0;
  color:var(--app-text,#111827);
  font-weight:600;
  cursor:pointer;
}
.fines-setting-toggle input{
  width:20px!important;
  height:20px!important;
  min-width:20px!important;
  min-height:20px!important;
  margin:0!important;
  padding:0!important;
  accent-color:var(--app-blue,#07599a);
}
.fines-settings-save{
  position:sticky;
  bottom:10px;
  z-index:5;
  margin:0;
  padding:14px 20px;
  border-top:1px solid var(--app-line,#e5e7eb);
  background:rgba(255,255,255,.96);
  backdrop-filter:blur(8px);
}

@media (max-width:760px){
  .fines-settings-panel > .section-head{padding:15px 14px;}
  .fines-settings-group-head{
    display:grid;
    gap:2px;
    padding:10px 14px;
  }
  .fines-setting-row{
    grid-template-columns:1fr;
    gap:10px;
    padding:13px 14px;
  }
  .fines-setting-row__title{align-items:flex-start;gap:7px;}
  .fines-setting-row__controls{
    grid-template-columns:minmax(0,1fr) auto;
    align-items:end;
    justify-content:stretch;
    gap:12px;
  }
  .fines-setting-toggle{
    min-height:42px!important;
    align-self:end;
    white-space:nowrap;
  }
  .fines-setting-input{height:40px;min-height:40px!important;}
  .fines-settings-save{
    bottom:76px;
    padding:12px 14px;
  }
  .fines-settings-save .btn{width:100%;}
}

/* PATCH 456 – Přehled pokut jako standardní hero karta + sjednocené badge */
.fines-overview-hero-shell{
  padding:var(--app-panel-inner-gap,4px)!important;
}
.fines-overview-hero{
  position:relative;
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:center!important;
  color:inherit;
  text-decoration:none!important;
  border-radius:calc(var(--app-panel-radius,12px) - 3px);
  transition:background .15s ease;
}
.fines-overview-hero:hover,
.fines-overview-hero:focus-visible{
  background:var(--ui-surface-light,#f7f8fa);
  color:inherit;
  text-decoration:none!important;
  outline:none;
}
.fines-overview-hero h2{
  margin:0 0 4px;
  color:var(--app-text,#111827);
}
.fines-overview-hero__arrow{
  display:grid;
  place-items:center;
  min-width:32px;
  min-height:32px;
  font-size:1.55rem;
  line-height:1;
  color:var(--app-text,#111827);
}
.fines-settings-back-shell{
  display:flex;
  justify-content:flex-end;
}
.fines-setting-row__badges{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:7px;
  margin-top:2px;
}
.fines-setting-row__badges .status-badge{
  display:inline-flex;
  align-items:center;
  width:auto;
  padding:5px 9px;
  border-radius:var(--ui-radius-pill,999px);
  font-size:.76rem;
  font-weight:700;
  line-height:1.1;
}
.fines-recipient-badge{
  background:#1f2328!important;
  border-color:#1f2328!important;
  color:#fff!important;
}
.status-badge--manual{
  background:#f59e0b!important;
  border-color:#f59e0b!important;
  color:#fff!important;
}
@media (max-width:760px){
  .fines-overview-hero{
    grid-template-columns:minmax(0,1fr) auto!important;
    gap:10px!important;
  }
  .fines-settings-back-shell .btn{width:100%;}
  .fines-setting-row__badges{gap:6px;}
}

/* PATCH 461 – velmi úzké displeje: textové pole chatu na vlastní řádek */
@media (max-width:359px){
  .event-comment-form .conversation-compose,
  .chat-compose-form .conversation-compose{
    grid-template-columns:44px 44px minmax(0,1fr) 44px !important;
    grid-template-rows:auto auto;
    gap:6px !important;
  }

  .event-comment-form .conversation-compose__field,
  .chat-compose-form .conversation-compose__field{
    grid-column:1 / -1;
    grid-row:2;
    width:100% !important;
    min-width:0 !important;
  }

  .event-comment-form .conversation-compose__field textarea,
  .chat-compose-form .conversation-compose__field textarea{
    width:100% !important;
    min-width:0 !important;
  }

  .event-comment-form .conversation-compose__send,
  .chat-compose-form .conversation-compose__send{
    grid-column:4;
    grid-row:1;
  }
}

/* PATCH 470 - mobile attendance status card readability */
@media (max-width: 760px){
  .attendance-status-card{
    flex-direction:column;
    align-items:stretch;
    gap:12px;
  }
  .attendance-status-card > div:first-child{
    width:100%;
    min-width:0;
  }
  .attendance-status-card strong,
  .attendance-status-card small{
    width:100%;
    white-space:normal;
    word-break:normal;
    overflow-wrap:break-word;
  }
  .attendance-status-actions{
    width:100%;
    justify-content:flex-start;
    align-items:center;
    flex-wrap:wrap;
    gap:10px;
  }
  .attendance-status-actions .btn{
    flex:0 0 auto;
  }
}

/* PATCH 471 - mobile attendance status card: override event-page grid rules */
@media (max-width: 760px){
  .app-shell.event-page .event-panel .attendance-status-card,
  .event-page .event-panel .attendance-status-card{
    display:grid !important;
    grid-template-columns:minmax(0, 1fr) !important;
    align-items:start !important;
    gap:12px !important;
  }

  .app-shell.event-page .event-panel .attendance-status-card > div:first-child,
  .event-page .event-panel .attendance-status-card > div:first-child{
    width:100% !important;
    min-width:0 !important;
    max-width:none !important;
  }

  .app-shell.event-page .event-panel .attendance-status-card strong,
  .app-shell.event-page .event-panel .attendance-status-card small,
  .event-page .event-panel .attendance-status-card strong,
  .event-page .event-panel .attendance-status-card small{
    width:auto !important;
    max-width:none !important;
    min-width:0 !important;
    white-space:normal !important;
    word-break:normal !important;
    overflow-wrap:normal !important;
  }

  .app-shell.event-page .event-panel .attendance-status-actions,
  .event-page .event-panel .attendance-status-actions{
    width:100% !important;
    margin-left:0 !important;
    justify-content:flex-start !important;
    align-items:center !important;
    flex-wrap:wrap !important;
    gap:8px !important;
  }
}

/* PATCH 472 – composer: pevné sloupce i když uživatel nemá tlačítko ankety A */
.event-comment-form .conversation-compose__field,
.chat-compose-form .conversation-compose__field{
  grid-column:3 !important;
}

.event-comment-form .conversation-compose__send,
.chat-compose-form .conversation-compose__send{
  grid-column:4 !important;
}

@media (max-width:359px){
  .event-comment-form .conversation-compose__field,
  .chat-compose-form .conversation-compose__field{
    grid-column:1 / -1 !important;
    grid-row:2 !important;
  }

  .event-comment-form .conversation-compose__send,
  .chat-compose-form .conversation-compose__send{
    grid-column:4 !important;
    grid-row:1 !important;
  }
}


/* PATCH 475: Ceník pokut – jednotný modal + rozdělení automatické/ruční */
.fines-price-modal__content{display:grid;gap:18px;}
.fines-price-modal__team{display:grid;gap:16px;}
.fines-price-modal__team + .fines-price-modal__team{padding-top:18px;border-top:1px solid var(--ui-border,#e2e8f0);}
.fines-price-modal__group{display:grid;gap:10px;}
.fines-price-modal__group-head{display:flex;align-items:center;justify-content:space-between;gap:12px;}
.fines-price-modal__group-head h4{margin:0;font-size:var(--ui-font-lg);font-weight:var(--ui-weight-extrabold);color:var(--ui-ink);}
.fines-price-modal__list{display:grid;gap:8px;}
.fines-price-modal__row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 14px;}
.fines-price-modal__row>strong:first-child{min-width:0;overflow-wrap:anywhere;}
.fines-price-modal__amount{flex:0 0 auto;white-space:nowrap;}
@media (max-width:640px){
  .fines-price-modal__group-head{align-items:flex-start;flex-direction:column;gap:7px;}
  .fines-price-modal__row{padding:11px 12px;}
}

/* PATCH 476: Ceník pokut – čisté řádky bez rámečků */
.fines-price-modal__group{
  gap:8px;
}
.fines-price-modal__group-head{
  padding:2px 2px 5px;
}
.fines-price-modal__group-head h4{
  display:block;
  margin:0;
}
.fines-price-modal__list{
  display:block;
  border-top:1px solid var(--ui-border,#e2e8f0);
}
.fines-price-modal__row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  width:100%;
  margin:0;
  padding:10px 4px;
  border:0 !important;
  border-bottom:1px solid var(--ui-border,#e2e8f0) !important;
  border-radius:0 !important;
  box-shadow:none !important;
  background:transparent !important;
  transition:background-color .15s ease;
}
.fines-price-modal__row:hover,
.fines-price-modal__row:focus-within,
.fines-price-modal__row:active{
  background:var(--ui-surface-soft,#f4f5f7) !important;
}
.fines-price-modal__row > strong:first-child{
  min-width:0;
  overflow-wrap:anywhere;
  font-weight:500;
}
.fines-price-modal__amount{
  flex:0 0 auto;
  white-space:nowrap;
  font-weight:800 !important;
}
@media (max-width:640px){
  .fines-price-modal__row{padding:10px 3px;gap:12px;}
}


/* PATCH 478 – Ceník pokut: finální modal, správné skupiny a čisté řádky */
.fines-price-modal .poll-voters-modal__dialog{
  width:min(620px,calc(100% - 28px));
}
.fines-price-modal__content{
  display:grid;
  gap:22px;
}
.fines-price-modal__team{
  display:grid;
  gap:20px;
}
.fines-price-modal__team + .fines-price-modal__team{
  padding-top:18px;
  border-top:1px solid var(--ui-border,#e2e8f0);
}
.fines-price-modal__group{
  display:grid;
  gap:8px;
}
.fines-price-modal__group-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:14px;
  padding:0 2px 8px;
}
.fines-price-modal__group-head > div{min-width:0;}
.fines-price-modal__group-head h4{
  margin:0;
  font-size:16px;
  font-weight:800;
  line-height:1.25;
}
.fines-price-modal__group-head p{
  margin:3px 0 0;
  color:var(--ui-muted,#667085);
  font-size:12px;
  line-height:1.35;
}
.fines-price-modal__list{
  display:block !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
}
.fines-price-modal__row{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:18px !important;
  width:100% !important;
  margin:0 !important;
  padding:11px 6px !important;
  border:0 !important;
  border-bottom:1px solid var(--ui-border,#dfe3e8) !important;
  border-radius:0 !important;
  outline:0 !important;
  box-shadow:none !important;
  background:transparent !important;
  transition:background-color .15s ease;
}
.fines-price-modal__row:hover,
.fines-price-modal__row:focus-within,
.fines-price-modal__row:active{
  background:#f5f6f7 !important;
}
.fines-price-modal__row > strong:first-child{
  display:block;
  min-width:0;
  font-weight:500 !important;
  overflow-wrap:anywhere;
}
.fines-price-modal__amount{
  display:block;
  flex:0 0 auto;
  white-space:nowrap;
  font-weight:800 !important;
  color:var(--ui-ink,#111827);
}

/* Kompatibilita: pokud prohlížeč ještě drží starý HTML modal z PATCH 474,
   alespoň se odstraní kartové rámečky a cena zůstane tučně. */
#fine-price-list-dialog .poll-push-list{
  display:block !important;
  gap:0 !important;
}
#fine-price-list-dialog .poll-push-row.app-card{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:18px !important;
  margin:0 !important;
  padding:11px 6px !important;
  border:0 !important;
  border-bottom:1px solid var(--ui-border,#dfe3e8) !important;
  border-radius:0 !important;
  box-shadow:none !important;
  background:transparent !important;
}
#fine-price-list-dialog .poll-push-row.app-card:hover,
#fine-price-list-dialog .poll-push-row.app-card:active{
  background:#f5f6f7 !important;
}
#fine-price-list-dialog .poll-push-row.app-card > strong:last-child{
  font-weight:800 !important;
}

@media (max-width:640px){
  .fines-price-modal__group-head{
    align-items:flex-start;
    flex-direction:column;
    gap:6px;
  }
  .fines-price-modal__row{
    padding:10px 4px !important;
    gap:12px !important;
  }
}

/* PATCH 479 – kompaktní hlavička modulu Pokuty */
.fines-page-intro-shell{
  margin-bottom:0!important;
}
.fines-page-intro{
  padding:18px 20px!important;
}
.fines-page-intro__head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
}
.fines-page-intro__copy{
  min-width:0;
  display:grid;
  gap:5px;
}
.fines-page-intro__copy h1{
  margin:0!important;
  padding:0!important;
  font-size:var(--ui-font-2xl,1.5rem)!important;
  line-height:1.15!important;
  font-weight:var(--ui-weight-black-soft,800)!important;
}
.fines-page-intro__copy .muted{
  margin:0!important;
  max-width:620px;
  line-height:1.4;
}
.fines-page-intro__actions{
  display:flex;
  align-items:center;
  gap:10px;
  margin-top:14px;
}
.fines-page-intro .fines-back-btn{
  flex:0 0 auto;
  margin:0!important;
}
.fines-page-intro .btn{
  min-height:38px!important;
  padding:8px 12px!important;
  border-radius:11px!important;
}
@media (max-width:760px){
  .fines-page-intro{
    padding:15px 14px!important;
  }
  .fines-page-intro__head{
    gap:12px;
  }
  .fines-page-intro__copy h1{
    font-size:1.35rem!important;
  }
  .fines-page-intro__copy .muted{
    font-size:.9rem;
  }
  .fines-page-intro__actions{
    margin-top:12px;
  }
  .fines-page-intro__actions .btn{
    width:auto!important;
  }
}


/* PATCH 481 – Pokuty: horní karta používá stejný team-hero panel jako karta hráče */
body.fines-page .fines-page-intro-shell{
  margin-top:10px !important;
  margin-bottom:10px !important;
}
body.fines-page .fines-page-intro{
  width:100% !important;
  box-sizing:border-box !important;
}
body.fines-page .fines-page-intro__head{
  display:flex !important;
  align-items:flex-start !important;
  justify-content:space-between !important;
  gap:18px !important;
  width:100% !important;
}
body.fines-page .fines-page-intro__copy{
  min-width:0 !important;
  display:grid !important;
  gap:5px !important;
}
body.fines-page .fines-page-intro__copy h1{
  margin:0 !important;
  padding:0 !important;
  line-height:1.15 !important;
}
body.fines-page .fines-page-intro__copy .muted{
  margin:0 !important;
  line-height:1.4 !important;
}
body.fines-page .fines-page-intro__actions{
  display:flex !important;
  align-items:center !important;
  gap:10px !important;
  margin-top:12px !important;
}
body.fines-page .fines-page-intro .fines-back-btn{
  flex:0 0 auto !important;
  margin:0 !important;
}

@media (max-width:760px){
  /* Obě bílé karty mají přesně stejný vnější panel, šířku a boční odsazení. */
  body.fines-page .team-hero.admin-hero{
    width:calc(100% - 28px) !important;
    max-width:none !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }
  body.fines-page .fines-page-intro-shell{
    margin-top:10px !important;
    margin-bottom:10px !important;
  }
  body.fines-page .fines-page-intro__head{
    gap:12px !important;
  }
  body.fines-page .fines-page-intro__copy h1{
    font-size:1.35rem !important;
  }
  body.fines-page .fines-page-intro__copy .muted{
    font-size:.9rem !important;
  }
  body.fines-page .fines-page-intro__actions{
    margin-top:10px !important;
  }
  body.fines-page .fines-price-modal{
    align-items:center !important;
    justify-content:center !important;
    padding:18px !important;
  }
  body.fines-page .fines-price-modal .poll-voters-modal__dialog{
    width:min(620px,calc(100vw - 36px)) !important;
    max-height:calc(100vh - 36px) !important;
    margin:auto !important;
    border-radius:22px !important;
  }
}

/* PATCH 485 – Pokuty: zarovnání Zpět + jednotný formulář ruční pokuty */
body.fines-page .fines-page-intro__head{
  position:relative !important;
  display:block !important;
  min-height:42px;
  padding-right:96px !important;
}
body.fines-page .fines-page-intro .fines-back-btn{
  position:absolute !important;
  top:0 !important;
  right:0 !important;
  margin:0 !important;
}

body.fines-page .fines-add-panel{
  overflow:visible;
}
body.fines-page .fines-add-form{
  display:grid;
  gap:16px;
}
body.fines-page .fines-add-form label{
  display:grid;
  gap:7px;
}
body.fines-page .fines-add-form label > span:first-child,
body.fines-page .fines-add-form__fixed > span:first-child{
  font-weight:700;
  color:var(--ui-ink,#111827);
}
body.fines-page .fines-add-form select,
body.fines-page .fines-add-form input,
body.fines-page .fines-add-form textarea{
  width:100%;
  box-sizing:border-box;
}
body.fines-page .fines-add-form__fixed{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  min-height:48px;
  padding:11px 14px;
  border:1px solid var(--ui-border,#dbe2ea);
  border-radius:12px;
  background:var(--ui-soft,#f7f8fa);
}
body.fines-page .fines-add-form__fixed strong{
  font-size:1.05rem;
  white-space:nowrap;
}
body.fines-page .fines-add-form [hidden]{
  display:none !important;
}
body.fines-page .fines-add-form .app-actions{
  margin-top:2px;
}

@media (max-width:760px){
  body.fines-page .fines-page-intro__head{
    padding-right:88px !important;
  }
  body.fines-page .fines-page-intro .fines-back-btn{
    right:0 !important;
  }
  body.fines-page .fines-add-panel .section-head{
    padding-bottom:4px;
  }
  body.fines-page .fines-add-form{
    gap:13px;
  }
  body.fines-page .fines-add-form__fixed{
    min-height:44px;
    padding:10px 12px;
  }
  body.fines-page .fines-add-form .app-actions .btn{
    width:100%;
  }
}


/* PATCH 486 – Pokuty: roletka ve stylu aplikace */
body.fines-page .fines-add-form select[data-fine-type-select]{
  appearance:none;
  -webkit-appearance:none;
  min-height:48px;
  padding:11px 46px 11px 14px;
  border:1px solid var(--ui-border,#dbe2ea);
  border-radius:14px;
  background-color:var(--ui-white,#fff);
  color:var(--ui-ink,#111827);
  font:inherit;
  font-weight:600;
  line-height:1.3;
  cursor:pointer;
  box-shadow:none;
  transition:border-color .18s ease,box-shadow .18s ease,background-color .18s ease;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m7 10 5 5 5-5'/%3E%3C/svg%3E");
  background-repeat:no-repeat;
  background-position:right 14px center;
  background-size:18px 18px;
}
body.fines-page .fines-add-form select[data-fine-type-select]:hover{
  border-color:#c5ccd6;
  background-color:#fbfcfd;
}
body.fines-page .fines-add-form select[data-fine-type-select]:focus{
  outline:none;
  border-color:var(--ui-ink,#111827);
  box-shadow:0 0 0 3px rgba(17,24,39,.08);
  background-color:var(--ui-white,#fff);
}
body.fines-page .fines-add-form select[data-fine-type-select] option{
  color:#111827;
  background:#fff;
  font-weight:500;
}
@media (max-width:760px){
  body.fines-page .fines-add-form select[data-fine-type-select]{
    min-height:46px;
    padding:10px 44px 10px 12px;
    background-position:right 12px center;
  }
}


/* PATCH 487 – služby při domácích zápasech */
.duty-settings-card{padding:22px}.duty-settings-form{display:grid;gap:18px}.duty-master-toggle,.duty-task-setting{display:flex;align-items:flex-start;gap:12px}.duty-master-toggle{padding:16px;border:1px solid var(--app-border,#d9dde3);border-radius:14px;background:#fff}.duty-master-toggle span{display:grid;gap:3px}.duty-master-toggle small{color:var(--app-muted,#667085)}.duty-task-settings-list{display:grid;gap:0;border-top:1px solid var(--app-border,#e1e4e8)}.duty-task-setting{padding:12px 4px;border-bottom:1px solid var(--app-border,#e1e4e8)}.duty-task-setting:hover{background:#f5f6f7}.duty-team-tabs{overflow:auto}
.match-duty-panel{padding:18px}.match-duty-head{align-items:center}.match-duty-summary{width:100%;border:0;background:transparent;padding:12px 0 0;display:flex;align-items:center;justify-content:space-between;gap:16px;text-align:left;cursor:pointer}.match-duty-people{display:flex;gap:8px;flex-wrap:wrap}.match-duty-person{display:inline-flex;align-items:center;padding:7px 11px;border-radius:999px;background:#f0f2f4;font-weight:800}.match-duty-detail-link{font-weight:800;white-space:nowrap}.match-duty-modal__dialog{width:min(560px,calc(100vw - 32px));max-height:min(78vh,720px);overflow:auto;padding:22px}.match-duty-modal__players{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0 18px}.match-duty-modal__players strong{background:#eef0f2;border-radius:999px;padding:7px 10px}.match-duty-task-list{border-top:1px solid #e1e4e8}.match-duty-task{display:grid;grid-template-columns:30px 1fr;gap:8px;padding:11px 4px;border-bottom:1px solid #e1e4e8}.match-duty-edit-form{display:grid;gap:14px}.match-duty-edit-form label{display:grid;gap:6px;font-weight:800}.match-duty-select{width:100%}
@media(max-width:760px){.duty-settings-card{padding:16px}.match-duty-panel{padding:16px}.match-duty-head{display:flex;gap:10px}.match-duty-summary{align-items:flex-start;flex-direction:column}.match-duty-detail-link{align-self:flex-end}.match-duty-modal__dialog{width:calc(100vw - 28px);max-height:82vh;padding:18px}}

/* PATCH 493 – Služba: sjednocení karty a modalů s design systémem aplikace */
body:not(.auth-page):not(.intro-page) .match-duty-panel{
  padding:20px !important;
  border-radius:var(--app-panel-radius,18px) !important;
}
body:not(.auth-page):not(.intro-page) .match-duty-head{
  display:flex !important;
  align-items:flex-start !important;
  justify-content:space-between !important;
  gap:16px !important;
}
body:not(.auth-page):not(.intro-page) .match-duty-head > div{
  min-width:0 !important;
}
body:not(.auth-page):not(.intro-page) .match-duty-head h3{
  margin:0 0 4px !important;
  color:var(--ui-ink,#111827) !important;
  font-size:var(--ui-font-xl,20px) !important;
  line-height:var(--ui-line-tight,1.2) !important;
  font-weight:var(--ui-weight-extrabold,800) !important;
}
body:not(.auth-page):not(.intro-page) .match-duty-head .app-muted-copy{
  margin:0 !important;
}
body:not(.auth-page):not(.intro-page) .match-duty-summary{
  width:100% !important;
  margin-top:14px !important;
  padding:14px 0 0 !important;
  border:0 !important;
  border-top:1px solid var(--app-line,#e2e8f0) !important;
  border-radius:0 !important;
  background:transparent !important;
  color:var(--ui-ink,#111827) !important;
  box-shadow:none !important;
}
body:not(.auth-page):not(.intro-page) .match-duty-person,
body:not(.auth-page):not(.intro-page) .match-duty-modal__players strong{
  display:inline-flex !important;
  align-items:center !important;
  min-height:34px !important;
  padding:6px 11px !important;
  border:1px solid var(--app-line,#e2e8f0) !important;
  border-radius:var(--ui-radius-pill,999px) !important;
  background:var(--ui-surface-light,#f7f8fa) !important;
  color:var(--ui-ink,#111827) !important;
  font-weight:var(--ui-weight-bold,700) !important;
}
body:not(.auth-page):not(.intro-page) .match-duty-detail-link{
  color:var(--ui-ink,#111827) !important;
  font-weight:var(--ui-weight-bold,700) !important;
}

body:not(.auth-page):not(.intro-page) .match-duty-modal{
  position:fixed !important;
  inset:0 !important;
  z-index:2100 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:20px !important;
}
body:not(.auth-page):not(.intro-page) .match-duty-modal[hidden]{
  display:none !important;
}
body:not(.auth-page):not(.intro-page) .match-duty-modal__backdrop{
  position:absolute !important;
  inset:0 !important;
  background:rgba(15,23,42,.52) !important;
}
body:not(.auth-page):not(.intro-page) .match-duty-modal__dialog{
  position:relative !important;
  z-index:1 !important;
  width:min(620px,100%) !important;
  max-height:min(82vh,760px) !important;
  overflow:auto !important;
  padding:22px !important;
  border:0 !important;
  border-radius:22px !important;
  background:var(--ui-white,#fff) !important;
  box-shadow:0 24px 70px rgba(15,23,42,.28) !important;
}
body:not(.auth-page):not(.intro-page) .match-duty-modal__dialog > h3{
  margin:0 52px 6px 0 !important;
  color:var(--ui-ink,#111827) !important;
  font-size:var(--ui-font-xl,20px) !important;
  line-height:var(--ui-line-tight,1.2) !important;
  font-weight:var(--ui-weight-extrabold,800) !important;
}
body:not(.auth-page):not(.intro-page) .match-duty-modal__close{
  position:absolute !important;
  right:14px !important;
  top:12px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:44px !important;
  height:44px !important;
  padding:0 !important;
  border:0 !important;
  border-radius:999px !important;
  background:#f1f5f9 !important;
  color:#0f172a !important;
  font:inherit !important;
  font-size:24px !important;
  font-weight:800 !important;
  line-height:1 !important;
  cursor:pointer !important;
}
body:not(.auth-page):not(.intro-page) .match-duty-modal__close:hover,
body:not(.auth-page):not(.intro-page) .match-duty-modal__close:focus-visible{
  background:#e2e8f0 !important;
}
body:not(.auth-page):not(.intro-page) .match-duty-modal__players{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:8px !important;
  margin:14px 0 18px !important;
  padding-right:48px !important;
}
body:not(.auth-page):not(.intro-page) .match-duty-task-list{
  display:grid !important;
  gap:0 !important;
  border-top:1px solid var(--app-line,#e2e8f0) !important;
}
body:not(.auth-page):not(.intro-page) .match-duty-task{
  display:grid !important;
  grid-template-columns:30px minmax(0,1fr) !important;
  gap:8px !important;
  align-items:start !important;
  padding:12px 4px !important;
  border-bottom:1px solid var(--app-line,#e2e8f0) !important;
  color:var(--ui-ink,#111827) !important;
}
body:not(.auth-page):not(.intro-page) .match-duty-task:hover{
  background:var(--ui-surface-light,#f7f8fa) !important;
}
body:not(.auth-page):not(.intro-page) .match-duty-task > span{
  color:var(--ui-muted,#667085) !important;
  font-weight:700 !important;
}
body:not(.auth-page):not(.intro-page) .match-duty-edit-form{
  display:grid !important;
  gap:14px !important;
  margin-top:16px !important;
}
body:not(.auth-page):not(.intro-page) .match-duty-edit-form label{
  display:grid !important;
  gap:7px !important;
  color:var(--ui-ink,#111827) !important;
  font-weight:var(--ui-weight-bold,700) !important;
}
body:not(.auth-page):not(.intro-page) .match-duty-select{
  width:100% !important;
  min-height:46px !important;
  padding:0 42px 0 13px !important;
  border:1px solid var(--app-line,#d9dde3) !important;
  border-radius:var(--ui-radius-lg,14px) !important;
  background-color:var(--ui-white,#fff) !important;
  color:var(--ui-ink,#111827) !important;
  font:inherit !important;
}
body:not(.auth-page):not(.intro-page) .match-duty-select:focus{
  outline:none !important;
  border-color:#94a3b8 !important;
  box-shadow:0 0 0 3px rgba(148,163,184,.18) !important;
}

@media (max-width:640px){
  body:not(.auth-page):not(.intro-page) .match-duty-panel{
    padding:16px !important;
  }
  body:not(.auth-page):not(.intro-page) .match-duty-head{
    gap:10px !important;
  }
  body:not(.auth-page):not(.intro-page) .match-duty-head .btn{
    flex:0 0 auto !important;
  }
  body:not(.auth-page):not(.intro-page) .match-duty-summary{
    align-items:flex-start !important;
    flex-direction:column !important;
    gap:12px !important;
  }
  body:not(.auth-page):not(.intro-page) .match-duty-detail-link{
    align-self:flex-end !important;
  }
  body:not(.auth-page):not(.intro-page) .match-duty-modal{
    align-items:center !important;
    padding:14px !important;
  }
  body:not(.auth-page):not(.intro-page) .match-duty-modal__dialog{
    width:100% !important;
    max-height:84vh !important;
    padding:18px !important;
    border-radius:22px !important;
  }
  body:not(.auth-page):not(.intro-page) .match-duty-modal__players{
    padding-right:44px !important;
  }
}

/* PATCH 496 – Služby: jednotný vzhled nastavení + správa katalogu úkonů */
.duty-settings-page .duty-settings-card,
.duty-settings-page .duty-catalog-card{padding:24px;border:1px solid var(--app-border,#e1e4e8);border-radius:18px;background:#fff;box-shadow:0 8px 24px rgba(15,23,42,.05)}
.duty-settings-page .duty-settings-form{gap:18px}
.duty-settings-page .duty-settings-card .app-section-head{margin-bottom:16px}
.duty-settings-page .duty-settings-card .app-section-head h2,
.duty-settings-page .duty-catalog-head h2{margin:0 0 4px;font-size:22px;line-height:1.2}
.duty-settings-page .duty-master-toggle{align-items:center;padding:15px 16px;margin-bottom:16px;border:1px solid var(--app-border,#dfe3e8);border-radius:14px;background:var(--app-soft,#f7f8fa);cursor:pointer;transition:background .15s ease,border-color .15s ease}
.duty-settings-page .duty-master-toggle:hover{background:#f0f2f4;border-color:#cfd5dc}
.duty-settings-page .duty-master-toggle input,
.duty-settings-page .duty-task-setting input{width:20px;height:20px;flex:0 0 20px;margin:0;accent-color:#111827}
.duty-settings-page .duty-master-toggle strong{font-size:15px}
.duty-settings-page .duty-master-toggle small{font-size:13px;line-height:1.35}
.duty-settings-page .app-form-field{display:grid;gap:7px;margin:0 0 14px}
.duty-settings-page .app-form-field>span{font-weight:700;font-size:14px}
.duty-settings-page .app-input{width:100%;min-height:46px;padding:10px 13px;border:1px solid #d7dde5;border-radius:13px;background:#fff;font:inherit;box-sizing:border-box;outline:none;transition:border-color .15s ease,box-shadow .15s ease}
.duty-settings-page .app-input:focus{border-color:#8b95a5;box-shadow:0 0 0 3px rgba(17,24,39,.08)}
.duty-settings-page input[type=number].app-input{max-width:110px}
.duty-settings-page .duty-task-settings-list{overflow:hidden;border:1px solid var(--app-border,#e1e4e8);border-radius:14px;background:#fff}
.duty-settings-page .duty-task-setting{align-items:center;padding:12px 14px;border-bottom:1px solid var(--app-border,#e8ebef);cursor:pointer;transition:background .15s ease}
.duty-settings-page .duty-task-setting:last-child{border-bottom:0}
.duty-settings-page .duty-task-setting:hover{background:#f5f6f7}
.duty-settings-page .duty-task-setting span{font-weight:600;line-height:1.3}
.duty-settings-actions{display:flex;justify-content:flex-end;margin-top:0}
.duty-settings-actions .btn{min-width:170px}
.duty-catalog-card{margin-top:18px;margin-bottom:28px}
.duty-catalog-head{margin-bottom:16px}
.duty-task-add-form{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:12px;padding:14px;border:1px solid var(--app-border,#e1e4e8);border-radius:14px;background:var(--app-soft,#f7f8fa);margin-bottom:16px}
.duty-task-add-form .duty-task-add-field{margin:0}
.duty-task-add-form .btn{min-height:46px;white-space:nowrap}
.duty-catalog-list{border:1px solid var(--app-border,#e1e4e8);border-radius:14px;overflow:hidden;background:#fff}
.duty-catalog-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 14px;border-bottom:1px solid var(--app-border,#e8ebef);transition:background .15s ease}
.duty-catalog-row:last-child{border-bottom:0}
.duty-catalog-row:hover{background:#f6f7f8}
.duty-catalog-row>strong{font-size:14px;line-height:1.35}
.duty-catalog-row__actions{display:flex;align-items:center;gap:8px;flex:0 0 auto}
.duty-catalog-row__actions form{margin:0}
.duty-settings-page .btn--sm{min-height:36px;padding:7px 11px;border-radius:10px;font-size:13px}
.duty-settings-page .btn--danger{background:#dc3545;color:#fff;border:1px solid #dc3545}
.duty-settings-page .btn--danger:hover{filter:brightness(.95)}
.duty-task-edit-modal[hidden]{display:none!important}
.duty-task-edit-modal{position:fixed;inset:0;z-index:10050;display:flex;align-items:center;justify-content:center;padding:20px;background:rgba(15,23,42,.48)}
.duty-task-edit-dialog{position:relative;width:min(520px,calc(100vw - 40px));padding:24px;border-radius:20px;background:#fff;box-shadow:0 22px 60px rgba(15,23,42,.24)}
.duty-task-edit-dialog h2{margin:0 48px 18px 0;font-size:21px}
.duty-task-edit-dialog .app-modal-close{position:absolute;top:14px;right:14px;width:42px;height:42px;border:0;border-radius:50%;background:#f0f3f7;font-size:26px;line-height:1;cursor:pointer}
.duty-task-edit-form{display:grid;gap:14px}
.duty-task-edit-form .app-form-field{margin:0}
body.app-modal-open{overflow:hidden}
@media(max-width:760px){
 .duty-settings-page .duty-settings-card,.duty-settings-page .duty-catalog-card{padding:16px;border-radius:16px}
 .duty-settings-page .duty-settings-card .app-section-head h2,.duty-settings-page .duty-catalog-head h2{font-size:19px}
 .duty-task-add-form{grid-template-columns:1fr;padding:12px}
 .duty-task-add-form .btn{width:100%}
 .duty-catalog-row{align-items:flex-start;flex-direction:column}
 .duty-catalog-row__actions{width:100%;justify-content:flex-end}
 .duty-settings-actions .btn{width:100%}
 .duty-task-edit-modal{padding:14px}
 .duty-task-edit-dialog{width:calc(100vw - 28px);padding:20px}
}


/* PATCH 497: pořadí úkonů služby */
.duty-catalog-order{display:inline-flex;align-items:center;gap:6px}
.duty-catalog-order form{margin:0}
.duty-order-btn{width:36px;min-width:36px;padding-left:0;padding-right:0;font-size:18px;line-height:1}
@media (max-width:560px){
  .duty-catalog-row{align-items:flex-start}
  .duty-catalog-row__actions{flex-wrap:wrap;justify-content:flex-end}
  .duty-catalog-order{order:-1}
}

/* PATCH 498 – přehled služeb + přidělení až po uzavření docházky */
.duty-overview-shell{margin-top:18px}
.duty-overview-card{padding:24px;border:1px solid var(--app-border,#e1e4e8);border-radius:18px;background:#fff;box-shadow:0 8px 24px rgba(15,23,42,.05)}
.duty-overview-card .app-section-head{margin-bottom:16px}
.duty-overview-card .app-section-head h2{margin:0 0 4px;font-size:22px;line-height:1.2}
.duty-overview-list{overflow:hidden;border:1px solid var(--app-border,#e1e4e8);border-radius:14px;background:#fff}
.duty-overview-row{display:grid;grid-template-columns:minmax(180px,1fr) 86px 86px 86px 120px;align-items:center;gap:8px;width:100%;padding:12px 14px;border:0;border-bottom:1px solid var(--app-border,#e8ebef);background:#fff;color:inherit;text-align:left;font:inherit;box-sizing:border-box}
.duty-overview-row:last-child{border-bottom:0}
.duty-overview-row--head{background:var(--app-soft,#f7f8fa);font-size:12px;font-weight:800;color:#667085;text-transform:uppercase;letter-spacing:.03em}
.duty-overview-row--player{cursor:pointer;transition:background .15s ease}
.duty-overview-row--player:hover,.duty-overview-row--player:focus-visible{background:#f5f6f7;outline:none}
.duty-overview-row--player>span:not(.duty-overview-player):not(.duty-overview-last){display:flex;align-items:baseline;gap:4px}
.duty-overview-row--player b{font-size:16px}
.duty-overview-row--player small{display:none;color:#7b8492;font-size:11px;font-weight:700}
.duty-overview-player strong{font-size:14px}
.duty-overview-last{font-size:13px;color:#667085}
.duty-history-modal[hidden]{display:none!important}
.duty-history-modal{position:fixed;inset:0;z-index:10060;display:flex;align-items:center;justify-content:center;padding:20px;background:rgba(15,23,42,.48)}
.duty-history-dialog{position:relative;width:min(620px,calc(100vw - 40px));max-height:84vh;overflow:auto;padding:24px;border-radius:20px;background:#fff;box-shadow:0 22px 60px rgba(15,23,42,.24)}
.duty-history-dialog .app-modal-close{position:absolute;top:14px;right:14px;width:42px;height:42px;border:0;border-radius:50%;background:#f0f3f7;font-size:26px;line-height:1;cursor:pointer}
.duty-history-head{padding-right:48px}
.duty-history-head h2{margin:0 0 4px;font-size:21px}
.duty-history-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:18px 0}
.duty-history-summary span{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:70px;border-radius:14px;background:var(--app-soft,#f5f6f7)}
.duty-history-summary b{font-size:20px;line-height:1.1}
.duty-history-summary small{margin-top:4px;font-size:11px;font-weight:800;color:#667085}
.duty-history-list{overflow:hidden;border:1px solid var(--app-border,#e1e4e8);border-radius:14px}
.duty-history-row{display:grid;grid-template-columns:minmax(0,1fr) auto 20px;align-items:center;gap:10px;padding:12px 14px;border-bottom:1px solid var(--app-border,#e8ebef);color:inherit;text-decoration:none;transition:background .15s ease}
.duty-history-row:last-child{border-bottom:0}
.duty-history-row:hover{background:#f5f6f7}
.duty-history-row>span:first-child{display:flex;flex-direction:column;min-width:0}
.duty-history-row strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px}
.duty-history-row small{margin-top:2px;color:#667085;font-size:12px}
.duty-history-badge{padding:5px 8px;border-radius:999px;background:#eef1f4;font-size:11px;font-weight:800}
.duty-history-arrow{font-size:22px;color:#7b8492}
.duty-history-empty{padding:18px;border-radius:14px;background:var(--app-soft,#f5f6f7);color:#667085;text-align:center}
.match-duty-waiting{display:flex;flex-direction:column;gap:4px;padding:14px 16px;border-radius:14px;background:var(--app-soft,#f5f6f7)}
.match-duty-waiting strong{font-size:14px}
.match-duty-waiting span{font-size:13px;color:#667085}
@media(max-width:760px){
 .duty-overview-card{padding:16px;border-radius:16px}
 .duty-overview-card .app-section-head h2{font-size:19px}
 .duty-overview-row--head{display:none}
 .duty-overview-row{grid-template-columns:minmax(0,1fr) repeat(3,56px);gap:6px;padding:12px}
 .duty-overview-row--player .duty-overview-last{grid-column:1/-1;font-size:12px}
 .duty-overview-row--player>span:not(.duty-overview-player):not(.duty-overview-last){display:flex;flex-direction:column;align-items:center;gap:1px}
 .duty-overview-row--player small{display:block}
 .duty-history-modal{padding:14px}
 .duty-history-dialog{width:calc(100vw - 28px);padding:20px;border-radius:20px}
 .duty-history-summary{gap:8px}
 .duty-history-summary span{min-height:64px}
}


/* PATCH 499 – trenéři ve službách + čitelnost/mezery */
.duty-settings-page .app-muted-copy,
.duty-settings-page .app-section-head p,
.duty-settings-page .team-hero__main p,
.duty-settings-page .duty-master-toggle small{color:#667085!important}
.duty-overview-shell{margin-bottom:18px!important}
.duty-overview-shell + .app-shell{margin-top:0}
.duty-settings-page input[type=checkbox]:disabled{opacity:1;cursor:default}
.duty-settings-page .duty-master-toggle:has(input:disabled),
.duty-settings-page .duty-task-setting:has(input:disabled){cursor:default}
.duty-settings-page .duty-task-setting:has(input:disabled):hover,
.duty-settings-page .duty-master-toggle:has(input:disabled):hover{background:inherit;border-color:var(--app-border,#dfe3e8)}
@media(max-width:760px){.duty-overview-shell{margin-bottom:16px!important}}

/* PATCH 491 – desktopové odsazení karty Hromadná úhrada */
@media (min-width:761px){
  body.fines-page .fines-bulk-payment-panel{
    padding:16px 20px!important;
  }
}

/* PATCH 492 – stejné desktopové odsazení Přidat pokutu a Historie pokut */
@media (min-width:761px){
  body.fines-page .fines-add-panel,
  body.fines-page .fines-history-panel{
    padding:16px 20px!important;
  }
}

/* PATCH 496 – TOP 3 bez změny původního vzhledu karet statistik */
.team-statistics-summary-grid .team-player-leader-card__list{
  display:flex;
  flex-direction:column;
  gap:0;
}
.team-statistics-summary-grid .team-player-leader-card__list .team-player-leader-card__body{
  grid-template-columns:52px minmax(0,1fr) 64px;
  gap:14px;
  min-height:58px;
  padding:12px 0;
  border-top:1px solid var(--border);
}
.team-statistics-summary-grid .team-player-leader-card__list .team-player-leader-card__body:first-child{
  padding-top:0;
  border-top:0;
}
.team-statistics-summary-grid .team-player-leader-card__list .team-player-leader-card__body:last-child{
  padding-bottom:0;
}
.team-statistics-summary-grid .team-player-leader-card__empty{margin:0;}
@media (max-width:620px){
  .team-statistics-summary-grid .team-player-leader-card__list .team-player-leader-card__body{
    grid-template-columns:48px minmax(0,1fr) 60px;
    gap:11px;
  }
}

/* PATCH 497 - návrat na přehled týmů přímo z hlavičky týmu */
.team-hero--separate .team-hero__heading{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:var(--ui-space-xl);
  width:100%;
}

.team-hero--separate .team-hero__heading > div{
  min-width:0;
}

.team-hero--separate .team-hero__heading .team-back-button{
  flex:0 0 auto;
  margin-left:auto;
}

@media (max-width:760px){
  .team-hero--separate .team-hero__heading{
    gap:var(--ui-space-control);
  }

  .team-hero--separate .team-hero__heading .team-back-button{
    white-space:nowrap;
  }
}

/* PATCH 499 – klubové statistiky na Přehledu */
.dashboard-statistics-card{
  padding:20px;
}
.dashboard-statistics-card__toolbar{
  display:flex;
  justify-content:flex-end;
  margin-bottom:16px;
}
.dashboard-statistics-card__team-select{
  width:min(320px,100%);
  margin:0;
}
.dashboard-statistics-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
}
.dashboard-statistics-leader-card{
  min-width:0;
  margin:0;
}
.dashboard-statistics-leader-card .team-player-leader-card__list{
  display:flex;
  flex-direction:column;
  gap:0;
}
.dashboard-statistics-leader-card .team-player-leader-card__list .team-player-leader-card__body{
  grid-template-columns:52px minmax(0,1fr) 64px;
  gap:14px;
  min-height:58px;
  padding:12px 0;
  border-top:1px solid var(--border);
}
.dashboard-statistics-leader-card .team-player-leader-card__list .team-player-leader-card__body:first-child{
  padding-top:0;
  border-top:0;
}
.dashboard-statistics-leader-card .team-player-leader-card__list .team-player-leader-card__body:last-child{
  padding-bottom:0;
}
.dashboard-statistics-more{
  align-self:flex-start;
  margin-top:2px;
}
.dashboard-statistics-ranking-list{
  display:flex;
  flex-direction:column;
  gap:8px;
}
.dashboard-statistics-ranking-row{
  display:grid;
  grid-template-columns:32px 42px minmax(0,1fr) auto;
  gap:10px;
  align-items:center;
  padding:9px 10px;
  border:1px solid var(--border);
  border-radius:14px;
  background:var(--ui-white);
}
.dashboard-statistics-ranking-row__position{
  color:var(--ui-muted);
  text-align:center;
}
.dashboard-statistics-ranking-row__avatar{
  width:42px;
  height:42px;
  object-fit:cover;
}
.dashboard-statistics-ranking-row__name{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.dashboard-statistics-ranking-row__metric{
  color:var(--ui-muted);
  font-weight:var(--ui-weight-bold);
  white-space:nowrap;
}
@media (max-width:620px){
  .dashboard-statistics-card{padding:16px;}
  .dashboard-statistics-card__toolbar{justify-content:stretch;}
  .dashboard-statistics-card__team-select{width:100%;}
  .dashboard-statistics-grid{grid-template-columns:1fr;}
  .dashboard-statistics-leader-card .team-player-leader-card__list .team-player-leader-card__body{
    grid-template-columns:48px minmax(0,1fr) 60px;
    gap:11px;
  }
  .dashboard-statistics-ranking-row{
    grid-template-columns:28px 38px minmax(0,1fr) auto;
    gap:8px;
    padding:8px;
  }
  .dashboard-statistics-ranking-row__avatar{width:38px;height:38px;}
  .dashboard-statistics-ranking-row__metric{font-size:.78rem;}
}

/* PATCH 500 – sjednocení vzhledu Statistik na Přehledu se zbytkem aplikace */
.dashboard-section--statistics .dashboard-statistics-card{
  display:grid;
  gap:18px;
  padding:18px 20px;
  border-radius:16px;
}

.dashboard-section--statistics .dashboard-statistics-card__toolbar{
  display:flex;
  justify-content:flex-end;
  margin:0;
  padding:0;
}

.dashboard-section--statistics .dashboard-statistics-card__team-select{
  display:grid;
  width:min(320px,100%);
  gap:7px;
  margin:0;
  color:#111827;
  font-size:.84rem;
  font-weight:800;
  line-height:1.25;
}

.dashboard-section--statistics .dashboard-statistics-card__team-select select{
  width:100%;
  min-width:0;
  min-height:46px;
  margin:0;
  padding:10px 42px 10px 13px;
  border:1px solid #d7dce2;
  border-radius:12px;
  background-color:#fff;
  color:#111827;
  font:inherit;
  font-size:.9rem;
  font-weight:700;
  line-height:1.25;
  box-sizing:border-box;
  outline:none;
}

.dashboard-section--statistics .dashboard-statistics-card__team-select select:focus{
  border-color:#9ca3af;
  outline:3px solid rgba(17,24,39,.08);
  outline-offset:0;
}

.dashboard-section--statistics .dashboard-statistics-grid{
  gap:14px;
}

.dashboard-section--statistics .dashboard-statistics-leader-card{
  display:flex;
  min-width:0;
  margin:0;
  padding:18px 20px;
  gap:16px;
  border-radius:14px;
  box-sizing:border-box;
}

.dashboard-section--statistics .dashboard-statistics-leader-card .team-player-leader-card__label{
  margin:0;
  padding:0 0 12px;
  border-bottom:1px solid var(--border);
  color:var(--ui-ink);
  font-size:.94rem;
  font-weight:var(--ui-weight-extrabold);
  line-height:1.3;
}

.dashboard-section--statistics .dashboard-statistics-leader-card .team-player-leader-card__list{
  display:flex;
  flex-direction:column;
  gap:0;
}

.dashboard-section--statistics .dashboard-statistics-leader-card .team-player-leader-card__body{
  grid-template-columns:52px minmax(0,1fr) 64px;
  gap:14px;
  min-height:58px;
  padding:12px 0;
  border-top:1px solid var(--border);
}

.dashboard-section--statistics .dashboard-statistics-leader-card .team-player-leader-card__body:first-child{
  padding-top:0;
  border-top:0;
}

.dashboard-section--statistics .dashboard-statistics-leader-card .team-player-leader-card__body:last-child{
  padding-bottom:0;
}

.dashboard-section--statistics .dashboard-statistics-leader-card .team-player-leader-card__metric span{
  color:var(--muted);
}

.dashboard-section--statistics .dashboard-statistics-more{
  min-height:38px;
  margin:0;
  padding:8px 13px;
  align-self:flex-start;
  border-radius:10px;
  font-size:.8rem;
}

@media (max-width:620px){
  .dashboard-section--statistics .dashboard-statistics-card{
    gap:16px;
    padding:16px;
  }

  .dashboard-section--statistics .dashboard-statistics-card__toolbar{
    justify-content:stretch;
  }

  .dashboard-section--statistics .dashboard-statistics-card__team-select{
    width:100%;
  }

  .dashboard-section--statistics .dashboard-statistics-leader-card{
    padding:16px;
  }

  .dashboard-section--statistics .dashboard-statistics-leader-card .team-player-leader-card__body{
    grid-template-columns:48px minmax(0,1fr) 60px;
    gap:11px;
  }
}


/* PATCH 527 – doladění vzhledu Statistik na Přehledu pro PC i mobil */
.dashboard-section--statistics{
  margin-top:18px;
}
.dashboard-section--statistics .app-section-head{
  margin-bottom:14px;
}
.dashboard-section--statistics .dashboard-statistics-card{
  display:flex;
  flex-direction:column;
  gap:18px;
  padding:18px 20px;
  border-radius:16px;
  box-sizing:border-box;
}
.dashboard-section--statistics .dashboard-statistics-card__toolbar{
  display:flex;
  align-items:flex-end;
  justify-content:flex-end;
  gap:12px;
  margin:0;
  padding:0;
}
.dashboard-section--statistics .dashboard-statistics-card__team-select{
  display:flex;
  min-width:0;
  width:min(320px,100%);
  flex-direction:column;
  gap:6px;
  margin:0;
}
.dashboard-section--statistics .dashboard-statistics-card__team-select span{
  color:var(--ui-ink);
  font-size:.84rem;
  font-weight:var(--ui-weight-bold);
  line-height:1.25;
}
.dashboard-section--statistics .dashboard-statistics-card__team-select select{
  width:100%;
  min-width:0;
  min-height:46px;
  padding:10px 42px 10px 13px;
  border:1px solid var(--border);
  border-radius:12px;
  background-color:#fff;
  color:var(--ui-ink);
  font:inherit;
  font-size:.92rem;
  font-weight:var(--ui-weight-bold);
  line-height:1.25;
  box-sizing:border-box;
}
.dashboard-section--statistics .dashboard-statistics-view{
  min-width:0;
}
.dashboard-section--statistics .dashboard-statistics-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
  align-items:stretch;
}
.dashboard-section--statistics .dashboard-statistics-leader-card{
  display:flex;
  min-width:0;
  padding:18px 20px;
  gap:16px;
  border-radius:14px;
  box-sizing:border-box;
}
.dashboard-section--statistics .dashboard-statistics-leader-card .team-player-leader-card__label{
  margin:0;
  padding:0 0 12px;
  border-bottom:1px solid var(--border);
  color:var(--ui-ink);
  font-size:.94rem;
  font-weight:var(--ui-weight-extrabold);
  line-height:1.3;
}
.dashboard-section--statistics .dashboard-statistics-leader-card .team-player-leader-card__list{
  display:flex;
  flex-direction:column;
  gap:0;
}
.dashboard-section--statistics .dashboard-statistics-leader-card .team-player-leader-card__body{
  grid-template-columns:52px minmax(0,1fr) 64px;
  gap:14px;
  min-height:58px;
  padding:12px 0;
  border-top:1px solid var(--border);
}
.dashboard-section--statistics .dashboard-statistics-leader-card .team-player-leader-card__body:first-child{
  padding-top:0;
  border-top:0;
}
.dashboard-section--statistics .dashboard-statistics-leader-card .team-player-leader-card__body:last-child{
  padding-bottom:0;
}
.dashboard-section--statistics .dashboard-statistics-leader-card .team-player-leader-card__identity strong{
  font-size:.96rem;
  line-height:1.25;
}
.dashboard-section--statistics .dashboard-statistics-leader-card .team-player-leader-card__identity small{
  font-size:.74rem;
  line-height:1.25;
}
.dashboard-section--statistics .dashboard-statistics-leader-card .team-player-leader-card__metric{
  width:64px;
  min-width:64px;
  height:58px;
  min-height:58px;
  padding:6px;
  box-sizing:border-box;
  text-align:center;
}
.dashboard-section--statistics .dashboard-statistics-leader-card .team-player-leader-card__metric strong{
  font-size:1.38rem;
}
.dashboard-section--statistics .dashboard-statistics-leader-card .team-player-leader-card__metric span{
  margin-top:5px;
  color:var(--muted);
  font-size:.68rem;
  line-height:1;
}
.dashboard-section--statistics .dashboard-statistics-more{
  align-self:flex-start;
  min-height:38px;
  margin:2px 0 0;
  padding:8px 13px;
  border-radius:10px;
  font-size:.8rem;
}
@media (max-width:620px){
  .dashboard-section--statistics{
    margin-top:16px;
  }
  .dashboard-section--statistics .dashboard-statistics-card{
    gap:16px;
    padding:16px;
  }
  .dashboard-section--statistics .dashboard-statistics-card__toolbar{
    justify-content:stretch;
  }
  .dashboard-section--statistics .dashboard-statistics-card__team-select{
    width:100%;
  }
  .dashboard-section--statistics .dashboard-statistics-grid{
    grid-template-columns:1fr;
  }
  .dashboard-section--statistics .dashboard-statistics-leader-card{
    padding:16px;
  }
  .dashboard-section--statistics .dashboard-statistics-leader-card .team-player-leader-card__body{
    grid-template-columns:48px minmax(0,1fr) 60px;
    gap:11px;
  }
  .dashboard-section--statistics .dashboard-statistics-leader-card .team-player-leader-card__avatar{
    width:48px;
    height:48px;
  }
  .dashboard-section--statistics .dashboard-statistics-leader-card .team-player-leader-card__metric{
    width:60px;
    min-width:60px;
    height:56px;
    min-height:56px;
  }
}

/* PATCH 528 – Statistiky na Přehledu: skutečné přepsání globálních app-card pravidel */
.dashboard-page .dashboard-section--statistics > .app-card.dashboard-statistics-card{
  display:flex !important;
  flex-direction:column !important;
  gap:18px !important;
  padding:18px 20px !important;
  border-radius:var(--ui-radius-lg,16px) !important;
  box-sizing:border-box !important;
}
.dashboard-page .dashboard-section--statistics .dashboard-statistics-card__toolbar{
  display:flex !important;
  align-items:flex-end !important;
  justify-content:flex-end !important;
  gap:12px !important;
  margin:0 !important;
  padding:0 !important;
}
.dashboard-page .dashboard-section--statistics .dashboard-statistics-card__team-select{
  display:flex !important;
  width:min(320px,100%) !important;
  min-width:0 !important;
  flex-direction:column !important;
  gap:7px !important;
  margin:0 !important;
}
.dashboard-page .dashboard-section--statistics .dashboard-statistics-card__team-select > span{
  display:block !important;
  margin:0 !important;
  color:var(--ui-ink) !important;
  font-size:.84rem !important;
  font-weight:var(--ui-weight-bold) !important;
  line-height:1.25 !important;
}
.dashboard-page .dashboard-section--statistics .dashboard-statistics-card__team-select > select{
  display:block !important;
  width:100% !important;
  min-width:0 !important;
  min-height:46px !important;
  margin:0 !important;
  padding:10px 42px 10px 13px !important;
  border:1px solid var(--border) !important;
  border-radius:12px !important;
  background-color:var(--ui-white) !important;
  color:var(--ui-ink) !important;
  font-size:.92rem !important;
  font-weight:var(--ui-weight-bold) !important;
  line-height:1.25 !important;
  box-sizing:border-box !important;
}
.dashboard-page .dashboard-section--statistics .dashboard-statistics-grid{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:16px !important;
  align-items:stretch !important;
}
.dashboard-page .dashboard-section--statistics .dashboard-statistics-grid > .app-card.dashboard-statistics-leader-card{
  display:flex !important;
  min-width:0 !important;
  flex-direction:column !important;
  gap:14px !important;
  margin:0 !important;
  padding:18px 20px !important;
  border-radius:14px !important;
  box-sizing:border-box !important;
}
.dashboard-page .dashboard-section--statistics .dashboard-statistics-leader-card .team-player-leader-card__label{
  display:block !important;
  margin:0 !important;
  padding:0 0 12px !important;
  border-bottom:1px solid var(--border) !important;
}
.dashboard-page .dashboard-section--statistics .dashboard-statistics-leader-card .team-player-leader-card__list{
  display:flex !important;
  flex-direction:column !important;
  gap:0 !important;
  margin:0 !important;
}
.dashboard-page .dashboard-section--statistics .dashboard-statistics-leader-card .team-player-leader-card__body{
  display:grid !important;
  grid-template-columns:52px minmax(0,1fr) 64px !important;
  align-items:center !important;
  gap:14px !important;
  min-height:70px !important;
  padding:12px 0 !important;
  border-top:1px solid var(--border) !important;
  box-sizing:border-box !important;
}
.dashboard-page .dashboard-section--statistics .dashboard-statistics-leader-card .team-player-leader-card__body:first-child{
  padding-top:0 !important;
  border-top:0 !important;
}
.dashboard-page .dashboard-section--statistics .dashboard-statistics-leader-card .team-player-leader-card__body:last-child{
  padding-bottom:0 !important;
}
.dashboard-page .dashboard-section--statistics .dashboard-statistics-leader-card .team-player-leader-card__avatar{
  width:52px !important;
  height:52px !important;
}
.dashboard-page .dashboard-section--statistics .dashboard-statistics-leader-card .team-player-leader-card__identity{
  min-height:52px !important;
  justify-content:center !important;
}
.dashboard-page .dashboard-section--statistics .dashboard-statistics-leader-card .team-player-leader-card__metric{
  width:64px !important;
  min-width:64px !important;
  height:58px !important;
  min-height:58px !important;
  padding:6px !important;
  box-sizing:border-box !important;
}
.dashboard-page .dashboard-section--statistics .dashboard-statistics-more{
  align-self:flex-start !important;
  min-height:38px !important;
  margin:2px 0 0 !important;
  padding:8px 13px !important;
  border-radius:10px !important;
}
@media (max-width:760px){
  .dashboard-page .dashboard-section--statistics > .app-card.dashboard-statistics-card{
    gap:16px !important;
    padding:16px !important;
  }
  .dashboard-page .dashboard-section--statistics .dashboard-statistics-card__toolbar{
    justify-content:stretch !important;
  }
  .dashboard-page .dashboard-section--statistics .dashboard-statistics-card__team-select{
    width:100% !important;
  }
  .dashboard-page .dashboard-section--statistics .dashboard-statistics-grid{
    grid-template-columns:1fr !important;
    gap:14px !important;
  }
  .dashboard-page .dashboard-section--statistics .dashboard-statistics-grid > .app-card.dashboard-statistics-leader-card{
    gap:13px !important;
    padding:16px !important;
  }
  .dashboard-page .dashboard-section--statistics .dashboard-statistics-leader-card .team-player-leader-card__body{
    grid-template-columns:48px minmax(0,1fr) 60px !important;
    gap:11px !important;
    min-height:64px !important;
    padding:10px 0 !important;
  }
  .dashboard-page .dashboard-section--statistics .dashboard-statistics-leader-card .team-player-leader-card__avatar{
    width:48px !important;
    height:48px !important;
  }
  .dashboard-page .dashboard-section--statistics .dashboard-statistics-leader-card .team-player-leader-card__metric{
    width:60px !important;
    min-width:60px !important;
    height:56px !important;
    min-height:56px !important;
  }
}


/* PATCH 538 – fallback používání aplikace bez instalace */
.app-onboarding__diagnostic-actions{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:12px;
}
.app-onboarding__browser-note{
  margin-top:10px !important;
  color:var(--ui-muted);
  font-size:var(--app-font-size-small,12px);
  font-weight:var(--app-font-weight-normal,300) !important;
  line-height:1.4 !important;
}
@media (max-width:620px){
  .app-onboarding__diagnostic-actions{display:grid;grid-template-columns:1fr;}
  .app-onboarding__diagnostic-actions .btn{width:100%;}
}


/* PATCH 544 – jednotný návratový blok pod hlavičkou */
.app-context-back-shell{
  display:flex;
  align-items:center;
  margin-top:18px !important;
  margin-bottom:10px !important;
  padding:0 !important;
}
.app-context-back-button{
  display:inline-flex !important;
  align-items:center;
  justify-content:center;
  min-height:var(--ui-size-control) !important;
  padding:var(--ui-inset-8-12) !important;
  border-radius:11px !important;
  font-size:var(--ui-font-sm) !important;
  line-height:var(--ui-line-tight) !important;
  font-weight:var(--ui-weight-black-soft) !important;
  box-shadow:none !important;
  white-space:nowrap;
}
@media (max-width:760px){
  .app-context-back-shell{
    margin-top:10px !important;
    margin-bottom:10px !important;
    padding-left:var(--app-shell-side-gap, 14px) !important;
    padding-right:var(--app-shell-side-gap, 14px) !important;
  }
}

/* PATCH 547 – Rozpisy zápasů sjednocené se stylem aplikace */
.dashboard-calendar-actions{
  display:flex;
  justify-content:flex-start;
  margin-top:14px;
}
.schedule-page .schedule-section{
  padding-top:22px !important;
  padding-bottom:28px !important;
}
.schedule-page .schedule-head{
  align-items:flex-end;
  margin-bottom:13px !important;
}
.schedule-page .schedule-head h2{
  margin:0;
  color:var(--app-text);
  font-size:1.72rem;
  line-height:1.05;
  letter-spacing:-.04em;
}
.schedule-page .schedule-head .muted{
  margin-top:5px;
  color:#777d86;
  font-size:var(--ui-font-body);
  line-height:1.22;
}
.schedule-page .schedule-controls{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(220px,320px);
  align-items:end;
  gap:18px;
  margin:0 0 18px;
  padding:18px 20px !important;
  border-radius:var(--app-panel-radius,12px) !important;
}
.schedule-page .schedule-view-switch{
  justify-self:start;
  align-self:end;
  margin:0;
}
.schedule-page .schedule-view-switch .app-control-center{
  min-width:112px;
}
.schedule-page .schedule-filter-form{
  width:100%;
  margin:0;
}
.schedule-page .schedule-team-select{
  display:flex;
  width:100%;
  min-width:0;
  margin:0;
  flex-direction:column;
  gap:6px;
  color:var(--ui-ink);
}
.schedule-page .schedule-team-select > span{
  font-size:.84rem;
  font-weight:var(--ui-weight-bold);
  line-height:1.25;
}
.schedule-page .schedule-team-select select{
  width:100%;
  min-width:0;
  min-height:46px;
  margin:0;
  padding:10px 42px 10px 13px;
  border:1px solid var(--border);
  border-radius:12px;
  background-color:#fff;
  color:var(--ui-ink);
  font:inherit;
  font-size:.92rem;
  font-weight:var(--ui-weight-bold);
  line-height:1.25;
  box-sizing:border-box;
  outline:none;
}
.schedule-page .schedule-team-select select:focus{
  border-color:#9ca3af;
  outline:3px solid rgba(17,24,39,.08);
  outline-offset:0;
}
.schedule-team-groups{display:grid;gap:20px;}
.schedule-team-block{
  min-width:0;
  overflow:hidden;
  border:1px solid #303030;
  border-radius:var(--app-panel-radius,12px);
  background:#fff;
}
.schedule-team-title{
  margin:0;
  padding:8px 10px;
  background:#333;
  color:#fff;
  font-size:.92rem;
  font-weight:800;
  line-height:1.25;
}
.schedule-table-wrap{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;}
.schedule-table{width:100%;min-width:680px;border-collapse:collapse;font-size:.82rem;line-height:1.2;}
.schedule-table th,.schedule-table td{padding:6px 8px;border:1px solid #555;text-align:left;vertical-align:middle;}
.schedule-table th{background:#c7c7c7;color:#111;font-weight:800;}
.schedule-table td{background:#fff;color:#111;}
.schedule-table .schedule-venue--home{background:#dcefd0;}
.schedule-table .schedule-venue--away{background:#fff4ad;}
.schedule-table--days .schedule-day-group{background:#e1e1e1;font-weight:700;vertical-align:middle;}
.schedule-team-code{font-weight:800;text-align:center !important;white-space:nowrap;}
.schedule-team-code--men{background:#ffd59f !important;}
.schedule-team-code--youth{background:#36e0dc !important;}
.schedule-team-code--older-youth{background:#c7d6ef !important;}
.schedule-team-code--younger-youth{background:#c8b6dc !important;}
.schedule-team-code--prep{background:#89c878 !important;}
.schedule-team-code--mini{background:#92c5e8 !important;}
.schedule-team-code--school{background:#e5b2e5 !important;}
@media(max-width:760px){
  .schedule-page .schedule-section{
    padding-top:12px !important;
  }
  .schedule-page .schedule-head h2{
    font-size:1.38rem;
  }
  .schedule-page .schedule-controls{
    grid-template-columns:1fr;
    gap:14px;
    padding:14px !important;
  }
  .schedule-page .schedule-view-switch{
    display:grid;
    grid-template-columns:1fr 1fr;
    width:100%;
    justify-self:stretch;
    box-sizing:border-box;
  }
  .schedule-page .schedule-view-switch .app-control-center{
    width:100%;
    min-width:0;
  }
  .schedule-page .schedule-filter-form,
  .schedule-page .schedule-team-select{width:100%;}
  .schedule-team-title{font-size:.86rem;}
  .schedule-table{min-width:620px;font-size:.76rem;}
  .schedule-table th,.schedule-table td{padding:6px;}
}
@media print{
  .app-header,.app-context-back,.schedule-controls,.dashboard-calendar-actions,.app-bottom-nav{display:none !important;}
  body.schedule-page{background:#fff !important;}
  .schedule-section{max-width:none !important;width:100% !important;margin:0 !important;padding:0 !important;}
  .schedule-team-groups{gap:12px;}
  .schedule-team-block{break-inside:avoid;page-break-inside:avoid;border-radius:0;}
  .schedule-table{min-width:0;font-size:9pt;}
  .schedule-table th,.schedule-table td{padding:3px 4px;}
}


/* PATCH 548 – typ zápasu, legenda a výsledky v Rozpisech */
.schedule-page .schedule-match-legend{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px 16px;
  margin:0 0 14px;
  padding:0 2px;
  color:var(--ui-muted);
  font-size:.78rem;
  font-weight:var(--ui-weight-bold);
}
.schedule-page .schedule-match-legend > span{
  display:inline-flex;
  align-items:center;
  gap:7px;
}
.schedule-page .schedule-match-kind{
  display:block;
  width:8px;
  min-width:8px;
  height:22px;
  border-radius:4px;
}
.schedule-page .schedule-match-kind--competitive{background:#f2b90f;}
.schedule-page .schedule-match-kind--cup{background:#20242b;}
.schedule-page .schedule-match-kind--friendly{background:#e52acb;}
.schedule-page .schedule-kind-col{
  width:16px;
  min-width:16px;
  padding:0 !important;
}
.schedule-page .schedule-kind-cell{
  width:16px;
  min-width:16px;
  padding:0 4px !important;
  text-align:center !important;
}
.schedule-page .schedule-kind-cell .schedule-match-kind{
  width:7px;
  min-width:7px;
  height:24px;
  margin:0 auto;
  border-radius:3px;
}
.schedule-page .schedule-score{
  min-width:72px;
  font-weight:var(--ui-weight-extrabold);
  text-align:center !important;
  white-space:nowrap;
}
@media (max-width:620px){
  .schedule-page .schedule-match-legend{
    gap:7px 12px;
    margin-bottom:12px;
    font-size:.74rem;
  }
  .schedule-page .schedule-match-kind{height:18px;}
  .schedule-page .schedule-kind-cell .schedule-match-kind{height:22px;}
}
@media print{
  .schedule-match-legend{display:flex !important;margin:0 0 8px !important;font-size:8pt !important;}
  .schedule-match-kind{print-color-adjust:exact;-webkit-print-color-adjust:exact;}
}


/* PATCH 550 – Rozpis po dnech: čitelnost skupin a hover řádku */
.schedule-page .schedule-table--days .schedule-day-group{
  background:#fff;
  font-weight:700;
  vertical-align:middle;
}
.schedule-page .schedule-table--days .schedule-day-group--multi{
  background:#f0f1f3;
}
.schedule-page .schedule-table--days .schedule-date-group,
.schedule-page .schedule-table--days .schedule-time-cell{
  background:#fff;
}
.schedule-page .schedule-table--days tbody tr td{
  transition:box-shadow .14s ease, filter .14s ease;
}
.schedule-page .schedule-table--days tbody tr:hover td{
  box-shadow:inset 0 0 0 9999px rgba(15,23,42,.045);
}
.schedule-page .schedule-table--days tbody tr:hover td.schedule-kind-cell{
  box-shadow:inset 0 0 0 9999px rgba(15,23,42,.025);
}
@media (hover:none){
  .schedule-page .schedule-table--days tbody tr:hover td{box-shadow:none;}
}


/* PATCH 551 – Rozpis: Den+Datum šedě, legenda Doma/Venku, select ve stylu aplikace */
.schedule-page .schedule-table--days .schedule-day-group,
.schedule-page .schedule-table--days .schedule-day-group--multi,
.schedule-page .schedule-table--days .schedule-date-group{
  background:#f0f1f3 !important;
}
.schedule-page .schedule-table--days .schedule-time-cell{
  background:#fff !important;
}
.schedule-page .schedule-match-legend__separator{
  width:1px;
  height:20px;
  background:var(--border,#d7dce2);
  margin:0 2px;
}
.schedule-page .schedule-venue-legend{
  display:block;
  width:22px;
  height:16px;
  border:1px solid rgba(15,23,42,.12);
  border-radius:4px;
  box-sizing:border-box;
}
.schedule-page .schedule-venue-legend--home{background:#dcefd0;}
.schedule-page .schedule-venue-legend--away{background:#fff4ad;}
.schedule-page .schedule-team-select select{
  min-height:46px !important;
  padding:10px 42px 10px 13px !important;
  border:1px solid #d7dce2 !important;
  border-radius:12px !important;
  background-color:#fff !important;
  color:var(--ui-ink,#111827) !important;
  box-shadow:none !important;
  appearance:auto;
  -webkit-appearance:auto;
}
.schedule-page .schedule-team-select select:hover{
  border-color:#b8c0ca !important;
}
.schedule-page .schedule-team-select select:focus{
  border-color:#9ca3af !important;
  outline:3px solid rgba(17,24,39,.08) !important;
  outline-offset:0 !important;
}
@media (max-width:620px){
  .schedule-page .schedule-match-legend__separator{display:none;}
  .schedule-page .schedule-venue-legend{width:20px;height:15px;}
}
@media print{
  .schedule-page .schedule-venue-legend{
    print-color-adjust:exact;
    -webkit-print-color-adjust:exact;
  }
}


/* PATCH 552 – šedé Den+Datum pouze u dnů s více zápasy */
.schedule-page .schedule-table--days .schedule-day-group,
.schedule-page .schedule-table--days .schedule-date-group{
  background:#fff !important;
}
.schedule-page .schedule-table--days .schedule-day-group--multi,
.schedule-page .schedule-table--days .schedule-date-group--multi{
  background:#f0f1f3 !important;
}


/* PATCH 553 – tisk rozpisu přes systémový náhled prohlížeče */
.schedule-page .schedule-print-actions{
  display:flex;
  justify-content:flex-end;
  margin-top:16px;
}
.schedule-page .schedule-print-actions .btn{
  min-width:170px;
}
@media (max-width:620px){
  .schedule-page .schedule-print-actions{justify-content:stretch;}
  .schedule-page .schedule-print-actions .btn{width:100%;}
}
@media print{
  .schedule-print-actions{display:none !important;}
}


/* PATCH 554 – tisk rozpisu pouze jako tabulky bez zbytku stránky */
@page{
  margin:10mm;
}
@media print{
  body.schedule-page{
    background:#fff !important;
  }
  body.schedule-page .app-header,
  body.schedule-page .app-impersonation-bar,
  body.schedule-page .mobile-profile-hero,
  body.schedule-page .app-onboarding,
  body.schedule-page .app-notice,
  body.schedule-page .app-context-back,
  body.schedule-page .schedule-head,
  body.schedule-page .schedule-controls,
  body.schedule-page .schedule-print-actions,
  body.schedule-page .app-bottom-nav{
    display:none !important;
  }
  body.schedule-page main,
  body.schedule-page .schedule-section{
    margin:0 !important;
    padding:0 !important;
    max-width:none !important;
    width:100% !important;
    background:#fff !important;
  }
  body.schedule-page .schedule-section > *{
    display:none !important;
  }
  body.schedule-page .schedule-section > .schedule-printable-area{
    display:block !important;
    margin:0 !important;
    padding:0 !important;
  }
  body.schedule-page .schedule-printable-area .empty-card{
    border:0 !important;
    box-shadow:none !important;
    padding:0 !important;
  }
  body.schedule-page .schedule-printable-area .schedule-match-legend{
    display:flex !important;
    margin:0 0 10px !important;
    padding:0 !important;
    font-size:8.5pt !important;
  }
  body.schedule-page .schedule-printable-area .schedule-team-groups{
    gap:14px !important;
  }
  body.schedule-page .schedule-printable-area .schedule-team-block,
  body.schedule-page .schedule-printable-area .schedule-day-block{
    margin:0 0 14px !important;
    padding:0 !important;
    border:0 !important;
    border-radius:0 !important;
    box-shadow:none !important;
    background:transparent !important;
    break-inside:avoid;
    page-break-inside:avoid;
  }
  body.schedule-page .schedule-printable-area .schedule-team-title{
    margin:0 0 4px !important;
    padding:0 !important;
  }
  body.schedule-page .schedule-printable-area .schedule-table-wrap{
    overflow:visible !important;
  }
  body.schedule-page .schedule-printable-area .schedule-table{
    width:100% !important;
    min-width:0 !important;
    font-size:9.5pt !important;
  }
  body.schedule-page .schedule-printable-area .schedule-table th,
  body.schedule-page .schedule-printable-area .schedule-table td{
    padding:4px 5px !important;
  }
}

/* PATCH 555 – tisk rozpisu: skrýt skutečné návratové a mobilní navigační prvky */
@media print{
  body.schedule-page .app-context-back-shell,
  body.schedule-page .app-context-back-button,
  body.schedule-page .mobile-bottom-nav,
  body.schedule-page .mobile-profile-hero,
  body.schedule-page .app-impersonation-bar,
  body.schedule-page .app-header,
  body.schedule-page .schedule-head,
  body.schedule-page .schedule-controls,
  body.schedule-page .schedule-print-actions{
    display:none !important;
  }
}

/* PATCH 556 – tiskový whitelist: pouze legenda a tabulky bez ohledu na orientaci */
@media print{
  body.schedule-page > *:not(main){
    display:none !important;
  }
  body.schedule-page > main{
    display:block !important;
    margin:0 !important;
    padding:0 !important;
    width:100% !important;
    max-width:none !important;
    background:#fff !important;
  }
  body.schedule-page > main > *:not(.schedule-section){
    display:none !important;
  }
  body.schedule-page .schedule-section{
    display:block !important;
    margin:0 !important;
    padding:0 !important;
    width:100% !important;
    max-width:none !important;
  }
  body.schedule-page .schedule-section > *:not(.schedule-printable-area){
    display:none !important;
  }
  body.schedule-page .schedule-printable-area{
    display:block !important;
  }
}

/* PATCH 559 – Kalendář do mobilu */
.calendar-subscribe-section{display:grid;gap:16px;}
.calendar-subscribe-create,.calendar-subscribe-list-card,.calendar-subscribe-help{padding:18px 20px !important;}
.calendar-subscribe-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 16px;}
.calendar-subscribe-form .calendar-subscribe-types,.calendar-subscribe-form > .btn{grid-column:1 / -1;}
.calendar-subscribe-form .app-field-label{margin:0;}
.calendar-subscribe-form select,.calendar-subscribe-form input[type="text"]{width:100%;min-height:46px;box-sizing:border-box;border:1px solid #d7dce2;border-radius:12px;background:#fff;padding:10px 13px;font:inherit;color:var(--ui-ink);}
.calendar-subscribe-types{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 12px;margin:0;padding:14px;border:1px solid var(--border);border-radius:14px;background:#fbfcfe;}
.calendar-subscribe-types legend{padding:0 6px;font-weight:800;}
.calendar-subscribe-types label{display:flex;align-items:center;gap:12px;padding:12px 14px;min-height:68px;border:1px solid #d7dee8;border-radius:16px;background:#fff;box-shadow:0 1px 2px rgba(15,23,42,.03);cursor:pointer;transition:background .15s ease,border-color .15s ease,box-shadow .15s ease,transform .15s ease;}
.calendar-subscribe-types label:hover{border-color:#becbdd;box-shadow:0 6px 16px rgba(15,23,42,.08);transform:translateY(-1px);}
.calendar-subscribe-types label:focus-within{border-color:#94a3b8;box-shadow:0 0 0 3px rgba(15,23,42,.08),0 6px 16px rgba(15,23,42,.08);}
.calendar-subscribe-types label.is-checked,.calendar-subscribe-types label:has(input[type="checkbox"]:checked){background:#eef4ff;border-color:#bfd0ef;box-shadow:0 6px 18px rgba(59,89,152,.10);}
.calendar-subscribe-types input[type="checkbox"]{appearance:none;-webkit-appearance:none;width:22px;height:22px;min-width:22px;max-width:22px;margin:0;border:1.6px solid #b8c3d2;border-radius:8px;background:#fff;display:inline-grid;place-items:center;position:relative;cursor:pointer;transition:background .15s ease,border-color .15s ease,box-shadow .15s ease,transform .15s ease;}
.calendar-subscribe-types input[type="checkbox"]::after{content:"";width:10px;height:6px;border-left:2px solid #fff;border-bottom:2px solid #fff;transform:translateY(-1px) rotate(-45deg) scale(0);transform-origin:center;transition:transform .12s ease;}
.calendar-subscribe-types input[type="checkbox"]:hover{border-color:#8a99ad;}
.calendar-subscribe-types input[type="checkbox"]:checked{background:#111827;border-color:#111827;box-shadow:0 0 0 4px rgba(15,23,42,.10);}
.calendar-subscribe-types input[type="checkbox"]:checked::after{transform:translateY(-1px) rotate(-45deg) scale(1);}
.calendar-subscribe-types span{display:flex;flex-direction:column;gap:3px;min-width:0;}
.calendar-subscribe-types span strong{font-size:.95rem;line-height:1.25;color:#0f172a;}
.calendar-subscribe-types small{color:#64748b;line-height:1.3;}
.calendar-subscribe-list{display:grid;gap:10px;}
.calendar-subscribe-item{display:grid;gap:10px;padding:14px;border:1px solid var(--border);border-radius:14px;background:#fff;}
.calendar-subscribe-item__head strong{display:block;font-size:.96rem;}.calendar-subscribe-item__head span,.calendar-subscribe-item__meta{color:var(--muted);font-size:.78rem;}
.calendar-subscribe-url-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;}
.calendar-subscribe-url-row input{min-width:0;min-height:42px;border:1px solid var(--border);border-radius:10px;padding:8px 10px;background:#f8fafc;font-size:.78rem;}
.calendar-subscribe-item__actions{display:flex;flex-wrap:wrap;gap:8px;}.calendar-subscribe-item__actions form{margin:0;}
.calendar-subscribe-help-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;}.calendar-subscribe-help-grid > div{padding:14px;border:1px solid var(--border);border-radius:14px;background:#fff;}.calendar-subscribe-help-grid ol{margin:8px 0 0;padding-left:20px;color:var(--ui-ink);}.calendar-subscribe-help-grid li+li{margin-top:5px;}
@media(max-width:760px){.calendar-subscribe-create,.calendar-subscribe-list-card,.calendar-subscribe-help{padding:16px !important;}.calendar-subscribe-form{grid-template-columns:1fr;}.calendar-subscribe-form .calendar-subscribe-types,.calendar-subscribe-form > .btn{grid-column:auto;}.calendar-subscribe-types{grid-template-columns:1fr;}.calendar-subscribe-help-grid{grid-template-columns:1fr;}.calendar-subscribe-url-row{grid-template-columns:1fr;}.calendar-subscribe-url-row .btn{width:100%;}.dashboard-calendar-actions{flex-wrap:wrap;}}

/* PATCH 564 – Kalendář do mobilu: dynamický výběr týmu */
.calendar-subscribe-page [data-calendar-team-field][hidden]{display:none !important;}


/* PATCH 566 – sjednocení kalendáře na PC podle mobilní varianty + mezery akcí */
.dashboard-page .dashboard-calendar-panel--mobile-eos{
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  overflow:visible !important;
}

.dashboard-page .dashboard-calendar-eos-head{
  margin:0 0 14px !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:var(--ui-space-xl) !important;
}

.dashboard-page .dashboard-calendar-scope-switch{
  gap:3px !important;
  padding:3px !important;
  background:#f4f5f7 !important;
  border-radius:var(--ui-radius-pill) !important;
}
.dashboard-page .dashboard-calendar-scope-switch a{
  min-height:28px !important;
  padding:0 10px !important;
  border-radius:var(--ui-radius-pill) !important;
  color:var(--ui-muted-warm) !important;
  font-size:.72rem !important;
  line-height:var(--ui-line-tight) !important;
  font-weight:var(--ui-weight-heavy) !important;
  transition:var(--ui-transition-tab) !important;
}
.dashboard-page .dashboard-calendar-scope-switch a:hover,
.dashboard-page .dashboard-calendar-scope-switch a:focus-visible{
  background:#e7e9ec !important;
  color:#303740 !important;
}
.dashboard-page .dashboard-calendar-scope-switch a.is-active{
  background:var(--ui-text) !important;
  color:var(--ui-white) !important;
}

.dashboard-page .dashboard-calendar-eos-toolbar{
  align-items:center !important;
  justify-content:space-between !important;
  gap:var(--ui-space-xl) !important;
  margin:0 0 12px !important;
}
.dashboard-page .dashboard-calendar-eos-month{
  color:#111317 !important;
  font-size:1.12rem !important;
  line-height:1.06 !important;
  font-weight:var(--ui-weight-medium) !important;
  letter-spacing:-.006em !important;
}
.dashboard-page .dashboard-calendar-eos-navs{
  gap:var(--ui-space-sm) !important;
}
.dashboard-page .dashboard-calendar-eos-nav{
  width:var(--ui-size-md) !important;
  height:var(--ui-size-md) !important;
  min-width:var(--ui-size-md) !important;
  min-height:var(--ui-size-md) !important;
  padding:0 !important;
  border-radius:var(--ui-radius-pill) !important;
  color:#7f8790 !important;
  background:transparent !important;
  font-size:1.75rem !important;
  line-height:var(--ui-line-tight) !important;
  font-weight:var(--ui-weight-bold) !important;
  transition:var(--ui-transition-tab) !important;
}
.dashboard-page .dashboard-calendar-eos-nav:hover,
.dashboard-page .dashboard-calendar-eos-nav:focus-visible{
  color:#4f5862 !important;
  background:#e6e8eb !important;
}

.dashboard-page .dashboard-calendar-grid--eos{
  display:grid !important;
  grid-template-columns:repeat(7,minmax(0,1fr)) !important;
  gap:0 !important;
  border:0 !important;
  border-top:1px solid #e6e8eb !important;
  border-left:1px solid #e6e8eb !important;
  border-radius:0 !important;
  background:var(--ui-white) !important;
  overflow:visible !important;
}
.dashboard-page .dashboard-calendar-grid--eos .dashboard-calendar-weekday{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:38px !important;
  padding:12px 0 9px !important;
  border:0 !important;
  border-right:1px solid #e6e8eb !important;
  border-bottom:1px solid #e6e8eb !important;
  background:var(--ui-white) !important;
  color:#747c85 !important;
  font-size:var(--ui-font-control) !important;
  line-height:var(--ui-line-tight) !important;
  font-weight:var(--ui-weight-semibold) !important;
  text-transform:none !important;
  letter-spacing:0 !important;
}
.dashboard-page .dashboard-calendar-grid--eos > :nth-child(7n + 6),
.dashboard-page .dashboard-calendar-grid--eos > :nth-child(7n){
  background:#f6f7f8 !important;
}
.dashboard-page .dashboard-calendar-grid--eos > .dashboard-calendar-weekday:nth-child(6),
.dashboard-page .dashboard-calendar-grid--eos > .dashboard-calendar-weekday:nth-child(7){
  color:#939aa2 !important;
}
.dashboard-page .dashboard-calendar-grid--eos .dashboard-calendar-day{
  position:relative !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:stretch !important;
  min-height:76px !important;
  height:76px !important;
  padding:7px 2px 4px !important;
  border:0 !important;
  border-right:1px solid #e6e8eb !important;
  border-bottom:1px solid #e6e8eb !important;
  border-radius:0 !important;
  background:var(--ui-white) !important;
  box-shadow:none !important;
  overflow:visible !important;
}
.dashboard-page .dashboard-calendar-grid--eos .dashboard-calendar-day.is-outside-month{
  background:#fafafa !important;
}
.dashboard-page .dashboard-calendar-grid--eos .dashboard-calendar-day.is-outside-month .dashboard-calendar-daynum{
  color:#c9c9c9 !important;
}
.dashboard-page .dashboard-calendar-grid--eos .dashboard-calendar-day.is-today{
  background:var(--ui-white) !important;
  outline:1px solid #8a9097 !important;
  outline-offset:-2px !important;
}
.dashboard-page .dashboard-calendar-grid--eos .dashboard-calendar-daynum{
  margin:0 5px 5px 0 !important;
  color:#6f7780 !important;
  font-size:var(--ui-font-control) !important;
  line-height:var(--ui-line-tight) !important;
  font-weight:580 !important;
  text-align:right !important;
}
.dashboard-page .dashboard-calendar-grid--eos > :nth-child(7n + 6) .dashboard-calendar-daynum,
.dashboard-page .dashboard-calendar-grid--eos > :nth-child(7n) .dashboard-calendar-daynum{
  color:#969da5 !important;
}
.dashboard-page .dashboard-calendar-grid--eos .dashboard-calendar-items{
  display:flex !important;
  flex-direction:column !important;
  gap:2px !important;
  overflow:visible !important;
}
.dashboard-page .dashboard-calendar-grid--eos .dashboard-calendar-item{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  max-width:none !important;
  min-height:17px !important;
  height:17px !important;
  margin:0 !important;
  padding:0 4px !important;
  border:0 !important;
  border-radius:4px !important;
  box-shadow:none !important;
  text-decoration:none !important;
  overflow:hidden !important;
  transition:filter .15s ease,opacity .15s ease !important;
}
.dashboard-page .dashboard-calendar-grid--eos .dashboard-calendar-item:hover,
.dashboard-page .dashboard-calendar-grid--eos .dashboard-calendar-item:focus-visible{
  filter:brightness(.94) !important;
  opacity:.92 !important;
}
.dashboard-page .dashboard-calendar-grid--eos .dashboard-calendar-item__title{
  display:block !important;
  color:var(--ui-white) !important;
  font-size:.64rem !important;
  line-height:17px !important;
  font-weight:var(--ui-weight-strong) !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:clip !important;
}
.dashboard-page .dashboard-calendar-grid--eos .dashboard-calendar-item--training,
.dashboard-page .dashboard-calendar-grid--eos .dashboard-calendar-item--friendly,
.dashboard-page .dashboard-calendar-grid--eos .dashboard-calendar-item--event{
  background:#edb91f !important;
}
.dashboard-page .dashboard-calendar-grid--eos .dashboard-calendar-item--match{
  background:#e633cf !important;
}
.dashboard-page .dashboard-calendar-grid--eos .dashboard-calendar-item--tournament,
.dashboard-page .dashboard-calendar-grid--eos .dashboard-calendar-item--brigade,
.dashboard-page .dashboard-calendar-grid--eos .dashboard-calendar-item--maintenance,
.dashboard-page .dashboard-calendar-grid--eos .dashboard-calendar-item--mowing,
.dashboard-page .dashboard-calendar-grid--eos .dashboard-calendar-item--other{
  background:#3f3f3f !important;
}

.dashboard-calendar-actions{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  flex-wrap:wrap !important;
  gap:var(--ui-space-md,10px) !important;
  margin-top:14px !important;
}

@media(max-width:420px){
  .dashboard-page .dashboard-calendar-eos-nav{
    width:var(--ui-size-sm) !important;
    height:var(--ui-size-sm) !important;
    min-width:var(--ui-size-sm) !important;
    min-height:var(--ui-size-sm) !important;
    font-size:1.6rem !important;
  }
}


/* PATCH 567 – přehledný návod Kalendář do mobilu: Android + Apple */
.calendar-subscribe-page .calendar-subscribe-help-grid--two{
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
}
.calendar-subscribe-page .calendar-subscribe-help-card{
  display:flex;
  flex-direction:column;
  gap:14px;
  padding:18px !important;
  border:1px solid var(--ui-border,#d8dee6) !important;
  border-radius:16px !important;
  background:#fff !important;
  box-shadow:0 2px 8px rgba(15,23,42,.04);
}
.calendar-subscribe-page .calendar-subscribe-help-card__head{
  display:flex;
  align-items:center;
  gap:12px;
  padding-bottom:12px;
  border-bottom:1px solid var(--ui-border-soft,rgba(15,23,42,.08));
}
.calendar-subscribe-page .calendar-subscribe-help-card__icon{
  display:grid;
  place-items:center;
  width:40px;
  height:40px;
  flex:0 0 40px;
  border-radius:12px;
  background:var(--ui-surface-soft,#f3f5f8);
  font-size:1.3rem;
  font-weight:900;
  color:var(--ui-ink,#111827);
}
.calendar-subscribe-page .calendar-subscribe-help-card__head > div{
  display:flex;
  flex-direction:column;
  gap:2px;
  min-width:0;
}
.calendar-subscribe-page .calendar-subscribe-help-card__head strong{
  font-size:1rem;
  color:var(--ui-ink,#111827);
}
.calendar-subscribe-page .calendar-subscribe-help-card__head span:not(.calendar-subscribe-help-card__icon){
  color:var(--ui-muted,#64748b);
  font-size:.78rem;
}
.calendar-subscribe-page .calendar-subscribe-help-card ol{
  margin:0;
  padding-left:24px;
  color:var(--ui-ink,#111827);
}
.calendar-subscribe-page .calendar-subscribe-help-card li{
  padding-left:3px;
  line-height:1.45;
}
.calendar-subscribe-page .calendar-subscribe-help-card li + li{
  margin-top:9px;
}
.calendar-subscribe-page .calendar-subscribe-help-card__tip{
  margin:auto 0 0;
  padding:11px 12px;
  border-radius:12px;
  background:#f7f8fa;
  color:var(--ui-muted,#64748b);
  font-size:.78rem;
  line-height:1.4;
}
.calendar-subscribe-page .calendar-subscribe-sync-note{
  display:flex;
  flex-direction:column;
  gap:3px;
  margin-top:14px;
  padding:13px 14px;
  border:1px solid var(--ui-border,#d8dee6);
  border-radius:14px;
  background:#f7f8fa;
  color:var(--ui-muted,#64748b);
  font-size:.8rem;
  line-height:1.4;
}
.calendar-subscribe-page .calendar-subscribe-sync-note strong{
  color:var(--ui-ink,#111827);
}
@media(max-width:760px){
  .calendar-subscribe-page .calendar-subscribe-help-grid--two{grid-template-columns:1fr;gap:12px;}
  .calendar-subscribe-page .calendar-subscribe-help-card{padding:15px !important;gap:12px;}
  .calendar-subscribe-page .calendar-subscribe-help-card__icon{width:36px;height:36px;flex-basis:36px;border-radius:11px;font-size:1.15rem;}
}


/* PATCH 568 – admin přehled odběrů kalendáře */
.admin-calendar-subscription-list{display:grid;gap:10px;}
.admin-calendar-subscription-card{margin:0;}
.admin-calendar-subscription-card .admin-event-card__main{width:100%;}
.admin-calendar-subscription-card .admin-event-card__titleline{align-items:center;gap:10px;}
.admin-calendar-subscription-card .admin-event-card__titleline h3{margin:0;}
.admin-calendar-subscription-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px 12px;margin-top:10px;}
.admin-calendar-subscription-meta span{display:flex;flex-direction:column;gap:2px;padding:9px 11px;border:1px solid var(--ui-border,#d8dee6);border-radius:12px;background:var(--ui-surface-soft,#f8fafc);font-size:.82rem;line-height:1.35;}
.admin-calendar-subscription-meta span strong{font-size:.72rem;text-transform:uppercase;letter-spacing:.035em;color:var(--ui-muted,#64748b);}
@media(max-width:760px){
  .admin-calendar-subscription-meta{grid-template-columns:1fr;}
}

/* PATCH 570 – jednotný kalendář PC/mobil, čitelné +N a kompaktní akce */
.dashboard-page .dashboard-calendar-grid--eos .dashboard-calendar-more{
  appearance:none !important;
  -webkit-appearance:none !important;
  width:100% !important;
  justify-content:center !important;
  background:#f0f1f3 !important;
  border:0 !important;
  color:#5f6872 !important;
  cursor:pointer !important;
}
.dashboard-page .dashboard-calendar-grid--eos .dashboard-calendar-more .dashboard-calendar-item__title{
  color:#5f6872 !important;
  font-weight:var(--ui-weight-bold) !important;
  text-align:center !important;
}
.dashboard-page .dashboard-calendar-grid--eos .dashboard-calendar-more:hover,
.dashboard-page .dashboard-calendar-grid--eos .dashboard-calendar-more:focus-visible{
  background:#e5e8eb !important;
  color:#303740 !important;
  opacity:1 !important;
  filter:none !important;
}
.dashboard-page .dashboard-calendar-grid--eos .dashboard-calendar-more:hover .dashboard-calendar-item__title,
.dashboard-page .dashboard-calendar-grid--eos .dashboard-calendar-more:focus-visible .dashboard-calendar-item__title{
  color:#303740 !important;
}

/* stejné ovládání měsíce a mřížky bez rozdílu podle šířky displeje */
.dashboard-page .dashboard-calendar-eos-nav{
  width:36px !important;
  height:36px !important;
  min-width:36px !important;
  min-height:36px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:0 !important;
  border-radius:10px !important;
  font-size:1.7rem !important;
  line-height:1 !important;
  cursor:pointer !important;
}
.dashboard-page .dashboard-calendar-eos-nav:hover,
.dashboard-page .dashboard-calendar-eos-nav:focus-visible{
  background:#f0f1f3 !important;
  color:#111827 !important;
  opacity:1 !important;
  outline:none !important;
}
.dashboard-page .dashboard-calendar-eos-nav:focus-visible{
  box-shadow:0 0 0 3px rgba(15,23,42,.10) !important;
}
.dashboard-page .dashboard-calendar-grid--eos .dashboard-calendar-day{
  min-height:76px !important;
  height:76px !important;
}
.dashboard-page .dashboard-calendar-grid--eos .dashboard-calendar-item,
.dashboard-page .dashboard-calendar-grid--eos .dashboard-calendar-more{
  min-height:17px !important;
  height:17px !important;
  border-radius:4px !important;
}

.dashboard-calendar-actions{
  gap:8px !important;
}
.dashboard-calendar-actions .btn{
  white-space:nowrap !important;
}

@media(max-width:760px){
  .dashboard-calendar-actions{
    display:flex !important;
    flex-wrap:nowrap !important;
    width:100% !important;
    gap:8px !important;
  }
  .dashboard-calendar-actions .btn{
    flex:1 1 0 !important;
    width:auto !important;
    min-width:0 !important;
    padding:10px 7px !important;
    border-radius:14px !important;
    font-size:.70rem !important;
    line-height:1.15 !important;
    font-weight:var(--ui-weight-heavy) !important;
    gap:5px !important;
  }
}

@media(max-width:360px){
  .dashboard-calendar-actions .btn{
    padding-left:5px !important;
    padding-right:5px !important;
    font-size:.66rem !important;
  }
}

/* PATCH 575: Fanousek - filtr tymu ve stejnem stylu jako aplikace/rozpisy */
.fan-dashboard-page .schedule-filter-form{
  width:100%;
  margin:0 0 16px !important;
  padding:14px 16px;
  border:1px solid var(--app-line);
  border-radius:var(--app-panel-radius,12px);
  background:var(--ui-white);
  box-sizing:border-box;
}
.fan-dashboard-page .schedule-team-select{
  display:flex;
  width:100%;
  min-width:0;
  margin:0;
  flex-direction:column;
  gap:6px;
  color:var(--ui-ink);
}
.fan-dashboard-page .schedule-team-select > span{
  font-size:.84rem;
  font-weight:var(--ui-weight-bold);
  line-height:1.25;
}
.fan-dashboard-page .schedule-team-select select{
  width:100%;
  min-width:0;
  min-height:46px;
  margin:0;
  padding:10px 42px 10px 13px;
  border:1px solid var(--border);
  border-radius:12px;
  background-color:#fff;
  color:var(--ui-ink);
  font:inherit;
  font-size:.92rem;
  font-weight:var(--ui-weight-bold);
  line-height:1.25;
  box-sizing:border-box;
  outline:none;
}
.fan-dashboard-page .schedule-team-select select:hover{
  border-color:#b7bcc3;
}
.fan-dashboard-page .schedule-team-select select:focus{
  border-color:#9ca3af;
  outline:3px solid rgba(17,24,39,.08);
  outline-offset:0;
}
@media(max-width:760px){
  .fan-dashboard-page .schedule-filter-form{
    padding:12px 14px;
  }
}


/* PATCH 577 – Profil: jednotné styly volbových prvků (checkbox/radio)
   Obecná pravidla .profile-form nesmí přepisovat komponenty s volbami. */
.profile-page .profile-form .calendar-subscribe-types{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px 12px;
  margin:0;
  padding:14px;
  border:1px solid var(--border);
  border-radius:14px;
  background:#fbfcfe;
}
.profile-page .profile-form .calendar-subscribe-types legend{
  padding:0 6px;
  font-size:var(--app-font-size-base,14px);
  font-weight:var(--ui-weight-black-soft);
}
.profile-page .profile-form .calendar-subscribe-types label{
  display:flex !important;
  align-items:center !important;
  gap:12px !important;
  min-height:54px;
  margin:0 !important;
  padding:10px 12px;
  border:1px solid #d7dee8;
  border-radius:13px;
  background:#fff;
  box-shadow:none;
  cursor:pointer;
}
.profile-page .profile-form .calendar-subscribe-types label:hover{
  border-color:#becbdd;
  background:#fbfcfe;
}
.profile-page .profile-form .calendar-subscribe-types label:focus-within{
  border-color:#94a3b8;
  box-shadow:0 0 0 3px rgba(15,23,42,.08);
}
.profile-page .profile-form .calendar-subscribe-types label:has(input[type="checkbox"]:checked),
.profile-page .profile-form .calendar-subscribe-types label:has(input[type="radio"]:checked){
  background:#eef4ff;
  border-color:#bfd0ef;
}
.profile-page .profile-form .calendar-subscribe-types input[type="checkbox"],
.profile-page .profile-form .calendar-subscribe-types input[type="radio"]{
  appearance:none !important;
  -webkit-appearance:none !important;
  width:22px !important;
  height:22px !important;
  min-width:22px !important;
  min-height:22px !important;
  max-width:22px !important;
  padding:0 !important;
  margin:0 !important;
  box-sizing:border-box !important;
  border:1.6px solid #b8c3d2 !important;
  background:#fff !important;
  display:inline-grid !important;
  place-items:center !important;
  flex:0 0 22px !important;
  cursor:pointer;
  box-shadow:none !important;
}
.profile-page .profile-form .calendar-subscribe-types input[type="checkbox"]{
  border-radius:7px !important;
}
.profile-page .profile-form .calendar-subscribe-types input[type="radio"]{
  border-radius:50% !important;
}
.profile-page .profile-form .calendar-subscribe-types input[type="checkbox"]::after{
  content:"";
  width:10px;
  height:6px;
  border-left:2px solid #fff;
  border-bottom:2px solid #fff;
  transform:translateY(-1px) rotate(-45deg) scale(0);
  transform-origin:center;
}
.profile-page .profile-form .calendar-subscribe-types input[type="checkbox"]:checked{
  background:#111827 !important;
  border-color:#111827 !important;
}
.profile-page .profile-form .calendar-subscribe-types input[type="checkbox"]:checked::after{
  transform:translateY(-1px) rotate(-45deg) scale(1);
}
.profile-page .profile-form .calendar-subscribe-types input[type="radio"]:checked{
  border:6px solid #111827 !important;
}
.profile-page .profile-form .calendar-subscribe-types label > span{
  display:block !important;
  min-width:0;
  margin:0 !important;
  padding:0 !important;
  font-size:var(--app-font-size-base,14px) !important;
  line-height:var(--ui-line-control) !important;
  font-weight:var(--ui-weight-black-soft) !important;
}
@media(max-width:760px){
  .profile-page .profile-form .calendar-subscribe-types{
    grid-template-columns:1fr;
  }
}


/* ==========================================================================
   PATCH 578 – Profil: kompletní sjednocení rozměrů, mezer a formulářových prvků
   Platí společně pro fanouška, hráče, rodiče, trenéra i ostatní role.
   ========================================================================== */

.profile-page .app-shell.profile-card,
.profile-page .profile-card.profile-card--edit{
  padding:20px !important;
}

.profile-page .profile-card__top{
  grid-template-columns:60px minmax(0,1fr) !important;
  gap:14px !important;
  margin:0 0 22px !important;
  padding:0 !important;
  background:transparent !important;
}

.profile-page .profile-avatar{
  width:60px !important;
  height:60px !important;
}

.profile-page .profile-card__top h1{
  margin:0 0 4px !important;
}

.profile-page .profile-card__top .muted{
  margin:0 0 4px !important;
}

.profile-page .profile-photo-note{
  display:block !important;
  margin-top:5px !important;
}

.profile-page .profile-form{
  gap:24px !important;
}

.profile-page .profile-form__grid{
  gap:16px !important;
}

.profile-page .profile-form label.app-field-label{
  display:grid !important;
  gap:7px !important;
}

.profile-page .profile-form label.app-field-label > span{
  font-size:14px !important;
  line-height:1.25 !important;
  font-weight:800 !important;
}

.profile-page .profile-form input[type="text"],
.profile-page .profile-form input[type="email"],
.profile-page .profile-form input[type="tel"],
.profile-page .profile-form input[type="password"],
.profile-page .profile-form input[type="number"],
.profile-page .profile-form input[type="date"],
.profile-page .profile-form input[type="time"],
.profile-page .profile-form select,
.profile-page .profile-form textarea{
  width:100% !important;
  min-height:46px !important;
  padding:11px 13px !important;
  border:1px solid #d3dce8 !important;
  border-radius:12px !important;
  background:#fff !important;
  color:var(--app-text) !important;
  font:inherit !important;
  font-size:14px !important;
  line-height:1.35 !important;
  outline:none !important;
  box-sizing:border-box !important;
  box-shadow:none !important;
}

.profile-page .profile-form textarea{
  min-height:110px !important;
  resize:vertical;
}

.profile-page .profile-form input[type="text"]:focus,
.profile-page .profile-form input[type="email"]:focus,
.profile-page .profile-form input[type="tel"]:focus,
.profile-page .profile-form input[type="password"]:focus,
.profile-page .profile-form input[type="number"]:focus,
.profile-page .profile-form input[type="date"]:focus,
.profile-page .profile-form input[type="time"]:focus,
.profile-page .profile-form select:focus,
.profile-page .profile-form textarea:focus{
  border-color:#94a3b8 !important;
  box-shadow:0 0 0 3px rgba(15,23,42,.08) !important;
}

.profile-page .profile-form small,
.profile-page .profile-form .app-form-help{
  display:block !important;
  margin-top:1px !important;
  font-size:12px !important;
  line-height:1.45 !important;
  color:var(--ui-muted) !important;
}

.profile-page .profile-form__password{
  gap:16px !important;
  margin-top:0 !important;
  padding-top:20px !important;
  border-top:1px solid rgba(15,23,42,.10) !important;
}

.profile-page .profile-form__password h2{
  margin:0 !important;
  font-size:16px !important;
  line-height:1.25 !important;
  font-weight:800 !important;
}

.profile-page .profile-form__password > p.muted{
  margin:-8px 0 2px !important;
  font-size:12px !important;
  line-height:1.45 !important;
}

.profile-page .profile-form .calendar-subscribe-types{
  gap:10px !important;
  padding:12px !important;
  border-radius:14px !important;
}

.profile-page .profile-form .calendar-subscribe-types legend{
  padding:0 6px !important;
  font-size:13px !important;
  font-weight:800 !important;
}

.profile-page .profile-form .calendar-subscribe-types label{
  min-height:50px !important;
  padding:10px 12px !important;
  gap:10px !important;
  border-radius:12px !important;
}

.profile-page .profile-form .calendar-subscribe-types label > span{
  font-size:14px !important;
  line-height:1.3 !important;
}

.profile-page .profile-form .app-notice{
  margin:0 !important;
  padding:11px 13px !important;
  border-radius:12px !important;
  font-size:12px !important;
  line-height:1.45 !important;
}

.profile-page .profile-form__actions{
  margin-top:0 !important;
  padding-top:4px !important;
  gap:12px !important;
}

.profile-page .profile-form__actions .btn{
  min-height:46px !important;
  padding:11px 16px !important;
  border-radius:12px !important;
  font-size:14px !important;
  line-height:1.2 !important;
}

@media (max-width:760px){
  .profile-page .app-shell.profile-card,
  .profile-page .profile-card.profile-card--edit{
    width:calc(100% - 20px) !important;
    padding:16px !important;
  }

  .profile-page .profile-card__top{
    grid-template-columns:54px minmax(0,1fr) !important;
    gap:12px !important;
    margin-bottom:20px !important;
  }

  .profile-page .profile-avatar{
    width:54px !important;
    height:54px !important;
  }

  .profile-page .profile-form{
    gap:22px !important;
  }

  .profile-page .profile-form__grid,
  .profile-page .profile-form__password{
    gap:15px !important;
  }

  .profile-page .profile-form input[type="text"],
  .profile-page .profile-form input[type="email"],
  .profile-page .profile-form input[type="tel"],
  .profile-page .profile-form input[type="password"],
  .profile-page .profile-form input[type="number"],
  .profile-page .profile-form input[type="date"],
  .profile-page .profile-form input[type="time"],
  .profile-page .profile-form select{
    min-height:46px !important;
    padding:11px 12px !important;
  }

  .profile-page .profile-form .calendar-subscribe-types{
    grid-template-columns:1fr !important;
  }
}


/* PATCH 580 – Fanoušek: nejbližší zápasy, výsledky a statistiky */
.fan-dashboard-page .fan-match-overview-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}
.fan-dashboard-page .fan-match-overview-card{
  display:grid;
  gap:10px;
  min-width:0;
  padding:14px;
}
.fan-dashboard-page .fan-match-overview-card__top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
}
.fan-dashboard-page .fan-match-overview-card__venue,
.fan-dashboard-page .fan-match-overview-card__date{
  font-size:12px;
  line-height:1.2;
  font-weight:800;
  color:var(--ui-muted);
}
.fan-dashboard-page .fan-match-overview-card__venue.is-home{
  color:#166534;
}
.fan-dashboard-page .fan-match-overview-card__venue.is-away{
  color:#475569;
}
.fan-dashboard-page .fan-match-overview-card__title{
  display:block;
  font-size:15px;
  line-height:1.35;
}
.fan-dashboard-page .fan-match-overview-card__meta{
  display:flex;
  flex-wrap:wrap;
  gap:5px 10px;
  font-size:12px;
  line-height:1.4;
  color:var(--ui-muted);
}
.fan-dashboard-page .fan-match-overview-card__score{
  font-size:24px;
  line-height:1;
  letter-spacing:-.02em;
}
.fan-dashboard-page .fan-statistics-section{
  scroll-margin-top:90px;
}
@media(max-width:900px){
  .fan-dashboard-page .fan-match-overview-grid{
    grid-template-columns:1fr;
  }
}


/* PATCH 581 – Fanoušek: zápasové karty podle aplikace + přesné zarovnání statistik */
.fan-dashboard-page .fan-match-pro-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
}
.fan-dashboard-page .fan-match-pro-item{
  display:flex;
  flex-direction:column;
  gap:10px;
  min-width:0;
  margin:0;
  padding:14px;
  border-radius:var(--app-panel-radius,14px);
}
.fan-dashboard-page .fan-match-pro-item__head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  min-height:24px;
}
.fan-dashboard-page .fan-match-pro-item__venue,
.fan-dashboard-page .fan-match-pro-item__date{
  font-size:var(--app-font-size-small,12px);
  line-height:1.2;
  font-weight:var(--ui-weight-black-soft);
  color:var(--ui-muted);
}
.fan-dashboard-page .fan-match-pro-item__venue.is-home{color:#15803d;}
.fan-dashboard-page .fan-match-pro-item__venue.is-away{color:#475569;}

.fan-dashboard-page .fan-match-pro-card{
  width:100%;
  border-radius:12px;
  background:#fff;
}
.fan-dashboard-page .fan-match-pro-card .app-match-pro-main{
  grid-template-columns:minmax(0,1fr) 82px minmax(0,1fr);
  gap:8px;
  padding:12px 8px;
}
.fan-dashboard-page .fan-match-pro-card .app-match-pro-team{
  gap:6px;
}
.fan-dashboard-page .fan-match-pro-card .app-match-pro-team img,
.fan-dashboard-page .fan-match-pro-card .app-match-pro-logo-placeholder{
  width:46px;
  height:46px;
}
.fan-dashboard-page .fan-match-pro-card .app-match-pro-team strong{
  max-width:100%;
  font-size:12px;
  line-height:1.25;
  white-space:normal;
  overflow:visible;
  text-overflow:clip;
}
.fan-dashboard-page .fan-match-pro-card .app-match-pro-center{
  min-width:0;
  gap:4px;
}
.fan-dashboard-page .fan-match-pro-card .app-match-pro-score{
  font-size:30px;
  letter-spacing:0;
}
.fan-dashboard-page .fan-match-pro-card .fan-match-pro-time{
  font-size:24px;
}
.fan-dashboard-page .fan-match-pro-card .app-match-pro-meta,
.fan-dashboard-page .fan-match-pro-location{
  font-size:11px;
  line-height:1.25;
  color:var(--ui-muted);
  text-align:center;
  white-space:normal;
}
.fan-dashboard-page .fan-match-pro-card .app-match-pro-badge{
  margin-top:2px;
  padding:5px 8px;
  font-size:10px;
}
.fan-dashboard-page .fan-match-tv-link{
  width:100%;
  margin-top:auto;
  box-sizing:border-box;
}

/* Statistiky: avatar | jméno | hodnota – bez posunů mezi řádky. */
.fan-dashboard-page .dashboard-statistics-leader-card .team-player-leader-card__body{
  display:grid !important;
  grid-template-columns:42px minmax(0,1fr) 58px !important;
  align-items:center !important;
  column-gap:10px !important;
  min-height:58px !important;
  padding:10px 0 !important;
}
.fan-dashboard-page .dashboard-statistics-leader-card .team-player-leader-card__avatar{
  width:42px !important;
  height:42px !important;
  margin:0 !important;
  align-self:center !important;
}
.fan-dashboard-page .dashboard-statistics-leader-card .team-player-leader-card__identity{
  display:flex !important;
  min-width:0 !important;
  height:42px !important;
  justify-content:center !important;
  align-items:flex-start !important;
  gap:0 !important;
}
.fan-dashboard-page .dashboard-statistics-leader-card .team-player-leader-card__identity strong{
  width:100% !important;
  margin:0 !important;
  font-size:13px !important;
  line-height:1.25 !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}
.fan-dashboard-page .dashboard-statistics-leader-card .team-player-leader-card__identity small{
  display:none !important;
}
.fan-dashboard-page .dashboard-statistics-leader-card .team-player-leader-card__metric{
  width:58px !important;
  min-width:58px !important;
  height:46px !important;
  min-height:46px !important;
  margin:0 !important;
  padding:5px 6px !important;
  box-sizing:border-box !important;
  align-self:center !important;
  justify-self:end !important;
}
.fan-dashboard-page .dashboard-statistics-leader-card .team-player-leader-card__metric strong{
  margin:0 !important;
  font-size:18px !important;
  line-height:1 !important;
}
.fan-dashboard-page .dashboard-statistics-leader-card .team-player-leader-card__metric span{
  margin-top:3px !important;
  font-size:9px !important;
  line-height:1 !important;
}

@media(max-width:900px){
  .fan-dashboard-page .fan-match-pro-grid{
    grid-template-columns:1fr;
  }
}
@media(max-width:520px){
  .fan-dashboard-page .fan-match-pro-item{
    padding:12px;
  }
  .fan-dashboard-page .fan-match-pro-card .app-match-pro-main{
    grid-template-columns:minmax(0,1fr) 76px minmax(0,1fr);
    gap:6px;
  }
  .fan-dashboard-page .fan-match-pro-card .app-match-pro-team img,
  .fan-dashboard-page .fan-match-pro-card .app-match-pro-logo-placeholder{
    width:42px;
    height:42px;
  }
  .fan-dashboard-page .fan-match-pro-card .app-match-pro-score{
    font-size:28px;
  }
}

/* PATCH 582 – Statistiky: čitelný popisek gólů / asistencí */
.fan-dashboard-page .dashboard-statistics-leader-card .team-player-leader-card__metric span{
  color:#475569 !important;
  opacity:1 !important;
  text-shadow:none !important;
  font-weight:700 !important;
}

/* PATCH 583 – Fanoušek: načítání dalších zápasů a samostatný veřejný detail */
.fan-dashboard-page .fan-match-pro-item--link{
  color:inherit;
  text-decoration:none;
  cursor:pointer;
  transition:border-color .15s ease, box-shadow .15s ease, transform .15s ease;
}
.fan-dashboard-page .fan-match-pro-item--link:hover{
  border-color:#c4ceda;
  box-shadow:0 8px 20px rgba(15,23,42,.08);
  transform:translateY(-1px);
}
.fan-dashboard-page .fan-match-pro-item--link:focus-visible{
  outline:3px solid rgba(15,23,42,.14);
  outline-offset:2px;
}
.fan-dashboard-page .fan-match-load-more{
  display:flex;
  width:max-content;
  min-width:190px;
  margin:14px auto 0;
  justify-content:center;
}
.fan-dashboard-page [data-fan-match-item][hidden]{display:none !important;}

.fan-match-page .fan-match-detail,
.fan-match-page .fan-match-video-section,
.fan-match-page .fan-match-goals-section{
  margin-bottom:18px;
}
.fan-match-page .fan-match-detail__score-card{
  margin-top:8px;
}
.fan-match-page .fan-match-detail__score-card .app-match-pro-main{
  min-height:160px;
}
.fan-match-page .fan-match-detail__score-card .app-match-pro-team img,
.fan-match-page .fan-match-detail__score-card .app-match-pro-logo-placeholder{
  width:66px;
  height:66px;
}
.fan-match-page .fan-match-detail__score-card .app-match-pro-score{
  font-size:52px;
}
.fan-match-page .fan-match-youtube-card{
  overflow:hidden;
  padding:0;
}
.fan-match-page .fan-match-youtube-card__frame{
  position:relative;
  width:100%;
  aspect-ratio:16/9;
  background:#000;
}
.fan-match-page .fan-match-youtube-card__frame iframe{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  border:0;
}
@media(max-width:640px){
  .fan-match-page .fan-match-detail__score-card .app-match-pro-main{
    grid-template-columns:minmax(0,1fr) 94px minmax(0,1fr);
    min-height:138px;
    gap:8px;
    padding:16px 8px;
  }
  .fan-match-page .fan-match-detail__score-card .app-match-pro-team img,
  .fan-match-page .fan-match-detail__score-card .app-match-pro-logo-placeholder{
    width:52px;
    height:52px;
  }
  .fan-match-page .fan-match-detail__score-card .app-match-pro-team strong{
    font-size:12px;
    white-space:normal;
  }
  .fan-match-page .fan-match-detail__score-card .app-match-pro-score{
    font-size:38px;
  }
}


/* PATCH 584 – Fanouškovský detail zápasu: stejné panely jako interní detail */
.fan-match-page .fan-match-detail,
.fan-match-page .fan-match-video-section,
.fan-match-page .fan-match-goals-section{
  margin-bottom:var(--app-shell-block-gap,10px) !important;
}

.fan-match-page .fan-match-result-panel,
.fan-match-page .fan-match-media-panel{
  padding:var(--app-panel-inner-gap,18px) !important;
  border-radius:var(--app-panel-radius,14px) !important;
}

.fan-match-page .fan-match-result-panel .event-match-after-head,
.fan-match-page .fan-match-media-panel .app-section-head{
  margin-bottom:14px !important;
}

.fan-match-page .fan-match-result-panel .event-match-after-head h3,
.fan-match-page .fan-match-media-panel .app-section-head h3{
  margin:0 !important;
  font-size:var(--app-font-size-heading,18px) !important;
  line-height:var(--ui-line-snug) !important;
  font-weight:var(--ui-weight-black-soft) !important;
}

.fan-match-page .fan-match-result-panel .event-match-after-head .muted,
.fan-match-page .fan-match-media-panel .muted{
  margin:4px 0 0 !important;
}

.fan-match-page .fan-match-result-panel .event-match-after-content{
  display:grid !important;
  gap:16px !important;
}

.fan-match-page .fan-match-detail__score-card{
  margin:0 !important;
}

.fan-match-page .fan-match-media-panel .fan-match-youtube-card{
  margin:0 !important;
}

.fan-match-page .fan-match-media-panel .event-match-goal-video-grid{
  margin-top:0 !important;
}

/* Asistence používají stejný modrý akcent jako v interním detailu. */
.fan-match-page .event-match-scorer--assist span{
  background:linear-gradient(135deg,#1557d6 0%,#2f6fea 100%) !important;
  color:var(--ui-white) !important;
}

@media(max-width:760px){
  .fan-match-page .fan-match-result-panel,
  .fan-match-page .fan-match-media-panel{
    padding:var(--ui-space-md,14px) !important;
  }
}


/* ==========================================================================
   PATCH 585 – Detail zápasu: jednotné nadpisy, popisy a mezery panelů
   Společné pro interní detail události i fanouškovský detail.
   ========================================================================== */

/* Stejný vnější rytmus jednotlivých zápasových panelů. */
.app-shell.event-page > .event-panel,
.fan-match-page .fan-match-detail,
.fan-match-page .fan-match-video-section,
.fan-match-page .fan-match-goals-section{
  margin-top:0 !important;
  margin-bottom:16px !important;
}

/* Výsledek, Videa/Celý zápas a Góly mají stejné vnitřní odsazení. */
.app-shell.event-page .event-match-after-panel,
.app-shell.event-page #event-videos.event-panel,
.fan-match-page .fan-match-result-panel,
.fan-match-page .fan-match-media-panel{
  padding:20px 22px !important;
  border-radius:var(--app-panel-radius,14px) !important;
  box-sizing:border-box !important;
}

/* Jednotná hlavička sekce: nadpis + případný pomocný text. */
.app-shell.event-page .event-match-after-head,
.app-shell.event-page #event-videos .event-videos-head,
.fan-match-page .fan-match-result-panel .event-match-after-head,
.fan-match-page .fan-match-media-panel .app-section-head{
  display:flex !important;
  align-items:flex-start !important;
  justify-content:space-between !important;
  gap:12px !important;
  margin:0 0 18px !important;
  padding:0 !important;
}

.app-shell.event-page .event-match-after-head > div,
.app-shell.event-page #event-videos .event-videos-head > div,
.fan-match-page .fan-match-result-panel .event-match-after-head > div,
.fan-match-page .fan-match-media-panel .app-section-head > div{
  min-width:0 !important;
  display:grid !important;
  gap:4px !important;
}

/* Nadpisy všech tří částí stejné jako Výsledek zápasu. */
.app-shell.event-page .event-match-after-head h3,
.app-shell.event-page #event-videos .event-videos-head h3,
.fan-match-page .fan-match-result-panel .event-match-after-head h3,
.fan-match-page .fan-match-media-panel .app-section-head h3{
  margin:0 !important;
  padding:0 !important;
  transform:none !important;
  color:var(--app-text,#111827) !important;
  font-size:18px !important;
  line-height:1.25 !important;
  font-weight:800 !important;
  letter-spacing:0 !important;
  text-transform:none !important;
}

/* Pomocný text přímo pod nadpisem – jednotná velikost i mezera. */
.app-shell.event-page #event-videos .event-videos-head p,
.fan-match-page .fan-match-result-panel .event-match-after-head p,
.fan-match-page .fan-match-media-panel .app-section-head p{
  margin:0 !important;
  padding:0 !important;
  color:var(--app-muted,#64748b) !important;
  font-size:12px !important;
  line-height:1.45 !important;
  font-weight:400 !important;
}

/* Obsah nesmí být nalepený na hlavičku ani na okraj panelu. */
.app-shell.event-page .event-match-after-content,
.app-shell.event-page #event-videos .event-videos-list,
.fan-match-page .fan-match-result-panel .event-match-after-content{
  margin-top:0 !important;
}

.fan-match-page .fan-match-media-panel .fan-match-youtube-card,
.fan-match-page .fan-match-media-panel .event-match-goal-video-grid{
  margin-top:0 !important;
}

/* Karty uvnitř panelů drží stejný odstup a radius. */
.fan-match-page .fan-match-youtube-card,
.fan-match-page .event-match-goal-video-card,
.app-shell.event-page #event-videos .event-video-card{
  border-radius:var(--app-card-radius,12px) !important;
}

.fan-match-page .fan-match-youtube-card{
  overflow:hidden !important;
}

/* Na mobilu stejné odsazení jako ostatní formuláře/karty aplikace. */
@media(max-width:760px){
  .app-shell.event-page > .event-panel,
  .fan-match-page .fan-match-detail,
  .fan-match-page .fan-match-video-section,
  .fan-match-page .fan-match-goals-section{
    margin-bottom:14px !important;
  }

  .app-shell.event-page .event-match-after-panel,
  .app-shell.event-page #event-videos.event-panel,
  .fan-match-page .fan-match-result-panel,
  .fan-match-page .fan-match-media-panel{
    padding:16px !important;
  }

  .app-shell.event-page .event-match-after-head,
  .app-shell.event-page #event-videos .event-videos-head,
  .fan-match-page .fan-match-result-panel .event-match-after-head,
  .fan-match-page .fan-match-media-panel .app-section-head{
    margin-bottom:14px !important;
  }

  .app-shell.event-page .event-match-after-head h3,
  .app-shell.event-page #event-videos .event-videos-head h3,
  .fan-match-page .fan-match-result-panel .event-match-after-head h3,
  .fan-match-page .fan-match-media-panel .app-section-head h3{
    font-size:17px !important;
  }
}


/* ==========================================================================
   PATCH 586 – Fanoušek: jednotné roletky a rozložení filtrů
   Kalendář i Statistiky používají stejný kompaktní ovládací prvek aplikace.
   ========================================================================== */
.fan-dashboard-page .fan-filter-bar,
.fan-dashboard-page .fan-statistics-toolbar{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  width:100% !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
  box-shadow:none !important;
}

.fan-dashboard-page .fan-select-control{
  display:flex !important;
  align-items:center !important;
  gap:12px !important;
  width:auto !important;
  max-width:100% !important;
  margin:0 !important;
  color:var(--ui-ink) !important;
}

.fan-dashboard-page .fan-select-control__label{
  flex:0 0 auto !important;
  margin:0 !important;
  font-size:13px !important;
  line-height:1.25 !important;
  font-weight:800 !important;
  color:var(--ui-ink) !important;
}

.fan-dashboard-page .fan-select-control__field{
  position:relative !important;
  display:block !important;
  width:280px !important;
  max-width:min(72vw,320px) !important;
  min-width:0 !important;
}

.fan-dashboard-page .fan-select-control__field::after{
  content:"" !important;
  position:absolute !important;
  top:50% !important;
  right:15px !important;
  width:7px !important;
  height:7px !important;
  border-right:2px solid #334155 !important;
  border-bottom:2px solid #334155 !important;
  transform:translateY(-65%) rotate(45deg) !important;
  pointer-events:none !important;
}

.fan-dashboard-page .fan-select-control select{
  -webkit-appearance:none !important;
  appearance:none !important;
  display:block !important;
  width:100% !important;
  height:44px !important;
  min-height:44px !important;
  margin:0 !important;
  padding:0 42px 0 13px !important;
  border:1px solid #d3dce8 !important;
  border-radius:11px !important;
  background:#fff !important;
  color:var(--ui-ink) !important;
  font:inherit !important;
  font-size:14px !important;
  line-height:42px !important;
  font-weight:700 !important;
  box-sizing:border-box !important;
  outline:none !important;
  box-shadow:none !important;
  cursor:pointer !important;
}

.fan-dashboard-page .fan-select-control select:hover{
  border-color:#b7c2d0 !important;
}

.fan-dashboard-page .fan-select-control select:focus{
  border-color:#94a3b8 !important;
  box-shadow:0 0 0 3px rgba(15,23,42,.08) !important;
}

/* Kalendář: filtr není další velká karta – je to kompaktní řádek pod hlavičkou. */
.fan-dashboard-page .dashboard-section--calendar .fan-filter-bar{
  margin:0 0 14px !important;
}

/* Statistiky: výběr týmu vlevo nad kartami, ne vycentrovaný do prázdné plochy. */
.fan-dashboard-page .dashboard-statistics-card{
  padding:16px !important;
}
.fan-dashboard-page .fan-statistics-toolbar{
  justify-content:flex-start !important;
  margin:0 0 16px !important;
  padding:0 0 14px !important;
  border-bottom:1px solid rgba(15,23,42,.08) !important;
}
.fan-dashboard-page .fan-select-control--statistics .fan-select-control__field{
  width:240px !important;
}

@media(max-width:760px){
  .fan-dashboard-page .fan-select-control{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:6px !important;
    width:100% !important;
  }
  .fan-dashboard-page .fan-select-control__field,
  .fan-dashboard-page .fan-select-control--statistics .fan-select-control__field{
    width:100% !important;
    max-width:none !important;
  }
  .fan-dashboard-page .fan-select-control select{
    height:46px !important;
    min-height:46px !important;
  }
  .fan-dashboard-page .dashboard-statistics-card{
    padding:14px !important;
  }
  .fan-dashboard-page .fan-statistics-toolbar{
    margin-bottom:14px !important;
    padding-bottom:12px !important;
  }
}


/* ==========================================================================
   PATCH 587 – Společné kompaktní roletky kalendáře/statistik
   Fanoušek + běžný dashboard hráč/rodič/trenér/admin.
   ========================================================================== */

/* FANOUŠEK – filtr zápasů nesmí „plavat“ ani vyplnit celý panel. */
.fan-dashboard-page .dashboard-section--calendar .fan-filter-bar{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  width:auto !important;
  max-width:100% !important;
  margin:0 0 16px !important;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
  box-shadow:none !important;
}

.fan-dashboard-page .dashboard-section--calendar .fan-select-control{
  display:flex !important;
  flex-direction:row !important;
  align-items:center !important;
  gap:10px !important;
  width:auto !important;
  max-width:100% !important;
}

.fan-dashboard-page .dashboard-section--calendar .fan-select-control__label{
  flex:0 0 auto !important;
  margin:0 !important;
  font-size:13px !important;
  line-height:1.2 !important;
  font-weight:800 !important;
}

.fan-dashboard-page .dashboard-section--calendar .fan-select-control__field{
  width:230px !important;
  max-width:calc(100vw - 110px) !important;
  flex:0 1 230px !important;
}

.fan-dashboard-page .dashboard-section--calendar .fan-select-control select{
  width:100% !important;
  height:42px !important;
  min-height:42px !important;
  padding:0 40px 0 12px !important;
  border-radius:11px !important;
}

/* STATISTIKY – bez linky pod roletkou. */
.fan-dashboard-page .fan-statistics-toolbar{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:0 !important;
  width:100% !important;
  margin:0 0 16px !important;
  padding:0 !important;
  border:0 !important;
  border-bottom:0 !important;
  background:transparent !important;
  box-shadow:none !important;
}

.fan-dashboard-page .fan-select-control--statistics{
  display:flex !important;
  flex-direction:row !important;
  align-items:center !important;
  gap:10px !important;
  width:auto !important;
  max-width:100% !important;
}

.fan-dashboard-page .fan-select-control--statistics .fan-select-control__field{
  width:230px !important;
  max-width:calc(100vw - 110px) !important;
  flex:0 1 230px !important;
}

/* BĚŽNÝ DASHBOARD – stejné ovládání Statistik pro všechny ostatní role. */
.dashboard-page .dashboard-section--statistics .dashboard-statistics-card__toolbar{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  width:100% !important;
  margin:0 0 16px !important;
  padding:0 !important;
  border:0 !important;
  border-bottom:0 !important;
  background:transparent !important;
  box-shadow:none !important;
}

.dashboard-page .dashboard-section--statistics .dashboard-statistics-card__team-select{
  display:flex !important;
  flex-direction:row !important;
  align-items:center !important;
  gap:10px !important;
  width:auto !important;
  max-width:100% !important;
  margin:0 !important;
}

.dashboard-page .dashboard-section--statistics .dashboard-statistics-card__team-select > span{
  flex:0 0 auto !important;
  margin:0 !important;
  font-size:13px !important;
  line-height:1.2 !important;
  font-weight:800 !important;
}

.dashboard-page .dashboard-section--statistics .dashboard-statistics-card__team-select > select{
  -webkit-appearance:none !important;
  appearance:none !important;
  width:230px !important;
  max-width:calc(100vw - 110px) !important;
  height:42px !important;
  min-height:42px !important;
  margin:0 !important;
  padding:0 40px 0 12px !important;
  border:1px solid #d3dce8 !important;
  border-radius:11px !important;
  background-color:#fff !important;
  color:var(--ui-ink) !important;
  font-size:14px !important;
  line-height:40px !important;
  font-weight:700 !important;
  box-sizing:border-box !important;
  box-shadow:none !important;
  outline:none !important;
}

/* Na běžně širokém telefonu zůstává řádek kompaktní.
   Pod sebe se skládá až na opravdu úzkých displejích. */
@media(max-width:420px){
  .fan-dashboard-page .dashboard-section--calendar .fan-select-control,
  .fan-dashboard-page .fan-select-control--statistics,
  .dashboard-page .dashboard-section--statistics .dashboard-statistics-card__team-select{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:6px !important;
    width:100% !important;
  }

  .fan-dashboard-page .dashboard-section--calendar .fan-select-control__field,
  .fan-dashboard-page .fan-select-control--statistics .fan-select-control__field,
  .dashboard-page .dashboard-section--statistics .dashboard-statistics-card__team-select > select{
    width:100% !important;
    max-width:none !important;
  }
}
\n\n/* PATCH 588 – Fanouškovský detail: samostatný blok Tatran TV */\n.fan-match-page .fan-match-tv-section{\n  margin-top:0 !important;\n  margin-bottom:16px !important;\n}\n.fan-match-page .fan-match-tv-panel{\n  padding:20px 22px !important;\n  border-radius:var(--app-panel-radius,14px) !important;\n}\n.fan-match-page .fan-match-tv-panel .app-section-head{\n  margin:0 0 16px !important;\n}\n.fan-match-page .fan-match-tv-panel__link{\n  display:flex !important;\n  align-items:center !important;\n  justify-content:center !important;\n  width:100% !important;\n  min-height:46px !important;\n  box-sizing:border-box !important;\n}\n@media(max-width:760px){\n  .fan-match-page .fan-match-tv-section{margin-bottom:14px !important;}\n  .fan-match-page .fan-match-tv-panel{padding:16px !important;}\n}\n

/* ==========================================================================
   PATCH 589 – Fanoušek: mobilní menu, novinky a nastavení upozornění
   ========================================================================== */
.fan-dashboard-page #zapasy,
.fan-dashboard-page #kalendar,
.fan-dashboard-page #statistiky,
.fan-dashboard-page #novinky,
.fan-dashboard-page #upozorneni{
  scroll-margin-top:86px;
}

.fan-dashboard-page .fan-news-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}
.fan-dashboard-page .fan-news-card{
  display:flex;
  flex-direction:column;
  gap:10px;
  min-width:0;
  padding:14px;
  color:inherit;
  text-decoration:none;
}
.fan-dashboard-page .fan-news-card:hover{
  border-color:#c5cfdd;
}
.fan-dashboard-page .fan-news-card__meta{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  font-size:12px;
  color:var(--ui-muted);
}
.fan-dashboard-page .fan-news-card__title{
  font-size:15px;
  line-height:1.3;
}
.fan-dashboard-page .fan-news-card p{
  margin:0;
  font-size:13px;
  line-height:1.5;
  color:var(--ui-muted);
}
.fan-dashboard-page .fan-news-card__more{
  margin-top:auto;
  font-size:12px;
  font-weight:800;
  color:var(--ui-ink);
}
.fan-dashboard-page .fan-news-load-more{
  margin-top:12px;
}

.fan-dashboard-page .fan-notification-card{
  padding:14px;
}
.fan-dashboard-page .fan-notification-options{
  display:grid;
  gap:8px;
}
.fan-dashboard-page .fan-notification-option{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  min-height:58px;
  margin:0;
  padding:10px 12px;
  border:1px solid #d9e0e9;
  border-radius:12px;
  background:#fff;
  cursor:pointer;
}
.fan-dashboard-page .fan-notification-option > span{
  display:grid;
  gap:3px;
  min-width:0;
}
.fan-dashboard-page .fan-notification-option strong{
  font-size:14px;
  line-height:1.25;
}
.fan-dashboard-page .fan-notification-option small{
  color:var(--ui-muted);
  font-size:12px;
  line-height:1.4;
}
.fan-dashboard-page .fan-notification-option input[type="checkbox"]{
  appearance:none;
  -webkit-appearance:none;
  width:44px;
  height:24px;
  min-width:44px;
  margin:0;
  padding:2px;
  border:1px solid #c8d2df;
  border-radius:999px;
  background:#e8edf3;
  cursor:pointer;
  transition:.15s ease;
}
.fan-dashboard-page .fan-notification-option input[type="checkbox"]::after{
  content:"";
  display:block;
  width:18px;
  height:18px;
  border-radius:50%;
  background:#fff;
  box-shadow:0 1px 3px rgba(15,23,42,.22);
  transition:.15s ease;
}
.fan-dashboard-page .fan-notification-option input[type="checkbox"]:checked{
  border-color:#111827;
  background:#111827;
}
.fan-dashboard-page .fan-notification-option input[type="checkbox"]:checked::after{
  transform:translateX(20px);
}
.fan-dashboard-page .fan-notification-actions{
  margin-top:12px;
}

.admin-message-fan-toggle{
  margin:6px 0 10px !important;
}
.admin-message-fan-toggle > span{
  display:grid !important;
  gap:3px;
}
.admin-message-fan-toggle small{
  display:block;
  color:var(--ui-muted);
  font-weight:400;
}

.fan-news-page .fan-news-detail-shell{
  display:grid;
  gap:12px;
}
.fan-news-page .fan-news-detail{
  padding:20px 22px;
}
.fan-news-page .fan-news-detail__head{
  margin-bottom:18px;
}
.fan-news-page .fan-news-detail__body{
  line-height:1.6;
}
.fan-news-page .fan-news-detail__body img{
  max-width:100%;
  height:auto;
  border-radius:12px;
}

@media(max-width:900px){
  .fan-dashboard-page .fan-news-grid{
    grid-template-columns:1fr;
  }
}
@media(max-width:760px){
  .fan-news-page .fan-news-detail{
    padding:16px;
  }
}


/* PATCH 590 – Fanoušek: skrytí prázdných novinek + sbalené nastavení upozornění */
.fan-dashboard-page .fan-notification-card{
  padding:14px !important;
}

.fan-dashboard-page .fan-notification-summary{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
}

.fan-dashboard-page .fan-notification-summary__text{
  display:grid;
  gap:4px;
  min-width:0;
}

.fan-dashboard-page .fan-notification-summary__text strong{
  font-size:14px;
  line-height:1.25;
}

.fan-dashboard-page .fan-notification-summary__text span{
  color:var(--ui-muted);
  font-size:12px;
  line-height:1.45;
}

.fan-dashboard-page .fan-notification-card.is-editing .fan-notification-summary{
  margin-bottom:12px;
  padding-bottom:12px;
  border-bottom:1px solid rgba(15,23,42,.08);
}

.fan-dashboard-page .fan-notification-form{
  margin:0;
}

@media(max-width:560px){
  .fan-dashboard-page .fan-notification-summary{
    align-items:flex-start;
  }
  .fan-dashboard-page .fan-notification-summary .btn{
    flex:0 0 auto;
  }
}


/* ==========================================================================
   PATCH 591 – Výběr týmu zarovnat doprava
   Kalendář + Statistiky, fanoušek i ostatní role.
   ========================================================================== */

/* Fanoušek – kalendář */
.fan-dashboard-page .dashboard-section--calendar .fan-filter-bar{
  justify-content:flex-end !important;
}
.fan-dashboard-page .dashboard-section--calendar .fan-select-control{
  margin-left:auto !important;
}

/* Fanoušek – statistiky */
.fan-dashboard-page .fan-statistics-toolbar{
  justify-content:flex-end !important;
}
.fan-dashboard-page .fan-select-control--statistics{
  margin-left:auto !important;
}

/* Ostatní role – statistiky na dashboardu */
.dashboard-page .dashboard-section--statistics .dashboard-statistics-card__toolbar{
  justify-content:flex-end !important;
}
.dashboard-page .dashboard-section--statistics .dashboard-statistics-card__team-select{
  margin-left:auto !important;
}

/* Ostatní role – společné kalendářové filtry */
.dashboard-page .dashboard-section--calendar .dashboard-calendar-filter,
.dashboard-page .dashboard-section--calendar .calendar-filter-bar,
.team-page .dashboard-section--calendar .dashboard-calendar-filter,
.team-page .dashboard-section--calendar .calendar-filter-bar{
  justify-content:flex-end !important;
}
.dashboard-page .dashboard-section--calendar .dashboard-calendar-filter > *,
.dashboard-page .dashboard-section--calendar .calendar-filter-bar > *,
.team-page .dashboard-section--calendar .dashboard-calendar-filter > *,
.team-page .dashboard-section--calendar .calendar-filter-bar > *{
  margin-left:auto !important;
}

/* Na úzkém telefonu zůstává prvek vpravo, ale nesmí přetéct. */
@media(max-width:560px){
  .fan-dashboard-page .dashboard-section--calendar .fan-filter-bar,
  .fan-dashboard-page .fan-statistics-toolbar,
  .dashboard-page .dashboard-section--statistics .dashboard-statistics-card__toolbar{
    width:100% !important;
  }

  .fan-dashboard-page .dashboard-section--calendar .fan-select-control,
  .fan-dashboard-page .fan-select-control--statistics,
  .dashboard-page .dashboard-section--statistics .dashboard-statistics-card__team-select{
    max-width:100% !important;
  }
}


/* ==========================================================================
   PATCH 592 – Fanoušek: poslední 3 videa Tatran TV pod Statistikami
   ========================================================================== */
.fan-dashboard-page .fan-tatran-tv-section{
  scroll-margin-top:86px;
}

.fan-dashboard-page .fan-tatran-tv-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
}

.fan-dashboard-page .fan-tatran-tv-card{
  display:flex;
  flex-direction:column;
  min-width:0;
  padding:0;
  overflow:hidden;
  color:inherit;
  text-decoration:none;
}

.fan-dashboard-page .fan-tatran-tv-card:hover{
  border-color:#c5cfdd;
}

.fan-dashboard-page .fan-tatran-tv-card__media{
  position:relative;
  aspect-ratio:16/9;
  overflow:hidden;
  background:#111827;
}

.fan-dashboard-page .fan-tatran-tv-card__media img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

.fan-dashboard-page .fan-tatran-tv-card__placeholder{
  display:grid;
  place-items:center;
  width:100%;
  height:100%;
  color:#fff;
  font-size:14px;
  font-weight:800;
  letter-spacing:.08em;
}

.fan-dashboard-page .fan-tatran-tv-card__play{
  position:absolute;
  left:50%;
  top:50%;
  transform:translate(-50%,-50%);
  display:grid;
  place-items:center;
  width:42px;
  height:42px;
  border-radius:50%;
  background:rgba(255,255,255,.94);
  color:#111827;
  font-size:16px;
  box-shadow:0 5px 18px rgba(15,23,42,.22);
}

.fan-dashboard-page .fan-tatran-tv-card__badge{
  position:absolute;
  left:10px;
  top:10px;
  margin:0;
  background:rgba(255,255,255,.94);
  color:#111827;
}

.fan-dashboard-page .fan-tatran-tv-card__body{
  display:grid;
  gap:5px;
  padding:12px 13px 14px;
}

.fan-dashboard-page .fan-tatran-tv-card__body > strong{
  font-size:14px;
  line-height:1.35;
}

.fan-dashboard-page .fan-tatran-tv-card__body > span{
  color:var(--ui-muted);
  font-size:12px;
  line-height:1.4;
}

.fan-dashboard-page .fan-tatran-tv-card__meta{
  display:flex;
  flex-wrap:wrap;
  gap:5px 10px;
  color:var(--ui-muted);
  font-size:11px;
  line-height:1.35;
}

.fan-dashboard-page .fan-tatran-tv-actions{
  display:flex;
  justify-content:flex-end;
  margin-top:14px;
}

.fan-dashboard-page .fan-tatran-tv-actions .btn{
  min-width:190px;
}

@media(max-width:900px){
  .fan-dashboard-page .fan-tatran-tv-grid{
    grid-template-columns:1fr;
  }

  .fan-dashboard-page .fan-tatran-tv-actions .btn{
    width:100%;
  }
}


/* PATCH 594 – Tatran TV: hlavní tlačítko přes celou šířku */
.fan-dashboard-page .fan-tatran-tv-actions{
  display:block !important;
  width:100% !important;
  margin-top:14px !important;
}
.fan-dashboard-page .fan-tatran-tv-actions .btn{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:100% !important;
  min-width:0 !important;
  box-sizing:border-box !important;
}


/* ==========================================================================
   PATCH 595 – Fanoušek: Tatran Songy – top 3 podle hlasů ANO
   ========================================================================== */
.fan-dashboard-page .fan-tatran-songs-section{
  scroll-margin-top:86px;
}

.fan-dashboard-page .fan-tatran-songs-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
}

.fan-dashboard-page .fan-tatran-song-card{
  display:flex;
  flex-direction:column;
  gap:12px;
  min-width:0;
  padding:14px;
}

.fan-dashboard-page .fan-tatran-song-card__top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
}

.fan-dashboard-page .fan-tatran-song-card__rank{
  display:grid;
  place-items:center;
  width:30px;
  height:30px;
  border-radius:50%;
  background:#111827;
  color:#fff;
  font-size:13px;
  line-height:1;
  font-weight:800;
}

.fan-dashboard-page .fan-tatran-song-card__title{
  min-height:38px;
  font-size:14px;
  line-height:1.35;
}

.fan-dashboard-page .fan-tatran-song-card__player{
  display:block;
  width:100%;
  height:40px;
  margin-top:auto;
}

.fan-dashboard-page .fan-tatran-songs-actions{
  display:block;
  width:100%;
  margin-top:14px;
}

.fan-dashboard-page .fan-tatran-songs-actions .btn{
  display:flex;
  align-items:center;
  justify-content:center;
  width:100%;
  min-width:0;
  box-sizing:border-box;
}

@media(max-width:900px){
  .fan-dashboard-page .fan-tatran-songs-grid{
    grid-template-columns:1fr;
  }
}


/* PATCH 596 – Tatran Songy: čistší karty bez pořadí a hlasů */
.fan-dashboard-page .fan-tatran-song-card{
  justify-content:center;
}

.fan-dashboard-page .fan-tatran-song-card__top,
.fan-dashboard-page .fan-tatran-song-card__rank{
  display:none !important;
}

.fan-dashboard-page .fan-tatran-song-card__title{
  min-height:0 !important;
  margin:2px 0 4px !important;
  text-align:center !important;
  font-size:16px !important;
  line-height:1.3 !important;
  font-weight:800 !important;
}


/* ==========================================================================
   PATCH 597 – Fanoušek: Hymna Tatranu + modal s textem hymny
   ========================================================================== */
.fan-dashboard-page .fan-hymn-section{
  scroll-margin-top:86px;
}

.fan-dashboard-page .fan-hymn-card{
  padding:0;
  overflow:hidden;
}

.fan-dashboard-page .fan-hymn-video{
  position:relative;
  width:100%;
  aspect-ratio:16/9;
  overflow:hidden;
  background:#000;
}

.fan-dashboard-page .fan-hymn-video iframe{
  display:block;
  width:100%;
  height:100%;
  border:0;
}

.fan-dashboard-page .fan-hymn-actions{
  display:block;
  width:100%;
  margin-top:14px;
}

.fan-dashboard-page .fan-hymn-actions .btn{
  display:flex;
  align-items:center;
  justify-content:center;
  width:100%;
  box-sizing:border-box;
}

.fan-hymn-modal__dialog{
  width:min(620px,calc(100vw - 28px));
  max-height:min(86vh,760px);
}

.fan-hymn-modal__content{
  overflow:auto;
  max-height:calc(86vh - 110px);
  padding:2px 2px 8px;
  font-size:14px;
  line-height:1.65;
}

.fan-hymn-modal__content p{
  margin:0 0 16px;
}

.fan-hymn-modal__content h3{
  margin:0 0 10px;
  font-size:15px;
  line-height:1.3;
}

.fan-hymn-divider{
  height:1px;
  margin:18px 0;
  background:rgba(15,23,42,.10);
}

@media(max-width:760px){
  .fan-hymn-modal__dialog{
    width:calc(100vw - 20px);
    max-height:90vh;
  }
  .fan-hymn-modal__content{
    max-height:calc(90vh - 105px);
  }
}

/* PATCH 624 – odehrané zápasy v přehledu týmu */
body.dashboard-page .team-overview-card--played{
  background:#f5f6f7 !important;
}
body.dashboard-page .team-overview-card--played:hover,
body.dashboard-page .team-overview-card--played:focus-visible{
  background:#f5f6f7 !important;
}
body.dashboard-page .team-overview-card__result{
  display:flex !important;
  align-items:center !important;
  flex-wrap:wrap !important;
  gap:8px !important;
  margin-top:7px !important;
}
body.dashboard-page .team-overview-card__result > strong{
  font-size:18px !important;
  line-height:1 !important;
  font-weight:900 !important;
  color:#111827 !important;
}
body.dashboard-page .team-overview-card__result .app-match-pro-badge{
  display:inline-flex !important;
  align-items:center !important;
  margin:0 !important;
  white-space:nowrap !important;
}

/* PATCH 626 – bufet: čistá hlavička dne */
.dashboard-buffet-day__head{width:100%;align-items:center;}
.dashboard-buffet-day__head h3{margin:0;}
.dashboard-buffet-day__head .btn{margin-left:auto;}
@media(max-width:720px){.dashboard-buffet-day__head{align-items:center;}}

/* PATCH 627: jednotne dvouradkove karty zapasu bufetu */
.buffet-match-card__main{min-width:0;}
.buffet-match-card__headline{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;min-width:0;}
.buffet-match-card__headline strong{margin:0;}
.buffet-match-card__headline span{color:var(--muted,#64748b);font-size:.92rem;white-space:nowrap;}
.buffet-match-card__status{margin:5px 0 0!important;}
.buffet-day-match-block{display:grid;gap:12px;}
.buffet-day-match-block + .buffet-day-match-block{margin-top:16px;}
.buffet-day-match-block .event-attendance-actions{margin:0 0 4px;}
@media(max-width:720px){
  .buffet-match-card__headline{gap:6px;}
  .buffet-match-card__headline span{font-size:.88rem;}
}

/* PATCH 629 - bufet: pevne 2 radky, viditelny cas/misto a cervene upozorneni */
.buffet-match-card__headline strong{
  display:inline!important;
}
.buffet-match-card__meta{
  display:inline!important;
  margin-left:6px;
  color:var(--muted,#64748b);
  font-size:.92rem;
  font-weight:400;
  white-space:nowrap;
}
.buffet-match-card__status--warning{
  color:#dc2626!important;
  font-size:.98rem!important;
  line-height:var(--ui-line-label)!important;
  font-weight:400!important;
}
@media(max-width:720px){
  .buffet-match-card__meta{font-size:.88rem;}
  .buffet-match-card__status--warning{font-size:.98rem!important;}
}

/* PATCH 630 – detail dne bufetu: zápasy uvnitř hlavní karty, časy dalších zápasů a čas příchodu */
.buffet-day-hero .team-hero__stats{
  grid-template-columns:repeat(auto-fit,minmax(112px,1fr))!important;
}
.buffet-day-arrival{
  margin:0!important;
  font-size:var(--app-font-size-small,12px)!important;
  line-height:1.35!important;
}
.buffet-day-arrival strong{
  margin-right:6px;
  font-weight:var(--ui-weight-black-soft,700)!important;
}
.buffet-day-arrival span{
  color:#dc2626!important;
  font-weight:700!important;
}
.buffet-day-arrival{
  font-weight:700!important;
}
.buffet-day-matches-in-hero{
  display:grid;
  gap:8px;
  width:100%;
  flex:0 0 100%;
  align-self:stretch;
  margin-top:2px;
}
.buffet-day-matches-in-hero .buffet-day-match-block{
  gap:8px;
  margin:0!important;
}
.buffet-day-matches-in-hero .buffet-day-match-block + .buffet-day-match-block{
  margin-top:0!important;
}
.buffet-day-matches-in-hero .buffet-day-match-block{
  width:100%;
}
.buffet-day-matches-in-hero .app-card-link{
  display:block;
  width:100%;
}
.buffet-day-matches-in-hero .wall-message-card{
  width:100%;
}
.buffet-day-matches-in-hero .event-attendance-actions{
  margin:0 0 2px!important;
}
@media(max-width:720px){
  .buffet-day-hero .team-hero__stats{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  .buffet-day-matches-in-hero{gap:7px;}
}

/* PATCH 632 – detail dne bufetu: hlavni grid se nesmi smrsknout podle obsahu */
.buffet-day-hero .team-hero__main{
  width:100%!important;
  grid-template-columns:minmax(0,1fr)!important;
  justify-content:stretch!important;
  justify-items:stretch!important;
}
.buffet-day-hero .team-hero__stats,
.buffet-day-hero .buffet-day-arrival,
.buffet-day-hero .buffet-day-matches-in-hero{
  width:100%!important;
  max-width:none!important;
}


/* PATCH 636 - detail treninku: editace vpravo a upozorneni na sraz */
.app-shell.event-page .event-summary-card__body,
.event-page .event-summary-card__body{
  flex:1 1 auto!important;
  width:100%!important;
  min-width:0!important;
}
.app-shell.event-page .event-summary-meeting,
.event-page .event-summary-meeting{
  margin:0!important;
  padding-top:6px!important;
  color:#dc2626!important;
  font-size:16px!important;
  line-height:1.25!important;
  font-weight:800!important;
}
@media (min-width:761px){
  .app-shell.event-page .event-summary-edit-button,
  .event-page .event-summary-edit-button{
    right:18px!important;
  }
}


/* PATCH 641 - akce v hlavicce zapasu: Upravit nad Zrusit, zarovnane vpravo */
@media (min-width:761px){
  .app-shell.event-page .event-summary-actions,
  .event-page .event-summary-actions{
    position:absolute;
    top:18px;
    right:18px;
    display:flex;
    flex-direction:column;
    align-items:stretch;
    justify-content:flex-start;
    gap:10px;
    flex-wrap:nowrap;
  }
  .app-shell.event-page .event-summary-actions .event-summary-edit-button,
  .event-page .event-summary-actions .event-summary-edit-button{
    position:static!important;
    right:auto!important;
    top:auto!important;
    transform:none!important;
  }
  .app-shell.event-page .event-summary-actions form,
  .event-page .event-summary-actions form{
    margin:0;
    width:100%;
  }
  .app-shell.event-page .event-summary-actions form .btn,
  .event-page .event-summary-actions form .btn{
    width:100%;
  }
  .app-shell.event-page .event-summary-card__body,
  .event-page .event-summary-card__body{
    padding-right:190px!important;
  }
}
@media (max-width:760px){
  .app-shell.event-page .event-summary-actions,
  .event-page .event-summary-actions{
    position:static;
    display:flex;
    flex-direction:column;
    align-items:stretch;
    gap:8px;
    margin-top:14px;
  }
  .app-shell.event-page .event-summary-actions .event-summary-edit-button,
  .event-page .event-summary-actions .event-summary-edit-button{
    position:static!important;
    transform:none!important;
  }
  .app-shell.event-page .event-summary-actions form,
  .event-page .event-summary-actions form,
  .app-shell.event-page .event-summary-actions .btn,
  .event-page .event-summary-actions .btn{
    width:100%;
  }
}

/* PATCH 642 - zrusit zapas zustava cervene i v mobilnim breakpointu */
@media (max-width:760px){
  .app-shell.event-page .event-summary-actions .btn.btn--danger-soft,
  .event-page .event-summary-actions .btn.btn--danger-soft{
    background:var(--ui-danger)!important;
    border-color:var(--ui-danger)!important;
    color:var(--ui-white)!important;
  }
  .app-shell.event-page .event-summary-actions .btn.btn--danger-soft:hover,
  .app-shell.event-page .event-summary-actions .btn.btn--danger-soft:focus-visible,
  .event-page .event-summary-actions .btn.btn--danger-soft:hover,
  .event-page .event-summary-actions .btn.btn--danger-soft:focus-visible{
    background:#b82d39!important;
    border-color:#b82d39!important;
    color:var(--ui-white)!important;
  }
}

/* PATCH 643: výrazné zobrazení zrušené události */
.event-page .event-cancelled-notice{
  display:grid;
  gap:4px;
  margin:0 0 12px;
  padding:14px 16px;
  border:1px solid #fca5a5!important;
  border-radius:var(--ui-radius-md,12px);
  background:#fff1f2!important;
  color:#b91c1c!important;
  box-shadow:0 4px 14px rgba(220,38,38,.08);
}
.event-page .event-cancelled-notice strong,
.event-page .event-cancelled-notice span{
  color:#b91c1c!important;
}
.event-page .event-cancelled-notice strong{
  font-size:16px;
  line-height:1.25;
  font-weight:800;
}
.event-page .event-cancelled-notice span{
  font-size:13px;
  line-height:1.4;
  font-weight:600;
}
.event-page .event-info-row--cancelled span,
.event-page .event-info-row--cancelled strong{
  color:#dc2626!important;
  font-weight:800!important;
}
.event-page .attendance-status-card__notice.attendance-status-card__notice--cancelled{
  border-color:#fca5a5!important;
  background:#fff1f2!important;
  color:#b91c1c!important;
}
.event-page .attendance-status-card__notice.attendance-status-card__notice--cancelled strong,
.event-page .attendance-status-card__notice.attendance-status-card__notice--cancelled span{
  color:#b91c1c!important;
}


/* PATCH 644 – přehled událostí: zrušená událost */
.dashboard-page .dashboard-section--events .app-event-card.is-cancelled{
  background:#fff1f2!important;
  border-color:#fecdd3!important;
}
.dashboard-page .dashboard-section--events .app-event-card.is-cancelled .app-event-card__bar{
  background:#dc2626!important;
}
.dashboard-page .dashboard-section--events .app-event-card__cancelled-badge{
  display:inline-flex;
  align-items:center;
  min-height:24px;
  padding:3px 8px;
  border-radius:999px;
  background:#dc2626;
  color:#fff;
  font-size:.72rem;
  line-height:1;
  font-weight:800;
  letter-spacing:.02em;
  white-space:nowrap;
}

/* PATCH 646 - sjednoceni bloku Moje trenerska ucast v detailu udalosti */
.event-page .event-attendance-panel .event-coach-attendance-card{
  margin:var(--event-detail-y,24px) var(--event-detail-x,30px) 0!important;
  padding:18px 20px!important;
  border:1px solid var(--app-line)!important;
  border-radius:var(--ui-radius-lg)!important;
  background:var(--ui-white)!important;
  box-shadow:none!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:18px!important;
  width:auto!important;
  box-sizing:border-box!important;
}
.event-page .event-coach-attendance-card__inner{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:18px!important;
  width:100%!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
}
.event-page .event-coach-attendance-card__copy{
  display:grid!important;
  gap:5px!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
}
.event-page .event-coach-attendance-card__copy > strong{
  margin:0!important;
  padding:0!important;
  font-size:1.08rem!important;
  line-height:1.25!important;
  color:var(--app-text)!important;
}
.event-page .event-coach-attendance-card__copy > small{
  margin:0!important;
  padding:0!important;
  font-size:.92rem!important;
  line-height:1.4!important;
  color:var(--app-muted)!important;
}
.event-page .event-coach-attendance-card .attendance-status-actions{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  flex-wrap:wrap!important;
  gap:10px!important;
  flex:0 0 auto!important;
  margin:0!important;
  padding:0!important;
}
.event-page .event-coach-attendance-card .app-status-pill{
  min-width:auto!important;
  padding:8px 12px!important;
  font-size:.88rem!important;
  line-height:1!important;
}
.event-page .event-coach-attendance-card .btn{
  margin:0!important;
}
.event-page .event-coach-attendance-card + .attendance-window-info{
  margin-top:16px!important;
}
.event-page .event-coach-attendance-card ~ .event-row--split{
  margin-top:18px!important;
}
@media(max-width:760px){
  .event-page .event-attendance-panel .event-coach-attendance-card{
    margin:18px 18px 0!important;
    padding:16px!important;
    gap:14px!important;
  }
  .event-page .event-coach-attendance-card__inner{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:14px!important;
    align-items:start!important;
  }
  .event-page .event-coach-attendance-card .attendance-status-actions{
    width:100%!important;
    justify-content:flex-start!important;
  }
}


/* PATCH 647 - trenérská účast: samostatná komponenta bez konfliktu attendance-status-card */
.event-page .event-attendance-panel .event-coach-attendance-card{
  margin:24px 30px!important;
  padding:20px!important;
  border:1px solid var(--app-line)!important;
  border-radius:var(--ui-radius-lg)!important;
  background:var(--ui-white)!important;
  box-shadow:none!important;
  display:grid!important;
  gap:16px!important;
  width:auto!important;
  box-sizing:border-box!important;
}
.event-page .event-coach-attendance-card__inner{
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:18px!important;
  width:100%!important;
}
.event-page .event-coach-attendance-card__copy{
  display:grid!important;
  gap:6px!important;
  min-width:0!important;
}
.event-page .event-coach-attendance-card__copy > strong{
  margin:0!important;
  font-size:1.15rem!important;
  line-height:1.25!important;
  color:var(--app-text)!important;
}
.event-page .event-coach-attendance-card__copy > small{
  margin:0!important;
  font-size:.92rem!important;
  line-height:1.4!important;
  color:var(--app-muted)!important;
}
.event-page .event-coach-attendance-card .attendance-status-actions{
  margin:0!important;
  padding:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:8px!important;
  flex:0 0 auto!important;
}
.event-page .event-coach-attendance-card__notice{
  width:100%!important;
  box-sizing:border-box!important;
  margin:0!important;
}
.event-page .event-coach-attendance-card__notice strong{
  margin:0 0 5px!important;
}
.event-page .event-coach-attendance-card__notice span{
  margin:0!important;
}
@media(max-width:760px){
  .event-page .event-attendance-panel .event-coach-attendance-card{
    margin:18px!important;
    padding:16px!important;
    gap:14px!important;
  }
  .event-page .event-coach-attendance-card__inner{
    gap:12px!important;
  }
  .event-page .event-coach-attendance-card__copy > strong{
    font-size:1.05rem!important;
  }
}

/* PATCH 648 - pomocne bloky detailu udalosti sjednocene podle panelu Videa */
.app-shell.event-page .event-panel--video-style{
  padding:20px 22px!important;
  border-radius:var(--app-panel-radius,14px)!important;
  box-sizing:border-box!important;
  overflow:hidden!important;
}

/* Rozbalovaci hlavicky maji stejny vizualni rytmus jako hlavicka Videa. */
.app-shell.event-page .event-panel--video-style .extra-player-collapsible,
.app-shell.event-page .event-panel--video-style .event-push-overview__details{
  margin:0!important;
  width:100%!important;
}
.app-shell.event-page .event-panel--video-style .extra-player-collapsible__summary,
.app-shell.event-page .event-panel--video-style .event-push-overview__summary{
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  color:var(--app-text,#111827)!important;
  box-shadow:none!important;
  font-size:18px!important;
  line-height:1.25!important;
  font-weight:800!important;
  text-align:left!important;
  justify-content:space-between!important;
  gap:12px!important;
}
.app-shell.event-page .event-panel--video-style .extra-player-collapsible__summary span,
.app-shell.event-page .event-panel--video-style .event-push-overview__summary > span:first-child{
  color:var(--app-text,#111827)!important;
}
.app-shell.event-page .event-panel--video-style details[open] > .extra-player-collapsible__summary,
.app-shell.event-page .event-panel--video-style .event-push-overview__details[open] > .event-push-overview__summary{
  margin-bottom:18px!important;
}
.app-shell.event-page .event-panel--video-style .extra-player-collapsible__body{
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
}

/* Trenerska ucast: jeden panel, bez vnitrni druhe karty. */
.app-shell.event-page .event-attendance-panel--coach-only{
  padding:20px 22px!important;
}
.app-shell.event-page .event-attendance-panel--coach-only .event-coach-attendance-card{
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  gap:18px!important;
  width:100%!important;
}
.app-shell.event-page .event-attendance-panel--coach-only .event-coach-attendance-card__inner{
  margin:0!important;
  padding:0!important;
}
.app-shell.event-page .event-attendance-panel--coach-only .event-coach-attendance-card__copy{
  gap:4px!important;
}
.app-shell.event-page .event-attendance-panel--coach-only .event-coach-attendance-card__copy > strong{
  margin:0!important;
  padding:0!important;
  font-size:18px!important;
  line-height:1.25!important;
  font-weight:800!important;
  color:var(--app-text,#111827)!important;
}
.app-shell.event-page .event-attendance-panel--coach-only .event-coach-attendance-card__copy > small{
  margin:0!important;
  padding:0!important;
  color:var(--app-muted,#64748b)!important;
  font-size:12px!important;
  line-height:1.45!important;
  font-weight:400!important;
}
.app-shell.event-page .event-attendance-panel--coach-only .event-coach-attendance-card__notice{
  margin:0!important;
}
.app-shell.event-page .event-attendance-panel--coach-only .attendance-window-info,
.app-shell.event-page .event-attendance-panel--coach-only .event-row,
.app-shell.event-page .event-attendance-panel--coach-only .event-attendance-actions,
.app-shell.event-page .event-attendance-panel--coach-only .attendance-child-list{
  margin-left:0!important;
  margin-right:0!important;
}

@media(max-width:760px){
  .app-shell.event-page .event-panel--video-style,
  .app-shell.event-page .event-attendance-panel--coach-only{
    padding:16px!important;
  }
  .app-shell.event-page .event-panel--video-style .extra-player-collapsible__summary,
  .app-shell.event-page .event-panel--video-style .event-push-overview__summary,
  .app-shell.event-page .event-attendance-panel--coach-only .event-coach-attendance-card__copy > strong{
    font-size:17px!important;
  }
  .app-shell.event-page .event-panel--video-style details[open] > .extra-player-collapsible__summary,
  .app-shell.event-page .event-panel--video-style .event-push-overview__details[open] > .event-push-overview__summary{
    margin-bottom:14px!important;
  }
}

/* PATCH 649 - pouze upozorneni planovane ucasti u zrusene udalosti */
.event-page .attendance-status-card__notice.attendance-status-card__notice--cancelled,
.event-page .event-coach-attendance-card__notice.attendance-status-card__notice--cancelled{
  display:block!important;
  width:100%!important;
  max-width:none!important;
  box-sizing:border-box!important;
  grid-column:1 / -1!important;
}
.event-page .attendance-status-card__notice.attendance-status-card__notice--cancelled strong,
.event-page .event-coach-attendance-card__notice.attendance-status-card__notice--cancelled strong{
  font-size:16px!important;
  line-height:1.25!important;
  font-weight:800!important;
}
.event-page .attendance-status-card__notice.attendance-status-card__notice--cancelled span,
.event-page .event-coach-attendance-card__notice.attendance-status-card__notice--cancelled span{
  font-size:13px!important;
  line-height:1.4!important;
  font-weight:600!important;
}

/* PATCH 650 - trenérská účast: skutečně plná šířka obsahu a upozornění */
.app-shell.event-page .event-attendance-panel--coach-only .event-coach-attendance-card{
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch!important;
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  box-sizing:border-box!important;
}
.app-shell.event-page .event-attendance-panel--coach-only .event-coach-attendance-card__inner{
  display:flex!important;
  flex-direction:row!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  box-sizing:border-box!important;
}
.app-shell.event-page .event-attendance-panel--coach-only .event-coach-attendance-card__notice{
  display:block!important;
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  align-self:stretch!important;
  box-sizing:border-box!important;
}
@media(max-width:760px){
  .app-shell.event-page .event-attendance-panel--coach-only .event-coach-attendance-card__inner{
    flex-direction:column!important;
    align-items:stretch!important;
    gap:12px!important;
  }
  .app-shell.event-page .event-attendance-panel--coach-only .attendance-status-actions{
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    justify-content:stretch!important;
  }
  .app-shell.event-page .event-attendance-panel--coach-only .attendance-status-actions .app-status-pill{
    width:100%!important;
    max-width:none!important;
    box-sizing:border-box!important;
  }
}

/* PATCH 651 - osobni dochazka: vsechny stavy podle referencniho bloku trenerske ucasti */
.app-shell.event-page .event-attendance-panel--personal{
  padding:20px 22px!important;
  box-sizing:border-box!important;
  overflow:hidden!important;
}
.app-shell.event-page .event-attendance-panel--personal .attendance-child-list{
  margin:0!important;
  padding:0!important;
  display:grid!important;
  gap:18px!important;
  width:100%!important;
}
.app-shell.event-page .event-attendance-panel--personal .event-personal-attendance-card{
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  width:100%!important;
  min-width:0!important;
}
.app-shell.event-page .event-attendance-panel--personal .event-personal-attendance-card__status{
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch!important;
  gap:18px!important;
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  box-sizing:border-box!important;
}
.app-shell.event-page .event-attendance-panel--personal .event-personal-attendance-card__inner{
  display:flex!important;
  flex-direction:row!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:18px!important;
  width:100%!important;
  min-width:0!important;
}
.app-shell.event-page .event-attendance-panel--personal .event-personal-attendance-card__copy{
  display:grid!important;
  gap:4px!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
}
.app-shell.event-page .event-attendance-panel--personal .event-personal-attendance-card__copy > strong{
  margin:0!important;
  padding:0!important;
  font-size:18px!important;
  line-height:1.25!important;
  font-weight:800!important;
  color:var(--app-text,#111827)!important;
}
.app-shell.event-page .event-attendance-panel--personal .event-personal-attendance-card__copy > small{
  margin:0!important;
  padding:0!important;
  font-size:12px!important;
  line-height:1.45!important;
  font-weight:400!important;
  color:var(--app-muted,#64748b)!important;
}
.app-shell.event-page .event-attendance-panel--personal .event-personal-attendance-card__notice,
.app-shell.event-page .event-attendance-panel--personal .event-personal-attendance-card__window{
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  margin:0!important;
  box-sizing:border-box!important;
}
.app-shell.event-page .event-attendance-panel--personal .event-attendance-actions,
.app-shell.event-page .event-attendance-panel--personal .event-attendance-actions--child{
  margin:0!important;
  width:100%!important;
}
.app-shell.event-page .event-attendance-panel--personal .event-personal-attendance-card + .event-attendance-actions--child{
  margin-top:18px!important;
}

@media(max-width:760px){
  .app-shell.event-page .event-attendance-panel--personal{
    padding:16px!important;
  }
  .app-shell.event-page .event-attendance-panel--personal .attendance-child-list{
    gap:16px!important;
  }
  .app-shell.event-page .event-attendance-panel--personal .event-personal-attendance-card__status{
    gap:14px!important;
  }
  .app-shell.event-page .event-attendance-panel--personal .event-personal-attendance-card__inner{
    flex-direction:column!important;
    align-items:stretch!important;
    gap:12px!important;
  }
  .app-shell.event-page .event-attendance-panel--personal .event-personal-attendance-card__copy > strong{
    font-size:17px!important;
  }
  .app-shell.event-page .event-attendance-panel--personal .event-personal-attendance-card__status .attendance-status-actions{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    align-items:stretch!important;
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    gap:8px!important;
  }
  .app-shell.event-page .event-attendance-panel--personal .event-personal-attendance-card__status .attendance-status-actions .app-status-pill{
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    box-sizing:border-box!important;
  }
  .app-shell.event-page .event-attendance-panel--personal .event-personal-attendance-card + .event-attendance-actions--child{
    margin-top:14px!important;
  }
}

/* PATCH 652 - trenérská účast: stav + Změnit stav vedle sebe stejně jako u hráčské účasti */
@media(max-width:760px){
  .app-shell.event-page .event-attendance-panel--coach-only .event-coach-attendance-card .attendance-status-actions{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    align-items:stretch!important;
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    gap:8px!important;
  }
  .app-shell.event-page .event-attendance-panel--coach-only .event-coach-attendance-card .attendance-status-actions .app-status-pill{
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    box-sizing:border-box!important;
  }
  .app-shell.event-page .event-attendance-panel--coach-only .event-coach-attendance-card .attendance-status-actions .btn{
    width:auto!important;
    max-width:none!important;
    margin:0!important;
    white-space:nowrap!important;
  }
}

/* PATCH 658 - heslo uživatele v administraci */
.admin-user-password-fields{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:8px;
  width:100%;
}
.admin-user-password-fields input{width:100%;min-width:0;}
.admin-user-password-actions{display:flex;gap:8px;flex-wrap:wrap;}
@media (max-width:760px){
  .admin-user-password-fields{grid-template-columns:1fr;}
  .admin-user-password-actions{display:grid;grid-template-columns:1fr;}
  .admin-user-password-actions .btn{width:100%;}
}

/* PATCH 659 - prehledna sprava uzivatele v administraci */
body .admin-users-card--users .admin-user-settings-grid,
body .admin-users-card--users .admin-user-links-panel,
body .admin-users-card--users .admin-user-danger-zone{
  grid-column:1 / -1;
  width:100%;
  min-width:0;
  box-sizing:border-box;
}
body .admin-users-card--users .admin-user-settings-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:12px;
}
body .admin-users-card--users .admin-user-settings-card,
body .admin-users-card--users .admin-user-links-panel,
body .admin-users-card--users .admin-user-danger-zone{
  border:1px solid #e2e8f0;
  border-radius:14px;
  background:#f8fafc;
  padding:14px;
}
body .admin-users-card--users .admin-user-settings-card--password{
  grid-column:1 / -1;
}
body .admin-users-card--users .admin-user-settings-card__head{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:2px;
  margin:0 0 12px;
}
body .admin-users-card--users .admin-user-settings-card__head strong{
  color:var(--app-text);
  font-size:13px;
  line-height:1.25;
  font-weight:800;
}
body .admin-users-card--users .admin-user-settings-card__head span{
  color:var(--app-muted);
  font-size:11px;
  line-height:1.3;
  font-weight:600;
}
body .admin-users-card--users .admin-user-settings-card .admin-user-row__role{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto auto!important;
  gap:8px!important;
  align-items:center!important;
  width:100%!important;
  margin:0!important;
}
body .admin-users-card--users .admin-user-settings-card .admin-user-row__role select{
  width:100%!important;
  min-width:0!important;
  height:38px!important;
  min-height:38px!important;
  max-height:none!important;
  padding:0 10px!important;
  border-radius:10px!important;
  font-size:13px!important;
}
body .admin-users-card--users .admin-user-settings-card .admin-user-row__active{
  display:inline-flex!important;
  align-items:center!important;
  width:auto!important;
  height:38px!important;
  min-height:38px!important;
  max-height:none!important;
  padding:0 11px!important;
  border-radius:10px!important;
  white-space:nowrap!important;
}
body .admin-users-card--users .admin-user-settings-card .btn,
body .admin-users-card--users .admin-user-danger-zone .btn{
  height:38px!important;
  min-height:38px!important;
  max-height:none!important;
  padding:0 12px!important;
  border-radius:10px!important;
  font-size:12px!important;
  line-height:1.2!important;
}
body .admin-users-card--users .admin-user-row__permissions,
body .admin-users-card--users .admin-user-row__password{
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch!important;
  gap:10px!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
}
body .admin-users-card--users .admin-user-extra-permissions{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  width:100%;
}
body .admin-users-card--users .admin-user-extra-permissions .check-label{
  display:inline-flex!important;
  align-items:center!important;
  gap:7px!important;
  min-height:36px!important;
  padding:0 11px!important;
  margin:0!important;
  border:1px solid #d9e1ea;
  border-radius:10px;
  background:#fff;
  font-size:12px!important;
  font-weight:750!important;
  white-space:nowrap;
}
body .admin-users-card--users .admin-user-row__permissions > .btn{
  align-self:flex-start;
}
body .admin-users-card--users .admin-user-password-fields{
  gap:8px;
}
body .admin-users-card--users .admin-user-password-fields input{
  height:40px;
  min-height:40px;
  padding:0 11px;
  border-radius:10px;
  box-sizing:border-box;
}
body .admin-users-card--users .admin-user-row__password > .check-label{
  display:flex!important;
  align-items:flex-start!important;
  gap:8px!important;
  margin:0!important;
  padding:10px 11px!important;
  border:1px solid #d9e1ea;
  border-radius:10px;
  background:#fff;
  color:var(--app-text);
  font-size:12px!important;
  line-height:1.35!important;
  font-weight:650!important;
}
body .admin-users-card--users .admin-user-password-actions{
  gap:8px;
}
body .admin-users-card--users .admin-user-links-panel{
  background:#fff;
}
body .admin-users-card--users .admin-user-links-panel .admin-user-row__links{
  gap:8px!important;
  width:100%!important;
}
body .admin-users-card--users .admin-user-links-panel .admin-user-row-link{
  padding:8px!important;
  border:1px solid #e5e7eb;
  border-radius:10px;
  background:#f8fafc;
}
body .admin-users-card--users .admin-user-links-panel .admin-user-row__empty{
  display:block;
  padding:4px 0;
  color:var(--app-muted);
  font-size:12px;
  font-weight:650;
}
body .admin-users-card--users .admin-user-danger-zone{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  border-color:#fecaca;
  background:#fff7f7;
}
body .admin-users-card--users .admin-user-danger-zone .admin-user-settings-card__head{
  margin:0;
}
body .admin-users-card--users .admin-user-danger-zone .admin-user-settings-card__head strong{
  color:#b91c1c;
}
body .admin-users-card--users .admin-user-danger-zone .admin-user-row__delete{
  flex:0 0 auto;
  margin:0!important;
}
body .admin-users-card--users .admin-user-row__identity--contact{
  padding-bottom:2px;
}
@media (max-width:760px){
  body .admin-users-card--users .admin-user-settings-grid{
    grid-template-columns:1fr;
    gap:10px;
  }
  body .admin-users-card--users .admin-user-settings-card--password{
    grid-column:auto;
  }
  body .admin-users-card--users .admin-user-settings-card,
  body .admin-users-card--users .admin-user-links-panel,
  body .admin-users-card--users .admin-user-danger-zone{
    padding:12px;
    border-radius:12px;
  }
  body .admin-users-card--users .admin-user-settings-card .admin-user-row__role{
    grid-template-columns:1fr!important;
  }
  body .admin-users-card--users .admin-user-settings-card .admin-user-row__active,
  body .admin-users-card--users .admin-user-settings-card .admin-user-row__role .btn,
  body .admin-users-card--users .admin-user-row__permissions > .btn{
    width:100%!important;
    justify-content:center!important;
  }
  body .admin-users-card--users .admin-user-extra-permissions{
    display:grid;
    grid-template-columns:1fr 1fr;
  }
  body .admin-users-card--users .admin-user-extra-permissions .check-label{
    width:100%;
    box-sizing:border-box;
    justify-content:flex-start;
  }
  body .admin-users-card--users .admin-user-password-actions{
    display:grid;
    grid-template-columns:1fr;
  }
  body .admin-users-card--users .admin-user-password-actions .btn{
    width:100%!important;
  }
  body .admin-users-card--users .admin-user-danger-zone{
    flex-direction:column;
    align-items:stretch;
  }
  body .admin-users-card--users .admin-user-danger-zone .admin-user-row__delete,
  body .admin-users-card--users .admin-user-danger-zone .btn{
    width:100%!important;
  }
}


/* PATCH 660 - stav automaticke obnovy vsech chatu */
.conversation-refresh-status{
  display:flex;
  justify-content:flex-end;
  align-items:center;
  gap:6px;
  width:100%;
  box-sizing:border-box;
  margin-top:7px;
  padding:0 2px;
  color:var(--ui-muted, #6b7280);
  font-size:11px;
  line-height:1.25;
  font-weight:500;
  text-align:right;
  user-select:none;
}
.conversation-refresh-status__sep{opacity:.55;}
@media (max-width:760px){
  .conversation-refresh-status{font-size:10.5px;margin-top:6px;}
}

/* PATCH 662 - detail bufetu: sraz a manual obsluhy */
.buffet-match-info-head{
  align-items:flex-start;
}
.buffet-match-info-actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:8px;
  flex-wrap:wrap;
  margin-left:auto;
}
.buffet-arrival-warning{
  margin:7px 0 0!important;
  color:#dc2626!important;
  font-size:16px!important;
  line-height:1.25!important;
  font-weight:800!important;
}
.buffet-manual-modal[hidden]{display:none!important;}
.buffet-manual-modal{
  position:fixed;
  inset:0;
  z-index:10050;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:20px;
  background:rgba(15,23,42,.48);
}
.buffet-manual-dialog{
  position:relative;
  width:min(920px,calc(100vw - 40px));
  max-height:min(88vh,820px);
  overflow:auto;
  padding:24px;
  border-radius:20px;
  background:#fff;
  box-shadow:0 22px 60px rgba(15,23,42,.24);
}
.buffet-manual-dialog .app-modal-close{
  position:absolute;
  top:14px;
  right:14px;
  width:42px;
  height:42px;
  border:0;
  border-radius:50%;
  background:#f0f3f7;
  color:var(--ui-black,#111827);
  font-size:26px;
  line-height:1;
  cursor:pointer;
}
.buffet-manual-head{padding-right:52px;margin-bottom:20px;}
.buffet-manual-head h2{margin:0 0 5px;font-size:22px;line-height:1.2;}
.buffet-manual-head p{margin:0;}
.buffet-manual-columns{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
  align-items:start;
}
.buffet-manual-section{
  min-width:0;
  padding:18px;
  border:1px solid var(--app-border,#e1e4e8);
  border-radius:16px;
  background:#f8f9fa;
}
.buffet-manual-section h3{margin:0 0 13px;font-size:18px;line-height:1.2;}
.buffet-manual-list{margin:0;padding-left:22px;display:grid;gap:9px;}
.buffet-manual-list>li{padding-left:3px;line-height:1.42;}
.buffet-manual-list ul{margin:5px 0 0;padding-left:20px;display:grid;gap:3px;}
@media(max-width:760px){
  .buffet-match-info-head{align-items:stretch!important;}
  .buffet-match-info-actions{width:100%;justify-content:stretch;margin-left:0;}
  .buffet-match-info-actions .btn{width:100%;}
  .buffet-manual-modal{padding:14px;align-items:flex-end;}
  .buffet-manual-dialog{width:calc(100vw - 28px);max-height:90vh;padding:20px 16px 18px;border-radius:20px;}
  .buffet-manual-columns{grid-template-columns:1fr;gap:12px;}
  .buffet-manual-section{padding:15px;}
}


/* PATCH 668 - fan dashboard / Bufet: pocet zapasu vpravo v hlavicce */
.dashboard-page .fan-buffet-section > .fan-buffet-section__head{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:12px!important;
  width:100%!important;
  box-sizing:border-box!important;
}
.dashboard-page .fan-buffet-section > .fan-buffet-section__head > .pill{
  margin-left:auto!important;
  flex:0 0 auto!important;
}
\n\n/* PATCH 671 - Bufet dashboardy: osobni hlas + prava cast karty bez rozbiti gridu */
.dashboard-page .fan-buffet-card__side{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:10px;
  min-width:0;
}
.dashboard-page .fan-buffet-card__side .wall-message-card__arrow{
  position:static;
  flex:0 0 auto;
}
.dashboard-page .fan-buffet-own-status{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:0 0 auto;
  min-width:76px;
  padding:6px 10px;
  border:1px solid #dbe1ea;
  border-radius:999px;
  background:#f3f4f6;
  color:#4b5563;
  font-size:.78rem;
  font-weight:800;
  line-height:1;
  white-space:nowrap;
}
.dashboard-page .fan-buffet-own-status.is-yes{
  border-color:#bbf7d0;
  background:#f0fdf4;
  color:#166534;
}
.dashboard-page .fan-buffet-own-status.is-no{
  border-color:#fecaca;
  background:#fef2f2;
  color:#991b1b;
}
.dashboard-page .fan-buffet-own-status.is-unknown{
  border-color:#dbe1ea;
  background:#f3f4f6;
  color:#4b5563;
}
@media (max-width:760px){
  .dashboard-page .fan-buffet-card__side{gap:7px;}
  .dashboard-page .fan-buffet-own-status{
    min-width:68px;
    padding:6px 8px;
    font-size:.74rem;
  }
}

/* PATCH 723 – bufet na obou dashboardech: typografie karet podle Chatů. */
.dashboard-page .fan-buffet-section .buffet-match-card__meta{
  color:var(--app-muted);
}
.dashboard-page .fan-buffet-section .buffet-match-card__status--warning{
  margin:4px 0 0!important;
  font-size:var(--app-font-size-base)!important;
  line-height:var(--ui-line-body)!important;
}
@media(max-width:760px){
  .dashboard-page .fan-buffet-section .buffet-match-card__status--warning{
    font-size:.85rem!important;
    line-height:1.38!important;
  }
}

/* PATCH 732 – společná WhatsApp-like karta náhledu odkazu ve všech chatech. */
.conversation-link-preview{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  width:min(430px,100%);
  min-width:0;
  margin:0 0 7px;
  overflow:hidden;
  border:1px solid #d8e1ea;
  border-radius:10px;
  background:#f4f7fa;
  color:#1f2937!important;
  text-decoration:none!important;
  box-sizing:border-box;
}
.event-comment--mine .conversation-link-preview{
  border-color:#c5d9ed;
  background:#e3f0fc;
}
.conversation-link-preview--image{
  grid-template-columns:94px minmax(0,1fr);
}
.conversation-link-preview__media{
  display:block;
  width:94px;
  min-width:94px;
  height:82px;
  overflow:hidden;
  background:#e2e8f0;
}
.conversation-link-preview__media img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
}
.conversation-link-preview__copy{
  display:flex;
  flex-direction:column;
  justify-content:center;
  min-width:0;
  padding:8px 10px;
  line-height:1.25;
}
.conversation-link-preview__copy strong,
.conversation-link-preview__copy span,
.conversation-link-preview__copy small{
  display:block;
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
}
.conversation-link-preview__copy strong{
  color:#111827;
  font-size:.86rem;
  font-weight:var(--ui-weight-bold);
  white-space:nowrap;
}
.conversation-link-preview__copy span{
  margin-top:2px;
  color:#4b5563;
  font-size:.76rem;
  white-space:nowrap;
}
.conversation-link-preview__copy small{
  margin-top:4px;
  color:#6b7280;
  font-size:.70rem;
  white-space:nowrap;
}
.conversation-link-preview:hover,
.conversation-link-preview:focus-visible{
  border-color:#aebdcb;
  background:#edf2f6;
  text-decoration:none!important;
}
.event-comment--mine .conversation-link-preview:hover,
.event-comment--mine .conversation-link-preview:focus-visible{
  border-color:#a9c7e4;
  background:#dcecf9;
}
.conversation-link-preview.is-loading{
  opacity:.86;
}
@media(max-width:760px){
  .conversation-link-preview--image{
    grid-template-columns:82px minmax(0,1fr);
  }
  .conversation-link-preview__media{
    width:82px;
    min-width:82px;
    height:76px;
  }
  .conversation-link-preview__copy{
    padding:7px 8px;
  }
}


/* PATCH 733 – viditelný stav odesílání a potvrzení uložené zprávy. */
.conversation-compose__send[aria-busy="true"]{
  font-size:0 !important;
  transform:none !important;
  cursor:wait !important;
}
.conversation-compose__send[aria-busy="true"]::after{
  content:"";
  width:17px;
  height:17px;
  border:2px solid rgba(255,255,255,.45);
  border-top-color:#fff;
  border-radius:50%;
  animation:conversation-send-spin .75s linear infinite;
}
@keyframes conversation-send-spin{
  to{transform:rotate(360deg);}
}
.conversation-message-sent{
  flex:0 0 auto;
  color:var(--app-muted,#6b7280);
  font-size:.76rem;
  font-weight:800;
  line-height:1;
  white-space:nowrap;
}
@media (max-width:760px){
  .conversation-message-sent{font-size:.70rem;}
}

/* PATCH 734 – globální stavové hlášky vždy viditelně v modalu */
.app-status-modal{
  position:fixed;
  inset:0;
  z-index:20000;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:20px;
}
.app-status-modal__backdrop{
  position:absolute;
  inset:0;
  background:rgba(0,0,0,.72);
  backdrop-filter:blur(3px);
}
.app-status-modal__dialog{
  position:relative;
  z-index:1;
  box-sizing:border-box;
  width:min(520px,100%);
  max-height:min(82vh,720px);
  overflow:auto;
  display:grid;
  grid-template-columns:52px minmax(0,1fr);
  gap:16px;
  align-items:start;
  padding:24px;
  border:1px solid var(--border);
  border-radius:var(--ui-radius-xl);
  background:#151515;
  color:var(--ui-white);
  box-shadow:0 24px 70px rgba(0,0,0,.48);
}
.app-status-modal__icon{
  width:52px;
  height:52px;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:28px;
  font-weight:900;
  line-height:1;
  border:1px solid currentColor;
}
.app-status-modal--success .app-status-modal__icon{color:#7ee2a0;background:rgba(30,100,54,.28);}
.app-status-modal--error .app-status-modal__icon{color:#ff9a9a;background:rgba(130,35,35,.28);}
.app-status-modal--info .app-status-modal__icon{color:#9ec7ff;background:rgba(30,70,130,.28);}
.app-status-modal__content{min-width:0;padding:3px 30px 0 0;}
.app-status-modal__content h2{margin:0 0 8px;font-size:22px;line-height:1.2;}
.app-status-modal__content p{margin:0;white-space:pre-line;overflow-wrap:anywhere;line-height:1.5;}
.app-status-modal__close{
  position:absolute;
  top:10px;
  right:10px;
  width:38px;
  height:38px;
  border:0;
  border-radius:50%;
  background:transparent;
  color:inherit;
  font-size:30px;
  line-height:1;
  cursor:pointer;
}
.app-status-modal__close:hover,.app-status-modal__close:focus-visible{background:rgba(255,255,255,.08);}
.app-status-modal__confirm{grid-column:1 / -1;justify-self:end;min-width:96px;margin-top:4px;}
body.app-status-modal-open{overflow:hidden;}
@media (max-width:640px){
  .app-status-modal{padding:14px;}
  .app-status-modal__dialog{grid-template-columns:44px minmax(0,1fr);gap:13px;padding:20px 18px 18px;}
  .app-status-modal__icon{width:44px;height:44px;font-size:24px;}
  .app-status-modal__content{padding-right:26px;}
  .app-status-modal__content h2{font-size:20px;}
  .app-status-modal__confirm{width:100%;justify-self:stretch;}
}

/* PATCH 737 – zhlédnutí videí u událostí */
.event-video-view-stat{
  align-self:flex-start;
  margin-top:4px;
}
.event-video-view-stat [data-video-view-count-text]{
  font-weight:var(--ui-weight-black-soft);
}
.event-video-card__youtube-launch{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  margin:0;
  padding:0;
  overflow:hidden;
  border:0;
  background:var(--ui-black);
  cursor:pointer;
  font:inherit;
}
.event-video-card__youtube-launch img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
}
.event-video-card__youtube-launch::after{
  content:'';
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(15,23,42,.04) 0%,rgba(15,23,42,.32) 100%);
  pointer-events:none;
}
.event-video-card__youtube-launch:hover .event-video-card__preview-play,
.event-video-card__youtube-launch:focus-visible .event-video-card__preview-play{
  background:rgba(255,255,255,.28);
  transform:scale(1.04);
}
.event-video-card__youtube-launch:focus-visible{
  outline:3px solid rgba(37,99,235,.42);
  outline-offset:-3px;
}
.event-video-view-modal [data-video-view-summary]{
  margin:0 !important;
  color:var(--ui-muted) !important;
  font-size:var(--ui-font-md) !important;
  line-height:var(--ui-line-body) !important;
}


/* PATCH 738 – vybraná příloha je vidět mezi historií chatu a composerem. */
.event-comment-form .conversation-attachment-preview,
.chat-compose-form .conversation-attachment-preview{
  grid-template-columns:38px minmax(0,1fr) auto;
  gap:10px;
  margin:0 0 7px !important;
  padding:8px 9px;
  border:1px solid var(--app-line,#d7dee8);
  border-radius:10px;
  background:var(--ui-surface-light,#f8fafc);
}
.conversation-attachment-preview__icon{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:38px;
  height:38px;
  border-radius:9px;
  background:#fff;
  border:1px solid var(--app-line,#d7dee8);
  font-size:18px;
  line-height:1;
}
.conversation-attachment-preview__remove{
  width:auto !important;
  height:34px !important;
  min-width:0 !important;
  padding:0 11px !important;
  border-radius:9px !important;
  font-size:12px !important;
  font-weight:800;
  white-space:nowrap;
}
.conversation-attachment-preview.is-uploading .conversation-attachment-preview__icon{
  font-size:0;
}
.conversation-attachment-preview.is-uploading .conversation-attachment-preview__icon::after{
  content:"";
  width:17px;
  height:17px;
  border:2px solid #cbd5e1;
  border-top-color:var(--app-text,#172033);
  border-radius:50%;
  animation:conversation-send-spin .75s linear infinite;
}
.conversation-attachment-preview.is-uploading .conversation-attachment-preview__remove{
  opacity:.55;
  pointer-events:none;
}
@media(max-width:760px){
  .event-comment-form .conversation-attachment-preview,
  .chat-compose-form .conversation-attachment-preview{
    grid-template-columns:34px minmax(0,1fr) auto;
    gap:8px;
    padding:7px 8px;
  }
  .conversation-attachment-preview__icon{width:34px;height:34px;}
  .conversation-attachment-preview__remove{padding:0 9px !important;}
}

/* PATCH 744 – více příloh v jedné zprávě a přehled všech souborů před odesláním. */
.event-comment-form .conversation-attachment-preview--multi,
.chat-compose-form .conversation-attachment-preview--multi{
  display:block;
  padding:7px 8px;
}
.conversation-attachment-preview__list{
  display:grid;
  gap:6px;
}
.conversation-attachment-preview__row{
  display:grid;
  grid-template-columns:38px minmax(0,1fr) auto;
  align-items:center;
  gap:10px;
  min-width:0;
  padding:5px 0;
}
.conversation-attachment-preview__row + .conversation-attachment-preview__row{
  border-top:1px solid var(--app-line,#e2e8f0);
  padding-top:10px;
}
.conversation-attachment-preview--multi.is-uploading .conversation-attachment-preview__icon{
  font-size:18px;
}
.conversation-attachment-preview--multi.is-uploading .conversation-attachment-preview__icon::after{
  display:none;
}
.event-comment-attachments--multi{
  grid-template-columns:repeat(2,minmax(0,1fr));
  width:min(540px,100%);
}
.event-comment-attachments--multi .event-comment-attachment{
  width:100%!important;
  max-width:none!important;
}
.event-comment-attachments--multi .event-comment-attachment--image{
  width:100%!important;
}
.event-comment-attachments--multi .event-comment-attachment__preview{
  height:150px;
  max-height:150px;
  object-fit:cover;
}
@media(max-width:520px){
  .conversation-attachment-preview__row{
    grid-template-columns:34px minmax(0,1fr) auto;
    gap:8px;
  }
  .event-comment-attachments--multi{
    gap:6px;
  }
  .event-comment-attachments--multi .event-comment-attachment__preview{
    height:128px;
    max-height:128px;
  }
}


/* PATCH 746 – Objednávky oblečení */
.clothing-page main{padding-bottom:88px}
.clothing-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;padding-top:28px;padding-bottom:16px}
.clothing-hero h1{margin:14px 0 4px;font-size:clamp(1.7rem,4vw,2.35rem);line-height:1.05}
.clothing-hero p{margin:0}
.clothing-test-badge{display:flex;flex-direction:column;align-items:flex-end;gap:2px;padding:10px 14px;border:1px solid #f0c36a;background:#fff7df;border-radius:14px;color:#7a4c00;white-space:nowrap}
.clothing-test-badge strong{font-size:.78rem;letter-spacing:.06em}.clothing-test-badge span{font-size:.78rem}
.clothing-nav-shell{margin-bottom:18px}.clothing-nav{overflow-x:auto;scrollbar-width:thin}.clothing-nav .admin-primary-nav__item{white-space:nowrap}
.clothing-admin-grid{display:grid;grid-template-columns:minmax(300px,.82fr) minmax(0,1.18fr);gap:18px;align-items:start}
.clothing-single-column{display:grid;gap:18px}
.clothing-form-card,.clothing-list-card,.clothing-summary-card,.clothing-round-picker,.clothing-order-head,.clothing-migration-warning{padding:20px;border-radius:18px}
.clothing-form-card{position:sticky;top:84px}
.clothing-form{display:grid;gap:14px}.clothing-form label,.clothing-round-picker label,.clothing-order-controls label{display:grid;gap:6px;color:#334155;font-size:.86rem;font-weight:700}
.clothing-form input[type="text"],.clothing-form input[type="number"],.clothing-form input[type="date"],.clothing-form input[type="file"],.clothing-form textarea,.clothing-form select,.clothing-round-picker select,.clothing-order-controls select,.clothing-order-controls input{width:100%;box-sizing:border-box;border:1px solid #d8dee6;border-radius:12px;background:#fff;color:#111827;padding:10px 12px;font:inherit;min-height:42px}
.clothing-form textarea{resize:vertical}.clothing-form small,.clothing-round-product-check small,.clothing-check small{font-weight:500;color:#64748b;line-height:1.35}
.clothing-form-preview{display:block;width:120px;height:120px;object-fit:cover;border-radius:14px;border:1px solid #e2e8f0}
.clothing-form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px;align-items:end}
.clothing-fieldset{border:1px solid #e2e8f0;border-radius:14px;padding:12px;display:flex;flex-wrap:wrap;gap:10px}.clothing-fieldset legend{padding:0 6px;font-size:.82rem;font-weight:800;color:#334155}
.clothing-check{display:flex!important;grid-template-columns:none!important;flex-direction:row!important;align-items:center;gap:8px!important;font-weight:700!important}.clothing-check input{width:18px;height:18px;margin:0;accent-color:#111827}.clothing-check--block{min-height:42px}.clothing-check--publish{align-items:flex-start;background:#f8fafc;border:1px solid #e2e8f0;border-radius:14px;padding:12px}.clothing-check--publish span{display:grid;gap:3px}
.clothing-form-actions,.clothing-inline-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.clothing-inline-actions form{margin:0}
.clothing-product-list,.clothing-round-list{display:grid;gap:12px}
.clothing-admin-product{display:grid;grid-template-columns:112px minmax(0,1fr);gap:14px;padding:12px;border:1px solid #e2e8f0;border-radius:16px;background:#fff}.clothing-admin-product.is-inactive{opacity:.65;background:#f8fafc}
.clothing-admin-product__image{width:112px;height:112px;border-radius:14px;overflow:hidden;background:#eef2f5;display:grid;place-items:center;color:#64748b;font-size:.75rem}.clothing-admin-product__image img{width:100%;height:100%;object-fit:cover}
.clothing-admin-product__body{min-width:0;display:grid;align-content:start;gap:8px}.clothing-admin-product__title{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.clothing-admin-product__title strong{font-size:1.05rem;color:#111827}
.clothing-tags{display:flex;flex-wrap:wrap;gap:6px}.clothing-tag{display:inline-flex;align-items:center;padding:4px 8px;border-radius:999px;background:#eef2f7;color:#334155;font-size:.72rem;font-weight:800;line-height:1.1}.clothing-tag--recommended{background:#fff3cd;color:#805b00}.clothing-tag--required{background:#fee2e2;color:#991b1b}.clothing-tag--muted{background:#e2e8f0;color:#64748b}
.clothing-sizes,.clothing-description{margin:0;font-size:.84rem}.clothing-description{line-height:1.45}
.clothing-round-products{display:grid;gap:8px}.clothing-round-product-check{display:flex;align-items:flex-start;gap:9px;padding:9px 10px;border-radius:10px;background:#f8fafc}.clothing-round-product-check input{margin-top:2px;width:18px;height:18px;accent-color:#111827}.clothing-round-product-check span{display:grid;gap:2px}.clothing-round-product-check.is-inactive{opacity:.55}
.clothing-round-card{border:1px solid #e2e8f0;border-radius:16px;padding:14px;display:grid;gap:12px;background:#fff}.clothing-round-card__head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.clothing-round-card__head>div{display:grid;gap:3px}.clothing-round-card__head strong{font-size:1rem;color:#111827}.clothing-round-card__head span:not(.clothing-state){font-size:.8rem;color:#64748b}.clothing-round-card__stats{display:flex;gap:18px;font-size:.82rem;color:#64748b}.clothing-round-card__stats strong{color:#111827}
.clothing-state{display:inline-flex;align-items:center;width:max-content;padding:5px 9px;border-radius:999px;font-size:.72rem;font-weight:900;background:#e2e8f0;color:#475569}.clothing-state--open{background:#dcfce7;color:#166534}.clothing-state--closed{background:#fee2e2;color:#991b1b}.clothing-state--scheduled{background:#dbeafe;color:#1d4ed8}.clothing-state--draft{background:#e2e8f0;color:#475569}
.clothing-round-picker{display:flex;justify-content:space-between;align-items:end;gap:18px}.clothing-round-picker h2,.clothing-round-picker p{margin-top:0}.clothing-round-picker form{min-width:min(360px,100%)}
.clothing-order-head{display:flex;justify-content:space-between;gap:18px;align-items:center}.clothing-order-head h2{margin:8px 0 4px}.clothing-order-head p{margin:0}.clothing-order-user{display:grid;text-align:right}.clothing-order-user span,.clothing-order-user small{color:#64748b;font-size:.75rem}.clothing-order-user strong{font-size:1rem}
.clothing-migration-warning{border:1px solid #f3ca76;background:#fff8e7}.clothing-migration-warning h2{margin-top:0}.clothing-migration-warning p{margin-bottom:0}
.clothing-shop-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.clothing-shop-card{padding:0;overflow:hidden;border-radius:18px}.clothing-shop-card__image{aspect-ratio:4/3;background:#eef2f5;display:grid;place-items:center;color:#64748b;font-size:.8rem}.clothing-shop-card__image img{width:100%;height:100%;object-fit:cover}.clothing-shop-card__body{padding:15px;display:grid;gap:10px}.clothing-shop-card__body h3{margin:0;font-size:1.06rem}.clothing-shop-card__body p{margin:0;font-size:.84rem;line-height:1.45}.clothing-order-controls{display:grid;grid-template-columns:1.2fr .8fr;gap:10px}.clothing-order-submit{position:sticky;bottom:72px;margin-top:16px;padding:12px 14px;background:rgba(255,255,255,.96);backdrop-filter:blur(8px);border:1px solid #e2e8f0;border-radius:16px;display:flex;align-items:center;justify-content:space-between;gap:12px;z-index:5}
.clothing-summary-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) auto;gap:12px;align-items:stretch}.clothing-summary-stats>.app-surface{padding:14px;border-radius:16px;display:grid;align-content:center}.clothing-summary-stats strong{font-size:1.45rem;line-height:1}.clothing-summary-stats span{margin-top:4px;color:#64748b;font-size:.78rem}.clothing-csv-button{display:flex;align-items:center;justify-content:center}.clothing-csv-button.is-disabled{pointer-events:none;opacity:.45}
.clothing-table-wrap{overflow:auto}.clothing-table{width:100%;border-collapse:collapse;min-width:620px}.clothing-table th,.clothing-table td{padding:10px 9px;border-bottom:1px solid #e2e8f0;text-align:left;font-size:.82rem;vertical-align:top}.clothing-table th{color:#64748b;font-size:.72rem;text-transform:uppercase;letter-spacing:.04em}.clothing-table td small{display:block;color:#64748b;margin-top:2px}.clothing-table tbody tr:last-child td{border-bottom:0}
@media(max-width:980px){.clothing-admin-grid{grid-template-columns:1fr}.clothing-form-card{position:static}.clothing-shop-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.clothing-summary-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.clothing-csv-button{min-height:62px}}
@media(max-width:640px){.clothing-hero{align-items:flex-start;flex-direction:column}.clothing-test-badge{align-items:flex-start}.clothing-form-card,.clothing-list-card,.clothing-summary-card,.clothing-round-picker,.clothing-order-head,.clothing-migration-warning{padding:14px}.clothing-form-row{grid-template-columns:1fr}.clothing-admin-product{grid-template-columns:82px minmax(0,1fr)}.clothing-admin-product__image{width:82px;height:82px}.clothing-round-card__head,.clothing-round-picker,.clothing-order-head{align-items:stretch;flex-direction:column}.clothing-order-user{text-align:left}.clothing-shop-grid{grid-template-columns:1fr}.clothing-order-submit{align-items:stretch;flex-direction:column;bottom:70px}.clothing-summary-stats{grid-template-columns:1fr 1fr}.clothing-csv-button{grid-column:1/-1;min-height:48px}.clothing-order-controls{grid-template-columns:1fr 110px}}

/* PATCH 747 – Objednávky oblečení: galerie produktu, odkaz dodavatele a test trenéra */
.clothing-form input[type="url"]{width:100%;box-sizing:border-box;border:1px solid #d8dee6;border-radius:12px;background:#fff;color:#111827;padding:10px 12px;font:inherit;min-height:42px}
.clothing-form-images{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
.clothing-form-image{display:grid!important;gap:6px!important;padding:8px;border:1px solid #e2e8f0;border-radius:12px;background:#f8fafc;font-weight:600!important;min-width:0}
.clothing-form-image img{width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:9px;background:#eef2f5}
.clothing-form-image>span{display:flex;align-items:center;gap:6px;font-size:.78rem;color:#991b1b}
.clothing-form-image>span input{width:16px;height:16px;margin:0;accent-color:#b91c1c}
.clothing-form-image small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.68rem;color:#64748b}
.clothing-shop-gallery{background:#eef2f5}
.clothing-shop-thumbs{display:flex;gap:7px;padding:8px;background:#fff;overflow-x:auto;border-top:1px solid #e2e8f0}
.clothing-shop-thumb{flex:0 0 54px;width:54px;height:42px;border:2px solid transparent;border-radius:8px;padding:0;overflow:hidden;background:#eef2f5;cursor:pointer}
.clothing-shop-thumb.is-active{border-color:#111827}
.clothing-shop-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.clothing-source-link{width:max-content;max-width:100%;box-sizing:border-box}
@media(max-width:640px){.clothing-form-images{grid-template-columns:repeat(2,minmax(0,1fr))}.clothing-shop-thumb{flex-basis:48px;width:48px;height:38px}}

/* PATCH 747 – akce v hlavičce testovacího modulu oblečení */
.clothing-hero-actions{display:flex;align-items:flex-end;justify-content:flex-end;gap:10px;flex-wrap:wrap}
@media (max-width:720px){.clothing-hero-actions{width:100%;align-items:stretch;justify-content:flex-start}.clothing-hero-actions>.btn{width:100%}}

/* PATCH 748 - clothing products responsive layout + gallery modal */
.clothing-products-admin{gap:18px}
.clothing-product-editor{padding:0;border-radius:18px;overflow:hidden}
.clothing-product-editor__summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 20px;cursor:pointer;list-style:none;user-select:none}
.clothing-product-editor__summary::-webkit-details-marker{display:none}
.clothing-product-editor__summary h2{margin:0 0 4px}
.clothing-product-editor__summary p{margin:0}
.clothing-product-editor__toggle{flex:0 0 auto;width:34px;height:34px;border-radius:50%;background:#f1f5f9;position:relative}
.clothing-product-editor__toggle:before,.clothing-product-editor__toggle:after{content:"";position:absolute;left:50%;top:50%;width:14px;height:2px;background:#111827;border-radius:999px;transform:translate(-50%,-50%)}
.clothing-product-editor__toggle:after{transform:translate(-50%,-50%) rotate(90deg);transition:transform .18s ease}
.clothing-product-editor[open] .clothing-product-editor__toggle:after{transform:translate(-50%,-50%) rotate(0)}
.clothing-product-editor__body{border-top:1px solid #e2e8f0;padding:20px}
.clothing-product-editor__note{margin:0 0 14px}
.clothing-list-card{padding:20px;border-radius:18px}
.clothing-product-list{display:grid;gap:14px}
.clothing-admin-product{grid-template-columns:minmax(220px,280px) minmax(0,1fr);gap:20px;padding:14px;align-items:start}
.clothing-admin-product__image{width:100%;height:auto;aspect-ratio:4/3;border:0;padding:0;position:relative;cursor:pointer;overflow:hidden}
button.clothing-admin-product__image{appearance:none;text-align:inherit}
.clothing-admin-product__image img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .18s ease}
.clothing-gallery-opener:hover img{transform:scale(1.02)}
.clothing-photo-count{position:absolute;right:9px;bottom:9px;padding:5px 8px;border-radius:999px;background:rgba(17,24,39,.84);color:#fff;font-size:.72rem;font-weight:800;line-height:1}
.clothing-admin-product__body{gap:10px;padding:3px 0}
.clothing-description-toggle{appearance:none;border:0;background:transparent;color:#475569;padding:0;width:max-content;font:inherit;font-size:.82rem;font-weight:800;cursor:pointer;text-decoration:underline;text-underline-offset:3px}
.clothing-description-toggle:hover{color:#111827}
.clothing-description-wrap{padding-top:2px}
.clothing-description-wrap[hidden]{display:none!important}
.clothing-description{margin:0;max-width:780px}

.clothing-shop-card__image{width:100%;border:0;padding:0;position:relative;cursor:pointer;overflow:hidden;appearance:none;text-align:inherit}
button.clothing-shop-card__image{display:grid}
.clothing-shop-card__image img{transition:transform .18s ease}
.clothing-shop-card__body{align-content:start}
.clothing-order-controls{display:grid;grid-template-columns:minmax(0,1fr) 112px;gap:10px;align-items:center}
.clothing-order-controls select,.clothing-quantity-control input{width:100%;box-sizing:border-box;border:1px solid #d8dee6;border-radius:12px;background:#fff;color:#111827;padding:10px 12px;font:inherit;min-height:42px}
.clothing-quantity-control{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:7px}
.clothing-quantity-control span{font-size:.82rem;font-weight:800;color:#475569}

.clothing-gallery-is-open{overflow:hidden}
.clothing-gallery-modal[hidden]{display:none!important}
.clothing-gallery-modal{position:fixed;inset:0;z-index:10000;display:grid;place-items:center;padding:18px}
.clothing-gallery-modal__backdrop{position:absolute;inset:0;background:rgba(0,0,0,.82)}
.clothing-gallery-modal__dialog{position:relative;z-index:1;width:min(1100px,96vw);max-height:94vh;background:#111827;border:1px solid rgba(255,255,255,.16);border-radius:18px;overflow:hidden;box-shadow:0 24px 70px rgba(0,0,0,.45);display:grid;grid-template-rows:auto minmax(0,1fr) auto}
.clothing-gallery-modal__head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;color:#fff;background:#0b0f16}
.clothing-gallery-modal__head strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.clothing-gallery-modal__close{width:38px;height:38px;border:0;border-radius:50%;background:rgba(255,255,255,.12);color:#fff;font-size:1.7rem;line-height:1;cursor:pointer}
.clothing-gallery-modal__stage{position:relative;display:grid;place-items:center;min-height:280px;background:#05070a;overflow:hidden}
.clothing-gallery-modal__stage img{display:block;max-width:100%;max-height:calc(94vh - 112px);width:auto;height:auto;object-fit:contain}
.clothing-gallery-modal__nav{position:absolute;top:50%;transform:translateY(-50%);z-index:2;width:48px;height:60px;border:0;border-radius:12px;background:rgba(0,0,0,.52);color:#fff;font-size:2.4rem;line-height:1;cursor:pointer}
.clothing-gallery-modal__nav--prev{left:12px}.clothing-gallery-modal__nav--next{right:12px}
.clothing-gallery-modal__counter{padding:8px 14px;text-align:center;background:#0b0f16;color:#cbd5e1;font-size:.8rem;font-weight:800}

@media(max-width:980px){
  .clothing-admin-product{grid-template-columns:minmax(180px,220px) minmax(0,1fr);gap:16px}
}
@media(max-width:640px){
  .clothing-product-editor__summary{padding:15px 14px;align-items:flex-start}
  .clothing-product-editor__body{padding:14px}
  .clothing-list-card{padding:14px}
  .clothing-admin-product{grid-template-columns:1fr;gap:12px;padding:10px}
  .clothing-admin-product__image{width:100%;aspect-ratio:4/3}
  .clothing-admin-product__body{padding:0 2px 2px}
  .clothing-admin-product__title strong{font-size:1rem}
  .clothing-inline-actions{gap:6px}
  .clothing-inline-actions .btn{flex:1 1 auto;text-align:center;justify-content:center}
  .clothing-inline-actions form{flex:1 1 auto}.clothing-inline-actions form .btn{width:100%}
  .clothing-order-controls{grid-template-columns:minmax(0,1fr) 105px;gap:8px}
  .clothing-quantity-control{gap:5px}
  .clothing-gallery-modal{padding:0}
  .clothing-gallery-modal__dialog{width:100vw;max-height:100dvh;height:100dvh;border-radius:0;border:0}
  .clothing-gallery-modal__stage{min-height:0}
  .clothing-gallery-modal__stage img{max-height:calc(100dvh - 108px);max-width:100vw}
  .clothing-gallery-modal__nav{width:42px;height:54px;border-radius:10px;font-size:2rem}
  .clothing-gallery-modal__nav--prev{left:7px}.clothing-gallery-modal__nav--next{right:7px}
}


/* PATCH 749 – přehled vlastních objednávek oblečení a mazání jednotlivých položek */
.clothing-my-orders{padding:20px;border-radius:18px;display:grid;gap:14px}
.clothing-my-orders .app-section-head{margin:0}
.clothing-my-orders__rounds{display:grid;gap:12px}
.clothing-my-orders__round{border:1px solid #e2e8f0;border-radius:15px;background:#fff;overflow:hidden}
.clothing-my-orders__head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:13px 14px;background:#f8fafc;border-bottom:1px solid #e2e8f0}
.clothing-my-orders__head h3{margin:6px 0 2px;font-size:1rem}.clothing-my-orders__head p{margin:0}.clothing-my-orders__head>small{max-width:330px;color:#64748b;text-align:right;line-height:1.35}
.clothing-my-orders__items{display:grid}
.clothing-my-orders__item{display:grid;grid-template-columns:minmax(220px,1fr) 110px 100px auto;gap:12px;align-items:center;padding:11px 14px}
.clothing-my-orders__item+.clothing-my-orders__item{border-top:1px solid #edf1f5}
.clothing-my-orders__item>div:not(.clothing-my-orders__product):not(.clothing-my-orders__locked){display:grid;gap:2px}.clothing-my-orders__item>div>span{font-size:.7rem;color:#64748b;text-transform:uppercase;letter-spacing:.03em}
.clothing-my-orders__product{min-width:0}.clothing-my-orders__product strong{display:block;overflow-wrap:anywhere}
.clothing-my-orders__remove{margin:0;justify-self:end}.clothing-my-orders__locked{justify-self:end;color:#64748b;font-size:.78rem;font-weight:700}
.clothing-table td form{margin:0}
@media(max-width:720px){
  .clothing-my-orders{padding:14px}
  .clothing-my-orders__head{flex-direction:column}.clothing-my-orders__head>small{text-align:left;max-width:none}
  .clothing-my-orders__item{grid-template-columns:minmax(0,1fr) auto auto;gap:8px 12px;align-items:end}
  .clothing-my-orders__product{grid-column:1/-1}
  .clothing-my-orders__remove,.clothing-my-orders__locked{justify-self:end}
}

/* PATCH 750 - obleceni: stav aktualni objednavky a kompaktni ulozeni */
.clothing-shop-card--ordered{background:#f2fbf4;border-color:#b9dfc1;box-shadow:0 0 0 1px rgba(34,197,94,.08)}
.clothing-current-order-badge{display:inline-flex;align-items:center;width:max-content;max-width:100%;padding:5px 9px;border-radius:999px;background:#dcfce7;color:#166534;font-size:.72rem;font-weight:800;line-height:1.2}
.clothing-description-toggle{font-weight:400}
.clothing-order-submit{position:static;bottom:auto;margin-top:16px;padding:0;background:transparent;backdrop-filter:none;border:0;border-radius:0;display:block;z-index:auto}
.clothing-order-submit .btn{width:100%;min-height:54px;font-size:1rem}
.clothing-my-orders__edit-note{margin-top:4px!important}
@media(max-width:640px){.clothing-order-submit{margin-top:14px}.clothing-order-submit .btn{min-height:52px}}

/* PATCH 751 - obleceni: odlehcena a prehlednejsi produktova karta */
.clothing-shop-card{border-radius:15px;border:1px solid #e2e8f0;box-shadow:none}
.clothing-shop-card--ordered{background:#f8fdf9;border-color:#cce8d2;box-shadow:none}
.clothing-shop-card__image{background:#fff}
.clothing-shop-card__image img{object-fit:contain;background:#fff}
.clothing-current-order-badge{position:absolute;left:10px;top:10px;z-index:2;padding:4px 8px;background:rgba(22,101,52,.92);color:#fff;border-radius:999px;font-size:.67rem;font-weight:800;line-height:1.15;box-shadow:0 2px 8px rgba(0,0,0,.12)}
.clothing-shop-card__body{padding:12px 13px 13px;gap:7px}
.clothing-shop-card__body h3{font-size:1rem;line-height:1.28;margin:0}
.clothing-shop-card__body .clothing-tags{gap:5px}
.clothing-shop-card__body .clothing-tag{padding:3px 7px;font-size:.67rem;line-height:1.15}
.clothing-card-links{display:flex;align-items:center;flex-wrap:wrap;gap:5px 12px;margin-top:1px}
.clothing-description-toggle,.clothing-source-link{appearance:none;border:0;background:transparent;padding:0;color:#475569;font:inherit;font-size:.78rem;font-weight:400;line-height:1.3;text-decoration:underline;text-underline-offset:3px;cursor:pointer;width:auto;min-height:0}
a.clothing-source-link{display:inline;color:#475569}
.clothing-description-toggle:hover,.clothing-source-link:hover{color:#111827}
.clothing-description-wrap{padding-top:2px}
.clothing-description{font-size:.8rem;line-height:1.42}
.clothing-order-controls{margin-top:3px;grid-template-columns:minmax(0,1fr) 102px;gap:7px}
.clothing-order-controls select,.clothing-quantity-control input{min-height:39px;padding:8px 10px;border-radius:10px}
.clothing-quantity-control{gap:5px}
.clothing-quantity-control span{font-size:.76rem}
@media(max-width:640px){
  .clothing-shop-card{border-radius:14px}
  .clothing-shop-card__body{padding:11px 12px 12px;gap:6px}
  .clothing-shop-card__body h3{font-size:.98rem}
  .clothing-current-order-badge{left:8px;top:8px;font-size:.65rem;padding:4px 7px}
  .clothing-photo-count{right:8px;bottom:8px}
  .clothing-order-controls{grid-template-columns:minmax(0,1fr) 94px;gap:6px}
  .clothing-order-controls select,.clothing-quantity-control input{min-height:38px;padding:7px 9px}
}
