:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#2b1d14;--panel:#3a281c;--panel-2:#33231a;--line:#54402f;--text:#f5ede4;--muted:#c2ad98;--accent:#d9a45b;--accent-text:#2b1d14;--good:#9cc37a;--warn:#e39b6b;--tap:44px;background:var(--bg);color:var(--text);font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif;font-size:15px;line-height:1.45}*{box-sizing:border-box}html,body,#root{background:var(--bg);min-height:100%;margin:0}button,input{font:inherit;color:inherit}button{cursor:pointer}button:disabled{cursor:default;opacity:.4}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}a{color:var(--accent)}p{margin:0}h2,h3{margin:0;font-weight:650}h2{font-size:19px}h3{font-size:15px}.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}.app{max-width:760px;padding:calc(16px + env(safe-area-inset-top)) 16px calc(88px + env(safe-area-inset-bottom));margin:0 auto}.top{margin-bottom:18px}.brand{letter-spacing:.08em;text-transform:uppercase;color:var(--accent);font-size:12px}.top h1{margin:2px 0 0;font-size:24px;line-height:1.15}.stack{flex-direction:column;gap:22px;display:flex}.stack.tight{gap:10px}.muted{color:var(--muted);font-size:13px}.small{font-size:12px}.italic{font-style:italic}.label{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin:6px 0 2px;font-size:11px}.panel{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:12px 14px}.section-head{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.link-button{color:var(--accent);background:0 0;border:0;padding:4px 0;font-size:13px}.field-row{flex-wrap:wrap;gap:12px;display:flex}.field-row.end{align-items:flex-end}.field{flex-direction:column;flex:140px;gap:4px;max-width:200px;display:flex}.field.compact{flex:0 0 96px}.field label{color:var(--muted);font-size:12px}.field input{min-height:var(--tap);background:var(--panel-2);border:1px solid var(--line);border-radius:8px;padding:0 10px;font-size:16px}.field input[aria-invalid=true]{border-color:var(--warn)}.stats{grid-template-columns:repeat(auto-fit,minmax(128px,1fr));gap:8px;display:grid}.stat{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:10px 12px}.stat strong{font-size:20px;font-weight:650;display:block}.stat span{color:var(--muted);margin-top:2px;font-size:12px;display:block}.stat.primary strong{color:var(--accent)}.stat.warn strong{color:var(--warn)}.callout{background:var(--panel);border:1px solid var(--line);border-left:3px solid var(--accent);border-radius:6px;padding:12px}.callout.warn{border-left-color:var(--warn)}.callout h2,.callout h3{margin-bottom:4px;font-size:15px}.callout p{color:var(--muted);font-size:13px}.chip-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.chip{border:1px solid var(--line);background:var(--panel);border-radius:999px;min-height:36px;padding:0 14px}.chip.small{min-height:32px;padding:0 10px;font-size:13px}.chip.active{background:var(--accent);border-color:var(--accent);color:var(--accent-text)}.chip:not(.active):active{background:var(--line)}.tag{background:var(--accent);color:var(--accent-text);border-radius:999px;padding:2px 8px;font-size:12px}.tab-bar{border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom);background:#22170f;grid-template-columns:repeat(4,minmax(0,1fr));display:grid;position:fixed;bottom:0;left:0;right:0}.tab{min-height:52px;color:var(--muted);background:0 0;border:0;font-size:13px}.tab.active{color:var(--accent);font-weight:600}.day-stepper{grid-template-columns:52px 1fr 52px;gap:8px;display:grid}.step{min-height:var(--tap);border:1px solid var(--line);background:var(--panel);border-radius:8px;font-size:22px}.day-now{background:var(--panel);border:1px solid var(--line);text-align:center;border-radius:8px;padding:6px 10px}.day-now strong,.day-now span{display:block}.day-now span{color:var(--muted);font-size:12px}.habit-group+.habit-group{margin-top:6px}.check-row{min-height:var(--tap);border-bottom:1px solid var(--line);align-items:center;gap:10px;display:flex}.habit-group .check-row:last-child,.panel>div>.check-row:last-child{border-bottom:0}.check-row input{width:22px;height:22px;accent-color:var(--accent);flex:none}.check-label{flex:auto}.qty{color:var(--muted);text-align:right;font-size:12px}.meter-row{flex-direction:column;gap:4px;display:flex}.meter-labels{justify-content:space-between;gap:8px;font-size:13px;display:flex}.meter-labels span:last-child{color:var(--muted)}.meter{appearance:none;background:var(--panel-2);border:0;border-radius:999px;width:100%;height:10px;overflow:hidden}.meter::-webkit-progress-bar{background:var(--panel-2);border-radius:999px}.meter::-webkit-progress-value{background:var(--accent);border-radius:999px}.meter::-moz-progress-bar{background:var(--accent);border-radius:999px}.meter.fiber::-webkit-progress-value{background:var(--good)}.meter.fiber::-moz-progress-bar{background:var(--good)}.table-scroll{border:1px solid var(--line);border-radius:10px;overflow-x:auto}.grid-table{border-collapse:collapse;width:100%;font-size:13px}.grid-table th,.grid-table td{border-bottom:1px solid var(--line);text-align:center;white-space:nowrap;padding:7px 6px}.grid-table tbody tr:last-child th,.grid-table tbody tr:last-child td{border-bottom:0}.grid-table thead th{color:var(--muted);font-size:12px;font-weight:500;line-height:1.2}.grid-table tbody th{text-align:left;padding-left:10px;font-weight:500}.grid-table td.done{color:var(--accent);font-weight:700}.grid-table td.none{color:var(--line)}.recipe-card{background:var(--panel);border:1px solid var(--line);border-radius:10px}.recipe-card summary{cursor:pointer;min-height:var(--tap);flex-direction:column;gap:2px;padding:12px 14px;list-style:none;display:flex}.recipe-card summary::-webkit-details-marker{display:none}.recipe-name{font-weight:600}.recipe-name:before{content:"›";width:14px;color:var(--accent);transition:transform .15s;display:inline-block}.recipe-card[open] .recipe-name:before{transform:rotate(90deg)}.recipe-macros{color:var(--muted);padding-left:14px;font-size:12px}.recipe-body{border-top:1px solid var(--line);padding:10px 14px 14px}.recipe-block h3{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin:4px 0;font-size:11px}.bullets{color:var(--muted);margin:0;padding-left:1.2em;font-size:14px}.bullets li{margin:3px 0}.cook-list{border:1px solid var(--line);border-radius:10px;margin:0;padding:0;list-style:none}.cook-list li{border-bottom:1px solid var(--line);grid-template-columns:44px 1fr;gap:8px;padding:9px 12px;font-size:14px;display:grid}.cook-list li:last-child{border-bottom:0}.time{color:var(--accent);font-variant-numeric:tabular-nums}.playbook{flex-direction:column;gap:8px;margin:0;display:flex}.play{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:10px 12px}.play dt{font-weight:600}.play dd{color:var(--muted);margin:4px 0 0;font-size:13px}.play dd.how{color:var(--text)}.week-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.week{background:var(--panel);border:1px solid var(--line);border-radius:10px;flex-direction:column;gap:6px;padding:10px 12px;display:flex}.week.current{border-color:var(--accent)}.week.current strong{color:var(--accent)}.week-head{flex-wrap:wrap;justify-content:space-between;gap:4px 10px;display:flex}.week p{font-size:14px}.chart{background:var(--panel);border:1px solid var(--line);border-radius:10px;margin:0;padding:10px 8px 4px}.chart figcaption{padding:0 6px 4px;font-size:13px;font-weight:600}.chart svg{width:100%;height:auto;display:block}.chart .grid{stroke:var(--line);stroke-width:1px}.chart .goal{stroke:var(--good);stroke-width:1.5px;stroke-dasharray:5 4}.chart .goal-label{fill:var(--good);font-size:11px}.chart .line{fill:none;stroke:var(--accent);stroke-width:2.5px;stroke-linejoin:round;stroke-linecap:round}.chart .dot{fill:var(--accent)}.chart .axis,.chart .axis-title{fill:var(--muted);font-size:11px}@media (width>=640px){.playbook{grid-template-columns:1fr 1fr;display:grid}}
