@import url('/assets/fonts/fonts.css');
:root{--bg:#f3f3e9;--ink:#172225;--muted:#727a76;--lime:#d9f46b;--line:#dcdfd3;--dark:#142126;--white:#fffef8;--display:'Barlow Condensed','Arial Narrow',Impact,sans-serif;--body:'DM Sans',Arial,sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--body);font-size:14px}button,input,select{font:inherit}button,a,input,select{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.45}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #5b8b00;outline-offset:4px}button{color:inherit}a{color:inherit}.topbar{height:96px;padding:0 5%;display:flex;align-items:center;border-bottom:1px solid var(--line);gap:60px}.wordmark{display:flex;align-items:center;text-decoration:none;font-size:27px;font-weight:750;letter-spacing:-1.3px}.wordmark>span:not(.brandball){font-weight:450}.wordmark sup{font-size:9px;align-self:flex-start;margin:8px 0 0 3px}.brandball{background:var(--lime);border:1.5px solid var(--ink);border-radius:50%;height:34px;width:34px;display:grid;place-items:center;font-size:28px;line-height:1;margin-right:10px;transform:rotate(-25deg)}nav{display:flex;align-self:stretch;gap:32px}.navlink{background:none;border:0;border-bottom:2px solid transparent;font-size:13px;padding:0;font-weight:550;color:var(--muted)}.navlink.active{border-color:var(--ink);color:var(--ink)}.navcount{font-size:9px;padding:3px 5px;border:1px solid var(--line);border-radius:4px;margin-left:4px}.help{margin-left:auto;background:none;border:0;font-size:12px;display:flex;gap:9px;align-items:center}.help span{border:1px solid #a6afa2;border-radius:50%;width:20px;height:20px;display:grid;place-items:center}main{max-width:1440px;margin:auto;padding:42px 5% 60px;min-height:calc(100vh - 200px)}.eyebrow{font-size:10px;letter-spacing:1.7px;font-weight:700;text-transform:uppercase;display:flex;align-items:center;gap:8px}.eyebrow .dot{width:6px;height:6px;background:#5e7d31;border-radius:50%}.hero{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:34px}.hero h1{font-family:var(--display);font-size:76px;letter-spacing:-1.5px;line-height:.96;text-transform:uppercase;font-weight:600;margin:15px 0 0}.hero h1 em{font-style:normal;color:#738834}.hero-right{max-width:287px;padding-bottom:6px;color:#647069;line-height:1.7;font-size:12px}.hero-right strong{display:block;color:var(--ink);font-size:13px;margin-bottom:5px}.hero-right .mini-line{margin-top:17px;display:flex;gap:18px;font-size:9px;letter-spacing:1px;font-weight:650}.mini-line span{display:flex;align-items:center;gap:5px}.mini-line i{width:4px;height:4px;border-radius:50%;background:#74844f}.stagebar{display:flex;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:15px 0;margin-bottom:25px;align-items:center;gap:28px}.step{display:flex;align-items:center;gap:9px;color:#969b90;font-size:11px;font-weight:600}.step b{display:grid;place-items:center;width:21px;height:21px;border:1px solid #ced3c6;border-radius:50%;font-size:10px}.step.active{color:var(--ink)}.step.active b{background:var(--ink);color:var(--lime);border-color:var(--ink)}.step.done b{background:#dce9c4;color:#4e622b}.stagebar .save{margin-left:auto;font-size:10px;color:var(--muted)}.workspace{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:25px}.draft-main{min-width:0}.panel-heading{display:flex;align-items:center;justify-content:space-between;margin:0 0 15px}.panel-heading h2{margin:0;font-size:14px;letter-spacing:-.2px}.subtle{color:var(--muted);font-size:10px}.round-pips{display:flex;gap:5px}.round-pips i{width:23px;height:4px;background:#dce0d4;border-radius:2px}.round-pips i.on{background:#8ca252}.draw{min-height:158px;background:#e6e9dc;border:1px solid #d8decd;padding:22px 26px;border-radius:12px;display:flex;align-items:center;gap:19px;position:relative;overflow:hidden}.draw:after{content:'';position:absolute;right:25px;top:-50px;width:170px;height:240px;border:1px solid #cdd5bc;border-radius:50%;transform:rotate(35deg);pointer-events:none}.team-badge{width:74px;height:79px;border-radius:15px 15px 25px 25px;border:2px solid var(--ink);background:var(--team,#d9f46b);display:flex;align-items:center;justify-content:center;flex-direction:column;position:relative;z-index:1;box-shadow:3px 3px 0 #17222518}.team-badge:before{content:'✦';font-size:18px;line-height:1}.team-badge b{font:700 27px var(--display);letter-spacing:1px}.draw-copy{position:relative;z-index:1;flex:1}.draw-copy .eyebrow{font-size:8px;letter-spacing:1.3px;color:#667256}.draw-copy h3{font:600 32px/.98 var(--display);text-transform:uppercase;margin:8px 0 6px;max-width:280px}.draw-copy p{font-size:10px;color:#657058;margin:0}.reroll{position:relative;z-index:1;align-self:flex-end;white-space:nowrap;font-size:10px;border:1px solid #bdc7aa;background:#f3f4e9;padding:9px 11px;border-radius:6px}.reroll span{font-size:14px;margin-right:5px}.choose-label{display:flex;justify-content:space-between;align-items:center;margin:23px 0 12px}.choose-label h3{font-size:12px;margin:0}.choose-label span{font-size:9px;color:var(--muted)}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}.player-card{position:relative;text-align:left;background:var(--white);border:1px solid #d8ddce;border-radius:10px;padding:15px 13px 13px;transition:transform .18s,border-color .18s,box-shadow .18s;min-width:0}.player-card:hover{transform:translateY(-3px);border-color:#849652;box-shadow:0 7px 15px #14212609}.player-card.selected{border:2px solid #849d3e;padding:14px 12px 12px;background:#f8fce9;box-shadow:0 0 0 2px #d9f46b44}.card-top{display:flex;align-items:flex-start;justify-content:space-between}.avatar{width:44px;height:44px;border-radius:50%;background:var(--team);border:1px solid #17222520;display:grid;place-items:center;font-family:var(--display);font-size:21px;font-weight:600;color:var(--ink)}.overall{font:600 34px/.9 var(--display);text-align:right}.overall small{display:block;font:600 7px/1 var(--body);letter-spacing:1px;margin-top:5px;color:var(--muted)}.player-card h4{font-size:13px;line-height:1.25;margin:15px 0 5px;min-height:33px;letter-spacing:-.3px}.archetype{font-size:9px;color:#76806e;display:flex;gap:4px;align-items:center;margin-bottom:15px}.skill{display:grid;grid-template-columns:47px 1fr 20px;align-items:center;gap:7px;font-size:9px;margin:8px 0}.skill .bar{height:3px;background:#e9ecdf;border-radius:3px;overflow:hidden}.skill .bar i{display:block;height:100%;background:#97ad63;border-radius:3px}.skill b{text-align:right;font-weight:550}.pick-label{font-size:9px;border-top:1px solid #e0e6d3;margin-top:13px;padding-top:11px;display:flex;justify-content:space-between;color:#68775a}.selected .pick-label{color:#36501d;font-weight:650}.draft-actions{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:20px}.rating-note{font-size:9px;color:#7c8376;line-height:1.6;max-width:260px}.primary,.secondary{border:1px solid var(--ink);border-radius:7px;padding:13px 20px;font-size:11px;font-weight:650;display:inline-flex;gap:22px;align-items:center;justify-content:center;text-decoration:none}.primary{background:var(--ink);color:#f7f8ec}.primary .arrow{color:var(--lime);font-size:15px}.primary.lime{background:var(--lime);color:var(--ink);border-color:var(--lime)}.primary.lime .arrow{color:var(--ink)}.secondary{background:transparent;padding:11px 15px;border-color:#b8c2ac;gap:10px}.roster-panel{background:var(--dark);color:#f5f5eb;border-radius:12px;overflow:hidden;display:flex;flex-direction:column}.roster-top{display:flex;justify-content:space-between;align-items:center;padding:21px 23px 0}.roster-top h2{font-size:13px;margin:0}.roster-top span{font-size:9px;color:#9da99e;border:1px solid #3a4847;padding:4px 7px;border-radius:4px}.court-wrap{padding:27px 32px 20px}.court{height:252px;border:1px solid #75886a;background:#233a32;position:relative;border-radius:2px}.court:before{content:'';position:absolute;top:35%;bottom:35%;left:0;right:0;background:#354a36;border-top:1px solid #6f8061;border-bottom:1px solid #6f8061}.court:after{content:'';position:absolute;top:50%;left:-6px;right:-6px;height:2px;background:repeating-linear-gradient(90deg,#c7d2ae 0 2px,transparent 2px 4px);box-shadow:0 4px 4px #08161060}.court-center{position:absolute;top:0;bottom:0;left:50%;width:1px;background:linear-gradient(#75886a 0 35%,transparent 35% 65%,#75886a 65%)}.slot{position:absolute;width:50%;height:35%;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:7px}.slot:nth-of-type(2){left:0;top:0}.slot:nth-of-type(3){right:0;top:0}.slot:nth-of-type(4){left:0;bottom:0}.slot:nth-of-type(5){right:0;bottom:0}.slot-circle{width:37px;height:37px;border-radius:50%;border:1px dashed #92a276;display:grid;place-items:center;color:#a2b28c;font-size:18px}.slot.filled .slot-circle{background:var(--team);color:var(--ink);border:0;font:600 17px var(--display);box-shadow:0 3px 7px #08161030}.slot>span{font-size:7px;text-transform:uppercase;letter-spacing:.5px;color:#b1c4a1;max-width:95%;text-align:center}.slot.current .slot-circle{border-color:var(--lime);color:var(--lime);background:#d9f46b0a;box-shadow:0 0 0 5px #d9f46b08}.court-label{font:500 8px var(--body);letter-spacing:1.8px;position:absolute;top:45%;left:0;right:0;text-align:center;color:#a6b392}.roster-stats{padding:0 23px 20px}.roster-overall{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #39453e;padding-bottom:13px;margin-bottom:12px;font-size:10px;color:#c1cbbc}.roster-overall strong{font:500 35px var(--display);color:var(--lime)}.team-skills{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.team-skills span{display:flex;flex-direction:column;gap:5px;font-size:8px;color:#91a18e}.team-skills b{font-size:12px;font-weight:500;color:#e7edda}.coach-note{margin-top:auto;padding:18px 23px;background:#1c2b2c;font-size:10px;line-height:1.6;color:#9eae98}.coach-note b{color:#d8e6bf;display:block;font-size:8px;text-transform:uppercase;letter-spacing:1.3px;margin-bottom:4px}.bottom-ticker{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding-top:20px;margin-top:28px;color:#7c8477;font-size:9px;gap:10px}.bottom-ticker span{display:flex;gap:7px;align-items:center}.bottom-ticker b{font-size:12px;color:#55654b}footer{border-top:1px solid var(--line);display:flex;align-items:center;gap:25px;min-height:85px;padding:18px 5%;font-size:9px;color:#7d8679}.footerbrand{font-size:15px;letter-spacing:-.7px;font-weight:700;color:#536049;text-decoration:none}footer p{flex:1}footer button{background:transparent;border:0;padding:0;font-size:9px;color:#66745e}.local{display:flex;gap:6px;align-items:center;font-size:7px;letter-spacing:1px}.local i{height:5px;width:5px;border-radius:50%;background:#91a65d}dialog{background:var(--bg);border:1px solid #b9c5a5;padding:35px;width:min(580px,90vw);border-radius:14px;max-height:85vh;color:var(--ink)}dialog::backdrop{background:#0c181dbb;backdrop-filter:blur(6px)}dialog h2{font:600 42px/1 var(--display);text-transform:uppercase;margin:0 20px 22px 0}dialog p,dialog li{font-size:12px;line-height:1.8;color:#606e5c}dialog li{margin-bottom:10px}dialog a{color:#435d23}.close{position:absolute;right:17px;top:12px;border:0;background:none;font-size:26px}.modal-label{font-size:9px;font-weight:650;letter-spacing:1px;color:#748c46;margin:20px 0 8px}.rules-table{width:100%;font-size:11px;border-collapse:collapse}.rules-table td,.rules-table th{text-align:left;border-bottom:1px solid var(--line);padding:9px 3px}.rules-table th{font-size:10px}#toast{position:fixed;bottom:25px;left:50%;transform:translate(-50%,20px);background:#172225;color:#f8faee;padding:13px 22px;border-radius:8px;font-size:12px;opacity:0;pointer-events:none;transition:.2s;z-index:5;max-width:90vw}#toast.visible{opacity:1;transform:translate(-50%,0)}.loading{padding:100px 0;text-align:center;font:500 30px var(--display)}.filters{display:flex;gap:10px;margin-bottom:22px}.filters input{flex:1;min-width:0}.filters input,.filters select{background:var(--white);border:1px solid #cdd5c1;padding:12px;border-radius:7px;font-size:12px;color:var(--ink)}.library-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}.library-grid .player-card{cursor:default}.library-grid .player-card:hover{transform:none}.index-team{font-size:8px;color:#77856d;margin:9px 0}.empty{padding:60px 20px;text-align:center;border:1px dashed #bec8b2;border-radius:12px}.match-panel{background:var(--white);border:1px solid var(--line);border-radius:12px;padding:25px}.match-top{display:flex;justify-content:space-between;font-size:9px;color:#78856d;text-transform:uppercase;letter-spacing:1px}.scoreboard{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:30px 0}.score-team{text-align:center;width:31%}.score-team .team-badge{margin:0 auto 13px;width:58px;height:63px}.score-team h3{font:600 24px/1 var(--display);text-transform:uppercase;margin:0}.score-team p{font-size:9px;color:#829076;margin:7px 0 0}.score-number{text-align:center;font:600 54px var(--display);white-space:nowrap}.score-number small{display:block;font:500 8px var(--body);text-transform:uppercase;letter-spacing:1px;color:#7d886f}.tactic-title{display:flex;justify-content:space-between;align-items:center;margin:23px 0 12px;font-size:11px;font-weight:600}.tactics{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.tactic{background:#f1f3e8;border:1px solid #dce2d0;padding:14px 11px;text-align:left;border-radius:8px;min-width:0}.tactic.chosen{border-color:#7e9842;background:#e9f3ca;box-shadow:inset 0 0 0 1px #7e9842}.tactic strong{font-size:11px;display:block}.tactic p{font-size:9px;color:#718260;line-height:1.6;margin:7px 0}.tactic b{font:500 24px var(--display)}.pair-row{font-size:10px;color:#6d7c63;margin:17px 0;display:flex;align-items:center;justify-content:space-between;gap:8px}.pair-row button{background:none;border:1px solid #c1cbb3;border-radius:5px;padding:7px 9px;white-space:nowrap;font-size:9px}.match-action{display:flex;align-items:center;justify-content:space-between;margin-top:20px;border-top:1px solid var(--line);padding-top:18px}.text-button{border:0;background:none;font-size:10px;text-decoration:underline;color:#718161}.game-results{margin-top:20px}.game-result{display:flex;justify-content:space-between;border-top:1px solid #e2e7d7;padding:11px 0;font-size:10px;align-items:center}.game-result .game-score{font:500 21px var(--display);color:#8b957f}.game-score .win{color:#496a29}.outcome{padding:12px 15px;background:#e5f2c9;border:1px solid #d2e3b1;border-radius:7px;font-size:11px;margin-top:15px;line-height:1.6}.outcome.loss{background:#f6e9dc;border-color:#ebd2b8}.season-strip{display:flex;gap:5px;margin:24px 0;flex-wrap:wrap}.season-chip{height:35px;min-width:31px;flex:1;border:1px solid #d5ddc8;border-radius:5px;display:grid;place-items:center;font-size:10px;color:#97a289}.season-chip.win{background:#e0eebc;border-color:#bccc9a;color:#46652d}.season-chip.loss{background:#eee2d5;border-color:#dfc8ae;color:#92704e}.season-chip.current{border:2px solid #4b6532;color:#3b5626}.record-box{padding:23px;background:var(--dark);border-radius:12px;color:#e9efdb;margin-bottom:18px}.record-box .eyebrow{color:#a2af91;font-size:8px}.big-record{font:600 72px/1 var(--display);margin:12px 0;color:var(--lime)}.record-box p{font-size:10px;color:#a3b197;margin:0}.results-hero{text-align:center;padding:20px 0 30px}.results-hero .eyebrow{justify-content:center}.results-hero h1{font:600 60px/.98 var(--display);text-transform:uppercase;margin:17px 0 10px}.result-record{font:600 140px/.95 var(--display);letter-spacing:-3px;color:#789442;margin:15px 0}.results-hero p{font-size:12px;color:#728262;line-height:1.7}.results-actions{display:flex;gap:10px;justify-content:center;margin:25px 0}.result-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:25px}.summary-card{padding:24px;background:var(--white);border:1px solid var(--line);border-radius:12px}.summary-card h2{font-size:13px;margin:0 0 20px}.roster-row{display:flex;align-items:center;gap:12px;padding:12px 0;border-top:1px solid var(--line)}.roster-row .avatar{width:34px;height:34px;font-size:16px}.roster-row strong{font-size:11px;display:block}.roster-row small{font-size:9px;color:#819173}.roster-row b{font:600 25px var(--display);margin-left:auto}.history-note{margin-top:20px;color:#748469;font-size:10px;text-align:center}.match-log{max-height:340px;overflow:auto}.log-row{display:flex;align-items:center;gap:10px;padding:10px 0;border-top:1px solid var(--line);font-size:10px}.log-row .log-week{color:#8e9a82;width:18px}.log-row strong{margin-left:auto;font-size:11px}.result-letter{width:20px;height:20px;display:grid;place-items:center;background:#e4efc9;color:#4b6c2a;font-size:9px;border-radius:4px}.result-letter.loss{background:#f0e0d1;color:#916845}.no-margin{margin:0}.busy{pointer-events:none;opacity:.65}@media(min-width:1500px){main{padding-top:50px}.hero h1{font-size:86px}.workspace{grid-template-columns:minmax(0,1fr) 370px}.draw{min-height:174px}.court{height:280px}.player-card{padding:18px}.player-card.selected{padding:17px}.skill{margin:10px 0}}@media(max-width:1050px){.workspace{grid-template-columns:minmax(0,1fr) 290px;gap:18px}.hero h1{font-size:65px}.draw{padding:18px;gap:15px}.draw-copy h3{font-size:28px}.team-badge{width:60px;height:68px}.reroll{font-size:9px;padding:8px}.player-card{padding:13px 10px}.player-card.selected{padding:12px 9px}.skill{grid-template-columns:43px 1fr 17px;gap:4px;font-size:8px}.court-wrap{padding:24px}.library-grid{grid-template-columns:repeat(4,1fr)}.draft-actions .primary{gap:12px;padding:13px 14px}}@media(max-width:800px){.topbar{height:76px;gap:28px;padding:0 5%}.wordmark{font-size:23px}.brandball{width:29px;height:29px;font-size:24px}.help{font-size:0;gap:0}.help span{font-size:12px}nav{gap:20px}.navlink{font-size:11px}.hero{gap:30px}.hero h1{font-size:61px}.hero-right{max-width:220px;font-size:11px}.hero-right .mini-line{gap:8px;font-size:8px}.workspace{grid-template-columns:1fr}.roster-panel{display:grid;grid-template-columns:1fr 1fr;position:relative}.roster-top{grid-column:1/-1}.court-wrap{grid-row:2/4;padding:20px}.court{height:220px}.roster-stats{padding:18px 20px}.coach-note{padding:15px 20px;background:none}.cards{gap:12px}.player-card{padding:18px}.player-card.selected{padding:17px}.skill{font-size:10px;grid-template-columns:49px 1fr 22px;gap:8px}.player-card h4{font-size:15px;min-height:38px}.archetype{font-size:10px}.pick-label{font-size:10px}.library-grid{grid-template-columns:repeat(3,1fr)}.filters{flex-wrap:wrap}.filters input{flex-basis:100%}.filters select{flex:1;min-width:0}.result-grid{grid-template-columns:1fr}.hero-right .mini-line span:last-child{display:none}.score-team h3{font-size:30px}.season-side{display:grid;grid-template-columns:1fr 1fr;gap:18px}.record-box{margin:0}.season-side>.roster-panel{display:block}.season-side .court-wrap{display:none}.season-side .coach-note{display:none}.season-side .roster-top{padding-top:20px}}@media(max-width:520px){main{padding-top:28px;padding-bottom:35px}.topbar{gap:20px}.wordmark{font-size:21px}.wordmark sup{display:none}nav{gap:14px}.navlink{font-size:10px}.navcount{display:none}.hero{display:block;margin-bottom:24px}.hero h1{font-size:61px}.hero-right{max-width:none;margin-top:18px;font-size:11px}.hero-right strong{display:none}.hero-right .mini-line{margin-top:10px}.hero-right .mini-line span:last-child{display:flex}.stagebar{gap:17px;padding:12px 0;margin-bottom:20px}.step{font-size:9px;gap:6px}.step b{height:18px;width:18px;font-size:8px}.stagebar .save{font-size:0}.stagebar .save:after{content:'✓ Saved';font-size:8px}.draw{padding:18px 15px;gap:14px;min-height:145px;align-items:flex-start}.draw .team-badge{width:51px;height:61px;margin-top:14px;flex-shrink:0}.draw .team-badge b{font-size:22px}.draw-copy{padding-top:3px}.draw-copy h3{font-size:29px;max-width:180px}.draw-copy p{font-size:9px;max-width:150px;line-height:1.4}.draw .reroll{position:absolute;right:13px;bottom:13px;font-size:8px;padding:6px 8px}.cards{gap:7px}.player-card{padding:12px 9px}.player-card.selected{padding:11px 8px}.avatar{width:32px;height:32px;font-size:16px}.overall{font-size:27px}.overall small{font-size:6px;letter-spacing:.5px}.player-card h4{font-size:12px;min-height:43px;margin-top:12px}.archetype{font-size:8px;min-height:20px;line-height:1.4;margin-bottom:10px}.skill{grid-template-columns:1fr 17px;font-size:8px;gap:3px;margin:9px 0}.skill .bar{display:none}.pick-label{font-size:8px}.rating-note{max-width:150px;font-size:8px}.draft-actions{gap:10px}.primary{font-size:10px;padding:13px 16px;gap:12px}.roster-panel{grid-template-columns:1fr 1fr}.court-wrap{padding:18px 13px}.court{height:195px}.roster-top{padding:18px 16px 0}.roster-stats{padding:18px 13px 10px}.roster-overall{font-size:8px}.team-skills{gap:12px 8px;grid-template-columns:repeat(2,1fr)}.coach-note{padding:8px 13px 15px;font-size:8px}.coach-note b{font-size:7px}.bottom-ticker{flex-wrap:wrap;gap:14px;font-size:8px}.bottom-ticker span:last-child{display:none}footer{gap:14px;flex-wrap:wrap;padding:20px 5%}footer p{flex-basis:70%;font-size:8px}footer button{font-size:8px}.local{margin-left:auto}.library-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.library-grid .skill{grid-template-columns:1fr 1fr 18px}.library-grid .skill .bar{display:block}.library-grid .player-card h4{font-size:14px;min-height:34px}.library-grid .archetype{font-size:9px}.library-grid .avatar{width:39px;height:39px;font-size:18px}.filters select{font-size:10px;padding:11px 7px}.match-panel{padding:18px 14px}.scoreboard{gap:8px;margin:28px 0}.score-number{font-size:44px}.score-team h3{font-size:23px}.tactic{padding:11px 8px}.tactic strong{font-size:10px}.tactic p{font-size:8px}.pair-row{font-size:9px;line-height:1.5}.match-action{gap:12px}.season-side{grid-template-columns:1fr 1fr;gap:10px}.record-box{padding:18px 14px}.big-record{font-size:58px}.season-side .roster-panel{display:block}.season-side .roster-stats{padding:10px 14px 18px}.season-side .team-skills{grid-template-columns:repeat(3,1fr)}.season-side .roster-top{padding:18px 14px 0}.season-side .roster-top span{display:none}.result-record{font-size:115px}.results-hero h1{font-size:48px}.results-actions{flex-wrap:wrap}.summary-card{padding:20px}.choose-label span{font-size:8px}dialog{padding:28px 22px}.season-chip{min-width:26px}.help{margin-left:auto}.hero .eyebrow{font-size:8px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;animation:none!important;scroll-behavior:auto!important}}
.restart{border:0;background:transparent;padding:3px 0 3px 6px;font-size:9px;color:#68765d;white-space:nowrap}.stagebar{gap:22px}@media(max-width:520px){.stagebar{gap:10px;flex-wrap:wrap}.stagebar .save{display:none}.restart{margin-left:auto;font-size:8px}.step{font-size:8px;gap:5px}.step b{width:17px;height:17px}}
.log-detail summary{list-style:none;cursor:pointer}.log-detail summary::-webkit-details-marker{display:none}.log-chevron{color:#82936d;font-size:13px}.log-detail[open] .log-chevron{transform:rotate(180deg)}.log-games{padding:0 14px 12px 46px;background:#f3f6e9}.log-games p{font-size:9px;color:#77886a;margin-bottom:0}.log-games .game-result:first-child{border-top:0}.log-games .game-result b{font-size:11px}@media(max-width:520px){.reroll{min-height:34px}.restart{min-height:26px}.help span{height:24px;width:24px}}
/* Official franchise artwork; fantasy crest for the assembled squad. */
.team-badge.logo-badge{background:#fffef5;border:1px solid #d8decd;border-radius:12px;padding:7px;box-sizing:border-box;flex-shrink:0}
.team-badge.logo-badge:before{content:none}
.logo-badge img{width:100%;height:100%;object-fit:contain}
.logo-badge b[hidden]{display:none}
.player-identity{position:relative}
.team-badge.mini-badge{position:absolute;right:-9px;bottom:-5px;width:25px;height:25px;padding:2px;border-radius:6px;box-shadow:none}
.slot.filled .slot-circle{background:transparent}
.team-badge.court-badge{width:38px;height:38px;padding:3px;border-radius:50%;box-shadow:none}
.dream-heading{display:flex;align-items:center;gap:8px}
.dream-heading img{width:26px;height:29px}
.team-badge.log-badge{width:27px;height:27px;padding:2px;border-radius:5px;box-shadow:none}
.automation{margin-top:20px;padding:14px;background:#edf3df;border:1px solid #d5dfc4;border-radius:8px}
.automation label{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:650;cursor:pointer}
.automation input{accent-color:#496a29;width:17px;height:17px}
.automation p{font-size:10px;color:#657058;line-height:1.6;margin:7px 0 0}
.player-identity .portrait{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 20%;border-radius:50%;background:#eef0e4}
.player-identity .portrait[hidden]{display:none}
.player-identity .mini-badge{z-index:1}
.slot-circle>.avatar{width:37px;height:37px}
.slot-circle .mini-badge{width:19px;height:19px;right:-5px;bottom:-3px}
.log-row>span:nth-last-child(3){min-width:0}
.player-card .avatar{width:68px;height:68px;font-size:25px}
.player-card .mini-badge{width:29px;height:29px;right:-5px;bottom:-3px}
@media(max-width:520px){.player-card .avatar{width:43px;height:43px;font-size:18px}.player-card .mini-badge{width:21px;height:21px}}
.ranking-note{font-size:9px;line-height:1.6;color:#506638;margin:8px 0;min-height:29px}
.overall small{font-size:6px;letter-spacing:.4px;white-space:nowrap}
.archetype{line-height:1.5}
#operation-status{position:sticky;top:0;z-index:8;display:flex;align-items:center;justify-content:center;gap:18px;padding:13px;background:#172d2b;color:#f8faee;font-size:12px}
#operation-status[hidden]{display:none}
#stop-auto{background:#d9f46b;border:0;border-radius:5px;padding:8px 13px;font-size:11px;color:#172d2b}
.slot-circle .player-identity{flex-shrink:0}
@media(max-width:520px){.ranking-note{font-size:8px;min-height:37px}.log-row{gap:6px}.log-row .logo-badge{width:22px;height:22px}.log-row>span:nth-last-child(3){flex:1}.score-number{font-size:36px}.tactic-title{gap:8px}.tactic-title>.subtle{font-size:8px}}
/* Ball-knowledge edition: identity and playing style, with no numeric scouting. */
.player-card{padding:22px 18px;min-height:210px}
.player-card.selected{padding:21px 17px}
.player-card .avatar{width:76px;height:76px}
.player-card h4{font-size:16px;min-height:40px;margin:21px 0 8px}
.player-card .index-team{font-size:10px;line-height:1.5;min-height:30px}
.player-card .archetype{font-size:11px;color:#526b38;margin:16px 0 18px}
.roster-identities{padding:0 23px 20px}
.roster-identities>div{border-top:1px solid #3a4847;padding:11px 0;display:flex;flex-direction:column;gap:4px}
.roster-identities strong{font-size:11px;color:#ecf0df}
.roster-identities span,.roster-identities p{font-size:10px;color:#a3b497}
.modebar{display:flex;justify-content:space-between;align-items:center;gap:14px;margin:0 0 28px;flex-wrap:wrap}
.mode-tabs{display:flex;gap:4px;background:#e7ebdc;border:1px solid #d2dac4;border-radius:9px;padding:4px}
.mode-tabs button{background:transparent;border:0;padding:10px 18px;border-radius:6px;font-size:11px;color:#5b6c4b}
.mode-tabs button.active{background:#172d2b;color:#f7faed}
.streak-label{font-size:10px;color:#647854}
.streak-label b{font-size:15px;color:#45642e;margin:0 4px}
.manual-choice{display:flex;align-items:center;gap:8px;flex-wrap:wrap;background:#e9eddf;border:1px solid #d5dec7;padding:14px;border-radius:8px;margin-top:22px;font-size:11px;cursor:pointer}
.manual-choice input{accent-color:#496a29;width:16px;height:16px}
.manual-choice span{font-size:9px;color:#6d7d60}
.automatic-panel{background:#edf2e2;padding:20px;border-radius:10px}
.automatic-panel h2{font-size:19px;margin:0 0 10px}
.automatic-panel p{font-size:12px;line-height:1.7;color:#657a55}
.automatic-panel .text-button{display:block;margin-top:18px}
.daily-card{display:flex;gap:30px;align-items:center;justify-content:space-between;background:#172d2b;color:#f4f7e9;border-radius:14px;padding:30px}
.daily-card .eyebrow{color:#c1d398;font-size:9px}
.daily-card h2{font:600 35px/1.1 var(--display);margin:12px 0}
.daily-card p{font-size:11px;color:#b6c4aa;line-height:1.7}
.daily-card .primary{background:#d9f46b;color:#172d2b;white-space:nowrap}
.daily-card .primary .arrow{color:#172d2b}
.daily-streaks{display:flex;gap:40px;align-items:center;margin:28px 0}
.daily-streaks>div{display:flex;flex-direction:column;gap:5px;min-width:95px}
.daily-streaks strong{font:600 48px var(--display);color:#6d893e}
.daily-streaks span{font-size:11px;color:#657852}
.daily-streaks p{font-size:11px;line-height:1.8;max-width:370px;color:#748267}
@media(max-width:800px){.roster-identities{padding:18px}.daily-card{align-items:flex-start;flex-direction:column;gap:15px}.daily-streaks{flex-wrap:wrap;gap:25px}.daily-streaks p{flex-basis:100%}}
@media(max-width:520px){.player-card{padding:15px 10px;min-height:210px}.player-card.selected{padding:14px 9px}.player-card .avatar{width:48px;height:48px}.player-card h4{font-size:13px;min-height:45px;margin:17px 0 6px}.player-card .index-team{font-size:8px;min-height:36px}.player-card .archetype{font-size:9px;line-height:1.5;min-height:28px}.modebar{gap:12px;margin-bottom:22px}.mode-tabs button{padding:10px 15px}.manual-choice{font-size:10px}.daily-card{padding:24px}.daily-card h2{font-size:30px}.roster-identities{padding:13px}.roster-identities strong{font-size:9px}.roster-identities span{font-size:8px}}

/* Crawlable game information and independent guide pages. */
.seo-intro,.guide{max-width:1152px;margin:40px auto;padding:32px;border-top:1px solid var(--line)}
.seo-intro h2,.guide h2{font:700 32px var(--display);margin:14px 0}.seo-intro p,.guide p,.guide li{font-size:15px;line-height:1.8;max-width:760px}.seo-links{display:flex;gap:12px 24px;flex-wrap:wrap;margin:24px 0}.seo-links a{color:var(--ink);font-size:14px;text-underline-offset:4px}.seo-note{color:var(--muted);font-size:12px!important}.guide{max-width:860px;border-top:0;margin-top:28px}.guide h1{font:700 clamp(42px,7vw,72px)/1.05 var(--display);text-transform:uppercase;margin:20px 0}.guide section{margin:32px 0}.guide .primary{display:inline-flex;text-decoration:none;margin:12px 0}.guide-header{display:flex;align-items:center;justify-content:space-between;gap:20px}.guide-header .wordmark{white-space:nowrap}.guide ul,.guide ol{padding-left:24px}.guide a:focus-visible,.seo-intro a:focus-visible{outline:3px solid #718b32;outline-offset:4px}@media(max-width:600px){.seo-intro,.guide{margin:24px 20px;padding:24px 0}.guide-header{flex-wrap:wrap}.seo-links{gap:12px 18px}.seo-intro h2,.guide h2{font-size:28px}}

/* Portable result links and downloadable score cards. */
.share-buttons{display:flex;flex-wrap:wrap;gap:10px;margin:16px 0}.share-buttons button{min-height:42px}.share-link-label{display:block;font-size:13px}.share-url{display:block;width:100%;margin-top:8px;padding:12px;border:1px solid var(--line);border-radius:6px;background:#fffef8;font:12px var(--body);color:var(--ink)}.share-preview{display:block;width:100%;height:auto;border-radius:10px}.share-preview[hidden]{display:none}.share-status{font-size:13px;line-height:1.6}.shared-actions{margin-top:24px}.shared-roster{list-style:none;padding:0!important}.shared-roster li{padding:10px 0;border-bottom:1px solid var(--line)}.shared-games{overflow-wrap:anywhere}.guide #shared-result>h1{color:#617b32;font-size:96px}dialog:has(#result-sharing){max-width:620px;width:calc(100% - 32px)}

.share-buttons [hidden]{display:none!important}
