html,body,#root{margin:0;min-height:100%}body{background:var(--ds-page)}.file-nav{display:flex;flex-wrap:wrap;gap:20px;border-bottom:1px solid var(--ds-hairline)}.file-nav a{padding:10px 0;color:var(--ds-ink-2);text-decoration:none}.file-nav a[aria-current=page]{color:var(--ds-ink);box-shadow:inset 0 -1px 0 var(--ds-ink)}@media (max-width: 600px){.file-nav a{display:inline-flex;align-items:center;min-height:44px}}.app{text-align:right}.tabs{display:flex;gap:8px;margin:12px 0}.tabs button{flex:1;min-height:44px;border:1px solid var(--ds-hairline);background:var(--ds-page);color:var(--ds-ink-2);border-radius:4px;font:inherit;cursor:pointer}.tabs button.on{background:var(--ds-ink);color:#fff;border-color:var(--ds-ink)}.day-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px;flex-wrap:wrap}.day-title{font-family:var(--ds-display, inherit);font-weight:400;font-size:21px;margin:16px 0 8px}.link{background:none;border:0;color:var(--ds-ink-2);text-decoration:underline;font:inherit;min-height:44px;cursor:pointer}.block{border-top:1px solid var(--ds-hairline);padding:16px 0}.block-head{display:flex;justify-content:space-between;gap:12px;margin-bottom:10px}.block-title{font-weight:600}.block-val{color:var(--ds-ink-2)}.levels,.counts{display:grid;grid-template-columns:repeat(5,1fr);gap:6px}.counts{grid-template-columns:repeat(6,1fr)}.lv{min-height:44px;border:1px solid var(--ds-hairline);background:var(--ds-page);border-radius:4px;font:inherit;color:var(--ds-ink);cursor:pointer;padding:0 2px}.lv.on{background:var(--ds-teal);border-color:var(--ds-teal);color:#fff;font-weight:600}.lv.none{grid-column:span 5}.scale{display:flex;justify-content:space-between;color:var(--ds-ink-2);font-size:12px;margin-top:6px}.bm{margin-top:14px}.bm-title{font-weight:600;margin-bottom:8px}.types{display:grid;grid-template-columns:1fr;gap:6px}.type{display:grid;grid-template-columns:52px 22px 1fr 54px;grid-template-areas:"s n name tg" "s n note tg";column-gap:8px;align-items:center;text-align:right;border:1px solid var(--ds-hairline);background:var(--ds-page);border-radius:4px;padding:8px 10px;font:inherit;color:var(--ds-ink);cursor:pointer;min-height:48px}.type .shape{grid-area:s;fill:var(--ds-ink-2)}.type .shape .cut{stroke:var(--ds-page);stroke-width:2;fill:none}.type-n{grid-area:n;color:var(--ds-ink-2)}.type-name{grid-area:name;font-weight:600}.type-note{grid-area:note;color:var(--ds-ink-2);font-size:12px;line-height:18px}.type.on{border-color:var(--ds-teal);box-shadow:inset 0 0 0 2px var(--ds-teal)}.type.on .shape{fill:var(--ds-teal)}.hint{color:var(--ds-ink-2);font-size:12px;line-height:20px;margin:10px 0 0}.cal{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;margin-top:8px}.cal-h{text-align:center;color:var(--ds-ink-2);font-size:12px;padding:4px 0}.cell{aspect-ratio:1;min-height:44px;border:1px solid var(--ds-hairline);background:var(--ds-page);border-radius:4px;display:flex;flex-direction:column;align-items:center;justify-content:space-between;padding:4px 0;font:inherit;color:var(--ds-ink);cursor:pointer}.cell.today{border-color:var(--ds-ink);box-shadow:inset 0 0 0 1px var(--ds-ink)}.cell.future{color:var(--ds-ink-4);cursor:default}.cell-n{font-size:13px;line-height:16px}.dots{display:flex;gap:3px;align-items:center;min-height:14px}.d{display:inline-block;width:8px;height:8px;border-radius:50%}.d.pain,.bar.pain{background:#c25b4e}.d.bloat,.bar.bloat{background:#d3a23c}.d.bm{background:var(--ds-teal)}.d.bm.no{background:transparent;box-shadow:inset 0 0 0 1.5px var(--ds-ink-4)}.legend{display:flex;flex-wrap:wrap;gap:6px 16px;margin-top:12px;color:var(--ds-ink-2);font-size:12px}.legend span{display:inline-flex;align-items:center;gap:6px}.stats{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:8px 0 16px}.stat{border:1px solid var(--ds-hairline);border-radius:4px;padding:12px;display:flex;flex-direction:column;gap:2px}.stat b{font-size:24px;font-weight:600}.stat span{color:var(--ds-ink-2);font-size:12px}.chart{display:flex;gap:3px;align-items:flex-end;height:140px;border-bottom:1px solid var(--ds-hairline);padding-top:8px}.col{flex:1;height:100%;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;font-size:10px;color:var(--ds-ink-2)}.bars{flex:1;width:100%;display:flex;gap:1px;align-items:flex-end}.bar{flex:1;display:block;min-height:0;border-radius:2px 2px 0 0}.ai{border:1px solid var(--ds-hairline);border-radius:4px;padding:12px 14px;margin-top:16px}.ai p{margin:6px 0 0}.ai-tag{font-weight:600;color:var(--ds-ink-2);font-size:12px}.wrow{display:flex;flex-direction:column;gap:2px;padding:10px 0;border-top:1px solid var(--ds-hairline)}.wrow:first-child{border-top:0}.wday{font-weight:600}.wval{display:flex;flex-wrap:wrap;gap:2px 14px;color:var(--ds-ink-2)}.wval.muted{color:var(--ds-ink-4)}.logo{display:block;margin:8px auto 12px;width:150px;height:auto}.tabs button.on{background:#266f9e;border-color:#266f9e}.lv.on{background:#2f8f43;border-color:#2f8f43}.type.on{border-color:#2f8f43;box-shadow:inset 0 0 0 2px #2f8f43}.type.on .shape{fill:#2f8f43}.levels{grid-template-columns:repeat(6,1fr)}.d.ok{background:transparent;box-shadow:inset 0 0 0 1.5px #2f8f43}.tagline{text-align:center;margin:0 0 12px;font-weight:600;color:var(--ds-ink);text-wrap:balance}.type .shape{grid-area:s;width:52px;height:40px;object-fit:contain;fill:none}.type .shape6{grid-area:s;width:52px;height:40px;fill:var(--ds-ink-2)}.type.on .shape6{fill:#2f8f43}.type .shape6{fill:#6d3909;stroke:#4a2606;stroke-width:1.5}.type.on .shape6{fill:#6d3909}.type-tag{grid-area:tg;font-size:12px;font-weight:700;line-height:15px;text-align:center;transform:rotate(-8deg)}.tag1{color:#c0394b}.tag2{color:#d9803c}.tag3{color:#a255c4}.tag4{color:#23915a}.tag5{color:#3c9a96}.tag6{color:#22799f}.tag7{color:#7a4a1a}.wbm{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:8px}.wbm-i{display:flex;flex-direction:column;align-items:center;text-align:center;gap:2px;border:1px solid var(--ds-hairline);border-radius:4px;padding:6px 4px}.wbm-i .shape,.wbm-i .shape6{width:52px;height:40px;object-fit:contain}.wbm-n{font-weight:600;color:var(--ds-ink);font-size:13px}.wbm-d{font-size:12px;line-height:16px;color:var(--ds-ink-2)}.pick{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:12px 0 0;font-weight:600}.pick select{font:inherit;min-height:44px;border:1px solid var(--ds-hairline);background:var(--ds-page);color:var(--ds-ink);border-radius:4px;padding:0 10px}svg.shape6,.wbm-i .shape6,.type .shape6,.type.on .shape6{fill:#6d3909;stroke:#4a2606;stroke-width:1.5}:root{--ds-page: #fbfaf8;--ds-ink: #1f1d1b;--ds-ink-2: #5a5550;--ds-ink-4: #a39e98;--ds-hairline: #ddd8d1;--ds-teal: #2b6f9e}body{font-family:system-ui,-apple-system,Segoe UI,Arial,sans-serif;color:var(--ds-ink);line-height:1.5}.page{max-width:560px;margin:0 auto;padding:16px}.h1{font-family:Georgia,serif;font-weight:400;font-size:32px;margin:16px 0 4px}.intro{color:var(--ds-ink-2);margin:0 0 12px}.warn{background:#fdecea;border:1px solid #e0a8a0;border-radius:6px;padding:12px;margin:8px 0}.primary{width:100%;min-height:48px;border:0;border-radius:4px;background:var(--ds-teal);color:#fff;font:inherit;font-weight:600;cursor:pointer;margin-top:12px}.primary:disabled{background:var(--ds-ink-4);cursor:not-allowed}.monthnav{display:flex;justify-content:space-between;align-items:center;gap:8px}.tools{margin-top:24px;border-top:1px solid var(--ds-hairline);padding-top:12px}.tools summary{cursor:pointer;min-height:44px;display:flex;align-items:center;font-weight:600}.toolrow{display:flex;flex-wrap:wrap;gap:16px}.closing{color:var(--ds-ink-2);font-size:14px;margin-top:24px}.counts{grid-template-columns:repeat(5,1fr)}.counts .lv:last-child{grid-column:span 5}.stepper{display:flex;align-items:center;justify-content:center;gap:16px;margin-top:8px}.stepper .lv{width:56px}.stepn{font-size:22px;font-weight:600;min-width:36px;text-align:center}.gate{border:1px solid var(--ds-hairline);border-radius:6px;padding:8px 16px 16px;margin:12px 0}.gate-list{padding-inline-start:20px;margin:8px 0 12px}.gate-list li{margin-bottom:10px}
