:root{--bg:#faecd0;--surface:#fff5de;--surface-soft:#fbe9c9;--text:#2b2419;--text-muted:#87765f;--border:#e6d6b5;--accent:#aacde0;--accent-strong:#7baac6;--accent-soft:#cce0ee;--warm-chip:#f3d3ae;--warm-chip-strong:#d9a872;--warn:#df8c8c;--peach:#f2cb9d;--good:#dfeed3;--good-strong:#93b68a;--good-text:#3f5a38;--meh:#f4e3c0;--meh-strong:#cfae6d;--meh-text:#6b541f;--sore:#f1d6cf;--sore-strong:#c68684;--sore-text:#6b3a30;--error:#b9534a;--radius-sm:10px;--radius-md:16px;--radius-lg:22px;--radius-pill:999px;--sans:-apple-system, BlinkMacSystemFont, "Inter", "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;font-family:var(--sans);color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px;line-height:1.5}*,:before,:after{box-sizing:border-box}html,body,#root{min-height:100svh;margin:0}body{background:var(--bg)}h1,h2,h3{color:var(--text);letter-spacing:-.01em;margin:0;font-weight:600}h1{font-size:1.7rem;line-height:1.2}p{margin:0}button{font:inherit;cursor:pointer;color:inherit;background:0 0;border:none}button:disabled{cursor:not-allowed;opacity:.5}fieldset{border:none;margin:0;padding:0}.app{background:var(--bg);justify-content:center;min-height:100svh;display:flex}.frame{flex-direction:column;gap:26px;width:100%;max-width:420px;min-height:100svh;padding:14px 20px 36px;display:flex}.screen{flex-direction:column;gap:26px;display:flex}.topbar{justify-content:flex-end;align-items:center;min-height:32px;margin-bottom:-10px;display:flex}.topbar-icon{width:40px;height:40px;color:var(--text);border-radius:50%;justify-content:center;align-items:center;transition:background-color .15s;display:inline-flex}.topbar-icon:hover{background:#0000000d}.welcome{letter-spacing:-.018em;color:var(--text);font-size:1.75rem;font-weight:600;line-height:1.15}.page-head{flex-direction:column;gap:4px;display:flex}.page-head.centered,.centered{text-align:center;align-items:center}.eyebrow{letter-spacing:.09em;text-transform:uppercase;color:var(--accent-strong);font-size:.72rem;font-weight:700}.subtle{color:var(--text-muted);font-size:.95rem}.section-title{color:var(--text);letter-spacing:-.005em;margin:0;font-size:1.05rem;font-weight:600}.mono{font-variant-numeric:tabular-nums}.ring{justify-content:center;align-items:center;display:flex;position:relative}.ring-wrap{flex-direction:column;align-items:center;gap:14px;display:flex}.home-ring{justify-content:center;padding:4px 0 8px;display:flex}.ring-center{flex-direction:column;justify-content:center;align-items:center;gap:4px;display:flex;position:absolute;inset:0}.ring-total{letter-spacing:-.02em;color:var(--text);font-size:2.2rem;font-weight:600;line-height:1}.ring-sub{color:var(--text-muted);letter-spacing:.04em;text-transform:lowercase;font-size:.82rem}.stepper{background:var(--accent-soft);border-radius:var(--radius-md);border:1px solid #0000000f;justify-content:space-between;align-items:center;padding:12px 14px 12px 20px;display:flex}.stepper-label{color:var(--text);font-size:.98rem;font-weight:500}.stepper-controls{align-items:center;gap:12px;display:flex}.stepper-btn{width:34px;height:34px;color:var(--text);background:#fff9;border:1px solid #0000002e;border-radius:50%;justify-content:center;align-items:center;font-size:1.15rem;font-weight:600;line-height:1;transition:background-color .12s,transform 80ms;display:inline-flex}.stepper-btn:hover:not(:disabled){background:#fff}.stepper-btn:active:not(:disabled){transform:scale(.95)}.stepper-btn:disabled{color:var(--text-muted);border-color:#00000014}.stepper-value{text-align:center;font-variant-numeric:tabular-nums;min-width:68px;color:var(--text);font-weight:600}.actions{flex-direction:column;gap:12px;margin-top:4px;display:flex}.home-actions{gap:12px}.btn-primary,.btn-secondary{border-radius:var(--radius-md);letter-spacing:-.005em;width:100%;min-height:56px;font-size:1rem;font-weight:600;transition:background-color .15s,color .15s,border-color .15s,transform 80ms,box-shadow .18s}.btn-primary{background:var(--accent);color:var(--text);border:1px solid #0000000f;box-shadow:0 2px 8px -4px #0000002e}.btn-primary:hover:not(:disabled){background:var(--accent-strong);color:#fff;box-shadow:0 4px 14px -6px #00000038}.btn-primary:active:not(:disabled){transform:scale(.99)}.btn-secondary{color:var(--accent-strong);border:1.5px solid var(--accent-strong);background:0 0}.btn-secondary:hover:not(:disabled){background:var(--accent-soft)}.btn-secondary:active:not(:disabled){transform:scale(.99)}.strain{flex-direction:column;gap:14px;display:flex}.strain-slider{--p:0%;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);flex-direction:column;gap:10px;padding:16px 16px 14px;transition:border-color .2s;display:flex}.strain-slider.is-good{border-color:var(--good-strong);--p:0%}.strain-slider.is-meh{border-color:var(--meh-strong);--p:50%}.strain-slider.is-sore{border-color:var(--sore-strong);--p:100%}.strain-slider-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.strain-slider-label{text-transform:uppercase;letter-spacing:.08em;color:var(--text);font-size:.82rem;font-weight:700}.strain-slider-state{color:var(--text-muted);align-items:center;gap:6px;font-size:.85rem;font-weight:600;display:inline-flex}.strain-slider.is-good .strain-slider-state{color:var(--good-text)}.strain-slider.is-meh .strain-slider-state{color:var(--meh-text)}.strain-slider.is-sore .strain-slider-state{color:var(--sore-text)}.strain-slider-hint{color:var(--text-muted);font-size:.78rem}.strain-range{appearance:none;border-radius:var(--radius-pill);cursor:pointer;background:linear-gradient(to right, var(--accent) 0%, var(--accent) var(--p), var(--border) var(--p), var(--border) 100%);outline:none;width:100%;height:8px;margin:2px 0;transition:background .18s}.strain-slider.is-good .strain-range{background:linear-gradient(to right, var(--good-strong) 0%, var(--good-strong) var(--p), var(--border) var(--p), var(--border) 100%)}.strain-slider.is-meh .strain-range{background:linear-gradient(to right, var(--meh-strong) 0%, var(--meh-strong) var(--p), var(--border) var(--p), var(--border) 100%)}.strain-slider.is-sore .strain-range{background:linear-gradient(to right, var(--sore-strong) 0%, var(--sore-strong) var(--p), var(--border) var(--p), var(--border) 100%)}.strain-range::-webkit-slider-thumb{-webkit-appearance:none;background:var(--surface);border:2.5px solid var(--accent);cursor:grab;border-radius:50%;width:30px;height:30px;transition:opacity .18s,border-color .18s,transform 80ms;box-shadow:0 2px 6px #0000001f}.strain-range::-webkit-slider-thumb:active{cursor:grabbing;transform:scale(1.08)}.strain-range::-moz-range-thumb{background:var(--surface);border:2.5px solid var(--accent);cursor:grab;border-radius:50%;width:30px;height:30px;box-shadow:0 2px 6px #0000001f}.strain-slider:not(.is-touched) .strain-range::-webkit-slider-thumb{opacity:0}.strain-slider:not(.is-touched) .strain-range::-moz-range-thumb{opacity:0}.strain-slider.is-good .strain-range::-webkit-slider-thumb{border-color:var(--good-strong)}.strain-slider.is-meh .strain-range::-webkit-slider-thumb{border-color:var(--meh-strong)}.strain-slider.is-sore .strain-range::-webkit-slider-thumb{border-color:var(--sore-strong)}.strain-slider.is-good .strain-range::-moz-range-thumb{border-color:var(--good-strong)}.strain-slider.is-meh .strain-range::-moz-range-thumb{border-color:var(--meh-strong)}.strain-slider.is-sore .strain-range::-moz-range-thumb{border-color:var(--sore-strong)}.strain-slider-ticks{color:var(--text-muted);letter-spacing:.05em;text-transform:uppercase;grid-template-columns:1fr 1fr 1fr;font-size:.7rem;font-weight:600;display:grid}.strain-slider-ticks span:first-child{text-align:left}.strain-slider-ticks span:nth-child(2){text-align:center}.strain-slider-ticks span:last-child{text-align:right}.session-screen{position:relative}.strain-flags{gap:12px;margin-top:4px;display:flex}.flag-chip{border-radius:var(--radius-md);background:var(--warm-chip);color:var(--text);border:1px solid #0000000f;flex:1;padding:14px 12px;font-size:.95rem;font-weight:600;transition:background-color .15s,color .15s,border-color .15s,transform 80ms}.flag-chip:active{transform:scale(.98)}.flag-chip.is-on{background:var(--warm-chip-strong);border-color:var(--warm-chip-strong);color:#fff}.session-ring-wrap{margin:8px 0}.session-actions{justify-content:space-between;align-items:center;margin-top:4px;padding:0 24px;display:flex}.round-btn{width:88px;height:88px;color:var(--text);text-align:center;border-radius:50%;justify-content:center;align-items:center;font-size:.95rem;font-weight:600;line-height:1.1;transition:transform 80ms,background-color .15s,box-shadow .18s;display:inline-flex;box-shadow:0 4px 14px -6px #0003}.round-btn:active{transform:scale(.96)}.round-btn:hover{box-shadow:0 6px 18px -6px #0000003d}.round-btn-warn{background:var(--warn);color:#fff}.round-btn-warn:hover{background:#c97d7d}.round-btn-soft{background:var(--peach)}.round-btn-soft:hover{background:#e3bd8c}.session-screen.is-hidden>:not(.hidden-overlay){filter:blur(14px);pointer-events:none;-webkit-user-select:none;user-select:none}.hidden-overlay{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);z-index:50;cursor:pointer;background:#faecd073;border:none;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.hidden-overlay-hint{color:var(--text-muted);letter-spacing:.05em;font-size:.9rem}.activity-hero{border-radius:var(--radius-lg);border:1px solid var(--border);text-align:left;background:var(--surface);flex-direction:column;width:100%;padding:0;transition:transform 80ms,box-shadow .18s;display:flex;overflow:hidden;box-shadow:0 6px 22px -14px #00000038}.activity-hero:hover{box-shadow:0 12px 28px -14px #00000042}.activity-hero:active{transform:scale(.99)}.hero-image{background-color:var(--accent);justify-content:center;align-items:center;min-height:180px;display:flex}.hero-emoji{filter:drop-shadow(0 2px 4px #0000001a);font-size:5rem;line-height:1}.hero-meta{flex-direction:column;gap:4px;padding:18px 20px 20px;display:flex}.hero-eyebrow{letter-spacing:.09em;text-transform:uppercase;color:var(--accent-strong);margin-bottom:4px;font-size:.7rem;font-weight:700}.hero-name{color:var(--text);letter-spacing:-.015em;font-size:1.55rem;font-weight:600;line-height:1.15}.hero-desc{color:var(--text-muted);margin-top:4px;font-size:.93rem;line-height:1.45}.hero-cta{color:var(--accent-strong);letter-spacing:.01em;margin-top:12px;font-size:.88rem;font-weight:700}.tile-section{flex-direction:column;gap:12px;display:flex}.tile-scroller{scroll-snap-type:x mandatory;scrollbar-width:none;-webkit-overflow-scrolling:touch;gap:12px;margin:0 -20px;padding:4px 20px 14px;display:flex;overflow-x:auto}.tile-scroller::-webkit-scrollbar{display:none}.activity-tile{scroll-snap-align:start;text-align:left;height:170px;color:var(--text);border:none;border-radius:18px;flex-direction:column;flex:0 0 152px;justify-content:space-between;padding:14px;transition:transform 80ms,box-shadow .2s;display:flex;box-shadow:0 4px 14px -10px #00000038}.activity-tile:hover{box-shadow:0 8px 22px -10px #00000047}.activity-tile:active{transform:scale(.97)}.tile-emoji{filter:drop-shadow(0 1px 2px #0000001a);font-size:2rem;line-height:1}.tile-name{color:var(--text);letter-spacing:-.005em;font-size:.95rem;font-weight:600}.break-visual{border-radius:var(--radius-lg);background-position:50%;background-size:cover;justify-content:center;align-items:center;height:240px;display:flex;box-shadow:0 8px 26px -14px #00000038}.break-visual-emoji{filter:drop-shadow(0 4px 12px #00000026);font-size:6rem;line-height:1}.break-desc{color:var(--text-muted);text-align:center;padding:0 4px;font-size:1rem;line-height:1.55}.break-badges{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.break-badge{border-radius:var(--radius-pill);background:var(--surface);color:var(--text);border:1px solid var(--border);padding:6px 12px;font-size:.78rem;font-weight:600}.break-badge-accent{background:var(--accent-soft);color:var(--accent-strong);border-color:#0000}.break-timer{flex-direction:column;align-items:center;gap:4px;padding:4px 0;display:flex}.break-timer-value{color:var(--text);letter-spacing:-.02em;font-size:2.4rem;font-weight:600;line-height:1}.break-timer-sub{color:var(--text-muted);font-size:.85rem}.outcome-activity{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);align-items:center;gap:12px;padding:12px 16px;display:flex}.outcome-activity-emoji{font-size:1.7rem;line-height:1}.outcome-activity-name{color:var(--text);font-size:1rem;font-weight:600}.outcome-options{flex-direction:column;gap:10px;display:flex}.outcome-btn{background:var(--surface);border:1.5px solid var(--border);border-radius:var(--radius-md);text-align:left;align-items:center;gap:16px;padding:16px 18px;transition:transform 80ms,border-color .15s,background-color .15s;display:flex}.outcome-btn:not(:disabled):active{transform:scale(.99)}.outcome-btn.is-helped{border-color:var(--good-strong)}.outcome-btn.is-helped:hover:not(:disabled){background:var(--good)}.outcome-btn.is-meh{border-color:var(--meh-strong)}.outcome-btn.is-meh:hover:not(:disabled){background:var(--meh)}.outcome-btn.is-skipped{border-color:var(--border);opacity:.85;background:0 0}.outcome-btn.is-skipped:hover:not(:disabled){background:var(--surface);opacity:1}.outcome-btn-emoji{justify-content:center;width:48px;font-size:2rem;line-height:1;display:inline-flex}.outcome-btn-text{flex-direction:column;flex:1;gap:2px;display:flex}.outcome-btn-label{color:var(--text);font-size:1rem;font-weight:600}.outcome-btn-sub{color:var(--text-muted);font-size:.82rem}.stats-screen{padding-bottom:8px}.stats-tabs{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-pill);grid-template-columns:1fr 1fr 1fr;padding:4px;display:grid}.stats-tab{color:var(--text-muted);border-radius:var(--radius-pill);padding:9px 0;font-size:.85rem;font-weight:600;transition:background-color .18s,color .18s}.stats-tab.is-active{background:var(--accent);color:var(--text);box-shadow:0 1px 4px -1px #00000026}.stat-hero{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);flex-direction:column;gap:2px;padding:20px 22px 18px;display:flex;box-shadow:0 4px 14px -10px #00000026}.stat-hero-label{letter-spacing:.09em;text-transform:uppercase;color:var(--accent-strong);font-size:.72rem;font-weight:700}.stat-hero-value{letter-spacing:-.02em;color:var(--text);flex-wrap:wrap;align-items:baseline;gap:8px;margin-top:6px;font-size:3rem;font-weight:600;line-height:1;display:flex}.time-part{align-items:baseline;display:inline-flex}.time-num{font-size:1em}.time-unit{color:var(--text-muted);letter-spacing:0;margin-left:2px;font-size:.42em;font-weight:500}.stat-hero-sub{color:var(--text-muted);margin-top:8px;font-size:.92rem}.stat-cards{grid-template-columns:1fr 1fr;gap:10px;display:grid}.stat-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);flex-direction:column;gap:6px;padding:14px 14px 12px;display:flex}.stat-card-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.07em;font-size:.75rem;font-weight:600}.stat-card-value{color:var(--text);letter-spacing:-.015em;flex-wrap:wrap;align-items:baseline;gap:5px;font-size:1.6rem;font-weight:600;line-height:1;display:flex}.empty{text-align:center;padding:24px 0}.break-list{flex-direction:column;gap:18px;display:flex}.break-day{flex-direction:column;gap:8px;display:flex}.break-day-label{letter-spacing:.09em;text-transform:uppercase;color:var(--text-muted);margin:0;padding-left:4px;font-size:.72rem;font-weight:700}.break-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);overflow:hidden}.break-row{border-bottom:1px solid var(--border);align-items:center;gap:12px;padding:14px 16px;display:flex}.break-row:last-child{border-bottom:none}.break-row-emoji{filter:drop-shadow(0 1px 1px #0000000f);justify-content:center;width:32px;font-size:1.5rem;display:inline-flex}.break-row-main{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.break-row-name{color:var(--text);letter-spacing:-.005em;white-space:nowrap;text-overflow:ellipsis;font-size:.96rem;font-weight:600;overflow:hidden}.break-row-status{color:var(--text-muted);font-size:.78rem;font-weight:500}.break-row-status.is-helped{color:var(--good-text)}.break-row-status.is-not-helped{color:var(--text-muted)}.break-row-status.is-skipped{color:var(--text-muted);font-style:italic}.break-row-time{color:var(--text-muted);font-size:.85rem;font-weight:500}.error{color:var(--error);text-align:center;font-size:.9rem}.modal-backdrop{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:100;background:#2820146b;justify-content:center;align-items:center;padding:20px;animation:.18s ease-out backdrop-fade;display:flex;position:fixed;inset:0}@keyframes backdrop-fade{0%{opacity:0}to{opacity:1}}.modal-card{background:var(--surface);border-radius:var(--radius-md);flex-direction:column;gap:10px;width:100%;max-width:360px;padding:24px 22px 22px;animation:.22s cubic-bezier(.2,.7,.3,1.05) card-pop;display:flex;box-shadow:0 16px 40px -12px #00000047}@keyframes card-pop{0%{opacity:0;transform:scale(.95)translateY(8px)}to{opacity:1;transform:scale(1)translateY(0)}}.modal-title{color:var(--text);font-size:1.2rem;font-weight:600}.modal-body{color:var(--text-muted);font-size:.93rem;line-height:1.45}.modal-actions{flex-direction:column;gap:8px;margin-top:12px;display:flex}
