/* Shared public-site controls. Navigation, icon-only controls and private workspaces retain their layouts. */
:root{--pn-control-radius:7px;--pn-control-height:38px;--pn-control-font:600 12px/1.45 var(--pn-font,Arial,sans-serif);--pn-control-ink:#36594a;--pn-control-border:#dce7e1;--pn-control-green:#087f5b}
body.pn-design :is(.pn-button,.share-trigger,.share-option,.btn,.contact-copy,.home-cta,.primary-button,.report-preview-close),body.pn-design .contact-card #contactSubmit,body .pn-generated-content :is(.button,.action,form>button){
 box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:var(--pn-control-height);padding:8px 12px;border:1px solid var(--pn-control-border);border-radius:var(--pn-control-radius);background:#fff;color:var(--pn-control-ink);font:var(--pn-control-font);text-decoration:none;box-shadow:none;cursor:pointer;transition:background .15s,border-color .15s,color .15s}
body.pn-design :is(.pn-button,.share-trigger,.share-option,.btn,.contact-copy,.home-cta,.primary-button):hover:not(:disabled),body.pn-design .contact-card #contactSubmit:hover:not(:disabled),body .pn-generated-content :is(.button,.action,form>button):hover:not(:disabled){background:#eef6f1;border-color:#bad7c7;color:#087f5b;filter:none}
body.pn-design :is(.pn-button.primary,.btn-primary,.primary-button,.home-cta.primary,.share-option.image-primary),body.pn-design .contact-card #contactSubmit,body .pn-generated-content :is(.button:not(.secondary),.action.primary,button[type=submit]){background:#087f5b;border-color:#087f5b;color:#fff}
body.pn-design :is(.pn-button.primary,.btn-primary,.primary-button,.home-cta.primary,.share-option.image-primary):hover:not(:disabled),body.pn-design .contact-card #contactSubmit:hover:not(:disabled),body .pn-generated-content :is(.button:not(.secondary),.action.primary,button[type=submit]):hover:not(:disabled){background:#066c4d;border-color:#066c4d;color:#fff}
body.pn-design .pn-button.danger{color:#a03434;border-color:#e4c8c8;background:#fff}
body.pn-design .pn-button.danger:hover:not(:disabled){color:#922c2c;border-color:#dba9a9;background:#fff2f2}
body.pn-design :is(button,a):focus-visible,body .pn-generated-content :is(button,a):focus-visible{outline:3px solid #087f5b;outline-offset:3px}
body.pn-design :is(.pn-button,.share-trigger,.share-option,.btn):disabled,body .pn-generated-content button:disabled{opacity:.5;cursor:wait}
body.pn-design :is(.pn-button,.share-trigger,.share-option,.btn)[hidden],body .pn-generated-content [hidden]{display:none}
/* Primary hero links stay legible on the dark green panels. */
body.pn-design :is(.home-cta.primary,.primary-button){background:#39dea0;border-color:#39dea0;color:#102b26;font-weight:700}
body.pn-design .home-cta.secondary{background:transparent;border-color:#ffffff50;color:#fff}
/* One canonical Follow control, including states, across profiles and search tables.
   Important declarations intentionally override old per-page button ID styles. */
body.pn-design :is(#followFavorite,.my-teams-follow){display:inline-flex;align-items:center;justify-content:center;gap:8px!important;box-sizing:border-box;min-height:var(--pn-control-height)!important;padding:8px 11px!important;border:1px solid #dce3df!important;border-radius:var(--pn-control-radius)!important;background:#f0f3f1!important;color:#52665c!important;font:var(--pn-control-font)!important;box-shadow:none!important;filter:none!important;white-space:normal}
body.pn-design :is(#followFavorite,.my-teams-follow)[aria-pressed=true]{background:#e5f6ed!important;border-color:#b4dfc8!important;color:#087f5b!important}
body.pn-design :is(#followFavorite,.my-teams-follow):hover:not(:disabled){border-color:#9fb9aa!important}
body.pn-design :is(#followFavorite,.my-teams-follow)::before,body.pn-design :is(.pn-share-toolbar>.share-trigger,#openClubShare)::before{content:"";display:block;width:17px;height:17px;flex:0 0 17px;background:currentColor;-webkit-mask:var(--pn-control-icon) center/contain no-repeat;mask:var(--pn-control-icon) center/contain no-repeat}
body.pn-design :is(#followFavorite,.my-teams-follow){--pn-control-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M12%2020s-8-4.4-8-10a4.5%204.5%200%200%201%208-2.8A4.5%204.5%200%200%201%2020%2010c0%205.6-8%2010-8%2010Z%22%2F%3E%3C%2Fsvg%3E")}
body.pn-design :is(.pn-share-toolbar>.share-trigger,#openClubShare){--pn-control-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%2218%22%20cy%3D%225%22%20r%3D%223%22%2F%3E%3Ccircle%20cx%3D%226%22%20cy%3D%2212%22%20r%3D%223%22%2F%3E%3Ccircle%20cx%3D%2218%22%20cy%3D%2219%22%20r%3D%223%22%2F%3E%3Cpath%20d%3D%22m8.6%2010.5%206.8-4m-6.8%207%206.8%204%22%2F%3E%3C%2Fsvg%3E")}
@media(max-width:700px),(pointer:coarse){:root{--pn-control-height:44px}body.pn-design :is(.pn-button,.share-trigger,.share-option,.btn,.contact-copy,.home-cta,.primary-button),body.pn-design .contact-card #contactSubmit,body .pn-generated-content :is(.button,.action,form>button){min-height:44px}}
@media(prefers-reduced-motion:reduce){body.pn-design :is(button,a),body .pn-generated-content :is(button,a){transition:none}}

/* Sharing actions use the same compact treatment on team, club, rankings and match pages. */
body.pn-design .pn-share-toolbar .share-trigger{min-height:var(--pn-control-height)!important;padding:8px 11px!important;border:1px solid transparent!important;border-radius:var(--pn-control-radius)!important;background:transparent!important;color:#36594a!important;font:var(--pn-control-font)!important;gap:8px!important;box-shadow:none!important}
body.pn-design .pn-share-toolbar .share-trigger:hover:not(:disabled){background:#eef6f1!important;border-color:#d6e8dd!important;color:#087f5b!important}
