.catch-page{--navy:#071a2d;--gold:#efb93b;--cream:#f5f3ed;background:var(--cream);min-height:100vh;color:var(--navy)}.catch-kicker{color:#d5a12a;letter-spacing:.2em;text-transform:uppercase;margin:0 0 16px;font-size:11px;font-weight:900}.catch-hero{color:#fff;background:radial-gradient(circle at 79% 32%,#3d92c957,#0000 23%),linear-gradient(126deg,#061522 0%,#0b2b48 60%,#145a3a 100%);padding:96px 0 88px;overflow:hidden}.catch-hero-grid{grid-template-columns:1.2fr .8fr;align-items:center;gap:72px;display:grid}.catch-hero h1,.catch-handoff h1{letter-spacing:-.06em;margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(60px,8vw,112px);font-weight:500;line-height:.9}.catch-hero p:not(.catch-kicker){color:#c6d3df;max-width:670px;margin:32px 0 0;font-size:19px;line-height:1.65}.catch-badges{flex-wrap:wrap;gap:9px;margin-top:34px;display:flex}.catch-badges b{color:#f3d47a;letter-spacing:.14em;border:1px solid #fff3;padding:10px 13px;font-size:9px}.catch-hero-ball{background:linear-gradient(135deg,#9b5c2b,#663719 66%);border:7px solid #fff;border-radius:50%;place-items:center;width:310px;height:192px;margin:auto;display:grid;position:relative;transform:rotate(-14deg);box-shadow:inset -25px -28px 42px #00000059,0 28px 70px #00000057}.catch-hero-ball:before{content:"";border-top:6px dashed #fff;width:96px;position:absolute;transform:rotate(90deg)}.catch-hero-ball strong{z-index:2;background:#071a2d;border:4px solid #f1c658;border-radius:50%;place-items:center;width:76px;height:76px;font-family:Georgia,serif;font-size:44px;display:grid;position:relative;transform:rotate(14deg)}.catch-hero-ball span{color:#f4c752;font-family:Georgia,serif;font-size:54px;font-weight:800;position:absolute;top:-36px;right:-34px;transform:rotate(14deg)}.catch-builder{grid-template-columns:.8fr 1.2fr;gap:74px;padding-top:84px;padding-bottom:96px;display:grid}.catch-builder-copy h2,.catch-results h2{margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(40px,4vw,60px);font-weight:500;line-height:1}.catch-builder-copy ol{counter-reset:catch-steps;margin:34px 0 26px;padding:0;list-style:none}.catch-builder-copy li{color:#596979;counter-increment:catch-steps;border-bottom:1px solid #d5dade;margin-bottom:20px;padding:0 0 20px 50px;line-height:1.65;position:relative}.catch-builder-copy li:before{content:counter(catch-steps);background:var(--gold);border-radius:50%;place-items:center;width:34px;height:34px;font-weight:900;display:grid;position:absolute;top:-3px;left:0}.catch-builder-copy>p:last-child{color:#85919d;font-size:12px;line-height:1.6}.catch-form{background:#fff;border:1px solid #d0d7dc;padding:32px;box-shadow:0 24px 54px #071a2d14}.catch-form label span,.catch-form-label{color:#667583;letter-spacing:.15em;text-transform:uppercase;margin-bottom:8px;font-size:9px;font-weight:900;display:block}.catch-form input{width:100%;min-height:48px;color:var(--navy);font:inherit;background:#fbfbf9;border:1px solid #cdd5da;padding:0 13px;font-weight:800}.catch-form>div{margin-top:23px}.catch-presets{gap:7px;display:flex}.catch-presets button{min-height:42px;color:var(--navy);cursor:pointer;background:#fff;border:1px solid #cbd3d9;flex:1;font-weight:900}.catch-presets button.active{border-color:var(--navy);background:var(--navy);color:#fff}.catch-name-grid{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.catch-primary{color:#071827;cursor:pointer;letter-spacing:.13em;text-transform:uppercase;background:linear-gradient(100deg,#e2aa28,#f1c861);border:1px solid #b9850d;min-height:55px;padding:0 25px;font-size:10px;font-weight:950}.catch-form>.catch-primary{width:100%;margin-top:26px}.catch-primary:disabled{cursor:not-allowed;filter:grayscale();opacity:.5}.catch-primary span{padding-left:15px}.catch-fullscreen{color:#fff;text-align:center;background:radial-gradient(circle at 50% 28%,#174b72,#071725 67%);place-items:center;min-height:calc(100svh - 90px);padding:70px 20px;display:grid}.catch-handoff{max-width:850px}.catch-handoff h1 em{color:#f1bd42;font-style:normal}.catch-handoff>p:not(.catch-kicker){color:#b9c7d2;max-width:590px;margin:30px auto;font-size:17px;line-height:1.65}.catch-handoff .catch-primary{margin-top:10px}.catch-countdown p{color:#efc35b;letter-spacing:.2em;text-transform:uppercase;margin:0 0 20px;font-size:13px;font-weight:900}.catch-countdown b{text-shadow:0 18px 70px #0000005c;font-family:Georgia,serif;font-size:clamp(150px,24vw,290px);line-height:.78;display:block}.catch-countdown span{color:#b9c7d2;margin-top:34px;font-size:17px;display:block}.catch-game{-webkit-user-select:none;user-select:none;background:#a9d9f1;height:100svh;min-height:620px;overflow:hidden}.catch-scorebar{z-index:20;color:#fff;background:#071a2d;border-bottom:4px solid #efb93b;grid-template-columns:1fr 180px 180px;min-height:90px;padding:0 max(24px,50% - 620px);display:grid;position:relative}.catch-scorebar>div{border-right:1px solid #ffffff1f;align-content:center;padding:0 24px;display:grid}.catch-scorebar span{color:#e6bb55;letter-spacing:.18em;font-size:8px;font-weight:900}.catch-scorebar b{text-overflow:ellipsis;white-space:nowrap;margin-top:4px;font-family:Georgia,serif;font-size:27px;font-weight:500;overflow:hidden}.catch-scorebar>div:not(:first-child){text-align:center}.catch-scorebar>div:not(:first-child) b{font-size:38px;line-height:.9}.catch-scorebar .urgent b{color:#ff6c5f;animation:.55s infinite alternate catch-pulse}.catch-sky{cursor:crosshair;background:linear-gradient(#75bce5 0%,#d8eff9 68%,#6aa44b 68%,#39732f 100%);height:calc(100svh - 90px);min-height:530px;position:relative;overflow:hidden}.catch-clouds{opacity:.6;background:radial-gradient(at 14% 18%,#fff 0 6%,#0000 6.5%),radial-gradient(at 48% 10%,#fff 0 8%,#0000 8.5%),radial-gradient(at 84% 24%,#fff 0 7%,#0000 7.5%);position:absolute;inset:0}.catch-football{--ball-color:#75401e;z-index:5;left:var(--left);background:var(--ball-color);color:#fff;cursor:pointer;width:76px;height:49px;animation:catch-fall var(--fall-time) linear forwards;touch-action:manipulation;border:4px solid #fff;border-radius:50%;place-items:center;padding:0;display:grid;position:absolute;top:-100px;box-shadow:inset -8px -9px 12px #00000040,0 10px 16px #0003}.catch-football:before{content:"";border-top:3px dashed #ffffffe6;width:28px;position:absolute;transform:rotate(90deg)}.catch-football span{z-index:2;background:#071a2dd1;border:2px solid #ffffffbf;border-radius:50%;place-items:center;width:31px;height:31px;font-size:15px;font-weight:950;display:grid;position:relative}.catch-football.hot{--ball-color:#bc7918;border-color:#ffe17a;box-shadow:0 0 0 5px #ffd75240,0 0 25px #ffd75a}.catch-football.value-10{--ball-color:#d99b19;width:82px;height:53px}.catch-football:active{filter:brightness(1.35)}@keyframes catch-fall{0%{top:-100px;transform:translate(0)rotate(0)}45%{transform:translateX(var(--drift)) rotate(var(--rotation))}to{transform:translateX(var(--drift-end)) rotate(var(--rotation-end));top:calc(100% - 90px)}}.catch-points-pop{z-index:30;color:#ffdb60;pointer-events:none;text-shadow:0 6px #071a2d,0 12px 34px #0006;font-family:Georgia,serif;font-size:90px;font-weight:800;animation:.42s ease-out forwards catch-pop;position:fixed;top:34%;left:50%;transform:translate(-50%,-50%)}.catch-end-zone{z-index:2;color:#fff;background:repeating-linear-gradient(90deg,#0000 0 9.7%,#ffffff21 9.7% 10%),#18643ae0;border:4px solid #ffffffa6;border-bottom:0;place-items:center;width:min(980px,88%);height:118px;display:grid;position:absolute;bottom:0;left:50%;transform:translate(-50%)}.catch-end-zone b{letter-spacing:.12em;opacity:.75;align-self:end;font-family:Georgia,serif;font-size:clamp(26px,4vw,52px)}.catch-end-zone span{letter-spacing:.16em;align-self:start;font-size:10px;font-weight:900}@keyframes catch-pop{0%{opacity:1;transform:translate(-50%,-20%)scale(.7)}to{opacity:0;transform:translate(-50%,-90%)scale(1.15)}}@keyframes catch-pulse{to{transform:scale(1.09)}}.catch-round-result{max-width:850px}.catch-round-result h1{color:#f0bd42;margin:0;font-family:Georgia,serif;font-size:clamp(110px,18vw,210px);line-height:.75}.catch-round-result h1 span{color:#9db0bf;letter-spacing:.28em;margin-top:25px;font-family:Arial,sans-serif;font-size:10px;font-weight:900;display:block}.catch-round-result h2{margin:28px 0;font-family:Georgia,serif;font-size:clamp(34px,5vw,58px);font-weight:500}.catch-round-result>div{justify-content:center;margin:0 auto 32px;display:flex}.catch-round-result>div b{border-right:1px solid #ffffff29;min-width:140px;padding:16px 28px;font-family:Georgia,serif;font-size:30px;display:grid}.catch-round-result>div b:last-child{border-right:0}.catch-round-result>div span{color:#8fa2b2;letter-spacing:.15em;text-transform:uppercase;margin-top:7px;font-family:Arial,sans-serif;font-size:8px}.catch-final{padding-bottom:90px}.catch-final-hero{color:#fff;background:linear-gradient(125deg,#061522,#0b2c49);padding:70px 0}.catch-final-hero h1{margin:0;font-family:Georgia,serif;font-size:clamp(42px,6vw,78px);font-weight:500}.catch-final-hero p:last-child{color:#bdcad5;margin:18px 0 0;font-size:18px}.catch-final-hero p b{color:#f2c44f}.catch-results{padding-top:70px}.catch-results-head{justify-content:space-between;align-items:end;gap:30px;margin-bottom:28px;display:flex}.catch-results-head>div:last-child{gap:10px;display:flex}.catch-results-head button:not(.catch-primary){min-height:55px;color:var(--navy);cursor:pointer;letter-spacing:.12em;background:0 0;border:1px solid #cbd3d8;padding:0 20px;font-size:10px;font-weight:900}.catch-results ol{background:#fff;border:1px solid #d1d8dc;margin:0;padding:0;list-style:none}.catch-results li{border-bottom:1px solid #e1e4e6;grid-template-columns:65px 1fr auto;align-items:center;min-height:82px;padding:0 24px;display:grid}.catch-results li:last-child{border-bottom:0}.catch-results li>strong{font-family:Georgia,serif;font-size:30px}.catch-results li>div b{font-size:16px;display:block}.catch-results li>div span{color:#87939d;margin-top:4px;font-size:10px;display:block}.catch-results dl{text-align:right;gap:42px;margin:0;display:flex}.catch-results dt{color:#89959f;letter-spacing:.14em;text-transform:uppercase;font-size:8px;font-weight:900}.catch-results dd{margin:5px 0 0;font-size:17px;font-weight:900}.catch-results li.winner{background:#fff6d9;border-left:6px solid #d7a52f}.catch-results li.winner>strong{color:#af7900;font-size:42px}@media (max-width:900px){.catch-hero-grid,.catch-builder{grid-template-columns:1fr}.catch-hero-ball{display:none}.catch-builder{gap:48px}.catch-name-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:640px){.catch-hero{padding:72px 0}.catch-builder{padding-top:58px}.catch-form{padding:22px 16px}.catch-name-grid{grid-template-columns:1fr}.catch-fullscreen{min-height:calc(100svh - 72px)}.catch-scorebar{grid-template-columns:1fr 86px 86px;min-height:74px;padding:0}.catch-scorebar>div{padding:0 10px}.catch-scorebar b{font-size:19px}.catch-scorebar>div:not(:first-child) b{font-size:27px}.catch-sky{height:calc(100svh - 74px);min-height:480px}.catch-football{width:66px;height:43px}.catch-points-pop{font-size:68px}.catch-round-result>div b{min-width:96px;padding:14px 12px;font-size:24px}.catch-results-head{display:block}.catch-results-head>div:last-child{margin-top:22px}.catch-results li{grid-template-columns:46px 1fr;padding:13px 14px}.catch-results dl{text-align:left;grid-column:2;justify-content:flex-start;gap:26px;margin-top:10px}}@media (prefers-reduced-motion:reduce){.catch-football{animation-duration:8s}.catch-scorebar .urgent b{animation:none}}.catch-error{color:#a72d25;margin:16px 0 0;font-size:13px;font-weight:800;line-height:1.5}.catch-error a{color:inherit;text-decoration:underline}.catch-error-dark{color:#ff9c91}.catch-lobby-page{padding-bottom:90px}.catch-lobby-hero{color:#fff;background:radial-gradient(circle at 78% 0,#2f84ba47,#0000 28%),linear-gradient(125deg,#061522,#0b2c49);padding:66px 0}.catch-lobby-hero .section-shell{justify-content:space-between;align-items:end;gap:30px;display:flex}.catch-lobby-hero h1{letter-spacing:-.04em;margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(44px,6vw,78px);font-weight:500;line-height:.95}.catch-lobby-hero p:last-child{color:#bdcad5;margin:20px 0 0}.catch-lobby-hero p b{color:#f2c44f;letter-spacing:.12em}.catch-lobby-progress{text-align:center;border:1px solid #ffffff2e;min-width:150px;padding:20px 25px;display:grid}.catch-lobby-progress strong{color:#f2c44f;font-family:Georgia,serif;font-size:42px}.catch-lobby-progress span{color:#9fb0be;letter-spacing:.16em;text-transform:uppercase;font-size:9px;font-weight:900}.catch-lobby-layout{grid-template-columns:minmax(0,1fr) 360px;gap:32px;padding-top:55px;display:grid}.catch-lobby-title{justify-content:space-between;align-items:end;gap:20px;margin-bottom:22px;display:flex}.catch-lobby-title h2{margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(34px,4vw,52px);font-weight:500}.catch-lobby-title button,.catch-invite-card button{color:#071a2d;cursor:pointer;letter-spacing:.1em;background:#fff;border:1px solid #c7d0d6;min-height:42px;padding:0 15px;font-size:9px;font-weight:950}.catch-slot-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.catch-slot{background:#fff;border:1px solid #d2d9dd;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;min-height:76px;padding:10px 14px;display:grid}.catch-slot>strong{color:#acb5bc;font-family:Georgia,serif;font-size:24px}.catch-slot b{text-overflow:ellipsis;white-space:nowrap;font-size:14px;display:block;overflow:hidden}.catch-slot span{color:#83909b;text-overflow:ellipsis;white-space:nowrap;margin-top:5px;font-size:10px;display:block;overflow:hidden}.catch-slot i{color:#7e8992;letter-spacing:.1em;background:#edf1f3;border-radius:99px;padding:7px 8px;font-size:7px;font-style:normal;font-weight:950}.catch-slot.claimed{border-left:4px solid #d7a52f}.catch-slot.playing{background:#fff8ea;border-left:4px solid #d06d2b}.catch-slot.complete{border-left:4px solid #379268}.catch-slot.complete i{color:#236849;background:#dff2e9}.catch-slot.you{box-shadow:0 0 0 2px #e7b83c}.catch-lobby-side{align-content:start;gap:18px;display:grid}.catch-claim-card,.catch-invite-card{background:#fff;border:1px solid #ccd4d9;padding:26px;box-shadow:0 18px 42px #071a2d12}.catch-claim-card h3,.catch-invite-card h3{margin:0 0 19px;font-family:Georgia,serif;font-size:27px;font-weight:500}.catch-claim-card>p:not(.catch-kicker),.catch-invite-card>p:not(.catch-kicker){color:#6e7c88;font-size:13px;line-height:1.6}.catch-claim-card label{margin-bottom:15px;display:block}.catch-claim-card label span{color:#687783;letter-spacing:.14em;text-transform:uppercase;margin-bottom:7px;font-size:8px;font-weight:900;display:block}.catch-claim-card input,.catch-claim-card select{color:#071a2d;width:100%;min-height:48px;font:inherit;background:#fbfbf9;border:1px solid #cbd3d8;padding:0 12px;font-weight:750}.catch-claim-card .catch-primary{width:100%;margin-top:6px}.catch-own-score{color:#fff;background:#071a2d;place-items:center;margin:20px 0;padding:22px;display:grid}.catch-own-score strong{color:#f1bd42;font-family:Georgia,serif;font-size:62px;line-height:.9}.catch-own-score span{color:#9eb0bf;letter-spacing:.17em;margin-top:8px;font-size:8px;font-weight:900}.catch-invite-card>div{grid-template-columns:repeat(2,1fr);gap:8px;margin-top:18px;display:grid}.catch-football{width:98px;height:70px;box-shadow:none;touch-action:none;-webkit-tap-highlight-color:transparent;background:0 0;border:0}.catch-football:after{content:"";background:var(--ball-color);border:4px solid #fff;border-radius:50%;position:absolute;inset:9px 10px;box-shadow:inset -8px -9px 12px #00000040,0 10px 16px #0003}.catch-football:before{z-index:2}.catch-football.hot{box-shadow:none;border:0}.catch-football.hot:after{border-color:#ffe17a;box-shadow:0 0 0 5px #ffd75240,0 0 25px #ffd75a}.catch-football.value-10{width:104px;height:74px}@media (max-width:900px){.catch-lobby-layout{grid-template-columns:1fr}.catch-lobby-side{grid-row:1;grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:640px){.catch-lobby-hero .section-shell{display:block}.catch-lobby-progress{width:140px;margin-top:28px}.catch-lobby-layout{padding-top:35px}.catch-lobby-side,.catch-slot-grid{grid-template-columns:1fr}.catch-lobby-title{align-items:start}.catch-football{width:88px;height:64px}.catch-football.value-10{width:94px;height:68px}}
