@font-face{font-family:Fraunces;src:url(../fonts/fraunces-latin-var.woff2) format("woff2");font-weight:100 900;font-style:normal;font-display:swap}@font-face{font-family:IBM Plex Mono;src:url(../fonts/plex-mono-400.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:IBM Plex Mono;src:url(../fonts/plex-mono-500.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap}:root{--paper: #f7f5ef;--panel: #e8efea;--surface: #fcfbf6;--ink: #2b2a26;--ink-muted: #6e6c64;--line: #dcd8cc;--line-strong: #c9c4b6;--green: #2c6e49;--green-hi: #1f4c33;--rust: #a44a2f;--rust-hi: #7a3422;--well: #22261f;--well-ink: #f7f5ef;--danger: #8e2c2c;--badge-up-bg: #dcebe1;--badge-up-ink: #1f4c33;--badge-down-bg: #f3e0da;--badge-down-ink: #7a3422;--badge-new-bg: #e8efea;--badge-new-ink: #2c6e49;--badge-flat-bg: #edece6;--badge-flat-ink: #6b675e;--badge-prov-bg: #f8efd8;--badge-prov-ink: #775912;--font-body: -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif;--font-display: "Fraunces", Georgia, serif;--font-mono: "IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--bg: var(--paper);--card: var(--surface);--muted: var(--ink-muted);--primary: var(--ink);--accent: var(--rust);--accent-2: var(--green);--warn-bg: var(--badge-prov-bg);--warn-line: #dcc283}*{box-sizing:border-box}html,body{margin:0;padding:0}body{font-family:var(--font-body);background:var(--bg);color:var(--ink);font-size:15px;line-height:1.45}h1,h2,h3{font-family:var(--font-display);color:var(--ink);text-wrap:balance}h1{font-weight:580;letter-spacing:-.015em;line-height:1.1}h2{font-weight:560;letter-spacing:-.005em;line-height:1.2}h3{font-weight:550;line-height:1.25}p{text-wrap:pretty}.mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.num{font-family:var(--font-mono);font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap}.label,.eyebrow{font-family:var(--font-mono);font-weight:500;font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-muted)}:focus-visible{outline:2px solid var(--rust);outline-offset:2px}a{color:var(--green);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:2px}a:hover{color:var(--rust);text-decoration-thickness:2px}.app{min-height:100vh;display:flex;flex-direction:column}main{flex:1;max-width:1200px;width:100%;margin:0 auto;padding:20px 16px 28px}.app-header{background:var(--paper);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:10}.app-header-inner{max-width:1200px;margin:0 auto;padding:6px 16px;display:flex;flex-wrap:wrap;align-items:center;gap:4px 20px}.brand{display:flex;align-items:center;gap:10px;background:none;border:none;color:var(--ink);padding:4px 0;cursor:pointer;text-align:left;text-transform:none;letter-spacing:0}.brand:hover{background:none;border:none}.brand .jackrabbit-mark{width:30px;height:30px;color:var(--rust);flex:none}.brand-text{display:flex;flex-direction:column;line-height:1.15}.brand-name{font-family:var(--font-display);font-weight:600;font-size:19px;white-space:nowrap}.brand-sub{font-family:var(--font-mono);font-weight:500;font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:var(--ink-muted);white-space:nowrap}.steps{display:flex;flex-wrap:wrap;gap:0 2px;order:3;flex-basis:100%;border-top:1px solid var(--line);margin-top:4px}.step{font-family:var(--font-mono);font-weight:500;font-size:11.5px;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-muted);background:transparent;border:none;border-bottom:2px solid transparent;border-radius:0;padding:11px 9px 8px;display:inline-flex;align-items:baseline;gap:6px;cursor:pointer;transition:color .18s,border-color .18s}.step:hover{color:var(--ink);background:transparent;border-bottom-color:var(--line-strong)}.step:active{transform:none}.step-n{font-size:10.5px;font-variant-numeric:tabular-nums;color:var(--ink-muted);min-width:1.1em}.step-name{color:inherit}.step.done .step-n{color:var(--green)}.step.active{color:var(--ink);border-bottom-color:var(--rust)}.step.active .step-n{color:var(--rust)}.save-status{margin-left:auto;font-family:var(--font-mono);font-size:11px;letter-spacing:.04em;color:var(--ink-muted);white-space:nowrap}.steps-picker{display:none;flex:1;min-width:0}.steps-picker select{width:100%;max-width:260px;padding:8px 10px;font-size:15px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.section{background:var(--surface);border:1px solid var(--line);padding:18px 20px 20px;margin-bottom:16px}.section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px 16px;flex-wrap:wrap;border-bottom:1px solid var(--line);padding-bottom:9px;margin-bottom:14px}.section h2{margin:0;font-size:21px}.section-right:empty{display:none}.callout,.tie-box{background:var(--surface);border:1px solid var(--line);box-shadow:inset 3px 0 0 var(--rust);padding:10px 14px;margin:10px 0;font-size:14px}.tie-box ul{margin:6px 0 0;padding-left:20px}.totals{margin-top:12px}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px}label{display:flex;flex-direction:column;gap:5px;font-family:var(--font-mono);font-weight:500;font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-muted)}input,select,textarea{font-family:var(--font-body);font-size:15px;color:var(--ink);background:var(--surface);border:1px solid var(--line-strong);border-radius:0;padding:9px 11px;transition:border-color .18s}input:hover,select:hover{border-color:var(--ink-muted)}input:focus,select:focus{border-color:var(--rust);outline-offset:0}input.search{width:100%;font-size:16px;padding:11px 13px}.row-check{flex-direction:row;align-items:center;gap:7px;margin-top:8px;font-family:var(--font-body);font-size:14px;text-transform:none;letter-spacing:0;color:var(--ink)}.row-check.sm{margin:0;font-size:13px}.row-check input{accent-color:var(--rust)}button{font-family:var(--font-mono);font-weight:500;font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--paper);background:var(--ink);border:1px solid var(--ink);border-radius:0;padding:10px 14px;display:inline-flex;align-items:center;justify-content:center;gap:8px;white-space:nowrap;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color .18s,border-color .18s,color .18s,transform .12s}button:hover{background:#45433c;border-color:#45433c}button:active{transform:scale(.98)}button:disabled{opacity:.4;cursor:not-allowed;transform:none}button.secondary{background:transparent;color:var(--ink);border-color:var(--line-strong)}button.secondary:hover{background:transparent;border-color:var(--ink)}button.quiet{background:transparent;color:var(--ink);border-color:transparent}button.quiet:hover{border-color:var(--line-strong);background:#e8efea80}button.danger{background:var(--danger);border-color:var(--danger)}button.danger:hover{background:#6f2222;border-color:#6f2222}button.outline-danger{background:transparent;color:var(--danger);border-color:var(--danger)}button.outline-danger:hover{background:var(--badge-down-bg)}button.big{font-size:13px;letter-spacing:.08em;padding:14px 22px}button.sm{padding:6px 9px;font-size:11px}.btn-row{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin:10px 0 4px}.sticky-actions{position:sticky;bottom:8px;background:var(--paper);border:1px solid var(--line);padding:10px;margin-top:8px;box-shadow:0 -8px 20px #2b2a260f}.tbl-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}.tbl{width:100%;border-collapse:collapse;margin-top:4px}.tbl th,.tbl td{text-align:left;padding:8px;border-bottom:1px solid var(--line);vertical-align:middle}.tbl th{font-family:var(--font-mono);font-weight:500;font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-muted);border-bottom:1px solid var(--line-strong);white-space:nowrap}.tbl tbody tr:hover{background:#e8efea8c}.tbl td>b{white-space:nowrap}.tbl select,.tbl input:not(.award){padding:5px 8px;font-size:14px}tr.scratched td{opacity:.45;text-decoration:line-through}.btn-cell{display:flex;gap:6px}.badge{display:inline-block;margin-left:6px;padding:2px 6px;font-family:var(--font-mono);font-weight:500;font-size:10px;text-transform:uppercase;letter-spacing:.06em;background:var(--badge-flat-bg);color:var(--badge-flat-ink);vertical-align:middle}.badge.hp{background:var(--badge-new-bg);color:var(--badge-new-ink)}.badge.fte{background:var(--badge-flat-bg);color:var(--badge-flat-ink)}.badge.leftover{background:var(--badge-down-bg);color:var(--badge-down-ink)}.title-toggles{white-space:nowrap}.title-chip{background:var(--surface);color:var(--ink-muted);border:1px solid var(--line);font-size:10.5px;padding:4px 6px;margin-right:3px}.title-chip:hover{background:var(--surface);border-color:var(--ink-muted)}.title-chip.on,.title-chip.on:hover{background:var(--ink);color:var(--paper);border-color:var(--ink)}.jacket{display:inline-flex;width:30px;height:30px;align-items:center;justify-content:center;border-radius:5px;border:2px solid transparent;font-family:var(--font-mono);font-weight:500;font-size:15px}.jacket.unset{background:var(--badge-flat-bg);color:var(--ink-muted);border-color:var(--line-strong)}.division-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:12px;margin-top:4px}.division-card{border:1px solid var(--line);padding:12px;background:var(--paper)}.division-head{display:flex;gap:6px;align-items:center}.division-name{flex:1;font-weight:700;min-width:0}.dog-list{list-style:none;margin:8px 0 0;padding:0}.dog-list li{display:flex;justify-content:space-between;align-items:center;gap:6px;padding:6px 4px;border-bottom:1px solid var(--line)}.dog-actions{display:flex;gap:4px;align-items:center}.race-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:12px;margin-top:4px}.race-card{border:1px solid var(--line);padding:12px;background:var(--paper)}.race-card.done{border-color:var(--green);box-shadow:inset 3px 0 0 var(--green)}.race-head{display:flex;justify-content:space-between;align-items:center;gap:6px;flex-wrap:wrap}.race-head>b{font-family:var(--font-display);font-weight:560;font-size:17px}.race-flags{display:flex;gap:8px;align-items:center}.race-tbl td{border-bottom:1px solid var(--line)}.post-cell{width:36px}.outcome-cell{display:flex;gap:3px;flex-wrap:wrap}.outcome-cell .pl{background:var(--panel);color:var(--ink);border-color:var(--line);min-width:30px}.outcome-cell .pl:hover{background:var(--panel);border-color:var(--ink-muted)}.outcome-cell .st:hover{background:var(--badge-down-bg)}.tile-of{font-size:18px;color:var(--ink-muted);margin-left:2px}.outcome-cell .pl.on{background:var(--ink);color:var(--paper);border-color:var(--ink)}.outcome-cell .st{background:transparent;color:var(--danger);border-color:var(--danger)}.outcome-cell .st.on{background:var(--danger);color:var(--paper)}.pts-cell{font-family:var(--font-mono);font-variant-numeric:tabular-nums;white-space:nowrap;text-align:right}.race-foot{display:flex;gap:8px;margin-top:10px}.race-foot .note{flex:1}.swap-target{cursor:pointer}tr.picked td{background:var(--badge-prov-bg)}input.award{width:66px;padding:5px 6px;font-family:var(--font-mono);font-variant-numeric:tabular-nums;text-align:right}input.award.overridden{border-color:var(--rust);box-shadow:inset 3px 0 0 var(--rust)}.trophies{margin-top:12px;font-size:14.5px}.explain{font-size:13.5px;color:var(--ink-muted)}.flags{color:var(--danger);font-family:var(--font-mono);font-size:11.5px}.app-footer{background:var(--well);color:#f7f5efd9;font-size:13px;padding:22px 16px 28px;margin-top:28px}.footer-inner{max-width:1200px;margin:0 auto}.footer-inner.narrow{max-width:1000px}.app-footer a{color:var(--well-ink)}.app-footer a:hover{color:var(--well-ink);text-decoration-thickness:2px}.jackrabbit-link{white-space:nowrap}.jackrabbit-link .jackrabbit-mark{height:15px;width:15px;margin-right:5px;vertical-align:-3px}.landing{max-width:1000px;margin:0 auto}.hero{background:var(--panel);border:1px solid var(--line);padding:26px 24px 22px;margin-bottom:16px}.landing h1{font-size:36px;margin:0 0 6px}.landing .subtitle{color:var(--ink-muted);font-size:16px;margin:0}.tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px;margin:6px 0 14px}.tile{background:var(--panel);border:1px solid var(--line);padding:12px 14px 11px}.tile-value{font-family:var(--font-display);font-weight:500;font-variant-numeric:lining-nums tabular-nums;font-size:32px;line-height:1;color:var(--ink)}.tile-label{font-family:var(--font-mono);font-weight:500;font-size:10.5px;text-transform:uppercase;letter-spacing:.08em;color:var(--ink);opacity:.7;margin-top:6px}.kv{display:grid;grid-template-columns:minmax(140px,320px) 1fr;row-gap:8px;margin:8px 0 16px;font-size:15px}.kv>span:nth-child(odd){font-family:var(--font-mono);font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-muted);align-self:center}.howto{margin:8px 0;padding-left:22px}.howto li{margin:7px 0}.sample-list{margin:8px 0 12px;padding-left:22px;font-size:14px}.sample-list li{margin:6px 0;line-height:1.5}.muted{color:var(--ink-muted)}.small{font-size:13.5px}.links{margin:8px 0;padding-left:22px}.links li{margin:7px 0}.share{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.share-btn{display:inline-flex;align-items:center;gap:7px;padding:8px 12px;border:1px solid var(--line-strong);background:transparent;color:var(--ink);font-family:var(--font-mono);font-weight:500;font-size:11.5px;text-transform:uppercase;letter-spacing:.06em;text-decoration:none;cursor:pointer;transition:border-color .18s}.share-btn:hover{border-color:var(--ink);color:var(--ink);background:transparent}.share-btn svg{width:16px;height:16px;fill:currentColor}.disclaimer summary{cursor:pointer;color:var(--green);margin-top:4px}.disclaimer p{font-size:14px;color:var(--ink);line-height:1.55}.howto-details summary{cursor:pointer;color:var(--green);margin:2px 0 4px}.warn{background:var(--badge-prov-bg);border:1px solid var(--warn-line);box-shadow:inset 3px 0 0 var(--badge-prov-ink);color:var(--ink);padding:9px 13px;margin:8px 0;font-size:14px}.hint{color:var(--ink-muted);font-size:13.5px;margin:8px 0}.update-prompt{position:fixed;left:12px;right:12px;bottom:12px;z-index:60;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 16px;max-width:640px;margin:0 auto;background:var(--surface);border:1px solid var(--line-strong);box-shadow:inset 3px 0 0 var(--rust),0 8px 24px #2b2a262e;padding:10px 14px;font-size:14px}.update-prompt-text{display:flex;flex-direction:column;min-width:0}.update-prompt-note{color:var(--ink-muted);font-size:12.5px}.update-prompt-actions{display:flex;gap:8px;flex-shrink:0}.update-prompt-actions button{padding:7px 14px;font-size:11.5px}.outcome-cell{flex-direction:column;gap:5px;min-width:0}.race-tbl,.race-tbl tbody{display:block}.race-tbl tr{display:grid;grid-template-columns:40px 1fr auto;align-items:center;column-gap:6px;padding:7px 0;border-bottom:1px solid var(--line)}.race-tbl td{border-bottom:0;padding:1px 0}.race-tbl .outcome-cell{grid-column:1 / -1;margin-top:4px}.seg{display:flex;gap:4px}.seg button{flex:1;min-height:40px;padding:6px 4px;font-size:13.5px;letter-spacing:.04em}.seg-status button{font-size:11px;min-height:36px}.dog-cell{min-width:0}.dog-cell small{display:block;color:var(--ink-muted);font-size:12px}.subline{display:none;font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:11px;color:var(--ink-muted);margin-top:3px;white-space:nowrap}input.award{width:66px;padding:5px 6px;border-color:transparent;background:transparent;-moz-appearance:textfield}input.award::-webkit-inner-spin-button,input.award::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input.award:hover{border-color:var(--line-strong)}input.award:focus{border-color:var(--rust);background:var(--surface)}input.award.overridden{background:var(--badge-down-bg);box-shadow:inset 3px 0 0 var(--rust);border-color:transparent}.edited{font-family:var(--font-mono);font-size:9.5px;text-transform:uppercase;letter-spacing:.08em;color:var(--rust);margin-left:3px;vertical-align:middle}@media (max-width: 640px){.col-wide{display:none}.subline{display:block}.race-foot{flex-direction:column}.race-foot button{width:100%;min-height:44px}}@media (max-width: 640px){.app-header-inner{padding:6px 12px;gap:4px 10px}.brand{gap:8px}.brand .jackrabbit-mark{width:24px;height:24px}.brand-name{font-size:16px}.brand-sub,.steps{display:none}.steps-picker{display:block}.save-status{flex-basis:100%;margin-left:0;font-size:10.5px;white-space:normal}main{padding:14px 12px 24px}.section{padding:14px 14px 16px}.hero{padding:20px 16px 18px}.landing h1{font-size:29px}.kv{grid-template-columns:minmax(88px,38%) 1fr;column-gap:12px}}.print-only{display:none}@media print{.app-ui,.app-header,.app-footer,.section,.sticky-actions,.warn,.hint,.update-prompt{display:none!important}.print-only{display:block;font-size:12px}.print-only h1{font-size:16px;margin:0 0 4px}.print-only h2{font-size:14px;margin:0 0 10px}.print-only h3{font-size:13px;margin:12px 0 4px}.print-division{break-inside:avoid}.print-tbl{width:100%;border-collapse:collapse;margin-bottom:8px}.print-tbl th,.print-tbl td{border:1px solid #000;padding:4px 6px;text-align:left}.print-tbl td.post{text-align:center;font-weight:700;print-color-adjust:exact;-webkit-print-color-adjust:exact}.print-tbl td.post-1{background:#f7d6d6}.print-tbl td.post-2{background:#d6e2f5}.print-tbl td.post-3{background:#fff}.print-tbl td.post-4{background:#d8ead9}body{background:#fff}}
