:root{--cal:#f7f5ef;--arena:#eae2d5;--piedra:#c9bdae;--marron:#302720;--terracota:#a34f39;--piedra-profunda:#6b5f54;--noche:#1c1612;--terracota-clara:#d9876b;--error-claro:#8f2f1f;--font-serif:ui-serif, "New York", "Iowan Old Style", "Times New Roman", serif;--font-sans:system-ui, -apple-system, "SF Pro Text", "Helvetica Neue", sans-serif;--tap:3.5rem;--tap-large:4rem;--gutter:1.375rem;--bg:var(--cal);--bg-band:var(--arena);--text:var(--marron);--text-muted:var(--piedra-profunda);--rule:var(--piedra);--accent:var(--terracota);--accent-text:var(--terracota);--on-accent:var(--cal);--control:var(--arena);--control-text:var(--marron);--error:var(--error-claro);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;-webkit-text-size-adjust:100%}:root[data-theme=noche]{--bg:var(--noche);--bg-band:var(--marron);--text:var(--cal);--text-muted:var(--piedra);--rule:#4a3f36;--accent:var(--terracota-clara);--accent-text:var(--terracota-clara);--on-accent:var(--noche);--control:var(--marron);--control-text:var(--cal);--error:var(--terracota-clara);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--text);margin:0}body{min-height:100dvh;font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;font-size:1.0625rem;line-height:1.45}button,label.file-button{font:inherit;color:inherit;cursor:pointer;-webkit-user-select:none;user-select:none;touch-action:manipulation}button:disabled{cursor:default;opacity:.45}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.serif{font-family:var(--font-serif);letter-spacing:-.01em;font-weight:400}.num{font-variant-numeric:tabular-nums}.muted{color:var(--text-muted)}.small{font-size:.875rem}.strong{font-weight:600}.eyebrow{letter-spacing:.14em;text-transform:uppercase;color:var(--text-muted);margin:0;font-size:.75rem;font-weight:600}.wordmark{letter-spacing:.32em;text-transform:uppercase;font-size:.75rem;font-weight:600}.link{min-height:2.75rem;color:var(--text-muted);background:0 0;border:0;padding:0;font-size:.9375rem}.button-primary{width:100%;min-height:var(--tap);background:var(--accent);color:var(--on-accent);border:0;border-radius:.875rem;justify-content:center;align-items:center;padding:0 1rem;font-weight:600;display:flex}.button-quiet{border:1px solid var(--rule);background:0 0;border-radius:999px;justify-content:center;align-items:center;min-height:2.75rem;padding:0 .875rem;font-weight:500;display:inline-flex}.button-quiet.wide{width:100%;min-height:var(--tap);border-radius:.875rem}.danger{color:var(--error)}.screen{max-width:34rem;padding:calc(env(safe-area-inset-top) + 1rem) var(--gutter) calc(env(safe-area-inset-bottom) + 6rem);margin:0 auto}.masthead{justify-content:space-between;align-items:center;min-height:2.75rem;display:flex}.date{margin:1.5rem 0 0;font-size:2.375rem;line-height:1.08}.date span{color:var(--text-muted);display:block}.page-title{margin:1.25rem 0 .5rem;font-size:2rem;line-height:1.1}.primary{margin:1.75rem calc(var(--gutter) * -1) 0;padding:1.5rem var(--gutter) var(--gutter);background:var(--bg-band)}.primary h1,.primary h2{margin:.375rem 0 .25rem;font-size:2rem;line-height:1.1}.primary p.muted{margin:0 0 1.25rem}.primary h1+.button-primary{margin-top:1.25rem}section+section,.primary+section{margin-top:2.25rem}.section-title{margin:0 0 .75rem}.rows{margin:0;padding:0;list-style:none}.rows li{border-top:1px solid var(--rule);align-items:baseline;gap:1rem;padding:.875rem 0;display:flex}.rows li:last-child{border-bottom:1px solid var(--rule)}.rows .time{min-width:3.25rem;color:var(--text-muted)}.rows .what{flex:1}.rows .state{color:var(--text-muted);font-size:.9375rem}.rows .state.is-live{color:var(--accent-text);font-weight:600}.summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;margin:0;display:grid}.summary dt{color:var(--text-muted);font-size:.8125rem}.summary dd{margin:.125rem 0 0;font-size:1.75rem;line-height:1.15}.summary dd small{font-family:var(--font-sans);color:var(--text-muted);font-size:.8125rem;display:block}.backup-line{width:100%;min-height:var(--tap);border:0;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);text-align:left;background:0 0;justify-content:space-between;align-items:center;padding:0;display:flex}.backup-line.is-due span:last-child{color:var(--accent-text);font-weight:600}.facts{gap:.625rem;margin:0;display:grid}.facts div{justify-content:space-between;gap:1rem;display:flex}.facts dt{color:var(--text-muted)}.facts dd{text-align:right;margin:0;font-weight:600}.stack{gap:.625rem;margin:1.25rem 0;display:grid}.file-button{position:relative;overflow:hidden}.file-button input{opacity:0;cursor:pointer;position:absolute;inset:0}.notice{border-left:3px solid var(--accent);background:var(--bg-band);margin:1rem 0;padding:.875rem 1rem}.notice p{margin:0}.notice ul{margin:.5rem 0 0;padding-left:1.25rem;font-size:.9375rem}.notice.is-error{border-color:var(--error)}.notice.floating{top:env(safe-area-inset-top);z-index:5;max-width:34rem;margin:0 auto;position:sticky}.tabbar{padding:.25rem .5rem calc(env(safe-area-inset-bottom) + .25rem);background:color-mix(in srgb, var(--bg) 94%, transparent);border-top:1px solid var(--rule);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);grid-template-columns:repeat(4,1fr);display:grid;position:fixed;inset:auto 0 0}.tabbar button{min-height:var(--tap);color:var(--text-muted);background:0 0;border:0;flex-direction:column;justify-content:center;align-items:center;gap:.3rem;font-size:.8125rem;font-weight:500;display:flex}.tabbar button:before{content:"";border-radius:2px;width:1.25rem;height:2px}.tabbar button[aria-current=page]{color:var(--text);font-weight:600}.tabbar button[aria-current=page]:before{background:var(--accent)}.tabbar button:disabled{opacity:.4}.session{flex-direction:column;max-width:34rem;min-height:100dvh;margin:0 auto;display:flex}.reading{padding:calc(env(safe-area-inset-top) + .5rem) var(--gutter) .75rem;flex:1}.topbar{grid-template-columns:1fr auto 1fr;align-items:center;min-height:2.75rem;display:grid}.topbar .link{justify-self:start}.topbar .link.end{justify-self:end}.topbar-title{font-size:.9375rem;font-weight:600}.position{background:0 0;border:0;align-items:center;gap:.75rem;width:100%;min-height:2.75rem;margin-top:.25rem;padding:0;font-size:.9375rem;display:flex}.position .steps{flex:1;grid-auto-columns:1fr;grid-auto-flow:column;gap:4px;display:grid}.position .steps i{background:var(--rule);border-radius:3px;height:3px}.position .steps i.done{background:var(--text-muted)}.position .steps i.now{background:var(--accent)}.exercise{margin:.75rem 0 0;font-size:2.125rem;line-height:1.08}.identity{color:var(--text-muted);margin:.375rem 0 0}.reference{border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);grid-template-columns:1fr 1fr;gap:1rem;margin:1rem 0 0;padding:.75rem 0;display:grid}.reference dt{color:var(--text-muted);font-size:.8125rem}.reference dd{margin:.125rem 0 0;font-weight:500}.sets{margin:.5rem 0 0;padding:0;list-style:none}.sets button,.sets .current{border:0;border-bottom:1px solid var(--rule);text-align:left;background:0 0;grid-template-columns:2.5rem 1fr auto;align-items:baseline;width:100%;min-height:2.75rem;padding:.5rem 0;font-size:1.125rem;display:grid}.sets .index,.sets .note{color:var(--text-muted);font-size:.9375rem;font-weight:400}.sets .current{border-left:3px solid var(--accent);background:var(--bg-band);width:calc(100% + .75rem);margin-left:-.75rem;padding-left:.75rem;font-size:1.375rem;font-weight:600}.rest{min-height:4rem;padding:.5rem var(--gutter);background:var(--bg-band);align-items:center;gap:.625rem;display:flex}.rest .clock{flex:1;align-items:baseline;gap:.625rem;display:flex}.rest .label{color:var(--text-muted);font-size:.875rem}.rest .time{font-size:2.25rem;font-weight:300;line-height:1}.rest.is-idle .time{color:var(--text-muted);font-size:1.125rem}.rest.is-over .time,.rest.is-over .label{color:var(--accent-text);font-weight:600}.rest .button-quiet{min-width:var(--tap);min-height:var(--tap)}.controls{padding:.75rem var(--gutter) calc(env(safe-area-inset-bottom) + .75rem);background:var(--bg);position:sticky;bottom:0}.feedback{justify-content:space-between;align-items:center;gap:.75rem;min-height:2.75rem;margin-bottom:.5rem;font-size:.9375rem;display:flex}.feedback.is-error{color:var(--error);font-weight:600}.feedback button{border:1px solid var(--text-muted);background:0 0;border-radius:999px;min-height:2.75rem;padding:0 1rem;font-weight:600}.rir-block p{color:var(--text-muted);margin:0 0 .5rem;font-size:.9375rem}.rir{grid-template-columns:repeat(5,1fr);gap:.375rem;margin-bottom:.75rem;display:grid}.rir button{border:1px solid var(--rule);background:0 0;border-radius:.75rem;min-height:3rem;font-size:1.125rem}.rir button[aria-pressed=true]{background:var(--text);color:var(--bg);border-color:var(--text)}.stepper{grid-template-columns:var(--tap-large) 1fr var(--tap-large);align-items:center;gap:.75rem;display:grid}.stepper+.stepper{margin-top:.625rem}.stepper button{height:var(--tap-large);background:var(--control);color:var(--control-text);border:0;border-radius:1rem;font-size:2rem;font-weight:300;line-height:1}.stepper-value{text-align:center}.stepper-value strong{letter-spacing:-.02em;font-size:3rem;font-weight:300;line-height:1;display:block}.stepper-value span{letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted);margin-top:.25rem;font-size:.75rem;display:block}.confirm-row{grid-template-columns:auto 1fr;gap:.5rem;margin-top:.875rem;display:grid}.type-toggle{min-width:var(--tap-large);min-height:var(--tap-large);border:1px solid var(--rule);color:var(--text-muted);background:0 0;border-radius:1rem;padding:0 .75rem;font-size:.875rem}.type-toggle[aria-pressed=true]{background:var(--text);color:var(--bg);border-color:var(--text)}.confirm{min-height:var(--tap-large);border-radius:1rem;font-size:1.1875rem}.controls>.confirm+.button-quiet{margin-top:.5rem}.origin{text-align:center;color:var(--text-muted);margin:.5rem 0 0;font-size:.8125rem}.sheet{width:100%;max-width:34rem;padding:1.25rem var(--gutter) calc(env(safe-area-inset-bottom) + 1.25rem);background:var(--bg-band);color:var(--text);border:0;border-radius:1.25rem 1.25rem 0 0;margin:auto auto 0}.sheet::backdrop{background:#00000073}.sheet-title{margin:0 0 1rem;font-size:1.5rem}.sheet .stepper button{background:var(--bg)}.sheet-actions{gap:.5rem;margin-top:1rem;display:grid}.sheet-actions .button-quiet{min-height:var(--tap);border-radius:.875rem}.list{margin:0;padding:0;list-style:none}.list li{border-bottom:1px solid var(--rule);justify-content:space-between;gap:1rem;display:flex}.list li>span{padding:.75rem 0}.list li button{text-align:left;background:0 0;border:0;justify-content:space-between;width:100%;min-height:2.75rem;padding:.5rem 0;display:flex}.list .strong{font-weight:600}.update-banner{max-width:34rem;margin:calc(env(safe-area-inset-top) + .75rem) auto 0;padding:1rem var(--gutter);border-top:2px solid var(--accent);background:var(--bg-band)}.update-banner p{margin:0 0 .75rem;font-weight:600}.update-banner .update-detail{color:var(--text-muted);margin:-.25rem 0 .75rem;font-weight:400}.update-actions{flex-wrap:wrap;gap:.75rem;display:flex}.update-actions button{border-radius:.75rem;min-height:3rem;padding:0 1.25rem;font-weight:600}.update-actions .button-primary{width:auto}.button-secondary{color:var(--text);border:1px solid var(--rule);background:0 0}
