:root{--paper: #f4f0e6;--paper-2: #ece6d7;--ink: #191510;--ink-2: #5c5346;--ink-3: #8b8271;--rule: #d8d0be;--accent: #cf3a25;--accent-2: #a62d1c;--pos: #2f6a48;--gold: #a9762a;--serif: "Fraunces", "Iowan Old Style", Georgia, "Times New Roman", serif;--grotesque: "Libre Franklin", "Helvetica Neue", Arial, sans-serif;--maxw: 600px;--radius: 2px}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;font-family:var(--grotesque);color:var(--ink);background:var(--paper);line-height:1.5;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}body:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:9999;opacity:.05;mix-blend-mode:multiply;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline;text-underline-offset:3px}.container{width:100%;max-width:var(--maxw);margin:0 auto;padding:0 20px}.app-shell{display:flex;flex-direction:column;min-height:100dvh}.main{flex:1 0 auto;padding:22px 0 48px}@keyframes rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.header{position:sticky;top:0;z-index:20;background:var(--paper);border-bottom:1px solid var(--ink);box-shadow:0 3px 0 -1px var(--paper),0 4px 0 -1px var(--ink)}.header-inner{display:flex;align-items:center;justify-content:space-between;height:58px}.header-brand{display:inline-flex}.logo{display:inline-flex;align-items:baseline;gap:8px;color:var(--ink)}.logo-mark{color:var(--accent);align-self:center}.logo-text{font-family:var(--serif);font-weight:900;letter-spacing:-.02em;font-size:1.4rem;font-optical-sizing:auto}.logo-text-accent{font-style:italic;color:var(--ink)}.header-nav{display:flex;align-items:center;gap:4px}.nav-link{color:var(--ink-2);font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.1em;padding:8px 10px;border-radius:0}.nav-link:hover{color:var(--ink);text-decoration:none}.nav-link.active{color:var(--accent)}.nav-cta{color:var(--paper);background:var(--ink)}.nav-cta:hover{color:var(--paper);background:var(--accent)}@media (max-width: 460px){.nav-link:not(.nav-cta){display:none}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-family:var(--grotesque);font-weight:600;font-size:.82rem;text-transform:uppercase;letter-spacing:.09em;padding:13px 18px;border-radius:var(--radius);border:1.5px solid var(--ink);cursor:pointer;color:var(--ink);background:transparent;transition:background .15s ease,color .15s ease,transform .04s ease;-webkit-tap-highlight-color:transparent;user-select:none}.btn:active{transform:translateY(1px)}.btn:disabled{opacity:.32;cursor:not-allowed}.btn--lg{padding:15px 24px;font-size:.9rem}.btn-emoji{display:none}.btn--goal{background:var(--pos);border-color:var(--pos);color:var(--paper)}.btn--goal:hover:not(:disabled){background:#24543a;border-color:#24543a}.btn--miss{background:transparent;border-color:var(--ink);color:var(--ink)}.btn--miss:hover:not(:disabled){background:var(--accent);border-color:var(--accent);color:var(--paper)}.btn--ghost{background:transparent;border-color:transparent;color:var(--ink-2);letter-spacing:.08em}.btn--ghost:hover:not(:disabled){color:var(--ink);text-decoration:underline;text-underline-offset:3px}.btn--outline{background:transparent;border-color:var(--ink);color:var(--ink)}.btn--outline:hover:not(:disabled){background:var(--ink);color:var(--paper)}.btn--share{background:var(--ink);border-color:var(--ink);color:var(--paper)}.btn--share:hover:not(:disabled){background:var(--accent);border-color:var(--accent)}.hero{padding:30px 20px 22px}.hero>*{animation:rise .6s both}.hero-eyebrow{color:var(--accent);font-weight:700;font-size:.7rem;letter-spacing:.18em;text-transform:uppercase;margin:0 0 16px;padding-bottom:12px;border-bottom:1px solid var(--rule)}.hero-title{font-family:var(--serif);font-optical-sizing:auto;font-size:clamp(2.7rem,11vw,4.6rem);line-height:.98;letter-spacing:-.025em;margin:0 0 18px;font-weight:900;animation-delay:.05s}.hero-title .accent{color:var(--accent);font-style:italic;font-weight:900}.hero-sub{color:var(--ink-2);font-size:1.12rem;max-width:30em;margin:0 0 24px;animation-delay:.1s}.hero-cta{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:22px;animation-delay:.15s}.features{display:grid;gap:0;grid-template-columns:1fr;margin-top:26px;border-top:1px solid var(--ink)}.feature{padding:22px 0;border-bottom:1px solid var(--rule);counter-increment:feat}.feature-emoji{display:none}.feature-title{font-family:var(--serif);margin:0 0 6px;font-size:1.4rem;font-weight:600}.feature-title:before{content:counter(feat,decimal-leading-zero) "  ";color:var(--accent);font-family:var(--grotesque);font-size:.9rem;font-weight:700;vertical-align:3px}.feature-body{margin:0;color:var(--ink-2);font-size:.98rem;max-width:34em}.features{counter-reset:feat}@media (min-width: 660px){.features{grid-template-columns:repeat(3,1fr);column-gap:24px}.feature{border-bottom:none}}.strip{margin-top:40px;padding-top:26px;border-top:3px double var(--ink)}.strip-title{font-family:var(--serif);font-size:1.9rem;font-weight:600;margin:0 0 18px}.steps{list-style:none;padding:0;margin:0 0 22px;display:grid;gap:0}.steps li{display:flex;align-items:baseline;gap:14px;padding:14px 2px;border-bottom:1px solid var(--rule);color:var(--ink-2)}.steps li b{color:var(--ink);font-weight:700}.steps li span{flex:none;font-family:var(--serif);font-weight:900;font-size:1.1rem;color:var(--accent);width:1.4em}.strip-cta{margin-top:4px}.seo-copy{margin-top:44px;padding-top:22px;border-top:1px solid var(--rule);color:var(--ink-2)}.seo-copy h2{font-family:var(--serif);color:var(--ink);font-size:1.5rem;font-weight:600}.seo-copy strong{color:var(--ink)}.app-page{display:flex;flex-direction:column;gap:18px}.app-card{background:var(--paper);border:1px solid var(--ink);border-radius:var(--radius);padding:20px 20px 22px;display:flex;flex-direction:column;gap:18px}.app-card>*{animation:rise .5s both}.app-card>*:nth-child(2){animation-delay:.04s}.app-card>*:nth-child(3){animation-delay:.08s}.app-card>*:nth-child(4){animation-delay:.12s}.app-card>*:nth-child(5){animation-delay:.16s}.app-card-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-bottom:14px;border-bottom:1px solid var(--ink)}.app-status{margin:0;font-family:var(--grotesque);font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--ink);font-size:.76rem}.nerd-toggle{display:inline-flex;align-items:center;gap:6px;color:var(--ink-3);font-size:.68rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;cursor:pointer;white-space:nowrap}.nerd-toggle input{accent-color:var(--accent)}.setup{display:flex;flex-direction:column;gap:14px}.setup-teams{display:grid;grid-template-columns:1fr auto 1fr;align-items:end;gap:10px}.setup-vs{font-family:var(--serif);font-style:italic;color:var(--ink-3);font-size:1.1rem;padding-bottom:8px}.setup-field{display:flex;flex-direction:column;gap:6px}.setup-label{font-size:.64rem;text-transform:uppercase;letter-spacing:.12em;color:var(--ink-3);font-weight:700}.setup-input{background:transparent;border:none;border-bottom:1.5px solid var(--ink);color:var(--ink);border-radius:0;padding:8px 2px;font-family:var(--serif);font-size:1.2rem;font-weight:600;width:100%}.setup-input:focus{outline:none;border-bottom-color:var(--accent)}.setup-first{display:flex;flex-direction:column;gap:8px}.seg{display:inline-flex;border:1.5px solid var(--ink);border-radius:var(--radius);overflow:hidden}.seg-btn{flex:1;border:none;background:transparent;color:var(--ink-2);font-family:var(--grotesque);font-weight:600;font-size:.78rem;text-transform:uppercase;letter-spacing:.06em;padding:10px 14px;cursor:pointer}.seg-btn+.seg-btn{border-left:1.5px solid var(--ink)}.seg-btn--on{background:var(--ink);color:var(--paper)}.seg-btn:disabled{cursor:not-allowed}.setup-hint{font-size:.72rem;color:var(--ink-3);font-style:italic}.setup-nerd{display:grid;gap:12px;padding-top:12px;border-top:1px solid var(--rule)}.setup-nerd input[type=range]{width:100%;accent-color:var(--accent)}.board{display:flex;flex-direction:column;gap:12px}.board-row{display:grid;grid-template-columns:1fr auto 1fr;align-items:end;gap:10px}.team-block{min-width:0}.team-name{font-family:var(--grotesque);font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-2);font-size:.8rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-bottom:2px}.team-name--won{color:var(--gold)}.team-score{font-family:var(--serif);font-optical-sizing:auto;font-size:3.4rem;font-weight:900;line-height:.9;letter-spacing:-.03em;font-variant-numeric:tabular-nums}.team-score--lead{color:var(--accent)}.board-sep{display:flex;flex-direction:column;align-items:center;gap:4px;padding-bottom:8px}.board-dash{font-family:var(--serif);font-size:1.6rem;color:var(--ink-3)}.board-sd{font-size:.58rem;text-transform:uppercase;letter-spacing:.14em;color:var(--accent);font-weight:700;white-space:nowrap;border:1px solid var(--accent);padding:2px 6px;border-radius:1px}.board-meter{display:flex;height:9px;overflow:hidden;background:var(--paper-2);border:1px solid var(--ink);border-radius:1px}.board-meter-a{background:var(--ink);transition:width .55s cubic-bezier(.22,1,.36,1)}.board-meter-b{background:transparent;transition:width .55s cubic-bezier(.22,1,.36,1)}.board-probs{display:grid;grid-template-columns:1fr auto 1fr;align-items:baseline;gap:8px}.board-probs .prob{font-family:var(--serif);font-weight:900;font-size:1.25rem;color:var(--ink);font-variant-numeric:tabular-nums}.board-probs .prob:last-child{text-align:right}.prob--lead{color:var(--accent)}.prob-label{font-size:.62rem;text-transform:uppercase;letter-spacing:.12em;color:var(--ink-3);font-weight:700}.swing{position:relative;border:1.5px solid var(--ink);border-radius:var(--radius);padding:20px 18px 18px;margin-top:4px}.swing--ended{text-align:center;padding:22px}.swing-endline{font-family:var(--serif);font-size:1.5rem;font-weight:600;color:var(--gold)}.swing-head{display:flex;align-items:baseline;gap:10px;margin-bottom:16px}.swing-kicker{font-size:.62rem;text-transform:uppercase;letter-spacing:.16em;font-weight:700;color:var(--paper);background:var(--ink);padding:4px 9px;border-radius:1px}.swing-team{font-family:var(--serif);font-weight:600;font-size:1.35rem}.swing-grid{display:grid;grid-template-columns:1fr 1fr;gap:0;margin-bottom:14px;border-top:1px solid var(--rule)}.swing-cell{padding:14px 12px;text-align:center}.swing-cell--goal{border-right:1px solid var(--rule)}.swing-cell-label{display:block;font-size:.62rem;text-transform:uppercase;letter-spacing:.1em;color:var(--ink-3);font-weight:700;margin-bottom:6px}.swing-cell-value{display:block;font-family:var(--serif);font-size:clamp(1.2rem,5.5vw,1.7rem);font-weight:900;font-variant-numeric:tabular-nums;letter-spacing:-.01em}.swing-cell--goal .swing-cell-value{color:var(--pos)}.swing-cell--miss .swing-cell-value{color:var(--accent)}.swing-meter{height:4px;background:var(--paper-2);overflow:hidden;border:1px solid var(--ink);border-radius:1px}.swing-meter-fill{height:100%;background:var(--accent);transition:width .55s ease}.swing-foot{display:flex;align-items:baseline;gap:10px;margin-top:12px;color:var(--ink-2);font-size:.82rem;text-transform:uppercase;letter-spacing:.06em}.swing-points{font-family:var(--serif);font-size:2rem;font-weight:900;color:var(--accent);line-height:1;font-variant-numeric:tabular-nums}.controls{display:flex;flex-direction:column;gap:12px}.controls-prompt{margin:0;text-align:center;color:var(--ink-3);font-size:.78rem;text-transform:uppercase;letter-spacing:.1em}.controls-prompt-team{font-family:var(--serif);text-transform:none;letter-spacing:0;color:var(--ink);font-weight:600;font-style:italic;font-size:1.05rem}.controls-main{display:grid;grid-template-columns:1fr 1fr;gap:10px}.controls-main .btn{padding:20px;font-size:1rem;letter-spacing:.12em}.controls-sub{display:grid;grid-template-columns:1fr 1fr;gap:10px}.history{display:flex;flex-direction:column;gap:0;border-top:1px solid var(--ink)}.history--empty{text-align:center;color:var(--ink-3);font-size:.82rem;font-style:italic;padding:14px 0;border-top:1px solid var(--rule)}.history-lane{display:grid;grid-template-columns:96px 1fr;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid var(--rule)}.history-team{font-family:var(--grotesque);font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.history-dots{display:flex;flex-wrap:wrap;gap:7px}.history-none{color:var(--ink-3)}.dot{font-size:1rem;line-height:1}.dot--goal{color:var(--pos)}.dot--miss{color:var(--accent)}.dot--sd{position:relative}.dot--sd:after{content:"";position:absolute;inset:-3px;border:1px solid currentColor;border-radius:50%;opacity:.4}.sharebar{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding-top:16px;border-top:1px solid var(--rule)}.sharebar .btn{flex:1;min-width:96px;padding:11px 12px;font-size:.74rem}.sharebar-flash{flex-basis:100%;text-align:center;color:var(--pos);font-size:.74rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;opacity:0;transition:opacity .2s;height:0}.sharebar-flash.is-on{opacity:1;height:auto}.disclaimer{margin:0;font-size:.68rem;color:var(--ink-3);text-align:center;line-height:1.5;font-style:italic}.sponsor-slot{text-align:center;margin:0 auto;padding-bottom:4px}.sponsor-link,.sponsor-slot>span,.sponsor-slot{display:inline-flex;align-items:center;gap:8px;justify-content:center}.sponsor-prefix{font-size:.66rem;color:var(--ink-3);text-transform:uppercase;letter-spacing:.1em}.sponsor-name{color:var(--ink);font-weight:700}.sponsor-logo{display:block}.ad-slot{display:flex;align-items:center;justify-content:center;width:100%;overflow:hidden}.ad-slot--belowApp{min-height:100px}.ad-slot--lowerPage{min-height:250px}.ad-placeholder{width:100%;height:100%;min-height:inherit;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;border:1px solid var(--rule);border-radius:var(--radius);color:var(--ink-3);background:var(--paper-2)}.ad-placeholder span{font-weight:700;font-size:.66rem;letter-spacing:.14em;text-transform:uppercase}.ad-placeholder small{font-size:.7rem;font-style:italic}.ad-slot--belowApp .ad-placeholder{min-height:100px}.ad-slot--lowerPage .ad-placeholder{min-height:250px}.sharecard-wrap{display:flex;flex-direction:column;align-items:center;gap:10px}.sharecard{width:100%;background:var(--paper);color:var(--ink);border:1.5px solid var(--ink);border-radius:var(--radius);padding:clamp(16px,5vw,26px);display:flex;flex-direction:column;gap:clamp(10px,3vw,16px)}.sharecard-top{display:flex;align-items:baseline;justify-content:space-between;padding-bottom:clamp(6px,2vw,10px);border-bottom:1px solid var(--ink)}.sharecard-tag{font-size:.66rem;color:var(--ink-3);text-transform:uppercase;letter-spacing:.1em}.sharecard-score{font-family:var(--serif);font-size:clamp(1.3rem,7vw,2.2rem);font-weight:900;font-variant-numeric:tabular-nums}.sharecard-score b{color:var(--accent)}.sharecard-dash{color:var(--ink-3);margin:0 6px}.sharecard-meter{height:8px;background:var(--paper-2);overflow:hidden;border:1px solid var(--ink)}.sharecard-meter-a{height:100%;background:var(--ink)}.sharecard-probs{display:flex;justify-content:space-between;font-size:.74rem;color:var(--ink-2);text-transform:uppercase;letter-spacing:.05em;font-weight:600}.sharecard-headline{font-family:var(--serif);font-size:clamp(1.4rem,7vw,2.4rem);font-weight:900}.sharecard-sub{color:var(--ink-2);font-size:clamp(.78rem,3.5vw,1rem);text-transform:uppercase;letter-spacing:.06em}.sharecard-foot{display:flex;align-items:baseline;justify-content:space-between;font-size:.7rem;color:var(--ink-3);padding-top:clamp(6px,2vw,10px);border-top:1px solid var(--rule)}.sharecard-btn{align-self:center}.sharecard-hint{margin:0;font-size:.72rem;color:var(--ink-3);font-style:italic}.nerd{border:1px solid var(--ink);border-radius:var(--radius);padding:18px;display:flex;flex-direction:column;gap:16px}.nerd-title{font-family:var(--serif);margin:0;font-size:1.3rem;font-weight:600}.odds-table{display:flex;flex-direction:column;border-top:1.5px solid var(--ink)}.odds-head,.odds-row{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:8px;padding:11px 2px;align-items:center;font-variant-numeric:tabular-nums}.odds-head{font-size:.64rem;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-3);font-weight:700;border-bottom:1px solid var(--ink)}.odds-row{border-bottom:1px solid var(--rule)}.odds-label{color:var(--ink-2);font-weight:600}.nerd-details summary{cursor:pointer;font-weight:600;color:var(--ink);font-size:.78rem;text-transform:uppercase;letter-spacing:.06em;padding:6px 0}.nerd-list{margin:8px 0 0;padding-left:18px;color:var(--ink-2);font-size:.92rem;display:grid;gap:8px}.nerd-list strong{color:var(--ink)}.nerd-json{background:var(--paper-2);border:1px solid var(--rule);border-radius:var(--radius);padding:12px;overflow-x:auto;font-size:.78rem;color:var(--ink-2);font-family:ui-monospace,SF Mono,Menlo,monospace}.page-title{font-family:var(--serif);font-size:clamp(2rem,8vw,3rem);font-weight:900;letter-spacing:-.02em;margin:10px 0}.page-lead{color:var(--ink-2);margin:0 0 24px;font-size:1.05rem;max-width:34em}.demo-grid{display:grid;gap:0;grid-template-columns:1fr;border-top:3px double var(--ink)}.demo-card{text-align:left;display:grid;grid-template-columns:1fr auto;grid-template-areas:"title go" "blurb go" "teams go";align-items:center;gap:2px 12px;background:transparent;border:none;border-bottom:1px solid var(--rule);padding:18px 2px;cursor:pointer;color:var(--ink);font-family:inherit;transition:padding-left .15s ease,background .15s ease}.demo-card:hover{background:var(--paper-2);padding-left:10px}.demo-card-title{grid-area:title;font-family:var(--serif);font-weight:600;font-size:1.4rem}.demo-card-blurb{grid-area:blurb;color:var(--ink-2);font-size:.92rem}.demo-card-teams{grid-area:teams;color:var(--ink-3);font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;margin-top:2px}.demo-card-go{grid-area:go;color:var(--accent);font-weight:700;font-size:1.4rem}.prose-page{max-width:640px}.prose-page h1.page-title{margin-bottom:4px}.prose-page h2{font-family:var(--serif);margin-top:30px;font-size:1.5rem;font-weight:600}.prose-page p,.prose-page li{color:var(--ink-2)}.prose-page strong{color:var(--ink)}.prose-cta{margin-top:26px}.notfound{text-align:center}.footer{border-top:1px solid var(--ink);background:var(--paper);padding:26px 0 34px;margin-top:24px}.footer-inner{display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center}.footer-links{display:flex;flex-wrap:wrap;justify-content:center;gap:18px}.footer-links a{color:var(--ink-2);font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;font-weight:600}.footer-disclaimer{margin:0;font-size:.76rem;color:var(--ink-2);max-width:40em;font-style:italic}.footer-fine{margin:0;font-size:.68rem;color:var(--ink-3);max-width:42em}.widget{max-width:480px;margin:0 auto;padding:14px;display:flex;flex-direction:column;gap:14px;background:var(--paper)}.widget-status{margin:0;font-family:var(--grotesque);font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--ink);font-size:.74rem}.widget-brand{display:block;text-align:center;margin-top:2px;padding-top:12px;border-top:1px solid var(--rule);font-size:.68rem;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-3);text-decoration:none}.widget-brand strong{color:var(--ink);font-weight:700}.widget-brand:hover{color:var(--ink-2);text-decoration:none}.embed-form{display:grid;gap:14px;grid-template-columns:1fr 1fr;margin:8px 0 24px}.embed-form .setup-field:last-child{grid-column:1 / -1}@media (max-width: 460px){.embed-form{grid-template-columns:1fr}}.embed-preview{display:flex;justify-content:center;border:1px solid var(--rule);border-radius:var(--radius);padding:12px;background:var(--paper-2)}.embed-frame{width:100%;max-width:480px;border:0;background:var(--paper);border-radius:var(--radius)}.embed-code{background:var(--ink);color:var(--paper);border-radius:var(--radius);padding:14px;overflow-x:auto;font-size:.78rem;line-height:1.5;font-family:ui-monospace,SF Mono,Menlo,monospace;white-space:pre}.embed-page .btn--goal{margin-top:4px}html,body{overflow-x:hidden;max-width:100%}.header-inner,.board-row>*,.board-probs>*,.setup-teams>*,.setup-input,.swing-grid>*,.swing-head>*,.controls-main>*,.controls-sub>*,.app-card-head>*,.history-lane>*,.sharebar>*,.sharecard-probs>*,.sharecard-foot>*{min-width:0}.logo-text{white-space:nowrap}.swing-cell-value,.board-probs .prob,.team-score,.sharecard-score,.sharecard-headline,.app-status{overflow-wrap:break-word}@media (prefers-reduced-motion: reduce){*{transition:none!important;animation:none!important}}
