/* Native Performance Centre uses the established club theme and panels. */
#screen-setup .setup-grid>#piSetupPanel{grid-column:1/-1;}
.pi-centre {color:var(--ink);}
.pi-centre .panel{background:var(--surface);color:var(--ink);}
.pi-centre button,.pi-centre input,.pi-centre select{font:inherit;}
.pi-centre button{min-height:44px;}
#performanceCentreBtn[hidden]{display:none!important;}
.ranking-sync:has(#performanceCentreBtn){flex-wrap:wrap;}
.ranking-sync:has(#performanceCentreBtn)>div:first-child{flex:1 1 260px;}
.pi-return{margin-bottom:20px;}
.pi-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;}
.pi-landing h2{font-size:25px;}
.pi-landing p:not(.eyebrow){color:var(--muted);line-height:1.6;min-height:52px;}
.pi-landing .btn{margin-top:12px;}
.pi-row{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;}
.pi-row small{display:block;color:var(--muted);margin-top:5px;}
.pi-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;}
.pi-message{color:var(--ink);line-height:1.5;margin:12px 0;min-height:0;}
.pi-message:empty{display:none;}
.pi-error{color:var(--loss)!important;}
.pi-field{display:block;min-width:0;max-width:100%;font-weight:700;font-size:13px;margin:15px 0;}
.pi-field input{box-sizing:border-box;display:block;width:100%;min-width:0;max-width:100%;height:44px;margin-top:7px;border:1px solid var(--line);border-radius:9px;background:var(--surface);color:var(--ink);padding:9px 12px;}
/* WebKit date controls have intrinsic content sizing and native padding. Keep
   their border box inside the same field width without clipping the picker. */
/* The real label/wrapper owns geometry and inset. A font-sized native date
   line box is physically centred, avoiding iOS shadow-value padding quirks. */
