:root{--bg:#f9fafb;--surface:#fff;--text:#111827;--muted:#6b7280;--border:#e5e7eb;--accent:#d97706;--accent-text:#fff;--header-bg:#1f2937;--header-text:#f9fafb;--nav-height:4rem;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;color:var(--text);background:var(--bg);-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;line-height:1.5}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--bg:#111827;--surface:#1f2937;--text:#f3f4f6;--muted:#9ca3af;--border:#374151;--accent:#f59e0b;--accent-text:#111827;--header-bg:#0b1220}}*,:before,:after{box-sizing:border-box}html,body{margin:0;overflow-x:hidden}body{background:var(--bg);overflow-wrap:anywhere}img,svg{max-width:100%}h1{margin:0 0 .5rem;font-size:1.5rem}a{color:var(--accent)}button{font:inherit;background:var(--accent);min-height:2.75rem;color:var(--accent-text);cursor:pointer;border:0;border-radius:.5rem;padding:0 1rem;font-weight:600}button.secondary{color:inherit;background:0 0;border:1px solid}button.small{min-height:2.25rem;padding:0 .75rem;font-size:.875rem}button:disabled{opacity:.5;cursor:not-allowed}.error{color:#dc2626}.muted{color:var(--muted)}.list{margin:0 0 1rem;padding:0;list-style:none}.list li{border-bottom:1px solid var(--border);padding:.75rem 0}.shell{grid-template-rows:auto 1fr;grid-template-areas:"header""main";min-height:100dvh;display:grid}.shell-header{min-width:0;padding:calc(.75rem + env(safe-area-inset-top)) calc(1rem + env(safe-area-inset-right)) .75rem calc(1rem + env(safe-area-inset-left));background:var(--header-bg);color:var(--header-text);grid-area:header;justify-content:space-between;align-items:center;gap:.75rem;display:flex;position:relative}.brand{color:inherit;white-space:nowrap;flex-shrink:0;align-items:center;gap:.5rem;margin-right:auto;font-size:1.125rem;font-weight:700;text-decoration:none;display:inline-flex}.account{flex:0 auto;align-items:center;gap:.5rem;min-width:0;display:flex}.account button{white-space:nowrap;flex-shrink:0}.account-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;max-width:10rem;font-size:.875rem;overflow:hidden}@media (width<=28rem){.brand-name{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}}@media (width<=22rem){.account-name{display:none}}.banner{color:#78350f;background:#fef3c7;border-radius:.5rem;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem 1rem;margin-bottom:1rem;padding:.75rem 1rem;display:flex}.banner-actions{gap:.5rem;display:flex}.crash{padding:1rem 0}.crash-detail{font-family:ui-monospace,monospace;font-size:.8125rem}.crash-actions{flex-wrap:wrap;gap:.5rem;display:flex}.login{max-width:24rem;min-height:100dvh;padding:calc(1.5rem + env(safe-area-inset-top)) 1.5rem calc(1.5rem + env(safe-area-inset-bottom));text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:.75rem;margin:0 auto;display:flex}.login p{margin:0}.login button{width:100%}.badge{color:#fff;white-space:nowrap;background:#b91c1c;border-radius:999px;padding:.125rem .625rem;font-size:.8125rem;font-weight:600}.sync-badge{font:inherit;cursor:pointer;background:#4b5563;border:0;min-height:0;font-size:.8125rem;font-weight:600;line-height:1.5}.sync-panel{z-index:30;border:1px solid var(--border);background:var(--surface);max-width:22rem;color:var(--text);border-radius:.5rem;margin-left:auto;padding:.75rem 1rem;position:absolute;top:calc(100% + .25rem);left:.5rem;right:.5rem;box-shadow:0 8px 24px #0003}.sync-panel p{margin:0 0 .5rem}.sync-facts{grid-template-columns:auto 1fr;gap:.125rem .75rem;margin:0 0 .75rem;font-size:.875rem;display:grid}.sync-facts dt{color:var(--muted)}.sync-facts dd{margin:0}.sync-actions{flex-wrap:wrap;gap:.5rem;display:flex}.sync-badge.ok{background:#166534}.sync-badge.error{background:#b91c1c}.shell-main{width:100%;min-width:0;max-width:60rem;padding:1rem calc(1rem + env(safe-area-inset-right)) calc(var(--nav-height) + 5rem + env(safe-area-inset-bottom)) calc(1rem + env(safe-area-inset-left));grid-area:main;margin:0 auto}.shell-nav{z-index:10;min-height:var(--nav-height);padding:0 env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);background:var(--surface);border-top:1px solid var(--border);grid-auto-columns:1fr;grid-auto-flow:column;display:grid;position:fixed;inset:auto 0 0}.nav-link{min-width:0;color:var(--muted);flex-direction:column;justify-content:center;align-items:center;gap:.125rem;font-size:.75rem;text-decoration:none;display:flex}.nav-link svg,.fab svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:1.5rem;height:1.5rem}.nav-link.active{color:var(--accent);font-weight:600}.fab{z-index:11;right:calc(1rem + env(safe-area-inset-right));bottom:calc(var(--nav-height) + 1rem + env(safe-area-inset-bottom));background:var(--accent);min-height:3.5rem;color:var(--accent-text);border-radius:1.75rem;align-items:center;gap:.5rem;padding:0 1.25rem 0 1rem;font-weight:700;text-decoration:none;display:inline-flex;position:fixed;box-shadow:0 4px 12px #00000040}.toast{z-index:20;left:1rem;right:1rem;top:calc(4.5rem + env(safe-area-inset-top));background:var(--surface);border:1px solid var(--border);border-radius:.75rem;flex-wrap:wrap;align-items:center;gap:.5rem;padding:.75rem 1rem;display:flex;position:fixed;box-shadow:0 4px 12px #0003}.toast span{flex:12rem}h2{margin:1.25rem 0 .5rem;font-size:1.125rem}input{font:inherit;border:1px solid var(--border);background:var(--surface);width:100%;min-height:2.75rem;color:inherit;border-radius:.5rem;padding:.5rem .75rem}input[aria-invalid=true]{border-color:#dc2626}a.button{background:var(--accent);min-height:2.75rem;color:var(--accent-text);white-space:nowrap;border-radius:.5rem;align-items:center;padding:0 1rem;font-weight:600;text-decoration:none;display:inline-flex}button.danger{color:#fff;background:#dc2626}button.icon{min-width:2.75rem;color:inherit;border:1px solid var(--border);background:0 0;padding:0;font-size:1.125rem}.page-head{justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.5rem;display:flex}.page-head h1{margin:0}.back{margin:0 0 .5rem}.back a{text-decoration:none}.form{flex-direction:column;gap:.75rem;display:flex}.card{border:1px solid var(--border);background:var(--surface);border-radius:.75rem;margin-bottom:1rem;padding:1rem}.field{flex-direction:column;gap:.25rem;min-width:0;display:flex}.field label{font-size:.875rem;font-weight:600}.field-error,.field-hint{font-size:.8125rem}.field-error{color:#dc2626}.form-actions{flex-wrap:wrap;gap:.75rem;margin-top:.5rem;display:flex}.form-actions button[type=submit]{flex:8rem}.form .error,.entry .error{margin:0}.entries{flex-direction:column;gap:.75rem;margin:0;padding:0;list-style:none;display:flex}.entry{border:1px solid var(--border);background:var(--surface);border-radius:.75rem;flex-direction:column;gap:.5rem;padding:.75rem;display:flex}.entry-head{align-items:center;gap:.5rem;display:flex}.entry-name{flex:1;min-width:0;font-weight:600}.entry-buttons{flex-shrink:0;gap:.25rem;display:flex}.entry-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem;display:grid}@media (width>=36rem){.entry-fields{grid-template-columns:repeat(4,minmax(0,1fr))}}.picker{border:1px solid var(--accent);background:var(--surface);border-radius:.75rem;flex-direction:column;gap:.5rem;padding:.75rem;display:flex}.picker-head{justify-content:space-between;align-items:center;gap:.5rem;font-weight:600;display:flex}.picker-list{max-height:50dvh;margin:0;padding:0;list-style:none;overflow-y:auto}.picker-item{border-bottom:1px solid var(--border);width:100%;color:inherit;text-align:left;background:0 0;border-radius:0;justify-content:space-between;gap:.5rem;padding:0 .25rem;font-weight:400;display:flex}.row,.row-link{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.25rem .75rem;display:flex}.row-link{min-height:2.75rem;color:inherit;text-decoration:none}.row-text{flex-direction:column;min-width:0;display:flex}.row-buttons{gap:.5rem;display:flex}.issues{margin:0 0 1rem;padding:0;list-style:none}.issues .banner{margin-bottom:.5rem}.workout-head{justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.workout-clock{font-variant-numeric:tabular-nums;margin:0 0 .75rem;font-size:2rem;font-weight:700}.exercises{margin:0 0 1rem;padding:0;list-style:none}.exercise.current{border-color:var(--accent);border-width:2px}.exercise-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:0 .75rem;display:flex}.exercise-head h2{margin:0 0 .5rem}.exercise-head .muted{font-variant-numeric:tabular-nums}.sets{margin:0 0 .75rem;padding:0;list-style:none}.set{border-bottom:1px solid var(--border);font-variant-numeric:tabular-nums;grid-template-columns:1.5rem minmax(0,1fr) auto;gap:.5rem;padding:.375rem 0;display:grid}.set-n{color:var(--muted)}.set.completed .set-result{font-weight:600}.set.skipped .set-result,.set.started .set-result{color:var(--muted)}.set-form{flex-direction:column;gap:.5rem;display:flex}.set-clock{font-variant-numeric:tabular-nums;margin:0}.set-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem;display:grid}.set-fields input{font-size:1.25rem}.set.editable{grid-template-columns:1.5rem minmax(0,1fr) auto auto;align-items:center}.set-note{color:var(--muted);font-size:.8125rem;font-weight:400}.set-editor{margin:0 0 .75rem;padding-top:.5rem}.set-editor h3{margin:0;font-size:1rem}.set-editor p{margin:0}.checkbox{align-items:center;gap:.5rem;min-height:2.75rem;display:flex}.checkbox input{width:1.25rem;height:1.25rem;min-height:1.25rem;margin:0}.summary-table .set-action{text-align:right}.totals{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin:1rem 0;display:grid}.totals div{border:1px solid var(--border);background:var(--surface);border-radius:.75rem;padding:.75rem}.totals dt{color:var(--muted);font-size:.875rem}.totals dd{font-variant-numeric:tabular-nums;margin:0;font-size:1.25rem;font-weight:700}@media (width>=36rem){.totals{grid-template-columns:repeat(4,minmax(0,1fr))}}.summary-table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%}.summary-table th,.summary-table td{border-bottom:1px solid var(--border);text-align:left;padding:.375rem .25rem}.summary-table th{color:var(--muted);font-size:.875rem}.summary-table tr.met .verdict{color:#16a34a}.summary-table tr.missed .verdict{color:#dc2626;font-size:.875rem}@media (width>=48rem){.shell{grid-template:"header nav""main main"1fr/auto 1fr}.shell-nav{background:var(--header-bg);border:0;grid-area:nav;grid-auto-columns:auto;justify-content:end;gap:.5rem;min-height:0;padding:0 1rem;position:static}.nav-link{color:#d1d5db;flex-direction:row;gap:.375rem;padding:0 .75rem;font-size:.9375rem}.nav-link svg{width:1.25rem;height:1.25rem}.shell-main{padding:1.5rem 1.5rem 7rem}.fab{bottom:1.5rem;right:1.5rem}.toast{max-width:24rem;left:auto}}.print-controls{gap:.5rem;display:grid}.print-controls h1{margin:0}.print-controls .checkbox{min-height:2.25rem}.print-controls .field-hint{margin:0}.print-actions{flex-wrap:wrap;align-items:center;gap:.5rem 1.25rem;display:flex}.report{--ink:#000;--ink-soft:#3a3a3a;--rule-soft:#8c8c8c;max-width:210mm;color:var(--ink);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;overflow-wrap:break-word;background:#fff;border-radius:.25rem;margin:0 auto;padding:1.25rem 1rem 1.5rem;font-size:.8125rem;line-height:1.35;overflow-x:auto;box-shadow:0 1px 2px #0003,0 8px 28px #0000001f}.report p{margin:0}.report-head{border-bottom:2px solid var(--ink);flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:.5rem 1.5rem;padding-bottom:.75em;display:flex}.report-kicker{letter-spacing:.14em;text-transform:uppercase;font-size:.75em;font-weight:700}.report-title{margin:.1em 0 0;font-size:1.75em;line-height:1.15}.report-meta{color:var(--ink-soft);text-align:right;font-size:.875em}.report-totals{font-variant-numeric:tabular-nums;flex-wrap:wrap;gap:.5em 2em;width:100%;margin:.25em 0 0;display:flex}.report-totals dt{color:var(--ink-soft);letter-spacing:.08em;text-transform:uppercase;font-size:.7em;font-weight:600}.report-totals dd{margin:0;font-size:1.25em;font-weight:700}.report-empty{color:var(--ink-soft);text-align:center;padding:2em 0}.report-workout{margin-top:1.75em}.report-workout-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:0 1em;margin-bottom:.4em;display:flex}.report-workout-head h3{margin:0;font-size:1.2em}.report-when{font-weight:600}.report-workout-meta{color:var(--ink-soft);flex-basis:100%;font-size:.875em}.report-table{border-collapse:collapse;border-top:2px solid var(--ink);border-bottom:2px solid var(--ink);font-variant-numeric:tabular-nums;width:100%;min-width:19rem}.report-table .col-exercise{width:34%}.report-table .col-set{width:7%}.report-table th,.report-table td{text-align:right;vertical-align:top;padding:.3em .5em}.report-table thead th{color:var(--ink-soft);letter-spacing:.06em;text-transform:uppercase;vertical-align:bottom;white-space:nowrap;font-size:.72em;font-weight:600}.report-table thead tr:last-child th,.report-table thead th[rowspan]{border-bottom:1px solid var(--ink)}.report-table th.report-group{text-align:center;padding-bottom:.45em;position:relative}.report-table th.report-group:after{content:"";border-bottom:1px solid var(--ink-soft);position:absolute;bottom:.15em;left:.5em;right:.5em}.report-table .report-exercise{text-align:left;padding-left:0}.report-table tbody th.report-exercise{font-weight:600}.report-table .report-set{color:var(--ink-soft);text-align:center}.report-table .report-done-start{padding-left:1.25em}.report-table tbody+tbody{border-top:1px solid var(--rule-soft)}.report-table tbody tr:first-child>*{padding-top:.45em}.report-table tbody tr:last-child>*{padding-bottom:.45em}.report-expected{color:var(--ink-soft)}.report-done{font-weight:700}.report-table td:last-child{padding-right:1.1em;position:relative}.report-table thead tr:last-child th:last-child{padding-right:1.1em}.report-mark{cursor:help;font-weight:400;text-decoration:none;position:absolute;right:.2em}.report-status{color:var(--ink-soft);font-style:italic}.report-none{color:var(--ink-soft)}.report-unit{text-transform:none;letter-spacing:0}.report-head .report-legend{width:100%;color:var(--ink-soft);flex-wrap:wrap;gap:.25em 1.5em;font-size:.8em;display:flex}@media (width>=48rem){.report{padding:14mm 13mm;font-size:.875rem}}@page{size:A4 portrait;margin:10mm 10mm 12mm;@bottom-left{content:"Strongman · workout report";color:#555;font:6.5pt system-ui,-apple-system,Segoe UI,Roboto,sans-serif}@bottom-right{content:counter(page) " / " counter(pages);color:#555;font:6.5pt system-ui,-apple-system,Segoe UI,Roboto,sans-serif}}@media print{.shell-header,.shell-nav,.fab,.banner,.issues,.toast,.modal-backdrop,.print-controls{display:none!important}html,body{color:#000;background:#fff;overflow:visible}.shell{min-height:0;display:block}.shell-main{max-width:none;padding:0}.report{max-width:none;box-shadow:none;border-radius:0;padding:0;font-size:7.5pt;line-height:1.15;overflow:visible}.report-head{break-after:avoid;border-bottom-width:1.5pt;align-items:baseline;gap:.15em 1.5em;padding-bottom:.4em}.report-title{font-size:1.6em}.report-meta{order:3}.report-totals{order:2;gap:0 1.25em;width:auto;margin:0}.report-totals dt{font-size:.7em}.report-totals dd{font-size:1.1em}.report-head .report-legend{order:4;font-size:.85em}.report-body{columns:2;column-rule:.5pt solid #b0b0b0;column-gap:7mm;margin-top:3.5mm}.report-empty{padding:1em 0}.report-workout-head{margin-bottom:.15em}.report-workout-head h3{font-size:1.1em}.report-when{font-size:.9em}.report-workout-meta{font-size:.85em}.report-table{table-layout:fixed;border-top-width:1.2pt;border-bottom-width:1.2pt;min-width:0}.report-table .col-exercise{width:34%}.report-table .col-set{width:8%}.report-table th,.report-table td{padding:.02em .35em}.report-table thead th{letter-spacing:.04em;padding-top:.15em;padding-bottom:.15em;font-size:.8em}.report-table th.report-group{padding-bottom:.3em}.report-table th.report-group:after{bottom:.1em;left:.35em;right:.35em}.report-table .report-done-start{padding-left:.9em}.report-table tbody tr:first-child>*{padding-top:.15em}.report-table tbody tr:last-child>*{padding-bottom:.15em}.report-table td:last-child,.report-table thead tr:last-child th:last-child{padding-right:.9em}.report-long{display:none}.report-workout{break-inside:avoid;margin:0 0 3.5mm}.report-workout-head{break-after:avoid}.report-table thead{display:table-header-group}.report-table tbody,.report-table tr{break-inside:avoid}}.modal-backdrop{z-index:30;background:#00000080;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.modal{width:100%;max-width:28rem;max-height:100%;margin:0;overflow-y:auto;box-shadow:0 8px 24px #0000004d}.modal h2{margin-top:0}a.button.secondary{color:inherit;background:0 0;border:1px solid}a.button.small{min-height:2.25rem;padding:0 .75rem;font-size:.875rem}.elsewhere-badge{margin:0 0 .75rem;display:inline-block}.leftovers summary{cursor:pointer;font-weight:600}.leftover-list{margin:0 0 .75rem;padding-left:1.25rem}.leftover-list li{overflow-wrap:anywhere}.leftover-list time{color:var(--muted);font-variant-numeric:tabular-nums}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.record-missed{margin:.5rem 0 0}.card>h2:first-child{margin-top:0}.card h3{margin:1rem 0 .5rem;font-size:.9375rem}.stat-tiles{grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem;margin:0;display:grid}@media (width>=36rem){.stat-tiles{grid-template-columns:repeat(4,minmax(0,1fr))}}.stat-tile{border:1px solid var(--border);border-radius:.5rem;padding:.625rem .75rem}.stat-tile dt{color:var(--muted);font-size:.8125rem}.stat-tile dd{font-variant-numeric:tabular-nums;overflow-wrap:anywhere;margin:.125rem 0 0;font-size:1.25rem;font-weight:700}.chart,.chart-placeholder{height:200px}.chart{font-size:.75rem}.chart .recharts-cartesian-axis-tick-value{fill:var(--muted)}.chart .recharts-tooltip-wrapper{font-size:.875rem}.field select{font:inherit;border:1px solid var(--border);background:var(--surface);width:100%;min-height:2.75rem;color:inherit;border-radius:.5rem;padding:.5rem .75rem}p.small{font-size:.8125rem}.range-picker{flex-direction:column;align-items:flex-start;gap:.75rem;display:flex}.range-kinds{gap:.5rem;display:flex}.range-kinds button[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:var(--accent-text)}.range-nav{flex-wrap:wrap;align-items:center;gap:.5rem;width:100%;display:flex}.range-nav>button:not(.range-today){min-width:2.75rem;font-size:1.25rem}.range-title{margin:0;font-size:1.0625rem}.range-nav .range-title{text-align:center;flex:1;min-width:0}.range-days{grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem;width:100%;display:grid}.range-days .field{margin:0}.range-days input{width:100%;min-width:0}@media (width>=36rem){.stat-tiles.six{grid-template-columns:repeat(3,minmax(0,1fr))}}
