.pg-hero{background:linear-gradient(135deg,#0d5e33,#173f2d);color:#fff;border-radius:18px;padding:20px;margin-bottom:14px}.pg-hero h1{margin:3px 0 5px}.pg-player{max-width:700px}.pg-admin textarea{width:100%;padding:11px;border:1px solid #cfdad3;border-radius:9px}.pg-roster-list{display:flex;flex-direction:column;gap:8px}.pg-roster-wrap{display:flex;gap:6px;align-items:end}.pg-roster-row{flex:1;display:grid;grid-template-columns:minmax(180px,1.5fr) 80px 80px 95px auto;gap:8px;align-items:end;border:1px solid var(--line);padding:9px;border-radius:10px;background:#fbfcfb}.pg-score-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.pg-score-head h1{margin:3px 0}.pg-marker{display:grid;grid-template-columns:1fr minmax(220px,320px);gap:12px;align-items:center}.pg-nine{display:none}.pg-nine.active{display:block}.pg-card-shell{padding:0;overflow:hidden}.pg-cert-grid{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0}.pg-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:14px}.pg-kpis>div{background:#fff;border:1px solid var(--line);border-radius:12px;padding:14px;text-align:center}.pg-kpis strong{display:block;font-size:28px}.pg-kpis span{font-size:11px;color:var(--muted)}
@media(max-width:760px){.pg-roster-wrap{align-items:stretch;flex-direction:column}.pg-roster-row{grid-template-columns:1fr 1fr}.pg-roster-row>div:first-child{grid-column:1/-1}.pg-marker{grid-template-columns:1fr}.pg-kpis{grid-template-columns:1fr 1fr}.pg-score-head{align-items:flex-start;flex-direction:column}}

/* v1.1 score totals and certification */
.total-column{
  background:#eef5f0!important;
  border-left:2px solid #9fb8a8!important;
}
.pg-round-summary h2{
  margin-bottom:12px;
}
.pg-round-summary-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:10px;
}
.pg-round-summary-grid>div{
  background:#f7f9f8;
  border:1px solid var(--line);
  border-radius:12px;
  padding:13px;
  text-align:center;
}
.pg-round-summary-grid span{
  display:block;
  font-size:10px;
  color:var(--muted);
  font-weight:900;
}
.pg-round-summary-grid strong{
  display:block;
  font-size:28px;
  line-height:1.1;
}
.pg-round-summary-grid small{
  display:block;
  color:var(--green);
  font-weight:700;
  margin-top:2px;
}
.pg-final-score{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
  margin-top:12px;
  padding-top:12px;
  border-top:1px solid var(--line);
}
.pg-final-score>div{
  border-radius:12px;
  background:#edf6f0;
  padding:14px;
}
.pg-final-score span,.pg-final-score small{
  display:block;
  font-size:11px;
  color:var(--muted);
}
.pg-final-score strong{
  display:block;
  font-size:24px;
  margin-top:3px;
}
.pg-incomplete-card{
  margin-top:12px;
  padding:12px 14px;
  border-radius:10px;
  background:#fff6dc;
  border:1px solid #e5c874;
}
.pg-incomplete-card strong,.pg-incomplete-card span{
  display:block;
}
.pg-incomplete-card span{
  font-size:11px;
  color:var(--muted);
  margin-top:2px;
}
.pg-certify button:disabled{
  opacity:.48;
  cursor:not-allowed;
}
@media(max-width:650px){
  .pg-round-summary-grid{gap:6px}
  .pg-round-summary-grid>div{padding:10px 6px}
  .pg-round-summary-grid strong{font-size:23px}
  .pg-round-summary-grid small{font-size:9px}
  .pg-final-score{grid-template-columns:1fr}
}

/* v1.2 smoother score entry + handicap on scorecard */
.pg-hcp-cell{
  padding:3px!important;
}
.pg-hcp-input{
  width:46px!important;
  min-width:46px!important;
  height:38px!important;
  padding:3px!important;
  margin:0!important;
  text-align:center!important;
  border:1px solid #cbd8d0!important;
  border-radius:6px!important;
  background:#fff!important;
  font-size:14px!important;
  font-weight:900!important;
}
.pg-hcp-input:focus{
  outline:2px solid #8eb79b;
  outline-offset:1px;
}
@media(max-width:650px){
  .pg-hcp-input{
    width:42px!important;
    min-width:42px!important;
    height:36px!important;
    font-size:13px!important;
  }
}

/* v1.3 physical-card totals + no final-hole jump */
.out-repeat-column{
  background:#f7faf8!important;
  border-left:2px solid #c7d6cc!important;
}
.total-column{
  background:#eaf3ed!important;
  border-left:2px solid #8fac99!important;
}
.pg-hidden{
  display:none!important;
}

/* v1.4 Clubhouse Results */
.pg-kpis-6{grid-template-columns:repeat(6,1fr)}
.pg-status-line{margin-top:8px;font-size:12px}
.pg-toolbar{display:flex;gap:8px;align-items:center}
.status-badge{display:inline-block;border-radius:999px;padding:4px 8px;font-size:10px;font-weight:800;background:#eef1ef}
.status-badge-final{background:#e4f2e8;color:#145b2f}
.status-badge-playing{background:#e9f0f9;color:#315c8a}
.status-badge-await-player,.status-badge-await-marker{background:#fff3d7;color:#8a6116}
.status-badge-attention{background:#fde6e6;color:#9b2727}
.status-badge-not-started{background:#eef0f1;color:#5c6761}
.pg-good{padding:13px;border-radius:10px;background:#e7f4ea;color:#155b30;font-weight:800}
.pg-exception-list{display:flex;flex-direction:column;gap:8px}
.pg-exception-item{display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid var(--line);border-left:5px solid #d6a447;border-radius:10px;padding:10px}
.pg-exception-item>div{display:flex;flex-direction:column}
.pg-exception-item span{font-size:11px;color:var(--muted)}
.pg-results-table .pts{font-size:18px}
.pg-cert-status{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.pg-cert-status>div{border:1px solid var(--line);border-radius:10px;padding:10px;background:#f8faf9}
.pg-cert-status span{display:block;font-size:10px;color:var(--muted)}
.pg-cert-status strong{display:block;margin-top:3px}
@media(max-width:800px){.pg-kpis-6{grid-template-columns:repeat(2,1fr)}.pg-cert-status{grid-template-columns:1fr}}
@media print{header,.pg-toolbar,.pg-kpis,.pg-exception-list,.pg-good{display:none!important}.card{box-shadow:none!important;border:0!important}body{background:#fff!important}}


/* Scorecard24 PWA shell */
.sc24-install-wrap{max-width:760px;margin:12px auto 24px;padding:0 16px;text-align:center}
.sc24-install-btn{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:12px;background:#0f6f3d;color:#fff;padding:12px 16px;font-weight:800;cursor:pointer}
@media (display-mode:standalone){.sc24-install-wrap{display:none!important}body{overscroll-behavior-y:contain}}
@media (max-width:600px){.sc24-install-btn{width:100%}}