#screen-performance .pi-date-control{box-sizing:border-box;display:flex;align-items:center;width:100%;min-width:0;max-width:100%;height:44px;margin-top:7px;padding:0 12px;border:1px solid var(--line);border-radius:9px;background:var(--surface);color:var(--ink)}
#screen-performance.pi-touch-compact .pi-date-control,html[data-touch-layout="true"] #screen-performance .pi-date-control{height:48px}
#screen-performance .pi-date-control:focus-within{outline:3px solid var(--accent);outline-offset:3px}
#screen-performance .pi-field .pi-date-control input[type="date"]{box-sizing:border-box;display:block;flex:1 1 0%;min-inline-size:0;inline-size:100%;max-inline-size:100%;min-height:0;height:26px;max-height:26px;margin:0;padding:0;border:0!important;border-radius:0!important;background:transparent!important;color:inherit!important;line-height:26px;-webkit-appearance:none;appearance:none;text-align:left}
#screen-performance .pi-field .pi-date-control input[type="date"]:focus-visible{outline:none!important}
#screen-performance .pi-date-control input[type="date"]::-webkit-date-and-time-value{min-width:0;margin:0;padding:0;text-align:left;line-height:26px}
#screen-performance .pi-date-control input[type="date"]::-webkit-datetime-edit{margin:0;padding:0;line-height:26px}
.pi-check{display:flex;gap:12px;align-items:center;padding:12px 0;font-size:14px;line-height:1.5;}
.pi-check input{width:20px;height:20px;flex:0 0 20px;accent-color:var(--accent);}
.pi-rounds{margin-top:18px;}
.pi-round,.pi-division,.pi-assignment{padding:15px 0;border-top:1px solid var(--line);}
.pi-rink p{line-height:1.7;}
.pi-section-back{margin-bottom:18px;}
.pi-link{color:var(--accent);text-decoration:underline;text-underline-offset:3px;min-height:44px;display:inline-flex;align-items:center;}
.pi-centre .tip,.pi-centre .sub{color:var(--muted);font-size:13px;line-height:1.6;}
.pi-centre .kicker{font-size:11px;font-weight:800;color:var(--muted);letter-spacing:.1em;}
.pi-centre .row{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;}
.pi-review{border-top:1px solid var(--line);margin-top:10px;}
.pi-review summary{cursor:pointer;padding:14px 0;line-height:1.6;font-size:13px;font-weight:700;}
.pi-review-content{padding:0 0 12px;}
.pi-history{margin-top:24px;}
.pi-centre :focus-visible{outline:3px solid var(--accent);outline-offset:3px;}
#screen-performance .perf-segment{background:var(--bg);border:1px solid var(--line);border-radius:10px;padding:15px;margin:13px 0}#screen-performance .perf-segment .row{align-items:start}#screen-performance .perf-segment-title{font-size:14px;margin:0 0 5px}#screen-performance .perf-segment-rating{text-align:right;white-space:nowrap}#screen-performance .perf-segment-rating strong,#screen-performance .perf-segment-rating .tip{display:block}#screen-performance .perf-category-row{display:flex;align-items:center;justify-content:space-between;gap:10px;border-top:1px solid var(--line);padding:9px 0;font-size:13px}#screen-performance .perf-category-row span{color:var(--muted)}#screen-performance .perf-category-row strong{white-space:nowrap}#screen-performance .perf-segment-summary{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-top:11px;font-size:12px}
#screen-performance .perf-controls{display:grid;grid-template-columns:minmax(160px,1fr) repeat(2,minmax(120px,160px)) minmax(160px,190px) auto;gap:10px;align-items:end;margin:22px 0 13px}#screen-performance .perf-controls label{font-size:11px;font-weight:750;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}#screen-performance .perf-controls input,#screen-performance .perf-controls select{display:block;margin-top:6px;width:100%;min-width:0;height:42px;border:1px solid var(--line);border-radius:7px;background:var(--surface);color:var(--ink);padding:8px 10px;font-size:13px;text-transform:none;letter-spacing:normal}#screen-performance .perf-controls .btn{min-height:42px}#screen-performance .perf-list-count{font-size:12px;font-weight:750;color:var(--muted)}#screen-performance .perf-table{min-width:650px}#screen-performance .perf-table tr:hover td{background:var(--bg)}#screen-performance .perf-table td{vertical-align:middle}#screen-performance .perf-table td strong{display:block}#screen-performance .perf-table td .tip{display:block;margin-top:4px}#screen-performance .perf-table th:last-child,#screen-performance .perf-table td:last-child{text-align:center}#screen-performance .perf-table th:last-child small{display:block;font-size:10px;margin-top:3px;color:var(--ink);letter-spacing:.08em}#screen-performance .perf-name{background:transparent;color:var(--accent);border:0;padding:7px 2px;text-align:left;font-weight:850;text-decoration:underline;text-underline-offset:3px;cursor:pointer}#screen-performance .perf-name:focus-visible,#screen-performance .perf-detail button:focus-visible{outline:3px solid #087cff;outline-offset:3px}#screen-performance .perf-match strong{font-variant-numeric:tabular-nums;white-space:nowrap;letter-spacing:.06em}#screen-performance .perf-empty{text-align:center;color:var(--muted);padding:28px 12px!important}#screen-performance .perf-detail{width:min(800px,calc(100% - 24px));max-height:90vh;overflow-y:auto;margin:auto;background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:12px;padding:23px;box-shadow:0 15px 60px #0018}#screen-performance .perf-detail::backdrop{background:#031a33b3}#screen-performance .perf-profile-head{display:flex;justify-content:space-between;gap:16px;border-bottom:1px solid var(--line);padding-bottom:16px}#screen-performance .perf-profile-head h2{font-size:26px;margin:5px 0}#screen-performance .perf-profile-rating{text-align:right;white-space:nowrap}#screen-performance .perf-profile-rating strong{display:block;font-size:26px}#screen-performance .perf-profile-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:20px 0}#screen-performance .perf-profile-metrics>div{background:var(--bg);border:1px solid var(--line);border-radius:8px;padding:13px}#screen-performance .perf-profile-metrics small{display:block;font-size:11px;color:var(--muted);margin-bottom:8px}#screen-performance .perf-profile-metrics strong{display:block;font-size:16px}#screen-performance .perf-detail-footer{display:flex;justify-content:flex-end;gap:10px;margin:20px 0 0}
@media(max-width:900px){#screen-performance .perf-controls{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){#screen-performance .perf-controls label:first-child{grid-column:1/-1}#screen-performance .perf-controls label:nth-child(4){grid-column:1/-1}#screen-performance .perf-controls .btn{grid-column:1/-1}#screen-performance .perf-detail{padding:14px;width:calc(100% - 12px);max-height:96vh}#screen-performance .perf-profile-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}#screen-performance .perf-profile-head h2{font-size:21px}#screen-performance .perf-profile-rating strong{font-size:21px}}


@media(max-width:720px){.pi-grid{grid-template-columns:1fr}.pi-landing p:not(.eyebrow){min-height:0}.pi-centre .page-head h1{font-size:30px}.pi-centre .pi-row>.btn{flex:1 1 auto}.pi-centre .pi-actions{width:100%}.pi-centre .pi-actions .btn{flex:1}.pi-centre .panel{padding:16px}.pi-return{width:100%;text-align:left}}

#screen-performance .table-wrap{overflow-x:auto;max-width:100%}
#screen-performance .perf-table{border-collapse:collapse;width:100%}
#screen-performance .perf-table th,#screen-performance .perf-table td{border-bottom:1px solid var(--line);padding:12px 10px;text-align:left;font-size:13px}
#screen-performance .perf-table th{background:var(--bg);font-size:11px;text-transform:uppercase;color:var(--muted);letter-spacing:.06em}
#screen-performance .historical-review{margin-top:14px;border-top:1px solid var(--line);padding-top:10px}
#screen-performance .historical-review>summary{cursor:pointer;min-height:44px;display:list-item;padding:12px 0;font-weight:700;color:var(--muted)}

/* Texts remain previews until an explicit device Messages draft handoff.
   BowlsSelect never sends a message or records delivery from this dialog. */
#screen-performance .pi-text-preview{box-sizing:border-box;width:min(720px,calc(100% - 24px));max-height:90dvh;overflow:auto;margin:auto;padding:22px;border:1px solid var(--line);border-radius:16px;background:var(--surface);color:var(--ink);box-shadow:0 18px 60px #031a3355}
#screen-performance .pi-text-preview::backdrop{background:#031a33b3}
#screen-performance .pi-text-heading{align-items:flex-start;flex-wrap:nowrap}
#screen-performance .pi-text-heading h2{margin:0;font-size:23px;line-height:1.3}
#screen-performance .pi-preview-notice{padding:13px 15px;border:1px solid var(--line);border-left:4px solid var(--accent);border-radius:9px;background:var(--bg);color:var(--ink);font-size:13px;line-height:1.6}
#screen-performance .pi-preview-notice strong,#screen-performance .pi-preview-notice span{display:block}
#screen-performance .pi-text-meta{display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr));margin:18px 0}
#screen-performance .pi-text-meta>div:last-child{grid-column:1/-1}
#screen-performance .pi-text-meta dt{font-size:12px;color:var(--muted);margin-bottom:5px}
#screen-performance .pi-text-meta dd{font-size:14px;font-weight:700;margin:0;overflow-wrap:anywhere}
#screen-performance .pi-contact-warning{padding:12px;border:1px solid var(--line);border-left:4px solid var(--draw,#986300);border-radius:8px;color:var(--ink);font-size:13px;line-height:1.6}
#screen-performance .pi-text-label{display:block;margin:17px 0 8px;font-weight:750;font-size:13px}
#screen-performance .pi-text-message,#screen-performance .pi-text-link{box-sizing:border-box;width:100%;max-width:100%;padding:12px;border:1px solid var(--line);border-radius:9px;background:var(--bg);color:var(--ink);font:inherit;font-size:14px;line-height:1.6}
#screen-performance .pi-text-message{min-height:190px;resize:vertical;overflow-wrap:anywhere;white-space:pre-wrap}
#screen-performance .pi-text-link{min-height:44px}
#screen-performance .pi-text-actions{margin-top:20px}
@media(max-width:520px){#screen-performance .pi-text-preview{width:calc(100% - 12px);padding:15px;max-height:94dvh}#screen-performance .pi-text-heading h2{font-size:20px}#screen-performance .pi-text-meta{grid-template-columns:1fr}#screen-performance .pi-text-actions .btn{flex:1 1 140px}#screen-performance .pi-text-message{min-height:220px}}

/* Touch layout follows the existing app preference. Desktop keeps every link
   control visible; phones and touch tablets use native disclosure for tools. */
#screen-performance{min-width:0}
#screen-performance .panel,#screen-performance .pi-row>*{min-width:0}
#screen-performance .pi-assignment-person{flex:1 1 180px;overflow-wrap:anywhere}
#screen-performance .pi-assignment-controls{justify-content:flex-end;flex:0 1 auto}
#screen-performance .pi-link-tools,#screen-performance .pi-link-tools-body,#screen-performance .pi-secondary-actions{display:contents}
#screen-performance .pi-link-tools>summary{display:none}
#screen-performance .pi-assignment-controls .pi-link-row{flex:1 0 100%;justify-content:flex-end}
#screen-performance .pi-assignment-message{margin-bottom:0}
#screen-performance .pi-lineup-list{display:flex;gap:8px 18px;flex-wrap:wrap;margin:10px 0 16px;color:var(--muted);font-size:13px}
#screen-performance .pi-lineup-list>div{display:flex;gap:5px;min-width:0}
#screen-performance .pi-lineup-list dt{font-weight:700}
#screen-performance .pi-lineup-list dd{margin:0;color:var(--ink);overflow-wrap:anywhere}
#screen-performance .pi-text-body,#screen-performance .pi-text-footer{min-width:0}
#screen-performance.pi-touch-compact .btn,#screen-performance.pi-touch-compact .pi-link,#screen-performance.pi-touch-compact .perf-name,#screen-performance.pi-touch-compact summary{min-height:48px}
#screen-performance.pi-touch-compact input:not([type=checkbox]),#screen-performance.pi-touch-compact select,#screen-performance.pi-touch-compact textarea{min-height:48px;font-size:16px}
#screen-performance.pi-touch-compact .pi-check{min-height:48px;gap:12px}
#screen-performance.pi-touch-compact .pi-feedback-layout{display:flex;flex-direction:column;gap:18px}
#screen-performance.pi-touch-compact .pi-feedback-layout>.pi-rounds{order:-1;margin-top:0}
#screen-performance.pi-touch-compact .pi-feedback-grid{grid-template-columns:1fr}
#screen-performance.pi-touch-compact .pi-preferences-panel{order:2}
#screen-performance.pi-touch-compact .pi-round{align-items:stretch;gap:12px}
#screen-performance.pi-touch-compact .pi-round>span{flex:1 1 180px;overflow-wrap:anywhere;line-height:1.5}
#screen-performance.pi-touch-compact .pi-round>.btn{flex:0 1 auto}
#screen-performance.pi-touch-compact .pi-assignment{margin-top:12px;padding:16px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}
#screen-performance.pi-touch-compact .pi-assignment-header{display:block}
#screen-performance.pi-touch-compact .pi-assignment-person{display:block;font-size:16px;line-height:1.5}
#screen-performance.pi-touch-compact .pi-assignment-person small{font-size:13px;margin-top:4px}
#screen-performance.pi-touch-compact .pi-assignment-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:14px;width:100%;justify-content:stretch}
#screen-performance.pi-touch-compact .pi-assignment-controls>.btn:only-child{grid-column:1/-1}
#screen-performance.pi-touch-compact .pi-assignment-controls>.btn{width:100%;padding:10px 12px;white-space:normal;line-height:1.35}
#screen-performance.pi-touch-compact .pi-invitation-action{background:var(--club,#031a33);border-color:var(--club,#031a33);color:var(--bs-on-club,#fff)}
#screen-performance.pi-touch-compact .pi-link-tools{display:block;grid-column:1/-1;border-top:1px solid var(--line);padding-top:6px}
#screen-performance.pi-touch-compact .pi-link-tools>summary{display:list-item;cursor:pointer;padding:12px 4px;font-size:14px;font-weight:700;color:var(--muted);line-height:1.6}
#screen-performance.pi-touch-compact .pi-link-tools-body{display:block;padding:3px 0}
#screen-performance.pi-touch-compact .pi-secondary-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
#screen-performance.pi-touch-compact .pi-secondary-actions>.btn{white-space:normal;padding:10px;line-height:1.4}
#screen-performance.pi-touch-compact .pi-link-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:10px}
#screen-performance.pi-touch-compact .pi-link-row>*{width:100%;white-space:normal;justify-content:center;text-align:center;line-height:1.4}
#screen-performance.pi-touch-compact .pi-lineup-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:12px 0 20px}
#screen-performance.pi-touch-compact .pi-lineup-list>div{display:block}
#screen-performance.pi-touch-compact .pi-lineup-list dt{font-size:12px;color:var(--muted);margin-bottom:4px}
#screen-performance.pi-touch-compact .pi-lineup-list dd{font-size:15px;line-height:1.5}
#screen-performance.pi-touch-compact .pi-text-preview[open]{display:flex;flex-direction:column;width:min(720px,calc(100% - 12px));height:min(94dvh,820px);max-height:94dvh;padding:0;overflow:hidden;overscroll-behavior:contain}
#screen-performance.pi-touch-compact .pi-text-heading{flex:0 0 auto;margin:0;padding:15px 16px;border-bottom:1px solid var(--line);align-items:center;gap:12px}
#screen-performance.pi-touch-compact .pi-text-heading h2{font-size:20px;overflow-wrap:anywhere;min-width:0}
#screen-performance.pi-touch-compact .pi-text-heading .btn{flex:0 0 auto}
#screen-performance.pi-touch-compact .pi-text-body{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:0 16px 16px}
#screen-performance.pi-touch-compact .pi-text-message{min-height:0;resize:none;overflow:hidden}
#screen-performance.pi-touch-compact .pi-text-footer{flex:0 0 auto;margin:0;padding:12px 16px max(12px,env(safe-area-inset-bottom));border-top:1px solid var(--line);background:var(--surface)}
#screen-performance.pi-touch-compact .pi-text-footer .pi-message{margin:0 0 10px;font-size:14px;line-height:1.4}
#screen-performance.pi-touch-compact .pi-text-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;width:100%;margin:0}
#screen-performance.pi-touch-compact .pi-text-actions>.btn{width:100%;padding:10px;white-space:normal;line-height:1.35}
#screen-performance.pi-touch-compact .pi-text-actions>.pi-open-messages{grid-column:1/-1}
#screen-performance.pi-touch-compact .pi-text-actions>[data-pi-text-close]{display:none}
html[data-touch-layout="true"] .pi-centre .btn,html[data-touch-layout="true"] .pi-centre .pi-check{min-height:48px}

/* The same semantic table and unique player rows become labelled cards at
   narrow widths; column headers remain available to assistive technology. */
@media(max-width:600px){
 #screen-performance .perf-table{display:block;min-width:0;width:100%}
 #screen-performance .perf-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
 #screen-performance .perf-table tbody{display:grid;gap:14px;min-width:0}
 #screen-performance .perf-table tr{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border:1px solid var(--line);border-radius:12px;overflow:hidden;background:var(--surface)}
 #screen-performance .perf-table td{display:block;min-width:0;padding:12px;border:0;text-align:left!important;overflow-wrap:anywhere;font-size:14px;line-height:1.5}
 #screen-performance .perf-table td::before{content:attr(data-label);display:block;color:var(--muted);font-size:11px;font-weight:750;line-height:1.4;margin-bottom:7px}
 #screen-performance .perf-table td:first-child,#screen-performance .perf-table td:nth-child(2),#screen-performance .perf-table td.perf-empty{grid-column:1/-1}
 #screen-performance .perf-table td:first-child{padding:0 12px;border-bottom:1px solid var(--line)}
 #screen-performance .perf-table td:first-child::before,#screen-performance .perf-table td.perf-empty::before{display:none}
 #screen-performance .perf-table .perf-name{width:100%;min-height:52px;font-size:16px;line-height:1.5;overflow-wrap:anywhere}
 #screen-performance .perf-table td:nth-child(2){padding-top:12px;padding-bottom:4px}
 #screen-performance .perf-table .arrow{white-space:normal;margin-left:0;font-size:13px;line-height:1.5}
 #screen-performance .perf-table .tip{font-size:12px;line-height:1.5}
 #screen-performance .table-wrap{overflow:visible}
 #screen-performance .perf-profile-head{display:block}
 #screen-performance .perf-profile-rating{text-align:left;margin-top:12px;white-space:normal}
 #screen-performance .perf-profile-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
 #screen-performance .perf-profile-metrics>div{padding:11px;min-width:0}
 #screen-performance .perf-profile-metrics strong{font-size:15px;overflow-wrap:anywhere}
 #screen-performance .perf-category-row{align-items:flex-start;gap:12px;font-size:14px;line-height:1.5}
 #screen-performance .perf-category-row span{min-width:0;overflow-wrap:anywhere}
 #screen-performance .perf-category-row strong{flex:0 0 auto;font-size:13px}
 #screen-performance .perf-segment .row{display:block}
 #screen-performance .perf-segment-rating{text-align:left;margin-top:12px}
 #screen-performance .perf-detail{box-sizing:border-box;max-height:94dvh;overscroll-behavior:contain}
 #screen-performance .perf-detail-footer{position:sticky;bottom:-14px;margin:18px -14px -14px;padding:12px 14px;background:var(--surface);border-top:1px solid var(--line)}
 #screen-performance .perf-detail-footer .btn{width:100%;white-space:normal}
 #screen-performance.pi-touch-compact .pi-round>.btn{width:100%;flex:1 1 100%}
 #screen-performance.pi-touch-compact .pi-secondary-actions{grid-template-columns:1fr}
 #screen-performance.pi-touch-compact .pi-text-meta{grid-template-columns:1fr}
}

#screen-performance.pi-touch-compact .pi-link-tools:not([open])>.pi-link-tools-body{display:none}
