:root{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;color:#162e35;background:#f4f9f9;font-synthesis:none;-webkit-tap-highlight-color:transparent}*{box-sizing:border-box}html,body{margin:0;height:100%;overscroll-behavior:none}body{background:#f7fafb}.app{margin:0 auto;max-width:570px;height:100dvh;min-height:440px;display:flex;flex-direction:column;background:#f7fafb;overflow:hidden;position:relative}.app-header{display:flex;align-items:center;justify-content:space-between;padding:calc(10px + env(safe-area-inset-top)) 18px 12px;background:#fff;border-bottom:1px solid #e3eeee;flex-shrink:0}.brand{display:flex;gap:10px;align-items:center}.brand img{border-radius:10px}.brand strong{display:block;font-weight:850;font-size:20px;letter-spacing:-.6px}.brand span{display:block;font-size:9px;font-weight:800;letter-spacing:1.3px;color:#6f8b91}.connection{font-size:11px;color:#52777d;font-weight:700;white-space:nowrap}.status-dot{display:inline-block;width:8px;height:8px;background:#11ad82;border-radius:50%;margin-right:4px}.connection.wait .status-dot{background:#e5a323}.view{flex:1;overflow-y:auto;overflow-x:hidden;scrollbar-width:none;padding:16px 16px 25px}.view::-webkit-scrollbar{display:none}.tabs{flex-shrink:0;display:grid;grid-template-columns:repeat(4,1fr);padding:9px 7px calc(9px + env(safe-area-inset-bottom));background:#fff;box-shadow:0 -3px 18px #162b4b0c;border-top:1px solid #e4eeee}.tab{background:transparent;border:0;border-radius:14px;color:#789499;padding:6px 2px 5px;display:flex;flex-direction:column;gap:4px;align-items:center;justify-content:center;font-weight:700;font-size:11px;cursor:pointer}.tab.active{color:#0a9c96;background:#e4f7f4}.tab-icon{font-size:23px;height:25px;line-height:1}.eyebrow{font-size:11px;color:#77979a;letter-spacing:1.2px;text-transform:uppercase;font-weight:850}.page-head{margin:2px 2px 15px}.page-head h1{font-size:26px;margin:5px 0 5px;letter-spacing:-.7px}.page-head p{margin:0;font-size:13px;color:#6b888a;line-height:1.5}.card{background:#fff;border:1px solid #e4eeee;border-radius:19px;padding:16px;box-shadow:0 4px 15px #1a807307;margin-bottom:12px}.panel{background:#e8f8f6;border-radius:17px;padding:16px;margin-bottom:14px}.timer-panel{background:#fff;border:1px solid #e1eeec;border-radius:22px;padding:19px 13px 16px;text-align:center;box-shadow:0 6px 22px #16857809}.timer-label{color:#769096;font-weight:850;font-size:11px;letter-spacing:1.3px}.time{font-variant-numeric:tabular-nums;font-feature-settings:"tnum";letter-spacing:-1.9px;white-space:nowrap}.time-primary{font-size:clamp(40px,10.2vw,61px);font-weight:800;color:#162f38;margin:7px 0 12px}.timer-subgrid{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid #e7eeee;padding-top:14px;gap:4px}.timer-sub{min-width:0}.timer-sub+.timer-sub{border-left:1px solid #e7eeee}.timer-sub .time{font-size:clamp(21px,5.5vw,29px);letter-spacing:-.8px;font-weight:850;display:block;margin-top:5px}.timer-sub.best .time{color:#08a79e}.session-strip{display:flex;align-items:center;justify-content:space-between;gap:7px;padding:8px 3px 13px}.session-name{font-size:15px;font-weight:800;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.session-meta{font-size:12px;color:#769194;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chip{font-size:11px;font-weight:850;border-radius:30px;padding:7px 11px;background:#e8f4ed;color:#15865e;white-space:nowrap}.chip.waiting{background:#edf1fa;color:#677c98}.chip.paused{background:#fff1d9;color:#986007}.chip.finished{background:#e4f7f4;color:#155fae}.stat-line{display:flex;justify-content:space-between;align-items:center;padding:12px 3px;font-size:13px;color:#667f84}.stat-line strong{color:#253e43}.action-dock{position:sticky;bottom:5px;background:linear-gradient(180deg,transparent,#f7fafb 12%);padding-top:10px;padding-bottom:4px;z-index:4}.big-button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;width:100%;min-height:145px;border:0;border-radius:22px;background:#08a79f;color:#fff;box-shadow:0 7px 0 #08746f,0 13px 20px #0ba9a02c;font-size:29px;font-weight:900;letter-spacing:.8px;touch-action:manipulation;cursor:pointer;user-select:none;-webkit-user-select:none}.big-button:active{transform:translateY(4px);box-shadow:0 3px 0 #08746f}.big-button span{font-size:13px;font-weight:650;letter-spacing:0;color:#e5f8f5}.big-button.start{background:#0aaa9f;box-shadow:0 7px 0 #087b75,0 13px 20px #1bb9ad24}.big-button.start:active{box-shadow:0 3px 0 #087b75}.action-row{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:15px}.btn{border:1px solid #dbe9e8;background:#fff;color:#29494d;font-size:14px;font-weight:800;border-radius:13px;min-height:48px;padding:11px 14px;cursor:pointer;touch-action:manipulation}.btn:active{transform:scale(.99)}.btn.blue{background:#0aa7a0;color:#fff;border-color:#0aa7a0}.btn.light{background:#e5f8f5;color:#098e89;border-color:#e0f3f1}.btn.danger{color:#ac3f40;background:#fff4f4;border-color:#f9e4e4}.btn:disabled{opacity:.4;cursor:not-allowed}.btn.full{width:100%}.btn.small{font-size:12px;min-height:37px;padding:7px 11px}.btn.inline{width:auto}.btn.secondary{background:#f0f6f5}.field{margin-bottom:16px}.field label{font-size:13px;color:#314b51;font-weight:800;display:block;margin:0 0 7px}.field input,.field select{width:100%;background:#fff;border:1px solid #d5e6e4;border-radius:12px;min-height:49px;padding:12px 14px;color:#1c3b41;font-size:16px;outline:none}.field input:focus,.field select:focus{border-color:#0aa7a0;box-shadow:0 0 0 3px #0aa7a017}.hint{color:#789093;font-size:12px;line-height:1.6;margin:8px 0}.line{display:flex;align-items:center;justify-content:space-between;gap:9px}.stack{display:flex;flex-direction:column;gap:9px}.title-sm{font-size:16px;font-weight:850;letter-spacing:-.2px}.micro{font-size:11px;color:#7c9295}.muted{color:#6a8588}.divider{height:1px;background:#e9f0ef;margin:12px 0}.entry{display:flex;align-items:center;gap:12px;padding:11px 0;border-bottom:1px solid #edf2f7}.entry:last-child{border-bottom:none}.entry-number{font-size:12px;font-weight:850;color:#779499;min-width:50px}.entry-time{font-weight:850;font-size:17px;letter-spacing:-.3px;font-variant-numeric:tabular-nums}.entry-left{flex:1}.entry-sub{color:#749294;font-size:11px;margin-top:3px}.empty{text-align:center;padding:25px 12px;color:#7c9295}.empty-icon{font-size:37px;display:block;margin-bottom:11px}.archive-card{cursor:pointer}.archive-title{font-weight:850;font-size:17px}.badge{font-size:10px;font-weight:850;border-radius:7px;background:#edf5f4;color:#668588;padding:5px 7px}.badge.green{background:#dff8f1;color:#088e78}.badge.yellow{background:#fff3df;color:#a1690a}.badge.red{background:#ffebeb;color:#ba5151}.archive-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:13px;padding:12px 0 0;border-top:1px solid #eaf0f5}.archive-stats div{min-width:0}.archive-stats b{display:block;font-size:16px;letter-spacing:-.4px}.archive-stats small{color:#7b9194;font-size:10px}.tabs-mini{display:flex;gap:5px;background:#e9f1f0;padding:4px;border-radius:12px;margin:0 0 14px}.tabs-mini button{flex:1;border:none;border-radius:9px;padding:10px 5px;background:transparent;font-weight:800;color:#688789;font-size:12px}.tabs-mini button.selected{background:#fff;color:#089c95;box-shadow:0 1px 5px #26466519}.chart-row{display:flex;align-items:center;gap:10px;margin:13px 0}.chart-label{width:77px;flex-shrink:0;color:#5c738e;font-size:11px}.chart-track{flex:1;height:16px;border-radius:10px;background:#eef5f4;overflow:hidden}.chart-fill{height:100%;border-radius:10px;background:#10b8ac}.chart-time{font-size:11px;font-weight:800;color:#386166;white-space:nowrap}.banner{background:#fff2d6;color:#8c5b09;padding:11px 17px;font-size:12px;line-height:1.4}.hidden{display:none!important}.toast{position:absolute;z-index:20;left:18px;right:18px;bottom:calc(84px + env(safe-area-inset-bottom));background:#153c42;color:#fff;padding:12px 16px;border-radius:13px;text-align:center;font-weight:750;font-size:13px;box-shadow:0 8px 28px #10333445;pointer-events:none}.settings-row{display:flex;gap:9px;align-items:center;justify-content:space-between;margin:13px 0}.status-message{color:#586f88;font-size:12px;line-height:1.6}.tag{display:inline-flex;background:#e5f8f5;color:#0a9c96;font-size:11px;font-weight:800;border-radius:30px;padding:5px 9px}.edit-grid{display:flex;flex-wrap:wrap;gap:6px;margin:9px 0}.back{border:0;background:transparent;color:#0a9c96;padding:4px 0 16px;font-size:14px;font-weight:800}.correction-row{border-bottom:1px solid #e9f0ef;padding:13px 0}.correction-row:last-child{border:0}.correction-label{font-size:13px;font-weight:850}.correction-time{font-size:12px;color:#6e819b;margin-top:3px}.correction-actions{display:flex;flex-wrap:wrap;gap:7px;margin-top:9px}.footer-note{font-size:11px;line-height:1.65;color:#779092;margin:16px 2px}.setup-illustration{height:105px;border-radius:18px;background:linear-gradient(115deg,#dcf8f5,#edfdfa);display:flex;align-items:center;justify-content:center;font-size:53px;margin-bottom:18px}.loading{text-align:center;color:#718d91;padding:60px 10px}button:focus-visible{outline:3px solid #29c6bc;outline-offset:3px}::selection{background:#c3f3ed}@media (max-height:750px){.view{padding-top:10px}.timer-panel{padding:12px 10px}.time-primary{font-size:42px;margin:5px 0 7px}.big-button{min-height:116px}.action-row{margin-top:11px}.page-head h1{font-size:23px}}@media (min-width:580px){.app{border-left:1px solid #e5efee;border-right:1px solid #e5efee;box-shadow:0 12px 45px #0d57551a}}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}

/* LapMoto option 3 : blanc/turquoise, ergonomie solo sur iPhone 16e */
:root{color-scheme:light;--teal:#08a79f;--ink:#172d35;--sub:#6d878a}
body,.app{background:#f8fbfb}
.app-header{background:rgba(255,255,255,.98);border-bottom-color:#eaf0f0}
.brand strong{letter-spacing:-.8px;color:#122d35;font-weight:800}
.brand span{color:#8a9b9d;font-weight:750;letter-spacing:1px}
.view{padding:17px 15px 25px}
.card,.timer-panel{border:1px solid #edf1f1;box-shadow:0 5px 22px rgba(12,69,70,.045)}
.card{border-radius:22px}
.timer-panel{border-radius:24px;padding:21px 12px 19px}
.time-primary{color:#122d35;font-weight:750;letter-spacing:-2px}
.timer-sub.best .time{color:#06a79d}
.action-dock{background:linear-gradient(180deg,transparent,#f8fbfb 11%)}
.big-button{background:linear-gradient(140deg,#15bbb2,#009d97);box-shadow:0 6px 0 #07847e,0 13px 24px rgba(4,139,130,.16);border-radius:25px;min-height:150px;font-weight:850}
.big-button:active{box-shadow:0 2px 0 #07847e}
.big-button.start{background:linear-gradient(140deg,#1cbcb4,#009d97);box-shadow:0 6px 0 #07847e,0 13px 24px rgba(4,139,130,.16)}
.big-button.start:active{box-shadow:0 2px 0 #07847e}
.big-button span{color:#e5fffb}
.tab.active{color:#039f97;background:#e5f7f5}
.tab{color:#779396}
.btn.blue{background:#0aa9a2;border-color:#0aa9a2}
.btn:focus-visible,.big-button:focus-visible{outline:3px solid #21c9be;outline-offset:3px}
.field input:focus,.field select:focus{border-color:#07a8a1;box-shadow:0 0 0 3px rgba(7,168,161,.12)}
.chip,.badge.green{background:#e3f8f2;color:#068c78}
.tag{background:#e4f8f6;color:#078f89}
.chart-fill{background:#11b7ad}
.setup-illustration{background:linear-gradient(115deg,#ddf8f3,#effbfb)}
@media (max-height:750px){.big-button{min-height:116px}}
