:root{--bg:#fbf8f4;--text:#3a342e;--muted:#8a8178;--line:#ebe4db;--accent:#a34743;--accent-soft:#fbe5e1;--accent-strong:#f39a8e;--on-accent:#442b2b;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;font-family:-apple-system,BlinkMacSystemFont,Hiragino Sans,Hiragino Kaku Gothic ProN,Noto Sans JP,sans-serif}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--bg:#1c1a18;--text:#ece6de;--muted:#9b9288;--line:#332f2b;--accent:#f5aa9f;--accent-soft:#422c2b;--accent-strong:#f39a8e;--on-accent:#442b2b}}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--text);margin:0}#root{min-height:100dvh}button{font:inherit;color:inherit}.visually-hidden{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:480px;padding:max(16px, env(safe-area-inset-top)) max(12px, env(safe-area-inset-right)) calc(88px + env(safe-area-inset-bottom)) max(12px, env(safe-area-inset-left));margin:0 auto}.month-header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.month-header__title{letter-spacing:.04em;margin:0;font-size:1.25rem;font-weight:600}.month-header__button{width:44px;height:44px;color:var(--muted);cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;border-radius:50%;font-size:1.75rem;line-height:1}.month-header__button:active{background:var(--accent-soft)}.calendar{border-collapse:collapse;table-layout:fixed;width:100%}.calendar th{color:var(--muted);padding:8px 0;font-size:.75rem;font-weight:400}.calendar td{border-top:1px solid var(--line);text-align:center;vertical-align:top;height:84px;padding:4px}.day__number{border-radius:999px;justify-content:center;align-items:center;min-width:1.75rem;height:1.75rem;font-size:.875rem;display:inline-flex}.day__number--today{background:var(--accent-soft);color:var(--accent);font-weight:600}.capture-button{bottom:max(16px, env(safe-area-inset-bottom));background:var(--accent-strong);min-height:48px;color:var(--on-accent);cursor:pointer;-webkit-tap-highlight-color:transparent;border:0;border-radius:999px;padding:0 24px;font-size:1rem;font-weight:600;position:fixed;left:50%;transform:translate(-50%);box-shadow:0 4px 14px #00000026}.capture__header{grid-template-columns:72px 1fr 72px;align-items:center;margin-bottom:8px;display:grid}.capture__title{text-align:center;letter-spacing:.04em;margin:0;font-size:1.25rem;font-weight:600}.text-button{min-height:44px;color:var(--muted);cursor:pointer;background:0 0;border:0;justify-self:start;padding:0 4px}.field{margin-bottom:20px;display:block}.field__label{color:var(--muted);margin-bottom:6px;font-size:.8125rem;display:block}.capture input[type=text],.capture input[type=date],.capture textarea{border:1px solid var(--line);width:100%;min-height:44px;color:inherit;font:inherit;background:0 0;border-radius:10px;padding:10px 12px;font-size:16px;display:block}.capture textarea{resize:vertical}.button-outline{border:1px solid var(--line);cursor:pointer;border-radius:10px;align-items:center;min-height:44px;padding:0 16px;display:inline-flex}.button-outline:focus-within{outline:2px solid var(--accent)}.thumbs{grid-template-columns:repeat(3,1fr);gap:8px;margin:12px 0 0;padding:0;list-style:none;display:grid}.thumbs__item{aspect-ratio:1;position:relative}.thumbs__item img{object-fit:cover;border-radius:10px;width:100%;height:100%;display:block}.thumbs__remove{color:#fff;cursor:pointer;background:#0000008c;border:0;border-radius:50%;width:32px;height:32px;font-size:1.125rem;line-height:1;position:absolute;top:4px;right:4px}.more{margin-bottom:20px}.more summary{cursor:pointer;align-items:center;min-height:44px;margin-bottom:8px;list-style:none;display:flex}.more summary::-webkit-details-marker{display:none}.more summary:after{content:"＋";color:var(--muted);margin-left:8px}.more[open] summary:after{content:"－"}.chips{border:0;min-width:0;margin:0 0 20px;padding:0}.chips__list{flex-wrap:wrap;gap:8px;display:flex}.chip{border:1px solid var(--line);cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border-radius:999px;align-items:center;gap:6px;min-height:40px;padding:0 14px;font-size:.9375rem;display:inline-flex}.chip--selected{border-color:var(--accent);background:var(--accent-soft);color:var(--accent);font-weight:600}.chip__swatch{border:1px solid var(--line);border-radius:50%;width:14px;height:14px}.chips__add{gap:8px;margin-top:10px;display:flex}.chips__add input[type=text]{flex:1;width:auto;min-width:0}.chips__add-button{white-space:nowrap;border:1px solid var(--line);cursor:pointer;background:0 0;border-radius:10px;flex-shrink:0;min-height:44px;padding:0 16px}.chips__add-button:disabled{opacity:.35;cursor:default}.hint{color:var(--muted);margin:8px 0 16px;font-size:.8125rem}.message{color:var(--accent);margin:0 0 16px;font-size:.875rem}.button-primary{background:var(--accent-strong);width:100%;min-height:48px;color:var(--on-accent);cursor:pointer;border:0;border-radius:12px;font-size:1rem;font-weight:600;display:block}.button-primary:disabled{opacity:.35;cursor:default}.capture-done{text-align:center;padding-top:20vh}.capture-done__title{margin:0 0 32px;font-size:1.5rem;font-weight:600}.capture-fields{border:0;min-width:0;margin:0;padding:0}.brand{margin:8px 0 24px;font-size:1rem;font-weight:600}.brand span{color:var(--muted);margin-left:8px;font-size:.75rem}.day-button{cursor:pointer;background:0 0;border:0;flex-direction:column;align-items:center;gap:3px;width:100%;min-height:100px;padding:0;display:flex}.day-photo{aspect-ratio:1;object-fit:cover;border-radius:6px;width:100%}.day-text{-webkit-line-clamp:2;overflow-wrap:anywhere;-webkit-box-orient:vertical;font-size:.68rem;display:-webkit-box;overflow:hidden}.day-count{color:var(--muted);font-size:.7rem}.entry-card{text-align:left;border:1px solid var(--line);cursor:pointer;background:0 0;border-radius:14px;width:100%;margin:16px 0;padding:16px;display:block}.entry-card span{display:block}.entry-photo{object-fit:cover;border-radius:8px;width:100%;max-height:220px;margin-bottom:12px}.record-photo{border-radius:10px;width:100%;height:auto;margin-bottom:12px}.original{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.8}.record h2{color:var(--muted);margin-top:24px;font-size:.85rem}.actions{flex-wrap:wrap;gap:16px;margin-top:28px;display:flex}.capture input[type=email],.capture input[type=password]{width:100%;min-height:48px;font:inherit;color:inherit;border:1px solid var(--line);background:0 0;border-radius:10px;padding:10px}.chip{min-height:44px}button:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
