:root{color-scheme:light;--perk-electric-lime: #beff50;--perk-off-black-ink: #14140f;--perk-off-white-canvas: #f5f5eb;--perk-pure-white: #ffffff;--perk-ash: #d2d2c8;--perk-graphite: #6e6e64;--perk-deep-charcoal: #30302a;--perk-stone: #919183;--perk-smoke: #b9b9b7;--ground: var(--perk-pure-white);--board: var(--perk-off-white-canvas);--board-2: var(--perk-pure-white);--field: var(--perk-pure-white);--island: var(--perk-deep-charcoal);--ink: var(--perk-off-black-ink);--ink-2: var(--perk-deep-charcoal);--muted: var(--perk-graphite);--rule: var(--perk-ash);--stroke: var(--perk-stone);--wash: var(--perk-smoke);--accent: var(--perk-electric-lime);--on-accent: var(--perk-off-black-ink);--accent-soft: color-mix( in srgb, var(--perk-electric-lime) 32%, var(--perk-pure-white) );--w: #8ee1fa;--g: #cda8ff;--m: #ff8b5d;--good: #007533;--warning: #cd7600;--critical: #e01100;--info: #a834ff;--on-chip: #fff;--r-input: 8px;--r-inner: 18px;--r-card: 28px;--r-button: 28px;--r-pill: 9999px;--r-mark: 4px;--r-tag: 4px;--s-1: 4px;--s-2: 8px;--s-3: 12px;--s-4: 16px;--s-5: 20px;--s-6: 24px;--s-8: 32px;--s-10: 40px;--s-15: 60px;--s-20: 80px;--display: "Inter Tight", Inter, system-ui, sans-serif;--body: Inter, system-ui, -apple-system, sans-serif;--label: var(--body);--mono: "IBM Plex Mono", ui-monospace, Menlo, monospace;--wordmark: "Inter Tight", Inter, sans-serif;--w-body: 400;--w-emph: 500}*{box-sizing:border-box}input,select,textarea,button{font-family:inherit;font-size:inherit}select{-moz-appearance:none;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12' fill='none' stroke='%2314140f' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2.5 4.5 6 8 9.5 4.5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-size:12px;padding-right:34px}code{font-family:var(--mono);font-size:.92em}html{touch-action:manipulation}body{margin:0;background:var(--ground);color:var(--ink);font-family:var(--body);line-height:1.6;-webkit-font-smoothing:antialiased}.wrap{max-width:1200px;margin:0 auto;padding:0 20px 96px}.masthead{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between;padding:28px 0 20px;border-bottom:1px solid var(--rule);margin-bottom:28px;position:sticky;top:0;z-index:10;background:var(--ground)}.mast-brand{display:flex;align-items:center;gap:12px}.mast-brand-link{border:0;background:none;padding:0;margin:0;cursor:pointer;color:inherit;font:inherit}.brand{display:inline-flex;align-items:center;gap:8px}.brand-mark{width:26px;height:28px;flex:none}.brand-word{font-family:var(--wordmark);font-size:17px;font-weight:var(--w-emph);letter-spacing:-.02em}.brand-lg .brand-mark{width:42px;height:45px}.brand-lg .brand-word{font-size:28px;letter-spacing:-.03em}.stamp{font-family:var(--mono);font-size:12px;color:var(--muted)}.switch{display:flex;gap:4px}.switch button{font-family:var(--label);font-size:12px;display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:8px 16px;border:1px solid var(--rule);background:var(--board);color:var(--ink-2);cursor:pointer;border-radius:var(--r-pill)}.switch button:hover:not([aria-selected=true]):not([aria-checked=true]){border-color:var(--stroke)}.switch button[aria-selected=true],.switch button[aria-checked=true]{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.nav-group{display:flex;align-items:center;gap:10px}.icon-btn{width:32px;height:32px;padding:0;display:flex;align-items:center;justify-content:center;border:1px solid var(--rule);background:var(--board);color:var(--ink-2);cursor:pointer;border-radius:var(--r-pill)}.icon-btn.selected{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.icon-btn svg{width:17px;height:17px}@media(max-width:620px){.masthead{padding:20px 0 14px;gap:10px}.nav-group{width:100%}.masthead .switch{flex:1;overflow-x:auto;scrollbar-width:none}.masthead .switch::-webkit-scrollbar{display:none}.masthead .switch button{white-space:nowrap;flex:none;padding:8px 12px}.masthead .icon-btn{flex:none}}.board{background:var(--board);border:1px solid var(--rule);border-radius:var(--r-card);padding:32px;margin-top:24px}.board.inset{padding:20px;border-radius:var(--r-inner)}@media(max-width:620px){.wrap{padding:0 16px 80px}.board{padding:20px}.board.inset{padding:16px}.daybar{margin-top:12px;margin-bottom:12px}}.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}.actions.ruled{padding-top:20px;border-top:1px solid var(--rule)}.row.between{justify-content:space-between}.row.between.top{align-items:flex-start}.row.end{justify-content:flex-end}.notice+.btn,.notice+.row,.notice+.switch{margin-top:16px}.notice>.btn{margin-top:12px}.notice .row{margin-top:10px}.lede.tight{margin-bottom:0}.lede>.chip{margin-left:6px;vertical-align:middle}.switch.variant{margin:10px 0}.switch+.lede{margin-top:6px}.eyebrow+.chips{margin-top:12px}.eyebrow+.empty{margin:8px 0 0}.chips+.evidence,.empty+.evidence{margin-top:12px}.btn.full{display:block;width:100%;margin-top:12px}.accent-note .lede{margin:0}.stack.gap>.lede{margin-bottom:0}.stack.gap>.empty{margin:0}.modal .rank-row{margin-bottom:12px}.board.inset .lede{margin:4px 0 0}.chip.removable{border:1px solid var(--stroke);cursor:pointer}.eyebrow{font-family:var(--label);font-size:10px;line-height:1.4;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin:0 0 8px}.cols{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);column-gap:24px;row-gap:0;align-items:start}@media(max-width:900px){.cols{grid-template-columns:1fr}}.stack{display:grid;gap:0}.stack.gap{gap:16px}.stack>*,.cols>*{min-width:0}.tiles{display:flex;flex-wrap:wrap;gap:1px;background:var(--rule);padding:0;overflow:hidden}.tile{background:var(--board);padding:20px;margin:0;border:0;border-radius:0;flex:1 1 140px}.tile .v{font-family:var(--display);font-size:32px;line-height:1;letter-spacing:-.03em;font-weight:var(--w-emph);font-variant-numeric:tabular-nums}.tile .v.sm{font-size:24px}.tile .v.xs{font-size:19px;line-height:1.1}.tile .k{margin-top:4px}.tile .sub{font-family:var(--label);font-size:11px;color:var(--muted);margin-top:3px}h2{font-family:var(--display);font-size:22px;line-height:1.18;margin:0 0 8px}h3{font-family:var(--display);font-size:18px;margin:0 0 12px}h4{margin:0 0 8px}.lede{color:var(--ink-2);font-size:14px;margin:0 0 16px}.sec-head{display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:8px;margin-bottom:12px}.sec-head h3{margin:0}.daybar{display:flex;gap:8px;align-items:center;margin-top:24px;margin-bottom:20px}.daybar.away{border-left:3px solid var(--accent);padding-left:10px}.daybar button,.daybar select{font-family:var(--label);font-size:13px;padding:6px 10px;border:1px solid var(--rule);background-color:var(--board-2);color:var(--ink);border-radius:var(--r-input);cursor:pointer;white-space:nowrap}.daybar .daybar-today{color:var(--ink);border-color:var(--ink)}.daybar select{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chips{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}.chip{font-family:var(--label);font-size:10px;letter-spacing:.1em;text-transform:uppercase;padding:4px 10px;border-radius:var(--r-tag);background:color-mix(in srgb,var(--rule) 55%,transparent);color:var(--ink)}.chip.w{background:var(--w);color:var(--ink)}.chip.g{background:var(--g);color:var(--ink)}.chip.m{background:var(--m);color:var(--ink)}.chip.high{background:var(--ink);color:var(--board)}.chip.medium{background:var(--muted);color:var(--on-chip)}.chip.low{background:var(--rule);color:var(--ink)}.reading-chips .chip.high,.ratio-head .chip.high{background:var(--info);color:var(--on-chip)}.reading-chips .chip.medium,.ratio-head .chip.medium{background:var(--warning);color:var(--on-chip)}.chip.tbd{background:transparent;border:1px dashed var(--rule);color:var(--muted);cursor:help}.chip.cycle-start{background:var(--accent-soft);color:var(--ink)}.notice+.chips,.notice+.legend-row{margin-top:12px}.legend-row{display:flex;flex-wrap:wrap;gap:12px;align-items:center;font-family:var(--label);font-size:10px;color:var(--muted);margin-bottom:16px}.legend-row .sw{display:inline-flex;align-items:center;justify-content:center;width:9px;height:9px;border-radius:var(--r-mark);margin-right:4px;font-size:8px;line-height:1}.legend-row .sw.w{background:var(--w)}.legend-row .sw.g{background:var(--g)}.legend-row .sw.m{background:var(--m)}.legend-row .sw.planned{background:none;border:1px dashed var(--ink-2)}.legend-row .sw.unlogged{background:none;border:1px dotted var(--muted)}.legend-row .sw.missed{background:none;border:1px solid var(--critical);color:var(--critical)}.legend-row .sw.rest{background:var(--rule)}.legend-row .sw.future{background:var(--board-2);opacity:.55}.adjustment{border:1px solid var(--rule);border-left:3px solid var(--accent);border-radius:var(--r-inner);padding:16px 20px;margin-top:14px;background:var(--board-2)}.adjustment .eyebrow{color:var(--ink)}.adjustment p,.adjustment ul{font-size:13.5px;margin:4px 0 0}.adjustment ul{padding-left:18px}.adjustment li{margin:2px 0}.entry{padding:12px 0;border-top:1px solid var(--rule)}.entry:first-child{border-top:0;padding-top:0}.entry-head{display:flex;justify-content:space-between;align-items:baseline;gap:8px}.evidence{font-family:var(--mono);font-size:11.5px;color:var(--muted);margin:0}.ratio-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 32px}@media(max-width:700px){.ratio-grid{grid-template-columns:1fr}}.ratio-track{padding:16px 0;border-top:1px solid var(--rule)}.ratio-grid>.ratio-track:nth-child(-n+2){border-top:0;padding-top:0}@media(max-width:700px){.ratio-grid>.ratio-track:nth-child(2){border-top:1px solid var(--rule);padding-top:14px}}.ratio-measures{font-family:var(--mono);font-size:11px;color:var(--muted);margin:2px 0 0}.track-labels .value{font-weight:500}.track-labels .value.below,.track-labels .value.above,.track-labels .value.within{color:var(--ink)}.never-logged{margin-top:14px;padding-top:12px;border-top:1px solid var(--rule)}.ratio-head{display:flex;justify-content:space-between;align-items:center;gap:8px}.ratio-name{font-family:var(--display);font-size:16px;text-transform:uppercase;letter-spacing:.02em}.track{position:relative;height:8px;background:var(--board-2);border:1px solid var(--rule);border-radius:var(--r-pill);overflow:hidden;margin:10px 0 4px}.band-typical{position:absolute;top:-1px;bottom:-1px;background:var(--accent-soft)}.marker{position:absolute;top:-3px;width:3px;height:14px;background:var(--ink);border-radius:1px;transform:translate(-1.5px)}.marker.high{background:var(--info)}.marker.medium{background:var(--warning)}.marker.low{background:var(--rule)}.track-labels{display:flex;justify-content:space-between;font-family:var(--mono);font-size:11px;color:var(--muted);font-variant-numeric:tabular-nums}.divider{border-top:1px solid var(--rule);margin:24px 0 20px}.cycle-bar{display:flex;gap:3px;margin:16px 0 12px}.cycle-bar+.notice{margin-top:0}.week-label{margin:2px 0 4px}.cycle-seg{flex:1 1 0;height:10px;border:1px solid var(--rule);border-radius:var(--r-pill);background:var(--board-2);position:relative}.cycle-seg.done{background:var(--accent);border-color:var(--accent)}.cycle-seg.current{background:var(--accent-soft);border-color:var(--ink);outline:2px solid var(--ink);outline-offset:1px}.cycle-seg.deload{background:repeating-linear-gradient(135deg,var(--accent-soft),var(--accent-soft) 3px,var(--rule) 3px,var(--rule) 5px)}.cycle-seg.test:after{content:"";position:absolute;top:3px;right:3px;bottom:3px;left:3px;border-radius:1px;border:1px solid var(--ink)}.reading{display:flex;gap:12px;padding:16px 0;border-top:1px solid var(--rule)}.reading:first-of-type{border-top:0}.reading-rail{width:2px;flex:none;border-radius:1px}.reading-rail.high{background:var(--info)}.reading-rail.medium{background:var(--warning)}.reading-rail.low{background:var(--rule)}.reading-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.reading-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px}.reading-title{display:flex;align-items:baseline;gap:9px;min-width:0}.reading-kind{font-family:var(--label);font-size:10px;font-weight:500;letter-spacing:.1em;text-transform:uppercase;flex:none}.reading.strength .reading-kind,.reading.weakness .reading-kind{color:var(--ink)}.reading-name{font-family:var(--display);font-size:18px;font-weight:var(--w-emph);line-height:1.25}.reading-chips{display:flex;align-items:baseline;gap:6px;flex:none}.reading .lede,.reading .evidence{margin:0}.reading .caveat{font-style:italic}.chip.focus-ref{background:var(--accent-soft);color:var(--ink);font-weight:500}@media(max-width:620px){.reading-head{flex-direction:column;align-items:stretch;gap:4px}.reading-title{flex-direction:column-reverse;align-items:flex-start;gap:2px;order:2}.reading-chips{order:1;justify-content:flex-start;flex-wrap:wrap}.reading-name{font-size:20px}}.coach-note{border:1px solid var(--rule);border-left:3px solid var(--accent);border-radius:var(--r-inner);padding:16px 20px;margin-top:16px;background:var(--board-2)}.coach-note .eyebrow{color:var(--ink)}.coach-note .lede{font-size:13.5px;margin:0 0 6px}.note-row{display:flex;align-items:baseline;gap:12px;padding-top:12px;margin-top:12px;border-top:1px solid var(--rule)}.note-n{font-family:var(--label);font-size:10px;font-weight:500;padding:3px 8px;border-radius:var(--r-pill);background:var(--accent-soft);color:var(--ink);flex:none}.note-name{font-size:14px;font-weight:500;flex:0 0 168px}.note-from,.note-tally{font-family:var(--label);font-size:11px;color:var(--muted)}.note-from{flex:1 1 auto;min-width:0}.note-tally{flex:none;font-family:var(--mono)}@media(max-width:620px){.note-row{display:grid;grid-template-columns:auto 1fr;gap:2px 9px;align-items:baseline}.note-name{flex:none}.note-from,.note-tally{grid-column:2}.note-n{grid-row:1 / span 3}}.bars{display:flex;align-items:flex-end;gap:8px;height:104px;padding-bottom:1px;border-bottom:1px solid var(--rule)}.bar-col{flex:1;display:flex;flex-direction:column;justify-content:flex-end}.bar{display:block}.bar.w{background:var(--w)}.bar.g{background:var(--g)}.bar.m{background:var(--m)}.bar-empty{display:block;height:2px;background:var(--rule)}.bar-labels{display:flex;gap:8px;margin:6px 0 12px;font-family:var(--label);font-size:10px;color:var(--muted);text-align:center}.bar-labels span{flex:1}.bar-labels .now{color:var(--ink)}.weeks{display:flex;flex-direction:column}.week{display:flex;align-items:center;gap:10px;padding:8px 12px;border-top:1px solid var(--rule)}.week.current{background:var(--accent-soft)}.week-date{font-family:var(--mono);font-size:11.5px;font-variant-numeric:tabular-nums;flex:none}.pips{display:flex;gap:3px;flex:none}.pip{width:14px;height:14px;border-radius:var(--r-mark);display:inline-block}.pip.gap{margin-left:6px}.pip.done{background:var(--accent)}.pip.home{background:var(--accent-soft);border:1px solid var(--ink)}.pip.short{background:var(--board);border:1px solid var(--rule)}.pip.open{background:transparent;border:1px dashed var(--ink)}.legend-row .pip{width:10px;height:10px;margin-right:4px}.week-meta{font-family:var(--mono);font-size:10.5px;color:var(--muted);margin-left:auto;text-align:right}.week-meta .bad{color:var(--critical)}.week-now{font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink)}.history-cta{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px}.history-cta .evidence{margin:0;flex:1 1 240px}.history-btn{width:100%;margin-top:14px}.recent{display:flex;flex-direction:column}.recent-row{display:flex;gap:10px;padding:12px 0;border-top:1px solid var(--rule)}.recent-rail{width:2px;flex:none;border-radius:1px;background:var(--rule)}.recent-row.completed .recent-rail{background:var(--good)}.recent-row.missed .recent-rail{background:var(--critical)}.recent-row .d{font-family:var(--mono);font-size:11px;color:var(--muted)}.recent-row .n{font-size:14px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.back-link{display:inline-flex;align-items:center;gap:6px;margin-top:16px;padding:0;border:0;background:none;cursor:pointer;font-family:var(--label);font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink)}.page-head{margin-top:6px}.hist{display:grid;grid-template-columns:2px 76px 200px minmax(0,1fr);gap:0 12px;align-items:start;padding:12px 0;border-top:1px solid var(--rule);font-size:14px}.hist-rail{align-self:stretch;border-radius:1px;background:var(--rule)}.hist.completed .hist-rail{background:var(--good)}.hist.missed .hist-rail{background:var(--critical)}.hist.planned .hist-rail,.hist.unlogged .hist-rail{background:repeating-linear-gradient(to bottom,var(--muted) 0 4px,transparent 4px 9px)}.hist.unlogged .hist-rail{background:repeating-linear-gradient(to bottom,var(--muted) 0 2px,transparent 2px 5px)}.hist-date{font-family:var(--mono);font-size:12px;color:var(--ink-2);font-variant-numeric:tabular-nums;padding-top:2px}.hist-name{display:flex;align-items:baseline;gap:8px;min-width:0;font-weight:500;padding-top:1px}.chip.kind{flex:none;padding:2px 7px}.hist-movements{display:flex;gap:6px;flex-wrap:wrap}.hist-status{font-family:var(--label);font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);padding-top:3px}.hist-status.bad{color:var(--critical)}@media(max-width:700px){.hist{grid-template-columns:2px minmax(0,1fr);gap:3px 11px}.hist-rail{grid-row:1 / span 3}.hist-name{font-family:var(--display);font-size:20px;font-weight:var(--w-emph);line-height:1.2}}tr.current{background:var(--accent-soft)}.session-table{max-height:420px;overflow-y:auto}.debug-table{border:1px dashed var(--rule);border-radius:var(--r-inner);padding:8px;background:color-mix(in srgb,var(--board-2) 55%,transparent)}.debug-table table{font-family:var(--mono);font-size:12px}.cal-wrap{display:flex;gap:6px;align-items:flex-start}.cal-scroll{min-width:0}.cal-dow{flex:0 0 auto;display:grid;grid-template-rows:repeat(7,17px);gap:4px;padding-top:1px;font-family:var(--label);font-size:9px;color:var(--muted);text-align:center}.cal-scroll{padding-bottom:4px}.cal-grid{display:grid;grid-template-rows:repeat(7,17px);grid-auto-flow:column;grid-auto-columns:17px;gap:4px}.cal-cell{width:17px;height:17px;padding:0;margin:0;border:1px solid var(--rule);border-radius:var(--r-mark);background:var(--board-2);cursor:pointer;display:flex;position:relative}.cal-cell.pad{visibility:hidden;cursor:default}.cal-cell.missed{border-color:var(--critical)}.cal-cell.missed:after{content:"×";position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-family:var(--label);font-weight:var(--w-emph);font-size:10px;color:var(--critical);pointer-events:none}.cal-cell.planned{border-style:dashed}.cal-cell.unlogged{border-style:dotted;border-color:var(--muted)}.cal-cell.rest{background:var(--rule);border-color:var(--rule)}.cal-cell.future{opacity:.55}.cal-cell.selected{outline:2px solid var(--ink);outline-offset:1px}.cal-cell:disabled{cursor:default}.bands{display:flex;flex-direction:column;width:100%;height:100%}.band{display:block}.band.w{background:var(--w)}.band.g{background:var(--g)}.band.m{background:var(--m)}.cal-detail{margin-top:12px;padding:12px 16px;border:1px solid var(--rule);border-radius:var(--r-inner);background:var(--board-2)}.cal-detail .d{font-family:var(--mono);font-size:11px;color:var(--muted)}.cal-detail .n{font-family:var(--display);font-size:18px;margin:2px 0 4px}.detail-body{max-height:320px;overflow-y:auto;margin-top:10px;padding-right:4px}.body-md{font-size:14.5px}.body-md p,.body-md ul,.body-md ol{margin:0 0 6px}.body-md p+p,.body-md ul+p,.body-md ol+p,.body-md ul+ul,.body-md ol+ol{margin-top:17px}.body-md>:first-child{margin-top:0}.body-md>:last-child{margin-bottom:0}.body-md strong{font-family:var(--display);font-weight:var(--w-emph);letter-spacing:.01em}.body-md ul,.body-md ol{padding-left:22px}.body-md li{margin:2px 0}.body-md h1,.body-md h2,.body-md h3,.body-md h4{font-family:var(--display);font-weight:var(--w-emph);letter-spacing:.01em;font-size:1em;margin:17px 0 6px}.body-md hr{border:none;border-top:1px solid var(--rule);margin:17px 0}.log{display:flex;flex-direction:column;gap:12px}.log-row{border-left:2px solid var(--rule);padding-left:10px;display:flex;align-items:baseline;gap:12px}.log-row>.d{flex:0 0 auto;min-width:108px}.log-row .btn.remove{margin-left:auto;align-self:center}.log-row.completed{border-left-color:var(--good)}.log-row.missed{border-left-color:var(--critical)}.log-row .d{font-family:var(--label);font-size:11px;color:var(--muted)}.log-row.split{align-items:center;justify-content:space-between;gap:10px}.item-main{display:flex;align-items:center;gap:8px;font-size:14px}.quick-add{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}.quick-add input{flex:2 1 160px;min-width:0;font-size:14px;padding:9px 10px;border:1px solid var(--rule);border-radius:var(--r-input);background:var(--board-2);color:var(--ink)}.quick-add select{flex:1 1 150px;min-width:0;font-size:14px;padding:9px 10px;border:1px solid var(--rule);border-radius:var(--r-input);background-color:var(--board-2);color:var(--ink)}.account-row{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.account-row .cur-email{font-family:var(--label);font-size:14.5px}.signout-row{margin-top:24px;padding-top:24px;border-top:1px solid var(--rule);display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}table{border-collapse:collapse;width:100%;font-size:14px}th,td{text-align:left;padding:12px;border-bottom:1px solid var(--rule)}th{font-family:var(--label);font-size:10.5px;text-transform:uppercase;color:var(--muted)}th.num,td.num{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}.scroll-x{overflow-x:auto}@media(max-width:700px){.col-mobile-hide{display:none}}.chat{display:flex;flex-direction:column;gap:10px}.chat textarea{font-family:var(--body);font-size:15px;padding:10px;border:1px solid var(--rule);border-radius:var(--r-input);background:var(--board-2);color:var(--ink);resize:vertical;min-height:74px}.chat .row{display:flex;gap:12px;align-items:center}.btn{font-family:var(--label);font-size:14px;font-weight:var(--w-emph);padding:12px 24px;border:1px solid var(--accent);background:var(--accent);color:var(--on-accent);border-radius:var(--r-button);cursor:pointer}.btn.ghost{background:transparent;border-color:var(--ink);color:var(--ink)}.btn.remove{border-color:var(--rule);background:transparent;color:var(--muted);padding:4px 9px;font-size:15px;line-height:1}.btn.danger{border-color:var(--critical);background:var(--critical);color:var(--on-chip)}.btn:disabled{opacity:.5;cursor:default}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;display:flex;align-items:center;justify-content:center;padding:24px;background:color-mix(in srgb,var(--ink) 55%,transparent)}.modal{width:100%;max-width:420px;margin-top:0;max-height:calc(100vh - 48px);max-height:calc(100dvh - 48px);overflow-y:auto}.modal.wide{max-width:480px}.modal input,.modal select,.modal textarea{width:100%;font-size:15px;padding:10px;border:1px solid var(--rule);border-radius:var(--r-input);background-color:var(--board-2);color:var(--ink);font-family:var(--body)}.modal textarea{resize:vertical;min-height:56px}.modal .row>.field{min-width:148px}.modal input[type=date]{-webkit-appearance:none;-moz-appearance:none;appearance:none;min-width:0;padding-right:6px}.modal input[type=date]::-webkit-date-and-time-value{text-align:left;margin:0}.modal input[type=date]::-webkit-calendar-picker-indicator{margin-left:6px}.modal .eyebrow+h3{margin-top:4px}.field{display:block}.field .eyebrow{display:block;margin-bottom:5px}.field-group>.eyebrow{display:block;margin-bottom:8px}.sub-head{margin-top:14px}.notice{font-size:14px;padding:12px 16px;border-radius:var(--r-inner);background:var(--accent-soft);margin:0}.notice:not(:first-child){margin-top:16px}.lede+.notice,.stack>.notice,.chat>.notice{margin-top:0}.notice.warn{background:color-mix(in srgb,var(--warning) 16%,transparent)}.notice.bad{background:color-mix(in srgb,var(--critical) 16%,transparent)}.day-mark{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 12px}.day-mark p{margin:0;min-width:0}.day-mark .btn{flex:none}.empty{color:var(--muted);font-size:14px;font-style:italic}.reason-list{margin:6px 0 0;padding-left:18px;font-size:14px;color:var(--muted)}.reason-list li{margin:3px 0}.welcome-steps{margin:12px 0 0;padding-left:22px;font-size:15px;line-height:1.5}.welcome-steps li{margin:12px 0}.welcome-steps li+li{border-top:1px solid var(--rule);padding-top:10px}.spinner{width:28px;height:28px;border-radius:50%;border:3px solid var(--rule);border-top-color:var(--ink);animation:spin .9s linear infinite;margin-bottom:12px}@keyframes spin{to{transform:rotate(360deg)}}.board-controls{display:flex;flex-wrap:wrap;gap:12px 16px;align-items:center;margin-bottom:20px}.board-controls input[type=search],.board-controls select{padding:9px 10px;border:1px solid var(--rule);border-radius:var(--r-input);background-color:var(--board-2);color:var(--ink);font-size:15px;font-family:var(--body)}.board-controls input[type=search]{flex:1 1 220px;min-width:0}.check{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--ink-2);white-space:nowrap;cursor:pointer}.board-controls .spacer{flex:1 1 auto}th.actions-col,td.actions-col{width:1%;white-space:nowrap;text-align:right}.row-actions{display:inline-flex;gap:4px;opacity:.28}tr:hover .row-actions,.row-actions:focus-within{opacity:1}@media(hover:none){.row-actions{opacity:1}}.icon-btn.sm{width:26px;height:26px}.icon-btn.sm svg{width:14px;height:14px}.icon-btn.sm.danger:hover{border-color:var(--critical);color:var(--critical)}.rank-row{display:flex;justify-content:space-between;gap:8px;padding:12px 16px;background:var(--board-2);border-radius:var(--r-inner);font-size:14px}.rank-lift{font-weight:500}.rank-detail{font-family:var(--mono);font-size:12px;color:var(--ink-2);text-align:right}.auth{max-width:360px;margin:80px auto}.auth input:not([type=checkbox]):not([type=file]){width:100%;font-size:15px;padding:10px;margin-bottom:8px;border:1px solid var(--rule);border-radius:var(--r-input);background:var(--field);color:var(--ink);font-family:var(--body)}.upload{position:relative;display:inline-flex;align-items:center;gap:8px}.upload input[type=file]{position:absolute;width:1px;height:1px;opacity:0;overflow:hidden;pointer-events:none}.upload:focus-within{outline:2px solid var(--ink);outline-offset:2px}.upload.busy{opacity:.5;cursor:default}details.more>summary{cursor:pointer;list-style:none;font-family:var(--label);font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink)}details.more>summary::-webkit-details-marker{display:none}details.more>summary:before{content:"› "}details.more[open]>summary:before{content:"⌄ "}details.more>.stack{margin-top:12px}.auth.onboard{max-width:640px;margin:48px auto}.onboard select,.onboard textarea{width:100%;font-size:15px;padding:10px;margin-bottom:0;border:1px solid var(--rule);border-radius:var(--r-input);background-color:var(--field);color:var(--ink);font-family:var(--body)}.onboard textarea{min-height:74px;resize:vertical}.onboard label{display:block;font-size:13.5px;color:var(--ink-2);margin-bottom:10px}.onboard label.check{display:flex;margin-bottom:0}.auth.onboard label>input:not([type=checkbox]),.onboard label>select,.onboard label>textarea{margin-top:5px}.auth.onboard input:not([type=checkbox]):not([type=file]){margin-bottom:0}.row{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.auth.onboard .row>label{margin-bottom:0}.auth.onboard .row>input,.auth.onboard .row>select,.auth.onboard .row>.btn,.auth.onboard .row>label>input,.auth.onboard .row>label>select{height:40px}.auth.onboard .row>input{flex:2 1 160px;min-width:0}.auth.onboard .row>select{flex:1 1 150px;min-width:0;width:auto}.steps{display:flex;align-items:flex-start;margin-bottom:14px}.step{display:flex;flex-direction:column;align-items:center;gap:4px;flex:0 0 auto}.step-dot{width:22px;height:22px;padding:0;border-radius:50%;border:1px solid var(--rule);background:var(--board);color:var(--ink-2);font-family:var(--label);font-size:11px;display:flex;align-items:center;justify-content:center;cursor:default}.step-dot:disabled{cursor:default}.step-label{font-family:var(--label);font-size:9px;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}.step.done .step-dot{background:var(--accent-soft);border-color:var(--ink);color:var(--ink);cursor:pointer}.step.current .step-dot{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.step.current .step-label{color:var(--ink)}.step-line{flex:1;height:1px;background:var(--rule);margin:10px 4px 0}.level-picker{display:flex;flex-direction:column;gap:8px}.level-option{display:flex;align-items:baseline;gap:10px;padding:16px 20px;border:1px solid var(--rule);border-radius:var(--r-inner);background:var(--board);cursor:pointer;text-align:left;font-family:var(--body)}.level-option.sel{border-color:var(--ink);background:var(--accent-soft)}.level-name{font-family:var(--label);font-size:13px;color:var(--ink-2);flex:0 0 176px}.level-option.sel .level-name{color:var(--ink);font-weight:500}.level-blurb{font-size:13px;color:var(--muted)}.level-option.sel .level-blurb{color:var(--ink-2)}@media(max-width:620px){.level-option{flex-direction:column;gap:2px}.level-name{flex:none}.fam-head{flex-direction:column;align-items:flex-start;gap:2px}.fam-decides{text-align:left}}.fam-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:8px}.fam-name{font-family:var(--display);font-size:16px;font-weight:var(--w-emph);text-transform:uppercase;letter-spacing:.02em}.fam-decides{font-family:var(--label);font-size:10px;color:var(--muted);text-align:right}.fam-q{font-size:13.5px;color:var(--ink-2);margin:0 0 8px}.chip-row{display:flex;flex-wrap:wrap;gap:8px}.rung{font-family:var(--label);font-size:12px;display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:8px 16px;border:1px solid var(--rule);background:var(--board);color:var(--ink-2);border-radius:var(--r-pill);cursor:pointer}.rung:hover:not(.sel){border-color:var(--stroke)}.rung.sel{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.chip-row.tabs .rung{padding:8px 12px}.chip-row.tabs .rung-val{margin-left:6px}.rung.ans:not(.sel){border-color:var(--ink);color:var(--ink)}.rung-val{display:inline-block;margin-left:7px;font-size:10px;letter-spacing:.02em;color:var(--muted)}.rung.sel .rung-val{color:var(--on-accent);opacity:.7}.rung.none{border-style:dashed;background:transparent;color:var(--muted)}.rung.none.sel{border-style:solid;background:var(--accent);color:var(--on-accent)}.bucket{font-family:var(--label);font-size:11px;display:inline-flex;align-items:center;justify-content:center;min-height:32px;padding:6px 14px;border:1px solid var(--rule);background:var(--board);color:var(--ink-2);border-radius:var(--r-pill);cursor:pointer}.bucket:hover:not(.sel){border-color:var(--stroke)}.bucket.sel{background:var(--accent-soft);border-color:var(--ink);color:var(--ink);font-weight:500}.bucket.not-yet{border-style:dashed;background:transparent;color:var(--muted)}.bucket.not-yet.sel{border-style:solid;background:var(--accent-soft);border-color:var(--ink);color:var(--ink)}.followup{margin-top:16px;padding-left:12px;border-left:2px solid var(--rule);display:flex;flex-direction:column;gap:5px}.fu-label{font-family:var(--label);font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.profile label{display:block;font-size:13.5px;color:var(--ink-2);margin-bottom:10px}.profile input:not([type=checkbox]),.profile select{display:block;width:100%;font-size:15px;padding:10px;margin-top:5px;border:1px solid var(--rule);border-radius:var(--r-input);background-color:var(--board-2);color:var(--ink);font-family:var(--body)}.profile .row>label{margin-bottom:0}.profile .row>input,.profile .row>select,.profile .row>.btn{margin-top:0;height:40px}.pair{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px 16px;align-items:start}.pair label{margin-bottom:0}.pair .edit-link{display:inline-block;margin-top:6px}.profile .pair{margin-top:16px}.home-toggle{display:flex;align-items:center;gap:8px;margin:14px 0 4px}.profile label.home-toggle{display:flex}.admin label{font-size:13.5px;color:var(--ink-2)}.admin input:not([type=checkbox]),.admin select{font-size:14px;padding:8px 10px;border:1px solid var(--rule);border-radius:var(--r-input);background-color:var(--board-2);color:var(--ink)}.admin label>input:not([type=checkbox]),.admin label>select{display:block;margin-top:4px}.admin .row>input{flex:1 1 200px;min-width:0}.admin .brief{width:100%;font-family:var(--mono);font-size:13px;padding:10px;border:1px solid var(--rule);border-radius:var(--r-input);background:var(--board-2);color:var(--ink)}.admin .prompt{white-space:pre-wrap;font-family:var(--mono);font-size:12px;background:var(--board);border:1px solid var(--rule);border-radius:var(--r-input);padding:12px}.admin .log-row.pick{cursor:pointer}.admin .log,.admin details{margin-top:10px}.admin details>.stack{margin-top:10px}.admin .exclude{margin-top:8px;width:100%}.admin .week-head{margin-top:40px;padding-top:20px;border-top:2px solid var(--stroke)}.admin .week-head h2,.admin .week-head .lede{margin:0}.switch.mode{margin-bottom:10px;flex-wrap:wrap}.decision-mast{padding-top:40px}.day-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}.day-cell{display:flex;flex-direction:column;align-items:center;gap:4px}.day-cell>label:first-child{font-family:var(--label);font-size:10.5px;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);text-align:center;width:100%}.day-cell label{margin-bottom:0}.day-cell select{background-position:right 5px center;background-size:10px;margin-top:4px;margin-bottom:0;padding:8px 4px;text-align:center;font-family:var(--body);text-transform:none;letter-spacing:normal}.day-cell select:disabled{opacity:.5}.day-cell .check{font-size:10.5px;justify-content:center}@media(max-width:560px){.day-grid{grid-template-columns:repeat(4,1fr)}}.field-group{margin-top:24px;padding-top:24px;border-top:1px solid var(--rule)}.field-group:first-child{margin-top:0;padding-top:0;border-top:0}.edit-link{font-family:var(--label);font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink);background:none;border:0;padding:0;cursor:pointer}:focus-visible{outline:2px solid var(--ink);outline-offset:2px}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}.rotate-notice{display:none}@media(orientation:landscape)and (hover:none)and (pointer:coarse){#root{display:none}.rotate-notice{display:flex;position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;align-items:center;justify-content:center;padding:32px;text-align:center;background:var(--ground);color:var(--ink);font-family:var(--body);font-size:16px}}.maxes-step .field-group{border-top:0}.max-row{display:flex;align-items:center;gap:12px;padding:12px 0;border-top:1px solid var(--rule)}.max-row:last-of-type{border-bottom:1px solid var(--rule)}.max-label{flex:1;font-size:14.5px;min-width:0}.auth.onboard input.max-val{width:96px;flex:none;margin-bottom:0;text-align:right;font-family:var(--mono)}.auth.onboard input.max-val.set{border-color:var(--ink)}.max-prov{font-family:var(--label);font-size:10px;letter-spacing:.02em;color:var(--muted)}.max-unit{font-family:var(--mono);font-size:11px;color:var(--muted);width:20px}.beat{display:block;border-left:2px solid var(--rule);padding:2px 0 2px 12px;margin-bottom:12px}.beats{padding-bottom:12px}.beat-name{display:block;font-size:14.5px;font-weight:var(--w-emph)}.beat-blurb{display:block;font-size:13px;color:var(--ink-2);line-height:1.55}.accent-note{border-left:3px solid var(--accent);border-top:0;padding-left:12px;padding-top:12px;margin-bottom:24px}.accent-note .eyebrow{color:var(--ink);margin-bottom:5px}.settings-tabs{margin-top:16px}.card-form{display:flex;flex-direction:column;gap:12px}.billing-notice{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.cols>.stack>.billing-notice:first-child{margin-top:24px}.paywall{max-width:560px}.danger-zone{border-color:color-mix(in srgb,var(--critical) 45%,var(--rule))}.danger-zone input{max-width:220px}.danger-zone .row{align-items:flex-end}.danger-zone .row>label{flex:0 0 220px}.daybar select,.quick-add select,.modal select,.board-controls select,.onboard select,.profile select,.admin select{padding-right:34px}.day-cell select{padding-right:18px}
