:root{color:#19251f;font-synthesis:none;--color-brand:#245c46;--color-brand-strong:#174433;--color-brand-soft:#e2eee7;--color-text:#19251f;--color-text-muted:#637069;--color-border:#d9ddd7;--color-surface:#fffefb;--color-background:#f4f1e9;--color-focus:#c07c23;--color-danger:#a33a35;--color-danger-soft:#fbe9e6;--color-warning:#6a4a08;--color-warning-soft:#fff0bd;--color-success:#245c46;--color-success-soft:#e2eee7;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--radius-sm:.7rem;--radius-md:.8rem;--radius-lg:1rem;--radius-xl:1.25rem;--radius-pill:999px;--shadow-card:0 4px 18px #1932260a;--shadow-raised:0 8px 28px #19322614;--focus-ring:3px solid var(--color-focus);--motion-fast:.14s ease;--forest:var(--color-brand);--forest-dark:var(--color-brand-strong);--forest-soft:var(--color-brand-soft);--ink:var(--color-text);--muted:var(--color-text-muted);--line:var(--color-border);--surface:var(--color-surface);--danger:var(--color-danger);--shadow:var(--shadow-raised);background:#f4f1e9;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}.sr-only{clip:rect(0, 0, 0, 0)!important;white-space:nowrap!important;border:0!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}html{background:var(--color-background)}body{background:var(--color-background);min-height:100vh;color:var(--ink);margin:0}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{min-height:48px;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-md);cursor:pointer;transition:background-color var(--motion-fast), border-color var(--motion-fast), box-shadow var(--motion-fast), transform var(--motion-fast);padding:.7rem 1rem}button:disabled{cursor:not-allowed;opacity:.5}button:active:not(:disabled){transform:translateY(1px)}a{color:inherit}:focus-visible{outline:var(--focus-ring);outline-offset:3px}h1,h2,h3,h4,p{margin-top:0}h1{letter-spacing:-.035em;margin-bottom:.4rem;font-size:clamp(1.75rem,7vw,2.35rem);line-height:1.08}h2{font-size:1.2rem;line-height:1.25}h3{font-size:1rem}.app-shell{min-height:100dvh}.app-content{padding-bottom:calc(5.25rem + env(safe-area-inset-bottom))}main{--page-gutter:1rem;width:min(calc(100% - max(var(--page-gutter), env(safe-area-inset-left)) - max(var(--page-gutter), env(safe-area-inset-right))), 46rem);padding:calc(1.5rem + env(safe-area-inset-top)) 0 2rem;flex-direction:column;gap:1.25rem;margin:0 auto;display:flex}.page-header{justify-content:space-between;align-items:end;min-height:4rem;display:flex}.page-header h1,.home-header h1{margin-bottom:0}.home-header{padding:.75rem 0 .25rem}.home-header>p:last-child{color:var(--muted);margin:.5rem 0 0}.eyebrow{color:var(--forest);letter-spacing:.1em;text-transform:uppercase;margin-bottom:.3rem;font-size:.75rem;font-weight:800}.section-title{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;margin:0 0 .7rem;font-size:.85rem}.bottom-nav{z-index:30;height:calc(4.75rem + env(safe-area-inset-bottom));padding:.35rem max(.4rem, env(safe-area-inset-right)) calc(.35rem + env(safe-area-inset-bottom)) max(.4rem, env(safe-area-inset-left));border-top:1px solid var(--line);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fffefbf5;grid-template-columns:repeat(4,1fr);display:grid;position:fixed;bottom:0;left:0;right:0}.bottom-nav__item{color:#68756e;border-radius:.75rem;flex-direction:column;justify-content:center;align-items:center;gap:.15rem;min-width:0;min-height:48px;font-size:.7rem;font-weight:650;text-decoration:none;display:flex}.bottom-nav__item svg{width:1.4rem;height:1.4rem}.bottom-nav__item.is-active{color:var(--forest);background:var(--forest-soft)}.start-round{background:var(--forest);color:#fff;border-radius:1.25rem;grid-template-columns:auto 1fr auto;align-items:center;gap:.9rem;min-height:6.5rem;padding:1.1rem;text-decoration:none;display:grid;box-shadow:0 12px 30px #245c4640}.start-round__icon{background:#ffffff24;border-radius:50%;place-items:center;width:3.25rem;height:3.25rem;display:grid}.start-round strong,.start-round small{display:block}.start-round strong{margin-bottom:.2rem;font-size:1.25rem}.start-round small{color:#dfece5}.start-round--loading{color:var(--muted);background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-card);grid-template-columns:auto 1fr}.start-round--loading .spinner{width:1.4rem;height:1.4rem}.startup-view{min-height:calc(100dvh - 4.75rem - env(safe-area-inset-bottom));justify-content:center}.startup-view .home-header{width:100%}.startup-card{width:100%;min-height:6.5rem;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-xl);box-shadow:var(--shadow-card);grid-template-columns:auto minmax(0,1fr);align-items:center;gap:1rem;padding:1.1rem;display:grid}.startup-card__indicator{background:var(--forest-soft);border-radius:50%;place-items:center;width:3.25rem;height:3.25rem;display:grid}.startup-card strong,.startup-card small{display:block}.startup-card strong{margin-bottom:.2rem}.startup-card small{color:var(--muted);line-height:1.35}.action-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;display:grid}.action-card{border:1px solid var(--line);background:var(--surface);border-radius:1rem;flex-direction:column;justify-content:flex-end;align-items:flex-start;gap:.3rem;min-height:9rem;padding:1rem;text-decoration:none;display:flex;box-shadow:0 4px 16px #1932260a}.action-card svg{color:var(--forest);margin-bottom:auto}.action-card span{color:var(--muted);font-size:.8rem}.button{border-radius:var(--radius-md);border:1px solid #0000;justify-content:center;align-items:center;min-height:48px;padding:.75rem 1rem;font-weight:750;text-decoration:none;display:inline-flex}.button--primary{background:var(--forest);color:#fff;min-height:56px}.button--primary:hover{background:var(--forest-dark)}.button--secondary{background:var(--surface);color:var(--ink);border-color:var(--line)}.button--secondary:hover:not(:disabled){background:var(--forest-soft);border-color:#9fbcad}.button--danger{background:var(--danger);color:#fff}.page-actions{justify-content:flex-end;align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.page-actions .button--primary{order:1}.field{flex-direction:column;gap:.4rem;font-weight:700;display:flex}.field>span,.field-label,label:not(.player-option){color:#35433c}input,select,textarea{width:100%;min-height:48px;color:var(--ink);background:#fff;border:1px solid #aeb8b1;border-radius:.7rem;padding:.7rem .8rem}input:hover:not(:disabled),select:hover:not(:disabled),textarea:hover:not(:disabled){border-color:#7f8e85}input:disabled,select:disabled,textarea:disabled{color:var(--muted);cursor:not-allowed;opacity:1;background:#eef0ed}textarea{resize:vertical;min-height:6rem}fieldset{--fieldset-gutter:1rem;min-width:0;padding:0 var(--fieldset-gutter) var(--fieldset-gutter);background:var(--surface);border:1px solid var(--line);border-radius:1rem;flex-direction:column;gap:.8rem;margin:0;display:flex;overflow:hidden}legend{width:calc(100% + var(--fieldset-gutter) + var(--fieldset-gutter));margin:0 calc(-1 * var(--fieldset-gutter)) .15rem;padding:.9rem var(--fieldset-gutter) .75rem;color:var(--forest-dark);border-bottom:1px solid #e8ebe7;font-size:1.1rem;font-weight:800}.form-card,.course-card,.records,.score-detail,.menu-card{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-card);padding:1rem}form,.form-card{flex-direction:column;gap:1rem;display:flex}form>button[type=submit]{min-height:56px;font-weight:750}.field-hint,.field-help{color:var(--muted);margin:-.35rem 0 .15rem;font-size:.85rem;font-weight:500;line-height:1.4}.field-error{color:#802d29;margin:0;font-size:.85rem;font-weight:650;line-height:1.4}.field-error:before{content:"! ";font-weight:900}.selected-layout{color:var(--muted);overflow-wrap:anywhere;margin:-.25rem 0 0;line-height:1.4}.selected-layout span{color:var(--ink);font-weight:750}.file-picker{flex-wrap:wrap;align-items:center;gap:.65rem;display:flex}.file-picker__input{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;min-height:0;padding:0;position:absolute;overflow:hidden}.file-picker__input:focus-visible+label{outline:var(--focus-ring);outline-offset:3px}.file-picker output{min-width:0;color:var(--muted);overflow-wrap:anywhere;flex:10rem}[role=alert]{color:#802d29;background:var(--color-danger-soft);border:1px solid #efc6c0;border-radius:.75rem;margin:0;padding:.8rem 1rem}.notice,.offline-notice{color:#5b4b16;background:#f6edcf;border-radius:.75rem;margin:0;padding:.75rem 1rem}.state-card,.view-state{text-align:center;min-height:8rem;color:var(--muted);background:var(--surface);border-radius:var(--radius-lg);border:1px dashed #bbc4bd;flex-direction:column;justify-content:center;align-items:center;gap:.75rem;padding:1.25rem;display:flex}.state-card p,.state-card h2,.view-state p,.view-state h2{margin:0}.view-state--error{color:#802d29;background:var(--color-danger-soft);border-color:#efc6c0}.view-state--success{color:var(--color-success);background:var(--color-success-soft);border-style:solid;border-color:#9fbcad}.view-state--empty{background:0 0}.spinner{border:3px solid #cdd8d1;border-top-color:var(--forest);border-radius:50%;width:1.5rem;height:1.5rem;animation:.8s linear infinite spin}.status-badge{width:fit-content;max-width:100%;color:var(--muted);border-radius:var(--radius-pill);overflow-wrap:anywhere;background:#edf0ed;border:1px solid #0000;align-items:center;gap:.35rem;padding:.3rem .55rem;font-size:.75rem;font-weight:750;display:inline-flex}.status-badge--success{color:var(--color-success);background:var(--color-success-soft)}.status-badge--warning{color:var(--color-warning);background:var(--color-warning-soft)}.status-badge--error{color:#802d29;background:var(--color-danger-soft)}.step-indicator{gap:var(--space-2);flex-direction:column;display:flex}.step-indicator__summary{color:var(--forest-dark);letter-spacing:.04em;text-transform:uppercase;margin:0;font-size:.8rem;font-weight:800}.step-indicator__list{gap:var(--space-2);grid-template-columns:repeat(3,minmax(0,1fr));margin:0;padding:0;list-style:none;display:grid}.step-indicator__step{min-width:0;padding-top:var(--space-2);color:var(--muted);border-top:3px solid var(--line);overflow-wrap:anywhere;font-size:.75rem}.step-indicator__step.is-current{color:var(--forest-dark);border-top-width:5px;border-top-color:var(--forest);font-weight:800}.step-indicator__step.is-complete:before{content:"✓ ";color:var(--forest);font-weight:900}.decision-card{min-width:0;min-height:44px;padding:var(--space-3);align-items:center;gap:var(--space-3);color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-md);cursor:pointer;transition:background-color var(--motion-fast), border-color var(--motion-fast), box-shadow var(--motion-fast), transform var(--motion-fast);grid-template-columns:auto minmax(0,1fr) auto;display:grid;position:relative}.decision-card:hover{box-shadow:var(--shadow-card);border-color:#9fbcad}.decision-card:active{transform:translateY(1px)}.decision-card:focus-within{outline:var(--focus-ring);outline-offset:3px}.decision-card.is-selected{padding:calc(var(--space-3) - 1px);background:var(--forest-soft);border:2px solid var(--forest);box-shadow:inset 4px 0 0 var(--forest-dark)}.decision-card__content{overflow-wrap:anywhere;min-width:0}.decision-card__mark{color:var(--forest-dark);white-space:nowrap;font-size:.75rem;font-weight:850}@keyframes spin{to{transform:rotate(360deg)}}.round-start__form,.round-step{gap:1rem}.round-step{flex-direction:column;display:flex}.round-step__header h2{margin:0;font-size:1.45rem}.round-step__header p{color:var(--muted);margin:.35rem 0 0}.player-picker{--fieldset-gutter:0px;background:var(--surface);padding:0;overflow:hidden}.player-picker legend:not(.sr-only){padding-left:1rem;padding-right:1rem}.player-picker>.field-hint{padding:0 1rem}.player-option{border-top:1px solid var(--line);cursor:pointer;grid-template-columns:auto 1fr auto;align-items:center;gap:.75rem;min-height:64px;padding:.6rem 1rem;display:grid;position:relative}.player-option input{opacity:0;width:1px;height:1px;min-height:0;position:absolute}.player-option:focus-within{outline:var(--focus-ring);outline-offset:-3px}.player-option.is-selected{background:var(--forest-soft)}.player-avatar{width:2.5rem;height:2.5rem;color:var(--forest);background:#eef4f0;border-radius:50%;place-items:center;font-weight:800;display:grid}.selection-mark{color:#0000;border:2px solid #9aa79f;border-radius:50%;place-items:center;width:1.7rem;height:1.7rem;display:grid}.is-selected .selection-mark{color:#fff;background:var(--forest);border-color:var(--forest)}.selection-mark svg{width:1rem}.guest-field{border-top:1px solid var(--line);flex-direction:column;gap:.4rem;padding:1rem;font-weight:700;display:flex}.sticky-action{z-index:5;bottom:calc(4.75rem + env(safe-area-inset-bottom));margin:0 calc(-1 * var(--page-gutter)) -2rem;padding:.8rem var(--page-gutter);background:linear-gradient(#0000,#f4f1e9 20%);position:sticky}.sticky-action .button{width:100%}.guest-editor{border-top:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:.65rem;padding:1rem;display:grid}.guest-editor .button{min-width:8rem}.add-guest-button{align-self:flex-start;margin:.25rem 1rem 1rem}.selected-players{color:var(--forest-dark);background:var(--forest-soft);border-radius:var(--radius-md);overflow-wrap:anywhere;border:1px solid #b7d0c2;margin:0;padding:.8rem 1rem;font-weight:700}.step-actions{flex-direction:column;gap:.45rem;display:flex}.step-actions>p{text-align:center;margin:0}.step-actions .page-actions{grid-template-columns:minmax(0,.65fr) minmax(0,1.35fr);display:grid}.round-review h3{color:var(--forest-dark);margin-bottom:.25rem}.round-review p{color:var(--muted);overflow-wrap:anywhere;margin:0}.round-review>div+div{border-top:1px solid var(--line);padding-top:1rem}.round-review__section{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:1rem;display:grid}.round-review__section .button{min-width:9rem}.app-shell--immersive{background:#eef0eb}.app-shell--immersive main{gap:0;width:min(100%,52rem);padding:0}.game-header{z-index:10;padding:calc(.65rem + env(safe-area-inset-top)) max(1rem, env(safe-area-inset-right)) .55rem max(1rem, env(safe-area-inset-left));border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fffefbf5;grid-template-columns:1fr auto;align-items:center;gap:.25rem 1rem;display:grid;position:sticky;top:0}.game-header h1{margin:0;font-size:1.4rem}.game-header .eyebrow{margin-bottom:.1rem}.hole-progress{background:#dfe4df;border-radius:999px;grid-column:1/-1;height:3px;overflow:hidden}.hole-progress span{background:var(--forest);height:100%;transition:width .2s;display:block}.sync-state{color:#536159;background:#edf0ed;border-radius:99px;align-items:center;gap:.35rem;padding:.4rem .6rem;font-size:.72rem;font-weight:750;display:inline-flex}.sync-state>span{background:currentColor;border-radius:50%;width:.45rem;height:.45rem}.sync-state.synced{color:var(--forest);background:var(--forest-soft)}.sync-state.conflict,.sync-state.auth_required,.sync-state.rejected{color:#8b302d;background:#f9e4e1}.game-body{touch-action:pan-y;padding:1rem}.player-stack{flex-direction:column;gap:.85rem;display:flex}.player-card{background:var(--surface);border:1px solid var(--line);border-radius:1.1rem;padding:1rem;box-shadow:0 5px 18px #1932260d}.player-card__header{justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.player-card__header h2{overflow-wrap:anywhere;min-width:0;margin:0}.player-total{text-align:right;background:#f1f5f1;border-radius:.75rem;grid-template-columns:1fr auto;align-items:baseline;gap:.05rem .45rem;min-width:6.5rem;padding:.45rem .55rem;display:grid}.player-total>span{color:var(--muted);text-transform:uppercase;font-size:.68rem;font-weight:700}.player-total>strong{color:var(--ink);font-variant-numeric:tabular-nums;font-size:1.35rem}.player-total>em{width:fit-content;color:var(--muted);background:#fff;border-radius:99px;grid-column:1/-1;margin-left:auto;padding:.12rem .4rem;font-size:.72rem;font-style:normal;font-weight:800}.player-total>em.is-under{color:var(--forest);background:var(--forest-soft)}.player-total>em.is-over{color:#8b302d;background:#f9e4e1}.throw-stepper{grid-template-columns:64px 1fr 64px;align-items:center;gap:.6rem;margin:.9rem 0 .65rem;display:grid}.step-button{width:64px;height:64px;color:var(--forest);background:var(--forest-soft);border:0;border-radius:50%;padding:0;font-size:2rem;line-height:1}.throw-stepper output{text-align:center}.throw-stepper output strong,.throw-stepper output span{display:block}.throw-stepper output strong{font-variant-numeric:tabular-nums;font-size:2.7rem;line-height:1}.throw-stepper output span{color:var(--muted);margin-top:.2rem;font-size:.75rem}.par-button{width:100%;min-height:48px;color:var(--forest);background:0 0;border:1px solid #9fbcad;border-radius:.75rem;font-weight:800}.penalty-row{border-top:1px solid #e8ebe7;justify-content:space-between;align-items:center;margin-top:.7rem;padding-top:.7rem;display:flex}.penalty-row span{color:var(--muted);font-size:.85rem}.penalty-row div{gap:.5rem;display:flex}.penalty-row button{width:48px;height:48px;color:var(--ink);background:#f1f2ef;border:0;border-radius:50%;font-size:1.4rem}.score-summary{color:var(--muted);text-align:center;margin:.3rem 0 0;font-size:.72rem}.game-actions{z-index:8;padding:.4rem max(.5rem, env(safe-area-inset-right)) calc(.4rem + env(safe-area-inset-bottom)) max(.5rem, env(safe-area-inset-left));border-top:1px solid var(--line);background:#fffefbf7;position:sticky;bottom:0}.hole-nav{grid-template-columns:repeat(2,minmax(0,1fr));gap:.4rem;display:grid}.hole-nav .button{min-height:48px;padding:.45rem .3rem;font-size:.78rem}.round-secondary-actions{border-top:1px solid var(--line);margin-top:1rem}.round-secondary-actions summary{min-height:48px;color:var(--muted);cursor:pointer;align-items:center;padding:.8rem 0;font-size:.82rem;font-weight:700;display:flex}.round-secondary-actions .button{width:100%}.round-secondary-actions .button+.button{margin-top:.5rem}.modal-backdrop{z-index:100;padding:max(1rem, env(safe-area-inset-top)) max(1rem, env(safe-area-inset-right)) max(1rem, env(safe-area-inset-bottom)) max(1rem, env(safe-area-inset-left));background:#09140e94;place-items:end center;display:grid;position:fixed;inset:0}.modal{background:var(--surface);border-radius:1.25rem;width:min(100%,30rem);max-height:calc(100dvh - 2rem);padding:1.25rem;overflow:auto;box-shadow:0 24px 70px #00000040}.modal__header{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:.75rem;margin-bottom:.75rem;display:grid}.modal__header h2{overflow-wrap:anywhere;min-width:0;margin:0;font-size:1.4rem}.modal__close{width:48px;height:48px;min-height:48px;color:var(--muted);background:0 0;border:0;border-radius:50%;padding:0;font-size:1.8rem;line-height:1}.modal__close:hover{color:var(--ink);background:var(--forest-soft)}.modal p{color:var(--muted);line-height:1.5}.modal-actions{flex-direction:column;gap:.65rem;display:flex}.modal-actions .button{width:100%}.round-list,.course-list,.layout-list,.session-list{margin:0;padding:0;list-style:none}.round-list{flex-direction:column;gap:.65rem;display:flex}.round-card{text-align:left;width:100%;min-width:0;min-height:76px;color:var(--ink);background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-card);border-radius:.9rem;grid-template-columns:minmax(0,1fr) auto;gap:.75rem 1rem;padding:1rem;display:grid}.round-card>span{min-width:0}.round-card__header{flex-direction:column;gap:.4rem;display:flex}.round-card__badges{flex-wrap:wrap;gap:.35rem;display:flex}.round-card__players{overflow-wrap:anywhere;flex-direction:column;gap:.15rem;display:flex}.round-card__players>strong{line-height:1.35}.round-card small{color:var(--muted)}.round-card__results{flex-direction:column;grid-area:1/2/span 2;gap:.45rem;min-width:7.5rem;display:flex}.round-card__results small{grid-template-columns:minmax(0,1fr) auto;gap:.5rem;display:grid}.round-card__results small>span{overflow-wrap:anywhere}.round-card__results strong{color:var(--ink);font-variant-numeric:tabular-nums;white-space:nowrap}.score-detail-modal{width:min(100%,46rem)}.score-detail-modal>.modal__header{margin-bottom:0}.score-detail-modal>.button:last-child{width:100%}.score-detail__header{justify-content:space-between;align-items:start;display:flex}.icon-close{width:48px;height:48px;color:var(--muted);background:0 0;border:0;border-radius:50%;font-size:1.8rem}.result-grid{grid-template-columns:repeat(auto-fit,minmax(8rem,1fr));gap:.65rem;margin:1rem 0;display:grid}.result-card{background:#f1f5f1;border-radius:.75rem;grid-template-columns:1fr auto;gap:.2rem;padding:.8rem;display:grid}.result-card h3{grid-column:1/-1;margin:0}.result-card>strong{font-size:1.75rem}.result-card span{color:var(--muted);align-self:end}.hole-results>section{margin-bottom:1rem}.hole-results h4{margin-bottom:.4rem}.hole-results ol{border:1px solid var(--line);border-radius:.7rem;grid-template-columns:repeat(auto-fit,minmax(8rem,1fr));margin:0;padding:0;list-style:none;display:grid;overflow:hidden}.hole-results li{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:.5rem;min-height:48px;padding:.55rem .7rem;display:flex}.danger-zone{background:snow;border:1px solid #edc4be;border-radius:.8rem;margin:1.25rem 0;overflow:hidden}.danger-zone summary{min-height:52px;color:var(--danger);cursor:pointer;justify-content:space-between;align-items:center;gap:1rem;padding:.8rem 1rem;font-weight:800;list-style:none;display:flex}.danger-zone summary::-webkit-details-marker{display:none}.danger-zone[open] summary{border-bottom:1px solid #edc4be}.danger-zone[open] summary>span:last-child{transform:rotate(180deg)}.danger-zone__content{flex-direction:column;gap:.85rem;padding:1rem;display:flex}.danger-zone__content p{color:var(--muted);margin:0;line-height:1.4}.danger-zone__content textarea{min-height:5rem}.danger-zone__content .button{width:100%}.course-search{max-width:32rem}.course-list{flex-direction:column;gap:.8rem;display:flex}.course-card{min-width:0}.course-card>h2,.course-card>p,.layout-list strong{overflow-wrap:anywhere}.course-card>h2{margin-bottom:.2rem}.course-card>p{color:var(--muted)}.course-card>.course-card__address{margin-bottom:.35rem}.course-card>.course-card__summary{margin-bottom:.7rem;font-size:.82rem;font-weight:700}.layout-list li{border-top:1px solid var(--line);flex-direction:column;gap:.15rem;min-width:0;padding:.8rem 0;display:flex}.layout-list span,.layout-list small{color:var(--muted)}.records__header{justify-content:space-between;align-items:center;gap:.7rem;margin-bottom:.8rem;display:flex}.records__header h2{margin:0}.records__grid{grid-template-columns:1fr 1fr;gap:.7rem;display:grid}.records__grid p{background:var(--forest-soft);border-radius:.75rem;flex-direction:column;margin:0;padding:.8rem;display:flex}.records__grid strong{color:var(--forest);font-variant-numeric:tabular-nums;margin-top:.2rem;font-size:1.5rem}.distance-results{grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem;display:grid}.distance-form>.field{min-width:0;max-width:100%}.distance-date-field{overflow:hidden}.distance-date-input{width:100%;min-width:0;max-width:100%;appearance:none;inline-size:100%;min-inline-size:0;max-inline-size:100%}.distance-date-input::-webkit-date-and-time-value{text-align:left;min-width:0}.distance-input{display:block;position:relative}.distance-input input{font-variant-numeric:tabular-nums;min-height:64px;padding-right:2.6rem;font-size:1.45rem}.distance-input__unit{color:var(--muted);pointer-events:none;font-size:1rem;font-weight:750;position:absolute;top:50%;right:1rem;transform:translateY(-50%)}.distance-form .field-hint{text-align:center;margin:-.35rem 0 0}.save-success{color:var(--color-success);background:var(--color-success-soft);border-radius:var(--radius-md);text-align:center;border:1px solid #9fbcad;margin:0;padding:.75rem 1rem;font-weight:750}.session-list li{border-bottom:1px solid var(--line);grid-template-columns:minmax(6.5rem,.7fr) minmax(0,1.3fr);align-items:center;gap:.8rem;min-height:64px;padding:.8rem 0;display:grid}.session-list time{color:var(--ink);font-variant-numeric:tabular-nums;font-weight:750}.session-list__results{grid-template-columns:repeat(2,minmax(0,1fr));gap:.35rem .8rem;min-width:0;display:grid}.session-list__results span{color:var(--muted);font-variant-numeric:tabular-nums;font-size:.85rem}.menu-card{padding:.5rem 1rem}.menu-card .section-title{padding-top:.8rem}.menu-action{width:100%;min-height:64px;color:var(--ink);border:0;border-top:1px solid var(--line);text-align:left;background:0 0;grid-template-columns:auto 1fr auto;align-items:center;gap:.8rem;padding:.6rem 0;text-decoration:none;display:grid}.menu-action>svg:first-child{color:var(--forest)}.menu-action>span{flex-direction:column;display:flex}.menu-action small{color:var(--muted);margin-top:.15rem}.danger-text{color:var(--danger);background:var(--surface);border:1px solid var(--line);border-radius:1rem;padding:.6rem 1rem}table{border-collapse:collapse;width:100%}th,td{text-align:left;border:1px solid var(--line);padding:.5rem}form table{display:block;overflow-x:auto}form table input,form table textarea{min-width:6rem}output{overflow-wrap:anywhere}@media (width>=700px){main{padding-top:2.25rem}.modal-backdrop{place-items:center}.modal-actions{flex-direction:row-reverse}.scorecard .player-stack{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.sticky-action{bottom:calc(4.75rem + env(safe-area-inset-bottom))}.game-actions{position:static}.score-detail{padding:1.4rem}}@media (width<=360px){main{--page-gutter:.5rem}.action-grid{gap:.5rem}.action-card{padding:.75rem}.game-body{padding:.6rem}.player-card{padding:.8rem}.throw-stepper{grid-template-columns:56px 1fr 56px}.step-button{width:56px;height:56px}.hole-nav{gap:.3rem}.hole-nav .button{font-size:.72rem}.distance-results,.session-list__results{grid-template-columns:1fr}.session-list li{grid-template-columns:minmax(5.75rem,.7fr) minmax(0,1.3fr)}}@media (height<=700px) and (orientation:portrait){.game-body{padding-top:.65rem;padding-bottom:.65rem}.player-card{scroll-margin-block:6rem}.sync-state{padding:.3rem .45rem}.game-actions{position:sticky}}@media (height<=520px) and (orientation:landscape){.app-content{padding-bottom:0}.bottom-nav{height:calc(3.5rem + env(safe-area-inset-bottom));min-height:calc(3.5rem + env(safe-area-inset-bottom));position:static}.bottom-nav__item{flex-direction:row;gap:.35rem;min-height:44px}.bottom-nav__item svg{width:1.1rem;height:1.1rem}.sticky-action{background:0 0;margin:0;padding:.4rem 0;position:static}.guest-field,.player-option{scroll-margin-bottom:4rem}.game-header{position:static}.game-body{padding-bottom:.5rem}.player-card{padding:.7rem}.throw-stepper{margin:.4rem 0}.game-actions{position:static}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.course-picker .locate-button{align-self:flex-start}.course-picker__create{width:fit-content;min-height:44px;color:var(--forest-dark);text-align:left;text-underline-offset:.2em;background:0 0;border:0;border-radius:0;padding:.4rem 0;font-weight:750;text-decoration:underline;text-decoration-thickness:.08em}.course-picker__create:hover{color:var(--forest);text-decoration-thickness:.14em}.nearby-list{flex-direction:column;gap:.5rem;display:flex}.nearby-course{border:1px solid var(--line);border-radius:.8rem;overflow:hidden}.nearby-course.is-open{border:2px solid var(--forest)}.nearby-course__toggle{text-align:left;border:0;border-radius:0;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:.7rem;width:100%;min-height:68px;display:grid}.nearby-course__identity{overflow-wrap:anywhere;flex-direction:column;gap:.2rem;min-width:0;display:flex}.nearby-course__toggle small{color:var(--muted)}.nearby-course__chevron{transition:transform var(--motion-fast);font-size:1.2rem;font-weight:800}.nearby-course.is-open .nearby-course__chevron{transform:rotate(180deg)}.course-distance{color:var(--muted);white-space:nowrap;flex-direction:column;align-items:end;font-size:.78rem;display:flex}.course-distance em{color:var(--forest);background:var(--forest-soft);border-radius:99px;padding:.2rem .4rem;font-size:.67rem;font-style:normal;font-weight:800}.layout-choices{border-top:1px solid var(--line);flex-direction:column;gap:.45rem;padding:.6rem;display:flex}.layout-choices .course-layout-option{min-height:58px}.layout-choices input{width:1.2rem;min-height:auto}.layout-choices .decision-card__content{flex-direction:column;display:flex}.layout-choices small{color:var(--muted)}.quick-course{gap:.9rem}.segmented{border:0;padding:0}.segmented legend{border:0;width:auto;margin:0 0 .4rem;padding:0}.segmented>div{grid-template-columns:1fr;gap:.35rem;display:grid}.segmented button{text-align:left;width:100%;min-height:44px;box-shadow:inset 0 0 0 1px var(--line);border-color:#0000}.segmented button.is-selected{color:#fff;background:var(--forest);box-shadow:inset 0 0 0 1px var(--forest);border-color:#0000}.location-panel{background:#f2f5f2;border-radius:.8rem;flex-direction:column;gap:.7rem;padding:.8rem;display:flex}.location-panel p{color:var(--muted);margin:0;font-size:.85rem}.check-line{grid-template-columns:auto 1fr;align-items:center;gap:.5rem;display:grid}.check-line input,.hole-count input{width:auto;min-height:auto}.coordinate-grid{grid-template-columns:1fr 1fr;gap:.6rem;display:grid}.location-results,.duplicate-list{flex-direction:column;gap:.35rem;margin:0;padding:0;list-style:none;display:flex}.location-results button,.duplicate-list>button{text-align:left;width:100%}.hole-count{background:0 0;border:0;border-radius:0;gap:.55rem;padding:0;overflow:visible}.hole-count legend{border:0;width:auto;margin:0;padding:0}.hole-count>div{background:var(--surface);border:1px solid var(--line);border-radius:1rem;grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem;padding:.75rem;display:grid}.hole-count label{border:1px solid var(--line);background:#f7f8f5;border-radius:.7rem;justify-content:center;align-items:center;gap:.35rem;min-width:0;min-height:44px;padding:.55rem .45rem;display:flex}.hole-count label.is-selected{color:var(--forest-dark);background:var(--forest-soft);border-color:#9fbcad;font-weight:750}.hole-count label input{flex:none}.duplicate-list{background:#fff5df;border-radius:.8rem;padding:.8rem}.duplicate-list h3{margin:0}.hole-metadata{gap:.4rem;margin-top:.35rem;display:flex}.hole-metadata label{color:var(--muted);align-items:center;gap:.25rem;font-size:.72rem;display:flex}.hole-metadata input{width:4.4rem;min-height:34px;padding:.25rem .4rem}.publication-conflicts{background:#fff5df;border-radius:.8rem;flex-direction:column;gap:.7rem;margin:1rem 0;padding:1rem;display:flex}.publication-conflicts fieldset{--fieldset-gutter:.7rem;padding-bottom:.7rem}.publication-conflicts label{align-items:center;gap:.5rem;display:flex}.publication-conflicts input{width:auto;min-height:auto}.round-card__status small{margin-top:.2rem;display:block}.course-import__header h1{margin-bottom:.4rem}.course-import__header>p:last-child{color:var(--muted);margin:0}.import-progress ol{grid-template-columns:repeat(4,minmax(0,1fr));gap:.4rem;margin:0;padding:0;list-style:none;display:grid}.import-progress li{min-width:0;color:var(--muted);border-top:3px solid var(--line);overflow-wrap:anywhere;flex-direction:column;gap:.25rem;padding-top:.55rem;font-size:.72rem;display:flex}.import-progress li>span{width:1.4rem;height:1.4rem;color:var(--muted);background:#edf0ed;border-radius:50%;place-items:center;font-size:.68rem;font-weight:800;display:grid}.import-progress li.is-current{color:var(--forest-dark);border-top-width:5px;border-top-color:var(--forest);font-weight:800}.import-progress li.is-current>span,.import-progress li.is-complete>span{color:#fff;background:var(--forest)}.import-source-picker{background:0 0;border:0;padding:0;overflow:visible}.import-source-picker legend{border:0;width:auto;margin:0 0 .55rem;padding:0;font-size:1.1rem}.import-source-picker>div{grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem;display:grid}.import-source-picker .decision-card{min-height:92px}.import-source-picker input{width:1.2rem;min-height:auto}.import-source-picker strong,.import-source-picker small{display:block}.import-source-picker small{color:var(--muted);margin-top:.2rem;line-height:1.35}.import-source-form{gap:.8rem}.file-dropzone{border-radius:var(--radius-lg);background:#f7f8f5;border:2px dashed #aeb8b1;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:.6rem .8rem;padding:1.1rem;display:grid}.file-dropzone:focus-within{border-color:var(--forest);box-shadow:0 0 0 3px #c07c2333}.file-dropzone>span{color:var(--muted);font-size:.85rem}.file-dropzone output{color:var(--forest-dark);grid-column:1/-1;font-weight:750}.import-preview-action{flex-direction:column;gap:.45rem;display:flex}.import-preview-action p{text-align:center;margin:0}.import-preview-action .button{width:100%}.import-error-actions{flex-direction:column;gap:.7rem;display:flex}.import-error-actions .page-actions{justify-content:stretch}.import-error-actions .button{flex:10rem}.course-preview{gap:1.25rem}.course-preview__intro{color:#fff;background:linear-gradient(135deg, var(--forest-dark), var(--forest));box-shadow:var(--shadow);border-radius:1.1rem;justify-content:space-between;align-items:center;gap:1rem;padding:1.1rem;display:flex}.course-preview__intro h2,.course-preview__intro p{margin:0}.course-preview__intro .eyebrow{color:#cae6d7;margin-bottom:.25rem}.course-preview__intro>div>p:last-child{color:#dcebe3;margin-top:.3rem;font-size:.85rem}.course-preview__status{flex-direction:column;align-items:flex-end;gap:.55rem;display:flex}.review-status{color:var(--forest-dark);background:#e6f3eb;border-radius:99px;flex:none;padding:.4rem .65rem;font-size:.75rem;font-weight:800}.review-status.needs-attention{color:#6a4a08;background:#fff0bd}.course-preview__status .fill-pars{color:#fff;background:#ffffff1f;border-color:#ffffff61;min-height:40px;padding:.5rem .7rem;font-size:.78rem;font-weight:750}.preview-section{background:var(--surface);border:1px solid var(--line);border-radius:1rem;flex-direction:column;gap:.85rem;padding:1.1rem;display:flex;box-shadow:0 4px 18px #1932260a}.preview-section__header{border-bottom:1px solid #e8ebe7;justify-content:space-between;align-items:baseline;gap:1rem;padding-bottom:.65rem;display:flex}.preview-section__header h3{color:var(--forest-dark);margin:0;font-size:1.15rem}.preview-section__header>small{color:var(--muted);white-space:nowrap;font-size:.72rem}.preview-course-grid{grid-template-columns:1fr 1fr;gap:.85rem;display:grid}.preview-course-name,.preview-course-address{grid-column:1/-1}.field-label{justify-content:flex-start;align-items:baseline;gap:.22rem;display:inline-flex}.required-mark{color:#b14b32;font-weight:850}.field-note{color:var(--muted);margin:0;font-size:.78rem;font-weight:500;line-height:1.35}.preview-layout__name{max-width:30rem}.preview-layout__heading{justify-content:space-between;align-items:center;gap:1rem;margin-top:.25rem;display:flex}.preview-layout__heading h3,.preview-layout__heading p{margin:0}.preview-layout__heading p{color:var(--muted);margin-top:.2rem;font-size:.82rem}.hole-editor-list{flex-direction:column;gap:.7rem;display:flex}.hole-editor{background:#f7f8f5;border:1px solid #e1e5df;border-radius:.85rem;padding:.8rem}.hole-editor.needs-attention{background:#fffaf0;border-color:#dfbd6a}.hole-editor__title{justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.65rem;display:flex}.hole-editor__title span{color:#6a4a08;background:#fff0bd;border-radius:99px;padding:.2rem .45rem;font-size:.7rem;font-weight:800}.hole-editor__fields{grid-template-columns:5.5rem 5.5rem 8rem minmax(12rem,1fr);gap:.65rem;display:grid}.hole-editor__fields input{min-width:0}.input-error{border-color:#b16a16;box-shadow:0 0 0 1px #b16a16}.publish-choice__options{grid-template-columns:1fr 1fr;gap:.65rem;display:grid}.publish-choice__options>.decision-card{min-height:72px}.publish-choice__options input{width:1.2rem;min-height:auto}.publish-choice__options span,.publish-choice__options strong,.publish-choice__options small{display:block}.publish-choice__options small{color:var(--muted);margin-top:.15rem}.preview-publish{flex-direction:column;gap:.6rem;display:flex}.preview-publish .button{width:100%}@media (width<=700px){.score-detail-modal{width:100%;max-height:100dvh;padding:max(1rem, env(safe-area-inset-top)) max(1rem, env(safe-area-inset-right)) max(1rem, env(safe-area-inset-bottom)) max(1rem, env(safe-area-inset-left));border-radius:0;position:fixed;inset:0}.import-source-picker>div{grid-template-columns:1fr}.course-preview__intro{flex-direction:column;align-items:flex-start}.course-preview__status{align-items:stretch;width:100%}.course-preview__status .review-status{align-self:flex-start}.preview-course-grid,.publish-choice__options{grid-template-columns:1fr}.preview-course-name,.preview-course-address{grid-column:auto}.preview-layout__heading{flex-direction:column;align-items:stretch}.hole-editor__fields{grid-template-columns:1fr 1fr}.hole-editor__description{grid-column:1/-1}}@media (width<=480px){.round-card{grid-template-columns:1fr}.round-card__results{border-top:1px solid var(--line);grid-area:auto;min-width:0;padding-top:.65rem}.guest-editor,.round-review__section{grid-template-columns:1fr;align-items:stretch}.guest-editor .button,.round-review__section .button{width:100%}.file-dropzone{grid-template-columns:1fr}.file-dropzone .button{width:100%}.file-dropzone output{grid-column:auto}}@media (height<=700px) and (orientation:portrait){.player-card{padding:.55rem .8rem}.throw-stepper{grid-template-columns:48px 1fr 48px;margin:.3rem 0}.step-button{width:48px;height:48px}.throw-stepper output strong{font-size:2rem}.par-button{min-height:44px}.penalty-row{margin-top:.35rem;padding-top:.35rem}.score-summary{display:none}}
