:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#12150f;--panel:#1a1f16;--panel-2:#22281c;--panel-3:#2b3323;--input:#0f120c;--text:#e8ecd9;--muted:#a8b093;--muted-2:#7d8a6c;--border:#35402c;--border-strong:#4d5c3f;--accent:#c4d46a;--accent-dim:#2a3218;--good:#7dce6a;--bad:#ff6b6b;--warn:#e6b84d;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Segoe UI,system-ui,-apple-system,sans-serif;font-weight:400;line-height:1.4}*,:before,:after{box-sizing:border-box}html,body,#root{min-height:100%}body{background:radial-gradient(1200px 600px at 10% -10%, #24301a 0%, transparent 55%), radial-gradient(900px 500px at 100% 0%, #1c2414 0%, transparent 50%), var(--bg);color:var(--text);margin:0}input[type=number]{-moz-appearance:textfield}input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}button,input{touch-action:manipulation}.app{max-width:1100px;margin:0 auto;padding:1.25rem 1rem 3rem}.header{margin-bottom:1rem}.header-top{justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.header h1{letter-spacing:.02em;color:var(--accent);margin:0;font-size:clamp(1.45rem,4vw,1.9rem);font-weight:700}.blurb{color:var(--muted);max-width:70ch;margin:.5rem 0 .75rem;font-size:.92rem;line-height:1.45}.meta-row{color:var(--muted-2);text-transform:uppercase;letter-spacing:.04em;flex-wrap:wrap;gap:.35rem .5rem;font-size:.78rem;display:flex}.dot{opacity:.5}.badge{letter-spacing:.06em;border:1px solid var(--border);background:var(--panel);border-radius:999px;flex-shrink:0;padding:.35rem .7rem;font-size:.72rem;font-weight:700}.badge.pending{color:var(--warn);border-color:color-mix(in srgb, var(--warn) 40%, transparent);background:color-mix(in srgb, var(--warn) 10%, transparent)}.sticky-summary{z-index:10;border:1px solid var(--border);background:color-mix(in srgb, var(--panel) 92%, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:12px;margin-bottom:1.1rem;padding:.85rem 1rem;position:sticky;top:0;box-shadow:0 8px 24px #00000059}.stage-nav{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.stage-focus{text-align:center;flex-direction:column;flex:1;align-items:center;gap:.1rem;min-width:0;display:flex}.stage-focus-label{text-transform:uppercase;letter-spacing:.07em;color:var(--muted-2);font-size:.68rem}.stage-focus strong{color:var(--accent);font-size:1.05rem}.stage-focus-meta{color:var(--muted);font-size:.78rem}.stage-pills{flex-wrap:wrap;justify-content:center;gap:.35rem;margin-top:.7rem;display:flex}.stage-pill{border:1px solid var(--border);background:var(--panel-2);width:2rem;height:2rem;color:var(--muted);cursor:pointer;border-radius:8px;font-size:.85rem;font-weight:700}.stage-pill.active{border-color:var(--accent);color:var(--accent);background:var(--accent-dim)}.stage-pill.done:not(.active){color:var(--good);border-color:color-mix(in srgb, var(--good) 40%, var(--border))}.pending-hint{color:var(--warn);text-align:center;margin:.55rem 0 0;font-size:.82rem}.pending-hint.good{color:var(--good)}.actions{flex-wrap:wrap;justify-content:center;gap:.5rem;margin-top:.75rem;display:flex}.btn{appearance:none;border:1px solid var(--border);background:var(--panel-2);color:var(--text);font:inherit;cursor:pointer;border-radius:8px;padding:.45rem .85rem;font-size:.85rem;font-weight:600;transition:background .15s,border-color .15s}.btn:hover:not(:disabled){background:var(--panel-3);border-color:var(--border-strong)}.btn:disabled{opacity:.4;cursor:not-allowed}.btn.primary{background:var(--accent-dim);border-color:color-mix(in srgb, var(--accent) 50%, transparent);color:var(--accent)}.btn.ghost{background:0 0}.btn.danger{color:var(--bad);border-color:color-mix(in srgb, var(--bad) 35%, var(--border))}.btn.step{justify-content:center;align-items:center;width:2rem;height:2rem;padding:0;font-size:1.1rem;line-height:1;display:inline-flex}.layout{grid-template-columns:260px minmax(0,1fr);align-items:start;gap:1rem;display:grid}.sidebar{flex-direction:column;gap:.85rem;display:flex;position:sticky;top:9.5rem}.sidebar-block{border:1px solid var(--border);background:var(--panel);border-radius:12px;padding:.75rem}.sidebar-block h2{text-transform:uppercase;letter-spacing:.06em;color:var(--muted-2);margin:0 0 .55rem;font-size:.75rem}.add-row{gap:.4rem;display:flex}.add-row input{border:1px solid var(--border);background:var(--input);min-width:0;color:var(--text);font:inherit;border-radius:8px;flex:1;padding:.45rem .55rem}.leaderboard{flex-direction:column;gap:.25rem;max-height:min(52vh,420px);margin:0;padding:0;list-style:none;display:flex;overflow:auto}.leaderboard li{border-radius:6px;grid-template-columns:1.4rem minmax(0,1fr) auto auto;align-items:center;gap:.35rem;padding:.3rem .35rem;font-size:.82rem;display:grid}.leaderboard li:nth-child(odd){background:color-mix(in srgb, var(--panel-2) 70%, transparent)}.lb-rank{color:var(--muted-2);font-variant-numeric:tabular-nums}.lb-name{text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.lb-score{font-variant-numeric:tabular-nums;color:var(--accent);font-weight:700}.lb-status{letter-spacing:.04em;border:1px solid var(--border);color:var(--muted);border-radius:999px;padding:.1rem .35rem;font-size:.68rem;font-weight:800}.lb-status.pass{color:var(--good);border-color:color-mix(in srgb, var(--good) 40%, transparent)}.lb-status.fail{color:var(--bad);border-color:color-mix(in srgb, var(--bad) 40%, transparent)}.lb-status.pending{color:var(--warn)}.stage-panel{border:1px solid var(--border);background:var(--panel);border-radius:12px;min-width:0;overflow:hidden}.stage-panel-head{border-bottom:1px solid var(--border);background:var(--panel-2);justify-content:space-between;gap:1rem;padding:.9rem 1rem;display:flex}.stage-panel-head h2{margin:0;font-size:1.1rem}.stage-desc{color:var(--muted);margin:.35rem 0 0;font-size:.88rem;line-height:1.4}.stage-limits{color:var(--muted-2);text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;flex-direction:column;align-items:flex-end;gap:.2rem;font-size:.75rem;font-weight:650;display:flex}.shooter-list{flex-direction:column;max-height:min(70vh,820px);display:flex;overflow:auto}.shooter-card{border-bottom:1px solid var(--border)}.shooter-card:last-child{border-bottom:none}.shooter-card.complete{background:color-mix(in srgb, var(--good) 6%, transparent)}.shooter-card.fail{background:color-mix(in srgb, var(--bad) 7%, transparent)}.shooter-card-head{width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:.55rem;padding:.65rem .85rem;display:grid}.shooter-card-head:hover{background:color-mix(in srgb, var(--panel-3) 50%, transparent)}.dot-status{background:var(--warn);border-radius:50%;width:.65rem;height:.65rem}.dot-status.ok{background:var(--good)}.dot-status.todo{background:var(--warn)}.shooter-name{text-overflow:ellipsis;white-space:nowrap;font-weight:700;overflow:hidden}.shooter-meta{color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:.78rem}.chevron{color:var(--muted-2);font-size:.85rem}.shooter-card-body{gap:.85rem;padding:0 .85rem .9rem 1.9rem;display:grid}.rename-field{flex-wrap:wrap;align-items:center;gap:.45rem;display:flex}.rename-field>span{color:var(--muted-2);text-transform:uppercase;letter-spacing:.05em;font-size:.75rem}.rename-field input{border:1px solid var(--border);background:var(--input);min-width:120px;color:var(--text);font:inherit;border-radius:8px;flex:1;padding:.4rem .55rem}.times h3,.hits h3{text-transform:uppercase;letter-spacing:.06em;color:var(--muted-2);margin:0 0 .45rem;font-size:.75rem}.hits h3 small{letter-spacing:0;text-transform:none;color:var(--muted);font-weight:500}.time-inputs{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:.55rem;display:grid}.field{grid-template-rows:auto auto;grid-template-columns:1fr auto;align-items:center;gap:.2rem .35rem;display:grid}.field>span:first-child{color:var(--muted);grid-column:1/-1;font-size:.78rem}.field input,.stepper input{border:1px solid var(--border);background:var(--input);width:100%;min-width:0;color:var(--text);font:inherit;font-variant-numeric:tabular-nums;border-radius:8px;padding:.45rem .5rem}.field input:focus,.stepper input:focus,.add-row input:focus,.rename-field input:focus{outline:2px solid color-mix(in srgb, var(--accent) 55%, transparent);outline-offset:1px;border-color:var(--accent)}.field .unit{color:var(--muted);font-size:.85rem}.time-summary{color:var(--muted);flex-wrap:wrap;align-items:center;gap:.45rem;margin-top:.45rem;font-size:.88rem;display:flex}.time-summary strong{color:var(--text);font-variant-numeric:tabular-nums}.pill{letter-spacing:.04em;text-transform:uppercase;border:1px solid #0000;border-radius:999px;padding:.12rem .45rem;font-size:.7rem;font-weight:700;display:inline-flex}.pill.pass{color:var(--good);border-color:color-mix(in srgb, var(--good) 45%, transparent);background:color-mix(in srgb, var(--good) 12%, transparent)}.pill.fail{color:var(--bad);border-color:color-mix(in srgb, var(--bad) 45%, transparent);background:color-mix(in srgb, var(--bad) 12%, transparent)}.hit-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:.55rem;display:grid}.hit-control{flex-direction:column;gap:.3rem;display:flex}.hit-label{font-size:.8rem;font-weight:600}.hit-label em{color:var(--muted);font-size:.72rem;font-style:normal;font-weight:500}.stepper{align-items:center;gap:.25rem;display:flex}.stepper input{text-align:center;padding:.4rem .2rem;font-weight:650}.hit-hint{margin:.4rem 0 0;font-size:.8rem}.hit-hint.warn{color:var(--warn)}.stage-score-row{border-top:1px dashed var(--border);justify-content:space-between;align-items:center;gap:.75rem;padding-top:.55rem;font-size:.9rem;display:flex}.stage-status{letter-spacing:.07em;text-transform:uppercase;border:1px solid var(--border);color:var(--muted);border-radius:999px;padding:.25rem .55rem;font-size:.72rem;font-weight:800}.stage-status.pass{color:var(--good);border-color:color-mix(in srgb, var(--good) 45%, transparent);background:color-mix(in srgb, var(--good) 12%, transparent)}.stage-status.fail{color:var(--bad);border-color:color-mix(in srgb, var(--bad) 45%, transparent);background:color-mix(in srgb, var(--bad) 12%, transparent)}.footer{border-top:1px solid var(--border);color:var(--muted);margin-top:2rem;padding-top:1rem;font-size:.85rem;line-height:1.45}.footer p{margin:0 0 .4rem}.disclaimer{color:var(--muted-2);font-size:.78rem}@media print{:root{--bg:#fff;--panel:#fff;--panel-2:#f7f7f7;--panel-3:#eee;--input:#fff;--text:#111;--muted:#444;--muted-2:#666;--border:#ccc;--border-strong:#999;--accent:#1a4d2e;--accent-dim:#e8f0eb;--good:#146c2e;--bad:#a11;--warn:#8a5a00}body{color:#111;background:#fff}.app{max-width:none;padding:0}.sticky-summary{box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;position:static}.no-print{display:none!important}.sidebar{position:static}.shooter-list{max-height:none;overflow:visible}.shooter-card-body{display:grid!important}}.strings{gap:.7rem;display:grid}.string-block{border:1px solid var(--border);background:color-mix(in srgb, var(--panel-2) 55%, transparent);border-radius:10px;padding:.6rem .7rem}.string-head{flex-wrap:wrap;justify-content:space-between;gap:.35rem .75rem;margin-bottom:.45rem;display:flex}.string-head h3{text-transform:uppercase;letter-spacing:.06em;color:var(--muted-2);margin:0;font-size:.75rem}.string-sum{color:var(--muted);font-variant-numeric:tabular-nums;font-size:.8rem}.string-grid{grid-template-columns:repeat(4,minmax(0,1fr));align-items:end;gap:.55rem;display:grid}.string-grid .btn.step{width:2.4rem;height:2.4rem}.miss-box{border:1px dashed var(--border);height:2.4rem;color:var(--muted);font-variant-numeric:tabular-nums;border-radius:8px;justify-content:center;align-items:center;font-weight:650;display:flex}.app-nav{flex-wrap:wrap;gap:.4rem;margin-top:.8rem;display:flex}.app-nav a{text-decoration:none}.app-nav a.active{border-color:var(--accent);color:var(--accent);background:var(--accent-dim)}.page-stub{border:1px solid var(--border);background:var(--panel);border-radius:12px;padding:1rem}.page-stub h2{color:var(--accent);margin:0 0 .5rem;font-size:1.1rem}.muted-note{color:var(--muted);font-size:.88rem}.modal-backdrop{z-index:50;background:#0000008c;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.modal{border:1px solid var(--border);background:var(--panel);border-radius:12px;width:min(420px,100%);padding:1rem}.modal h2{color:var(--accent);margin:0 0 .75rem;font-size:1.05rem}@media (width<=860px){.layout{grid-template-columns:1fr}.sidebar{grid-template-columns:1fr 1fr;gap:.75rem;display:grid;position:static}.shooter-list{max-height:none}.shooter-card-head{grid-template-columns:auto minmax(0,1fr) auto}.shooter-meta{white-space:normal;grid-column:2}.chevron{grid-row:1/span 2}}@media (width<=640px){.sidebar{grid-template-columns:1fr}.stage-nav{flex-wrap:wrap}.hit-row{grid-template-columns:1fr}.stage-panel-head{flex-direction:column}.stage-limits{flex-direction:row;align-items:center;gap:.75rem}.header-top{flex-direction:column}.shooter-card-body{padding-left:.85rem}.string-grid{grid-template-columns:1fr 1fr}}.sw-dot{vertical-align:.05em;border-radius:50%;flex:none;width:.65rem;height:.65rem;margin-right:.4rem;display:inline-block;box-shadow:0 0 0 1px #00000059}.app .lb-name{align-items:center;min-width:0;display:flex;overflow:hidden}.lb-name-text{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.lb-name .qual-badge{flex:none;align-items:center;margin-left:.35rem;display:inline-flex}.lb-name .qual-badge-icon.sm{width:26px;height:21px}.app .ss-check-row{grid-template-columns:auto minmax(0,1fr);row-gap:.15rem}.app .ss-check-row .ss-box{grid-row:1/span 2}.app .ss-check-meta{grid-column:2}.ss-check-badge{align-items:center;margin-left:.35rem;display:inline-flex}.ss-check-badge .qual-badge-icon.sm{width:30px;height:24px}.app-nav{gap:.5rem}.app-nav .btn{justify-content:center;align-items:center;min-width:48px;min-height:48px;padding:.6rem 1.1rem;font-size:.95rem;display:inline-flex}html,body{overflow-x:clip}#root,.app{min-width:0;max-width:100%}img,svg{max-width:100%}@media (width<=640px){.app .score-view .stage-pills{flex-wrap:wrap;justify-content:center;gap:.4rem}.app .score-view .stage-pill{flex:0 0 48px;width:48px;max-width:none}}@media (width<=440px){.app .score-view .string-grid{grid-template-columns:minmax(0,1fr)}.app .score-view .stepper{grid-template-columns:56px minmax(56px,1fr) 56px}.app .score-view .string-grid .btn.step{width:56px;height:56px}.app-nav{grid-template-columns:repeat(4,minmax(0,1fr));gap:.35rem;display:grid}.app-nav .btn{min-width:0;padding:.5rem .3rem;font-size:.85rem}}@media (width>=700px){.app .cc-legend-name{max-width:24ch}}@media (width>=600px) and (width<=1000px){.app .dope .stat-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.ss-big{min-height:48px;padding:.55rem 1rem;font-size:.95rem}.ss-full{width:100%}.ss-dim{color:var(--muted-2);font-weight:500}.ss-panel{border:1px solid var(--border);background:var(--panel);border-radius:12px;min-width:0;padding:1rem}.ss-panel-head{justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.85rem;display:flex}.ss-panel-head h2{color:var(--accent);margin:0;font-size:1.15rem}.ss-sub{text-transform:uppercase;letter-spacing:.06em;color:var(--muted-2);margin:1.1rem 0 .6rem;font-size:.78rem}.ss-note{color:var(--muted);margin:.6rem 0 0;font-size:.9rem}.ss-note.warn{color:var(--warn)}.ss-note.good{color:var(--good)}.ss-note.bad{color:var(--bad)}.ss-error{color:var(--bad);margin:.6rem 0 0;font-size:.92rem;font-weight:600}.ss-home{gap:1rem;display:grid}.ss-resume{border:1px solid color-mix(in srgb, var(--warn) 45%, var(--border));background:color-mix(in srgb, var(--warn) 9%, var(--panel));border-radius:12px;justify-content:space-between;align-items:center;gap:.75rem;padding:.7rem .85rem;display:flex}.ss-resume-text{flex-direction:column;gap:.15rem;min-width:0;display:flex}.ss-resume-text strong{color:var(--warn)}.ss-resume-text span{color:var(--muted);font-size:.88rem}.ss-resume .btn{align-items:center;text-decoration:none;display:inline-flex}.ss-choices{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.ss-choice{appearance:none;border:1px solid var(--border-strong);background:var(--panel-2);min-height:150px;color:var(--text);font:inherit;text-align:left;cursor:pointer;border-radius:14px;flex-direction:column;align-items:flex-start;gap:.35rem;padding:1.25rem;transition:background .15s,border-color .15s;display:flex}.ss-choice:hover{background:var(--panel-3)}.ss-choice.primary{border-color:color-mix(in srgb, var(--accent) 55%, transparent);background:var(--accent-dim)}.ss-choice-icon{border:1px solid var(--border-strong);width:2.6rem;height:2.6rem;color:var(--accent);border-radius:10px;justify-content:center;align-items:center;font-size:1.5rem;font-weight:700;display:inline-flex}.ss-choice-title{color:var(--accent);margin-top:.35rem;font-size:1.35rem;font-weight:700}.ss-choice-sub{color:var(--muted);font-size:.9rem}.ss-recent{gap:.35rem;margin:0 0 .6rem;padding:0;list-style:none;display:grid}.ss-recent-row{border:1px solid var(--border);background:var(--panel-2);min-height:52px;color:var(--text);border-radius:10px;grid-template-columns:minmax(7.5rem,auto) minmax(0,1fr) auto;align-items:center;gap:.75rem;padding:.5rem .75rem;text-decoration:none;display:grid}.ss-recent-row:hover{border-color:var(--border-strong);background:var(--panel-3)}.ss-recent-date{font-weight:700}.ss-recent-meta{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.88rem;overflow:hidden}.ss-recent-stats{white-space:nowrap;align-items:center;gap:.6rem;font-size:.88rem;display:flex}.ss-recent-top strong{color:var(--accent);font-variant-numeric:tabular-nums}.ss-pass-chip{letter-spacing:.03em;color:var(--good);border:1px solid color-mix(in srgb, var(--good) 45%, transparent);background:color-mix(in srgb, var(--good) 12%, transparent);white-space:nowrap;border-radius:999px;padding:.12rem .45rem;font-size:.72rem;font-weight:800;display:inline-flex}.ss-pass-chip.none{color:var(--muted);border-color:var(--border);background:0 0}.ss-setup{gap:1rem;display:grid}.ss-count{color:var(--muted);font-variant-numeric:tabular-nums;font-weight:700}.ss-details{grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:.75rem;display:grid}.ss-field{flex-direction:column;gap:.3rem;min-width:0;display:flex}.ss-field-wide{grid-column:1/-1}.ss-field>span{color:var(--muted);font-size:.8rem;font-weight:600}.ss-field input,.ss-search,.ss-pin-input{border:1px solid var(--border);background:var(--input);width:100%;min-width:0;min-height:48px;color:var(--text);font:inherit;border-radius:10px;padding:.55rem .75rem;font-size:1rem}.ss-field input:focus,.ss-search:focus,.ss-pin-input:focus{outline:2px solid color-mix(in srgb, var(--accent) 55%, transparent);outline-offset:1px;border-color:var(--accent)}.ss-tools{flex-wrap:wrap;gap:.5rem;display:flex}.ss-tools .ss-search{flex:14rem;width:auto}.ss-checklist{grid-template-columns:repeat(auto-fill,minmax(min(100%,330px),1fr));gap:.45rem;margin:.75rem 0 0;padding:0;list-style:none;display:grid}.ss-check-row{appearance:none;border:1px solid var(--border);background:var(--panel-2);width:100%;min-height:60px;color:var(--text);font:inherit;text-align:left;cursor:pointer;border-radius:10px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.75rem;padding:.55rem .75rem;display:grid}.ss-check-row:hover:not(:disabled){border-color:var(--border-strong)}.ss-check-row.on{border-color:color-mix(in srgb, var(--accent) 60%, transparent);background:var(--accent-dim)}.ss-check-row:disabled{opacity:.45;cursor:not-allowed}.ss-box{border:2px solid var(--border-strong);background:var(--input);width:34px;height:34px;color:var(--bg);border-radius:8px;justify-content:center;align-items:center;font-size:1.3rem;font-weight:900;display:inline-flex}.ss-check-row.on .ss-box{background:var(--accent);border-color:var(--accent)}.ss-check-name{text-overflow:ellipsis;white-space:nowrap;font-size:1.02rem;font-weight:700;overflow:hidden}.ss-check-meta{color:var(--muted);white-space:nowrap;font-variant-numeric:tabular-nums;align-items:center;gap:.35rem;font-size:.85rem;display:flex}.ss-check-meta strong{color:var(--accent)}.ss-tag{border:1px solid color-mix(in srgb, var(--warn) 45%, transparent);color:var(--warn);border-radius:999px;padding:.1rem .45rem;font-size:.72rem;font-weight:800}.ss-add{margin-top:1rem}.ss-add-row{gap:.5rem;display:flex}.ss-add-row input{flex:1}.ss-start-bar{z-index:10;border:1px solid var(--border);background:color-mix(in srgb, var(--panel) 94%, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:12px;padding:.75rem 1rem;position:sticky;bottom:0;box-shadow:0 -8px 24px #00000059}.ss-start-bar .ss-note{margin:0 0 .5rem}.ss-start-actions{justify-content:flex-end;gap:.6rem;display:flex}.ss-start{flex:0 22rem;min-height:56px;font-size:1.05rem}.score-view .stage-pill{border-radius:10px;width:48px;height:48px;font-size:1rem}.score-view .stage-pills{gap:.45rem}.score-view .shooter-card-head{min-height:56px;padding:.7rem .9rem}.score-view .shooter-name{font-size:1.02rem}.score-view .shooter-card-body{padding:0 .85rem .9rem}.score-view .string-grid{grid-template-columns:minmax(0,.85fr) minmax(0,1.2fr) minmax(0,1.2fr) minmax(0,.6fr);gap:.6rem}.score-view .field input{text-align:center;min-height:52px;font-size:1.15rem;font-weight:650}.score-view .stepper{grid-template-columns:52px minmax(2.4rem,1fr) 52px;gap:.3rem;display:grid}.score-view .string-grid .btn.step{border-radius:10px;width:52px;height:52px;font-size:1.6rem;font-weight:700}.score-view .string-grid .btn.step:active:not(:disabled){background:var(--accent-dim);border-color:var(--accent)}.score-view .stepper input{min-height:52px;padding:.3rem .1rem;font-size:1.3rem}.score-view .miss-box{height:52px;font-size:1.3rem}.score-view .stage-score-row{flex-wrap:wrap}.score-view .stage-score-row .btn{margin-left:auto}.ss-quick{align-items:center;gap:.6rem;margin-top:.5rem;font-size:.8rem;display:flex}.ss-quick-btn{min-height:48px;padding:.4rem .85rem}.ss-session-meta{color:var(--muted);overflow-wrap:anywhere;margin:0 0 .55rem;font-size:.85rem}.ss-actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:.5rem;margin-top:.75rem;display:flex}.ss-status{min-height:48px;color:var(--muted);align-items:center;gap:.4rem;max-width:100%;margin-right:auto;padding:0 .6rem;font-size:.85rem;font-weight:700;display:inline-flex}.ss-status-dot{background:var(--muted-2);border-radius:50%;flex-shrink:0;width:.7rem;height:.7rem}.ss-status.warn{color:var(--warn)}.ss-status.warn .ss-status-dot{background:var(--warn)}.ss-status.good{color:var(--good)}.ss-status.good .ss-status-dot{background:var(--good)}.ss-toast-wrap{z-index:60;pointer-events:none;justify-content:center;padding:0 1rem;display:flex;position:fixed;bottom:1.25rem;left:0;right:0}.ss-toast{pointer-events:auto;appearance:none;border:1px solid var(--border-strong);background:var(--panel-3);max-width:560px;min-height:52px;color:var(--text);font:inherit;cursor:pointer;border-radius:12px;padding:.75rem 1.1rem;font-weight:650;animation:.2s ease-out ss-toast-in;box-shadow:0 10px 30px #00000073}.ss-toast.good{border-color:color-mix(in srgb, var(--good) 60%, transparent);color:var(--good)}.ss-toast.warn{border-color:color-mix(in srgb, var(--warn) 60%, transparent);color:var(--warn)}.ss-toast.bad{border-color:color-mix(in srgb, var(--bad) 60%, transparent);color:var(--bad)}@keyframes ss-toast-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}.ss-modal{width:min(460px,100%)}.ss-modal-msg{color:var(--muted);margin:0 0 .9rem;line-height:1.45}.ss-modal-actions{flex-wrap:wrap;justify-content:flex-end;gap:.6rem;margin-top:1rem;display:flex}.ss-modal-actions .btn{min-width:7rem}.ss-danger-solid{background:color-mix(in srgb, var(--bad) 16%, var(--panel-2))}.ss-pin-input{letter-spacing:.4em;text-align:center;font-size:1.6rem}a.btn.ss-big{justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.score-view .shooter-card-head{grid-template-columns:auto minmax(0,1fr) auto auto}.score-view .shooter-card-head .dot-status{grid-area:1/1}.score-view .shooter-card-head .shooter-name{grid-area:1/2}.score-view .shooter-card-head .shooter-meta{grid-area:1/3}.score-view .shooter-card-head .chevron{grid-area:1/4}@media (width>=861px){.score-view .sidebar{top:12.75rem}}@media (width<=860px){.score-view .sidebar{grid-template-columns:1fr 1fr}.score-view .shooter-card-head{grid-template-columns:auto minmax(0,1fr) auto}.score-view .shooter-card-head .shooter-meta{white-space:normal;grid-area:2/2}.score-view .shooter-card-head .chevron{grid-area:1/3/span 2}}@media (width<=640px){.ss-choices{grid-template-columns:1fr}.ss-choice{min-height:110px}.ss-details{grid-template-columns:1fr}.ss-recent-row{grid-template-columns:minmax(0,1fr) auto}.ss-recent-meta{grid-area:2/1}.ss-recent-stats{flex-direction:column;grid-area:1/2/span 2;align-items:flex-end;gap:.2rem}.ss-start-actions .btn{flex:1}.score-view .string-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.score-view .sidebar{grid-template-columns:1fr}.ss-status{justify-content:center;width:100%;margin-right:0}.ss-actions .btn{flex:auto}.score-view .sticky-summary{position:static}.score-view .stage-nav{flex-wrap:wrap}.score-view .stage-focus{flex:100%;order:-1}.score-view .stage-nav .btn{flex:1 1 0;padding:.5rem .7rem}.score-view .stage-pills{flex-wrap:nowrap;gap:.3rem}.score-view .stage-pill{flex:1 1 0;width:auto;min-width:0;max-width:52px}}@media (width<=400px){.score-view .stepper{grid-template-columns:48px minmax(2rem,1fr) 48px}.score-view .string-grid .btn.step{width:48px;height:48px}.ss-check-row{grid-template-columns:auto minmax(0,1fr)}.ss-check-meta{grid-column:2}}@media print{.ss-start-bar,.ss-toast-wrap{display:none!important}}@media (width<=640px){.score-view .stage-panel{order:-1}}.dlg-backdrop{z-index:1000;padding:max(1rem, env(safe-area-inset-top)) max(1rem, env(safe-area-inset-right)) max(1rem, env(safe-area-inset-bottom)) max(1rem, env(safe-area-inset-left));-webkit-backdrop-filter:blur(3px);overscroll-behavior:contain;-webkit-tap-highlight-color:transparent;opacity:0;background:#0608049e;justify-content:center;align-items:center;transition:opacity .16s;display:flex;position:fixed;inset:0}.dlg-backdrop.is-open{opacity:1}.dlg-panel{overscroll-behavior:contain;border:1px solid var(--border-strong);background:linear-gradient(180deg, color-mix(in srgb, var(--panel-2) 70%, transparent), transparent 120px), var(--panel);width:min(460px,100%);max-height:calc(100dvh - 2rem);color:var(--text);opacity:0;border-radius:14px;outline:none;flex-direction:column;transition:transform .16s,opacity .16s;display:flex;position:relative;overflow:auto;transform:translateY(10px)scale(.98);box-shadow:0 24px 60px #0000008c,0 0 0 1px #00000040}.dlg-backdrop.is-open .dlg-panel{opacity:1;transform:none}.dlg-panel.dlg-sm{width:min(420px,100%)}.dlg-head{padding:1.15rem 1.25rem .35rem}.dlg-title{letter-spacing:.01em;color:var(--accent);margin:0;font-size:1.2rem;font-weight:700}.dlg-danger .dlg-title{color:var(--bad)}.dlg-desc{color:var(--muted);margin-top:.45rem;font-size:.95rem;line-height:1.45}.dlg-desc p{margin:0}.dlg-body{padding:.75rem 1.25rem .25rem}.dlg-footer{background:var(--panel);justify-content:flex-end;gap:.6rem;padding:1rem 1.25rem 1.15rem;display:flex;position:sticky;bottom:0}.dlg-footer .dlg-btn{flex:1 1 0}.btn.dlg-btn{border-radius:10px;min-height:52px;padding:.6rem 1.1rem;font-size:1rem}.btn.dlg-btn:focus-visible,.pin-key:focus-visible{outline:2px solid color-mix(in srgb, var(--accent) 70%, transparent);outline-offset:2px}.btn.dlg-btn-danger{background:color-mix(in srgb, var(--bad) 85%, #000);border-color:var(--bad);color:#fff}.btn.dlg-btn-danger:hover:not(:disabled){background:var(--bad);border-color:var(--bad)}.btn.dlg-btn-danger:focus-visible{outline-color:color-mix(in srgb, var(--bad) 70%, transparent)}.dlg-focus-anchor{outline:none;width:0;height:0}.pin-form{flex-direction:column;align-items:stretch;gap:.35rem;display:flex}.pin-display{border:1px solid var(--border);background:var(--input);cursor:text;border-radius:12px;justify-content:center;align-items:center;min-height:64px;display:flex;position:relative}.pin-display:focus-within{border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb, var(--accent) 35%, transparent)}.pin-display.has-error{border-color:color-mix(in srgb, var(--bad) 70%, var(--border))}.pin-dots{flex-wrap:wrap;justify-content:center;gap:.8rem;padding:0 1rem;display:flex}.pin-display.has-error .pin-dots{animation:.32s dlg-shake}.pin-dot{border:2px solid var(--border-strong);background:0 0;border-radius:50%;width:16px;height:16px;transition:background .1s,border-color .1s,transform .1s}.pin-dot.filled{background:var(--accent);border-color:var(--accent);transform:scale(1.05)}.pin-input{opacity:0;color:#0000;caret-color:#0000;cursor:text;background:0 0;border:0;width:100%;height:100%;padding:0;font-size:16px;position:absolute;inset:0}.pin-error{text-align:center;min-height:1.35rem;color:var(--bad);margin:.1rem 0 .2rem;font-size:.9rem;font-weight:600}.pin-pad{grid-template-columns:repeat(3,minmax(0,1fr));gap:.55rem;display:grid}.pin-key{appearance:none;border:1px solid var(--border);background:var(--panel-2);min-height:clamp(52px,8.5dvh,68px);color:var(--text);font:inherit;font-variant-numeric:tabular-nums;cursor:pointer;touch-action:manipulation;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;border-radius:12px;justify-content:center;align-items:center;font-size:1.55rem;font-weight:650;transition:background .1s,border-color .1s,transform 60ms;display:inline-flex}.pin-key:hover{background:var(--panel-3);border-color:var(--border-strong)}.pin-key:active{background:var(--accent-dim);border-color:var(--accent);transform:scale(.96)}.pin-key-muted{color:var(--muted);background:0 0;font-size:.95rem}@keyframes dlg-shake{0%,to{transform:translate(0)}20%{transform:translate(-6px)}40%{transform:translate(6px)}60%{transform:translate(-4px)}80%{transform:translate(4px)}}@media (width<=480px){.dlg-backdrop{padding:.75rem}.dlg-head{padding:1rem 1rem .3rem}.dlg-body{padding:.6rem 1rem .2rem}.dlg-footer{padding:.85rem 1rem 1rem}}@media (height<=560px) and (width>=560px){.dlg-panel.dlg-pin{width:min(640px,100%)}.dlg-pin .pin-form{grid-template-rows:auto auto 1fr;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);column-gap:1rem;display:grid}.dlg-pin .pin-display{grid-area:1/1}.dlg-pin .pin-error{grid-area:2/1}.dlg-pin .pin-pad{grid-area:1/2/span 3;gap:.4rem}.dlg-pin .pin-key{min-height:48px;font-size:1.3rem}.dlg-pin .pin-key-muted{font-size:.9rem}.dlg-pin .dlg-desc{display:none}.dlg-pin .dlg-head{padding-top:.75rem}.dlg-pin .dlg-body{padding-top:.5rem}.dlg-pin .dlg-footer{padding-top:.6rem;padding-bottom:.75rem}.dlg-pin .dlg-footer .dlg-btn{min-height:48px}}@media (prefers-reduced-motion:reduce){.dlg-backdrop,.dlg-panel,.pin-dot,.pin-key{transition:none}.dlg-panel{transform:none}.pin-display.has-error .pin-dots{animation:none}}@media print{.dlg-backdrop{display:none!important}}.fam-print{display:none}.fam-print.fam-print--preview{color:#111;background:#fff;max-width:8.5in;margin:1rem auto;padding:.5in;display:block;box-shadow:0 2px 18px #00000059}@page fam-print{size:letter portrait;margin:.5in .5in .6in;@bottom-left{content:"Civilian practice aid, not affiliated with FAMS.";font:7.5pt Segoe UI,Arial,sans-serif;color:#555}@bottom-right{content:"Page " counter(page) " of " counter(pages);font:7.5pt Segoe UI,Arial,sans-serif;color:#555}}@media print{html:has(body.fam-print-active){--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;background:#fff!important}body.fam-print-active>:not(.fam-print-host){display:none!important}body.fam-print-active{margin:0;color:#111!important;background:#fff!important}body.fam-print-active .fam-print{display:block}.fam-print.fam-print--preview{box-shadow:none;max-width:none;margin:0;padding:0}.fam-print{page:fam-print;-webkit-print-color-adjust:exact;print-color-adjust:exact}}.fam-print{--fp-ink:#111;--fp-muted:#555;--fp-rule:#bbb;--fp-shade:#f0f0f0;--fp-accent:#1a4d2e;color:var(--fp-ink);font-family:Segoe UI,Arial,system-ui,sans-serif;font-size:8.5pt;line-height:1.3}.fam-print h1,.fam-print h2{color:var(--fp-ink);margin:0}.fp-header{border-bottom:2px solid var(--fp-ink);margin-bottom:.14in;padding-bottom:.12in}.fp-title-row{justify-content:space-between;align-items:flex-end;gap:.2in;display:flex}.fp-header h1{letter-spacing:.02em;color:var(--fp-accent);font-size:16pt}.fp-sub{color:var(--fp-muted);margin:.03in 0 0;font-size:8pt}.fp-date{white-space:nowrap;font-size:13pt;font-weight:700}.fp-meta{flex-wrap:wrap;gap:.06in .3in;margin:.1in 0 0;display:flex}.fp-meta div{min-width:0}.fp-meta dt{text-transform:uppercase;letter-spacing:.08em;color:var(--fp-muted);font-size:6.5pt}.fp-meta dd{margin:0;font-size:9pt;font-weight:600}.fp-meta .fp-notes{flex-basis:100%}.fp-meta .fp-notes dd{font-weight:400}.fp-hint{color:var(--fp-muted);margin:.06in 0 0;font-size:7.5pt;font-style:italic}.fam-print section>h2,.fp-shooter-head h2{text-transform:uppercase;letter-spacing:.05em;margin-bottom:.05in;font-size:10.5pt}.fp-table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%}.fp-table th{text-transform:uppercase;letter-spacing:.06em;color:var(--fp-muted);border-bottom:1.5px solid var(--fp-ink);text-align:center;padding:.03in .05in;font-size:6.8pt;font-weight:700}.fp-table td{border-bottom:.5px solid var(--fp-rule);text-align:center;vertical-align:middle;padding:.017in .05in}.fp-table thead{display:table-header-group}.fp-table tr{break-inside:avoid}.fp-table .fp-left{text-align:left}.fp-table .fp-num{text-align:right}.fp-strong{font-weight:700}.fp-of{color:var(--fp-muted);font-size:.85em;font-weight:400}.fp-name{white-space:nowrap;font-weight:600}.fp-up{font-weight:700}.fp-down{font-style:italic}.fp-pb{letter-spacing:.05em;font-size:6.5pt;font-weight:700}.fp-why{color:var(--fp-muted);font-size:7pt}.fp-row-fail td{color:#333}.fp-badge{border:.75px solid var(--fp-ink);vertical-align:1px;color:var(--fp-ink);border-radius:6px;align-items:center;gap:1px;margin-left:3px;padding:0 3px;font-size:6.5pt;font-weight:700;display:inline-flex}.fp-status{border:1px solid var(--fp-ink);letter-spacing:.06em;text-align:center;border-radius:3px;min-width:.36in;padding:0 3px;font-size:7pt;font-weight:800;display:inline-block}.fp-status.fp-pass{background:var(--fp-ink);color:#fff}.fp-status.fp-fail{color:var(--fp-ink);background:#fff}.fp-status.fp-inc{color:var(--fp-muted);border-style:dashed;border-color:var(--fp-muted)}.fp-legend{color:var(--fp-muted);margin:.05in 0 0;font-size:6.8pt}.fp-board{break-after:page}.fp-shooter{break-inside:avoid;page-break-inside:avoid;margin-bottom:.16in;padding-top:.02in}.fp-shooter-head{border-bottom:1px solid var(--fp-ink);flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.04in .2in;margin-bottom:.04in;padding-bottom:.03in;display:flex}.fp-shooter-head h2{text-transform:none;letter-spacing:.01em;margin-bottom:0;font-size:11pt}.fp-rank{color:var(--fp-muted);font-weight:600}.fp-shooter-sum{align-items:baseline;gap:.12in;font-size:8.5pt;display:flex}.fp-shooter-sum .fp-strong{font-size:11pt}.fp-stages{table-layout:fixed}.fp-stages .fp-c-stage{width:34%}.fp-stages .fp-c-par,.fp-stages .fp-c-time{width:10%}.fp-stages .fp-c-over{width:13%}.fp-stages .fp-c-pts{width:9%}.fp-stages .fp-c-hit{width:8%}.fp-stages .fp-stage-row td{border-top:.75px solid #888;font-weight:600}.fp-stages .fp-stage-row td:first-child{white-space:nowrap}.fp-stages .fp-string-row td{color:#333;border-bottom:.5px dotted var(--fp-rule);font-size:7.8pt}.fp-stages .fp-string-row td:first-child{padding-left:.22in}.fp-stages tbody{break-inside:avoid}.fp-stages tbody.fp-over tr td{background:var(--fp-shade)}.fp-stages tbody.fp-over .fp-stage-row td:first-child{box-shadow:inset 3px 0 0 var(--fp-ink)}.fp-overflag{letter-spacing:.04em;border:1px solid var(--fp-ink);white-space:nowrap;border-radius:3px;padding:0 3px;font-size:7pt;font-weight:800}.fp-stages tbody.fp-costly .fp-stage-row td{border-top:1.5px dashed var(--fp-ink)}.fp-tag{letter-spacing:.08em;border:.75px dashed var(--fp-ink);vertical-align:1px;border-radius:3px;margin-left:.07in;padding:0 3px;font-size:6pt;font-weight:800}.fp-stages tfoot td{border-top:1.5px solid var(--fp-ink);border-bottom:none;font-weight:700}.fp-note{color:#333;margin:.04in 0 0;font-size:7.5pt}.fp-footer{border-top:.5px solid var(--fp-rule);color:var(--fp-muted);text-align:center;margin-top:.1in;padding-top:.05in;font-size:7pt}.sh-page{gap:1rem;min-width:0;display:grid}.sh-page h2{color:var(--accent);margin:0;font-size:1.25rem}.sh-page .muted,.sh-page small{color:var(--muted-2)}.sh-page .good{color:var(--good)}.sh-page .bad{color:var(--bad)}.sh-page .up{color:var(--good)}.sh-page .down{color:var(--bad)}.sh-page .num{font-variant-numeric:tabular-nums}.sh-page .strong{color:var(--accent);font-weight:700}.sh-warn{color:var(--warn);margin:0}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.sh-head{justify-content:space-between;align-items:baseline;gap:.75rem;display:flex}.sh-count{color:var(--muted-2);text-transform:uppercase;letter-spacing:.05em;font-size:.8rem}.back-link{justify-self:start;align-items:center;min-height:48px;text-decoration:none;display:inline-flex}.sh-card{border:1px solid var(--border);background:var(--panel);border-radius:12px;min-width:0;padding:.9rem 1rem}.sh-card h3{text-transform:uppercase;letter-spacing:.06em;color:var(--muted-2);margin:0 0 .7rem;font-size:.75rem}.sh-search{gap:.5rem;display:flex}.sh-search input{border:1px solid var(--border);background:var(--input);min-width:0;min-height:48px;color:var(--text);font:inherit;border-radius:10px;flex:1;padding:.55rem .8rem;font-size:1rem}.sh-search input:focus{border-color:var(--accent);outline:none}.sh-clear{min-width:64px;min-height:48px}.roster{border:1px solid var(--border);background:var(--panel);border-radius:12px;overflow:hidden}.roster-row{border-bottom:1px solid var(--border);min-height:56px;color:inherit;grid-template-columns:minmax(0,1.8fr) repeat(4,minmax(3.5rem,.7fr)) minmax(5rem,.8fr) 1rem;align-items:center;gap:.5rem;padding:.5rem .9rem;text-decoration:none;display:grid}.roster-row:last-child{border-bottom:none}a.roster-row:hover,a.roster-row:focus-visible{background:color-mix(in srgb, var(--panel-3) 55%, transparent)}.roster-row .num{text-align:right}.roster-header{background:var(--panel-2);text-transform:uppercase;letter-spacing:.06em;min-height:0;color:var(--muted-2);font-size:.7rem}.roster-name{text-overflow:ellipsis;white-space:nowrap;font-weight:700;overflow:hidden}.roster-badge{align-items:center;display:flex}.sh-chev{color:var(--muted-2);text-align:right;font-size:1.2rem}@media (width<=640px){.roster-header{display:none}.roster-row{grid-template-columns:repeat(4,minmax(0,1fr)) 1rem;grid-template-areas:"name name name badge chev""a b c d chev";row-gap:.25rem}.roster-name{grid-area:name}.roster-badge{grid-area:badge;justify-content:flex-end}.roster-row .sh-chev{grid-area:chev}.roster-row .num{text-align:left;font-size:.85rem}.roster-row .num:before{content:attr(data-label);text-transform:uppercase;letter-spacing:.05em;color:var(--muted-2);font-size:.65rem;font-weight:500;display:block}}.dope-head{gap:.75rem;display:grid}.dope-title{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.dope-title h2{overflow-wrap:anywhere;font-size:clamp(1.3rem,4vw,1.7rem)}.session-meta{margin:0}.stat-grid{grid-template-columns:repeat(auto-fit,minmax(8.5rem,1fr));gap:.6rem;display:grid}.stat{border:1px solid var(--border);background:var(--panel);min-height:48px;color:inherit;border-radius:10px;flex-direction:column;gap:.15rem;padding:.65rem .8rem;text-decoration:none;display:flex}.stat.wide{grid-column:span 2}.stat.link:hover{border-color:var(--border-strong);background:var(--panel-2)}.stat-label{text-transform:uppercase;letter-spacing:.06em;color:var(--muted-2);font-size:.68rem}.stat-value{color:var(--text);font-variant-numeric:tabular-nums;font-size:1.35rem;font-weight:700}.stat-value.iom{font-size:1rem}.stat-sub{color:var(--muted);font-size:.75rem}@media (width<=420px){.stat-grid{grid-template-columns:1fr 1fr}.stat.wide{grid-column:1/-1}}.qual-badge{vertical-align:middle;align-items:center;gap:.3rem;display:inline-flex}.qual-badge-icon{flex-shrink:0;display:block}.qual-badge-count{color:var(--accent);font-variant-numeric:tabular-nums;font-size:.85rem;font-weight:800}.qual-badge.lg{flex-direction:column;gap:.25rem}.qual-badge-caption{flex-direction:column;align-items:center;line-height:1.2;display:flex}.qual-badge-date{color:var(--muted);white-space:nowrap;font-size:.72rem}.qual-badge-score{color:var(--accent);font-variant-numeric:tabular-nums;font-size:.95rem}.badge-row{grid-template-columns:repeat(auto-fill,minmax(104px,1fr));gap:.6rem;display:grid}.badge-link{border:1px solid var(--border);background:color-mix(in srgb, var(--panel-2) 60%, transparent);min-height:48px;color:inherit;border-radius:10px;justify-content:center;padding:.6rem .3rem;text-decoration:none;display:flex}.badge-link:hover,.badge-link:focus-visible{border-color:var(--accent);background:var(--accent-dim)}.chart-slot svg{max-width:100%;display:block}.table-scroll{-webkit-overflow-scrolling:touch;border:1px solid var(--border);border-radius:10px;width:100%;overflow-x:auto}.stage-table{border-collapse:collapse;width:100%;min-width:520px;font-size:.88rem}.stage-table caption{text-align:left;color:var(--muted-2);padding:.5rem .7rem;font-size:.75rem}.stage-table th,.stage-table td{text-align:right;white-space:nowrap;padding:.55rem .6rem}.stage-table thead th{background:var(--panel-2);text-transform:uppercase;letter-spacing:.06em;color:var(--muted-2);font-size:.68rem;font-weight:700}.stage-table .col-stage{text-align:left;white-space:normal;min-width:11rem;font-weight:650}.stage-table tbody .stage-row,.perstage-table tbody tr{border-top:1px solid var(--border)}.stage-table tbody.stage-over .stage-row{background:color-mix(in srgb, var(--bad) 7%, transparent)}.stage-table .string-row td{text-align:left;color:var(--muted);white-space:normal;font-variant-numeric:tabular-nums;padding:.15rem .6rem .35rem 2.4rem;font-size:.8rem}.stage-table tbody .string-row:last-child td{padding-bottom:.6rem}.string-label{color:var(--muted-2);font-weight:650}.stage-table tfoot tr{border-top:2px solid var(--border-strong);background:var(--panel-2)}.stage-table tfoot th,.stage-table tfoot td{font-weight:700}.stage-num{background:var(--panel-3);width:1.5rem;height:1.5rem;color:var(--accent);border-radius:6px;justify-content:center;align-items:center;margin-right:.3rem;font-size:.78rem;font-weight:800;display:inline-flex}.iom .i{color:var(--good);font-weight:700}.iom .o,.result-meta .o{color:var(--warn);font-weight:700}.iom .m,.result-meta .m{color:var(--bad);font-weight:700}.result-meta .i{color:var(--good);font-weight:700}.perstage-table tr.costly{background:color-mix(in srgb, var(--bad) 8%, transparent)}.pill.flag{vertical-align:middle;margin-left:.4rem}.costliest{color:var(--muted);flex-wrap:wrap;gap:.35rem 1.25rem;margin:0 0 .75rem;font-size:.88rem;display:flex}.costliest strong{color:var(--bad)}.session-list{gap:.4rem;display:grid}.session-row{border:1px solid var(--border);background:color-mix(in srgb, var(--panel-2) 55%, transparent);min-height:56px;color:inherit;font:inherit;text-align:left;cursor:pointer;border-radius:10px;grid-template-columns:minmax(0,1fr) 3.2rem 3.6rem 5.2rem 1rem;align-items:center;gap:.6rem;width:100%;padding:.5rem .8rem;text-decoration:none;display:grid}.session-row:hover,.session-row:focus-visible{border-color:var(--border-strong);background:var(--panel-3)}.session-date{overflow-wrap:anywhere;flex-direction:column;min-width:0;font-weight:650;display:flex}.session-date small{font-size:.75rem;font-weight:400}.session-total{text-align:right;font-size:1.1rem}.session-row .pill{justify-self:center}.session-time{flex-direction:column;align-items:flex-end;font-size:.88rem;display:flex}.session-time small{font-size:.7rem}.rank{color:var(--muted-2);font-weight:500}.result-row .session-date{flex-direction:row;gap:.3rem}.focus-bar{flex-wrap:wrap;gap:.45rem;display:flex}.btn.chip{text-overflow:ellipsis;border-radius:999px;max-width:100%;min-height:48px;padding:.45rem .95rem;overflow:hidden}.btn.chip.active{border-color:var(--accent);color:var(--accent);background:var(--accent-dim)}.result-card{gap:.6rem;display:grid}.result-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;display:flex}.result-name{align-items:center;gap:.5rem;min-width:0;display:flex}.name-link{color:var(--text);overflow-wrap:anywhere;align-items:center;min-height:48px;font-size:1.1rem;font-weight:700;display:inline-flex}.name-link:hover{color:var(--accent)}.result-score{align-items:baseline;gap:.35rem;display:flex}.result-score strong{color:var(--accent);font-variant-numeric:tabular-nums;font-size:1.6rem}.result-score .stage-status{align-self:center;margin-left:.4rem}.result-meta{color:var(--muted);flex-wrap:wrap;gap:.3rem 1.1rem;margin:0;font-size:.85rem;display:flex}.group-totals p{margin:0}@media (width<=520px){.sh-card{padding:.8rem .75rem}.session-row{grid-template-columns:minmax(0,1fr) 2.8rem 3.4rem 1rem}.session-row .session-time{flex-direction:row;grid-area:2/1/auto/4;justify-content:flex-start;gap:.5rem}.session-row .sh-chev{grid-area:1/4/span 2}}@media print{.table-scroll{border:none;overflow:visible}.stage-table{min-width:0}.focus-bar,.back-link,.back-row{display:none}}.crew-chart{gap:.6rem;min-width:0;display:grid}.crew-chart-plot{width:100%;min-width:0;position:relative}.crew-chart-svg{touch-action:manipulation;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;width:100%;display:block;overflow:visible}.cc-grid{stroke:var(--border);stroke-width:1px;opacity:.55}.cc-axis{stroke:var(--border-strong);stroke-width:1px}.cc-axis-label{fill:var(--muted-2);font-variant-numeric:tabular-nums;font-size:11px}.cc-pass{stroke:var(--accent);stroke-width:1.5px;stroke-dasharray:6 5;opacity:.9}.cc-pass-label{fill:var(--accent);letter-spacing:.04em;paint-order:stroke;stroke:var(--bg);stroke-width:3px;font-size:11px;font-weight:700}.cc-series{transition:opacity .15s}.cc-point{cursor:pointer;outline:none}.cc-point:focus-visible{stroke:var(--text);stroke-width:3px}.cc-sel-ring{stroke-width:2px;opacity:.9;pointer-events:none}.cc-empty{fill:var(--muted);font-size:13px}.cc-tooltip{z-index:5;border:1px solid var(--border-strong);background:color-mix(in srgb, var(--panel-2) 96%, transparent);color:var(--text);border-radius:10px;padding:.55rem .7rem .65rem;font-size:.85rem;position:absolute;box-shadow:0 8px 24px #00000073}.cc-tip-head{align-items:center;gap:.45rem;display:flex}.cc-tip-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.cc-swatch-dot{border-radius:50%;flex-shrink:0;width:10px;height:10px}.cc-tip-close{appearance:none;color:var(--muted);cursor:pointer;background:0 0;border:0;width:40px;height:40px;margin:-.5rem -.6rem -.5rem 0;font-size:1.3rem;line-height:1}.cc-tip-date{color:var(--muted);font-size:.8rem}.cc-tip-score{justify-content:space-between;align-items:baseline;gap:.5rem;margin-top:.2rem;display:flex}.cc-tip-total{font-variant-numeric:tabular-nums;font-size:1.35rem;font-weight:700}.cc-tip-max{color:var(--muted-2);font-size:.85rem;font-weight:600}.cc-tip-result{letter-spacing:.06em;border:1px solid;border-radius:999px;padding:.2rem .55rem;font-size:.72rem;font-weight:700}.cc-tip-result.pass{color:var(--good)}.cc-tip-result.fail{color:var(--bad)}.cc-tip-over{color:var(--muted);margin-top:.3rem;font-size:.8rem}.cc-tip-over:empty{display:none}.cc-tip-over-head{color:var(--warn);font-weight:600}.cc-tip-over ul{margin:.15rem 0 0;padding-left:1.1rem}.cc-tip-open{width:100%;min-height:44px;margin-top:.5rem}.cc-key{color:var(--muted);flex-wrap:wrap;gap:.3rem 1rem;font-size:.78rem;display:flex}.cc-key-item{align-items:center;gap:.35rem;display:inline-flex}.cc-legend{flex-wrap:wrap;gap:.4rem;display:flex}.cc-legend-item{appearance:none;border:1px solid var(--border);background:var(--panel-2);min-width:48px;max-width:100%;min-height:48px;color:var(--text);font:inherit;cursor:pointer;touch-action:manipulation;border-radius:999px;align-items:center;gap:.5rem;padding:0 .85rem;font-size:.88rem;font-weight:600;transition:background .15s,border-color .15s,opacity .15s;display:inline-flex}.cc-legend-item:hover{border-color:var(--border-strong)}.cc-legend-item.is-highlight{border-color:var(--accent);background:var(--accent-dim)}.cc-legend-item.is-off{opacity:.45;background:0 0}.cc-legend-item.is-off .cc-legend-name{text-decoration:line-through}.cc-legend-name{text-overflow:ellipsis;white-space:nowrap;max-width:14ch;overflow:hidden}.cc-legend-swatch{flex-shrink:0}.cc-legend-all{color:var(--accent)}@media (width<=480px){.cc-legend-item{padding:0 .7rem;font-size:.82rem}}@media print{.crew-chart{break-inside:avoid}.cc-tooltip,.cc-sel-ring{display:none!important}.cc-line{stroke-dasharray:var(--cc-dash,none)}.cc-series .cc-line,.cc-series .cc-point,.cc-legend-swatch line{stroke:var(--cc-print)}.cc-series .cc-point.is-pass,.cc-legend-swatch circle{fill:var(--cc-print)}.cc-series .cc-point.is-fail{fill:#fff}.cc-series.is-muted{opacity:.45}.cc-pass{stroke:#000;opacity:1}.cc-pass-label{fill:#000;stroke:#fff}.cc-grid{stroke:#ccc}.cc-legend-item{color:#111;background:#fff;border-color:#999;min-height:0;padding:.15rem .5rem}.cc-legend-item.is-off{display:none}}.pd-head{flex-wrap:wrap;align-items:center}.pd-link{align-items:center;min-height:48px;text-decoration:none;display:inline-flex}.pd-dot{border-radius:50%;flex:none;width:.7rem;height:.7rem;display:inline-block;box-shadow:0 0 0 1px #00000059}.pd-sessions{gap:.4rem;margin:0;padding:0;list-style:none;display:grid}.pd-row{border:1px solid var(--border);background:color-mix(in srgb, var(--panel-2) 55%, transparent);min-height:56px;color:inherit;border-radius:10px;grid-template-columns:minmax(7.5rem,.9fr) minmax(0,2.2fr) auto 1rem;align-items:center;gap:.6rem .9rem;padding:.55rem .85rem;text-decoration:none;display:grid}.pd-row:hover,.pd-row:focus-visible{border-color:var(--border-strong);background:var(--panel-3)}.pd-date{flex-direction:column;min-width:0;font-weight:700;display:flex}.pd-date small{overflow-wrap:anywhere;font-size:.75rem;font-weight:400}.pd-names{flex-wrap:wrap;gap:.25rem .75rem;min-width:0;font-size:.88rem;display:flex}.pd-name{overflow-wrap:anywhere;align-items:center;gap:.35rem;min-width:0;display:inline-flex}.pd-stats{white-space:nowrap;flex-direction:column;align-items:flex-end;gap:.2rem;display:flex}.pd-top{color:var(--muted);font-size:.85rem}.pd-top strong{color:var(--accent);font-variant-numeric:tabular-nums}@media (width<=640px){.pd-row{grid-template-columns:minmax(0,1fr) auto 1rem}.pd-names{grid-area:2/1/auto/3}.pd-row .sh-chev{grid-area:1/3/span 2}}
