html{-webkit-tap-highlight-color:transparent;overscroll-behavior:none;-webkit-text-size-adjust:100%}
body.app .presentation{width:100%;padding:0;zoom:1!important}.app .screens,.app .screen-wrap{width:100%;max-width:402px;margin:auto}.app .screen-wrap{display:none}.app .screen-wrap.current{display:block}
.app .screen{width:100%;height:100dvh;min-height:650px;border-radius:0;box-shadow:none;overflow:hidden}.app .mobile-body{max-height:calc(100dvh - 195px);overflow-y:auto;overscroll-behavior:contain;padding-bottom:20px}.app .bottom-nav{height:calc(81px + env(safe-area-inset-bottom,0px));padding-bottom:calc(19px + env(safe-area-inset-bottom,0px))}.app .status{height:calc(38px + env(safe-area-inset-top,0px));padding-top:calc(12px + env(safe-area-inset-top,0px))}.app .home-indicator{bottom:calc(7px + env(safe-area-inset-bottom,0px))}
.app .sheet{max-height:88dvh;overflow-y:auto;overscroll-behavior:contain;padding-bottom:calc(25px + env(safe-area-inset-bottom,0px))}.sheet input,.sheet select,.sheet textarea{font:16px var(--font);min-height:44px;padding:10px;margin:6px 0 12px;width:100%;border:1px solid var(--line);border-radius:12px;background:white;color:var(--ink)}.sheet label{font-size:12px;display:block;margin-top:8px}.sheet .checks{display:flex;gap:10px;align-items:flex-start;line-height:1.7}.sheet input[type=checkbox]{width:20px;min-height:20px;flex:none}.sheet .error{color:#a04434;white-space:pre-wrap}.sheet .outline{margin-top:10px;width:100%}.fields{display:grid;grid-template-columns:1fr 1fr;gap:0 12px}.record-row{display:flex;justify-content:space-between;gap:10px;align-items:center;min-height:48px;padding:10px 0;border-bottom:1px solid var(--line);font-size:12px}.record-row button{min-height:44px}.sheet fieldset{border:1px solid var(--line);border-radius:14px;padding:12px;margin-top:12px}.sheet legend{font-size:12px}button:disabled{opacity:.5;cursor:wait}button,[role=button]{user-select:none;touch-action:manipulation}.sheet .secondary{color:#a04434}
.app .result-sheet{max-height:calc(100dvh - 279px);overflow-y:auto;padding-bottom:32px}.app .run-panel{bottom:calc(80px + env(safe-area-inset-bottom,0px));overflow-y:auto;min-height:310px}.app .sport-map{z-index:0}.app .map-controls,.app .gps-pill,.app .map-route-label,.app .map-source{z-index:4}.sport-top{pointer-events:none}.sport-top button{pointer-events:auto}.map-source{background:#ffffffd9;border-radius:5px;padding:2px 4px;max-width:70%}.app .profile-tabs button{white-space:nowrap}.weight-card{overflow:auto}.health-tile{cursor:pointer}.status-icons{opacity:.45}.empty-note{font-size:12px;color:var(--muted);padding:16px 0;line-height:1.8}.app .map-route-label{left:100px;pointer-events:none}.meal-row{width:100%;text-align:left;padding:0}.meal-row p{max-width:190px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.app .run-panel{top:min(462px,calc(100dvh - 391px - env(safe-area-inset-bottom,0px)));bottom:calc(81px + env(safe-area-inset-bottom,0px))}
@media(max-height:800px){.app .sport-map{height:calc(100dvh - 355px)}.app .run-panel{top:auto;height:310px}.map-source{top:auto;bottom:405px}.app .map-route-label{top:285px}}
body.app.prototype .screen{height:100dvh;min-height:0}body.app.prototype .screens{width:min(100vw,402px)}
.app .mobile-body{max-height:calc(100dvh - 195px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px))}
.app .result-save{position:static;margin-top:20px}.app .profile-head>div:nth-child(2){min-width:0;flex:1}.app .profile-head h3{font-size:18px;overflow-wrap:anywhere}.app .profile-head p{overflow-wrap:anywhere}.app .avatar,.app .edit-profile{flex-shrink:0}.app .weight-card .topline .icon{width:13px;height:13px}
.app .meal-list{max-height:330px;overflow:auto}.app .sheet .solid:disabled{cursor:wait}.app .solid{touch-action:manipulation}
.app .mobile-body,.app .result-sheet,.app .meal-list,.app .run-panel{scrollbar-width:none}.app .mobile-body::-webkit-scrollbar,.app .result-sheet::-webkit-scrollbar,.app .meal-list::-webkit-scrollbar,.app .run-panel::-webkit-scrollbar{display:none}
@media(max-height:700px){.app .map-route-label{top:240px}.app .gps-pill{font-size:10px}.app .sheet{max-height:94dvh}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
.maplibregl-ctrl-bottom-right{bottom:34px}.maplibregl-ctrl-attrib{font-size:9px!important;background:#f4f6f0ed!important;color:#53694F}.maplibregl-ctrl-attrib a{color:#53694F}.app .map-controls button{width:44px;height:44px}.app .sport-top{background:linear-gradient(#F4F6F0e8,#F4F6F080 65%,transparent)}.maplibregl-canvas:focus-visible{outline:2px solid var(--ink);outline-offset:-3px}
.camera-stage{background:#183D33;border-radius:18px;overflow:hidden;margin-top:16px}.camera-stage video,.camera-stage img{display:block;width:100%;height:220px;object-fit:contain}.camera-panel [hidden]{display:none!important}.camera-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}.camera-actions button{min-height:44px;margin:0!important}.camera-actions #camera-open{grid-column:1/-1}.camera-panel p{min-height:40px}.camera-panel select{margin-bottom:0}.camera-fallback{font-size:12px;margin-top:16px}.camera-fallback summary{cursor:pointer;min-height:44px;display:flex;align-items:center}.camera-panel button:focus-visible{outline:2px solid var(--ink);outline-offset:3px}

@media(max-height:700px){.app .map-controls{top:155px}}
