:root{color-scheme:light dark;--bg: #fdfdfc;--card: #ffffff;--text: #1c1c1e;--muted: #6b6b68;--accent: #2f6f5f;--accent-soft: #e4efec;--danger: #b3261e;--border: #d9d9d4;--shadow: 0 1px 4px rgba(0, 0, 0, .08)}@media(prefers-color-scheme:dark){:root{--bg: #151517;--card: #202024;--text: #e8e8e6;--muted: #9b9b98;--accent: #6fbfa8;--accent-soft: #22332e;--border: #3a3a3e;--shadow: none}}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{margin:0}body{font-family:-apple-system,Hiragino Sans,Hiragino Kaku Gothic ProN,sans-serif;background:var(--bg);color:var(--text);font-size:16px;line-height:1.7}#app{max-width:34rem;margin:0 auto;padding:0 1rem calc(5.5rem + env(safe-area-inset-bottom))}header.app-header{padding:1rem 0 .4rem;display:flex;align-items:baseline;justify-content:space-between}header.app-header h1{font-size:1.15rem;margin:0;color:var(--accent)}header.app-header .sub{font-size:.75rem;color:var(--muted)}.card{background:var(--card);border:1px solid var(--border);border-radius:14px;padding:1rem;margin:.8rem 0;box-shadow:var(--shadow)}.card h2{font-size:1rem;margin:0 0 .6rem}.muted{color:var(--muted);font-size:.85rem}.small{font-size:.8rem}button.big-record{display:block;width:100%;padding:1.4rem 1rem;font-size:1.3rem;font-weight:700;color:#fff;background:var(--accent);border:none;border-radius:16px;cursor:pointer;margin:.8rem 0}button.big-record:active{opacity:.85}button.primary,button.secondary,button.ghost{font-size:1rem;padding:.7rem 1.1rem;border-radius:12px;cursor:pointer;min-height:48px}button.primary{background:var(--accent);color:#fff;border:none}button.secondary{background:var(--accent-soft);color:var(--accent);border:none}button.ghost{background:none;color:var(--muted);border:1px solid var(--border)}button:disabled{opacity:.5}.btn-row{display:flex;gap:.6rem;flex-wrap:wrap;margin-top:.6rem}.btn-row>button{flex:1}.chips{display:flex;flex-wrap:wrap;gap:.5rem}.chip{border:1.5px solid var(--border);background:var(--card);color:var(--text);border-radius:999px;padding:.45rem .9rem;font-size:.9rem;cursor:pointer;min-height:40px}.chip.on{border-color:var(--accent);background:var(--accent-soft);color:var(--accent);font-weight:600}.scale{display:flex;gap:4px}.scale button{flex:1;min-width:0;min-height:44px;border:1px solid var(--border);background:var(--card);color:var(--text);border-radius:8px;font-size:.9rem;cursor:pointer;padding:0}.scale button.on{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:700}.scale-labels{display:flex;justify-content:space-between;font-size:.72rem;color:var(--muted);margin-top:2px}input[type=range]{width:100%;accent-color:var(--accent)}input[type=text],input[type=number],textarea{width:100%;font-size:1rem;padding:.6rem;border:1px solid var(--border);border-radius:10px;background:var(--card);color:var(--text);font-family:inherit}textarea{resize:vertical}label.field{display:block;margin:.9rem 0 .3rem;font-weight:600;font-size:.92rem}label.field .opt{font-weight:400;color:var(--muted);font-size:.8rem}.entry{display:flex;gap:.7rem;align-items:flex-start;padding:.7rem 0;border-bottom:1px solid var(--border)}.entry:last-child{border-bottom:none}.entry .when{min-width:4.6rem;font-size:.8rem;color:var(--muted)}.entry .body{flex:1;font-size:.9rem}.badge{display:inline-block;font-size:.72rem;padding:.1rem .55rem;border-radius:999px;background:var(--accent-soft);color:var(--accent);margin-left:.4rem}.badge.todo{background:#fbeeda;color:#9a6b15}@media(prefers-color-scheme:dark){.badge.todo{background:#3a3020;color:#d5a021}}.badge.edit{background:#fff;color:#555;border:1px solid #c8c8c4}nav.tabbar{position:fixed;bottom:0;left:0;right:0;display:flex;justify-content:space-around;background:var(--card);border-top:1px solid var(--border);padding:.4rem 0 calc(.4rem + env(safe-area-inset-bottom))}nav.tabbar button{background:none;border:none;color:var(--muted);font-size:.78rem;cursor:pointer;padding:.3rem 1.2rem;display:flex;flex-direction:column;align-items:center;gap:2px}nav.tabbar button.on{color:var(--accent);font-weight:700}nav.tabbar .icon{font-size:1.25rem;line-height:1}.section-note{font-size:.8rem;color:var(--muted);background:var(--accent-soft);border-radius:10px;padding:.6rem .8rem;margin:.6rem 0}.toast{position:fixed;left:50%;transform:translate(-50%);bottom:calc(6rem + env(safe-area-inset-bottom));background:var(--text);color:var(--bg);padding:.6rem 1.2rem;border-radius:999px;font-size:.9rem;z-index:10;opacity:.95}.chart{width:100%;height:auto;display:block}.chart .grid{stroke:var(--border);stroke-width:1}.chart .bar,.chart .dot{fill:var(--accent)}.chart .trend-line{fill:none;stroke:var(--accent);stroke-width:2;opacity:.55}.chart .slope-line{stroke:var(--border);stroke-width:2}.chart .dot-before{fill:#9ec7bb}.chart .dot-after{fill:var(--accent)}.chart .axis-label{font-size:10px;fill:var(--muted)}.chart .value-label{font-size:11px;font-weight:700;fill:var(--text)}@media(prefers-color-scheme:dark){.chart .dot-before{fill:#3d5f55}}.stat-row{display:flex;gap:.6rem;margin-bottom:.6rem}.stat-tile{flex:1;text-align:center;padding:.7rem .4rem;background:var(--accent-soft);border-radius:12px}.stat-num{font-size:1.7rem;font-weight:800;color:var(--accent);line-height:1.2}.stat-label{font-size:.8rem;color:var(--muted)}.accordion{padding:0;overflow:hidden}.accordion-head{display:flex;justify-content:space-between;align-items:center;width:100%;padding:.9rem 1rem;min-height:48px;background:none;border:none;color:var(--text);font-size:.95rem;font-weight:700;cursor:pointer;text-align:left}.accordion-mark{color:var(--accent);font-size:1.2rem}.accordion-body{padding:0 1rem .9rem}.accordion-body p{margin:.5em 0;font-size:.9rem}.export-item{margin-bottom:.9rem}.export-label{margin:0 0 .35rem}.sheet{background:#fff;color:#000;border:1px solid var(--border);border-radius:8px;padding:.8rem;margin:.8rem 0;overflow-x:auto}.sheet-title{font-size:1.05rem;margin:0 0 .3rem}.sheet-meta{font-size:.8rem;margin:0 0 .5rem}.sheet-note{font-size:.68rem;color:#555}.sheet-table{border-collapse:collapse;width:100%;font-size:.68rem}.sheet-table th,.sheet-table td{border:1px solid #888;padding:3px 4px;vertical-align:top;text-align:left}.sheet-table th{background:#f0f0ec;font-weight:700}.sheet-center{text-align:center}.sheet-none{color:#777}.sheet-daily{font-size:.62rem;color:#555;margin-top:2px}@media(prefers-color-scheme:dark){.sheet{border-color:#555}}@media print{body{background:#fff}#app{max-width:none;padding:0}.no-print,nav.tabbar,header.app-header,.toast{display:none!important}.sheet{border:none;padding:0;margin:0;overflow:visible}.sheet-table{font-size:8pt}@page{size:A4 landscape;margin:12mm}}
