:root{--ink:#2a1810;--ink-soft:#4a3428;--gold:#c4a35a;--gold-deep:#9a7a3a;--flour:#f7f2e9;--flour-deep:#ebe3d4;--berry:#8b3a4a;--berry-soft:#a85a68;--cream:#fffaf3;--success:#3d6b4f;--warn:#8a5a20;--border:color-mix(in srgb, var(--ink) 14%, transparent);--shadow:0 12px 40px color-mix(in srgb, var(--ink) 10%, transparent);--radius:10px;--font-display:"Fraunces", Georgia, serif;--font-body:"Manrope", system-ui, sans-serif;--max:960px;font-family:var(--font-body);color:var(--ink);background:radial-gradient(ellipse 80% 50% at 10% -10%, color-mix(in srgb, var(--gold) 28%, transparent), transparent), radial-gradient(ellipse 60% 40% at 100% 0%, color-mix(in srgb, var(--berry) 12%, transparent), transparent), linear-gradient(180deg, var(--flour) 0%, var(--flour-deep) 100%);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:500;line-height:1.5}*,:before,:after{box-sizing:border-box}html,body,#root{min-height:100%}body{min-width:320px;margin:0}a{color:var(--berry);text-underline-offset:.18em;text-decoration-thickness:1px}a:hover{color:var(--ink)}h1,h2,h3{font-family:var(--font-display);letter-spacing:-.02em;margin:0 0 .4em;font-weight:700;line-height:1.15}h1{font-size:clamp(1.8rem,4vw,2.4rem)}h2{font-size:1.25rem}p{margin:0 0 .85rem}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}.muted{color:var(--ink-soft)}.small{font-size:.9rem}.lede{color:var(--ink-soft);max-width:36rem}.page-center{place-items:center;min-height:100vh;padding:2rem;display:grid}.auth-page{place-items:center;min-height:100vh;padding:2rem 1.25rem;display:grid;position:relative;overflow:hidden}.auth-atmosphere{background:radial-gradient(circle at 20% 30%, color-mix(in srgb, var(--gold) 35%, transparent), transparent 45%), radial-gradient(circle at 80% 70%, color-mix(in srgb, var(--berry) 18%, transparent), transparent 40%), repeating-linear-gradient(-12deg, transparent, transparent 11px, color-mix(in srgb, var(--ink) 3%, transparent) 11px, color-mix(in srgb, var(--ink) 3%, transparent) 12px);pointer-events:none;position:absolute;inset:0}.auth-panel{background:color-mix(in srgb, var(--cream) 92%, transparent);border:1px solid var(--border);border-radius:calc(var(--radius) + 4px);width:min(100%,420px);box-shadow:var(--shadow);padding:2.25rem 1.75rem;position:relative}.brand-hero{font-family:var(--font-display);color:var(--ink);letter-spacing:-.03em;margin:0 0 .35rem;font-size:clamp(2.4rem,8vw,3.2rem);font-weight:700}.auth-heading{color:var(--ink-soft);margin-bottom:.35rem;font-size:1.35rem;font-weight:500}.auth-footer{margin-top:1.25rem;font-size:.95rem}.app-shell{flex-direction:column;min-height:100vh;display:flex}.site-chrome{z-index:20;position:sticky;top:0}.site-header{border-bottom:1px solid var(--border);background:color-mix(in srgb, var(--cream) 88%, transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);align-items:center;gap:.75rem 1.25rem;padding:.75rem 1.25rem;display:flex}.brand-mark{color:inherit;flex-direction:column;min-width:0;margin-right:auto;line-height:1.1;text-decoration:none;display:flex}.brand-mark__title{font-family:var(--font-display);font-size:1.35rem;font-weight:700}.brand-mark__tag{text-transform:uppercase;letter-spacing:.08em;color:var(--gold-deep);font-size:.7rem}.site-header__actions{flex-shrink:0;align-items:center;gap:.5rem;display:flex}.site-header__user--desktop{display:none}.menu-toggle{border:1px solid var(--border);background:var(--cream);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;width:2.5rem;height:2.5rem;padding:0;display:inline-flex}.menu-toggle__bars,.menu-toggle__bars:before,.menu-toggle__bars:after{background:var(--ink);border-radius:1px;width:1.1rem;height:2px;transition:transform .15s,opacity .15s;display:block}.menu-toggle__bars{position:relative}.menu-toggle__bars:before,.menu-toggle__bars:after{content:"";position:absolute;left:0}.menu-toggle__bars:before{top:-6px}.menu-toggle__bars:after{top:6px}.menu-toggle--open .menu-toggle__bars{background:0 0}.menu-toggle--open .menu-toggle__bars:before{top:0;transform:rotate(45deg)}.menu-toggle--open .menu-toggle__bars:after{top:0;transform:rotate(-45deg)}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.league-bar{border-bottom:1px solid var(--border);background:color-mix(in srgb, var(--flour-deep) 70%, var(--cream));flex-wrap:wrap;align-items:center;gap:.65rem 1rem;padding:.55rem 1.25rem;display:none}.league-chip{border:1px solid var(--border);text-overflow:ellipsis;white-space:nowrap;max-width:12rem;color:var(--ink);background:var(--cream);border-radius:999px;flex-shrink:0;padding:.25rem .7rem;font-size:.8rem;font-weight:700;text-decoration:none;overflow:hidden}.league-chip:hover,.league-chip.active{border-color:color-mix(in srgb, var(--berry) 40%, var(--border));color:var(--berry)}.site-nav{flex-wrap:wrap;flex:1;gap:.35rem .85rem;display:none}.site-nav a{color:var(--ink-soft);font-size:.92rem;font-weight:600;text-decoration:none}.site-nav a:hover,.site-nav a.active{color:var(--berry)}.site-nav--league{flex:1;align-items:center}.nav-group{flex-wrap:wrap;align-items:center;gap:.35rem .85rem;display:inline-flex}.nav-group--admin{margin-left:.35rem}.nav-sep{background:color-mix(in srgb, var(--ink) 22%, transparent);flex-shrink:0;width:1px;height:1.1rem;margin:0 .35rem 0 .15rem;display:inline-block}.mobile-nav-backdrop{background:color-mix(in srgb, var(--ink) 35%, transparent);z-index:25;position:fixed;inset:0}.mobile-nav{z-index:30;background:var(--cream);border-bottom:1px solid var(--border);max-height:min(80vh,32rem);box-shadow:var(--shadow);padding:.75rem 1.25rem 1.25rem;display:none;position:absolute;top:100%;left:0;right:0;overflow-y:auto}.mobile-nav--open{display:block}.mobile-nav__section{flex-direction:column;gap:.15rem;padding:.65rem 0;display:flex}.mobile-nav__section+.mobile-nav__section{border-top:1px solid var(--border)}.mobile-nav__label{text-transform:uppercase;letter-spacing:.06em;color:var(--ink-soft);margin:.35rem 0 .25rem;font-size:.72rem;font-weight:700}.mobile-nav a{color:var(--ink);border-bottom:1px solid color-mix(in srgb, var(--border) 70%, transparent);padding:.7rem .15rem;font-size:1.05rem;font-weight:650;text-decoration:none;display:block}.mobile-nav a:last-child{border-bottom:none}.mobile-nav a.active{color:var(--berry)}.mobile-nav__user{margin:.75rem 0 .35rem;font-size:.9rem}@media (width>=768px){.menu-toggle{display:none}.site-header__user--desktop{display:inline}.site-header__actions .btn.site-header__user--desktop{display:inline-flex}.site-nav.site-nav--desktop,.league-bar.league-bar--desktop,.league-bar--desktop .site-nav--league{display:flex}.mobile-nav,.mobile-nav--open,.mobile-nav-backdrop{display:none!important}}.deadline-banner{background:color-mix(in srgb, var(--berry) 8%, var(--cream));border-bottom:1px solid var(--border)}.deadline-banner__inner{max-width:var(--max);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem 1rem;margin:0 auto;padding:.55rem 1.25rem;font-size:.9rem;display:flex}.deadline-banner__link{font-weight:700}.site-main{width:min(100%, var(--max));flex:1;margin:0 auto;padding:1.5rem 1.25rem 3rem}.page--wide{width:100%}.site-main:has(.page--wide){width:min(100%,1100px)}.scoreboard-wrap{border:1px solid var(--border);border-radius:var(--radius);background:color-mix(in srgb, var(--cream) 90%, transparent);overflow-x:auto}.data-table--scoreboard{min-width:100%;margin:0}.data-table--scoreboard th,.data-table--scoreboard td{white-space:nowrap}.data-table--scoreboard .sticky-col{background:color-mix(in srgb, var(--cream) 96%, var(--flour));z-index:1;position:sticky;left:0}.data-table--scoreboard .sticky-col--name{min-width:8rem;left:2.25rem}.data-table--scoreboard .sticky-col--total{border-left:1px solid var(--border);font-weight:800;left:auto;right:0}.data-table--scoreboard thead .sticky-col{z-index:2}.data-table--scoreboard .total-cell{font-weight:800}.page-header{margin-bottom:1.5rem}.team-results{border-top:1px solid var(--border);flex-wrap:wrap;align-items:baseline;gap:1.25rem 1.75rem;margin:1rem 0 0;padding-top:.85rem;display:flex}.team-results__stat{flex-direction:column;gap:.1rem;display:flex}.team-results__value{font-family:var(--font-display);color:var(--ink);font-size:1.85rem;font-weight:700;line-height:1.1}.team-results__of{color:var(--ink-soft);margin-left:.05em;font-size:.55em;font-weight:600}.team-results__label{letter-spacing:.04em;text-transform:uppercase;color:var(--ink-soft);font-size:.78rem;font-weight:600}.team-results__link{align-self:center;margin-left:auto;font-size:.9rem;font-weight:600}.data-table .num{text-align:right;font-variant-numeric:tabular-nums}.section{margin-bottom:2rem}.panel{background:color-mix(in srgb, var(--cream) 88%, transparent);border:1px solid var(--border);border-radius:var(--radius);padding:1.15rem 1.2rem}.two-col{gap:1.25rem;display:grid}@media (width>=720px){.two-col{grid-template-columns:1fr 1fr}}.stack-form{flex-direction:column;gap:.85rem;display:flex}.inline-form{flex-flow:wrap;align-items:flex-end}.inline-form .field{flex:1;min-width:12rem}.stack-form--row{flex-flow:wrap;align-items:end}.field{flex-direction:column;gap:.35rem;display:flex}.field span{color:var(--ink-soft);font-size:.85rem;font-weight:600}.field--inline{max-width:28rem;margin-bottom:1rem}.field input,.field select,.field textarea,input:not([type=checkbox]):not([type=radio]),select,textarea{border:1px solid var(--border);background:var(--cream);border-radius:8px;padding:.55rem .7rem}.field input:focus,.field select:focus,input:focus,select:focus{outline:2px solid color-mix(in srgb, var(--gold) 70%, transparent);outline-offset:1px}.check{align-items:center;gap:.5rem;font-size:.95rem;display:flex}.form-error{color:var(--berry);background:color-mix(in srgb, var(--berry) 10%, var(--cream));border:1px solid color-mix(in srgb, var(--berry) 25%, transparent);border-radius:8px;padding:.65rem .8rem}.form-warn{color:var(--warn);background:color-mix(in srgb, var(--gold) 18%, var(--cream));border:1px solid color-mix(in srgb, var(--gold) 40%, transparent);border-radius:8px;padding:.65rem .8rem}.form-success{color:var(--success);background:color-mix(in srgb, var(--success) 12%, var(--cream));border:1px solid color-mix(in srgb, var(--success) 30%, transparent);border-radius:8px;padding:.65rem .8rem}.btn{border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;gap:.35rem;padding:.6rem 1rem;font-weight:700;text-decoration:none;transition:background .15s,color .15s,border-color .15s;display:inline-flex}.btn:disabled{opacity:.55;cursor:not-allowed}.btn--primary{background:var(--ink);color:var(--flour)}.btn--primary:hover:not(:disabled){background:var(--ink-soft);color:var(--flour)}.btn--secondary{background:color-mix(in srgb, var(--gold) 35%, var(--cream));color:var(--ink);border-color:color-mix(in srgb, var(--gold) 50%, transparent)}.btn--secondary:hover:not(:disabled){background:color-mix(in srgb, var(--gold) 50%, var(--cream));color:var(--ink)}.btn--ghost{color:var(--ink-soft);border-color:var(--border);background:0 0}.btn--ghost:hover:not(:disabled){border-color:var(--ink-soft);color:var(--ink)}.btn--sm{padding:.3rem .65rem;font-size:.85rem}.league-list{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.league-list__item{text-align:left;border:1px solid var(--border);border-radius:var(--radius);background:color-mix(in srgb, var(--cream) 90%, transparent);flex-direction:column;gap:.15rem;width:100%;padding:.85rem 1rem;display:flex}.league-list__item:hover{border-color:color-mix(in srgb, var(--gold) 60%, transparent)}.league-list__name{font-size:1.05rem;font-weight:700}.invite-panel .invite-code{font-family:var(--font-display);letter-spacing:.18em;margin:.25rem 0;font-size:2rem}.invite-code--inline{font-family:var(--font-display);letter-spacing:.12em;font-weight:700}.invite-link{margin:.5rem 0 .75rem}.invite-link code{word-break:break-all;background:color-mix(in srgb, var(--flour-deep) 80%, transparent);border:1px solid var(--border);border-radius:6px;padding:.55rem .7rem;font-size:.85rem;display:block}.status-list{margin:0;padding-left:1.1rem}.status-ok{color:var(--success);font-weight:600}.status-warn{color:var(--warn);font-weight:600}.link-grid{flex-wrap:wrap;gap:.65rem;display:flex}.selection-count{margin-bottom:.75rem;font-weight:700}.baker-pick-grid{grid-template-columns:repeat(auto-fill,minmax(148px,1fr));align-items:stretch;gap:.55rem;margin:0 0 1.25rem;padding:0;list-style:none;display:grid}.baker-pick-grid>li{min-height:100%;display:flex}.baker-pick{border:1px solid var(--border);background:var(--cream);text-align:left;cursor:pointer;border-radius:8px;flex-direction:column;flex:1;justify-content:flex-start;align-items:flex-start;gap:.35rem;width:100%;min-height:4.75rem;padding:.7rem .8rem;display:flex}.baker-pick:hover:not(:disabled){border-color:var(--gold-deep)}.baker-pick:disabled{opacity:.55;cursor:not-allowed}.baker-pick--out:disabled{opacity:.45}.baker-pick--on{border-color:var(--berry);background:color-mix(in srgb, var(--berry) 10%, var(--cream))}.baker-pick--lineup{cursor:default;flex-direction:row;align-items:stretch;gap:0;padding:0}.baker-pick--lineup.baker-pick--captain{border-color:var(--gold-deep);background:color-mix(in srgb, var(--gold) 18%, var(--cream));box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--gold) 35%, transparent)}.baker-pick__main{text-align:left;cursor:pointer;min-width:0;color:inherit;font:inherit;background:0 0;border:0;flex-direction:column;flex:1;align-items:flex-start;gap:.35rem;padding:.7rem .75rem;display:flex}.baker-pick__main:disabled{cursor:not-allowed;opacity:.7}.baker-pick__star{border:0;border-left:1px solid var(--border);background:color-mix(in srgb, var(--flour) 80%, transparent);width:2.6rem;color:color-mix(in srgb, var(--ink) 28%, transparent);cursor:pointer;border-radius:0 7px 7px 0;flex-shrink:0;font-size:1.25rem;line-height:1}.baker-pick__star:hover:not(:disabled){color:var(--gold-deep);background:color-mix(in srgb, var(--gold) 22%, var(--cream))}.baker-pick__star--on{color:var(--gold-deep);background:color-mix(in srgb, var(--gold) 28%, var(--cream))}.baker-pick__star:disabled{cursor:not-allowed;opacity:.5}.captain-status{color:var(--ink-soft);min-height:1.35rem;margin:-.35rem 0 1rem;font-size:.92rem;font-weight:600}.baker-pick--wanted{border-color:var(--success);background:color-mix(in srgb, var(--success) 12%, var(--cream))}.baker-pick--out-selected{border-color:var(--berry);background:color-mix(in srgb, var(--berry) 12%, var(--cream))}.baker-pick--dead-seat:not(.baker-pick--out-selected){border-style:dashed}.transfer-step{margin-bottom:.65rem}.transfer-step h2{align-items:center;gap:.55rem;margin-bottom:.2rem;display:flex}.transfer-step__num{width:1.55rem;height:1.55rem;font-family:var(--font-body);background:color-mix(in srgb, var(--gold) 40%, var(--cream));color:var(--ink);border-radius:999px;place-items:center;font-size:.85rem;font-weight:800;display:inline-grid}.section--dim{opacity:.48;pointer-events:none}.transfer-confirm{border-top:1px solid var(--border);padding-top:.25rem}.transfer-summary{min-height:1.75rem;margin-bottom:.85rem}.transfer-summary__swap{font-family:var(--font-display);flex-wrap:wrap;align-items:baseline;gap:.5rem .75rem;margin:0;font-size:1.35rem;font-weight:700;display:flex}.transfer-summary__out{color:var(--berry);text-decoration:line-through}.transfer-summary__arrow{color:var(--ink-soft)}.transfer-summary__in{color:var(--success)}.transfer-history{border-top:1px solid var(--border);margin:0;padding:0;list-style:none}.transfer-history li{border-bottom:1px solid var(--border);flex-wrap:wrap;gap:.35rem 1rem;padding:.55rem 0;display:flex}.transfer-history__week{letter-spacing:.04em;text-transform:uppercase;color:var(--ink-soft);min-width:4.5rem;font-size:.78rem;font-weight:700}.transfer-history__swap{font-weight:600}.baker-pick__name{font-weight:700;line-height:1.25;display:block}.baker-pick__meta{flex-wrap:wrap;align-items:center;gap:.25rem;min-height:1.3rem;display:flex}.badge{text-transform:uppercase;letter-spacing:.04em;background:color-mix(in srgb, var(--berry) 15%, transparent);color:var(--berry);vertical-align:middle;border-radius:4px;margin-left:.4rem;padding:.12rem .4rem;font-size:.7rem;font-weight:700;display:inline-block}.baker-pick__meta .badge{margin-left:0}.badge+.badge{margin-left:.35rem}.badge--muted{background:color-mix(in srgb, var(--ink) 10%, transparent);color:var(--ink-soft)}.badge--wanted{background:color-mix(in srgb, var(--success) 18%, transparent);color:var(--success)}.badge--out{background:color-mix(in srgb, var(--berry) 18%, transparent);color:var(--berry)}.badge--gold{background:color-mix(in srgb, var(--gold) 35%, transparent);color:var(--gold-deep)}.simple-list{margin:0;padding-left:1.1rem}.simple-list li{margin-bottom:.35rem}.roster-list{border-top:1px solid var(--border);margin:.5rem 0 0;padding:0;list-style:none}.roster-list__row{border-bottom:1px solid var(--border);justify-content:space-between;align-items:baseline;gap:1rem;padding:.55rem 0;display:flex}.roster-list__main{flex-wrap:wrap;align-items:center;gap:.35rem;min-width:0;display:flex}.roster-list__name{font-weight:700}.roster-list__pts{font-variant-numeric:tabular-nums;flex-shrink:0;font-size:1.05rem;font-weight:800}.roster-list__pts-unit{color:var(--ink-soft);font-size:.75rem;font-weight:600}.inline-actions{flex-wrap:wrap;align-items:center;gap:.75rem;margin:1rem 0;display:flex}.table-scroll{margin:1rem 0;overflow-x:auto}.data-table{border-collapse:collapse;width:100%;font-size:.95rem}.data-table th,.data-table td{text-align:left;border-bottom:1px solid var(--border);vertical-align:top;padding:.65rem .55rem}.data-table th{text-transform:uppercase;letter-spacing:.05em;color:var(--ink-soft);font-size:.78rem}.data-table--standings .num{font-variant-numeric:tabular-nums;font-weight:700}.data-table--bakers{min-width:40rem}.data-table--bakers .baker-name{margin-right:.35rem;font-weight:700}.data-table--bakers .row--muted{opacity:.72}.trend{letter-spacing:.02em;white-space:nowrap;font-size:.85rem;font-weight:700}.trend--up{color:var(--success)}.trend--down{color:var(--berry)}.trend--flat{color:var(--ink-soft)}.trend--na{color:var(--ink-soft);font-weight:500}.data-table--compact th,.data-table--compact td{padding:.4rem .35rem}.input-narrow{width:3.5rem}@media (width<=640px){.brand-mark__tag{display:none}.site-main{padding:1.15rem 1rem 2.5rem}.page-header h1{font-size:1.75rem}.scoreboard-wrap{margin-inline:-.25rem}.two-col{grid-template-columns:1fr}}
