/* Information gets its own rows; no guidance is painted over the playable map. */
.game-shell .field-area{display:grid;grid-template-rows:auto minmax(0,1fr) auto;overflow:hidden}
.field-toolbar{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center;background:#eff6e7;padding:4px 8px;z-index:1}
.game-shell .field-toolbar .field-top{position:static;inset:auto;grid-column:2;grid-row:1;display:flex;align-items:center;gap:8px}
.game-shell .field-toolbar .terrain-readout{position:static;inset:auto;grid-column:1;grid-row:1;max-width:100%;min-width:0;border:0;box-shadow:none;background:transparent;padding:2px 0;min-height:44px;justify-content:center}
.field-toolbar .terrain-readout span,.field-toolbar .terrain-readout strong{font-size:16px;line-height:1.3;overflow-wrap:anywhere}
.game-shell .map-wrapper{position:relative;inset:auto;height:100%;padding:3px 0!important;width:100%;min-height:0;overflow:hidden}
.game-shell #course-map{height:100%;width:100%;display:block}
.field-footer{display:flex;align-items:center;gap:8px;justify-content:space-between;background:#eff6e7;padding:2px 8px;min-height:44px}
.game-shell .field-footer .map-legend{position:static;inset:auto;max-width:100%;background:transparent;padding:0;flex-shrink:1}
.field-footer .caddy-radio{position:static;inset:auto;display:flex;max-width:52%;width:auto;height:auto;min-height:44px;border-radius:10px;padding:0 8px;box-shadow:none}
.field-footer .caddy-radio .mascot{height:42px;width:30px}.field-footer .caddy-radio>span{display:flex;line-height:1.4}.field-footer .caddy-radio>span>span{-webkit-line-clamp:1;font-size:16px}.field-footer .caddy-radio>svg{display:none}
@media(max-width:760px){.field-toolbar{gap:5px;padding:2px 6px}.game-shell .field-toolbar .field-top>span{display:none}.field-toolbar .terrain-readout span,.field-toolbar .terrain-readout strong{font-size:14px}.game-shell .field-toolbar .field-top button{font-size:14px;padding:4px 6px;min-height:44px}.field-footer{padding:0 6px;gap:6px}.field-footer .caddy-radio{max-width:95px;flex-shrink:0;padding:0 5px}.field-footer .caddy-radio>span>span{display:none}.field-footer .caddy-radio>span b{font-size:15px}.field-footer .caddy-radio .mascot{height:36px;width:27px}.game-shell .field-footer .map-legend{font-size:12px;gap:1px}.game-shell .field-footer .terrain-key{font-size:12px}}
@media(max-height:540px) and (orientation:landscape){.field-toolbar .terrain-readout span{display:none}.field-toolbar .terrain-readout strong{font-size:14px}.game-shell .field-footer .terrain-key{display:none}.field-footer .caddy-radio>span>span{display:none}.field-footer .caddy-radio{max-width:90px}.field-footer .caddy-radio .mascot{width:26px;height:34px}.game-shell .field-toolbar .field-top>span{display:none}}
/* Cumulative history and readable PNG scorecards share the PlayPark palette. */
.record-player-picker{max-width:400px}.record-player-picker select,.analysis-panel select{min-height:52px;font-size:18px;width:100%}.record-local-note,.chart-caption{font-size:16px;line-height:1.7;color:#506452}.record-local-note{margin:14px 0 28px}.cumulative-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.cumulative-stats>div{display:flex;flex-direction:column!important;align-items:flex-start;gap:8px;background:#fff;padding:22px;border:1px solid #dce8d5;border-radius:16px}.cumulative-stats b{font-size:38px;color:#246442}.cumulative-stats span{font-size:18px;margin:0}.analysis-panel,.history-panel{margin-top:26px;padding:26px;border-radius:20px}.analysis-panel .field{max-width:620px}.analysis-columns{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-top:16px}.analysis-columns>div{min-width:0}.analysis-panel h3{font-size:21px;line-height:1.5;margin:22px 0 16px}.score-trend{width:100%;height:auto;display:block;background:#f5f9f0;border-radius:14px;padding:12px 0}.analysis-insight{font-size:19px;line-height:1.7;padding:16px;background:#edf5e4;border-radius:12px;color:#285139}.half-stats,.par-analysis{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.half-stats>div,.par-analysis>div{display:flex;flex-direction:column;gap:7px;background:#f4f8ef;padding:18px;border-radius:12px}.half-stats b,.par-analysis b{font-size:32px;color:#205e3d}.half-stats span,.par-analysis span{font-size:17px;line-height:1.5}.par-analysis{grid-template-columns:repeat(3,minmax(0,1fr))}.score-distribution>div{display:grid;grid-template-columns:1fr auto;gap:6px;font-size:17px;margin:14px 0}.distribution-track{grid-column:1/-1;height:10px;background:#edf2e8;border-radius:6px;overflow:hidden}.distribution-track i{height:100%;display:block;background:#338852;border-radius:6px}.history-panel .record-list>div{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:16px;padding:20px 0}.history-panel .record-name b{font-size:19px;line-height:1.5;overflow-wrap:anywhere}.history-panel .record-name small{font-size:16px;line-height:1.6;white-space:normal}.history-panel .record-list>div>strong{white-space:nowrap;font-size:30px}.history-panel .record-list .secondary{font-size:17px;padding:10px 14px}.scorecard-preview{display:block;width:100%;height:auto;border:1px solid #d2e1c8;border-radius:10px}.scorecard-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:20px}.scorecard-actions>button{flex:1;min-width:130px}.scorecard-actions>button[hidden]{display:none}.image-save-help{line-height:1.7}
@media(max-width:760px){.cumulative-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.cumulative-stats>div{padding:16px 12px;align-items:flex-start;justify-content:center}.cumulative-stats b{font-size:34px}.cumulative-stats span{font-size:16px}.analysis-panel,.history-panel{padding:20px 14px}.analysis-columns{grid-template-columns:1fr;gap:4px}.analysis-panel h2,.history-panel h2{font-size:25px;line-height:1.5}.history-panel .record-list>div{grid-template-columns:minmax(0,1fr) auto;gap:12px}.history-panel .record-list button{grid-column:1/-1;width:100%;min-height:48px}.par-analysis{gap:7px}.par-analysis>div{padding:14px 8px}.par-analysis span{font-size:15px}.par-analysis b{font-size:28px}.scorecard-actions{position:sticky;bottom:-20px;background:#fff;padding:12px 0;z-index:1}}
.leaderboard-panel{margin-top:26px}.leaderboard-panel .record-list>div{display:flex;gap:14px;align-items:center;padding:16px 0}.leaderboard-panel .record-name{flex:1}.leaderboard-panel .record-name b{font-size:19px}.leaderboard-panel .record-name small{font-size:16px}.leaderboard-panel .record-list strong{font-size:28px}.leaderboard-panel .secondary{font-size:17px;padding:10px 14px}
@media(max-width:760px){.leaderboard-panel .record-list>div{display:grid;grid-template-columns:36px minmax(0,1fr) auto;gap:8px}.leaderboard-panel .record-list button{grid-column:2/-1;width:100%}}

/* Name every finished hole result; keep unfinished cells empty of result labels. */
.scorecard-scroll-hint{font-size:17px;line-height:1.6;color:#506452}
.score-tables .table-scroll{border:1px solid #d8e3d0;border-radius:10px}
.score-tables table{min-width:100%;width:max-content}
.score-tables th:first-child{min-width:100px;max-width:180px;white-space:normal;overflow-wrap:anywhere}
.score-tables .scorecard-hole-cell{min-width:100px;padding:12px 10px;white-space:normal;vertical-align:middle}
.scorecard-strokes{display:block;font-size:23px;line-height:1.4;font-weight:800}
.scorecard-result{display:block;font-size:17px;line-height:1.45;font-weight:600;margin-top:5px;max-width:90px;word-break:keep-all}
.score-tables .scorecard-hole-cell.under{color:#21653c;background:#edf5e4}
.score-tables .scorecard-hole-cell.over{color:#984326;background:#fff0e8}
.score-tables .scorecard-hole-cell.even{color:#203c31;background:#f1f5ef}
.score-tables .scorecard-hole-cell.pending{color:#718078;background:#fff}
.score-tables .scorecard-half-total{font-size:23px;font-weight:800;min-width:64px}

.score-tables th:first-child{position:sticky;left:0;z-index:1;background:#fff;box-shadow:1px 0 #d8e3d0}
.score-tables thead th:first-child,.score-tables .par-row th:first-child{background:#eaf2e3}
