:root{--color-primary:#f26f5e;--color-bg:#fffdf9;--color-card:#fff1e7;--color-success:#6fae63;--color-text:#2f2926;--color-text-secondary:#6b5f59;--color-border:#eadccf;--color-focus:#b3372a;--radius-card:20px;--radius-button:16px;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--font-size-page-title:1.75rem;--font-size-section:1.25rem;--font-size-body:1.125rem;--font-size-small:.875rem;--tap-target:3rem}*,:before,:after{box-sizing:border-box}html{font-size:100%}body{background:var(--color-bg);color:var(--color-text);font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Microsoft YaHei,sans-serif;font-size:var(--font-size-body);margin:0;line-height:1.6}button{font:inherit;color:inherit;cursor:pointer}:focus-visible{outline:3px solid var(--color-focus);outline-offset:2px}.app-shell{flex-direction:column;max-width:30rem;min-height:100dvh;margin-inline:auto;display:flex}.page-header{padding:var(--space-6) var(--space-4) var(--space-4)}.page-header__title{font-size:var(--font-size-page-title);margin:0;line-height:1.3}.page-header__subtitle{margin:var(--space-2) 0 0;color:var(--color-text-secondary);font-size:var(--font-size-body)}.page-header__demo-note{margin:var(--space-1) 0 0;color:var(--color-text-secondary);font-size:var(--font-size-small)}.page-main{gap:var(--space-4);padding:0 var(--space-4);flex-direction:column;flex:1;display:flex}.card{background:var(--color-card);border-radius:var(--radius-card);padding:var(--space-5)}.card__title{margin:0 0 var(--space-4);font-size:var(--font-size-section)}.card__note{margin:var(--space-4) 0 0;color:var(--color-text-secondary);font-size:var(--font-size-small)}.choice-grid{gap:var(--space-2);grid-template-columns:repeat(3,1fr);display:grid}.choice-button{justify-content:center;align-items:center;gap:var(--space-1);min-height:4.5rem;padding:var(--space-3) var(--space-1);background:var(--color-bg);border-radius:var(--radius-button);border:2px solid #0000;flex-direction:column;display:flex;position:relative}.choice-button--selected{border-color:var(--color-primary)}.choice-button--selected:after{content:"✓";color:var(--color-focus);font-size:.75rem;line-height:1;position:absolute;top:2px;right:6px}.choice-button--selected .choice-button__label{font-weight:700}.choice-button__emoji{font-size:1.5rem}.choice-button__label{font-size:var(--font-size-small);text-align:center;line-height:1.2}@media (prefers-reduced-motion:no-preference){.choice-button{transition:border-color .15s}}.back-link{align-items:center;gap:var(--space-1);min-height:2.75rem;padding:0 var(--space-2);margin-bottom:var(--space-2);color:var(--color-text-secondary);font-size:var(--font-size-body);border-radius:var(--radius-button);text-decoration:none;display:inline-flex}.card__hint{margin:calc(-1 * var(--space-3)) 0 var(--space-3);color:var(--color-text-secondary);font-size:var(--font-size-small)}.temperature-field{justify-content:space-between;align-items:center;gap:var(--space-3);font-size:var(--font-size-body);display:flex}.temperature-field__input{align-items:baseline;gap:var(--space-1);display:inline-flex}.temperature-field__input input{width:5em;padding:var(--space-2) var(--space-3);font:inherit;color:var(--color-text);text-align:center;background:var(--color-bg);border:2px solid var(--color-border);border-radius:12px}.note-field{width:100%;min-height:5rem;padding:var(--space-3);font:inherit;color:var(--color-text);background:var(--color-bg);border:2px solid var(--color-border);resize:vertical;border-radius:12px}.local-data-note{color:var(--color-text-secondary);font-size:var(--font-size-small);text-align:center;margin:0}.chip-wrap{display:flex;position:relative}.chip-wrap .choice-button{width:100%}.chip-remove{min-width:24px;min-height:24px;color:var(--color-text-secondary);background:0 0;border:none;border-radius:50%;padding:0;font-size:.75rem;line-height:1;position:absolute;top:2px;left:2px}.add-custom-trigger{width:100%;min-height:var(--tap-target);margin-top:var(--space-2);font-size:var(--font-size-body);color:var(--color-text-secondary);border:2px dashed var(--color-border);border-radius:var(--radius-button);background:0 0}.add-custom-row{gap:var(--space-2);margin-top:var(--space-3);display:flex}.add-custom-row input{min-width:0;padding:var(--space-2) var(--space-3);font:inherit;color:var(--color-text);background:var(--color-bg);border:2px solid var(--color-border);border-radius:12px;flex:1}.small-button{min-height:2.75rem;padding:0 var(--space-4);font-size:var(--font-size-body);background:var(--color-bg);border:2px solid var(--color-border);border-radius:var(--radius-button)}.small-button--primary{background:var(--color-primary);border-color:var(--color-primary);font-weight:700}.field-error{margin:var(--space-3) 0 0;color:var(--color-focus);font-size:var(--font-size-small)}.card__text{font-size:var(--font-size-body);margin:0}.card__action{margin-top:var(--space-4);font-size:var(--font-size-body);color:var(--color-text);text-underline-offset:4px;display:inline-block}.text-button{min-height:var(--tap-target);padding:0 var(--space-3);font-size:var(--font-size-small);color:var(--color-text-secondary);border-radius:var(--radius-button);background:0 0;border:none;text-decoration:underline}.primary-cta:disabled{opacity:.55;cursor:default}.page-footer p{margin:0 0 var(--space-2)}.date-row{align-items:flex-end;gap:var(--space-2);display:flex}.date-row label{gap:var(--space-1);flex-direction:column;flex:1;min-width:0;display:flex}.date-row__label{font-size:var(--font-size-small);color:var(--color-text-secondary)}.date-row input{width:100%;padding:var(--space-2) var(--space-3);font:inherit;color:var(--color-text);background:var(--color-bg);border:2px solid var(--color-border);border-radius:12px}.chemo-list{margin:0;padding:0;list-style:none}.chemo-list li{justify-content:space-between;align-items:center;gap:var(--space-2);padding:var(--space-2) 0;border-bottom:1px solid var(--color-border);display:flex}.chemo-list li:last-child{border-bottom:none}.record-list{gap:var(--space-3);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.record-item{background:var(--color-card);border-radius:var(--radius-card);padding:var(--space-4);gap:var(--space-2);flex-direction:column;display:flex}.record-item__date{font-size:var(--font-size-section);align-items:baseline;gap:var(--space-2);flex-wrap:wrap;margin:0;display:flex}.record-item__day{font-size:var(--font-size-small);color:var(--color-text-secondary);font-weight:400}.record-item__line{font-size:var(--font-size-body);margin:0}.trends-card__row-title{margin:var(--space-3) 0 var(--space-2);font-size:var(--font-size-body);font-weight:500}.trends-card__row-title:first-of-type{margin-top:0}.trend-row{gap:var(--space-1);grid-template-columns:repeat(7,1fr);display:grid}.trend-cell{align-items:center;gap:var(--space-1);padding:var(--space-1) 0;flex-direction:column;display:flex}.trend-cell__day{font-size:var(--font-size-small);color:var(--color-text-secondary)}.trend-cell__face{font-size:20px;line-height:1}.trend-cell--missing .trend-cell__face{color:var(--color-text-secondary)}.trend-summary{margin:var(--space-2) 0 0;font-size:var(--font-size-body)}.trend-temp-list{gap:var(--space-1);font-size:var(--font-size-body);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.error-detail{font-size:var(--font-size-small);color:var(--color-text-secondary);word-break:break-all}.primary-cta{width:100%;min-height:3.5rem;padding:var(--space-3) var(--space-4);background:var(--color-primary);color:var(--color-text);font-weight:700;font-size:var(--font-size-body);border-radius:var(--radius-button);border:none;flex-direction:column;align-items:center;gap:2px;text-decoration:none;display:flex}.primary-cta__hint{font-size:var(--font-size-small);font-weight:400}.primary-cta--compact{width:auto;min-height:var(--tap-target);padding:var(--space-2) var(--space-4)}.secondary-cta{min-height:var(--tap-target);padding:var(--space-2) var(--space-4);font-size:var(--font-size-body);color:var(--color-text);border:2px solid var(--color-primary);border-radius:var(--radius-button);background:0 0}.redline-list{gap:var(--space-3);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.redline-item{border:1px solid var(--color-primary);border-radius:var(--radius-card);padding:var(--space-3);gap:var(--space-2);flex-direction:column;display:flex}.redline-item__content{font-size:var(--font-size-body);margin:0}.redline-item__meta{color:var(--color-text-secondary);font-size:var(--font-size-small);gap:var(--space-1);flex-direction:column;margin:0;display:flex}.redline-form{margin-top:var(--space-4);gap:var(--space-3);flex-direction:column;display:flex}.redline-form__field{gap:var(--space-1);font-size:var(--font-size-body);flex-direction:column;display:flex}.redline-form__field textarea,.redline-form__field input{min-height:var(--tap-target);padding:var(--space-2);font-size:var(--font-size-body);color:var(--color-text);background:var(--color-bg);border:2px solid var(--color-text-secondary);border-radius:var(--radius-button);font-family:inherit}.redline-form__actions{gap:var(--space-2);justify-content:flex-end;display:flex}.redline-item__actions{gap:var(--space-2);display:flex}.report-period{font-size:var(--font-size-body);margin:0}.report-list{gap:var(--space-2);font-size:var(--font-size-body);flex-direction:column;margin:0;padding-left:1.25rem;display:flex}.question-list{margin:0 0 var(--space-3);gap:var(--space-2);flex-direction:column;padding:0;list-style:none;display:flex}.question-item{justify-content:space-between;align-items:center;gap:var(--space-2);display:flex}.question-item__content{font-size:var(--font-size-body)}.question-form__field{gap:var(--space-1);font-size:var(--font-size-body);margin-bottom:var(--space-3);flex-direction:column;display:flex}.question-form__field textarea{min-height:var(--tap-target);padding:var(--space-2);font-size:var(--font-size-body);color:var(--color-text);background:var(--color-bg);border:2px solid var(--color-text-secondary);border-radius:var(--radius-button);font-family:inherit}.backup-actions{margin-top:var(--space-4);gap:var(--space-3);flex-direction:column;display:flex}.backup-actions .secondary-cta{box-sizing:border-box;text-align:center;cursor:pointer;width:100%;display:block}.file-input--hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.status-text{margin:var(--space-3) 0 0;font-size:var(--font-size-body);color:var(--color-text)}@media print{body{color:#000;background:#fff}.page-header{color:#000}.card{background:#fff;border:1px solid #999}.print-hide,.back-link,.app-nav,.page-footer,.local-data-note{display:none!important}}.summary-list{gap:var(--space-3);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.summary-list li{font-size:var(--font-size-body)}.bottom-nav{background:var(--color-bg);border-top:1px solid var(--color-border);padding:var(--space-2) var(--space-1);grid-template-columns:repeat(4,1fr);display:grid;position:sticky;bottom:0}.bottom-nav__item{min-height:var(--tap-target);padding:var(--space-1);color:var(--color-text-secondary);font-size:var(--font-size-small);border-radius:var(--radius-button);flex-direction:column;justify-content:center;align-items:center;gap:2px;display:flex}.bottom-nav__item--active{color:var(--color-text);font-weight:700}.page-footer{padding:var(--space-4);color:var(--color-text-secondary);font-size:var(--font-size-small);text-align:center}
