/* /pace-calculator/ page styles. Built from /assets/polyatic.css tokens only (no new colours or fonts). */
.nojs{margin:1.25rem 0 0;padding:0.875rem 1rem;border:1px solid var(--line);border-left:0.25rem solid var(--accent);border-radius:0.625rem;background:var(--surface);color:var(--ink);font-size:0.9375rem;line-height:1.6}
.pc-head .sub{margin-bottom:1rem}
@media(max-width:520px){.pc-head h1{font-size:1.5rem;margin-bottom:0.25rem}.pc-head .sub{font-size:0.875rem;margin-bottom:0.625rem}}

.pc-duo{display:grid;gap:1rem;align-items:start}
@media(min-width:960px){.pc-duo{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:1.5rem}}
.pc-left,.pc-calc,.pc-plancard,.pc-splitcard,.pc-bandcard,.pc-tmcard,.pc-riegelcard{display:grid;gap:0.875rem;align-content:start;min-width:0}
.pc-left{gap:1rem}
@media(max-width:520px){.pc-calc,.pc-plancard,.pc-splitcard,.pc-bandcard,.pc-tmcard,.pc-riegelcard{padding:0.75rem}}
.pc-duo .k,.pc-row .k{margin:0;font-family:var(--mono);font-size:0.6875rem;font-weight:500;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}
.pc-modes{margin:0}
.pc-modes button{padding:0.4375rem 0.5rem;font-size:0.8125rem}
.pc-help{margin:0;font-size:0.8125rem;line-height:1.5;color:var(--muted)}
.pc-vh{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* calculator */
.pc-top{display:grid;grid-template-columns:minmax(0,0.8fr) minmax(0,1.6fr);gap:0.625rem;align-items:end}
.pc-findwrap{display:grid;gap:0.25rem;min-width:0}
.pc-presets{display:flex;flex-wrap:wrap;gap:0.375rem}
.pc-presets .chip{padding:0.375rem 0.625rem;font-size:0.8125rem}
.pc-fields{display:grid;gap:0.625rem}
@media(min-width:560px){.pc-fields{grid-template-columns:repeat(3,minmax(0,1fr))}}
.pc-field{display:grid;gap:0.25rem;min-width:0;padding:0.5rem 0.625rem;border:1px solid var(--line);border-radius:0.625rem;background:var(--surface)}
@media(max-width:559px){.pc-field{grid-template-columns:5.5rem minmax(0,1fr);align-items:center;padding:0.375rem 0.5rem}}
.pc-calcd{display:none;margin-left:0.25rem;padding:0 0.3125rem;border-radius:0.25rem;background:var(--accent-soft);color:var(--accent);font-size:0.625rem;letter-spacing:.04em}
.pc-field.is-out{border-color:var(--accent);background:var(--accent-soft)}
.pc-field.is-out .pc-calcd{display:inline-block}
.pc-field.is-out input{color:var(--accent);font-weight:650}
.pc-boxes{display:flex;align-items:center;gap:0.25rem;min-width:0}
.pc-boxes input{flex:1 1 0;min-width:0;width:100%;padding:0.5rem 0.4375rem;text-align:center;font-family:var(--mono);font-size:1.0625rem;font-variant-numeric:tabular-nums}
.pc-colon{color:var(--muted);font-family:var(--mono)}
.pc-u{flex:0 0 auto;font-family:var(--mono);font-size:0.8125rem;color:var(--muted)}
.pc-msg{margin:0;font-size:0.8125rem;color:var(--ink-2)}
.pc-msg:empty{display:none}
.pc-stats{grid-template-columns:repeat(auto-fit,minmax(5.25rem,1fr))}
.pc-stats .stat{padding:0.5rem 0.625rem;min-width:0}
.pc-stats .v{font-family:var(--mono);font-size:1.125rem;font-weight:600;overflow-wrap:anywhere}
.pc-stats .stat:first-child{border-color:var(--accent);background:var(--accent-soft)}
.pc-stats .stat:first-child .v{color:var(--accent)}

/* plan */
.pc-plancard .field{display:grid;gap:0.25rem}
.pc-plancard .field input{padding:0.5rem 0.625rem;font-size:0.9375rem}
.pc-actions{display:flex;flex-wrap:wrap;gap:0.5rem;align-items:center}
.pc-saved{list-style:none;margin:0;padding:0;display:grid;gap:0.375rem}
.pc-saved:empty{display:none}
.pc-saved li{display:flex;align-items:center;gap:0.5rem;padding:0.4375rem 0.625rem;border:1px solid var(--line);border-radius:0.5rem;background:var(--surface-2);min-width:0}
.pc-sinfo{flex:1 1 auto;display:grid;min-width:0}
.pc-sname{font-weight:600;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pc-sinfo small{font-family:var(--mono);font-size:0.75rem;color:var(--muted)}
.pc-saved .chip{padding:0.3125rem 0.625rem;font-size:0.8125rem}
.pc-del{border:0;background:transparent;color:var(--muted);font:inherit;font-size:0.75rem;padding:0.25rem;text-decoration:underline;text-underline-offset:2px;cursor:pointer}
.pc-del:hover{color:var(--bad)}

/* splits */
.pc-splittop{display:grid;gap:0.5rem}
.pc-strat{display:flex;gap:0.5rem;align-items:center;flex-wrap:wrap}
.pc-strat .modes{flex:1 1 14rem}
.pc-pct{display:inline-flex;align-items:center;gap:0.25rem;font-family:var(--mono);font-size:0.875rem;color:var(--ink-2)}
.pc-pct[hidden]{display:none}
.pc-pct input{width:3.5rem;padding:0.375rem 0.5rem;text-align:right;font-family:var(--mono);font-size:0.9375rem}
.pc-halves{margin:0;padding:0.5rem 0.75rem;border-left:0.25rem solid var(--signal);background:var(--surface-2);border-radius:0.375rem;font-size:0.8125rem;line-height:1.55;color:var(--ink-2)}
.pc-tablewrap{overflow:auto;max-height:34rem;border:1px solid var(--line);border-radius:0.5rem}
.pc-table{width:100%;border-collapse:collapse;font-size:0.875rem}
.pc-table th,.pc-table td{padding:0.375rem 0.5rem;border-bottom:1px solid var(--line);text-align:left;white-space:nowrap}
.pc-table thead th{position:sticky;top:0;background:var(--surface);font-family:var(--mono);font-size:0.6875rem;font-weight:500;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);border-bottom-color:var(--line-2)}
.pc-table tbody th{font-weight:600;color:var(--ink)}
.pc-table .num{text-align:right;font-family:var(--mono);font-variant-numeric:tabular-nums}
.pc-table .cum{font-weight:650;color:var(--ink)}
.pc-table td.lap,.pc-table td.lpace{color:var(--ink-2)}
.pc-table tr.pc-fin th,.pc-table tr.pc-fin .cum{color:var(--accent)}
.pc-table tr.mine td,.pc-table tr.mine th{background:var(--accent-soft);color:var(--accent);font-weight:650}
.pc-table .pc-empty{white-space:normal;color:var(--muted);font-size:0.8125rem}
.pc-use{border:1px solid var(--line-2);background:var(--surface);color:var(--ink-2);font:inherit;font-size:0.75rem;font-weight:600;padding:0.1875rem 0.5rem;border-radius:0.375rem;cursor:pointer}
.pc-use:hover{border-color:var(--ink);color:var(--ink)}

/* the lower row */
.pc-row{display:grid;gap:1rem;margin-top:1rem;align-items:start}
@media(min-width:960px){.pc-row{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr) minmax(0,1fr);gap:1.5rem;margin-top:1.5rem}}
.pc-tmcard .pc-tablewrap{max-height:none}
.pc-riegelcard .pc-table{border:1px solid var(--line);border-radius:0.5rem}
.pc-race{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,9rem),1fr));gap:0.625rem}
.pc-race .field{display:grid;gap:0.25rem}
.pc-race .field[hidden]{display:none}
.pc-race select,.pc-race input{padding:0.5rem 0.5rem;font-size:0.9375rem}
.pc-race .pc-boxes input{font-size:0.9375rem}
.pc-src{margin:0;font-size:0.75rem;line-height:1.5;color:var(--muted)}
.pc-src a{color:inherit}

