.share-card{padding:.25rem 1rem}.share-row{display:flex;flex-direction:row;align-items:center;gap:.75rem;padding:.7rem 0;text-align:left;border-bottom:1px solid var(--divider);cursor:pointer}.share-row:last-child{border-bottom:0}.share-row.disabled{cursor:default}.share-t{display:block;font-size:.95rem;color:var(--text)}.share-d{display:block;margin-top:2px;line-height:1.35}.share-off .share-t,.share-off .share-d{opacity:.55}.share-done{width:100%;margin-top:.5rem}.crew-av{width:36px;height:36px;border-radius:50%;flex:none;display:inline-grid;place-items:center;font-weight:800;font-size:14px;color:#0b0d11;line-height:1}.crew-av.ring{outline:2px solid var(--accent-dim);outline-offset:2px}.crew-av-invite{background:var(--surface-2);color:var(--muted);border:1px dashed var(--border-strong);font-size:18px}.card.pulse-card{background:linear-gradient(135deg,var(--user-bubble),var(--surface) 70%);box-shadow:var(--card-shadow),inset 0 0 0 1px color-mix(in srgb,var(--accent-dim) 35%,transparent)}.pulse-row{display:flex;gap:12px;align-items:center}.pulse-ask .pulse-row{align-items:flex-start}.pulse-emoji{font-size:26px;line-height:1}.pulse-actions{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap}.small-btn.primary-btn,.primary-btn{background:var(--accent-dim);color:var(--on-accent);border-color:transparent;font-weight:700}.crew-strip-row{display:flex;gap:12px;margin-top:.7rem;overflow-x:auto;padding:4px 2px 2px}.crew-strip-item{display:flex;flex-direction:column;align-items:center;gap:4px;width:56px;flex:none;font-size:11px;text-align:center;color:var(--text);text-decoration:none}.crew-strip-name{max-width:56px;margin-top:2px}.crew-see-all,.crew-head-link{text-decoration:none;font-weight:700}.crew-post{padding:.8rem 1rem}.crew-post.moment{padding:0;overflow:hidden}.crew-post.moment .crew-post-head{padding:.8rem 1rem .6rem}.crew-post.moment .crew-reacts{padding:.6rem 1rem .8rem;margin-top:0}.crew-post-head{display:flex;gap:12px;align-items:center}.crew-post-line{overflow-wrap:anywhere}.crew-more{font-size:1.2rem;line-height:1;padding:.25rem .5rem;min-width:36px;min-height:36px}.crew-moment{background:var(--bg);padding:.8rem 1rem;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.crew-moment-title{font-size:.7rem;font-weight:800;color:var(--accent);letter-spacing:.08em;text-transform:uppercase}.crew-moment-value{font-size:1.8rem;font-weight:900;line-height:1.15;overflow-wrap:anywhere}.crew-reacts{display:flex;gap:6px;margin-top:.6rem}.crew-react{display:inline-flex;gap:4px;align-items:center;min-height:34px;font-size:.85rem;padding:.3rem .7rem;border-radius:999px;background:var(--surface-2);border:1px solid var(--border);color:var(--muted);font-weight:600}.crew-react.on{background:var(--user-bubble);color:var(--accent);border-color:var(--accent-dim)}.crew-react:disabled{opacity:1;cursor:default}.crew-more-btn{width:100%}.crew-empty,.crew-invite,.join-card{text-align:center;padding:1.2rem 1rem}.crew-empty p,.crew-invite p{margin:.35rem 0 .8rem}.crew-empty-emoji{font-size:30px}.crew-invite-title{display:block;font-size:1.05rem;margin-top:.3rem}.crew-invite-btn{width:100%}.crew-empty .small-btn,.join-card .small-btn{display:inline-block;text-decoration:none}.join-card .crew-av{margin:.5rem auto .25rem}.join-title{font-size:1.2rem;margin:.6rem 0 .4rem}.join-actions{display:flex;gap:.5rem;justify-content:center;margin-top:.8rem}.join-actions button{flex:1;max-width:160px}.crew-request{display:flex;align-items:center;gap:10px;padding:.7rem .8rem}.crew-request .small-btn{padding:.45rem .7rem}.crew-list{padding:.2rem 1rem}.crew-list-row{display:flex;align-items:center;gap:12px;padding:.55rem 0;border-bottom:1px solid var(--divider)}.crew-list-row:last-child{border-bottom:0}.crew-email-open{display:block;margin:.6rem auto 0;font-weight:600;color:var(--accent)}.crew-email-form{text-align:left;margin-top:.8rem}.crew-email-form label{display:flex;flex-direction:column;gap:.3rem}.crew-email-form textarea{resize:vertical;font-family:inherit}.crew-av-photo{object-fit:cover;display:inline-block}.photo-row{display:flex;align-items:center;gap:.75rem}.photo-row-text{flex:1;min-width:0}.photo-row-actions{display:flex;gap:.4rem;flex-wrap:wrap}.crew-empty-faces{display:flex;justify-content:center;gap:.35rem;flex-wrap:wrap;margin-bottom:.5rem}:root{--bg: #0f1115;--surface: #1a1d24;--surface-2: #232733;--text: #e8eaf0;--muted: #9aa0af;--accent: #4ade80;--accent-dim: #22c55e;--accent-fill: #4ade80;--on-accent: #06210f;--danger: #f87171;--warn: #fbbf24;--info: #60a5fa;--pink: #f472b6;--violet: #a78bfa;--teal: #2dd4bf;--border: #2a2f3d;--border-strong: #333a4a;--divider: #232733;--switch-active: #2c3140;--grip: #3a3f4c;--toggle-off: var(--border-strong);--user-bubble: #1e3a2b;--overlay: rgba(5, 6, 8, .7);--shadow: 0 6px 18px rgba(0, 0, 0, .5);--card-shadow: none;--chart-grid: var(--border);--chart-line: #4a5268;--chart-dot: #6b7488;--chart-bar: #4a5268;--focus: #4ade80;--radius: 14px;color-scheme:dark}@media(prefers-color-scheme:light){:root:not([data-theme=dark]){--art-filter: none;--bg: #f3f4f7;--surface: #ffffff;--surface-2: #eceef3;--text: #14171f;--muted: #555c6b;--accent: #136c33;--accent-dim: #22c55e;--accent-fill: #22c55e;--on-accent: #06210f;--danger: #c81e1e;--warn: #8a5a00;--info: #1d4ed8;--pink: #be185d;--violet: #6d28d9;--teal: #0f766e;--border: #dfe2e8;--border-strong: #c9cdd6;--divider: #e6e8ee;--switch-active: #e1e4ea;--grip: #c9cdd6;--toggle-off: #c4c8d2;--user-bubble: #dcf5e4;--overlay: rgba(15, 17, 21, .45);--shadow: 0 6px 18px rgba(15, 17, 21, .22);--card-shadow: 0 1px 2px rgba(15, 17, 21, .06), 0 0 0 1px #e6e8ee;--chart-grid: #e3e6ec;--chart-line: #aab0bd;--chart-dot: #7b8292;--chart-bar: #c3c8d2;--focus: #136c33;color-scheme:light}}:root[data-theme=light]{--art-filter: none;--bg: #f3f4f7;--surface: #ffffff;--surface-2: #eceef3;--text: #14171f;--muted: #555c6b;--accent: #136c33;--accent-dim: #22c55e;--accent-fill: #22c55e;--on-accent: #06210f;--danger: #c81e1e;--warn: #8a5a00;--info: #1d4ed8;--pink: #be185d;--violet: #6d28d9;--teal: #0f766e;--border: #dfe2e8;--border-strong: #c9cdd6;--divider: #e6e8ee;--switch-active: #e1e4ea;--grip: #c9cdd6;--toggle-off: #c4c8d2;--user-bubble: #dcf5e4;--overlay: rgba(15, 17, 21, .45);--shadow: 0 6px 18px rgba(15, 17, 21, .22);--card-shadow: 0 1px 2px rgba(15, 17, 21, .06), 0 0 0 1px #e6e8ee;--chart-grid: #e3e6ec;--chart-line: #aab0bd;--chart-dot: #7b8292;--chart-bar: #c3c8d2;--focus: #136c33;color-scheme:light}*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--bg);color:var(--text);font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;-webkit-font-smoothing:antialiased}#root{min-height:100dvh}h1{font-size:1.4rem;margin:0 0 .5rem}h2{font-size:1.1rem;margin:0 0 .4rem}.muted{color:var(--muted)}.small{font-size:.9rem}.error{color:var(--danger);margin:.25rem 0}.center-screen{min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:1rem}.login-card{width:min(340px,100%);display:flex;flex-direction:column;gap:.75rem;background:var(--surface);padding:1.5rem;border-radius:var(--radius)}.login-card h1{text-align:center;margin-bottom:.5rem}input,select,textarea{background:var(--surface-2);border:1px solid var(--border-strong);border-radius:10px;color:var(--text);padding:.7rem .85rem;font-size:1rem;width:100%}input:focus,select:focus,textarea:focus{outline:2px solid var(--accent-dim);border-color:transparent}button{background:var(--accent-dim);color:var(--on-accent);border:none;border-radius:10px;padding:.75rem 1rem;font-size:1rem;font-weight:600;cursor:pointer;font-family:inherit}button:disabled{opacity:.6;cursor:default}.link-btn{background:none;color:var(--muted);font-weight:400;font-size:.9rem;padding:.25rem .5rem}.app-shell{min-height:100dvh;display:flex;flex-direction:column}.app-main{flex:1;padding-bottom:calc(64px + env(safe-area-inset-bottom))}.page{padding:1rem;max-width:640px;margin:0 auto}.page-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem}.card{background:var(--surface);box-shadow:var(--card-shadow);border-radius:var(--radius);padding:1rem;margin-bottom:.75rem}.bottom-nav{position:fixed;bottom:0;left:0;right:0;display:flex;background:var(--surface);border-top:1px solid var(--border);padding-bottom:env(safe-area-inset-bottom)}.nav-item{flex:1;display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px 0 6px;text-decoration:none;color:var(--muted);font-size:.7rem}.nav-item.active{color:var(--accent)}.nav-icon{font-size:1.25rem;line-height:1}.accent{color:var(--accent)}.warn{color:var(--warn)}.row-between{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.5rem;text-align:center}.ems-msg{padding:.5rem .7rem;border-radius:12px;font-size:.9rem;max-width:85%;white-space:pre-wrap}.ems-msg.user{background:var(--user-bubble);color:var(--text);align-self:flex-end;border-bottom-right-radius:4px}.ems-msg.assistant{background:var(--surface-2);color:var(--text);align-self:flex-start;border-bottom-left-radius:4px}.stat-grid.two{grid-template-columns:repeat(2,1fr)}.stat-grid.three{grid-template-columns:repeat(3,1fr)}.stat-num{font-size:1.3rem;font-weight:700}.stat-label{font-size:.8rem;color:var(--muted)}.stat-delta{font-size:.78rem;font-weight:600}.hero-card{text-align:center}.hero-num{font-size:2.6rem;font-weight:800;line-height:1.1}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.two-col .card{margin-bottom:0}.two-col+.quick-row{margin-top:.75rem}.quick-row{display:flex;gap:.5rem}.quick-btn{flex:1;text-align:center;background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:10px;padding:.65rem .25rem;min-height:44px;font-size:.9rem;text-decoration:none;cursor:pointer}.quick-btn.ghost{background:none;color:var(--muted)}.small-btn{background:var(--surface-2);color:var(--text);border:1px solid var(--border-strong);border-radius:10px;padding:.45rem .8rem;font-size:.85rem;font-weight:500;cursor:pointer;text-decoration:none;display:inline-block}.small-btn.danger{color:var(--danger);border-color:var(--danger)}.list-row{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.45rem 0;border-bottom:1px solid var(--divider)}.list-row:last-child{border-bottom:none}.day-nav{display:flex;align-items:center;gap:.25rem}.modal-overlay{position:fixed;inset:0;background:var(--overlay);display:flex;align-items:flex-end;justify-content:center;z-index:50}.modal{background:var(--surface);border-radius:var(--radius) var(--radius) 0 0;padding:1rem;width:min(480px,100%);max-height:85dvh;overflow-y:auto}@media(min-width:640px){.modal-overlay{align-items:center}.modal{border-radius:var(--radius)}}.modal-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.form-stack{display:flex;flex-direction:column;gap:.65rem}.field-row{display:flex;gap:.5rem}.field-row.wrap{flex-wrap:wrap}.field-row label{flex:1;min-width:90px}label{font-size:.875rem;color:var(--muted);display:flex;flex-direction:column;gap:.25rem}.check-row{flex-direction:row;align-items:center;gap:.5rem;font-size:.9rem;color:var(--text)}.check-row input{width:auto}.chip-row{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:.25rem}.chip{background:var(--surface-2);color:var(--muted);border:1px solid var(--border-strong);border-radius:999px;padding:.4rem .8rem;font-size:.85rem;font-weight:500}.chip.active{color:var(--accent);border-color:var(--accent-dim)}.set-row{display:grid;grid-template-columns:1fr 1fr .8fr auto;gap:.4rem;margin-top:.5rem}.set-row.inputs3{grid-template-columns:1fr 1fr .8fr}.work-stopwatch{width:100%;margin-top:.5rem;background:var(--surface-2);border:1px dashed var(--accent-dim);border-radius:10px;color:var(--text);font-size:1.05rem;font-weight:700;font-variant-numeric:tabular-nums;padding:.5rem}.set-action-row{display:flex;align-items:center;gap:.5rem;margin-top:.5rem}.set-start-btn{flex:1;background:var(--surface-2);color:var(--text);border:1px solid var(--accent-dim);font-weight:600}.set-log-btn{flex:1;background:var(--accent-dim);color:var(--on-accent);font-weight:700}.rest-timer{position:fixed;bottom:calc(72px + env(safe-area-inset-bottom));left:50%;transform:translate(-50%);background:var(--surface-2);border:1px solid var(--accent-dim);border-radius:999px;padding:.6rem 1.2rem;font-weight:600;cursor:pointer;z-index:40;white-space:nowrap}.rest-timer.done{background:var(--accent-dim);color:var(--on-accent)}.rest-timer.idle{background:var(--surface);border-color:var(--border-strong);color:var(--muted);font-weight:500}.rest-plain{background:none;border:none;color:inherit;font:inherit;padding:0}.rest-timer{display:flex;align-items:center;gap:.6rem}.rest-mini{background:var(--surface-2);color:var(--text);border:1px solid var(--border-strong);border-radius:999px;padding:.15rem .6rem;font-size:.8rem;font-weight:500}.picker-list{display:flex;flex-direction:column}.picker-row{display:flex;justify-content:space-between;align-items:center;gap:.5rem;background:none;border:none;border-bottom:1px solid var(--divider);color:var(--text);padding:.6rem .1rem;text-align:left;font-size:.9rem;font-weight:400}.picker-row:disabled{opacity:.45}.toggle-row{cursor:pointer;flex-direction:row;text-align:left}.toggle{appearance:none;width:42px;height:24px;min-width:42px;border-radius:999px;background:var(--toggle-off);position:relative;cursor:pointer;transition:background .15s}.toggle:after{content:"";position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#fff;transition:transform .15s}.toggle:checked{background:var(--accent-dim)}.toggle:checked:after{transform:translate(18px)}.seg-row{display:flex;gap:.4rem;margin-bottom:.75rem}.seg{flex:1;background:var(--surface);color:var(--muted);border:1px solid var(--border);border-radius:10px;padding:.5rem .25rem;font-size:.85rem}.seg.active{color:var(--accent);border-color:var(--accent-dim)}.photo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem}.photo-cell{border-radius:10px;overflow:hidden;background:var(--surface);border:2px solid transparent}.photo-cell.selected{border-color:var(--accent)}.photo-cell{position:relative}.photo-cell.dragging{opacity:.45}.photo-pose{position:absolute;top:4px;left:4px;background:#0f1115bf;color:#86efac;font-size:.7rem;padding:1px 6px;border-radius:999px;pointer-events:none}.photo-cell.dragover{border-color:var(--accent-dim);border-style:dashed}.upload-btn{text-align:center;cursor:pointer;display:flex;align-items:center;justify-content:center}.photo-cell img{width:100%;aspect-ratio:3/4;object-fit:cover;display:block;cursor:pointer}.photo-meta{display:flex;justify-content:space-between;align-items:center;padding:.15rem .4rem}.compare-row{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}.compare-row img{width:100%;border-radius:10px}textarea{resize:vertical;font-family:inherit}.hbar-row{display:flex;align-items:center;gap:.5rem;padding:2px 0}.hbar{flex:1;height:10px;background:var(--surface-2);border-radius:999px;overflow:hidden}.hbar>div{height:100%;background:var(--violet);border-radius:999px}.interval-phase{border-radius:var(--radius);padding:1.5rem 1rem}.interval-phase.run{background:color-mix(in srgb,var(--accent-dim) 18%,transparent);border:2px solid var(--accent-dim)}.interval-phase.walk{background:color-mix(in srgb,var(--info) 14%,transparent);border:2px solid var(--info)}.interval-label{font-size:1.6rem;font-weight:800;letter-spacing:.05em}.interval-time{font-size:3.2rem;font-weight:800;font-variant-numeric:tabular-nums;line-height:1.1}.chip-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem;margin-bottom:.75rem}.chip-card{background:var(--surface);color:var(--muted);border:1px solid var(--border);border-radius:12px;padding:.6rem .25rem;display:flex;flex-direction:column;align-items:center;gap:.2rem;font-size:.8rem;line-height:1.15;text-align:center}.chip-card.active{color:var(--accent);border-color:var(--accent-dim);background:color-mix(in srgb,var(--accent-dim) 10%,transparent)}.chip-card .chip-icon{font-size:1.4rem}.badge-new{display:inline-block;margin-left:.4rem;padding:0 .4rem;border-radius:999px;background:color-mix(in srgb,var(--warn) 18%,transparent);color:var(--warn);font-size:.72rem;vertical-align:middle}.break-progress{height:6px;background:var(--surface-2);border-radius:999px;overflow:hidden}.break-progress>div{height:100%;background:var(--accent-dim);transition:width .3s}.break-step{border-radius:var(--radius);padding:1.25rem 1rem;text-align:center;display:flex;flex-direction:column;gap:.5rem;align-items:center}.break-step.timed{background:color-mix(in srgb,var(--teal) 12%,transparent);border:2px solid var(--teal)}.break-step.reps{background:color-mix(in srgb,var(--violet) 12%,transparent);border:2px solid var(--violet)}.break-kind{font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.break-name{font-size:1.35rem;margin:0}.break-cue{margin:0;color:var(--text);max-width:32ch}.break-step button{width:100%;max-width:280px;margin-top:.25rem}.rating-row{display:flex;gap:.4rem}.rating-btn{flex:1;background:var(--surface-2);color:var(--muted);border:1px solid var(--border-strong);border-radius:10px;padding:.6rem 0;font-size:1rem;font-weight:700}.rating-btn.active{color:var(--accent);border-color:var(--accent-dim);background:color-mix(in srgb,var(--accent-dim) 14%,transparent)}.breath-stage{text-align:center;padding:1.5rem 0}.breath-ring-wrap{position:relative;width:220px;height:220px;margin:0 auto}.breath-ring{position:absolute;inset:0;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--teal) 35%,transparent),color-mix(in srgb,var(--teal) 8%,transparent) 70%);border:2px solid var(--teal);transition-property:transform;transition-timing-function:ease-in-out}.breath-center{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center}.breath-phase{font-size:1.3rem;font-weight:700;letter-spacing:.05em}.breath-count{font-size:2.4rem;font-weight:800;font-variant-numeric:tabular-nums;line-height:1.1}.social-btn{display:flex;align-items:center;justify-content:center;gap:.55rem;width:100%;background:var(--surface-2);color:var(--text);border:1px solid var(--border-strong);border-radius:10px;padding:.65rem .85rem;font-size:.92rem;font-weight:600}.social-btn:disabled{opacity:.55}.social-icon{display:inline-flex;align-items:center;justify-content:center;width:1.25rem;height:1.25rem;border-radius:50%;font-size:.82rem;font-weight:700;background:#fff;color:#1f2430}.social-apple{background:#fff;color:#000}.social-facebook{background:#1877f2;color:#fff}.or-rule{display:flex;align-items:center;gap:.6rem;color:var(--muted);font-size:.78rem;text-transform:uppercase;letter-spacing:.06em}.or-rule:before,.or-rule:after{content:"";flex:1;height:1px;background:var(--border)}.install-prompt{position:fixed;left:0;right:0;bottom:calc(48px + env(safe-area-inset-bottom,0px));z-index:40;background:var(--surface-2);border-top:1px solid var(--border);padding:.5rem .75rem;font-size:.85rem}body.has-install-prompt .app-main{padding-bottom:calc(120px + env(safe-area-inset-bottom))}.install-row{display:flex;align-items:center;gap:.5rem}.install-text{flex:1;min-width:0}.install-close{flex:none;opacity:.8;min-width:44px;min-height:44px}.install-never{display:block;margin-top:.15rem;font-size:.75rem;opacity:.8}.install-steps{margin-top:.4rem}.install-share{display:inline-block;border:1px solid currentColor;border-radius:4px;padding:0 .3rem;margin:0 .15rem;font-size:.8em}html,body{max-width:100%}.nav-item{padding:8px 0 6px;font-size:.75rem;font-weight:600;min-width:0;min-height:52px}.nav-icon{display:flex}.switch{display:grid;gap:4px;padding:4px;background:var(--surface);border-radius:12px;margin-bottom:.75rem}.switch-item{min-height:40px;display:flex;align-items:center;justify-content:center;border-radius:9px;color:var(--muted);text-decoration:none;font-weight:600;font-size:.95rem}.switch-item.active{background:var(--switch-active);color:var(--text)}.three-btn{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem;margin-bottom:.75rem}.three-btn button{padding:.65rem .25rem;font-size:.9rem}button.secondary{background:var(--surface-2);color:var(--text);border:1px solid var(--border-strong)}.fab{position:fixed;right:max(16px,calc(50vw - 304px));bottom:calc(76px + env(safe-area-inset-bottom));width:58px;height:58px;padding:0;border-radius:50%;background:var(--accent-fill);color:var(--on-accent);display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow);z-index:30}body.has-install-prompt .fab{bottom:calc(132px + env(safe-area-inset-bottom))}.app-main{padding-bottom:calc(140px + env(safe-area-inset-bottom))}.sheet-overlay{position:fixed;inset:0;z-index:50;background:var(--overlay);display:flex;align-items:flex-end;justify-content:center}.sheet{width:min(480px,100%);background:var(--surface);border-radius:22px 22px 0 0;padding:10px 16px calc(24px + env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:14px}.sheet-grip{width:40px;height:5px;border-radius:3px;background:var(--grip);align-self:center}.sheet-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.sheet-tile{display:flex;flex-direction:column;align-items:flex-start;gap:6px;min-height:100px;padding:14px;background:var(--surface-2);color:var(--text);border:1px solid var(--border);border-radius:14px;text-align:left}.icon-btn{width:44px;height:44px;padding:0;display:flex;align-items:center;justify-content:center;background:var(--surface-2);color:var(--text);border:1px solid var(--border-strong)}.menu-account{display:flex;align-items:center;gap:14px;text-decoration:none;color:var(--text)}.menu-account strong,.menu-account .small{display:block}.menu-avatar{width:44px;height:44px;border-radius:50%;flex:none;background:var(--surface-2);display:flex;align-items:center;justify-content:center}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.menu-section{font-size:.75rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin:1rem .25rem .4rem}.menu-list{padding:.25rem .75rem}.menu-row{display:flex;align-items:center;gap:14px;width:100%;min-height:52px;padding:0 .25rem;background:none;border:0;border-radius:0;border-bottom:1px solid var(--divider);color:var(--text);text-decoration:none;font-family:inherit;font-size:1rem;font-weight:600;text-align:left}.menu-row:last-child{border-bottom:0}.set-row>*{min-width:0}.seg{min-width:0}@media(max-width:380px){.seg-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}}.shot-row{display:flex;gap:.5rem;flex-wrap:wrap}.shot{position:relative;width:84px;height:150px;flex:none;border-radius:10px;overflow:hidden;background:var(--surface-2);border:1px solid var(--border)}.shot img{width:100%;height:100%;object-fit:cover;display:block}.shot-x{position:absolute;top:4px;right:4px;width:28px;height:28px;padding:0;border-radius:50%;background:#000000b3;color:#fff;font-size:18px;line-height:1}.public-main{padding-bottom:calc(24px + env(safe-area-inset-bottom))}.info-back{display:inline-flex;align-items:center;min-height:44px;margin:-.5rem 0 0 -.5rem;color:var(--accent);font-size:1rem;text-decoration:none}.prose p,.prose ul{margin:0 0 .6rem;line-height:1.5;overflow-wrap:anywhere}.prose p:last-child,.prose ul:last-child{margin-bottom:0}.prose ul{padding-left:1.2rem}.prose li{margin-bottom:.35rem}.prose a,.faq-a a,.legal-links a{color:var(--accent)}.faq-list{padding:.25rem 1rem}.faq{border-bottom:1px solid var(--surface-2)}.faq:last-child{border-bottom:0}.faq>summary{cursor:pointer;padding:.85rem 0;font-weight:600;list-style-position:inside;min-height:44px;overflow-wrap:anywhere}.card>.faq{border-bottom:0}.faq-a{padding:0 0 .85rem}.faq-a p{margin:0 0 .6rem;line-height:1.5;overflow-wrap:anywhere}.price-table{width:100%;border-collapse:collapse;margin:.25rem 0 .6rem}.price-table td{padding:.35rem .25rem;vertical-align:top;border-top:1px solid var(--surface-2)}.price-table td:first-child{width:2rem;font-weight:700;text-align:center}.video-list{margin:0;padding-left:1.2rem;line-height:1.8}.credits-headline{font-size:1.05rem;font-weight:700;margin:0}.legal-links{margin:.5rem 0 0}.videos-cta{width:100%;text-align:left;background:var(--surface);font:inherit;font-weight:400;border:0;padding:1rem;cursor:pointer}.guide-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin-bottom:.75rem}@media(min-width:560px){.guide-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.guide-card{display:flex;flex-direction:column;gap:.4rem;padding:0;min-width:0;background:none;border:0;color:var(--text);text-align:left;font:inherit;cursor:pointer}.guide-poster{position:relative;display:block;width:100%;aspect-ratio:9 / 16;border-radius:12px;overflow:hidden;background:var(--surface-2)}.guide-poster img{width:100%;height:100%;object-fit:cover;display:block}.guide-play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#0000008c;color:#fff;font-size:1.1rem;padding-left:3px}.guide-len{position:absolute;right:6px;bottom:6px;padding:1px 6px;border-radius:6px;background:#000000a6;color:#fff;font-size:.75rem;font-variant-numeric:tabular-nums}.guide-title{font-size:.9rem;font-weight:600;line-height:1.3;overflow-wrap:anywhere}.video-overlay{position:fixed;inset:0;z-index:60;background:#000000e6;display:flex;align-items:center;justify-content:center;padding:env(safe-area-inset-top) 0 env(safe-area-inset-bottom)}.video-frame{width:min(100vw,calc((100dvh - 56px)*.5625));display:flex;flex-direction:column}.video-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.4rem .75rem;color:#fff}.video-head .link-btn{color:#fff;font-size:1.2rem}.video-frame video{width:100%;aspect-ratio:9 / 16;background:#000;display:block}.units-seg .seg strong,.units-seg .seg span{display:block}@media(max-width:380px){.seg-row.units-seg{grid-template-columns:repeat(2,minmax(0,1fr))}}.feature-name{display:block;color:var(--text);font-size:.95rem}.feature-hint{display:block}.checklist-row{display:flex;align-items:center;gap:.6rem;padding:.55rem 0;border-bottom:1px solid var(--border)}.checklist-row:last-of-type{border-bottom:0}.checklist-tick{width:24px;height:24px;flex:none;border-radius:50%;border:2px solid var(--border-strong);display:flex;align-items:center;justify-content:center;font-size:.8rem;font-weight:800}.checklist-tick.done{background:var(--accent-dim);border-color:var(--accent-dim);color:var(--on-accent)}.checklist-row.done .checklist-label{color:var(--muted);text-decoration:line-through}.checklist-label{flex:1;min-width:0;font-size:.92rem}.checklist-row .small-btn{flex:none;white-space:nowrap}.empty-hint{margin:.25rem 0}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}:focus-visible{outline:3px solid var(--focus);outline-offset:2px}input:focus-visible,select:focus-visible,textarea:focus-visible{outline-offset:0}.nav-item:focus-visible,.switch-item:focus-visible{outline-offset:-3px;border-radius:10px}.day-nav .link-btn{min-width:44px;min-height:44px;font-size:1.35rem;line-height:1}.day-nav .link-btn.small{font-size:.9rem}.modal-head .icon-btn{flex:none}.small-btn{min-height:40px;display:inline-flex;align-items:center;justify-content:center}.bottom-nav,.sheet,.modal{box-shadow:var(--card-shadow)}.bottom-nav{z-index:20}.page-loading{min-height:50dvh}@media(prefers-reduced-motion:reduce){*:not(.breath-ring),*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.modal:focus-visible,.sheet:focus-visible{outline:none}.card .seg{background:var(--surface-2)}body:has(.rest-timer) .fab{display:none}input,select,textarea{min-width:0;max-width:100%}.field-row label{min-width:0}input[type=date],input[type=time],input[type=datetime-local],input[type=month]{-webkit-appearance:none;appearance:none;display:block;width:100%;min-height:2.9rem;text-align:left}input[type=date]::-webkit-date-and-time-value,input[type=time]::-webkit-date-and-time-value{text-align:left}.setup-progress{margin-bottom:.75rem}.setup-progress p{margin:.4rem 0 0}.setup-progress-bars{display:flex;gap:4px}.setup-progress-bars span{flex:1;height:6px;border-radius:3px;background:var(--border);transition:background .2s}.setup-progress-bars span.done,.setup-progress-bars span.current{background:var(--accent)}.equip-group{margin-top:.25rem}.equip-group-label{font-size:.75rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--muted);margin:0 0 .4rem}.setup-wait{flex-direction:column;gap:.25rem;text-align:center}.setup-wait p{margin:0}.setup-spinner{width:36px;height:36px;margin-bottom:.75rem;border-radius:50%;border:4px solid var(--border);border-top-color:var(--accent);animation:setup-spin .9s linear infinite}@keyframes setup-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.setup-spinner{animation-duration:3s}}.lib-img{width:48px;height:48px;flex:none;border-radius:10px;object-fit:cover;background:var(--surface-2)}.lib-img.lg{width:100%;height:auto;aspect-ratio:4 / 3}.lib-img-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.35rem;color:var(--muted);border:1px dashed var(--border-strong)}.lib-img-empty svg{width:60%;height:60%;opacity:.7}.lib-img-empty.lg{width:100%;aspect-ratio:16 / 7;height:auto}.lib-img-empty.lg svg{width:64px;height:64px}.lib-frames{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}.lib-row{display:flex;align-items:center;gap:.75rem;width:100%;text-align:left;background:none;border:none;border-bottom:1px solid var(--divider);padding:.5rem 0;color:inherit;font:inherit;cursor:pointer}.lib-row:last-child{border-bottom:none}.lib-row .lib-row-main{flex:1;min-width:0}.lib-row .lib-row-main strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lib-filters{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;margin-top:.5rem}.lib-filters select{width:auto;flex:1 1 8rem}.lib-steps{margin:0;padding-left:1.2rem;display:grid;gap:.35rem}.equip-chip{display:inline-flex;align-items:center;gap:.4rem}.equip-chip .lib-img{width:28px;height:28px;border-radius:7px}.lib-art{background:#fff;filter:var(--art-filter, invert(.9) hue-rotate(180deg));object-fit:contain}.lib-img.lib-art.pair{background-size:205% auto;background-position:96% 55%;background-repeat:no-repeat}.lib-img.lg.lib-art{aspect-ratio:16 / 9;object-fit:contain}.equip-chip .lib-art,.lib-row .lib-art:not(.pair){padding:3px}.moment-overlay{z-index:60}.moment-sheet{position:relative;z-index:1;text-align:center;gap:4px}.moment-emoji{font-size:44px;line-height:1;margin-top:2px}.moment-kicker{margin-top:8px;font-size:.75rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--accent)}.moment-title{margin:2px 0 0;font-size:1.4rem;font-weight:800}.moment-value{margin:0;font-size:1.1rem;font-weight:700}.moment-detail{margin:0;font-size:.9rem}.moment-actions{display:grid;gap:8px;margin-top:12px}.moment-actions .link-btn{min-height:44px}.confetti{position:fixed;inset:0;pointer-events:none;opacity:0;background:radial-gradient(circle,var(--accent) 3px,transparent 4px) 30px 60px / 80px 90px,radial-gradient(circle,var(--pink) 3px,transparent 4px) 70px 20px / 110px 70px,radial-gradient(circle,var(--warn) 2.5px,transparent 3.5px) 10px 40px / 60px 100px,radial-gradient(circle,var(--info) 2.5px,transparent 3.5px) 50px 10px / 95px 85px;animation:confetti-fall 2.8s ease-out forwards}@keyframes confetti-fall{0%{opacity:.9;background-position:30px -300px,70px -280px,10px -400px,50px -340px}70%{opacity:.8}to{opacity:0;background-position:30px 60px,70px 20px,10px 40px,50px 10px}}@media(prefers-reduced-motion:reduce){.confetti{animation:none;opacity:.6}}.moment-preview-wrap{position:relative}.moment-preview{display:block;margin:0 auto;width:auto;height:auto;max-width:100%;max-height:48dvh;border-radius:12px;background:var(--surface-2)}.moment-preview.pannable{cursor:grab;touch-action:none}.moment-preview-note{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;margin:0}.center-text{text-align:center}.moment-label{margin:0 2px 6px;font-size:.75rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.moment-photos{display:flex;gap:6px;overflow-x:auto;padding:3px;margin:-3px}.moment-thumb{flex:none;position:relative;width:56px;height:56px;padding:0;overflow:hidden;display:flex;align-items:center;justify-content:center;text-align:center;border-radius:10px;border:1px solid var(--border);background:var(--surface-2);color:var(--muted);font-size:.7rem;font-weight:600;line-height:1.2;cursor:pointer}.moment-thumb img{width:100%;height:100%;object-fit:cover;display:block}.moment-thumb.empty{border-style:dashed;border-color:var(--border-strong)}.moment-thumb.roll{border:1px dashed var(--accent-dim);color:var(--accent);font-weight:700}.moment-thumb.active{outline:2px solid var(--accent);outline-offset:1px}.moment-star{position:absolute;top:2px;right:4px;color:#fbbf24;font-size:.8rem;text-shadow:0 1px 2px rgba(0,0,0,.7)}.photo-star{font-size:1.1rem}.photo-star.on{color:var(--warn)}.moment-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin-top:10px}.moment-tile{position:relative;aspect-ratio:4 / 5;padding:4px;overflow:hidden;display:flex;align-items:center;justify-content:center;border-radius:8px;background:var(--surface-2);color:var(--text);font-weight:400}.moment-tile img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.moment-tile.has-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#0000 55%,#000000b3)}.moment-tile-cap{position:absolute;left:6px;right:6px;bottom:5px;z-index:1;text-align:left;color:#fff;font-size:.72rem;font-weight:800}.moment-tile-body{display:flex;flex-direction:column;align-items:center;gap:2px;font-size:.72rem;line-height:1.25}.moment-tile-body strong{font-size:.8rem}.moment-tile-body .muted{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.moment-tile-emoji{font-size:1.5rem;line-height:1.1}.moment-empty{text-align:center}.moment-empty-emoji{font-size:2.5rem;line-height:1}.upnext-row+.upnext-row{margin-top:10px}.upnext-bar{height:6px;margin-top:5px;border-radius:6px;background:var(--surface-2);overflow:hidden}.upnext-bar>div{height:100%;border-radius:6px;background:var(--accent)}.upnext-bar>div.warn{background:var(--warn)}.upnext-bar>div.info{background:var(--info)}.goal-list{display:flex;flex-direction:column;gap:.4rem}.goal-option{display:flex;gap:.6rem;align-items:flex-start;text-align:left;background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:12px;padding:.65rem .8rem;font-size:.95rem;font-weight:500}.goal-option .goal-dot{width:18px;height:18px;min-width:18px;margin-top:1px;border-radius:50%;border:2px solid var(--border-strong)}.goal-option.active{border-color:var(--accent-dim);background:color-mix(in srgb,var(--accent-dim) 10%,transparent)}.goal-option.active .goal-dot{border-color:var(--accent-dim);background:radial-gradient(circle,var(--accent) 0 4px,transparent 5px)}.goal-option .goal-hint{display:block;color:var(--muted);font-size:.85rem;font-weight:400;margin-top:2px}.setup-target{background:color-mix(in srgb,var(--accent-dim) 10%,transparent);border-radius:12px;padding:.7rem .8rem;font-size:.9rem;color:var(--muted)}.setup-target strong{font-size:1.15rem}.setup-sep{border-top:1px solid var(--divider);margin:.25rem 0}.fold-line{display:flex;justify-content:space-between;align-items:center;gap:.5rem;width:100%;background:var(--surface-2);color:var(--text);border:1px solid var(--border-strong);border-radius:10px;padding:.65rem .8rem;font-size:.9rem;font-weight:500;text-align:left}.share-summary{background:var(--surface-2);border-radius:12px;padding:.75rem .85rem;font-size:.9rem;color:var(--muted);line-height:1.4}.share-summary b{color:var(--text)}
