.tools-page{--card:#fff;--accent:#d9ef88}.tools-page .site-header,.tools-page .site-footer{max-width:1240px}.tools-main{max-width:1240px;margin:auto;padding:20px 24px 64px}.tool-intro{max-width:800px;margin:8px 0 28px}.tool-intro h1{font-size:clamp(2rem,5vw,3.25rem);letter-spacing:-.045em;line-height:1.08;margin:10px 0 16px}.tool-intro p{color:var(--muted);max-width:66ch}.tools-page .eyebrow{font-size:.875rem}.tool-workspace{display:grid;gap:24px;align-items:start}.tool-panel{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:24px;min-width:0}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:20px}.panel-heading h2{font-size:1.25rem;letter-spacing:-.02em}.panel-heading .step{display:inline-grid;place-items:center;border-radius:6px;background:var(--accent);width:28px;height:28px;margin-right:8px;font-size:.875rem;vertical-align:2px}.tools-page .field{display:flex;flex-direction:column;gap:6px;margin-bottom:18px;min-width:0}.tools-page label,.tools-page legend{font-size:.9375rem;font-weight:650}.tools-page .field-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.tools-page input,.tools-page select,.tools-page textarea{width:100%;font:inherit;font-size:1rem;line-height:1.45;color:var(--ink);border:1px solid #a9b7ac;border-radius:8px;padding:11px 12px;background:#fff;min-height:46px}.tools-page textarea{resize:vertical;min-height:220px;font-variant-numeric:tabular-nums}.tools-page input:focus-visible,.tools-page select:focus-visible,.tools-page textarea:focus-visible{outline:3px solid #91b64d;outline-offset:2px}.tools-page input::placeholder,.tools-page textarea::placeholder{color:#6a786e;opacity:1}.tools-page .hint{font-size:.875rem;color:var(--muted);line-height:1.5;font-weight:400}.tools-page .hint a{font-weight:600}.course-fields{border:1px solid var(--line);border-radius:10px;padding:16px;margin-bottom:18px;background:#f6f8f2}.course-fields .field:last-child{margin-bottom:0}.tools-page .button{border-radius:9px;min-height:46px;padding:11px 18px}.tools-page .button.primary{background:var(--accent);color:var(--ink);font-weight:750}.tools-page .button.primary:hover{background:#cce577}.tools-page .button.secondary{background:#fff;color:var(--ink);border:1px solid #a9b7ac}.tools-page .button.secondary:hover{background:#f0f3e9}.tools-page .button:disabled{opacity:.5;cursor:not-allowed}.tools-page .button.wide{width:100%}.text-button{border:0;padding:6px 0;background:none;color:var(--ink);text-decoration:underline;text-underline-offset:3px;font-size:.875rem;min-height:36px}.form-actions{display:flex;gap:16px;flex-wrap:wrap;margin:-8px 0 10px}.tool-error{background:#fff0eb;border:1px solid #c97e62;color:#762e18;border-radius:8px;padding:12px 14px;margin-bottom:16px;font-size:.9375rem}.tool-status{font-size:.9375rem;color:var(--muted);margin-top:12px}.tool-status:empty{display:none}.tool-empty{padding:28px 10px 34px;max-width:42ch}.tool-empty h3{font-size:1.375rem;margin:16px 0 12px}.tool-empty p{color:var(--muted)}.empty-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;width:144px}.empty-grid span{display:block;height:34px;border-radius:6px;background:#e7eddf}.empty-grid span:nth-child(3n){background:var(--accent)}.result-summary{display:flex;flex-wrap:wrap;gap:16px 28px;padding:16px 0 20px;border-bottom:1px solid var(--line);margin-bottom:18px}.result-stat strong{font-size:1.65rem;font-weight:750;line-height:1.2;display:block;letter-spacing:-.03em}.result-stat span{color:var(--muted);font-size:.875rem}.team-cards{display:grid;gap:14px}.team-card{border:1px solid var(--line);border-radius:10px;overflow:hidden;break-inside:avoid}.team-card header{display:flex;gap:12px;align-items:center;justify-content:space-between;background:#eff3e7;padding:13px 16px}.team-card h3{font-size:1rem}.team-handicap{text-align:right;line-height:1.3}.team-handicap strong{font-size:1.25rem;display:block}.team-handicap span{font-size:.75rem;color:var(--muted)}.team-card ul{list-style:none;padding:6px 16px;margin:0}.team-card li{display:flex;justify-content:space-between;gap:12px;padding:7px 0;font-size:.9375rem;overflow-wrap:anywhere}.team-card li span:last-child{font-variant-numeric:tabular-nums;flex-shrink:0;color:var(--muted)}.team-card details{padding:6px 16px 12px;font-size:.875rem}.team-card summary{cursor:pointer;min-height:36px;display:flex;align-items:center;font-weight:600}.team-card details p{margin-top:8px;color:var(--muted);line-height:1.6}.result-actions{display:flex;flex-wrap:wrap;gap:8px;margin:22px 0 12px}.result-actions .button{font-size:.9375rem}.handoff{margin-top:16px;padding-top:18px;border-top:1px solid var(--line)}.handoff .button{width:100%}.handoff p{font-size:.875rem;color:var(--muted);margin-top:10px}.tool-notice{padding:12px 14px;background:#fff6dc;border-left:3px solid #b58d27;font-size:.9375rem;line-height:1.6;margin:16px 0}.tools-page .check{display:flex;align-items:flex-start;gap:10px;margin:8px 0 20px;cursor:pointer;font-weight:500}.tools-page .check input{width:19px;min-height:19px;flex-shrink:0;margin:4px 0 0;accent-color:var(--ink)}.tee-heading{margin-bottom:16px}.tee-heading h3{font-size:1.5rem;letter-spacing:-.025em;overflow-wrap:anywhere}.tee-heading p{font-size:.9375rem;color:var(--muted);margin-top:6px}.tee-table-wrap{width:100%;overflow:auto;border:1px solid var(--line);border-radius:10px}.tee-table{width:100%;border-collapse:collapse;text-align:left;font-size:.9375rem}.tee-table th{font-size:.8125rem;font-weight:750;text-transform:uppercase;letter-spacing:.04em;background:#eff3e7;padding:12px}.tee-table td{padding:13px 12px;vertical-align:top;border-top:1px solid var(--line)}.tee-table td:first-child{font-weight:650;white-space:nowrap}.tee-table td:nth-child(2){white-space:nowrap}.tee-table .group-title{display:block;font-weight:650}.tee-table .player-list{display:block;color:var(--muted);margin-top:3px;line-height:1.5;overflow-wrap:anywhere}.tee-table .tee-group+.tee-group{margin-top:10px}.tool-explainer{max-width:860px;margin:44px auto 0}.tool-explainer section{margin-top:30px}.tool-explainer h2{font-size:1.5rem;letter-spacing:-.03em;margin-bottom:14px}.tool-explainer h3{font-size:1.05rem;margin:18px 0 8px}.tool-explainer p,.tool-explainer li{color:var(--muted)}.tool-explainer p+p{margin-top:14px}.tool-explainer ol{padding-left:22px}.tool-explainer li{padding:4px 0}.allowance-table{width:100%;border-collapse:collapse;font-size:.9375rem;margin:16px 0}.allowance-table th,.allowance-table td{text-align:left;padding:12px 10px;border-bottom:1px solid var(--line)}.allowance-table th{background:#e8eddd}.tool-cta{border-top:1px solid var(--line);padding-top:30px;margin-top:40px;display:flex;gap:24px;align-items:center;justify-content:space-between}.tool-cta h2{font-size:1.4rem;margin-bottom:8px}.tool-cta p{color:var(--muted);max-width:60ch}.tool-cta .button{flex-shrink:0}.privacy-note{font-size:.875rem;color:var(--muted);margin:16px 0 0}.print-brand{display:none}.copy-fallback{margin-top:18px}.copy-fallback textarea{min-height:140px}.tools-page .site-footer{border-top:1px solid var(--line)}.tool-hub-grid{display:grid;gap:20px}.tool-hub-card{display:flex;flex-direction:column;align-items:flex-start;background:#fff;padding:30px;border:1px solid var(--line);border-radius:16px}.tool-hub-card h2{font-size:1.65rem;letter-spacing:-.025em;margin:18px 0 12px}.tool-hub-card p{color:var(--muted);margin-bottom:20px}.tool-hub-card ul{padding-left:20px;margin:0 0 24px;color:var(--muted)}.tool-hub-card li{margin:6px 0}.tool-hub-card .eyebrow{color:var(--muted)}
@media(min-width:900px){.tools-main{padding-inline:40px}.tool-workspace{grid-template-columns:minmax(0,440px) minmax(0,1fr)}.tool-panel{padding:28px}.tool-hub-grid{grid-template-columns:1fr 1fr}}
@media(min-width:1150px){.tool-hub-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.team-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:599px){.tools-main{padding-inline:18px;padding-top:10px}.tools-page .site-header{padding-inline:18px}.tool-panel{padding:20px 16px}.tools-page .field-row{gap:12px}.tool-cta{display:block}.tool-cta .button{margin-top:20px}.tools-page .site-header nav{gap:12px}.tools-page .site-header .wordmark{font-size:2rem}.tee-table th,.tee-table td{padding:10px 8px}.result-actions .button{flex:1 1 auto}.tool-hub-card{padding:24px}}
@media(max-width:359px){.tools-page .field-row{grid-template-columns:1fr;gap:0}.tools-page .site-header nav{font-size:.875rem}.tools-main{padding-inline:12px}}
/* Focused entry screens: optional settings stay available without leading the form. */
.simple-tool .tools-main{padding-top:8px}
.simple-tool .tool-intro{margin:8px 0 24px;max-width:720px}
.simple-tool .tool-intro h1{font-size:clamp(1.875rem,4vw,2.75rem);margin:0 0 10px;letter-spacing:-.04em}
.simple-tool .tool-intro p{font-size:1rem;line-height:1.5}
.simple-tool .tool-panel{padding:24px}
.simple-tool .field{margin-bottom:16px}
.simple-tool .label-line,.simple-tool .roster-meta{display:flex;justify-content:space-between;align-items:center;gap:12px}
.simple-tool .label-line .text-button{flex-shrink:0;min-height:32px;padding:0;font-weight:500}
.simple-tool .roster-field{gap:8px;margin-bottom:18px}
.simple-tool .roster-field textarea{min-height:152px;line-height:1.65}
.simple-tool[data-tool=tee] .roster-field textarea{min-height:126px}
.simple-tool .roster-meta{min-height:24px;margin-top:-2px}
.simple-tool .roster-meta .text-button{min-height:28px;padding:0}
.simple-tool .field-row{gap:12px}
.simple-tool[data-tool=teams] #team-form>.field-row{grid-template-columns:minmax(0,.65fr) minmax(0,1.35fr)}
.simple-tool .basis-help{margin:-4px 0 16px}
.simple-tool .course-fields{padding:14px;margin:0 0 16px}
.simple-tool .course-fields>p{margin-bottom:12px}
.simple-tool .course-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.simple-tool .course-grid .field{margin:0}
.simple-tool .setup-options{border-top:1px solid var(--line);margin-bottom:18px}
.simple-tool .setup-options>summary{display:flex;flex-wrap:wrap;align-items:center;gap:2px 10px;padding:14px 26px 14px 0;min-height:54px;position:relative;cursor:pointer;font-size:.875rem;font-weight:650;list-style:none}
.simple-tool .setup-options>summary::-webkit-details-marker{display:none}
.simple-tool .setup-options>summary::after{content:'+';position:absolute;right:2px;font-size:1.25rem;font-weight:400}
.simple-tool .setup-options[open]>summary::after{content:'−'}
.simple-tool .option-summary{font-size:.875rem;font-weight:400;color:var(--muted);margin-left:auto}
.simple-tool .options-content{padding:6px 0 4px}
.simple-tool .options-content .hint{margin-bottom:12px}
.simple-tool .options-content .field .hint{margin-bottom:0}
.simple-tool .options-content .field-row:last-child .field{margin-bottom:0}
.simple-tool .import-summary{background:#eff3e7;padding:10px 12px;margin-bottom:18px;border-radius:7px;font-size:.875rem;font-weight:600}
.simple-tool .privacy-note{margin-top:12px;font-size:.875rem}
.simple-tool .tool-output-panel{scroll-margin-top:18px}
.simple-tool .result-panel-heading{margin-bottom:14px}
.simple-tool .result-panel-heading h2{font-size:1.25rem;letter-spacing:-.025em}
.simple-tool .result-panel-heading h2:focus{outline:none}
.simple-tool .result-toolbar{border-bottom:1px solid var(--line);padding-bottom:10px;margin-bottom:16px}
.simple-tool .primary-result-actions{display:flex;gap:8px}
.simple-tool .primary-result-actions>.button{flex:1;font-size:.9375rem;padding:11px 14px}
.simple-tool .export-options{margin-top:2px}
.simple-tool .export-options>summary{font-size:.875rem;cursor:pointer;padding:10px 0;min-height:40px;color:var(--muted)}
.simple-tool .export-option-buttons{display:flex;gap:22px;flex-wrap:wrap}
.simple-tool .export-option-buttons .text-button{padding:6px 0;min-height:44px}
.simple-tool .result-overview{font-size:.875rem;color:var(--muted);margin-bottom:16px}
.simple-tool .result-footnote{margin-top:16px}
.simple-tool .team-cards{gap:12px}
.simple-tool .team-card header{padding:12px 14px}
.simple-tool .team-card ul{padding:4px 14px}
.simple-tool .team-card details{padding:0 14px 6px}
.simple-tool .team-card summary{font-size:.875rem;color:var(--muted)}
.simple-tool .tee-heading{margin-bottom:10px}
.simple-tool .tee-heading p:empty{display:none}
.mobile-hole-label{display:none}
.simple-tool .tool-learn{max-width:none;margin-top:28px;border-block:1px solid var(--line)}
.simple-tool .tool-learn>summary{padding:18px 0;font-size:1rem;font-weight:650;cursor:pointer}
.simple-tool .learn-content{max-width:800px;padding-bottom:24px}
.simple-tool .learn-content>section:first-child{margin-top:8px}
.simple-tool .tool-cta{border:0;margin-top:24px;padding-top:0}
.simple-tool .tool-cta h2{font-size:1.25rem}
.simple-tool .tool-cta p{font-size:.9375rem}
.simple-tool .tool-empty{padding:20px 0;max-width:32ch}
.simple-tool .tool-empty h3{font-size:1.125rem;font-weight:600;margin:0 0 8px}
.simple-tool .tool-empty p{font-size:.9375rem}
@media screen and (max-width:899px){
  .simple-tool .tool-output-panel:not([data-ready=true]){display:none}
  .simple-tool .tool-workspace{gap:20px}
  .simple-tool .team-cards{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media screen and (max-width:599px){
  .simple-tool .site-header{padding-block:16px}
  .simple-tool .site-header .wordmark{font-size:1.875rem}
  .simple-tool .site-header .wordmark img{width:25px;height:25px}
  .simple-tool .site-header nav{gap:16px;font-size:.875rem}
  .simple-tool .tools-main{padding-inline:18px;padding-top:4px;padding-bottom:36px}
  .simple-tool .tool-intro{margin:8px 0 20px}
  .simple-tool .tool-intro h1{font-size:1.875rem;line-height:1.12;margin-bottom:8px}
  .simple-tool .tool-intro p{font-size:.9375rem}
  .simple-tool .tool-panel{padding:18px 16px;border-radius:12px}
  .simple-tool .tool-input-panel{margin-inline:-2px}
  .simple-tool .team-cards{grid-template-columns:1fr}
  .simple-tool .team-card li{padding-block:5px}
  .simple-tool .tool-status{font-size:.875rem}
  .simple-tool .option-summary{margin-left:0;flex-basis:100%}
  .simple-tool .setup-options>summary{padding-block:12px}
  .simple-tool .tee-table-wrap{border:0;overflow:visible}
  .simple-tool .tee-table,.simple-tool .tee-table tbody{display:block}
  .simple-tool .tee-table thead{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
  .simple-tool .tee-table tr{display:grid;grid-template-columns:minmax(0,1fr) auto;border:1px solid var(--line);border-radius:9px;margin-bottom:10px;padding:12px 14px;gap:8px}
  .simple-tool .tee-table td{display:block;border:0;padding:0;min-width:0}
  .simple-tool .tee-table td:nth-child(2){font-size:.875rem;color:var(--muted)}
  .simple-tool .tee-table td:last-child{grid-column:1/-1}
  .simple-tool .mobile-hole-label{display:inline}
  .simple-tool .tee-table .player-list{font-size:.9375rem}
}
@media screen and (max-width:359px){
  .simple-tool .field-row{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:10px}
  .simple-tool .course-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .simple-tool input,.simple-tool select{padding-inline:8px}
  .simple-tool .primary-result-actions{flex-direction:column}
  .simple-tool .label-line{gap:8px;align-items:flex-start}
}
@media print{@page{size:auto;margin:14mm}:root{background:#fff;color:#000;font-size:11pt}.tools-page .site-header,.tools-page .site-footer,.tool-intro,.tool-nav,.tool-explainer,.tool-cta,.tool-input-panel,.privacy-note,.no-print,.skip,.result-actions,.handoff,.tool-status,.panel-heading,.copy-fallback{display:none!important}.tools-main{max-width:none;padding:0}.tool-workspace{display:block}.tool-output-panel{border:0;padding:0;box-shadow:none}.print-brand{display:block;margin-bottom:18px;font-size:10pt;border-bottom:1px solid #aaa;padding-bottom:8px}.team-cards{grid-template-columns:1fr 1fr;gap:12px}.team-card{border:1px solid #aaa;border-radius:0}.team-card header{background:#f2f2f2}.team-card details{display:none}.result-summary{margin-top:0}.tee-table-wrap{overflow:visible;border-radius:0}.tee-table{font-size:10pt}.tee-table thead{display:table-header-group}.tee-table tr{break-inside:avoid}.tee-table td,.tee-table th{padding:9px 8px}.tool-notice{background:none;border-color:#555}.tee-heading h3{font-size:18pt}.tool-empty{display:none}.result-stat strong{font-size:18pt}}
.tool-hub-card .button{margin-top:auto}
