*,*:before,*:after{box-sizing:border-box}*{margin:0}html{interpolate-size:allow-keywords}body{line-height:1.5;-webkit-font-smoothing:antialiased}img,picture,video,canvas,svg{display:block;max-width:100%}input,button,textarea,select{font:inherit}p{overflow-wrap:break-word;text-wrap:pretty}h1,h2,h3,h4,h5,h6{overflow-wrap:break-word;text-wrap:balance}#root,#app{isolation:isolate}:root{--pitch: #12362a;--pitch-deep: #0c261d;--board: #1b4736;--board-line: rgba(246, 239, 221, .14);--paper: #f6efdd;--paper-edge: #e5d8ba;--paper-sunk: #efe5cd;--ink: #17281f;--ink-soft: #5f6f63;--chalk: #ece5d2;--chalk-soft: rgba(236, 229, 210, .66);--orange: #d9662a;--orange-bright: #ef8a44;--rule: rgba(23, 40, 31, .13);--radius: 10px;--tap: 44px;font-family:ui-rounded,SF Pro Rounded,Segoe UI,system-ui,-apple-system,BlinkMacSystemFont,Roboto,Helvetica Neue,sans-serif;color-scheme:dark;-webkit-text-size-adjust:100%}@media(prefers-color-scheme:dark){:root{--pitch: #0d2a20;--pitch-deep: #071b14;--board: #143528;--paper: #e8dfc9;--paper-edge: #d3c6a5;--paper-sunk: #ded4bb}}body{min-height:100dvh;background-color:var(--pitch);color:var(--chalk);font-size:16px;line-height:1.35}ul,ol{padding:0;list-style:none}a{color:var(--orange)}.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.shell{max-width:34rem;margin-inline:auto;min-height:100dvh;padding-bottom:calc(var(--tap) + 2.75rem + env(safe-area-inset-bottom))}.masthead{position:sticky;top:0;z-index:5;background-color:var(--board);border-bottom:2px solid var(--pitch-deep);padding:.6rem .75rem .5rem;padding-top:calc(.6rem + env(safe-area-inset-top))}.masthead__row{display:flex;align-items:baseline;gap:.5rem;flex-wrap:wrap}.masthead__eyebrow{font-size:.6875rem;letter-spacing:.09em;text-transform:uppercase;color:var(--chalk-soft)}.masthead__title{font-size:1.0625rem;font-weight:700;letter-spacing:-.01em;color:var(--chalk)}.page{padding:.75rem}.page--standalone{max-width:34rem;margin-inline:auto}.stack{display:flex;flex-direction:column;gap:.625rem}.strip{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-top:.5rem;padding:.4rem .5rem;background-color:#0c261d8c;border:1px solid var(--board-line);border-radius:var(--radius)}.strip__stats{display:flex;gap:.9rem}.strip__stat dt{font-size:.5625rem;letter-spacing:.1em;text-transform:uppercase;color:var(--chalk-soft)}.strip__stat dd{font-size:.9375rem;font-weight:700;font-variant-numeric:tabular-nums;color:var(--chalk)}.strip__stat--points dd{color:var(--orange-bright)}.strip__form{display:flex;gap:.1875rem;list-style:none}.strip__form-empty{font-size:.6875rem;color:var(--chalk-soft)}.strip__dot{display:grid;place-items:center;width:1.25rem;height:1.25rem;border-radius:50%;font-size:.625rem;font-weight:700;color:var(--pitch-deep);background-color:#ece5d247}.strip__dot--w{background-color:#7fc08c}.strip__dot--d{background-color:#d8cfb4}.strip__dot--l{background-color:#c8734f}.card{position:relative;background-color:var(--paper);color:var(--ink);border:1px solid var(--paper-edge);border-radius:var(--radius);padding:.75rem;display:flex;flex-direction:column;gap:.5rem;box-shadow:0 1px #0c261d80}.card:before{content:"";position:absolute;inset-block:.75rem;left:.3rem;width:2px;background-image:repeating-linear-gradient(var(--rule) 0 4px,transparent 4px 12px);border-radius:2px}.card>*{margin-left:.55rem}.card__kicker{font-size:.625rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-soft)}.card--signed{border-color:var(--orange);border-width:2px}.signed__line{font-size:1rem;font-weight:600}.muted{color:var(--ink-soft);font-size:.875rem}.muted a,.warn a{color:var(--orange)}.warn{font-size:.875rem;font-weight:600;color:var(--orange)}.next{display:flex;flex-direction:column;gap:.125rem}.next__head{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.next__opponent{font-size:1.375rem;font-weight:800;letter-spacing:-.015em;line-height:1.15}.rota__opponent{font-size:1.0625rem;font-weight:700}.rota__opponent a{color:inherit;text-decoration-color:var(--rule);text-underline-offset:3px}.tag{font-size:.625rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:.15rem .4rem;border-radius:999px;border:1px solid var(--rule);color:var(--ink-soft)}.tag--home{background-color:var(--orange);border-color:var(--orange);color:var(--paper)}.next__when{font-size:.9375rem;font-weight:600;display:flex;align-items:baseline;gap:.4rem;flex-wrap:wrap}.next__rel{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--orange)}.next__where{font-size:.8125rem;color:var(--ink-soft)}.results{list-style:none;display:flex;flex-direction:column}.results>li+li{border-top:1px solid var(--rule)}.result{display:flex;align-items:center;gap:.625rem;min-height:var(--tap);padding:.4rem 0;color:inherit;text-decoration:none}.result__badge{flex:none;display:grid;place-items:center;width:1.75rem;height:1.75rem;border-radius:6px;font-size:.75rem;font-weight:800;background-color:var(--paper-sunk);border:1px solid var(--rule);color:var(--ink-soft)}.result__badge--w{background-color:#2f6b40;border-color:#2f6b40;color:var(--paper)}.result__badge--d{background-color:#b7ab8a;border-color:#b7ab8a;color:var(--ink)}.result__badge--l{background-color:#b0522f;border-color:#b0522f;color:var(--paper)}.result__body{flex:1;min-width:0;display:flex;flex-direction:column}.result__opponent{font-size:.9375rem;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.result__meta{font-size:.75rem;color:var(--ink-soft)}.result__score{flex:none;font-size:1.0625rem;font-weight:800;font-variant-numeric:tabular-nums}.roster{list-style:none;display:flex;flex-direction:column}.roster>li+li{border-top:1px solid var(--rule)}.roster__row{display:flex;align-items:center;gap:.5rem;padding:.3rem 0}.roster--tight .roster__row{padding:.22rem 0}.roster__row--edit{min-height:var(--tap)}.roster__name{flex:1;min-width:0;font-size:.9375rem;font-weight:600;display:flex;align-items:baseline;gap:.4rem}.roster__apps{font-size:.6875rem;font-weight:500;color:var(--ink-soft)}.roster__role{font-size:.6875rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--ink-soft)}.roster__select{min-height:36px;font:inherit;font-size:.8125rem;padding:0 .4rem;border:1px solid var(--rule);border-radius:6px;background-color:var(--paper-sunk);color:var(--ink)}.roster__remove{flex:none;width:36px;height:36px;font-size:1.25rem;line-height:1;border:1px solid var(--rule);border-radius:6px;background-color:transparent;color:var(--ink-soft);cursor:pointer}.duties{display:flex;flex-direction:column;gap:.4rem;padding:.5rem;background-color:var(--paper-sunk);border:1px solid var(--rule);border-radius:8px}.duties__list{list-style:none;display:flex;flex-direction:column;gap:.35rem}.duty{display:flex;align-items:center;gap:.5rem}.duty__label{flex:none;width:5.25rem;font-size:.6875rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase;color:var(--ink-soft)}.duty__pick{flex:1;min-width:0;display:flex;align-items:center;gap:.4rem}.duty__select{flex:1;min-width:0;min-height:var(--tap);font:inherit;font-size:.9375rem;font-weight:600;padding:0 .5rem;border:1px solid var(--rule);border-radius:8px;background-color:var(--paper);color:var(--ink)}.duty__badge{flex:none;font-size:.5625rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;padding:.15rem .35rem;border-radius:999px;background-color:var(--orange);color:var(--paper)}.away__summary{min-height:36px;display:flex;align-items:center;gap:.4rem;font-size:.75rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--ink-soft);cursor:pointer}.away__count{display:grid;place-items:center;min-width:1.1rem;height:1.1rem;padding:0 .25rem;border-radius:999px;background-color:var(--orange);color:var(--paper);font-size:.625rem}.away__hint{font-size:.75rem;color:var(--ink-soft);margin-bottom:.35rem}.chips{list-style:none;display:flex;flex-wrap:wrap;gap:.3rem}.chip{min-height:var(--tap);padding:0 .7rem;font:inherit;font-size:.875rem;font-weight:600;border:1px solid var(--rule);border-radius:999px;background-color:var(--paper);color:var(--ink-soft);cursor:pointer;transition:background-color .12s ease,color .12s ease,transform .12s ease}.chip:active{transform:scale(.96)}.chip--on{background-color:#2f6b40;border-color:#2f6b40;color:var(--paper)}.chip--away{background-color:var(--orange);border-color:var(--orange);color:var(--paper);text-decoration:line-through}.button{display:inline-flex;align-items:center;justify-content:center;min-height:var(--tap);padding:0 1rem;font:inherit;font-size:.9375rem;font-weight:700;text-decoration:none;border:1px solid var(--rule);border-radius:8px;background-color:var(--paper-sunk);color:var(--ink);cursor:pointer;transition:transform .12s ease,filter .12s ease}.button:active{transform:scale(.985)}.button--primary{background-color:var(--board);border-color:var(--board);color:var(--paper)}.button--accent{background-color:var(--orange);border-color:var(--orange);color:var(--paper)}.button--quiet{background-color:transparent;color:var(--ink-soft);font-weight:600}.scoreline{display:flex;align-items:center;justify-content:center;gap:.5rem}.scoreline__dash{font-size:1.5rem;font-weight:800;color:var(--ink-soft);padding-bottom:.4rem}.stepper{flex:1;display:flex;flex-direction:column;align-items:center;gap:.25rem}.stepper__label{font-size:.625rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-soft)}.stepper__controls{display:flex;align-items:center;gap:.35rem}.stepper__button{width:48px;height:48px;font-size:1.5rem;font-weight:700;line-height:1;border:1px solid var(--rule);border-radius:10px;background-color:var(--paper-sunk);color:var(--ink);cursor:pointer}.stepper__button:active{background-color:var(--orange);border-color:var(--orange);color:var(--paper)}.stepper__value{min-width:2.25rem;text-align:center;font-size:2rem;font-weight:800;font-variant-numeric:tabular-nums}.saved-note{min-height:1rem;font-size:.75rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--orange)}.form{display:flex;flex-direction:column;gap:.5rem}.form__pair{display:flex;gap:.5rem}.form__pair>.field{flex:1;min-width:0}.field{display:flex;flex-direction:column;gap:.2rem}.field__label{font-size:.625rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft)}.field__input{width:100%;min-height:var(--tap);font:inherit;font-size:1rem;padding:.5rem;border:1px solid var(--rule);border-radius:8px;background-color:var(--paper-sunk);color:var(--ink);resize:vertical}textarea.field__input{line-height:1.5}.field__input:focus-visible,.duty__select:focus-visible,.roster__select:focus-visible{outline:2px solid var(--orange);outline-offset:1px}.tally{width:100%;border-collapse:collapse;font-size:.8125rem;font-variant-numeric:tabular-nums}.tally th,.tally td{padding:.35rem .25rem;text-align:center;border-bottom:1px solid var(--rule)}.tally thead th{font-size:.5625rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft)}.tally tbody th{text-align:left;font-weight:600}.tabbar{position:fixed;bottom:0;left:0;right:0;z-index:6;background-color:var(--board);border-top:2px solid var(--pitch-deep);padding-bottom:env(safe-area-inset-bottom)}.tabbar ul{max-width:34rem;margin-inline:auto;display:flex;list-style:none}.tabbar li{flex:1}.tab{display:flex;align-items:center;justify-content:center;min-height:calc(var(--tap) + 8px);font-size:.8125rem;font-weight:700;letter-spacing:.02em;text-decoration:none;color:var(--chalk-soft);border-top:3px solid transparent}.tab--active{color:var(--paper);border-top-color:var(--orange)}@keyframes sheet-saved{0%{transform:translateY(0);box-shadow:0 1px #0c261d80}35%{transform:translateY(-3px);box-shadow:0 6px 14px #0c261d73}to{transform:translateY(0);box-shadow:0 1px #0c261d80}}.card--saved{animation:sheet-saved .52s ease-out;border-color:var(--orange)}.signoff{position:relative;display:flex}.confetti{position:absolute;inset:0;display:grid;place-items:center;pointer-events:none}.confetti__piece{position:absolute;width:7px;height:7px;border-radius:2px;background-color:var(--orange);animation:confetti-pulse .9s ease-out var(--delay) both}.confetti__piece--1{background-color:var(--board)}.confetti__piece--2{background-color:#7fc08c}@keyframes confetti-pulse{0%{opacity:0;transform:rotate(var(--angle)) translate(0) rotate(0) scale(.4)}25%{opacity:1}to{opacity:0;transform:rotate(var(--angle)) translate(var(--distance)) rotate(220deg) scale(1)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}
