:root{--accent: #2196f3;--accent-hover: #1976d2;--bg: #f5f5f4;--text: #2d3333;--card: #ffffff;--border: #d0d6d5;--bg-dark: #1d3024;--text-dark: #ececea;--card-dark: #243d2f;--border-dark: #385444;--radius: 6px;--gap: .75rem;--gap-sm: .5rem}*,*:before,*:after{box-sizing:border-box}body{margin:0;padding:2rem 1rem;font-family:system-ui,-apple-system,Segoe UI,Helvetica,Arial,sans-serif;line-height:1.55;background:var(--bg);color:var(--text);color-scheme:light dark;transition:background .3s ease,color .3s ease}@media (prefers-color-scheme: dark){body{background:var(--bg-dark);color:var(--text-dark)}}h1{margin:0 0 1.25rem;font-size:1.75rem;font-weight:600;text-align:center}#chart{max-width:880px;height:420px;margin:0 auto 2rem}.journal-form{max-width:880px;margin:0 auto;display:flex;flex-direction:column;gap:var(--gap);background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:1.25rem}@media (prefers-color-scheme: dark){.journal-form{background:var(--card-dark);border-color:var(--border-dark)}}.ml-half{margin-left:var(--gap-sm)}.row{display:flex;flex-wrap:wrap;gap:var(--gap-sm);align-items:center}label{display:flex;flex-direction:column;font-size:.9rem;gap:.25rem}input,select,textarea{font:inherit;padding:.45rem .55rem;border:1px solid var(--border);border-radius:var(--radius);background:inherit;color:inherit;transition:border-color .2s ease}input:focus,textarea:focus{outline:none;border-color:var(--accent)}@media (prefers-color-scheme: dark){input,select,textarea{border-color:var(--border-dark)}}textarea{resize:vertical;min-height:4rem;width:100%}button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;cursor:pointer;padding:.55rem 1.1rem;font:inherit;font-weight:500;border-radius:var(--radius);background:var(--accent);color:#fff;transition:background .2s ease}button:hover,button:focus-visible{background:var(--accent-hover)}#entries{list-style:none;padding:0;margin:0}#entries li{display:flex;justify-content:space-between;align-items:center;gap:var(--gap-sm);padding:.4rem .65rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--card);font-size:.88rem}#entries li button{flex-shrink:0;padding:.3rem .65rem;font-size:.75rem}@media (prefers-color-scheme: dark){#entries li{background:var(--card-dark);border-color:var(--border-dark)}}#summaryOutput{width:100%;font-family:ui-monospace,SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;white-space:pre}
