:root{--orange:#f97316;--orange-dark:#c2410c;--black:#0c0c0d;--text:#18181b;--muted:#71717a;--line:#e4e4e7;--bg:#f4f4f5;--green:#166534;--red:#b91c1c;--shadow:0 10px 32px rgba(24,24,27,.07);--radius-s:8px;--radius-m:12px;--radius-l:18px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--surface:#fff;--surface-2:#fafafa;--text-2:#52525b;--type-training:var(--orange);--type-game:var(--orange);--type-custom:#7c3aed;--fs-xs:12px;--fs-s:13px;--fs-m:15px;--fs-l:18px}*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--text);background:radial-gradient(circle at 85% -10%,#fff1e7 0,transparent 32%),var(--bg)}body{min-height:100vh}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}.splash{min-height:100vh;display:grid;place-content:center;gap:14px;text-align:center;background:var(--black);color:white;letter-spacing:.08em}.spinner{width:36px;height:36px;margin:auto;border:3px solid #3f3f46;border-top-color:var(--orange);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.auth-screen{min-height:100vh;padding:42px 18px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:22px}.auth-brand{display:flex;align-items:center;gap:14px}.auth-brand h1{margin:0;font-size:24px;font-style:italic;letter-spacing:.11em}.auth-brand h1 span{color:var(--orange)}.auth-brand p{margin:3px 0 0;color:var(--muted);font-size:12px}.ball-mark,.admin-mark{width:46px;height:46px;border-radius:14px;background:var(--black);color:var(--orange);display:grid;place-items:center;font-size:28px}.admin-mark{color:white;background:var(--orange)}.auth-card{width:min(100%,470px)}.auth-copy h2{margin:4px 0 6px;font-size:28px}.auth-copy p{margin:0 0 18px;color:var(--muted);font-size:14px;line-height:1.45}.auth-tabs{display:grid;grid-template-columns:1fr 1fr;gap:4px;background:#f4f4f5;padding:4px;border-radius:11px;margin-bottom:20px}.auth-tabs button{border:0;background:transparent;padding:10px;border-radius:8px;font-weight:700;color:var(--muted)}.auth-tabs button.active{background:white;color:var(--text);box-shadow:0 1px 4px rgba(0,0,0,.08)}.auth-form>.field+.field{margin-top:12px}.form-grid.compact{margin-top:12px}.panel{background:white;border:1px solid var(--line);border-radius:18px;padding:20px;box-shadow:var(--shadow)}.eyebrow{display:inline-block;font-size:10px;font-weight:950;letter-spacing:.16em;color:#a1a1aa}.eyebrow.orange{color:var(--orange-dark)}.field{display:flex;flex-direction:column;gap:6px}.field>span{font-size:10px;color:var(--muted);font-weight:900;text-transform:uppercase;letter-spacing:.06em}.field input,.field select{width:100%;padding:11px 12px;border:1px solid #d4d4d8;border-radius:10px;background:#fafafa;outline:none;transition:.15s}.field input:focus,.field select:focus{border-color:var(--orange);background:white;box-shadow:0 0 0 3px rgba(249,115,22,.1)}.primary-button,.secondary-button,.text-button{border:0;border-radius:11px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;gap:8px}.primary-button{width:100%;min-height:46px;margin-top:18px;padding:11px 16px;background:var(--orange);color:white;text-transform:none;letter-spacing:0}.primary-button:hover{background:var(--orange-dark)}.secondary-button{padding:10px 13px;background:#27272a;color:white}.secondary-button.full{width:100%;margin-top:14px}.text-button{background:transparent;color:var(--orange-dark);padding:7px}.alert{border-radius:10px;padding:10px 12px;font-size:12px;font-weight:750;margin:12px 0}.alert--error{background:#fef2f2;border:1px solid #fecaca;color:var(--red)}.app-shell{min-height:100vh}.topbar{height:64px;position:sticky;top:0;z-index:30;background:rgba(12,12,13,.97);border-bottom:3px solid var(--orange);color:white;backdrop-filter:blur(14px)}.topbar-inner{height:100%;max-width:1160px;margin:0 auto;padding:0 24px;display:flex;align-items:center;gap:18px}.brand{border:0;background:transparent;color:white;font-size:20px;font-weight:950;font-style:italic;letter-spacing:.11em}.brand span{color:var(--orange)}.menu-button{display:none;border:0;background:transparent;color:var(--orange);padding:7px;border-radius:9px}.team-title{display:flex;flex-direction:column;min-width:0;border-left:1px solid #3f3f46;padding-left:16px}.team-title strong{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:300px}.team-title span{font-size:10px;color:#a1a1aa;text-transform:uppercase;font-weight:850;letter-spacing:.08em}.desktop-nav{margin-left:auto;display:flex;align-items:center;gap:7px}.desktop-nav button{width:40px;height:40px;border:1px solid transparent;background:transparent;color:#a1a1aa;border-radius:10px;display:grid;place-items:center}.desktop-nav button:hover{background:#1f1f22;color:white}.desktop-nav button.active{background:#27272a;color:white;border-color:#3f3f46}.desktop-nav .nav-label{display:none}.main-area{min-height:calc(100vh - 64px)}.page-content{width:min(100% - 32px,1060px);margin:0 auto;padding:36px 0 72px}.page-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:24px}.page-heading h2{margin:4px 0;font-size:clamp(31px,5vw,48px);line-height:.98;text-transform:none;font-style:normal;font-weight:800;letter-spacing:-.035em}.page-heading p{margin:2px 0 0;color:var(--muted);font-size:14px}.icon-button{width:36px;height:36px;border:1px solid var(--line);border-radius:10px;background:white;color:#52525b;display:inline-grid;place-items:center}.icon-button:hover{border-color:#fdba74;color:var(--orange-dark)}.icon-button.danger:hover{border-color:#fecaca;color:#dc2626;background:#fef2f2}.icon-button.small{width:30px;height:30px}.schedule-section{display:grid;gap:10px;margin:26px 0 34px}.schedule-section--muted{opacity:.72}.section-label{font-size:11px;color:var(--muted);font-weight:900;text-transform:uppercase;letter-spacing:.12em}.event-card{background:white;border:1px solid var(--line);border-radius:16px;overflow:hidden;box-shadow:0 1px 2px rgba(0,0,0,.03)}.event-card--active{border:2px solid var(--orange);box-shadow:0 10px 30px rgba(249,115,22,.1)}.event-main{display:grid;grid-template-columns:78px minmax(0,1fr) auto;align-items:center;padding:14px 16px}.event-card--active .event-main{background:#fff7ed}.event-date{min-height:56px;display:flex;flex-direction:column;align-items:center;justify-content:center;border-right:1px solid var(--line);padding-right:14px;margin-right:16px}.event-date span{font-size:10px;font-weight:900;color:var(--muted);text-transform:uppercase}.event-date strong{font-size:18px;color:var(--orange-dark)}.event-date--active{border-color:#fed7aa}.event-date--active span{color:var(--orange-dark)}.event-date--active strong{color:var(--black)}.event-copy{min-width:0}.event-copy h3{margin:2px 0 5px;font-size:17px;line-height:1.15}.event-kicker{font-size:10px;color:#a1a1aa;text-transform:uppercase;font-weight:850;letter-spacing:.05em}.event-location{display:flex;align-items:center;gap:5px;color:var(--muted);font-size:12px;min-width:0}.event-location span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.status-pill{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:5px 9px;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}.status-pill--active{color:#9a3412;background:#ffedd5}.status-pill--upcoming{color:#3f3f46;background:#f4f4f5}.status-pill--completed{color:#52525b;background:#e4e4e7}.empty{padding:28px;text-align:center;color:var(--muted);border:1px dashed #d4d4d8;border-radius:14px;background:rgba(255,255,255,.65)}.empty.small{padding:16px}.count-badge{min-width:28px;height:28px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:#ffedd5;color:#9a3412;font-size:12px;font-weight:900}.count-badge.large{min-width:44px;height:44px;font-size:15px}.players-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.player-card{display:flex;align-items:center;gap:13px;background:white;border:1px solid var(--line);border-radius:15px;padding:14px;box-shadow:0 1px 2px rgba(0,0,0,.03)}.avatar{width:46px;height:46px;flex:none;border-radius:50%;display:grid;place-items:center;background:var(--black);color:var(--orange);font-weight:950;font-size:13px}.player-copy{min-width:0}.player-copy h3{margin:0 0 5px;font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.player-meta{display:flex;gap:6px;flex-wrap:wrap}.player-meta span,.you-badge{font-size:10px;font-weight:850;background:#f4f4f5;border-radius:999px;padding:4px 7px;color:#52525b}.you-badge{margin-left:auto;color:#9a3412;background:#ffedd5}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px}.panel-heading h3{margin:3px 0 0;font-size:20px}.event-form{margin-bottom:20px}.segmented{display:grid;grid-template-columns:1fr 1fr;gap:5px;background:#f4f4f5;padding:4px;border-radius:12px;margin-bottom:18px}.segmented button{border:0;background:transparent;border-radius:9px;padding:10px;font-size:12px;font-weight:700;color:var(--muted);text-transform:none}.segmented button.active{background:var(--black);color:white}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.field--wide{grid-column:1/-1}.manage-list{display:grid;gap:8px}.manage-row{display:grid;grid-template-columns:84px minmax(0,1fr) auto auto;gap:12px;align-items:center;padding:11px 12px;background:#fafafa;border:1px solid #f0f0f1;border-radius:12px}.manage-date{display:flex;flex-direction:column;border-right:1px solid var(--line)}.manage-date strong{font-size:13px;text-transform:uppercase}.manage-date span{font-size:11px;color:var(--orange-dark);font-weight:850}.manage-copy{min-width:0;display:flex;flex-direction:column}.manage-copy strong,.manage-copy span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.manage-copy strong{font-size:14px}.manage-copy span{font-size:11px;color:var(--muted);margin-top:2px}.manage-actions{display:flex;gap:6px}.backdrop{position:fixed;inset:0;z-index:50;border:0;background:rgba(0,0,0,.55);backdrop-filter:blur(4px)}.drawer{position:fixed;z-index:60;top:0;bottom:0;left:0;width:min(82vw,300px);background:var(--black);color:white;padding:14px;transform:translateX(-100%);transition:transform .24s ease;box-shadow:20px 0 50px rgba(0,0,0,.3);display:flex;flex-direction:column}.drawer--open{transform:translateX(0)}.drawer-head{min-height:54px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #27272a;color:var(--orange);font-size:12px;font-weight:900;margin-bottom:12px}.drawer-head button{border:0;background:transparent;color:#a1a1aa}.drawer>button{width:100%;border:0;background:transparent;color:#a1a1aa;display:flex;align-items:center;gap:10px;padding:12px;border-radius:10px;font-weight:850;text-align:left}.drawer>button.active{background:#27272a;color:white}.drawer .nav-label{display:inline}.drawer-spacer{flex:1}.admin-auth .auth-card h2{margin:5px 0}.admin-top{height:64px;background:var(--black);color:white;border-bottom:3px solid var(--orange)}.admin-top-inner{height:100%;max-width:1160px;margin:0 auto;padding:0 24px;display:flex;align-items:center;justify-content:space-between}.brand-static{font-size:19px;font-weight:950;font-style:italic;letter-spacing:.1em}.brand-static span{color:var(--orange)}.brand-static small{font-size:9px;color:#a1a1aa;font-style:normal}.create-team{margin-bottom:22px}.teams-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.team-card{background:white;border:1px solid var(--line);border-radius:17px;padding:18px;box-shadow:0 5px 20px rgba(24,24,27,.04)}.team-card--disabled{opacity:.62}.team-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.team-card h3{font-size:20px;margin:4px 0 0}.team-stats{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:16px 0}.team-stats>div{background:#fafafa;border:1px solid #f0f0f1;border-radius:12px;padding:11px;display:flex;flex-direction:column}.team-stats strong{font-size:20px}.team-stats span{font-size:10px;color:var(--muted);text-transform:uppercase;font-weight:850}.team-info{display:grid;gap:12px}.team-info>div{display:flex;flex-direction:column;gap:4px}.team-info>div>span{font-size:10px;color:var(--muted);text-transform:uppercase;font-weight:900}.team-info small{color:var(--muted)}.code-line{display:flex;align-items:center;gap:6px}.code-line code{flex:1;background:#18181b;color:#fdba74;border-radius:9px;padding:8px 10px;font-weight:900;letter-spacing:.1em}.admin-system>.page-heading{margin-bottom:24px}@media(max-width:760px){.topbar{height:58px}.topbar-inner{padding:0 12px;gap:10px}.menu-button{display:inline-flex}.desktop-nav{display:none}.brand{font-size:18px}.team-title{margin-left:auto;border-left:0;padding-left:0;text-align:right}.team-title strong{max-width:150px}.page-content{width:min(100% - 22px,1060px);padding:24px 0 52px}.page-heading{align-items:center}.page-heading h2{font-size:32px}.page-heading p{font-size:12px}.event-main{grid-template-columns:62px minmax(0,1fr);padding:11px 10px}.event-date{min-height:52px;padding-right:10px;margin-right:10px}.event-copy h3{font-size:14px}.event-main>.status-pill{display:none}.players-grid,.teams-grid{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.field--wide{grid-column:auto}.manage-row{grid-template-columns:62px minmax(0,1fr) auto;gap:8px}.manage-row>.status-pill{display:none}.manage-actions{grid-column:3;grid-row:1}.admin-top-inner{padding:0 12px}.auth-screen{justify-content:flex-start;padding-top:32px}}@media(max-width:440px){.panel{padding:15px;border-radius:14px}.page-heading p{display:none}.team-title span{display:none}.manage-row{padding:9px}.auth-brand{align-self:flex-start;max-width:470px;width:100%;margin:auto auto 0}.auth-card{margin-bottom:auto}}

/* v6: many-to-many teams/coaches/events */
.team-tags{display:flex;gap:5px;flex-wrap:wrap;margin-top:7px}.team-tags span{font-size:9px;font-weight:900;letter-spacing:.03em;color:#9a3412;background:#ffedd5;border:1px solid #fed7aa;border-radius:999px;padding:3px 6px}.field-group{margin:16px 0}.field-group-label{display:block;font-size:10px;color:var(--muted);font-weight:900;text-transform:uppercase;letter-spacing:.06em;margin-bottom:8px}.team-check-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.team-check{display:flex;align-items:center;gap:9px;padding:10px 11px;border:1px solid var(--line);background:#fafafa;border-radius:11px;cursor:pointer}.team-check:has(input:checked){border-color:#fdba74;background:#fff7ed}.team-check input{width:17px;height:17px;accent-color:var(--orange);flex:none}.team-check span{display:flex;flex-direction:column;min-width:0}.team-check strong{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.team-check small{font-size:9px;color:var(--muted);margin-top:2px}.invite-panel{margin-bottom:20px}.panel-help{margin:-8px 0 14px;color:var(--muted);font-size:12px;line-height:1.45}.invite-list{display:grid;gap:8px}.invite-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:11px 12px;border:1px solid #f0f0f1;background:#fafafa;border-radius:12px}.invite-row>div{display:flex;flex-direction:column;min-width:0}.invite-row strong{font-size:13px}.invite-row small{font-size:10px;color:var(--muted);margin-top:2px;letter-spacing:.08em}.invite-row .secondary-button{font-size:11px;padding:8px 10px;white-space:nowrap}.admin-create-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:16px;align-items:start;margin-bottom:30px}.admin-create-grid .create-team,.admin-create-grid .create-coach{margin:0}.admin-section{margin-top:34px}.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-bottom:13px}.section-head h3{font-size:23px;margin:3px 0 0}.coaches-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.coach-card{background:white;border:1px solid var(--line);border-radius:17px;padding:18px;box-shadow:0 5px 20px rgba(24,24,27,.04)}.coach-card--disabled{opacity:.62}.coach-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px}.coach-card-head h3{font-size:18px;margin:4px 0 1px}.coach-card-head small{color:var(--muted)}.coach-team-form{border-top:1px solid #f0f0f1;padding-top:12px}.coach-team-form .secondary-button.full{margin-top:10px;font-size:11px}.coach-password{margin-top:7px;font-size:11px}.admin-check-grid{grid-template-columns:1fr 1fr}.team-info strong{font-size:12px;line-height:1.35}.player-card .team-tags{margin-top:0;margin-bottom:5px}
@media(max-width:900px){.admin-create-grid{grid-template-columns:1fr}.coaches-grid{grid-template-columns:1fr}}
@media(max-width:760px){.team-check-grid,.admin-check-grid{grid-template-columns:1fr}.invite-row{align-items:flex-start;flex-direction:column}.invite-row .secondary-button{width:100%}.team-tags span{font-size:8px}}
.shared-readonly{font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);background:#f4f4f5;border-radius:999px;padding:5px 8px;white-space:nowrap}

/* v8: simplified registration */
.auth-screen{gap:0}.auth-team-name{margin:2px 0 18px!important;color:var(--text)!important;font-size:16px!important;font-weight:900;line-height:1.3!important}.auth-copy h2{margin-top:0}.auth-card{margin:auto}

/* v9: редактирование команд и несколько тренеров */
.team-card-actions{display:flex;gap:6px;align-items:center}.coach-chip-list{display:flex;flex-wrap:wrap;gap:6px}.coach-chip{display:inline-flex;align-items:center;max-width:100%;padding:5px 8px;border-radius:999px;background:#fff7ed;border:1px solid #fed7aa;color:#9a3412;font-size:11px;font-weight:850}.muted-inline{font-size:12px;color:var(--muted);font-weight:700}.coach-check-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.coach-check--disabled{opacity:.55}.admin-modal-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.58);backdrop-filter:blur(5px);z-index:80}.admin-modal-wrap{position:fixed;inset:0;z-index:90;display:grid;place-items:center;padding:20px;pointer-events:none}.admin-modal{pointer-events:auto;width:min(680px,100%);max-height:min(760px,calc(100vh - 40px));overflow:auto;box-shadow:0 28px 80px rgba(0,0,0,.32)}.modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:18px}.modal-head h3{font-size:24px;margin:4px 0 0}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}.modal-actions .primary-button,.modal-actions .secondary-button{width:auto;margin:0;min-height:42px}.modal-actions .modal-save{padding-inline:18px}.create-team .coach-check-grid{grid-template-columns:1fr}
@media(max-width:760px){.coach-check-grid{grid-template-columns:1fr}.admin-modal-wrap{padding:10px}.admin-modal{max-height:calc(100vh - 20px)}.modal-actions{flex-direction:column-reverse}.modal-actions .primary-button,.modal-actions .secondary-button{width:100%}}


/* v10: brand text replaced with SVG logo */
.site-logo{display:block;width:42px;height:42px;object-fit:contain;flex:none}.brand--logo{padding:0;display:inline-flex;align-items:center;justify-content:center}.site-logo--header{width:40px;height:40px}.splash-brand{display:flex;align-items:center;justify-content:center}.site-logo--splash{width:60px;height:60px}.auth-brand--logo{align-items:center;gap:12px}.auth-brand--logo p{margin:0;color:var(--muted);font-size:12px}.site-logo--auth{width:56px;height:56px}.brand-static{display:flex;align-items:center;gap:10px;font-size:19px;font-weight:950;font-style:italic;letter-spacing:.1em}.site-logo--admin{width:38px;height:38px}.brand-static small{display:inline-flex;align-items:center;height:38px;padding-top:1px}.splash-brand--admin{gap:10px;font-weight:900;letter-spacing:.12em}.splash-brand--admin span{font-size:13px;color:#d4d4d8}@media(max-width:760px){.site-logo--header{width:36px;height:36px}.site-logo--admin{width:34px;height:34px}.brand-static small{height:34px}}


/* v12: separate surname / name / patronymic for coaches */
.coach-name-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:760px){.coach-name-grid{grid-template-columns:1fr}}


/* v13: cleaner admin dashboard with modal creation and custom confirmation */
.admin-page-heading{align-items:center}.admin-heading-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.admin-create-button{width:auto;margin:0;min-height:40px;padding:9px 13px;text-transform:none;letter-spacing:0}.admin-heading-actions .primary-button{background:var(--orange)}.admin-heading-actions .secondary-button{background:var(--black)}.admin-section--first{margin-top:10px}.admin-confirm-modal{width:min(520px,100%)}.confirm-text{margin:0 0 12px;font-size:14px;color:var(--text)}.confirm-warning{padding:12px 13px;border:1px solid #fed7aa;background:#fff7ed;color:#9a3412;border-radius:12px;font-size:12px;line-height:1.5;font-weight:750}.admin-modal [autofocus]{scroll-margin-top:20px}
@media(max-width:760px){.admin-page-heading{align-items:flex-start;flex-direction:column}.admin-heading-actions{width:100%;justify-content:stretch;display:grid;grid-template-columns:1fr 1fr auto}.admin-create-button{width:100%;white-space:nowrap}.admin-heading-actions .icon-button{width:40px;height:40px}}
@media(max-width:480px){.admin-heading-actions{grid-template-columns:1fr 1fr}.admin-heading-actions .icon-button{grid-column:1/-1;width:100%}}

/* v14: admin display modes — full cards / compact tiles / list */
.section-tools{display:flex;align-items:center;gap:9px}.view-switcher{display:flex;align-items:center;gap:3px;padding:3px;background:#e9e9ec;border:1px solid #dedee2;border-radius:11px}.view-switcher button{width:32px;height:30px;border:0;border-radius:8px;background:transparent;color:#71717a;display:grid;place-items:center}.view-switcher button:hover{background:#fff;color:#27272a}.view-switcher button.active{background:#fff;color:var(--orange-dark);box-shadow:0 1px 4px rgba(0,0,0,.1)}
.entity-compact-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.entity-compact-card{min-width:0;background:#fff;border:1px solid var(--line);border-radius:14px;padding:12px;box-shadow:0 2px 10px rgba(24,24,27,.035)}.entity-compact-card.is-disabled,.entity-list-row.is-disabled{opacity:.55}.entity-compact-top{display:grid;grid-template-columns:40px minmax(0,1fr) auto;gap:9px;align-items:start}.entity-avatar{width:40px;height:40px;border-radius:12px;background:#18181b;color:#fdba74;display:grid;place-items:center;font-size:11px;font-weight:950;letter-spacing:.04em}.entity-avatar--team{background:#fff7ed;color:#9a3412;border:1px solid #fed7aa}.entity-compact-copy{min-width:0;display:flex;flex-direction:column;align-items:flex-start}.entity-compact-copy h4{margin:1px 0 2px;font-size:13px;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.entity-compact-copy small{font-size:10px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.entity-state{margin-top:4px;font-size:8px;font-weight:900;text-transform:uppercase;letter-spacing:.07em}.entity-state.is-active{color:#15803d}.entity-state.is-off{color:#a1a1aa}.entity-compact-actions{display:flex;gap:4px}.entity-mini-stats{display:flex;gap:5px;flex-wrap:wrap;margin-top:11px}.entity-mini-stats span{padding:5px 7px;border-radius:8px;background:#f4f4f5;color:#71717a;font-size:9px;font-weight:750}.entity-mini-stats strong{color:#27272a;font-size:10px}.entity-compact-footer{display:flex;align-items:center;gap:6px;margin-top:10px;padding-top:9px;border-top:1px solid #f0f0f1}.text-icon-button{border:0;background:transparent;color:#52525b;display:inline-flex;align-items:center;gap:5px;padding:4px 5px;border-radius:7px;font-size:9px;font-weight:850}.text-icon-button:hover{background:#fff7ed;color:var(--orange-dark)}
.entity-list{display:grid;gap:6px}.entity-list-row{display:grid;grid-template-columns:8px minmax(210px,1.5fr) 80px 80px 80px auto;align-items:center;gap:12px;padding:9px 10px;background:#fff;border:1px solid var(--line);border-radius:11px;box-shadow:0 1px 4px rgba(24,24,27,.025)}.entity-list-status{width:7px;height:7px;border-radius:999px}.entity-list-status.is-active{background:#22c55e;box-shadow:0 0 0 3px #dcfce7}.entity-list-status.is-off{background:#a1a1aa}.entity-list-main{display:flex;flex-direction:column;min-width:0}.entity-list-main strong{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.entity-list-main span{margin-top:2px;color:var(--muted);font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.entity-list-metric{display:flex;flex-direction:column;align-items:flex-start}.entity-list-metric strong{font-size:13px}.entity-list-metric span{font-size:8px;text-transform:uppercase;color:var(--muted);font-weight:850}.entity-list-teams{min-width:0;color:var(--muted);font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.entity-list-actions{display:flex;justify-content:flex-end;gap:4px}.entity-list-row:has(.entity-list-teams){grid-template-columns:8px minmax(190px,1.2fr) minmax(180px,1fr) 70px auto}
@media(max-width:980px){.entity-compact-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.entity-list-row{grid-template-columns:8px minmax(180px,1fr) 64px 64px auto}.entity-list-row .entity-list-metric--wide{display:none}.entity-list-row:has(.entity-list-teams){grid-template-columns:8px minmax(170px,1fr) minmax(140px,.9fr) 64px auto}}
@media(max-width:760px){.section-head{align-items:center}.section-tools{gap:6px}.view-switcher button{width:30px;height:28px}.entity-compact-grid{grid-template-columns:1fr}.entity-list-row,.entity-list-row:has(.entity-list-teams){grid-template-columns:8px minmax(0,1fr) auto;padding:10px}.entity-list-row .entity-list-metric,.entity-list-row .entity-list-teams{display:none}.entity-list-actions{grid-column:3;grid-row:1;align-self:center}.entity-list-main span{max-width:55vw}}


/* v16: coach panel, invite cards, event duration/types, venue presets */
.coach-heading{margin-bottom:18px}.coach-heading h2{margin-top:0}.invite-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.invite-team-card{display:grid;grid-template-columns:38px minmax(0,1fr);gap:10px;align-items:center;padding:12px;border:1px solid #ededf0;background:#fafafa;border-radius:13px}.invite-team-icon{width:38px;height:38px;border-radius:10px;display:grid;place-items:center;background:var(--black);color:var(--orange)}.invite-team-copy{min-width:0;display:flex;flex-direction:column}.invite-team-copy strong{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.invite-team-copy small{font-size:9px;color:var(--muted);font-weight:850;letter-spacing:.08em;margin-top:2px}.invite-team-actions{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:6px}.mini-action{min-height:34px;border:1px solid var(--line);background:white;color:#52525b;border-radius:9px;display:flex;align-items:center;justify-content:center;gap:6px;font-size:12px;font-weight:700}.mini-action:hover{border-color:#fdba74;color:var(--orange-dark)}.segmented--three{grid-template-columns:repeat(3,1fr)}.field-custom-type{margin:-6px 0 16px}.event-date small{font-size:9px;color:var(--muted);font-weight:800;margin-top:1px}.event-location{flex-wrap:wrap}.map-link{display:inline-flex;align-items:center;gap:4px;color:var(--orange-dark);font-size:10px;font-weight:900;text-decoration:none;white-space:nowrap}.map-link:hover{text-decoration:underline}.venue-selected{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid #fed7aa;background:#fff7ed;border-radius:11px;padding:11px 12px}.venue-selected>div{display:flex;flex-direction:column;min-width:0}.venue-selected strong{font-size:13px}.venue-selected span{font-size:11px;color:var(--muted);margin-top:2px}.venues-panel{margin-bottom:20px}.secondary-button.compact{padding:8px 10px;font-size:10px}.venue-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.venue-card{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px 12px;border:1px solid #ededf0;background:#fafafa;border-radius:12px}.venue-card-main{min-width:0;display:flex;align-items:center;gap:9px}.venue-pin{width:34px;height:34px;flex:none;display:grid;place-items:center;border-radius:9px;background:white;border:1px solid var(--line);color:var(--orange-dark)}.venue-card-main>div:last-child{min-width:0;display:flex;flex-direction:column}.venue-card-main strong{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.venue-card-main span{font-size:10px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:1px}.venue-card-main .team-tags{margin-top:4px}.venue-card-actions{display:flex;align-items:center;gap:5px;flex:none}.coach-modal-backdrop{position:fixed;inset:0;z-index:80;background:rgba(0,0,0,.58);backdrop-filter:blur(5px)}.coach-modal-wrap{position:fixed;inset:0;z-index:90;display:grid;place-items:center;padding:18px;pointer-events:none}.coach-modal{pointer-events:auto;width:min(680px,100%);max-height:calc(100vh - 36px);overflow:auto;box-shadow:0 28px 80px rgba(0,0,0,.32)}.coach-modal .modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:18px}.coach-modal .modal-head h3{margin:4px 0 0;font-size:23px}.coach-modal .modal-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:18px}.coach-modal .modal-actions .primary-button,.coach-modal .modal-actions .secondary-button{width:auto;margin:0;min-height:42px}.manage-copy>.map-link{margin-top:3px;width:max-content}
@media(max-width:760px){.invite-card-grid,.venue-card-grid{grid-template-columns:1fr}.segmented--three button{padding-inline:5px;font-size:10px}.venue-card{align-items:flex-start}.venue-card-actions{flex-wrap:wrap;justify-content:flex-end}.coach-modal-wrap{padding:10px}.coach-modal{max-height:calc(100vh - 20px)}.coach-modal .modal-actions{flex-direction:column-reverse}.coach-modal .modal-actions .primary-button,.coach-modal .modal-actions .secondary-button{width:100%}}


/* v17: persistent custom event type buttons */
.event-type-picker{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:18px;padding:4px;background:#f4f4f5;border-radius:12px}.event-type-picker button{min-height:38px;border:0;background:transparent;border-radius:9px;padding:8px 12px;font-size:12px;font-weight:700;color:var(--muted);text-transform:none}.event-type-picker button.active{background:var(--black);color:white;box-shadow:0 1px 4px rgba(0,0,0,.12)}.event-type-picker .event-type-add{margin-left:auto;background:white;border:1px dashed #d4d4d8;color:var(--orange-dark);display:inline-flex;align-items:center;gap:5px}.event-type-picker .event-type-add:hover{border-color:#fdba74;background:#fff7ed}.type-manager{width:min(560px,100%)}.type-add-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:8px;align-items:end;margin-bottom:18px}.type-add-row .primary-button,.type-add-row .secondary-button{width:auto;margin:0;min-height:42px;white-space:nowrap}.type-preset-list{display:grid;gap:7px;border-top:1px solid #f0f0f1;padding-top:14px}.type-preset-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 11px;border:1px solid #ededf0;background:#fafafa;border-radius:11px}.type-preset-row strong{font-size:13px}.type-preset-row>div{display:flex;gap:5px}
@media(max-width:760px){.event-type-picker{padding:4px}.event-type-picker button{font-size:10px;padding:8px 9px}.event-type-picker .event-type-add{margin-left:0}.type-add-row{grid-template-columns:1fr}.type-add-row .primary-button,.type-add-row .secondary-button{width:100%}}


/* v18: global venues + event title presets */
.title-preset-group{margin:0 0 18px}.title-preset-picker{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin-top:8px;padding:4px;background:#f4f4f5;border-radius:12px}.title-preset-picker button{min-height:38px;border:0;background:transparent;border-radius:9px;padding:8px 10px;font-size:10px;font-weight:900;color:var(--muted);text-transform:uppercase}.title-preset-picker button.active{background:white;color:var(--orange-dark);box-shadow:0 1px 4px rgba(0,0,0,.1)}.title-custom-field{margin-top:10px}.inline-help{margin:4px 0 0}.public-venue-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.public-venue-card{background:white}.public-venue-card .venue-pin{background:#fff7ed;border-color:#fed7aa}.public-venue-card .venue-card-actions{margin-left:auto}@media(max-width:760px){.title-preset-picker{grid-template-columns:repeat(2,minmax(0,1fr))}.public-venue-grid{grid-template-columns:1fr}}


/* v19: map link embedded in schedule location name */
.event-location-link{color:inherit;text-decoration:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;border-bottom:1px dashed #d4d4d8}.event-location-link:hover{color:var(--orange-dark);border-bottom-color:var(--orange)}


/* v20: balanced schedule cards */
.event-main--clean{grid-template-columns:74px minmax(0,1fr) 146px;gap:18px;align-items:center;padding:16px 18px}
.event-date-clean{min-height:62px;display:flex;flex-direction:column;align-items:center;justify-content:center;border-right:1px solid var(--line);padding-right:18px;text-align:center}
.event-date-clean strong{font-size:28px;line-height:.9;font-weight:950;letter-spacing:-.04em;color:var(--text)}
.event-date-clean span{margin-top:6px;font-size:10px;line-height:1;font-weight:900;text-transform:uppercase;letter-spacing:.09em;color:var(--muted)}
.event-date-clean--active{border-color:#fed7aa}
.event-date-clean--active strong,.event-date-clean--active span{color:var(--orange-dark)}
.event-copy--clean{min-width:0}
.event-copy--clean h3{margin:0 0 7px;font-size:18px;line-height:1.18}
.event-copy--clean .event-location{margin-top:0}
.event-copy--clean .team-tags{margin-top:9px}
.event-time-clean{min-width:128px;align-self:stretch;display:flex;align-items:center;justify-content:flex-end;border-left:1px solid var(--line);padding-left:18px;text-align:right}
.event-time-clean strong{font-size:17px;line-height:1;font-weight:950;white-space:nowrap;letter-spacing:-.02em}
.event-time-clean--active{border-color:#fed7aa}
.event-time-clean--active strong{color:var(--orange-dark)}
.event-main--clean .event-kicker,.event-main--clean .status-pill{display:none}
@media(max-width:760px){
  .event-main--clean{grid-template-columns:58px minmax(0,1fr);grid-template-areas:"date time" "date copy";gap:7px 12px;padding:13px 12px;align-items:start}
  .event-date-clean{grid-area:date;min-height:100%;padding-right:12px;justify-content:center}
  .event-date-clean strong{font-size:24px}
  .event-date-clean span{font-size:9px;margin-top:5px}
  .event-copy--clean{grid-area:copy;padding-top:1px}
  .event-copy--clean h3{font-size:15px;margin-bottom:6px}
  .event-time-clean{grid-area:time;min-width:0;min-height:0;align-self:auto;justify-content:flex-end;border-left:0;padding-left:0}
  .event-time-clean strong{font-size:14px}
  .event-copy--clean .team-tags{margin-top:7px}
}


/* v21: cleaner title presets and duration in hours/minutes */
.title-preset-group--clean{margin-top:0}.duration-field{display:flex;flex-direction:column;gap:6px}.duration-field>span{font-size:10px;color:var(--muted);font-weight:900;text-transform:uppercase;letter-spacing:.06em}.duration-controls{display:grid;grid-template-columns:1fr 1fr;gap:8px}.duration-controls label{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:7px;border:1px solid #d4d4d8;border-radius:10px;background:#fafafa;padding-right:11px;transition:.15s}.duration-controls label:focus-within{border-color:var(--orange);background:white;box-shadow:0 0 0 3px rgba(249,115,22,.1)}.duration-controls input{min-width:0;width:100%;border:0!important;background:transparent!important;box-shadow:none!important;padding:11px 8px 11px 12px!important;outline:none}.duration-controls small{font-size:11px;font-weight:900;color:var(--muted);text-transform:uppercase}


/* v22: one event type selector only; removed duplicate title preset row */
.title-preset-group,.title-preset-picker,.title-custom-field{display:none!important}


/* v23: personalized header identity */
.team-title strong{max-width:520px}.team-title span{text-transform:none;letter-spacing:0;font-weight:750;max-width:520px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.drawer-head span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:220px}@media(max-width:760px){.team-title{min-width:0;max-width:calc(100vw - 118px)}.team-title strong,.team-title span{max-width:100%}}@media(max-width:440px){.team-title span{display:block;font-size:9px}.team-title strong{font-size:11px}}


/* v25: live schedule motion, active progress and smart countdown */
@keyframes fadeSlideUp{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}
@keyframes pulseActive{0%{box-shadow:0 0 0 0 rgba(249,115,22,.28)}70%{box-shadow:0 0 0 12px rgba(249,115,22,0)}100%{box-shadow:0 0 0 0 rgba(249,115,22,0)}}
.event-card{position:relative;transition:transform .25s cubic-bezier(.34,1.56,.64,1),box-shadow .25s ease,border-color .25s ease}
.event-card--enter{animation:fadeSlideUp .5s ease-out var(--event-enter-delay,0s) backwards}
.event-card--active{animation:pulseActive 2.5s infinite cubic-bezier(.66,0,0,1)}
.event-card--active.event-card--enter{animation:fadeSlideUp .5s ease-out var(--event-enter-delay,0s) backwards,pulseActive 2.5s calc(var(--event-enter-delay,0s) + .5s) infinite cubic-bezier(.66,0,0,1)}
@media(hover:hover) and (pointer:fine){.event-card:hover{transform:translateY(-4px) scale(1.012);box-shadow:0 16px 40px rgba(24,24,27,.09);border-color:#fdba74}.event-card:active{transform:translateY(0) scale(.992)}.event-card--active:hover{animation-play-state:paused;border-color:var(--orange-dark)}}
.event-progress-wrap{position:absolute;left:0;right:0;bottom:0;height:4px;background:#fed7aa;overflow:hidden;z-index:2}
.event-progress-bar{height:100%;background:var(--orange-dark);transition:width 1s linear}
.countdown-pill{display:inline-flex;align-items:center;gap:5px;margin-top:8px;padding:5px 9px;background:#fff7ed;color:#c2410c;border:1px solid #fed7aa;border-radius:999px;font-size:10px;font-weight:850;letter-spacing:.03em;white-space:nowrap}
@media(max-width:760px){.countdown-pill{font-size:9px;padding:4px 7px;margin-top:7px}}
@media(prefers-reduced-motion:reduce){.event-card,.event-card--enter,.event-card--active,.event-card--active.event-card--enter{animation:none!important;transition:none!important}.event-card:hover,.event-card:active{transform:none!important}.event-progress-bar{transition:none!important}}

/* v26: schedule header hierarchy, live timer and three schedule views */
.team-title strong{font-size:9px!important;line-height:1.05;color:#a1a1aa;font-weight:800;letter-spacing:.03em;max-width:520px}
.team-title span{font-size:14px!important;line-height:1.15;color:#fff;font-weight:900!important;max-width:520px}
.event-copy--clean h3{font-size:20px;font-weight:950;letter-spacing:-.015em}
.event-time-clean{flex-direction:column;align-items:flex-end;justify-content:center;gap:8px}
.event-time-clean .countdown-pill{margin:0;max-width:100%}
.countdown-pill{font-variant-numeric:tabular-nums}
.schedule-heading{align-items:center}
.schedule-heading-actions{display:flex;align-items:center;gap:8px}
.schedule-view-switch{display:inline-flex;align-items:center;gap:3px;padding:3px;border:1px solid var(--line);border-radius:12px;background:#fff;box-shadow:0 2px 8px rgba(24,24,27,.04)}
.schedule-view-switch button{width:34px;height:34px;border:0;border-radius:9px;background:transparent;color:#a1a1aa;display:grid;place-items:center}
.schedule-view-switch button:hover{background:#f4f4f5;color:var(--text)}
.schedule-view-switch button.active{background:var(--black);color:#fff}
.schedule-list{display:grid;gap:10px}
.schedule-section--tiles{display:block}
.schedule-section--tiles>.section-label{margin-bottom:10px}
.schedule-tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.event-card--tile{aspect-ratio:1/1;min-height:0;padding:16px;display:flex;flex-direction:column;overflow:hidden}
.event-tile-top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}
.event-card--tile .event-date-clean{min-height:0;border:0;padding:0;align-items:flex-start;text-align:left}
.event-card--tile .event-date-clean strong{font-size:31px}
.event-card--tile .event-date-clean span{font-size:9px;margin-top:5px}
.event-card--tile .event-time-clean{min-width:0;min-height:0;border:0;padding:0;align-self:auto;justify-content:flex-start;gap:6px}
.event-card--tile .event-time-clean strong{font-size:14px}
.event-card--tile .countdown-pill{font-size:8px;padding:4px 6px;white-space:normal;text-align:right;justify-content:flex-end}
.event-copy--tile{display:flex;flex:1;min-height:0;flex-direction:column;justify-content:flex-end;padding-top:14px}
.event-copy--tile h3{margin:0 0 9px;font-size:20px;line-height:1.08;font-weight:950;letter-spacing:-.02em}
.event-copy--tile .event-location{font-size:11px}
.event-copy--tile .team-tags{margin-top:9px;max-height:48px;overflow:hidden}
.event-card--tile.event-card--active{background:#fff7ed}
.month-view{border:1px solid var(--line);border-radius:17px;background:#fff;box-shadow:var(--shadow);overflow-x:auto}
.month-toolbar{min-width:720px;display:grid;grid-template-columns:40px 1fr 40px;align-items:center;gap:8px;padding:13px 14px;border-bottom:1px solid var(--line)}
.month-toolbar>strong{text-align:center;font-size:16px;font-weight:950;text-transform:capitalize}
.month-weekdays{min-width:720px;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border-bottom:1px solid var(--line);background:#fafafa}
.month-weekdays span{padding:8px;text-align:center;font-size:9px;font-weight:950;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}
.month-grid{min-width:720px;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));background:var(--line);gap:1px}
.month-day{min-height:116px;background:#fff;padding:7px;position:relative}
.month-day--outside{background:#fafafa}
.month-day--today{background:#fff7ed}
.month-day-number{width:25px;height:25px;display:grid;place-items:center;border-radius:50%;font-size:11px;font-weight:900;color:var(--muted)}
.month-day--today .month-day-number{background:var(--orange);color:#fff}
.month-events{display:grid;gap:4px;margin-top:4px}
.month-event{min-width:0;padding:5px 6px;border-radius:7px;background:#f4f4f5;border-left:3px solid #a1a1aa;display:flex;flex-direction:column;gap:1px}
.month-event--active{background:#fff1e7;border-left-color:var(--orange)}
.month-event--completed{opacity:.58}
.month-event strong{font-size:9px;font-variant-numeric:tabular-nums;color:var(--orange-dark)}
.month-event span{font-size:9px;font-weight:850;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
@media(max-width:900px){.schedule-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){
  .team-title strong{font-size:8px!important;max-width:100%}.team-title span{font-size:12px!important;max-width:100%}
  .event-copy--clean h3{font-size:17px}
  .event-time-clean{align-items:flex-end;gap:5px}
  .event-time-clean .countdown-pill{font-size:8px;padding:3px 6px}
  .schedule-heading{align-items:flex-start;gap:12px}.schedule-heading-actions{gap:5px}.schedule-view-switch button{width:31px;height:31px}.schedule-heading-actions>.icon-button{width:33px;height:33px}
  .schedule-tiles{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .event-card--tile{padding:12px}.event-card--tile .event-date-clean strong{font-size:26px}.event-copy--tile h3{font-size:16px}.event-card--tile .event-time-clean strong{font-size:11px}.event-card--tile .countdown-pill{display:none}.event-copy--tile .team-tags{display:none}
}
@media(max-width:480px){.schedule-tiles{grid-template-columns:1fr 1fr}.event-card--tile{aspect-ratio:1/1.08}.schedule-view-switch{gap:1px;padding:2px}.schedule-view-switch button{width:29px;height:29px}}


/* v28: one date = one schedule card */
.event-day-layout{display:grid;grid-template-columns:74px minmax(0,1fr);align-items:stretch}
.event-day-layout>.event-date-clean{margin:16px 0 16px 18px;min-height:64px;align-self:stretch}
.event-day-rows{min-width:0;display:grid}
.event-day-row{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 154px;gap:18px;align-items:center;padding:15px 18px;border-bottom:1px solid #f0f0f1;transition:background .18s ease}
.event-day-row:last-child{border-bottom:0}
.event-day-row--active{background:#fff7ed}
.event-day-row--completed{opacity:.62}
.event-day-copy{min-width:0}
.event-day-copy h3{margin:0 0 6px;font-size:19px;line-height:1.08;font-weight:950;letter-spacing:-.02em}
.event-day-copy .event-location{font-size:12px}
.event-day-row .event-time-clean{align-self:stretch;min-width:136px}
.event-day-row .event-progress-wrap{height:3px;border-radius:0;bottom:0;left:0}
.event-day-row--active .event-progress-wrap{left:0;width:100%}
.event-day-card--tile{aspect-ratio:auto;min-height:245px;padding:14px;display:flex;flex-direction:column}
.event-day-tile-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding-bottom:10px;border-bottom:1px solid var(--line)}
.event-day-card--tile .event-date-clean{border:0;padding:0;min-height:0;align-items:flex-start;text-align:left}
.event-day-card--tile .event-date-clean strong{font-size:31px}
.event-day-card--tile .event-date-clean span{font-size:9px;margin-top:5px}
.event-day-count{min-width:25px;height:25px;padding:0 7px;border-radius:999px;background:#f4f4f5;color:var(--muted);display:inline-flex;align-items:center;justify-content:center;font-size:10px;font-weight:950}
.event-day-rows--tile{display:grid;gap:0;flex:1}
.event-day-row--compact{grid-template-columns:minmax(0,1fr) auto;gap:8px;padding:10px 0;border-bottom:1px solid #f0f0f1}
.event-day-row--compact:last-child{border-bottom:0}
.event-day-row--compact .event-day-copy h3{font-size:14px;margin-bottom:4px}
.event-day-row--compact .event-location{font-size:9px}
.event-day-row--compact .team-tags{display:none}
.event-day-row--compact .event-time-clean{min-width:0;border:0;padding:0;gap:4px}
.event-day-row--compact .event-time-clean strong{font-size:11px}
.event-day-row--compact .countdown-pill{display:none}
.event-day-card--tile.event-card--active{background:#fff}
@media(max-width:760px){
  .event-day-layout{grid-template-columns:58px minmax(0,1fr)}
  .event-day-layout>.event-date-clean{margin:13px 0 13px 12px;padding-right:12px;min-height:100%}
  .event-day-row{grid-template-columns:minmax(0,1fr) auto;gap:10px;padding:13px 12px}
  .event-day-copy h3{font-size:17px}
  .event-day-row .event-time-clean{min-width:0;border-left:0;padding-left:0;align-self:auto}
}
@media(max-width:480px){
  .event-day-layout{grid-template-columns:52px minmax(0,1fr)}
  .event-day-layout>.event-date-clean strong{font-size:22px}
  .event-day-row{padding:11px 10px;gap:8px}
  .event-day-copy h3{font-size:15px}
  .event-day-row .event-time-clean strong{font-size:12px}
  .event-day-row .countdown-pill{font-size:7px;padding:3px 5px}
  .event-day-card--tile{min-height:220px}
}

/* v29: mobile-safe calendar, cleaner tiles and narrow list cards */
/* Month: never force horizontal scrolling. */
.month-view{width:100%;min-width:0;overflow:hidden}
.month-toolbar,.month-weekdays,.month-grid{width:100%;min-width:0}
.month-grid,.month-weekdays{grid-template-columns:repeat(7,minmax(0,1fr))}
.month-day{min-width:0;overflow:hidden}
.month-events,.month-event{min-width:0}

/* Tiles: date + orange count badge, then time -> title -> address. */
.event-day-count{width:27px;min-width:27px;height:27px;padding:0;border-radius:50%;background:var(--orange);color:#fff;box-shadow:0 4px 12px rgba(249,115,22,.22);font-size:11px}
.event-day-row--compact{display:block;padding:11px 0;min-width:0}
.event-tile-time{margin-bottom:6px;color:var(--orange-dark);font-size:13px;line-height:1;font-weight:950;font-variant-numeric:tabular-nums;white-space:nowrap}
.event-day-row--compact .event-day-copy h3{margin:0 0 5px;font-size:15px;line-height:1.1}
.event-day-row--compact .event-location{font-size:10px;line-height:1.25;align-items:flex-start}
.event-day-row--compact .event-location a,.event-day-row--compact .event-location span{white-space:normal;overflow:visible;text-overflow:clip;overflow-wrap:anywhere}
.event-day-row--compact .event-progress-wrap{left:0;right:0;width:auto}

@media(max-width:600px){
  .month-toolbar{grid-template-columns:34px minmax(0,1fr) 34px;padding:9px 8px}
  .month-toolbar .icon-button{width:32px;height:32px}
  .month-toolbar>strong{font-size:13px;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .month-weekdays span{padding:6px 0;font-size:8px;letter-spacing:0}
  .month-day{min-height:78px;padding:4px 3px}
  .month-day-number{width:20px;height:20px;font-size:9px}
  .month-events{gap:2px;margin-top:2px}
  .month-event{padding:3px 3px;border-left-width:2px;border-radius:5px;gap:0}
  .month-event strong{font-size:7px;line-height:1.1}
  .month-event span{font-size:7px;line-height:1.1}
}
@media(max-width:420px){
  .month-view{border-radius:13px}
  .month-toolbar{grid-template-columns:30px minmax(0,1fr) 30px;padding:7px 5px}
  .month-toolbar .icon-button{width:28px;height:28px;border-radius:8px}
  .month-toolbar>strong{font-size:12px}
  .month-weekdays span{font-size:7px;padding:5px 0}
  .month-day{min-height:65px;padding:3px 2px}
  .month-day-number{width:18px;height:18px;font-size:8px}
  .month-event{padding:2px;border-left-width:2px}
  .month-event strong{font-size:7px}
  .month-event span{display:none}
}

/* List: switch to a stable stacked layout on very narrow phones. */
@media(max-width:430px){
  .page-content{width:min(100% - 14px,1060px)}
  .event-day-card{border-radius:14px}
  .event-day-layout{display:block}
  .event-day-layout>.event-date-clean{min-height:0;margin:0;padding:9px 11px;border-right:0;border-bottom:1px solid var(--line);display:flex;flex-direction:row;align-items:baseline;justify-content:flex-start;gap:5px;text-align:left}
  .event-day-layout>.event-date-clean strong{font-size:20px;line-height:1}
  .event-day-layout>.event-date-clean span{font-size:9px;margin:0;line-height:1;text-transform:uppercase}
  .event-day-row{display:flex;flex-direction:column;align-items:stretch;gap:8px;padding:11px}
  .event-day-row .event-time-clean{order:-1;width:100%;min-width:0;align-items:flex-start;gap:4px;border:0;padding:0}
  .event-day-row .event-time-clean strong{font-size:13px}
  .event-day-row .countdown-pill{font-size:8px;padding:3px 6px;max-width:100%;white-space:normal}
  .event-day-copy h3{font-size:16px;margin-bottom:5px}
  .event-day-copy .event-location{align-items:flex-start;line-height:1.3}
  .event-day-copy .event-location a,.event-day-copy .event-location span{white-space:normal;overflow:visible;text-overflow:clip;overflow-wrap:anywhere}
  .event-day-copy .team-tags{gap:4px;margin-top:6px}
  .event-day-copy .team-tags span{max-width:100%;white-space:normal;overflow-wrap:anywhere}
}
@media(max-width:430px){
  .schedule-heading{flex-wrap:wrap;align-items:center}
  .schedule-heading>div:first-child{min-width:0}
  .schedule-heading-actions{margin-left:auto;max-width:100%}
  .schedule-view-switch button{width:28px;height:28px}
  .schedule-heading-actions>.icon-button{width:30px;height:30px}
}


/* v43: consolidated schedule visual system */
.team-title strong{font-weight:500}
.team-title span{text-transform:none;letter-spacing:0;font-weight:700}

.event-day-card:not(.event-day-card--tile){height:auto;min-height:0;aspect-ratio:auto;display:block;overflow:hidden;border-color:#cfd0d4;box-shadow:0 1px 3px rgba(24,24,27,.045)}
.event-card.event-day-card[data-today="1"],.event-card.event-day-card.event-day-card--today{border:3px solid var(--orange)!important;outline:1px solid rgba(249,115,22,.28);outline-offset:-1px;box-shadow:inset 0 0 0 1px rgba(249,115,22,.20),0 8px 24px rgba(249,115,22,.12)}
.event-day-list-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:7px 14px;border-bottom:1px solid rgba(154,52,18,.28);background:var(--orange);line-height:1}
.event-card--active .event-day-list-head{background:var(--orange)}
.event-day-list-date{display:flex;align-items:center;gap:7px;min-width:0;flex-wrap:wrap;min-height:24px}
.event-day-list-date strong,.event-day-list-date span{font-size:22px;line-height:1;font-style:italic;letter-spacing:-.03em;text-transform:none}
.event-day-list-date strong{font-weight:650;color:#fff}
.event-day-list-date span{font-weight:600;color:#fff}
.day-countdown-pill,.tile-countdown-pill{display:inline-flex;align-items:center;gap:7px;border-radius:999px;font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap}
.day-countdown-pill{margin-left:auto;max-width:min(72%,620px);padding:7px 12px;background:#fff4e8;color:#9a3412;border:1px solid #fed7aa;box-shadow:0 3px 10px rgba(249,115,22,.10);font-size:13px;line-height:1}
.day-countdown-pill.is-active{background:var(--orange-dark);color:#fff;border-color:var(--orange-dark);box-shadow:0 5px 14px rgba(249,115,22,.2)}
.live-dot{width:8px;height:8px;flex:0 0 8px;border-radius:50%;background:currentColor;box-shadow:0 0 0 0 rgba(255,255,255,.5);animation:liveDotPulse 1.6s ease-out infinite}
@keyframes liveDotPulse{0%{box-shadow:0 0 0 0 rgba(255,255,255,.55)}70%{box-shadow:0 0 0 6px rgba(255,255,255,0)}100%{box-shadow:0 0 0 0 rgba(255,255,255,0)}}

.event-day-rows--list{display:grid;min-width:0}
.event-day-rows--list .event-day-row{--type-color:var(--type-training);position:relative;display:grid;grid-template-columns:minmax(0,1fr) max-content;column-gap:18px;align-items:start;width:100%;min-width:0;padding:11px 14px 12px;border-bottom:1px solid #ededf0;background:var(--surface)}
.event-day-rows--list .event-day-row:last-child{border-bottom:0}
.event-day-row[data-type="training"],.month-event[data-type="training"],.event-day-row--compact[data-type="training"]{--type-color:var(--type-training)}
.event-day-row[data-type="game"],.month-event[data-type="game"],.event-day-row--compact[data-type="game"]{--type-color:var(--type-game)}
.event-day-row[data-type="custom"],.month-event[data-type="custom"],.event-day-row--compact[data-type="custom"]{--type-color:var(--type-custom)}
.event-day-row--active{background:#fffaf5}
.event-day-row--completed{opacity:.72}
.event-day-row-left,.event-day-copy{min-width:0}
.event-title-line{display:flex;align-items:center;gap:8px;min-width:0;margin-bottom:5px}
.event-day-copy h3{min-width:0;margin:0;font-size:16px;line-height:1.16;font-weight:600;letter-spacing:-.01em;overflow-wrap:anywhere}
.game-side-badge{flex:none;display:inline-flex;align-items:center;min-height:22px;padding:3px 7px;border-radius:999px;background:#fff1e7;color:#9a3412;border:1px solid #fed7aa;font-size:11px;line-height:1;font-weight:700}
.event-day-rows--list .event-location{display:flex;align-items:center;gap:6px;min-height:14px;color:#71717a;font-size:14px;line-height:1.15;font-weight:400}
.event-day-rows--list .event-location svg{width:14px;height:14px;min-width:14px;flex:0 0 14px;color:var(--orange);stroke:var(--orange)}
.event-location-link,.event-location-link:visited,.event-location-link:hover{color:var(--orange);font-weight:600;text-decoration:none;border:0}
.event-location-link:hover{color:var(--orange-dark)}
.event-day-row-right{width:max-content;min-width:max-content;padding-left:14px;border-left:1px solid var(--line)}
.event-day-row-right .event-time-clean{width:max-content;min-width:max-content;justify-content:flex-end;padding:0;border:0}
.event-day-row-right .event-time-clean strong{display:block;width:max-content;min-width:max-content;color:#27272a;font-size:20px;line-height:1;font-weight:650;letter-spacing:-.025em;white-space:nowrap;font-variant-numeric:tabular-nums}
.event-day-row--active .event-time-clean strong{color:var(--orange-dark)}
.event-day-row .event-progress-wrap{height:4px;left:0;right:0;bottom:0;width:auto;background:#ffedd5}
.event-day-row .event-progress-bar{background:var(--orange)}

.event-day-card--tile{height:auto;min-height:0;aspect-ratio:auto;padding:14px;display:flex;flex-direction:column}
.event-day-tile-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding-bottom:10px;border-bottom:1px solid var(--line)}
.event-day-card--tile .event-date-clean{border:0;padding:0;min-height:0;align-items:flex-start;text-align:left}
.event-day-card--tile .event-date-clean strong{font-size:30px;font-weight:650}
.event-day-card--tile .event-date-clean span{font-size:12px;margin-top:4px;font-weight:500;text-transform:none}
.event-day-count{width:27px;min-width:27px;height:27px;padding:0;border-radius:50%;background:var(--orange);color:#fff;box-shadow:0 4px 12px rgba(249,115,22,.22);font-size:12px;font-weight:700}
.event-day-rows--tile{display:grid;gap:0;flex:1}
.event-day-row--compact{--type-color:var(--type-training);position:relative;display:block;min-width:0;height:auto;min-height:0;padding:10px 0;border-bottom:1px solid #f0f0f1}
.event-day-row--compact:last-child{border-bottom:0}
.tile-countdown-pill{width:max-content;max-width:100%;margin:0 0 7px;padding:5px 8px;background:#fff1e7;border:1px solid #fdba74;color:var(--orange-dark);font-size:12px;line-height:1.1;overflow:hidden}
.tile-countdown-pill.is-active{background:var(--orange);border-color:var(--orange);color:#fff}
.event-tile-time{margin-bottom:7px;color:#27272a;font-size:15px;line-height:1;font-weight:650;font-variant-numeric:tabular-nums;white-space:nowrap}
.event-day-row--compact .event-title-line{margin-bottom:5px;gap:6px}
.event-day-row--compact .event-day-copy h3{font-size:15px;line-height:1.15;font-weight:600}
.event-day-row--compact .game-side-badge{font-size:10px;min-height:20px;padding:3px 6px}
.event-day-row--compact .event-location{font-size:12px;line-height:1.25;align-items:flex-start}
.event-day-row--compact .event-location a,.event-day-row--compact .event-location span{white-space:normal;overflow:visible;text-overflow:clip;overflow-wrap:anywhere}
.event-day-row--compact .event-progress-wrap{left:0;right:0;width:auto;height:3px}

.month-day--today{background:#fff}
.month-day--today .month-day-number{background:transparent;color:var(--orange-dark);border:2px solid var(--orange);font-weight:700}
.month-day-count{width:19px;height:19px;flex:none;border-radius:50%;display:grid;place-items:center;background:var(--orange);color:#fff;font-size:9px;font-weight:700;box-shadow:0 3px 8px rgba(249,115,22,.2)}
.month-event{--type-color:var(--type-training);display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:4px;padding:4px 5px;border-left:3px solid var(--type-color);background:#f4f4f5}
.month-event--active{background:#fff1e7}
.month-event--completed{opacity:.65}
.month-event strong{font-variant-numeric:tabular-nums}

.completed-toggle{width:100%;min-height:46px;border:1px solid var(--line);border-radius:var(--radius-m);background:var(--surface);color:var(--text-2);padding:10px 13px;display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:13px;font-weight:700;text-align:left}
.completed-toggle:hover{border-color:#c7c7cc;background:var(--surface-2)}
.completed-toggle-meta{display:flex;align-items:center;gap:8px;color:var(--muted);font-variant-numeric:tabular-nums}
.completed-toggle-meta b{min-width:24px;height:24px;border-radius:999px;background:#e4e4e7;color:#52525b;display:grid;place-items:center;font-size:11px}
.completed-chevron{display:grid;place-items:center;transition:transform .18s ease}
.completed-chevron.is-open{transform:rotate(180deg)}
.schedule-section--completed{gap:9px;margin-top:22px}

button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--orange);outline-offset:2px}
button:active,.icon-button:active,.event-day-card:active{transform:scale(.98)}
button,.icon-button,.event-day-card{transition:transform .12s ease,background-color .16s ease,border-color .16s ease,color .16s ease}

@media(max-width:760px){
  .event-day-list-head{padding:6px 11px;gap:8px}
  .event-day-list-date{gap:5px}
  .event-day-list-date strong,.event-day-list-date span{font-size:18px}
  .day-countdown-pill{max-width:62%;padding:6px 9px;font-size:12px}
  .event-day-rows--list .event-day-row{grid-template-columns:minmax(0,1fr) max-content;column-gap:8px;padding:10px 10px 11px}
  .event-day-row-right{padding-left:8px}
  .event-day-row-right .event-time-clean strong{font-size:16px}
  .event-day-copy h3{font-size:15px}
  .event-day-rows--list .event-location{font-size:13px}
  .event-day-rows--list .event-location svg{width:13px;height:13px;min-width:13px;flex-basis:13px}
  .tile-countdown-pill{font-size:12px;padding:4px 7px}
}
@media(max-width:430px){
  .event-day-list-head{align-items:center;flex-wrap:wrap}
  .event-day-list-date{flex:1 1 auto;min-width:0}
  .day-countdown-pill{max-width:100%;margin-left:auto;font-size:12px}
  .event-day-rows--list .event-day-row{display:grid;grid-template-columns:minmax(0,1fr) max-content;align-items:start;column-gap:6px;padding:9px 8px 10px}
  .event-day-row-right{padding-left:6px}
  .event-day-row-right .event-time-clean strong{font-size:14px;letter-spacing:-.035em}
  .event-day-rows--list .event-location{font-size:12px;line-height:1.2}
  .event-day-copy h3{font-size:14px}
  .game-side-badge{font-size:10px;min-height:20px;padding:3px 6px}
  .event-day-card--tile{padding:11px}
}
@media(max-width:350px){
  .event-day-list-date strong,.event-day-list-date span{font-size:16px}
  .event-day-row-right .event-time-clean strong{font-size:12.5px}
  .event-day-rows--list .event-day-row{column-gap:4px;padding-left:7px;padding-right:7px}
  .event-day-row-right{padding-left:5px}
}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
  button:active,.icon-button:active,.event-day-card:active{transform:none}
}

/* v42: request safety / duplicate-submit feedback */
button[disabled],
.primary-button[disabled],
.secondary-button[disabled]{
  cursor:not-allowed;
  opacity:.68;
}
.button-spinner{
  width:14px;
  height:14px;
  border:2px solid currentColor;
  border-right-color:transparent;
  border-radius:50%;
  display:inline-block;
  flex:0 0 14px;
  animation:buttonBusySpin .7s linear infinite;
}
@keyframes buttonBusySpin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.button-spinner{animation:none;border-right-color:currentColor}}

/* v47: compact two-theme shell, sliding drawer, venues/invites/profile */
html[data-theme="light"]{color-scheme:light}
html[data-theme="dark"]{color-scheme:dark;--bg:#090807;--surface:#0c0c0d;--surface-2:#151515;--text:#f7f7f8;--text-2:#d4d4d8;--muted:#a1a1aa;--line:#3b3b40;--shadow:0 12px 36px rgba(0,0,0,.34)}
html[data-theme="dark"] body{background:radial-gradient(circle at 82% -12%,rgba(249,115,22,.09) 0,transparent 30%),#090807;color:var(--text)}
body.menu-open{overflow:hidden}

/* Header follows the supplied compact mockup: hamburger + mark + identity + photo. */
.topbar{height:70px;background:#050505;border-bottom:2px solid var(--orange)}
.topbar-inner{max-width:1180px;padding:0 20px;gap:13px}
.menu-button{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border:0;background:transparent;color:var(--orange);flex:none}
.brand--logo{display:inline-grid;place-items:center;padding:0;flex:none}
.site-logo--header{width:43px;height:43px;object-fit:contain}
.topbar-identity{margin-left:auto;min-width:0;display:flex;align-items:center;gap:10px}
.team-title{border-left:0;padding-left:0;text-align:right;align-items:flex-end;min-width:0}
.team-title strong{max-width:min(52vw,540px);font-size:10px;line-height:1.05;color:var(--orange);font-weight:650;letter-spacing:.025em}
.team-title span{max-width:min(52vw,540px);font-size:15px;line-height:1.08;color:#fff;font-weight:750}
.header-avatar,.drawer-avatar{border:0;padding:0;overflow:hidden;border-radius:50%;display:grid;place-items:center;background:#1f1f22;color:var(--orange);font-weight:800;flex:none}
.header-avatar{width:42px;height:42px;border:2px solid #2b2b2f}
.header-avatar img,.drawer-avatar img,.profile-avatar img,.avatar img{width:100%;height:100%;object-fit:cover;display:block}
.header-avatar span{font-size:11px}
.desktop-nav{display:none}
.main-area{min-height:calc(100vh - 70px)}

/* Real animated drawer: element stays mounted and transforms instead of being recreated. */
.backdrop{display:block;opacity:0;visibility:hidden;pointer-events:none;background:rgba(0,0,0,.66);backdrop-filter:blur(5px);transition:opacity .32s ease,visibility .32s ease}
.backdrop--open{opacity:1;visibility:visible;pointer-events:auto}
.drawer{--drawer-ball-open:285deg;--drawer-ball-closed:0deg;width:min(86vw,360px);padding:0;background:#050505;border-right:2px solid var(--orange);box-shadow:18px 0 44px rgba(249,115,22,.16),28px 0 70px rgba(0,0,0,.52);transform:translate3d(-103%,0,0);transition:transform .36s cubic-bezier(.22,1,.36,1);overflow:hidden}
.drawer--open{transform:translate3d(0,0,0)}
.drawer-profile{position:relative;display:grid;grid-template-columns:54px minmax(0,1fr);gap:12px;align-items:center;padding:20px 54px 17px 20px;border-bottom:1px solid #262629}
.drawer-close{position:absolute;right:15px;top:16px;width:36px;height:36px;border:0;background:transparent;color:#71717a;display:grid;place-items:center;border-radius:10px}
.drawer-close:hover{color:#fff;background:#171719}
.drawer-avatar{width:54px;height:54px;border:2px solid #3f3f46}
.drawer-profile-actions{display:flex;align-items:center;gap:8px;min-width:0;margin:0}
.drawer-profile-link,.drawer-profile-theme{border:0;border-radius:9px;min-height:32px;display:inline-flex;align-items:center;justify-content:center;font-size:11px;font-weight:750}
.drawer-profile-link{padding:0 10px;background:#171719;color:#fff;white-space:nowrap}
.drawer-profile-link:hover{background:#232326;color:var(--orange)}
.drawer-profile-theme{min-width:0;padding:0 7px 0 8px;gap:6px;background:#111113;color:#d4d4d8}
.drawer-profile-theme>span{color:#d4d4d8;font-size:10px;line-height:1}
.drawer-profile-theme:hover{background:#1b1b1e}
.drawer-profile-theme .theme-switch{width:30px;height:17px;margin-left:1px}
.drawer-profile-theme .theme-switch::after{width:11px;height:11px}
.drawer-profile-theme .theme-switch.is-dark::after{transform:translateX(13px)}
.drawer-nav{position:relative;z-index:2;display:grid;gap:2px;padding:14px 14px}
.drawer-nav>button{width:100%;min-height:46px;border:0;background:transparent;color:#f4f4f5;border-radius:11px;padding:0 13px;display:flex;align-items:center;gap:12px;text-align:left;font-size:15px;font-weight:650;transition:background .16s ease,color .16s ease,transform .12s ease}
.drawer-nav>button svg{color:#71717a;transition:color .16s ease}
.drawer-nav>button:hover{background:#151515}
.drawer-nav>button.active{background:#18120e;color:var(--orange)}
.drawer-nav>button.active svg{color:var(--orange)}
.drawer .nav-label{display:inline}
.drawer-decoration{position:absolute;left:-182px;top:50%;width:490px;height:490px;transform:translateY(-50%) rotate(75deg);pointer-events:none;z-index:0;display:flex;align-items:center;justify-content:center}
.drawer-ball-logo{width:100%;height:100%;display:block;object-fit:contain;user-select:none;-webkit-user-drag:none;filter:drop-shadow(0 22px 42px rgba(0,0,0,.38));opacity:.98;transform:rotate(var(--drawer-ball-closed));transform-origin:50% 50%;transition:transform .72s cubic-bezier(.22,.88,.28,1.12);will-change:transform}.drawer--open .drawer-ball-logo{transform:rotate(var(--drawer-ball-open))}
.drawer-footer{position:relative;z-index:2;margin-top:auto;padding:12px 14px 18px;display:grid;gap:7px;background:linear-gradient(180deg,transparent,#050505 24%)}
.drawer-logout{width:100%;min-height:44px;border:0;border-radius:11px;padding:0 13px;display:flex;align-items:center;gap:11px;font-size:13px;font-weight:650;background:transparent;color:#f4f4f5}
.drawer-logout:hover{background:#19191c}
.theme-switch{margin-left:auto;width:34px;height:19px;border-radius:999px;background:#3f3f46;position:relative;transition:background .18s ease}
.theme-switch::after{content:"";position:absolute;left:3px;top:3px;width:13px;height:13px;border-radius:50%;background:#fff;transition:transform .18s ease}
.theme-switch.is-dark{background:var(--orange)}
.theme-switch.is-dark::after{transform:translateX(15px)}

/* Compact page rhythm. */
.page-content{padding-top:26px}
.page-heading.compact-heading,.coach-heading{margin-bottom:18px;align-items:center}
.page-heading.compact-heading h2,.coach-heading h2{font-size:clamp(28px,4vw,38px);margin:2px 0 3px}
.page-heading.compact-heading p,.coach-heading p{font-size:12px;max-width:620px}
.heading-actions{display:flex;align-items:center;gap:8px;flex:none}

/* Places own venue creation now. */
.public-venue-grid{gap:10px}
.public-venue-card{min-height:70px}
.public-venue-card .venue-card-main strong{font-size:14px;font-weight:650}
.public-venue-card .venue-card-main span{font-size:12px;line-height:1.25;white-space:normal}

/* Standalone invitations screen. */
.invite-panel--standalone{padding:16px}
.invite-card-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.invite-team-card{background:var(--surface);border-color:var(--line)}
.invite-team-copy strong{font-size:14px;font-weight:650}
.invite-team-copy small{font-size:11px}
.mini-action{font-size:12px;font-weight:650;background:var(--surface);color:var(--text-2);border-color:var(--line)}

/* Profile */
.profile-page{max-width:860px}
.profile-hero{display:grid;grid-template-columns:auto minmax(0,1fr);gap:20px;align-items:center;margin-bottom:14px;padding:18px}
.profile-avatar-wrap{display:grid;grid-template-columns:auto auto;gap:7px 10px;align-items:center}
.profile-avatar{grid-row:1/3;width:96px;height:96px;border-radius:50%;overflow:hidden;display:grid;place-items:center;background:var(--black);color:var(--orange);border:3px solid var(--orange);font-size:24px;font-weight:800}
.avatar-upload-button{min-height:38px;padding:0 12px;border-radius:10px;background:var(--orange);color:#fff;display:inline-flex;align-items:center;justify-content:center;gap:7px;font-size:12px;font-weight:700;cursor:pointer}
.avatar-upload-button input{display:none}
.avatar-upload-button.is-busy{opacity:.65;pointer-events:none}
.avatar-remove{justify-content:flex-start;padding:2px 0;font-size:11px}
.profile-identity{min-width:0}
.profile-identity>span{font-size:11px;color:var(--orange);font-weight:700}
.profile-identity h3{margin:4px 0 4px;font-size:24px;line-height:1.05;font-weight:700;overflow-wrap:anywhere}
.profile-identity p{margin:0;color:var(--muted);font-size:12px}
.profile-form textarea{width:100%;resize:vertical;min-height:86px;padding:11px 12px;border:1px solid #d4d4d8;border-radius:10px;background:#fafafa;color:var(--text);font:inherit;outline:none;transition:.15s}
.profile-form textarea:focus{border-color:var(--orange);background:var(--surface);box-shadow:0 0 0 3px rgba(249,115,22,.1)}
.profile-form input[readonly]{opacity:.7;cursor:default}
.avatar{overflow:hidden}.avatar>span{font-size:13px}

/* Dark scheme for the app surfaces. */
html[data-theme="dark"] .panel,
html[data-theme="dark"] .event-card,
html[data-theme="dark"] .player-card,
html[data-theme="dark"] .venue-card,
html[data-theme="dark"] .public-venue-card,
html[data-theme="dark"] .invite-team-card,
html[data-theme="dark"] .manage-row,
html[data-theme="dark"] .month-view,
html[data-theme="dark"] .schedule-view-switch,
html[data-theme="dark"] .completed-toggle,
html[data-theme="dark"] .auth-card{background:var(--surface);border-color:var(--line);color:var(--text);box-shadow:var(--shadow)}
html[data-theme="dark"] .event-day-list-head,
html[data-theme="dark"] .event-day-rows--list .event-day-row,
html[data-theme="dark"] .event-day-card--tile,
html[data-theme="dark"] .month-day,
html[data-theme="dark"] .icon-button,
html[data-theme="dark"] .mini-action{background:var(--surface);color:var(--text);border-color:var(--line)}
html[data-theme="dark"] .event-day-rows--list .event-day-row{border-bottom-color:#242427}
html[data-theme="dark"] .event-day-row--active{background:#17100b}
html[data-theme="dark"] .event-day-list-head{background:var(--orange);border-bottom-color:rgba(255,255,255,.12)}
html[data-theme="dark"] .event-day-list-date strong,
html[data-theme="dark"] .event-day-list-date span{color:#fff}
html[data-theme="dark"] .day-countdown-pill:not(.is-active){background:#fff4e8;color:#9a3412;border-color:#fed7aa}
html[data-theme="dark"] .event-day-copy h3,
html[data-theme="dark"] .event-day-row-right .event-time-clean strong,
html[data-theme="dark"] .event-tile-time{color:#fff}
html[data-theme="dark"] .event-day-rows--list .event-location{color:#a1a1aa}
html[data-theme="dark"] .event-location-link,html[data-theme="dark"] .event-location-link:visited{color:var(--orange)}
html[data-theme="dark"] .event-day-tile-head,.month-weekdays{border-color:var(--line)}
html[data-theme="dark"] .month-toolbar{background:#0f0f11;border-color:var(--line)}
html[data-theme="dark"] .month-weekdays{background:#121214;color:#a1a1aa}
html[data-theme="dark"] .month-day{border-color:#242427}
html[data-theme="dark"] .month-day--today{background:#121214}
html[data-theme="dark"] .month-event{background:#18181b;color:#e4e4e7}
html[data-theme="dark"] .month-event--active{background:#25170d}
html[data-theme="dark"] .field input,
html[data-theme="dark"] .field select,
html[data-theme="dark"] .profile-form textarea,
html[data-theme="dark"] .duration-controls label,
html[data-theme="dark"] .team-check{background:#111113;border-color:#3b3b40;color:#fff}
html[data-theme="dark"] .field input:focus,
html[data-theme="dark"] .field select:focus,
html[data-theme="dark"] .profile-form textarea:focus{background:#151517}
html[data-theme="dark"] .field input[readonly]{background:#111113}
html[data-theme="dark"] .auth-tabs,.event-type-picker{background:var(--surface-2)}
html[data-theme="dark"] .auth-tabs button.active{background:#27272a;color:#fff}
html[data-theme="dark"] .venue-pin{background:#171719;border-color:#3b3b40}
html[data-theme="dark"] .status-pill--upcoming,html[data-theme="dark"] .player-meta span{background:#242427;color:#d4d4d8}
html[data-theme="dark"] .team-tags span{background:#2a160b;border-color:#71310d;color:#fdba74}
html[data-theme="dark"] .empty{background:#101012;border-color:#3b3b40}
html[data-theme="dark"] .game-side-badge{background:#2a160b;border-color:#71310d;color:#fdba74}
html[data-theme="dark"] .event-card.event-day-card[data-today="1"]{border:3px solid var(--orange);outline:1px solid rgba(249,115,22,.55);box-shadow:0 0 28px rgba(249,115,22,.22)}
html[data-theme="dark"] .event-card--active{animation:none}

/* Keep current-day identity unmistakable in both themes. */
.event-card.event-day-card[data-today="1"]{border:3px solid var(--orange);outline:1px solid rgba(249,115,22,.32);outline-offset:-1px}

@media(max-width:760px){
  .topbar{height:64px}.main-area{min-height:calc(100vh - 64px)}.topbar-inner{padding:0 10px;gap:8px}.menu-button{width:39px;height:39px}.site-logo--header{width:38px;height:38px}.header-avatar{width:38px;height:38px}.team-title strong{max-width:47vw;font-size:9px}.team-title span{max-width:47vw;font-size:13px}.page-content{padding-top:20px}.page-heading.compact-heading h2,.coach-heading h2{font-size:29px}.invite-card-grid{grid-template-columns:1fr}.profile-hero{grid-template-columns:1fr;text-align:center}.profile-avatar-wrap{justify-content:center}.profile-identity{margin-top:2px}.heading-actions{gap:6px}.heading-actions .secondary-button.compact{font-size:11px;padding:9px 10px}
}
@media(max-width:440px){
  .team-title strong{font-size:8px}.team-title span{display:block;font-size:11px}.site-logo--header{width:35px;height:35px}.header-avatar{width:35px;height:35px}.drawer{width:min(91vw,350px)}.drawer-profile{padding-left:16px}.page-content{width:min(100% - 18px,1060px)}.page-heading.compact-heading,.coach-heading{align-items:flex-end}.page-heading.compact-heading p,.coach-heading p{display:none}.profile-avatar{width:86px;height:86px}.profile-avatar-wrap{grid-template-columns:auto}.profile-avatar{grid-row:auto}.avatar-upload-button,.avatar-remove{width:100%;justify-content:center}.heading-actions .count-badge.large{display:none}
}
.venue-manage-hint{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 11px;border:1px dashed var(--line);border-radius:10px;color:var(--muted);font-size:12px}.venue-manage-hint .text-button{padding:4px 0}.venue-legacy{display:flex;flex-direction:column;gap:3px;padding:10px 11px;border:1px solid #fdba74;background:#fff7ed;border-radius:10px}.venue-legacy strong{font-size:12px;color:#9a3412}.venue-legacy span{font-size:11px;color:#a16207}html[data-theme="dark"] .venue-legacy{background:#25170d;border-color:#9a4b15}html[data-theme="dark"] .venue-legacy strong{color:#fdba74}html[data-theme="dark"] .venue-legacy span{color:#f0b66b}@media(max-width:520px){.venue-manage-hint{align-items:flex-start;flex-direction:column}}

/* v48: stronger header identity, centered profile avatar/cropper and coaching hierarchy */
.team-title span{
  font-size:18px!important;
  line-height:1;
  font-weight:800!important;
  letter-spacing:.035em;
  text-transform:uppercase;
  color:#fff;
}
.team-title strong{font-size:10px;font-weight:650}

/* Profile photo is the upload control itself: centered, no extra upload/delete buttons. */
.profile-hero.profile-hero--centered{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  gap:11px;
  padding:22px 18px;
}
.profile-avatar-wrap--centered{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:8px;
}
.profile-avatar.profile-avatar--editable{
  position:relative;
  grid-row:auto;
  width:126px;
  height:126px;
  cursor:pointer;
  transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease;
}
.profile-avatar.profile-avatar--editable:hover{transform:scale(1.015);box-shadow:0 0 0 6px rgba(249,115,22,.10)}
.profile-avatar.profile-avatar--editable.is-busy{pointer-events:none;opacity:.65}
.profile-avatar.profile-avatar--editable input{display:none}
.profile-avatar-camera{
  position:absolute;
  right:5px;
  bottom:5px;
  width:34px;
  height:34px;
  border-radius:50%;
  display:grid;
  place-items:center;
  color:#fff;
  background:var(--orange);
  border:3px solid var(--surface);
  box-shadow:0 4px 12px rgba(0,0,0,.2);
}
.profile-avatar-hint{font-size:12px;color:var(--muted);font-weight:550}
.profile-identity{display:flex;flex-direction:column;align-items:center;justify-content:center}
.profile-identity h3{font-size:25px;text-align:center}
.profile-identity p{text-align:center}

/* Per-team coaching hierarchy. */
.coach-hierarchy-field{gap:9px}
.coach-hierarchy-list{display:grid;gap:8px}
.coach-hierarchy-row{
  display:grid;
  grid-template-columns:minmax(130px,1fr) minmax(180px,240px);
  align-items:center;
  gap:12px;
  padding:9px 10px;
  border:1px solid var(--line);
  border-radius:11px;
  background:var(--surface-2);
}
.coach-hierarchy-row strong{font-size:13px;font-weight:650;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.coach-hierarchy-row select{width:100%;padding:9px 10px;border:1px solid var(--line);border-radius:9px;background:var(--surface);color:var(--text);outline:none}
.coach-hierarchy-row select:focus{border-color:var(--orange);box-shadow:0 0 0 3px rgba(249,115,22,.1)}
.coach-hierarchy-field>small{font-size:11px;color:var(--muted)}

/* Avatar cropper. */
.avatar-crop-backdrop{z-index:80}
.avatar-crop-wrap{position:fixed;inset:0;z-index:90;display:grid;place-items:center;padding:18px;pointer-events:none}
.avatar-crop-modal{width:min(100%,520px);pointer-events:auto}
.avatar-crop-stage{position:relative;width:min(100%,380px);aspect-ratio:1;margin:8px auto 16px;border-radius:18px;overflow:hidden;background:#090909;box-shadow:inset 0 0 0 1px #2f2f33}
.avatar-crop-stage canvas{display:block;width:100%;height:100%;touch-action:none;cursor:grab;background:#090909}
.avatar-crop-stage canvas:active{cursor:grabbing}
.avatar-crop-ring{position:absolute;inset:7%;border:2px solid rgba(255,255,255,.9);border-radius:50%;box-shadow:0 0 0 999px rgba(0,0,0,.28);pointer-events:none}
.crop-zoom{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:12px;margin:4px 0 2px}
.crop-zoom span{font-size:12px;font-weight:650;color:var(--muted)}
.crop-zoom input{width:100%;accent-color:var(--orange)}
.crop-error{min-height:18px;margin-top:6px;color:#dc2626;font-size:12px;text-align:center}
.avatar-crop-modal .modal-actions .primary-button{width:auto;margin-top:0}

/* Player-only coaching staff screen. */
.trainer-page{max-width:900px}
.trainer-team-section{margin-bottom:20px}
.trainer-team-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:9px}
.trainer-team-head h3{margin:0;font-size:17px;font-weight:700}
.trainer-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.trainer-card{display:grid;grid-template-columns:76px minmax(0,1fr);gap:13px;align-items:start;padding:14px;background:var(--surface);border:1px solid var(--line);border-radius:15px;box-shadow:0 2px 8px rgba(24,24,27,.04)}
.trainer-avatar{width:76px;height:76px;border-radius:50%;overflow:hidden;display:grid;place-items:center;background:var(--black);color:var(--orange);font-size:18px;font-weight:800;border:2px solid var(--orange)}
.trainer-avatar img{width:100%;height:100%;object-fit:cover;display:block}
.trainer-card-copy{min-width:0}
.trainer-role{display:inline-flex;padding:4px 7px;border-radius:999px;background:#fff1e7;color:#9a3412;font-size:10px;font-weight:750;margin-bottom:6px}
.trainer-card h3{margin:0;font-size:16px;line-height:1.15;font-weight:700;overflow-wrap:anywhere}
.trainer-position,.trainer-bio{margin:4px 0 0;color:var(--muted);font-size:12px;line-height:1.35}
.trainer-phone{display:inline-block;margin-top:7px;color:var(--orange);font-size:13px;font-weight:650;text-decoration:none}
.trainer-phone:hover{color:var(--orange-dark)}

html[data-theme="dark"] .coach-hierarchy-row{background:#111113;border-color:var(--line)}
html[data-theme="dark"] .coach-hierarchy-row select{background:#171719;color:#fff;border-color:#3b3b40}
html[data-theme="dark"] .trainer-card{background:var(--surface);border-color:var(--line)}
html[data-theme="dark"] .trainer-role{background:#2a160b;color:#fdba74}
html[data-theme="dark"] .profile-avatar-camera{border-color:#0c0c0d}

@media(max-width:760px){
  .team-title span{font-size:15px!important;max-width:52vw}
  .profile-avatar.profile-avatar--editable{width:112px;height:112px}
  .trainer-grid{grid-template-columns:1fr}
}
@media(max-width:440px){
  .team-title span{display:block;font-size:13px!important;letter-spacing:.025em}
  .team-title strong{font-size:8px}
  .profile-avatar.profile-avatar--editable{width:104px;height:104px}
  .profile-avatar-camera{width:31px;height:31px}
  .coach-hierarchy-row{grid-template-columns:1fr;gap:7px}
  .avatar-crop-wrap{padding:8px;align-items:end}
  .avatar-crop-modal{border-radius:20px 20px 0 0;padding:16px 14px calc(16px + env(safe-area-inset-bottom))}
  .avatar-crop-stage{width:min(100%,330px);margin-bottom:12px}
  .trainer-card{grid-template-columns:64px minmax(0,1fr);padding:12px}
  .trainer-avatar{width:64px;height:64px}
}

/* v49: live training timer, progress bar and completed state */
.event-live-time{font-variant-numeric:tabular-nums}
.event-live-label{display:block;margin:0 0 4px;color:var(--orange);font-size:11px;line-height:1;font-weight:700;letter-spacing:.02em}
.event-time-clean--active .event-live-value,.event-day-row--active .event-live-value{color:var(--orange-dark);font-size:21px;font-weight:700;letter-spacing:.015em}
.event-progress-wrap:not(.is-active){display:none}
.event-progress-wrap.is-active{display:block;height:5px;background:#e5e7eb;opacity:1}
.event-progress-wrap.is-active .event-progress-bar{height:100%;background:var(--orange);transition:width .35s linear}
.event-day-row--completed{opacity:1;background:#e7e7e9;color:#8a8a91;pointer-events:none;cursor:default;filter:grayscale(1)}
.event-day-row--completed .event-day-copy h3,.event-day-row--completed .event-location,.event-day-row--completed .event-location a,.event-day-row--completed .event-live-value,.event-day-row--completed .game-side-badge{color:#8a8a91}
.event-day-row--completed .event-location svg{color:#9a9aa0;stroke:#9a9aa0}
.event-day-row--completed .event-live-label{display:none}
.event-day-row--completed .event-live-value{font-size:13px;font-weight:650;letter-spacing:0}
.event-card--completed{background:#eeeeef;box-shadow:none}
.event-card--completed:not(.event-day-card--today){border-color:#c8c8cc}
.event-card--completed .event-day-list-head,.event-card--completed .event-day-tile-head{background:#dedee1;color:#797980}
.event-card--completed .event-day-list-date,.event-card--completed .event-date-clean{color:#797980}
.event-card--completed .event-day-rows--tile{background:#e7e7e9}
.event-day-row--compact .event-live-time{display:flex;align-items:baseline;gap:7px;margin:0 0 7px;min-width:0}
.event-day-row--compact .event-live-label{margin:0;flex:0 0 auto}
.event-day-row--compact .event-live-value{display:block;min-width:0;font-size:14px;line-height:1.05;font-weight:650;white-space:nowrap}
.event-day-row--compact.event-day-row--active .event-live-value{font-size:17px;color:var(--orange-dark)}
html[data-theme="dark"] .event-progress-wrap.is-active{background:#34343a}
html[data-theme="dark"] .event-day-row--completed{background:#29292d;color:#77777f}
html[data-theme="dark"] .event-day-row--completed .event-day-copy h3,html[data-theme="dark"] .event-day-row--completed .event-location,html[data-theme="dark"] .event-day-row--completed .event-location a,html[data-theme="dark"] .event-day-row--completed .event-live-value{color:#77777f}
html[data-theme="dark"] .event-card--completed{background:#202024;border-color:#3a3a40}
html[data-theme="dark"] .event-card--completed .event-day-list-head,html[data-theme="dark"] .event-card--completed .event-day-tile-head{background:#252529;color:#7f7f87}
html[data-theme="dark"] .event-card--completed .event-day-rows--tile{background:#29292d}
@media(max-width:760px){.event-time-clean--active .event-live-value,.event-day-row--active .event-live-value{font-size:18px}.event-live-label{font-size:10px}}
@media(max-width:440px){.event-time-clean--active .event-live-value,.event-day-row--active .event-live-value{font-size:16px}.event-day-row--compact.event-day-row--active .event-live-value{font-size:15px}}

/* v51: player directory cards + coach player management */
.players-heading{margin-bottom:16px}
.players-heading h2{margin:0}
.players-grid--square{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:12px}
.player-card--square{position:relative;aspect-ratio:1/1;min-width:0;border:1px solid var(--line);background:var(--surface,#fff);border-radius:18px;padding:16px 12px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;color:var(--text,#18181b);font:inherit;text-align:center;cursor:pointer;box-shadow:0 4px 18px rgba(24,24,27,.05);transition:border-color .18s ease,transform .18s ease,box-shadow .18s ease,opacity .18s ease}
.player-card--square:hover{border-color:#fdba74;box-shadow:0 8px 26px rgba(24,24,27,.09);transform:translateY(-2px)}
.player-card--square:active{transform:scale(.985)}
.player-card--square.is-inactive{opacity:.55;filter:grayscale(.65)}
.player-card-photo{width:76px;height:76px;border-radius:50%;overflow:hidden;display:grid;place-items:center;background:var(--black);color:var(--orange);font-size:21px;font-weight:800;flex:none}
.player-card-photo img{width:100%;height:100%;object-fit:cover;display:block}
.player-card-name{width:100%;font-size:15px;line-height:1.15;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.player-card-team{width:100%;font-size:12px;line-height:1.2;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.player-card-meta{display:flex;justify-content:center;gap:6px;flex-wrap:wrap;min-height:22px}
.player-card-meta span{font-size:11px;font-weight:650;background:#f4f4f5;color:#52525b;border-radius:999px;padding:4px 7px}
.player-state{position:absolute;top:10px;right:10px;border-radius:999px;padding:4px 7px;background:#ecfdf5;color:#047857;font-size:10px;font-weight:750}
.player-state--off{background:#f4f4f5;color:#71717a}
.player-modal-backdrop{z-index:82}
.player-modal-wrap{position:fixed;inset:0;z-index:92;display:grid;place-items:center;padding:18px;pointer-events:none}
.player-modal{pointer-events:auto;width:min(100%,650px);max-height:calc(100vh - 36px);overflow:auto;box-shadow:0 28px 80px rgba(0,0,0,.32)}
.player-modal-hero{display:flex;align-items:center;gap:18px;padding:4px 0 20px;margin-bottom:18px;border-bottom:1px solid var(--line)}
.player-modal-avatar{position:relative;width:104px;height:104px;border-radius:50%;overflow:hidden;display:grid;place-items:center;background:var(--black);color:var(--orange);font-size:28px;font-weight:800;flex:none}
.player-modal-avatar img{width:100%;height:100%;object-fit:cover;display:block}
.player-modal-avatar.is-editable{cursor:pointer;border:0;padding:0;appearance:none;-webkit-appearance:none}
.player-modal-avatar.is-editable:hover{box-shadow:0 0 0 3px rgba(249,115,22,.25)}
.player-modal-avatar input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}
.player-modal-summary{min-width:0;display:flex;flex-direction:column;gap:4px}
.player-modal-summary>strong{font-size:21px;line-height:1.1}
.player-modal-summary>span{font-size:13px;color:var(--muted)}
.player-modal-summary>small{font-size:12px;color:var(--orange-dark);font-weight:700}
.player-modal-actions{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:18px}
.danger-button{min-height:42px;border:1px solid #fecaca;background:#fff1f2;color:#be123c;border-radius:11px;padding:10px 14px;font:inherit;font-size:13px;font-weight:700;cursor:pointer}
.danger-button:hover{background:#ffe4e6;border-color:#fda4af}
.player-modal-actions .primary-button{width:auto;min-width:150px;margin:0}
.player-delete-confirm{margin-top:12px;padding:12px;border:1px solid #fecaca;background:#fff7f7;border-radius:12px;display:flex;align-items:center;justify-content:space-between;gap:12px}
.player-delete-confirm>strong{font-size:12px;color:#9f1239}
.player-delete-confirm>div{display:flex;gap:7px;flex:none}
.player-delete-confirm .secondary-button,.player-delete-confirm .danger-button{min-height:36px;padding:7px 10px;font-size:12px}
.player-details{display:block;border-top:1px solid var(--line)}
.player-details>div{display:grid;grid-template-columns:120px minmax(0,1fr);align-items:baseline;gap:14px;padding:10px 0;border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent}
.player-details span{font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;font-weight:700}
.player-details strong,.player-details a{font-size:14px;color:var(--text,#18181b);text-decoration:none}
.player-details a{color:var(--orange-dark);font-weight:700}
.player-details-bio{display:block!important}
.player-details-bio p{margin:0;font-size:13px;line-height:1.45;color:var(--text,#18181b)}
html[data-theme="dark"] .player-card--square{background:#18181b;border-color:#303036;color:#fafafa}
html[data-theme="dark"] .player-card-meta span{background:#242427;color:#d4d4d8}
html[data-theme="dark"] .player-state{background:#12352a;color:#86efac}
html[data-theme="dark"] .player-state--off{background:#2a2a2f;color:#a1a1aa}
html[data-theme="dark"] .player-details>div{background:transparent;border-color:#303036}
html[data-theme="dark"] .player-details strong,html[data-theme="dark"] .player-details p{color:#f4f4f5}
html[data-theme="dark"] .danger-button{background:#35161d;border-color:#64212f;color:#fda4af}
html[data-theme="dark"] .player-delete-confirm{background:#2c151a;border-color:#64212f}
html[data-theme="dark"] .player-delete-confirm>strong{color:#fda4af}
@media(max-width:760px){.players-grid--square{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.player-card--square{padding:12px 8px;border-radius:15px}.player-card-photo{width:66px;height:66px;font-size:18px}.player-card-name{font-size:13px}.player-card-team{font-size:11px}.player-card-meta span{font-size:10px}.player-modal-wrap{padding:8px;align-items:end}.player-modal{max-height:calc(100vh - 8px);border-radius:20px 20px 0 0;padding-bottom:calc(16px + env(safe-area-inset-bottom))}.player-modal-hero{gap:14px}.player-modal-avatar{width:86px;height:86px}.player-modal-summary>strong{font-size:18px}.player-modal-actions{flex-direction:column-reverse;align-items:stretch}.player-modal-actions .primary-button,.player-modal-actions .danger-button{width:100%}.player-delete-confirm{align-items:stretch;flex-direction:column}.player-delete-confirm>div{display:grid;grid-template-columns:1fr 1fr}.player-details>div{grid-template-columns:92px minmax(0,1fr);gap:10px}}
@media(max-width:380px){.players-grid--square{gap:7px}.player-card-photo{width:58px;height:58px}.player-card-name{font-size:12px}.player-state{top:7px;right:7px;font-size:9px;padding:3px 5px}}

/* v52: player card details first, edit on demand */
.player-modal-hero--view{padding-top:2px}
.player-edit-button{width:auto;min-width:190px;margin:18px 0 0 auto}
.player-avatar-file{display:none!important}
.player-edit-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px}
.player-edit-actions .primary-button{margin:0;width:auto;min-width:140px}
.player-modal form .field select{width:100%;padding:11px 12px;border:1px solid #d4d4d8;border-radius:10px;background:#fafafa;outline:none;transition:.15s}
.player-modal form .field select:focus{border-color:var(--orange);background:white;box-shadow:0 0 0 3px rgba(249,115,22,.1)}
html[data-theme="dark"] .player-modal form .field select{background:#1f1f23;border-color:#3f3f46;color:#fafafa}
@media(max-width:760px){
  .player-edit-button{width:100%;margin-left:0}
  .player-edit-actions{width:100%;display:grid;grid-template-columns:1fr 1fr}
  .player-edit-actions .primary-button,.player-edit-actions .secondary-button{width:100%;min-width:0}
}

/* v53: player representatives and cleaner player modal */
.player-modal-head{align-items:center;margin-bottom:8px}
.player-modal-head .eyebrow{font-size:12px;letter-spacing:.08em}
.representatives-view{margin-top:18px;padding-top:16px;border-top:1px solid var(--line)}
.representatives-view-head,.representatives-editor-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}
.representatives-view-head>div,.representatives-editor-head>div{min-width:0}
.representatives-view h4,.representatives-editor h4{margin:2px 0 0;font-size:16px;line-height:1.15}
.representatives-list{display:block;border-top:1px solid var(--line)}
.representative-card{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:11px 0;border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent}
.representative-copy{min-width:0;display:flex;flex:1 1 auto;flex-direction:column;gap:3px}
.representative-copy strong{font-size:14px;line-height:1.2}
.representative-copy span{font-size:12px;color:var(--muted)}
.representative-contacts{display:flex;flex:0 0 auto;align-self:stretch;flex-direction:column;align-items:flex-end;justify-content:center;gap:4px;min-width:0}
.representative-contacts a,.representative-contacts span{display:flex;align-items:center;justify-content:flex-end;gap:6px;max-width:100%;font-size:17px;line-height:1.1;color:var(--orange-dark);font-weight:800;text-decoration:none;white-space:nowrap;word-break:normal;font-variant-numeric:tabular-nums}
.representatives-empty{margin:0}
.representatives-editor{margin-top:18px;padding-top:16px;border-top:1px solid var(--line)}
.representatives-editor-head{margin-bottom:12px}
.representatives-editor-list{display:grid;gap:10px}
.representative-edit-row{position:relative;padding:12px 46px 12px 12px;border:1px solid var(--line);border-radius:14px;background:var(--surface-2,#fafafa)}
.representative-edit-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.representative-edit-grid .field--wide{grid-column:1/-1}
.representative-remove{position:absolute;right:10px;top:10px}
.representatives-hint{margin:8px 0 0;color:var(--muted);font-size:12px;line-height:1.35}
html[data-theme="dark"] .representative-card{background:transparent;border-color:#303036}
html[data-theme="dark"] .representative-edit-row{background:#1f1f23;border-color:#303036}
html[data-theme="dark"] .representative-copy strong,html[data-theme="dark"] .representatives-view h4,html[data-theme="dark"] .representatives-editor h4{color:#fafafa}
@media(max-width:760px){
  .representative-card{align-items:center;flex-direction:row;gap:12px}
  .representative-copy strong{font-size:13px}
  .representative-copy span{font-size:11px}
  .representative-contacts{align-items:flex-end;justify-content:center}
  .representative-contacts a,.representative-contacts span{font-size:15px}
  .representative-edit-grid{grid-template-columns:1fr}
  .representative-edit-grid .field--wide{grid-column:auto}
}

/* v54: registration profile data, presence and player avatar fallback */
.registration-profile-block{display:grid;gap:12px;margin-bottom:12px}
.registration-player-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.registration-player-grid .field--wide{grid-column:1/-1}
.registration-representative{margin-top:2px;padding:14px;border:1px solid var(--line);border-radius:14px;background:var(--surface-2,#fafafa);display:grid;gap:12px}
.registration-representative.is-hidden{display:none}
.registration-subhead{display:flex;flex-direction:column;gap:2px}
.registration-subhead strong{font-size:14px;font-weight:750}
.registration-subhead span{font-size:12px;color:var(--muted)}
.auth-form .field select{width:100%;padding:11px 12px;border:1px solid #d4d4d8;border-radius:10px;background:#fafafa;outline:none;transition:.15s}
.auth-form .field select:focus{border-color:var(--orange);background:white;box-shadow:0 0 0 3px rgba(249,115,22,.1)}
.avatar-fallback{display:inline-flex;align-items:center;justify-content:center;width:100%;height:100%;line-height:1}
.avatar-fallback--number{font-variant-numeric:tabular-nums;font-size:1.15em;letter-spacing:-.04em}
.player-card-photo .avatar-fallback--number{font-size:26px}
.player-modal-avatar .avatar-fallback--number{font-size:36px}
.profile-avatar .avatar-fallback--number{font-size:34px}
.header-avatar .avatar-fallback--number,.drawer-avatar .avatar-fallback--number{font-size:15px}
.player-card-presence{min-height:20px;display:flex;justify-content:center;align-items:center}
.presence-badge{display:inline-flex;align-items:center;gap:6px;width:max-content;font-size:12px;font-weight:700;color:var(--muted);line-height:1}
.presence-badge i{width:8px;height:8px;border-radius:50%;background:#a1a1aa;box-shadow:0 0 0 3px rgba(161,161,170,.13)}
.presence-badge.is-online{color:#15803d}
.presence-badge.is-online i{background:#22c55e;box-shadow:0 0 0 3px rgba(34,197,94,.14)}
.presence-badge.is-offline{color:#71717a}
.presence-badge.is-compact{font-size:10px;gap:5px}
.presence-badge.is-compact i{width:7px;height:7px}
.player-modal-summary .presence-badge{margin-top:4px}
.player-account-status{font-size:12px;letter-spacing:.08em;font-weight:800}
.player-account-status.is-active{color:var(--orange-dark)}
.player-account-status.is-inactive{color:#71717a}
html[data-theme="dark"] .registration-representative{background:#1f1f23;border-color:#303036}
html[data-theme="dark"] .auth-form .field select{background:#1f1f23;border-color:#3f3f46;color:#fafafa}
html[data-theme="dark"] .auth-form .field select:focus{background:#18181b}
html[data-theme="dark"] .presence-badge.is-offline{color:#a1a1aa}
@media(max-width:520px){.registration-player-grid{grid-template-columns:1fr}.registration-player-grid .field--wide{grid-column:auto}.registration-representative{padding:12px}.player-card-photo .avatar-fallback--number{font-size:23px}.player-modal-avatar .avatar-fallback--number{font-size:31px}}


/* v56: flat player details in modal */
.player-details-bio>span{display:block;margin-bottom:5px}
.player-details-bio p{margin:0}
.player-details>div>strong,.player-details>div>a,.player-details>div>p{justify-self:start}
.representatives-view{padding-top:14px}
.representatives-view-head{margin-bottom:8px}
.representative-copy strong{font-weight:700}
.representative-contacts{gap:3px}
@media(max-width:420px){.player-details>div{grid-template-columns:82px minmax(0,1fr);padding:9px 0}.player-details span{font-size:9px}.player-details strong,.player-details a{font-size:13px}}


/* v57: animated basketball decoration inside the drawer. */
@media(max-width:480px){.drawer-decoration{left:-150px;top:50%;width:420px;height:420px;transform:translateY(-50%) rotate(75deg)}}

/* v61: basketball uses the same spring rotation curve as ios pwa wheel. */
@media(prefers-reduced-motion:reduce){.drawer-ball-logo{transition:none}}


/* v62: keep the same 285deg wheel motion, but pre-rotate the ball so its vertical seam finishes parallel to the screen edge. */

/* v63: compact player presence + documents. */
.player-card--square{overflow:visible}
.player-presence-dot{position:absolute;top:12px;right:12px;width:11px;height:11px;border-radius:50%;background:#a1a1aa;box-shadow:0 0 0 4px rgba(161,161,170,.15);z-index:4}
.player-presence-dot.is-online{background:#22c55e;box-shadow:0 0 0 4px rgba(34,197,94,.16)}
.player-presence-dot::after{content:attr(data-tooltip);position:absolute;right:-7px;bottom:calc(100% + 10px);width:max-content;max-width:245px;padding:7px 9px;border-radius:8px;background:#18181b;color:#fff;font-size:11px;font-weight:600;line-height:1.25;white-space:nowrap;opacity:0;visibility:hidden;transform:translateY(4px);transition:opacity .14s ease,transform .14s ease,visibility .14s ease;pointer-events:none;box-shadow:0 8px 26px rgba(0,0,0,.2)}
.player-presence-dot::before{content:"";position:absolute;right:1px;bottom:calc(100% + 5px);border:5px solid transparent;border-top-color:#18181b;opacity:0;visibility:hidden;transition:opacity .14s ease,visibility .14s ease}
@media(hover:hover) and (pointer:fine){.player-presence-dot:hover::after,.player-presence-dot:hover::before{opacity:1;visibility:visible;transform:translateY(0)}}
.player-card-presence,.player-state{display:none}
.player-presence-head{font-size:12px!important;letter-spacing:.045em!important;font-weight:750!important;color:#71717a!important;text-transform:uppercase}
.player-presence-head.is-online{color:#15803d!important}
.player-presence-head.is-offline{color:#71717a!important}
.player-details>div{grid-template-columns:180px minmax(0,1fr)}
.representatives-view-head,.representatives-editor-head{justify-content:flex-start}
.representatives-editor-head .secondary-button{margin-left:auto}
html[data-theme="dark"] .player-presence-dot{background:#71717a;box-shadow:0 0 0 4px rgba(161,161,170,.12)}
html[data-theme="dark"] .player-presence-dot.is-online{background:#22c55e;box-shadow:0 0 0 4px rgba(34,197,94,.14)}
html[data-theme="dark"] .player-presence-head.is-online{color:#4ade80!important}
html[data-theme="dark"] .player-presence-head.is-offline{color:#a1a1aa!important}
@media(max-width:760px){.player-presence-dot{top:9px;right:9px;width:10px;height:10px}.player-details>div{grid-template-columns:142px minmax(0,1fr)}}
@media(max-width:420px){.player-details>div{grid-template-columns:116px minmax(0,1fr)}.player-details span{white-space:normal;line-height:1.2}.player-presence-head{font-size:11px!important}}


/* v65: offline presence label stays lowercase before date/time. */
.player-presence-head.is-offline{text-transform:none!important;letter-spacing:0!important}


/* v66: player presence slides out from under the whole card on hover. */
.player-card-shell{
  display:flex;
  flex-direction:column;
  min-width:0;
  width:100%;
  overflow:visible;
}
.player-card-shell .player-card--square{
  width:100%;
  position:relative;
  z-index:2;
  margin:0;
}
.player-presence-dot{
  cursor:default;
}
.player-presence-dot::before,
.player-presence-dot::after{
  content:none;
  display:none;
}
.player-presence-slide{
  box-sizing:border-box;
  width:100%;
  min-height:44px;
  margin:-22px 0 0;
  padding:1.35rem .72rem .36rem;
  position:relative;
  z-index:0;
  display:flex;
  align-items:flex-end;
  justify-content:center;
  border:1px solid #d4d4d8;
  border-top-color:#e4e4e7;
  border-radius:18px;
  background:linear-gradient(180deg,#f4f4f5,#fafafa);
  color:#71717a;
  box-shadow:0 8px 22px rgba(24,24,27,.08);
  opacity:.72;
  transform:translateY(-22px);
  transition:transform .28s ease,opacity .28s ease,color .22s ease,box-shadow .28s ease,border-color .28s ease,background .28s ease;
  pointer-events:none;
}
.player-presence-slide span{
  display:block;
  width:100%;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  text-align:center;
  font-size:11px;
  line-height:1.15;
  font-weight:650;
  font-variant-numeric:tabular-nums;
}
.player-presence-slide.is-online{
  color:#15803d;
  border-color:rgba(34,197,94,.28);
  background:linear-gradient(180deg,rgba(34,197,94,.08),rgba(34,197,94,.035)),var(--surface,#fff);
}
@media(hover:hover) and (pointer:fine){
  .player-card-shell:hover .player-presence-slide,
  .player-card-shell:focus-within .player-presence-slide{
    transform:translateY(0);
    opacity:1;
    box-shadow:0 11px 25px rgba(24,24,27,.12);
  }
  .player-card-shell:hover .player-presence-slide.is-online,
  .player-card-shell:focus-within .player-presence-slide.is-online{
    border-color:rgba(34,197,94,.42);
    box-shadow:0 11px 25px rgba(22,101,52,.12);
  }
}
html[data-theme="dark"] .player-presence-slide{
  color:#a1a1aa;
  border-color:#303036;
  border-top-color:#27272a;
  background:linear-gradient(180deg,#202023,#18181b);
  box-shadow:0 9px 24px rgba(0,0,0,.26);
}
html[data-theme="dark"] .player-presence-slide.is-online{
  color:#4ade80;
  border-color:rgba(74,222,128,.26);
  background:linear-gradient(180deg,rgba(34,197,94,.13),rgba(34,197,94,.045)),#18181b;
}
@media(hover:none),(pointer:coarse){
  .player-presence-slide{display:none}
}


/* v67: full-width player presence slide, matching the main player card footprint. */
@media(max-width:760px){.player-presence-slide{border-radius:15px}}

/* v71: narrow-screen player cards stay compact; player modal remains centered. */
.players-page,.players-grid--square,.player-card-shell,.player-card--square{min-width:0;max-width:100%}
.player-card--square{overflow:hidden}
.player-card-name,.player-card-team{min-width:0;max-width:100%}
.player-card-meta{width:100%;min-width:0;max-width:100%}
.player-card-meta span{min-width:0;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.player-modal,.player-modal *{min-width:0}
.player-details strong,.player-details a,.player-details p{overflow-wrap:anywhere;word-break:break-word}
.representative-copy,.representative-contacts{min-width:0;max-width:100%}
.representative-contacts a,.representative-contacts span{max-width:100%;overflow:hidden;text-overflow:ellipsis}

@media(max-width:760px){
  .player-modal-wrap{
    place-items:center;
    align-items:center;
    justify-items:center;
    padding:10px;
    overflow:hidden;
  }
  .player-modal{
    width:min(100%,650px);
    max-width:100%;
    max-height:calc(100vh - 20px);
    margin:0;
    border-radius:18px;
    padding-bottom:16px;
  }
}

@media(max-width:380px){
  .players-grid--square{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:6px;
  }
  .player-card--square{
    width:100%;
    max-width:100%;
    aspect-ratio:1 / 1;
    padding:8px 5px;
    gap:4px;
    border-radius:13px;
  }
  .player-card-photo{width:50px;height:50px;font-size:16px}
  .player-card-name{font-size:11px;line-height:1.12}
  .player-card-team{font-size:9px;line-height:1.12}
  .player-card-meta{gap:3px;flex-wrap:nowrap;justify-content:center}
  .player-card-meta span{font-size:8px;padding:3px 4px;flex:0 1 auto}
  .player-presence-dot{top:7px;right:7px;width:9px;height:9px}
  .player-modal-wrap{padding:8px}
  .player-modal{
    width:100%;
    max-height:calc(100vh - 16px);
    border-radius:16px;
    padding:13px;
  }
  .player-modal-hero{gap:10px;padding-bottom:14px;margin-bottom:12px}
  .player-modal-avatar{width:72px;height:72px;font-size:22px}
  .player-modal-summary>strong{font-size:16px}
  .player-modal-summary>span,.player-modal-summary>small{font-size:11px}
  .player-details>div{grid-template-columns:minmax(86px,104px) minmax(0,1fr);gap:8px;padding:9px 0}
  .player-details span{font-size:9px}
  .player-details strong,.player-details a{font-size:12px}
  .representative-card{gap:8px}
  .representative-copy{flex:1 1 54%}
  .representative-contacts{flex:0 1 46%}
  .representative-contacts a,.representative-contacts span{font-size:13px}
}

@media(max-width:330px){
  .page-content.players-page{width:min(100% - 12px,1060px)}
  .players-grid--square{gap:5px}
  .player-card--square{padding:7px 4px;gap:3px}
  .player-card-photo{width:44px;height:44px;font-size:14px}
  .player-card-name{font-size:10px}
  .player-card-team{font-size:8px}
  .player-card-meta span{font-size:7px;padding:2px 3px}
  .player-modal{padding:11px;border-radius:14px}
  .player-modal-avatar{width:64px;height:64px}
  .player-details>div{grid-template-columns:minmax(78px,94px) minmax(0,1fr)}
  .representative-contacts a,.representative-contacts span{font-size:12px}
}

/* v73: stable player-card sizing across desktop/tablet breakpoints. */
.players-grid--square{
  grid-template-columns:repeat(auto-fill,176px);
  justify-content:start;
  align-items:start;
  gap:12px;
}
.player-card-shell{
  width:176px;
  max-width:176px;
}
.player-card-shell .player-card--square{
  width:176px;
  height:176px;
  max-width:176px;
  aspect-ratio:auto;
}
.player-card-name{
  width:100%;
  max-width:100%;
  min-height:2.3em;
  white-space:normal;
  overflow:hidden;
  text-overflow:clip;
  overflow-wrap:anywhere;
  word-break:normal;
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
  line-clamp:2;
}
.player-card-team{
  width:100%;
  max-width:100%;
  white-space:normal;
  overflow:hidden;
  text-overflow:clip;
  overflow-wrap:anywhere;
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
  line-clamp:2;
}

/* Do not switch to two stretched columns on tablet widths. */
@media (min-width:381px) and (max-width:760px){
  .players-grid--square{
    grid-template-columns:repeat(auto-fill,176px);
    justify-content:start;
    gap:12px;
  }
  .player-card-shell{
    width:176px;
    max-width:176px;
  }
  .player-card-shell .player-card--square{
    width:176px;
    height:176px;
    max-width:176px;
    aspect-ratio:auto;
    padding:12px 8px;
  }
}

/* Only genuinely narrow phones shrink the cards with the available width. */
@media (max-width:380px){
  .players-grid--square{
    grid-template-columns:repeat(2,minmax(0,1fr));
    justify-content:stretch;
    gap:6px;
  }
  .player-card-shell{
    width:100%;
    max-width:none;
  }
  .player-card-shell .player-card--square{
    width:100%;
    height:auto;
    max-width:none;
    aspect-ratio:1/1;
  }
  .player-card-name{
    min-height:2.3em;
    white-space:normal;
  }
}


/* v74: compact representative editor — name + relation in one row, phone below. */
.representative-edit-grid{grid-template-columns:minmax(0,1.45fr) minmax(112px,.85fr);align-items:end}
.representative-edit-grid .representative-phone-field{grid-column:1/-1}
.representative-edit-grid .representative-name-field,.representative-edit-grid .representative-relation-field,.representative-edit-grid .representative-phone-field{min-width:0}
.representative-edit-grid .representative-relation-field select{width:100%;min-width:0}
@media(max-width:760px){
  .representative-edit-grid{grid-template-columns:minmax(0,1.35fr) minmax(108px,.85fr)}
  .representative-edit-grid .representative-phone-field{grid-column:1/-1}
}
@media(max-width:360px){
  .representative-edit-grid{grid-template-columns:minmax(0,1.15fr) minmax(100px,.85fr);gap:8px}
}

/* v75: keep player-card geometry identical across desktop/tablet widths. */
@media (min-width:381px){
  .players-grid--square{
    grid-template-columns:repeat(auto-fill,176px);
    justify-content:start;
    align-items:start;
    gap:12px;
  }
  .player-card-shell{
    width:176px;
    max-width:176px;
  }
  .player-card-shell .player-card--square{
    width:176px;
    height:176px;
    max-width:176px;
    aspect-ratio:auto;
    box-sizing:border-box;
    padding:13px 10px;
    display:grid;
    grid-template-columns:1fr;
    grid-template-rows:66px 30px 20px 22px;
    row-gap:4px;
    align-content:start;
    align-items:center;
    justify-items:center;
  }
  .player-card-photo{
    width:66px;
    height:66px;
    font-size:18px;
    align-self:center;
    justify-self:center;
  }
  .player-card-name{
    width:100%;
    height:30px;
    min-height:30px;
    max-height:30px;
    margin:0;
    padding:0;
    font-size:13px;
    line-height:15px;
    display:-webkit-box;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:2;
    line-clamp:2;
    white-space:normal;
    overflow:hidden;
    overflow-wrap:anywhere;
    text-overflow:clip;
    align-self:center;
  }
  .player-card-team{
    width:100%;
    height:20px;
    min-height:20px;
    max-height:20px;
    margin:0;
    padding:0;
    font-size:10px;
    line-height:10px;
    display:flex;
    align-items:center;
    justify-content:center;
    white-space:normal;
    overflow:hidden;
    overflow-wrap:anywhere;
    text-overflow:clip;
  }
  .player-card-meta{
    width:100%;
    height:22px;
    min-height:22px;
    max-height:22px;
    margin:0;
    padding:0;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:4px;
    flex-wrap:nowrap;
    overflow:hidden;
  }
  .player-card-meta span{
    font-size:10px;
    line-height:1;
    padding:4px 7px;
    white-space:nowrap;
  }
  .player-presence-dot{
    top:10px;
    right:10px;
    width:10px;
    height:10px;
  }
}

/* Truly narrow phones scale only the whole card; internal order remains fixed. */
@media (max-width:380px){
  .player-card-shell .player-card--square{
    display:grid;
    grid-template-columns:1fr;
    grid-template-rows:minmax(44px,1fr) 28px 18px 20px;
    align-items:center;
    justify-items:center;
  }
  .player-card-name{
    width:100%;
    height:28px;
    min-height:28px;
    max-height:28px;
    line-height:14px;
    display:-webkit-box;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:2;
    line-clamp:2;
    white-space:normal;
    overflow:hidden;
    text-overflow:clip;
  }
  .player-card-team{
    width:100%;
    height:18px;
    min-height:18px;
    max-height:18px;
    display:flex;
    align-items:center;
    justify-content:center;
    overflow:hidden;
  }
  .player-card-meta{
    height:20px;
    min-height:20px;
    max-height:20px;
    align-items:center;
    overflow:hidden;
  }
}
\n\n/* v78: stable player card with larger team and jersey number. */
@media (min-width:381px){
  .player-card-shell .player-card--square{
    grid-template-rows:64px 28px 22px 24px;
  }
  .player-card-photo{
    width:64px;
    height:64px;
  }
  .player-card-name{
    height:28px;
    min-height:28px;
    max-height:28px;
    line-height:14px;
  }
  .player-card-team{
    height:22px;
    min-height:22px;
    max-height:22px;
    font-size:12px;
    line-height:12px;
    font-weight:600;
  }
  .player-card-meta{
    height:24px;
    min-height:24px;
    max-height:24px;
  }
  .player-card-meta .player-card-number{
    font-size:12px;
    font-weight:800;
    padding:5px 8px;
  }
}
@media (max-width:380px){
  .player-card-team{font-size:10px;line-height:11px;font-weight:600}
  .player-card-meta .player-card-number{font-size:10px;font-weight:800;padding:3px 5px}
}


/* v79: schedule management create/edit moved into modal. */
.coach-heading .coach-new-event{width:auto;min-height:40px;margin:0;padding:9px 14px;white-space:nowrap}
.event-modal{width:min(760px,100%);margin:0}
.event-modal.event-form{margin-bottom:0}
.event-modal .modal-head{margin-bottom:18px}
.event-modal-actions{margin-top:18px}
@media(max-width:560px){
  .coach-heading{align-items:center!important}
  .coach-heading .coach-new-event{min-height:38px;padding:8px 10px;font-size:12px}
  .event-modal-wrap{padding:8px}
  .event-modal{max-height:calc(100vh - 16px)}
}


/* v80: schedule management polish + theme-aware event type manager. */
.manage-date span{font-size:13px;line-height:1.15;font-weight:850}
.manage-event-meta{min-width:0;display:flex;align-items:center;gap:5px;margin-top:3px;font-size:11px;color:var(--muted);white-space:nowrap;overflow:hidden}
.manage-event-meta>span,.manage-location-name,.manage-location-link{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.manage-event-meta>i{font-style:normal;flex:none;color:var(--muted)}
.manage-location-link{color:var(--orange-dark);font-weight:800;text-decoration:none}
.manage-location-link:hover{text-decoration:underline}
html[data-theme="dark"] .manage-location-link,html[data-theme="dark"] .manage-location-link:visited{color:var(--orange)}

.type-manager{background:var(--surface);color:var(--text);border-color:var(--line)}
.type-manager .panel-help{color:var(--muted)}
.type-preset-list{border-top-color:var(--line)}
.type-preset-row{background:var(--surface-2);border-color:var(--line);color:var(--text)}
.type-preset-row strong{color:var(--text)}
.type-preset-actions{display:flex;gap:5px;align-items:center;flex-wrap:nowrap}
.type-preset-row .icon-button{background:var(--surface);border-color:var(--line);color:var(--text-2)}
.type-preset-row .icon-button:hover{border-color:var(--orange);color:var(--orange-dark)}
.type-preset-row .icon-button.danger:hover{border-color:#fecaca;color:#dc2626}
.type-order-button:disabled{opacity:.28;cursor:default}
.type-add-row .field input{background:var(--surface-2);border-color:var(--line);color:var(--text)}
html[data-theme="dark"] .type-preset-row .icon-button{background:var(--surface);border-color:var(--line);color:var(--text)}
html[data-theme="dark"] .type-preset-row .icon-button:hover{color:var(--orange);border-color:var(--orange)}
html[data-theme="dark"] .type-add-row .field input{background:var(--surface-2);border-color:var(--line);color:var(--text)}

@media(max-width:760px){
  .manage-date span{font-size:12px}
  .manage-event-meta{font-size:10.5px}
  .type-preset-row{padding:9px 10px}
  .type-preset-actions{gap:4px}
}

/* v81: all event types participate in sorting; built-in types are fixed from deletion. */
.type-preset-name{display:flex;align-items:center;gap:8px;min-width:0}
.type-standard-badge{display:inline-flex;align-items:center;min-height:20px;padding:2px 7px;border-radius:999px;border:1px solid var(--line);background:var(--surface);color:var(--text-2);font-size:9px;font-weight:850;letter-spacing:.05em;text-transform:uppercase;white-space:nowrap}
.type-preset-row.is-builtin{background:color-mix(in srgb,var(--surface-2) 82%,var(--orange) 18%)}
html[data-theme="dark"] .type-preset-row.is-builtin{background:color-mix(in srgb,var(--surface-2) 90%,var(--orange) 10%)}
@media(max-width:480px){.type-preset-name{gap:5px}.type-standard-badge{font-size:8px;padding:2px 5px}}

/* v82: адрес локации сам является ссылкой на карту. */
.venue-address-link{font-size:12px;line-height:1.25;color:var(--orange-dark);text-decoration:none;white-space:normal;overflow-wrap:anywhere;margin-top:1px}
.venue-address-link:hover{text-decoration:underline}
[data-theme="dark"] .venue-address-link{color:var(--orange)}


/* v83: simplified drawer header + venue delete confirmation. */
.drawer-profile--theme-only{display:flex;align-items:center;min-height:70px;padding:15px 56px 15px 16px}
.drawer-profile-theme--solo{width:100%;min-height:40px;justify-content:flex-start;padding:0 10px;gap:9px}
.drawer-profile-theme--solo>span{font-size:12px;flex:1;text-align:left}
.drawer-profile-theme--solo .theme-switch{margin-left:auto}
.venue-delete-modal{width:min(470px,100%)}
.venue-delete-copy{display:flex;flex-direction:column;gap:5px}
.venue-delete-copy>strong{font-size:18px;color:var(--text)}
.venue-delete-copy>span{font-size:12px;color:var(--muted)}
.venue-delete-copy>p{margin:10px 0 0;font-size:13px;line-height:1.5;color:var(--muted)}
html[data-theme="dark"] .venue-delete-copy>strong{color:#fff}
@media(max-width:760px){.drawer-profile--theme-only{padding-left:14px}.venue-delete-modal{width:100%}}


/* v84: theme switch shares the footer row with logout. */
.drawer-close--standalone{z-index:4}
.drawer-nav--no-header{padding-top:66px}
.drawer-footer--inline{display:flex;align-items:center;gap:8px}
.drawer-theme-inline,.drawer-logout--inline{min-height:44px;border:0;border-radius:11px;display:flex;align-items:center;gap:9px;font-size:13px;font-weight:650}
.drawer-theme-inline{flex:1;min-width:0;padding:0 10px;background:#111113;color:#d4d4d8}
.drawer-theme-inline>span{white-space:nowrap}
.drawer-theme-inline .theme-switch{margin-left:auto;flex:none}
.drawer-theme-inline:hover,.drawer-logout--inline:hover{background:#19191c}
.drawer-logout--inline{width:auto;flex:none;padding:0 12px;background:transparent;color:#f4f4f5}
@media(max-width:360px){.drawer-footer--inline{gap:5px;padding-left:10px;padding-right:10px}.drawer-theme-inline,.drawer-logout--inline{font-size:12px}.drawer-theme-inline{padding:0 8px}.drawer-logout--inline{padding:0 9px}}

/* v85: completed management rows, repeat action and weekly archive. */
.manage-row--completed,
.manage-row--archived{
  background:#ededf0;
  border-color:#d8d8dd;
  color:#71717a;
  box-shadow:none;
}
.manage-row--completed .manage-copy>strong,
.manage-row--archived .manage-copy>strong,
.manage-row--completed .manage-date strong,
.manage-row--archived .manage-date strong{color:#66666d}
.manage-row--completed .manage-date span,
.manage-row--archived .manage-date span,
.manage-row--completed .manage-event-meta,
.manage-row--archived .manage-event-meta,
.manage-row--completed .manage-event-meta>span,
.manage-row--archived .manage-event-meta>span,
.manage-row--completed .manage-location-link,
.manage-row--archived .manage-location-link,
.manage-row--completed .manage-location-name,
.manage-row--archived .manage-location-name{color:#85858d}
.manage-row--completed .team-tag,
.manage-row--archived .team-tag{filter:grayscale(1);opacity:.72}
.manage-row--completed .icon-button,
.manage-row--archived .icon-button{background:#e4e4e7;border-color:#d4d4d8;color:#777780}
.status-pill--archived{color:#5f5f66;background:#d4d4d8}
.manage-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center}
.manage-repeat-button{min-height:34px;padding:0 10px;border:1px solid #c9c9cf;border-radius:9px;background:#dedee2;color:#62626a;display:inline-flex;align-items:center;justify-content:center;gap:6px;font-size:11px;font-weight:800;white-space:nowrap}
.manage-repeat-button:hover{background:#d4d4d8;border-color:#b9b9c0;color:#44444a}
.archive-panel{margin-top:16px}
.archive-panel .panel-heading p{margin:3px 0 0;color:var(--muted);font-size:11px}
.repeat-event-note{margin:-4px 0 14px;padding:9px 11px;border:1px solid var(--line);border-radius:10px;background:var(--surface-2);color:var(--muted);font-size:12px;line-height:1.4}
html[data-theme="dark"] .manage-row--completed,
html[data-theme="dark"] .manage-row--archived{background:#1a1a1d;border-color:#303036;color:#85858f}
html[data-theme="dark"] .manage-row--completed .manage-copy>strong,
html[data-theme="dark"] .manage-row--archived .manage-copy>strong,
html[data-theme="dark"] .manage-row--completed .manage-date strong,
html[data-theme="dark"] .manage-row--archived .manage-date strong{color:#9a9aa3}
html[data-theme="dark"] .manage-row--completed .manage-date span,
html[data-theme="dark"] .manage-row--archived .manage-date span,
html[data-theme="dark"] .manage-row--completed .manage-event-meta,
html[data-theme="dark"] .manage-row--archived .manage-event-meta,
html[data-theme="dark"] .manage-row--completed .manage-event-meta>span,
html[data-theme="dark"] .manage-row--archived .manage-event-meta>span,
html[data-theme="dark"] .manage-row--completed .manage-location-link,
html[data-theme="dark"] .manage-row--archived .manage-location-link,
html[data-theme="dark"] .manage-row--completed .manage-location-name,
html[data-theme="dark"] .manage-row--archived .manage-location-name{color:#777781}
html[data-theme="dark"] .manage-row--completed .icon-button,
html[data-theme="dark"] .manage-row--archived .icon-button{background:#222226;border-color:#35353b;color:#8b8b94}
html[data-theme="dark"] .manage-repeat-button{background:#252529;border-color:#3a3a40;color:#9d9da6}
html[data-theme="dark"] .manage-repeat-button:hover{background:#2d2d32;border-color:#484850;color:#c3c3ca}
html[data-theme="dark"] .repeat-event-note{background:#151518;border-color:#303036;color:#92929b}
@media(max-width:560px){
  .manage-repeat-button{padding:0 7px;font-size:10px}
}


/* v89 — schedule visual refresh inspired by the supplied compact glass UI.
   No decorative event images are used: schedule remains typography + data only. */
.schedule-page{
  position:relative;
  isolation:isolate;
  width:min(100% - 28px,820px);
  padding-top:24px;
}
.schedule-page::before,
.schedule-page::after{
  content:"";
  position:fixed;
  z-index:-1;
  width:360px;
  height:360px;
  border-radius:50%;
  filter:blur(95px);
  opacity:.11;
  pointer-events:none;
}
.schedule-page::before{left:-125px;top:130px;background:var(--orange)}
.schedule-page::after{right:-150px;bottom:10px;background:#7c3aed;opacity:.08}
.schedule-page .schedule-heading{margin-bottom:18px;align-items:center}
.schedule-page .schedule-heading h2{
  margin:0;
  font-size:clamp(27px,4vw,36px);
  line-height:1;
  font-weight:900;
  letter-spacing:-.045em;
}
.schedule-page .schedule-heading-actions{gap:7px}
.schedule-page .schedule-view-switch,
.schedule-page .schedule-heading-actions>.icon-button{
  background:rgba(255,255,255,.78);
  border:1px solid rgba(24,24,27,.08);
  box-shadow:0 3px 14px rgba(24,24,27,.06);
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
}
.schedule-page .schedule-view-switch{padding:4px;border-radius:14px}
.schedule-page .schedule-view-switch button{border-radius:10px}
.schedule-page .schedule-view-switch button.active{background:#18181b;color:#fff}

.schedule-page .schedule-section{gap:9px;margin:18px 0 26px}
.schedule-page .section-label{
  display:flex;
  align-items:center;
  gap:9px;
  padding:0 2px;
  color:var(--muted);
  font-size:10px;
  font-weight:800;
  letter-spacing:.1em;
}
.schedule-page .section-label::after{content:"";height:1px;flex:1;background:var(--line)}
.schedule-page .schedule-list{display:grid;gap:10px}

.schedule-page .event-day-card:not(.event-day-card--tile){
  border-radius:17px;
  border:1px solid rgba(24,24,27,.09);
  background:rgba(255,255,255,.88);
  box-shadow:0 4px 18px rgba(24,24,27,.07);
  backdrop-filter:blur(20px);
  -webkit-backdrop-filter:blur(20px);
  overflow:hidden;
}
.schedule-page .event-card.event-day-card[data-today="1"]{
  border:2px solid var(--orange)!important;
  outline:0;
  box-shadow:0 0 0 1px rgba(249,115,22,.13),0 10px 28px rgba(249,115,22,.13);
}
.schedule-page .event-day-list-head{
  min-height:38px;
  padding:6px 12px;
  border:0;
  background:linear-gradient(135deg,#fb7a1b,#ef6710);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.14);
}
.schedule-page .event-day-list-date{gap:6px;min-height:28px}
.schedule-page .event-day-list-date strong,
.schedule-page .event-day-list-date span{
  font-size:18px;
  line-height:1;
  font-style:normal;
  font-weight:800;
  letter-spacing:-.025em;
  color:#fff;
}
.schedule-page .day-countdown-pill{
  padding:6px 11px;
  border-radius:999px;
  background:rgba(255,255,255,.94);
  color:#9a3412;
  border:1px solid rgba(255,255,255,.5);
  box-shadow:0 4px 14px rgba(120,53,15,.13);
  font-size:12px;
}
.schedule-page .day-countdown-pill.is-active{
  background:#fff;
  color:#c2410c;
  border-color:#fff;
  box-shadow:0 4px 16px rgba(120,53,15,.18);
}
.schedule-page .day-countdown-pill.is-active .live-dot{background:#f97316;color:#f97316}

.schedule-page .event-day-rows--list .event-day-row{
  min-height:64px;
  padding:9px 12px;
  column-gap:12px;
  align-items:center;
  background:transparent;
  border-bottom:1px solid rgba(24,24,27,.07);
  transition:background .2s ease,transform .16s ease;
}
@media(hover:hover) and (pointer:fine){
  .schedule-page .event-day-rows--list .event-day-row:hover{background:rgba(249,115,22,.035)}
}
.schedule-page .event-day-row--active{background:rgba(249,115,22,.055)!important}
.schedule-page .event-day-row--completed{filter:saturate(.2);opacity:.58}
.schedule-page .event-title-line{margin-bottom:4px}
.schedule-page .event-day-copy h3{
  font-size:15px;
  line-height:1.15;
  font-weight:800;
  letter-spacing:-.018em;
}
.schedule-page .event-day-rows--list .event-location{
  gap:5px;
  font-size:12px;
  color:var(--muted);
}
.schedule-page .event-day-rows--list .event-location svg{width:13px;height:13px;min-width:13px}
.schedule-page .event-day-row-right{padding-left:10px;border-left:0}
.schedule-page .event-day-row-right .event-time-clean strong{
  padding:7px 11px;
  border-radius:999px;
  background:rgba(24,24,27,.055);
  border:1px solid rgba(24,24,27,.08);
  box-shadow:0 0 0 3px rgba(255,255,255,.55);
  color:#18181b;
  font-size:15px;
  line-height:1;
  font-weight:800;
  letter-spacing:-.02em;
}
.schedule-page .event-day-row--active .event-time-clean strong{
  min-width:8ch;
  text-align:center;
  background:var(--orange);
  color:#fff;
  border-color:var(--orange);
  box-shadow:0 0 0 3px rgba(249,115,22,.12),0 4px 14px rgba(249,115,22,.18);
}
.schedule-page .event-progress-wrap{height:3px;background:rgba(249,115,22,.12)}
.schedule-page .event-progress-bar{background:linear-gradient(90deg,#fb923c,#f97316)}

.schedule-page .completed-toggle{
  min-height:44px;
  border-radius:14px;
  background:rgba(255,255,255,.76);
  border-color:rgba(24,24,27,.08);
  box-shadow:0 3px 14px rgba(24,24,27,.05);
  backdrop-filter:blur(16px);
  -webkit-backdrop-filter:blur(16px);
}

/* Tile view gets the same visual language, still without pictures. */
.schedule-page .schedule-tiles{gap:10px}
.schedule-page .event-day-card--tile{
  border-radius:17px;
  padding:12px;
  background:rgba(255,255,255,.88);
  border:1px solid rgba(24,24,27,.09);
  box-shadow:0 4px 18px rgba(24,24,27,.07);
  backdrop-filter:blur(20px);
  -webkit-backdrop-filter:blur(20px);
}
.schedule-page .event-day-card--tile .event-date-clean strong{font-weight:900}
.schedule-page .event-day-row--compact{border-bottom-color:rgba(24,24,27,.07)}
.schedule-page .event-tile-time{
  display:inline-flex;
  width:max-content;
  padding:5px 8px;
  border-radius:999px;
  background:rgba(24,24,27,.055);
  border:1px solid rgba(24,24,27,.08);
  font-size:13px;
}
.schedule-page .event-day-row--compact.event-day-row--active .event-tile-time{background:var(--orange);border-color:var(--orange);color:#fff}

html[data-theme="dark"] .schedule-page::before{opacity:.16}
html[data-theme="dark"] .schedule-page::after{opacity:.13}
html[data-theme="dark"] .schedule-page .schedule-view-switch,
html[data-theme="dark"] .schedule-page .schedule-heading-actions>.icon-button,
html[data-theme="dark"] .schedule-page .completed-toggle{
  background:rgba(22,22,30,.82);
  border-color:rgba(255,255,255,.08);
  box-shadow:0 4px 18px rgba(0,0,0,.26);
}
html[data-theme="dark"] .schedule-page .schedule-view-switch button.active{background:#fff;color:#111118}
html[data-theme="dark"] .schedule-page .event-day-card:not(.event-day-card--tile),
html[data-theme="dark"] .schedule-page .event-day-card--tile{
  background:rgba(22,22,30,.88);
  border-color:rgba(255,255,255,.08);
  box-shadow:0 6px 24px rgba(0,0,0,.3);
}
html[data-theme="dark"] .schedule-page .event-day-rows--list .event-day-row{background:transparent;border-bottom-color:rgba(255,255,255,.065)}
html[data-theme="dark"] .schedule-page .event-day-row--active{background:rgba(249,115,22,.065)!important}
html[data-theme="dark"] .schedule-page .event-day-copy h3{color:#f4f4f5}
html[data-theme="dark"] .schedule-page .event-day-row-right .event-time-clean strong,
html[data-theme="dark"] .schedule-page .event-tile-time{
  background:rgba(255,255,255,.055);
  border-color:rgba(255,255,255,.08);
  box-shadow:0 0 0 3px rgba(9,8,7,.7);
  color:#f4f4f5;
}
html[data-theme="dark"] .schedule-page .event-day-row--active .event-time-clean strong,
html[data-theme="dark"] .schedule-page .event-day-row--compact.event-day-row--active .event-tile-time{
  background:var(--orange);
  border-color:var(--orange);
  color:#fff;
  box-shadow:0 0 0 3px rgba(249,115,22,.12),0 4px 16px rgba(249,115,22,.2);
}
html[data-theme="dark"] .schedule-page .event-day-row--compact{border-bottom-color:rgba(255,255,255,.065)}

@media(max-width:560px){
  .schedule-page{width:min(100% - 18px,820px);padding-top:18px}
  .schedule-page .schedule-heading{margin-bottom:14px}
  .schedule-page .schedule-heading h2{font-size:28px}
  .schedule-page .event-day-list-head{min-height:36px;padding:6px 9px}
  .schedule-page .event-day-list-date strong,.schedule-page .event-day-list-date span{font-size:16px}
  .schedule-page .day-countdown-pill{font-size:11px;padding:6px 8px;max-width:58%;overflow:hidden;text-overflow:ellipsis}
  .schedule-page .event-day-rows--list .event-day-row{grid-template-columns:minmax(0,1fr) auto;padding:9px 9px;column-gap:8px;min-height:60px}
  .schedule-page .event-day-copy h3{font-size:14px}
  .schedule-page .event-day-rows--list .event-location{font-size:11px}
  .schedule-page .event-day-row-right{padding-left:4px}
  .schedule-page .event-day-row-right .event-time-clean strong{font-size:13px;padding:6px 8px;box-shadow:none}
}
@media(max-width:350px){
  .schedule-page .event-day-list-head{align-items:flex-start;flex-wrap:wrap}
  .schedule-page .day-countdown-pill{max-width:100%;margin-left:0}
  .schedule-page .event-day-rows--list .event-day-row{grid-template-columns:1fr;gap:8px}
  .schedule-page .event-day-row-right{padding-left:0}
  .schedule-page .event-day-row-right .event-time-clean{justify-content:flex-start}
}

/* v91: active event countdown uses black digits. */
.event-time-clean--active .event-live-value,
.event-day-row--active .event-live-value,
.event-day-row--compact.event-day-row--active .event-live-value{
  color:#000;
}

/* v92: active countdown digits are black in every schedule view. */
.schedule-page .event-day-row--active .event-time-clean .event-live-value,
.schedule-page .event-day-row--active .event-time-clean strong.event-live-value,
.schedule-page .event-day-row--compact.event-day-row--active .event-live-value,
.schedule-page .event-day-row--compact.event-day-row--active .event-tile-time .event-live-value{
  color:#000;
}