/* band */
.pc-bandgrid{display:grid;gap:1rem;grid-template-columns:minmax(0,1fr) auto;align-items:start}
.pc-bandctl{display:grid;gap:0.75rem;min-width:0}
.pc-bandctl>div{display:grid;gap:0.25rem}
.pc-bandctl .field{display:grid;gap:0.25rem}
.pc-bandctl select{padding:0.5rem 0.625rem;font-size:0.875rem}
.pc-bandctl input[type=range]{width:100%;accent-color:var(--accent)}
.pc-bandctl .btn:disabled{opacity:.5;cursor:not-allowed}
.pc-preview{max-height:26rem;overflow:auto;padding:0.25rem}
.pc-strip{--strip:22mm;width:var(--strip);border:1px dashed var(--line-2);background:var(--surface);color:var(--ink);font-family:var(--mono)}
.pc-striphead{display:grid;gap:0.125rem;padding:0.25rem;border-bottom:1px solid var(--ink);font-size:0.5625rem;line-height:1.25;overflow-wrap:anywhere}
.pc-striphead b{font-size:0.625rem}
.pc-striphead b:empty{display:none}
.pc-striprows{list-style:none;margin:0;padding:0;font-size:0.625rem;font-variant-numeric:tabular-nums}
.pc-striprows li{display:flex;justify-content:space-between;gap:0.125rem;padding:0.0625rem 0.1875rem}
.pc-striprows li:nth-child(even){background:var(--surface-2)}

.pc-formula{font-family:var(--mono);font-size:0.9375rem;padding:0.5rem 0.75rem;background:var(--surface-2);border-radius:0.375rem;overflow-x:auto;white-space:nowrap}
