@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-latin-400-normal-C38fXH4l.woff2)format("woff2"),url(/assets/inter-latin-400-normal-CyCys3Eg.woff)format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-latin-500-normal-Cerq10X2.woff2)format("woff2"),url(/assets/inter-latin-500-normal-BL9OpVg8.woff)format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-latin-600-normal-LgqL8muc.woff2)format("woff2"),url(/assets/inter-latin-600-normal-CiBQ2DWP.woff)format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-latin-700-normal-Yt3aPRUw.woff2)format("woff2"),url(/assets/inter-latin-700-normal-BLAVimhd.woff)format("woff")}:root{--bg:#fff;--text:#1f1e1b;--muted:#6b6963;--border:#e8e6e0;--soft:#f7f6f3;--done:#6ab42d;--done-strong:#4f9a1f;--maybe:#cfe9b4;--alert:#a64a24;--on-primary:#fff;--pill-text:#2f5c12;--done-tint:#f4faee;--border-strong:#d6d3cb;--hatch:#d9d6cf;--seg-sep:#ffffffd9;--backdrop:#1f1e1b40;--danger:#d64545;--danger-text:#b23a3a;--warn:#e0a100;--warn-text:#9a6d00;--friend-tint:#eef4fc;--friend-tint-border:#cddcf3;--series-1:#4f9a1f;--series-2:#2a78d6;--series-3:#eb6834;--radius:20px;--wide:1200px;--friend:#2a78d6;--sans:"Inter", system-ui, -apple-system, "Segoe UI", sans-serif;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#121211;--text:#ecebe6;--muted:#a19f97;--border:#2f2e2a;--soft:#1d1d1b;--done-strong:#8fd14f;--maybe:#3d6326;--alert:#ec8a62;--series-1:#7cc243;--series-2:#4c95eb;--series-3:#f07a47;--friend:#4c95eb;--on-primary:#121211;--pill-text:#cdeeb0;--done-tint:#1b2a12;--border-strong:#46453f;--hatch:#3a3935;--seg-sep:#121211bf;--backdrop:#0000008c;--danger:#e05a5a;--danger-text:#f08a8a;--warn:#e8b220;--warn-text:#f0c75a;--friend-tint:#142233;--friend-tint-border:#24405f;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--bg:#121211;--text:#ecebe6;--muted:#a19f97;--border:#2f2e2a;--soft:#1d1d1b;--done-strong:#8fd14f;--maybe:#3d6326;--alert:#ec8a62;--series-1:#7cc243;--series-2:#4c95eb;--series-3:#f07a47;--friend:#4c95eb;--on-primary:#121211;--pill-text:#cdeeb0;--done-tint:#1b2a12;--border-strong:#46453f;--hatch:#3a3935;--seg-sep:#121211bf;--backdrop:#0000008c;--danger:#e05a5a;--danger-text:#f08a8a;--warn:#e8b220;--warn-text:#f0c75a;--friend-tint:#142233;--friend-tint-border:#24405f;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}[hidden]{display:none!important}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--text);font-family:var(--sans);margin:0;font-size:16px;line-height:1.5;overflow-x:hidden}h1,h2,h3,p{margin:0}.page{flex-direction:column;gap:20px;max-width:760px;margin:0 auto;padding:32px 16px 48px;display:flex}.home{padding-top:12vh}.center{text-align:center}.display{letter-spacing:-.02em;font-size:clamp(2rem,6vw,3rem);font-weight:700;line-height:1.1}.title{letter-spacing:-.02em;font-size:clamp(1.625rem,4.5vw,2.125rem);font-weight:700;line-height:1.15}.card-title,.card h2,.h-small{font-size:1.0625rem;font-weight:650}.lead{color:var(--muted);font-size:1.0625rem}.eyebrow,.muted{color:var(--muted)}.eyebrow{font-size:.875rem}.hint{color:var(--muted);font-size:.8125rem;font-weight:400}.alert,.error{color:var(--alert)}.nowrap{white-space:nowrap}.badge{border:1px solid var(--border);background:var(--soft);color:var(--muted);border-radius:999px;flex:none;align-self:flex-start;padding:2px 10px;font-size:.8125rem;font-weight:500;display:inline-block}.pill{background:var(--maybe);color:var(--pill-text);border-radius:999px;padding:2px 10px;font-size:.875rem;font-weight:650;display:inline-block}.notice{background:var(--soft);color:var(--muted);border-radius:14px;padding:4px 16px}.stack{flex-direction:column;gap:16px;display:flex}.section-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.section-head>div{flex-direction:column;gap:6px;display:flex}.card{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg);min-width:0;padding:22px}.card-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.btn{border:1px solid var(--border);background:var(--bg);min-height:44px;color:var(--text);font:inherit;cursor:pointer;white-space:nowrap;border-radius:14px;justify-content:center;align-items:center;gap:8px;padding:0 18px;font-weight:500;display:inline-flex}.btn-primary{background:var(--text);border-color:var(--text);color:var(--on-primary)}.btn-ghost:hover{background:var(--soft)}.link{min-height:44px;color:var(--done-strong);font:inherit;cursor:pointer;text-align:left;background:0 0;border:0;padding:0;font-weight:600}.btn:focus-visible,.seg-btn:focus-visible,.tab:focus-visible,.link:focus-visible,.tile-link:focus-visible,summary:focus-visible,.input:focus-visible,.paste:focus-visible,.choice:focus-within{outline:2px solid var(--text);outline-offset:2px}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.appbar{z-index:10;padding-top:env(safe-area-inset-top);background:var(--bg);border-bottom:1px solid var(--border);position:sticky;top:0}.appbar-inner,.tabs-inner{max-width:var(--wide);padding:0 max(16px, env(safe-area-inset-right)) 0 max(16px, env(safe-area-inset-left));margin:0 auto}.appbar-inner{justify-content:space-between;align-items:center;gap:12px;padding-top:10px;padding-bottom:6px;display:flex}.brand{align-items:center;gap:10px;min-width:0;display:flex}.brand-name{font-weight:700;line-height:1.2}.brand>div{min-width:0}.brand-meta{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:.8125rem;overflow:hidden}.appbar-actions{flex:none;justify-content:flex-end;gap:8px;display:flex}.tabs{scrollbar-width:none;overflow-x:auto}.tabs::-webkit-scrollbar{display:none}.tabs-inner{gap:4px;display:flex}.tab{min-height:44px;color:var(--muted);font:inherit;white-space:nowrap;cursor:pointer;background:0 0;border:0;border-bottom:3px solid #0000;padding:0 12px;font-weight:600}.tab[aria-selected=true]{color:var(--text);border-bottom-color:var(--done)}.paste-card{flex-direction:column;gap:12px;display:flex}.field-label{color:var(--muted);font-size:.9375rem;font-weight:500}.paste{resize:vertical;width:100%;min-height:180px;color:var(--text);background:0 0;border:0;padding:0;font:.9375rem/1.5 ui-monospace,SFMono-Regular,Menlo,monospace}.paste::placeholder{color:var(--muted)}.paste-actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.paste-buttons,.button-row,.form-actions{flex-wrap:wrap;gap:8px;display:flex}.steps{background:var(--soft);border-radius:var(--radius);padding:22px}.steps-title{margin-bottom:8px;font-size:1rem;font-weight:650}.steps ol{color:var(--text);margin:0;padding-left:1.4em}#app{flex-direction:column;min-height:100dvh;display:flex;overflow-x:clip}#app>:first-child{flex:1 0 auto}.legal{border-top:1px solid var(--border);background:var(--soft);color:var(--muted);margin-top:auto;font-size:.75rem}.legal-inner{max-width:var(--wide);flex-direction:column;gap:4px;margin:0 auto;padding:16px;display:flex}.legal strong{color:var(--text)}.onboarding{padding-top:40px}.plain{border:0;min-width:0;margin:0;padding:0}.onboarding-form{flex-direction:column;gap:16px;margin-top:8px;display:flex}.choices{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.choice{border:1.5px solid var(--border);border-radius:var(--radius);cursor:pointer;flex-direction:column;gap:6px;padding:18px;display:flex}.choice:has(input:checked){border-color:var(--done);background:var(--done-tint)}.choice-icons{gap:4px;margin-bottom:4px;display:flex}.choice-title{font-size:1.0625rem;font-weight:700}.choice-text{color:var(--muted);font-size:.875rem}.form-card{flex-direction:column;gap:16px;display:flex}.form-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.form-label{font-weight:600}.form-actions{justify-content:flex-end}.segmented{background:var(--soft);border-radius:16px;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;min-width:min(100%,340px);padding:4px;display:grid}.segmented.seg-2{grid-template-columns:repeat(2,minmax(0,1fr))}.seg-btn{min-height:44px;color:var(--text);font:inherit;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:12px;padding:0 12px;font-weight:500}.seg-btn[aria-checked=true]{background:var(--bg);border-color:var(--border);font-weight:650}.strategy{background:var(--soft);color:var(--muted);border-radius:14px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:4px 16px;display:flex}.strategy strong{color:var(--text)}.strategy{padding:8px 16px 8px 8px}.focus-switch{align-items:center;gap:10px;display:flex}.focus-switch-label{color:var(--text);padding-left:8px;font-weight:700}.focus-switch .segmented{background:var(--bg);min-width:0}.focus-switch .seg-btn{text-overflow:ellipsis;white-space:nowrap;padding:0 10px;overflow:hidden}.focus-switch .seg-btn[aria-checked=true]{background:var(--done-tint);border-color:var(--done)}.focus-switch .seg-btn:disabled{color:var(--muted);cursor:default}.strategy-meta{flex:1;min-width:0}@media (width<=640px){.strategy{padding:8px}.focus-switch,.strategy-meta{width:100%}.focus-switch{min-width:0}.focus-switch .segmented{flex:1}.focus-switch{flex-direction:column;align-items:stretch;gap:6px}.focus-switch .seg-btn{padding:0 2px;font-size:.875rem}.strategy-meta{padding:0 8px}}.tiles{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;display:grid}.tile{text-align:left;font:inherit;color:inherit;flex-direction:column;gap:2px;padding:18px;display:flex}.tile-link{cursor:pointer}.tile-link:hover{border-color:var(--border-strong)}.tile-label{color:var(--muted);font-size:.875rem;font-weight:600}.tile-value{letter-spacing:-.02em;font-size:2rem;font-weight:700;line-height:1.15}.tile-sub{color:var(--muted);font-size:.8125rem}.todo{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.todo-item{border-top:1px solid var(--border);grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:12px;padding:10px 0;display:grid}.todo-item:first-child{border-top:0;padding-top:0}.todo-text{font-weight:600}.todo-dot{background:var(--border);border-radius:50%;width:10px;height:10px;margin-left:13px}.big-pct{font-size:1.5rem;font-weight:700}.bars{flex-direction:column;gap:10px;margin:0 0 8px;padding:0;list-style:none;display:flex}.bars li{grid-template-columns:96px minmax(0,1fr) 44px;align-items:center;gap:12px;font-size:.9375rem;display:grid}.bars-value{text-align:right;font-variant-numeric:tabular-nums;font-weight:600}.bar{background:var(--soft);outline:1px solid var(--border);outline-offset:-1px;border-radius:999px;height:10px;display:block;overflow:hidden}.bar span{background:var(--done);border-radius:999px;height:100%;display:block}.bar-wide{margin-bottom:8px}.gantt{flex-direction:column;gap:18px;margin:14px 0 0;padding:0;list-style:none;display:flex}.gantt-row{grid-template-columns:48px minmax(0,1fr);align-items:center;gap:16px;display:grid}.gantt-head{justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:8px;display:flex}.gantt-name{min-width:0}.muted-strong{color:var(--muted);font-weight:400}.gantt-date{white-space:nowrap;font-size:.875rem}.track{background:var(--soft);outline:1px solid var(--border);outline-offset:-1px;border-radius:999px;height:14px;position:relative}.seg{box-shadow:inset 1px 0 0 var(--seg-sep);position:absolute;top:0;bottom:0}.seg-wait{box-shadow:none;background:repeating-linear-gradient(135deg, var(--hatch) 0 3px, transparent 3px 7px)}.now-line{background:var(--friend);border-radius:1px;width:2px;margin-left:-1px;position:absolute;top:-4px;bottom:-4px}.seg-done{background:var(--done)}.seg-maybe{background:var(--maybe)}.jam-end{background:var(--text);width:2px;margin-left:-1px;position:absolute;top:-6px;bottom:-6px}.axis{height:20px;color:var(--muted);margin:12px 0 0 64px;font-size:.8125rem;position:relative}.tick{white-space:nowrap;position:absolute;transform:translate(-50%)}.tick:first-child{transform:none}.legend{margin-top:14px}.key{border-radius:3px;width:10px;height:10px;margin-right:6px;display:inline-block}.legend .key:not(:first-child){margin-left:10px}.key-done{background:var(--done)}.key-maybe{background:var(--maybe)}.key-end{background:var(--text);border-radius:0;width:2px;height:12px}.cwl-mark{background:var(--warn);border-radius:2px;width:3px;margin-left:-1px;position:absolute;top:-3px;bottom:-3px}.key-cwl{background:var(--warn);border-radius:1px;width:3px;height:12px}.cwl-heroes{gap:0 12px}.alert-list{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.sprite{object-fit:contain;border-radius:12px;flex:none;display:block}.sprite-md{width:48px;height:48px}.sprite-sm{width:36px;height:36px}.sprite-fallback{border:1px dashed var(--border-strong);background:var(--soft);color:var(--muted);justify-content:center;align-items:center;font-size:.8125rem;font-weight:500;display:flex}.section-title{margin-top:8px;font-size:1.25rem;font-weight:700}.stack-sm{flex-direction:column;gap:10px;display:flex}.rules{counter-reset:rule;flex-direction:column;gap:12px;margin:12px 0 0;padding:0;list-style:none;display:flex}.rules li{counter-increment:rule;grid-template-columns:28px minmax(0,1fr);column-gap:12px;display:grid}.rules li:before{content:counter(rule);background:var(--maybe);width:28px;height:28px;color:var(--pill-text);border-radius:50%;grid-row:span 2;justify-content:center;align-items:center;font-weight:700;display:flex}.buy{flex-wrap:wrap;gap:8px 24px;margin:0 0 10px;padding:0;list-style:none;display:flex}.buy li{align-items:baseline;gap:8px;display:flex}.buy-num{letter-spacing:-.02em;font-size:1.75rem;font-weight:700}.card .details{margin-top:12px}.events{margin:0;padding:0;list-style:none}.ev{border-top:1px solid var(--border);grid-template-columns:96px 36px minmax(0,1fr) auto;align-items:center;gap:12px;padding:8px 0;display:grid}.ev:first-child{border-top:0}.ev-time{font-variant-numeric:tabular-nums;font-weight:600}.ev-text{overflow-wrap:anywhere;font-weight:600}.cost{background:var(--soft);color:var(--text);font-variant-numeric:tabular-nums;vertical-align:1px;white-space:nowrap;border-radius:999px;align-items:center;gap:4px;margin-left:8px;padding:1px 8px 1px 4px;font-size:.8125rem;font-weight:650;display:inline-flex}.cost-icon{object-fit:contain;width:18px;height:18px}.is-done .cost{opacity:.5}.ev-potion .ev-text{color:var(--done-strong)}.input.input-num{text-align:right;width:140px}.brows{margin:0;padding:0;list-style:none}.brow{border-top:1px solid var(--border);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:10px 0;display:grid}.brow:first-child{border-top:0}.brow-name{overflow-wrap:anywhere;font-weight:600}.brow-plan{flex-direction:column;align-items:flex-end;gap:2px;display:flex}.late{color:var(--done-strong)}.maxed{border-top:1px solid var(--border);flex-direction:column;gap:8px;margin-top:12px;padding-top:12px;display:flex}.maxed-grid{flex-wrap:wrap;gap:6px;display:flex}.wall-card{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;display:grid}.wall-num{flex-direction:column;align-items:flex-end;display:flex}.chart{position:relative}.chart-legend{color:var(--muted);flex-wrap:wrap;gap:4px 16px;margin:0 0 8px;padding:0;font-size:.875rem;list-style:none;display:flex}.swatch{vertical-align:middle;border-radius:2px;width:14px;height:3px;margin-right:6px;display:inline-block}.swatch-global{background:var(--series-1)}.swatch-heroes{background:var(--series-2)}.swatch-buildings{background:var(--series-3)}.chart-plot{touch-action:pan-y;width:100%}.chart svg{display:block;overflow:visible}.chart .grid{stroke:var(--border);stroke-width:1px}.chart .axis-label{fill:var(--muted);font-size:12px}.chart .end-label{fill:var(--text);font-size:12px;font-weight:600}.chart .line{fill:none;stroke-width:2px;stroke-linejoin:round;stroke-linecap:round}.chart .line-global{stroke:var(--series-1);stroke-width:2.5px}.chart .line-heroes{stroke:var(--series-2)}.chart .line-buildings{stroke:var(--series-3)}.chart .dot-global{fill:var(--series-1);stroke:var(--bg);stroke-width:2px}.chart .jam-line{stroke:var(--text);stroke-width:1.5px}.chart .crosshair{stroke:var(--muted);stroke-width:1px}.chart-tip{border:1px solid var(--border);background:var(--bg);pointer-events:none;border-radius:12px;flex-direction:column;gap:2px;min-width:160px;padding:8px 10px;font-size:.8125rem;display:none;position:absolute;top:36px}.chart-tip.visible{display:flex}.chart-table{margin-top:12px;font-size:.875rem}.chart-table summary{min-height:44px;color:var(--done-strong);cursor:pointer;align-items:center;font-weight:600;display:flex}.chart-table table,.table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%}.chart-table th,.chart-table td,.table th,.table td{border-top:1px solid var(--border);text-align:right;padding:8px 6px}.chart-table th:first-child,.chart-table td:first-child,.table th:first-child{text-align:left}.table thead th{color:var(--muted);border-top:0;font-size:.8125rem;font-weight:500}.table tbody th{font-weight:600}.cell-sub{color:var(--muted);font-size:.75rem;font-weight:400;display:block}.card.details{padding:0}.details summary{cursor:pointer;justify-content:space-between;align-items:center;min-height:56px;padding:14px 22px;list-style:none;display:flex}.details summary::-webkit-details-marker{display:none}.details summary:after{content:"+";color:var(--muted);font-size:1.25rem}.details[open] summary:after{content:"−"}.details-body{flex-direction:column;gap:12px;padding:0 22px 22px;display:flex}.details-body h3{margin-top:8px}.rows{margin:0;padding:0;list-style:none}.row{border-top:1px solid var(--border);overflow-wrap:anywhere;padding:10px 0}.row:first-child{border-top:0}.row-split{justify-content:space-between;gap:12px;display:flex}.prose ul{margin:0;padding-left:1.2em}.prose p+p{margin-top:8px}.settings{border:1px solid var(--border);border-radius:var(--radius);width:min(560px,100vw - 32px);max-height:calc(100dvh - 32px);color:var(--text);background:var(--bg);padding:0}.settings::backdrop{background:var(--backdrop)}.settings-form{flex-direction:column;gap:20px;padding:22px;display:flex}.settings-head{justify-content:space-between;align-items:center;display:flex}.settings-head h2{font-size:1.5rem;font-weight:700}fieldset{border:1px solid var(--border);border-radius:16px;flex-direction:column;gap:12px;min-width:0;margin:0;padding:16px;display:flex}legend{padding:0 6px;font-weight:650}.field{flex-direction:column;gap:4px;min-width:0;display:flex}.field label{font-size:.9375rem;font-weight:500}.field-check{flex-direction:row;align-items:flex-start;gap:10px;display:flex}.field-check label{flex-direction:column;padding-top:1px;display:flex}.checkbox{width:22px;height:22px;accent-color:var(--done-strong);flex:none;margin:0}.input{border:1px solid var(--border);background:var(--bg);width:100%;min-height:44px;color:var(--text);font:inherit;border-radius:12px;padding:0 12px}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}@media (width<=640px){.page{padding-top:20px}.home{padding-top:40px}.card{padding:18px}.hide-sm{display:none}.appbar-actions{gap:6px}.appbar-actions .btn{padding:0 12px}.brand .sprite{display:none}.choices,.tiles{grid-template-columns:repeat(2,minmax(0,1fr))}.tiles-3 .tile:first-child,.tiles-5 .tile:first-child{grid-column:span 2}.tile-value{font-size:1.75rem}.bars li{grid-template-columns:84px minmax(0,1fr) 40px;gap:8px}.gantt-row{gap:12px}.axis{margin-left:60px}.paste-actions{flex-direction:column;align-items:stretch}.paste-buttons .btn,.form-actions .btn{flex:1}.details summary{padding:14px 18px}.details-body{padding:0 18px 18px}.ev{grid-template-columns:64px 36px minmax(0,1fr) auto;gap:8px}.ev-time{font-size:.8125rem}}.sleep{flex-direction:column;gap:12px;display:flex}.span-2{grid-column:1/-1}.sleep [hidden]{display:none}.auth-card{flex-direction:column;gap:16px;width:100%;max-width:440px;margin:0 auto;display:flex}.auth-links{flex-wrap:wrap;justify-content:space-between;gap:4px 16px;display:flex}.input-code{letter-spacing:.3em;text-align:center;font-variant-numeric:tabular-nums;font-size:1.5rem}.auth-tabs{border-bottom:1px solid var(--border);gap:4px;display:flex}.center-row{justify-content:center}.account{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.players{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.player{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg);width:100%;color:var(--text);font:inherit;text-align:left;cursor:pointer;grid-template-columns:32px minmax(0,1fr) auto;align-items:center;gap:14px;padding:16px 18px;display:grid}.player:hover{border-color:var(--border-strong)}.player:focus-visible{outline:2px solid var(--text);outline-offset:2px}.player.me{border-color:var(--done);background:var(--done-tint)}.player-rank{color:var(--muted);text-align:center;font-size:1.25rem;font-weight:700}.player-main{flex-direction:column;gap:4px;min-width:0;display:flex}.player-name{overflow-wrap:anywhere;align-items:center;gap:8px;font-weight:700;display:flex}.player-stats{text-align:right;flex-direction:column;align-items:flex-end;display:flex}.player-pct{font-size:1.5rem;font-weight:700}@media (width<=640px){.player{grid-template-columns:24px minmax(0,1fr) auto;gap:10px;padding:14px}}.app .page.dash{max-width:var(--wide)}.dash-grid{gap:16px;display:grid}.dash-grid>.stack{min-width:0}@media (width>=960px){.dash-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.page.dash{padding-left:24px;padding-right:24px}}.card-sub{margin:-8px 0 12px}.kv{margin:8px 0;padding:0;list-style:none}.kv li{border-top:1px solid var(--border);justify-content:space-between;gap:12px;padding:8px 0;display:flex}.kv li:first-child{border-top:0}.kv strong{text-align:right}.pill-soft{background:var(--soft);color:var(--muted);white-space:nowrap;font-weight:600}.pill-max{background:var(--done);color:#fff;letter-spacing:.04em;vertical-align:middle;margin-left:8px;font-size:.6875rem}.hero-levels{flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.hero-levels li{grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:12px;display:grid}.hero-level-head{justify-content:space-between;gap:8px;margin-bottom:4px;font-size:.9375rem;display:flex}.bar-dual{position:relative}.bar-dual span{position:absolute;inset:0 auto 0 0}.bar-dual .bar-plan{background:var(--maybe)}.legend{flex-wrap:wrap;align-items:center;gap:4px 6px;display:flex}.legend .key{margin-left:10px}.legend .key:first-child{margin-left:0}.key-wait{background:repeating-linear-gradient(135deg, var(--hatch) 0 3px, var(--bg) 3px 6px);outline:1px solid var(--border)}.key-now{background:var(--friend);border-radius:1px;width:3px;height:12px}.gantt-wait{white-space:nowrap}@media (width>=960px){.gantt-row{grid-template-columns:56px minmax(0,1fr)}.gantt-row .sprite-md{width:56px;height:56px}.track{height:16px}.axis{margin-left:72px}}.pw-group{flex-direction:column;gap:12px;display:flex}.meter{align-items:center;gap:10px;margin-top:8px;display:flex}.meter-track{background:var(--soft);outline:1px solid var(--border);outline-offset:-1px;border-radius:999px;flex:1;height:8px;overflow:hidden}.meter-fill{background:var(--danger);border-radius:999px;width:0;height:100%;transition:width .35s,background-color .35s;display:block}.meter-label{text-align:right;min-width:72px;font-size:.8125rem;font-weight:600;transition:color .35s}.meter[data-level="0"] .meter-fill{background:var(--danger);width:15%}.meter[data-level="1"] .meter-fill{background:var(--danger);width:38%}.meter[data-level="2"] .meter-fill{background:var(--warn);width:68%}.meter[data-level="3"] .meter-fill{background:var(--done);width:100%}.meter[data-level="0"] .meter-label,.meter[data-level="1"] .meter-label{color:var(--danger-text)}.meter[data-level="2"] .meter-label{color:var(--warn-text)}.meter[data-level="3"] .meter-label,.match.ok{color:var(--done-strong)}.match.bad{color:var(--danger-text)}.form-error:empty{display:none}.auth-page{position:relative}.back-link{align-self:flex-start}@media (prefers-reduced-motion:reduce){.meter-fill,.meter-label{transition:none}}.btn-lg{min-height:52px;padding:0 24px;font-size:1.0625rem}.landing{max-width:var(--wide);flex-direction:column;gap:64px;margin:0 auto;padding:48px 16px 64px;display:flex}.landing-hero{align-items:center;gap:32px;display:grid}.landing-copy{flex-direction:column;gap:18px;display:flex}.landing-title{letter-spacing:-.03em;font-size:clamp(2.125rem,5.5vw,3.5rem);font-weight:800;line-height:1.05}.landing-visual{flex-direction:column;gap:16px;display:flex}.hero-strip{flex-wrap:wrap;gap:8px;display:flex}.hero-strip .sprite{width:64px;height:64px}.preview{flex-direction:column;gap:14px;display:flex}.preview-row{grid-template-columns:130px minmax(0,1fr);align-items:center;gap:12px;font-weight:600;display:grid}.landing-section{flex-direction:column;gap:24px;display:flex}.feature-grid{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:16px;display:grid}.feature{flex-direction:column;gap:10px;display:flex}.steps-grid{counter-reset:step;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:16px;margin:0;padding:0;list-style:none;display:grid}.step{counter-increment:step;flex-direction:column;gap:6px;display:flex}.step:before{content:counter(step);background:var(--maybe);width:32px;height:32px;color:var(--pill-text);border-radius:50%;justify-content:center;align-items:center;margin-bottom:4px;font-weight:700;display:flex}@media (width>=960px){.landing{padding-top:80px}.landing-hero{grid-template-columns:1.2fr 1fr;gap:56px}}.friend-banner{background:var(--friend);color:#fff}.friend-banner-inner{max-width:var(--wide);flex-wrap:wrap;align-items:center;gap:8px 12px;margin:0 auto;padding:8px 16px;display:flex}.friend-banner-inner>span:nth-child(2){flex:1;min-width:0}.friend-ro{opacity:.85}.btn-banner{min-height:40px;color:var(--friend);background:#fff;border-color:#fff;font-weight:600}.friend-frame{z-index:20;pointer-events:none;border:4px solid var(--friend);position:fixed;inset:0}.viewing-friend .appbar{background:var(--friend-tint);border-bottom-color:var(--friend-tint-border)}.viewing-friend .tab[aria-selected=true]{border-bottom-color:var(--friend)}@media (width<=640px){.friend-ro{display:none}.preview-row{grid-template-columns:110px minmax(0,1fr)}.hero-strip .sprite{width:48px;height:48px}}.landing-me{flex-direction:column;gap:10px;display:flex}.brand[role=link]{cursor:pointer;border-radius:12px}.brand[role=link]:focus-visible{outline:2px solid var(--text);outline-offset:4px}.appbar-inner{min-height:60px}.topnav{scrollbar-width:none;flex:1;justify-content:safe center;gap:4px;min-width:0;display:flex;overflow-x:auto}.topnav::-webkit-scrollbar{display:none}.brand{flex:0 auto}.topnav-item{min-height:44px;color:var(--muted);font:inherit;white-space:nowrap;cursor:pointer;background:0 0;border:0;border-radius:12px;align-items:center;gap:8px;padding:0 14px;font-weight:600;display:inline-flex}.topnav-item:hover{background:var(--soft);color:var(--text)}.topnav-item[aria-current=page]{background:var(--done-tint);color:var(--text)}.topnav-item[aria-current=page] .icon{color:var(--done-strong)}.bnav{display:none}.btn-icon{gap:8px;padding:0 12px}.avatar{border:1px solid var(--border);background:var(--soft);width:44px;height:44px;color:var(--text);font:inherit;cursor:pointer;border-radius:50%;flex:none;font-weight:700}.avatar:hover,.avatar.active{border-color:var(--done);background:var(--done-tint)}.avatar:focus-visible,.topnav-item:focus-visible,.bnav-item:focus-visible,.vs-item:focus-visible{outline:2px solid var(--text);outline-offset:2px}.icon-only .btn-icon-label{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.btn-icon.icon-only{width:44px;padding:0}@media (width<=1199px){.btn-icon-label{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.btn-icon{width:44px;padding:0}}@media (width<=1023px){.topnav{display:none}.bnav{z-index:15;padding:4px max(4px, env(safe-area-inset-right)) calc(4px + env(safe-area-inset-bottom)) max(4px, env(safe-area-inset-left));background:var(--bg);border-top:1px solid var(--border);grid-template-columns:repeat(auto-fit,minmax(0,1fr));display:grid;position:fixed;bottom:0;left:0;right:0}.bnav-item{min-height:56px;color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:2px;min-width:0;font-size:.6875rem;font-weight:600;display:flex}.bnav-item>span{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.bnav-item[aria-current=page]{color:var(--text)}.bnav-item[aria-current=page] .icon{color:var(--done-strong)}.app~.legal{padding-bottom:calc(68px + env(safe-area-inset-bottom))}}@media (width<=480px){.brand-meta{display:none}}.village-switch{background:var(--soft);border-radius:18px;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;padding:6px;display:grid}.vs-item{min-height:56px;color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:14px;justify-content:center;align-items:center;gap:10px;padding:6px 10px;font-weight:600;display:flex}.vs-item[aria-selected=true]{background:var(--bg);border-color:var(--border);color:var(--text)}.vs-icon{justify-content:center;align-items:center;width:36px;height:36px;display:flex}@media (width<=560px){.vs-item{flex-direction:column;gap:2px;font-size:.8125rem}}.choice{position:relative}.choice-icons{gap:8px}.choice-icon{justify-content:center;align-items:center;width:56px;height:56px;display:flex}.choice-icon .sprite{width:56px;height:56px}.choice-icon .sprite[src*="/buildings/"],.vs-icon .sprite[src*="/buildings/"]{transform:scale(1.3)}.choice-check{border:2px solid var(--border-strong);color:#0000;border-radius:50%;justify-content:center;align-items:center;width:26px;height:26px;transition:background-color .2s,border-color .2s;display:flex;position:absolute;top:14px;right:14px}.choice:has(input:checked) .choice-check{background:var(--done);border-color:var(--done);color:#fff}.stepper{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0 0 4px;padding:0;list-style:none;display:grid}.stepper li{color:var(--muted);flex-direction:column;gap:6px;font-size:.8125rem;font-weight:600;display:flex}.stepper-dot{background:var(--border);border-radius:999px;height:6px;transition:background-color .25s;display:block}.stepper li.done .stepper-dot,.stepper li.current .stepper-dot{background:var(--done)}.stepper li.current{color:var(--text)}.form-actions .btn .icon{flex:none}.checkbox{appearance:none;border:2px solid var(--border-strong);background:var(--bg);cursor:pointer;border-radius:50%;flex:none;place-content:center;width:24px;height:24px;margin:0;transition:background-color .2s,border-color .2s;display:inline-grid}.checkbox:after{content:"";background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") 50%/contain no-repeat;width:12px;height:12px;transition:transform .15s;transform:scale(0)}.checkbox:checked{background:var(--done);border-color:var(--done)}.checkbox:checked:after{transform:scale(1)}.checkbox:hover{border-color:var(--done)}.checkbox:focus-visible{outline:2px solid var(--text);outline-offset:2px}.checkbox:disabled{opacity:.5;cursor:not-allowed}.field-check{align-items:center}.segmented.seg-3{grid-template-columns:repeat(3,minmax(0,1fr))}.segmented.seg-4{grid-template-columns:repeat(4,minmax(0,1fr))}.theme-control{flex-direction:column;gap:8px;display:flex}select.input{background-color:var(--bg);color:var(--text)}@media (prefers-reduced-motion:reduce){.checkbox,.checkbox:after,.choice-check,.stepper-dot{transition:none}}.is-done .todo-text,.is-done .ev-text{color:var(--muted);text-decoration:line-through;text-decoration-thickness:2px}.is-done .sprite,.is-done .ev-time{opacity:.45}.ev-potion.is-done .ev-text{color:var(--muted)}.done-box:disabled{opacity:1;cursor:default}.done-box:disabled:not(:checked){opacity:.35}.day-count{background:var(--soft);color:var(--muted);font-variant-numeric:tabular-nums;border-radius:999px;margin-left:auto;margin-right:12px;padding:2px 10px;font-size:.8125rem;font-weight:600}.day-count.all-done{background:var(--done);color:#fff}.banner{border:1px solid var(--border);border-radius:var(--radius);background:var(--soft);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 16px;padding:14px 18px;display:flex}.banner>div:first-child{flex:280px}.banner-warn{border-color:var(--warn);background:color-mix(in srgb, var(--warn) 12%, var(--bg))}.banner-info{border-color:var(--friend-tint-border);background:var(--friend-tint)}.paste-now{width:100%}.or{margin:-2px 0}.steps-list{color:var(--muted);margin:0;padding-left:1.3em}.vs-head{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.vs-card{border-top-width:4px;flex-direction:column;gap:2px;display:flex}.vs-me{border-top-color:var(--done)}.vs-them{border-top-color:var(--friend)}.key-me{background:var(--done)}.key-them{background:var(--friend)}.vs-bars{flex-direction:column;gap:14px;margin:8px 0 0;padding:0;list-style:none;display:flex}.vs-bars li{grid-template-columns:96px minmax(0,1fr) 44px;align-items:center;gap:12px;font-size:.9375rem;display:grid}.vs-pair{flex-direction:column;gap:4px;display:flex}.vs-pair .bar{height:8px}.bar-them span{background:var(--friend)}.vs-values{font-variant-numeric:tabular-nums;flex-direction:column;align-items:flex-end;font-size:.8125rem;font-weight:600;line-height:1.25;display:flex}.vs-hero{align-items:center;gap:8px;display:inline-flex}.table td.win{color:var(--done-strong);font-weight:700}@media (width<=640px){.vs-bars li{grid-template-columns:76px minmax(0,1fr) 40px;gap:8px}}:root{--ease-out:cubic-bezier(.2, .8, .2, 1)}@keyframes enter-rise{0%{opacity:0;transform:translateY(10px)}}@keyframes enter-grow{0%{transform:scaleX(0)}}@keyframes pop{50%{transform:scale(1.18)}}.page-enter [data-enter]{animation:enter-rise .38s var(--ease-out) both;animation-delay:calc(var(--enter,0) * 45ms)}.page-enter .bar span{transform-origin:0;animation:enter-grow .7s var(--ease-out) .18s both}.btn,.seg-btn,.link,.topnav-item,.bnav-item,.avatar,.tile-link,.player,.vs-item,.tab{transition:background-color .18s,border-color .18s,color .18s,box-shadow .18s,transform .12s}.btn:active,.seg-btn:active,.avatar:active,.vs-item:active,.topnav-item:active,.bnav-item:active,.choice:active{transform:scale(.97)}.btn-primary:hover{box-shadow:0 4px 14px -6px var(--text)}.link:hover{text-underline-offset:4px;text-decoration:underline;text-decoration-thickness:2px}.tile-link:hover,.player:hover{box-shadow:0 8px 20px -14px var(--text);transform:translateY(-2px)}.tile-link:active,.player:active{transform:translateY(0)}.choice{transition:background-color .2s,border-color .2s,transform .12s}.page-enter .bnav-item[aria-current=page] .icon,.page-enter .topnav-item[aria-current=page] .icon,.done-box.pop{animation:pop .28s var(--ease-out)}.is-done .todo-text,.is-done .ev-text{transition:color .2s}@media (prefers-reduced-motion:reduce){.page-enter [data-enter],.page-enter .bar span,.page-enter .bnav-item[aria-current=page] .icon,.page-enter .topnav-item[aria-current=page] .icon,.done-box.pop{animation:none}.btn,.seg-btn,.link,.topnav-item,.bnav-item,.avatar,.tile-link,.player,.vs-item,.tab,.choice{transition:none}.btn:active,.seg-btn:active,.avatar:active,.vs-item:active,.topnav-item:active,.bnav-item:active,.choice:active,.tile-link:hover,.player:hover{transform:none}}.order-card{flex-direction:column;gap:14px;display:flex}.order-list{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.order-item{border-bottom:1px solid var(--border);background:var(--bg);grid-template-columns:auto 28px 40px minmax(0,1fr) auto auto auto;align-items:center;gap:10px;padding:8px 4px;display:grid}.order-list.ro .order-item{grid-template-columns:28px 40px minmax(0,1fr) auto auto}.order-item:last-child{border-bottom:0}.order-grip{width:32px;height:44px;color:var(--muted);cursor:grab;touch-action:none;place-items:center;margin:0 -4px;display:grid}.order-grip:hover{color:var(--text)}.order-rank{color:var(--muted);font-variant-numeric:tabular-nums;text-align:right;font-size:.875rem;font-weight:650}.order-main{min-width:0}.order-name{text-overflow:ellipsis;white-space:nowrap;font-weight:650;overflow:hidden}.order-arrows{gap:2px;display:flex}.order-arrow{border:1px solid var(--border);background:var(--bg);width:36px;height:36px;color:var(--text);cursor:pointer;border-radius:10px;place-items:center;transition:background-color .18s,transform .12s;display:grid}.order-arrow:hover:not(:disabled){background:var(--soft)}.order-arrow:active:not(:disabled){transform:scale(.94)}.order-arrow:disabled{opacity:.3;cursor:default}.order-arrow:focus-visible{outline:2px solid var(--text);outline-offset:2px}.pill-muted{background:var(--soft);color:var(--muted)}.order-item.is-paused .order-name,.order-item.is-paused .sprite{opacity:.45}.order-item.is-paused .order-name{text-decoration:line-through}.order-list.is-sorting .order-item{transition:transform .15s}.order-list.is-sorting .order-item.dragging{z-index:2;box-shadow:0 12px 28px -12px var(--text);cursor:grabbing;border-bottom-color:#0000;border-radius:12px;transition:none;position:relative}@media (width<=640px){.order-item{grid-template-columns:auto 22px 32px minmax(0,1fr) auto auto;gap:8px}.order-list.ro .order-item{grid-template-columns:22px 32px minmax(0,1fr) auto auto}.order-arrows{display:none}.order-item .sprite-sm{width:32px;height:32px}}@media (prefers-reduced-motion:reduce){.order-list.is-sorting .order-item{transition:none}}.commu-grid{align-items:start;gap:32px;display:grid}.commu-grid>*{min-width:0}@media (width>=1024px){.commu-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.15fr)}}.backlog-form{flex-direction:column;gap:12px;display:flex}.backlog-form .seg-btn{justify-content:center;align-items:center;gap:6px;display:inline-flex}.textarea{resize:vertical;min-height:88px;padding:10px 12px;line-height:1.45}.chips{flex-wrap:wrap;gap:8px;display:flex}.chip{border:1px solid var(--border);background:var(--bg);min-height:36px;color:var(--muted);font:inherit;cursor:pointer;border-radius:999px;align-items:center;gap:6px;padding:0 12px;font-size:.875rem;font-weight:600;transition:background-color .18s,color .18s,border-color .18s;display:inline-flex}.chip:hover{color:var(--text)}.chip.active{background:var(--done-tint);border-color:var(--done);color:var(--text)}.chip-count{color:var(--muted);font-variant-numeric:tabular-nums}.chip:focus-visible,.bl-vote:focus-visible,.bl-delete:focus-visible{outline:2px solid var(--text);outline-offset:2px}.bl-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.bl-item{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg);grid-template-columns:52px minmax(0,1fr);gap:14px;padding:14px;display:grid}.bl-done,.bl-declined{opacity:.7}.bl-vote{border:1px solid var(--border);background:var(--soft);width:52px;min-height:56px;color:var(--muted);font:inherit;font-variant-numeric:tabular-nums;cursor:pointer;border-radius:14px;flex-direction:column;justify-content:center;align-self:start;align-items:center;gap:2px;font-weight:700;transition:background-color .18s,color .18s,border-color .18s,transform .12s;display:flex}.bl-vote:hover{color:var(--text);border-color:var(--border-strong)}.bl-vote:active{transform:scale(.95)}.bl-vote.voted{background:var(--done-tint);border-color:var(--done);color:var(--done-strong)}.bl-main{flex-direction:column;gap:4px;min-width:0;display:flex}.bl-tags{flex-wrap:wrap;gap:6px;display:flex}.bl-kind,.bl-status{border-radius:999px;align-items:center;gap:4px;padding:1px 8px;font-size:.75rem;font-weight:650;display:inline-flex}.bl-kind{background:var(--soft);color:var(--muted)}.bl-kind-bug{border:1px solid var(--danger);color:var(--danger-text);background:0 0}.bl-kind-feature{background:var(--done-tint);color:var(--done-strong)}.bl-status-planned{background:var(--friend-tint);color:var(--text);border:1px solid var(--friend-tint-border)}.bl-status-done{background:var(--done);color:var(--pill-text)}.bl-status-declined{background:var(--soft);color:var(--muted);text-decoration:line-through}.bl-title{overflow-wrap:anywhere;font-weight:650}.bl-body{color:var(--muted);white-space:pre-line;overflow-wrap:anywhere;font-size:.9375rem}.bl-meta{flex-wrap:wrap;align-items:center;gap:4px 12px;display:flex}.bl-delete{min-height:32px;color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:4px;padding:0;font-size:.8125rem;display:inline-flex}.bl-delete:hover{color:var(--danger-text)}@media (prefers-reduced-motion:reduce){.bl-vote,.chip{transition:none}}.toast{left:50%;bottom:calc(24px + env(safe-area-inset-bottom));z-index:30;background:var(--text);width:max-content;max-width:calc(100vw - 32px);color:var(--bg);opacity:0;pointer-events:none;transition:opacity .2s ease, transform .2s var(--ease-out);border-radius:14px;padding:12px 16px;font-size:.9375rem;font-weight:500;position:fixed;transform:translate(-50%,12px);box-shadow:0 12px 32px -12px #00000080}.toast.show{opacity:1;transform:translate(-50%)}@media (width<=1023px){.toast{bottom:calc(80px + env(safe-area-inset-bottom))}}@media (prefers-reduced-motion:reduce){.toast{transition:none}}
