:root{--chalk: #E7EAEE;--paper: #F7F8FA;--ink: #14213D;--ink-soft: #55607A;--line: #CBD1DA;--red: #C8102E;--red-deep: #7E0A1D;--blue: #1C48C4;--blue-deep: #102B7A;--green: #0B7A45;--green-deep: #064D2B;--yellow: #F4C20D;--yellow-deep: #B88F00;--display: "DIN Condensed", "Avenir Next Condensed", "Arial Narrow", sans-serif;--text: "Avenir Next", -apple-system, "Helvetica Neue", sans-serif;--numbers: "DIN Alternate", "Avenir Next", -apple-system, sans-serif;--gutter: 20px;--side-left: max(var(--gutter), env(safe-area-inset-left));--side-right: max(var(--gutter), env(safe-area-inset-right));--radius-field: 10px;--radius-control: 14px;--radius-panel: 16px;--top: max(16px, env(safe-area-inset-top));--bottom: max(16px, env(safe-area-inset-bottom))}*{box-sizing:border-box;margin:0;-webkit-tap-highlight-color:transparent}html{-webkit-text-size-adjust:100%;background:var(--chalk);touch-action:manipulation}body{min-height:100dvh;background:var(--chalk);color:var(--ink);font:500 17px/1.35 var(--text);overscroll-behavior-y:none}body[data-view=run]{overflow:hidden}body:before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top);background:var(--ink);z-index:20}body[data-view=run]:not(:has(.finish)):before{display:none}::selection{background:var(--ink);color:#fff}html{scrollbar-color:var(--line) transparent}input{caret-color:var(--red)}input::placeholder{color:var(--ink-soft);opacity:1}button,input{font:inherit;color:inherit}button{background:none;border:0;padding:0;cursor:pointer;touch-action:manipulation;user-select:none;-webkit-user-select:none}a{color:inherit}[hidden]{display:none!important}:focus-visible{outline:3px solid var(--blue);outline-offset:2px}.player :focus-visible{outline-color:var(--on)}.resume :focus-visible{outline-color:#fff}.icon{width:24px;height:24px;display:block;flex:none}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.page{max-width:560px;margin:0 auto;padding:calc(env(safe-area-inset-top) + 12px) var(--side-right) calc(var(--bottom) + 16px) var(--side-left)}.button{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:58px;padding:12px 20px;border-radius:var(--radius-control);background:var(--paper);font-weight:700;font-size:18px}.button.primary,.button.danger{background:var(--red);color:#fff}.button:active,.row-play:active{filter:brightness(.88)}@media(hover:hover){.button:hover,.row-play:hover{filter:brightness(.94)}.st-button:not(:disabled):hover{background:var(--line)}.row-main:hover h2{text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:2px}.p-icon:hover,.p-main-button:hover{opacity:.85}}.button.add{background:transparent;border:2px solid var(--ink);margin-top:20px}.link{min-height:44px;font-weight:600;text-decoration:underline;text-underline-offset:3px}.danger-text{color:var(--red)}.bar{display:flex;align-items:flex-end;gap:2px;height:22px;width:100%}.bar.dense{gap:0}.bar i{display:block;flex:1 1 0;min-width:0;height:100%;background:var(--red)}.bar i[data-type=prepare]{background:var(--yellow);height:45%}.bar i[data-type=rest]{background:var(--blue);height:45%}.bar i[data-type=roundRest],.bar i[data-type=blockRest]{background:var(--green);height:70%}.home-head h1{font:700 76px/1 var(--display);letter-spacing:-.01em;padding-top:10px}.hint{display:flex;gap:8px;align-items:flex-start;background:var(--paper);border-radius:var(--radius-control);padding:12px 8px 12px 14px;margin-top:12px;font-size:15px}.hint p{flex:1}.hint-close{width:44px;height:44px;display:grid;place-items:center;margin:-8px 0}.hint-close .icon{width:18px;height:18px}.rows{margin-top:16px;display:grid;gap:28px}.row{display:grid;grid-template-columns:1fr auto;align-items:center;column-gap:12px}.row-main{text-align:left;min-width:0;padding:4px 0 10px}.row-main h2{font:700 32px/1.05 var(--display);overflow-wrap:anywhere}.row-main p{color:var(--ink-soft);font-size:16px}.row-main .row-total{color:var(--ink);font:700 18px/1.3 var(--numbers);margin-top:2px}.row-play{width:64px;height:64px;display:grid;place-items:center;border-radius:50%;background:var(--red);color:#fff}.row-play .icon{width:30px;height:30px}.row .bar{grid-column:1 / -1}.row-edit{color:var(--ink-soft);font:600 15px/1 var(--text);text-decoration:underline;text-underline-offset:3px;margin-left:12px}.resume{background:var(--ink);color:#fff;border-radius:var(--radius-panel);padding:14px;margin-top:12px}.resume h2{font:700 28px/1.1 var(--display)}.resume p{font-size:16px;overflow-wrap:anywhere}.resume-actions{display:flex;align-items:center;gap:16px;margin-top:10px}.resume-actions .button{flex:1;min-height:52px}.resume-actions .link{flex:none}.empty{margin-top:32px;color:var(--ink-soft)}.editor{padding-bottom:calc(var(--bottom) + 100px)}.topbar{min-height:44px;display:flex;align-items:center;justify-content:space-between;gap:12px}.saved{color:var(--ink-soft);font-size:14px;text-align:right}.back{display:flex;align-items:center;gap:2px;min-height:44px;font-weight:600;text-decoration:none;margin-left:-6px}.name{width:100%;border:0;border-bottom:2px solid var(--line);background:transparent;border-radius:0;padding:6px 0 2px;font:700 40px/1.1 var(--display)}.name:focus{outline:none;border-color:var(--ink)}.preview{position:sticky;top:env(safe-area-inset-top);z-index:5;background:var(--chalk);margin-left:calc(var(--side-left) * -1);margin-right:calc(var(--side-right) * -1);padding:10px var(--side-right) 10px var(--side-left)}.preview-text{display:flex;align-items:baseline;gap:10px;margin-bottom:6px}.preview-text strong{font:700 24px/1 var(--numbers);font-variant-numeric:tabular-nums;white-space:nowrap}.preview-text span{color:var(--ink-soft);font-size:15px}.legend{display:flex;gap:14px;margin-top:6px;font-size:13px;color:var(--ink-soft)}.legend span{display:flex;align-items:center;gap:5px}.legend span:before{content:"";width:10px;height:10px;background:var(--red)}.legend span[data-type=rest]:before{background:var(--blue)}.legend span[data-type=roundRest]:before{background:var(--green)}.blocks{display:grid;gap:14px;margin-top:6px}.block{background:var(--paper);border-radius:var(--radius-panel);padding:4px 14px 6px}.editor>.block{margin-top:14px}.block-head{display:flex;justify-content:space-between;align-items:center;padding-top:6px}.block-head h2{font:700 26px/1 var(--display)}.stepper{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:66px;padding-block:6px;border-bottom:1px solid var(--line)}.block>.stepper:last-child{border-bottom:0}.st-label{font-weight:600;line-height:1.2;min-width:0}.st-control{display:flex;align-items:center;flex:none}.st-button{width:50px;height:50px;display:grid;place-items:center;border-radius:50%;background:var(--chalk)}.st-button:active{background:var(--line)}.st-button:disabled{opacity:.35}.st-value{width:72px;text-align:center;border:0;background:transparent;font:700 22px/1 var(--numbers);font-variant-numeric:tabular-nums;padding:8px 0;border-radius:var(--radius-field)}.stepper.editing .st-value{background:var(--chalk);outline:2px solid var(--blue)}.stepper.time.editing .st-label:after{content:" (en secondes)";font-weight:500;color:var(--ink-soft)}.ex-details summary{min-height:52px;padding-block:8px;display:flex;align-items:center;justify-content:space-between;gap:8px;font-weight:600;cursor:pointer;list-style:none}.ex-details summary::-webkit-details-marker{display:none}.ex-toggle .icon:last-child,.ex-details[open] .ex-toggle .icon:first-child{display:none}.ex-details[open] .ex-toggle .icon:last-child{display:block}.ex-rows{display:grid;gap:16px;padding-bottom:12px}.ex-name{width:100%;min-height:46px;border:1px solid var(--line);border-radius:var(--radius-field);background:#fff;padding:8px 12px;font-size:17px;font-weight:600}.ex-times{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:4px}.ex-last{color:var(--ink-soft);font-size:14px;align-self:center;line-height:1.25}.stepper.compact{display:block;min-height:0;border:0;padding-top:2px}.stepper.compact .st-label{font-size:14px;color:var(--ink-soft)}.stepper.compact .st-control{justify-content:space-between}.stepper.compact .st-button{width:44px;height:44px}.stepper.compact .st-value{width:100%;min-width:0;flex:1;font-size:18px}.stepper.compact.muted .st-value{color:var(--ink-soft)}.editor-secondary{display:flex;justify-content:space-between;margin-top:14px}.launch{position:fixed;left:0;right:0;bottom:0;z-index:10;padding:10px var(--side-right) var(--bottom) var(--side-left);background:var(--chalk);border-top:1px solid var(--line)}.launch .button{max-width:520px;margin:0 auto}.launch-label{pointer-events:none}.sheet{width:100%;max-width:560px;margin:auto auto 0;border:0;border-radius:20px 20px 0 0;background:var(--paper);color:var(--ink);padding:22px var(--side-right) var(--bottom) var(--side-left)}.sheet::backdrop{background:#14213d8c}.sheet h2{font:700 30px/1.1 var(--display);overflow-wrap:anywhere}.sheet p{margin-top:6px;color:var(--ink-soft)}.sheet-actions{display:grid;gap:10px;margin-top:18px}.sheet-actions .button:not(.danger,.primary){background:var(--chalk)}.player{--on: #fff;--on-soft: rgba(255, 255, 255, .22);--bright: var(--red);--deep: var(--red-deep);position:fixed;inset:0;display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto minmax(0,1fr) auto auto;padding:var(--top) var(--side-right) var(--bottom) var(--side-left);background:var(--deep);color:var(--on);overflow:hidden}.player[data-phase=rest]{--bright: var(--blue);--deep: var(--blue-deep)}.player[data-phase=roundRest],.player[data-phase=blockRest]{--bright: var(--green);--deep: var(--green-deep)}.player[data-phase=prepare]{--bright: var(--yellow);--deep: var(--yellow-deep);--on: var(--ink);--on-soft: rgba(20, 33, 61, .22)}.fill{position:absolute;inset:0;background:var(--bright);transform-origin:bottom;will-change:transform}.player>:not(.fill){position:relative}.player.paused .p-digits{opacity:.55}.p-top{display:flex;align-items:center;justify-content:space-between}.p-icon{width:52px;height:52px;display:grid;place-items:center;border-radius:50%;background:var(--on-soft)}.p-icon:active,.p-main-button:active{opacity:.75}.p-total{font-size:17px;font-weight:600}.p-total-value{font:700 22px/1 var(--numbers);font-variant-numeric:tabular-nums}.p-bar{height:12px;margin-top:12px;align-items:stretch}.p-bar i,.p-bar i[data-type]{height:100%;background:var(--on-soft)}.p-bar i.past,.p-bar i.past[data-type]{background:var(--on)}.p-bar i.current,.p-bar i.current[data-type]{background:var(--on);opacity:.65}.p-main{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;min-height:0}.p-phase{font:700 clamp(40px,12vw,68px)/1 var(--display);overflow-wrap:anywhere;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.p-digits{font:700 min(80vw,38vh)/.86 var(--display);font-variant-numeric:tabular-nums;padding-top:.1em;transition:opacity .15s}.p-digits[data-size=long]{font-size:min(56vw,38vh)}.p-digits[data-size=xlong]{font-size:min(44vw,38vh)}.p-position{font:700 clamp(24px,7vw,32px)/1.1 var(--display)}.p-next{text-align:center;font:700 clamp(28px,8.5vw,40px)/1.05 var(--display);padding:8px 0 14px;overflow-wrap:anywhere}.player:not([data-phase=work]) .p-next{font-size:clamp(32px,9.5vw,52px)}.p-controls{display:flex;align-items:center;justify-content:center;gap:28px}.p-side{width:64px;height:64px}.p-main-button{width:92px;height:92px;display:grid;place-items:center;border-radius:50%;background:var(--on);color:var(--deep)}.player[data-phase=prepare] .p-main-button{color:var(--yellow)}.p-main-button .icon{width:44px;height:44px}@media(orientation:landscape)and (max-height:520px){.player{grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto auto minmax(0,1fr) auto;column-gap:20px}.p-top,.p-bar{grid-column:1 / -1}.p-main{grid-column:1;grid-row:3 / 5}.p-digits{font-size:min(40vw,58vh)}.p-digits[data-size=long]{font-size:min(32vw,58vh)}.p-digits[data-size=xlong]{font-size:min(28vw,58vh)}.preview{position:static}.p-phase{font-size:34px;-webkit-line-clamp:1}.p-position{font-size:20px}.p-next,.player:not([data-phase=work]) .p-next{grid-column:2;grid-row:4;padding:0;font-size:26px;max-width:280px}.p-controls{grid-column:2;grid-row:3}.p-main-button{width:76px;height:76px}.p-side{width:56px;height:56px}.p-icon{width:46px;height:46px}}.finish{position:fixed;inset:0;display:flex;flex-direction:column;justify-content:space-between;padding:calc(var(--top) + 24px) var(--side-right) var(--bottom) var(--side-left);background:#fff;color:var(--ink)}.finish h1{font:700 min(30vw,150px)/.95 var(--display)}.finish-name{font-size:22px;font-weight:700;margin-top:12px;overflow-wrap:anywhere}.finish-time{font:700 24px/1.3 var(--numbers);color:var(--ink-soft)}.finish-actions{display:grid;gap:10px}.finish-actions .button:not(.primary){background:var(--chalk)}@media(max-width:359px){.stepper:not(.compact) .st-button{width:46px;height:46px}.stepper:not(.compact) .st-value{width:60px}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}
