:root{font-family:system-ui,sans-serif;color-scheme:light;--color-background: #f6f6f1;--color-surface: #ffffff;--color-text: #121418;--color-muted: #555b63;--color-accent: #d9ff55;--color-border: #dce0d5;color:var(--color-text);background:var(--color-background)}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){color-scheme:dark;--color-background: #121418;--color-surface: #1c2026;--color-text: #f6f6f1;--color-muted: #b2b8bf;--color-border: #333941}}:root[data-theme=dark]{color-scheme:dark;--color-background: #121418;--color-surface: #1c2026;--color-text: #f6f6f1;--color-muted: #b2b8bf;--color-border: #333941}*{box-sizing:border-box}body{margin:0;min-width:280px}.foundation-screen{width:min(100%,960px);min-height:100dvh;margin-inline:auto;padding:max(24px,env(safe-area-inset-top)) max(20px,env(safe-area-inset-right)) max(24px,env(safe-area-inset-bottom)) max(20px,env(safe-area-inset-left))}.foundation-brand{display:flex;align-items:center;gap:12px;font-size:28px;font-weight:900;letter-spacing:-1px}.foundation-brand span{padding:0 8px;border-radius:10px;color:#121418;background:var(--color-accent)}.foundation-card{margin-block:clamp(32px,10vh,100px);padding:clamp(24px,5vw,48px);border:1px solid var(--color-border);border-radius:24px;background:var(--color-surface)}.foundation-stage{margin:0 0 24px;color:var(--color-muted);font-size:14px}h1{margin:0;font-size:clamp(32px,6vw,56px);line-height:1.1;letter-spacing:-.03em;overflow-wrap:anywhere}.foundation-description{max-width:55ch;margin:24px 0 0;color:var(--color-muted);line-height:1.6}.preference-controls{display:flex;flex-wrap:wrap;gap:20px;min-width:0;margin:32px 0 0;padding:24px 0 0;border:0;border-top:1px solid var(--color-border)}.preference-controls legend{padding:0 12px 0 0;font-weight:600}.preference-controls label{display:grid;flex:1 1 180px;gap:8px;min-width:0;color:var(--color-muted);font-size:14px}.preference-controls select{width:100%;min-height:48px;padding:10px 12px;border:1px solid var(--color-border);border-radius:12px;color:var(--color-text);background:var(--color-background);font:inherit;font-size:16px}:focus-visible{outline:2px solid var(--color-text);outline-offset:4px}.preference-notice{color:var(--color-muted);line-height:1.6}.foundation-link{display:inline-flex;align-items:center;min-height:48px;margin-top:16px;color:var(--color-text);text-underline-offset:4px}.admin-access{margin-top:28px;overflow-wrap:anywhere}.admin-form{display:grid;gap:12px;max-width:420px}.admin-form h2{margin:0 0 8px;font-size:24px}.admin-form input,.admin-access button{min-height:48px;padding:12px 16px;border:1px solid var(--color-border);border-radius:12px;font:inherit}.admin-form input{width:100%;min-width:0;color:var(--color-text);background:var(--color-background)}.admin-access button{color:#121418;background:var(--color-accent);font-weight:600;cursor:pointer}.admin-access .secondary-button,.admin-access .text-button{color:var(--color-text);background:var(--color-background)}.admin-access .text-button{border-color:transparent;text-decoration:underline;text-underline-offset:4px}.admin-access button:disabled{opacity:.6;cursor:default}.admin-hint{margin:0;color:var(--color-muted);line-height:1.6}.admin-audit{margin-top:28px;border-top:1px solid var(--color-border)}.admin-audit ul{padding-left:20px;line-height:1.6}.workout-input{margin-top:28px;overflow-wrap:anywhere}.workout-hint{color:var(--color-muted);line-height:1.6}.workout-actions{display:flex;flex-wrap:wrap;gap:12px;margin-block:20px}.workout-form{display:grid;gap:20px;margin-block:24px}.workout-grid,.workout-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:20px;min-width:0;margin:0;padding:0;border:0}.workout-grid label{display:grid;gap:8px;min-width:0;align-content:start;color:var(--color-muted)}.workout-form input,.workout-form select,.workout-input button{width:100%;min-width:0;min-height:48px;padding:12px;border:1px solid var(--color-border);border-radius:12px;font:inherit;font-size:16px;color:var(--color-text);background:var(--color-background)}.workout-input button{width:auto;cursor:pointer}.workout-input button[type=submit],.workout-input button[aria-pressed=true]{color:#121418;background:var(--color-accent);font-weight:600}.workout-input button:disabled{opacity:.6;cursor:default}.workout-input summary{padding-block:12px;cursor:pointer;font-weight:600}.workout-metrics div{padding:16px;border:1px solid var(--color-border);border-radius:16px}.workout-metrics dt{color:var(--color-muted);font-size:14px}.workout-metrics dd{margin:8px 0 0;font-size:28px;font-weight:700}.workout-route{display:block;width:min(100%,320px);margin:24px auto}.workout-history,.workout-photo{margin-top:32px;padding-top:24px;border-top:1px solid var(--color-border)}.workout-history ul{display:grid;gap:16px;padding:0;list-style:none}.workout-history li{padding:16px;border:1px solid var(--color-border);border-radius:16px}.workout-delete{padding:12px;border:1px solid var(--color-text);border-radius:12px}.workout-photo img{display:block;max-width:100%;max-height:360px;margin-block:16px;border-radius:12px;object-fit:contain}.workout-consent{display:flex;align-items:start;gap:12px;line-height:1.5}.workout-consent input{flex:0 0 24px;width:24px;min-height:24px;margin-top:0}.story-preview{position:relative;width:100%;max-width:432px;aspect-ratio:9 / 16;overflow:hidden;border-radius:16px;box-shadow:0 16px 48px #00000026}.story-preview-canvas{position:absolute;inset:0 auto auto 0;width:1080px;height:1920px;transform-origin:top left}@font-face{font-family:VYZIQ Liberation Sans;src:url(/assets/LiberationSans-Regular-D0oEr8S6.ttf) format("truetype");font-style:normal;font-weight:400;font-display:block}@font-face{font-family:VYZIQ Liberation Sans;src:url(/assets/LiberationSans-Bold-Cti14ZY-.ttf) format("truetype");font-style:normal;font-weight:700;font-display:block}.story-gallery>ul{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:20px 0;padding:0;list-style:none}.story-tile{position:relative;min-width:0;aspect-ratio:9 / 16;border:1px solid var(--color-border);border-radius:12px;background:#14212b}.story-tile-open{position:relative;display:block;width:100%;height:100%;padding:0;overflow:hidden;border:0;border-radius:inherit;text-align:left}.story-tile-open>.story-preview{width:100%;max-width:none;height:100%;border-radius:0;box-shadow:none}.story-tile-image{display:block;width:100%;height:100%;object-fit:cover}.story-tile-placeholder{display:grid;width:100%;height:100%;place-items:center;color:#ffffff80;background:linear-gradient(160deg,#314d5b,#17202a 80%)}.story-tile-copy{position:absolute;inset:auto 0 0;display:block;padding:28px 8px 12px;color:#fff;background:linear-gradient(transparent,#000000bf 45%,#000000e6)}.story-tile-copy>strong{display:flex;align-items:center;gap:6px;font-size:10px;line-height:1.3;overflow-wrap:anywhere}.story-tile-copy .sport-badge{flex-basis:24px;width:24px;height:24px}.story-tile-copy .sport-badge svg{flex-basis:16px;width:16px;height:16px}.story-tile-copy small{display:block;margin-top:10px;color:#ddd;font-size:9px}.story-tile-menu{position:absolute;z-index:2;top:6px;right:5px}.story-tile-menu[open]{z-index:5}.story-tile-menu summary{display:grid;width:26px;height:29px;border-radius:20px;color:#fff;background:#00000040;cursor:pointer;place-items:center;list-style:none}.story-tile-menu summary::-webkit-details-marker{display:none}.story-tile-menu>div{position:absolute;top:36px;right:-2px;width:210px;padding:8px 12px;border:1px solid var(--color-border);border-radius:13px;color:var(--color-text);background:var(--color-surface);box-shadow:0 8px 30px #0003}.story-tile:nth-child(3n+1) .story-tile-menu>div{right:auto;left:-40px}.story-tile-menu button{display:flex;align-items:center;gap:10px;width:100%;min-height:44px;padding:12px 0;border:0;border-bottom:1px solid var(--color-border);color:inherit;background:transparent;font-size:13px;text-align:left}.story-tile-menu>div>button:last-child{color:#ff3838}.story-gallery>button{margin:6px 10px 0 0}.compact-gallery>ul{display:flex;gap:9px;margin-top:0;overflow-x:auto;scrollbar-width:none}.compact-gallery .story-tile{flex:0 0 84px;width:84px;height:132px}.compact-gallery .story-tile-copy{padding:20px 7px 9px}.compact-gallery .story-tile-copy .sport-badge,.compact-gallery .story-tile-copy small{display:none}@media(max-width:360px){.story-gallery>ul{gap:7px}.story-tile-copy>strong{gap:4px;font-size:9px}.story-tile-copy small{font-size:8px}}.miniapp-shell .story-editor{margin:0}.editor-heading{gap:8px}.editor-heading h1{flex:1;font-size:21px}.story-languages{display:inline-flex;flex-shrink:0;padding:2px;border:1px solid var(--color-border);border-radius:11px;background:var(--color-surface)}.story-languages button{min-height:32px;padding:7px 11px;border:0;border-radius:8px;color:var(--color-muted);background:transparent;font-size:11px;font-weight:650}.story-languages button[aria-pressed=true]{color:#fff;background:var(--color-accent)}.editor-preview{width:min(100%,330px);margin:0 auto 18px}.editor-preview>.story-preview{width:100%;max-width:none;box-shadow:0 4px 18px #0000000d}.editor-settings{min-width:0;margin:0;padding:0;border:0}.editor-tabs{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:3px;padding:7px 4px;border:1px solid var(--color-border);border-radius:14px;background:var(--color-surface);box-shadow:var(--app-shadow)}.editor-tabs>button{display:flex;align-items:center;flex-direction:column;gap:7px;min-width:0;padding:8px 0;border:0;border-radius:9px;color:var(--color-muted);background:transparent;font-size:9px}.editor-tabs>button[aria-selected=true]{color:var(--color-accent);background:var(--app-accent-soft)}.editor-tabs .app-icon{width:22px;height:22px;flex-basis:22px}.editor-panel{margin-top:12px;padding:18px 12px;border:1px solid var(--color-border);border-radius:18px;background:var(--color-surface)}.editor-panel fieldset{min-width:0;margin:0;padding:0;border:0}.editor-panel legend{margin-bottom:14px;padding:0;font-size:18px;font-weight:700}.story-template-choices{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.story-template-choices legend{grid-column:1 / -1}.story-template-choices button{position:relative;display:flex;align-items:center;justify-content:end;flex-direction:column;gap:7px;min-height:125px;padding:12px 4px;overflow:hidden;border:2px solid transparent;border-radius:10px;color:#fff;background:linear-gradient(160deg,#283d56,#111b2b 60%,#ee6c2380);font-size:10px;font-weight:650;text-align:center}.story-template-choices button:before{position:absolute;inset:30px 15px 45px;border-top:3px solid #ffffff88;border-bottom:3px solid #ffffff33;content:""}.story-template-choices button:nth-of-type(2){background:linear-gradient(150deg,#123c36,#1c252b 70%,#4c7e5e)}.story-template-choices button:nth-of-type(3){background:linear-gradient(155deg,#44536c,#b4785f 50%,#2b1823)}.story-template-choices button:nth-of-type(4){background:linear-gradient(160deg,#4d3229,#141820 65%,#e86a23)}.story-template-choices button[aria-pressed=true]{border-color:var(--color-accent);outline:2px solid var(--color-surface);outline-offset:-4px}.story-template-choices small{position:absolute;top:8px;right:7px;padding:3px 7px;border-radius:20px;color:#161719;background:#fff;font-size:9px}.story-template-choices button:last-child small{color:#fff;background:var(--color-accent)}.editor-panel .workout-grid{grid-template-columns:1fr}.editor-panel label:not(.workout-consent){display:grid;gap:8px;color:var(--color-muted);font-size:13px}.editor-panel input:not([type=checkbox]),.editor-panel select,.editor-panel textarea{width:100%;min-width:0;min-height:44px;padding:10px 12px;border:1px solid var(--color-border);border-radius:10px;color:var(--color-text);background:var(--color-background);font-size:16px}.editor-panel textarea{resize:vertical}.story-metric-choices label{margin-bottom:12px}.story-metric-choices input,.workout-consent input{accent-color:var(--color-accent)}.editor-panel button:not(.story-template-choices button,.story-languages button),.story-gallery>button{min-height:42px;padding:10px 12px;border:1px solid var(--color-border);border-radius:10px;color:var(--color-text);background:var(--color-background)}.editor-panel p,.editor-notices,.export-hint{color:var(--color-muted);font-size:11px;line-height:1.5}.editor-notices{margin-top:10px}.story-delivery>button.primary-button{margin-top:12px}.save-draft{display:block;width:100%;min-height:40px;margin-top:7px;border:0;color:var(--color-muted);background:transparent;font-size:13px}.finished-png{display:block;width:100%;aspect-ratio:9 / 16;border:1px solid var(--color-border);border-radius:14px;object-fit:contain}.story-delivery .workout-actions{display:grid;grid-template-columns:1fr}.story-delivery .workout-actions button{min-height:54px;padding:14px;border:1px solid var(--color-border);border-radius:14px;color:var(--color-text);background:var(--color-surface);font-weight:650}.story-delivery .workout-actions button:first-child{border:0;color:#fff;background:var(--color-accent)}.back-to-editor{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;padding:15px 0;border:0;color:var(--color-muted);background:transparent;font-size:14px}.render-status{display:flex;align-items:center;gap:16px;margin-top:14px;padding:17px;border:1px solid var(--color-border);border-radius:14px;background:var(--color-surface);font-size:13px}.render-status>span:last-child{flex:1}.render-spinner{width:30px;height:30px;border:4px solid var(--app-accent-soft);border-top-color:var(--color-accent);border-right-color:var(--color-accent);border-radius:50%;animation:render-spin 1s linear infinite}.render-status progress{display:block;width:100%;height:8px;margin-top:10px;accent-color:var(--color-accent)}.export-hint{margin-top:14px;text-align:center}@keyframes render-spin{to{transform:rotate(360deg)}}@media(max-width:360px){.editor-heading h1{font-size:18px}.story-languages button{padding-inline:8px}.editor-tabs>button{font-size:8px}}@media(prefers-reduced-motion:reduce){.render-spinner{animation:none}}.pro-access{margin-top:32px;padding-top:24px;border-top:1px solid var(--color-border);line-height:1.5;overflow-wrap:anywhere}.pro-access a{color:var(--color-text);text-underline-offset:4px}.pro-access label{display:flex;align-items:start;gap:12px;margin-block:16px;cursor:pointer}.pro-access input[type=checkbox]{flex-shrink:0;width:20px;height:20px;margin:2px 0 0;accent-color:var(--color-text)}.pro-access button{min-height:48px;margin:4px 8px 4px 0;padding:12px 16px;border:1px solid var(--color-border);border-radius:12px;color:var(--color-text);background:var(--color-background);font:inherit;cursor:pointer}.pro-access button:disabled{opacity:.55;cursor:default}.period-recap{margin-block:32px;padding-top:24px;border-top:1px solid var(--color-border)}.period-recap fieldset{min-width:0;border:0;padding:0}.recap-form{display:grid;gap:16px}.recap-form label{display:grid;gap:8px}.recap-form input,.recap-form select,.period-recap button{min-width:0;min-height:48px;padding:12px;border:1px solid var(--color-border);border-radius:12px;color:var(--color-text);background:var(--color-background);font:inherit}.period-recap button{margin:4px 8px 4px 0;cursor:pointer}.period-recap button:disabled{opacity:.55;cursor:default}.period-recap .story-preview{margin-block:24px}:root{--color-background: #f8f9fb;--color-surface: #fff;--color-text: #101113;--color-muted: #858894;--color-accent: #ff5c00;--color-border: #eceef2;--app-soft: #f1f2f6;--app-accent-soft: #fff0e7;--app-shadow: 0 3px 18px #18203805;background:var(--color-background);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;-webkit-font-smoothing:antialiased}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--color-background: #0d0e10;--color-surface: #191b1e;--color-text: #f5f5f6;--color-muted: #a5a7af;--color-border: #27292d;--app-soft: #1c1e22;--app-accent-soft: #352016;--app-shadow: 0 3px 18px #00000012}}:root[data-theme=dark]{--color-background: #0d0e10;--color-surface: #191b1e;--color-text: #f5f5f6;--color-muted: #a5a7af;--color-border: #27292d;--app-soft: #1c1e22;--app-accent-soft: #352016;--app-shadow: 0 3px 18px #00000012}body{background:var(--color-background)}.miniapp-shell{width:min(100%,560px);min-height:100dvh;margin-inline:auto;padding:max(22px,env(safe-area-inset-top)) 18px calc(100px + env(safe-area-inset-bottom));color:var(--color-text)}.miniapp-shell a{color:inherit;text-decoration:none}.miniapp-shell :where(button,input,select,textarea){font:inherit}.miniapp-shell button{cursor:pointer}.miniapp-shell button:disabled{cursor:default;opacity:.48}.miniapp-shell :where(h1){font-size:clamp(27px,7vw,36px);font-weight:750;line-height:1.18;letter-spacing:-.035em;overflow-wrap:normal}.miniapp-shell :where(h2){margin:0;font-size:20px;line-height:1.3;letter-spacing:-.025em}.miniapp-shell :where(h3){font-size:17px}.app-icon{display:inline-block;flex:0 0 24px;width:24px;height:24px;vertical-align:middle}.app-header{display:flex;align-items:center;justify-content:space-between;margin:0 2px 26px}.app-brand{display:inline-flex;align-items:center;gap:2px;line-height:1}.app-brand>svg{width:42px;height:36px;color:var(--color-accent)}.app-brand>span{font-size:40px;font-weight:950;font-style:italic;letter-spacing:-4px}.profile-shortcut,.icon-button{display:inline-flex;align-items:center;justify-content:center;flex:0 0 42px;width:42px;height:42px;padding:8px;border:1px solid var(--color-border);border-radius:50%;color:var(--color-text);background:var(--app-soft)}.app-content{min-width:0}.page-heading,.section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.page-heading{margin-block:12px 18px}.section-heading{margin-bottom:14px}.section-heading>a{display:inline-flex;align-items:center;color:var(--color-accent);font-size:14px;white-space:nowrap}.section-heading>a>svg{width:18px;height:18px;flex-basis:18px}.page-subtitle,.home-welcome p{margin:8px 0 24px;color:var(--color-muted);font-size:17px;line-height:1.45}.home-welcome h1{margin:0}.home-welcome p{margin-bottom:18px}.miniapp-shell .primary-button,.miniapp-shell .secondary-button{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;min-height:56px;padding:14px 18px;border:1px solid transparent;border-radius:15px;color:#fff;background:linear-gradient(105deg,#ff6500,#ff5400);font-size:17px;font-weight:650;line-height:1.25;text-align:center}.miniapp-shell .secondary-button{margin-block:12px;border-color:var(--color-border);color:var(--color-text);background:var(--color-surface);box-shadow:var(--app-shadow)}.miniapp-shell .primary-button.compact{width:auto;min-height:44px;padding:11px 14px;border-radius:13px;font-size:14px}.button-plus{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;color:var(--color-accent);background:#fff}.add-workout>svg:last-child{margin-left:auto}.add-workout>.button-plus{margin-left:auto}.recap-cards{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:18px}.recap-card{display:block;min-width:0;padding:15px 13px;border:1px solid var(--color-border);border-radius:17px;background:var(--color-surface);box-shadow:var(--app-shadow)}.recap-card-title{display:flex;align-items:center;gap:8px;font-size:12px}.recap-card-title>svg:first-child{color:var(--color-accent)}.recap-card-title>svg:last-child{flex:0 0 14px;width:14px;height:14px;margin-left:auto;color:var(--color-muted)}.recap-card-stats{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:20px}.recap-card-stats b{display:block;font-size:29px;font-weight:750;letter-spacing:-1px}.recap-card-stats small{display:block;margin-top:2px;color:var(--color-muted);font-size:12px}.recap-activity{display:flex;align-items:center;gap:6px;margin-top:20px;color:var(--color-muted);font-size:12px}.recap-activity svg{flex-basis:16px;width:16px;height:16px;color:var(--color-accent)}.home-section{margin-top:25px}.workout-list{display:grid;gap:10px}.miniapp-shell .workout-card{display:flex;align-items:stretch;gap:10px;width:100%;min-width:0;padding:8px;border:1px solid var(--color-border);border-radius:16px;color:var(--color-text);background:var(--color-surface);box-shadow:var(--app-shadow);text-align:left}.workout-thumbnail{display:flex;align-items:center;justify-content:center;flex:0 0 74px;width:74px;min-height:84px;overflow:hidden;border-radius:10px;color:var(--color-accent);background:var(--app-accent-soft)}.workout-thumbnail>.app-icon{width:40px;height:40px}.workout-thumbnail>img{width:100%;height:100%;max-height:100px;object-fit:cover}.workout-card-body{display:flex;flex:1;flex-direction:column;justify-content:center;gap:14px;min-width:0;padding:3px 4px 3px 0}.workout-card-heading{display:flex;align-items:center;gap:8px;min-width:0}.workout-card-heading strong,.workout-card-heading small{display:block}.workout-card-heading strong{font-size:14px;line-height:1.25}.workout-card-heading small{margin-top:3px;color:var(--color-muted);font-size:11px;line-height:1.25}.workout-card-heading>svg{flex-basis:15px;width:15px;height:15px;margin-left:auto;color:var(--color-muted)}.sport-badge{display:inline-flex;align-items:center;justify-content:center;flex:0 0 30px;width:30px;height:30px;border-radius:50%;color:#fff;background:linear-gradient(140deg,#ff7800,#ff5000)}.sport-badge svg{flex-basis:20px;width:20px;height:20px}.workout-card-metrics{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;font-size:12px}.workout-card-metrics>span{display:inline-flex;align-items:center;gap:5px}.workout-card-metrics svg{flex-basis:17px;width:17px;height:17px;color:var(--color-muted)}.sport-filters{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:18px}.sport-filters button{display:flex;align-items:center;gap:7px;min-height:36px;padding:8px 13px;border:1px solid var(--color-border);border-radius:24px;color:var(--color-text);background:var(--app-soft);font-size:12px}.sport-filters button[aria-pressed=true]{border-color:var(--color-accent);color:#fff;background:var(--color-accent)}.sport-filters svg{flex-basis:19px;width:19px;height:19px}.bottom-navigation{position:fixed;z-index:20;right:0;bottom:0;left:0;display:grid;grid-template-columns:repeat(4,1fr);gap:4px;width:min(100%,560px);margin-inline:auto;padding:12px 12px max(13px,env(safe-area-inset-bottom));border-top:1px solid var(--color-border);background:var(--color-surface);box-shadow:0 -6px 20px #00000003}.bottom-navigation>a{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:6px;min-height:44px;border-radius:10px;color:var(--color-muted);font-size:11px}.bottom-navigation .app-icon{width:25px;height:25px;flex-basis:25px}.bottom-navigation>a[aria-current=page]{color:var(--color-accent)}.app-empty{display:flex;align-items:center;flex-direction:column;gap:12px;padding:26px 18px;border:1px dashed var(--color-border);border-radius:16px;color:var(--color-muted);background:var(--color-surface);text-align:center}.app-empty>svg{width:36px;height:36px;color:var(--color-accent)}.app-empty>p{max-width:30ch;margin:0;font-size:14px;line-height:1.5}.app-error{display:flex;align-items:center;gap:12px;margin-block:14px;padding:14px;border:1px solid #fa45451c;border-radius:14px;background:#fa454510}.error-mark{display:flex;align-items:center;justify-content:center;flex:0 0 30px;width:30px;height:30px;border-radius:50%;color:#fff;background:#ff3838;font-weight:750}.app-error p{flex:1;margin:0;font-size:12px;line-height:1.5}.miniapp-shell .app-error button{min-height:38px;padding:8px 10px;border:0;border-radius:10px;color:#fff;background:var(--color-accent);font-size:12px}.loading-cards{display:grid;gap:12px;margin-block:12px}.loading-card{display:flex;gap:14px;padding:12px;border:1px solid var(--color-border);border-radius:14px;background:var(--color-surface)}.loading-card>span{width:62px;height:64px;border-radius:9px;background:var(--app-soft)}.loading-card>div{flex:1;padding-top:5px}.loading-card i{display:block;width:90%;height:12px;margin-bottom:9px;border-radius:5px;background:var(--app-soft);animation:skeleton-pulse 1.5s ease-in-out infinite alternate}.loading-card i:nth-child(2){width:55%}.loading-card i:nth-child(3){width:72%}@keyframes skeleton-pulse{to{opacity:.4}}.screen-title{display:flex;align-items:center;gap:12px;margin-bottom:22px}.screen-title h1{margin:0;font-size:23px;letter-spacing:-.03em}.screen-title>a{display:inline-flex;align-items:center;justify-content:center;flex:0 0 30px;min-height:42px}.screen-title>.icon-button{flex-basis:30px;width:30px;padding:0;border:0;background:transparent}.miniapp-shell .workout-input{margin:0}.miniapp-shell .workout-actions{gap:10px;margin-block:16px}.miniapp-shell .workout-actions>button{display:inline-flex;align-items:center;justify-content:center;gap:8px}.miniapp-shell .workout-input>.workout-actions{display:grid;grid-template-columns:1fr 1fr;gap:0;overflow:hidden;margin-bottom:24px;border:1px solid var(--color-border);border-radius:12px;background:var(--color-surface)}.miniapp-shell .workout-input>.workout-actions>button{padding:14px 8px;border:1px solid transparent;border-radius:12px;font-size:13px;white-space:nowrap}.miniapp-shell .workout-input>.workout-actions>button[aria-pressed=true]{border-color:var(--color-accent);color:var(--color-accent);background:var(--app-accent-soft)}.miniapp-shell .workout-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 14px}.miniapp-shell .workout-form{margin-top:0}.miniapp-shell .workout-grid>label:has([name=start]),.miniapp-shell .workout-grid>label:has([name=timezone]){grid-column:1 / -1}.miniapp-shell .workout-grid label{gap:8px;font-size:13px}.miniapp-shell .workout-form input,.miniapp-shell .workout-form select,.miniapp-shell .workout-form textarea{min-height:48px;padding:12px 13px;border:1px solid var(--color-border);border-radius:11px;color:var(--color-text);background:var(--color-surface);box-shadow:var(--app-shadow);font-size:16px}.miniapp-shell .workout-input button{min-height:46px;border-color:var(--color-border);color:var(--color-text);background:var(--color-surface)}.miniapp-shell .workout-form>button[type=submit],.miniapp-shell .workout-input>button:first-of-type{min-height:54px;border:0;border-radius:14px;color:#fff;background:linear-gradient(105deg,#ff6500,#ff5400);font-size:16px;font-weight:650}.miniapp-shell .sport-picker{grid-column:1 / -1;min-width:0;margin:0 0 4px;padding:0;border:0}.sport-picker legend{margin-bottom:12px;padding:0;color:var(--color-text);font-size:17px;font-weight:650}.sport-picker>div{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px}.miniapp-shell .sport-picker button{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:9px;min-height:82px;padding:10px 3px;border:1px solid var(--color-border);border-radius:13px;color:var(--color-muted);background:var(--color-surface);font-size:10px}.sport-picker button svg{flex-basis:27px;width:27px;height:27px;color:var(--color-text)}.miniapp-shell .sport-picker button[aria-pressed=true]{border-color:var(--color-accent);color:#fff;background:var(--color-accent)}.sport-picker button[aria-pressed=true] svg{color:#fff}.miniapp-shell .workout-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-block:20px}.miniapp-shell .workout-metrics>div{display:flex;flex-direction:column-reverse;justify-content:end;gap:7px;min-height:86px;padding:14px;border:1px solid var(--color-border);border-radius:13px;background:var(--color-surface);box-shadow:var(--app-shadow)}.workout-metrics dd{margin:0;font-size:25px;font-weight:750}.workout-metrics dt{font-size:12px}.miniapp-shell .workout-route{width:100%;height:190px;padding:14px;border:1px solid var(--color-border);border-radius:14px;color:var(--color-accent);background-color:var(--color-surface);background-image:linear-gradient(var(--color-border) 1px,transparent 1px),linear-gradient(90deg,var(--color-border) 1px,transparent 1px);background-size:20px 20px}.miniapp-shell .workout-hint{font-size:12px}.miniapp-shell .workout-photo{padding:16px;border:1px solid var(--color-border);border-radius:16px;background:var(--color-surface)}.miniapp-shell .workout-photo h3{margin-top:0}.miniapp-shell .workout-input>section[aria-labelledby=workout-review-title]>p{color:var(--color-muted);font-size:12px;line-height:1.5}.miniapp-shell .workout-delete{margin-block:12px;padding:14px;border:1px solid #ff383845;background:#ff38380c}.settings-card,.miniapp-shell .pro-access{margin-top:22px;padding:22px;border:1px solid var(--color-border);border-radius:18px;background:var(--color-surface);box-shadow:var(--app-shadow)}.miniapp-shell .preference-controls{margin:0;padding:0;border:0}.preference-controls legend{margin-bottom:18px}.miniapp-shell .pro-access p{color:var(--color-muted);font-size:14px;line-height:1.6}.recap-shortcut,.back-link{display:flex;align-items:center;gap:10px;margin-block:20px}.recap-shortcut{padding:18px;border:1px solid var(--color-border);border-radius:14px;background:var(--color-surface)}.recap-shortcut>svg:first-child{color:var(--color-accent)}.recap-shortcut>svg:last-child{margin-left:auto}.skip-link{position:fixed;z-index:100;top:-100px;padding:12px;background:var(--color-surface)}.skip-link:focus-visible{top:8px}@media(min-width:700px){.miniapp-shell{padding-top:30px}}@media(max-width:360px){.miniapp-shell{padding-inline:12px}.recap-card{padding-inline:10px}.recap-card-title{gap:5px;font-size:11px}.workout-thumbnail{flex-basis:58px;width:58px}.workout-card-heading strong{font-size:12px}.sport-picker>div{gap:4px}}@media(prefers-reduced-motion:reduce){.loading-card i{animation:none}}.workout-detail-heading{display:flex;align-items:center;gap:12px;padding:12px;border:1px solid var(--color-border);border-radius:16px;background:var(--color-surface)}.workout-detail-heading>.workout-thumbnail{min-height:76px}.workout-detail-heading p{margin:6px 0 0;color:var(--color-muted);font-size:12px;line-height:1.5}.workout-metrics dt{display:flex;align-items:center;gap:6px}.workout-metrics dt svg{flex-basis:17px;width:17px;height:17px;color:var(--color-accent)}.miniapp-shell .workout-input>.primary-button{width:100%;margin-top:16px;border:0;color:#fff;background:linear-gradient(105deg,#ff6500,#ff5400)}.miniapp-shell .workout-input>.danger-button{width:100%;margin-top:12px;border-color:#ff383829;color:#ff3838;background:#ff383810}.miniapp-shell .workout-input>.workout-actions{display:flex;flex-wrap:wrap}.miniapp-shell .workout-input>.workout-actions:first-of-type:has(button[aria-pressed]){display:grid;grid-template-columns:1fr 1fr}.photo-options,.photo-options .workout-form{margin-top:16px}
