/* Sports & surfaces, 24 Oct 2026. Presentation for the approved public journeys.
   Existing model, authority and action hooks own behavior. Explicit scopes keep
   simulator, TV and platform administration out of this mobile redesign. */
:root{--sports-court:#103e83;--sports-radius:28px}
.market-app,.liveapp,dialog#sheet{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--r-ink)}
:is(.market-app,.liveapp,dialog#sheet) :is(button,input,select,textarea){font-family:inherit}
:is(.market-app,.liveapp) :is(.market-page-title h1,.discover-intro h1){font-size:clamp(28px,4vw,40px);line-height:1.12;font-weight:650;letter-spacing:-.035em}
:is(.market-app,.liveapp) :is(.panel,.community-card,.market-venue,.market-event,.help-entry,.help-article,.help-support,.market-empty){border-radius:var(--sports-radius);border-color:transparent;box-shadow:none}
:is(.market-app,.liveapp) :is(.sectionhead h2,.gt-h h2){font-size:20px;font-weight:600;letter-spacing:-.02em;line-height:1.3}
:is(.market-app,.liveapp) :is(.btn,.textbutton){font-size:15px;font-weight:500}
:is(.market-app,.liveapp,dialog#sheet) .btn{border-radius:14px;box-shadow:none;min-height:44px}
:is(.market-app,.liveapp,dialog#sheet) .btn.primary{background:var(--r-blue);color:white;border-color:transparent;border-radius:14px;min-height:48px;box-shadow:none}
:is(.market-app,.liveapp) .bottom-nav{border:1px solid #fff9;background:#fafafc;box-shadow:0 4px 20px #1c1c1e12;border-radius:28px}
:is(.market-app,.liveapp) .bottom-nav a{gap:3px;border-radius:20px;font-size:11px;font-weight:500;min-width:0}
:is(.market-app,.liveapp) .bottom-nav a svg{width:23px;height:23px;stroke-width:1.7}
:is(.market-app,.liveapp) .bottom-nav a[aria-current=page]{background:#e7effd;color:var(--r-blue)}
:is(.market-app,.liveapp) .app-header{box-shadow:none;background:var(--r-bg);border-color:transparent}
:is(.market-app,.liveapp) .header-more>summary{background:transparent;font-weight:400}
:is(.market-app,.liveapp) .market-page-title{margin:20px 0 24px}
:is(.market-app,.liveapp) .market-page-title p{font-size:15px;line-height:1.5}
/* The identity is on the canvas; controls form one quiet segmented group. */
.liveapp .sessionhero.gt-head{background:transparent;padding:12px 0 0;border:0;border-radius:0;box-shadow:none}
.liveapp:has(.gt-head) .sessiontoolbar{background:transparent;padding:0;margin:0 0 20px;border-radius:0}
.liveapp:has(.gt-head) .livetabs{background:#e5e5eb!important;border:0!important;border-radius:14px!important;padding:4px!important;gap:2px!important}
.liveapp:has(.gt-head) .livetabs>button,.liveapp .session-more>summary{min-height:44px;border-radius:11px!important;font-size:15px}
.liveapp:has(.gt-head) .livetabs>button.selected,.liveapp .session-more>summary.selected{background:white!important;box-shadow:0 1px 3px #0000000d!important}
.liveapp:has(.gt-head) .livetabs>button.selected:after,.session-more>summary.selected:after{display:none}
.liveapp .gt-strip{border:0;background:transparent;box-shadow:none;padding:0 0 16px;gap:10px;backdrop-filter:none;-webkit-backdrop-filter:none}
.liveapp .gt-strip b{font-size:15px;font-weight:500}.liveapp .gt-strip small{font-size:13px;line-height:1.4}
.liveapp .gt-strip>.btn{background:transparent;color:var(--r-link);padding:8px;white-space:normal;border:0}
.liveapp .gt-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;background:white;border-radius:28px;padding:14px 6px;margin:0 0 24px}
.liveapp .gt-metric{background:transparent;box-shadow:none;border:0;border-radius:0;padding:0 6px;min-width:0}
.liveapp .gt-metric+.gt-metric{border-left:1px solid var(--r-line)}
.liveapp .gt-metric b{font-size:26px;line-height:32px;font-weight:600;letter-spacing:-.035em}
.liveapp .gt-metric span{font-size:12px;line-height:16px;white-space:normal}
.liveapp .gt-mine-stats{grid-template-columns:repeat(3,minmax(0,1fr))}
.liveapp .gt .livecourt.gt-court{background:#fff;border:0!important;border-radius:28px;box-shadow:none!important;padding:16px;overflow:hidden}
.liveapp .gt-court header{padding:0 0 14px;gap:10px;align-items:center}
.liveapp .gt-court-title b{font-size:17px;font-weight:600}.liveapp .gt-court-title small{font-size:13px;line-height:18px}
.liveapp .gt-num{height:34px;width:34px;border-radius:11px;background:#eaf1ff;font-size:16px;color:var(--r-blue)}
.liveapp .gt-state{font-size:12px;font-weight:400}
.liveapp .gt .gt-court .courtmatch{display:block;padding:0;min-height:0;margin:0;border:0}
.liveapp .gt .gt-court>.btn{width:100%;margin:12px 0 0;background:#eaf1ff;color:var(--r-blue);font-size:17px;font-weight:500;min-height:48px;border:0;border-radius:14px}
.sports-pitch{position:relative;isolation:isolate;background:var(--sports-court);border-radius:18px;padding:20px 8px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-rows:repeat(var(--team-rows),minmax(60px,auto));column-gap:24px;row-gap:8px;color:white;min-width:0}
.sports-pitch:before{content:'';position:absolute;inset:10px;border:1px solid #ffffff70;background:linear-gradient(90deg,transparent 24%,#ffffff50 24%,#ffffff50 calc(24% + 1px),transparent calc(24% + 1px),transparent 76%,#ffffff50 76%,#ffffff50 calc(76% + 1px),transparent calc(76% + 1px));z-index:-1;pointer-events:none}
.sports-pitch:after{content:'';position:absolute;top:10px;bottom:10px;left:50%;border-left:1px dashed #ffffffc0;pointer-events:none;z-index:-1}
.sports-team{display:grid;grid-template-rows:subgrid;grid-row:1 / span var(--team-rows);min-width:0;align-items:center}
.sports-team:first-child{grid-column:1}.sports-team:nth-child(2){grid-column:2}
.liveapp .sports-pitch .sports-name{display:flex;flex-direction:column;justify-content:center;align-items:center;align-self:stretch;gap:4px;width:100%;min-width:0;min-height:48px;padding:5px 4px;margin:0;border:0;background:var(--sports-court);color:white;text-align:center;border-radius:8px;font-size:16px;line-height:22px;font-weight:500;overflow-wrap:anywhere;white-space:normal;box-shadow:none}
.sports-name small{font-size:12px;line-height:16px;color:#e0eaff;font-weight:400}
.liveapp .sports-pitch button:focus-visible{outline:2px solid white;outline-offset:0}
.liveapp .gt-list,.liveapp .gt-tools,.liveapp .gt .gt-deck{border-radius:28px;background:white;box-shadow:none;border:0}
.liveapp .gt-hero{border-radius:28px;background:var(--sports-court);box-shadow:none;padding:24px}
.liveapp .gt-hero .gt-big{font-size:40px;letter-spacing:-.04em}.liveapp .gt-hero-teams{font-size:16px}
.liveapp .gt-h{gap:8px;flex-wrap:wrap}.liveapp .gt-h .gt-tools-link{margin-left:auto;min-height:44px;display:flex;align-items:center;font-size:13px}
/* A roster is one list, with menus rather than a wall of secondary buttons. */
.liveapp .roster-secondary,.liveapp .participantlist{border-radius:28px!important;background:white}
.liveapp .participant{display:grid;grid-template-columns:36px minmax(0,1fr) 44px;align-items:start;padding:16px;gap:10px;border:0;position:relative}
.liveapp .participant[hidden]{display:none}
.liveapp .participantname{min-width:0;overflow-wrap:anywhere}
.liveapp .participant>.avatar,.liveapp .participant>.og-avatar{grid-column:1;width:36px;height:36px}.liveapp .participantname{grid-column:2}
.liveapp .participantname>b{font-weight:600}.liveapp .participant .participant-skill{flex-wrap:wrap;gap:0 6px}
.liveapp .participant .skill-edit{padding:0;min-height:28px;font-size:13px}
.liveapp .participant .attendance-status{background:transparent;border:0;padding:0;color:var(--r-ink-2)}
.player-menu-button{grid-column:3;grid-row:1;display:grid;place-items:center;min-width:44px;min-height:44px;background:transparent;color:var(--r-link);border-radius:12px}
.participant-actions[hidden]{display:none!important}
#player-options .participant-actions{display:flex;flex-direction:column;align-items:stretch;gap:0;margin:0}
#player-options .participant-actions :is(.btn,.textbutton){width:100%;justify-content:flex-start;text-align:left;font-size:17px;font-weight:400;background:white;border:0;border-bottom:1px solid var(--r-line);border-radius:0;box-shadow:none;min-height:52px;margin:0;padding:12px 4px}
.sports-options-name{font-size:17px;font-weight:600;margin:16px 0}
.roster-search-tools{margin:0 0 16px}.sports-search{display:block;font-size:13px;color:var(--r-ink-2)}
.sports-search input{box-sizing:border-box;width:100%;min-width:0;height:48px;border:0;border-radius:14px;padding:12px 16px;font-size:17px;background:#e5e5eb;color:var(--r-ink);margin:6px 0 12px}
.roster-filters{display:flex;gap:8px;flex-wrap:wrap}.roster-filters button{min-height:44px;padding:8px 14px;background:transparent;border-radius:12px;color:var(--r-ink-2);font-size:15px}
.roster-filters button[aria-pressed=true]{background:white;color:var(--r-ink);font-weight:600}
.sports-muted{color:var(--r-ink-2);font-size:13px;line-height:18px;margin:10px 0 0}
.liveapp .standings th{font-size:12px;font-weight:400;background:white}.liveapp .standings td{font-size:15px;padding-top:16px;padding-bottom:16px}.liveapp .standings-name{font-weight:500;font-size:17px}
/* Dialog geometry: actual native controls and all real creation fields. */
#sheet{background:var(--r-bg);border-radius:28px;padding:24px;box-sizing:border-box}
#sheet .sheethead h2{font-size:22px;line-height:28px;font-weight:600;letter-spacing:-.025em}
#sheet :is(input:not([type=checkbox]):not([type=radio]),select,textarea){font-size:16px;border-radius:12px;background-color:white;border:1px solid #d9d9df;color:var(--r-ink);box-sizing:border-box}
#sheet .scoreinputs{align-items:stretch;gap:12px}
#sheet .scoreinputs>.field{display:grid;grid-template-rows:1fr 56px;gap:10px;align-items:end;margin:12px 0;font-size:14px;line-height:20px;min-width:0}
#sheet .scoreinputs>.field input{margin:0;height:56px;text-align:center;font-size:24px;line-height:30px;min-width:0}
.sports-form-group{border:0;border-radius:24px;background:white;padding:16px;margin:24px 0;min-width:0;position:relative}
.sports-form-group legend{font-size:20px;line-height:26px;font-weight:600;color:var(--r-ink);padding:0 0 8px;float:left;width:100%}
.sports-form-group>.liveformgrid{clear:both}.sports-form-group .field{font-size:14px;font-weight:400;line-height:20px}
#sheet .sports-form-group .liveformgrid{gap:12px 16px}#sheet .sports-form-group .field{margin:6px 0}
#sheet .sports-form-group input:not([type=checkbox]):not([type=radio]){height:48px;font-size:17px;min-width:0}
#sheet .sports-form-group .field:has([name=title]),#sheet .sports-form-group .field:has([name=venue]),#sheet .sports-form-group .field:has([name=startsAt]){grid-column:1 / -1}
#sheet .sports-form-group .create-info{grid-column:1 / -1}
#sheet #create-event>.btn[type=submit]{width:100%;font-size:17px}
:is(.market-app,.liveapp,#sheet) select:not([multiple]):not([size]){appearance:none;-webkit-appearance:none;height:48px;min-height:48px;padding:0 48px 0 16px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16'%3E%3Cpath d='m4 6 4 4 4-4' fill='none' stroke='%23636366' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:right 16px center;background-repeat:no-repeat;background-size:16px 16px;line-height:normal}
[dir=rtl] :is(.market-app,.liveapp,#sheet) select:not([multiple]):not([size]){background-position:left 16px center;padding:0 16px 0 48px}
/* Task-first Help, with existing articles and role paths below. */
.market-app .help-intro{padding:0;margin:20px 0 24px}.market-app .help-intro h1{font-size:30px;line-height:36px;letter-spacing:-.035em;font-weight:650;margin:8px 0}.market-app .help-intro>p{font-size:15px;line-height:22px}
.market-app .help-search{margin:20px 0 0;font-size:13px}.market-app .help-search input{height:52px;border:0;background:#e5e5eb;border-radius:14px;font-size:17px;padding:12px 16px}
.market-app .help-start-entry{background:#fff;border:0;border-radius:28px;padding:20px;gap:16px;align-items:center}
.help-quick-tasks{display:grid;background:white;border-radius:28px;margin:16px 0;overflow:hidden}
.help-quick-tasks>a{display:grid;grid-template-columns:36px 1fr 16px;gap:12px;align-items:center;padding:14px 18px;min-height:60px;color:var(--r-ink);text-decoration:none;font-size:17px;position:relative}
.help-quick-tasks>a+a:before{content:'';position:absolute;top:0;left:66px;right:18px;border-top:1px solid var(--r-line)}
.help-task-icon{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:#eaf1ff;color:var(--r-blue)}
.help-quick-tasks>a>svg{color:var(--r-ink-2)}
.help-more-paths{margin:20px 0}.help-more-paths>summary{font-size:17px;min-height:48px;cursor:pointer;line-height:24px;padding:12px 0;color:var(--r-link)}
.help-more-paths .help-roles{margin:16px 0}.help-more-paths .help-entry{margin:16px 0}
.market-app .help-article{margin:12px 0;background:white}.market-app .help-article>summary{padding:20px}.market-app .help-article>summary strong{font-size:17px;font-weight:600;line-height:23px}.market-app .help-article-summary{font-size:14px;line-height:21px}
/* Discovery and existing profiles keep their real media, controls and records. */
.market-app .discover-hero{background:transparent;box-shadow:none;border-radius:0;padding:0;min-height:0;margin:12px 0 24px}
.market-app .discover-intro{padding:0}.market-app .discover-intro>p{font-size:15px;line-height:23px;margin:12px 0}.market-app .hero-category{font-size:12px;letter-spacing:.06em}
.market-app .discover-search{border:0;border-radius:24px;background:white;box-shadow:none;padding:16px;margin-bottom:24px}
.market-app .market-venue-grid{gap:16px}.market-app .venue-card{border-radius:28px;box-shadow:none;border:0;overflow:hidden}
.market-app .market-event{border:0;box-shadow:none;padding:20px;border-radius:24px;background:white}
.market-app .community-card{background:white;padding:20px}.market-app .community-card h2{font-size:22px;font-weight:600;letter-spacing:-.025em}
.market-app .crown{box-shadow:none}.market-app .crown-name{font-weight:650}.market-app .crown-stats{border-radius:24px;background:white;box-shadow:none}
@media(max-width:700px){
 .market-app>main,.liveapp>main{padding-left:20px;padding-right:20px}
 .market-app .discover-hero{display:block}.market-app .editorial-court{display:none}
 .market-app .discover-intro h1{font-size:32px}.market-app .hero-event-link{font-size:15px;min-height:44px;display:inline-flex;align-items:center;margin-top:0}
 .market-app .discover-search{display:grid;grid-template-columns:1fr;gap:12px}.market-app .discover-search .discover-field{min-width:0;padding:0;border:0}.market-app .discover-search input{font-size:17px;min-height:44px;width:100%}
 .market-app .market-page-title{display:flex;flex-wrap:wrap;gap:14px}.market-app .market-page-title .actions{flex-wrap:wrap}
 .market-app .crown{--crown-cover:156px;--crown-av:88px;--crown-ring:4px;border-radius:28px}
 .market-app .crown-id{padding:0 20px 20px;gap:10px 14px}.market-app .crown-name{font-size:26px;line-height:31px}.market-app .crown-sub{font-size:14px;line-height:20px}
 .market-app .crown-actions{width:100%;gap:8px;flex-wrap:wrap}.market-app .crown-stats{margin:16px 0;padding:16px 8px}
 .liveapp .gt-courts{gap:16px}.liveapp .gt-section{margin-top:20px}
 #sheet{padding:20px 16px;max-height:calc(100dvh - 20px);padding-bottom:max(24px,env(safe-area-inset-bottom));border-radius:28px 28px 0 0}
 .liveapp .gt-h .gt-tools-link{font-size:12px}.market-app .help-main{padding-top:8px}
}
@media(max-width:359px){.market-app>main,.liveapp>main{padding-left:16px;padding-right:16px}.liveapp .gt .livecourt.gt-court{padding:14px}.sports-pitch{padding:16px 4px;column-gap:24px}.liveapp .sports-pitch .sports-name{font-size:15px;line-height:21px}.liveapp .participant{padding:14px 12px;gap:8px;grid-template-columns:30px minmax(0,1fr) 44px}.liveapp .participant>.avatar,.liveapp .participant>.og-avatar{width:30px;height:30px}.liveapp .gt-strip{flex-wrap:wrap}}
@media(forced-colors:active){:is(.market-app,.liveapp,#sheet) select:not([multiple]):not([size]){appearance:auto;-webkit-appearance:menulist;background-image:none;padding:0 12px}.sports-pitch,.sports-name{background:Canvas;color:CanvasText}.sports-pitch:after{border-color:CanvasText}.sports-pitch:before{border-color:CanvasText;background:none}}
@media(prefers-contrast:more){:is(.market-app,.liveapp) :is(.panel,.community-card,.market-event,.help-entry,.help-article,.help-quick-tasks){border:1px solid var(--r-ink-2)}.sports-pitch:before{border-color:white}.liveapp .sports-pitch button{outline:1px solid white}}
/* Reconcile legacy containers instead of adding two sets of mobile gutters. */
@media(max-width:700px){
 .market-app,.liveapp{padding-left:20px;padding-right:20px}.market-app>main,.liveapp>main{padding-left:0;padding-right:0}
 .liveapp .gt-main{gap:16px}.liveapp .gt-metrics{margin-bottom:0;padding:12px 4px}.liveapp .gt-section{margin-top:0}.liveapp .gt-h{margin:0 4px}
 .liveapp .gt-strip{padding-bottom:0}.liveapp .sessionhero.gt-head{padding-top:6px}.liveapp .gt-back{margin:0;min-height:36px}
 .liveapp .gt-head .gt-title{margin-top:8px}.liveapp .gt-strip>svg{display:none}.liveapp .gt-strip>div{flex:1 1 190px}
 .market-app .discover-top{display:flex;flex-direction:column;gap:0}.market-app .discover-hero{margin:12px 0 16px}.market-app .discover-search{margin:0 0 24px}
 .market-app .discover-search{grid-template-columns:repeat(2,minmax(0,1fr))}.market-app .discover-search .search-name,.market-app .discover-search>.btn{grid-column:1/-1}
 .market-app .discover-field>span{font-weight:400}.market-app .discover-search .discover-field select{font-size:16px;padding-left:12px}
 .market-app .help-intro{margin-top:12px}.market-app .help-start-entry{display:flex;text-align:left}.market-app .help-start-entry>.help-role-link{white-space:nowrap}
}
.liveapp .gt .livecourt.gt-court>header{margin:0;padding:0 0 14px;flex-wrap:nowrap}
.liveapp .gt .livecourt.gt-court>header .gt-num{flex:0 0 34px;height:34px;border-radius:11px;background:#eaf1ff;color:var(--r-blue);font-size:16px;font-weight:500}
.liveapp .gt .livecourt.gt-court>header .gt-state{background:transparent;padding:0;min-width:0;font-size:12px;white-space:normal;color:var(--r-ink-2)}
.liveapp .gt .livecourt.gt-court>header .gt-state:before{display:none}
#sheet #player-options .participant-actions{background:white;border-radius:20px;overflow:hidden;padding:0 16px}
#sheet #player-options .participant-actions :is(.btn,.textbutton,.skill-edit){border-radius:0;background:white;min-height:52px;margin:0;padding:12px 0;font-size:17px;justify-content:flex-start;text-align:left;width:100%;border:0;border-bottom:1px solid var(--r-line);font-weight:400;box-shadow:none}
#sheet #player-options .participant-actions .danger-quiet{background:white!important;color:var(--r-danger)!important}
.liveapp .participant .roster-checkin{grid-column:2 / -1;justify-self:start;min-height:44px;font-size:15px;color:var(--r-link);background:transparent;border:0;padding:8px 0}
@media(max-width:359px){.market-app,.liveapp{padding-left:16px;padding-right:16px}.market-app>main,.liveapp>main{padding-left:0;padding-right:0}}
.help-main.is-searching>.help-start-entry,.help-main.is-searching>.help-quick-tasks{display:none}
.help-main.is-searching .help-intro>p:not(.help-kicker){display:none}
.location-options{grid-column:1/-1;min-width:0}.location-options>summary{font-size:15px;color:var(--r-link);min-height:44px;display:flex;align-items:center;justify-content:space-between;gap:12px;list-style:none;cursor:pointer;overflow-wrap:anywhere}.location-options>summary:after{content:'⌄';font-size:20px}.location-options>summary::-webkit-details-marker{display:none}.location-options[open]>summary:after{content:'⌃'}.location-options>div{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:8px 0}
.market-app .market-venue-card{border:0;border-radius:28px;background:#fff;box-shadow:none;overflow:hidden}.market-app .venue-card-top{height:160px;background:#e6edf7}.market-app .venue-card-body{padding:20px}.market-app .venue-card-body h3{font-size:20px;font-weight:600;line-height:26px;min-height:0}.market-app .venue-card-foot{border-top:1px solid var(--r-line);padding-top:12px}.market-app .help-context{margin:28px 0 0;font-size:13px;line-height:20px}
@media(max-width:700px){.location-options>div{grid-template-columns:1fr}.market-app .discovery-courts{margin-top:0}.market-app .discover-search{margin-bottom:16px}.market-app .discover-top{margin-bottom:16px}.market-app .discover-intro .hero-category{display:none}.market-app .discover-intro h1{margin-top:0}}
@media(max-width:700px){.market-app .crown:has(.og-cover:not(.has-cover-photo)){--crown-cover:232px}}
.liveapp .resultrow{flex-wrap:wrap;min-width:0;max-width:100%;background:white;border:0;border-radius:24px}
.liveapp .resultrow>.result-review{flex:1 1 100%;min-width:0}
.market-app .venue-card-top:not(.has-photo){background:var(--sports-court);justify-content:center;padding:20px}
.market-app .venue-card-top .venue-symbol{display:grid;place-items:center;background:none;width:80px;height:110px}
.market-app .venue-card-top .venue-symbol svg{width:80px;height:110px;stroke:#ffffffb3;stroke-width:1.3;fill:none}
.market-app .venue-card-top.has-photo{padding:0}.market-app .venue-card-top.has-photo>img{width:100%;height:100%;object-fit:cover}
