:root{--accent: #ea580c;--accent-strong: #dc2626;--font-scale: 1;--bg: #fff1e6;--surface: #ffffff;--text: #1c1917;--text-sub: #78716c;--border: #e7e5e4;--tab-bg: rgba(255, 255, 255, .92);--rest-bg: #fde68a;--rest-done-bg: #16a34a}@media(prefers-color-scheme:dark){:root{--bg: #1c1917;--surface: #292524;--text: #fafaf9;--text-sub: #a8a29e;--border: #44403c;--tab-bg: rgba(28, 25, 23, .92)}}*{box-sizing:border-box;margin:0;padding:0}html{font-size:calc(16px * var(--font-scale))}body{font-family:-apple-system,BlinkMacSystemFont,Hiragino Sans,Noto Sans JP,sans-serif;background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;padding-bottom:env(safe-area-inset-bottom)}button{font:inherit;color:inherit;background:none;border:none;cursor:pointer}input,select,textarea{font:inherit}.app{display:flex;flex-direction:column;min-height:100dvh}.app-main{flex:1;padding:1rem;padding-bottom:calc(4.5rem + env(safe-area-inset-bottom));max-width:640px;width:100%;margin:0 auto}.screen-title{font-size:1.4rem;font-weight:700;margin-bottom:.75rem}.card{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:1rem;margin-bottom:.75rem}.btn{padding:.6rem 1.2rem;border-radius:10px;background:var(--accent);color:#fff;font-weight:700}.btn:disabled{opacity:.5}.btn-ghost{padding:.5rem .9rem;border-radius:10px;border:1px solid var(--border);background:var(--surface);color:var(--text);font-weight:600}.btn-danger{padding:.5rem .9rem;border-radius:10px;border:1px solid var(--accent-strong);background:var(--surface);color:var(--accent-strong);font-weight:700}.input{width:100%;padding:.6rem;border-radius:10px;border:1px solid var(--border);background:var(--bg);color:var(--text)}.chip{padding:.4rem .9rem;border-radius:999px;border:1.5px solid var(--border);background:var(--surface);color:var(--text);font-weight:600;white-space:nowrap}.chip.active{border-color:var(--chip-color, var(--accent));background:var(--chip-color, var(--accent));color:#fff}.chip-row{display:flex;gap:.5rem;overflow-x:auto;padding-bottom:.25rem;margin-bottom:.75rem}.section-label{font-size:.8rem;font-weight:700;color:var(--text-sub);margin:.75rem 0 .4rem}.text-sub{color:var(--text-sub)}.card-title{font-size:1rem;margin-bottom:.5rem}.list-row{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.5rem 0;border-bottom:1px solid var(--border)}.list-row:last-child{border-bottom:none}.sheet-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;z-index:10}.sheet{position:fixed;left:0;right:0;bottom:0;max-height:88dvh;overflow-y:auto;background:var(--bg);border-radius:20px 20px 0 0;padding:1rem 1rem calc(1rem + env(safe-area-inset-bottom));z-index:11;max-width:640px;margin:0 auto}.tab-bar{position:fixed;bottom:0;left:0;right:0;display:flex;justify-content:space-around;background:var(--tab-bg);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-top:1px solid var(--border);padding:.4rem 0 calc(.4rem + env(safe-area-inset-bottom))}.tab-item{display:flex;flex-direction:column;align-items:center;gap:2px;font-size:.68rem;color:var(--text-sub);min-width:3.5rem;padding:.2rem 0}.tab-item.active{color:var(--accent);font-weight:700}.tab-icon{font-size:1.4rem;line-height:1}.app-brand{display:flex;align-items:center;gap:.4rem;font-weight:800;font-size:.95rem;color:var(--accent);margin-bottom:.25rem;letter-spacing:.05em}.app-brand img{border-radius:7px}.full-screen{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;background:var(--bg);display:flex;flex-direction:column;overflow-y:auto;padding:calc(1rem + env(safe-area-inset-top)) 1rem calc(1rem + env(safe-area-inset-bottom))}.full-screen.resting{background:var(--rest-bg)}.full-screen.rest-done{background:var(--rest-done-bg);color:#fff}.big-number{font-size:3rem;font-weight:800;text-align:center;line-height:1.1}.stepper{display:flex;align-items:center;justify-content:center;gap:1rem}.stepper-btn{width:3.2rem;height:3.2rem;border-radius:50%;background:var(--surface);border:1.5px solid var(--border);font-size:1.4rem;font-weight:700;display:flex;align-items:center;justify-content:center}
