h3{margin:16px 0 8px;font-size:17px}.up{font-size:14px}.row,.filters,.fields{flex-wrap:wrap;align-items:end;gap:8px 12px;display:flex}.filters{margin-bottom:12px}.filters select,.filters input,.row input{flex:150px;width:auto;min-width:0}.filters label{flex:180px}.fields label{flex:160px}.fields label.check{flex:none;align-items:center;gap:8px;min-height:44px;display:flex}.heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px;display:flex}.heading h2{margin:0}.toggle{gap:4px;display:inline-flex}.toggle button{min-height:36px;padding:6px 12px}.toggle button[aria-pressed=true]{background:var(--fill);box-shadow:inset 0 0 0 1px var(--accent)}a.button{border-radius:var(--radius);border:1px solid var(--control-line);background:var(--panel);min-height:44px;color:var(--ink);justify-content:center;align-items:center;padding:10px 16px;font-size:14px;font-weight:600;text-decoration:none;display:inline-flex}a.button:hover{background:var(--fill)}button.strava-connect,button.strava-connect:hover{background:0 0;border:0;border-radius:6px;min-height:0;padding:0;line-height:0}.strava-connect img{width:auto;height:48px;display:block}a.strava-view{color:#fc5200;align-items:center;min-height:44px;font-weight:700;display:inline-flex}.strava-compatible{align-self:center;width:auto;height:18px}.danger{color:var(--error);border-color:var(--error)}.note.error{color:var(--error)}.scroll{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:14px}th,td{border-bottom:1px solid var(--line);text-align:left;vertical-align:top;padding:8px 6px}th{color:var(--muted);white-space:nowrap;font-weight:600}td small{color:var(--muted)}.num{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}th .sort{min-height:0;color:inherit;font:inherit;background:0 0;border:none;padding:0}th .sort:hover{color:var(--accent);background:0 0}table.rides td:nth-child(2){min-width:180px}.totals{margin-bottom:8px}.tiles{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:8px;display:grid}.tile{border-radius:var(--radius);background:var(--page);gap:2px;padding:10px 12px;display:grid}.tile span{color:var(--muted);font-size:13px}.tile strong{font-variant-numeric:tabular-nums;font-size:20px;font-weight:650}.tiles.small .tile strong{font-size:16px}.part{border-top:1px solid var(--line);margin-top:16px;padding-top:8px}.part h3{margin-top:0}canvas.map{border-radius:var(--radius);cursor:grab;background:#e9e6dc;width:100%;height:min(60vh,460px);display:block}.map-box .hint{margin-top:8px}.chart{-webkit-user-select:none;user-select:none;min-height:60px;position:relative}.chart svg{display:block;overflow:visible}.chart .tip{z-index:2;background:var(--panel);border:1px solid var(--line);box-shadow:0 4px 16px var(--shadow);white-space:nowrap;pointer-events:none;border-radius:8px;padding:6px 10px;font-size:13px;position:absolute;top:4px}table.top td{white-space:nowrap}table.top th:first-child{color:var(--ink)}.records>div+div{margin-top:8px}.import.drop{outline:3px dashed var(--accent);outline-offset:-6px}.weights{margin:8px 0 0;padding-left:20px;font-size:14px}.legend{color:var(--muted);flex-wrap:wrap;gap:4px 16px;margin:8px 0 0;font-size:13px;display:flex}.legend .dot{border-radius:50%;width:10px;height:10px;margin-right:6px;display:inline-block}.stack-sections{gap:20px;display:grid}table.peaks tr.done td:first-child a{font-weight:650}table.peaks tr.hidden{opacity:.6}table.peaks select{width:auto;min-height:36px;padding:4px 8px}.offer{width:min(888px,100% - 32px);margin:-44px auto 64px}.offer .plan-actions{margin-top:12px}.row select{width:auto}.file-pick{display:inline-flex}.file-pick button{border-top-right-radius:0;border-bottom-right-radius:0}.file-pick select{border-top-left-radius:0;border-bottom-left-radius:0;width:auto;margin-left:-1px}canvas.map.plan{cursor:crosshair;height:min(70vh,560px)}.layers{flex-wrap:wrap;gap:4px 16px;margin:8px 0;display:flex}.note.warn{color:var(--warning);font-weight:600}ul.rules{padding-left:20px}ul.rules li{margin:4px 0}.row input[type=number]{flex:none;width:8em}figure.photo{margin:8px 0}figure.photo img{object-fit:contain;border-radius:var(--radius);background:var(--fill);width:100%;max-height:60vh;display:block}.badges{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:16px;margin:12px 0 0;padding:0;list-style:none;display:grid}.badge{border:1px solid var(--line);background:var(--panel,#fff);text-align:center;border-radius:12px;justify-items:center;gap:4px;padding:16px 10px 14px;display:grid}.badge .medal{background:var(--fill);width:72px;height:72px;color:var(--muted);box-shadow:inset 0 0 0 3px var(--line);border-radius:50%;place-items:center;margin-bottom:6px;display:grid}.badge .medal svg.i{width:34px;height:34px}.badge strong{font-size:15px}.badge small{color:var(--muted);font-size:13px;line-height:1.35}.badge:not(.got) :is(.medal,strong){opacity:.55}.badge.got .medal{background:var(--accent);color:var(--accent-ink);box-shadow:inset 0 0 0 3px var(--accent-hover), 0 2px 8px #246b5340}.badge.got .when{color:var(--accent);font-weight:600}
