.leaflet-pane,.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-tile-container,.leaflet-pane>svg,.leaflet-pane>canvas,.leaflet-zoom-box,.leaflet-image-layer,.leaflet-layer{position:absolute;top:0;left:0}.leaflet-container{overflow:hidden}.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow{-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.leaflet-tile::selection{background:0 0}.leaflet-safari .leaflet-tile{image-rendering:-webkit-optimize-contrast}.leaflet-safari .leaflet-tile-container{-webkit-transform-origin:0 0;width:1600px;height:1600px}.leaflet-marker-icon,.leaflet-marker-shadow{display:block}.leaflet-container .leaflet-overlay-pane svg{max-width:none!important;max-height:none!important}.leaflet-container .leaflet-marker-pane img,.leaflet-container .leaflet-shadow-pane img,.leaflet-container .leaflet-tile-pane img,.leaflet-container img.leaflet-image-layer,.leaflet-container .leaflet-tile{width:auto;padding:0;max-width:none!important;max-height:none!important}.leaflet-container img.leaflet-tile{mix-blend-mode:plus-lighter}.leaflet-container.leaflet-touch-zoom{-ms-touch-action:pan-x pan-y;touch-action:pan-x pan-y}.leaflet-container.leaflet-touch-drag{-ms-touch-action:pinch-zoom;touch-action:none;touch-action:pinch-zoom}.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom{-ms-touch-action:none;touch-action:none}.leaflet-container{-webkit-tap-highlight-color:transparent}.leaflet-container a{-webkit-tap-highlight-color:#33b5e566}.leaflet-tile{filter:inherit;visibility:hidden}.leaflet-tile-loaded{visibility:inherit}.leaflet-zoom-box{box-sizing:border-box;z-index:800;width:0;height:0}.leaflet-overlay-pane svg{-moz-user-select:none}.leaflet-pane{z-index:400}.leaflet-tile-pane{z-index:200}.leaflet-overlay-pane{z-index:400}.leaflet-shadow-pane{z-index:500}.leaflet-marker-pane{z-index:600}.leaflet-tooltip-pane{z-index:650}.leaflet-popup-pane{z-index:700}.leaflet-map-pane canvas{z-index:100}.leaflet-map-pane svg{z-index:200}.leaflet-vml-shape{width:1px;height:1px}.lvml{behavior:url(#default#VML);display:inline-block;position:absolute}.leaflet-control{z-index:800;pointer-events:visiblePainted;pointer-events:auto;position:relative}.leaflet-top,.leaflet-bottom{z-index:1000;pointer-events:none;position:absolute}.leaflet-top{top:0}.leaflet-right{right:0}.leaflet-bottom{bottom:0}.leaflet-left{left:0}.leaflet-control{float:left;clear:both}.leaflet-right .leaflet-control{float:right}.leaflet-top .leaflet-control{margin-top:10px}.leaflet-bottom .leaflet-control{margin-bottom:10px}.leaflet-left .leaflet-control{margin-left:10px}.leaflet-right .leaflet-control{margin-right:10px}.leaflet-fade-anim .leaflet-popup{opacity:0;transition:opacity .2s linear}.leaflet-fade-anim .leaflet-map-pane .leaflet-popup{opacity:1}.leaflet-zoom-animated{transform-origin:0 0}svg.leaflet-zoom-animated{will-change:transform}.leaflet-zoom-anim .leaflet-zoom-animated{-webkit-transition:-webkit-transform .25s cubic-bezier(0,0,.25,1);-moz-transition:-moz-transform .25s cubic-bezier(0,0,.25,1);transition:transform .25s cubic-bezier(0,0,.25,1)}.leaflet-zoom-anim .leaflet-tile,.leaflet-pan-anim .leaflet-tile{transition:none}.leaflet-zoom-anim .leaflet-zoom-hide{visibility:hidden}.leaflet-interactive{cursor:pointer}.leaflet-grab{cursor:-webkit-grab;cursor:-moz-grab;cursor:grab}.leaflet-crosshair,.leaflet-crosshair .leaflet-interactive{cursor:crosshair}.leaflet-popup-pane,.leaflet-control{cursor:auto}.leaflet-dragging .leaflet-grab,.leaflet-dragging .leaflet-grab .leaflet-interactive,.leaflet-dragging .leaflet-marker-draggable{cursor:move;cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:grabbing}.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-image-layer,.leaflet-pane>svg path,.leaflet-tile-container{pointer-events:none}.leaflet-marker-icon.leaflet-interactive,.leaflet-image-layer.leaflet-interactive,.leaflet-pane>svg path.leaflet-interactive,svg.leaflet-image-layer.leaflet-interactive path{pointer-events:visiblePainted;pointer-events:auto}.leaflet-container{outline-offset:1px;background:#ddd}.leaflet-container a{color:#0078a8}.leaflet-zoom-box{background:#ffffff80;border:2px dotted #38f}.leaflet-container{font-family:Helvetica Neue,Arial,Helvetica,sans-serif;font-size:.75rem;line-height:1.5}.leaflet-bar{border-radius:4px;box-shadow:0 1px 5px #000000a6}.leaflet-bar a{text-align:center;color:#000;background-color:#fff;border-bottom:1px solid #ccc;width:26px;height:26px;line-height:26px;text-decoration:none;display:block}.leaflet-bar a,.leaflet-control-layers-toggle{background-position:50%;background-repeat:no-repeat;display:block}.leaflet-bar a:hover,.leaflet-bar a:focus{background-color:#f4f4f4}.leaflet-bar a:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.leaflet-bar a:last-child{border-bottom:none;border-bottom-right-radius:4px;border-bottom-left-radius:4px}.leaflet-bar a.leaflet-disabled{cursor:default;color:#bbb;background-color:#f4f4f4}.leaflet-touch .leaflet-bar a{width:30px;height:30px;line-height:30px}.leaflet-touch .leaflet-bar a:first-child{border-top-left-radius:2px;border-top-right-radius:2px}.leaflet-touch .leaflet-bar a:last-child{border-bottom-right-radius:2px;border-bottom-left-radius:2px}.leaflet-control-zoom-in,.leaflet-control-zoom-out{text-indent:1px;font:700 18px Lucida Console,Monaco,monospace}.leaflet-touch .leaflet-control-zoom-in,.leaflet-touch .leaflet-control-zoom-out{font-size:22px}.leaflet-control-layers{background:#fff;border-radius:5px;box-shadow:0 1px 5px #0006}.leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABoAAAAaCAQAAAADQ4RFAAACf0lEQVR4AY1UM3gkARTePdvdoTxXKc+qTl3aU5U6b2Kbkz3Gtq3Zw6ziLGNPzrYx7946Tr6/ee/XeCQ4D3ykPtL5tHno4n0d/h3+xfuWHGLX81cn7r0iTNzjr7LrlxCqPtkbTQEHeqOrTy4Yyt3VCi/IOB0v7rVC7q45Q3Gr5K6jt+3Gl5nCoDD4MtO+j96Wu8atmhGqcNGHObuf8OM/x3AMx38+4Z2sPqzCxRFK2aF2e5Jol56XTLyggAMTL56XOMoS1W4pOyjUcGGQdZxU6qRh7B9Zp+PfpOFlqt0zyDZckPi1ttmIp03jX8gyJ8a/PG2yutpS/Vol7peZIbZcKBAEEheEIAgFbDkz5H6Zrkm2hVWGiXKiF4Ycw0RWKdtC16Q7qe3X4iOMxruonzegJzWaXFrU9utOSsLUmrc0YjeWYjCW4PDMADElpJSSQ0vQvA1Tm6/JlKnqFs1EGyZiFCqnRZTEJJJiKRYzVYzJck2Rm6P4iH+cmSY0YzimYa8l0EtTODFWhcMIMVqdsI2uiTvKmTisIDHJ3od5GILVhBCarCfVRmo4uTjkhrhzkiBV7SsaqS+TzrzM1qpGGUFt28pIySQHR6h7F6KSwGWm97ay+Z+ZqMcEjEWebE7wxCSQwpkhJqoZA5ivCdZDjJepuJ9IQjGGUmuXJdBFUygxVqVsxFsLMbDe8ZbDYVCGKxs+W080max1hFCarCfV+C1KATwcnvE9gRRuMP2prdbWGowm1KB1y+zwMMENkM755cJ2yPDtqhTI6ED1M/82yIDtC/4j4BijjeObflpO9I9MwXTCsSX8jWAFeHr05WoLTJ5G8IQVS/7vwR6ohirYM7f6HzYpogfS3R2OAAAAAElFTkSuQmCC);width:36px;height:36px}.leaflet-retina .leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADQAAAA0CAQAAABvcdNgAAAEsklEQVR4AWL4TydIhpZK1kpWOlg0w3ZXP6D2soBtG42jeI6ZmQTHzAxiTbSJsYLjO9HhP+WOmcuhciVnmHVQcJnp7DFvScowZorad/+V/fVzMdMT2g9Cv9guXGv/7pYOrXh2U+RRR3dSd9JRx6bIFc/ekqHI29JC6pJ5ZEh1yWkhkbcFeSjxgx3L2m1cb1C7bceyxA+CNjT/Ifff+/kDk2u/w/33/IeCMOSaWZ4glosqT3DNnNZQ7Cs58/3Ce5HL78iZH/vKVIaYlqzfdLu8Vi7dnvUbEza5Idt36tquZFldl6N5Z/POLof0XLK61mZCmJSWjVF9tEjUluu74IUXvgttuVIHE7YxSkaYhJZam7yiM9Pv82JYfl9nptxZaxMJE4YSPty+vF0+Y2up9d3wwijfjZbabqm/3bZ9ecKHsiGmRflnn1MW4pjHf9oLufyn2z3y1D6n8g8TZhxyzipLNPnAUpsOiuWimg52psrTZYnOWYNDTMuWBWa0tJb4rgq1UvmutpaYEbZlwU3CLJm/ayYjHW5/h7xWLn9Hh1vepDkyf7dE7MtT5LR4e7yYpHrkhOUpEfssBLq2pPhAqoSWKUkk7EDqkmK6RrCEzqDjhNDWNE+XSMvkJRDWlZTmCW0l0PHQGRZY5t1L83kT0Y3l2SItk5JAWHl2dCOBm+fPu3fo5/3v61RMCO9Jx2EEYYhb0rmNQMX/vm7gqOEJLcXTGw3CAuRNeyaPWwjR8PRqKQ1PDA/dpv+on9Shox52WFnx0KY8onHayrJzm87i5h9xGw/tfkev0jGsQizqezUKjk12hBMKJ4kbCqGPVNXudyyrShovGw5CgxsRICxF6aRmSjlBnHRzg7Gx8fKqEubI2rahQYdR1YgDIRQO7JvQyD52hoIQx0mxa0ODtW2Iozn1le2iIRdzwWewedyZzewidueOGqlsn1MvcnQpuVwLGG3/IR1hIKxCjelIDZ8ldqWz25jWAsnldEnK0Zxro19TGVb2ffIZEsIO89EIEDvKMPrzmBOQcKQ+rroye6NgRRxqR4U8EAkz0CL6uSGOm6KQCdWjvjRiSP1BPalCRS5iQYiEIvxuBMJEWgzSoHADcVMuN7IuqqTeyUPq22qFimFtxDyBBJEwNyt6TM88blFHao/6tWWhuuOM4SAK4EI4QmFHA+SEyWlp4EQoJ13cYGzMu7yszEIBOm2rVmHUNqwAIQabISNMRstmdhNWcFLsSm+0tjJH1MdRxO5Nx0WDMhCtgD6OKgZeljJqJKc9po8juskR9XN0Y1lZ3mWjLR9JCO1jRDMd0fpYC2VnvjBSEFg7wBENc0R9HFlb0xvF1+TBEpF68d+DHR6IOWVv2BECtxo46hOFUBd/APU57WIoEwJhIi2CdpyZX0m93BZicktMj1AS9dClteUFAUNUIEygRZCtik5zSxI9MubTBH1GOiHsiLJ3OCoSZkILa9PxiN0EbvhsAo8tdAf9Seepd36lGWHmtNANTv5Jd0z4QYyeo/UEJqxKRpg5LZx6btLPsOaEmdMyxYdlc8LMaJnikDlhclqmPiQnTEpLUIZEwkRagjYkEibQErwhkTAKCLQEbUgkzJQWc/0PstHHcfEdQ+UAAAAASUVORK5CYII=);background-size:26px 26px}.leaflet-touch .leaflet-control-layers-toggle{width:44px;height:44px}.leaflet-control-layers .leaflet-control-layers-list,.leaflet-control-layers-expanded .leaflet-control-layers-toggle{display:none}.leaflet-control-layers-expanded .leaflet-control-layers-list{display:block;position:relative}.leaflet-control-layers-expanded{color:#333;background:#fff;padding:6px 10px 6px 6px}.leaflet-control-layers-scrollbar{padding-right:5px;overflow:hidden scroll}.leaflet-control-layers-selector{margin-top:2px;position:relative;top:1px}.leaflet-control-layers label{font-size:1.08333em;display:block}.leaflet-control-layers-separator{border-top:1px solid #ddd;height:0;margin:5px -10px 5px -6px}.leaflet-default-icon-path{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABkAAAApCAYAAADAk4LOAAAFgUlEQVR4Aa1XA5BjWRTN2oW17d3YaZtr2962HUzbDNpjszW24mRt28p47v7zq/bXZtrp/lWnXr337j3nPCe85NcypgSFdugCpW5YoDAMRaIMqRi6aKq5E3YqDQO3qAwjVWrD8Ncq/RBpykd8oZUb/kaJutow8r1aP9II0WmLKLIsJyv1w/kqw9Ch2MYdB++12Onxee/QMwvf4/Dk/Lfp/i4nxTXtOoQ4pW5Aj7wpici1A9erdAN2OH64x8OSP9j3Ft3b7aWkTg/Fm91siTra0f9on5sQr9INejH6CUUUpavjFNq1B+Oadhxmnfa8RfEmN8VNAsQhPqF55xHkMzz3jSmChWU6f7/XZKNH+9+hBLOHYozuKQPxyMPUKkrX/K0uWnfFaJGS1QPRtZsOPtr3NsW0uyh6NNCOkU3Yz+bXbT3I8G3xE5EXLXtCXbbqwCO9zPQYPRTZ5vIDXD7U+w7rFDEoUUf7ibHIR4y6bLVPXrz8JVZEql13trxwue/uDivd3fkWRbS6/IA2bID4uk0UpF1N8qLlbBlXs4Ee7HLTfV1j54APvODnSfOWBqtKVvjgLKzF5YdEk5ewRkGlK0i33Eofffc7HT56jD7/6U+qH3Cx7SBLNntH5YIPvODnyfIXZYRVDPqgHtLs5ABHD3YzLuespb7t79FY34DjMwrVrcTuwlT55YMPvOBnRrJ4VXTdNnYug5ucHLBjEpt30701A3Ts+HEa73u6dT3FNWwflY86eMHPk+Yu+i6pzUpRrW7SNDg5JHR4KapmM5Wv2E8Tfcb1HoqqHMHU+uWDD7zg54mz5/2BSnizi9T1Dg4QQXLToGNCkb6tb1NU+QAlGr1++eADrzhn/u8Q2YZhQVlZ5+CAOtqfbhmaUCS1ezNFVm2imDbPmPng5wmz+gwh+oHDce0eUtQ6OGDIyR0uUhUsoO3vfDmmgOezH0mZN59x7MBi++WDL1g/eEiU3avlidO671bkLfwbw5XV2P8Pzo0ydy4t2/0eu33xYSOMOD8hTf4CrBtGMSoXfPLchX+J0ruSePw3LZeK0juPJbYzrhkH0io7B3k164hiGvawhOKMLkrQLyVpZg8rHFW7E2uHOL888IBPlNZ1FPzstSJM694fWr6RwpvcJK60+0HCILTBzZLFNdtAzJaohze60T8qBzyh5ZuOg5e7uwQppofEmf2++DYvmySqGBuKaicF1blQjhuHdvCIMvp8whTTfZzI7RldpwtSzL+F1+wkdZ2TBOW2gIF88PBTzD/gpeREAMEbxnJcaJHNHrpzji0gQCS6hdkEeYt9DF/2qPcEC8RM28Hwmr3sdNyht00byAut2k3gufWNtgtOEOFGUwcXWNDbdNbpgBGxEvKkOQsxivJx33iow0Vw5S6SVTrpVq11ysA2Rp7gTfPfktc6zhtXBBC+adRLshf6sG2RfHPZ5EAc4sVZ83yCN00Fk/4kggu40ZTvIEm5g24qtU4KjBrx/BTTH8ifVASAG7gKrnWxJDcU7x8X6Ecczhm3o6YicvsLXWfh3Ch1W0k8x0nXF+0fFxgt4phz8QvypiwCCFKMqXCnqXExjq10beH+UUA7+nG6mdG/Pu0f3LgFcGrl2s0kNNjpmoJ9o4B29CMO8dMT4Q5ox8uitF6fqsrJOr8qnwNbRzv6hSnG5wP+64C7h9lp30hKNtKdWjtdkbuPA19nJ7Tz3zR/ibgARbhb4AlhavcBebmTHcFl2fvYEnW0ox9xMxKBS8btJ+KiEbq9zA4RthQXDhPa0T9TEe69gWupwc6uBUphquXgf+/FrIjweHQS4/pduMe5ERUMHUd9xv8ZR98CxkS4F2n3EUrUZ10EYNw7BWm9x1GiPssi3GgiGRDKWRYZfXlON+dfNbM+GgIwYdwAAAAASUVORK5CYII=)}.leaflet-container .leaflet-control-attribution{background:#fffc;margin:0}.leaflet-control-attribution,.leaflet-control-scale-line{color:#333;padding:0 5px;line-height:1.4}.leaflet-control-attribution a{text-decoration:none}.leaflet-control-attribution a:hover,.leaflet-control-attribution a:focus{text-decoration:underline}.leaflet-attribution-flag{width:1em;height:.6669em;vertical-align:baseline!important;display:inline!important}.leaflet-left .leaflet-control-scale{margin-left:5px}.leaflet-bottom .leaflet-control-scale{margin-bottom:5px}.leaflet-control-scale-line{white-space:nowrap;box-sizing:border-box;text-shadow:1px 1px #fff;background:#fffc;border:2px solid #777;border-top:none;padding:2px 5px 1px;line-height:1.1}.leaflet-control-scale-line:not(:first-child){border-top:2px solid #777;border-bottom:none;margin-top:-2px}.leaflet-control-scale-line:not(:first-child):not(:last-child){border-bottom:2px solid #777}.leaflet-touch .leaflet-control-attribution,.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{box-shadow:none}.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{background-clip:padding-box;border:2px solid #0003}.leaflet-popup{text-align:center;margin-bottom:20px;position:absolute}.leaflet-popup-content-wrapper{text-align:left;border-radius:12px;padding:1px}.leaflet-popup-content{min-height:1px;margin:13px 24px 13px 20px;font-size:1.08333em;line-height:1.3}.leaflet-popup-content p{margin:1.3em 0}.leaflet-popup-tip-container{pointer-events:none;width:40px;height:20px;margin-top:-1px;margin-left:-20px;position:absolute;left:50%;overflow:hidden}.leaflet-popup-tip{pointer-events:auto;width:17px;height:17px;margin:-10px auto 0;padding:1px;transform:rotate(45deg)}.leaflet-popup-content-wrapper,.leaflet-popup-tip{color:#333;background:#fff;box-shadow:0 3px 14px #0006}.leaflet-container a.leaflet-popup-close-button{text-align:center;color:#757575;background:0 0;border:none;width:24px;height:24px;font:16px/24px Tahoma,Verdana,sans-serif;text-decoration:none;position:absolute;top:0;right:0}.leaflet-container a.leaflet-popup-close-button:hover,.leaflet-container a.leaflet-popup-close-button:focus{color:#585858}.leaflet-popup-scrolled{overflow:auto}.leaflet-oldie .leaflet-popup-content-wrapper{-ms-zoom:1}.leaflet-oldie .leaflet-popup-tip{-ms-filter:"progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)";width:24px;filter:progid:DXImageTransform.Microsoft.Matrix(M11=.707107, M12=.707107, M21=-.707107, M22=.707107);margin:0 auto}.leaflet-oldie .leaflet-control-zoom,.leaflet-oldie .leaflet-control-layers,.leaflet-oldie .leaflet-popup-content-wrapper,.leaflet-oldie .leaflet-popup-tip{border:1px solid #999}.leaflet-div-icon{background:#fff;border:1px solid #666}.leaflet-tooltip{color:#222;white-space:nowrap;-webkit-user-select:none;user-select:none;pointer-events:none;background-color:#fff;border:1px solid #fff;border-radius:3px;padding:6px;position:absolute;box-shadow:0 1px 3px #0006}.leaflet-tooltip.leaflet-interactive{cursor:pointer;pointer-events:auto}.leaflet-tooltip-top:before,.leaflet-tooltip-bottom:before,.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{pointer-events:none;content:"";background:0 0;border:6px solid #0000;position:absolute}.leaflet-tooltip-bottom{margin-top:6px}.leaflet-tooltip-top{margin-top:-6px}.leaflet-tooltip-bottom:before,.leaflet-tooltip-top:before{margin-left:-6px;left:50%}.leaflet-tooltip-top:before{border-top-color:#fff;margin-bottom:-12px;bottom:0}.leaflet-tooltip-bottom:before{border-bottom-color:#fff;margin-top:-12px;margin-left:-6px;top:0}.leaflet-tooltip-left{margin-left:-6px}.leaflet-tooltip-right{margin-left:6px}.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{margin-top:-6px;top:50%}.leaflet-tooltip-left:before{border-left-color:#fff;margin-right:-12px;right:0}.leaflet-tooltip-right:before{border-right-color:#fff;margin-left:-12px;left:0}@media print{.leaflet-control{-webkit-print-color-adjust:exact;print-color-adjust:exact}}:root{--app-bg:#edeae6;--app-card:#f7f5f2;--app-input:#fffefe;--app-border:#ddd9d3;--app-primary:#2d4a3e;--app-primary-hover:#263f35;--app-primary-soft:#c8ddd5;--app-primary-border:#2d4a3e33;--app-muted:#756f67;--color-page:var(--app-bg);--color-surface-1:var(--app-card);--color-surface-2:var(--app-input);--color-surface-3:#fff;--color-bg:var(--color-page);--color-surface:var(--color-surface-1);--color-surface-soft:var(--app-primary-soft);--color-card:var(--color-surface-1);--color-nav-hover:var(--app-primary-soft);--color-text:#13221b;--color-text-muted:var(--app-muted);--color-border:var(--app-border);--color-border-subtle:#2d4a3e1f;--color-border-strong:#2d4a3e3d;--color-primary:var(--app-primary);--color-primary-hover:var(--app-primary-hover);--color-on-primary:#fff;--color-menu-bg:#243d32;--color-menu-text:#fff;--color-menu-divider:#ffffff24;--color-accent:var(--app-primary);--color-accent-hover:var(--app-primary-hover);--color-accent-soft:var(--app-primary-soft);--color-success:#166534;--color-success-hover:#14532d;--color-success-soft:#1665341f;--color-on-success:#fff;--color-danger:#c0392b;--color-danger-hover:#a93226;--color-danger-soft:#c0392b1f;--color-on-danger:#fff;--color-warning:#93702f;--color-warning-soft:#f0e2c4;--color-info:#3f6c7a;--color-info-soft:#dbe8ea;--color-overlay:#0f172a8f;--radius-sm:12px;--radius-md:16px;--radius-lg:20px;--radius-xl:24px;--sheet-max-height:68vh;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--page-top-padding:16px;--page-topbar-gap:14px;--page-kicker-title-gap:6px;--page-title-copy-gap:7px;--page-hero-content-gap:14px;--shadow-sm:0 8px 22px #28201017, 0 1px 2px #28201014;--shadow-md:0 14px 34px #28201021, 0 1px 2px #2820101a;--font-size-xs:12px;--font-size-sm:14px;--font-size-md:16px;--font-size-lg:18px;--font-size-xl:22px;--font-size-2xl:28px;--tap-height:52px;--content-max:720px;--app-preview-width:390px;--app-preview-height:844px;--app-preview-radius:30px;--app-viewport-height:100dvh;--color-desktop-canvas:#d9d6d1;--shadow-app-preview:0 24px 70px #28201038;--color-login-gradient-start:#166534;--color-login-gradient-mid:#14532d;--color-login-gradient-end:#ccfbf1;--color-login-radial:#0f766e38;--color-surface-glass:#ffffffeb;--color-focus-ring:#2d4a3e2e;--color-chart-primary:var(--app-primary);--color-chart-secondary:var(--app-primary-soft);--color-chart-tertiary:#c4a35a;--color-chart-fill:#c4a35a38}html[data-theme=dark]{--app-bg:#11140f;--app-card:#1f261c;--app-input:#2b3527;--app-border:#e2ebdf29;--app-primary:#9fd2b2;--app-primary-hover:#b6e2c5;--app-primary-soft:#9fd2b224;--app-primary-border:#9fd2b247;--app-muted:#bdc6b9;--color-page:var(--app-bg);--color-surface-1:var(--app-card);--color-surface-2:var(--app-input);--color-surface-3:#364331;--color-bg:var(--color-page);--color-surface:var(--color-surface-1);--color-surface-soft:var(--app-primary-soft);--color-card:var(--color-surface-1);--color-nav-hover:var(--color-surface-2);--color-text:#f3f5ef;--color-text-muted:var(--app-muted);--color-border:var(--app-border);--color-border-subtle:#e2ebdf1f;--color-border-strong:#e2ebdf38;--color-primary:var(--app-primary);--color-primary-hover:var(--app-primary-hover);--color-on-primary:#112018;--color-menu-bg:#263126;--color-menu-text:#f3f5ef;--color-menu-divider:#f3f5ef24;--color-accent:var(--app-primary);--color-accent-hover:var(--app-primary-hover);--color-accent-soft:var(--app-primary-soft);--color-success:#92c9a7;--color-success-hover:#a8d8ba;--color-success-soft:#92c9a729;--color-on-success:#123024;--color-danger:#f09a8c;--color-danger-hover:#ffb4a8;--color-danger-soft:#f09a8c29;--color-on-danger:#21100d;--color-warning:#e7c875;--color-warning-soft:#e7c87529;--color-info:#9ac5d0;--color-info-soft:#9ac5d029;--color-overlay:#050805b3;--color-desktop-canvas:#070907;--shadow-app-preview:0 28px 80px #00000094;--color-login-gradient-start:#0f172a;--color-login-gradient-mid:#1e293b;--color-login-gradient-end:#334155;--color-login-radial:#0f172a59;--color-surface-glass:#1f261ceb;--color-focus-ring:#9fd2b252;--shadow-sm:0 12px 30px #00000057, 0 0 0 1px #ffffff09;--shadow-md:0 22px 52px #0000006b, 0 0 0 1px #ffffff0d;--color-chart-primary:var(--app-primary);--color-chart-secondary:#79aa90;--color-chart-tertiary:var(--color-warning);--color-chart-fill:#9fd2b22e}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/Inter-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/Inter-latin-ext.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}*{box-sizing:border-box}html,body,#root{background:var(--color-bg);min-height:100%;color:var(--color-text);margin:0;padding:0;font-family:-apple-system,BlinkMacSystemFont,Inter,system-ui,Segoe UI,sans-serif}#root{container:app-viewport/inline-size}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (width>=768px) and (hover:hover) and (pointer:fine){html,body{background:var(--color-desktop-canvas);width:100%;height:100%;overflow:hidden}body{justify-content:center;align-items:center;min-height:100dvh;padding:16px 0;display:flex}#root{--app-viewport-height:min(var(--app-preview-height), calc(100dvh - 32px));width:var(--app-preview-width);max-width:calc(100vw - 32px);height:var(--app-viewport-height);overscroll-behavior:contain;scrollbar-width:none;isolation:isolate;border:1px solid var(--color-border-strong);border-radius:var(--app-preview-radius);background:var(--color-bg);min-height:0;box-shadow:var(--shadow-app-preview);position:relative;overflow:hidden auto}#root::-webkit-scrollbar{width:0;height:0}#root :is(.app-confirm-backdrop,.login-dialog-backdrop,.football-sheet-backdrop,.football-filter-picker-backdrop,.football-player-menu-backdrop,.golf-sheet-backdrop,.dublin-modal-backdrop){width:var(--app-preview-width);max-width:calc(100vw - 32px);height:var(--app-viewport-height);border-radius:var(--app-preview-radius);inset:50% auto auto 50%;overflow:hidden;transform:translate(-50%,-50%)}#root .sticky-match-action-bar,#root .football-player-menu-list{width:var(--app-preview-width);max-width:calc(100vw - 32px);bottom:max(16px, calc((100dvh - var(--app-preview-height)) / 2))}}button,input,select,textarea{font:inherit}a{color:inherit;text-decoration:none}.app-shell{min-height:var(--app-viewport-height);flex-direction:column;display:flex}.page-container{width:100%;max-width:var(--content-max);padding:var(--page-top-padding) var(--space-4) 96px;margin:0 auto}.section{margin-bottom:var(--space-6)}.stack{gap:var(--space-4);flex-direction:column;display:flex}.row{gap:var(--space-3);flex-direction:column;display:flex}@container app-viewport (width>=640px){.row{flex-direction:row}}.row-wrap{gap:var(--space-3);flex-wrap:wrap;display:flex}.app-header{z-index:50;width:100%;max-width:var(--content-max);padding:18px var(--space-4) 14px;background:var(--color-surface);border-bottom:1px solid var(--color-border);min-height:72px;box-shadow:var(--shadow-sm);justify-content:space-between;align-items:center;margin:0 auto;display:flex;position:sticky;top:0}.app-header-left{align-items:center;gap:var(--space-3);flex:auto;min-width:0;display:flex}.app-header-title-block{flex-direction:column;gap:4px;min-width:0;display:flex}.app-header-title-trigger{text-align:left;cursor:pointer;width:100%;box-shadow:none;background:0 0;border:0;margin:0;padding:0}.app-header-user{color:var(--color-text);white-space:nowrap;text-overflow:ellipsis;font-size:22px;font-weight:500;overflow:hidden}.app-header-title{font-size:var(--font-size-sm);color:var(--color-text-muted);white-space:nowrap;text-overflow:ellipsis;font-weight:500;overflow:hidden}.app-header-actions{gap:var(--space-2);flex-shrink:0;display:flex}.app-area-menu-wrap{flex:auto;min-width:0;position:relative}.app-header-actions .icon-btn,.app-header-actions .profile-btn{color:#64748b;width:42px;min-width:42px;height:42px;box-shadow:var(--shadow-sm)}.app-header-actions .icon-btn[title=Fotballinnstillinger]{color:#7a7269}.app-header-actions .app-notification-btn{color:var(--color-primary)}.app-header-actions .icon-btn[title=Bytt\ tema]{color:#d6a51f}.app-header-actions .profile-btn{color:var(--color-primary)}.app-header-png-icon{object-fit:contain;width:25px;height:25px;display:block}.app-header-png-icon.theme,.app-header-png-icon.notification,.app-header-png-icon.settings,.app-header-png-icon.profile{width:28px;height:28px}.app-area-menu{top:calc(100% + var(--space-2));z-index:80;width:min(320px,100vw - 32px);padding:var(--space-3);border-radius:var(--radius-lg);border:1px solid var(--color-border);background:var(--color-surface);box-shadow:var(--shadow-md);position:absolute;left:0}.app-area-menu-header{justify-content:space-between;align-items:baseline;gap:var(--space-3);padding:0 var(--space-1) var(--space-2);border-bottom:1px solid var(--color-border);margin-bottom:var(--space-2);display:flex}.app-area-menu-header span{font-size:var(--font-size-sm);color:var(--color-text);font-weight:900}.app-area-menu-header small{font-size:var(--font-size-xs);color:var(--color-text-muted);font-weight:700}.app-area-menu-list{gap:var(--space-2);display:grid}.app-area-menu-item{align-items:center;gap:var(--space-3);min-height:58px;padding:var(--space-2);border-radius:var(--radius-md);color:var(--color-text);border:1px solid #0000;grid-template-columns:42px 1fr;text-decoration:none;display:grid}.app-area-menu-item.active{border-color:var(--color-border);background:var(--color-surface-soft)}.app-area-menu-item span{flex-direction:column;gap:2px;min-width:0;display:flex}.app-area-menu-item strong{font-size:var(--font-size-md);font-weight:900}.app-area-menu-item small{font-size:var(--font-size-xs);color:var(--color-text-muted);font-weight:700}.app-area-menu-icon{object-fit:contain;width:34px;height:34px}.app-area-menu-icon[src*=dublin-golf-hero],.app-area-menu-icon[src*=cyprus-map]{border-radius:var(--radius-sm);object-fit:cover}.app-notification-btn,.app-golf-menu-wrap{position:relative}.app-header-actions .app-golf-menu-trigger{width:auto;min-width:44px;height:44px;padding:var(--space-2);color:var(--color-text);box-shadow:none;cursor:pointer;background:0 0;border:0;border-radius:0;justify-content:center;align-items:center;display:inline-flex}.app-header-actions .app-golf-menu-trigger:hover,.app-header-actions .app-golf-menu-trigger:focus-visible{box-shadow:none;background:0 0}.app-golf-menu{top:calc(100% + var(--space-2));z-index:90;border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-menu-bg);width:min(210px,100vw - 32px);box-shadow:var(--shadow-md);position:absolute;right:0;overflow:hidden}.app-golf-menu a,.app-golf-menu button{justify-content:space-between;align-items:center;gap:var(--space-3);width:100%;min-height:52px;padding:0 var(--space-4);border:0;border-bottom:1px solid var(--color-menu-divider);box-shadow:none;color:var(--color-menu-text);font-size:var(--font-size-sm);text-align:left;cursor:pointer;background:0 0;border-radius:0;font-weight:500;text-decoration:none;display:flex}.app-golf-menu>:last-child{border-bottom:0}.app-golf-menu-count{background:var(--color-danger);min-width:20px;height:20px;color:var(--color-menu-text);border-radius:999px;justify-content:center;align-items:center;padding:0 6px;font-size:11px;font-weight:800;display:inline-flex}.app-confirm-backdrop{z-index:200;padding:var(--space-4);background:var(--color-overlay);place-items:center;display:grid;position:fixed;inset:0}.app-confirm-dialog{width:min(360px,100%);padding:var(--space-5);border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-surface-1);color:var(--color-text);box-shadow:var(--shadow-md)}.app-confirm-dialog h2{font-size:var(--font-size-lg);text-align:center;margin:0;font-weight:400;line-height:1.35}.app-confirm-dialog p{margin:var(--space-3) 0 0;color:var(--color-text-muted);font-size:var(--font-size-sm);text-align:center;font-weight:400;line-height:1.5}.app-confirm-actions{gap:var(--space-3);margin-top:var(--space-5);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.app-confirm-actions button{border-radius:var(--radius-sm);text-align:center;width:100%;min-height:48px;font-weight:400}.app-confirm-secondary,.app-confirm-cancel{border:1px solid var(--color-border-strong);color:var(--color-text);background:0 0}.app-confirm-primary,.app-confirm-submit{border:1px solid var(--color-primary);background:var(--color-primary);color:var(--color-on-primary)}.app-confirm-submit.is-danger{border-color:var(--color-danger);background:var(--color-danger);color:var(--color-on-danger)}.app-confirm-submit:disabled,.app-confirm-cancel:disabled{cursor:not-allowed;opacity:.55}.app-notification-badge{background:var(--color-danger);color:#fff;border-radius:999px;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 5px;font-size:11px;font-weight:900;line-height:1;display:inline-flex;position:absolute;top:-5px;right:-5px}.top-actions{gap:var(--space-3);margin-bottom:var(--space-5);align-items:center;display:flex}.top-actions .primary-action{flex:0;min-width:220px}.top-actions .back-pill,.back-pill{flex:0}.filter-grid{gap:var(--space-2);grid-template-columns:repeat(2,1fr);display:grid}.filter-grid.two{grid-template-columns:repeat(2,1fr)}.chart-container{width:100%;min-height:260px}@container app-viewport (width>=640px){.filter-grid{grid-template-columns:repeat(4,1fr)}.filter-grid.two{grid-template-columns:repeat(2,1fr)}}.login-link{margin-top:var(--space-4);width:100%;color:var(--color-text);cursor:pointer;background:0 0;border:0;font-weight:700}.social-login-row{gap:var(--space-3);grid-template-columns:1fr 1fr;display:grid}.social-login-btn{border-radius:var(--radius-md);border:1px solid var(--color-border);cursor:pointer;background:#fff;height:52px;font-size:24px;font-weight:800}.login-page{min-height:var(--app-viewport-height);background:var(--color-bg);justify-content:center;align-items:flex-start;padding:64px 26px 24px;display:flex}.login-shell{width:100%;max-width:420px}.login-wordmark{color:var(--color-text);letter-spacing:-.02em;margin:0 0 38px;font-size:27px;font-weight:900}.login-google-btn{gap:10px;margin-bottom:28px}.login-google-icon{object-fit:contain;width:20px;height:20px}.login-divider{text-align:center;color:var(--color-text-muted);margin:8px 0 28px;font-size:12.5px;position:relative}.login-divider:before{content:"";background:var(--color-border);height:1px;position:absolute;top:50%;left:0;right:0}.login-divider span{background:var(--color-bg);padding:0 12px;position:relative}.login-form{flex-direction:column;gap:16px;display:flex}.input.login-field-input{height:46px;min-height:46px}.login-password-wrap{align-items:center;display:flex;position:relative}.login-password-wrap .login-field-input{padding-right:44px}.login-password-toggle{color:var(--color-text-muted);cursor:pointer;background:0 0;border:0;align-items:center;margin:0;padding:0;display:inline-flex;position:absolute;right:14px}.forgot-password-link{color:var(--color-primary);cursor:pointer;background:0 0;border:0;align-self:flex-end;padding:0;font-size:13px}.register-intro{text-align:center;color:var(--color-text-muted);margin-top:22px;font-size:13px}.register-intro p{margin:0 0 4px}.register-toggle{color:var(--color-primary);cursor:pointer;background:0 0;border:0;padding:0;font-size:13px;font-weight:600}.register-section{flex-direction:column;gap:16px;margin-top:22px;display:flex}.password-rules{color:var(--color-text-muted);gap:6px;margin-top:-4px;font-size:12.5px;display:grid}.password-rules span{align-items:center;gap:7px;transition:color .16s;display:inline-flex}.password-rules span:before{content:"";background:var(--color-border-strong);border-radius:999px;width:7px;height:7px;transition:background .16s,transform .16s}.password-rules span.valid{color:var(--color-success)}.password-rules span.valid:before{background:var(--color-success);transform:scale(1.12)}.reset-password-note{color:var(--color-text-muted);margin:0;font-size:14.5px}.reset-password-empty{gap:14px;display:grid}.reset-password-empty strong{color:var(--color-text);font-size:19px}.reset-password-empty span{color:var(--color-text-muted);line-height:1.5}.login-dialog-backdrop{z-index:100;background:var(--color-overlay);padding:var(--space-4);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.login-dialog{border:1px solid var(--color-border);border-radius:var(--radius-xl);background:var(--color-surface);width:min(100%,390px);color:var(--color-text);box-shadow:var(--shadow-md);padding:24px}.login-dialog h2{margin:0;font-size:20px;font-weight:800;line-height:1.1}.login-dialog p{color:var(--color-text-muted);margin:10px 0 20px;font-size:14.5px;line-height:1.45}.login-dialog.success{border-color:var(--color-success)}.login-dialog.error{border-color:var(--color-danger)}.login-dialog-button{border-radius:var(--radius-md);background:var(--color-primary);width:100%;min-height:46px;color:var(--color-on-primary);font-size:var(--font-size-md);cursor:pointer;border:0;font-weight:700}.login-dialog-button.secondary{border:1px solid var(--color-border);background:var(--football-card,var(--color-surface));color:var(--color-text);box-shadow:var(--shadow-sm)}.login-dialog-button.danger{background:var(--football-card,var(--color-surface));color:var(--color-danger);box-shadow:var(--shadow-sm);border:1px solid #b91c1c57}.login-dialog-button:disabled{opacity:.62;cursor:not-allowed}.access-delete-dialog-actions{gap:var(--space-2);grid-template-columns:1fr 1fr;display:grid}.activity-grid{gap:var(--space-4);grid-template-columns:repeat(2,1fr);display:grid}.activity-card{aspect-ratio:1;border-radius:var(--radius-xl);background:var(--color-surface);border:1px solid var(--color-border);padding:var(--space-2);box-shadow:var(--shadow-sm);justify-content:center;align-items:center;transition:transform .18s,box-shadow .18s,background .18s;display:flex;position:relative;overflow:hidden}.activity-card:hover .activity-icon{transform:scale(1.05)}.activity-card:hover{box-shadow:var(--shadow-md);transform:translateY(-4px)}.activity-card.inactive{opacity:.45;cursor:default;box-shadow:var(--shadow-sm);transform:none}.activity-icon{object-fit:contain;width:82%;max-width:260px;height:auto;transition:transform .18s}.dublin-trip-activity-image{object-fit:cover;border-radius:calc(var(--radius-xl) - 8px);width:calc(100% - 36px);max-width:none;height:calc(100% - 36px)}.dublin-trip-activity-label{z-index:1;color:#fff;font-size:var(--font-size-xl);text-align:center;text-shadow:0 2px 10px #0000008c;pointer-events:none;font-weight:950;line-height:1;position:absolute;bottom:27px;left:28px;right:28px}.activity-card h2{font-size:var(--font-size-lg);margin:0}.activity-card p{color:var(--color-text-muted);font-size:var(--font-size-sm);margin:0}.summary-metric{gap:var(--space-2);flex-direction:column;display:flex}.summary-value-row{align-items:center;gap:var(--space-3);display:flex}.summary-value{color:var(--color-chart-primary);font-size:52px;font-weight:900;line-height:1}.summary-trend{font-size:34px;font-weight:900;line-height:1}.summary-trend.up{color:var(--color-chart-primary)}.summary-trend.down{color:var(--color-danger)}.stack-tight{gap:var(--space-2);flex-direction:column;display:flex}.dashboard-toolbar{align-items:center;gap:var(--space-lg);margin-bottom:var(--space-xl);display:flex}.summary-metrics-grid{margin-top:var(--space-4);grid-template-columns:1fr 1fr;display:grid}.summary-metric-center{text-align:center;align-items:center}.summary-label{font-size:var(--font-size-md);color:var(--color-text);font-weight:700}.input::-webkit-date-and-time-value{min-height:var(--tap-height);align-items:center;display:flex}.flower-card-image{object-fit:cover;border-radius:var(--radius-lg);border:1px solid var(--color-border);width:100%;max-height:260px}.flower-card-header{justify-content:space-between;align-items:center;display:flex}.football-new-match-button,.football-icon-button{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text);cursor:pointer;box-shadow:var(--shadow-sm);justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.football-hero{justify-content:space-between;align-items:flex-end;gap:var(--space-3);margin-bottom:var(--page-hero-content-gap);flex-wrap:wrap;display:flex}.football-hero h1{letter-spacing:0;margin:0;font-size:26px;font-weight:900;line-height:1.05}.football-hero p{margin:var(--page-title-copy-gap) 0 0;color:var(--color-text-muted);font-size:var(--font-size-sm)}.football-eyebrow{margin:0 0 var(--page-kicker-title-gap);color:var(--football-green);font-size:var(--font-size-xs);text-transform:uppercase;font-weight:900;display:block}.football-new-match-button{border-radius:var(--radius-sm);background:linear-gradient(135deg, var(--app-primary) 0%, var(--app-primary-hover) 100%);color:#fff;border-color:var(--app-primary);min-height:40px;font-size:var(--font-size-sm);flex:none;gap:7px;padding:0 14px;font-weight:900;box-shadow:0 8px 18px #2820103d}.football-dashboard-stack{gap:var(--space-3);margin-top:var(--space-3);flex-direction:column;display:flex}.football-section{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--football-card,var(--color-surface));box-shadow:var(--shadow-sm);overflow:hidden}.football-section-header{width:100%;min-height:58px;color:var(--color-text);gap:var(--space-3);text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:auto 1fr auto;align-items:center;padding:18px 20px;display:grid}.football-section-header:focus-visible{outline:3px solid var(--color-focus-ring);outline-offset:-3px}.football-section-icon{width:36px;height:36px;color:var(--football-steel-text,var(--color-primary));background:0 0;border-radius:0;justify-content:center;align-items:center;display:inline-flex}.football-section-copy{flex-direction:column;gap:2px;min-width:0;display:flex}.football-section-title{font-size:var(--font-size-md);font-weight:900}.football-section-subtitle{color:var(--color-text-muted);font-size:var(--font-size-xs);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.football-section-body{padding:4px 20px 22px}.football-sheet-backdrop{z-index:100;background:#0f172a73;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.football-sheet{width:100%;max-width:var(--content-max);border-radius:var(--radius-xl) var(--radius-xl) 0 0;border:1px solid var(--color-border);background:var(--football-card,var(--color-surface));max-height:88vh;padding:var(--space-3) max(var(--space-4), 20px) var(--space-5);overflow-y:auto;box-shadow:0 -12px 36px #0f172a2e}.football-sheet-handle{border-radius:var(--radius-sm);background:var(--color-border);width:42px;height:4px;margin:0 auto var(--space-3)}.football-sheet-header{justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-4);align-items:flex-start;display:flex}.football-sheet-header h2{font-size:var(--font-size-lg);margin:0 0 3px}.football-sheet-header p{color:var(--color-text-muted);font-size:var(--font-size-sm);margin:0}.football-icon-button{border-radius:var(--radius-md);flex:none;width:40px;height:40px}.football-filter-picker-trigger{border:1px solid var(--football-border,var(--app-border));border-radius:var(--radius-sm);background:var(--football-input,var(--app-input));width:100%;min-height:48px;color:var(--football-navy,var(--color-text));text-align:left;justify-content:space-between;align-items:center;gap:12px;padding:0 14px;font-size:15px;font-weight:750;display:flex;box-shadow:0 1px 3px #28201014}.football-filter-picker-trigger span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.football-filter-picker-backdrop{z-index:120;background:#0f172a47;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.football-filter-picker-sheet{width:100%;max-width:var(--content-max);max-height:var(--sheet-max-height);border:1px solid var(--color-border);border-radius:var(--radius-xl) var(--radius-xl) 0 0;background:var(--football-card,var(--color-surface));padding:var(--space-3) max(var(--space-4), 20px) var(--space-5);overflow-y:auto;box-shadow:0 -18px 44px #0f172a38}.football-filter-picker-title{margin-bottom:var(--space-3);color:var(--football-navy,var(--color-text));font-size:var(--font-size-md);font-weight:900}.form-empty{color:var(--color-text-muted);font-size:var(--font-size-xs)}.football-chart-tooltip{border:1px solid var(--football-border,var(--color-border));border-radius:var(--radius-sm);background:var(--app-primary-soft,#eef7ef);min-width:150px;color:var(--color-text);padding:10px 12px;box-shadow:0 12px 30px #0f172a24}.football-chart-tooltip strong,.football-chart-tooltip span{display:block}.football-chart-tooltip strong{font-size:var(--font-size-sm);margin-bottom:6px}.football-chart-tooltip span{color:var(--color-text-muted);font-size:var(--font-size-xs);font-weight:800}.football-chart-tooltip i{border-radius:999px;width:8px;height:8px;margin-right:6px;display:inline-block}.football-chart-tooltip b{color:var(--color-text)}.player-filter-icon,.stat-filter-icon,.stat-card-icon{flex:none;justify-content:center;align-items:center;display:inline-flex;position:relative}.player-filter-icon.boot,.stat-filter-icon.boot{color:#15803d;background:#dcfce7;border-radius:999px;width:19px;height:19px;font-size:12px}.player-filter-icon.boot:before,.stat-filter-icon.boot:before{content:"⚽";line-height:1}.player-filter-icon.boot:after,.stat-filter-icon.boot:after{content:"";background:currentColor;border-radius:999px 999px 2px 2px;width:8px;height:4px;position:absolute;bottom:4px;right:2px;transform:rotate(-24deg)}.player-filter-icon.referee-card{width:19px;height:19px}.player-filter-icon.referee-card:before{content:"";border:2px solid;border-radius:5px 5px 3px 3px;width:11px;height:13px;position:absolute;bottom:0;left:2px}.player-filter-icon.referee-card:after{content:"";background:#facc15;border-radius:2px;width:8px;height:11px;position:absolute;top:0;right:1px;transform:rotate(8deg);box-shadow:0 0 0 1px #0f172a26}.stat-card-icon.yellow-card,.stat-card-icon.red-card{border-radius:2px;width:10px;height:14px;box-shadow:0 0 0 1px #0f172a26}.stat-card-icon.yellow-card{background:#facc15}.stat-card-icon.red-card{background:#dc2626}@container app-viewport (width<=420px){.football-hero{flex-direction:column;align-items:flex-start}.football-new-match-button{width:fit-content}}.profile-page{padding-top:var(--page-top-padding)}.profile-page .card{background:var(--football-card,#fafafa)}.profile-account-card{display:block}.profile-account-icon,.profile-module-icon{width:38px;height:38px;color:var(--color-primary);background:0 0;border-radius:0;justify-content:center;align-items:center;display:inline-flex}.profile-module-icon img{object-fit:contain;width:32px;height:32px}.profile-account-icon img{object-fit:contain;width:27px;height:27px;display:block}.profile-account-card h1,.profile-section-header h2{color:var(--color-text);font-size:var(--font-size-xl);margin:0;font-weight:900}.profile-account-card p,.profile-section-header p{color:var(--color-text-muted);font-size:var(--font-size-sm);margin:4px 0 0;font-weight:700}.profile-collapsible-header{width:100%;color:var(--color-text);align-items:center;gap:var(--space-3);text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:auto minmax(0,1fr) auto;padding:0;display:grid}.profile-collapsible-header strong,.profile-collapsible-header small{display:block}.profile-collapsible-header strong{color:var(--color-text);font-size:var(--font-size-xl);font-weight:900}.profile-collapsible-header small{color:var(--color-text-muted);font-size:var(--font-size-sm);margin-top:8px;font-weight:700;line-height:1.45}.profile-section-icon{border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--football-input,#fff);width:38px;height:38px;color:var(--color-primary);justify-content:center;align-items:center;display:inline-flex;box-shadow:0 1px 3px #28201012}.profile-section-icon.small{width:32px;height:32px}.profile-settings-header{align-items:start;gap:var(--space-3);grid-template-columns:auto minmax(0,1fr);display:grid}.profile-access-icon img,.profile-settings-icon img{object-fit:contain;width:25px;height:25px}.profile-account-details{gap:var(--space-2);margin-top:var(--space-3);display:grid}.profile-account-details div{border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--football-input,#fff);padding:12px 14px;box-shadow:0 1px 2px #2820100a}.profile-account-details strong,.profile-account-details span{display:block}.profile-account-details strong{color:var(--color-text-muted);font-size:var(--font-size-xs);text-transform:uppercase;font-weight:900}.profile-account-details span{color:var(--color-text);font-size:var(--font-size-sm);overflow-wrap:anywhere;margin-top:3px;font-weight:800}.profile-module-list{gap:var(--space-2);margin-top:var(--space-3);flex-direction:column;display:flex}.profile-module-row{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--football-input,#fff);min-height:62px;color:var(--color-text);align-items:center;gap:var(--space-3);grid-template-columns:auto minmax(0,1fr);padding:12px 14px;text-decoration:none;display:grid;position:relative}.profile-module-row strong,.profile-module-row small{display:block}.profile-module-row strong{font-size:var(--font-size-md);font-weight:900}.profile-module-row small{color:var(--color-text-muted);font-size:var(--font-size-xs);margin-top:2px;font-weight:800}.profile-module-row.profile-module-choice{text-align:left;width:100%;font:inherit;cursor:pointer;grid-template-columns:auto minmax(0,1fr) auto}.profile-module-row.profile-module-choice.is-selected{border-color:var(--color-primary);box-shadow:inset 0 0 0 1px var(--color-primary)}.profile-module-row.profile-module-choice:disabled{opacity:.6;cursor:progress}.profile-module-choice-check{color:var(--color-primary);align-items:center;display:inline-flex}.profile-actions{justify-content:flex-end;display:flex}.profile-actions button{align-items:center;gap:6px;display:inline-flex}.profile-logout-button{border-radius:var(--radius-sm);background:var(--football-card,var(--color-surface));min-height:46px;color:var(--color-danger);padding:0 var(--space-4);font-size:var(--font-size-md);box-shadow:var(--shadow-sm);cursor:pointer;border:1px solid #b91c1c57;font-weight:900}.profile-access-content{gap:var(--space-4);margin-top:var(--space-4);flex-direction:column;display:flex}.profile-access-count{color:var(--color-primary)}.profile-access-subheader{align-items:flex-start;gap:var(--space-3);display:flex}.profile-access-subheader h3,.profile-access-subheader p{margin:0}.profile-access-subheader h3{color:var(--color-text);font-size:var(--font-size-md);font-weight:900}.profile-access-subheader p{color:var(--color-text-muted);font-size:var(--font-size-xs);margin-top:7px;font-weight:700;line-height:1.5}.access-form,.access-user-card{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--football-input,#fff);box-shadow:0 2px 8px #2820100f}.access-form{gap:var(--space-3);padding:var(--space-3);flex-direction:column;display:flex}.access-form-grid{gap:var(--space-3);display:grid}.access-form-grid label,.access-module-card,.access-check{display:flex}.access-form-grid label{flex-direction:column;gap:6px}.access-form-grid label>span,.access-module-card>span{color:var(--color-text-muted);font-size:var(--font-size-xs);text-transform:uppercase;font-weight:900}.profile-page .app-input,.profile-search-field{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--football-input,#fff);color:var(--color-text);box-shadow:0 1px 2px #2820100a}.profile-page .app-input{min-height:46px;font:inherit;font-size:var(--font-size-sm);padding:11px 13px;font-weight:800}.profile-page .app-input:disabled{color:var(--color-text-muted);opacity:.58}.access-toggle-row,.access-form-actions,.access-badge-row,.access-module-badges,.access-filter-buttons{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.access-check{color:var(--color-text);font-size:var(--font-size-sm);align-items:center;gap:8px;font-weight:800}.access-check input{width:18px;height:18px;accent-color:var(--app-primary)}.access-module-grid{gap:var(--space-2);display:grid}.access-module-card{justify-content:space-between;align-items:stretch;gap:var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--football-card,#fafafa);flex-direction:column;padding:10px}.access-level-options{border-radius:var(--radius-md);background:var(--app-primary-soft);grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;width:100%;min-height:44px;padding:4px;display:grid}.access-level-options.disabled{opacity:.45}.access-level-options button{border-radius:var(--radius-sm);color:var(--color-text-muted);font:inherit;cursor:pointer;background:0 0;border:0;font-size:.72rem;font-weight:900}.access-level-options button.active{background:linear-gradient(135deg, var(--app-primary) 0%, var(--app-primary-hover) 100%);color:#fff;box-shadow:0 4px 12px #2820103d}.access-form-actions{justify-content:flex-end}.profile-page .access-form-actions .btn{border-radius:var(--radius-md);min-height:42px;padding:0 16px;box-shadow:0 5px 14px #28201029}.profile-page .access-form-actions .btn-secondary{box-shadow:0 2px 7px #28201014}.profile-access-toolbar{gap:var(--space-2);display:grid}.profile-search-field{min-height:52px;color:var(--color-text-muted);align-items:center;gap:8px;padding:0 14px;display:flex}.profile-search-field img{object-fit:contain;flex:none;width:21px;height:21px}.profile-search-field input{width:100%;min-width:0;color:var(--color-text);font:inherit;font-size:var(--font-size-sm);background:0 0;border:0;outline:0;font-weight:800}.access-filter-buttons{border-radius:var(--radius-md);background:var(--app-primary-soft);grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;width:100%;min-height:52px;padding:4px;display:grid}.access-filter-buttons button{border-radius:var(--radius-sm);height:100%;color:var(--color-text-muted);font:inherit;font-size:var(--font-size-xs);cursor:pointer;background:0 0;border:0;padding:0 11px;font-weight:900}.access-filter-buttons button.active{background:linear-gradient(135deg, var(--app-primary) 0%, var(--app-primary-hover) 100%);color:#fff;box-shadow:0 4px 12px #2820103d}.access-user-list{gap:var(--space-2);display:grid}.access-user-card{padding:var(--space-3)}.access-user-header{align-items:flex-start;gap:var(--space-2);grid-template-columns:minmax(0,1fr) auto;display:grid}.access-user-main{width:100%;color:var(--color-text);text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:minmax(0,1fr);align-items:center;padding:0;display:grid}.access-user-settings-icon{justify-content:center;align-items:center;width:34px;height:34px;display:inline-flex}.access-user-settings-icon img{object-fit:contain;width:25px;height:25px}.access-user-main strong,.access-user-main small{display:block}.access-user-main strong{overflow-wrap:anywhere;font-size:var(--font-size-sm);font-weight:900}.access-user-main small{color:var(--color-text-muted);font-size:var(--font-size-xs);overflow-wrap:anywhere;margin-top:2px;font-weight:800}.access-badge-row,.access-module-badges{margin-top:var(--space-2)}.access-user-header .access-badge-row{flex-wrap:wrap;justify-content:flex-end;gap:6px;margin-top:0;display:flex}.status-badge,.access-module-badge{border-radius:999px;align-items:center;gap:5px;font-size:.72rem;font-weight:900;display:inline-flex}.status-badge{padding:5px 8px}.status-badge.ok{color:#15803d;background:#16a34a1f}.status-badge.warn{color:#c2410c;background:#ea580c1f}.status-badge.admin{color:var(--color-primary);background:#2d4a3e1a}.access-module-badge{color:var(--color-text);background:0 0;border:0;padding:0}.access-module-badge img{object-fit:contain;width:30px;height:30px}.access-user-actions{margin-top:var(--space-3);justify-content:flex-end;display:flex}.access-delete-user-button{border-radius:var(--radius-sm);background:var(--football-card,var(--color-surface));width:38px;height:38px;min-height:38px;color:var(--color-danger);font-size:var(--font-size-xs);cursor:pointer;border:1px solid #b91c1c47;justify-content:center;align-items:center;gap:7px;padding:0;font-weight:900;display:inline-flex}.access-delete-user-button:disabled{opacity:.58;cursor:not-allowed}.access-delete-user-button img{object-fit:contain;width:16px;height:16px}.access-muted,.profile-access-empty,.profile-access-message{color:var(--color-text-muted);font-size:var(--font-size-sm);font-weight:800}.profile-access-message{border-radius:var(--radius-md);margin:0;padding:10px 12px}.profile-access-message.error{color:#b91c1c;background:#dc26261a}.profile-access-message.success{color:#15803d;background:#16a34a1f}html[data-theme=dark] .profile-page .card,html[data-theme=dark] .access-form,html[data-theme=dark] .access-user-card{background:#121b2be0;border-color:#94a3b82e;box-shadow:0 14px 34px #00000047}html[data-theme=dark] .profile-account-details div,html[data-theme=dark] .profile-module-row,html[data-theme=dark] .profile-page .app-input,html[data-theme=dark] .profile-search-field,html[data-theme=dark] .profile-section-icon,html[data-theme=dark] .access-module-card{color:#f1f5f9f0;background:#080f1cb8;border-color:#94a3b833;box-shadow:inset 0 1px #ffffff08}html[data-theme=dark] .profile-collapsible-header strong,html[data-theme=dark] .profile-section-header h2,html[data-theme=dark] .profile-account-details span,html[data-theme=dark] .profile-module-row strong,html[data-theme=dark] .profile-access-subheader h3,html[data-theme=dark] .access-user-main,html[data-theme=dark] .access-user-main strong,html[data-theme=dark] .profile-search-field input{color:#f8fafcf5}html[data-theme=dark] .profile-collapsible-header small,html[data-theme=dark] .profile-section-header p,html[data-theme=dark] .profile-account-details strong,html[data-theme=dark] .profile-module-row small,html[data-theme=dark] .profile-access-subheader p,html[data-theme=dark] .access-user-main small,html[data-theme=dark] .access-muted,html[data-theme=dark] .profile-access-empty{color:#cbd5e1b3}html[data-theme=dark] .access-level-options,html[data-theme=dark] .access-filter-buttons{background:#485c7c61}html[data-theme=dark] .access-level-options button,html[data-theme=dark] .access-filter-buttons button{color:#cbd5e1bf}html[data-theme=dark] .access-level-options button.active,html[data-theme=dark] .access-filter-buttons button.active{color:#102033;background:linear-gradient(135deg,#c8ddd5 0%,#9fb8d2 100%);box-shadow:0 7px 18px #00000047}html[data-theme=dark] .status-badge.ok{color:#86efac;background:#22c55e2e}html[data-theme=dark] .status-badge.warn{color:#fdba74;background:#fb923c2e}html[data-theme=dark] .status-badge.admin{color:#c8ddd5;background:#d6e4f024}html[data-theme=dark] .profile-access-message.error{color:#fca5a5;background:#ef444429}html[data-theme=dark] .profile-access-message.success{color:#86efac;background:#22c55e29}@container app-viewport (width>=720px){.access-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:end}.access-module-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}html[data-theme=dark] .app-header{background:var(--color-surface-glass);border-bottom-color:var(--color-border-subtle);box-shadow:var(--shadow-sm);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}html[data-theme=dark] .app-header-actions .icon-btn,html[data-theme=dark] .app-header-actions .profile-btn,html[data-theme=dark] .app-area-menu{border-color:var(--color-border-strong);background:var(--color-surface-2);color:var(--color-text);box-shadow:var(--shadow-sm)}html[data-theme=dark] .app-area-menu-item{border-color:var(--color-border-subtle);background:var(--color-surface-2)}html[data-theme=dark] .app-area-menu-item.active{border-color:var(--app-primary-border);background:var(--color-accent-soft)}html[data-theme=dark] .app-header-png-icon{filter:drop-shadow(0 4px 9px color-mix(in srgb, var(--color-page) 72%, transparent))}html[data-theme=dark] .football-section,html[data-theme=dark] .football-sheet,html[data-theme=dark] .football-filter-picker-sheet,html[data-theme=dark] .live-confirm-card{border-color:var(--football-border);background:linear-gradient(#18202cf7,#111823f7);box-shadow:0 18px 42px #00000057,inset 0 1px #ffffff09}html[data-theme=dark] .football-icon-button,html[data-theme=dark] .football-filter-picker-trigger,html[data-theme=dark] .live-picker-list button,html[data-theme=dark] .live-picker-list a{border-color:var(--football-border);background:var(--football-input);color:#f6f0e8;box-shadow:inset 0 1px #ffffff09,0 12px 26px #0000002e}html[data-theme=dark] .football-new-match-button{color:#07110c;background:linear-gradient(135deg,#7fbc91 0%,#4f8d69 100%);border-color:#92c9a76b;box-shadow:0 14px 28px #4f8d6947}html[data-theme=dark] .live-picker-list button.active,html[data-theme=dark] .live-picker-list a.active{border-color:var(--app-primary-border);background:var(--football-active-bg);color:#07101b;box-shadow:0 12px 28px #c4d8ce38}html[data-theme=dark] .football-section-icon{background:var(--app-primary-soft);border-color:var(--app-primary-border);color:var(--app-primary)}.score-stepper{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-soft);padding:var(--space-3)}.score-stepper>span{color:var(--color-text-muted);font-size:var(--font-size-xs);text-transform:uppercase;text-align:center;font-weight:900;display:block}.score-stepper>div{align-items:center;gap:var(--space-2);margin-top:var(--space-2);grid-template-columns:38px 1fr 38px;display:grid}.score-stepper button{border:1px solid var(--color-border);background:var(--color-surface);width:38px;height:38px;color:var(--color-text);cursor:pointer;border-radius:999px;justify-content:center;align-items:center;display:inline-flex}.score-stepper button:disabled{opacity:.45;cursor:not-allowed}.score-stepper strong{text-align:center;min-width:36px;font-size:30px;font-weight:900;line-height:1}.live-picker-list{gap:var(--space-2);display:grid}.live-picker-list button,.live-picker-list a{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--football-input,#fff);width:100%;min-height:62px;color:var(--color-text);align-items:center;gap:var(--space-3);text-align:left;cursor:pointer;grid-template-columns:minmax(0,1fr) auto;padding:12px 14px;text-decoration:none;display:grid;box-shadow:0 1px 3px #2820100f}.live-picker-list button.active,.live-picker-list a.active{border-color:var(--football-green-border);background:var(--football-steel,#c8ddd5);color:var(--football-steel-text,#2d4a3e)}.live-picker-list strong,.live-picker-list small{display:block}.live-picker-list strong{font-size:var(--font-size-md);font-weight:850}.live-picker-list small{color:var(--color-text-muted);font-size:var(--font-size-xs);margin-top:2px;font-weight:750}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.live-confirm-backdrop{padding:var(--space-4);align-items:center}.live-confirm-card{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--football-card,#fafafa);width:min(100%,360px);padding:var(--space-5);text-align:center;box-shadow:0 18px 48px #0f172a3d}.live-confirm-card h2{color:var(--color-text);font-size:var(--font-size-xl);margin:0;font-weight:400;line-height:1.1}.live-confirm-card p{margin:var(--space-3) 0 0;color:var(--color-text-muted);font-size:var(--font-size-sm);font-weight:400}.live-confirm-actions{gap:var(--space-2);margin-top:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.live-confirm-actions button{border-radius:var(--radius-sm);border:1px solid var(--color-border);width:100%;min-width:0;min-height:42px;font-size:var(--font-size-sm);justify-content:center;align-items:center;font-weight:400;display:inline-flex}.live-confirm-cancel{background:var(--football-input,#fff);color:var(--color-text)}.live-confirm-yes{background:var(--football-active-bg,var(--color-primary));border-color:var(--color-primary);color:#fff;box-shadow:0 3px 10px #2820104d}.live-confirm-yes.success,.live-confirm-yes.danger{background:var(--football-active-bg,var(--color-primary));border-color:var(--color-primary)}.live-confirm-actions button:disabled{opacity:.55;cursor:not-allowed}.home-module-prompt-card{text-align:left;width:min(100%,420px)}.home-module-prompt-card .profile-module-list{max-height:46vh;overflow-y:auto}.edit-live-summary-container{padding-bottom:0}.golf-topbar,.golf-hero,.golf-round-card-main,.golf-card-actions,.golf-static-section-header{align-items:center;display:flex}.golf-topbar{justify-content:space-between;gap:var(--space-3);margin-bottom:var(--page-topbar-gap)}.golf-dashboard-page .golf-topbar{margin-bottom:calc(var(--page-topbar-gap) + 10px)}.app-header:has(+.golf-page){background:var(--golf-paper-surface);box-shadow:none;border-bottom:none}.golf-page .golf-topbar{margin-top:calc(-1 * var(--page-top-padding));margin-left:calc(-1 * var(--space-4));margin-right:calc(-1 * var(--space-4));padding:var(--page-top-padding) var(--space-4) 0;background:var(--golf-paper-surface)}.golf-score-panel button{border:1px solid var(--color-border);font-size:var(--font-size-sm);border-radius:999px;justify-content:center;align-items:center;gap:7px;font-weight:900;text-decoration:none;display:inline-flex}.golf-hero{justify-content:space-between;align-items:flex-end;gap:var(--space-3);margin-bottom:var(--page-hero-content-gap);flex-wrap:wrap}.golf-dashboard-page .golf-hero{margin-bottom:calc(var(--page-hero-content-gap) + 10px)}.golf-hero h1{color:var(--color-text);letter-spacing:0;margin:0;font-size:26px;font-weight:900;line-height:1.05}.golf-overview-topbar h1{min-width:0;color:var(--color-text);margin:0;font-size:26px;font-weight:900;line-height:1.05}.golf-hero p:not(.golf-eyebrow){margin:var(--page-title-copy-gap) 0 0;color:var(--color-text-muted);font-size:var(--font-size-sm);font-weight:700}.golf-eyebrow{margin:0 0 var(--page-kicker-title-gap);color:var(--golf-green);font-size:var(--font-size-xs);text-transform:uppercase;font-weight:900;display:block}.golf-alert,.golf-empty-card{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);padding:var(--space-4);color:var(--color-text);box-shadow:var(--shadow-sm)}.golf-alert{margin-bottom:var(--space-3);background:var(--golf-flag-soft);color:var(--golf-flag);font-weight:900}.golf-empty-card{flex-direction:column;gap:4px;display:flex}.golf-empty-card span{color:var(--color-text-muted);font-size:var(--font-size-sm);font-weight:700}.golf-summary-grid{gap:var(--space-3);margin-bottom:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.golf-stat-card,.golf-card,.golf-section,.golf-round-card,.golf-hole-card{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-sm)}.golf-stat-card{min-width:0;padding:var(--space-4);flex-direction:column;gap:4px;display:flex}.golf-stat-card.wide{grid-column:1/-1}.golf-stat-card small,.golf-round-card small{color:var(--color-text-muted);font-size:var(--font-size-xs);text-transform:uppercase;font-weight:900}.golf-stat-card strong{color:var(--color-text);overflow-wrap:anywhere;font-size:28px;font-weight:900;line-height:1}.golf-stat-card span:not(.golf-stat-icon){color:var(--color-text-muted);font-size:var(--font-size-sm);font-weight:700}.golf-stat-icon,.golf-section-icon{background:var(--golf-green-soft);width:34px;height:34px;color:var(--golf-green);border-radius:999px;flex:0 0 34px;justify-content:center;align-items:center;display:inline-flex}.golf-section-icon{background:0 0;border-radius:0;justify-content:flex-start}.golf-section-icon img,.golf-settings-heading-icon img{object-fit:contain;width:28px;height:28px;display:block}.golf-section{margin-bottom:var(--space-3);overflow:hidden}.golf-section-header,.golf-static-section-header{width:100%;min-height:58px;color:var(--color-text);gap:var(--space-3);text-align:left;background:0 0;border:0;grid-template-columns:auto 1fr auto;align-items:center;padding:18px 20px;display:grid}.golf-section-header{cursor:pointer}.golf-section-chevron{color:var(--color-text-muted);transition:transform .16s}.golf-section-chevron.open{transform:rotate(180deg)}.golf-section-header strong,.golf-static-section-header strong{color:var(--color-text);font-size:var(--font-size-md);font-weight:900;display:block}.golf-section-header small,.golf-static-section-header small{color:var(--color-text-muted);font-size:var(--font-size-xs);margin-top:2px;font-weight:800;display:block}.golf-section-body{box-sizing:border-box;min-width:0;padding:4px 20px 20px}.golf-section>.golf-section-body:first-child{padding-top:var(--space-4)}.golf-round-list,.golf-hole-list{gap:var(--space-3);flex-direction:column;display:flex}.golf-round-card{padding:var(--space-4)}.golf-round-card-main{justify-content:space-between;gap:var(--space-3)}.golf-round-card-figures{gap:var(--space-2);margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--golf-border,var(--color-border));grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.golf-round-card-figures small{color:var(--golf-muted,var(--color-text-muted));font-size:var(--font-size-xs);font-weight:700;display:block}.golf-round-card-figures strong{color:var(--color-text);font-size:var(--font-size-md);margin-top:2px;font-weight:700;display:block}.golf-round-card-main strong,.golf-round-card-main span{display:block}.golf-round-card-main strong{color:var(--color-text);font-size:var(--font-size-lg);margin-top:2px;font-weight:900;line-height:1.1}.golf-round-card-main span{color:var(--color-text-muted);font-size:var(--font-size-sm);margin-top:3px;font-weight:700}.golf-score-badge{border:1px solid var(--golf-green-border);background:var(--golf-green-soft);text-align:center;border-radius:999px;justify-content:center;align-items:center;width:76px;min-height:38px;padding:0 12px;display:inline-flex}.golf-score-badge strong,.golf-score-badge span{margin:0;display:block}.golf-score-badge strong{color:var(--golf-green);font-size:var(--font-size-lg);font-weight:900;line-height:1}.golf-score-badge span{color:var(--golf-green);font-size:var(--font-size-sm);margin-top:3px;font-weight:900}.golf-mini-stats{gap:var(--space-2);margin-top:var(--space-3);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.golf-mini-stats span{background:var(--color-surface-soft);min-height:34px;color:var(--color-text-muted);font-size:var(--font-size-xs);white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;padding:0 8px;font-weight:900;display:inline-flex}.golf-card-actions{gap:var(--space-2);margin-top:var(--space-3);flex-wrap:wrap}.golf-card-actions a,.golf-card-actions button{border:1px solid var(--color-border);background:var(--color-surface);min-height:38px;color:var(--color-text);font-size:var(--font-size-sm);cursor:pointer;border-radius:999px;justify-content:center;align-items:center;gap:6px;padding:0 13px;font-weight:900;text-decoration:none;display:inline-flex}.golf-card-actions button:disabled{opacity:.45;cursor:not-allowed}.golf-round-card-main .golf-card-actions{flex:none;margin-top:0}.golf-linked-label{background:var(--golf-green-soft);width:fit-content;color:var(--golf-green);letter-spacing:0;text-transform:none;border-radius:999px;margin-top:7px;padding:4px 8px;display:inline-flex}.golf-sheet-backdrop{z-index:100;background:var(--color-overlay);justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.golf-sheet{width:100%;max-width:var(--content-max);max-height:var(--sheet-max-height);border-radius:var(--radius-xl) var(--radius-xl) 0 0;border:1px solid var(--color-border);background:var(--color-surface);padding:var(--space-3) max(var(--space-4), 20px) var(--space-5);box-shadow:var(--shadow-lg);overflow-y:auto}.golf-sheet-handle{background:var(--color-border);width:42px;height:4px;margin:0 auto var(--space-3);border-radius:999px}.golf-sheet-header h2{color:var(--color-text);font-size:var(--font-size-lg);margin:0 0 3px}.golf-sheet-header p{margin:0 0 var(--space-4);color:var(--color-text-muted);font-size:var(--font-size-sm)}.golf-filter-grid,.golf-segmented-control{gap:var(--space-2);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.golf-filter-grid button{border:1px solid var(--color-border);background:var(--color-surface);min-height:42px;color:var(--color-text);font-size:var(--font-size-sm);cursor:pointer;border-radius:999px;font-weight:900}.golf-filter-grid button.active{background:var(--golf-green);border-color:var(--golf-green);color:var(--golf-on-fairway)}.golf-form-page{padding-bottom:112px}.golf-score-panel{z-index:20;margin-bottom:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface-glass);padding:var(--space-3);gap:var(--space-2);box-shadow:var(--shadow-sm);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);grid-template-columns:1fr 1fr auto;align-items:center;display:grid;position:sticky;top:72px}.golf-score-panel span,.golf-score-panel strong{text-align:center;display:block}.golf-score-panel span{color:var(--color-text-muted);font-size:var(--font-size-xs);text-transform:uppercase;font-weight:900}.golf-score-panel strong{color:var(--color-text);font-size:var(--font-size-xl);margin-top:2px;font-weight:900;line-height:1}.golf-score-panel button{background:var(--color-primary);border-color:var(--color-primary);min-height:44px;color:var(--golf-on-fairway);cursor:pointer;padding:0 14px}.golf-score-panel button:disabled{opacity:.55;cursor:not-allowed}.golf-card{padding:var(--space-4);margin-bottom:var(--space-3)}.golf-card-heading{align-items:flex-start;gap:var(--space-3);margin-bottom:var(--space-3);display:flex}.golf-heading-btn{width:100%;color:var(--color-text);align-items:center;gap:var(--space-3);text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:34px minmax(0,1fr) auto;padding:0;display:grid}.golf-profile-card .golf-card-heading{margin-bottom:0}.golf-profile-form{margin-top:var(--space-3)}.golf-card-heading svg,.golf-settings-heading-icon{color:var(--golf-green);flex:none}.golf-settings-heading-icon{justify-content:flex-start;align-items:center;width:34px;height:34px;display:inline-flex}.golf-card-heading h2,.golf-card-heading p{margin:0}.golf-card-heading h2{color:var(--color-text);font-size:var(--font-size-lg);line-height:1.1}.golf-card-heading p{color:var(--color-text-muted);font-size:var(--font-size-sm);margin-top:3px}.golf-section-header-with-action{align-items:center;gap:var(--space-2);grid-template-columns:minmax(0,1fr) auto;display:grid}.golf-section-title-row{align-items:center;gap:var(--space-3);grid-template-columns:34px minmax(0,1fr);min-width:0;display:grid}.golf-form-grid{gap:var(--space-3);margin-bottom:var(--space-3);grid-template-columns:1fr;display:grid}.golf-form-full{grid-column:1/-1}.golf-course-picker-list{gap:var(--space-2);margin-top:var(--space-3);flex-direction:column;display:flex}.golf-course-picker-divider{background:var(--color-border);height:1px;margin:0 0 var(--space-3)}.golf-course-picker-list-shell{min-height:0;padding-right:2px;overflow-y:auto}.golf-course-picker-list-shell .golf-course-picker-list{margin-top:0}.golf-course-picker-list button{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);width:100%;min-height:62px;color:var(--color-text);align-items:center;gap:var(--space-3);text-align:left;cursor:pointer;grid-template-columns:minmax(0,1fr) auto;padding:12px 14px;display:grid}.golf-course-picker-list button.active{border-color:var(--golf-green-border);background:var(--golf-green-soft);color:var(--golf-green)}.golf-course-picker-list button.disabled{cursor:not-allowed;opacity:.66}.golf-course-picker-list strong,.golf-course-picker-list small{display:block}.golf-course-picker-list strong{font-size:var(--font-size-md);font-weight:400}.golf-course-picker-list small{color:var(--color-text-muted);font-size:var(--font-size-xs);margin-top:2px;font-weight:400}.golf-course-info-picker{gap:var(--space-3);display:grid}.golf-course-map-card{z-index:0;isolation:isolate;border-radius:var(--radius-lg);background:var(--color-success-soft);min-height:340px;box-shadow:var(--golf-lift), inset 0 0 0 1px var(--golf-border);border:none;position:relative;overflow:hidden}.golf-course-map{z-index:0;width:100%;min-height:340px;position:relative}.golf-course-map .leaflet-pane{z-index:1}.golf-course-map .leaflet-top,.golf-course-map .leaflet-bottom{z-index:2}.golf-course-map .leaflet-container,.golf-course-map .leaflet-control,.golf-course-map .leaflet-tooltip{font-family:inherit}.golf-course-map .leaflet-control-attribution{font-size:9px}.golf-course-map .leaflet-control-zoom{border:1px solid var(--color-border);border-radius:var(--radius-sm);box-shadow:var(--shadow-sm);overflow:hidden}.golf-course-map .leaflet-control-zoom a{color:var(--color-text)}.golf-course-map-pin{background:0 0;border:0}.golf-course-map-pin-inner{width:34px;height:38px;filter:drop-shadow(0 8px 12px color-mix(in srgb, var(--color-text) 22%, transparent));justify-content:center;align-items:center;display:inline-flex;position:relative}.golf-course-map-pin-inner:after{content:"";background:var(--color-surface-3);border:2px solid var(--golf-green);border-radius:50% 50% 50% 0;width:10px;height:10px;position:absolute;bottom:0;left:50%;transform:translate(-50%)rotate(-45deg)}.golf-course-map-pin-flag{z-index:1;border-left:3px solid var(--golf-green);width:18px;height:24px;display:block;position:relative}.golf-course-map-pin-flag:before{content:"";background:var(--golf-green);clip-path:polygon(0 0,100% 24%,0 100%);width:15px;height:10px;position:absolute;top:1px;left:0}.golf-course-map-pin.selected .golf-course-map-pin-inner:after{border-color:var(--color-primary)}.golf-course-map-pin.selected .golf-course-map-pin-flag{border-left-color:var(--color-primary)}.golf-course-map-pin.selected .golf-course-map-pin-flag:before{background:var(--color-primary)}.golf-course-map-selected{z-index:3;align-items:center;gap:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-glass);box-shadow:var(--shadow-md);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);grid-template-columns:minmax(0,1fr) auto;padding:10px;display:grid;position:absolute;bottom:10px;left:10px;right:10px}.golf-course-map-selected small,.golf-course-map-selected strong{display:block}.golf-course-map-selected small{color:var(--color-text-muted);font-size:var(--font-size-xs);font-weight:800}.golf-course-map-selected strong{color:var(--color-text);font-size:var(--font-size-md);text-overflow:ellipsis;white-space:nowrap;font-weight:900;overflow:hidden}.golf-course-map-selected .golf-btn--primary{border-radius:var(--radius-sm);min-height:40px;padding:0 16px}.golf-course-map-empty{z-index:3;padding:var(--space-4);color:var(--color-text);text-align:center;background:color-mix(in srgb, var(--color-page) 86%, transparent);flex-direction:column;justify-content:center;align-items:center;gap:4px;display:flex;position:absolute;inset:0}.golf-course-map-empty strong,.golf-course-map-empty span{display:block}.golf-course-map-empty strong{font-size:var(--font-size-md);font-weight:900}.golf-course-map-empty span{color:var(--color-text-muted);font-size:var(--font-size-sm);font-weight:700}.golf-course-map-caption{z-index:3;border-radius:var(--radius-sm);background:var(--color-surface-glass);max-width:calc(100% - 72px);color:var(--color-text-muted);font-size:var(--font-size-xs);box-shadow:var(--shadow-sm);margin:0;padding:6px 8px;font-weight:800;position:absolute;top:10px;left:10px}html[data-theme=dark] .golf-course-map-card{background:color-mix(in srgb, var(--color-page) 56%, transparent)}html[data-theme=dark] .golf-course-map-empty{background:color-mix(in srgb, var(--color-page) 78%, transparent)}.golf-course-profile-hero{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-sm);margin-bottom:var(--space-3);overflow:hidden}.golf-course-profile-hero img,.golf-course-profile-image-fallback{aspect-ratio:16/9;width:100%;display:block}.golf-course-profile-hero img{object-fit:cover}.golf-course-profile-image-fallback{background:linear-gradient(135deg, var(--color-primary-soft), var(--color-success-soft));color:var(--golf-green);justify-content:center;align-items:center;font-weight:900;display:flex}.golf-course-profile-hero-content{padding:var(--space-4)}.golf-course-profile-hero-content h1{color:var(--color-text);letter-spacing:0;margin:0;font-size:26px;font-weight:900;line-height:1.05}.golf-course-profile-hero-content p{margin:var(--space-2) 0 0;color:var(--color-text-muted);font-weight:800}.golf-course-profile-meta{gap:var(--space-2);margin-top:var(--space-3);flex-wrap:wrap;display:flex}.golf-course-profile-meta span{border:1px solid var(--golf-green-border);background:var(--golf-green-soft);color:var(--golf-green);font-size:var(--font-size-xs);border-radius:999px;padding:6px 10px;font-weight:900}.golf-course-profile-hero-content>.golf-card-actions{margin-top:var(--space-5)}.golf-course-info-list,.golf-course-notes-card,.golf-course-profile-rounds{gap:var(--space-3);display:grid}.golf-course-info-row{gap:var(--space-3);padding-bottom:var(--space-3);border-bottom:1px solid var(--color-border);grid-template-columns:minmax(90px,.36fr) minmax(0,1fr);align-items:start;display:grid}.golf-course-info-row:last-child{border-bottom:0;padding-bottom:0}.golf-course-info-row span{color:var(--color-text-muted);font-size:var(--font-size-xs);text-transform:uppercase;font-weight:900}.golf-course-info-row strong,.golf-course-info-row a{color:var(--color-text);font-size:var(--font-size-sm);overflow-wrap:anywhere;font-weight:900;text-decoration:none}.golf-course-info-row a{color:var(--golf-green)}.golf-course-notes-card p{color:var(--color-text);white-space:pre-wrap;margin:0;font-weight:750;line-height:1.5}.golf-course-note-textarea{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--golf-input);width:100%;min-height:150px;color:var(--color-text);font:inherit;font-size:var(--font-size-sm);resize:vertical;padding:12px;font-weight:750}.golf-course-profile-scorecard .golf-scorecard-table{table-layout:fixed;min-width:320px}.golf-course-profile-scorecard .golf-scorecard-table th,.golf-course-profile-scorecard .golf-scorecard-table td{padding:7px 3px}.golf-course-profile-scorecard .golf-scorecard-table th:first-child,.golf-course-profile-scorecard .golf-scorecard-table td:first-child{width:48px}.golf-course-profile-scorecard .golf-scorecard-table th:nth-child(2),.golf-course-profile-scorecard .golf-scorecard-table td:nth-child(2),.golf-course-profile-scorecard .golf-scorecard-table th:nth-child(3),.golf-course-profile-scorecard .golf-scorecard-table td:nth-child(3){width:56px}.golf-course-profile-scorecard .golf-scorecard-table th:nth-child(n+4),.golf-course-profile-scorecard .golf-scorecard-table td:nth-child(n+4){width:76px}.golf-course-scorecard-filter{margin-bottom:var(--space-3)}.golf-course-tee-values .golf-scorecard-table{min-width:460px}.golf-course-tee-values .golf-scorecard-table th:first-child,.golf-course-tee-values .golf-scorecard-table td:first-child{text-align:left;padding-left:10px}.golf-course-handicap-panel{gap:var(--space-4);display:grid}.golf-course-handicap-summary{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));align-items:end;display:grid}.golf-course-handicap-summary .input-group{min-width:0}.golf-hcp-stepper{border-radius:var(--golf-control-radius,var(--radius-sm));box-sizing:border-box;grid-template-columns:38px minmax(56px,1fr) 38px;height:42px;min-height:42px}.golf-hcp-stepper input{width:100%;height:100%;color:var(--color-text);text-align:center;font:inherit;font-size:var(--font-size-lg);background:0 0;border:0;outline:none;font-weight:900}.golf-course-handicap-result{border:1px solid var(--color-border);border-radius:var(--golf-control-radius,var(--radius-sm));background:var(--golf-green-soft);height:42px;min-height:42px;color:var(--golf-green);box-sizing:border-box;justify-content:center;align-items:center;padding:8px 10px;display:flex}.golf-course-handicap-result strong{color:inherit;font-size:var(--font-size-lg);font-weight:900}.golf-course-tee-toggle-panel{gap:var(--space-2);display:grid}.golf-course-tee-toggle-panel>small{color:var(--color-text-muted);font-size:var(--font-size-xs);font-weight:800}.golf-course-gender-toggle{box-sizing:border-box;align-items:stretch;width:100%;min-height:42px;margin:0}.golf-course-gender-toggle button{justify-content:center;align-items:center;min-height:34px;display:flex}.golf-course-tee-toggle-grid{gap:var(--space-2);grid-template-columns:repeat(auto-fit,minmax(64px,1fr));display:grid}.golf-handicap-card{gap:var(--space-4);min-width:0;display:grid}.golf-handicap-card-summary{gap:10px;display:grid}.golf-handicap-card-summary strong{color:var(--golf-green-strong,var(--color-text));font-size:clamp(2.4rem,13vw,4.2rem);font-weight:950;line-height:1}.golf-handicap-card-summary small{color:var(--color-text-muted);font-size:var(--font-size-sm);font-weight:700}.golf-handicap-help{color:var(--color-text-muted);margin:0;font-size:.78rem;font-style:italic;font-weight:400;line-height:1.35}.golf-handicap-chart-wrap{overscroll-behavior-x:contain;max-width:100%;padding:2px 0 8px;overflow:auto hidden}.golf-handicap-chart{align-items:end;gap:8px;min-height:190px;padding:8px 2px 0;display:flex}.golf-handicap-bar{width:36px;min-width:36px;color:var(--color-text-muted);font:inherit;cursor:pointer;background:0 0;border:0;flex-direction:column;justify-content:end;align-items:center;gap:5px;padding:0;display:flex}.golf-handicap-bar i{border:1px solid var(--golf-border,var(--color-border));background:var(--color-surface-soft);width:100%;box-shadow:inset 0 1px 0 color-mix(in srgb, var(--color-text) 16%, transparent);border-radius:8px 8px 4px 4px}.golf-handicap-bar.counting{color:var(--golf-green-strong,var(--color-text))}.golf-handicap-bar.counting i{border-color:var(--golf-green);background:var(--golf-green)}.golf-handicap-bar.outside-window i{border-color:var(--color-border-subtle);background:var(--color-surface-2)}.golf-handicap-bar.outside-window .golf-handicap-bar-value,.golf-handicap-bar.outside-window small{color:var(--color-text-muted);font-weight:600}.golf-handicap-bar-value{color:var(--color-text);font-size:var(--font-size-xs);font-weight:600}.golf-handicap-bar.counting .golf-handicap-bar-value{font-weight:900}.golf-handicap-bar small{color:var(--color-text-muted);font-size:.68rem;font-weight:800}.golf-handicap-round-detail{gap:var(--space-4);border:1px solid var(--golf-border,var(--color-border));border-radius:var(--radius-md);background:var(--golf-input);padding:var(--space-4) 42px var(--space-4) var(--space-4);display:grid;position:relative}.golf-handicap-detail-close{border:1px solid var(--golf-border,var(--color-border));background:var(--golf-raised);width:28px;height:28px;color:var(--color-text-muted);cursor:pointer;border-radius:999px;justify-content:center;align-items:center;font-size:18px;font-weight:900;line-height:1;display:inline-flex;position:absolute;top:8px;right:8px}.golf-handicap-detail-close:focus-visible{outline:2px solid var(--golf-green);outline-offset:2px}.golf-handicap-round-detail-heading{gap:6px;display:grid}.golf-handicap-round-detail strong{color:var(--color-text);font-weight:900}.golf-handicap-round-detail span{color:var(--color-text-muted);font-size:var(--font-size-sm);font-weight:750}.golf-handicap-round-detail dl{gap:var(--space-4) var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));margin:0;display:grid}.golf-handicap-round-detail dt{color:var(--color-text-muted);font-size:var(--font-size-xs);margin-bottom:5px;font-weight:850}.golf-handicap-round-detail dd{color:var(--color-text);margin:0;font-weight:900}.golf-handicap-detail-actions,.golf-handicap-form-actions{justify-content:flex-end;gap:var(--space-2);flex-wrap:wrap;display:flex}.golf-handicap-edit-button{border-radius:var(--golf-control-radius);background:var(--color-surface);min-height:38px;color:var(--color-text);font-size:var(--font-size-sm);cursor:pointer;box-shadow:var(--golf-lift), inset 0 0 0 1px var(--golf-border);border:none;justify-content:center;align-items:center;gap:7px;padding:0 13px;font-weight:700;text-decoration:none;display:inline-flex}.golf-hidden-rounds-heading{width:100%;margin:var(--space-2) 0 0;padding-top:var(--space-3);border-top:1px solid var(--golf-border,var(--color-border))}.golf-hidden-rounds-heading span{color:var(--color-text-muted);font-size:var(--font-size-xs);text-transform:uppercase;font-weight:900}.golf-round-card-hidden{opacity:.72}.golf-hide-round-toggle{min-height:44px;padding:0 var(--space-3);border:1px solid var(--golf-border,var(--color-border));border-radius:var(--radius-md);background:var(--golf-input);color:var(--color-text);justify-content:center;align-items:center;gap:var(--space-2);font-size:var(--font-size-sm);cursor:pointer;font-weight:850;display:inline-flex}.golf-hide-round-toggle input{width:18px;height:18px;accent-color:var(--golf-green)}.golf-handicap-form{gap:var(--space-3);display:grid}.golf-handicap-form .input,.golf-handicap-form .golf-picker:not(.golf-readonly-picker):not(:disabled),.golf-handicap-history-score-stepper:not(.golf-handicap-history-score-stepper-compact) input{background:var(--color-surface-3)}.golf-handicap-date-field,.golf-handicap-readonly-compact-field{width:50%;min-width:150px}.golf-handicap-date-field .golf-picker{width:100%}.golf-handicap-source-toggle{box-sizing:border-box;width:100%;margin:0 0 var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr));align-self:stretch}.golf-handicap-source-toggle button{min-width:0}.golf-handicap-history-score-stepper{width:100%}.golf-handicap-history-score-stepper-compact{width:min(60%,320px);min-width:210px}.golf-handicap-history-score-stepper-compact button,.golf-handicap-history-score-stepper-compact input{min-height:var(--tap-height);font-size:var(--font-size-md);font-weight:700}.golf-readonly-picker{cursor:default;pointer-events:none}.golf-handicap-form .golf-picker:disabled,.golf-handicap-readonly-field{color:var(--color-text-muted);box-shadow:none;background:0 0}.golf-handicap-form .golf-picker:disabled strong,.golf-handicap-readonly-field strong{color:var(--color-text-muted);font-weight:500}.golf-handicap-form-app-round .golf-picker:disabled,.golf-handicap-form-app-round .golf-handicap-readonly-field{background:0 0}.golf-handicap-history-sheet{max-height:var(--sheet-max-height);overscroll-behavior:contain;overflow-y:auto}html[data-theme=dark] .golf-course-note-textarea{background:var(--golf-input)}.golf-native-input-shell{min-height:var(--tap-height);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text);align-items:center;gap:var(--space-2);grid-template-columns:22px minmax(0,1fr);padding:0 12px;display:grid}.golf-native-input-shell svg{color:var(--color-text-muted)}.golf-native-input-shell input{width:100%;min-width:0;color:var(--color-text);font:inherit;font-size:var(--font-size-md);background:0 0;border:0;outline:0;font-weight:900}.golf-native-input-shell input::-webkit-calendar-picker-indicator{cursor:pointer}.golf-segmented-control{background:var(--color-surface-soft);border-radius:999px;grid-template-columns:repeat(2,minmax(0,1fr));padding:4px}.golf-hole-card{padding:var(--space-3)}.golf-hole-card-top{justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-3);display:flex}.golf-hole-card-top span,.golf-hole-card-top strong{display:block}.golf-hole-card-top span:first-child{color:var(--color-text-muted);font-size:var(--font-size-xs);text-transform:uppercase;font-weight:900}.golf-hole-card-top strong{color:var(--color-text);font-size:var(--font-size-md);margin-top:2px}.golf-hole-card-top>span:last-child{background:var(--golf-flag-soft);min-width:48px;min-height:34px;color:var(--golf-flag);font-size:var(--font-size-sm);border-radius:999px;justify-content:center;align-items:center;font-weight:900;display:inline-flex}.golf-hole-card-top>span.good{background:var(--golf-green-soft);color:var(--golf-green)}.golf-stepper-grid{gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.golf-stepper{border-radius:var(--radius-md);background:var(--color-surface-soft);padding:10px}.golf-stepper>span{color:var(--color-text-muted);font-size:var(--font-size-xs);text-transform:uppercase;margin-bottom:7px;font-weight:900;display:block}.golf-stepper>div{grid-template-columns:34px minmax(0,1fr) 34px;align-items:center;gap:6px;display:grid}.golf-stepper button{border:1px solid var(--color-border);background:var(--color-surface);width:34px;height:34px;color:var(--color-text);font-size:var(--font-size-md);cursor:pointer;border-radius:999px;font-weight:900}.golf-stepper strong{color:var(--color-text);text-align:center;font-size:var(--font-size-lg);line-height:1}.golf-toggle-row{gap:var(--space-2);margin-top:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.golf-toggle-row button{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);min-height:46px;color:var(--color-text);justify-content:space-between;align-items:center;gap:var(--space-2);font-size:var(--font-size-sm);cursor:pointer;padding:0 12px;font-weight:900;display:flex}.golf-toggle-row button.active{border-color:var(--golf-green-border);background:var(--golf-green-soft);color:var(--golf-green)}.golf-toggle-row button.miss{background:var(--golf-flag-soft);color:var(--golf-flag)}.golf-toggle-row button:disabled{opacity:.72;cursor:not-allowed}.golf-toggle-row button.active:disabled{opacity:1;border-color:var(--golf-green-border);background:var(--golf-green-soft);color:var(--golf-green)}.golf-toggle-row button.miss:disabled{opacity:1;background:var(--golf-flag-soft);color:var(--golf-flag)}.golf-round-link{color:inherit;text-decoration:none}.golf-muted-note,.golf-public-subtitle{margin:var(--space-3) 0 0;color:var(--color-text-muted);font-size:var(--font-size-sm);font-weight:700}.golf-chip-row{gap:var(--space-2);margin-bottom:var(--space-3);flex-wrap:wrap;display:flex}.golf-player-chip-list{grid-template-columns:1fr;display:grid}.golf-list-label{margin:var(--space-3) 0 var(--space-2);color:var(--color-text-muted);font-size:var(--font-size-xs);text-transform:uppercase;font-weight:900;display:block}.golf-profile-picker{gap:var(--space-2);padding:0 20px var(--space-3);flex-direction:column;display:flex}.golf-profile-picker.sheet-picker{padding:0}.golf-profile-search-field{border:1px solid var(--golf-border);border-radius:var(--radius-md);background:var(--golf-card);align-items:center;gap:var(--space-2);min-height:52px;box-shadow:var(--shadow-sm);grid-template-columns:minmax(0,1fr) 26px;padding:0 14px 0 16px;display:grid}.golf-profile-search-field input{width:100%;color:var(--color-text);font:inherit;background:0 0;border:0;outline:0;font-weight:800}.golf-profile-search-field input::placeholder{color:var(--color-text-muted)}.golf-profile-search-field img{object-fit:contain;justify-self:end;width:22px;height:22px}.golf-add-choice-grid{gap:var(--space-2);display:grid}.golf-add-choice-grid button{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-soft);min-height:68px;color:var(--color-text);align-items:center;gap:var(--space-3);text-align:left;cursor:pointer;grid-template-columns:auto minmax(0,1fr);padding:12px 14px;display:grid}.golf-add-choice-grid strong,.golf-add-choice-grid small{display:block}.golf-add-choice-grid strong{font-size:var(--font-size-md);font-weight:900}.golf-add-choice-grid small{color:var(--color-text-muted);font-size:var(--font-size-xs);margin-top:2px;font-weight:800}.golf-manual-player-row button{border:1px solid var(--golf-green-border);background:var(--golf-green-soft);min-height:40px;color:var(--golf-green);font-size:var(--font-size-sm);border-radius:999px;justify-content:center;align-items:center;gap:6px;padding:0 12px;font-weight:900;display:inline-flex}.golf-manual-player-row{gap:var(--space-2);grid-template-columns:minmax(0,1fr) 86px 44px;display:grid}.golf-manual-player-row button{width:44px;padding:0}.golf-small-input{text-align:center;width:72px;min-height:42px;font-weight:900}.golf-startlist-actions{justify-content:flex-end;align-items:center;gap:var(--space-2);display:flex}.golf-strokes-stepper{border:1px solid var(--color-border);border-radius:999px;grid-template-columns:38px minmax(42px,1fr) 38px;align-items:center;min-height:42px;display:grid;overflow:hidden}.golf-strokes-stepper button{height:100%;color:var(--color-text);font-size:var(--font-size-lg);cursor:pointer;background:0 0;border:0;font-weight:900}.golf-player-chip-list button{text-align:left;white-space:normal;justify-content:flex-start;width:100%}.golf-strokes-stepper strong{color:var(--color-text);font-size:var(--font-size-md);text-align:center;font-weight:900}.golf-team-handicap-panel{margin-top:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);gap:var(--space-2);padding:var(--space-3);display:grid}.golf-team-handicap-panel>div{align-items:center;gap:var(--space-3);grid-template-columns:minmax(0,1fr) auto;min-height:44px;display:grid}.golf-team-handicap-panel span{color:var(--color-text-muted);font-size:var(--font-size-xs);text-transform:uppercase;font-weight:900}.golf-team-handicap-panel strong{color:var(--color-text);font-size:var(--font-size-lg);font-weight:900}.golf-team-setup-list{gap:var(--space-3);margin-bottom:var(--space-4);grid-template-columns:minmax(0,1fr);width:100%;display:grid}.golf-team-setup-card.active{border-color:var(--color-primary-border);box-shadow:var(--shadow-md)}.golf-team-setup-header{gap:var(--space-2);grid-template-columns:minmax(0,1fr) auto;align-items:center;display:grid}.golf-team-setup-header>button:first-child{color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:0}.golf-team-setup-header strong,.golf-team-player-row strong{display:block}.golf-team-setup-header span,.golf-team-player-row small{color:var(--color-text-muted);font-size:var(--font-size-sm);font-weight:800}.golf-team-setup-body{gap:var(--space-3);margin-top:var(--space-3);display:grid}.golf-team-player-list{gap:var(--space-2);margin-top:var(--space-3);display:grid}.golf-team-player-row{align-items:center;gap:var(--space-3);border-top:1px solid var(--color-border);padding-top:var(--space-2);grid-template-columns:minmax(0,1fr) auto;display:grid}.golf-team-setup-card{width:100%}.golf-team-setup-card .golf-icon-btn--danger,.golf-team-player-row .golf-icon-btn--danger{box-shadow:none;background:0 0}.golf-toggle-setting{min-height:var(--tap-height);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-soft);color:var(--color-text);align-items:center;gap:var(--space-2);padding:0 var(--space-3);font-size:var(--font-size-sm);font-weight:900;display:flex}.golf-toggle-setting input{width:18px;height:18px;accent-color:var(--golf-green)}.golf-hcp-picker{gap:var(--space-2);grid-template-columns:minmax(0,3fr) minmax(0,2fr);align-items:center;display:grid}.golf-hcp-control{min-height:var(--tap-height);border:1px solid var(--color-border);border-radius:var(--radius-md);grid-template-columns:42px minmax(0,1fr) 42px;align-items:center;display:grid;overflow:hidden}.golf-hcp-control button{height:100%;color:var(--color-text);font-size:var(--font-size-xl);cursor:pointer;background:0 0;border:0;font-weight:900}.golf-hcp-control strong{color:var(--color-text);font-size:var(--font-size-xl);text-align:center;font-weight:900}.live-golf-page{padding-bottom:128px}.golf-live-header{z-index:25;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface-glass);padding:var(--space-4);margin-bottom:var(--space-3);box-shadow:var(--shadow-sm);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);position:sticky;top:72px}.golf-live-header h1{margin:0 0 var(--space-3);color:var(--color-text);letter-spacing:0;font-size:24px;font-weight:900;line-height:1.05}.golf-live-subtitle{margin:calc(var(--space-2) * -1) 0 var(--space-3);color:var(--color-text-muted);font-size:var(--font-size-sm);font-weight:900}.golf-hole-nav{gap:var(--space-2);grid-template-columns:42px minmax(0,1fr) 42px;align-items:center;display:grid}.golf-hole-nav button{border:1px solid var(--color-border);background:var(--color-surface);width:42px;height:42px;color:var(--color-text);border-radius:999px;justify-content:center;align-items:center;display:inline-flex}.golf-hole-nav button:disabled{opacity:.35}.golf-hole-nav div{border-radius:var(--radius-md);background:var(--color-surface-soft);text-align:center;min-width:0;padding:11px 12px}.golf-hole-nav strong,.golf-hole-nav span{display:block}.golf-hole-nav strong{color:var(--color-text);font-size:var(--font-size-lg);line-height:1}.golf-hole-nav span{color:var(--color-text-muted);font-size:var(--font-size-xs);margin-top:3px;font-weight:900}.golf-save-pill{background:var(--color-surface-soft);min-height:28px;color:var(--color-text-muted);margin-top:var(--space-3);font-size:var(--font-size-xs);border-radius:999px;align-items:center;padding:0 10px;font-weight:900;display:inline-flex}.golf-save-pill.saving{background:var(--color-info-soft);color:var(--color-info)}.golf-save-pill.saved{background:var(--golf-green-soft);color:var(--golf-green)}.golf-save-pill.error{background:var(--golf-flag-soft);color:var(--golf-flag)}.golf-player-score-list{gap:var(--space-3);margin-bottom:var(--space-5);flex-direction:column;display:flex}.golf-player-score-card{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);min-height:76px;padding:var(--space-3);gap:var(--space-3);box-shadow:var(--shadow-sm);grid-template-columns:minmax(0,1fr) auto;align-items:center;display:grid}.golf-player-score-card strong,.golf-player-score-card span{display:block}.golf-player-score-card strong{color:var(--color-text);font-size:var(--font-size-lg);line-height:1.1}.golf-player-score-card span{color:var(--color-text-muted);font-size:var(--font-size-sm);margin-top:3px;font-weight:800}.golf-live-stepper{grid-template-columns:42px 48px 42px;align-items:center;gap:6px;display:grid}.golf-live-stepper button{border:1px solid var(--color-border);background:var(--color-surface-soft);width:42px;height:42px;color:var(--color-text);font-size:var(--font-size-lg);border-radius:999px;font-weight:900}.golf-live-stepper strong{color:var(--color-text);text-align:center;font-size:28px;font-weight:900;line-height:1}.golf-leaderboard-section{z-index:20;margin-top:var(--space-3);margin-bottom:var(--space-4);position:sticky;bottom:0}.golf-leaderboard-list{gap:var(--space-2);flex-direction:column;display:flex}.golf-leaderboard-row{border-radius:var(--radius-md);background:var(--color-surface-soft);width:100%;min-height:48px;color:var(--color-text);gap:var(--space-2);text-align:left;cursor:pointer;border:0;grid-template-columns:30px minmax(0,1fr) auto auto auto;align-items:center;padding:0 10px;display:grid}.golf-leaderboard-row span{background:var(--color-surface);width:28px;height:28px;font-size:var(--font-size-xs);border-radius:999px;justify-content:center;align-items:center;font-weight:900;display:inline-flex}.golf-leaderboard-row strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.golf-leaderboard-row small{color:var(--color-text-muted);font-size:var(--font-size-xs);white-space:nowrap;font-weight:900}.golf-leaderboard-row b,.golf-leaderboard-row em{font-style:normal;font-size:var(--font-size-sm);white-space:nowrap;font-weight:900}.golf-leaderboard-row-group{gap:var(--space-2);flex-direction:column;display:flex}.golf-leaderboard-graph-inline{margin:0 0 var(--space-2);padding:var(--space-2) var(--space-2) var(--space-3);border-left:3px solid var(--golf-green-border);border-radius:var(--radius-md);background:var(--color-surface)}.golf-graph-card{min-width:0}.golf-graph-card svg{width:100%;height:auto;margin-top:var(--space-2);overflow:visible}.golf-graph-zero{stroke:var(--color-text-muted);stroke-width:1.5px;stroke-dasharray:5 5}.golf-graph-axis-grid{stroke:var(--color-border);stroke-width:.7px;opacity:.7}.golf-graph-axis-value{fill:var(--color-text-muted);text-anchor:end;font-size:10px;font-weight:400}.golf-graph-grid{stroke:var(--color-border);stroke-width:.6px;opacity:.45}.golf-graph-line{fill:none;stroke:var(--golf-green);stroke-width:2px;stroke-linecap:round;stroke-linejoin:round}.golf-graph-dot{fill:var(--color-surface);stroke:var(--golf-green);stroke-width:1.5px}.golf-graph-value{fill:var(--color-text);text-anchor:middle;font-size:13px;font-weight:400}.golf-graph-holes{color:var(--color-text-muted);text-align:center;grid-template-columns:repeat(auto-fit,minmax(12px,1fr));gap:2px;font-size:10px;font-weight:400;display:grid}.public-golf-page{max-width:720px;padding-top:var(--page-top-padding)}.golf-player-score-info{min-width:0;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:0}.golf-score-marker{width:34px;height:34px;color:var(--color-text);border:2px solid #0000;justify-content:center;align-items:center;margin:0 auto;line-height:1;position:relative;font-size:22px!important;display:inline-flex!important}.golf-score-marker.empty{color:var(--color-text-muted)}.golf-score-marker.points-good{color:var(--golf-green)}.golf-score-marker.points-warning{color:var(--golf-sky)}.golf-score-marker.points-bad{color:var(--golf-flag)}.golf-score-marker.shape-par{border-color:currentColor;border-radius:999px}.golf-score-marker.shape-birdie{box-shadow:0 0 0 3px var(--color-surface), 0 0 0 5px currentColor;border-color:currentColor;border-radius:999px}.golf-score-marker.shape-bogey{border-color:currentColor;border-radius:6px}.golf-score-marker.shape-double-bogey{box-shadow:0 0 0 3px var(--color-surface), 0 0 0 5px currentColor;border-color:currentColor;border-radius:6px}.golf-score-detail-sheet{max-width:560px}.golf-leaderboard-toggle{margin:0 20px var(--space-3);background:var(--color-surface-soft);border-radius:999px;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;padding:4px;display:grid}.golf-leaderboard-row{grid-template-columns:34px minmax(0,1fr) 58px 54px 44px}.golf-leaderboard-row small,.golf-leaderboard-row b,.golf-leaderboard-row em{text-align:right}.golf-rank.rank-1{color:var(--golf-brass)}.golf-rank.rank-2{color:var(--golf-silver)}.golf-rank.rank-3{color:var(--golf-bronze)}.golf-finish-section{padding:var(--space-4) 0 0;justify-content:flex-start;display:flex}.golf-finish-section button{background:var(--golf-flag-soft);width:50%;min-height:48px;color:var(--golf-flag);font-size:var(--font-size-sm);box-shadow:inset 0 0 0 1px var(--golf-flag-edge);border:none;border-radius:999px;justify-content:center;align-items:center;gap:7px;font-weight:900;display:inline-flex}.golf-danger-zone{padding:var(--space-4) 0 0}.golf-danger-zone button{background:var(--golf-flag-soft);width:100%;min-height:48px;color:var(--golf-flag);font-size:var(--font-size-sm);box-shadow:inset 0 0 0 1px var(--golf-flag-edge);border:none;border-radius:999px;justify-content:center;align-items:center;gap:7px;font-weight:900;display:inline-flex}.golf-report-actions{padding:var(--space-4) 0 0;row-gap:var(--space-2);grid-template-columns:7fr 1fr 2fr;align-items:center;display:grid}.golf-report-actions .golf-btn--primary{grid-area:1/1;min-height:48px}.golf-hide-round-toggle-action{grid-area:2/1;width:100%;min-height:48px}.golf-report-actions .golf-icon-btn--danger-lg{grid-area:auto/1;justify-self:start}.golf-report-title-row{justify-content:space-between;align-items:center;gap:var(--space-3);width:100%;display:flex}.golf-round-report-page .golf-hero>div{width:100%}.golf-report-title-row h1{margin:0}.golf-report-share-button{flex:none;margin-left:auto}.golf-report-share-message{margin-top:var(--space-2);color:var(--golf-muted,var(--color-text-muted));font-weight:400;display:block}.golf-player-report-card{margin-top:var(--space-3);background:0 0;border:0;border-radius:0;padding:0}.golf-player-report-card .golf-card-heading{display:none}.golf-report-grid{gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr));min-width:0;display:grid}.golf-report-metric{box-sizing:border-box;border-radius:var(--radius-md);background:var(--golf-paper-surface);width:100%;min-width:0;padding:var(--space-3);text-align:center;border:0}.golf-report-metric.interactive{width:100%;color:inherit;cursor:pointer}.golf-report-metric.interactive:focus-visible{outline:2px solid var(--golf-green);outline-offset:2px}.golf-report-metric span,.golf-report-metric strong{display:block}.golf-report-metric span{color:var(--color-text-muted);font-size:var(--font-size-xs);text-transform:uppercase;font-weight:900}.golf-report-metric strong{color:var(--color-text);font-size:var(--font-size-xl);margin-top:4px;font-weight:900;line-height:1}.golf-report-metric small{color:var(--color-text-muted);font-size:var(--font-size-xs);margin-top:6px;font-weight:800;display:block}.golf-report-metric small.positive{color:var(--golf-green)}.golf-report-metric small.negative{color:var(--golf-flag)}.golf-report-metric em{color:var(--color-text-muted);margin-top:4px;font-size:.68rem;font-style:normal;font-weight:700;display:block}.golf-score-differential-sheet{gap:var(--space-4);max-height:var(--sheet-max-height);overscroll-behavior:contain;display:grid;overflow-y:auto}.golf-score-differential-adjustment{border-radius:var(--radius-md);background:var(--color-surface-soft);padding:var(--space-3);text-align:center;gap:6px;display:grid}.golf-score-differential-adjustment span{color:var(--color-text-muted);font-size:var(--font-size-xs);text-transform:uppercase;font-weight:900}.golf-score-differential-adjustment strong{color:var(--golf-green-strong,var(--color-text));font-size:var(--font-size-2xl);font-weight:950;line-height:1}.golf-score-differential-stepper{gap:var(--space-2);grid-template-columns:52px minmax(0,1fr) 52px;align-items:center;display:grid}.golf-score-differential-stepper button,.golf-score-differential-stepper input{border-radius:var(--radius-md);border:1px solid var(--golf-border,var(--color-border));background:var(--color-surface-3);min-height:54px;color:var(--color-text);text-align:center;font:inherit;font-size:var(--font-size-xl);font-weight:900}.golf-score-differential-stepper button{cursor:pointer}.golf-best-round-panel{gap:var(--space-4);box-sizing:border-box;width:100%;min-width:0;max-width:100%;display:grid;overflow-x:clip}.golf-best-round-body{width:100%;max-width:100%}.golf-best-round-toggle{box-sizing:border-box;justify-self:center;width:min(100%,340px);min-width:0;max-width:340px}.golf-best-round-course-name{border-radius:var(--radius-md);background:var(--golf-paper-surface);min-width:0;padding:var(--space-3)}.golf-best-round-course-name span,.golf-best-round-course-name strong{display:block}.golf-best-round-course-name span{color:var(--color-text-muted);font-size:var(--font-size-xs);text-transform:uppercase;font-weight:400}.golf-best-round-course-name strong{overflow-wrap:anywhere;color:var(--color-text);font-size:var(--font-size-lg);margin-top:4px;font-weight:400;line-height:1.15}.golf-best-round-info{gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr));min-width:0;display:grid}.golf-best-round-info>div{box-sizing:border-box;border-radius:var(--radius-md);background:var(--golf-paper-surface);min-width:0;padding:var(--space-3)}.golf-best-round-info span,.golf-best-round-info strong{display:block}.golf-best-round-info span{color:var(--color-text-muted);font-size:var(--font-size-xs);text-transform:uppercase;font-weight:400}.golf-best-round-info strong{color:var(--color-text);font-size:var(--font-size-md);margin-top:4px;font-weight:400}.golf-best-round-section-panel{min-width:0;margin-top:0;overflow:visible}.golf-best-round-hole-stats-panel,.golf-best-round-scorecard-panel{margin-top:var(--space-2)}.golf-best-round-scorecard-wrap{box-sizing:border-box;border-radius:var(--radius-md);background:var(--golf-paper-surface);width:100%;min-width:0;box-shadow:none;border:0;overflow:auto visible}.golf-best-round-scorecard-table{min-width:520px}.golf-best-round-graph-block{min-width:0;margin:0 0 var(--space-2);grid-column:1/-1}.golf-best-round-graph-block>strong{margin-bottom:var(--space-2);padding-top:var(--space-2);color:var(--color-text);font-size:var(--font-size-sm);padding-left:46px;font-weight:900;display:block}.golf-round-settings-tee-list{margin-top:var(--space-4);gap:var(--space-3);display:grid}.golf-card-heading-compact{margin-bottom:0}.golf-round-settings-player-list{gap:var(--space-2);display:grid}.golf-round-settings-player-row{gap:var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-3);background:var(--color-surface);grid-template-columns:minmax(0,1fr) minmax(160px,220px);align-items:center;display:grid}.golf-round-settings-player-row strong,.golf-round-settings-player-row small{display:block}.golf-round-settings-player-row small{color:var(--color-text-muted);font-size:var(--font-size-xs);margin-top:3px;font-weight:800}@container app-viewport (width<=560px){.golf-round-settings-player-row{grid-template-columns:1fr}.golf-best-round-body{padding-left:14px;padding-right:14px}.golf-best-round-toggle{width:min(100%,300px)}.golf-best-round-panel .golf-report-grid{gap:8px}.golf-best-round-panel .golf-report-metric{padding:12px 8px}.golf-best-round-panel .golf-report-metric strong{font-size:var(--font-size-lg)}}.golf-report-progress-metric{justify-items:center;gap:6px;display:grid}.golf-report-progress-metric strong{margin-top:0}.golf-report-progress-metric .golf-kpi-meter{width:100%;margin-top:0}.golf-report-progress-metric small{color:var(--color-text-muted);font-size:var(--font-size-xs);font-weight:900}.golf-scorecard-table-wrap{margin-top:var(--space-3);border:1px solid var(--golf-border,var(--color-border));border-radius:var(--radius-lg);background:var(--golf-input,var(--color-surface));box-shadow:var(--shadow-sm);overflow-x:auto}.golf-scorecard-table{border-collapse:collapse;width:100%;min-width:430px;color:var(--color-text);font-size:13px}.golf-scorecard-table th,.golf-scorecard-table td{text-align:center;border-bottom:1px solid var(--golf-border,var(--color-border));white-space:nowrap;padding:9px 5px}.golf-scorecard-table th{height:40px;color:var(--golf-green,var(--color-primary));font-size:var(--font-size-xs);letter-spacing:.04em;text-transform:none;background:var(--golf-green-soft,var(--color-primary-soft));font-weight:600}.golf-scorecard-table td{font-weight:800}.golf-scorecard-main-value,.golf-scorecard-tee-meta{display:block}.golf-scorecard-tee-meta{color:var(--color-text-muted);margin-top:2px;font-size:10px;font-weight:900;line-height:1.15}.golf-scorecard-table th:first-child,.golf-scorecard-table td:first-child{text-align:center;color:var(--golf-green,var(--color-primary));padding-left:5px}.golf-scorecard-table tbody tr:last-child td{border-bottom:0}.golf-scorecard-summary-row td{border-top:2px solid var(--golf-border,var(--color-border));background:var(--golf-green-soft,var(--color-primary-soft));height:40px;color:var(--color-text);font-weight:900}.golf-scorecard-summary-row td:first-child{color:var(--golf-green,var(--color-primary))}.golf-scorecard-summary-row.total td,.golf-scorecard-summary-row.total td:first-child{background:var(--golf-green,var(--color-primary));height:44px;color:var(--golf-on-fairway,var(--color-on-primary));border-top-width:3px}.golf-scorecard-spacer-row td{background:0 0;border-bottom:0;height:12px;padding:0}.golf-scorecard-round-summary{margin-top:var(--space-4);padding-top:var(--space-3);border-top:1px solid var(--golf-border,var(--color-border));gap:8px;display:grid}.golf-scorecard-round-summary-row{gap:var(--space-3);color:var(--color-text);font-size:var(--font-size-sm);grid-template-columns:minmax(0,1fr) auto;align-items:center;line-height:1.25;display:grid}.golf-scorecard-round-summary-row span{color:var(--color-text-muted);font-weight:800}.golf-scorecard-round-summary-row strong{color:var(--color-text);font-weight:900}.golf-personal-stats{gap:var(--space-5);flex-direction:column;display:flex}.golf-kpi-grid{gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.golf-kpi-card,.golf-course-stat-metric,.golf-hole-highlight-card,.golf-par-stat-card,.golf-chart-tooltip-card{border:1px solid var(--golf-border,var(--color-border));border-radius:var(--radius-md);background:var(--golf-input,var(--color-surface));box-shadow:var(--golf-lift,var(--shadow-sm))}.golf-stats-panel{border:1px solid var(--golf-border,var(--color-border));border-radius:var(--radius-md);background:var(--golf-card,var(--color-surface));box-shadow:var(--golf-lift,var(--shadow-sm))}.golf-kpi-card{min-height:92px;padding:var(--space-3);text-align:center;align-content:space-between;justify-items:center;gap:8px;display:grid}.golf-kpi-card.interactive{width:100%;color:inherit;cursor:pointer;transition:border-color .16s,box-shadow .16s,transform .16s}.golf-kpi-card.interactive:hover,.golf-kpi-card.interactive:focus-visible{border-color:var(--color-primary-border);box-shadow:var(--shadow-md);transform:translateY(-1px)}.golf-kpi-card.interactive:focus-visible{outline:2px solid var(--golf-green);outline-offset:2px}.golf-kpi-card span,.golf-course-stat-metric span,.golf-hole-highlight-card span,.golf-stats-subheader span,.golf-par-stat-card dt{color:var(--golf-muted,var(--color-text-muted));font-size:var(--font-size-xs);letter-spacing:.04em;text-transform:uppercase;font-weight:900}.golf-kpi-card strong{color:var(--color-text);font-size:25px;font-weight:900;line-height:1}.golf-trend{border-radius:var(--radius-sm);width:28px;height:22px;font-style:normal;font-size:var(--font-size-sm);justify-content:center;align-items:center;font-weight:900;display:none}.golf-trend.up{background:var(--color-primary-soft);color:var(--golf-green)}.golf-trend.down{background:var(--golf-flag-soft);color:var(--golf-flag)}.golf-trend.neutral{background:var(--golf-green-soft);color:var(--golf-muted)}.golf-kpi-groups{gap:var(--space-5);display:grid}.golf-kpi-group-title{margin:0 0 calc(var(--space-3) + 2px);color:var(--color-text);font-size:var(--font-size-md);letter-spacing:0;text-transform:none;font-weight:900}.golf-kpi-group-cards{gap:var(--space-2);grid-template-columns:repeat(auto-fit,minmax(96px,1fr));display:grid}.golf-kpi-group-cards--pair{grid-template-columns:repeat(2,minmax(0,1fr))}.golf-kpi-group-cards--quad{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:1fr}.golf-kpi-group-cards--quad>*{height:100%}.golf-kpi-group-cards .golf-hole-highlight-card,.golf-kpi-group-cards .golf-course-stat-metric{text-align:left;justify-items:start}@container app-viewport (width>=720px){.golf-kpi-group-cards--pair{grid-template-columns:repeat(4,minmax(0,1fr))}}.golf-kpi-metric{border:1px solid var(--golf-border,var(--color-border));border-radius:var(--radius-md);background:var(--golf-input,var(--color-surface));width:100%;box-shadow:var(--golf-lift,var(--shadow-sm));text-align:left;color:inherit;cursor:pointer;padding:10px 12px;font-family:inherit;transition:box-shadow .16s,transform .16s;display:block}.golf-kpi-metric:hover,.golf-kpi-metric:focus-visible{box-shadow:var(--shadow-md);transform:translateY(-1px)}.golf-kpi-metric:focus-visible{outline:2px solid var(--golf-green);outline-offset:2px}.golf-kpi-metric-label{color:var(--golf-muted,var(--color-text-muted));font-size:var(--font-size-xs);letter-spacing:.03em;font-weight:800;display:block}.golf-kpi-metric-row{justify-content:space-between;align-items:baseline;gap:var(--space-2);margin-top:5px;display:flex}.golf-kpi-metric-value{color:var(--color-text);font-variant-numeric:tabular-nums;font-size:21px;font-weight:700;line-height:1}.golf-kpi-delta{font-style:normal;font-size:var(--font-size-xs);font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:700}.golf-kpi-delta.up{color:var(--golf-green)}.golf-kpi-delta.down{color:var(--golf-flag)}.golf-kpi-delta.neutral{color:var(--golf-muted,var(--color-text-muted))}.golf-kpi-delta--block{white-space:normal;margin-top:5px;display:block}.golf-kpi-meter{background:color-mix(in srgb, var(--golf-muted) 26%, transparent);border-radius:999px;width:100%;height:5px;margin-top:8px;overflow:hidden}.golf-kpi-meter i{background:var(--golf-green);border-radius:999px;height:100%;display:block}.golf-kpi-spark{width:100%;height:20px;margin-top:7px;display:block}.golf-kpi-spark polyline{fill:none;stroke:var(--golf-green);stroke-opacity:.55;stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round}.golf-kpi-progress-card{justify-items:center}.golf-stats-panel{padding:calc(var(--space-3) + 2px)}.golf-stats-panel--bare{box-shadow:none;background:0 0;border:none;padding:0}.golf-round-hole-statistics-card{margin-top:var(--space-3)}.golf-stats-subheader{justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:calc(var(--space-3) + 2px);display:flex}.golf-stats-subheader strong{color:var(--color-text);font-size:var(--font-size-md);font-weight:900;display:block}.golf-stats-subheader span{text-transform:none;letter-spacing:0;margin-top:2px;font-weight:700;display:block}.golf-stats-chart{margin-top:var(--space-3);overscroll-behavior-x:contain;scrollbar-width:thin;touch-action:pan-x;border-radius:var(--radius-md);background:var(--golf-card,var(--color-surface));width:calc(100% + 20px);max-width:none;margin-left:-10px;margin-right:-10px;overflow:auto hidden}.golf-stats-chart svg{min-width:100%;height:auto;max-height:260px;display:block}.golf-stats-chart-axis-label{fill:var(--golf-muted,var(--color-text-muted));text-anchor:end;font-size:10px;font-weight:400}.golf-stats-chart-value-label{fill:var(--color-text);text-anchor:middle;font-size:10px;font-weight:400}.golf-chart-bar-hit{cursor:pointer;outline:none}.golf-stats-chart-line{fill:none;stroke:var(--golf-green);stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round}.golf-stats-chart-dot{fill:var(--golf-green)}.golf-stats-chart-dot-ring{fill:none;stroke:var(--golf-brass);stroke-width:1.6px;opacity:.5}.golf-stats-chart-dot.active{fill:var(--golf-brass)}.golf-graph-axis-grid.is-dashed{stroke:var(--color-text);stroke-width:.45px;stroke-dasharray:2 5;opacity:.22}.golf-chart-tooltip-card{margin-top:var(--space-3);padding:var(--space-3);gap:3px;display:grid}.golf-chart-tooltip-card strong,.golf-chart-tooltip-card b{color:var(--color-text);font-weight:900}.golf-chart-tooltip-card span{color:var(--golf-muted,var(--color-text-muted));font-size:var(--font-size-sm);font-weight:800}.golf-score-distribution-panel .golf-stats-subheader{margin-bottom:var(--space-3)}.golf-score-distribution-panel .golf-stats-subheader span{letter-spacing:0;text-transform:none;font-weight:700}.golf-score-distribution-chart{border-radius:var(--radius-md);background:var(--golf-card,var(--color-surface));width:100%;max-width:none;padding:var(--space-2);overflow:hidden}.golf-score-distribution-chart svg{width:100%;height:auto;max-height:300px;display:block}.golf-score-distribution-axis{stroke:var(--color-primary-border);stroke-width:1px}.golf-score-distribution-label{fill:var(--golf-muted,var(--color-text-muted));text-anchor:start;font-size:10px;font-weight:400}.golf-score-distribution-bar{fill:var(--golf-green)}.golf-score-distribution-bar.tone-brass{fill:var(--golf-brass)}.golf-score-distribution-bar.tone-green{fill:var(--golf-green)}.golf-score-distribution-bar.tone-muted{fill:var(--golf-muted,var(--color-text-muted))}.golf-score-distribution-bar.tone-flag{fill:var(--golf-flag)}.golf-score-distribution-value{fill:var(--color-text);font-size:11px;font-weight:400}.golf-main-statistics-body .golf-kpi-card,.golf-main-statistics-body .golf-score-distribution-chart,.golf-main-statistics-body .golf-main-chart-panel .golf-stats-chart,.golf-main-statistics-body .golf-main-hole-stats-panel .golf-par-matrix-wrap{background:var(--golf-paper-surface)}.golf-main-statistics-body .golf-main-hole-stats-panel .golf-par-matrix-wrap{border-radius:var(--radius-md);overflow:auto hidden}.golf-main-statistics-body .golf-main-hole-stats-panel .golf-par-matrix{background:var(--golf-paper-surface)}.golf-course-statistics-summary{margin:0 0 var(--space-5);color:var(--golf-muted,var(--color-text-muted));font-size:var(--font-size-sm);font-weight:700}.golf-course-statistics-view .golf-kpi-card,.golf-course-statistics-view .golf-kpi-metric,.golf-course-statistics-view .golf-course-stat-metric,.golf-course-statistics-view .golf-hole-highlight-card,.golf-course-hole-stats-panel .golf-par-matrix-wrap,.golf-course-hole-stats-panel .golf-par-matrix,.golf-best-round-hole-stats-panel .golf-par-matrix-wrap,.golf-best-round-hole-stats-panel .golf-par-matrix{background:var(--golf-paper-surface)}.golf-course-hole-stats-panel .golf-par-matrix-wrap,.golf-best-round-hole-stats-panel .golf-par-matrix-wrap{border-radius:var(--radius-md);overflow:auto hidden}.golf-best-round-scorecard-table,.golf-best-round-scorecard-panel .golf-scorecard-round-summary{background:var(--golf-paper-surface)}.golf-best-round-scorecard-panel .golf-scorecard-round-summary{box-sizing:border-box;padding:var(--space-4);border-radius:var(--radius-md)}.golf-player-chip-list .golf-chip{background:var(--golf-paper-surface);font-weight:400}.golf-player-chip-list .golf-chip.is-active{background:var(--golf-green-soft);color:var(--golf-green-strong)}.golf-round-player-selector .golf-chip,.golf-round-player-selector .golf-chip.is-active{border:1px solid var(--golf-border,var(--color-border));color:var(--color-text)}.golf-round-player-selector .golf-chip{background:0 0;font-weight:400}.golf-round-player-selector .golf-chip.is-active{background:var(--golf-paper-surface);font-weight:700}.golf-round-report-page .golf-leaderboard-row,.golf-round-report-page .golf-leaderboard-graph-inline,.live-golf-page .golf-leaderboard-row,.live-golf-page .golf-leaderboard-graph-inline,.golf-round-report-page .golf-scorecard-table-wrap,.live-golf-page .golf-scorecard-table-wrap,.golf-round-hole-statistics-card .golf-par-matrix-wrap,.golf-round-hole-statistics-card .golf-par-matrix{background:var(--golf-paper-surface)}.golf-round-hole-statistics-card .golf-par-matrix-wrap{border-radius:var(--radius-md);overflow:auto hidden}.golf-round-report-page .golf-scorecard-round-summary,.live-golf-page .golf-scorecard-round-summary{box-sizing:border-box;padding:var(--space-4);border:1px solid var(--golf-border,var(--color-border));border-radius:var(--radius-md);background:var(--golf-paper-surface)}.golf-main-statistics-body>.golf-stats-panel:nth-of-type(n+5){display:none}.golf-course-stats-grid{gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.golf-course-progress-grid{margin-top:var(--space-3)}.golf-stats-divider{height:1px;margin:calc(var(--space-3) + 2px) 0;background:var(--golf-border,var(--color-border))}.golf-course-stat-metric{border:1px solid var(--golf-border,var(--color-border));border-radius:var(--radius-md);background:var(--golf-input,var(--color-surface));padding:var(--space-3);color:inherit;text-align:center}.golf-course-stat-metric.interactive{cursor:pointer;width:100%;transition:border-color .16s,box-shadow .16s,transform .16s}.golf-course-stat-metric.interactive:hover,.golf-course-stat-metric.interactive:focus-visible{border-color:var(--color-primary-border);box-shadow:var(--shadow-md);transform:translateY(-1px)}.golf-course-stat-metric.interactive:focus-visible{outline:2px solid var(--golf-green);outline-offset:2px}.golf-course-progress-metric{justify-items:center;gap:8px;display:grid}.golf-course-progress-metric small{color:var(--golf-muted,var(--color-text-muted));font-size:var(--font-size-xs);font-weight:900}.golf-course-stat-metric strong{color:var(--color-text);font-size:var(--font-size-lg);margin-top:5px;font-weight:900;line-height:1;display:block}.golf-course-stat-metric em{margin-top:6px;font-size:11px;font-style:normal;font-weight:900;display:block}.golf-course-stat-metric em.positive{color:var(--golf-green)}.golf-course-stat-metric em.negative{color:var(--golf-flag)}.golf-hole-highlight-grid{gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr));margin-top:0;display:grid}.golf-hole-highlight-card{border:1px solid var(--golf-border,var(--color-border));border-radius:var(--radius-md);background:var(--golf-input,var(--color-surface));padding:var(--space-3);color:inherit;text-align:center}.golf-hole-highlight-card.interactive{cursor:pointer;width:100%;transition:border-color .16s,box-shadow .16s,transform .16s}.golf-hole-highlight-card.interactive:hover,.golf-hole-highlight-card.interactive:focus-visible{border-color:var(--color-primary-border);box-shadow:var(--shadow-md);transform:translateY(-1px)}.golf-hole-highlight-card.interactive:focus-visible{outline:2px solid var(--golf-green);outline-offset:2px}.golf-hole-highlight-card strong{color:var(--color-text);font-size:var(--font-size-lg);margin-top:5px;font-weight:900;display:block}.golf-hole-highlight-card small{color:var(--golf-muted,var(--color-text-muted));font-size:var(--font-size-xs);margin-top:4px;font-weight:800;display:block}.golf-course-round-dialog{width:100%;max-width:var(--content-max);text-align:left}.golf-sheet-backdrop.golf-bottom-sheet-backdrop{align-items:flex-end;padding:0}.golf-bottom-sheet{width:100%;max-width:var(--content-max);max-height:var(--sheet-max-height);border-radius:var(--radius-xl) var(--radius-xl) 0 0;background:var(--golf-card);text-align:left;box-shadow:var(--golf-lift), inset 0 0 0 1px var(--golf-border);border:none;flex-direction:column;padding:10px 16px 20px;display:flex}html[data-theme=dark] .golf-bottom-sheet{background:var(--golf-card);border:1px solid var(--color-border-strong)}.golf-sheet-grabber{background:color-mix(in srgb, var(--golf-muted) 34%, transparent);border-radius:999px;flex-shrink:0;width:36px;height:5px;margin:0 auto 12px}.golf-bottom-sheet>.golf-course-round-dialog-header,.golf-bottom-sheet>.golf-leaderboard-toggle{flex-shrink:0}.golf-optimal-round-dialog{width:min(100%,760px);height:68dvh;max-height:var(--sheet-max-height);flex-direction:column;display:flex;overflow:hidden}.golf-optimal-scorecard-wrap{flex:1;min-height:0;overflow:auto}.golf-optimal-scorecard-table{min-width:560px}.golf-course-round-dialog-header{justify-content:space-between;align-items:flex-start;gap:var(--space-3);display:flex}.golf-course-round-dialog-header h2,.golf-course-round-dialog-header p{text-align:left}.golf-course-round-dialog-list{min-height:0;margin-top:var(--space-4);flex:1;align-content:start;gap:0;display:grid;overflow-y:auto}.golf-course-round-dialog-row{align-items:center;gap:var(--space-3);border:none;border-bottom:1px solid var(--golf-border,var(--color-border));text-align:left;background:0 0;border-radius:0;grid-template-columns:34px minmax(0,1fr) minmax(92px,auto);padding:11px 2px;display:grid}.golf-course-round-dialog-row:last-child{border-bottom:none}.golf-dialog-row--no-rank{grid-template-columns:minmax(0,1fr) auto}.golf-course-round-dialog-link{color:inherit;text-decoration:none;transition:background .16s}.golf-course-round-dialog-link:hover,.golf-course-round-dialog-link:focus-visible{background:var(--golf-green-soft)}.golf-course-round-dialog-link:focus-visible{outline:2px solid var(--golf-green);outline-offset:2px}.golf-course-round-dialog-header-row{align-items:center;gap:var(--space-3);grid-template-columns:34px minmax(0,1fr) minmax(92px,auto);padding:0 2px 2px;display:grid}.golf-dialog-header-row--no-rank{grid-template-columns:minmax(0,1fr) auto}.golf-course-round-dialog-header-row button{min-height:28px;color:var(--golf-muted,var(--color-text-muted));font-size:var(--font-size-xs);text-align:left;background:0 0;border:0;align-items:center;gap:4px;padding:0;font-weight:900;display:inline-flex}.golf-course-round-dialog-header-row button:last-child,.golf-course-round-dialog-row small{text-align:right;justify-content:flex-end}.golf-course-round-dialog-header-row b{color:var(--golf-green);font-size:13px;line-height:1}.golf-course-round-dialog-row>span{background:var(--golf-green);width:26px;height:26px;color:var(--golf-on-fairway);border-radius:999px;justify-content:center;align-items:center;font-size:11px;font-weight:900;display:inline-flex}.golf-course-round-dialog-row strong,.golf-course-round-dialog-row small{display:block}.golf-course-round-dialog-row strong{color:var(--color-text);font-size:var(--font-size-sm);font-weight:400}.golf-course-round-dialog-row small{color:var(--golf-muted,var(--color-text-muted));font-size:var(--font-size-xs);margin-top:2px;font-weight:400}.golf-course-round-dialog-row .golf-dialog-row-main{min-width:0}.golf-course-round-dialog-row .golf-dialog-row-sub{color:var(--golf-muted,var(--color-text-muted));font-size:var(--font-size-xs);text-align:left;justify-content:flex-start;margin-top:1px;font-weight:400}.golf-course-round-dialog-row .golf-dialog-row-value{font-variant-numeric:tabular-nums}.golf-course-round-dialog-row .golf-dialog-row-value.is-top{color:var(--golf-brass)}.golf-hole-dialog-toggle{margin-top:var(--space-4)}.golf-accuracy-dialog-toggle{grid-template-columns:repeat(2,minmax(0,1fr))}.golf-par-stats-grid{gap:var(--space-3);display:grid}.golf-par-matrix-wrap{margin-top:var(--space-3);width:100%;overflow-x:auto}.golf-par-matrix{border-collapse:collapse;width:100%;font-size:var(--font-size-sm)}.golf-par-matrix thead th{background:var(--golf-green-soft);height:34px;color:var(--golf-green);font-size:var(--font-size-xs);letter-spacing:.02em;text-transform:none;text-align:right;white-space:nowrap;padding:0 10px;font-weight:900}.golf-par-matrix thead th:first-child{text-align:left;border-radius:var(--radius-sm) 0 0 var(--radius-sm)}.golf-par-matrix thead th:last-child{border-radius:0 var(--radius-sm) var(--radius-sm) 0}.golf-par-matrix tbody tr{border-bottom:1px solid var(--golf-border,var(--color-border))}.golf-par-matrix tbody tr:last-child{border-bottom:none}.golf-par-matrix tbody th{color:var(--golf-muted,var(--color-text-muted));font-size:var(--font-size-xs);text-align:left;white-space:nowrap;padding:10px;font-weight:800}.golf-par-matrix tbody td{color:var(--color-text);font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap;padding:10px;font-weight:400}.golf-par-matrix tbody td.is-best{color:var(--golf-green);font-weight:700}.golf-par-matrix tbody td.is-worst{color:var(--golf-flag);font-weight:400}.golf-par-matrix-empty{color:var(--golf-muted,var(--color-text-muted));font-weight:400}.golf-par-stat-card{padding:var(--space-4);text-align:center}.golf-par-stat-card h3{margin:0 0 var(--space-2);color:var(--color-text);font-size:var(--font-size-md);font-weight:900}.golf-par-stat-card p{color:var(--golf-muted,var(--color-text-muted));font-size:var(--font-size-sm);margin:0;font-weight:800}.golf-par-stat-card dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 14px;margin:0;display:grid}.golf-par-stat-card div{text-align:center;min-width:0}.golf-par-stat-card dd{color:var(--color-text);font-size:var(--font-size-md);margin:2px 0 0;font-weight:900}.golf-par-progress-cell dd{justify-content:center;display:flex}@container app-viewport (width>=720px){.golf-kpi-grid,.golf-course-stats-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.golf-par-stats-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.golf-public-live-header{position:static}.golf-public-meta-grid{gap:var(--space-2);grid-template-columns:1fr;display:grid}.golf-public-meta-grid div{border:1px solid var(--golf-border,var(--color-border));border-radius:var(--radius-sm);background:var(--golf-input,var(--color-surface));grid-template-columns:auto minmax(0,1fr);align-items:center;gap:2px 8px;min-width:0;padding:11px 12px;display:grid}.golf-public-meta-grid img{object-fit:contain;grid-row:span 2;width:20px;height:20px}.golf-public-meta-grid span{color:var(--golf-muted,var(--color-text-muted));font-size:var(--font-size-xs);letter-spacing:.04em;text-transform:uppercase;font-weight:900}.golf-public-meta-grid strong{min-width:0;color:var(--color-text);font-size:var(--font-size-sm);text-overflow:ellipsis;white-space:nowrap;font-weight:900;overflow:hidden}.golf-public-meta-grid .golf-public-tee-time{grid-template-columns:minmax(0,1fr)}.golf-public-meta-grid .golf-public-tee-time strong{grid-column:1}.golf-public-leaderboard-section{z-index:auto;margin-top:var(--space-4);position:static}.golf-public-scorecard-list{gap:var(--space-4);display:grid}.golf-public-scorecard-player h2{margin:0 0 var(--space-2);color:var(--color-text);font-size:var(--font-size-md);font-weight:900}.golf-public-scorecard-tabs{margin-bottom:var(--space-3)}.golf-public-scorecard-tabs button{white-space:nowrap}.golf-public-scorecard-table-wrap{-webkit-overflow-scrolling:touch;max-width:100%;overflow-x:auto}.golf-public-scorecard-table-wrap .golf-scorecard-table{min-width:520px}@container app-viewport (width>=640px){.golf-public-meta-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.golf-scorecard-stroke{isolation:isolate;width:28px;height:28px;color:var(--color-text);justify-content:center;align-items:center;margin:0 auto;font-weight:900;line-height:1;display:inline-flex;position:relative}.golf-scorecard-stroke.shape-eagle{--scorecard-marker-color:var(--golf-brass,var(--color-text));color:var(--golf-brass,var(--color-text));border:1.5px solid var(--scorecard-marker-color);font-weight:900}.golf-scorecard-stroke.shape-birdie{--scorecard-marker-color:var(--golf-green,var(--color-primary));color:var(--golf-green,var(--color-primary));border:1.5px solid var(--scorecard-marker-color)}.golf-scorecard-stroke.shape-bogey{--scorecard-marker-color:var(--golf-muted,var(--color-text-muted));color:var(--golf-muted,var(--color-text-muted));border:1.5px solid var(--scorecard-marker-color)}.golf-scorecard-stroke.shape-double-bogey{--scorecard-marker-color:var(--golf-flag,var(--color-danger));color:var(--golf-flag,var(--color-danger));border:1.5px solid var(--scorecard-marker-color);font-weight:900}.golf-scorecard-stroke:after{content:"";z-index:-1;border:1.5px solid var(--scorecard-marker-color,var(--golf-border,var(--color-border)));opacity:0;pointer-events:none;position:absolute;inset:-5px}.golf-scorecard-stroke.shape-birdie,.golf-scorecard-stroke.shape-eagle{border-radius:999px}.golf-scorecard-stroke.shape-eagle:after{opacity:1;border-radius:999px}.golf-scorecard-stroke.shape-bogey,.golf-scorecard-stroke.shape-double-bogey{border-radius:5px}.golf-scorecard-stroke.shape-double-bogey:after{opacity:1;border-radius:7px}html[data-theme=dark] .golf-score-marker.shape-birdie,html[data-theme=dark] .golf-score-marker.shape-double-bogey{box-shadow:0 0 0 3px var(--color-surface), 0 0 0 5px currentColor}:root{--golf-paper-texture:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.06'/%3E%3C/svg%3E");--golf-paper-surface:var(--color-page)}html[data-theme=dark]{--golf-paper-surface:var(--golf-paper-texture), var(--color-page)}.golf-page,.public-golf-page{--golf-green:var(--color-primary);--golf-green-strong:var(--color-primary-hover);--golf-green-soft:var(--color-accent-soft);--golf-green-border:var(--app-primary-border);--golf-green-edge:var(--color-border-subtle);--golf-on-fairway:var(--color-on-primary);--golf-sky:var(--color-info);--golf-sky-soft:var(--color-info-soft);--golf-flag:var(--color-danger);--golf-flag-soft:var(--color-danger-soft);--golf-flag-edge:var(--color-border-subtle);--golf-brass:var(--color-warning);--golf-brass-soft:var(--color-warning-soft);--golf-silver:var(--color-text-muted);--golf-silver-soft:var(--color-surface-2);--golf-bronze:var(--color-danger);--golf-bronze-soft:var(--color-danger-soft);--golf-lift:var(--shadow-sm);--golf-paper:var(--color-page);--golf-card:var(--color-surface-1);--golf-input:var(--color-surface-2);--golf-raised:var(--color-surface-3);--golf-bg:var(--golf-paper);--golf-gold:var(--color-warning);--golf-border:var(--color-border-subtle);--golf-muted:var(--color-text-muted);--golf-shadow:var(--shadow-md);--golf-button-shadow:var(--shadow-sm);background:var(--golf-paper-texture), var(--golf-bg);padding-top:var(--page-top-padding);border-radius:0 0 28px 28px}.golf-hcp-hero{width:100%;min-height:106px;margin-bottom:var(--space-4);border-radius:var(--radius-md);background:var(--golf-card,var(--color-surface));box-shadow:var(--golf-lift,var(--shadow-sm)), inset 0 0 0 1px var(--golf-border,var(--color-border));justify-content:space-between;align-items:center;gap:var(--space-4);cursor:pointer;text-align:left;border:0;padding:18px 16px;font-family:inherit;display:flex}.golf-hcp-hero-label{color:var(--golf-muted,var(--color-text-muted));font-size:var(--font-size-xs);letter-spacing:.06em;text-transform:uppercase;font-weight:900;display:block}.golf-hcp-hero-value{color:var(--color-text);margin-top:3px;font-size:38px;font-weight:700;line-height:1.05}.golf-hcp-hero-delta{color:var(--golf-green);font-size:var(--font-size-xs);font-variant-numeric:tabular-nums;margin-top:4px;font-weight:700}.golf-hcp-hero-delta.down{color:var(--golf-flag)}.golf-hcp-hero-delta.neutral{color:var(--golf-muted,var(--color-text-muted))}.golf-hcp-hero-spark{flex:auto;min-width:110px;max-width:280px;height:54px;display:block}.golf-hcp-hero-spark-area{fill:var(--golf-green);fill-opacity:.12;stroke:none}.golf-hcp-hero-spark-line{fill:none;stroke:var(--golf-green);stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.golf-stat-strip{gap:var(--space-2);margin-bottom:var(--space-4);display:flex}.golf-stat-tile{background:var(--golf-card,var(--color-surface));border-radius:var(--radius-md);min-height:76px;box-shadow:var(--golf-lift,var(--shadow-sm)), inset 0 0 0 1px var(--golf-border,var(--color-border));cursor:pointer;text-align:center;border:0;flex-direction:column;flex:1;justify-content:center;align-items:center;padding:14px 12px;font-family:inherit;display:flex}.golf-stat-tile .golf-stat-tile-value{color:var(--color-text);font-size:19px;font-weight:700}.golf-stat-tile .golf-stat-tile-label{color:var(--color-text-muted);margin-top:2px;font-size:11px}.golf-stat-tile .golf-stat-tile-value.brass{color:var(--golf-brass,var(--color-text))}.golf-live-banner{border-radius:var(--golf-control-radius,var(--radius-sm));background:var(--golf-green-soft,var(--color-primary-soft,var(--color-surface)));box-shadow:var(--golf-lift,var(--shadow-sm)), inset 0 0 0 1px var(--golf-green-edge,transparent);color:inherit;margin-bottom:var(--space-4);align-items:center;gap:10px;padding:11px 14px;text-decoration:none;display:flex}.golf-live-banner-dot{background:var(--golf-green,var(--color-primary));border-radius:50%;flex-shrink:0;width:8px;height:8px;position:relative}.golf-live-banner-dot:after{content:"";border:1.5px solid var(--golf-green,var(--color-primary));opacity:.5;border-radius:50%;position:absolute;inset:-4px}@media (prefers-reduced-motion:no-preference){.golf-live-banner-dot:after{animation:2s ease-out infinite golf-live-pulse}@keyframes golf-live-pulse{0%{opacity:.55;transform:scale(.7)}to{opacity:0;transform:scale(1.35)}}}.golf-live-banner-text strong{color:var(--color-text);font-size:13.5px;display:block}.golf-live-banner-text small{color:var(--color-text-muted);font-size:11.5px}.golf-live-banner-action{color:var(--golf-green,var(--color-primary));white-space:nowrap;margin-left:auto;font-size:12px;font-weight:700}.golf-stats-view-toggle{margin-left:0;margin-right:0;margin-bottom:var(--space-5)}a.golf-hcp-hero,a.golf-stat-tile{color:inherit;text-decoration:none}.golf-recent-rounds-section{min-width:0;overflow:hidden}.golf-recent-rounds-viewport{isolation:isolate;contain:paint;width:100%;min-width:0;overflow:hidden}.golf-recent-rounds-carousel{scroll-snap-type:x mandatory;scroll-behavior:smooth;overscroll-behavior-inline:contain;scrollbar-width:none;touch-action:pan-x pan-y;width:100%;min-width:0;display:flex;overflow:auto hidden}.golf-recent-rounds-carousel::-webkit-scrollbar{display:none}.golf-recent-round-page{box-sizing:border-box;scroll-snap-align:start;scroll-snap-stop:always;flex:0 0 100%;width:100%;min-width:0;padding:1px;overflow:hidden}.golf-recent-round-page .golf-round-card{width:100%;min-height:0;padding:var(--space-4);border-radius:var(--radius-md);box-shadow:none;background:0 0;border:0;display:block}.golf-recent-rounds-icon{color:var(--golf-green,var(--color-primary))}.golf-recent-round-meta{min-width:0}.golf-recent-round-meta small,.golf-recent-round-meta strong,.golf-recent-round-meta span{display:block}.golf-recent-round-title{color:var(--color-text);font-size:var(--font-size-lg);overflow-wrap:anywhere;margin-top:3px;font-weight:900;line-height:1.15}.golf-recent-round-type{color:var(--golf-muted,var(--color-text-muted));font-size:var(--font-size-sm);margin-top:4px;font-weight:700}.golf-carousel-pagination{min-height:30px;padding:var(--space-5) 0 var(--space-2);justify-content:center;align-items:center;gap:2px;display:flex}.golf-page .live-confirm-actions .golf-btn{flex:1 1 0;min-width:0}.golf-page .live-confirm-cancel{background:var(--golf-card,var(--color-surface));color:var(--color-text);box-shadow:var(--golf-lift,var(--shadow-sm)), inset 0 0 0 1px var(--golf-border,var(--color-border))}.golf-carousel-pagination button{width:24px;height:24px;box-shadow:none;cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.golf-carousel-pagination button:after{content:"";background:var(--golf-border,var(--color-border));border-radius:50%;width:8px;height:8px;transition:width .16s,background .16s}.golf-carousel-pagination button.is-active:after{background:var(--golf-green,var(--color-primary));border-radius:999px;width:22px}.golf-see-all-rounds-link{justify-content:space-between;align-items:center;gap:var(--space-3);width:100%;min-height:56px;margin-top:var(--space-3);padding:var(--space-4) var(--space-2) 0;border-top:1px solid var(--golf-border,var(--color-border));color:var(--color-text);text-decoration:none;display:flex}.golf-see-all-rounds-link span{gap:2px;display:grid}.golf-see-all-rounds-link strong{font-size:var(--font-size-md)}.golf-see-all-rounds-link small,.golf-see-all-rounds-link svg{color:var(--golf-muted,var(--color-text-muted))}.golf-module-page{padding-bottom:calc(88px + env(safe-area-inset-bottom,0px));min-height:calc(var(--app-viewport-height) - 72px);flex-direction:column;display:flex}.golf-module-page>.golf-tabbar{margin-top:auto}.golf-detail-tab-page{padding-bottom:calc(88px + env(safe-area-inset-bottom,0px));min-height:calc(var(--app-viewport-height) - 72px);flex-direction:column;display:flex}.golf-detail-tab-page>.golf-tabbar{margin-top:auto}.golf-tabbar{z-index:40;background:var(--golf-card,var(--color-surface));border-top:1px solid var(--golf-border,var(--color-border));padding:8px 4px calc(20px + env(safe-area-inset-bottom,0px));border-radius:0;align-items:stretch;margin:0;display:flex;position:fixed;bottom:0;left:0;right:0}@media (width>=768px) and (hover:hover) and (pointer:fine){#root .golf-tabbar{left:50%;right:auto;bottom:max(16px, calc((100dvh - var(--app-preview-height)) / 2));width:var(--app-preview-width);border-radius:0 0 var(--app-preview-radius) var(--app-preview-radius);max-width:calc(100vw - 32px);transform:translate(-50%)}}.golf-tab{min-width:0;color:var(--golf-muted,var(--color-text-muted));letter-spacing:.01em;text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:3px;padding:4px 2px;font-size:9.5px;font-weight:600;text-decoration:none;display:flex}.golf-tab.is-active{color:var(--golf-green,var(--color-primary));font-weight:750}.golf-tab svg{flex-shrink:0;display:block}.golf-btn{border-radius:var(--golf-control-radius);min-height:44px;font-size:var(--font-size-sm);cursor:pointer;border:none;justify-content:center;align-items:center;gap:7px;padding:0 16px;font-weight:700;text-decoration:none;transition:background .16s,box-shadow .16s,color .16s;display:inline-flex}.golf-btn:disabled{cursor:not-allowed;opacity:.55}.golf-btn--primary{background:linear-gradient(135deg, var(--golf-green,var(--color-primary)) 0%, var(--golf-green-strong,var(--color-primary-hover)) 100%);color:var(--golf-on-fairway,var(--color-on-primary));box-shadow:var(--golf-button-shadow,var(--shadow-md)), inset 0 0 0 1px var(--golf-green-edge,transparent)}.golf-btn--outline{background:var(--golf-card,var(--color-surface));color:var(--color-text);box-shadow:var(--golf-lift,var(--shadow-sm)), inset 0 0 0 1px var(--golf-border,var(--color-border))}.golf-btn--danger.golf-btn--outline{color:var(--golf-flag,var(--color-danger));box-shadow:var(--golf-lift,var(--shadow-sm)), inset 0 0 0 1px var(--golf-flag-edge,var(--color-danger))}.golf-btn--square{width:40px;height:40px;padding:0}.golf-btn--full{width:100%}.golf-btn--spaced-top{margin-top:var(--space-4)}.golf-btn--cta{bottom:var(--space-3);z-index:30;width:30%;min-width:180px;min-height:50px;margin-left:auto;position:sticky}@container app-viewport (width<=640px){.golf-btn--cta{width:100%}}.golf-topbar .golf-btn{min-height:44px}html[data-theme=dark] .golf-btn--outline:not(.golf-btn--danger),html[data-theme=dark] .golf-icon-btn:not(.golf-icon-btn--danger):not(.golf-icon-btn--danger-lg):not(.golf-icon-btn--edit){background:var(--golf-input);color:var(--golf-green,var(--color-primary))}.golf-chip{border-radius:var(--golf-control-radius,var(--radius-sm));background:var(--golf-card,var(--color-surface));min-height:40px;color:var(--color-text);font-size:var(--font-size-sm);cursor:pointer;box-shadow:var(--golf-lift,var(--shadow-sm)), inset 0 0 0 1px var(--golf-border,var(--color-border));border:none;justify-content:center;align-items:center;gap:7px;padding:0 13px;font-weight:500;transition:background .16s,box-shadow .16s,color .16s;display:inline-flex}.golf-chip.is-active{background:linear-gradient(135deg, var(--golf-green,var(--color-primary)) 0%, var(--golf-green-strong,var(--color-primary-hover)) 100%);color:var(--golf-on-fairway,var(--color-on-primary));box-shadow:var(--golf-button-shadow,var(--shadow-md)), inset 0 0 0 1px var(--golf-green-edge,transparent);font-weight:900}.golf-leaderboard-toggle .golf-chip:not(.is-active){box-shadow:none;background:0 0}.golf-chip.is-selected,.golf-picker.is-selected{background:var(--golf-green-soft,var(--color-primary-soft,var(--color-surface)));color:var(--golf-green,var(--color-primary));box-shadow:inset 0 0 0 1px var(--golf-green-edge,transparent)}.golf-course-statistics-picker.is-selected{background:var(--golf-paper-surface);color:var(--color-text)}.golf-icon-btn{border-radius:var(--golf-control-radius,var(--radius-sm));background:var(--golf-card,var(--color-surface));width:42px;height:42px;color:var(--color-text);box-shadow:var(--golf-lift,var(--shadow-sm)), inset 0 0 0 1px var(--golf-border,var(--color-border));cursor:pointer;border:none;justify-content:center;align-items:center;display:inline-flex}.golf-icon-btn--danger{background:var(--golf-flag-soft,var(--color-danger));color:var(--golf-flag,var(--color-danger));box-shadow:inset 0 0 0 1px var(--golf-flag-edge,var(--color-danger))}.golf-icon-btn--danger-lg{width:48px;height:48px;color:var(--golf-flag,var(--color-danger));box-shadow:inset 0 0 0 1px var(--golf-flag-edge,var(--color-danger));background:0 0}.golf-icon-btn--edit{border:1px solid color-mix(in srgb, var(--color-warning) 38%, transparent);background:var(--color-warning-soft);color:var(--color-warning)}.golf-picker{border-radius:var(--golf-control-radius,var(--radius-sm));background:var(--golf-input,var(--color-surface));width:100%;min-height:56px;color:var(--color-text);justify-content:space-between;align-items:center;gap:var(--space-3);text-align:left;box-shadow:var(--golf-lift,var(--shadow-sm)), inset 0 0 0 1px var(--golf-border,var(--color-border));cursor:pointer;border:none;padding:10px 12px;display:flex;position:relative}.golf-picker strong,.golf-picker small{display:block}.golf-picker strong{font-size:var(--font-size-md);font-weight:900}.golf-picker small{color:var(--color-text-muted);font-size:var(--font-size-xs);margin-top:2px;font-weight:800}.golf-picker:disabled{cursor:default;opacity:1}.golf-picker--compact{min-height:52px}.golf-picker--spaced-bottom{margin-bottom:var(--space-3)}.golf-score-panel button,.golf-card-actions a,.golf-card-actions button,.golf-finish-section button,.golf-danger-zone button{border-radius:var(--radius-md)}.golf-card-actions a,.golf-card-actions button{background:var(--golf-card);box-shadow:var(--golf-lift), inset 0 0 0 1px var(--golf-border);border:none}.golf-score-panel button{background:linear-gradient(135deg, var(--golf-green) 0%, var(--golf-green-strong) 100%);color:var(--golf-on-fairway);box-shadow:var(--golf-button-shadow), inset 0 0 0 1px var(--golf-green-edge);border:none}.golf-card,.golf-section,.golf-round-card,.golf-hole-card,.golf-player-score-card,.golf-player-report-card,.golf-empty-card,.golf-live-header,.golf-score-panel,.golf-sheet,.live-confirm-card{background:var(--golf-card);box-shadow:var(--golf-lift), inset 0 0 0 1px var(--golf-border);border:none}.golf-live-header,.golf-score-panel{background:var(--color-surface-glass)}.golf-section-icon,.golf-stat-icon{border-radius:var(--radius-sm);border:1px solid var(--color-warning-soft);background:var(--color-success-soft);width:36px;height:36px;color:var(--golf-green)}.golf-section-icon{background:0 0;border-color:#0000;border-radius:0;justify-content:flex-start;width:34px;height:34px}.golf-section-icon-plain{width:auto;height:auto;color:inherit;background:0 0;border:0;border-radius:0}.golf-png-icon,.golf-field-png-icon,.golf-action-png-icon,.golf-button-png-icon,.golf-choice-png-icon,.golf-heading-png-icon{object-fit:contain;display:block}.golf-png-icon{width:19px;height:19px}.golf-png-icon-large{width:25px;height:25px}.golf-field-png-icon{width:22px;height:22px}.golf-action-png-icon,.golf-button-png-icon{width:20px;height:20px}.golf-icon-btn--danger .golf-action-png-icon{width:24px;height:24px}.golf-choice-png-icon,.golf-heading-png-icon{width:30px;height:30px}.golf-input,.golf-native-input-shell,.golf-small-input,.golf-hcp-control,.golf-strokes-stepper,.golf-team-handicap-panel,.golf-toggle-setting,.golf-stepper,.golf-stepper button,.golf-toggle-row button{background:var(--golf-input);box-shadow:var(--golf-lift), inset 0 0 0 1px var(--golf-border);border:none}.golf-input,.golf-native-input-shell input{color:var(--color-text);font-size:var(--font-size-md);font-weight:850}.golf-native-input-shell{border-radius:var(--radius-sm);grid-template-columns:minmax(0,1fr) 28px;min-height:54px}.golf-native-input-shell img{order:2;justify-self:end}.golf-native-input-shell input{order:1}.golf-native-input-shell input::-webkit-calendar-picker-indicator{opacity:0;width:28px;margin-left:-28px}.golf-segmented-control,.golf-filter-grid,.golf-leaderboard-toggle{border-radius:var(--radius-sm);background:var(--golf-green-soft);gap:4px;padding:4px}.golf-filter-grid button{border-radius:var(--radius-sm);color:var(--color-text-muted)}.golf-filter-grid button.active{background:linear-gradient(135deg, var(--golf-green) 0%, var(--golf-green-strong) 100%);color:var(--golf-on-fairway);box-shadow:var(--golf-button-shadow)}.golf-course-picker-list button,.golf-add-choice-grid button{border-color:var(--golf-border);border-radius:var(--radius-sm);background:var(--golf-input);box-shadow:var(--shadow-sm)}.golf-course-picker-list button.active{border-color:var(--color-primary-border);background:var(--golf-green-soft);color:var(--golf-green);box-shadow:var(--shadow-md)}.golf-checkmark-icon{border-radius:var(--radius-sm);background:var(--golf-green);width:28px;height:28px;color:var(--golf-on-fairway);justify-content:center;align-items:center;font-weight:900;display:inline-flex}.golf-choice-sheet{max-width:560px;max-height:var(--sheet-max-height);flex-direction:column;display:flex}.golf-choice-sheet .golf-course-picker-list{flex:1;min-height:0;overflow-y:auto}.golf-course-sheet{height:var(--sheet-max-height);max-height:var(--sheet-max-height);flex-direction:column;display:flex}.golf-course-info-sheet{max-height:var(--sheet-max-height);flex-direction:column;display:flex}.golf-course-info-sheet .golf-course-picker-list{max-height:calc(60vh - 170px);overflow-y:auto}.golf-course-sheet .golf-course-picker-list{max-height:none;overflow-y:visible}.golf-course-info-sheet .golf-course-picker-list{min-height:0}.golf-manual-player-row button,.golf-linked-label{border-color:var(--golf-green-border);border-radius:var(--radius-sm);background:var(--golf-green-soft);color:var(--golf-green)}.golf-sheet-header{align-items:center;gap:var(--space-3);margin-bottom:var(--space-4);grid-template-columns:minmax(0,1fr) auto;display:grid}.golf-sheet-header p{margin-bottom:0}.golf-sheet-header .golf-icon-btn{align-self:center}.golf-alert-success{border-color:var(--color-primary-border);background:var(--color-success-soft);color:var(--golf-green)}.golf-favorite-player-card{align-items:center;gap:var(--space-3);width:100%;padding:var(--space-3);border-color:var(--golf-border);color:var(--color-text);text-align:left;cursor:pointer;grid-template-columns:minmax(0,1fr) auto;display:grid}.golf-favorite-player-card strong,.golf-favorite-player-card span,.golf-favorite-player-card small{display:block}.golf-favorite-player-card strong{font-size:var(--font-size-md);font-weight:900}.golf-favorite-player-card span{color:var(--color-text-muted);font-size:var(--font-size-sm);margin-top:2px;font-weight:800}.golf-hcp-control-edit{min-height:52px}.golf-strokes-stepper{border-radius:var(--radius-sm)}.golf-calendar-picker{gap:var(--space-3);display:grid}.golf-calendar-nav{grid-template-columns:38px minmax(0,1fr) 38px;align-items:center;column-gap:14px;display:grid}.golf-calendar-nav strong{color:var(--color-text);font-size:var(--font-size-md);text-align:center;text-transform:capitalize;font-weight:900}.golf-calendar-nav button{border:1px solid var(--golf-border);border-radius:var(--radius-sm);background:var(--golf-input);width:38px;height:38px;color:var(--color-text);box-shadow:var(--shadow-sm);cursor:pointer;justify-content:center;align-items:center;display:inline-flex}.golf-calendar-nav button:disabled{cursor:not-allowed;opacity:.45}.golf-calendar-month{align-items:center;gap:var(--space-2);grid-template-columns:42px minmax(0,1fr) 42px;display:grid}.golf-calendar-month strong{color:var(--color-text);font-size:var(--font-size-md);text-align:center;text-transform:capitalize;font-weight:900}.golf-calendar-month button{border:1px solid var(--golf-border);border-radius:var(--radius-sm);background:var(--golf-input);color:var(--color-text);box-shadow:var(--shadow-sm);cursor:pointer;justify-content:center;align-items:center;width:42px;height:42px;display:inline-flex}.golf-calendar-weekdays,.golf-calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;display:grid}.golf-calendar-weekdays span{color:var(--color-text-muted);text-align:center;text-transform:uppercase;font-size:11px;font-weight:900}.golf-calendar-grid button,.golf-calendar-grid span{min-height:38px}.golf-time-picker-list{max-height:min(56vh,430px);padding-right:2px;overflow-y:auto}.golf-score-badge{border-radius:var(--radius-sm);border-color:var(--golf-green-border);background:var(--golf-green-soft);width:auto;min-width:74px}.golf-report-metric,.golf-hole-nav div,.golf-leaderboard-row,.golf-leaderboard-graph-inline{border:1px solid var(--golf-border);background:var(--golf-input);box-shadow:var(--shadow-sm)}.golf-hole-nav button,.golf-live-stepper button,.golf-stepper button{border-radius:var(--radius-sm);border-color:var(--golf-border);background:var(--golf-input);box-shadow:var(--shadow-sm)}.golf-finish-section button,.golf-danger-zone button{background:var(--golf-flag-soft);box-shadow:inset 0 0 0 1px var(--golf-flag-edge), 0 2px 7px var(--golf-flag-edge)}.live-confirm-yes.danger{border-color:var(--color-danger);background:var(--color-danger);color:var(--color-on-danger);box-shadow:var(--shadow-sm)}html[data-theme=dark] .golf-png-icon,html[data-theme=dark] .golf-field-png-icon,html[data-theme=dark] .golf-action-png-icon,html[data-theme=dark] .golf-button-png-icon,html[data-theme=dark] .golf-choice-png-icon,html[data-theme=dark] .golf-heading-png-icon{filter:drop-shadow(0 4px 9px color-mix(in srgb, var(--color-page) 72%, transparent))}.golf-graph-line{stroke:var(--golf-green)}.golf-graph-dot{fill:var(--golf-card);stroke:var(--golf-gold)}@container app-viewport (width<=420px){.golf-player-score-card{grid-template-columns:minmax(0,1fr)}.golf-live-stepper{grid-template-columns:42px minmax(0,1fr) 42px;width:100%}.golf-leaderboard-row{grid-template-columns:30px minmax(0,1fr) 48px 46px 38px;padding-left:8px;padding-right:8px}}html[data-theme=dark] .golf-stat-icon,html[data-theme=dark] .golf-section-icon,html[data-theme=dark] .golf-toggle-row button.active,html[data-theme=dark] .golf-hole-card-top>span.good{background:var(--golf-green-soft);color:var(--golf-green);border-color:var(--golf-green-border)}@container app-viewport (width>=640px){.golf-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.golf-stat-card.wide{grid-column:auto}.golf-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@container app-viewport (width<=420px){.golf-score-panel{grid-template-columns:1fr 1fr;top:58px}.golf-score-panel button{grid-column:1/-1}.golf-mini-stats{grid-template-columns:1fr}}html[data-theme=dark] .app-header:has(+.golf-page){background:var(--golf-paper-surface);box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;border-bottom-color:#0000}html[data-theme=dark] .golf-page,html[data-theme=dark] .public-golf-page{background:var(--golf-paper-surface)}html[data-theme=dark] .golf-live-header,html[data-theme=dark] .golf-score-panel{background:var(--color-surface-glass)}html[data-theme=dark] .golf-card,html[data-theme=dark] .golf-section,html[data-theme=dark] .golf-empty-card,html[data-theme=dark] .golf-live-header,html[data-theme=dark] .golf-score-panel,html[data-theme=dark] .golf-sheet,html[data-theme=dark] .live-confirm-card{border:1px solid var(--color-border-subtle);background:var(--golf-card);box-shadow:var(--golf-lift)}html[data-theme=dark] .golf-round-card,html[data-theme=dark] .golf-hole-card,html[data-theme=dark] .golf-player-score-card,html[data-theme=dark] .golf-player-report-card{box-shadow:none;background:0 0;border:0}html[data-theme=dark] .golf-recent-round-page .golf-round-card,html[data-theme=dark] .golf-round-list>.golf-round-card,html[data-theme=dark] .golf-course-profile-rounds .golf-round-card{background:var(--golf-paper-surface);box-shadow:inset 0 0 0 1px var(--color-border-strong);border:0}html[data-theme=dark] .golf-input,html[data-theme=dark] .golf-picker,html[data-theme=dark] .golf-native-input-shell,html[data-theme=dark] .golf-small-input,html[data-theme=dark] .golf-hcp-control,html[data-theme=dark] .golf-strokes-stepper,html[data-theme=dark] .golf-team-handicap-panel,html[data-theme=dark] .golf-toggle-setting,html[data-theme=dark] .golf-stepper,html[data-theme=dark] .golf-stepper button,html[data-theme=dark] .golf-toggle-row button,html[data-theme=dark] .golf-course-picker-list button,html[data-theme=dark] .golf-add-choice-grid button,html[data-theme=dark] .golf-report-metric,html[data-theme=dark] .golf-scorecard-table-wrap,html[data-theme=dark] .golf-hole-nav div,html[data-theme=dark] .golf-leaderboard-row,html[data-theme=dark] .golf-leaderboard-graph-inline,html[data-theme=dark] .golf-hole-nav button,html[data-theme=dark] .golf-live-stepper button,html[data-theme=dark] .golf-calendar-month button{background:var(--golf-input);color:var(--color-text);box-shadow:var(--golf-lift), inset 0 0 0 1px var(--color-border-strong);border:none}html[data-theme=dark] .golf-new-round-page .golf-picker,html[data-theme=dark] .golf-new-round-page .golf-input,html[data-theme=dark] .golf-new-round-page .golf-native-input-shell,html[data-theme=dark] .golf-new-round-page .golf-strokes-stepper,html[data-theme=dark] .golf-new-round-page .golf-team-count-control,html[data-theme=dark] .golf-new-round-page .golf-individual-start-card,html[data-theme=dark] .golf-new-round-page .golf-team-list-card,html[data-theme=dark] .golf-new-round-page .golf-team-setup-card,html[data-theme=dark] .golf-new-round-page .golf-coplayer-picker-card .golf-picker,html[data-theme=dark] .golf-player-picker-sheet .golf-course-picker-list button,html[data-theme=dark] .golf-round-settings-grid .golf-picker,html[data-theme=dark] .golf-round-settings-grid .golf-native-input-shell{background:var(--golf-paper-surface);box-shadow:inset 0 0 0 1px var(--color-border-strong)}html[data-theme=dark] .golf-player-picker-sheet .golf-course-picker-list button strong{font-weight:500}html[data-theme=dark] .golf-player-report-card .golf-report-metric,html[data-theme=dark] .golf-main-stats-card .golf-stat-card,html[data-theme=dark] .golf-main-stats-card .golf-score-distribution-chart{background:var(--golf-paper-surface);box-shadow:inset 0 0 0 1px var(--color-border-strong)}html[data-theme=dark] .golf-scorecard-table{color:var(--color-text)}html[data-theme=dark] .golf-best-round-scorecard-wrap,html[data-theme=dark] .golf-course-statistics-picker.is-selected{background:var(--golf-paper-surface);box-shadow:inset 0 0 0 1px var(--color-border-strong);border:0}html[data-theme=dark] .golf-best-round-panel .golf-report-metric{background:var(--golf-paper-surface)}html[data-theme=dark] .golf-scorecard-table th,html[data-theme=dark] .golf-scorecard-table td{border-color:var(--golf-border)}html[data-theme=dark] .golf-scorecard-table th{background:var(--golf-green-soft);color:var(--golf-green)}html[data-theme=dark] .golf-scorecard-table th:first-child,html[data-theme=dark] .golf-scorecard-table td:first-child{color:var(--golf-green)}html[data-theme=dark] .golf-input,html[data-theme=dark] .golf-picker strong,html[data-theme=dark] .golf-native-input-shell input,html[data-theme=dark] .golf-hcp-control strong,html[data-theme=dark] .golf-strokes-stepper strong,html[data-theme=dark] .golf-calendar-month strong{color:var(--color-text)}html[data-theme=dark] .golf-picker small,html[data-theme=dark] .golf-course-picker-list small,html[data-theme=dark] .golf-round-card-main span,html[data-theme=dark] .golf-favorite-player-card span,html[data-theme=dark] .golf-card-heading p,html[data-theme=dark] .golf-hero p:not(.golf-eyebrow){color:var(--color-text-muted)}html[data-theme=dark] .golf-filter-grid button.active,html[data-theme=dark] .golf-score-panel button{background:linear-gradient(135deg, var(--golf-green) 0%, var(--golf-green-strong) 100%);color:var(--golf-on-fairway);box-shadow:var(--golf-button-shadow), inset 0 0 0 1px var(--golf-green-edge);border:none}html[data-theme=dark] .golf-card-actions a,html[data-theme=dark] .golf-card-actions button{background:var(--golf-raised);color:var(--golf-green);box-shadow:var(--golf-lift), inset 0 0 0 1px var(--color-border-strong);border:none}html[data-theme=dark] .golf-section-icon,html[data-theme=dark] .golf-stat-icon{border-color:color-mix(in srgb, var(--color-warning) 28%, transparent);background:var(--golf-green-soft);color:var(--golf-green)}html[data-theme=dark] .golf-section-icon{background:0 0;border-color:#0000}html[data-theme=dark] .golf-section-icon-plain{color:inherit;background:0 0;border-color:#0000}.golf-segmented-control,.golf-leaderboard-toggle{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--golf-input,var(--color-surface));box-shadow:var(--shadow-sm);gap:0;padding:5px;overflow:hidden}.golf-leaderboard-toggle{grid-template-columns:repeat(auto-fit,minmax(0,1fr));margin-left:20px;margin-right:20px}.golf-handicap-source-toggle{grid-template-columns:repeat(2,minmax(0,1fr));width:100%;margin-left:0;margin-right:0}.golf-profile-preferences{margin-top:var(--space-4);border-top:1px solid var(--golf-border,var(--color-border))}.golf-settings-list{border-top:0;margin-top:0}.golf-settings-list>:last-child{border-bottom:0}.golf-preferences-panel{padding:0 var(--space-2)}.golf-settings-page-list{border-top:1px solid var(--golf-border,var(--color-border))}.golf-settings-page-list>:last-child{border-bottom:1px solid var(--golf-border,var(--color-border))}.golf-admin-settings{margin-top:var(--space-6)}.golf-preference-link-row{text-decoration:none}.golf-preference-link-row>svg{color:var(--golf-muted,var(--color-text-muted));flex:none}.golf-preference-toggle-row{border:0;border-bottom:1px solid var(--golf-border,var(--color-border));width:100%;min-height:58px;box-shadow:none;justify-content:space-between;align-items:center;gap:var(--space-4);color:var(--color-text);text-align:left;cursor:pointer;background:0 0;border-radius:0;padding:10px 0;display:flex}.golf-preference-toggle-copy{gap:3px;min-width:0;display:grid}.golf-preference-toggle-copy strong{font-size:var(--font-size-md);font-weight:700}.golf-preference-toggle-copy small{color:var(--golf-muted,var(--color-text-muted));font-size:var(--font-size-xs);line-height:1.35}.golf-ios-switch{background:var(--golf-muted,var(--color-text-muted));width:48px;height:28px;box-shadow:inset 0 0 0 1px var(--golf-border,var(--color-border));border-radius:999px;flex:none;transition:background .18s;position:relative}.golf-ios-switch>span{background:var(--color-on-primary);width:22px;height:22px;box-shadow:var(--shadow-sm);border-radius:50%;transition:transform .18s;position:absolute;top:3px;left:3px}.golf-ios-switch.is-on{background:var(--golf-green,var(--color-primary))}.golf-ios-switch.is-on>span{transform:translate(20px)}.golf-friend-switch{box-shadow:none;color:var(--golf-muted,var(--color-text-muted));cursor:pointer;background:0 0;border:0;border-radius:0;flex:none;align-items:center;padding:0;display:flex}.golf-friend-switch:disabled{cursor:wait;opacity:.55}.golf-friend-row{width:100%;min-height:76px;padding:var(--space-3);justify-content:space-between;align-items:center;gap:var(--space-4);display:flex}.golf-friend-copy{gap:4px;min-width:0;display:grid}.golf-friend-copy strong{color:var(--color-text);font-size:var(--font-size-md);font-weight:900}.golf-friend-copy span{color:var(--golf-muted,var(--color-text-muted));font-size:var(--font-size-sm);font-weight:600}.golf-friends-directory{gap:var(--space-3);display:grid}.golf-friends-search{min-height:52px;padding:0 var(--space-3);border:1px solid var(--golf-border,var(--color-border));border-radius:var(--radius-sm);background:var(--golf-input,var(--color-surface));align-items:center;gap:var(--space-2);color:var(--golf-muted,var(--color-text-muted));display:flex}.golf-friends-search input{width:100%;min-width:0;color:var(--color-text);font:inherit;background:0 0;border:0;outline:0}.golf-friends-search input::placeholder{color:var(--golf-muted,var(--color-text-muted))}.golf-friends-show-all{justify-self:center}.golf-friends-show-all svg{transition:transform .18s}.golf-friends-show-all svg.is-open{transform:rotate(180deg)}.golf-notification-task-heading{align-items:center;gap:var(--space-3);display:flex}.golf-notification-task-heading>div{gap:2px;display:grid}.golf-notification-task-dot{background:var(--color-danger);width:10px;height:10px;box-shadow:0 0 0 4px color-mix(in srgb, var(--color-danger) 16%, transparent);border-radius:50%}.golf-profile-task-card{gap:var(--space-4);display:grid}.golf-profile-task-card p{color:var(--golf-muted,var(--color-text-muted));font-size:var(--font-size-sm);margin:0;line-height:1.55}.golf-profile-task-card .golf-btn{justify-self:start}.golf-profile-settings-card{padding:var(--space-4)}.golf-profile-settings-card .golf-preference-toggle-row{grid-column:1/-1}.golf-profile-settings-hero .golf-btn{flex:none}.golf-hcp-control-input{width:100%;min-width:0;color:var(--color-text);font:inherit;font-size:var(--font-size-xl);text-align:center;background:0 0;border:0;outline:0;font-weight:900}@container app-viewport (width<=639px){.golf-profile-settings-hero{align-items:flex-start}}.golf-handicap-form-app-round .golf-picker:disabled,.golf-handicap-form-app-round .golf-handicap-readonly-field{box-shadow:none;background:0 0}.golf-handicap-form-app-round .golf-picker:disabled strong,.golf-handicap-form-app-round .golf-handicap-readonly-field strong{color:var(--color-text-muted);font-size:var(--font-size-md);font-weight:500}.golf-handicap-form-app-round .golf-handicap-history-score-stepper-compact button,.golf-handicap-form-app-round .golf-handicap-history-score-stepper-compact input{font-size:var(--font-size-md);font-weight:700}.golf-handicap-form:not(.golf-handicap-form-app-round) .input,.golf-handicap-form:not(.golf-handicap-form-app-round) .golf-picker:not(.golf-readonly-picker):not(:disabled),.golf-handicap-form:not(.golf-handicap-form-app-round) .golf-handicap-history-score-stepper input{background:var(--color-surface-3);color:var(--color-text)}.golf-strokes-stepper{background:var(--golf-input,var(--color-surface));box-shadow:var(--golf-lift,var(--shadow-sm)), inset 0 0 0 1px var(--golf-border,var(--color-border));border:0;grid-template-columns:30px minmax(34px,1fr) 30px}.golf-strokes-stepper button{color:var(--color-text);font-size:var(--font-size-md);box-shadow:none;background:0 0;border:0;border-radius:0}.golf-new-round-page .golf-form-grid .golf-segmented-control{box-shadow:inset 0 0 0 1px var(--golf-border,var(--color-border));background:0 0}.golf-new-round-page .golf-form-grid .golf-segmented-control .golf-chip:not(.is-active){box-shadow:none;background:0 0}.golf-new-round-page .golf-form-grid{grid-template-columns:minmax(0,1fr);gap:0}.golf-new-round-page .golf-form-grid>.input-group{align-items:center;gap:var(--space-3);padding:var(--space-3) 0;border-bottom:0;grid-template-columns:minmax(112px,.72fr) minmax(0,1.28fr);margin:0;display:grid}.golf-new-round-page .golf-form-grid>.input-group:last-child{border-bottom:0}.golf-new-round-page .golf-form-grid>.input-group>.label{color:var(--color-text-muted);font-size:var(--font-size-sm);margin:0}.golf-new-round-page .golf-form-grid>.input-group>.golf-picker,.golf-new-round-page .golf-form-grid>.input-group>.golf-segmented-control,.golf-new-round-page .golf-form-grid>.input-group>.golf-native-input-shell{width:100%;min-width:0}.golf-new-round-page .golf-form-grid>.golf-form-control-only{padding:var(--space-3) 0;display:block}.golf-new-round-page .golf-form-grid>.golf-form-control-only>*{width:100%}.golf-startlist-player-details,.golf-player-tee-panel,.golf-team-tee-summary{gap:var(--space-2);display:grid}.golf-player-tee-panel{margin-top:var(--space-2)}.golf-new-round-tee-toggle-panel{gap:var(--space-2);width:100%;display:grid}.golf-new-round-tee-toggle-panel .golf-course-gender-toggle button{color:var(--color-text);font-size:var(--font-size-sm);box-shadow:none;background:0 0;font-weight:500}.golf-new-round-tee-toggle-panel .golf-course-gender-toggle button.is-active{border-color:var(--golf-green);background:linear-gradient(135deg, var(--golf-green) 0%, var(--golf-green-strong) 100%);color:var(--golf-on-fairway);box-shadow:var(--golf-button-shadow,var(--shadow-md)), inset 0 0 0 1px var(--golf-green-edge,transparent);font-weight:900}.golf-new-round-page .golf-native-input-shell--picker{border-radius:var(--golf-control-radius);background:var(--golf-input,var(--color-surface));min-height:56px;box-shadow:var(--golf-lift,var(--shadow-sm)), inset 0 0 0 1px var(--golf-border,var(--color-border));border:0;grid-template-columns:minmax(0,1fr) 22px;position:relative}.golf-new-round-page .golf-native-input-shell--picker input{appearance:none;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;background-image:none;min-height:54px;padding:0;position:relative}html[data-theme=dark] .golf-new-round-page .golf-native-input-shell--picker input{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}.golf-new-round-page .golf-native-input-shell--picker input::-webkit-calendar-picker-indicator{-webkit-appearance:none;display:none}.golf-new-round-page .golf-native-input-shell--picker svg{color:var(--golf-green,var(--color-primary));pointer-events:none;order:2;justify-self:end}.golf-date-time-picker{grid-template-columns:minmax(0,1fr) 22px}.golf-date-time-picker>span{order:1;min-width:0}.golf-date-time-picker>svg{color:var(--golf-green,var(--color-primary));order:2;justify-self:end}.golf-tee-empty-note,.golf-tee-adjusted-note,.golf-strokes-label{color:var(--color-text-muted);font-size:var(--font-size-xs);font-weight:900}.golf-tee-adjusted-note{color:var(--golf-green)}.golf-startlist-actions{align-content:start;display:grid}.golf-individual-start-card-main{display:block}.golf-individual-start-card .golf-startlist-player-details{width:100%}.golf-startlist-player-header{justify-content:space-between;align-items:flex-start;gap:var(--space-3);display:flex}.golf-startlist-player-header strong{text-align:left;min-width:0}.golf-startlist-player-name{text-align:left;gap:2px;min-width:0;display:grid}.golf-startlist-player-name small{color:var(--color-text-muted);font-size:var(--font-size-sm);font-weight:900}.golf-startlist-player-header .golf-icon-btn{flex:none}.golf-startlist-strokes-panel{align-items:center;gap:var(--space-3);width:100%;min-width:0;padding-top:var(--space-3);border-top:1px solid var(--golf-border);grid-template-columns:minmax(112px,.72fr) minmax(0,1.28fr);margin-top:0;display:grid}.golf-startlist-strokes-panel .golf-strokes-stepper,.golf-individual-start-card .golf-picker{width:100%}.golf-individual-start-card .golf-player-tee-panel{align-items:start;column-gap:var(--space-3);row-gap:var(--space-2);width:100%;padding-top:var(--space-3);border-top:1px solid var(--golf-border);grid-template-columns:minmax(112px,.72fr) minmax(0,1.28fr);margin-top:0}.golf-individual-start-card .golf-player-tee-panel>.label{color:var(--color-text-muted);font-size:var(--font-size-sm);align-self:center;margin:0}.golf-individual-start-card .golf-player-tee-panel>.golf-new-round-tee-toggle-panel,.golf-individual-start-card .golf-player-tee-panel>small{grid-column:2;min-width:0}.golf-individual-start-card>.golf-round-card-main>.golf-startlist-actions{display:none}.golf-round-list:has(.golf-team-list-card){grid-template-columns:minmax(0,1fr)}.golf-team-list-card{width:100%}.golf-team-list-card .golf-round-card-main{grid-template-columns:minmax(0,1fr)}.golf-team-player-row .golf-startlist-actions{grid-template-columns:auto auto;justify-content:end}.golf-team-strokes-stepper{min-width:132px;box-shadow:none;background:0 0;border:0;grid-template-columns:34px minmax(54px,1fr) 34px}.golf-team-strokes-stepper button{box-shadow:none;font-size:var(--font-size-lg);background:0 0;border:0}.golf-team-strokes-stepper strong{min-width:54px}.golf-empty-copy{color:var(--color-text-muted);font-size:var(--font-size-sm);margin:0;font-weight:800}.golf-time-wheel-panel{gap:var(--space-4);display:grid}.golf-time-wheel-current{border:1px solid var(--golf-border,var(--color-border));border-radius:var(--radius-md);background:var(--golf-input,var(--color-surface));padding:var(--space-3);gap:2px;display:grid}.golf-time-wheel-current span,.golf-time-wheel-column>span{color:var(--color-text-muted);font-size:var(--font-size-xs);text-transform:uppercase;font-weight:900}.golf-time-wheel-current strong{color:var(--color-text);font-size:var(--font-size-xl);font-weight:900}.golf-time-wheel-picker{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.golf-time-wheel-column{gap:var(--space-2);display:grid}.golf-time-wheel-column>div{border:1px solid var(--golf-border,var(--color-border));border-radius:var(--radius-md);background:var(--golf-input,var(--color-surface));max-height:260px;padding:var(--space-2);scroll-snap-type:y mandatory;overflow-y:auto}.golf-time-wheel-column .golf-chip{scroll-snap-align:center;width:100%;min-height:44px}.golf-time-picker-actions{gap:var(--space-2);grid-template-columns:minmax(0,1fr) minmax(0,1fr);display:grid}.golf-time-picker-actions .golf-chip{width:100%;min-height:var(--tap-height)}@container app-viewport (width<=640px){.golf-btn--cta{width:100%}.golf-team-player-row{grid-template-columns:minmax(0,1fr)}.golf-team-player-row .golf-startlist-actions{justify-content:stretch}}.golf-page,.public-golf-page{--golf-control-radius:12px;--golf-control-inner-radius:8px}.golf-card,.golf-section,.golf-round-card,.golf-player-report-card,.golf-team-handicap-panel,.golf-alert,.golf-scorecard-table-wrap,.golf-stats-chart,.golf-public-meta-grid div,.golf-invite-card,.golf-favorite-player-card,.golf-team-setup-card{border-radius:var(--radius-md)}.golf-input,.golf-native-input-shell,.golf-small-input,.golf-hcp-control,.golf-strokes-stepper,.golf-stepper,.golf-toggle-setting,.golf-toggle-row button,.golf-finish-section button,.golf-card-actions a,.golf-card-actions button,.golf-hide-round-toggle-action,.golf-manual-player-row button,.golf-time-wheel-current,.golf-time-wheel-column>div,.golf-course-picker-list button,.golf-empty-card{border-radius:var(--golf-control-radius)}.golf-stepper button,.golf-hcp-control button,.golf-strokes-stepper button{border-radius:var(--golf-control-inner-radius)}.golf-segmented-control,.golf-leaderboard-toggle{border-radius:var(--golf-control-radius)}.golf-team-setup-header>button:first-child strong{color:var(--color-text);font-size:var(--font-size-md);font-weight:600;line-height:1.15}.golf-team-name-input,.golf-manual-player-row .golf-input,.golf-manual-player-row button{background:var(--color-surface);border-radius:var(--golf-control-radius);min-height:42px}.golf-manual-player-row{align-items:stretch}.golf-manual-player-row button{width:42px}.golf-team-setup-body .golf-picker{min-height:52px}.golf-player-picker-sheet{flex-direction:column;height:min(60vh,560px);max-height:60vh;display:flex;overflow:hidden}.golf-team-player-picker-list{overscroll-behavior:contain;flex:1;min-height:0;max-height:none;padding-right:2px;overflow-y:auto}.golf-team-player-picker-list>button{isolation:isolate;background:var(--golf-paper-surface);flex:none;line-height:1.25;position:relative;overflow:hidden}.golf-team-player-picker-list>button:focus:not(:focus-visible){outline:none}.golf-team-player-picker-list>button.active{box-shadow:inset 0 0 0 1px var(--golf-green-border)}.golf-team-player-picker-list>button:focus-visible{box-shadow:inset 0 0 0 2px var(--golf-green);outline:none}.golf-team-player-picker-list>button strong,.golf-team-player-picker-list>button small{text-transform:none;line-height:1.25}.golf-checkbox-row{align-items:center;gap:var(--space-2);grid-template-columns:22px minmax(0,1fr);width:100%;display:grid}.golf-checkbox{border:1px solid var(--golf-border,var(--color-border));border-radius:var(--golf-control-inner-radius,8px);background:var(--golf-input,var(--color-surface));width:20px;height:20px;color:var(--golf-on-fairway);justify-content:center;align-items:center;display:inline-flex}.golf-checkbox.checked{border-color:var(--golf-green);background:var(--golf-green)}.golf-icon-btn--danger-lg .golf-button-png-icon{width:26px;height:26px}.golf-coplayer-picker-card{padding:var(--space-2)}.golf-coplayer-picker-card .golf-picker{width:100%}.golf-team-player-row{gap:var(--space-2);grid-template-columns:minmax(0,1fr);align-items:stretch;display:grid}.golf-team-player-row-header,.golf-team-player-meta{align-items:center;gap:var(--space-2);display:flex}.golf-team-player-row-header{justify-content:space-between}.golf-team-player-row-header>strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:var(--font-size-md);text-transform:none;font-weight:600;overflow:hidden}.golf-team-player-meta>small{color:var(--color-text-muted);font-size:var(--font-size-sm);white-space:nowrap}.golf-team-player-strokes-label{color:var(--color-text-muted);font-size:var(--font-size-xs);margin-left:auto}.golf-team-player-name{min-width:0}.golf-team-player-name strong,.golf-team-player-name small{overflow-wrap:anywhere}.golf-team-strokes-stepper{flex:0 0 116px;width:116px;min-width:0}.golf-team-player-row>.golf-icon-btn--danger{justify-self:end}.golf-player-picker-button-content{gap:var(--space-2);width:100%;display:grid}.golf-score-permission-toggle{color:var(--color-text-muted);font-size:var(--font-size-xs);align-items:center;gap:6px;margin-top:6px;font-weight:800;line-height:1.1;display:inline-flex}.golf-new-round-page form{gap:var(--space-3);display:grid}.golf-new-round-page form>.golf-card,.golf-new-round-page form>.golf-section{margin-bottom:0}.golf-new-round-page .golf-card,.golf-new-round-page .golf-section{background:var(--golf-card)}.golf-new-round-page .golf-picker,.golf-new-round-page .golf-input,.golf-new-round-page .golf-native-input-shell--picker,.golf-new-round-page .golf-strokes-stepper{background:var(--golf-paper-surface)}.golf-new-round-page .golf-picker strong,.golf-new-round-page .golf-native-date-time-input{font-weight:400}.golf-team-count-control{border-radius:var(--golf-control-radius);background:var(--golf-paper-surface);min-height:52px;box-shadow:inset 0 0 0 1px var(--golf-border);grid-template-columns:48px minmax(0,1fr) 48px;align-items:center;display:grid}.golf-team-count-control button{width:48px;height:48px;color:var(--golf-green);background:0 0;border:0;justify-content:center;align-items:center;display:inline-flex}.golf-team-count-control button:disabled{color:var(--color-text-muted);opacity:.45}.golf-team-count-control>span{text-align:center;color:var(--color-text);font-size:var(--font-size-md);font-weight:500}.golf-new-round-page .golf-segmented-control,.golf-profile-rating-toggle,.golf-new-round-page .golf-course-tee-toggle-grid{background:color-mix(in srgb, var(--golf-green) 18%, var(--golf-paper));min-width:0;min-height:50px;box-shadow:none;border:0;border-radius:999px;gap:0;padding:4px}.golf-new-round-page .golf-segmented-control{grid-template-columns:repeat(2,minmax(0,1fr))}.golf-new-round-page .golf-segmented-control .golf-chip,.golf-profile-rating-toggle .golf-chip,.golf-new-round-page .golf-course-tee-toggle-grid .golf-chip{min-height:42px;color:var(--color-text-muted);font-size:var(--font-size-sm);box-shadow:none;white-space:nowrap;background:0 0;border:0;border-radius:999px;font-weight:600}.golf-new-round-page .golf-segmented-control .golf-chip.is-active,.golf-profile-rating-toggle .golf-chip.is-active,.golf-new-round-page .golf-course-tee-toggle-grid .golf-chip.is-active{background:var(--golf-green);color:var(--golf-on-fairway);box-shadow:none;font-weight:800}.golf-new-round-page .golf-course-tee-toggle-grid{overscroll-behavior-inline:contain;scrollbar-width:none;scroll-snap-type:x proximity;width:100%;display:flex;overflow-x:auto}.golf-new-round-page .golf-course-tee-toggle-grid::-webkit-scrollbar{display:none}.golf-new-round-page .golf-course-tee-toggle-grid .golf-chip{scroll-snap-align:start;flex:1 0 56px}.golf-new-round-page .golf-course-tee-toggle-grid.is-scrollable .golf-chip{flex-basis:68px}.golf-new-round-page .golf-individual-start-card,.golf-new-round-page .golf-team-list-card,.golf-new-round-page .golf-team-setup-card{background:var(--golf-paper-surface)}.golf-new-round-page .golf-team-player-name,.golf-new-round-page .golf-team-tee-summary,.golf-new-round-page .golf-team-tee-summary .golf-new-round-tee-toggle-panel{width:100%}.golf-new-round-page .golf-coplayer-picker-card{box-shadow:none;background:0 0;border:0;padding:0}.golf-new-round-page .golf-coplayer-picker-card .golf-picker{background:var(--golf-paper-surface)}.golf-new-round-page .golf-icon-btn--danger{color:var(--golf-flag);box-shadow:none;background:0 0;border:0}.golf-new-round-page .golf-icon-btn--danger:hover,.golf-new-round-page .golf-icon-btn--danger:focus-visible{background:var(--golf-flag-soft);color:var(--golf-flag)}html[data-theme=dark] .golf-new-round-page .golf-individual-start-card,html[data-theme=dark] .golf-new-round-page .golf-team-list-card,html[data-theme=dark] .golf-new-round-page .golf-team-setup-card{background:var(--golf-paper-surface)}@container app-viewport (width<=420px){.golf-new-round-page .golf-form-grid>.input-group,.golf-startlist-strokes-panel,.golf-individual-start-card .golf-player-tee-panel{gap:var(--space-2);grid-template-columns:110px minmax(0,1fr)}}.live-golf-page .golf-live-actions{justify-content:flex-end}.live-golf-page .golf-live-action-btn{background:var(--golf-paper-surface);color:var(--golf-green);box-shadow:inset 0 0 0 1px var(--golf-border);border:0}.live-golf-page .golf-live-invite-btn svg{flex:none}.live-golf-page .golf-hole-nav>div{background:var(--golf-paper-surface)}.live-golf-page .golf-player-score-card{background:var(--golf-input)}.golf-score-detail-sheet .golf-stepper,.golf-score-detail-sheet .golf-stepper button,.golf-score-detail-sheet .golf-toggle-row button:not(.active):not(.miss){background:var(--golf-paper-surface)}.golf-score-detail-sheet .golf-toggle-row button.active,html[data-theme=dark] .golf-score-detail-sheet .golf-toggle-row button.active{border-color:var(--golf-green-border);background:color-mix(in srgb, var(--golf-green) 34%, var(--golf-paper));color:var(--golf-on-fairway);opacity:1}.golf-score-detail-sheet .golf-toggle-row button.miss,html[data-theme=dark] .golf-score-detail-sheet .golf-toggle-row button.miss{border-color:var(--golf-flag-edge);background:color-mix(in srgb, var(--golf-flag) 32%, var(--golf-paper));color:var(--color-on-danger);opacity:1}.golf-start-round-action{width:auto;margin:var(--space-3) 20px 20px}.golf-start-round-action .golf-btn{min-height:52px}.golf-profile-rating-toggle{grid-template-columns:repeat(2,minmax(0,1fr));width:100%;display:grid}.golf-field-help{color:var(--color-text-muted);font-size:var(--font-size-xs);font-weight:600;line-height:1.4}.golf-score-permission-toggle input{width:16px;height:16px;accent-color:var(--golf-green);margin:0}.golf-segmented-control,.golf-leaderboard-toggle{--golf-segment-count:2;--golf-segment-index:0;isolation:isolate;grid-template-columns:repeat(var(--golf-segment-count), minmax(0, 1fr));background:color-mix(in srgb, var(--golf-green) 18%, var(--golf-paper));min-width:0;min-height:50px;box-shadow:none;border:0;border-radius:999px;gap:0;padding:4px;display:grid;position:relative;overflow:hidden}:is(.golf-segmented-control:has(>.golf-chip:nth-child(3):last-child),.golf-leaderboard-toggle:has(>.golf-chip:nth-child(3):last-child)){--golf-segment-count:3}:is(.golf-segmented-control:has(>.golf-chip:nth-child(4):last-child),.golf-leaderboard-toggle:has(>.golf-chip:nth-child(4):last-child)){--golf-segment-count:4}:is(.golf-segmented-control:has(>.golf-chip:nth-child(5):last-child),.golf-leaderboard-toggle:has(>.golf-chip:nth-child(5):last-child)){--golf-segment-count:5}:is(.golf-segmented-control:has(>.golf-chip:nth-child(2).is-active),.golf-leaderboard-toggle:has(>.golf-chip:nth-child(2).is-active)){--golf-segment-index:1}:is(.golf-segmented-control:has(>.golf-chip:nth-child(3).is-active),.golf-leaderboard-toggle:has(>.golf-chip:nth-child(3).is-active)){--golf-segment-index:2}:is(.golf-segmented-control:has(>.golf-chip:nth-child(4).is-active),.golf-leaderboard-toggle:has(>.golf-chip:nth-child(4).is-active)){--golf-segment-index:3}:is(.golf-segmented-control:has(>.golf-chip:nth-child(5).is-active),.golf-leaderboard-toggle:has(>.golf-chip:nth-child(5).is-active)){--golf-segment-index:4}.golf-segmented-control:before,.golf-leaderboard-toggle:before{z-index:0;width:calc((100% - 8px) / var(--golf-segment-count));background:var(--golf-green);content:"";transform:translateX(calc(var(--golf-segment-index) * 100%));border-radius:999px;transition:transform .22s;position:absolute;top:4px;bottom:4px;left:4px}.golf-segmented-control>.golf-chip,.golf-leaderboard-toggle>.golf-chip{z-index:1;min-width:0;min-height:42px;color:var(--color-text-muted);border:0;border-radius:999px;font-weight:500;transition:color .18s;position:relative;box-shadow:none!important;background:0 0!important}.golf-segmented-control>.golf-chip.is-active,.golf-leaderboard-toggle>.golf-chip.is-active{color:var(--golf-on-fairway);font-weight:600}.golf-course-tee-toggle-grid .golf-chip{font-weight:500;transition:background-color .18s,color .18s}.golf-course-tee-toggle-grid .golf-chip.is-active{font-weight:600}.golf-overview-new-round-button{color:var(--golf-green-strong);background:var(--golf-green-soft)}.golf-round-settings-grid{grid-template-columns:1fr;gap:0;display:grid}.golf-round-settings-grid>.input-group{align-items:center;gap:var(--space-3);padding:var(--space-3) 0;border-bottom:1px solid var(--golf-border);grid-template-columns:minmax(110px,.72fr) minmax(0,1.28fr);display:grid}.golf-round-settings-grid>.input-group:last-child{border-bottom:0}.golf-round-settings-grid .label,.golf-round-settings-grid .golf-picker span{font-weight:400}.golf-round-settings-grid .golf-native-input-shell,.golf-round-settings-grid .golf-picker{background:var(--golf-paper-surface)}.golf-round-settings-grid .golf-picker{justify-content:flex-start}.golf-new-round-page .golf-picker strong,.golf-course-picker-list strong,.golf-round-settings-grid input{font-weight:400}.golf-player-report-card .golf-report-metric,.golf-main-statistics-body .golf-kpi-card,.golf-main-statistics-body .golf-kpi-metric,.golf-main-statistics-body .golf-score-distribution-chart{background:var(--golf-paper-surface)}.golf-player-report-tabs .golf-chip{background:var(--golf-paper-surface);font-weight:400}.golf-player-report-tabs .golf-chip.active{background:var(--golf-green-soft);color:var(--golf-green-strong);font-weight:600}.golf-personal-stats>.golf-picker strong,.golf-course-round-dialog-row strong,.golf-course-round-dialog-row small,.golf-course-round-dialog-row .golf-dialog-row-sub{font-weight:400}.golf-report-actions{padding-top:var(--space-4);grid-template-columns:1fr;gap:0;display:grid}.golf-round-action-toggle{border-bottom:1px solid var(--golf-border);width:100%}.golf-report-actions .golf-icon-btn--danger-lg{margin-top:var(--space-4);color:var(--color-danger);grid-area:auto/1;justify-self:start}.golf-profile-form{gap:var(--space-4) var(--space-3);margin-top:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.golf-profile-gender-field,.golf-profile-wide-field,.golf-profile-form .golf-preference-toggle-row,.golf-profile-form>.golf-btn{grid-column:1/-1}.golf-profile-form .golf-hcp-picker{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.golf-profile-form .golf-hcp-control{width:100%;min-width:0}.golf-profile-form .label,.golf-profile-form .input,.golf-profile-form .golf-hcp-control-input,.golf-profile-form .golf-hcp-control button{font-weight:500}.golf-profile-form .input,.golf-profile-form .golf-hcp-control,.golf-profile-form .golf-btn{min-height:52px}.golf-profile-form .golf-hcp-control-input{font-size:var(--font-size-md)}.golf-page .golf-btn,.golf-page .golf-picker,.golf-page .golf-preference-toggle-copy strong,.golf-page .golf-field-help{font-weight:500}.football-activity-icon{width:72%}.football-summary-card{gap:var(--space-4);flex-direction:column;min-height:100%;display:flex}.football-dashboard-top{gap:var(--space-4);grid-template-columns:1fr;display:grid}@container app-viewport (width>=720px){.football-dashboard-top{grid-template-columns:1fr 1fr;align-items:stretch}}.football-filter-grid{gap:var(--space-3);grid-template-columns:repeat(2,1fr);display:grid}.football-match-type-grid{margin-top:var(--space-5)}.football-filter-grid .btn{height:52px;min-height:52px;padding:0 var(--space-4);font-size:var(--font-size-md);border-radius:999px;justify-content:center;align-items:center;font-weight:700;line-height:1;display:inline-flex}.football-summary-card{gap:var(--space-4)}.football-dashboard-top>.card{min-height:330px}.football-dashboard-top .card{padding:var(--space-6)}.football-dashboard-page{--football-green:var(--app-primary);--football-green-soft:var(--app-primary-soft);--football-green-border:var(--app-primary-border);--color-chart-primary:var(--app-primary);--color-chart-secondary:var(--app-primary-soft);padding-top:var(--page-top-padding)}.football-dashboard-page,.football-match-form-page,.live-setup-page,.live-match-page,.football-settings-page,.public-live-page{--football-navy:var(--color-text);--football-navy-hover:var(--app-primary-hover);--football-steel:var(--app-primary-soft);--football-steel-text:var(--app-primary);--football-card:var(--app-card);--football-input:var(--app-input);--football-muted:var(--app-muted);--football-border:var(--app-border);--football-active-bg:linear-gradient(135deg, var(--app-primary) 0%, var(--app-primary-hover) 100%);--football-success:var(--color-success);--football-success-soft:var(--color-success-soft);--football-warning:var(--color-warning);--football-warning-soft:var(--color-warning-soft);--football-danger:var(--color-danger);--football-danger-soft:var(--color-danger-soft);--football-info:var(--color-info);--football-info-soft:var(--color-info-soft)}.football-dashboard-page .card,.football-dashboard-page .football-live-card,.football-dashboard-page .football-sheet,.football-dashboard-page .football-chart-card,.football-dashboard-page .player-leaderboard-card,.football-dashboard-page .match-card-compact{background:var(--football-card,#fafafa)}.football-topbar{justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--page-topbar-gap);display:flex}.football-topbar-end{justify-content:flex-end}.football-live-match-button{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text);cursor:pointer;box-shadow:var(--shadow-sm);justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.football-filter-badge{background:var(--football-navy,var(--color-primary));color:#fff;border-radius:999px;justify-content:center;align-items:center;min-width:19px;height:19px;padding:0 5px;font-size:11px;line-height:1;display:inline-flex}.football-hero-team-button{color:var(--color-text);font:inherit;letter-spacing:0;text-align:left;cursor:pointer;background:0 0;border:0;margin:0;padding:0;font-size:26px;font-weight:900;line-height:1.05}.football-hero-team-button:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:4px;border-radius:var(--radius-sm)}.football-kicker{margin:0 0 var(--page-kicker-title-gap);color:var(--football-green);font-size:var(--font-size-xs);text-transform:uppercase;font-weight:900;display:block}.football-live-match-button{border-radius:var(--radius-md);color:#166534;min-height:40px;font-size:var(--font-size-sm);box-shadow:var(--shadow-sm);background:#dcfce7;border-color:#bbf7d0;flex:none;gap:7px;padding:0 14px;font-weight:900}.football-live-card{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);gap:var(--space-3);box-shadow:var(--shadow-sm);flex-direction:column;padding:20px;display:flex}.football-last-match-card{color:inherit;text-decoration:none}.football-live-main{align-items:center;gap:var(--space-3);display:flex}.football-live-main strong{font-size:var(--font-size-md);display:block}.football-live-icon{width:42px;height:42px;color:var(--football-green);background:0 0;border-radius:0;justify-content:center;align-items:center;display:inline-flex}.football-live-label{color:var(--color-text-muted);font-size:var(--font-size-xs);text-transform:uppercase;margin-bottom:2px;font-weight:800;display:block}.football-live-meta{color:var(--color-text-muted);font-size:var(--font-size-xs);flex-direction:column;gap:5px;display:flex}.football-live-meta span{align-items:center;gap:6px;display:inline-flex}.football-dashboard-page .recharts-wrapper,.football-dashboard-page .recharts-surface{outline:none}.football-match-form-page{padding-bottom:116px}.football-match-topbar{margin-bottom:var(--space-3);justify-content:space-between;align-items:center;gap:var(--space-2);display:flex}.football-match-topbar .football-btn{flex:none}.match-draft-banner{border-radius:var(--radius-lg);background:var(--color-surface);padding:var(--space-4);margin-bottom:var(--space-3);box-shadow:var(--shadow-sm);gap:var(--space-3);border:1px solid #1e293b29;flex-direction:column;display:flex}.match-draft-banner strong,.match-draft-banner span{display:block}.match-draft-banner span{color:var(--color-text-muted);font-size:var(--font-size-sm);margin-top:3px}.match-draft-banner>div:last-child{gap:var(--space-2);display:flex}.match-draft-banner button{border:1px solid var(--color-border);background:var(--color-surface-soft);min-height:38px;color:var(--color-text);cursor:pointer;border-radius:999px;padding:0 14px;font-weight:800}.match-score-panel{z-index:40;border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);gap:var(--space-3);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff5;flex-direction:column;padding:18px;display:flex;position:sticky;top:64px}.match-score-panel-top{justify-content:space-between;align-items:flex-start;gap:var(--space-3);display:flex}.match-score-panel-top p,.match-score-panel-top h1{margin:0}.match-score-panel-top p{color:var(--color-text-muted);font-size:var(--font-size-xs);text-transform:uppercase;font-weight:900}.match-score-panel-top h1{font-size:var(--font-size-lg);margin-top:3px;font-weight:900;line-height:1.15}.match-score-panel-top span{color:var(--color-text-muted);font-size:var(--font-size-xs);margin-top:4px;font-weight:800;display:block}.autosave-status{background:var(--color-surface-soft);width:34px;min-width:34px;height:34px;min-height:34px;color:var(--color-text-muted);box-sizing:border-box;border:0;border-radius:999px;flex:0 0 34px;justify-content:center;align-items:center;padding:0;line-height:0;display:inline-flex;position:relative}.football-match-form-page-edit{padding-top:var(--page-top-padding)}.autosave-status.autosave-status-edit.idle,.autosave-status.autosave-status-edit.saving{width:34px;min-width:34px;height:34px;min-height:34px;color:var(--color-text-muted);box-shadow:none;background:0 0;border-radius:0}.autosave-status svg{flex:none;display:block;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.autosave-status.saved-local,.autosave-status.saved-remote{background:var(--football-success-soft,var(--color-success-soft));color:var(--football-success,var(--color-success))}.autosave-status.saving,.autosave-status.idle{background:var(--football-info-soft,var(--color-info-soft));color:var(--football-info,var(--color-info))}.autosave-status.dirty,.autosave-status.error{color:var(--color-danger);background:#c0392b1f}.match-score-grid{gap:var(--space-2);grid-template-columns:1fr 1fr;display:grid}.match-score-grid.inline{gap:var(--space-3)}.match-form-stack{gap:var(--space-3);margin-top:var(--space-3);flex-direction:column;display:flex}.match-form-card{border:1px solid var(--color-border);border-radius:var(--radius-xl);background:var(--football-card,var(--color-surface));box-shadow:var(--shadow-sm);padding:18px}.match-form-card h2,.match-form-card h3,.match-card-heading-row p{margin:0}.match-form-card h2{margin-bottom:var(--space-3);font-size:var(--font-size-lg)}.match-info-card{padding:18px;overflow:visible}.match-info-toggle{width:100%;min-height:0;color:var(--color-text);justify-content:space-between;align-items:center;gap:var(--space-3);text-align:left;cursor:pointer;background:0 0;border:0;padding:0;display:flex}.match-info-toggle span,.match-info-toggle strong,.match-info-toggle small{min-width:0;display:block}.match-info-toggle strong{font-size:var(--font-size-lg)}.match-info-toggle small{color:var(--color-text-muted);text-overflow:ellipsis;white-space:nowrap;margin-top:3px;overflow:hidden}.match-info-card .match-form-grid{padding:var(--space-3) 0 0}.match-info-card .match-location-toggle{margin:var(--space-3) 0 0}.match-info-toggle+.card-subtitle,.match-info-toggle+.goal-event-list,.match-info-toggle+.match-live-summary,.match-info-toggle+.match-notes,.match-info-toggle+.penalty-shootout-panel{margin-top:var(--space-3)}.match-card-heading-row{justify-content:space-between;align-items:flex-start;gap:var(--space-3);margin-bottom:var(--space-3);display:flex}.match-card-heading-row p{color:var(--color-text-muted);font-size:var(--font-size-sm);margin-top:3px}.match-form-grid,.goal-event-grid{gap:var(--space-3);grid-template-columns:1fr;display:grid}.match-info-card .select,.match-info-card .input,.match-info-card .team-selector .select{background-color:var(--football-input,#fff);box-shadow:0 1px 2px #2820100a}.football-designed-time,.football-match-form-page input[type=time],.live-setup-page input[type=time],.live-match-page input[type=time],.football-settings-page input[type=time]{border:1px solid var(--color-border);border-radius:var(--radius-sm);background-color:var(--football-input,#fff);width:100%;min-height:56px;color:var(--color-text);font-size:var(--font-size-md);background-image:url("data:image/svg+xml,%3Csvg width='21' height='21' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='12' cy='12' r='8.5' fill='%23d6e4f0' stroke='%232c5f8a' stroke-width='1.75'/%3E%3Cpath d='M12 7.5V12l3.2 2' stroke='%231b2b4b' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:right 15px center;background-repeat:no-repeat;background-size:21px;padding-right:48px;font-weight:700;box-shadow:0 1px 2px #2820100a}.football-designed-time::-webkit-calendar-picker-indicator{opacity:0}.football-match-form-page input[type=time]::-webkit-calendar-picker-indicator{opacity:0}.live-setup-page input[type=time]::-webkit-calendar-picker-indicator{opacity:0}.live-match-page input[type=time]::-webkit-calendar-picker-indicator{opacity:0}.football-settings-page input[type=time]::-webkit-calendar-picker-indicator{opacity:0}.sticky-match-action-bar{z-index:60;width:100%;max-width:var(--content-max);padding:var(--space-3) 32px;border-top:1px solid var(--color-border);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff5;justify-content:center;align-items:center;gap:28px;display:flex;position:fixed;bottom:0;left:50%;transform:translate(-50%);box-shadow:0 -8px 24px #0f172a14}.sticky-match-action-bar>div{text-align:center;min-width:74px}.sticky-match-action-bar span,.sticky-match-action-bar strong{display:block}.sticky-match-action-bar span{color:var(--color-text-muted);font-size:var(--font-size-xs);font-weight:800}.sticky-match-action-bar strong{font-size:var(--font-size-xl);margin-top:2px;font-weight:900;line-height:1}.sticky-match-action-bar .btn{white-space:nowrap;border-radius:999px;flex:none;gap:7px;min-height:44px}.live-match-page{padding-bottom:var(--space-6)}.live-match-header{z-index:20;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--football-card,#fafafa);box-shadow:var(--shadow-sm);padding:22px 20px 24px;position:sticky;top:72px}.live-setup-page{padding-bottom:var(--space-6)}.live-setup-hero{margin:6px 0 18px;padding-top:4px}.live-setup-hero h1{color:var(--color-text);margin:0;font-size:28px;font-weight:900;line-height:1.14}.live-setup-hero p:not(.football-eyebrow){color:var(--color-text-muted);font-size:var(--font-size-sm);margin:7px 0 0;font-weight:700}.live-setup-card{margin-bottom:var(--space-3)}.live-setup-card>.match-card-heading-row{margin-bottom:18px}.live-setup-card>.match-card-heading-row>svg{border-radius:var(--radius-sm);background:var(--football-steel,#c8ddd5);width:36px;height:36px;color:var(--football-steel-text,#2d4a3e);padding:8px}.live-setup-card .label{color:var(--color-text-muted);font-weight:800}.public-kickoff-time{color:var(--color-text-muted);font-size:var(--font-size-sm);font-weight:900}.public-live-page .live-match-meta{flex-direction:column}.public-live-header{max-width:980px;margin:0 auto;padding:24px 28px 0}.public-live-header strong{color:var(--color-text);font-size:var(--font-size-xl);line-height:1;display:block}.public-live-page .live-feed-event{cursor:default}.public-live-page .live-feed-event.away-side{margin-left:auto}@container app-viewport (width>=720px){.match-form-grid,.goal-event-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@container app-viewport (width<=420px){.live-match-header{top:58px}.live-score-panel{flex-direction:column}.live-scoreline strong{font-size:34px}.live-clock-row{flex-direction:column;align-items:flex-start}.match-score-panel{padding:var(--space-3);top:58px}.match-score-panel-top{flex-direction:row;align-items:flex-start}.autosave-status{align-self:flex-start}.match-score-grid{grid-template-columns:1fr}.sticky-match-action-bar{gap:18px;padding-left:28px;padding-right:28px}}.football-btn{border-radius:var(--radius-sm);min-height:38px;font-size:var(--font-size-sm);cursor:pointer;border:none;justify-content:center;align-items:center;gap:7px;padding:0 13px;font-weight:800;text-decoration:none;transition:background .16s,box-shadow .16s,color .16s;display:inline-flex}.football-btn:disabled{cursor:not-allowed;opacity:.55}.football-btn--outline{border:1px solid var(--football-border,var(--color-border));background:var(--football-card,var(--color-surface));color:var(--color-text);box-shadow:var(--shadow-sm)}.football-btn--primary{background:var(--football-active-bg,linear-gradient(135deg, var(--color-primary) 0%, var(--color-primary-hover) 100%));color:#fff;border:1px solid #0000;box-shadow:0 8px 18px #2820103d}.football-btn--danger.football-btn--outline{color:var(--football-danger,var(--color-danger));border-color:var(--football-danger,var(--color-danger))}.football-btn--full{width:100%}.football-chip{border-radius:var(--radius-sm);background:var(--football-card,var(--color-surface));min-height:40px;color:var(--color-text);font-size:var(--font-size-sm);cursor:pointer;box-shadow:var(--shadow-sm);border:none;justify-content:center;align-items:center;gap:7px;padding:0 13px;font-weight:900;transition:background .16s,box-shadow .16s,color .16s;display:inline-flex}.football-chip.is-active{background:var(--football-active-bg,var(--color-primary));color:#fff;box-shadow:0 5px 16px #28201047}.football-chip.is-selected,.football-picker.is-selected{background:var(--football-steel,var(--color-primary-soft));color:var(--football-steel-text,var(--color-primary));box-shadow:none}.football-icon-btn{border:1px solid var(--football-border,var(--color-border));border-radius:var(--radius-md);background:var(--football-card,var(--color-surface));width:40px;height:40px;color:var(--color-text);box-shadow:var(--shadow-sm);cursor:pointer;flex:none;justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.football-picker{border:1px solid var(--football-border,var(--color-border));border-radius:var(--radius-sm);background:var(--football-input,var(--color-surface));width:100%;min-height:48px;color:var(--football-navy,var(--color-text));text-align:left;cursor:pointer;justify-content:space-between;align-items:center;gap:12px;padding:0 14px;font-size:15px;font-weight:750;display:flex;position:relative;box-shadow:0 1px 3px #28201014}.football-picker span:first-child{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.football-new-match-menu{max-width:520px}.football-local-recovery{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);padding:var(--space-3);box-shadow:var(--shadow-sm);gap:var(--space-2);grid-template-columns:minmax(0,1fr) auto;align-items:center;display:grid}.football-local-recovery strong,.football-local-recovery span,.football-local-recovery p{display:block}.football-local-recovery span{color:var(--color-text-muted);font-size:var(--font-size-xs);margin-top:2px;font-weight:800}.football-local-recovery button{background:var(--football-green-soft);min-height:38px;color:var(--football-green);font-size:var(--font-size-sm);border:0;border-radius:999px;padding:0 14px;font-weight:900}.football-local-recovery p{border-radius:var(--radius-sm);font-size:var(--font-size-xs);grid-column:1/-1;margin:2px 0 0;padding:8px 10px;font-weight:800}.football-local-recovery p.info{background:var(--football-info-soft,var(--color-info-soft));color:var(--color-text-muted)}.football-local-recovery p.success{background:var(--football-green-soft);color:var(--football-green)}.football-local-recovery p.error{color:var(--color-danger);background:#c0392b1f}.football-sheet-content{gap:var(--space-3);margin-bottom:var(--space-4);flex-direction:column;display:flex}.football-sheet-field{padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--football-input,var(--color-surface));box-shadow:0 1px 2px #2820100a}.football-sheet-field .team-selector{max-width:none}.football-sheet-field .select{background:var(--app-primary-soft)}.football-sheet-filter-grid{gap:var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--football-steel,var(--app-primary-soft));grid-template-columns:repeat(2,minmax(0,1fr));padding:4px;display:grid}.football-sheet-filter-grid .football-chip:not(.is-active){box-shadow:none;color:var(--color-text-muted);background:0 0}.football-sheet-apply-button{border:1px solid var(--football-navy,var(--color-text));border-radius:var(--radius-sm);background:var(--football-active-bg,var(--football-navy,var(--color-text)));color:#fff;width:100%;min-height:46px;font-size:var(--font-size-sm);cursor:pointer;font-weight:900;box-shadow:0 5px 16px #2820103d}.season-status-card{flex-direction:column;gap:16px;padding-top:2px;display:flex}.season-status-top,.season-record-row,.season-form-row,.match-card-scoreline,.match-card-actions-row{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.season-status-top strong{font-size:var(--font-size-xl);display:block}.goal-difference{border-radius:var(--radius-md);min-width:58px;height:42px;font-size:var(--font-size-xl);justify-content:center;align-items:center;font-weight:900;display:inline-flex}.goal-difference.positive{background:var(--football-green-soft);color:var(--football-green)}.goal-difference.negative{color:var(--color-danger);background:#c0392b1f}.season-scoreline{border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--football-input,#fff);text-align:center;justify-content:center;align-items:baseline;gap:7px;padding:20px 18px;display:flex;box-shadow:0 1px 2px #2820100a}.season-scoreline strong{font-size:32px;font-weight:900;line-height:1}.season-scoreline span:last-child{color:var(--color-text-muted);font-size:var(--font-size-sm);margin-left:12px;font-weight:800}.season-record-row{color:var(--color-text-muted);font-size:var(--font-size-sm);flex-wrap:wrap;justify-content:flex-start;font-weight:800}.season-kpi-grid{gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.season-kpi{border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--football-input,#fff);text-align:center;padding:18px 14px;box-shadow:0 1px 2px #2820100a}.season-kpi strong,.season-kpi span{display:block}.season-kpi strong{font-size:var(--font-size-lg)}.season-kpi span{color:var(--color-text-muted);font-size:var(--font-size-xs);margin-top:2px;font-weight:800}.season-form-row{color:var(--color-text-muted);font-size:var(--font-size-sm);font-weight:800}.season-form-row>div{gap:6px;display:flex}.form-dot{color:#fff;cursor:pointer;border:0;border-radius:999px;justify-content:center;align-items:center;width:24px;height:24px;font-size:11px;font-weight:900;display:inline-flex}.form-dot.w{background:var(--football-success,var(--color-success))}.form-dot.d{background:#64748b}.form-dot.l{background:var(--color-danger)}.football-chart-stack,.match-list,.player-leaderboard,.player-leaderboard-list{gap:var(--space-3);flex-direction:column;display:flex}.season-status-card+.football-chart-stack{margin-top:var(--space-5)}.football-chart-card{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--football-input,#fff);padding:18px;box-shadow:0 1px 2px #2820100a}.football-chart-card h3{margin:0 0 var(--space-2);font-size:var(--font-size-md)}.season-form-dialog{text-align:left;width:min(100%,430px)}.season-form-dialog-header{justify-content:space-between;align-items:flex-start;gap:var(--space-3);display:flex}.season-form-dialog-header h2,.season-form-dialog-header p{text-align:left}.season-form-dialog-list{gap:var(--space-2);max-height:min(60vh,430px);margin-top:var(--space-4);display:grid;overflow-y:auto}.season-form-dialog-row{align-items:center;gap:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--football-input,#fff);grid-template-columns:34px minmax(0,1fr);padding:10px 12px;display:grid}.season-form-dialog-row strong,.season-form-dialog-row small{display:block}.season-form-dialog-row strong{color:var(--color-text);font-size:var(--font-size-sm)}.season-form-dialog-row small{color:var(--color-text-muted);font-size:var(--font-size-xs);margin-top:2px;font-weight:800}.player-filter-level,.player-sort-segment{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--football-steel,#c8ddd5);padding:4px;display:grid}.player-filter-primary{grid-template-columns:repeat(2,minmax(0,1fr))}.player-filter-secondary{grid-template-columns:repeat(3,minmax(0,1fr))}.player-filter-secondary:has(button:nth-child(2):last-child){grid-template-columns:repeat(2,minmax(0,1fr))}.player-filter-level button,.player-sort-segment button{border-radius:var(--radius-sm);min-height:40px;color:var(--color-text-muted);font-size:var(--font-size-sm);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;gap:6px;font-weight:900;display:inline-flex}.player-filter-level button.active,.player-sort-segment button.active{background:var(--football-active-bg,var(--color-primary));color:#fff;box-shadow:0 5px 16px #2820104d}.player-leaderboard-card{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);overflow:hidden}.player-leaderboard-row{width:100%;min-height:66px;color:var(--color-text);gap:var(--space-3);text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;padding:14px 16px;display:grid}.player-rank{font-size:var(--font-size-md);text-align:center;font-weight:900}.stats-medal-icon{object-fit:contain;vertical-align:middle;width:26px;height:26px;display:inline-block}.football-stat-png-icon{object-fit:contain;vertical-align:middle;flex:none;width:21px;height:21px;display:inline-block}.football-stat-png-icon.card,.football-card-stat-icon{width:18px;height:22px;box-shadow:none;background:0 0;border:0}.football-card-group-icon{width:24px;height:24px}.player-leaderboard-name{min-width:0}.player-leaderboard-name strong,.player-leaderboard-name span{display:block}.player-leaderboard-name strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.player-leaderboard-name span{color:var(--color-text-muted);font-size:var(--font-size-xs);margin-top:2px;font-weight:800}.player-compact-stats{font-size:var(--font-size-sm);white-space:nowrap;justify-content:flex-end;align-items:center;gap:6px;min-width:max-content;font-weight:900;display:flex}.player-compact-stats>span{border:2px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:4px;min-width:30px;min-height:30px;padding:0 6px;line-height:1;display:inline-flex}.player-compact-stats>span.active{border-color:var(--color-primary);background:var(--color-surface-soft);color:var(--color-primary)}.player-compact-stats>span:has(.football-stat-png-icon.card){box-shadow:none;background:0 0;border-color:#0000}.player-compact-stats>span.active:has(.football-stat-png-icon.card){box-shadow:none;background:0 0;border-color:#0000}.player-compact-stats>span:has(.football-card-stat-icon){box-shadow:none;background:0 0;border-color:#0000}.player-compact-stats>span.active:has(.football-card-stat-icon){box-shadow:none;background:0 0;border-color:#0000}.player-card-chart-legend{justify-content:center;align-items:center;gap:var(--space-3);color:var(--color-text-muted);font-size:var(--font-size-sm);padding-top:8px;font-weight:800;display:flex}.player-card-chart-legend span{align-items:center;gap:5px;display:inline-flex}.player-compact-stats>span.points svg{flex:none}.player-stats-chart{gap:var(--space-3);flex-direction:column;padding:0 16px 16px;display:flex}.player-stats-chart-panel{min-width:0}.match-card-compact{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);padding:18px;position:relative}.match-card-scoreline{text-align:center;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);display:grid}.match-card-scoreline span{text-overflow:ellipsis;white-space:nowrap;font-size:var(--font-size-sm);font-weight:900;overflow:hidden}.match-card-scoreline strong{min-width:64px;font-size:24px;font-weight:900;line-height:1}.match-card-penalty-result{margin:var(--space-2) 0 0;color:var(--football-green);text-align:center;font-size:var(--font-size-xs);font-weight:900}.match-card-meta{margin-top:var(--space-3);color:var(--color-text-muted);font-size:var(--font-size-xs);flex-wrap:wrap;justify-content:center;gap:6px 12px;font-weight:800;display:flex}.match-card-meta span{align-items:center;gap:5px;display:inline-flex}.match-card-note{margin:var(--space-2) 0 0;color:var(--color-text);font-size:var(--font-size-sm);white-space:pre-line}.match-live-summary{margin-top:var(--space-3);border:1px solid var(--football-green-border);border-radius:var(--radius-md);background:var(--football-green-soft);color:var(--football-green);padding:10px 12px}.match-live-summary strong,.match-live-summary span{display:block}.match-live-summary strong{font-size:var(--font-size-xs);font-weight:900}.match-live-summary span{color:var(--color-text);font-size:var(--font-size-xs);margin-top:4px;font-weight:800}.match-live-summary-full{margin-top:var(--space-3);background:var(--football-green-soft);border-color:var(--football-green-border);flex-direction:column;gap:6px;display:flex}.match-live-summary-full span{margin-top:0}.edit-live-event-list{flex-direction:column;gap:6px;display:flex}.edit-live-event-item{align-items:stretch;gap:var(--space-2);flex-direction:column;display:flex}.edit-live-event-item.home-side{align-items:flex-start}.edit-live-event-item.away-side{align-items:flex-end}.edit-live-event-list button{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--football-input,#fff);width:100%;max-width:min(100%,520px);color:var(--color-text);align-items:center;gap:var(--space-2);text-align:left;cursor:pointer;grid-template-columns:42px 36px minmax(0,1fr);padding:9px 10px;display:grid;box-shadow:0 1px 2px #2820100a}.edit-live-event-item.away-side button{text-align:right;grid-template-columns:minmax(0,1fr) 36px 42px}.edit-live-event-item.away-side button .live-event-minute{grid-area:1/3}.edit-live-event-list button .live-event-minute{border-radius:var(--radius-sm);color:var(--football-navy,#13221b);box-shadow:none;background:0 0}.edit-live-event-item.away-side button .live-event-icon{grid-area:1/2}.edit-live-event-item.away-side button strong{grid-area:1/1}.edit-live-event-list button:disabled{cursor:default;opacity:.78}.edit-live-event-list button span,.edit-live-event-list button strong{margin:0}.live-event-edit-panel{margin-top:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);padding:var(--space-3);width:100%}.match-card-actions-row{margin-top:var(--space-3);justify-content:space-between}.match-action-toggle{border:1px solid var(--color-border);background:var(--color-surface-soft);width:34px;height:34px;color:var(--color-text);cursor:pointer;border-radius:999px;justify-content:center;align-items:center;display:inline-flex}.match-actions-menu{gap:var(--space-2);display:flex}.match-actions-menu-primary{justify-content:flex-start}.match-actions-menu-danger{justify-content:flex-end;margin-left:auto}.match-action-link{border-radius:var(--radius-sm);border:1px solid var(--color-border);background:var(--color-surface);width:46px;height:40px;min-height:40px;color:var(--color-text);font-size:var(--font-size-sm);cursor:pointer;justify-content:center;align-items:center;padding:0 12px;font-weight:800;display:inline-flex}.match-action-link.danger{color:var(--color-danger);border-color:#c0392b59}@container app-viewport (width<=420px){.penalty-shootout-toggle-row,.penalty-result-grid{grid-template-columns:1fr}.player-leaderboard-row{gap:var(--space-2);grid-template-columns:28px minmax(0,1fr) auto;padding:13px 12px}.player-compact-stats{font-size:var(--font-size-xs);justify-content:flex-end;gap:3px}.player-compact-stats>span{min-width:29px;min-height:28px;padding:0 4px}.player-leaderboard-name strong{font-size:var(--font-size-sm)}}.match-input{background:var(--football-input,#fff)}.football-designed-select{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--football-input,#fff);width:100%;min-height:56px;color:var(--color-text);font-size:var(--font-size-md);text-align:left;appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg width='20' height='20' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m6 9 6 6 6-6' stroke='%23263b35' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:right 14px center;background-repeat:no-repeat;background-size:18px;padding:13px 42px 13px 16px;font-weight:700;line-height:1.2;box-shadow:0 1px 2px #2820100a}.football-designed-date{border:1px solid var(--color-border);border-radius:var(--radius-sm);background-color:var(--football-input,#fff);width:100%;min-height:56px;color:var(--color-text);font-size:var(--font-size-md);background-image:url(/icons/calendar.png);background-position:right 15px center;background-repeat:no-repeat;background-size:21px;padding-right:48px;font-weight:700;box-shadow:0 1px 2px #2820100a}.football-designed-date::-webkit-calendar-picker-indicator{cursor:pointer;opacity:0}.live-period-count-field .match-location-toggle{background:var(--football-steel,#c8ddd5);border:1px solid var(--color-border);margin-top:0}.live-period-stepper{grid-template-columns:48px minmax(0,1fr) 48px;align-items:stretch;gap:8px;display:grid}.live-period-stepper button{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--football-input,#fff);min-height:48px;color:var(--color-text);font-size:var(--font-size-lg);cursor:pointer;font-weight:950}.live-period-stepper input{text-align:center;font-weight:900}.match-location-toggle{margin-top:var(--space-3);border-radius:var(--radius-sm);background:var(--football-steel,var(--color-surface-soft));grid-template-columns:repeat(2,1fr);gap:4px;padding:4px;display:grid}.match-location-toggle button{border-radius:var(--radius-sm);min-height:40px;color:var(--color-text-muted);font-size:var(--font-size-sm);cursor:pointer;background:0 0;border:0;font-weight:900}.match-location-toggle button.active{background:var(--football-active-bg,var(--color-primary));color:#fff;box-shadow:0 3px 10px #2820104d}.goal-event-list{gap:var(--space-3);flex-direction:column;display:flex}.goal-event-card{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--football-card,var(--color-surface));padding:var(--space-4);box-shadow:0 1px 4px #2820100d}.penalty-kick-card.goal{background:#dcfce7b8;border-color:#16653438}.penalty-kick-card.miss{background:#fee2e2b8;border-color:#b91c1c2e}.goal-event-card h3{margin-bottom:var(--space-3);font-size:var(--font-size-md)}.penalty-shootout-panel,.penalty-kick-list,.penalty-scorer-summary{gap:var(--space-3);flex-direction:column;display:flex}.penalty-shootout-toggle-row{align-items:center;gap:var(--space-3);grid-template-columns:minmax(0,1fr) minmax(130px,180px);display:grid}.penalty-shootout-toggle-row span,.penalty-shootout-toggle-row strong,.penalty-shootout-toggle-row small{min-width:0;display:block}.penalty-shootout-toggle-row small{color:var(--color-text-muted);font-size:var(--font-size-sm);margin-top:3px;font-weight:750}.penalty-binary-toggle{margin-top:0}.penalty-empty{margin:0}.penalty-warning{border:1px solid color-mix(in srgb, var(--football-warning,var(--color-warning)) 35%, transparent);border-radius:var(--radius-sm);background:var(--football-warning-soft,var(--color-warning-soft));color:color-mix(in srgb, var(--football-warning,var(--color-warning)) 75%, black 25%);font-size:var(--font-size-sm);margin:0;padding:10px 12px;font-weight:800}.penalty-score-card{align-items:center;gap:4px var(--space-3);border:1px solid var(--football-green-border);border-radius:var(--radius-md);background:var(--football-green-soft);color:var(--football-green);padding:var(--space-3);grid-template-columns:minmax(0,1fr) auto;display:grid}.penalty-score-card span,.penalty-score-card small{color:var(--color-text-muted);font-size:var(--font-size-xs);font-weight:900}.penalty-score-card strong{grid-row:span 2;font-size:28px;font-weight:950;line-height:1}.penalty-overview-grid,.penalty-kick-grid{gap:var(--space-3)}.penalty-kick-heading{justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-3);display:flex}.penalty-kick-heading h3{margin-bottom:0}.penalty-delete-button{border-radius:var(--radius-sm);width:40px;height:36px;min-height:36px}.penalty-result-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.penalty-result-grid button{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--football-input,#fff);min-height:40px;color:var(--color-text);font-size:var(--font-size-sm);cursor:pointer;font-weight:900}.penalty-result-grid button.active{background:var(--football-active-bg,var(--color-primary));color:#fff;border-color:#0000;box-shadow:0 3px 10px #2820104d}.penalty-result-grid button.miss.active{color:#fff;background:#991b1b;box-shadow:0 3px 10px #991b1b47}.penalty-placement-picker{gap:var(--space-2);flex-direction:column;display:flex}.penalty-placement-goal{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--football-card,var(--color-surface));position:relative;overflow:hidden;box-shadow:0 1px 4px #28201014}.penalty-placement-goal img{width:100%;display:block}.penalty-placement-zone{border-radius:var(--radius-sm);color:#0000;cursor:pointer;background:#ffffff14;border:1px solid #ffffff8f;position:absolute}.penalty-placement-zone span{clip:rect(0, 0, 0, 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.penalty-placement-zone.active{background:#facc155c;border-color:#facc15;box-shadow:inset 0 0 0 2px #ffffff8c}.penalty-placement-zone.top-left{width:26.5%;height:22%;top:24%;left:11.5%}.penalty-placement-zone.top-center{width:22%;height:22%;top:24%;left:39%}.penalty-placement-zone.top-right{width:26.5%;height:22%;top:24%;left:62%}.penalty-placement-zone.bottom-left{width:26.5%;height:30%;top:47%;left:11.5%}.penalty-placement-zone.bottom-center{width:22%;height:30%;top:47%;left:39%}.penalty-placement-zone.bottom-right{width:26.5%;height:30%;top:47%;left:62%}.penalty-placement-zone.left-post{width:4%;height:61%;top:18%;left:7%}.penalty-placement-zone.right-post{width:4%;height:61%;top:18%;left:89%}.penalty-placement-zone.crossbar{width:80%;height:6%;top:17%;left:10%}.penalty-placement-zone.wide-left{width:7%;height:47%;top:26%;left:0}.penalty-placement-zone.wide-right{width:7%;height:47%;top:26%;left:93%}.penalty-placement-zone.over{width:68%;height:12%;top:4%;left:16%}.penalty-placement-selected{color:var(--color-text-muted);font-size:var(--font-size-sm);font-weight:850}.penalty-placement-selected strong{color:var(--color-text)}.penalty-scorer-summary{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-soft);padding:var(--space-3);font-size:var(--font-size-sm);font-weight:800}.penalty-scorer-summary span{color:var(--color-text-muted)}.penalty-add-button{align-self:flex-start;align-items:center;gap:8px;display:inline-flex}.goal-scorer-field .select,.goal-assist-field .select{background-color:var(--football-input,#fff)}.match-notes{min-height:96px}.live-picker-button{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--football-input,#fff);width:100%;min-height:58px;color:var(--color-text);align-items:center;gap:var(--space-3);text-align:left;cursor:pointer;grid-template-columns:minmax(0,1fr) auto;padding:11px 14px;display:grid;box-shadow:0 1px 3px #28201014}.live-static-field,.live-date-button{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--football-input,#fff);width:100%;min-height:58px;color:var(--color-text);justify-content:space-between;align-items:center;gap:var(--space-3);text-align:left;font-size:var(--font-size-md);padding:11px 14px;font-weight:700;display:flex;box-shadow:0 1px 3px #28201014}.live-date-button{cursor:pointer}.live-picker-button strong,.live-picker-button small{text-overflow:ellipsis;white-space:nowrap;min-width:0;display:block;overflow:hidden}.live-picker-button strong{font-size:var(--font-size-md);font-weight:700}.live-picker-button small{color:var(--color-text-muted);font-size:var(--font-size-xs);margin-top:3px;font-weight:750}.live-picker-button svg,.live-input-shell svg{color:var(--football-steel-text,#2d4a3e)}.live-calendar-icon{border-radius:var(--radius-sm);color:#fff;background:#b94a48;flex:none;justify-content:center;align-items:center;width:30px;height:30px;display:inline-flex}.live-calendar-png-icon{object-fit:contain;flex:none;width:23px;height:23px;display:block}.live-input-shell{position:relative}.live-input-shell .input{background-color:var(--football-input,#fff);background-image:none;min-height:58px;padding-right:48px;font-weight:700;box-shadow:0 1px 3px #28201014}.live-period-stepper input{font-weight:700}.live-input-shell .input::placeholder{color:#a8b8cc;font-weight:600}.live-input-shell>svg{pointer-events:none;position:absolute;top:50%;right:15px;transform:translateY(-50%)}.live-picker-sheet{max-height:70vh}.live-calendar-picker{gap:var(--space-3);display:grid}.match-date-calendar{margin-top:var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--football-card,#fafafa);padding:var(--space-3);box-shadow:0 2px 8px #28201012}.live-calendar-month{align-items:center;gap:var(--space-2);grid-template-columns:40px minmax(0,1fr) 40px;display:grid}.live-calendar-month strong{text-align:center;text-transform:capitalize;font-size:var(--font-size-md);font-weight:900}.live-calendar-month button,.live-calendar-grid button{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--football-input,#fff);color:var(--color-text);cursor:pointer;justify-content:center;align-items:center;display:inline-flex}.live-calendar-month button{height:40px}.live-calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;display:grid}.live-calendar-weekdays span{color:var(--color-text-muted);text-align:center;font-size:var(--font-size-xs);font-weight:900}.live-calendar-grid button{aspect-ratio:1;min-width:0;font-size:var(--font-size-sm);font-weight:850}.live-calendar-grid button.muted{color:#a8b8cc}.live-calendar-grid button.active{background:var(--football-active-bg,var(--color-primary));color:#fff;border-color:#0000;box-shadow:0 3px 10px #2820103d}.live-collaborator-row{gap:var(--space-2);grid-template-columns:minmax(0,1fr) auto;display:grid}.live-collaborator-row button{border-radius:var(--radius-md);background:var(--football-active-bg,var(--color-primary));color:#fff;border:0;justify-content:center;align-items:center;gap:7px;min-height:40px;padding:0 14px;font-weight:900;display:inline-flex}.live-collaborator-list{gap:var(--space-2);margin-top:var(--space-3);flex-wrap:wrap;display:flex}.live-collaborator-list span{border-radius:var(--radius-sm);background:var(--football-steel,#c8ddd5);min-height:34px;color:var(--football-steel-text,#2d4a3e);font-size:var(--font-size-sm);align-items:center;gap:6px;padding:0 7px 0 12px;font-weight:900;display:inline-flex}.live-collaborator-list button{color:currentColor;background:#1665341f;border:0;border-radius:999px;justify-content:center;align-items:center;width:24px;height:24px;display:inline-flex}.live-start-match-button,.live-register-event-button{border-radius:var(--radius-md);background:var(--football-active-bg,var(--color-primary));color:#fff;width:100%;min-height:52px;font-size:var(--font-size-md);border:0;justify-content:center;align-items:center;gap:8px;font-weight:900;display:inline-flex;box-shadow:0 5px 16px #28201038}.live-start-match-button{background:var(--football-active-bg,#15803d);color:#fff}.live-match-meta,.live-clock-row,.live-clock-row>div,.live-scoreline,.live-score-panel,.live-action-grid,.live-quick-actions,.live-save-pill,.live-status-pill,.live-score-stepper>div,.live-feed-event{align-items:center;display:flex}.live-match-meta{justify-content:center;gap:var(--space-2);margin-bottom:var(--space-4)}.football-share-button{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);min-height:38px;color:var(--color-text);box-shadow:var(--shadow-sm);font-size:var(--font-size-sm);justify-content:center;align-items:center;gap:7px;margin-left:auto;padding:0 13px;font-weight:900;display:inline-flex}.football-button-png-icon{object-fit:contain;flex:none;width:22px;height:22px;display:block}.football-inline-png-icon{object-fit:contain;flex:none;width:18px;height:18px;display:inline-block}.football-section-png-icon{object-fit:contain;width:32px;height:32px;display:block}.football-menu-png-icon,.match-action-png-icon,.match-meta-png-icon,.football-live-status-icon{object-fit:contain;flex:none;width:20px;height:20px;display:inline-block}.match-action-png-icon{width:23px;height:23px}.match-meta-png-icon{width:15px;height:15px}.football-live-status-icon{width:24px;height:24px}.match-action-link{align-items:center;gap:6px;display:inline-flex}.live-status-pill,.live-save-pill{min-height:30px;font-size:var(--font-size-xs);border-radius:999px;gap:6px;padding:0;font-weight:900}.live-status-pill{color:var(--color-text-muted);background:0 0}.live-status-pill.live{color:var(--football-success,var(--color-success));background:0 0}.live-status-pill.ended{color:var(--color-danger);background:0 0}.live-save-pill.saved-local{background:var(--football-success-soft,var(--color-success-soft));color:var(--football-success,var(--color-success))}.live-save-pill.dirty,.live-save-pill.error{background:var(--football-danger-soft,var(--color-danger-soft));color:color-mix(in srgb, var(--football-danger,var(--color-danger)) 75%, black 25%)}.live-save-pill.idle{background:var(--football-info-soft,var(--color-info-soft));color:var(--football-info,var(--color-info))}.live-scoreline{justify-content:space-between;gap:var(--space-4);text-align:center;margin-top:2px}.live-scoreline span{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--color-text);font-size:var(--font-size-md);flex:1;font-weight:900;overflow:hidden}.live-scoreline strong{color:var(--color-text);font-size:42px;font-weight:900;line-height:1}.live-halftime-score{margin:var(--space-3) 0 0;color:var(--color-text-muted);text-align:center;font-size:var(--font-size-sm);font-weight:900}.live-clock-card{margin-top:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-xl);background:var(--football-card,#fafafa);box-shadow:var(--shadow-sm);padding:20px 18px 22px}.public-live-clock-card .live-clock-display{min-height:128px}.live-clock-display{border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--football-input,#fff);min-height:104px;color:var(--color-text);flex-direction:column;justify-content:center;align-items:center;gap:10px;padding:18px 14px 20px;display:flex;box-shadow:0 1px 2px #2820100a}.live-clock-display strong{font-size:44px;font-weight:900;line-height:1}.live-clock-display span{color:var(--color-text-muted);font-size:var(--font-size-md);margin-top:3px;font-weight:900}.live-clock-display svg{color:var(--football-steel-text,#2d4a3e);margin-bottom:4px}.live-clock-png-icon{object-fit:contain;width:32px;height:32px;margin-bottom:4px;display:block}.live-period-actions{gap:var(--space-2);margin-top:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.live-period-actions button{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--football-input,var(--color-surface));min-height:44px;color:var(--color-text);font-size:var(--font-size-sm);justify-content:center;align-items:center;gap:7px;font-weight:900;display:inline-flex;box-shadow:0 3px 10px #2820101f}.live-period-actions button.success{background:linear-gradient(135deg, var(--color-success-hover) 0%, var(--football-success,var(--color-success)) 100%);color:var(--color-on-success);border-color:#0000;box-shadow:0 5px 16px #16653447}.live-period-actions button.danger{background:var(--color-danger);border-color:var(--color-danger);color:#fff;box-shadow:0 5px 16px #c0392b42}.live-period-actions button.success:disabled,.live-period-actions button.danger:disabled{color:#fff}.live-period-actions button:disabled{opacity:.45}.live-register-event-button{margin-top:var(--space-3)}.live-clock-row{justify-content:space-between;gap:var(--space-3);margin-top:var(--space-3);color:var(--color-text-muted);font-size:var(--font-size-sm);font-weight:800}.live-clock-row>div{color:var(--color-text);gap:7px}.live-clock-row strong{font-size:var(--font-size-lg)}.live-score-panel{gap:var(--space-3);margin-top:var(--space-3)}.live-score-stepper{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);min-width:0;padding:var(--space-3);flex:1}.live-score-stepper>span{margin-bottom:var(--space-2);color:var(--color-text-muted);font-size:var(--font-size-xs);text-transform:uppercase;font-weight:900;display:block}.live-score-stepper>div{justify-content:space-between;gap:var(--space-2)}.live-score-stepper button{border:1px solid var(--color-border);background:var(--color-surface);width:42px;height:42px;color:var(--color-text);border-radius:999px;justify-content:center;align-items:center;display:inline-flex}.live-score-stepper strong{font-size:34px;font-weight:900;line-height:1}.live-action-grid,.live-quick-actions{gap:var(--space-2);margin-top:var(--space-3)}.live-action-grid{flex-wrap:wrap}.live-action,.live-quick-actions button{border:1px solid var(--color-border);background:var(--color-surface);min-height:44px;color:var(--color-text);font-size:var(--font-size-sm);border-radius:999px;justify-content:center;align-items:center;gap:7px;padding:0 14px;font-weight:900;display:inline-flex}.live-action.primary,.live-quick-actions button:first-child{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.live-action.danger{color:var(--color-danger)}.live-quick-actions{flex-direction:column}.live-quick-actions button{justify-content:flex-start;width:100%;min-height:50px}.live-feed-card{margin-top:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--football-card,#fafafa);padding:var(--space-4);box-shadow:var(--shadow-sm)}.live-feed-list{gap:var(--space-2);flex-direction:column;display:flex}.live-feed-swipe-row{border-radius:var(--radius-md);touch-action:pan-y;width:100%;max-width:min(100%,560px);position:relative;overflow:hidden}.live-feed-swipe-row.away-side{align-self:flex-end}.live-feed-swipe-row.home-side{align-self:flex-start}.live-event-swipe-actions{opacity:0;z-index:1;pointer-events:none;width:128px;transition:opacity .16s,transform .16s;display:inline-flex;position:absolute;inset:0 auto 0 0;transform:translate(-12px)}.live-feed-swipe-row.is-delete-visible .live-event-swipe-actions{opacity:1;pointer-events:auto;transform:translate(0)}.live-event-edit-button,.live-event-delete-button{color:#fff;border:0;justify-content:center;align-items:center;width:64px;display:inline-flex}.live-event-edit-button{border-radius:var(--radius-md) 0 0 var(--radius-md);background:var(--football-input,#fff);color:var(--color-text);border:1px solid var(--color-border);border-right:0}.live-event-delete-button{background:#dc2626}.live-event-delete-button:last-child{border-radius:0 var(--radius-md) var(--radius-md) 0}.live-feed-swipe-row .live-feed-event{z-index:2;transition:transform .16s;position:relative}.live-feed-swipe-row.is-delete-visible .live-feed-event{transform:translate(128px)}.live-feed-event{align-items:center;gap:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--football-input,#fff);color:var(--color-text);text-align:left;cursor:pointer;grid-template-columns:42px 42px minmax(0,1fr);width:100%;padding:12px;display:grid;box-shadow:0 1px 2px #2820100a}.live-feed-event.home-side{align-self:flex-start}.live-feed-event.away-side{text-align:right;grid-template-columns:minmax(0,1fr) 42px 42px;align-self:flex-end}.live-feed-event.away-side .live-event-minute{grid-area:1/3}.live-feed-event.away-side .live-event-icon{grid-area:1/2}.live-feed-event.away-side>div{grid-area:1/1}.live-feed-event:disabled{cursor:default}.live-feed-event .live-event-minute{width:42px;min-width:42px;height:auto;color:var(--football-navy,#13221b);box-shadow:none;background:0 0;border-radius:0;flex:none;justify-content:center;align-items:center;font-weight:900;display:inline-flex}.live-event-icon{width:42px;height:42px;font-size:var(--font-size-sm);border-radius:999px;flex:none;justify-content:center;align-items:center;font-weight:900;display:inline-flex}.live-event-png-icon{box-shadow:none;background:0 0}.live-event-png-icon img{object-fit:contain;width:41px;height:41px;display:block}.live-event-icon.goal{background:var(--football-success-soft,var(--color-success-soft));color:var(--football-success,var(--color-success))}.live-event-icon.yellow{background:var(--football-warning-soft,var(--color-warning-soft));color:color-mix(in srgb, var(--football-warning,var(--color-warning)) 75%, black 25%)}.live-event-icon.red{background:var(--football-danger-soft,var(--color-danger-soft));color:color-mix(in srgb, var(--football-danger,var(--color-danger)) 75%, black 25%)}.live-event-icon.boot,.live-event-icon.ball{background:var(--football-success-soft,var(--color-success-soft));color:var(--football-success,var(--color-success));position:relative}.live-event-icon.boot:before,.live-event-choice-icon.boot:before,.live-event-icon.ball:before,.live-event-choice-icon.ball:before{content:"⚽";line-height:1;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.live-event-icon.boot:after,.live-event-choice-icon.boot:after{content:"";background:currentColor;border-radius:999px 999px 3px 3px;width:13px;height:6px;position:absolute;bottom:7px;right:5px;transform:rotate(-24deg)}.live-event-icon.yellow-card,.live-event-icon.red-card{border-radius:4px;width:22px;height:30px}.live-event-icon.yellow-card{background:var(--football-warning,var(--color-warning))}.live-event-icon.red-card{background:var(--football-danger,var(--color-danger))}.live-event-icon.neutral{background:var(--football-input,#fff);color:var(--color-text-muted)}.live-event-icon.whistle{color:var(--football-steel-text,#2d4a3e);background:0 0}.live-event-icon.whistle .live-whistle-png-icon{width:34px;height:34px}.live-whistle-icon{color:currentColor;width:18px;height:12px;display:inline-block;position:relative}.live-whistle-icon:before{content:"";background:0 0;border:2px solid;border-radius:7px 5px 5px 7px;width:12px;height:8px;position:absolute;top:2px;left:1px}.live-whistle-icon:after{content:"";background:currentColor;border-radius:2px;width:8px;height:6px;position:absolute;top:3px;right:0;transform:skew(-18deg)}.live-whistle-png-icon{object-fit:contain;flex:none;width:22px;height:22px;display:inline-block}.live-feed-event strong,.live-feed-event small{display:block}.live-feed-event strong{color:var(--color-text);font-size:var(--font-size-md)}.live-feed-event small{color:var(--color-text-muted);font-size:var(--font-size-xs);margin-top:2px;font-weight:800}.live-event-sheet{max-width:560px;max-height:var(--sheet-max-height);overflow-y:auto}.live-event-type-grid{gap:var(--space-2);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.live-event-type-grid button{border-radius:var(--radius-sm);min-height:64px;color:var(--color-text);font-size:var(--font-size-xs);background:0 0;border:0;flex-direction:row;justify-content:center;align-items:center;gap:6px;font-weight:900;display:inline-flex}.live-event-type-grid button.active{color:var(--football-navy,#13221b);box-shadow:none;background:#77ac8b38;transform:translateY(-1px)}.live-event-choice-icon{border-radius:999px;justify-content:center;align-items:center;width:32px;height:32px;font-size:18px;font-weight:900;display:inline-flex;position:relative}.live-event-choice-png-icon{object-fit:contain;flex:none;width:50px;height:50px;display:inline-block}.live-event-choice-png-icon.card{width:52px;height:52px;box-shadow:none;object-fit:contain;background:0 0;border:0;padding:0}.football-goal-heading-icon{object-fit:contain;vertical-align:middle;width:24px;height:24px;margin-right:8px;display:inline-block}.live-event-choice-icon.boot,.live-event-choice-icon.ball{background:var(--football-success-soft,var(--color-success-soft));color:var(--football-success,var(--color-success))}.live-event-choice-icon.yellow-card,.live-event-choice-icon.red-card{border-radius:4px;width:26px;height:36px}.live-event-choice-icon.yellow-card{background:var(--football-warning,var(--color-warning))}.live-event-choice-icon.red-card{background:var(--football-danger,var(--color-danger))}.live-event-team-toggle{margin-top:var(--space-3);border-radius:var(--radius-sm);background:var(--football-steel,var(--color-surface-soft));grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;padding:4px;display:grid}.live-event-team-toggle .football-chip{text-overflow:ellipsis;white-space:nowrap;min-width:0;min-height:42px;padding:0 12px;overflow:hidden}.live-event-team-toggle .football-chip:not(.is-active){box-shadow:none;background:0 0}.live-event-team-toggle .football-chip.is-active{box-shadow:0 3px 10px #2820104d}.live-event-fields{gap:var(--space-3);margin-top:var(--space-3);grid-template-columns:1fr;display:grid}.live-event-fields .match-input{background-color:var(--football-input,#fff)}.live-event-fields .football-designed-select{border:1px solid var(--football-border,var(--color-border));border-radius:var(--radius-sm);background-color:var(--football-input,var(--color-surface));min-height:48px;color:var(--football-navy,var(--color-text));font-size:15px;font-weight:750;box-shadow:0 1px 3px #28201014}.live-minute-stepper{grid-template-columns:48px minmax(0,1fr) 48px;gap:8px;display:grid}.live-minute-stepper button,.live-minute-stepper input{border-radius:var(--radius-sm);min-height:48px;color:var(--football-navy,var(--color-text));box-shadow:none;background:0 0;border:0}.live-minute-stepper button{justify-content:center;align-items:center;font-size:22px;font-weight:800;display:inline-flex}.live-minute-stepper input{text-align:center;font-size:18px;font-weight:850}.football-player-menu{width:100%;position:relative}.football-player-menu .football-picker span:last-child{color:#0000;font-size:0}.football-player-menu .football-picker span:last-child:after{content:"";border-right:2px solid var(--football-navy,#13221b);border-bottom:2px solid var(--football-navy,#13221b);width:8px;height:8px;display:inline-block;transform:rotate(45deg)}.football-player-menu-list{z-index:125;border:1px solid var(--football-border,#ddd9d3);border-radius:var(--radius-xl) var(--radius-xl) 0 0;background:var(--football-card,#fafafa);max-height:min(68vh,520px);padding:18px 16px max(22px, env(safe-area-inset-bottom));position:fixed;bottom:0;left:0;right:0;overflow:auto;box-shadow:0 -18px 52px #28201047}.football-player-menu-backdrop{z-index:120;background:#0f172a47;border:0;position:fixed;inset:0}.football-player-menu-list button{border:1px solid var(--football-border,#ddd9d3);border-radius:var(--radius-sm);background:var(--football-input,#fff);width:100%;min-height:54px;color:var(--football-navy,#13221b);text-align:left;margin-bottom:8px;padding:0 14px;font-size:15px;font-weight:850;box-shadow:0 1px 3px #28201014}@container app-viewport (width>=640px){.football-player-menu-list{width:min(520px,100vw - 32px);left:50%;right:auto;transform:translate(-50%)}}.football-player-menu-list button.active{background:var(--football-active-bg,var(--football-navy,#13221b));border-color:var(--football-navy,#13221b);color:#fff;box-shadow:0 8px 18px #2820103d}.live-event-sheet-actions{gap:var(--space-2);margin-top:var(--space-4);grid-template-columns:1fr 1fr;display:grid}.live-event-sheet-actions .settings-secondary-button,.live-event-sheet-actions .btn{border-radius:var(--radius-sm);justify-content:center;align-items:center;min-height:46px;display:inline-flex}.live-event-sheet-actions .settings-secondary-button{border:1px solid var(--football-border,#ddd9d3);background:var(--football-input,#fff);color:var(--football-navy,#13221b);box-shadow:0 1px 3px #28201014}.live-event-sheet-actions .btn-primary{border:1px solid var(--football-navy,#13221b);background:var(--football-active-bg,var(--football-navy,#13221b));color:#fff;box-shadow:0 4px 14px #28201047}.football-internal-share-card{text-align:left;width:min(100%,420px)}.football-internal-share-card .live-confirm-actions{justify-content:flex-end}.football-internal-share-card .live-confirm-yes,.football-internal-share-card .live-confirm-yes.success{background:var(--football-active-bg,var(--football-navy,#13221b));border-color:var(--football-navy,#13221b);box-shadow:0 5px 16px #2820103d}.football-internal-share-list{gap:var(--space-2);margin-top:var(--space-4);display:grid}.football-internal-share-list button{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--football-input,var(--color-surface));min-height:58px;color:var(--color-text);padding:var(--space-2) var(--space-3);align-items:center;gap:var(--space-2);text-align:left;cursor:pointer;grid-template-columns:minmax(0,1fr) 24px;display:grid}.football-internal-share-list button.active{border-color:var(--football-green-border);background:var(--football-green-soft)}.football-internal-share-list strong{font-size:var(--font-size-md);font-weight:900;display:block}.football-internal-share-list small{color:var(--color-text-muted);font-size:var(--font-size-xs);margin-top:2px;font-weight:800;display:block}.football-share-check{border:2px solid var(--color-border);background:var(--color-surface);border-radius:999px;width:20px;height:20px}.football-share-check.active{border-color:var(--football-success,var(--color-success));background:var(--football-success,var(--color-success));box-shadow:inset 0 0 0 4px var(--football-success-soft,var(--color-success-soft))}.football-module-page{padding-bottom:calc(88px + env(safe-area-inset-bottom,0px));min-height:calc(var(--app-viewport-height) - 72px);flex-direction:column;display:flex}.football-module-page>.football-tabbar{margin-top:auto}.football-tabbar{z-index:40;background:var(--football-card,var(--color-surface));border-top:1px solid var(--football-border,var(--color-border));padding:8px 4px calc(20px + env(safe-area-inset-bottom,0px));border-radius:0;align-items:stretch;margin:0;display:flex;position:fixed;bottom:0;left:0;right:0}@media (width>=768px) and (hover:hover) and (pointer:fine){#root .football-tabbar{left:50%;right:auto;bottom:max(16px, calc((100dvh - var(--app-preview-height)) / 2));width:var(--app-preview-width);border-radius:0 0 var(--app-preview-radius) var(--app-preview-radius);max-width:calc(100vw - 32px);transform:translate(-50%)}}.football-tab{min-width:0;color:var(--football-muted,var(--color-text-muted));letter-spacing:.01em;text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:3px;padding:4px 2px;font-size:9.5px;font-weight:600;text-decoration:none;display:flex}.football-tab.is-active{color:var(--football-green,var(--color-primary));font-weight:750}.football-tab svg{flex-shrink:0;display:block}.football-view-toggle{gap:var(--space-2);margin-bottom:var(--space-4);display:flex}.football-view-toggle .football-chip{flex:1}html[data-theme=dark] .football-sheet-field .select{background:#94a3b81f}html[data-theme=dark] .player-filter-level,html[data-theme=dark] .player-sort-segment{background:#ffffff14}html[data-theme=dark] .player-filter-level button.active,html[data-theme=dark] .player-sort-segment button.active{background:var(--color-primary);color:#fff;box-shadow:inset 0 0 0 2px #fff}html[data-theme=dark] .player-compact-stats>span.active{background:var(--color-primary);color:#fff;border-color:#fff}html[data-theme=dark] .football-button-png-icon,html[data-theme=dark] .football-inline-png-icon,html[data-theme=dark] .football-section-png-icon,html[data-theme=dark] .football-menu-png-icon,html[data-theme=dark] .football-stat-png-icon,html[data-theme=dark] .match-action-png-icon,html[data-theme=dark] .match-meta-png-icon,html[data-theme=dark] .live-calendar-png-icon,html[data-theme=dark] .live-clock-png-icon,html[data-theme=dark] .live-whistle-png-icon,html[data-theme=dark] .stats-medal-icon,html[data-theme=dark] .football-card-stat-icon,html[data-theme=dark] .football-card-group-icon,html[data-theme=dark] .football-goal-heading-icon{filter:drop-shadow(0 4px 9px color-mix(in srgb, var(--color-page) 72%, transparent))}html[data-theme=dark] .live-calendar-icon{background:#c85f52}html[data-theme=dark] .live-save-pill.dirty,html[data-theme=dark] .live-save-pill.error,html[data-theme=dark] .live-event-icon.red{color:var(--football-danger,var(--color-danger))}html[data-theme=dark] .penalty-warning,html[data-theme=dark] .live-event-icon.yellow{color:var(--football-warning,var(--color-warning))}html[data-theme=dark] .football-dashboard-page,html[data-theme=dark] .football-match-form-page,html[data-theme=dark] .live-setup-page,html[data-theme=dark] .live-match-page,html[data-theme=dark] .football-settings-page,html[data-theme=dark] .public-live-page{--football-navy:var(--app-primary);--football-navy-hover:var(--app-primary-hover);--football-steel:var(--app-primary-soft);--football-steel-text:var(--app-primary);--football-green:var(--app-primary);--football-green-soft:var(--app-primary-soft);--football-green-border:var(--app-primary-border);--football-card:var(--app-card);--football-input:var(--app-input);--football-muted:var(--app-muted);--football-border:var(--app-border);--football-active-bg:linear-gradient(135deg, var(--app-primary) 0%, #83aa9b 100%);--color-chart-primary:var(--app-primary);--color-chart-secondary:#83aa9b;--football-success:var(--color-success);--football-success-soft:var(--color-success-soft);--football-warning:var(--color-warning);--football-warning-soft:var(--color-warning-soft);--football-danger:var(--color-danger);--football-danger-soft:var(--color-danger-soft);--football-info:var(--color-info);--football-info-soft:var(--color-info-soft);background:radial-gradient(circle at top right, #c4d8ce29, transparent 34%), linear-gradient(180deg, #11150f 0%, var(--app-bg) 100%)}html[data-theme=dark] .football-dashboard-page .card,html[data-theme=dark] .football-live-card,html[data-theme=dark] .football-chart-card,html[data-theme=dark] .player-leaderboard-card,html[data-theme=dark] .match-card-compact,html[data-theme=dark] .match-info-card,html[data-theme=dark] .goal-events-card,html[data-theme=dark] .football-internal-share-card{border-color:var(--football-border);background:linear-gradient(#18202cf7,#111823f7);box-shadow:0 18px 42px #00000057,inset 0 1px #ffffff09}html[data-theme=dark] .football-btn--outline,html[data-theme=dark] .football-icon-btn,html[data-theme=dark] .football-share-button,html[data-theme=dark] .live-picker-button,html[data-theme=dark] .live-static-field,html[data-theme=dark] .football-picker,html[data-theme=dark] .football-player-menu-list button,html[data-theme=dark] .football-internal-share-list button,html[data-theme=dark] .match-input,html[data-theme=dark] .football-designed-select,html[data-theme=dark] .football-designed-date,html[data-theme=dark] .football-designed-time,html[data-theme=dark] .live-event-fields .match-input,html[data-theme=dark] .live-event-fields .football-designed-select,html[data-theme=dark] .goal-scorer-field .select,html[data-theme=dark] .goal-assist-field .select,html[data-theme=dark] .settings-form-grid input,html[data-theme=dark] .settings-form-grid select,html[data-theme=dark] .shared-match-team-select,html[data-theme=dark] .football-calendar-grid button,html[data-theme=dark] .live-period-stepper button,html[data-theme=dark] .live-period-stepper input,html[data-theme=dark] .football-player-menu-list{border-color:var(--football-border,var(--color-border));background:var(--football-input,var(--color-surface));color:#f6f0e8;box-shadow:inset 0 1px #ffffff09,0 12px 26px #0000002e}html[data-theme=dark] .football-live-match-button,html[data-theme=dark] .live-start-button,html[data-theme=dark] .football-sheet-apply-button,html[data-theme=dark] .football-internal-share-card .live-confirm-yes,html[data-theme=dark] .football-internal-share-card .live-confirm-yes.success{color:#07110c;background:linear-gradient(135deg,#7fbc91 0%,#4f8d69 100%);border-color:#92c9a76b;box-shadow:0 14px 28px #4f8d6947}html[data-theme=dark] .football-btn--primary,html[data-theme=dark] .football-chip.is-active,html[data-theme=dark] .football-player-menu-list button.active,html[data-theme=dark] .football-calendar-grid button.active,html[data-theme=dark] .match-location-toggle button.active,html[data-theme=dark] .live-period-count-field .match-location-toggle button.active,html[data-theme=dark] .football-internal-share-list button.active{border-color:var(--app-primary-border);background:var(--football-active-bg,var(--color-primary));color:#07101b;box-shadow:0 12px 28px #c4d8ce38}html[data-theme=dark] .live-event-team-toggle .football-chip.is-active{background:var(--football-active-bg,var(--football-navy,#13221b));color:#fff;border-color:#0000;box-shadow:0 3px 10px #2820104d}html[data-theme=dark] .football-sheet-filter-grid,html[data-theme=dark] .match-location-toggle,html[data-theme=dark] .live-period-count-field .match-location-toggle,html[data-theme=dark] .player-filter-level,html[data-theme=dark] .player-sort-segment{background:var(--app-primary-soft);border-color:var(--app-border)}html[data-theme=dark] .live-card-icon,html[data-theme=dark] .football-live-icon{background:var(--app-primary-soft);border-color:var(--app-primary-border);color:var(--app-primary)}html[data-theme=dark] .match-score-panel{background:#111827f5}html[data-theme=dark] .match-input,html[data-theme=dark] .football-designed-select,html[data-theme=dark] .football-designed-date,html[data-theme=dark] .live-period-count-field .match-location-toggle,html[data-theme=dark] .live-period-stepper button{background:var(--color-surface-soft)}html[data-theme=dark] .goal-scorer-field .select,html[data-theme=dark] .goal-assist-field .select{background:var(--color-surface)}html[data-theme=dark] .sticky-match-action-bar{background:#111827f5}html[data-theme=dark] .live-event-fields .match-input{background:#94a3b81f}html[data-theme=dark] .match-input,html[data-theme=dark] .football-designed-select,html[data-theme=dark] .football-designed-date,html[data-theme=dark] .football-designed-time,html[data-theme=dark] .goal-scorer-field .select,html[data-theme=dark] .goal-assist-field .select,html[data-theme=dark] .live-event-fields .match-input,html[data-theme=dark] .live-event-fields .football-designed-select,html[data-theme=dark] .football-picker,html[data-theme=dark] .football-player-menu-list,html[data-theme=dark] .football-player-menu-list button,html[data-theme=dark] .football-internal-share-list button{border-color:var(--football-border,#d8e6f529);background:var(--football-input,#1a2230);color:#f6f0e8}html[data-theme=dark] .football-designed-select,html[data-theme=dark] .live-event-fields .football-designed-select{background-image:url("data:image/svg+xml,%3Csvg width='20' height='20' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m6 9 6 6 6-6' stroke='%23f3f5ef' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:right 14px center;background-repeat:no-repeat;background-size:18px}html[data-theme=dark] .football-designed-time,html[data-theme=dark] .football-match-form-page input[type=time],html[data-theme=dark] .live-setup-page input[type=time],html[data-theme=dark] .live-match-page input[type=time],html[data-theme=dark] .football-settings-page input[type=time]{background-image:url("data:image/svg+xml,%3Csvg width='21' height='21' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='12' cy='12' r='8.5' fill='%232b3527' stroke='%239fd2b2' stroke-width='1.75'/%3E%3Cpath d='M12 7.5V12l3.2 2' stroke='%23f3f5ef' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:right 15px center;background-repeat:no-repeat;background-size:21px}html[data-theme=dark] .football-designed-date{background-image:url(/icons/calendar.png);background-position:right 15px center;background-repeat:no-repeat;background-size:21px}html[data-theme=dark] .football-player-menu-list button.active,html[data-theme=dark] .match-location-toggle button.active,html[data-theme=dark] .live-period-count-field .match-location-toggle button.active,html[data-theme=dark] .football-internal-share-list button.active{border-color:var(--app-primary-border);background:var(--football-active-bg,linear-gradient(135deg, var(--app-primary) 0%, #83aa9b 100%));color:#07101b}html[data-theme=dark] .football-player-menu .football-picker span:last-child:after{border-color:var(--app-primary)}html[data-theme=dark] .goal-event-card,html[data-theme=dark] .match-score-panel,html[data-theme=dark] .live-match-card,html[data-theme=dark] .live-clock-card,html[data-theme=dark] .live-feed-card,html[data-theme=dark] .football-internal-share-card{border-color:var(--football-border,#d8e6f529);background:linear-gradient(#18202cf7,#111823f7);box-shadow:0 18px 42px #00000057,inset 0 1px #ffffff09}.btn{border-radius:var(--radius-md);min-height:46px;padding:0 var(--space-4);font-size:var(--font-size-md);cursor:pointer;text-align:center;border:none;justify-content:center;align-items:center;font-weight:700;transition:all .2s;display:inline-flex}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background:var(--color-primary);color:var(--color-on-primary);border:none}.btn-primary:hover{background:var(--color-primary-hover)}.btn-secondary{background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border)}.btn-danger{background:var(--color-danger);color:var(--color-on-danger)}.btn-full{width:100%}.btn-small{height:52px;min-height:52px;font-size:var(--font-size-md);padding:0 var(--space-4);border-radius:999px;font-weight:700}.icon-btn,.profile-btn{border:1px solid var(--color-border);background:var(--color-surface);cursor:pointer;border-radius:999px;justify-content:center;align-items:center;min-width:42px;height:42px;text-decoration:none;display:inline-flex}.btn-filter-type{background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border)}.btn-filter-type.active{background:var(--color-primary);color:var(--color-on-primary);border-color:var(--color-primary)}.btn-filter-goal{background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border)}.btn-filter-goal.active{background:var(--color-accent);color:var(--color-on-primary);border-color:var(--color-border)}.btn-filter-assist{background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border)}.btn-filter-assist.active{background:var(--color-chart-secondary);color:var(--color-on-primary);border-color:var(--color-border)}.back-pill{border-radius:var(--radius-sm);border:1px solid var(--color-border);background:var(--color-surface);width:fit-content;height:46px;min-height:46px;color:var(--color-text);font-size:var(--font-size-md);box-shadow:var(--shadow-sm);white-space:nowrap;justify-content:center;align-items:center;gap:10px;padding:0 18px;font-weight:700;line-height:1;text-decoration:none;display:inline-flex}.primary-action{height:52px;min-height:52px;font-size:var(--font-size-md);border-radius:999px;justify-content:center;align-items:center;padding:0 28px;font-weight:700;line-height:1;display:inline-flex}.btn-filter-type,.btn-filter-goal,.btn-filter-assist{height:52px;min-height:52px;font-size:var(--font-size-md);border-radius:999px;font-weight:700}.input-group{gap:var(--space-2);flex-direction:column;display:flex}.label{font-size:var(--font-size-sm);color:var(--color-text);font-weight:600}.input,.select,.textarea,select{width:100%;min-height:var(--tap-height);box-sizing:border-box;border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text);font-size:var(--font-size-md);padding:0 var(--space-4)}.input[type=date],input[type=date],.input[type=time],input[type=time]{min-height:var(--tap-height);height:var(--tap-height);appearance:none;background-position:right 14px center;background-repeat:no-repeat;background-size:18px;padding-right:44px}.input[type=date],input[type=date]{background-image:url(/icons/calendar.png)}.input[type=time],input[type=time]{background-image:url("data:image/svg+xml,%3Csvg width='20' height='20' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='12' cy='12' r='8' fill='%23C8DDD5' stroke='%232D4A3E' stroke-width='1.9'/%3E%3Cpath d='M12 7.5v5l3.4 2' stroke='%2313221B' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")}input[type=date]::-webkit-calendar-picker-indicator{opacity:0;cursor:pointer}input[type=time]::-webkit-calendar-picker-indicator{opacity:0;cursor:pointer}select,.select{height:var(--tap-height);padding:0 44px 0 var(--space-4);appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg width='20' height='20' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m6 9 6 6 6-6' stroke='%23475369' stroke-width='2.3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:right 14px center;background-repeat:no-repeat;background-size:18px;font-weight:800}.textarea{min-height:140px;padding-top:var(--space-4);resize:vertical}.input:focus,.select:focus,.textarea:focus,select:focus{outline:2px solid var(--color-focus-ring);border-color:var(--color-primary)}html[data-theme=dark] .input,html[data-theme=dark] .select,html[data-theme=dark] .textarea,html[data-theme=dark] select{border-color:var(--color-border-strong);background-color:var(--color-surface-2);color:var(--color-text);box-shadow:var(--shadow-sm)}html[data-theme=dark] .input::placeholder,html[data-theme=dark] .textarea::placeholder{color:color-mix(in srgb, var(--color-text-muted) 68%, transparent)}html[data-theme=dark] .label{color:var(--color-text-muted)}.team-selector{gap:var(--space-xs);flex-direction:column;max-width:320px;display:flex}.team-selector span{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-muted)}.card-toggle-header{width:100%;color:var(--color-text);text-align:left;cursor:pointer;padding:var(--space-3) var(--space-2);background:0 0;border:none;outline:none;justify-content:space-between;align-items:flex-start;display:flex}.card-toggle-header:hover{background:0 0}.card-toggle-header>span{color:var(--color-text-muted);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold)}.player-sort-pills{gap:var(--space-md);margin-top:var(--space-2);margin-bottom:var(--space-2);padding-left:var(--space-1);display:flex}.player-sort-pill{padding:var(--space-3) var(--space-6);background:var(--color-surface);border:1px solid var(--color-border);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);cursor:pointer;border-radius:999px;color:var(--color-text)!important}.player-sort-pill.active{background:var(--color-primary)!important;color:#fff!important;border-color:var(--color-primary)!important}.player-sort-pill.active,.player-sort-pill.active *{color:#fff!important}.player-stats-list{gap:var(--space-1);flex-direction:column;display:flex}.player-stats-card{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-card);margin-bottom:var(--space-1);overflow:hidden}.player-stats-card-header{box-sizing:border-box;width:100%;min-height:64px;padding:var(--space-2) var(--space-2);color:var(--color-text);justify-content:space-between;align-items:center;gap:var(--space-2);text-align:left;cursor:pointer;padding-left:var(--space-2);padding-right:var(--space-2);background:0 0;border:none;grid-template-columns:1fr auto;column-gap:4px;display:grid}.player-stats-card-header:hover{background:var(--color-nav-hover)}.player-stats-card-header strong{padding-left:var(--space-3);font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);color:var(--color-text)}.player-stat-pills{gap:var(--space-3);margin-right:var(--space-1);justify-content:flex-end;align-items:center;gap:var(--space-2);padding-right:var(--space-1);flex-wrap:wrap;flex-shrink:0;display:flex}.player-stat-pill{background:var(--color-nav-hover);min-width:50px;color:var(--color-text-muted);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);text-align:center;white-space:nowrap;border-radius:999px;padding:10px 8px}.player-stat-pill.strong{background:var(--color-primary)!important;color:#fff!important}.player-stat-pill.strong,.player-stat-pill.strong *{color:#fff!important}.player-stats-chart{margin-top:var(--space-3);margin-bottom:var(--space-3);padding:var(--space-4) var(--space-5);border-top:1px solid var(--color-border)}.card-toggle-header:focus,.card-toggle-header:focus-visible{box-shadow:none;outline:none}.card-toggle-header>div{padding-left:var(--space-sm)}.card-toggle-header .card-subtitle{margin-top:var(--space-md)}.card-toggle-header:active{box-shadow:none;outline:none}.player-name{font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);color:var(--color-text);text-overflow:ellipsis;white-space:nowrap;padding-left:6px;display:block;overflow:hidden}.player-stats-header{flex-direction:column;gap:12px;display:flex}.player-stats-description{margin-bottom:10px}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--space-5);box-shadow:var(--shadow-sm)}.card-clickable{cursor:pointer}.card-title{margin:0 0 var(--space-2);font-size:var(--font-size-lg);font-weight:700}.card-subtitle{color:var(--color-text-muted);font-size:var(--font-size-sm);margin:0}.stats-grid{gap:var(--space-3);grid-template-columns:repeat(3,1fr);display:grid}.stat-box{background:var(--color-surface-soft);border-radius:var(--radius-md);padding:var(--space-3);text-align:center}.stat-value{font-size:var(--font-size-xl);font-weight:800;display:block}.stat-label{font-size:var(--font-size-xs);color:var(--color-text-muted);margin-top:4px;display:block}.set-list{border-top:1px solid var(--color-border);padding-top:var(--space-3);margin-top:var(--space-3)}.set-line{justify-content:space-between;gap:var(--space-3);padding:var(--space-2) 0;font-size:var(--font-size-sm);display:flex}.card-actions{gap:var(--space-2);margin-top:var(--space-3);display:flex}.football-settings-page{max-width:820px;padding:42px 28px var(--space-6);margin:0 auto}.football-settings-hero{margin-bottom:var(--space-5)}.football-settings-hero h1{color:var(--color-text);margin:0;font-size:26px;font-weight:900;line-height:1.05}.football-settings-hero p{color:var(--color-text-muted);font-size:var(--font-size-sm);margin:5px 0 0}.settings-card{background:var(--golf-card,var(--football-card,#fafafa));border:1px solid var(--color-border);border-radius:var(--radius-xl);margin-bottom:var(--space-3);box-shadow:var(--shadow-sm);padding:18px}.settings-section-header{justify-content:space-between;align-items:flex-start;gap:var(--space-3);margin-bottom:var(--space-3);display:flex}.settings-section-header>div:first-child{align-items:center;gap:var(--space-2);min-width:0;display:flex}.settings-section-icon{width:38px;height:38px;color:var(--football-steel-text,var(--color-primary));background:0 0;border-radius:0;flex:none;justify-content:center;align-items:center;display:inline-flex}.settings-section-icon img{object-fit:contain;width:30px;height:30px;display:block}.settings-card h2{color:var(--color-text);font-size:var(--font-size-lg);margin:0;line-height:1.1}.settings-section-header p,.settings-empty{color:var(--color-text-muted);font-size:var(--font-size-sm);margin:4px 0 0;font-weight:700}.settings-header-actions{justify-content:flex-end;align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.settings-action-button,.settings-form-grid button{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);min-height:42px;color:var(--color-text);font-size:var(--font-size-sm);cursor:pointer;white-space:nowrap;justify-content:center;align-items:center;gap:7px;padding:0 16px;font-weight:900;display:inline-flex}.settings-action-button.primary,.settings-form-grid button{background:var(--football-active-bg,var(--color-primary));color:var(--color-on-primary);border-color:#0000}.settings-action-button.secondary{background:var(--color-surface);border-color:var(--color-border);color:var(--color-text)}.settings-action-button.filter{border-color:var(--football-green-border,#bbf7d0);background:var(--football-green-soft,#dcfce7);color:var(--football-green,#166534)}.settings-action-button:disabled{opacity:.5;cursor:not-allowed}.settings-filter-menu{margin:0 0 var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--football-card,var(--color-surface));padding:14px}.settings-filter-menu>div:first-child{justify-content:space-between;align-items:center;gap:var(--space-2);margin-bottom:var(--space-2);display:flex}.settings-filter-menu strong{color:var(--color-text);font-size:var(--font-size-sm);font-weight:900}.settings-filter-menu>div:first-child button{border-radius:var(--radius-sm);background:var(--color-surface-soft);min-height:30px;color:var(--color-text-muted);font-size:var(--font-size-xs);cursor:pointer;border:0;padding:0 10px;font-weight:900}.settings-filter-menu>div:first-child button:disabled{opacity:.45;cursor:not-allowed}.settings-filter-options{gap:var(--space-2);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.settings-filter-options button{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--football-input,#fff);min-height:38px;color:var(--color-text);font-size:var(--font-size-sm);cursor:pointer;padding:0 10px;font-weight:900}.settings-filter-options button.active{background:var(--football-active-bg,#dcfce7);color:#fff;border-color:#0000;box-shadow:0 3px 10px #28201040}html[data-theme=dark] .settings-action-button.filter,html[data-theme=dark] .settings-filter-options button.active{color:#f0fdf4;background:#166534b8;border-color:#86efac}html[data-theme=dark] .settings-filter-options button{background:#94a3b81f}.settings-form-grid{gap:var(--space-2);margin-bottom:var(--space-3);background:0 0;border:0;grid-template-columns:repeat(3,minmax(0,1fr)) auto;padding:0;display:grid}.settings-form-grid.player-form-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.settings-form-grid.player-form-grid button{grid-column:span 2}.settings-form-grid input,.settings-form-grid select{box-sizing:border-box;border:1px solid var(--color-border);border-radius:var(--radius-md);background-color:var(--football-input,#fff);min-width:0;height:46px;min-height:46px;color:var(--color-text);font-size:var(--font-size-sm);padding:0 12px;font-weight:700;line-height:46px;box-shadow:0 1px 2px #2820100a}.settings-form-grid select{appearance:none}.settings-form-grid select.football-designed-select{height:auto;min-height:56px;font-size:var(--font-size-md);padding:13px 42px 13px 16px;font-weight:700;line-height:1.2}.settings-search-grid{grid-template-columns:minmax(0,1fr);position:relative}.settings-search-grid input{padding-left:42px}.settings-search-icon{z-index:1;color:var(--football-steel-text,var(--app-primary));pointer-events:none;position:absolute;top:50%;left:14px;transform:translateY(-50%)}.settings-search-icon.png{object-fit:contain;width:20px;height:20px}html[data-theme=dark] .settings-form-grid input,html[data-theme=dark] .settings-form-grid select{background-color:#94a3b81f}.settings-secondary-button{background:var(--color-surface)!important;border-color:var(--color-border)!important;color:var(--color-text)!important}.settings-list{gap:var(--space-2);flex-direction:column;display:flex}.settings-list.compact{margin-top:var(--space-2)}.settings-list-row{align-items:center;gap:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--golf-card,var(--football-input,#fff));width:100%;color:var(--color-text);text-align:left;cursor:pointer;grid-template-columns:minmax(0,1fr) auto;padding:13px;display:grid}div.settings-list-row{cursor:default}.settings-list-row.is-selected{border-color:var(--color-primary);background:var(--football-steel,var(--app-primary-soft))}.settings-list-row strong{text-overflow:ellipsis;white-space:nowrap;color:var(--color-text);font-size:var(--font-size-md);line-height:1.2;display:block;overflow:hidden}.settings-list-row span{color:var(--color-text-muted);font-size:var(--font-size-sm);margin-top:3px;font-weight:700;display:block}.settings-status-pill{white-space:nowrap;background:#dcfce7;border-radius:999px;justify-content:center;align-items:center;gap:5px;min-height:28px;padding:0 9px;color:#15803d!important;font-size:var(--font-size-xs)!important;font-weight:900!important;display:inline-flex!important}.shared-match-row{align-items:flex-start}.shared-match-row.is-imported{background:var(--football-steel,var(--app-primary-soft))}.shared-match-meta{flex-wrap:wrap;gap:6px;margin-top:7px;display:flex}.shared-match-meta span{background:var(--color-surface-soft);width:auto;color:var(--color-text-muted);font-size:var(--font-size-xs);border-radius:999px;align-items:center;gap:4px;margin:0;padding:4px 8px;font-weight:900;display:inline-flex}.shared-match-meta img{object-fit:contain;width:14px;height:14px;display:block}.shared-match-imported-pill{align-self:center}.shared-match-actions{align-items:center;gap:var(--space-2);flex-wrap:wrap;justify-content:flex-end;display:flex}.shared-match-actions select,.shared-match-team-select{border:1px solid var(--color-border);border-radius:var(--radius-md);min-width:160px;min-height:56px;color:var(--color-text);font-size:var(--font-size-md);background-color:#eef4f7;padding:10px 42px 10px 12px;font-weight:900}html[data-theme=dark] .shared-match-actions select{background-color:#94a3b81f}select.football-designed-select,.select.football-designed-select,.settings-form-grid select.football-designed-select,.shared-match-team-select.football-designed-select{box-sizing:border-box;border:1px solid var(--color-border);border-radius:var(--radius-sm);background-color:var(--football-input,#fff);width:100%;height:auto;min-height:56px;color:var(--color-text);font-size:var(--font-size-md);appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg width='20' height='20' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m6 9 6 6 6-6' stroke='%23263b35' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:right 14px center;background-repeat:no-repeat;background-size:18px;padding:13px 42px 13px 16px;font-weight:700;line-height:1.2;box-shadow:0 1px 2px #2820100a}.input.football-designed-date{background-color:var(--football-input,#fff);background-image:url(/icons/calendar.png);background-position:right 15px center;background-repeat:no-repeat;background-size:21px;height:auto;min-height:56px;padding:13px 48px 13px 16px;font-weight:700;box-shadow:0 1px 2px #2820100a}.input.football-designed-date::-webkit-calendar-picker-indicator{opacity:0}html[data-theme=dark] select.football-designed-select,html[data-theme=dark] .select.football-designed-select,html[data-theme=dark] .settings-form-grid select.football-designed-select,html[data-theme=dark] .shared-match-team-select.football-designed-select,html[data-theme=dark] .input.football-designed-date{background-color:#94a3b81f}.player-settings-row{grid-template-columns:36px minmax(0,1fr)}.player-position-badge{background:0 0;border-radius:0;justify-content:center;align-items:center;width:34px;height:34px;color:var(--color-primary)!important;font-size:var(--font-size-sm)!important;margin:0!important;font-weight:900!important;display:inline-flex!important}.player-position-badge img{object-fit:contain;width:30px;height:30px;display:block}.player-position-badge.keeper{color:#1d4ed8!important}.player-position-badge.forsvar{color:#15803d!important}.player-position-badge.midtbane{color:#a16207!important}.player-position-badge.spiss{color:#b91c1c!important}.player-position-badge.unknown{color:var(--color-text-muted)!important}@container app-viewport (width<=760px){.football-settings-page{padding:30px 24px var(--space-6)}.settings-section-header{flex-direction:column}.settings-header-actions{justify-content:flex-start;width:100%}.settings-form-grid,.settings-form-grid.player-form-grid{grid-template-columns:1fr}.settings-form-grid.player-form-grid button{grid-column:auto}.settings-filter-options{grid-template-columns:repeat(2,minmax(0,1fr))}.shared-match-actions{justify-content:flex-start;width:100%}.shared-match-row{grid-template-columns:1fr}.shared-match-actions select{width:100%}.shared-match-actions button{justify-content:center;width:100%}}html[data-theme=dark] .settings-section,html[data-theme=dark] .settings-list-row,html[data-theme=dark] .shared-match-row{border-color:var(--football-border,#d8e6f529);background:linear-gradient(#18202cf7,#111823f7);box-shadow:0 16px 36px #00000047,inset 0 1px #ffffff09}html[data-theme=dark] .settings-form-grid input,html[data-theme=dark] .settings-form-grid select,html[data-theme=dark] select.football-designed-select,html[data-theme=dark] .select.football-designed-select,html[data-theme=dark] .settings-form-grid select.football-designed-select,html[data-theme=dark] .shared-match-team-select.football-designed-select,html[data-theme=dark] .input.football-designed-date,html[data-theme=dark] .shared-match-actions select{border-color:var(--football-border,#d8e6f529);background-color:var(--football-input,#1a2230);color:#f6f0e8;box-shadow:inset 0 1px #ffffff09,0 12px 26px #0000002e}html[data-theme=dark] .settings-action-button.filter,html[data-theme=dark] .settings-filter-options button.active,html[data-theme=dark] .settings-list-row.is-selected,html[data-theme=dark] .shared-match-row.is-imported{border-color:var(--app-primary-border);background:var(--app-primary-soft);color:var(--app-primary)}html[data-theme=dark] .settings-filter-options button,html[data-theme=dark] .shared-match-meta span{border-color:var(--app-border);color:#f6f0e8b8;background:#ffffff0e}html[data-theme=dark] .settings-status-pill{background:#92c9a724;color:#92c9a7!important}.dublin-trip-page,.dublin-public-page{--dublin-ink:#15211c;--dublin-muted:#66736d;--dublin-green:var(--app-primary);--dublin-soft:#eef6f0;--dublin-line:#25372e24;--dublin-gold:#b88435}.dublin-topbar{margin-bottom:var(--page-topbar-gap)}.dublin-back-link{border:1px solid var(--color-border);background:var(--color-surface);min-height:38px;color:var(--color-text);font-size:var(--font-size-sm);border-radius:14px;justify-content:center;align-items:center;gap:6px;padding:0 13px;font-weight:900;text-decoration:none;display:inline-flex;box-shadow:0 2px 7px #2d4a3e0f}.dublin-hero,.dublin-public-hero{color:#fff;background:#123326;border-radius:8px;align-items:end;min-height:280px;display:grid;position:relative;overflow:hidden}.dublin-hero img,.dublin-public-hero img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.dublin-hero:after,.dublin-public-hero:after{content:"";background:linear-gradient(90deg,#07120dc7,#07120d33),linear-gradient(#0000 44%,#07120d85);position:absolute;inset:0}.dublin-hero-content,.dublin-public-hero>div{z-index:1;padding:28px;position:relative}.dublin-hero-content p,.dublin-public-hero p,.dublin-day-card header p,.dublin-info-card p{letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:.78rem;font-weight:900}.dublin-hero-content p,.dublin-public-hero p{color:#f1c06d}.dublin-hero-content h1,.dublin-public-hero h1{letter-spacing:0;max-width:620px;margin:6px 0 8px;font-size:clamp(2.3rem,12vw,4.7rem);line-height:.96}.dublin-hero-content span{color:#ffffffdb;font-weight:800;line-height:1.45;display:block}.dublin-tabs{z-index:20;border:1px solid var(--color-border);background:var(--color-surface);box-shadow:var(--shadow-sm);border-radius:8px;grid-template-columns:repeat(3,1fr);margin:16px 0;padding:5px;display:grid;position:sticky;top:72px}.dublin-tabs button{min-height:42px;color:var(--color-text);cursor:pointer;background:0 0;border:0;border-radius:6px;font-weight:500}.dublin-tabs button.active{background:var(--dublin-green);color:#fff}.dublin-day-stack,.dublin-public-program{gap:16px;display:grid}.dublin-day-card{border:1px solid var(--color-border);background:var(--color-surface);box-shadow:var(--shadow-sm);border-radius:8px;overflow:hidden}.dublin-day-card header{border-bottom:1px solid var(--color-border);background:linear-gradient(135deg,#19623f1f,#b884351a);justify-content:space-between;align-items:baseline;gap:14px;padding:18px;display:flex}.dublin-day-card header p{color:var(--dublin-green)}.dublin-day-card header h2{color:var(--color-text);margin:0;font-size:1.55rem}.dublin-event-list{display:grid}.dublin-event{text-align:left;border-top:1px solid var(--color-border);width:100%;color:inherit;background:0 0;border-bottom:0;border-left:0;border-right:0;grid-template-columns:42px minmax(0,1fr) 24px;gap:12px;padding:16px 18px;display:grid}.dublin-event:first-child{border-top:0}.dublin-event.highlight{background:#19623f14}.dublin-event-button{cursor:pointer}.dublin-event-button:hover{background:#19623f1f}.dublin-event-icon{width:42px;height:42px;color:var(--dublin-green);background:var(--dublin-soft);border-radius:50%;justify-content:center;align-items:center;display:inline-flex}.dublin-event-icon.image-icon{background:0 0}.dublin-event-icon.image-icon img{object-fit:contain;width:32px;height:32px;display:block}.dublin-event-body{min-width:0}.dublin-event-body time{color:var(--dublin-gold);margin-bottom:4px;font-size:.82rem;font-weight:950;display:inline-flex}.dublin-event-body h3{color:var(--color-text);margin:0;font-size:1.05rem;line-height:1.25}.dublin-event-action{color:var(--dublin-green);opacity:.8;place-self:center end}.dublin-event-body p,.dublin-event-body a{color:var(--color-text-muted);margin:7px 0 0;line-height:1.45}.dublin-event-body a{color:var(--dublin-green);align-items:center;gap:5px;font-weight:900;text-decoration:none;display:inline-flex}.dublin-location{align-items:flex-start;gap:5px;display:flex}.dublin-location svg{flex:none;margin-top:3px}.dublin-info-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.dublin-info-card{border:1px solid var(--color-border);background:var(--color-surface);min-height:108px;color:var(--color-text);border-radius:8px;grid-template-columns:42px minmax(0,1fr) 18px;align-items:center;gap:12px;padding:16px;text-decoration:none;display:grid}.dublin-info-card>span,.dublin-share-icon{background:var(--dublin-soft);width:42px;height:42px;color:var(--dublin-green);border-radius:50%;justify-content:center;align-items:center;display:inline-flex}.dublin-info-card>span.image-icon{background:0 0}.dublin-info-card>span.image-icon img{object-fit:contain;width:34px;height:34px;display:block}.dublin-info-card strong{margin-top:4px;line-height:1.3;display:block}.dublin-modal-backdrop{z-index:120;background:#09120e94;justify-content:center;align-items:flex-end;padding:18px;display:flex;position:fixed;inset:0}.dublin-modal{border:1px solid var(--color-border);background:var(--color-surface);width:min(520px,100%);max-height:min(78vh,680px);box-shadow:var(--shadow-md);border-radius:8px;padding:22px;position:relative;overflow:auto}.dublin-modal-close{width:38px;height:38px;color:var(--color-text);background:var(--color-surface-soft);cursor:pointer;border:0;border-radius:50%;justify-content:center;align-items:center;display:inline-flex;position:absolute;top:14px;right:14px}.dublin-modal>div:first-of-type{padding-right:48px}.dublin-modal>div:first-of-type p{color:var(--dublin-gold);margin:0 0 6px;font-size:.82rem;font-weight:950}.dublin-modal h2{color:var(--color-text);margin:0;font-size:1.45rem;line-height:1.15}.dublin-modal-details{gap:12px;margin:18px 0 0;display:grid}.dublin-modal-details div{background:var(--color-surface-soft);border-radius:8px;padding:12px}.dublin-modal-details dt{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;margin:0 0 4px;font-size:.78rem;font-weight:900}.dublin-modal-details dd{color:var(--color-text);margin:0;font-weight:800;line-height:1.4}.dublin-modal-links{gap:10px;margin-top:18px;display:grid}.dublin-modal-links a{background:var(--dublin-green);border-radius:8px;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:10px 14px;font-weight:900;text-decoration:none;display:inline-flex;color:#fff!important}.dublin-modal-links a:visited,.dublin-modal-links a:hover,.dublin-modal-links a:focus{background:var(--dublin-green);color:#fff!important}.dublin-modal-links a svg{color:#fff;stroke:currentColor}.dublin-program-share{border:1px solid var(--color-border);background:var(--color-surface);box-shadow:var(--shadow-sm);border-radius:8px;grid-template-columns:minmax(0,1fr) 46px;align-items:center;margin-bottom:16px;display:grid;overflow:hidden}.dublin-program-share span{min-width:0;color:var(--color-text-muted);text-overflow:ellipsis;white-space:nowrap;padding:13px 14px;font-size:.9rem;font-weight:800;overflow:hidden}.dublin-program-share button{border:0;border-left:1px solid var(--color-border);background:var(--app-primary);color:#fff;cursor:pointer;justify-content:center;align-items:center;width:46px;height:46px;display:inline-flex}.dublin-packing-list{gap:12px;display:grid}.dublin-packing-card{border:1px solid var(--color-border);background:var(--color-surface);box-shadow:var(--shadow-sm);border-radius:8px;overflow:hidden}.dublin-packing-header{width:100%;min-height:64px;color:var(--color-text);text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:minmax(0,1fr) 24px;align-items:center;gap:12px;padding:14px 16px;display:grid}.dublin-packing-header span{gap:3px;min-width:0;display:grid}.dublin-packing-header strong{font-size:1.05rem;font-weight:950}.dublin-packing-header small{color:var(--color-text-muted);font-size:.82rem;font-weight:850}.dublin-packing-header svg{color:var(--dublin-green);transition:transform .18s}.dublin-packing-header svg.open{transform:rotate(180deg)}.dublin-packing-items{border-top:1px solid var(--color-border);display:grid}.dublin-packing-item{border-top:1px solid var(--color-border);min-height:48px;color:var(--color-text);grid-template-columns:22px minmax(0,1fr);align-items:center;gap:12px;padding:12px 16px;font-weight:850;display:grid}.dublin-packing-item:first-child{border-top:0}.dublin-packing-item input{width:20px;height:20px;accent-color:var(--dublin-green)}.dublin-packing-item input:checked+span{color:var(--color-text-muted);text-decoration:line-through}.dublin-share-card{border:1px solid var(--color-border);background:var(--color-surface);box-shadow:var(--shadow-sm);border-radius:8px;gap:14px;padding:22px;display:grid}.dublin-share-card h2,.dublin-share-card p{margin:0}.dublin-share-card p{color:var(--color-text-muted);line-height:1.5}.dublin-public-link{background:var(--color-surface-soft);color:var(--color-text);overflow-wrap:anywhere;border-radius:8px;padding:12px;font-size:.9rem;font-weight:800}.dublin-public-page{min-height:var(--app-viewport-height);background:var(--color-bg);padding:16px 16px 44px}.dublin-public-hero,.dublin-public-program{width:min(760px,100%);margin:0 auto}.dublin-public-program{margin-top:16px}.dublin-public-program .dublin-day-stack{width:100%}@container app-viewport (width<=640px){.dublin-trip-page{padding-left:12px;padding-right:12px}.dublin-hero,.dublin-public-hero{min-height:235px}.dublin-hero-content,.dublin-public-hero>div{padding:22px}.dublin-day-card header,.dublin-info-grid{grid-template-columns:1fr}.dublin-day-card header{flex-direction:column;align-items:flex-start;gap:4px}.dublin-event{grid-template-columns:36px minmax(0,1fr) 20px;padding:15px}.dublin-event-icon{width:36px;height:36px}.dublin-event-icon.image-icon img{width:30px;height:30px}.dublin-info-card{grid-template-columns:42px minmax(0,1fr) 18px}}.running-page{--running-accent:var(--color-primary);--running-soft:var(--color-surface-soft)}.running-form-page{max-width:860px}.running-hero-card,.running-detail-hero{align-items:center;gap:var(--space-5);grid-template-columns:minmax(0,1fr) auto;display:grid}.running-detail-hero{padding:calc(var(--space-5) + 4px)}.running-hero-card h1,.running-detail-hero h1,.running-section-heading h1,.running-section-heading h2{color:var(--color-text);margin:0;font-size:30px;font-weight:900;line-height:1.05}.running-section-heading h2{font-size:var(--font-size-lg)}.running-section-heading.compact{margin-bottom:0}.running-heading-icon{object-fit:contain;flex:none;width:30px;height:30px;display:block}.running-hero-card p,.running-detail-hero p,.running-section-heading p{color:var(--color-text-muted);font-size:var(--font-size-sm);margin:6px 0 0;font-weight:700}.running-eyebrow{color:var(--color-primary);font-size:var(--font-size-xs);text-transform:uppercase;margin-bottom:6px;font-weight:900;display:inline-flex}.running-summary-panel{gap:var(--space-3);display:grid}.running-summary-grid,.running-kpi-grid{gap:var(--space-2);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.running-kpi-card{aspect-ratio:1;border:1px solid var(--color-border);background:var(--color-surface-soft);padding:var(--space-3);text-align:center;border-radius:14px;align-content:space-between;justify-items:center;gap:8px;display:grid}.running-kpi-card span{color:var(--color-text-muted);font-size:var(--font-size-xs);text-transform:uppercase;font-weight:900}.running-kpi-card strong{color:var(--color-text);font-size:25px;font-weight:900;line-height:1.05}.running-kpi-icon{border-radius:var(--radius-md);background:var(--color-surface-soft);width:34px;height:34px;color:var(--running-accent);justify-content:center;align-items:center;display:inline-flex}.running-period-toggle,.running-chart-toggle{border:1px solid var(--color-border);background:var(--color-surface);box-shadow:var(--shadow-sm);border-radius:8px;margin:0;overflow:hidden}.running-period-toggle.golf-leaderboard-toggle button.active,.running-chart-toggle.golf-leaderboard-toggle button.active{border-radius:5px;box-shadow:0 6px 16px #2d4a3e24}.running-card-heading-row,.running-section-heading{justify-content:space-between;align-items:flex-start;gap:var(--space-3);margin-bottom:var(--space-3);display:flex}.running-card-heading-row h2{margin-bottom:4px}.running-type-grid,.running-chip-row{gap:var(--space-2);flex-wrap:wrap;display:flex}.running-type-grid button,.running-chip-row button{border:1px solid var(--color-border);background:var(--color-surface);min-height:42px;color:var(--color-text);font-size:var(--font-size-sm);cursor:pointer;border-radius:999px;padding:0 15px;font-weight:900}.running-type-grid button{border-radius:var(--radius-md);flex:150px;min-height:52px}.running-type-grid button.active,.running-chip-row button.active{border-color:var(--running-accent);background:var(--running-accent);color:#fff}.running-chart-container{height:250px}.running-chart-tooltip{border:1px solid var(--color-border)}.running-section-chevron{color:var(--color-text-muted);transition:transform .16s}.running-section-chevron.open{transform:rotate(180deg)}.running-card-toggle{width:100%;color:var(--color-text);justify-content:space-between;align-items:center;gap:var(--space-3);text-align:left;cursor:pointer;background:0 0;border:0;padding:0;display:flex}.running-card-toggle strong,.running-card-toggle small{display:block}.running-card-toggle strong{color:var(--color-text);font-size:var(--font-size-lg);font-weight:900}.running-card-toggle small,.running-toggle-copy{color:var(--color-text-muted);font-size:var(--font-size-sm);margin-top:3px;font-weight:800}.running-table-wrap{width:100%;margin-top:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);overflow-x:auto}.running-data-table{border-collapse:collapse;background:var(--color-surface);width:100%;min-width:620px}.running-compact-table{min-width:320px}.running-data-table th,.running-data-table td{border-bottom:1px solid var(--color-border);color:var(--color-text);text-align:left;font-size:var(--font-size-sm);padding:14px 16px;font-weight:800}.running-data-table th{color:var(--color-text-muted);font-size:var(--font-size-xs);text-transform:uppercase}.running-data-table tbody tr:last-child td{border-bottom:0}.running-data-table a{color:var(--color-primary);font-weight:900}.running-type-badge{min-height:28px;font-size:var(--font-size-xs);border-radius:999px;justify-content:center;align-items:center;padding:0 10px;font-weight:900;display:inline-flex}.running-type-badge.long{color:#15803d;background:#22c55e24}.running-type-badge.tempo{color:#a16207;background:#f59e0b29}.running-type-badge.interval{color:#1d4ed8;background:#3b82f624}.running-entry-card{gap:var(--space-3);display:grid}.running-form-grid{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.running-form-full{grid-column:1/-1}.running-input{background:#fff;font-weight:800}.running-icon-field{position:relative}.running-icon-field svg{color:var(--color-primary);position:absolute;bottom:18px;left:14px}.running-icon-field .input{padding-left:42px}.running-stepper-grid,.running-calculated-grid{gap:var(--space-2);margin-top:var(--space-2);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.running-calculated-grid,.running-stepper-grid.distance{grid-template-columns:repeat(2,minmax(0,1fr))}.running-metric-stepper-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.running-time-sheet{max-width:620px}.running-time-wheel-picker{grid-template-columns:repeat(3,minmax(0,1fr))}.running-stepper{gap:var(--space-2);display:grid}.running-stepper>span{color:var(--color-text-muted);font-size:var(--font-size-xs);text-transform:uppercase;margin-bottom:8px;font-weight:900;display:block}.running-stepper-control{border:1px solid var(--color-border);background:#fff;border-radius:999px;grid-template-columns:38px minmax(42px,1fr) 38px;align-items:center;min-height:42px;display:grid;overflow:hidden}.running-stepper button{width:100%;height:100%;color:var(--color-text);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;display:inline-flex}.running-stepper-value{background:0 0;border:0;grid-template-columns:minmax(0,1fr) auto;align-items:center;min-width:0;height:100%;padding:0 8px;display:grid}.running-stepper-value input{width:100%;min-width:0;color:var(--color-text);text-align:center;font-size:var(--font-size-md);background:0 0;border:0;font-weight:900}.running-stepper-value input:focus{outline:0}.running-stepper small{color:var(--color-text-muted);font-size:var(--font-size-xs);margin-left:2px}.running-date-picker{position:relative}.running-picker-button{border:1px solid var(--color-border);border-radius:var(--radius-md);width:100%;min-height:56px;color:var(--color-text);justify-content:space-between;align-items:center;gap:var(--space-3);text-align:left;cursor:pointer;background:#fff;padding:10px 12px;display:flex}.running-picker-button img{object-fit:contain;width:21px;height:21px;display:block}.running-picker-button small,.running-picker-button strong{display:block}.running-picker-button small{color:var(--color-text-muted);font-size:var(--font-size-xs);text-transform:uppercase;font-weight:900}.running-picker-button strong{color:var(--color-text);font-size:var(--font-size-md);margin-top:2px;font-weight:900}.running-calendar-card{top:calc(100% + var(--space-2));z-index:20;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);width:min(340px,100vw - 40px);padding:var(--space-3);box-shadow:var(--shadow-md);position:absolute;left:0}.running-calendar-header{align-items:center;gap:var(--space-2);margin-bottom:var(--space-2);grid-template-columns:38px 1fr 38px;display:grid}.running-calendar-header strong{color:var(--color-text);text-align:center;text-transform:capitalize}.running-calendar-header button,.running-calendar-grid button{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface-soft);color:var(--color-text);cursor:pointer}.running-calendar-header button{justify-content:center;align-items:center;width:38px;height:38px;display:inline-flex}.running-calendar-weekdays,.running-calendar-grid{grid-template-columns:repeat(7,1fr);gap:6px;display:grid}.running-calendar-weekdays span{color:var(--color-text-muted);text-align:center;font-size:var(--font-size-xs);font-weight:900}.running-calendar-grid button,.running-calendar-grid span{height:36px}.running-calendar-grid button.active{border-color:var(--running-accent);background:var(--running-accent);color:#fff}.running-interval-panel{gap:var(--space-3);margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--color-border);display:grid}.running-interval-list{gap:var(--space-2);display:grid}.running-interval-row{align-items:center;gap:var(--space-2);padding:var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-soft);grid-template-columns:34px minmax(0,1fr) minmax(0,1fr) 118px;display:grid}.running-interval-row>strong{background:var(--color-primary);color:#fff;width:30px;height:30px;font-size:var(--font-size-sm);border-radius:999px;justify-content:center;align-items:center;font-weight:900;display:inline-flex}.running-interval-preview{justify-items:end;gap:3px;display:grid}.running-interval-preview span{color:var(--color-text);font-size:var(--font-size-md);font-weight:900}.running-interval-preview small{color:var(--color-text-muted);font-size:var(--font-size-xs);font-weight:900}.running-save-button{width:100%;min-height:54px}.running-save-button:disabled{opacity:.55;cursor:not-allowed}.running-error{border-radius:var(--radius-md);color:#b91c1c;padding:var(--space-3);background:#f871711f;border:1px solid #b91c1c47;margin:0;font-weight:900}.running-detail-side{justify-items:end;gap:var(--space-2);display:grid}.running-detail-side>strong{color:var(--color-text);white-space:nowrap;font-size:36px;font-weight:900}.running-detail-actions{gap:var(--space-2);display:flex}.running-detail-actions .icon-btn.danger{color:#b91c1c}.running-detail-actions .icon-btn img{object-fit:contain;width:19px;height:19px;display:block}.running-detail-metric-card{align-content:space-between;justify-items:start;gap:var(--space-2);min-height:118px;display:grid}.running-detail-metric-card .running-kpi-icon{background:var(--color-surface-soft)}.running-detail-metric-card .running-kpi-icon img{object-fit:contain;width:21px;height:21px;display:block}.running-detail-metric-card span:not(.running-kpi-icon){color:var(--color-text-muted);font-size:var(--font-size-xs);text-transform:uppercase;font-weight:900}.running-detail-metric-card strong{color:var(--color-text);font-size:24px;font-weight:900;line-height:1.05}html[data-theme=dark] .running-input,html[data-theme=dark] .running-picker-button,html[data-theme=dark] .running-kpi-card,html[data-theme=dark] .running-stepper,html[data-theme=dark] .running-stepper-control,html[data-theme=dark] .running-stepper-value,html[data-theme=dark] .running-calendar-header button,html[data-theme=dark] .running-calendar-grid button{background:#ffffff13}html[data-theme=dark] .running-type-badge.long{color:#86efac}html[data-theme=dark] .running-type-badge.tempo{color:#facc15}html[data-theme=dark] .running-type-badge.interval{color:#93c5fd}@container app-viewport (width<=760px){.running-hero-card,.running-detail-hero,.running-card-heading-row{grid-template-columns:1fr;display:grid}.running-summary-grid,.running-kpi-grid,.running-form-grid,.running-stepper-grid{grid-template-columns:1fr}.running-calculated-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.running-stepper-grid.distance,.running-metric-stepper-grid,.running-time-wheel-picker,.running-interval-row{grid-template-columns:1fr}.running-interval-preview{justify-items:start}.running-kpi-card{aspect-ratio:auto;min-height:98px}.running-detail-side{justify-items:start}.running-detail-side>strong{font-size:30px}}.school-page{--school-card:var(--football-card,var(--app-card));padding-top:var(--page-top-padding)}.school-hero{align-items:center}.school-alert{margin:0 0 var(--space-3);border-radius:var(--radius-md);color:var(--color-danger);font-size:var(--font-size-sm);background:#b91c1c14;border:1px solid #b91c1c38;padding:12px 14px;font-weight:800}.school-toolbar{justify-content:space-between;align-items:flex-end;gap:var(--space-3);margin-bottom:var(--space-3);display:flex}.school-filter-row,.school-form-grid{gap:var(--space-3);grid-template-columns:1fr;display:grid}.school-filter-row{flex:1}.school-picker-field{min-width:0}.school-subject-list{gap:var(--space-2);flex-direction:column;display:flex}.school-subject-row{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--school-card);width:100%;color:var(--color-text);gap:var(--space-3);text-align:left;box-shadow:var(--shadow-sm);cursor:pointer;grid-template-columns:minmax(0,1fr) auto;align-items:center;padding:12px;display:grid}.school-subject-row:hover{border-color:var(--app-primary-border)}.school-grade-main,.school-subject-row>span:first-child{flex-direction:column;gap:3px;min-width:0;display:flex}.school-grade-main strong,.school-subject-row strong{font-size:var(--font-size-md);text-overflow:ellipsis;white-space:nowrap;font-weight:900;overflow:hidden}.school-grade-main small,.school-subject-row small{color:var(--color-text-muted);font-size:var(--font-size-xs);font-weight:800}.school-grade-list{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--school-card);box-shadow:var(--shadow-sm);overflow:hidden}.school-grade-table-head{gap:var(--space-3);border-bottom:1px solid var(--color-border);min-height:48px;color:var(--color-text-muted);font-size:var(--font-size-sm);text-transform:uppercase;grid-template-columns:minmax(0,1fr) 82px;align-items:center;padding:14px;font-weight:950;display:grid}.school-grade-table-head span:last-child{text-align:right;justify-self:end}.school-grade-row{border:0;border-bottom:1px solid var(--color-border);width:100%;min-height:60px;color:var(--color-text);gap:var(--space-3);text-align:left;cursor:pointer;background:0 0;grid-template-columns:minmax(0,1fr) 82px;align-items:center;padding:14px;display:grid}.school-grade-row:last-child{border-bottom:0}.school-grade-row:hover{background:var(--color-surface-soft)}.school-grade-value{color:var(--color-text);justify-self:end;font-size:20px;font-weight:950;line-height:1}.school-pill{border:1px solid var(--color-border);background:var(--color-surface);min-height:30px;color:var(--color-text-muted);white-space:nowrap;font-size:var(--font-size-xs);border-radius:999px;justify-content:center;align-items:center;padding:0 10px;font-weight:900;display:inline-flex}.school-pill.final{border-color:var(--app-primary-border);background:var(--app-primary-soft);color:var(--app-primary)}.school-kpi-grid{gap:var(--space-3);margin-top:var(--space-3);grid-template-columns:1fr;display:grid}.school-kpi-card{min-height:118px}.school-kpi-card em{color:var(--color-text-muted);font-size:var(--font-size-sm);margin-top:4px;font-style:normal;font-weight:900}.school-chart{margin-top:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--school-card);padding:12px 8px 4px;overflow:hidden}.school-table-wrap{margin-top:var(--space-3);overflow-x:auto}.school-table{border-collapse:collapse;width:100%;min-width:420px;color:var(--color-text);font-size:var(--font-size-sm)}.school-table th,.school-table td{border-bottom:1px solid var(--color-border);text-align:left;padding:10px 8px}.school-table th{color:var(--color-text-muted);font-size:var(--font-size-xs);text-transform:uppercase;font-weight:900}.school-development-table th:nth-child(2),.school-development-table th:nth-child(3),.school-development-table td:nth-child(2),.school-development-table td:nth-child(3){text-align:center}.school-sheet{max-width:680px;max-height:60vh;overflow-y:auto}.school-form-grid{margin-top:var(--space-3)}.school-form-wide{grid-column:1/-1}.school-textarea{min-height:92px}.school-segmented{min-height:var(--tap-height);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);grid-template-columns:repeat(2,1fr);gap:6px;padding:5px;display:grid}.school-segmented button{border-radius:calc(var(--radius-md) - 4px);color:var(--color-text-muted);cursor:pointer;background:0 0;border:0;font-weight:900}.school-segmented button.active{background:var(--app-primary);color:#fff}.school-grade-stepper{min-height:var(--tap-height);border:1px solid var(--color-border);background:#fff;border-radius:999px;grid-template-columns:48px minmax(54px,1fr) 48px;align-items:center;display:grid;overflow:hidden}.school-grade-stepper button{height:100%;color:var(--color-text);cursor:pointer;background:0 0;border:0;font-size:24px;font-weight:950}.school-grade-stepper button:disabled{opacity:.36;cursor:not-allowed}.school-grade-stepper strong{color:var(--color-text);text-align:center;font-size:22px;font-weight:950}html[data-theme=dark] .school-grade-stepper{background:#ffffff13}.school-finals-toggle-wrap{margin-bottom:var(--space-3)}.school-final-subject-list{gap:var(--space-2);flex-direction:column;display:flex}.school-final-subject-row,.school-final-average{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--school-card);color:var(--color-text);gap:var(--space-3);box-shadow:var(--shadow-sm);grid-template-columns:minmax(0,1fr) auto;align-items:center;padding:12px;display:grid}.school-final-subject-row span,.school-final-average span{flex-direction:column;gap:3px;min-width:0;display:flex}.school-final-subject-row strong,.school-final-average strong{font-weight:950}.school-final-subject-row small{color:var(--color-text-muted);font-size:var(--font-size-xs);font-weight:800}.school-final-average{margin-top:var(--space-3);border-color:var(--app-primary-border);background:var(--app-primary-soft)}.school-ranking-list{margin-top:var(--space-3)}.school-ranking-row{text-align:left;cursor:pointer;width:100%}.school-ranking-row:hover{border-color:var(--app-primary-border)}.school-subject-grade-list{gap:var(--space-2);flex-direction:column;display:flex}.school-subject-grade-row{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--school-card);color:var(--color-text);gap:var(--space-3);grid-template-columns:minmax(0,1fr) auto;align-items:center;padding:12px;display:grid}.school-subject-grade-row span{flex-direction:column;gap:3px;min-width:0;display:flex}.school-subject-grade-row strong{font-weight:950}.school-subject-grade-row small{color:var(--color-text-muted);font-size:var(--font-size-xs);font-weight:800}.school-sheet-actions{gap:var(--space-2);margin-top:var(--space-4);grid-template-columns:1fr;display:grid}.school-confirm-text{margin:var(--space-3) 0 0;border-radius:var(--radius-sm);color:var(--color-danger);font-size:var(--font-size-sm);background:#b91c1c14;padding:10px 12px;font-weight:800}.school-page .football-filter-picker-trigger{width:100%}@container app-viewport (width>=680px){.school-filter-row{grid-template-columns:repeat(5,minmax(0,1fr))}.school-filter-row.compact,.school-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.school-kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.school-sheet-actions{grid-template-columns:1fr 1fr 1fr}}.school-picker-empty{color:var(--color-text-muted);font-size:var(--font-size-sm);padding:14px;font-weight:800}.profile-school-settings{gap:var(--space-3);flex-direction:column;display:flex}.profile-school-settings-toggle{cursor:pointer;width:100%}button.profile-school-settings-toggle{font:inherit;text-align:left}.school-settings-content{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);padding:var(--space-3);gap:var(--space-3);flex-direction:column;display:flex}.school-settings-level-list{gap:var(--space-3);flex-direction:column;display:flex}.school-settings-level{gap:var(--space-2);flex-direction:column;display:flex}.school-settings-level-heading{color:var(--color-text);font-size:var(--font-size-sm);align-items:center;gap:8px;font-weight:900;display:inline-flex}html[data-theme=dark] .school-settings-content{background:#ffffff0e;border-color:#cbd5e129}@container app-viewport (width<=620px){.school-toolbar{flex-direction:column;align-items:stretch}.school-subject-row{grid-template-columns:1fr}.school-grade-table-head,.school-grade-row{grid-template-columns:minmax(0,1fr) 64px}.school-grade-row{min-height:64px;padding:16px 14px}}
