.cfv-toggle-row{align-items:center;gap:.875rem;margin-bottom:1.25rem;display:flex}.cfv-pill-track{background:var(--clr-input-bg);border:1px solid var(--clr-input-border);border-radius:9999px;gap:2px;padding:3px;display:flex}.cfv-pill-btn{color:var(--clr-text-secondary);font-size:var(--text-sm);cursor:pointer;-webkit-tap-highlight-color:transparent;letter-spacing:.02em;background:0 0;border:none;border-radius:9999px;padding:.3rem 1.1rem;font-weight:600;transition:background .18s,color .18s}.cfv-pill-btn:hover{color:var(--clr-text)}.cfv-pill-btn--active{background:var(--clr-primary);color:#fff}.cfv-pill-btn--active:hover{background:var(--clr-primary-hover);color:#fff}[data-theme=light] .cfv-pill-track{background:#f1f5f9;border-color:#cbd5e1}[data-theme=light] .cfv-pill-btn{color:#475569}[data-theme=light] .cfv-pill-btn:hover{color:#1e293b}[data-theme=light] .cfv-pill-btn--active,[data-theme=light] .cfv-pill-btn--active:hover{background:var(--clr-primary);color:#fff}.cfv-toggle-hint{font-size:var(--text-sm);color:var(--clr-text-muted)}.cfv-field-wrap{width:100%;max-width:680px;margin:0 auto}.cfv-svg{border-radius:var(--r-md);border:1px solid var(--clr-border);cursor:default;-webkit-tap-highlight-color:transparent;width:100%;height:auto;display:block}.cfv-outfield{fill:#3a7d44;stroke:#4a9455;stroke-width:1.5px}.cfv-infield-ring{fill:#428a4f;stroke:none}.cfv-inner-circle{fill:none;stroke:#ffffff59;stroke-width:1.5px;stroke-dasharray:6 4}.cfv-circle-label{fill:#ffffff6b;pointer-events:none;user-select:none;font-family:inherit;font-size:8px}.cfv-zone-label{fill:#ffffff47;pointer-events:none;user-select:none;letter-spacing:.04em;font-family:inherit;font-size:9px;font-weight:500}.cfv-pitch{fill:#d4b483;stroke:#b8924e;stroke-width:1px}.cfv-stumps{stroke:#f5c542;stroke-width:3px;stroke-linecap:round}.cfv-crease{stroke:#ffffff8c;stroke-width:1px;stroke-linecap:round}.cfv-pos-group{cursor:pointer;outline:none}.cfv-pos-label{fill:#fff;paint-order:stroke fill;stroke:#000000b8;stroke-width:3px;stroke-linejoin:round;pointer-events:none;user-select:none;font-family:inherit;font-size:9px;font-weight:700}.cfv-pos-label--active,.cfv-pos-group:hover .cfv-pos-label,[data-theme=light] .cfv-pos-label{fill:#fff}.cfv-active-ring{opacity:.18}.cfv-pos-group:hover circle{opacity:.75}.cfv-side-badges{justify-content:space-between;align-items:center;margin-top:.5rem;padding:0 .25rem;display:flex}.cfv-side-badge{font-size:var(--text-xs);letter-spacing:.03em;border-radius:9999px;padding:.2rem .65rem;font-weight:600}.cfv-side-badge--leg{color:#93c5fd;background:#93c5fd1f;border:1px solid #93c5fd40}.cfv-side-badge--off{color:#fcd34d;background:#fde0471a;border:1px solid #fde04738}[data-theme=light] .cfv-side-badge--leg{color:#1d4ed8;background:#3b82f614;border-color:#3b82f633}[data-theme=light] .cfv-side-badge--off{color:#92400e;background:#eab3081a;border-color:#eab30840}.cfv-legend{flex-wrap:wrap;align-items:center;gap:.5rem 1.25rem;margin-top:.25rem;padding:.625rem .25rem;display:flex}.cfv-legend-item{font-size:var(--text-xs);color:var(--clr-text-secondary);align-items:center;gap:.4rem;display:flex}.cfv-legend-dot{border:1px solid #ffffff59;border-radius:50%;flex-shrink:0;width:8px;height:8px;display:inline-block}[data-theme=light] .cfv-legend-dot{border-color:#0000002e}.cfv-legend-divider{background:var(--clr-border);flex-shrink:0;width:1px;height:14px}.cfv-legend-hint{font-size:var(--text-xs);color:var(--clr-text-muted);font-style:italic}.cfv-guide{flex-direction:column;gap:2rem;margin-top:2.5rem;display:flex}.cfv-guide-group-header{align-items:center;gap:.625rem;margin-bottom:.875rem;display:flex}.cfv-guide-group-accent{border-radius:9999px;flex-shrink:0;width:4px;height:20px;display:inline-block}.cfv-guide-group-title{font-size:var(--text-sm);text-transform:uppercase;letter-spacing:.09em;margin:0;font-weight:700}.cfv-guide-grid{grid-template-columns:1fr;gap:.625rem;display:grid}@media (min-width:560px){.cfv-guide-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width:900px){.cfv-guide-grid{grid-template-columns:repeat(3,1fr)}}.cfv-guide-card{background:var(--clr-card-bg);border:1px solid var(--clr-border);border-radius:var(--r-md);cursor:pointer;-webkit-tap-highlight-color:transparent;padding:.75rem .875rem;transition:border-color .16s,background .16s}.cfv-guide-card:hover{border-color:var(--clr-border-strong)}.cfv-guide-card--active{border-color:var(--clr-primary);background:var(--clr-primary-active-bg)}.cfv-guide-card-header{align-items:center;gap:.45rem;margin-bottom:.2rem;display:flex}.cfv-guide-card-dot{border:1.5px solid #ffffff59;border-radius:50%;flex-shrink:0;width:8px;height:8px;display:inline-block}[data-theme=light] .cfv-guide-card-dot{border-color:#0000002e}.cfv-guide-card-name{font-size:var(--text-sm);color:var(--clr-text-title);font-weight:600;line-height:1.3}.cfv-guide-card-where{font-size:var(--text-xs);color:var(--clr-text-muted);margin:0 0 .35rem;font-style:italic}.cfv-guide-card-desc{font-size:var(--text-xs);color:var(--clr-text-secondary);margin:0;line-height:1.6}.cfv-tab-row{border-bottom:1px solid var(--clr-border);margin-bottom:1.75rem;display:flex}.cfv-tab-btn{font-size:var(--text-sm);color:var(--clr-text-muted);cursor:pointer;-webkit-tap-highlight-color:transparent;letter-spacing:.01em;white-space:nowrap;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;padding:.6rem 1.25rem;font-weight:600;transition:color .15s,border-color .15s}.cfv-tab-btn:hover{color:var(--clr-text-secondary)}.cfv-tab-btn--active{color:var(--clr-primary);border-bottom-color:var(--clr-primary)}[data-theme=light] .cfv-tab-btn{color:#64748b}[data-theme=light] .cfv-tab-btn:hover{color:#334155}[data-theme=light] .cfv-tab-btn--active{color:var(--clr-primary);border-bottom-color:var(--clr-primary)}.cfb-controls-row{flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:.875rem;display:flex}.cfb-count-badge{background:var(--clr-card-bg);border:1px solid var(--clr-border);border-radius:9999px;align-items:baseline;gap:1px;padding:.2rem .7rem;display:inline-flex}.cfb-count-badge__num{font-weight:700;font-size:var(--text-sm);color:var(--clr-primary);font-variant-numeric:tabular-nums}.cfb-count-badge__num--full{color:#ef4444}.cfb-count-badge__total{font-size:var(--text-xs);color:var(--clr-text-muted);font-weight:500}[data-theme=light] .cfb-count-badge{background:#f8fafc;border-color:#e2e8f0}.cfb-icon-btn{border:1px solid var(--clr-border);color:var(--clr-text-muted);font-size:var(--text-xs);cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border-radius:9999px;align-items:center;gap:.3rem;padding:.25rem .75rem;font-weight:500;transition:border-color .15s,color .15s,background .15s;display:inline-flex}.cfb-icon-btn:hover{border-color:var(--clr-border-strong);color:var(--clr-text-secondary)}.cfb-icon-btn--active{border-color:var(--clr-primary);color:var(--clr-primary);background:var(--clr-primary-active-bg)}.cfb-icon-btn__label{font-size:var(--text-xs)}.cfb-action-btn{border-radius:var(--r-sm);border:1px solid var(--clr-border);font-size:var(--text-xs);cursor:pointer;-webkit-tap-highlight-color:transparent;white-space:nowrap;align-items:center;gap:.35rem;padding:.3rem .85rem;font-weight:600;transition:background .15s,border-color .15s,color .15s;display:inline-flex}.cfb-action-btn--ghost{color:var(--clr-text-secondary);background:0 0}.cfb-action-btn--ghost:hover{background:var(--clr-hover-bg);border-color:var(--clr-border-strong);color:var(--clr-text)}.cfb-action-btn--share{background:var(--clr-primary);border-color:var(--clr-primary);color:#fff}.cfb-action-btn--share:hover{background:var(--clr-primary-hover);border-color:var(--clr-primary-hover)}.cfb-action-btn--icon-only{padding:.3rem .6rem}[data-theme=light] .cfb-action-btn--ghost{color:#475569;border-color:#cbd5e1}[data-theme=light] .cfb-action-btn--ghost:hover{color:#1e293b;background:#f1f5f9}.cfb-presets-row{flex-wrap:wrap;align-items:center;gap:.625rem;margin-bottom:1rem;display:flex}.cfb-presets-label{font-size:var(--text-xs);color:var(--clr-text-muted);text-transform:uppercase;letter-spacing:.07em;white-space:nowrap;flex-shrink:0;font-weight:600}.cfb-presets-strip{flex-wrap:wrap;gap:.375rem;display:flex}.cfb-preset-btn{border:1px solid var(--clr-border);color:var(--clr-text-secondary);font-size:var(--text-xs);cursor:pointer;-webkit-tap-highlight-color:transparent;white-space:nowrap;background:0 0;border-radius:9999px;padding:.25rem .75rem;font-weight:500;transition:background .14s,border-color .14s,color .14s}.cfb-preset-btn:hover{border-color:var(--clr-border-strong);color:var(--clr-text);background:var(--clr-hover-bg)}.cfb-preset-btn--active{background:var(--clr-primary-active-bg);border-color:var(--clr-primary);color:var(--clr-primary);font-weight:600}[data-theme=light] .cfb-preset-btn{color:#475569;border-color:#cbd5e1}[data-theme=light] .cfb-preset-btn:hover{color:#1e293b;background:#f1f5f9}[data-theme=light] .cfb-preset-btn--active{border-color:var(--clr-primary);color:var(--clr-primary);background:#22c55e14}.cfb-selector{flex-direction:column;gap:1rem;display:flex}.cfb-selector-hint{font-size:var(--text-xs);color:var(--clr-text-muted);margin:0 0 .25rem;font-style:italic}.cfb-group{flex-direction:column;gap:.5rem;display:flex}.cfb-group-label{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.08em;align-items:center;gap:.4rem;font-weight:700;display:inline-flex}.cfb-group-accent{border-radius:9999px;flex-shrink:0;width:3px;height:14px;display:inline-block}.cfb-pill-row{flex-wrap:wrap;gap:.375rem;display:flex}.cfb-pos-pill{border:1px solid var(--clr-border);background:var(--clr-card-bg);color:var(--clr-text-secondary);font-size:var(--text-xs);cursor:pointer;-webkit-tap-highlight-color:transparent;user-select:none;border-radius:9999px;align-items:center;gap:.3rem;padding:.3rem .8rem;font-weight:500;transition:background .13s,border-color .13s,color .13s,transform .1s;display:inline-flex}.cfb-pos-pill:hover{border-color:var(--clr-border-strong);color:var(--clr-text)}.cfb-pos-pill:active{transform:scale(.96)}.cfb-pos-pill--locked{cursor:default;opacity:.85}.cfb-pos-pill--locked:hover{border-color:var(--clr-border);color:var(--clr-text-secondary)}.cfb-pos-pill__lock{opacity:.6;font-size:6px}[data-theme=light] .cfb-pos-pill{color:#475569;background:#f8fafc;border-color:#e2e8f0}[data-theme=light] .cfb-pos-pill:hover{color:#1e293b;background:#f1f5f9;border-color:#94a3b8}[data-theme=light] .cfb-pos-pill--on{background:color-mix(in srgb, var(--pill-color,var(--clr-primary)) 10%, white);border-color:color-mix(in srgb, var(--pill-color,var(--clr-primary)) 45%, transparent);color:var(--pill-color,var(--clr-primary))}@media (max-width:480px){.cfb-controls-row{gap:.375rem}.cfb-icon-btn__label{display:none}.cfb-preset-btn{padding:.22rem .6rem;font-size:11px}.cfb-pos-pill{padding:.25rem .65rem;font-size:11px}}.cfb-root{width:100%;max-width:980px;margin:0 auto}.cfb-split{align-items:flex-start;gap:1.5rem;display:flex}.cfb-panel{overscroll-behavior:contain;background:var(--clr-card-bg);border:1px solid var(--clr-border);border-radius:var(--r-md);scrollbar-width:thin;scrollbar-color:var(--clr-border) transparent;flex-shrink:0;width:268px;max-height:calc(100vh - 100px);padding:1rem;position:sticky;top:80px;overflow-y:auto}.cfb-panel::-webkit-scrollbar{width:4px}.cfb-panel::-webkit-scrollbar-track{background:0 0}.cfb-panel::-webkit-scrollbar-thumb{background:var(--clr-border);border-radius:9999px}.cfb-panel-inner{flex-direction:column;gap:1rem;display:flex}.cfb-field-col{flex-direction:column;flex:1;gap:.875rem;min-width:0;display:flex}.cfb-desktop-heading{margin-bottom:1.25rem}.cfb-desktop-heading__title{font-size:var(--text-base);color:var(--clr-text-title);margin:0 0 .25rem;font-weight:700}.cfb-desktop-heading__sub{font-size:var(--text-sm);color:var(--clr-text-muted);margin:0}.cfb-selector-inner{flex-direction:column;gap:1rem;display:flex}.cfb-selector-section{flex-direction:column;gap:.5rem;display:flex}.cfb-selector-section-label{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.08em;color:var(--clr-text-muted);font-weight:700}.cfb-pos-pill{border-color:color-mix(in srgb, var(--pill-color,var(--clr-border)) 25%, var(--clr-border))}.cfb-pos-pill--on{background:color-mix(in srgb, var(--pill-color,var(--clr-primary)) 15%, transparent);border-color:color-mix(in srgb, var(--pill-color,var(--clr-primary)) 60%, transparent);color:var(--pill-color,var(--clr-primary));font-weight:600}[data-theme=light] .cfb-panel{background:#f8fafc;border-color:#e2e8f0}.cfb-split{display:flex}.cfb-mobile-layout{display:none}@media (max-width:767px){.cfb-root{max-width:100%}.cfb-split,.cfb-desktop-heading{display:none}.cfb-mobile-layout{flex-direction:column;gap:0;display:flex}.cfb-mobile-heading{border-bottom:1px solid var(--clr-border);justify-content:space-between;align-items:flex-start;gap:.75rem;padding-bottom:1rem;display:flex}.cfb-mobile-heading__text{flex:1;min-width:0}.cfb-mobile-heading__title{font-size:var(--text-base);color:var(--clr-text-title);margin:0 0 .2rem;font-weight:700}.cfb-mobile-heading__sub{font-size:var(--text-sm);color:var(--clr-text-muted);margin:0;line-height:1.5}.cfb-mobile-configure{flex-direction:column;gap:1.125rem;padding-bottom:1.5rem;display:flex}.cfb-mobile-apply-btn{background:var(--clr-primary);color:#fff;border-radius:var(--r-md);width:100%;font-size:var(--text-base);cursor:pointer;-webkit-tap-highlight-color:transparent;letter-spacing:.01em;border:none;justify-content:center;align-items:center;gap:.5rem;margin-top:.25rem;padding:.875rem;font-weight:700;transition:background .15s;display:flex}.cfb-mobile-apply-btn:active{background:var(--clr-primary-hover)}.cfb-mobile-apply-btn--dirty{box-shadow:0 0 0 3px color-mix(in srgb, var(--clr-primary) 30%, transparent);animation:1.8s ease-in-out infinite cfb-apply-pulse}@keyframes cfb-apply-pulse{0%,to{box-shadow:0 0 0 3px color-mix(in srgb, var(--clr-primary) 30%, transparent)}50%{box-shadow:0 0 0 6px color-mix(in srgb, var(--clr-primary) 10%, transparent)}}.cfb-mobile-result{flex-direction:column;gap:.875rem;padding-top:1.75rem;animation:.3s cubic-bezier(0,0,.2,1) both cfb-result-in;display:flex}@keyframes cfb-result-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.cfb-mobile-result-header{justify-content:space-between;align-items:center;display:flex}.cfb-mobile-result-title{font-size:var(--text-sm);text-transform:uppercase;letter-spacing:.08em;color:var(--clr-text-muted);font-weight:700}.cfb-mobile-result-hand{align-items:center;gap:.75rem;display:flex}}
