:root{
  --brand:#2458e8;--brand-strong:#173ead;--brand-soft:#edf3ff;--accent:#15b982;
  --live:#ef3e4a;--live-soft:#fff0f1;--warning:#f59e0b;--danger:#dc3545;--success:#159a6f;
  --bg:#f4f6fa;--surface:#fff;--surface-2:#f8f9fc;--surface-3:#eef1f7;
  --text:#151b2b;--text-2:#4b5568;--muted:#7d879c;--border:#e2e6ef;--border-strong:#cdd3df;
  --shadow-sm:0 2px 10px rgba(25,35,58,.05);--shadow-md:0 14px 40px rgba(28,42,73,.10);--shadow-lg:0 28px 70px rgba(20,32,63,.18);
  --r-sm:10px;--r-md:16px;--r-lg:22px;--r-xl:30px;
  --container:1240px;--header-h:72px;--ease:cubic-bezier(.2,.8,.2,1);
  color-scheme:light;
}
html[data-theme="dark"]{
  --brand:#6f93ff;--brand-strong:#9ab3ff;--brand-soft:#182447;--accent:#2ad69d;
  --live:#ff5c67;--live-soft:#381d25;--warning:#fbbf24;--danger:#ff6673;--success:#36d6a1;
  --bg:#0d111b;--surface:#151b28;--surface-2:#1b2232;--surface-3:#242c3e;
  --text:#f5f7fb;--text-2:#c6ccda;--muted:#8e98ac;--border:#2a3346;--border-strong:#3a465e;
  --shadow-sm:0 2px 12px rgba(0,0,0,.15);--shadow-md:0 16px 42px rgba(0,0,0,.25);--shadow-lg:0 28px 70px rgba(0,0,0,.36);color-scheme:dark;
}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--bg);color:var(--text);font-family:"Noto Sans Arabic","Segoe UI",Tahoma,Arial,sans-serif;font-size:15px;line-height:1.65;-webkit-font-smoothing:antialiased}html[lang="en"] body,html[lang="de"] body{font-family:Inter,"Segoe UI",Arial,sans-serif}a{color:inherit;text-decoration:none}button,input,select{font:inherit;color:inherit}button{cursor:pointer}img,svg{display:block}.icon{width:1.2em;height:1.2em;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:none}.container{width:min(var(--container),calc(100% - 40px));margin-inline:auto}.container-wide{width:min(1500px,calc(100% - 36px));margin-inline:auto}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-sm)}.skip-link{position:fixed;inset-inline-start:16px;top:-70px;z-index:9999;background:var(--brand);color:#fff;padding:10px 16px;border-radius:8px}.skip-link:focus{top:12px}.desktop-only{display:inline-flex}.muted-copy{color:var(--muted);margin:0}.danger-text{color:var(--live)!important}.section-kicker,.hero-kicker{display:inline-flex;align-items:center;gap:7px;color:var(--brand);font-size:.76rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:20px}.section-heading h2,.sidebar-card h2{margin:2px 0 0;font-size:1.2rem;line-height:1.35}.page-shell{min-height:70vh;padding-block:28px 54px}.primary-button,.today-button,.filter-button,.square-button,.text-icon-link,.footer-button{border:0;display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:.2s var(--ease)}.primary-button{background:var(--brand);color:#fff;padding:11px 18px;border-radius:12px;font-weight:800;box-shadow:0 8px 20px color-mix(in srgb,var(--brand) 24%,transparent)}.primary-button:hover{background:var(--brand-strong);transform:translateY(-1px)}.primary-button.full-width{width:100%}.square-button{width:42px;height:42px;border:1px solid var(--border);background:var(--surface);border-radius:12px}.square-button:hover{border-color:var(--brand);color:var(--brand);background:var(--brand-soft)}.today-button{height:42px;background:var(--brand-soft);color:var(--brand);padding:0 15px;border-radius:12px;font-weight:800}.today-button:hover{background:var(--brand);color:#fff}.text-icon-link{color:var(--brand);font-weight:700;background:none}.arrow-link{display:inline-grid;place-items:center;width:36px;height:36px;border-radius:10px;color:var(--muted);transition:.2s}.arrow-link:hover{background:var(--brand-soft);color:var(--brand)}
/* Header */
.site-header{height:var(--header-h);position:sticky;top:0;z-index:100;background:color-mix(in srgb,var(--surface) 88%,transparent);backdrop-filter:blur(18px);border-bottom:1px solid var(--border)}.header-inner{height:100%;display:flex;align-items:center;gap:26px}.brand{display:flex;align-items:center;gap:10px;flex:none}.brand-mark{width:42px;height:42px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(145deg,var(--brand),#4b7dff);color:#fff;box-shadow:0 8px 20px rgba(36,88,232,.25);font-weight:900;font-size:1.35rem}.brand-mark.large{width:62px;height:62px;border-radius:20px;font-size:2rem}.brand-copy{display:flex;flex-direction:column;line-height:1.25}.brand-copy strong{font-size:1rem}.brand-copy small{color:var(--muted);font-size:.68rem}.main-nav{display:flex;align-items:center;gap:5px;flex:1}.nav-link{height:42px;display:flex;align-items:center;gap:8px;padding:0 12px;border-radius:11px;color:var(--text-2);font-weight:700;white-space:nowrap}.nav-link:hover,.nav-link.active{background:var(--brand-soft);color:var(--brand)}.nav-live-dot{width:7px;height:7px;background:var(--live);border-radius:50%;box-shadow:0 0 0 4px var(--live-soft)}.header-actions{display:flex;align-items:center;gap:7px}.header-icon-button,.language-trigger,.mobile-menu-button{height:42px;min-width:42px;border:1px solid var(--border);background:var(--surface);border-radius:12px;display:inline-flex;align-items:center;justify-content:center;gap:7px}.header-icon-button:hover,.language-trigger:hover,.mobile-menu-button:hover{border-color:var(--brand);color:var(--brand);background:var(--brand-soft)}.language-switcher{position:relative}.language-trigger{padding:0 10px}.language-code{font-weight:800;font-size:.8rem}.popover-menu{position:absolute;top:calc(100% + 10px);inset-inline-end:0;min-width:180px;padding:7px;background:var(--surface);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow-md);opacity:0;visibility:hidden;transform:translateY(-6px);transition:.2s;z-index:120}.language-switcher.open .popover-menu{opacity:1;visibility:visible;transform:none}.popover-option{display:flex;padding:10px 12px;border-radius:9px;font-weight:700}.popover-option:hover,.popover-option.active{background:var(--brand-soft);color:var(--brand)}.mobile-menu-button{display:none}
/* notices */
.demo-notice{background:#101a36;color:#dce5ff}.demo-notice-inner{min-height:38px;display:flex;align-items:center;justify-content:center;gap:9px;font-size:.8rem}.demo-dot{width:7px;height:7px;border-radius:50%;background:var(--warning)}.network-banner{position:fixed;z-index:300;inset-inline:0;bottom:18px;pointer-events:none}.network-banner-inner{width:max-content;max-width:calc(100% - 30px);margin:auto;background:#282f3f;color:#fff;border-radius:14px;box-shadow:var(--shadow-lg);padding:11px 16px;display:flex;align-items:center;gap:9px}.network-updated{opacity:.7}.toast-region{position:fixed;z-index:400;inset-inline-end:18px;bottom:82px;display:grid;gap:8px}.toast{background:var(--text);color:var(--surface);padding:11px 16px;border-radius:12px;box-shadow:var(--shadow-lg);animation:toast-in .25s var(--ease)}@keyframes toast-in{from{opacity:0;transform:translateY(10px)}}
/* home hero */
.scoreboard-hero,.page-hero{position:relative;overflow:hidden;border-radius:var(--r-xl);background:linear-gradient(128deg,#101b3f 0%,#193b91 54%,#2458e8 100%);color:#fff;box-shadow:var(--shadow-md)}.scoreboard-hero{min-height:210px;padding:34px 38px;display:flex;align-items:center;justify-content:space-between;gap:30px;margin-bottom:18px}.hero-pattern,.entity-hero-backdrop,.auth-visual-pattern{position:absolute;inset:0;pointer-events:none;background-image:radial-gradient(circle at 15% 20%,rgba(255,255,255,.15) 0 2px,transparent 3px),linear-gradient(120deg,transparent 40%,rgba(255,255,255,.07));background-size:40px 40px,100% 100%;mask-image:linear-gradient(90deg,#000,transparent)}.scoreboard-copy,.hero-metrics{position:relative}.scoreboard-copy .hero-kicker,.page-hero .hero-kicker,.entity-hero .hero-kicker,.auth-visual .hero-kicker{color:#bed0ff}.scoreboard-copy h1{font-size:clamp(1.9rem,4vw,3.1rem);line-height:1.2;margin:9px 0 8px}.scoreboard-copy p{margin:0;color:#d7e0f9}.hero-metrics{display:flex;gap:12px}.hero-metric{min-width:140px;padding:17px;background:rgba(255,255,255,.11);border:1px solid rgba(255,255,255,.16);border-radius:18px;display:flex;align-items:center;gap:12px;backdrop-filter:blur(10px)}.hero-metric strong{font-size:1.55rem;display:block;line-height:1}.hero-metric span{font-size:.78rem;color:#d9e2ff}.metric-icon{width:40px;height:40px;border-radius:12px;background:rgba(255,255,255,.14);display:grid;place-items:center}.live-metric .metric-icon{color:#fff;background:var(--live)}
/* date */
.date-command{padding:20px 22px;margin-bottom:16px}.date-command-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.date-command-head h2{margin:2px 0 0;font-size:1.12rem}.date-command-actions{display:flex;gap:7px}.date-browser-row{display:flex;gap:14px;align-items:stretch}.date-strip{display:grid;grid-template-columns:repeat(7,1fr);gap:8px;flex:1}.date-tile{min-width:72px;border:1px solid var(--border);border-radius:14px;padding:9px 6px;text-align:center;display:flex;flex-direction:column;line-height:1.2;transition:.2s;background:var(--surface-2)}.date-tile span,.date-tile small{font-size:.7rem;color:var(--muted)}.date-tile strong{font-size:1.18rem;margin:4px 0}.date-tile:hover{border-color:var(--brand);transform:translateY(-2px)}.date-tile.active{background:var(--brand);border-color:var(--brand);color:#fff;box-shadow:0 9px 22px rgba(36,88,232,.22)}.date-tile.active span,.date-tile.active small{color:#dce5ff}.calendar-picker{position:relative;width:135px}.calendar-picker-label{position:absolute;inset:0;pointer-events:none;border:1px dashed var(--border-strong);border-radius:14px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;color:var(--text-2);font-weight:700}.calendar-picker input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}
/* toolbar */
.match-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:18px 0 14px}.segmented{display:flex;background:var(--surface);border:1px solid var(--border);padding:5px;border-radius:14px;box-shadow:var(--shadow-sm);gap:3px}.segmented a,.segmented button{border:0;background:transparent;border-radius:10px;min-height:38px;padding:0 13px;display:flex;align-items:center;gap:7px;font-weight:700;color:var(--text-2)}.segmented a b{min-width:23px;height:23px;border-radius:8px;display:grid;place-items:center;background:var(--surface-3);font-size:.72rem}.segmented a.active,.segmented button.active{background:var(--brand);color:#fff}.segmented a.active b{background:rgba(255,255,255,.18)}.segmented.small button{min-height:34px;font-size:.8rem}.filter-button{height:42px;padding:0 14px;border:1px solid var(--border);border-radius:12px;background:var(--surface);font-weight:700}.filter-button:hover{color:var(--brand);border-color:var(--brand)}
/* match list */
.home-content-grid{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:18px}.competition-groups{display:grid;gap:14px;min-width:0}.competition-card{overflow:hidden}.competition-header{min-height:72px;padding:13px 16px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border)}.competition-identity{display:flex;align-items:center;gap:12px;min-width:0}.competition-logo{width:44px;height:44px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(145deg,var(--brand-soft),var(--surface-3));color:var(--brand);border:1px solid color-mix(in srgb,var(--brand) 15%,var(--border));font-weight:900}.competition-logo.large{width:64px;height:64px;border-radius:20px;font-size:1.45rem}.competition-logo.hero-logo{width:88px;height:88px;border-radius:26px;font-size:2rem;background:rgba(255,255,255,.14);border-color:rgba(255,255,255,.2);color:#fff}.competition-identity strong{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.competition-identity small{color:var(--muted);font-size:.75rem}.competition-actions{display:flex;align-items:center;gap:9px}.collapse-button .icon{transition:.2s}.competition-card.collapsed .collapse-button .icon{transform:rotate(180deg)}.competition-card.collapsed [data-collapsible-content]{display:none}.match-list{display:grid}.match-card{position:relative;display:grid;grid-template-columns:94px minmax(0,1fr) 72px 150px 78px;align-items:center;min-height:94px;padding:10px 14px;border-bottom:1px solid var(--border);transition:.18s}.match-card:last-child{border-bottom:0}.match-card:hover{background:var(--surface-2)}.match-card.is-live{background:linear-gradient(90deg,var(--live-soft),transparent 30%);box-shadow:inset 3px 0 0 var(--live)}[dir="rtl"] .match-card.is-live{box-shadow:inset -3px 0 0 var(--live)}.match-card-link{position:absolute;inset:0;z-index:0}.match-card>*:not(.match-card-link){position:relative;z-index:1}.match-time-block{display:flex;flex-direction:column;align-items:center;border-inline-end:1px solid var(--border);padding-inline-end:12px}.match-time-block small{font-size:.68rem;color:var(--muted);margin-top:3px}.match-kickoff{font-weight:900;font-size:1rem;direction:ltr}.live-minute{display:flex;align-items:center;gap:6px;color:var(--live);font-weight:900;direction:ltr}.live-minute i{width:7px;height:7px;border-radius:50%;background:currentColor;box-shadow:0 0 0 4px color-mix(in srgb,var(--live) 14%,transparent);animation:pulse 1.8s infinite}.status-label{display:flex;align-items:center;gap:4px;white-space:nowrap}.status-label .icon{width:12px}.match-teams{padding-inline:18px;display:grid;gap:7px}.team-row{display:flex;align-items:center;gap:9px;width:max-content;max-width:100%}.team-name{font-weight:750;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.team-crest{width:32px;height:32px;border-radius:10px;background:var(--surface-3);border:1px solid var(--border);display:grid;place-items:center;font-size:.66rem;font-weight:900;color:var(--text-2);flex:none}.team-crest.home{background:#edf3ff;color:#2458e8}.team-crest.away{background:#f2efff;color:#6941c6}.team-crest.small{width:27px;height:27px;border-radius:8px;font-size:.56rem}.match-score{display:grid;grid-template-rows:1fr 1fr;gap:4px;place-items:center;direction:ltr}.match-score strong{font-size:1.22rem;line-height:1.2;font-variant-numeric:tabular-nums}.versus{grid-row:1/3;font-size:.72rem;color:var(--muted);font-weight:900;border:1px solid var(--border);border-radius:8px;padding:4px 7px}.match-context{display:flex;flex-direction:column;padding-inline:12px;border-inline-start:1px solid var(--border);color:var(--text-2);font-size:.77rem}.match-context small{display:flex;align-items:center;gap:5px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.match-context .icon{width:13px}.match-actions{display:flex;align-items:center;justify-content:flex-end;gap:5px}.favorite-button{position:relative;width:38px;height:38px;border:0;border-radius:11px;background:transparent;color:var(--muted);display:grid;place-items:center}.favorite-button:hover{background:var(--brand-soft);color:var(--brand)}.favorite-button .star-filled{display:none}.favorite-button.is-favorite .star-filled{display:block;color:var(--warning)}.favorite-button.is-favorite .star-outline{display:none}.favorite-button.premium.light{background:rgba(255,255,255,.13);color:#fff}.match-day-sidebar{display:grid;gap:14px;align-content:start;position:sticky;top:calc(var(--header-h) + 18px)}.sidebar-card{padding:18px}.sidebar-card-head{display:flex;align-items:center;gap:11px}.sidebar-icon{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:var(--brand-soft);color:var(--brand);flex:none}.sidebar-icon.live{background:var(--live-soft);color:var(--live)}.live-center-number{display:flex;align-items:end;gap:8px;margin:22px 0}.live-center-number strong{font-size:3rem;line-height:.8;color:var(--live)}.live-center-number span{color:var(--muted)}.connection-state,.footer-status{display:flex;align-items:center;gap:8px;color:var(--success);font-size:.78rem}.status-orb{width:8px;height:8px;border-radius:50%;background:var(--success);box-shadow:0 0 0 4px color-mix(in srgb,var(--success) 14%,transparent)}.summary-list,.info-list{margin:16px 0 0}.summary-list div,.info-list div{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--border);padding:10px 0}.summary-list dt,.info-list dt{color:var(--muted)}.summary-list dd,.info-list dd{margin:0;font-weight:800}.timezone-summary{display:flex;gap:12px;align-items:center}.timezone-summary>div{display:flex;flex-direction:column}.timezone-summary small{color:var(--muted)}
/* generic page heroes */
.page-hero{padding:30px 34px;display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:18px}.page-hero h1{font-size:clamp(1.7rem,3vw,2.5rem);margin:5px 0}.page-hero p{margin:0;color:#d7e0f9}.page-hero-stat{min-width:100px;text-align:center;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.15);padding:14px;border-radius:18px}.page-hero-stat strong{display:block;font-size:1.8rem}.page-hero-stat span{font-size:.75rem;color:#d7e0f9}.compact-page-hero{min-height:170px}.directory-toolbar,.calendar-filter{display:flex;align-items:center;justify-content:space-between;padding:13px;margin-bottom:16px}.search-inline,.global-search-form{display:flex;align-items:center;gap:10px;border:1px solid var(--border);background:var(--surface-2);border-radius:12px;padding:0 12px}.search-inline{min-width:340px}.search-inline input,.global-search-form input{border:0;background:transparent;outline:0;width:100%;min-height:42px}.competition-directory,.search-result-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.competition-directory-card,.search-result-card{position:relative;overflow:hidden;padding:20px;min-height:230px;display:flex;flex-direction:column}.card-stretched-link{position:absolute;inset:0;z-index:1}.competition-card-accent{height:4px;position:absolute;inset-inline:0;top:0;background:linear-gradient(90deg,var(--brand),var(--accent))}.competition-directory-top{display:flex;justify-content:space-between;align-items:start}.feature-chip,.season-chip,.event-type-chip,.source-chip,.confidence-chip,.competition-pill,.entity-tags span{display:inline-flex;align-items:center;gap:5px;border-radius:999px;padding:6px 9px;background:var(--brand-soft);color:var(--brand);font-size:.7rem;font-weight:800}.competition-directory-copy{margin-top:auto}.competition-directory-copy h2{font-size:1.15rem;margin:5px 0}.competition-directory-copy p{color:var(--muted);margin:0}.competition-directory-footer{border-top:1px solid var(--border);margin-top:16px;padding-top:12px;display:flex;justify-content:space-between;color:var(--text-2);font-weight:700}.competition-directory-card>*:not(.card-stretched-link){position:relative;z-index:2;pointer-events:none}
/* entity pages */
.entity-hero{position:relative;overflow:hidden;padding:28px 32px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:22px;background:linear-gradient(125deg,#111a35,#1f4cc9);color:#fff;margin-bottom:16px}.entity-hero-copy{position:relative}.entity-hero-copy h1{font-size:2.1rem;line-height:1.2;margin:6px 0}.entity-hero-copy p{margin:0;color:#dce5ff;max-width:760px}.entity-tags{display:flex;gap:6px;margin-top:12px}.entity-tags span{background:rgba(255,255,255,.13);color:#fff}.entity-hero-facts{position:relative;display:flex;align-items:center;gap:14px}.entity-hero-facts>div{display:flex;flex-direction:column;align-items:end}.entity-hero-facts small{color:#c8d5fa}.detail-tabs{display:flex;gap:6px;padding:7px;margin-bottom:16px;overflow:auto}.detail-tabs a{min-height:43px;padding:0 14px;display:flex;align-items:center;gap:7px;border-radius:11px;white-space:nowrap;color:var(--text-2);font-weight:750}.detail-tabs a:hover,.detail-tabs a.active{background:var(--brand-soft);color:var(--brand)}.competition-page-layout,.team-page-layout,.match-detail-layout{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:16px}.competition-page-main,.match-detail-main{display:grid;gap:16px;min-width:0}.competition-page-sidebar,.team-page-sidebar,.match-detail-sidebar{display:grid;gap:14px;align-content:start}.premium-panel,.detail-panel,.side-info-card{padding:20px}.panel-count{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;background:var(--surface-3);font-weight:900}.entity-team-crest{width:104px;height:104px;border-radius:30px;display:grid;place-items:center;background:rgba(255,255,255,.13);border:1px solid rgba(255,255,255,.18);font-size:1.55rem;font-weight:900}.premium-info-list{margin-top:10px}.team-page-layout{grid-template-columns:minmax(0,1fr) 290px}
/* match detail */
.match-hero{position:relative;overflow:hidden;padding:24px 30px;background:linear-gradient(130deg,#10172d,#1a2e67);color:#fff;margin-bottom:16px}.match-hero-topline{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:24px}.competition-pill{background:rgba(255,255,255,.12);color:#fff}.match-stage-label{color:#cbd6f4;font-size:.8rem}.match-hero-actions{display:flex;align-items:center;gap:8px}.match-main{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:24px;text-align:center}.hero-team{display:flex;flex-direction:column;align-items:center;gap:10px}.hero-crest{width:88px;height:88px;border-radius:26px;background:rgba(255,255,255,.11);border:1px solid rgba(255,255,255,.17);display:grid;place-items:center;font-size:1.25rem;font-weight:900}.hero-team-name{font-weight:900;font-size:1.15rem}.hero-score{min-width:190px}.match-state-badge{width:max-content;margin:0 auto 10px;border-radius:999px;padding:5px 10px;background:rgba(255,255,255,.12);font-size:.72rem;font-weight:800}.match-state-badge.live{background:var(--live);color:#fff}.scoreline{font-size:3.2rem;line-height:1;font-weight:950;direction:ltr;font-variant-numeric:tabular-nums}.kickoff-big{font-size:2.7rem;font-weight:950;line-height:1;direction:ltr}.hero-score small{display:block;color:#c8d5fa;margin-top:8px}.match-meta-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:24px}.match-meta-item{padding:11px;border-radius:13px;background:rgba(255,255,255,.08);display:flex;align-items:center;gap:8px;text-align:start}.match-meta-item .meta-icon{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;background:rgba(255,255,255,.1)}.match-meta-item small,.match-meta-item strong{display:block}.match-meta-item small{color:#c5d0ed;font-size:.69rem}.timeline-premium{position:relative}.timeline-event{display:grid;grid-template-columns:88px 30px 1fr;gap:11px;align-items:center;min-height:70px}.timeline-event time{text-align:end;color:var(--muted);font-weight:800;direction:ltr}.timeline-marker{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:var(--brand-soft);color:var(--brand);z-index:1}.timeline-premium:before{content:"";position:absolute;top:20px;bottom:20px;inset-inline-start:102px;width:1px;background:var(--border)}.timeline-event>div:last-child{padding:12px;border-bottom:1px solid var(--border)}.timeline-event strong{display:block}.timeline-event small{color:var(--muted)}.stats-team-head{display:grid;grid-template-columns:1fr 1fr;text-align:center;font-weight:800;margin-bottom:16px}.stats-list{display:grid;gap:14px}.stat-row>span{display:block;text-align:center;font-size:.78rem;color:var(--muted);margin-bottom:6px}.stat-values{display:grid;grid-template-columns:46px 1fr 46px;align-items:center;gap:10px;text-align:center;font-weight:900}.dual-stat-track{height:8px;background:var(--surface-3);border-radius:999px;display:flex;overflow:hidden;direction:ltr}.dual-stat-track i:first-child{background:var(--brand)}.dual-stat-track i:last-child{background:#7d62dd}.provenance-card,.source-warning{padding:18px}.source-warning{display:flex;gap:10px;align-items:start;background:color-mix(in srgb,var(--warning) 8%,var(--surface));border-color:color-mix(in srgb,var(--warning) 30%,var(--border))}.source-warning .icon{color:var(--warning);margin-top:3px}
/* standings */
.table-scroll{overflow:auto}.standings-table,.admin-table,.ranking-table{width:100%;border-collapse:separate;border-spacing:0;font-size:.82rem}.standings-table th,.standings-table td,.admin-table th,.admin-table td,.ranking-table th,.ranking-table td{padding:11px 10px;border-bottom:1px solid var(--border);text-align:center;white-space:nowrap}.standings-table th,.admin-table th,.ranking-table th{position:sticky;top:0;background:var(--surface-2);color:var(--muted);font-size:.68rem;text-transform:uppercase;letter-spacing:.04em;z-index:2}.table-team{text-align:start!important;display:flex;align-items:center;gap:8px}.position-badge{width:27px;height:27px;border-radius:8px;display:grid;place-items:center;background:var(--surface-3);font-weight:900}.position-badge.leader{background:var(--brand);color:#fff}.points-value{color:var(--brand);font-size:.95rem}.goal-diff{direction:ltr}.mini-form{display:flex;gap:3px}.mini-form span{width:20px;height:20px;border-radius:5px;display:grid;place-items:center;color:#fff;font-size:.58rem;font-weight:900}.mini-form .win{background:var(--success)}.mini-form .draw{background:var(--muted)}.mini-form .loss{background:var(--live)}
/* ranking/calendar/search */
.ranking-panel{padding:0;overflow:hidden}.ranking-table .movement-chip{display:inline-flex;align-items:center;gap:3px}.movement-chip.up{color:var(--success)}.movement-chip.down{color:var(--live)}.calendar-filter{padding:10px 12px}.calendar-timezone{display:flex;align-items:center;gap:7px;color:var(--muted)}.calendar-timeline{display:grid;gap:12px}.calendar-event{display:grid;grid-template-columns:86px 28px 1fr;align-items:stretch;padding:18px}.calendar-date-block{border-radius:15px;background:var(--brand-soft);color:var(--brand);display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1.1;min-height:110px}.calendar-date-block strong{font-size:2rem;margin:5px 0}.calendar-date-block span,.calendar-date-block small{font-size:.7rem;font-weight:800}.calendar-line{position:relative;display:flex;justify-content:center}.calendar-line:before{content:"";width:1px;background:var(--border);position:absolute;top:-18px;bottom:-18px}.calendar-line i{width:11px;height:11px;background:var(--brand);border:3px solid var(--surface);box-shadow:0 0 0 1px var(--brand);border-radius:50%;margin-top:16px;z-index:1}.calendar-event-content{padding-inline-start:10px}.calendar-event-top{display:flex;align-items:center;justify-content:space-between;gap:10px}.verification{display:inline-flex;align-items:center;gap:4px;color:var(--warning);font-size:.7rem;font-weight:800}.verification.verified{color:var(--success)}.calendar-event-content h2{font-size:1.1rem;margin:9px 0 4px}.calendar-event-content p{margin:0;color:var(--text-2)}.calendar-event-content time{display:flex;align-items:center;gap:6px;color:var(--muted);font-size:.76rem;margin-top:8px}.search-hero{padding-bottom:28px}.global-search-form{position:relative;z-index:2;margin-top:18px;max-width:700px;background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.2)}.global-search-form input{color:#fff}.global-search-form input::placeholder{color:#cbd6f4}.global-search-form button{border:0;background:#fff;color:var(--brand);height:38px;padding:0 14px;border-radius:10px;font-weight:800}.search-results-section{margin-top:18px}.results-group-title{display:flex;align-items:center;gap:8px;margin:0 0 10px}.search-result-card{min-height:150px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:14px}.card-symbol{width:54px;height:54px;border-radius:16px;display:grid;place-items:center;background:var(--brand-soft);color:var(--brand);font-weight:900}.search-result-card h2{font-size:1rem;margin:0}.search-result-card p{margin:3px 0;color:var(--muted)}
/* states */
.empty-state,.error-page{text-align:center;padding:38px 22px}.empty-state-large{min-height:320px;display:flex;flex-direction:column;align-items:center;justify-content:center}.empty-illustration,.error-illustration{width:74px;height:74px;border-radius:24px;display:grid;place-items:center;background:var(--brand-soft);color:var(--brand);margin:0 auto 14px}.empty-illustration.small{width:48px;height:48px;border-radius:15px}.empty-state h2,.error-page h1{margin:0 0 5px}.empty-state p,.error-page p{color:var(--muted)}
/* footer/drawer */
.site-footer{border-top:1px solid var(--border);background:var(--surface);margin-top:30px}.footer-main{padding:38px 0;display:grid;grid-template-columns:1.6fr repeat(3,1fr);gap:35px}.footer-brand-column p{color:var(--muted);max-width:320px}.footer-column{display:flex;flex-direction:column;gap:8px}.footer-column h3{font-size:.85rem;margin:0 0 7px}.footer-column a,.footer-button{color:var(--muted);width:max-content;background:none;padding:0}.footer-column a:hover,.footer-button:hover{color:var(--brand)}.select-field{height:42px;border:1px solid var(--border);border-radius:11px;display:flex;align-items:center;padding:0 9px;gap:7px}.select-field select{border:0;background:transparent;outline:0;width:100%;appearance:none}.footer-bottom{border-top:1px solid var(--border);padding:13px 0;display:flex;justify-content:space-between;color:var(--muted);font-size:.72rem}.mobile-bottom-nav{display:none}.mobile-drawer,.drawer-backdrop{display:none}
/* Admin */
.admin-body{background:var(--bg)}.admin-app{min-height:100vh;display:grid;grid-template-columns:255px 1fr}.admin-sidebar{background:#10172a;color:#e7ecf8;padding:18px 13px;display:flex;flex-direction:column;position:sticky;top:0;height:100vh;z-index:150}.admin-sidebar-head{padding:0 8px 20px;border-bottom:1px solid rgba(255,255,255,.08)}.admin-sidebar .brand-copy small{color:#8290ad}.admin-nav{display:grid;gap:5px;padding-top:18px}.admin-nav a{display:flex;align-items:center;gap:10px;min-height:43px;padding:0 12px;border-radius:11px;color:#aeb8cc;font-weight:700}.admin-nav a:hover,.admin-nav a.active{background:#1e2c4c;color:#fff}.admin-sidebar-status{display:flex;gap:9px;align-items:center;margin-top:auto;background:#18233d;padding:12px;border-radius:13px}.admin-sidebar-status div{display:flex;flex-direction:column}.admin-sidebar-status small{color:#8f9ab1}.admin-sidebar-footer{display:grid;gap:4px;margin-top:12px}.admin-sidebar-footer a,.admin-sidebar-footer button{display:flex;width:100%;align-items:center;gap:9px;background:none;border:0;color:#aeb8cc;padding:9px 10px;border-radius:9px}.admin-sidebar-footer a:hover,.admin-sidebar-footer button:hover{background:#1e2c4c;color:#fff}.admin-main{min-width:0}.admin-topbar{height:70px;position:sticky;top:0;z-index:100;background:color-mix(in srgb,var(--surface) 90%,transparent);backdrop-filter:blur(16px);border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding:0 24px}.admin-breadcrumb{display:flex;align-items:center;gap:7px;color:var(--muted)}.admin-breadcrumb strong{color:var(--text)}.admin-top-actions{display:flex;align-items:center;gap:7px}.admin-user{display:flex;align-items:center;gap:8px;margin-inline-start:4px}.admin-avatar{width:38px;height:38px;border-radius:12px;background:var(--brand-soft);color:var(--brand);display:grid;place-items:center}.admin-user div{display:flex;flex-direction:column;line-height:1.2}.admin-user small{color:var(--muted);font-size:.68rem}.admin-menu-toggle{display:none}.admin-content{padding:24px}.admin-page-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.admin-page-header h1{font-size:1.8rem;margin:4px 0}.admin-page-header p{color:var(--muted);margin:0}.health-summary,.admin-status{display:inline-flex;align-items:center;gap:6px;border-radius:999px;padding:7px 10px;background:var(--surface);border:1px solid var(--border);font-size:.72rem;font-weight:800}.health-summary.healthy{color:var(--success)}.health-summary.warning{color:var(--warning)}.admin-metric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:13px;margin-bottom:16px}.admin-metric-card{padding:18px;display:grid;grid-template-columns:auto 1fr;gap:12px}.admin-metric-icon{width:44px;height:44px;border-radius:14px;background:var(--brand-soft);color:var(--brand);display:grid;place-items:center}.admin-metric-card strong{display:block;font-size:1.7rem;line-height:1}.admin-metric-card span{color:var(--muted);font-size:.75rem}.admin-dashboard-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(280px,.7fr);gap:15px}.admin-table-card,.health-card,.cron-card{padding:18px}.admin-health-stack{display:grid;gap:9px}.admin-health-stack>div{display:flex;justify-content:space-between;border-bottom:1px solid var(--border);padding:9px 0}.provider-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.provider-card{padding:18px}.provider-card-head,.provider-card-footer{display:flex;align-items:center;justify-content:space-between}.provider-logo{width:46px;height:46px;border-radius:14px;display:grid;place-items:center;background:var(--brand-soft);color:var(--brand);font-weight:900}.admin-status i{width:7px;height:7px;border-radius:50%;background:currentColor}.provider-card-copy h2{margin:4px 0}.provider-card-copy p{color:var(--muted)}.provider-card-footer{border-top:1px solid var(--border);padding-top:12px;color:var(--muted);font-size:.72rem}.provider-guide{margin-top:16px;padding:20px;display:flex;gap:14px}.provider-guide-icon{width:50px;height:50px;border-radius:15px;display:grid;place-items:center;background:var(--brand-soft);color:var(--brand)}.provider-guide h2{margin:3px 0}.provider-guide p{color:var(--muted);margin:0 0 8px}.provider-guide code{display:inline-block;background:var(--surface-3);padding:5px 8px;border-radius:6px;direction:ltr}.admin-auth-page{min-height:100vh;display:grid;grid-template-columns:1.1fr .9fr}.auth-visual{position:relative;overflow:hidden;background:linear-gradient(130deg,#10172a,#183e9c);color:#fff;display:flex;align-items:center;justify-content:center;padding:50px}.auth-brand{position:relative;max-width:520px}.auth-brand h1{font-size:3rem;margin:15px 0 6px}.auth-brand p{color:#cdd9f8;font-size:1.05rem}.auth-security-note{margin-top:25px;display:flex;align-items:center;gap:8px;background:rgba(255,255,255,.1);padding:12px;border-radius:13px}.auth-form-column{display:grid;place-items:center;padding:35px}.auth-card{width:min(440px,100%);padding:28px}.auth-card-head{display:flex;align-items:center;gap:12px;margin-bottom:20px}.auth-icon{width:48px;height:48px;border-radius:15px;display:grid;place-items:center;background:var(--brand-soft);color:var(--brand)}.auth-card h2{margin:2px 0}.form-field{display:grid;gap:6px;margin-bottom:14px;font-weight:700;font-size:.82rem}.input-control{height:48px;border:1px solid var(--border);border-radius:12px;display:flex;align-items:center;gap:9px;padding:0 12px;background:var(--surface-2)}.input-control:focus-within{border-color:var(--brand);box-shadow:0 0 0 3px color-mix(in srgb,var(--brand) 12%,transparent)}.input-control input{border:0;background:transparent;outline:0;width:100%;height:100%}.form-error,.success-flash,.flash{border-radius:12px;padding:11px 13px;display:flex;align-items:center;gap:8px;margin-bottom:14px}.form-error{background:var(--live-soft);color:var(--live)}.success-flash{background:color-mix(in srgb,var(--success) 10%,var(--surface));color:var(--success)}.back-site-link{display:flex;align-items:center;justify-content:center;gap:6px;color:var(--muted);margin-top:15px}
/* responsive */
@media(max-width:1080px){.main-nav .nav-link:nth-child(n+4){display:none}.home-content-grid,.competition-page-layout,.team-page-layout,.match-detail-layout{grid-template-columns:1fr}.match-day-sidebar,.competition-page-sidebar,.team-page-sidebar,.match-detail-sidebar{position:static;grid-template-columns:repeat(3,1fr)}.match-card{grid-template-columns:88px minmax(0,1fr) 60px 110px 68px}.footer-main{grid-template-columns:1.5fr repeat(2,1fr)}.timezone-column{display:none}.admin-metric-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:820px){:root{--header-h:64px}.container,.container-wide{width:min(100% - 24px,var(--container))}.desktop-only,.brand-copy small,.header-actions .language-switcher{display:none}.main-nav{display:none}.header-inner{justify-content:space-between}.mobile-menu-button{display:inline-flex}.scoreboard-hero{padding:25px;min-height:190px}.hero-metrics{display:none}.date-browser-row{display:block}.date-strip{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:5px}.date-tile{min-width:72px;scroll-snap-align:center}.calendar-picker{width:100%;height:45px;margin-top:8px}.match-toolbar{overflow:auto}.filter-button{display:none}.match-filters{min-width:max-content}.match-card{grid-template-columns:70px minmax(0,1fr) 48px 58px;min-height:96px;padding:9px}.match-context{display:none}.match-actions{grid-column:4}.match-time-block{padding-inline-end:7px}.match-teams{padding-inline:10px}.team-crest{width:28px;height:28px}.match-score strong{font-size:1.08rem}.match-day-sidebar{grid-template-columns:1fr 1fr}.timezone-summary{grid-column:1/-1}.competition-directory,.search-result-grid{grid-template-columns:repeat(2,1fr)}.match-meta-grid{grid-template-columns:repeat(2,1fr)}.footer-main{grid-template-columns:1fr 1fr}.footer-brand-column{grid-column:1/-1}.mobile-bottom-nav{display:grid;grid-template-columns:repeat(4,1fr);position:fixed;z-index:90;bottom:0;inset-inline:0;background:color-mix(in srgb,var(--surface) 94%,transparent);backdrop-filter:blur(18px);border-top:1px solid var(--border);padding:7px max(8px,env(safe-area-inset-right)) calc(7px + env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left));box-shadow:0 -10px 30px rgba(20,30,50,.08)}.mobile-bottom-nav a{display:flex;flex-direction:column;align-items:center;gap:2px;color:var(--muted);font-size:.64rem}.mobile-bottom-nav a.active{color:var(--brand)}.site-footer{padding-bottom:70px}.drawer-backdrop{position:fixed;inset:0;background:rgba(5,9,18,.55);backdrop-filter:blur(3px);z-index:199}.drawer-backdrop.open{display:block}.mobile-drawer{display:flex;position:fixed;z-index:200;top:0;bottom:0;inset-inline-start:0;width:min(340px,88vw);background:var(--surface);box-shadow:var(--shadow-lg);transform:translateX(calc(-110% * var(--drawer-sign,-1)));transition:.28s var(--ease);flex-direction:column;padding:18px}[dir="rtl"] .mobile-drawer{--drawer-sign:1}.mobile-drawer.open{transform:none}.drawer-head{display:flex;justify-content:space-between;align-items:center;padding-bottom:16px;border-bottom:1px solid var(--border)}.drawer-nav{display:grid;gap:5px;padding:15px 0}.drawer-link{display:flex;align-items:center;gap:10px;padding:11px;border-radius:11px;font-weight:700}.drawer-link.active{background:var(--brand-soft);color:var(--brand)}.drawer-label{font-size:.72rem;color:var(--muted);font-weight:800}.drawer-settings{margin-top:auto}.drawer-settings>div{display:flex;gap:6px;margin-top:7px}.drawer-settings a{padding:7px 11px;border-radius:9px;border:1px solid var(--border)}.drawer-settings a.active{background:var(--brand);color:#fff}.drawer-footer{border-top:1px solid var(--border);padding-top:12px;margin-top:13px}.drawer-footer a{display:flex;align-items:center;gap:8px}.admin-app{grid-template-columns:1fr}.admin-sidebar{position:fixed;inset-block:0;inset-inline-start:0;width:260px;transform:translateX(calc(-110% * var(--drawer-sign,-1)));transition:.25s;box-shadow:var(--shadow-lg)}[dir="rtl"] .admin-sidebar{--drawer-sign:1}.admin-sidebar.open{transform:none}.admin-menu-toggle{display:inline-flex}.admin-breadcrumb span,.admin-user div{display:none}.admin-content{padding:16px}.admin-dashboard-grid{grid-template-columns:1fr}.provider-grid{grid-template-columns:1fr 1fr}.admin-auth-page{grid-template-columns:1fr}.auth-visual{display:none}}
@media(max-width:560px){body{font-size:14px}.container,.container-wide{width:calc(100% - 18px)}.page-shell{padding-top:14px}.scoreboard-hero,.page-hero{border-radius:20px}.scoreboard-hero{padding:22px 19px;min-height:150px}.scoreboard-copy h1{font-size:1.65rem}.scoreboard-copy p{font-size:.76rem}.date-command{padding:14px}.date-command-head{margin-bottom:12px}.date-command-head>div:first-child{display:none}.date-command-actions{width:100%;justify-content:space-between}.today-button{flex:1}.match-filters{width:100%}.segmented a{padding:0 9px}.segmented a .icon{display:none}.competition-header{padding:11px}.competition-logo{width:38px;height:38px}.match-card{grid-template-columns:58px minmax(0,1fr) 38px 40px;min-height:92px;padding:8px 5px}.match-time-block{font-size:.76rem}.match-time-block small{font-size:.6rem}.team-name{font-size:.78rem}.team-crest{width:25px;height:25px;font-size:.5rem}.match-teams{padding-inline:6px}.match-score{gap:8px}.match-actions .arrow-link{display:none}.favorite-button{width:34px;height:34px}.competition-actions .collapse-button{width:36px;height:36px}.match-day-sidebar{grid-template-columns:1fr}.timezone-summary{grid-column:auto}.competition-directory,.search-result-grid{grid-template-columns:1fr}.competition-directory-card{min-height:190px}.search-inline{min-width:0;width:100%}.directory-toolbar{display:grid;gap:9px}.directory-toolbar .segmented{display:none}.entity-hero{grid-template-columns:auto 1fr;padding:20px;gap:13px}.competition-logo.hero-logo,.entity-team-crest{width:62px;height:62px;border-radius:19px;font-size:1rem}.entity-hero-copy h1{font-size:1.35rem}.entity-hero-copy p,.entity-tags{display:none}.entity-hero-facts{grid-column:1/-1;justify-content:space-between}.competition-page-layout{display:block}.premium-panel,.detail-panel,.side-info-card{padding:14px}.competition-page-sidebar,.team-page-sidebar,.match-detail-sidebar{display:none}.match-hero{padding:18px 12px}.match-main{gap:8px}.hero-crest{width:58px;height:58px;border-radius:17px;font-size:.78rem}.hero-team-name{font-size:.8rem;max-width:95px}.hero-score{min-width:92px}.scoreline{font-size:2.1rem}.kickoff-big{font-size:1.9rem}.match-meta-grid{grid-template-columns:1fr 1fr}.match-meta-item{padding:8px;font-size:.72rem}.timeline-event{grid-template-columns:52px 26px 1fr;gap:6px}.timeline-premium:before{inset-inline-start:64px}.calendar-event{grid-template-columns:62px 16px 1fr;padding:11px}.calendar-date-block{min-height:92px}.calendar-event-content{padding-inline-start:5px}.calendar-event-top{display:block}.verification{margin-top:4px}.calendar-event-content h2{font-size:.93rem}.page-hero{padding:22px 18px}.page-hero-stat{display:none}.footer-main{grid-template-columns:1fr}.footer-column{display:none}.footer-bottom{font-size:.65rem}.admin-metric-grid{grid-template-columns:1fr 1fr;gap:8px}.admin-metric-card{padding:13px;display:block}.admin-metric-icon{width:36px;height:36px;margin-bottom:8px}.admin-metric-card strong{font-size:1.3rem}.provider-grid{grid-template-columns:1fr}.admin-topbar{padding:0 12px}.admin-user{display:none}.auth-form-column{padding:16px}.auth-card{padding:21px}.standings-table{font-size:.75rem}.standings-table th,.standings-table td{padding:9px 8px}.sticky-team-column{position:sticky!important;inset-inline-start:0;background:var(--surface)!important;z-index:3}.standings-table thead .sticky-team-column{background:var(--surface-2)!important}.table-team strong{max-width:100px;overflow:hidden;text-overflow:ellipsis}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:.45}}
:focus-visible{outline:3px solid color-mix(in srgb,var(--brand) 45%,transparent);outline-offset:2px}
[hidden]{display:none!important}
@media(max-width:560px){.demo-notice-inner{justify-content:flex-start;min-height:34px;white-space:nowrap;overflow:hidden}.demo-notice-inner>span:last-child{display:none}.demo-notice-inner strong{overflow:hidden;text-overflow:ellipsis}.demo-notice{font-size:.72rem}}


/* v0.2.2 — mobile navigation hardening */
.admin-sidebar-head{display:flex;align-items:center;justify-content:space-between;gap:10px}
.admin-sidebar-head .brand{min-width:0}
.admin-sidebar-close,.admin-sidebar-backdrop{display:none}
@media(max-width:820px){
  .mobile-drawer{transform:translateX(calc(-100% - 24px));visibility:hidden;pointer-events:none;transition:transform .28s var(--ease),visibility 0s linear .28s}
  [dir="rtl"] .mobile-drawer{transform:translateX(calc(100% + 24px))}
  .mobile-drawer.open{transform:translateX(0);visibility:visible;pointer-events:auto;transition:transform .28s var(--ease)}

  .admin-sidebar{inset-inline-start:0;transform:translateX(calc(-100% - 24px));visibility:hidden;pointer-events:none;transition:transform .25s var(--ease),visibility 0s linear .25s;will-change:transform}
  [dir="rtl"] .admin-sidebar{transform:translateX(calc(100% + 24px))}
  .admin-sidebar.open{transform:translateX(0);visibility:visible;pointer-events:auto;transition:transform .25s var(--ease)}
  .admin-sidebar-close{display:grid;place-items:center;flex:0 0 auto;width:40px;height:40px;border:1px solid rgba(255,255,255,.12);border-radius:11px;background:rgba(255,255,255,.06);color:#fff}
  .admin-sidebar-close:hover,.admin-sidebar-close:focus-visible{background:#1e2c4c;border-color:rgba(255,255,255,.24)}
  .admin-sidebar-backdrop{display:block;position:fixed;inset:0;z-index:140;border:0;background:rgba(4,8,18,.62);backdrop-filter:blur(3px);opacity:0;pointer-events:none;transition:opacity .22s ease}
  .admin-sidebar-backdrop.open{opacity:1;pointer-events:auto}
  .admin-sidebar-backdrop[hidden]{display:none}
  body.admin-drawer-open{overflow:hidden;touch-action:none}
  .admin-main{width:100%;max-width:100vw;overflow-x:hidden}
  .admin-content{min-width:0}
}
@media(max-width:560px){
  .admin-sidebar{width:min(320px,86vw)}
  .admin-topbar{height:64px}
  .admin-breadcrumb{min-width:0;max-width:calc(100vw - 164px)}
  .admin-breadcrumb strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .admin-page-header{align-items:flex-start;gap:12px}
  .admin-page-header h1{font-size:1.55rem}
  .admin-dashboard-grid,.admin-metric-grid{min-width:0}
  .admin-table-card{overflow-x:auto}
}

/* v0.2.3 — public mobile drawer hardening (Safari/iOS safe) */
@media (max-width:820px){
  html,body{max-width:100%;overflow-x:hidden}
  .site-header,.page-shell,.site-footer,.mobile-bottom-nav{max-width:100vw}

  /* Closed means not rendered at all. This prevents the partially visible
     drawer seen on iOS Safari with RTL logical positioning/transforms. */
  html body .mobile-drawer:not(.open){display:none!important}
  html body .mobile-drawer.open{
    display:flex!important;
    position:fixed!important;
    top:0!important;
    bottom:0!important;
    width:min(340px,88vw)!important;
    max-width:88vw!important;
    height:100dvh!important;
    margin:0!important;
    transform:none!important;
    visibility:visible!important;
    pointer-events:auto!important;
    z-index:250!important;
    overflow-y:auto!important;
    overscroll-behavior:contain;
    -webkit-overflow-scrolling:touch;
    animation:publicDrawerFadeIn .18s ease-out both;
  }
  html[dir="ltr"] body .mobile-drawer.open{left:0!important;right:auto!important}
  html[dir="rtl"] body .mobile-drawer.open{right:0!important;left:auto!important}

  html body .drawer-backdrop{display:none!important;position:fixed!important;inset:0!important;z-index:240!important}
  html body .drawer-backdrop.open{display:block!important}
  body.public-drawer-open{overflow:hidden!important;touch-action:none}
}
@keyframes publicDrawerFadeIn{from{opacity:0}to{opacity:1}}

/* API-Football provider center */
.provider-setup-layout{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(300px,.65fr);gap:16px;align-items:start}.provider-config-card,.provider-status-card,.quota-card,.initial-sync-card,.provider-list-section{padding:20px}.provider-form{display:grid;gap:20px}.provider-form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.provider-form-grid.compact-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.field{display:grid;gap:7px;font-size:.8rem;font-weight:800}.field-wide{grid-column:1/-1}.field input{width:100%;height:46px;border:1px solid var(--border);border-radius:12px;background:var(--surface-2);color:var(--text);padding:0 13px;outline:0;font:inherit}.field input:focus{border-color:var(--brand);box-shadow:0 0 0 3px color-mix(in srgb,var(--brand) 13%,transparent)}.field small,.form-note,.quota-update{font-size:.68rem;color:var(--muted);font-weight:600}.secret-input-wrap{display:flex;align-items:center;gap:8px;border:1px solid var(--border);border-radius:12px;background:var(--surface-2);padding-inline:12px}.secret-input-wrap:focus-within{border-color:var(--brand);box-shadow:0 0 0 3px color-mix(in srgb,var(--brand) 13%,transparent)}.secret-input-wrap input{border:0!important;box-shadow:none!important;padding:0;background:transparent}.secret-toggle{width:38px;height:38px;border:0;background:transparent;color:var(--muted);display:grid;place-items:center;border-radius:9px}.secret-toggle:hover{background:var(--brand-soft);color:var(--brand)}.provider-security-chip{display:inline-flex;align-items:center;gap:6px;padding:7px 10px;border-radius:999px;background:color-mix(in srgb,var(--success) 11%,var(--surface));color:var(--success);font-size:.68rem;font-weight:800}.league-preset-fieldset{border:1px solid var(--border);border-radius:16px;padding:14px}.league-preset-fieldset legend{padding:0 8px;color:var(--muted);font-size:.75rem;font-weight:800}.league-preset-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.league-preset{display:flex;align-items:center;gap:9px;border:1px solid var(--border);border-radius:12px;padding:10px;background:var(--surface-2);cursor:pointer}.league-preset:has(input:checked){border-color:color-mix(in srgb,var(--brand) 45%,var(--border));background:var(--brand-soft)}.league-preset input{accent-color:var(--brand)}.league-preset span{display:flex;flex-direction:column;line-height:1.3}.league-preset small{color:var(--muted);font-size:.64rem}.sync-settings-heading{margin-top:2px}.provider-options-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.provider-option{display:flex;align-items:center;gap:10px;border:1px solid var(--border);border-radius:13px;padding:11px;background:var(--surface-2);cursor:pointer}.provider-option input{position:absolute;opacity:0;pointer-events:none}.option-check{width:24px;height:24px;border:1px solid var(--border);border-radius:8px;display:grid;place-items:center;color:transparent;flex:0 0 auto}.provider-option:has(input:checked){border-color:color-mix(in srgb,var(--brand) 35%,var(--border))}.provider-option input:checked+.option-check{background:var(--brand);border-color:var(--brand);color:#fff}.provider-option>span:last-child{display:flex;flex-direction:column}.provider-option small{color:var(--muted);font-size:.65rem}.provider-form-actions{display:flex;align-items:center;gap:12px;justify-content:space-between;border-top:1px solid var(--border);padding-top:16px}.provider-side-stack{display:grid;gap:12px}.provider-status-card form,.initial-sync-card form{margin-top:14px}.full-width{width:100%;justify-content:center}.secondary-button{min-height:44px;border:1px solid var(--border);border-radius:11px;background:var(--surface-2);color:var(--text);display:inline-flex;align-items:center;gap:8px;padding:0 14px;font-weight:800}.secondary-button:hover{border-color:var(--brand);color:var(--brand)}button:disabled{opacity:.45;cursor:not-allowed}.quota-numbers{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:13px 0}.quota-numbers>div{border:1px solid var(--border);background:var(--surface-2);border-radius:12px;padding:12px;display:flex;flex-direction:column}.quota-numbers small{color:var(--muted)}.quota-numbers strong{font-size:1.5rem}.initial-sync-card{display:grid;gap:10px}.initial-sync-icon{width:50px;height:50px;border-radius:15px;background:var(--brand-soft);color:var(--brand);display:grid;place-items:center}.initial-sync-card h2{margin:4px 0}.initial-sync-card p{margin:0;color:var(--muted);font-size:.78rem}.provider-list-section{margin-top:16px}.error-flash{background:color-mix(in srgb,var(--danger) 10%,var(--surface));color:var(--danger)}.health-summary{max-width:420px}.health-summary span{overflow-wrap:anywhere}

@media(max-width:1100px){.provider-setup-layout{grid-template-columns:1fr}.provider-side-stack{grid-template-columns:repeat(3,1fr)}.provider-status-card,.quota-card,.initial-sync-card{min-width:0}}
@media(max-width:820px){.provider-form-grid,.provider-form-grid.compact-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.provider-side-stack{grid-template-columns:1fr}.admin-page-header{align-items:flex-start;gap:10px}.health-summary{max-width:100%}}
@media(max-width:560px){.provider-config-card,.provider-status-card,.quota-card,.initial-sync-card,.provider-list-section{padding:14px}.provider-form-grid,.provider-form-grid.compact-grid,.league-preset-grid,.provider-options-grid{grid-template-columns:1fr}.field-wide{grid-column:auto}.provider-form-actions{align-items:stretch;flex-direction:column}.provider-form-actions .primary-button{width:100%;justify-content:center}.provider-security-chip{display:none}.admin-page-header{display:grid}.health-summary{justify-self:start}.league-preset{min-height:52px}}

/* Provider media and real lineup data */
.team-crest img,.hero-crest img,.competition-logo img,.competition-mini-logo img{width:100%;height:100%;object-fit:contain;display:block}.team-crest:has(img),.hero-crest:has(img),.competition-logo:has(img),.competition-mini-logo:has(img){background:var(--surface);padding:4px}.lineups-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.lineup-team-card{border:1px solid var(--border);background:var(--surface-2);border-radius:16px;overflow:hidden}.lineup-team-card>header{display:flex;align-items:center;gap:10px;padding:13px;border-bottom:1px solid var(--border)}.lineup-team-card>header h3{margin:0;font-size:.95rem}.lineup-team-card>header small{color:var(--muted)}.lineup-list{padding:12px}.lineup-list h4{margin:0 0 8px;color:var(--muted);font-size:.72rem}.lineup-list>div{display:grid;grid-template-columns:30px minmax(0,1fr) auto;align-items:center;gap:8px;min-height:36px;border-bottom:1px dashed var(--border);font-size:.76rem}.lineup-list>div:last-child{border-bottom:0}.shirt-number{width:28px;height:28px;border-radius:9px;background:var(--brand-soft);color:var(--brand);display:grid;place-items:center;font-weight:900}.lineup-list>div small{color:var(--muted)}.lineup-list.substitutes{border-top:1px solid var(--border)}
@media(max-width:700px){.lineups-grid{grid-template-columns:1fr}}
