@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@600;700;800&display=swap";:root{font-family:DM Sans,ui-sans-serif,system-ui,sans-serif;color:#24152f;background:#f5f3f7;font-synthesis:none;--ink: #24152f;--plum: #2b0743;--plum-2: #4a0e62;--muted: #796f80;--line: #e7e1e9;--lime: #c9ff34;--violet: #8d65ff;--blue: #36c8ee;--paper: #fff}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:#f7f5f8}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}h1,h2,p{margin-top:0}h1,h2,.brand strong{font-family:Manrope,ui-sans-serif,sans-serif}.login-shell{min-height:100vh;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(420px,.9fr)}.login-story{position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between;padding:44px 7vw 56px;color:#fff;background:radial-gradient(circle at 18% 18%,rgba(141,101,255,.72),transparent 29%),radial-gradient(circle at 82% 78%,rgba(54,200,238,.35),transparent 28%),linear-gradient(145deg,#210334,#450960 62%,#241139)}.login-story:before,.login-story:after{content:"";position:absolute;border:1px solid rgba(255,255,255,.12);border-radius:50%;width:560px;height:560px;right:-270px;top:8%}.login-story:after{width:360px;height:360px;right:-170px;top:20%}.login-story>*{position:relative;z-index:1}.login-copy{max-width:650px;padding:70px 0}.login-copy h1{font-size:clamp(48px,6vw,82px);line-height:.99;letter-spacing:-.065em;margin:22px 0 26px}.login-copy h1 em{color:var(--lime);font-style:normal}.login-copy p{max-width:580px;color:#ffffffb8;font-size:19px;line-height:1.65}.eyebrow{display:inline-flex;align-items:center;gap:8px;color:var(--lime);font-weight:700;font-size:13px;letter-spacing:.08em;text-transform:uppercase}.eyebrow.dark{color:#714d87}.score-key{display:grid;grid-template-columns:repeat(3,1fr);max-width:600px;border-top:1px solid rgba(255,255,255,.2);padding-top:24px}.score-key div{display:flex;align-items:center;gap:13px}.score-key strong{font-family:Manrope;font-size:31px;color:var(--lime)}.score-key span{color:#ffffffad;font-size:13px}.login-panel{display:grid;place-items:center;padding:40px;background:#fff}.login-card{width:min(410px,100%)}.form-heading,.card-title{display:flex;align-items:center;gap:14px;margin-bottom:30px}.form-heading h2,.card-title h2{margin:0 0 4px;font-size:25px;letter-spacing:-.03em}.form-heading p,.card-title p{color:var(--muted);margin:0;font-size:14px}.icon-chip{width:45px;height:45px;flex:0 0 auto;border-radius:13px;display:inline-grid;place-items:center;background:#f0e9f4;color:var(--plum-2)}.icon-chip.large{width:60px;height:60px;border-radius:18px}label{display:grid;gap:8px;margin-bottom:18px;color:#493d4e;font-size:13px;font-weight:700}input,select{width:100%;border:1px solid #dcd4e0;border-radius:12px;padding:13px 14px;color:var(--ink);background:#fff;outline:0;transition:border-color .15s,box-shadow .15s}input:focus,select:focus{border-color:var(--violet);box-shadow:0 0 0 3px #8d65ff21}.primary-button,.secondary-button{min-height:48px;border:0;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:0 19px;font-weight:800;transition:transform .15s,filter .15s}.primary-button{width:100%;color:#fff;background:linear-gradient(130deg,var(--plum-2),#702089);box-shadow:0 8px 22px #4a0e622e}.primary-button:not(:disabled):hover,.secondary-button:not(:disabled):hover{transform:translateY(-1px);filter:brightness(1.05)}.primary-button.compact{width:auto;min-height:42px}.secondary-button{border:1px solid var(--line);background:#fff;color:var(--plum-2)}.privacy-note{display:flex;align-items:center;justify-content:center;gap:7px;margin-top:20px;color:#8c8291;font-size:12px}.mobile-brand{display:none}.brand{display:inline-flex;align-items:center;gap:11px;color:var(--plum)}.brand-mark{width:40px;height:40px;display:grid;place-items:center;border-radius:12px 4px 12px 12px;background:var(--lime);color:var(--plum);transform:rotate(-3deg)}.brand>span:last-child{display:flex;align-items:baseline;gap:5px}.brand strong{font-size:20px;letter-spacing:-.04em}.brand small{font-weight:700;color:#8a788f}.brand.light{color:#fff}.brand.light small{color:#ffffff94}.app-shell{min-height:100vh}.topbar{position:sticky;top:0;z-index:20;height:76px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 max(24px,calc((100vw - 1180px)/2));background:#fffffff2;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.desktop-nav{display:flex;align-self:stretch}.desktop-nav button,.mobile-nav button{border:0;background:transparent;color:#837889;font-weight:700}.desktop-nav button{position:relative;display:flex;align-items:center;gap:8px;padding:0 18px}.desktop-nav button:after{content:"";position:absolute;left:18px;right:18px;bottom:0;height:3px;border-radius:3px 3px 0 0;background:transparent}.desktop-nav button.active{color:var(--plum-2)}.desktop-nav button.active:after{background:var(--plum-2)}.account-menu{justify-self:end;display:flex;align-items:center;gap:10px}.avatar{width:38px;height:38px;display:grid;place-items:center;border-radius:12px;background:#ece5f0;color:var(--plum-2);font-weight:800;font-size:12px}.avatar.small{width:34px;height:34px;border-radius:10px}.account-copy{display:grid;line-height:1.2}.account-copy strong{font-size:13px}.account-copy small{color:var(--muted);font-size:11px}.icon-button{width:37px;height:37px;display:grid;place-items:center;border:0;border-radius:10px;color:#887d8d;background:transparent}.icon-button:hover{background:#f3eff5;color:var(--plum-2)}.content{width:min(1120px,calc(100% - 40px));margin:0 auto;padding:48px 0 100px}.page-intro{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:30px}.page-intro.split{gap:24px}.page-intro h1{margin:8px 0 6px;font-size:clamp(34px,4vw,48px);line-height:1.05;letter-spacing:-.055em}.page-intro p{color:var(--muted);margin:0;max-width:640px;line-height:1.55}.week-select-mobile{min-width:190px}.week-select-mobile label{margin-bottom:5px}.week-select-mobile select{padding:10px 34px 10px 12px}.week-hero{position:relative;overflow:hidden;min-height:135px;display:grid;grid-template-columns:54px 1fr auto 54px;align-items:center;gap:24px;padding:24px;border-radius:22px;color:#fff;background:radial-gradient(circle at 68% 20%,rgba(141,101,255,.58),transparent 32%),linear-gradient(125deg,#26053c,#4f0c69);box-shadow:0 16px 38px #2a093e29}.week-hero:after{content:"";position:absolute;width:270px;height:270px;right:5%;border:1px solid rgba(255,255,255,.12);border-radius:50%}.week-hero>*{position:relative;z-index:1}.week-arrow{width:48px;height:48px;display:grid;place-items:center;color:#fff;border:1px solid rgba(255,255,255,.22);border-radius:50%;background:#ffffff14}.week-title{display:grid}.week-title span{color:var(--lime);font-weight:700;font-size:12px;text-transform:uppercase;letter-spacing:.08em}.week-title strong{font:800 30px/1.3 Manrope;letter-spacing:-.04em}.week-title small{color:#ffffff9e}.deadline{min-width:210px;display:flex;align-items:center;gap:12px;padding:14px 17px;border-radius:14px;color:var(--plum);background:var(--lime)}.deadline.locked{color:#fff;background:#ffffff24}.deadline div{display:grid}.deadline span{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.deadline strong{font-size:15px}.deadline small{font-size:10px;opacity:.72}.fixture-list{display:grid;gap:17px;margin:24px auto 0;max-width:940px}.fixture-day{overflow:hidden;border:1px solid var(--line);border-radius:17px;background:#fff;box-shadow:0 6px 20px #2a1b320a}.fixture-day h2{margin:0;padding:15px 21px;color:#594361;background:#faf8fb;border-bottom:1px solid var(--line);font-size:14px}.fixture-row{min-height:84px;display:grid;grid-template-columns:62px minmax(150px,1fr) 114px minmax(150px,1fr) 88px;align-items:center;gap:14px;padding:12px 21px;border-bottom:1px solid #eee9f0}.fixture-row:last-child{border-bottom:0}.fixture-row>time{color:var(--muted);font-size:12px;font-weight:700}.team{display:flex;align-items:center;gap:11px;font-weight:700;font-size:14px}.team.home{justify-content:flex-end;text-align:right}.crest{width:42px;height:42px;flex:0 0 auto;display:grid;place-items:center;border-radius:50%;background:#f6f3f7}.crest img{width:34px;height:34px;object-fit:contain}.crest b{font-size:9px;color:var(--plum-2)}.score-inputs{display:flex;align-items:center;justify-content:center;gap:7px}.score-inputs input{width:42px;height:42px;border-radius:9px;padding:0;text-align:center;font:800 17px Manrope}.score-inputs i{font-style:normal;color:#a69ca9}.score-inputs strong{min-width:74px;display:flex;justify-content:space-around;padding:10px;border-radius:9px;background:#f3eff5;font-family:Manrope}.no-pick{color:#aaa1ae}.fixture-status{display:grid;justify-items:end;gap:3px}.fixture-status small{color:var(--muted);font-size:10px}.points-pill{padding:3px 8px;border-radius:99px;color:#fff;background:#aaa;font-weight:800;font-size:11px}.points-10{color:var(--plum);background:var(--lime)}.points-6{background:var(--violet)}.points-3{background:#1685a3}.points-0{background:#afa7b3}.save-dock{position:sticky;z-index:10;bottom:18px;width:min(700px,calc(100% - 24px));margin:24px auto 0;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:13px 15px 13px 19px;border:1px solid rgba(255,255,255,.4);border-radius:16px;color:#fff;background:#250837f0;box-shadow:0 15px 35px #1f072f42;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.save-dock>div{display:flex;align-items:center;gap:9px}.save-dock p{margin:0;font-size:13px}.completion-dot{width:24px;height:24px;display:grid;place-items:center;border-radius:50%;color:#7f7186;background:#ffffff1f}.completion-dot.done{color:var(--plum);background:var(--lime)}.save-dock .primary-button{color:var(--plum);background:var(--lime);box-shadow:none}.inline-message{display:flex;align-items:center;gap:10px;margin:0 0 18px;padding:12px 15px;border-radius:12px;font-size:13px;font-weight:600}.inline-message.error{color:#8e2334;background:#ffeaed}.inline-message.success{color:#285b49;background:#e8f7ef}.inline-message span{flex:1}.inline-message button{border:0;background:transparent;color:inherit;font-size:20px}.segmented{display:flex;padding:4px;border:1px solid var(--line);border-radius:11px;background:#fff}.segmented button{border:0;border-radius:8px;padding:9px 14px;color:var(--muted);background:transparent;font-weight:700}.segmented button.active{color:var(--plum);background:#eee8f1}.table-card{overflow:hidden;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:0 7px 25px #2a1b320a}.table-head,.table-row{display:grid;grid-template-columns:60px 1fr 90px 90px 90px;align-items:center;gap:10px;padding:0 24px}.table-head{min-height:48px;color:#8c818f;background:#faf8fb;border-bottom:1px solid var(--line);font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.table-head span:not(:nth-child(2)),.table-row>span:not(:nth-child(2)){text-align:center}.table-row{min-height:72px;border-bottom:1px solid #eee9f0}.table-row:last-child{border:0}.rank{display:inline-flex;justify-content:center;color:#8f8493;font-weight:800}.rank-1{color:#dfaf23}.rank-2{color:#8b929e}.rank-3{color:#b87333}.player-cell{display:flex;align-items:center;gap:11px}.player-cell i{width:34px;height:34px;display:grid;place-items:center;border-radius:50%;color:var(--plum-2);background:#eee8f1;font-style:normal;font-size:10px;font-weight:800}.table-row .total{font:800 20px Manrope;color:var(--plum-2)}.rules-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.rule-card{position:relative;overflow:hidden;min-height:220px;padding:26px;border-radius:18px;color:#fff}.rule-card:after{content:"";position:absolute;width:160px;height:160px;right:-62px;bottom:-80px;border:1px solid rgba(255,255,255,.2);border-radius:50%}.rule-card.lime{color:var(--plum);background:var(--lime)}.rule-card.violet{background:#7651e4}.rule-card.blue{background:#1685a3}.rule-card>strong{display:block;font:800 57px/1 Manrope;letter-spacing:-.06em}.rule-card>strong small{margin-left:4px;font-size:14px;letter-spacing:0}.rule-card h2{margin:34px 0 8px;font-size:19px}.rule-card p{max-width:220px;margin:0;opacity:.75;font-size:13px}.rules-notes{margin-top:22px;padding:28px;border:1px solid var(--line);border-radius:18px;background:#fff}.rules-notes h2{font-size:20px}.rules-notes>div{display:flex;align-items:flex-start;gap:14px;padding:16px 0;border-top:1px solid var(--line);color:var(--plum-2)}.rules-notes p{display:grid;gap:4px;margin:0;color:var(--ink)}.rules-notes p span{color:var(--muted);font-size:13px;line-height:1.5}.admin-grid{display:grid;grid-template-columns:minmax(320px,.8fr) minmax(400px,1.2fr);gap:20px}.admin-card{padding:26px;border:1px solid var(--line);border-radius:18px;background:#fff}.sync-note{display:flex;align-items:center;gap:7px;margin:-15px 0 24px;color:#557066;font-size:12px}.player-list{max-height:440px;overflow:auto}.player-account-wrap{border-top:1px solid var(--line)}.player-account{display:grid;grid-template-columns:38px 1fr auto;align-items:center;gap:11px;padding:12px 0}.player-account p{display:grid;margin:0}.player-account strong{font-size:13px}.player-account small{color:var(--muted);font-size:11px}.player-account button{border:0;border-radius:99px;padding:6px 10px;font-size:11px;font-weight:800}.player-actions{display:flex;align-items:center;gap:6px}.player-account .reset-button{color:var(--plum-2);background:#f0e9f4}.status-active{color:#20634c;background:#e4f5ed}.status-inactive{color:#7d707f;background:#eee9ef}.password-reset-panel{display:grid;grid-template-columns:minmax(180px,1fr) auto;align-items:end;gap:12px;margin:0 0 13px 49px;padding:13px;border-radius:12px;background:#faf8fb}.password-reset-panel label{margin:0}.password-reset-panel input{padding:10px 12px}.password-reset-panel>div{display:flex;align-items:center;gap:7px}.text-button{min-height:39px;border:0;padding:0 10px;color:var(--muted);background:transparent;font-weight:700}.empty-card{min-height:360px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:40px;border:1px dashed #d9d0dd;border-radius:20px;background:#fff}.empty-card h2{margin:18px 0 8px;font-size:22px}.empty-card p{max-width:500px;color:var(--muted)}.empty-card .primary-button{margin-top:12px}.panel-loader,.full-loader{display:flex;align-items:center;justify-content:center;gap:10px;color:var(--muted)}.panel-loader{min-height:400px}.full-loader{min-height:100vh;flex-direction:column}.full-loader .brand{margin-bottom:24px}.spin{animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.muted{color:var(--muted)}.mobile-nav{display:none}@media(max-width:900px){.login-shell{grid-template-columns:1fr 420px}.login-story{padding-left:44px;padding-right:44px}.login-copy h1{font-size:52px}.score-key{gap:10px}.score-key div{display:grid;gap:0}.topbar{grid-template-columns:1fr auto;padding:0 22px}.desktop-nav,.account-copy{display:none}.mobile-nav{position:fixed;z-index:30;display:flex;left:50%;bottom:14px;transform:translate(-50%);padding:5px;border:1px solid rgba(255,255,255,.4);border-radius:16px;background:#260838f2;box-shadow:0 13px 35px #1f072f47;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.mobile-nav button{min-width:70px;display:grid;place-items:center;gap:2px;padding:7px 12px;color:#ffffff94;border-radius:11px;font-size:10px}.mobile-nav button.active{color:var(--plum);background:var(--lime)}.week-hero{grid-template-columns:45px 1fr auto 45px;gap:12px}.deadline{min-width:190px}.fixture-row{grid-template-columns:48px minmax(120px,1fr) 100px minmax(120px,1fr) 70px;gap:8px;padding:12px 14px}}@media(max-width:720px){.login-shell{display:block;min-height:100vh;background:linear-gradient(150deg,#f8f4fa,#fff)}.login-story{display:none}.login-panel{min-height:100vh;padding:28px;align-content:center}.mobile-brand{display:block;margin-bottom:54px}.content{width:min(100% - 24px,620px);padding:30px 0 110px}.topbar{height:66px;padding:0 15px}.topbar .brand small{display:none}.page-intro{display:block;margin-bottom:20px}.page-intro h1{font-size:35px}.page-intro p{font-size:14px}.page-intro.split>.segmented,.page-intro.split>.secondary-button{margin-top:18px}.week-select-mobile{margin-top:18px}.week-select-mobile label{display:none}.week-hero{min-height:178px;grid-template-columns:40px 1fr 40px;grid-template-rows:auto auto;padding:16px 12px;border-radius:17px}.week-title{text-align:center}.week-title strong{font-size:24px}.deadline{grid-column:1 / -1;grid-row:2;width:min(280px,90%);min-width:0;margin:0 auto;justify-content:center;padding:10px 14px}.week-arrow{width:38px;height:38px}.fixture-list{gap:13px;margin-top:16px}.fixture-day{border-radius:14px}.fixture-day h2{padding:13px 14px}.fixture-row{min-height:105px;grid-template-columns:1fr 84px 1fr;grid-template-rows:auto auto;padding:13px 9px;gap:5px 6px}.fixture-row>time{grid-column:1 / -1;grid-row:1;text-align:center;font-size:10px}.team{grid-row:2;flex-direction:column;gap:5px;font-size:11px;line-height:1.1;text-align:center!important}.team.home{justify-content:flex-start}.team.home span{order:2}.score-inputs{grid-row:2}.score-inputs input{width:36px;height:38px}.crest{width:38px;height:38px}.crest img{width:31px;height:31px}.fixture-status{grid-column:1 / -1;justify-items:center}.fixture-status:empty{display:none}.fixture-row:not(.is-scored) .fixture-status{display:none}.save-dock{bottom:82px;width:100%;padding:10px 11px 10px 13px}.save-dock p{font-size:11px}.save-dock .primary-button{padding:0 12px;font-size:12px}.table-head,.table-row{grid-template-columns:45px 1fr 60px 67px;padding:0 10px}.table-head span:nth-child(4),.table-row>span:nth-child(4){display:none}.table-head span:nth-child(3){font-size:0}.table-head span:nth-child(3):after{content:"Exact";font-size:10px}.table-row{min-height:64px}.player-cell strong{font-size:12px}.rules-grid,.admin-grid{grid-template-columns:1fr}.rule-card{min-height:180px}.rule-card h2{margin-top:24px}.admin-card{padding:20px}.player-account{grid-template-columns:38px 1fr}.player-actions{grid-column:1 / -1;justify-content:flex-end}.password-reset-panel{grid-template-columns:1fr;margin-left:0}.password-reset-panel>div{justify-content:flex-end}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
