:root{--bg: #f2f2f7;--card: #ffffff;--text: #111111;--secondary: #6e6e73;--separator: #e5e5ea;--blue: #007aff;--accent: var(--blue);--danger: #ff3b30;--green: #34c759;--orange: #ff9500;--tertiary: #c7c7cc;--warning-bg: #fff4e5;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Segoe UI,Roboto,sans-serif;color:var(--text);background:var(--bg);-webkit-text-size-adjust:100%}@media(prefers-color-scheme:dark){:root{--bg: #000000;--card: #1c1c1e;--text: #f5f5f7;--secondary: #98989d;--separator: #38383a;--blue: #0a84ff;--warning-bg: #3a2a10;--tertiary: #48484a}}*{box-sizing:border-box}body{margin:0;background:var(--bg)}button{font:inherit;color:inherit;background:none;border:none;cursor:pointer}input{font:inherit;color:var(--text);background:transparent;border:none;outline:none;min-width:0}.app{min-height:100dvh;display:flex;flex-direction:column}.content{flex:1;padding:calc(env(safe-area-inset-top) + 12px) 16px calc(env(safe-area-inset-bottom) + 84px);max-width:720px;width:100%;margin:0 auto}h1{font-size:32px;margin:8px 0 16px}h2{font-size:13px;text-transform:uppercase;color:var(--secondary);font-weight:500;margin:24px 12px 8px}.secondary{color:var(--secondary)}.card{background:var(--card);border-radius:14px;padding:14px 16px}.form{display:flex;flex-direction:column;gap:12px}.row{display:flex;align-items:center;gap:8px;justify-content:space-between;border-bottom:1px solid var(--separator);padding-bottom:8px}.row input{flex:1;font-size:17px}.row input[type=date]{flex:0 0 auto;text-align:right;color:var(--accent)}.list{display:flex;flex-direction:column}.list-row{display:flex;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid var(--separator)}.list-row:last-child{border-bottom:none}.list-row .value{margin-left:auto;color:var(--secondary);font-variant-numeric:tabular-nums}.primary{background:var(--accent);color:#fff;border-radius:12px;padding:12px;font-weight:600}.primary:disabled{opacity:.4}.link{color:var(--accent);padding:10px 0;text-align:left}.danger{color:var(--danger)}.tabbar{position:fixed;left:0;right:0;bottom:0;display:flex;justify-content:space-around;padding:6px 4px calc(env(safe-area-inset-bottom) + 6px);background:color-mix(in srgb,var(--card) 85%,transparent);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-top:1px solid var(--separator)}.tabbar button{display:flex;flex-direction:column;align-items:center;gap:2px;font-size:10px;color:var(--secondary);flex:1;padding:4px 0}.tabbar button.active{color:var(--accent)}.tab-icon{font-size:22px;filter:grayscale(1);opacity:.7}.tabbar button.active .tab-icon{filter:none;opacity:1}.banner{border-radius:12px;padding:10px 14px;margin-bottom:12px;font-size:14px}.banner.offline{background:var(--card);color:var(--secondary)}.banner.warning{background:var(--warning-bg)}.banner button{color:var(--accent);font-weight:600}.login{min-height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:24px;text-align:center;max-width:420px;margin:0 auto}.login-icon{width:96px;height:96px;border-radius:22px}.login h1{margin:0}.google-button{min-height:44px}.dev-login{display:flex;flex-direction:column;gap:10px;width:100%;text-align:left}.dev-login input{border-bottom:1px solid var(--separator);padding:8px 0;font-size:17px}.error{color:var(--danger)}:root[data-frauenpower="1"]{--accent: rgb(230,102,148)}:root[data-frauenpower="1"] body{background:linear-gradient(180deg,#e6669429,#bd8fed17 50%,#ffb8b30f) fixed,var(--bg)}.grow{flex:1;min-width:0}.left{text-align:left}.full{width:100%}.bold{font-weight:600}.small{font-size:15px}.caption{font-size:12px}.center-text{text-align:center}.accent{color:var(--accent)}.green{color:var(--green)}.orange{color:var(--orange)}.tertiary{color:var(--tertiary)}.strike{text-decoration:line-through}.row-between{display:flex;justify-content:space-between;align-items:center;gap:8px}.row-inline{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.clamp-2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}h3{margin:4px 0;font-size:20px}p{margin:4px 0}.list-section{margin-bottom:8px}.section-footer{font-size:13px;color:var(--secondary);margin:6px 12px 0}.card.list>*+.list-row,.card.list>.list-row+*{border-top:1px solid var(--separator)}.list-row{border-bottom:none!important}.tappable{cursor:pointer;-webkit-tap-highlight-color:transparent}.tappable:active{opacity:.6}.list-button{display:flex;align-items:center;gap:8px;width:100%;padding:12px 0}.icon-button{display:inline-flex;align-items:center;justify-content:center;min-width:36px;height:36px;font-size:16px}.icon-button.secondary,.secondary.icon-button{color:var(--secondary)}.badge{font-size:11px;font-weight:700;padding:2px 7px;border-radius:999px;background:color-mix(in srgb,var(--accent) 18%,transparent);color:var(--accent);white-space:nowrap}.sets-text{font-weight:700;color:var(--secondary);font-variant-numeric:tabular-nums;white-space:nowrap}.plan-row{padding:12px 0}.title-bar{display:flex;justify-content:space-between;padding-top:4px}.thumb{border-radius:8px;overflow:hidden;flex:none;background:color-mix(in srgb,var(--secondary) 12%,transparent)}.exercise-image{width:100%;height:100%;object-fit:cover;display:block;border-radius:inherit}.exercise-image.placeholder{display:flex;align-items:center;justify-content:center;color:var(--secondary);background:color-mix(in srgb,var(--secondary) 12%,transparent)}.image-pair{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin:4px 0 8px}.image-pair .exercise-image{border-radius:10px}.thumb-status{position:relative;flex:none}.thumb-status.faded{opacity:.4}.badge-icon{position:absolute;right:-4px;bottom:-4px;background:var(--card);border-radius:50%}.note{display:flex;gap:6px;align-items:flex-start;font-size:12px;color:var(--secondary);margin:4px 0}.step-number,.set-number{flex:none;width:24px;height:24px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;background:color-mix(in srgb,var(--accent) 18%,transparent)}.list-row.step{align-items:flex-start}.body-card{position:relative;padding:4px 0 8px}.zoom-button{position:absolute;top:4px;right:4px;z-index:2;width:38px;height:38px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--card) 70%,transparent);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.body-map{display:flex}.body-figure{flex:1;margin:0;text-align:center}.body-figure svg{width:100%;height:auto;display:block}.body-figure figcaption{font-size:11px;color:var(--secondary)}.legend{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;font-size:11px;color:var(--secondary);margin:6px 0}.legend span{display:inline-flex;align-items:center;gap:4px}.legend i{width:9px;height:9px;border-radius:50%;border:.5px solid #b3b3b3;display:inline-block}.volume-bar{display:flex;flex-direction:column;gap:8px;padding:6px 0}.bar-track{position:relative;height:18px}.bar-track span{position:absolute;top:4px;height:10px;opacity:.85}.bar-track span:first-child{border-radius:5px 0 0 5px}.bar-track span:nth-child(4){border-radius:0 5px 5px 0}.bar-dot{position:absolute;top:0;width:18px;height:18px;border-radius:50%;border:2.5px solid var(--text);box-sizing:border-box}.bar-ticks{position:relative;height:14px;font-size:11px;color:var(--secondary)}.bar-ticks span{position:absolute;transform:translate(-50%);white-space:nowrap}.segmented{display:flex;background:color-mix(in srgb,var(--secondary) 16%,transparent);border-radius:9px;padding:2px;margin:8px 0}.segmented button{flex:1;padding:6px 4px;border-radius:7px;font-size:13px;font-weight:500}.segmented button.active{background:var(--card);box-shadow:0 1px 3px #00000026}.search{width:100%;padding:9px 12px;border-radius:10px;background:color-mix(in srgb,var(--secondary) 14%,transparent);font-size:16px}.sheet-backdrop{position:fixed;inset:0;z-index:50;background:#00000059;display:flex;align-items:flex-end;justify-content:center}.sheet-backdrop.center{align-items:center;padding:24px}.sheet{width:100%;max-width:720px;height:calc(100dvh - env(safe-area-inset-top) - 12px);background:var(--bg);border-radius:14px 14px 0 0;display:flex;flex-direction:column;overflow:hidden;animation:slide-up .25s ease-out}@keyframes slide-up{0%{transform:translateY(40px);opacity:.6}to{transform:none;opacity:1}}.sheet-header{display:grid;grid-template-columns:minmax(70px,1fr) minmax(0,auto) minmax(70px,1fr);align-items:center;padding:14px 16px 8px;gap:8px}.sheet-header strong{text-align:center;font-size:17px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sheet-header>:first-child{justify-self:start}.sheet-header>:last-child{justify-self:end}.sheet-header .link{padding:0}.sheet-body{flex:1;overflow-y:auto;padding:4px 16px 24px;-webkit-overflow-scrolling:touch}.sheet-bottom{padding:12px 16px calc(env(safe-area-inset-bottom) + 12px);background:color-mix(in srgb,var(--card) 85%,transparent);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-top:1px solid var(--separator)}.dialog{background:var(--card);border-radius:14px;padding:18px;max-width:340px;width:100%;display:flex;flex-direction:column;gap:8px;text-align:center}.dialog-actions{display:flex;flex-direction:column;gap:2px;margin-top:8px}.dialog-actions button{padding:12px;border-top:1px solid var(--separator);font-size:17px}.dialog-actions .accent{color:var(--accent)}.dialog-actions .danger{color:var(--danger)}.toast{position:fixed;left:16px;right:16px;bottom:calc(env(safe-area-inset-bottom) + 84px);z-index:40;background:var(--card);border-radius:12px;padding:12px 14px;box-shadow:0 4px 20px #0003;font-size:14px}.zoom-cover{position:fixed;inset:0;z-index:45;background:var(--bg);display:flex;flex-direction:column;padding:env(safe-area-inset-top) 16px calc(env(safe-area-inset-bottom) + 8px)}.zoom-area{flex:1;overflow:auto}.zoom-area .body-figure svg{max-height:calc(100dvh - 230px)}.zoom-controls{display:flex;align-items:center;justify-content:space-between;gap:8px}.round{width:56px;height:56px;flex:none;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;color:var(--accent);background:color-mix(in srgb,var(--accent) 14%,transparent)}.wide{width:100%}.primary{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--accent)}.primary.green-bg{background:var(--green)}.bordered{background:color-mix(in srgb,var(--accent) 14%,transparent);color:var(--accent);border-radius:12px;padding:12px;font-weight:600}.button-row{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:10px 0 6px}.set-entry{display:flex;flex-direction:column;gap:18px;padding:10px 0}.stepper{display:flex;flex-direction:column;gap:6px}.stepper-row{display:flex;align-items:center;justify-content:space-between}.big-value{font-size:34px;font-weight:700;font-variant-numeric:tabular-nums;display:inline-flex;align-items:baseline;gap:4px}.big-value input{width:3.6em;text-align:right;font-size:34px;font-weight:700;border-bottom:2px solid var(--separator)}.big-value small{font-size:18px;color:var(--secondary);font-weight:400}.done-box{display:flex;flex-direction:column;align-items:center;gap:12px;padding:10px 0}.done-box strong{display:inline-flex;gap:6px;align-items:center}.alternative{display:flex;flex-direction:column;gap:6px;padding:8px 0}.nums{font-variant-numeric:tabular-nums}.week-row{display:flex;flex-direction:column;gap:6px;padding:10px 0}.card.list>.week-row+.week-row{border-top:1px solid var(--separator)}.progress{height:6px;border-radius:3px;background:color-mix(in srgb,var(--secondary) 18%,transparent);overflow:hidden;display:flex}.progress.stacked{height:8px;border-radius:4px}.progress span{height:100%}.legend.left{justify-content:flex-start;margin:0}.score-track{position:relative;display:grid;grid-template-columns:repeat(4,1fr);gap:2px;height:16px}.score-track span{opacity:.85}.score-track span:first-child{border-radius:8px 0 0 8px}.score-track span:nth-child(4){border-radius:0 8px 8px 0}.score-track i{position:absolute;top:0;width:16px;height:16px;border-radius:50%;border:2.5px solid var(--text);box-sizing:border-box}.score-labels{display:grid;grid-template-columns:repeat(4,1fr);font-size:11px;color:var(--secondary);text-align:center}.right-stack{display:flex;flex-direction:column;align-items:flex-end;gap:1px}.next-card{color:#fff;border-radius:20px;padding:16px;margin-bottom:16px;display:flex;flex-direction:column;gap:6px;background:linear-gradient(135deg,#007aff,#5856d6)}:root[data-frauenpower="1"] .next-card{background:linear-gradient(135deg,#ffb8b3e6,#e66694,#bd8fed)}.next-label{font-size:12px;font-weight:700;opacity:.8}.next-title{font-size:24px;font-weight:700}.next-subtitle{font-size:15px;opacity:.9}.next-line{font-size:12px;font-weight:700;opacity:.95;display:flex;align-items:center;gap:6px}.play{flex:none;width:52px;height:52px;border-radius:50%;background:#ffffff40;color:#fff;font-size:20px}.month{margin-bottom:8px}.month-header{padding-bottom:8px}.grid7{display:grid;grid-template-columns:repeat(7,1fr);row-gap:6px;text-align:center}.weekday{font-size:11px;font-weight:700;color:var(--secondary)}.day-cell{display:flex;flex-direction:column;align-items:center;height:44px}.day{width:34px;height:34px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:16px}.day.strength{background:linear-gradient(135deg,#007aff,#30b0c7);color:#fff;font-weight:700;box-shadow:0 1px 3px color-mix(in srgb,var(--accent) 35%,transparent)}:root[data-frauenpower="1"] .day.strength{background:linear-gradient(135deg,#e66694,#bd8fed)}.day.cardio{background:#34c75938}.day.period{background:#e6669426}.day.period.predicted{background:#e6669414}.day.today{box-shadow:inset 0 0 0 2px var(--accent);font-weight:700}.dots{height:6px;display:flex;gap:2px;align-items:center}.dot{width:5px;height:5px;border-radius:50%;display:inline-block}.green-bg{background:var(--green)}.orange-bg{background:var(--orange)}.drop{font-size:6px;font-style:normal}.note-field{width:100%;border:none;background:transparent;color:var(--text);font:inherit;resize:vertical;padding:10px 0;outline:none}.round.small{width:34px;height:34px}.round:disabled{opacity:.35}.inline-number{width:70px;text-align:right}.switch{width:44px;height:26px;accent-color:var(--green)}.day-nav{padding-bottom:6px}.day-summary{display:flex;gap:18px;align-items:center;padding:6px 0}.ring{position:relative;width:110px;height:110px;flex:none}.ring-label{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center}.ring-label strong{font-size:22px}.ring-label small{font-size:11px}.macro-bars{display:flex;flex-direction:column;gap:10px}.macro-bar{display:flex;flex-direction:column;gap:3px}.advice{align-items:flex-start;font-size:15px}.advice.good{color:var(--green)}.advice.warning{color:var(--orange)}.slot-header{display:flex;align-items:center;gap:6px;text-transform:none;font-size:15px;color:var(--text);font-weight:600}.slot-header .nums{color:var(--secondary);font-weight:400}.food-icon{flex:none;width:40px;height:40px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;font-size:22px;background:color-mix(in srgb,var(--secondary) 10%,transparent)}.food-icon.large{width:56px;height:56px;font-size:32px;border-radius:12px}.chips{display:flex;gap:8px;overflow-x:auto;padding:8px 0;scrollbar-width:none}.chip{flex:none;display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:8px 12px;border-radius:12px;background:color-mix(in srgb,var(--accent) 12%,transparent);text-align:left}.chip .row-inline{flex-wrap:nowrap;white-space:nowrap}.chip svg{color:var(--accent)}.nutrient-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:10px 0}.nutrient-tile{display:flex;flex-direction:column;gap:4px;padding:12px;border-radius:14px;background:color-mix(in srgb,var(--tile) 10%,transparent)}.nutrient-tile:focus-within{background:color-mix(in srgb,var(--tile) 18%,transparent);box-shadow:inset 0 0 0 2px var(--tile)}.tile-title{font-size:12px;font-weight:700;color:var(--tile)}.tile-value{display:flex;align-items:baseline;gap:4px}.tile-value input{width:100%;font-size:28px;font-weight:700;font-variant-numeric:tabular-nums}.tile-value small{color:var(--secondary)}.name-field,.plain-field{width:100%;padding:12px;border-radius:12px;background:color-mix(in srgb,var(--secondary) 10%,transparent);font-size:17px;margin:4px 0}.plain-field{background:transparent;padding:10px 0;border-radius:0;border-bottom:1px solid var(--separator)}.macro-row{display:flex;align-items:center;gap:8px;padding:8px 0}.macro-value{flex:1;display:flex;flex-direction:column;align-items:center;gap:2px}.macro-value small{font-size:11px;font-weight:700}.icon-grid{display:grid;grid-template-columns:repeat(8,1fr);gap:6px;padding:8px 0}.icon-grid button{font-size:22px;height:36px;border-radius:8px}.icon-grid button.selected{background:color-mix(in srgb,var(--accent) 25%,transparent)}select{font:inherit;color:var(--accent);background:transparent;border:none;text-align:right}.chart{width:100%;height:auto;display:block;overflow:visible}.chart text{font-size:9px;fill:var(--secondary)}.chart text.value{font-size:10px;font-weight:600}.chart .grid{stroke:var(--separator);stroke-width:.5}.segmented.sticky{position:sticky;top:calc(env(safe-area-inset-top) + 4px);z-index:5}.week-nav{padding:6px 0}.empty{padding:40px 16px}.level-dot{width:12px;height:12px;border-radius:50%;display:inline-block;border:.5px solid #b3b3b3}.contribution{display:flex;flex-direction:column;gap:8px;padding:8px 0}.contribution-row{flex-wrap:nowrap}.variation{display:flex;flex-direction:column;gap:8px;padding:8px 0}.variation-row{flex-wrap:nowrap}.balance-row{padding:10px 0;display:flex;flex-direction:column;gap:6px}.card.list>.balance-row+.balance-row{border-top:1px solid var(--separator)}.balance-details{display:flex;flex-direction:column;gap:10px;padding:6px 0 0 12px}.balance-exercise{display:flex;flex-direction:column;gap:4px}.orange-badge{color:var(--orange);background:color-mix(in srgb,var(--orange) 15%,transparent)}.blue-badge{color:var(--blue);background:color-mix(in srgb,var(--blue) 15%,transparent)}.level-scale{position:relative;display:flex;gap:2px;height:14px;align-items:center}.level-scale span{height:14px;opacity:.35}.level-scale span:first-child{border-radius:7px 0 0 7px}.level-scale span:nth-child(5){border-radius:0 7px 7px 0}.level-scale i{position:absolute;top:0;width:14px;height:14px;border-radius:50%;border:2px solid var(--text);box-sizing:border-box}.ratio-track{position:relative;height:16px}.ratio-track:before{content:"";position:absolute;left:0;right:0;top:4px;height:8px;border-radius:4px;background:color-mix(in srgb,var(--secondary) 15%,transparent)}.ratio-track .band{position:absolute;top:4px;height:8px;background:#34c75959}.ratio-track .ideal{position:absolute;top:0;width:2px;height:16px;background:var(--green)}.ratio-track i{position:absolute;top:1px;width:14px;height:14px;border-radius:50%;border:2px solid var(--text);box-sizing:border-box}.deviation{display:flex;flex-direction:column;gap:6px}.deviation-row{display:grid;grid-template-columns:90px 1fr;align-items:center;gap:6px;font-size:12px}.deviation-label{color:var(--secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.deviation-track{position:relative;height:20px}.deviation-track .band{position:absolute;top:0;bottom:0;background:#34c7591f}.deviation-track .zero{position:absolute;left:50%;top:0;bottom:0;width:1px;background:var(--green)}.deviation-track .bar{position:absolute;top:3px;height:14px;border-radius:3px}.deviation-track small{position:absolute;top:3px;font-size:10px;color:var(--secondary);font-variant-numeric:tabular-nums}.big-input{font-size:17px}
