/* /fonts.css */
@font-face{font-family:'Red Hat Display';font-style:normal;font-weight:700 800;font-display:swap;src:url("/fonts/red-hat-display-latin-ext.woff2?v=205384915966626") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:'Red Hat Display';font-style:normal;font-weight:700 800;font-display:swap;src:url("/fonts/red-hat-display-latin.woff2?v=63577827391321") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:'Red Hat Text';font-style:normal;font-weight:400 700;font-display:swap;src:url("/fonts/red-hat-text-latin-ext.woff2?v=259628969857095") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:'Red Hat Text';font-style:normal;font-weight:400 700;font-display:swap;src:url("/fonts/red-hat-text-latin.woff2?v=227377041528635") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:'Red Hat Mono';font-style:normal;font-weight:400 700;font-display:swap;src:url("/fonts/red-hat-mono-latin-ext.woff2?v=174691190792078") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:'Red Hat Mono';font-style:normal;font-weight:400 700;font-display:swap;src:url("/fonts/red-hat-mono-latin.woff2?v=168315467481977") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
/* /vendor/leaflet/leaflet.css */
/* required styles */

.leaflet-pane,
.leaflet-tile,
.leaflet-marker-icon,
.leaflet-marker-shadow,
.leaflet-tile-container,
.leaflet-pane > svg,
.leaflet-pane > canvas,
.leaflet-zoom-box,
.leaflet-image-layer,
.leaflet-layer {
	position: absolute;
	left: 0;
	top: 0;
	}
.leaflet-container {
	overflow: hidden;
	}
.leaflet-tile,
.leaflet-marker-icon,
.leaflet-marker-shadow {
	-webkit-user-select: none;
	   -moz-user-select: none;
	        user-select: none;
	  -webkit-user-drag: none;
	}
/* Prevents IE11 from highlighting tiles in blue */
.leaflet-tile::selection {
	background: transparent;
}
/* Safari renders non-retina tile on retina better with this, but Chrome is worse */
.leaflet-safari .leaflet-tile {
	image-rendering: -webkit-optimize-contrast;
	}
/* hack that prevents hw layers "stretching" when loading new tiles */
.leaflet-safari .leaflet-tile-container {
	width: 1600px;
	height: 1600px;
	-webkit-transform-origin: 0 0;
	}
.leaflet-marker-icon,
.leaflet-marker-shadow {
	display: block;
	}
/* .leaflet-container svg: reset svg max-width decleration shipped in Joomla! (joomla.org) 3.x */
/* .leaflet-container img: map is broken in FF if you have max-width: 100% on tiles */
.leaflet-container .leaflet-overlay-pane svg {
	max-width: none !important;
	max-height: none !important;
	}
.leaflet-container .leaflet-marker-pane img,
.leaflet-container .leaflet-shadow-pane img,
.leaflet-container .leaflet-tile-pane img,
.leaflet-container img.leaflet-image-layer,
.leaflet-container .leaflet-tile {
	max-width: none !important;
	max-height: none !important;
	width: auto;
	padding: 0;
	}

.leaflet-container img.leaflet-tile {
	/* See: https://bugs.chromium.org/p/chromium/issues/detail?id=600120 */
	mix-blend-mode: plus-lighter;
}

.leaflet-container.leaflet-touch-zoom {
	-ms-touch-action: pan-x pan-y;
	touch-action: pan-x pan-y;
	}
.leaflet-container.leaflet-touch-drag {
	-ms-touch-action: pinch-zoom;
	/* Fallback for FF which doesn't support pinch-zoom */
	touch-action: none;
	touch-action: pinch-zoom;
}
.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom {
	-ms-touch-action: none;
	touch-action: none;
}
.leaflet-container {
	-webkit-tap-highlight-color: transparent;
}
.leaflet-container a {
	-webkit-tap-highlight-color: rgba(51, 181, 229, 0.4);
}
.leaflet-tile {
	filter: inherit;
	visibility: hidden;
	}
.leaflet-tile-loaded {
	visibility: inherit;
	}
.leaflet-zoom-box {
	width: 0;
	height: 0;
	-moz-box-sizing: border-box;
	     box-sizing: border-box;
	z-index: 800;
	}
/* workaround for https://bugzilla.mozilla.org/show_bug.cgi?id=888319 */
.leaflet-overlay-pane svg {
	-moz-user-select: none;
	}

.leaflet-pane         { z-index: 400; }

.leaflet-tile-pane    { z-index: 200; }
.leaflet-overlay-pane { z-index: 400; }
.leaflet-shadow-pane  { z-index: 500; }
.leaflet-marker-pane  { z-index: 600; }
.leaflet-tooltip-pane   { z-index: 650; }
.leaflet-popup-pane   { z-index: 700; }

.leaflet-map-pane canvas { z-index: 100; }
.leaflet-map-pane svg    { z-index: 200; }

.leaflet-vml-shape {
	width: 1px;
	height: 1px;
	}
.lvml {
	behavior: url(#default#VML);
	display: inline-block;
	position: absolute;
	}


/* control positioning */

.leaflet-control {
	position: relative;
	z-index: 800;
	pointer-events: visiblePainted; /* IE 9-10 doesn't have auto */
	pointer-events: auto;
	}
.leaflet-top,
.leaflet-bottom {
	position: absolute;
	z-index: 1000;
	pointer-events: none;
	}
.leaflet-top {
	top: 0;
	}
.leaflet-right {
	right: 0;
	}
.leaflet-bottom {
	bottom: 0;
	}
.leaflet-left {
	left: 0;
	}
.leaflet-control {
	float: left;
	clear: both;
	}
.leaflet-right .leaflet-control {
	float: right;
	}
.leaflet-top .leaflet-control {
	margin-top: 10px;
	}
.leaflet-bottom .leaflet-control {
	margin-bottom: 10px;
	}
.leaflet-left .leaflet-control {
	margin-left: 10px;
	}
.leaflet-right .leaflet-control {
	margin-right: 10px;
	}


/* zoom and fade animations */

.leaflet-fade-anim .leaflet-popup {
	opacity: 0;
	-webkit-transition: opacity 0.2s linear;
	   -moz-transition: opacity 0.2s linear;
	        transition: opacity 0.2s linear;
	}
.leaflet-fade-anim .leaflet-map-pane .leaflet-popup {
	opacity: 1;
	}
.leaflet-zoom-animated {
	-webkit-transform-origin: 0 0;
	    -ms-transform-origin: 0 0;
	        transform-origin: 0 0;
	}
svg.leaflet-zoom-animated {
	will-change: transform;
}

.leaflet-zoom-anim .leaflet-zoom-animated {
	-webkit-transition: -webkit-transform 0.25s cubic-bezier(0,0,0.25,1);
	   -moz-transition:    -moz-transform 0.25s cubic-bezier(0,0,0.25,1);
	        transition:         transform 0.25s cubic-bezier(0,0,0.25,1);
	}
.leaflet-zoom-anim .leaflet-tile,
.leaflet-pan-anim .leaflet-tile {
	-webkit-transition: none;
	   -moz-transition: none;
	        transition: none;
	}

.leaflet-zoom-anim .leaflet-zoom-hide {
	visibility: hidden;
	}


/* cursors */

.leaflet-interactive {
	cursor: pointer;
	}
.leaflet-grab {
	cursor: -webkit-grab;
	cursor:    -moz-grab;
	cursor:         grab;
	}
.leaflet-crosshair,
.leaflet-crosshair .leaflet-interactive {
	cursor: crosshair;
	}
.leaflet-popup-pane,
.leaflet-control {
	cursor: auto;
	}
.leaflet-dragging .leaflet-grab,
.leaflet-dragging .leaflet-grab .leaflet-interactive,
.leaflet-dragging .leaflet-marker-draggable {
	cursor: move;
	cursor: -webkit-grabbing;
	cursor:    -moz-grabbing;
	cursor:         grabbing;
	}

/* marker & overlays interactivity */
.leaflet-marker-icon,
.leaflet-marker-shadow,
.leaflet-image-layer,
.leaflet-pane > svg path,
.leaflet-tile-container {
	pointer-events: none;
	}

.leaflet-marker-icon.leaflet-interactive,
.leaflet-image-layer.leaflet-interactive,
.leaflet-pane > svg path.leaflet-interactive,
svg.leaflet-image-layer.leaflet-interactive path {
	pointer-events: visiblePainted; /* IE 9-10 doesn't have auto */
	pointer-events: auto;
	}

/* visual tweaks */

.leaflet-container {
	background: #ddd;
	outline-offset: 1px;
	}
.leaflet-container a {
	color: #0078A8;
	}
.leaflet-zoom-box {
	border: 2px dotted #38f;
	background: rgba(255,255,255,0.5);
	}


/* general typography */
.leaflet-container {
	font-family: "Helvetica Neue", Arial, Helvetica, sans-serif;
	font-size: 12px;
	font-size: 0.75rem;
	line-height: 1.5;
	}


/* general toolbar styles */

.leaflet-bar {
	box-shadow: 0 1px 5px rgba(0,0,0,0.65);
	border-radius: 4px;
	}
.leaflet-bar a {
	background-color: #fff;
	border-bottom: 1px solid #ccc;
	width: 26px;
	height: 26px;
	line-height: 26px;
	display: block;
	text-align: center;
	text-decoration: none;
	color: black;
	}
.leaflet-bar a,
.leaflet-control-layers-toggle {
	background-position: 50% 50%;
	background-repeat: no-repeat;
	display: block;
	}
.leaflet-bar a:hover,
.leaflet-bar a:focus {
	background-color: #f4f4f4;
	}
.leaflet-bar a:first-child {
	border-top-left-radius: 4px;
	border-top-right-radius: 4px;
	}
.leaflet-bar a:last-child {
	border-bottom-left-radius: 4px;
	border-bottom-right-radius: 4px;
	border-bottom: none;
	}
.leaflet-bar a.leaflet-disabled {
	cursor: default;
	background-color: #f4f4f4;
	color: #bbb;
	}

.leaflet-touch .leaflet-bar a {
	width: 30px;
	height: 30px;
	line-height: 30px;
	}
.leaflet-touch .leaflet-bar a:first-child {
	border-top-left-radius: 2px;
	border-top-right-radius: 2px;
	}
.leaflet-touch .leaflet-bar a:last-child {
	border-bottom-left-radius: 2px;
	border-bottom-right-radius: 2px;
	}

/* zoom control */

.leaflet-control-zoom-in,
.leaflet-control-zoom-out {
	font: bold 18px 'Lucida Console', Monaco, monospace;
	text-indent: 1px;
	}

.leaflet-touch .leaflet-control-zoom-in, .leaflet-touch .leaflet-control-zoom-out  {
	font-size: 22px;
	}


/* layers control */

.leaflet-control-layers {
	box-shadow: 0 1px 5px rgba(0,0,0,0.4);
	background: #fff;
	border-radius: 5px;
	}
.leaflet-control-layers-toggle {
	background-image: url(/vendor/leaflet/images/layers.png);
	width: 36px;
	height: 36px;
	}
.leaflet-retina .leaflet-control-layers-toggle {
	background-image: url(/vendor/leaflet/images/layers-2x.png);
	background-size: 26px 26px;
	}
.leaflet-touch .leaflet-control-layers-toggle {
	width: 44px;
	height: 44px;
	}
.leaflet-control-layers .leaflet-control-layers-list,
.leaflet-control-layers-expanded .leaflet-control-layers-toggle {
	display: none;
	}
.leaflet-control-layers-expanded .leaflet-control-layers-list {
	display: block;
	position: relative;
	}
.leaflet-control-layers-expanded {
	padding: 6px 10px 6px 6px;
	color: #333;
	background: #fff;
	}
.leaflet-control-layers-scrollbar {
	overflow-y: scroll;
	overflow-x: hidden;
	padding-right: 5px;
	}
.leaflet-control-layers-selector {
	margin-top: 2px;
	position: relative;
	top: 1px;
	}
.leaflet-control-layers label {
	display: block;
	font-size: 13px;
	font-size: 1.08333em;
	}
.leaflet-control-layers-separator {
	height: 0;
	border-top: 1px solid #ddd;
	margin: 5px -10px 5px -6px;
	}

/* Default icon URLs */
.leaflet-default-icon-path { /* used only in path-guessing heuristic, see L.Icon.Default */
	background-image: url(/vendor/leaflet/images/marker-icon.png);
	}


/* attribution and scale controls */

.leaflet-container .leaflet-control-attribution {
	background: #fff;
	background: rgba(255, 255, 255, 0.8);
	margin: 0;
	}
.leaflet-control-attribution,
.leaflet-control-scale-line {
	padding: 0 5px;
	color: #333;
	line-height: 1.4;
	}
.leaflet-control-attribution a {
	text-decoration: none;
	}
.leaflet-control-attribution a:hover,
.leaflet-control-attribution a:focus {
	text-decoration: underline;
	}
.leaflet-attribution-flag {
	display: inline !important;
	vertical-align: baseline !important;
	width: 1em;
	height: 0.6669em;
	}
.leaflet-left .leaflet-control-scale {
	margin-left: 5px;
	}
.leaflet-bottom .leaflet-control-scale {
	margin-bottom: 5px;
	}
.leaflet-control-scale-line {
	border: 2px solid #777;
	border-top: none;
	line-height: 1.1;
	padding: 2px 5px 1px;
	white-space: nowrap;
	-moz-box-sizing: border-box;
	     box-sizing: border-box;
	background: rgba(255, 255, 255, 0.8);
	text-shadow: 1px 1px #fff;
	}
.leaflet-control-scale-line:not(:first-child) {
	border-top: 2px solid #777;
	border-bottom: none;
	margin-top: -2px;
	}
.leaflet-control-scale-line:not(:first-child):not(:last-child) {
	border-bottom: 2px solid #777;
	}

.leaflet-touch .leaflet-control-attribution,
.leaflet-touch .leaflet-control-layers,
.leaflet-touch .leaflet-bar {
	box-shadow: none;
	}
.leaflet-touch .leaflet-control-layers,
.leaflet-touch .leaflet-bar {
	border: 2px solid rgba(0,0,0,0.2);
	background-clip: padding-box;
	}


/* popup */

.leaflet-popup {
	position: absolute;
	text-align: center;
	margin-bottom: 20px;
	}
.leaflet-popup-content-wrapper {
	padding: 1px;
	text-align: left;
	border-radius: 12px;
	}
.leaflet-popup-content {
	margin: 13px 24px 13px 20px;
	line-height: 1.3;
	font-size: 13px;
	font-size: 1.08333em;
	min-height: 1px;
	}
.leaflet-popup-content p {
	margin: 17px 0;
	margin: 1.3em 0;
	}
.leaflet-popup-tip-container {
	width: 40px;
	height: 20px;
	position: absolute;
	left: 50%;
	margin-top: -1px;
	margin-left: -20px;
	overflow: hidden;
	pointer-events: none;
	}
.leaflet-popup-tip {
	width: 17px;
	height: 17px;
	padding: 1px;

	margin: -10px auto 0;
	pointer-events: auto;

	-webkit-transform: rotate(45deg);
	   -moz-transform: rotate(45deg);
	    -ms-transform: rotate(45deg);
	        transform: rotate(45deg);
	}
.leaflet-popup-content-wrapper,
.leaflet-popup-tip {
	background: white;
	color: #333;
	box-shadow: 0 3px 14px rgba(0,0,0,0.4);
	}
.leaflet-container a.leaflet-popup-close-button {
	position: absolute;
	top: 0;
	right: 0;
	border: none;
	text-align: center;
	width: 24px;
	height: 24px;
	font: 16px/24px Tahoma, Verdana, sans-serif;
	color: #757575;
	text-decoration: none;
	background: transparent;
	}
.leaflet-container a.leaflet-popup-close-button:hover,
.leaflet-container a.leaflet-popup-close-button:focus {
	color: #585858;
	}
.leaflet-popup-scrolled {
	overflow: auto;
	}

.leaflet-oldie .leaflet-popup-content-wrapper {
	-ms-zoom: 1;
	}
.leaflet-oldie .leaflet-popup-tip {
	width: 24px;
	margin: 0 auto;

	-ms-filter: "progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)";
	filter: progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678);
	}

.leaflet-oldie .leaflet-control-zoom,
.leaflet-oldie .leaflet-control-layers,
.leaflet-oldie .leaflet-popup-content-wrapper,
.leaflet-oldie .leaflet-popup-tip {
	border: 1px solid #999;
	}


/* div icon */

.leaflet-div-icon {
	background: #fff;
	border: 1px solid #666;
	}


/* Tooltip */
/* Base styles for the element that has a tooltip */
.leaflet-tooltip {
	position: absolute;
	padding: 6px;
	background-color: #fff;
	border: 1px solid #fff;
	border-radius: 3px;
	color: #222;
	white-space: nowrap;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	pointer-events: none;
	box-shadow: 0 1px 3px rgba(0,0,0,0.4);
	}
.leaflet-tooltip.leaflet-interactive {
	cursor: pointer;
	pointer-events: auto;
	}
.leaflet-tooltip-top:before,
.leaflet-tooltip-bottom:before,
.leaflet-tooltip-left:before,
.leaflet-tooltip-right:before {
	position: absolute;
	pointer-events: none;
	border: 6px solid transparent;
	background: transparent;
	content: "";
	}

/* Directions */

.leaflet-tooltip-bottom {
	margin-top: 6px;
}
.leaflet-tooltip-top {
	margin-top: -6px;
}
.leaflet-tooltip-bottom:before,
.leaflet-tooltip-top:before {
	left: 50%;
	margin-left: -6px;
	}
.leaflet-tooltip-top:before {
	bottom: 0;
	margin-bottom: -12px;
	border-top-color: #fff;
	}
.leaflet-tooltip-bottom:before {
	top: 0;
	margin-top: -12px;
	margin-left: -6px;
	border-bottom-color: #fff;
	}
.leaflet-tooltip-left {
	margin-left: -6px;
}
.leaflet-tooltip-right {
	margin-left: 6px;
}
.leaflet-tooltip-left:before,
.leaflet-tooltip-right:before {
	top: 50%;
	margin-top: -6px;
	}
.leaflet-tooltip-left:before {
	right: 0;
	margin-right: -12px;
	border-left-color: #fff;
	}
.leaflet-tooltip-right:before {
	left: 0;
	margin-left: -12px;
	border-right-color: #fff;
	}

/* Printing */

@media print {
	/* Prevent printers from removing background-images of controls. */
	.leaflet-control {
		-webkit-print-color-adjust: exact;
		print-color-adjust: exact;
		}
	}

/* /tokens.css */
:root{--bg-0:#07120f;--bg-1:#0a1a1c;--bg-well:color-mix(in srgb,var(--bg-0) 80%,#000);--bg-2:color-mix(in srgb,var(--bg-1) 93%,#fff);--ink:#eaf4ee;--muted:#8ea7a0;--ink-bright:color-mix(in srgb,var(--ink) 60%,#fff);--faint:color-mix(in srgb,var(--muted) 70%,var(--bg-0));--accent:#9ae600;--accent-ink:var(--bg-well);--selection:color-mix(in srgb,var(--accent) 28%,transparent);--fill-idle:color-mix(in srgb,var(--ink) 4%,transparent);--fill-hover:color-mix(in srgb,var(--ink) 8%,transparent);--fill-selected:color-mix(in srgb,var(--ink) 18%,transparent);--edge:color-mix(in srgb,var(--ink) 40%,transparent);--edge-soft:color-mix(in srgb,var(--ink) 25%,transparent);--ring:color-mix(in srgb,var(--ink) 25%,transparent);--line:rgba(255,255,255,0.09);--line-faint:color-mix(in srgb,var(--line) 55%,transparent);--glass:rgba(255,255,255,0.045);--glass-2:rgba(255,255,255,0.07);--c-fuel:#ff7a1a;--c-pace:#9ae600;--c-crew:#3ad17f;--c-course:#19c3b1;--c-gear:#8b6cff;--c-weather:#e070ee;--c-climb:#ff5d73;--c-aid:#36c5f0;--gold:#ffd23f;--ok:#3ad17f;--warn:#ffb020;--bad:#ff5d73;--orange:var(--c-fuel);--moss:var(--c-pace);--fern:var(--c-crew);--teal:var(--c-course);--violet:var(--c-gear);--plum:var(--c-weather);--coral:var(--c-climb);--aqua:var(--c-aid);--r-ctl:6px;--r-card:10px;--display:'Red Hat Display',-apple-system,BlinkMacSystemFont,sans-serif;--body:'Red Hat Text',-apple-system,BlinkMacSystemFont,sans-serif;--mono:'Red Hat Mono',ui-monospace,'SF Mono',Menlo,Consolas,monospace;--mono-cap:0.6875rem;--ease-snap:cubic-bezier(0.23,1,0.32,1);--dur-ctl:150ms;--dur-layer:250ms;--here-ring:linear-gradient(45deg,var(--teal),var(--accent));--here-fill:var(--bg-2);--here-bg:linear-gradient(var(--here-fill),var(--here-fill)) padding-box,var(--here-ring) border-box;--shadow-pop:0 8px 24px rgba(0,0,0,0.45)}@media (max-width:860px){:root{--mono-cap:0.75rem}}body{font-family:var(--body)}code,kbd,pre{font-family:var(--mono);font-size:0.85em;background:var(--bg-well);border:1px solid var(--line-faint);border-radius:4px;padding:1px 5px}a:not([class]){color:var(--accent);text-decoration:underline;text-underline-offset:3px}a.export-btn,a.btn,a.btn-ghost,a.export-btn:hover,a.btn:hover,a.btn-ghost:hover,a.export-btn:focus,a.btn:focus,a.btn-ghost:focus,a.export-btn:active,a.btn:active,a.btn-ghost:active{text-decoration:none}.data{font-family:var(--mono);font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1}.data-u,.data .unit,.data .u{font-size:0.8em;font-weight:500;letter-spacing:0.08em;text-transform:uppercase}.data-label{font-family:var(--mono);font-weight:500;letter-spacing:0.1em;text-transform:uppercase}.tg-here{color:var(--accent);border:1px solid transparent;background:var(--here-bg);transition:none}@keyframes tg-pop-in{from{opacity:0;transform:scale(0.96)}to{opacity:1;transform:none}}a,button,summary,label,select,input,textarea,[role="button"],[role="tab"],[role="switch"],.tg-tab{touch-action:manipulation;-webkit-tap-highlight-color:transparent}:where(a[href],button,input,select,textarea,summary,[tabindex]:not([tabindex="-1"]),[contenteditable="true"]):focus-visible{outline:2px solid var(--accent);outline-offset:2px}:where(main,[tabindex="-1"]):focus{outline:none}html.theme-tokyonight{--bg-0:#1a1b26;--bg-1:#24283b;--ink:#c0caf5;--muted:#9aa5ce;--accent:#7aa2f7;--c-fuel:#ff9e64;--gold:#e0af68;--c-pace:#7aa2f7;--c-crew:#9ece6a;--c-course:#0db9d7;--c-gear:#bb9af7;--c-weather:#d98ae0;--c-climb:#f7768e;--c-aid:#7dcfff;--ok:#9ece6a;--warn:#e0af68;--bad:#f7768e}html.theme-tokyonight .backdrop{background:radial-gradient(1200px 600px at 70% -10%,rgba(13,185,215,0.10),transparent 60%),radial-gradient(900px 500px at 10% 10%,rgba(187,154,247,0.08),transparent 55%),linear-gradient(180deg,var(--bg-0),var(--bg-1))}html.theme-tokyonight .aurora{background:conic-gradient(from 180deg at 50% 50%,transparent,rgba(122,162,247,0.07),transparent 40%)}html.theme-tokyonight .goat{filter:drop-shadow(0 24px 36px rgba(0,0,0,0.55)) drop-shadow(0 0 10px rgba(122,162,247,0.45));animation:bob 3.2s ease-in-out infinite}html.theme-tokyonight .cta-band{background-image:radial-gradient(600px 200px at 50% -20%,rgba(187,154,247,0.12),transparent 70%)}html.theme-tokyonight #hr-grad stop:nth-of-type(1){stop-color:#0db9d7}html.theme-tokyonight #hr-grad stop:nth-of-type(2){stop-color:#7aa2f7}html.theme-tokyonight #hr-grad stop:nth-of-type(3){stop-color:#bb9af7}
/* /fuel.css */
:root{--radius:var(--r-card);--raise-1:inset 0 1px 0 rgba(255,255,255,0.07),0 2px 6px rgba(0,0,0,0.35);--raise-2:inset 0 1px 0 rgba(255,255,255,0.09),0 2px 5px rgba(0,0,0,0.45),0 10px 22px -8px rgba(0,0,0,0.55);--raise-primary:inset 0 1px 0 rgba(255,255,255,0.38),inset 0 -2px 4px rgba(120,45,0,0.3),0 2px 5px rgba(0,0,0,0.45),0 10px 22px -8px rgba(255,122,26,0.5);--well:inset 0 2px 6px rgba(0,0,0,0.5),inset 0 -1px 0 rgba(255,255,255,0.05);--ledge-orange:0 4px 0 #a34d03}.ico{width:15px;height:15px;flex:0 0 auto}.ico path,.ico circle,.ico rect,.ico line,.ico polyline{fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}*{box-sizing:border-box;margin:0;padding:0}@media (prefers-reduced-motion:no-preference){html:focus-within{scroll-behavior:smooth}}body{font-family:var(--body);background:var(--bg-0);color:var(--ink);min-height:100vh;line-height:1.5;-webkit-font-smoothing:antialiased;overflow-x:clip}.backdrop{position:fixed;inset:0;z-index:-1;overflow:hidden;background:radial-gradient(1200px 600px at 70% -10%,rgba(25,195,177,0.10),transparent 60%),radial-gradient(900px 500px at 10% 10%,rgba(255,122,26,0.08),transparent 55%),linear-gradient(180deg,var(--bg-0),var(--bg-1))}.aurora{position:absolute;inset:-20% -20% auto -20%;height:60%;background:conic-gradient(from 180deg at 50% 50%,transparent,rgba(154,230,0,0.06),transparent 40%);filter:blur(40px)}.ridge{position:absolute;bottom:0;left:0;width:100%;height:38vh;opacity:0.5}.ridge-back{fill:#0c2220}.ridge-mid{fill:#0a1c1a}.ridge-front{fill:#07140f}.topbar{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;padding:18px clamp(16px,2vw,30px);max-width:none;margin:0}.wordmark{font-family:var(--display);font-weight:800;font-size:1.4rem;letter-spacing:0.02em;color:var(--ink);text-decoration:none}.grad{background:linear-gradient(100deg,var(--teal),var(--accent));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.coach-brand{font-family:var(--display);font-weight:800;letter-spacing:0.02em;color:var(--ink);text-transform:none}.toggles{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.unit-toggle{display:inline-flex;gap:4px;background:rgba(0,0,0,0.35);border:1px solid rgba(255,255,255,0.09);border-radius:var(--r-ctl);padding:4px;box-shadow:var(--well)}.unit-toggle button{background:transparent;color:var(--muted);border:none;cursor:pointer;font-family:inherit;font-weight:700;font-size:0.78rem;letter-spacing:0.04em;padding:7px 16px;border-radius:calc(var(--r-ctl) - 2px);transition:all 0.15s}.unit-toggle button.active{color:var(--ink);background:linear-gradient(180deg,rgba(255,255,255,0.16),rgba(255,255,255,0.08));box-shadow:inset 0 1px 0 rgba(255,255,255,0.2),0 3px 8px rgba(0,0,0,0.45)}.wrap{max-width:1180px;margin:0 auto;padding:10px clamp(16px,4vw,40px) 80px}.hero{margin:18px 0 30px}.eyebrow{color:var(--accent);font-family:var(--mono);font-weight:500;letter-spacing:0.1em;text-transform:uppercase;font-size:0.8rem;margin-bottom:12px}.hero h1{font-family:var(--display);font-weight:800;font-size:clamp(2rem,5vw,3.2rem);line-height:1.05;letter-spacing:-0.02em}.hero-sub{color:var(--muted);font-size:1.05rem;max-width:40rem;margin-top:16px}.panel{background:var(--bg-2);border:1px solid var(--line);border-top-color:rgba(255,255,255,0.16);border-radius:var(--radius);padding:24px;box-shadow:var(--raise-1)}.inputs,.fueling-plan{margin-bottom:22px}.panel-title{font-family:var(--display);font-weight:700;font-size:1.15rem}.panel-head-row{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.export-btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;background:var(--fill-idle);color:var(--ink);border:1px solid var(--edge);border-radius:var(--r-ctl);padding:9px 18px;font-family:inherit;font-weight:700;font-size:0.85rem;cursor:pointer;transition:transform 0.13s ease,background 0.13s ease,border-color 0.13s ease}.export-btn:hover{transform:translateY(-1px);background:var(--fill-hover)}.export-btn:active{transform:translateY(1px);background:var(--fill-selected)}.export-btn:disabled{opacity:0.6;cursor:default;transform:none}.export-btn.tonal{color:var(--ink);border:1px solid rgba(255,255,255,0.12);background:linear-gradient(180deg,rgba(255,255,255,0.085),rgba(255,255,255,0.04));box-shadow:var(--raise-1)}.export-btn.tonal:hover{border-color:rgba(255,255,255,0.24);filter:none}.export-btn.tonal:active{box-shadow:inset 0 2px 6px rgba(0,0,0,0.45)}.export-btn.tonal .ico{color:var(--accent)}.effort-cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:26px;margin-top:18px}.effort-col{display:flex;flex-direction:column}.effort-col>* + *{margin-top:16px}.col-head{font-family:var(--display);font-weight:600;font-size:0.98rem;color:var(--ink);padding-bottom:8px;border-bottom:1px solid var(--line)}.fuel-head{margin-bottom:16px}.fuel-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.fuel-card-full{grid-column:1 / -1}@media (max-width:600px){.fuel-cards{grid-template-columns:1fr}}.fuel-card{background:var(--bg-2);border:1px solid var(--line);border-top-color:rgba(255,255,255,0.16);border-radius:var(--radius);padding:22px;box-shadow:var(--raise-1)}.result-group{display:flex;flex-direction:column}.methodology{margin-top:22px}.field-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px}.adv-grid{max-width:460px;margin-top:14px}.field{display:flex;flex-direction:column;gap:6px}.field-block{display:flex;flex-direction:column;gap:10px}.field-label{color:var(--muted);font-size:0.85rem;font-weight:500}.field-label em{color:var(--teal);font-style:normal;font-weight:600}.field-label small{color:var(--muted);opacity:0.7;font-weight:400}.field-label strong{color:var(--ink);font-family:var(--display)}.slider-hint{color:var(--gold);font-weight:600;margin-left:4px}input[type="number"],input[type="text"],input[type="search"],input[type="datetime-local"],input[type="date"],select{background:var(--glass-2);color:var(--ink);border:1px solid var(--line);border-radius:var(--r-ctl);padding:11px 14px;font-family:inherit;font-size:1rem;width:100%;transition:border-color 0.15s;color-scheme:dark;-webkit-appearance:none;appearance:none}input[type="number"]:focus,input[type="text"]:focus,input[type="search"]:focus,input[type="datetime-local"]:focus,input[type="date"]:focus,select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--ring)}input[type="search"]::-webkit-search-decoration,input[type="search"]::-webkit-search-cancel-button{-webkit-appearance:none}select{cursor:pointer}select option{background:var(--bg-1);color:var(--ink)}.segmented{display:inline-flex;gap:4px;background:var(--glass-2);border:1px solid var(--line);border-radius:var(--r-ctl);padding:4px}.segmented button{flex:1;background:transparent;color:var(--muted);border:none;cursor:pointer;font-family:inherit;font-weight:600;font-size:0.9rem;padding:9px 12px;border-radius:calc(var(--r-ctl) - 2px);transition:all 0.15s;white-space:nowrap}.segmented button.active{background:var(--fill-selected);color:var(--accent)}@media (max-width:600px){.segmented{display:flex;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.segmented::-webkit-scrollbar{display:none}.segmented button{flex:0 0 auto}}.slider{-webkit-appearance:none;appearance:none;width:100%;height:6px;border-radius:999px;background:linear-gradient(90deg,var(--teal),var(--gold),var(--orange));outline:none}.slider:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:22px;height:22px;border-radius:50%;background:var(--ink);border:3px solid var(--accent);cursor:pointer;box-shadow:0 2px 8px rgba(0,0,0,0.4)}.slider::-moz-range-thumb{width:22px;height:22px;border-radius:50%;background:var(--ink);border:3px solid var(--accent);cursor:pointer}.pace-row{display:flex;gap:10px}.pace-row input{flex:0 0 96px;text-align:center}.estimate-btn{flex:1;color:var(--ink);background:linear-gradient(180deg,rgba(255,255,255,0.085),rgba(255,255,255,0.04));border:1px solid var(--line);border-radius:var(--r-ctl);padding:0 14px;font-family:inherit;font-weight:600;font-size:0.9rem;cursor:pointer;box-shadow:var(--raise-1);transition:all 0.15s}.estimate-btn:hover{border-color:var(--edge-soft);background:var(--fill-hover)}.estimate-btn:active{box-shadow:inset 0 2px 6px rgba(0,0,0,0.45)}.estimate-out{color:var(--muted);font-size:0.85rem;margin-top:4px;min-height:1.1em}.estimate-out strong{color:var(--gold);font-family:var(--mono);font-weight:700}.estimate-out small{opacity:0.85}.estimate-out.warn{color:var(--warn)}.estimate-out.warn strong{color:var(--warn)}.weather-row{display:flex;gap:10px;flex-wrap:wrap}.weather-row input{flex:1 1 170px}.weather-row .estimate-btn{flex:0 0 auto}.advanced{margin-top:20px;border-top:1px solid var(--line);padding-top:14px}.advanced summary,.methodology summary{cursor:pointer;color:var(--muted);font-weight:600;font-size:0.9rem;list-style:none}.advanced summary::-webkit-details-marker,.methodology summary::-webkit-details-marker{display:none}.advanced summary::before,.methodology summary::before{content:'＋ ';color:var(--accent)}.advanced[open] summary::before,.methodology[open] summary::before{content:'－ '}.gut-row{display:flex;align-items:center;flex-wrap:wrap;gap:8px 12px;margin-top:14px}.gut-row-label{font-size:0.78rem;font-weight:700;letter-spacing:0.04em;text-transform:uppercase;color:var(--muted)}.gut-chips{flex:1 1 auto}.gut-chips button{flex:1 1 0;padding-left:10px;padding-right:10px}@media (max-width:480px){.gut-row-label{flex:1 0 100%}}.metric-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:16px}.metric{position:relative;background:var(--glass-2);border:1px solid var(--line);border-radius:var(--radius);padding:15px 16px;overflow:hidden}.metric::before{content:'';position:absolute;top:0;left:0;width:100%;height:3px;background:var(--stat-acc);opacity:0.9}.metric::after{content:'';position:absolute;top:-40px;right:-40px;width:110px;height:110px;border-radius:50%;background:var(--stat-acc);opacity:0.12;filter:blur(8px)}.metric-water{--stat-acc:var(--teal)}.metric-sodium{--stat-acc:var(--violet)}.metric-carbs{--stat-acc:var(--gold)}.metric-cals{--stat-acc:var(--orange)}.metric-label{color:var(--muted);font-family:var(--mono);font-size:max(0.74rem,var(--mono-cap));font-weight:500;letter-spacing:0.1em;text-transform:uppercase;margin-bottom:8px}.metric-num{font-family:var(--mono);font-weight:700;font-size:1.5rem;line-height:1.05;color:var(--stat-acc)}.metric-num>span:first-child{white-space:nowrap;display:inline-block}.metric-unit{font-size:0.8rem;font-weight:500;letter-spacing:0.08em;text-transform:uppercase;color:var(--muted);margin-left:3px}.kit-list{list-style:none;margin-top:14px;display:flex;flex-direction:column;gap:12px}.kit-list li{display:flex;align-items:baseline;gap:10px;font-size:1rem}.kit-list small{color:var(--muted)}.kit-num{font-family:var(--mono);font-weight:700;font-size:1.4rem;color:var(--moss);min-width:1.6em;text-align:right;white-space:nowrap}.kit-note{color:var(--muted);font-size:0.85rem;margin-top:14px}.course{margin-bottom:22px}.course-head{margin-bottom:16px}.course-name-field{margin-bottom:16px;max-width:420px;position:relative}.course-suggest{position:absolute;top:100%;left:0;right:0;z-index:1100;margin-top:6px;background:rgba(7,18,15,0.98);border:1px solid var(--line);border-radius:var(--r-card);box-shadow:var(--shadow-pop);max-height:300px;overflow-y:auto}.suggest-item{display:flex;flex-direction:column;gap:2px;width:100%;text-align:left;background:none;border:none;border-bottom:1px solid var(--line);padding:10px 14px;cursor:pointer;color:var(--ink);font-family:inherit}.suggest-item:last-child{border-bottom:none}.suggest-item:hover{background:var(--glass-2)}.suggest-name{font-weight:600;font-size:0.92rem}.suggest-meta{color:var(--muted);font-size:0.8rem}.suggest-wait{color:var(--muted);font-size:0.86rem;padding:10px 14px}.panel-sub{color:var(--muted);font-size:0.88rem;margin-top:4px}.panel-sub.rd-sec-lead{margin-top:0}.tg-community-badge{border:1px solid currentColor;border-radius:var(--r-ctl);padding:0 6px;font-size:10px;opacity:0.85}.inline-link{color:var(--accent);text-decoration:none;font-weight:600;white-space:nowrap}.inline-link:hover{text-decoration:underline}.dropzone{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;text-align:center;padding:32px 20px;border:1.5px dashed var(--line);border-radius:var(--radius);background:var(--glass-2);cursor:pointer;transition:border-color 0.15s,background 0.15s}.dropzone:hover,.dropzone.dragover{border-color:var(--accent);background:var(--fill-hover)}.dz-icon{font-size:2rem}.dz-icon .ico{width:30px;height:30px;color:var(--muted)}.base-map-cap .ico{color:var(--teal);vertical-align:-2px}.tg-browse-btn .ico{color:var(--accent)}.dz-text{color:var(--ink);font-size:0.98rem}.dz-text strong{font-weight:600}.dz-status{color:var(--muted);font-size:0.85rem;min-height:1em}.dz-status.error{color:var(--bad)}.rd-status:empty{display:none}.course-title{font-family:var(--display);font-weight:800;font-size:1.4rem;color:var(--ink);margin:0 2px 12px;line-height:1.2}.course-stats{display:flex;flex-wrap:wrap;gap:10px;margin:22px 0 16px;align-items:stretch}.course-stat{background:var(--glass-2);border:1px solid var(--line);border-radius:var(--r-card);padding:10px 14px;flex:1 1 110px;display:flex;flex-direction:column}.course-stat .cs-label{color:var(--muted);font-family:var(--mono);font-weight:500;font-size:max(0.72rem,var(--mono-cap));text-transform:uppercase;letter-spacing:0.1em;white-space:nowrap}.course-stat .cs-sub{display:block;font-family:var(--body);font-weight:400;font-size:0.7rem;letter-spacing:normal;text-transform:none;color:var(--muted);opacity:0.85;white-space:nowrap}.course-stat .cs-val{font-family:var(--mono);font-weight:700;font-size:1.2rem;margin-top:auto;padding-top:3px}.course-stat .cs-val .unit{font-size:0.72rem;font-weight:500;letter-spacing:0.08em;text-transform:uppercase;color:var(--muted);margin-left:4px}.cs-gain .cs-val{color:var(--orange)}.cs-loss .cs-val{color:var(--aqua)}.cs-dist .cs-val{color:var(--moss)}.cs-high .cs-val{color:var(--gold)}.cs-low .cs-val{color:var(--teal)}.cs-oxy .cs-val{color:var(--plum)}.cs-surface .cs-val{color:var(--moss)}.cs-surface.d-gravel .cs-val{color:var(--gold)}.cs-surface.d-paved .cs-val{color:var(--muted)}.cs-mix{display:flex;height:5px;border-radius:3px;overflow:hidden;margin-top:8px}.cs-mix i{display:block;min-width:1px}.sfx-trail{background:var(--moss)}.sfx-gravel{background:var(--gold)}.sfx-paved{background:var(--muted)}.sfx-unknown{background:var(--muted);opacity:0.3}#course-view-panel>summary{flex-wrap:wrap;row-gap:2px}.rd-section>summary .course-event-line{flex:1 1 100%;order:11;margin:0 0 0 35px;font-family:var(--body);font-weight:400;font-size:0.82rem;color:var(--muted);text-transform:none;letter-spacing:normal}.course-event-line a{color:var(--accent);text-decoration:none}.course-event-line a:hover{text-decoration:underline}.course-event-line a.rd-train-link{color:var(--accent);font-weight:600}.course-event-line[hidden]{display:none}.leaflet-div-icon.aid-marker-wrap{background:transparent;border:0}.aid-marker{display:flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:50%;color:#06140f;font-family:var(--display);font-weight:800;font-size:0.92rem;border:2px solid rgba(255,255,255,0.92);box-shadow:0 1px 5px rgba(0,0,0,0.5)}.aid-badge{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%;color:#06140f;font-family:var(--display);font-weight:800;font-size:0.72rem;margin-right:8px;vertical-align:middle}.map-wrap{position:relative;isolation:isolate;border-radius:var(--radius);overflow:hidden;border:1px solid var(--line)}#course-view-panel{padding:12px}#course-view-panel>summary{margin:-12px;padding:10px 12px}#course-view-panel:not([open])>summary{margin-bottom:-12px}#course-view-panel[open]>summary{margin-bottom:12px}#course-view-panel .map-wrap{border:none}#course-map{height:425px;width:100%;background:var(--bg-1)}.tg-3d{position:absolute!important;inset:0;z-index:1200;background:var(--bg-1)}.tg-3d-badge{position:absolute;top:10px;left:50%;transform:translateX(-50%);z-index:1300;font-family:var(--mono);font-weight:700;font-size:0.66rem;letter-spacing:0.06em;text-transform:uppercase;color:var(--gold);background:rgba(7,18,15,0.85);border:1px solid rgba(255,210,63,0.45);border-radius:var(--r-ctl);padding:4px 10px}.tg-3d-exit{position:absolute;top:10px;right:10px;z-index:1300;cursor:pointer;background:rgba(7,18,15,0.92);color:var(--ink);border:1px solid var(--line);border-radius:8px;padding:7px 12px;font-family:var(--body);font-weight:700;font-size:0.82rem;box-shadow:0 2px 8px rgba(0,0,0,0.45)}.tg-3d-exit:hover{border-color:var(--edge-soft);color:var(--accent)}.map-3d-btn{display:flex!important;align-items:center;justify-content:center;width:32px;height:32px;background:rgba(7,18,15,0.92);color:var(--ink);border:1px solid var(--line);border-radius:8px;font-family:var(--body);font-weight:800;font-size:0.72rem;line-height:1;text-decoration:none;box-shadow:0 2px 8px rgba(0,0,0,0.45)}.map-3d-btn:hover{border-color:var(--edge-soft);color:var(--accent)}.map-wrap.tg-3d-active .leaflet-control-container{display:none}.tg-3d-fly{position:absolute;left:10px;bottom:10px;z-index:1300;display:flex;gap:6px}.tg-3d-fly-btn,.tg-3d-fly-speed{cursor:pointer;background:rgba(7,18,15,0.92);color:var(--ink);border:1px solid var(--line);border-radius:8px;font-family:var(--body);font-weight:700;box-shadow:0 2px 8px rgba(0,0,0,0.45);line-height:1}.tg-3d-fly-btn{padding:9px 14px;font-size:0.85rem}.tg-3d-fly-speed{padding:9px 11px;font-size:0.8rem;color:var(--muted);min-width:36px}.tg-3d-fly-btn:hover{border-color:var(--edge-soft);color:var(--accent)}.tg-3d-fly-speed:hover{border-color:var(--edge-soft);color:var(--ink)}.map-locate-btn{display:flex!important;align-items:center;justify-content:center;width:32px;height:32px;background:rgba(7,18,15,0.92);border:1px solid var(--line);border-radius:8px;line-height:1;text-decoration:none;box-shadow:0 2px 8px rgba(0,0,0,0.45)}.map-locate-btn svg{width:16px;height:16px;display:block}.map-locate-btn:hover{border-color:var(--edge-soft);color:var(--accent)}.map-expand-btn{display:flex!important;align-items:center;justify-content:center;width:32px;height:32px;background:rgba(7,18,15,0.92);color:var(--ink);border:1px solid var(--line);border-radius:8px;font-size:1.05rem;line-height:1;text-decoration:none;box-shadow:0 2px 8px rgba(0,0,0,0.45)}.map-expand-btn:hover{border-color:var(--edge-soft);color:var(--accent)}.map-play{display:flex;gap:6px}.map-play-btn,.map-speed-btn{display:flex!important;align-items:center;justify-content:center;height:32px;background:rgba(7,18,15,0.92);color:var(--ink);border:1px solid var(--line);border-radius:8px;font-size:0.95rem;line-height:1;text-decoration:none;box-shadow:0 2px 8px rgba(0,0,0,0.45);font-family:var(--body);font-weight:700}.map-play-btn{width:32px}.map-speed-btn{min-width:34px;padding:0 8px;font-size:0.82rem;color:var(--muted)}.map-play-btn:hover{border-color:var(--edge-soft);color:var(--accent)}.map-speed-btn:hover{border-color:var(--edge-soft);color:var(--ink)}.map-wrap.map-expanded{position:fixed;inset:0;z-index:9999;margin:0;border:none;border-radius:0}.map-wrap.map-expanded #course-map,.map-wrap.map-expanded #lib-map,.map-wrap.map-expanded #base-map{height:100vh;height:100dvh}body.map-modal-open{overflow:hidden}.leaflet-container{background:var(--bg-1);font-family:inherit}.elev-wrap{margin-top:16px}.elev-head{color:var(--muted);font-size:0.85rem;font-weight:600;margin-bottom:8px}.elev-head small{font-weight:400;opacity:0.8}.tg-elev-toggles{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:10px}.tg-tog{display:inline-flex;align-items:center;gap:7px;font-family:var(--body);font-weight:600;font-size:0.8rem;color:var(--muted);background:var(--glass-2);border:1px solid var(--line);border-radius:var(--r-ctl);padding:6px 12px;cursor:pointer;transition:color 0.15s ease,border-color 0.15s ease,background 0.15s ease}.tg-tog:hover{color:var(--ink)}.tg-tog[hidden]{display:none}.tg-tog .tg-dot{width:9px;height:9px;border-radius:50%;background:var(--tg,#888);opacity:0.3;transition:opacity 0.15s ease}.tg-tog.on{color:var(--ink);border-color:var(--tg,#888);background:color-mix(in srgb,var(--tg,#888) 13%,transparent)}.tg-tog.on .tg-dot{opacity:1}.tg-tog-mile .tg-dot{width:11px;height:11px;background:rgba(7,18,15,0.88);border:1.5px solid var(--gold)}.elev-canvas-wrap{position:relative;height:260px}.elev-empty{color:var(--muted);font-size:0.9rem;line-height:1.5;padding:28px 22px;text-align:center;border:1px dashed var(--line);border-radius:var(--radius);background:var(--glass-2)}.leaflet-control-layers{background:rgba(7,18,15,0.92)!important;color:var(--ink);border:1px solid var(--line)!important;border-radius:var(--r-card)!important;box-shadow:0 8px 24px rgba(0,0,0,0.5)!important}.leaflet-control-layers-expanded{padding:8px 12px!important}.leaflet-control-layers label{color:var(--ink);font-size:0.85rem;font-weight:500;margin:2px 0}.leaflet-control-layers-selector{accent-color:var(--accent);margin-right:6px}.leaflet-bar a{background:rgba(7,18,15,0.92);color:var(--ink);border-color:var(--line)}.leaflet-bar a:hover{background:var(--fill-hover)}.plan-summary{margin-top:18px}.plan-summary .col-head{border-bottom:none;padding-bottom:0;margin-bottom:10px}.summary-text{color:var(--muted);font-size:0.95rem;line-height:1.55;margin-bottom:14px;max-width:64ch}.summary-text strong{color:var(--gold);font-weight:700}.carry-head{font-family:var(--mono);font-size:0.75rem;font-weight:500;letter-spacing:0.1em;text-transform:uppercase;color:var(--muted);margin:0 0 8px}.carry-strip{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px}.carry-strip li{display:flex;flex-direction:column;gap:2px;padding:12px 14px;background:rgba(255,255,255,0.03);border:1px solid var(--line);border-radius:var(--r-card)}.carry-name{font-weight:700;font-size:0.92rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.carry-dist{color:var(--muted);font-family:var(--mono);font-size:0.78rem}.carry-load{font-family:var(--mono);font-size:0.92rem;font-weight:700;margin-top:4px}.plan-wrap{margin-top:20px}.plan-scroll{overflow-x:auto;margin-top:10px}.plan-table{width:100%;border-collapse:collapse;font-size:0.92rem}.plan-table th{text-align:left;color:var(--muted);font-family:var(--mono);font-weight:500;font-size:0.72rem;text-transform:uppercase;letter-spacing:0.1em;padding:6px 10px;border-bottom:1px solid var(--line)}.plan-table th:not(:first-child),.plan-table td:not(:first-child){text-align:right;white-space:nowrap}.plan-table td:not(:first-child),.cmp-table td:not(:first-child){font-family:var(--mono)}.plan-table td{padding:9px 10px;border-bottom:1px solid var(--line)}.plan-table tbody tr:nth-child(even){background:color-mix(in srgb,var(--ink) 3%,transparent)}.plan-table tbody tr:hover{background:var(--fill-hover)}.plan-table tbody tr:hover td{border-bottom-color:var(--edge-soft)}.plan-table .aid-name{color:var(--ink);font-weight:500}.plan-table .t-up{color:var(--orange);font-weight:600}.plan-table .t-down{color:var(--aqua);font-weight:600}.plan-table .srf-trail{color:var(--moss);font-weight:600}.plan-table .srf-gravel{color:var(--gold);font-weight:600}.plan-table .srf-paved{color:var(--muted);font-weight:600}.srf-chip{display:inline-block;margin-left:6px;padding:1px 8px;border-radius:var(--r-ctl);font-size:0.68rem;font-weight:700;letter-spacing:0.04em;border:1px solid currentColor;opacity:0.9;vertical-align:1px}.plan-table .t-pace{color:var(--gold);font-weight:700}.plan-table .t-water{color:var(--teal);font-weight:600}.plan-table .t-carb{color:var(--gold);font-weight:600}.plan-table .t-sep{color:var(--muted);font-weight:400}.plan-table .t-flat{color:var(--muted)}.plan-table td.t-tint{border-radius:6px}.plan-table td.t-hot{background:color-mix(in srgb,var(--c-climb) 20%,transparent)}.plan-table td.t-warm{background:color-mix(in srgb,var(--c-fuel) 17%,transparent)}.plan-table td.t-mild{background:color-mix(in srgb,var(--gold) 12%,transparent)}.plan-table td.t-cool{background:color-mix(in srgb,var(--c-aid) 14%,transparent)}.plan-table td.w-carry{border-radius:6px;background:linear-gradient(90deg,color-mix(in srgb,var(--c-course) 13%,transparent) var(--w,0%),transparent var(--w,0%))}.plan-table .grade-soft{color:var(--gold);font-weight:600}.plan-table .grade-mid{color:var(--orange);font-weight:600}.plan-table .grade-hard{color:var(--coral);font-weight:700}.aid-actions{display:inline-flex;gap:4px;margin-left:8px;vertical-align:middle}.cmp-drop{margin:4px 0 10px}.cmp-drop.over{border-color:var(--plum)}.cmp-headline{font-size:0.98rem;margin:10px 0}.cmp-early{color:var(--ok);font-weight:700}.cmp-late{color:var(--bad);font-weight:700}.cmp-table{width:100%;border-collapse:collapse;font-size:0.88rem}.cmp-table th{text-align:left;color:var(--muted);font-family:var(--mono);font-weight:500;font-size:0.72rem;text-transform:uppercase;letter-spacing:0.1em;padding:6px 10px 6px 0;border-bottom:1px solid var(--line)}.cmp-table td{padding:6px 10px 6px 0;border-bottom:1px solid var(--line)}.cmp-table .cmp-miss td{color:var(--muted);opacity:0.7}.cmp-fade{color:var(--muted);font-size:0.88rem;margin:12px 0 2px}.cmp-fade b{color:var(--plum)}.cmp-fade a{color:var(--fern)}.tg-verified{display:inline-flex;align-items:center;gap:4px;padding:1px 8px;font-size:0.78rem;font-weight:600;color:var(--fern);border:1px solid color-mix(in srgb,var(--fern) 50%,transparent);border-radius:var(--r-ctl)}.tg-verified svg{width:11px;height:11px;fill:none;stroke:currentColor;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}.aid-night{display:inline-block;margin-left:6px;vertical-align:-1px;color:var(--violet)}.aid-night svg{width:12px;height:12px;fill:none;stroke:currentColor;stroke-width:2;stroke-linejoin:round}#night-note{color:var(--muted)}#night-note .aid-night{margin-left:0}.aid-cutoff{display:block;width:fit-content;margin-top:3px;padding:1px 7px;font-size:0.72rem;font-family:var(--body);white-space:nowrap;border:1px solid var(--line);border-radius:var(--r-ctl);color:var(--muted);cursor:pointer}.aid-cutoff.cut-ok{border-color:color-mix(in srgb,var(--ok) 45%,transparent);color:var(--ok)}.aid-dwell{display:block;width:fit-content;margin-top:3px;padding:1px 7px;font:500 .7rem/1.5 var(--mono);font-variant-numeric:tabular-nums;white-space:nowrap;border:1px solid var(--line);border-radius:var(--r-ctl);color:var(--muted);cursor:pointer}.aid-dwell:hover,.aid-dwell:focus-visible{border-color:color-mix(in srgb,var(--accent) 55%,transparent);color:var(--ink)}.aid-dwell-off{cursor:default;border-style:dashed;opacity:0.75}.aid-dwell-off:hover,.aid-dwell-off:focus-visible{border-color:var(--line);color:var(--muted)}.aid-dwell-scaled{border-color:color-mix(in srgb,var(--gold) 55%,transparent);color:var(--gold)}.aid-cutoff.cut-tight{border-color:color-mix(in srgb,var(--warn) 55%,transparent);color:var(--warn)}.aid-cutoff.cut-missed{border-color:color-mix(in srgb,var(--bad) 60%,transparent);color:var(--bad)}.aid-cutoff.cut-warn{white-space:normal;max-width:36ch;line-height:1.35}.aid-cutoff .cut-need{display:block;font-weight:600}.aid-rm,.aid-edit,.aid-cut{background:none;border:none;color:var(--muted);cursor:pointer;line-height:1;padding:2px 4px;border-radius:6px}.aid-rm{font-size:1.1rem}.aid-edit{font-size:0.95rem}.aid-rm:hover{color:var(--ink);background:var(--fill-hover)}.aid-edit:hover,.aid-cut:hover{color:var(--accent);background:var(--fill-hover)}.aid-cut svg{width:13px;height:13px;fill:none;stroke:currentColor;stroke-width:2}.aid-fixed{color:var(--muted);font-weight:600}.plan-empty{color:var(--muted);font-size:0.85rem;padding:12px 2px}.plan-note{color:var(--muted);font-size:0.8rem;margin-top:8px}.plan-note strong{color:var(--ink);font-weight:600}.aid-add{display:flex;gap:8px;margin-top:12px;flex-wrap:wrap}.aid-add #aid-dist{flex:0 0 80px}.aid-add #aid-name{flex:1 1 140px}.aid-add .estimate-btn{flex:0 0 auto}.course-actions{margin-top:18px;display:flex;align-items:center;gap:12px;flex-wrap:wrap}.course-actions .course-clear{margin-top:0}.save-status{font-size:0.85rem;color:var(--muted)}.save-status.ok{color:var(--ok)}.save-status.warn{color:var(--warn)}.course-clear{margin-top:16px;background:transparent;color:var(--muted);border:1px solid var(--line);border-radius:var(--r-ctl);padding:8px 16px;cursor:pointer;font-family:inherit;font-weight:600;font-size:0.85rem;transition:all 0.15s}.course-clear:hover{color:var(--ink);border-color:var(--edge-soft);background:var(--fill-hover)}.topnav{display:flex;gap:8px;flex-wrap:wrap}.back-link{color:var(--muted);text-decoration:none;font-weight:600;font-size:0.9rem;padding:8px 16px;border:1px solid var(--line);border-radius:var(--r-ctl)}.back-link:hover{color:var(--ink);border-color:var(--edge-soft);background:var(--fill-hover)}.nav{display:flex;align-items:center;gap:4px;flex-wrap:wrap}.nav a{color:var(--muted);text-decoration:none;font-weight:600;font-size:0.92rem;padding:8px 14px;border-radius:var(--r-ctl);transition:color 0.2s ease,background 0.2s ease}.nav a:hover{color:var(--ink);background:var(--glass)}.nav .beta-tag{font-size:0.62rem;font-weight:700;color:var(--gold);margin-left:4px;letter-spacing:0.05em;vertical-align:super}.lib-toolbar{display:flex;gap:10px;align-items:center;margin-bottom:20px;flex-wrap:wrap}.lib-search{flex:1 1 280px;max-width:480px}.lib-manage{background:var(--glass-2);color:var(--muted);border:1px solid var(--line);border-radius:var(--r-ctl);padding:9px 16px;font-family:inherit;font-weight:600;font-size:0.85rem;cursor:pointer;white-space:nowrap}.lib-manage:hover{color:var(--ink);border-color:var(--edge-soft);background:var(--fill-hover)}.lib-manage.active{color:var(--accent);border-color:var(--accent);background:var(--fill-selected)}.lib-card{position:relative}.lib-del{position:absolute;top:8px;right:8px;width:24px;height:24px;border-radius:50%;border:1px solid var(--line);background:rgba(7,18,15,0.85);color:var(--muted);cursor:pointer;font-size:1.1rem;line-height:1;display:flex;align-items:center;justify-content:center}.lib-del:hover{color:var(--ink);border-color:var(--edge-soft);background:var(--fill-hover)}.lib-count{color:var(--muted);font-size:0.85rem;margin:2px 2px 16px}.lib-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:16px}.lib-card{position:relative;display:flex;flex-direction:column;gap:8px;text-decoration:none;text-align:left;width:100%;font-family:inherit;color:var(--ink);cursor:pointer;background:var(--glass-2);border:1px solid var(--line);border-radius:var(--radius);padding:18px;transition:border-color 0.15s,transform 0.15s,background 0.15s}.lib-card:hover{border-color:var(--edge-soft);transform:translateY(-2px);background:var(--fill-hover)}.lib-card:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.lib-card-cta{color:var(--accent);font-weight:600}.lib-card-name{font-family:var(--display);font-weight:700;font-size:1.02rem;color:var(--ink)}.lib-card-stats{display:flex;flex-wrap:wrap;gap:14px;color:var(--muted);font-size:0.9rem}.lib-card-stats strong{color:var(--ink);font-family:var(--display)}.lib-card-date{color:var(--teal);font-size:0.85rem}.lib-card-foot{color:var(--muted);font-size:0.78rem;margin-top:auto;opacity:0.8}.lib-tag{color:var(--gold);font-size:0.78rem}.lib-empty{color:var(--muted);font-size:0.95rem;padding:24px 4px}.pv-modal-backdrop{position:fixed;inset:0;z-index:9000;display:flex;align-items:flex-start;justify-content:center;padding:4vh 16px;overflow-y:auto;background:rgba(3,9,7,0.82)}.pv-modal-backdrop[hidden]{display:none}.pv-modal{position:relative;width:100%;max-width:800px;margin:auto;background:var(--bg-1);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-pop);padding:26px}.pv-close{position:absolute;top:16px;right:16px;width:34px;height:34px;border-radius:50%;border:1px solid var(--line);background:var(--glass-2);color:var(--muted);cursor:pointer;font-size:1rem;line-height:1;display:flex;align-items:center;justify-content:center;z-index:2}.pv-close:hover{color:var(--ink);border-color:var(--edge-soft);background:var(--fill-hover)}.lib-preview-head{margin-bottom:16px;padding-right:40px}.pv-meta{color:var(--muted);font-size:0.88rem;margin-top:6px}#pv-map{height:450px;width:100%;background:var(--bg-1)}.pv-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:20px;padding-top:18px;border-top:1px solid var(--line)}.pv-actions-label{color:var(--muted);font-size:0.9rem;margin-right:2px}body.pv-open{overflow:hidden}.tg-modal-backdrop{position:fixed;inset:0;z-index:10000;display:flex;align-items:center;justify-content:center;padding:20px;background:rgba(3,9,7,0.8)}.tg-modal{width:100%;max-width:440px;background:var(--bg-1);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-pop);padding:24px}.tg-modal-eyebrow{color:var(--accent);font-family:var(--mono);font-weight:500;letter-spacing:0.1em;text-transform:uppercase;font-size:0.72rem}.tg-modal-title{font-family:var(--display);font-weight:700;font-size:1.2rem;margin-top:6px}.tg-modal-sub{color:var(--muted);font-size:0.9rem;margin-top:4px}.tg-modal-choices{display:flex;flex-direction:column;gap:10px;margin:18px 0 14px}.tg-modal-choice{display:flex;flex-direction:column;gap:3px;text-align:left;cursor:pointer;background:var(--glass-2);border:1px solid var(--line);border-radius:var(--r-card);padding:14px 16px;color:var(--ink);font-family:inherit;transition:border-color 0.15s,background 0.15s}.tg-modal-choice:hover{border-color:var(--edge-soft);background:var(--fill-hover)}.tg-choice-title{font-family:var(--display);font-weight:600;font-size:1rem}.tg-choice-sub{color:var(--muted);font-size:0.83rem}.tg-modal-cancel{background:transparent;color:var(--muted);border:1px solid var(--line);border-radius:var(--r-ctl);padding:8px 16px;cursor:pointer;font-family:inherit;font-weight:600;font-size:0.85rem}.tg-modal-cancel:hover{color:var(--ink);border-color:var(--muted)}.coach{margin-bottom:22px}.coach-messages{display:flex;flex-direction:column;gap:10px;margin:16px 0}.coach-msg ul{margin:4px 0;padding-left:18px}.coach-msg li{margin:2px 0}.coach-msg strong{color:var(--gold);font-weight:700}.coach-msg{max-width:85%;padding:10px 14px;border-radius:var(--r-card);font-size:0.92rem;line-height:1.5;white-space:pre-wrap}.coach-user{align-self:flex-end;background:var(--fill-selected);color:var(--ink);border-bottom-right-radius:4px}.coach-assistant{align-self:flex-start;background:rgba(25,195,177,0.08);border:1px solid rgba(25,195,177,0.28);border-left:3px solid var(--teal);color:var(--ink);border-bottom-left-radius:4px}.coach-assistant strong{color:var(--teal)}.coach-thinking{color:var(--teal);font-style:italic}.coach-suggestions{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}.coach-suggestions[hidden]{display:none}.coach-chip{background:var(--fill-idle);color:var(--ink);border:1px solid var(--edge-soft);border-radius:var(--r-ctl);padding:7px 14px;font-family:inherit;font-size:0.85rem;cursor:pointer;transition:all 0.15s}.coach-chip:hover{border-color:var(--edge);background:var(--fill-hover);color:var(--ink)}.coach-input{display:flex;gap:10px}.coach-consent{margin:8px 2px 0;font-size:.8rem;color:var(--muted);line-height:1.45}.coach-consent[hidden]{display:none}.coach-consent-change{font:inherit;font-weight:600;color:var(--accent);background:none;border:0;padding:0;cursor:pointer;text-decoration:underline;text-underline-offset:3px}.coach-consent-change:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:2px}.coach-input input{flex:1}.coach-chip:disabled{opacity:.55;pointer-events:none}.coach-suggestions.coach-locked{cursor:pointer}.coach-chip:disabled:hover{border-color:var(--edge-soft);background:var(--fill-idle);color:var(--ink)}.coach-input.coach-locked{cursor:pointer}.coach-input.coach-locked input{opacity:.55;pointer-events:none}.coach-input.coach-locked .export-btn{opacity:.55;pointer-events:none}.coach-input .export-btn{flex:0 0 auto}.coach-streaming::after{content:'';display:inline-block;width:0.5em;height:1em;margin-left:2px;vertical-align:-0.15em;background:currentColor;opacity:.55;border-radius:1px;animation:capra-caret 1s steps(2,start) infinite}@keyframes capra-caret{to{visibility:hidden}}.coach-thinking::before{content:'';display:inline-block;width:7px;height:7px;margin-right:8px;border-radius:50%;background:var(--gold);vertical-align:0.05em;animation:capra-pulse 1.2s var(--ease-snap) infinite}@keyframes capra-pulse{50%{opacity:.25}}@media (prefers-reduced-motion:reduce){.coach-streaming::after,.coach-thinking::before{animation:none}}.capra-note{margin-top:8px;padding-top:8px;border-top:1px solid var(--line);white-space:normal}.capra-note .inline-link,.capra-pop .inline-link{background:none;border:0;padding:0;font:inherit;font-size:0.85rem;font-weight:600;cursor:pointer}.capra-note .inline-link:focus-visible,.capra-pop .inline-link:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:2px}.capra-sug{display:inline-flex;align-items:center;gap:5px;margin:2px 0 2px 8px;padding:2px 8px;min-height:24px;max-width:100%;border-radius:var(--r-ctl);font:inherit;font-size:0.78rem;line-height:1.2;color:var(--ink);background:color-mix(in srgb,var(--gold) 10%,transparent);border:1px solid color-mix(in srgb,var(--gold) 45%,transparent);cursor:pointer;vertical-align:middle;text-align:left;transition:background var(--dur-ctl) var(--ease-snap),border-color var(--dur-ctl) var(--ease-snap)}.capra-sug:hover,.capra-sug[aria-expanded="true"]{background:color-mix(in srgb,var(--gold) 18%,transparent);border-color:var(--gold)}.capra-sug:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.capra-sug-by{font-family:var(--mono);font-size:0.64rem;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;color:var(--gold)}.capra-pop{position:fixed;z-index:60;padding:12px 14px;background:var(--bg-2);color:var(--ink);border:1px solid color-mix(in srgb,var(--gold) 45%,transparent);border-left:3px solid var(--gold);border-radius:var(--r-card);box-shadow:var(--shadow-pop);font-size:0.88rem;animation:capra-pop-in var(--dur-layer) var(--ease-snap)}@keyframes capra-pop-in{from{opacity:0;transform:translateY(-4px)}}.capra-pop-head{font-weight:700;line-height:1.35}.capra-pop-at{font-weight:400;color:var(--muted)}.capra-pop-why{margin:6px 0 0;color:var(--ink);line-height:1.45}.capra-pop-actions{display:flex;align-items:center;gap:12px;margin-top:10px}@media (prefers-reduced-motion:reduce){.capra-pop{animation:none}}@media (max-width:860px){.capra-sug{min-height:32px;margin-left:0}.capra-pop-actions .export-btn,.capra-pop-actions .inline-link{min-height:44px}}.foot{text-align:center;color:var(--muted);font-size:0.85rem;padding:30px 24px 50px}.foot a{color:var(--accent);text-decoration:none}.foot a:hover{text-decoration:underline}.methodology p{color:var(--muted);font-size:0.9rem;margin-top:12px}.methodology .disclaimer{color:var(--muted)}.methodology .disclaimer strong{color:var(--gold)}.split-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;min-height:280px;text-align:center;color:var(--muted);padding:20px}.split-empty-icon{font-size:2.6rem;opacity:0.7}.split-empty p{max-width:26rem}.course-view:not([hidden]) ~ .split-empty{display:none}.split-empty.has-basemap{display:block;min-height:0;padding:0;text-align:left}#base-map{height:clamp(450px,72vh,775px);width:100%;background:var(--bg-1)}#base-map[hidden]{display:none}.base-map-note{height:clamp(450px,72vh,775px);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;text-align:center;padding:24px;border:1px dashed var(--line);border-radius:var(--radius);background:var(--glass);color:var(--ink);font-size:0.95rem}.base-map-note strong{color:var(--ink);font-size:1.1rem;font-family:var(--display)}.base-map-note span{max-width:46ch}.base-map-note .bm-goat{display:block;width:49px;height:64px;margin:0 auto;filter:drop-shadow(0 2px 3px rgba(0,0,0,0.55))}.base-map-note .bm-retry{margin-top:10px;font:inherit;font-size:0.86rem;font-weight:600;color:var(--ink);background:none;border:1px solid var(--edge);border-radius:var(--r-ctl);padding:6px 14px;cursor:pointer}.base-map-note .bm-retry:hover{background:var(--fill-hover)}.bm-featured{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;margin-top:14px;width:100%;max-width:640px}.bm-card{flex:1 1 170px;max-width:210px;display:grid;gap:3px;text-align:left;text-decoration:none;border:1px solid var(--line);border-radius:var(--r-card);padding:12px 14px;background:var(--glass-2,rgba(255,255,255,0.03));transition:border-color 0.15s,background 0.15s,transform 0.15s}.bm-card:hover{border-color:var(--edge-soft);background:var(--fill-hover);transform:translateY(-1px)}.bm-card-name{font-weight:700;color:var(--ink);font-family:var(--display);font-size:0.95rem}.bm-card-meta{color:var(--muted);font-size:0.78rem}.bm-card-go{color:var(--accent);font-size:0.78rem;font-weight:600;margin-top:4px}.bm-fail{color:var(--bad);font-size:0.82rem;margin-top:6px}@media (max-width:560px){.bm-featured{flex-direction:column}.bm-card{max-width:none}}.base-map-cap{color:var(--muted);font-size:0.86rem;margin:12px 2px 0;max-width:none;display:flex;align-items:center;gap:6px 10px;flex-wrap:wrap}.base-map-cap strong{color:var(--ink)}.base-map-sub{opacity:0.8}.tg-you-goat{background:none;border:0;text-align:center;filter:drop-shadow(0 2px 3px rgba(0,0,0,0.55))}.tg-you-goat img{display:block;width:33px;height:44px}@media (min-width:861px){html:has(body.split-page){height:100%}body.split-page{height:100%}body.split-page{display:flex;flex-direction:column;height:100vh;height:100dvh;overflow:hidden}body.split-page .topbar{flex:0 0 auto}body.split-page .wrap{max-width:none;width:100%;margin:0;padding:0 clamp(16px,2vw,30px);flex:1 1 auto;min-height:0;display:flex;flex-direction:column}body.split-page .foot{display:none}body.split-page .hero{flex:0 0 auto;margin:0}body.split-page .hero h1{font-size:clamp(1.35rem,2.2vw,1.85rem)}body.split-page .hero-sub{display:none}body.split-page .app-split{flex:1 1 auto;min-height:0;display:grid;grid-template-columns:minmax(320px,400px) 1fr;gap:18px;align-items:stretch;padding-bottom:14px}body.split-page .split-left,body.split-page .split-right{min-height:0;overflow-y:auto;overscroll-behavior:contain;display:flex;flex-direction:column;gap:16px;padding-right:4px}body.split-page .split-left::-webkit-scrollbar,body.split-page .split-right::-webkit-scrollbar{width:9px}body.split-page .split-left::-webkit-scrollbar-thumb,body.split-page .split-right::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--ink) 14%,transparent);border-radius:8px}body.split-page .split-left>.panel,body.split-page .split-right>.panel{margin:0}}.fp{margin-top:6px}.fp-empty{color:var(--muted);font-size:0.9rem;line-height:1.5;margin:4px 0 0}.fp-cov-sub-head{font-family:var(--body);font-weight:400;font-size:0.78rem;color:var(--muted)}.fp-coverage{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px 26px;margin-top:12px}.fp-coverage[hidden]{display:none}.fp-cov-row{display:flex;flex-direction:column;gap:7px}.fp-cov-caf{--acc:var(--c-climb)}.fp-cov-top{display:flex;align-items:baseline;justify-content:space-between}.fp-cov-label{font-family:var(--display);font-weight:600;font-size:0.95rem;color:var(--ink)}.fp-pct{font-family:var(--mono);font-weight:700;font-size:1.02rem;color:var(--acc,var(--teal));text-shadow:0 0 12px color-mix(in srgb,var(--acc,var(--teal)) 55%,transparent)}.fp-pct.over{color:var(--ok);text-shadow:0 0 12px color-mix(in srgb,var(--ok) 55%,transparent)}.fp-cov-track{position:relative;height:16px;border-radius:999px;overflow:hidden;background:linear-gradient(180deg,rgba(0,0,0,0.45),rgba(255,255,255,0.03));border:1px solid rgba(255,255,255,0.07);box-shadow:inset 0 2px 5px rgba(0,0,0,0.55),inset 0 -1px 0 rgba(255,255,255,0.04)}.fp-cov-fill{position:relative;height:100%;border-radius:999px;min-width:6px;background:linear-gradient(180deg,color-mix(in srgb,var(--acc,var(--teal)) 58%,#fff) 0%,var(--acc,var(--teal)) 45%,color-mix(in srgb,var(--acc,var(--teal)) 70%,#000) 100%);box-shadow:0 0 14px -2px var(--acc,var(--teal)),inset 0 1px 0 rgba(255,255,255,0.6),inset 0 -3px 6px rgba(0,0,0,0.28);transition:width 0.5s cubic-bezier(.2,.8,.3,1)}.fp-cov-fill::after{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(115deg,transparent 30%,rgba(255,255,255,0.28) 48%,transparent 66%)}@media (prefers-reduced-motion:reduce){.fp-cov-fill{transition:none}}.fp-cov-sub{font-size:0.84rem;color:var(--muted)}.fp-cov-sub small{opacity:0.8}.fp-cov-info{justify-content:flex-end}.fp-cov-info .fp-cov-sub{color:var(--ink)}.fp-pack-head{display:flex;align-items:baseline;justify-content:space-between;margin:18px 0 8px}.fp-pack-head h4{font-family:var(--display);font-weight:600;font-size:0.95rem;color:var(--ink);margin:0}.fp-count{color:var(--muted);font-weight:500;font-size:0.82rem;margin-left:6px}.fp-clear{background:none;border:1px solid var(--line);color:var(--muted);border-radius:var(--r-ctl);font:inherit;font-size:0.78rem;padding:3px 11px;cursor:pointer;transition:all 0.15s}.fp-clear:hover{color:var(--ink);border-color:var(--edge-soft);background:var(--fill-hover)}.fp-pack{display:flex;flex-wrap:wrap;gap:8px;align-content:flex-start;height:84px;overflow-y:auto;padding-right:6px;scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--ink) 20%,transparent) transparent}.fp-pack::-webkit-scrollbar{width:8px}.fp-pack::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--ink) 14%,transparent);border-radius:8px}.fp-pack{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:8px;height:176px;flex-wrap:nowrap}.fp-slot{border:1px solid var(--line);border-radius:var(--r-card);padding:7px 8px 8px;background:var(--glass);min-width:0;align-self:start}.fp-slot.is-bag{border-style:dashed}.fp-slot-h{display:flex;justify-content:space-between;align-items:baseline;gap:6px;margin-bottom:6px}.fp-slot-t{font-weight:600;font-size:0.8rem;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fp-slot-s{font-size:0.72rem;color:var(--muted);white-space:nowrap}.fp-slot-pills{display:flex;flex-wrap:wrap;gap:6px}.fp-slot-pills:empty::before{content:"—";color:var(--muted);font-size:0.8rem}.fp-meter{margin:2px 0 16px}.fp-meter[hidden]{display:none}.fp-meter-head{display:flex;justify-content:space-between;align-items:baseline;gap:8px;font-size:0.72rem;color:var(--muted);margin-bottom:6px}.fp-meter-tgt{color:var(--ink);font-size:0.8rem;white-space:nowrap}.fp-meter-chart{position:relative;display:flex;align-items:flex-end;gap:2px;height:72px;padding-top:2px;border-bottom:1px solid var(--line)}.fp-meter-goal{position:absolute;left:0;right:0;top:2px;border-top:1px dashed var(--edge-soft,var(--line));pointer-events:none}.fp-meter-bar{flex:1 1 0;min-width:2px;border-radius:2px 2px 0 0;background:var(--ok)}.fp-meter-bar.warn{background:var(--warn)}.fp-meter-bar.bad{background:var(--bad)}.fp-meter-ticks{display:flex;justify-content:space-between;font-size:0.68rem;color:var(--muted);margin-top:3px}.fp-short{margin:10px 0 0;padding:8px 10px;border-radius:var(--r-ctl);font-size:0.85rem;border:1px solid color-mix(in srgb,var(--ok) 40%,transparent);color:var(--ink)}.fp-short p{margin:0}.fp-short.bad{border-color:color-mix(in srgb,var(--bad) 45%,transparent)}.fp-short.bad b{color:var(--bad)}.fp-short.ok b{color:var(--ok)}.fp-short-sub{color:var(--muted)}.fp-short-fix{margin-top:8px;min-height:36px;text-align:left}@media (max-width:860px){.fp-pack{height:220px;grid-template-columns:1fr 1fr}.fp-short-fix{min-height:44px;width:100%;justify-content:center}}@media (max-width:420px){.fp-pack{grid-template-columns:1fr}}.fp-pack-empty{grid-column:1 / -1;color:var(--muted);font-size:0.88rem;font-style:italic;padding:4px 2px}.fp-pill{display:inline-flex;align-items:center;gap:4px;padding:3px 4px 3px 4px;border:1px solid color-mix(in srgb,var(--cat,var(--teal)) 55%,transparent);background:color-mix(in srgb,var(--cat,var(--teal)) 14%,transparent);border-radius:var(--r-ctl);font-family:var(--body);font-size:0.85rem;color:var(--ink)}.fp-pill .fp-name{padding:0 2px}.fp-qty{font-family:var(--mono);font-weight:700;min-width:1.1em;text-align:center;color:var(--cat,var(--teal))}.fp-step{width:22px;height:22px;border-radius:50%;border:none;cursor:pointer;background:var(--fill-hover);color:var(--ink);font-size:1rem;line-height:1;display:inline-flex;align-items:center;justify-content:center;transition:background 0.15s}.fp-step:hover{background:color-mix(in srgb,var(--cat,var(--teal)) 35%,transparent)}.fp-rm{width:20px;height:20px;margin-left:2px;border:none;cursor:pointer;background:none;color:var(--muted);font-size:1.05rem;line-height:1;border-radius:50%;transition:all 0.15s}.fp-rm:hover{color:var(--ink);background:var(--fill-hover)}.fp-search-wrap{display:block;margin:16px 0 10px}.fp-search-wrap input{width:100%}.fp-bin{display:flex;flex-direction:column;gap:14px;max-height:360px;overflow-y:auto;padding-right:4px;overscroll-behavior:auto}.fp-bin::-webkit-scrollbar{width:8px}.fp-bin::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--ink) 14%,transparent);border-radius:8px}.fp-bin-cat{display:flex;align-items:baseline;gap:8px;margin:0 0 8px;flex-wrap:wrap;font-family:var(--mono);font-weight:700;font-size:0.78rem;letter-spacing:0.1em;text-transform:uppercase;color:var(--cat,var(--muted))}.fp-bin-cat small{text-transform:none;letter-spacing:0;font-weight:400;color:var(--muted);opacity:0.85}.fp-bin-pills{display:flex;flex-wrap:wrap;gap:8px}.fp-bin-none{color:var(--muted);font-size:0.88rem;font-style:italic}.fp-add-pill{display:inline-flex;align-items:center;gap:6px;padding:5px 12px 5px 9px;border:1px solid var(--line);border-radius:var(--r-ctl);background:var(--glass);cursor:pointer;font-family:var(--body);font-size:0.85rem;color:var(--muted);transition:all 0.15s}.fp-add-pill:hover{color:var(--ink);transform:translateY(-1px);border-color:var(--cat,var(--teal));background:color-mix(in srgb,var(--cat,var(--teal)) 12%,transparent)}.fp-add-pill:active{transform:translateY(0) scale(0.97)}.fp-add-pill.added{color:var(--ink);border-color:color-mix(in srgb,var(--cat,var(--teal)) 55%,transparent);background:color-mix(in srgb,var(--cat,var(--teal)) 10%,transparent)}.fp-add-ic{color:var(--cat,var(--teal));font-weight:700;line-height:1}.fp-add-name{color:inherit}.fp-add-macros{color:var(--muted);font-size:0.74rem;white-space:nowrap}.fp-add-macros small{opacity:0.7}.rd-weather{margin-top:18px}.rd-weather[hidden]{display:none}.rd-wx-strip{display:flex;align-items:stretch;gap:8px;margin-top:8px}.rd-wx-cells{flex:1 1 auto;display:grid;grid-template-columns:repeat(12,1fr);gap:5px;min-width:0}.rd-wx-cell{display:flex;flex-direction:column;align-items:center;gap:3px;padding:9px 2px;border-radius:var(--r-ctl);background:var(--glass);border:1px solid var(--line);min-width:0}.rd-wx-cell.rd-wx-race{border-color:rgba(255,122,26,0.6);background:rgba(255,122,26,0.08)}.rd-wx-cell.rd-wx-empty{opacity:0.4}.rd-wx-cell.rd-wx-newday{box-shadow:inset 2px 0 0 rgba(255,210,63,0.55)}.rd-wx-day{font-size:0.58rem;font-weight:700;color:var(--gold);min-height:0.85em;white-space:nowrap;line-height:1}.rd-wx-time{font-family:var(--mono);font-size:0.64rem;color:var(--muted);white-space:nowrap}.rd-wx-ico{line-height:1;color:var(--ink);display:flex;justify-content:center}.rd-wx-ico .wx-ico{width:22px;height:22px}.rd-wx-race .rd-wx-ico{color:var(--orange)}.wx-gl{width:13px;height:13px;vertical-align:-0.16em;opacity:.9}.wx-gl.aqua{color:var(--aqua)}.wx-gl.gold{color:var(--gold)}.wx-gl.orange{color:var(--orange)}.rd-wx-temp{font-family:var(--mono);font-weight:700;font-size:0.9rem}.wx-tn{color:var(--muted)}.wx-t0{color:var(--c-aid)}.wx-t1{color:var(--c-course)}.wx-t2{color:var(--c-crew)}.wx-t3{color:var(--gold)}.wx-t4{color:var(--c-fuel)}.wx-t5{color:var(--c-climb)}.rd-wx-pp{font-size:0.6rem;color:var(--teal);min-height:0.8em;white-space:nowrap}.rd-wx-arrow{flex:0 0 auto;width:34px;border-radius:var(--r-ctl);cursor:pointer;background:var(--glass-2);color:var(--ink);border:1px solid var(--line);font-size:1.2rem;line-height:1;transition:all 0.15s ease}.rd-wx-arrow:hover:not(:disabled){border-color:var(--edge-soft);background:var(--fill-hover)}.rd-wx-arrow:disabled{opacity:0.3;cursor:default}.rd-wx-status{color:var(--muted);font-size:0.8rem;margin-top:8px;min-height:1em}.rd-wx-status.warn{color:var(--warn)}.rd-wx-bar{display:flex;align-items:center;gap:12px 18px;flex-wrap:wrap;margin-bottom:12px}.rd-wx-datefield{display:inline-flex;align-items:center;gap:8px;color:var(--muted);font-size:0.86rem}.rd-wx-datefield input{background:var(--glass-2);color:var(--ink);border:1px solid var(--line);border-radius:10px;padding:7px 10px;font:inherit;color-scheme:dark}.rd-wx-datefield input:focus{outline:none;border-color:var(--accent)}.rd-wx-datefield input:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.rd-wx-summary{display:flex;flex-wrap:wrap;gap:7px 16px;align-items:center;color:var(--muted);font-size:0.86rem}.rd-wx-summary b:not([class]){color:var(--ink)}.rd-wx-sum-note{font-style:italic;opacity:0.85}.rd-wx-days{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(60px,1fr);gap:6px;overflow-x:auto;padding-bottom:6px;margin-bottom:14px;overscroll-behavior-x:contain}.rd-wx-day-chip{display:flex;flex-direction:column;align-items:center;gap:3px;padding:8px 4px;border-radius:var(--r-ctl);background:var(--glass);border:1px solid var(--line);cursor:pointer;color:var(--ink);transition:all 0.15s ease}.rd-wx-day-chip:hover{border-color:var(--edge-soft);background:var(--fill-hover)}.rd-wx-day-chip.active{border-color:var(--accent);background:var(--fill-selected)}.rd-wx-dc-day{font-size:0.7rem;font-weight:700;color:var(--muted)}.rd-wx-dc-ico{font-size:1.1rem;line-height:1}.rd-wx-dc-hl{font-family:var(--mono);font-size:0.72rem}.rd-wx-chart-head{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin:16px 0 8px}.rd-wx-chart-title{color:var(--muted);font-size:0.85rem;font-weight:600}.rd-wx-view-toggle{display:inline-flex;gap:4px;background:var(--glass-2);border:1px solid var(--line);border-radius:var(--r-ctl);padding:3px}.rd-wx-view-toggle button{background:transparent;color:var(--muted);border:none;cursor:pointer;border-radius:var(--r-ctl);padding:5px 13px;font-family:var(--body);font-weight:600;font-size:0.78rem}.rd-wx-view-toggle button.active{background:var(--fill-selected);color:var(--accent)}.rd-wx-chart-wrap{position:relative;height:210px}.rd-wx-place{color:var(--ink);font-weight:600}.rd-wx-strip[hidden],.rd-wx-chart-wrap[hidden]{display:none}#rd-weather-card .rd-wx-cells{grid-template-columns:repeat(12,minmax(72px,1fr));overflow-x:auto;overscroll-behavior-x:contain}.rd-wx-feels{font-size:0.6rem;color:var(--muted);min-height:0.8em;white-space:nowrap}.rd-wx-wind{font-size:0.6rem;color:var(--muted);white-space:nowrap}.rd-wx-cell.rd-wx-night{background:rgba(60,80,140,0.16)}.rd-wx-none{color:var(--muted);font-style:italic;padding:8px 2px}@media (max-width:560px){.rd-wx-cells{grid-template-columns:repeat(12,minmax(46px,1fr));overflow-x:auto}}.rd-section{padding-top:14px;padding-bottom:14px}.rd-section:not([open])>:not(summary){display:none!important}.rd-section.panel{border:1px solid color-mix(in srgb,var(--acc,var(--line)) 55%,var(--line));box-shadow:none}.rd-section>summary{list-style:none;cursor:pointer;user-select:none;display:flex;align-items:center;gap:9px;font-family:var(--mono);font-weight:700;font-size:1.02rem;color:var(--ink);text-transform:uppercase;letter-spacing:0.02em;margin:-14px -24px;padding:13px 24px;background:linear-gradient(100deg,color-mix(in srgb,var(--acc,var(--muted)) 26%,transparent),transparent 92%);border-radius:calc(var(--radius) - 1px)}.rd-section>summary::-webkit-details-marker{display:none}.rd-sec-h{margin:0;font:inherit;letter-spacing:inherit;text-transform:inherit;color:inherit}.rd-sec-ico{flex:0 0 auto;width:26px;height:26px;border-radius:8px;display:grid;place-items:center;font-size:0.95rem;background:var(--acc,var(--muted));box-shadow:inset 0 1px 0 rgba(255,255,255,0.28),0 2px 5px rgba(0,0,0,0.35)}.rd-sec-ico .ico{width:15px;height:15px;color:#081410}.rd-section>summary::after{content:'⌄';margin-left:auto;color:var(--acc,var(--muted));font-size:1.1rem;line-height:1;transition:transform 0.18s ease}#coach-panel{--acc:var(--gold);position:relative}.rd-section[open]>summary::after{transform:rotate(180deg)}.rd-section>summary .rd-sec-sub{font-family:var(--body);font-weight:400;font-size:0.78rem;color:var(--muted);text-transform:none;letter-spacing:normal}.rd-section:not([open])>summary{margin-bottom:-14px}.rd-section[open]>summary{margin-bottom:14px;border-bottom:1px solid var(--line);border-radius:calc(var(--radius) - 1px) calc(var(--radius) - 1px) 0 0}.rd-form{display:contents}.rd-section .field-block + .field-block{margin-top:14px}.rd-section .effort-col>* + *{margin-top:14px}.rd-note{color:var(--muted);font-size:0.84rem;margin:0 0 12px}.rd-note:last-child{margin-bottom:0}.course-card-actions{margin-top:12px;display:flex;flex-wrap:wrap;gap:8px}#download-gpx{display:none}body.has-course #download-gpx{display:inline-flex}@media (max-width:860px){input[type],input:not([type]),select,textarea{font-size:max(1rem,16px)}.map-3d-btn,.map-expand-btn,.map-play-btn,.map-locate-btn{width:42px;height:42px}.map-locate-btn svg{width:20px;height:20px}.map-speed-btn{min-width:42px;height:42px}.fp-pill{padding:5px 6px}.fp-step{width:34px;height:34px}.fp-rm{width:30px;height:30px}.fp-add-pill{min-height:44px;padding:8px 14px 8px 11px}.fp-clear{min-height:36px;padding:5px 14px}.aid-actions{gap:0;margin-left:4px}.aid-rm,.aid-edit{min-width:42px;min-height:42px;display:inline-flex;align-items:center;justify-content:center}}@media (max-width:600px){.course-stats{display:grid;grid-template-columns:1fr 1fr}.course-stats .cs-dist{grid-column:1 / -1}#pace-table thead,#climbs-table thead,#plan-summary .plan-table thead,#raceplan-table thead,#aid-table thead,#lib-aid-table thead{display:none}#pace-table,#climbs-table,#plan-summary .plan-table,#raceplan-table,#aid-table,#lib-aid-table{display:block}#pace-table tbody,#climbs-table tbody,#plan-summary .plan-table tbody,#raceplan-table tbody,#aid-table tbody,#lib-aid-table tbody{display:block}#pace-table tr,#climbs-table tr,#plan-summary .plan-table tr,#raceplan-table tr,#aid-table tr,#lib-aid-table tr{display:flex;flex-wrap:wrap;align-items:baseline;column-gap:14px;row-gap:3px;padding:11px 4px;border-bottom:1px solid var(--line)}#pace-table td,#climbs-table td,#plan-summary .plan-table td,#raceplan-table td,#aid-table td,#lib-aid-table td{display:block;padding:0;border:0;text-align:left}#pace-table tr::before{content:"";flex:1 1 100%;order:3}#pace-table td:nth-child(1){flex:1 1 auto;order:1;font-weight:600}#pace-table td:nth-child(4){order:2}#pace-table td:nth-child(2){order:4;font-size:0.82rem}#pace-table td:nth-child(3){order:5;font-size:0.82rem}#pace-table td:nth-child(5){order:6;margin-left:auto;font-size:0.82rem;color:var(--muted)}#pace-table td:nth-child(5)::before{content:"elapsed "}#climbs-table tr::before{content:"";flex:1 1 100%;order:3}#climbs-table td:nth-child(1){flex:1 1 auto;order:1;font-weight:600}#climbs-table td:nth-child(4){order:2}#climbs-table td:nth-child(2){order:4;font-size:0.82rem;color:var(--muted)}#climbs-table td:nth-child(3){order:5;font-size:0.82rem;color:var(--muted)}#climbs-table td:nth-child(5){order:6;margin-left:auto;font-size:0.82rem}#plan-summary .plan-table tr::before{content:"";flex:1 1 100%;order:4}#plan-summary .plan-table td:nth-child(1){flex:1 1 auto;order:1;font-weight:600}#plan-summary .plan-table td:nth-child(4){order:2}#plan-summary .plan-table td:nth-child(5){order:3}#plan-summary .plan-table td:nth-child(2){order:5;font-size:0.82rem;color:var(--muted)}#plan-summary .plan-table td:nth-child(3){order:6;margin-left:auto;font-size:0.82rem;color:var(--muted)}#plan-summary .plan-table td:nth-child(3)::before{content:"arrive "}#raceplan-table tr{row-gap:0}#raceplan-table tr::before{content:"";flex:1 1 100%;order:5}#raceplan-table tr::after{content:"";flex:1 1 100%;order:7}#raceplan-table td:nth-child(2),#raceplan-table .aid-eta,#raceplan-table td:nth-child(4),#raceplan-table .aid-cutoff,#raceplan-table .aid-dwell,#raceplan-table td:nth-child(5),#raceplan-table td:nth-child(6){margin-top:6px}#raceplan-table td:nth-child(1){flex:1 1 100%;order:1;display:flex;flex-wrap:wrap;align-items:center;column-gap:6px;row-gap:6px;font-weight:600}#raceplan-table td:nth-child(1) .aid-nm{flex:1 1 0;min-width:0}#raceplan-table td:nth-child(1) .aid-bag{margin-left:0}#raceplan-table td:nth-child(1) .aid-actions{flex:0 0 auto;margin-left:auto}#raceplan-table .aid-edit,#raceplan-table .aid-rm{display:none}#raceplan-table td:nth-child(1) .aid-crewline{flex:1 1 100%;order:9;display:flex;flex-wrap:wrap;align-items:center;column-gap:6px;row-gap:6px}#raceplan-table .aid-crewline .aid-crew,#raceplan-table .aid-crewline .crew-io{margin-left:0}#raceplan-table td:nth-child(2){order:2;font-size:0.82rem;color:var(--muted)}#raceplan-table td:nth-child(3){display:contents}#raceplan-table .aid-eta{order:3;font-size:0.82rem;color:var(--muted)}#raceplan-table .aid-eta::before{content:"arrive "}#raceplan-table td:nth-child(4){order:4;font-size:0.82rem;color:var(--muted)}#raceplan-table .aid-cutoff{order:6;margin-top:0}#raceplan-table .aid-cutoff.cut-warn{max-width:100%}#raceplan-table .aid-dwell{order:7;margin-top:0}#raceplan-table td:nth-child(5){order:8}#raceplan-table td:nth-child(6){order:9}#raceplan-table td.plan-none{display:none}#raceplan-table tr.leg-paced{box-shadow:inset 3px 0 0 var(--pc,var(--teal));padding-left:10px}#raceplan-table tr.leg-paced td:first-child{box-shadow:none}#aid-table td:nth-child(1){flex:1 1 100%;order:1;display:flex;align-items:center}#aid-table td:nth-child(1) .aid-actions{margin-left:auto}#aid-table td:nth-child(2){order:2;font-size:0.85rem;color:var(--muted)}#aid-table td:nth-child(3){order:3;margin-left:auto;font-size:0.85rem;color:var(--muted)}#aid-table td:nth-child(3)::before{content:"elapsed "}#lib-aid-table td:nth-child(1){flex:1 1 auto;order:1;display:flex;align-items:center}#lib-aid-table td:nth-child(3){order:2;margin-left:auto}#lib-aid-table td:nth-child(2){order:3;flex:1 1 100%;font-size:0.85rem;color:var(--muted)}}@media (max-width:560px){.hero{margin:10px 0 16px}.hero h1{font-size:1.5rem;line-height:1.15}.eyebrow{font-size:0.72rem;margin-bottom:6px}.hero-sub{display:none}.hero-cta{margin-top:12px}.panel{padding:18px}.rd-section{padding-top:14px;padding-bottom:14px}.rd-section>summary{margin:-14px -18px;padding:13px 18px}.rd-section:not([open])>summary{margin-bottom:-14px}.rd-section[open]>summary{margin-bottom:14px}.rd-section>summary{flex-wrap:wrap;row-gap:2px}.rd-section>summary .rd-sec-sub{flex:1 1 100%;order:10;margin-left:35px}}.fp-bin-group>summary::-webkit-details-marker{display:none}.fp-bin-cat{list-style:none;cursor:pointer;user-select:none}.fp-bin-cat::after{content:'⌄';margin-left:auto;color:var(--muted);font-size:1rem;line-height:1;transition:transform 0.18s ease}.fp-bin-group[open]>.fp-bin-cat::after{transform:rotate(180deg)}.fp-bin-count{font-size:0.7rem;font-weight:600;color:var(--muted);background:var(--glass-2);border:1px solid var(--line);border-radius:var(--r-ctl);padding:1px 8px;margin-left:2px}@media (max-width:860px){.fp-bin{max-height:none;overflow:visible;padding-right:0}.fp-bin-cat{align-items:center;min-height:44px}}.merged-away{display:none!important}@media (max-width:860px){body.split-page .app-split,body.split-page .split-left,body.split-page .split-right{display:flex;flex-direction:column;gap:14px}body.split-page .split-left>.panel,body.split-page .split-right>.panel{margin:0}.rd-merged{margin-top:18px;padding-top:16px;border-top:1px solid var(--line)}.rd-merged .rd-section.panel{border:none;box-shadow:none;background:transparent;padding:0;border-radius:0}.rd-merged .rd-section>summary{margin:0;padding:2px 0 10px;background:none;border-radius:0}.rd-merged .rd-section:not([open])>summary{margin-bottom:0}.rd-merged .rd-section[open]>summary{margin-bottom:8px;border-bottom:none}}.tg-elev-expand{margin-left:auto}.elev-canvas-wrap.elev-expanded{position:fixed;inset:0;z-index:9999;height:auto;max-height:none;background:var(--bg-1,#0a1a1c);padding:58px 16px 22px}body.elev-modal-open{overflow:hidden}.tg-elev-close{position:absolute;top:10px;right:10px;z-index:2;width:44px;height:44px;border-radius:50%;background:var(--glass-2);color:var(--ink);border:1px solid var(--line);font-size:1.1rem;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center}.tg-elev-close:hover{border-color:var(--edge-soft);background:var(--fill-hover)}.tg-elev-hint{position:absolute;top:22px;left:16px;right:70px;color:var(--muted);font-size:0.82rem;display:none}@media (orientation:portrait) and (max-width:860px){.elev-canvas-wrap.elev-expanded .tg-elev-hint{display:block}}.tg-map-toast{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:900;pointer-events:none;background:rgba(4,12,10,0.82);color:var(--ink);border:1px solid var(--line);border-radius:var(--r-ctl);padding:10px 18px;font-size:0.88rem;font-weight:600;white-space:nowrap;opacity:0;transition:opacity 0.25s ease}.tg-map-toast.show{opacity:1}.tg-mile-wrap{background:none;border:0}.tg-mile{display:flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;background:rgba(7,18,15,0.88);color:var(--gold);border:1.5px solid var(--gold);font-family:var(--mono);font-weight:700;font-size:0.62rem}@media (pointer:coarse){.tg-mile{width:24px;height:24px;font-size:0.66rem}}.tg-inspect .leaflet-popup-content-wrapper{background:rgba(7,18,15,0.94);color:var(--ink);border:1px solid var(--line);border-radius:var(--r-card);box-shadow:var(--shadow-pop)}.tg-inspect .leaflet-popup-content{margin:9px 14px;font:600 0.88rem/1.45 var(--body)}.tg-inspect .leaflet-popup-content b{color:var(--gold)}.tg-inspect .leaflet-popup-tip{background:rgba(7,18,15,0.94);border:1px solid var(--line)}.leaflet-control-scale-line{background:rgba(7,18,15,0.75);color:var(--muted);border-color:var(--line);font-size:0.66rem}@media (hover:hover){details.rd-section{transition:border-color 0.18s ease,box-shadow 0.18s ease}.export-btn,.estimate-btn,.rd-plan-btn,.fp-clear,.course-clear,.lib-manage,.lib-create-route{transition:transform 0.15s ease,box-shadow 0.15s ease,border-color 0.15s ease,background 0.15s ease,color 0.15s ease}.lib-create-route:hover{transform:translateY(-1px)}.export-btn.tonal:hover,.estimate-btn:hover,.lib-create-route:hover{box-shadow:var(--raise-2)}.export-btn:hover,.rd-plan-btn:hover{transform:translateY(-1px)}}@media (prefers-reduced-motion:reduce){.export-btn:hover,.estimate-btn:hover,.rd-plan-btn:hover,.lib-create-route:hover{transform:none}}:where(a,button,summary,[role="button"],.fp-pill):focus-visible{outline:2px solid var(--accent);outline-offset:2px}.plan-table td,.plan-table th,.cmp-table td,.cmp-table th,.cs-val,.metric-num,.kit-num,.fp-cov-sub,.fp-pill,.fp-pct,.fp-qty,.rd-wx-cell,.rd-wx-day-chip,.summary-text,.carry-dist,.carry-load,.lib-item-meta,.estimate-out{font-variant-numeric:tabular-nums}.aid-marker{transition:transform 0.15s ease,box-shadow 0.15s ease}.aid-marker-wrap{z-index:600}.aid-marker-wrap.aid-hover{z-index:900!important}.aid-marker-wrap.aid-hover .aid-marker{transform:scale(1.45);box-shadow:0 0 0 4px color-mix(in srgb,var(--ink) 25%,transparent),0 0 18px 2px color-mix(in srgb,var(--ink) 35%,transparent)}@media (hover:hover){.plan-table tbody tr{cursor:default}}.plan-table tbody tr.row-flash{animation:tg-row-flash 1.6s ease}@keyframes tg-row-flash{0%,60%{background:rgba(255,210,63,0.18)}100%{background:transparent}}@media (prefers-reduced-motion:reduce){.aid-marker{transition:none}.plan-table tbody tr.row-flash{animation:none;background:rgba(255,210,63,0.14)}}.backdrop::after{content:"";position:absolute;inset:0;pointer-events:none;opacity:0.025;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(/%23n)'/%3E%3C/svg%3E")}@view-transition{navigation:auto}::view-transition-old(root),::view-transition-new(root){animation-duration:0.18s}@media (prefers-reduced-motion:reduce){@view-transition{navigation:none}}.mini-map-wrap{display:none;margin-top:4px}.rd-start{display:contents}.rd-start-row{display:flex;flex-direction:column;gap:6px}.rd-start-hint{color:var(--muted);font-size:0.82rem;line-height:1.45;margin:0}.rd-start-row>.creator-note{margin:0}.rd-start-wiz #rd-start-wizard{width:100%}body.has-course .rd-start{display:none}.rd-rail-course{display:none}body.has-course .rd-rail-setup{display:none}body.has-course .rd-rail-course{display:flex}.tg-browse-btn{background:none;border:none;padding:0;font:inherit;cursor:pointer}@media (min-width:861px){body.has-course .mini-map-wrap{display:block}#mini-map{height:clamp(200px,28vh,360px)}}.map-wrap.map-expanded #mini-map{height:100vh;height:100dvh}.aid-marker-wrap.aid-mini{display:flex;align-items:center;justify-content:center}.aid-mini .aid-marker{width:11px;height:11px;font-size:0;border-width:1.5px;transition:width 0.15s ease,height 0.15s ease,font-size 0.1s ease 0.05s,transform 0.15s ease,box-shadow 0.15s ease}.aid-mini.aid-hover .aid-marker{width:26px;height:26px;font-size:0.92rem;transform:scale(1.1)}@media (prefers-reduced-motion:reduce){.aid-mini .aid-marker{transition:none}}@media (min-width:861px){body.split-page .split-left>#rd-course[open]{flex:1 1 auto;min-height:0;display:flex;flex-direction:column}body.split-page .split-left>#rd-course[open]::details-content{display:flex;flex-direction:column;flex:1 1 auto;min-height:0}body.has-course .mini-elev-wrap{display:block}body.split-page:not(.has-course) .split-left #rd-course .dropzone{flex:1 1 auto}}.mini-elev-wrap{display:none;margin-top:10px}.mini-elev-wrap[hidden]{display:none}.mini-elev-wrap .elev-canvas-wrap{height:140px}.pace-goal-row{display:flex;flex-wrap:wrap;gap:12px 28px;align-items:flex-end;margin:2px 0 10px}.pace-goal-row .field-block{margin:0}@media (min-width:861px){body.split-page .app-split{transition:grid-template-columns 0.2s ease,gap 0.2s ease}html.rd-rail-closed body.split-page .app-split{grid-template-columns:minmax(0px,0px) 1fr;gap:0}body.split-page .split-left{min-width:0;overflow-x:hidden;transition:opacity 0.2s ease,transform 0.2s ease,padding-right 0.2s ease,border-color 0.2s ease,visibility 0s linear 0s}html.rd-rail-closed body.split-page .split-left{opacity:0;transform:translateX(-24px);visibility:hidden;pointer-events:none;padding-right:0;border-right-color:transparent;transition-delay:0s,0s,0s,0s,0.2s}}@media (prefers-reduced-motion:reduce){body.split-page .app-split,body.split-page .split-left{transition:none}}#wx-conditions .effort-col{flex-direction:row;flex-wrap:wrap;align-items:flex-end;gap:12px 22px}#wx-conditions .effort-col>* + *{margin-top:0}#wx-conditions .field-block{display:flex;flex-direction:column;gap:6px;margin:0}#wx-conditions .weather-row{flex-wrap:nowrap;gap:8px}#wx-conditions .weather-row input{flex:0 1 auto;width:205px;padding:8px 10px}#wx-conditions .estimate-btn{padding:8px 12px;font-size:0.84rem}#wx-conditions .field-grid{display:flex;gap:12px}#wx-conditions .field-grid .field{gap:6px}#wx-conditions .field-grid .field input{width:88px;padding:8px 10px}#wx-conditions .segmented button{flex:0 0 auto;padding:7px 14px;font-size:0.8rem}#wx-conditions .weather-out{margin:0;min-height:0}#wx-conditions .weather-out:empty{display:none}.aid-ico{width:13px;height:13px;vertical-align:-0.1em}.tg-upg-opts{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:14px 0 4px}.tg-upg-opt{display:flex;flex-direction:column;gap:4px;align-items:flex-start;text-align:left;padding:14px;background:transparent;color:var(--ink);font:inherit;cursor:pointer;border:1px solid var(--line);border-radius:var(--r-card);transition:border-color .15s,box-shadow .15s}.tg-upg-opt:hover{border-color:var(--edge);background:var(--fill-hover)}.tg-upg-opt b{font-family:var(--mono);letter-spacing:.02em}.tg-upg-price{color:var(--accent);font-weight:700;font-size:1.15rem}.tg-upg-opt small{color:var(--muted);line-height:1.4}.tg-upg-note{color:var(--muted);font-size:.84rem;margin:10px 2px 0}.tg-upg-note a{color:var(--accent)}@media (max-width:520px){.tg-upg-opts{grid-template-columns:1fr}}#raceplan-table .aid-grip{display:inline-flex;align-items:center;justify-content:center;vertical-align:middle;width:20px;height:28px;margin:0 4px 0 -4px;border-radius:var(--r-ctl);color:var(--muted);cursor:grab;touch-action:none;opacity:0.55;transition:opacity var(--dur-ctl) var(--ease-snap),background var(--dur-ctl) var(--ease-snap)}#raceplan-table .aid-grip svg{width:16px;height:16px;fill:currentColor}#raceplan-table tr:hover .aid-grip,#raceplan-table .aid-grip:focus-visible{opacity:1}#raceplan-table .aid-grip:hover{background:var(--fill-hover);color:var(--ink)}#raceplan-table .aid-grip:focus-visible,#raceplan-table .aid-nm[role="button"]:focus-visible,#raceplan-table .aid-mi:focus-visible,#raceplan-table .aid-type:focus-visible{outline:2px solid var(--accent);outline-offset:2px}#raceplan-table .aid-nm[role="button"],#raceplan-table .aid-mi{cursor:text;border-radius:4px}#raceplan-table .aid-nm[role="button"]:hover,#raceplan-table .aid-mi:hover{background:var(--fill-hover);box-shadow:0 0 0 3px var(--fill-hover)}#raceplan-table .aid-inline{font:inherit;color:var(--ink);background:var(--bg-well);border:1px solid var(--accent);border-radius:var(--r-ctl);padding:3px 7px;min-height:32px;width:min(220px,100%)}#raceplan-table .aid-inline-mile{width:7ch;font-family:var(--mono);font-variant-numeric:tabular-nums}#raceplan-table .aid-inline:focus-visible{outline:2px solid var(--accent);outline-offset:1px}#raceplan-table tr.aid-dragging{opacity:0.55}body.aid-drag-on{user-select:none;-webkit-user-select:none;cursor:grabbing}#raceplan-table tr.aid-drop-before td{box-shadow:inset 0 2px 0 var(--accent)}#raceplan-table tr.aid-drop-after td{box-shadow:inset 0 -2px 0 var(--accent)}#raceplan-table .aid-types{display:inline-flex;flex-wrap:wrap;gap:3px;margin-left:8px;vertical-align:middle}#raceplan-table .aid-type{min-height:22px;padding:0 7px;border-radius:var(--r-ctl);border:1px dashed var(--line);background:none;color:var(--muted);cursor:pointer;font:600 0.68rem/1 var(--body);letter-spacing:0.02em;transition:background var(--dur-ctl) var(--ease-snap),color var(--dur-ctl) var(--ease-snap),border-color var(--dur-ctl) var(--ease-snap)}#raceplan-table .aid-type::before{content:attr(data-t)}#raceplan-table .aid-type:hover{color:var(--ink);border-color:var(--edge-soft)}#raceplan-table .aid-type.on{border-style:solid;border-color:color-mix(in srgb,var(--accent) 45%,transparent);color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,transparent)}@media (hover:hover){#raceplan-table .aid-type:not(.on){display:none}#raceplan-table tr:hover .aid-type,#raceplan-table tr:focus-within .aid-type,#raceplan-table tr.aid-editing .aid-type{display:inline-block}}.aid-paste-link{margin:10px 0 0;font-size:0.85rem;color:var(--muted)}.aid-paste-link a{color:var(--accent)}@media (max-width:600px){#raceplan-table td:nth-child(1) .aid-types{flex:1 1 100%;order:10;margin:6px 0 0}#raceplan-table .aid-type{min-height:44px;min-width:44px;padding:0 10px}#raceplan-table .aid-grip{width:32px;height:44px;opacity:0.8}}@media (prefers-reduced-motion:reduce){#raceplan-table .aid-grip,#raceplan-table .aid-type{transition:none}}.plan-email-form{display:grid;gap:8px}.plan-email-form label{font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.plan-email-form input[type="email"]{width:100%;box-sizing:border-box;padding:10px 12px;border:1px solid var(--line);border-radius:8px;background:var(--bg-well);color:var(--ink);font:inherit}.plan-email-form input[type="email"]:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.plan-email-note{margin:0;font-size:13px;color:var(--muted);line-height:1.4}.plan-email-err{margin:0;font-size:13px;color:var(--c-climb,#f7768e)}
/* /raceday.css */
.rd-rail{display:flex;flex-direction:column;gap:14px;min-height:0;flex:1 1 auto}.rd-rail-head{display:flex;align-items:center;gap:10px}.rd-rail-titles{flex:1 1 auto;display:flex;flex-direction:column;line-height:1.25;font-family:var(--display);font-weight:700;font-size:1.02rem;color:var(--ink)}.rd-rail-sub{font-family:var(--body);font-weight:400;font-size:0.8rem;color:var(--muted)}@media (min-width:861px){body.split-page .split-left{border-right:1px solid var(--line);padding-right:18px}body.split-page .split-left{grid-column:1;grid-row:1}body.split-page .split-right{grid-column:2;grid-row:1}.rd-fade{grid-column:2;grid-row:1;justify-self:stretch;height:38px;margin-right:14px;pointer-events:none;z-index:6;opacity:1;transition:opacity 0.25s ease}.rd-fade-top{align-self:start;background:linear-gradient(to bottom,rgba(7,18,15,0.85),transparent)}.rd-fade-btm{align-self:end;background:linear-gradient(to top,rgba(7,18,15,0.9),transparent)}.app-split.rd-at-top .rd-fade-top{opacity:0}.app-split.rd-at-end .rd-fade-btm{opacity:0}}@media (max-width:860px){.rd-fade{display:none}}.rd-rail-x,.rd-rail-tab{display:none}@media (min-width:861px){body.split-page .split-left{padding-top:12px}body.has-course .rd-rail-x{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:30px;height:30px;border-radius:50%;cursor:pointer;padding:0;background:var(--glass-2);color:var(--muted);border:1px solid var(--line)}.rd-rail-x:hover{color:var(--ink);border-color:var(--edge-soft);background:var(--fill-hover)}.rd-rail-x .ico{width:15px;height:15px}body.has-course .rd-rail-tab{display:inline-flex;flex-direction:column;align-items:center;gap:4px;grid-column:2;grid-row:1;align-self:center;justify-self:start;z-index:8;margin-left:-9px;padding:10px 5px;cursor:pointer;background:var(--bg-1,#0c1714);color:var(--muted);border:1px solid var(--line);border-radius:var(--r-ctl);box-shadow:0 2px 8px rgba(0,0,0,0.35);transition:color 0.15s ease,border-color 0.15s ease,background 0.15s ease}.rd-rail-tab:hover{color:var(--ink);border-color:var(--edge-soft);background:var(--fill-hover)}.rd-rail-tab .ico{width:15px;height:15px}.rd-rail-tab .ico-chev{transition:transform 0.2s ease}html:not(.rd-rail-closed) .rd-rail-tab .ico-chev{transform:rotate(180deg)}}.course-card-actions{display:flex;gap:8px;align-items:stretch}.rd-rail .course-card-actions>button,.rd-plan-actions>button{flex:1 1 0;min-width:0;margin:0;display:inline-flex;align-items:center;justify-content:center;gap:6px;font:600 0.82rem/1.1 var(--body);letter-spacing:0.01em;color:var(--ink);background:var(--glass);border:1px solid var(--line);border-radius:10px;padding:10px 8px;box-shadow:var(--raise-1);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-shadow:none;cursor:pointer;transition:border-color 0.15s ease,color 0.15s ease}.rd-rail .course-card-actions>button:hover,.rd-plan-actions>button:hover{transform:none;box-shadow:var(--raise-1)}.rd-rail .course-card-actions>button[hidden],.rd-plan-actions>button[hidden]{display:none}.rd-rail .course-card-actions>button .ico,.rd-plan-actions>button .ico{width:14px;height:14px;flex:none}.rd-rail .course-card-actions>#share-course:hover{border-color:var(--edge-soft);background:var(--fill-hover)}.rd-rail .course-card-actions>#share-course.copied{border-color:var(--ok);color:var(--ok)}.rd-rail .course-card-actions>#share-course.copy-fail{border-color:var(--bad);color:var(--bad)}.rd-rail .course-card-actions>#course-clear:hover{border-color:var(--edge-soft);background:var(--fill-hover)}.rd-plan-actions>.tg-plan-save{background:color-mix(in srgb,var(--bg-1) 86%,transparent);border-color:var(--edge);color:var(--ink);font-weight:700}.rd-plan-actions>.tg-plan-save:hover{border-color:var(--ink);color:var(--ink)}.rd-plan-actions>#print-plan{background:color-mix(in srgb,var(--bg-1) 86%,transparent);border:1px solid var(--line);color:var(--ink);font-weight:600}.rd-plan-actions>#print-plan:hover{border-color:color-mix(in srgb,var(--ink) 45%,transparent);color:var(--ink);filter:none}.rd-plan-actions>button{flex:0 0 auto;gap:5px;padding:6px 13px;border-radius:var(--r-ctl);font-size:0.72rem;letter-spacing:0.015em;background:color-mix(in srgb,var(--bg-1) 94%,transparent);box-shadow:var(--shadow-pop)}.rd-plan-actions>button .ico{width:12px;height:12px}.rd-plan-actions{display:none;gap:8px;align-items:center;justify-content:center;position:relative}body.rd-armed .rd-plan-actions{display:flex}@media (max-width:860px){.rd-plan-actions{flex-wrap:wrap;row-gap:8px}}@media (min-width:861px){body.split-page .rd-plan-actions{position:sticky;bottom:0;z-index:7;margin-right:14px;padding:4px 0 12px;pointer-events:none;transition:opacity 0.28s ease,transform 0.28s ease}body.split-page .rd-plan-actions>button{pointer-events:auto}body.split-page .rd-plan-actions .share-send,body.split-page .rd-plan-actions .wf-pick{pointer-events:auto}body.split-page .rd-plan-actions.rd-actions-hidden{opacity:0;transform:translateY(10px);pointer-events:none}body.split-page .rd-plan-actions.rd-actions-hidden>button{pointer-events:none}body.split-page.rd-armed .split-right{scroll-padding-bottom:calc(var(--rd-actions-h,48px) + 8px)}}@media (prefers-reduced-motion:reduce){body.split-page .rd-plan-actions.rd-actions-hidden{transform:none}}.rd-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;margin:0}#kit-panel h3.panel-title,#bin-panel h3.panel-title{margin-block:0.83em}#print-plan{display:none}body.rd-armed #print-plan{display:inline-flex}@keyframes rd-flash-pulse{0%,100%{box-shadow:0 0 0 0 transparent}35%{box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 60%,transparent)}}.rd-flash{animation:rd-flash-pulse 1.1s ease 2}@media (prefers-reduced-motion:reduce){.rd-flash{animation:none}}.fueling-plan .fuel-cards,.fueling-plan #plan-summary{display:none}body.rd-armed .fueling-plan .fuel-cards{display:grid}body.rd-armed .fueling-plan #plan-summary:not([hidden]){display:block}body.rd-armed #fuel-empty{display:none}.rd-plan-btn{background:var(--fill-idle);color:var(--ink);border:1px solid var(--edge);border-radius:var(--r-ctl);padding:12px 24px;font-family:var(--body);font-weight:800;font-size:1rem;cursor:pointer;transition:transform 0.14s ease,background 0.14s ease,border-color 0.14s ease}.rd-plan-btn:hover{transform:translateY(-1px);background:var(--fill-hover)}.rd-plan-btn.rd-plan-sm{padding:9px 18px;font-size:0.9rem}.hero-cta{margin-top:16px;display:flex;gap:12px;align-items:center;flex-wrap:wrap}@media (min-width:861px){body.split-page .hero-cta{margin-top:10px}}.rd-wiz-dlg .tg-dlg-body{display:flex;flex-direction:column;padding:0;overflow:hidden}.rd-wiz{display:flex;flex-direction:column;flex:1 1 auto;min-height:0}.rd-wiz[hidden]{display:none}.rd-wiz-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:18px 8px 0 24px;flex:0 0 auto}.rd-wiz-x{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;margin-top:-6px;padding:0;cursor:pointer;background:none;border:0;border-radius:var(--r-ctl);color:var(--muted);transition:background var(--dur-ctl) var(--ease-snap)}.rd-wiz-x .ico{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}.rd-wiz-x:hover{color:var(--ink);background:var(--fill-hover)}.rd-wiz-count{color:var(--muted);letter-spacing:0.04em;text-transform:none;font-weight:500}.rd-wiz-steps{list-style:none;margin:14px 24px 0;padding:0 0 10px;position:relative;flex:0 0 auto;display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.rd-wiz-steps::before,.rd-wiz-steps::after{content:"";position:absolute;left:0;bottom:0;height:3px;border-radius:999px}.rd-wiz-steps::before{right:0;background:var(--line)}.rd-wiz-steps::after{width:calc(12.5% + 75% * var(--wiz-progress,0));background:var(--accent);transition:width var(--dur-layer) var(--ease-snap)}.rd-wiz-step{display:flex;align-items:center;gap:7px;width:100%;min-height:44px;padding:4px 6px;background:transparent;border:1px solid transparent;border-radius:var(--r-ctl);color:var(--muted);font-family:var(--body);font-size:0.84rem;font-weight:600;cursor:pointer;text-align:left;transition:color var(--dur-ctl) var(--ease-snap),background var(--dur-ctl) var(--ease-snap)}.rd-wiz-step:hover{color:var(--ink);background:var(--fill-hover)}.rd-wiz-step:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.rd-wiz-step-n{flex:0 0 auto;width:20px;height:20px;border-radius:50%;display:inline-grid;place-items:center;font-size:0.72rem;font-weight:700;background:var(--fill-selected,var(--glass-2));color:var(--muted)}.rd-wiz-step-n svg{width:12px;height:12px;fill:none;stroke:currentColor;stroke-width:3}.rd-wiz-step.is-done{color:var(--ink)}.rd-wiz-step.is-done .rd-wiz-step-n{background:var(--accent);color:var(--accent-ink,var(--bg-0))}.rd-wiz-step.is-here{color:var(--accent)}.rd-wiz-step.is-here .rd-wiz-step-n{background:var(--accent);color:var(--accent-ink,var(--bg-0))}.rd-wiz-step-l{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (max-width:480px){.rd-wiz-steps{grid-template-columns:auto auto auto auto;justify-content:space-between}.rd-wiz-step:not(.is-here) .rd-wiz-step-l{display:none}.rd-wiz-step{min-width:44px;justify-content:center}}.rd-step-title:focus{outline:none}.rd-step-title:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}.rd-wiz-goal-hint{color:var(--muted);font-size:0.88rem;margin:10px 0 0}.rd-wiz-picks{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.rd-wiz-picks[hidden]{display:none}.rd-wiz-pick{min-height:44px;padding:6px 12px;border-radius:var(--r-ctl);cursor:pointer;background:var(--fill-idle,transparent);color:var(--ink);border:1px solid var(--edge-soft,var(--line));font-family:var(--body);font-size:0.85rem;font-weight:600;transition:border-color var(--dur-ctl) var(--ease-snap),background var(--dur-ctl) var(--ease-snap)}.rd-wiz-pick .data{color:var(--muted);font-weight:500;margin-left:4px}.rd-wiz-pick:hover{border-color:var(--edge,var(--edge-soft));background:var(--fill-hover)}.rd-wiz-pick[aria-pressed="true"]{border-color:var(--accent);color:var(--accent)}.rd-wiz-pick[aria-pressed="true"] .data{color:var(--accent)}.rd-wiz-pick:focus-visible,.rd-wiz-back:focus-visible,.rd-wiz-skip:focus-visible,.rd-wiz-x:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.rd-step-title{font-family:var(--display);font-weight:700;font-size:1.2rem;color:var(--ink);margin:0 0 4px}.rd-step-sub{color:var(--muted);font-size:0.9rem;margin:0 0 16px}.rd-step .field-grid{margin-top:6px}.rd-step .dropzone{margin-top:8px}.rd-wiz-or{text-align:center;color:var(--muted);font-family:var(--mono);font-weight:500;font-size:0.75rem;letter-spacing:0.1em;text-transform:uppercase;letter-spacing:0.08em;margin:14px 0 8px}.rd-wiz-results{display:flex;flex-direction:column;gap:6px;max-height:200px;overflow-y:auto;margin-top:8px}.rd-wiz-result{text-align:left;background:var(--glass);border:1px solid var(--line);border-radius:10px;padding:9px 13px;cursor:pointer;color:var(--ink);font-family:inherit;font-size:0.9rem}.rd-wiz-result:hover{border-color:var(--edge-soft);background:var(--fill-hover)}.rd-wiz-result .rd-wiz-result-meta{color:var(--muted);font-size:0.78rem}#rd-wiz-manual.rd-disabled{opacity:0.4;pointer-events:none}.rd-step input:disabled{opacity:0.55;cursor:not-allowed}.rd-wiz-chosen{margin-top:12px;color:var(--accent);font-size:0.88rem;font-weight:600}.rd-wiz-chosen:empty{display:none}.rd-wiz-body{flex:1 1 auto;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:18px 24px 20px}.rd-wiz-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;flex:0 0 auto;padding:12px 24px 16px;border-top:1px solid var(--line-faint,var(--line))}.rd-wiz-foot-right{display:flex;gap:10px;align-items:center;margin-left:auto}.rd-wiz-back,.rd-wiz-skip{background:transparent;color:var(--muted);border:1px solid var(--line);border-radius:var(--r-ctl);padding:9px 16px;font-family:var(--body);font-weight:600;font-size:0.85rem;cursor:pointer}.rd-wiz-back:hover,.rd-wiz-skip:hover{color:var(--ink);border-color:var(--edge-soft);background:var(--fill-hover)}.rd-wiz-back[hidden]{display:none}@media (max-width:640px){.rd-wiz-head{padding:10px 4px 0 16px}.rd-wiz-steps{margin:10px 16px 0}.rd-wiz-body{padding:14px 16px 16px}.rd-wiz-foot{padding:10px 16px 14px}}#rd-flatpace[hidden]{display:none}.pace-split{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:2px 0 12px}.pace-split>.field-label{margin:0}#goal-modes{margin-bottom:2px}#goal-time-row[hidden],#goal-pace-row[hidden]{display:none}#goal-pace-row input{flex:0 0 96px;text-align:center}#goal-pace-unit{min-width:2.4em}.pace-strategy{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:10px 0 4px}.pace-strategy>.field-label{margin:0}.pace-fade-row{flex:1 1 100%;gap:6px}.pace-fade-row[hidden]{display:none}.pace-fade-row .slider,.aid-dwell-row .slider{max-width:420px}.pace-drift-note{flex:1 1 100%;color:var(--muted);font-size:0.82rem;line-height:1.5}.pace-factors{margin:8px 0 12px;border:1px solid var(--line);border-radius:var(--r-card);background:var(--glass)}.pace-factors>summary{position:relative;display:flex;align-items:center;flex-wrap:wrap;gap:4px 10px;min-height:44px;padding:8px 38px 8px 14px;list-style:none;cursor:pointer;border-radius:var(--r-card);touch-action:manipulation;transition:background var(--dur-ctl) var(--ease-snap)}.pace-factors>summary::-webkit-details-marker{display:none}.pace-factors>summary:hover{background:var(--fill-hover)}.pace-factors>summary:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.pace-factors[open]>summary{border-bottom:1px solid var(--line);border-radius:var(--r-card) var(--r-card) 0 0}.pf-sum-h{color:var(--ink);font:600 0.9rem var(--body)}.pf-sum-sub{color:var(--muted);font-size:0.8rem}.pf-state{margin-left:auto;color:var(--muted);font:500 max(0.7rem,var(--mono-cap)) var(--mono);letter-spacing:0.06em;text-align:right}.pf-state.is-set{color:var(--ink)}.pace-factors>summary .ico-chev{position:absolute;right:14px;top:15px;width:14px;height:14px;color:var(--muted);transition:transform var(--dur-ctl) var(--ease-snap)}.pace-factors[open]>summary .ico-chev{transform:rotate(180deg)}.pf-intro,.pf-note{margin:10px 14px 0;color:var(--muted);font-size:0.82rem;line-height:1.5}.pf-note{margin-bottom:14px}.pf-row{padding:12px 14px 0;gap:6px}.pf-row .field-label strong{color:var(--ink);font-weight:600}.pf-row .slider,.pf-scale{max-width:420px;width:100%}.pf-scale{display:flex;justify-content:space-between;gap:8px;color:var(--muted);font:500 max(0.7rem,var(--mono-cap)) var(--mono);letter-spacing:0.06em;text-transform:uppercase}.pf-line{margin:2px 0 0;color:var(--muted);font-size:0.8rem;line-height:1.45;max-width:60ch}.pf-effect{color:var(--ink)}.pf-suggest{margin:12px 14px 0;padding:10px 12px;border-left:3px solid var(--teal);background:var(--fill-idle);border-radius:0 var(--r-ctl) var(--r-ctl) 0;font-size:0.82rem;line-height:1.5;color:var(--muted)}.pf-suggest[hidden]{display:none}.pf-suggest-h{margin:0 0 6px;color:var(--ink);font-weight:600}.pf-suggest-list{margin:0;padding:0;list-style:none;display:grid;gap:8px}.pf-suggest-list b{color:var(--ink);font-weight:600}.pf-suggest-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}@media (max-width:600px){.pf-state{margin-left:0;flex:1 1 100%;text-align:left}.pf-suggest-actions .export-btn{min-height:44px;flex:1 1 auto;justify-content:center}}@media (prefers-reduced-motion:reduce){.pace-factors>summary,.pace-factors>summary .ico-chev{transition:none}}.pace-drift-note b{color:var(--ink);font-weight:600}.pace-drift-note em{font-style:italic}.pace-split-x{display:inline-flex;align-items:center;gap:6px;font-size:0.85rem;color:var(--muted)}.pace-split-x input{width:64px}.pace-split-x[hidden]{display:none}.pace-split-grain[hidden]{display:none}.pace-surf-adj{display:inline-flex;align-items:center;gap:6px;font-size:0.82rem;color:var(--muted);cursor:pointer}.pace-surf-adj em{font-style:normal;font-size:0.68rem;font-weight:700;color:var(--gold);border:1px solid currentColor;border-radius:var(--r-ctl);padding:0 6px;letter-spacing:0.05em}.pace-surf-adj[hidden]{display:none}.pace-split-note{flex-basis:100%;font-size:0.8rem;color:var(--muted);line-height:1.45}.pace-split-note[hidden]{display:none}.pace-split-cuts{flex-basis:100%;display:flex;flex-wrap:wrap;gap:6px}.pace-split-cuts[hidden]{display:none}.pace-leg-toggle{background:none;border:0;color:var(--muted);cursor:pointer;font:inherit;padding:0 4px 0 0}.pace-leg-toggle:hover{color:var(--ink)}.plan-table tr.pace-sub td{font-size:0.82rem;background:rgba(255,255,255,0.02)}.plan-table tr.pace-sub td:first-child{padding-left:26px}.plan-table tr.pace-sub[hidden]{display:none}.pace-cut{font:600 0.75rem var(--body);color:var(--ink);background:var(--glass);border:1px solid var(--line);border-radius:var(--r-ctl);padding:4px 10px;cursor:pointer;transition:border-color 0.15s,color 0.15s}.pace-cut:hover{border-color:var(--edge-soft);background:var(--fill-hover)}.pace-cut-clear{color:var(--muted)}.ico.tg-rm-x{display:block;width:0.75em;height:0.75em;margin:auto}.ico.tg-rm-x path{stroke-width:2.5}.pace-cut .ico.tg-rm-x{display:inline-block;margin:0 0 0 5px;vertical-align:-0.05em}.kit>.tg-empty{flex:1 1 100%}.tg-skel.rd-wx-graph-skel{position:absolute;inset:0;height:auto}.rd-wx-chart-wrap:has(>.rd-wx-graph-skel) canvas{visibility:hidden}.coach-skel{display:grid;gap:7px;width:min(320px,60vw);margin-top:9px}body.pace-custom-on #elev-chart{cursor:crosshair}#pace-table tbody tr{--pace-g:transparent}#pace-table tbody tr.g-up2{--pace-g:color-mix(in srgb,var(--c-climb) 85%,transparent)}#pace-table tbody tr.g-up1{--pace-g:color-mix(in srgb,var(--c-fuel) 65%,transparent)}#pace-table tbody tr.g-dn1{--pace-g:color-mix(in srgb,var(--c-aid) 50%,transparent)}#pace-table tbody tr.g-dn2{--pace-g:color-mix(in srgb,var(--c-aid) 85%,transparent)}#pace-table tbody tr>td:first-child{box-shadow:inset 3px 0 0 var(--pace-g)}#pace-table tbody tr.is-night{background:color-mix(in srgb,var(--c-gear) 10%,transparent)}#pace-table tbody tr.is-night:hover{background:var(--fill-hover)}#pace-table .aid-night{margin-left:6px}#pace-table:not(.has-cutoffs) .pace-cut-col{display:none}.pace-cut-m{font-weight:700}.pace-cut-m.cut-ok{color:var(--ok)}.pace-cut-m.cut-warn{color:var(--warn)}.pace-cut-m.cut-bad{color:var(--bad)}.pace-density-row{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:10px 0 6px}.pace-density-row .segmented button{min-height:32px}.pace-density-row .segmented button:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.pace-legend{display:inline-flex;align-items:center;gap:12px;color:var(--muted);font-size:0.78rem}.pace-legend>span{display:inline-flex;align-items:center;gap:5px}.pace-legend i{display:inline-block;width:3px;height:12px;border-radius:1px}.pace-legend .pl-up{background:var(--c-climb)}.pace-legend .pl-dn{background:var(--c-aid)}.pace-legend .pl-night{width:12px;background:color-mix(in srgb,var(--c-gear) 35%,transparent)}#pace-panel:not(.pace-has-night) .pace-legend .pl-n{display:none}#pace-table.is-compact td{padding-top:4px;padding-bottom:4px;font-size:0.84rem}#pace-table tr.pace-sub[hidden]{display:none}#pace-table.is-compact th{padding-top:4px;padding-bottom:4px}@media (max-width:600px){#pace-table tbody tr{box-shadow:inset 3px 0 0 var(--pace-g);padding-left:10px}#pace-table tbody tr>td:first-child{box-shadow:none}#pace-table td.pace-cut-col{order:5;font-size:0.82rem}#pace-table td.pace-cut-col:not(:empty)::before{content:"cutoff ";color:var(--muted);font-weight:400}#pace-table.is-compact tr{padding-top:6px;padding-bottom:6px}}.cr-body[hidden]{display:none}.cr-headline{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;margin:0 0 12px;font-size:0.95rem;line-height:1.45;color:var(--ink)}.cr-headline .tg-status{flex:0 0 auto}.cr-figs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:12px}.cr-fig{padding:9px 12px;min-width:0}.cr-fig .cs-label{overflow:hidden;text-overflow:ellipsis}.cr-fig .cs-val{font-size:1.15rem;font-variant-numeric:tabular-nums}.cr-fig .cs-val.is-ok{color:var(--ok)}.cr-fig .cs-val.is-warn{color:var(--warn)}.cr-fig .cs-val.is-bad{color:var(--bad)}.cr-fig .cs-sub{margin-top:2px}#cr-table .cr-nm{display:block}#cr-table .cr-mi{display:block;margin-top:1px;font:500 0.72rem/1.3 var(--mono);letter-spacing:0.04em;color:var(--muted);font-variant-numeric:tabular-nums}#cr-table td{vertical-align:middle}.cr-m{display:inline-flex;align-items:center;gap:4px;padding:2px 8px 2px 6px;border:1px solid var(--line);border-radius:var(--r-ctl);font:600 0.8rem/1.35 var(--mono);font-variant-numeric:tabular-nums;white-space:nowrap}.cr-m-ico{flex:0 0 auto;width:12px;height:12px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}.cr-m.is-ok{color:var(--ok);border-color:color-mix(in srgb,var(--ok) 45%,transparent)}.cr-m.is-warn{color:var(--warn);border-color:color-mix(in srgb,var(--warn) 55%,transparent)}.cr-m.is-bad{color:var(--bad);border-color:color-mix(in srgb,var(--bad) 60%,transparent);background:color-mix(in srgb,var(--bad) 10%,transparent)}.cr-p{display:inline-flex;align-items:center;gap:8px;font-weight:700;cursor:help}.cr-meter{width:40px;height:4px;border-radius:999px;background:var(--fill-hover);overflow:hidden}.cr-meter i{display:block;width:var(--p,0%);height:100%;border-radius:inherit;background:currentColor}.cr-p.is-ok{color:var(--ok)}.cr-p.is-warn{color:var(--warn)}.cr-p.is-bad{color:var(--bad)}.cr-key,.cr-fine{margin:10px 0 0;font-size:0.8rem;line-height:1.5;color:var(--muted)}.cr-key b,.cr-fine b{font-weight:600;color:var(--ink)}.cr-fine a{color:var(--ink);text-decoration:underline;text-decoration-color:var(--edge);text-underline-offset:2px}.cr-fine a:hover{text-decoration-color:var(--accent)}.cr-fine a:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:3px}@media (max-width:600px){.cr-figs{grid-template-columns:1fr 1fr}.cr-figs .cr-fig:first-child{grid-column:1 / -1}#cr-table thead{display:none}#cr-table,#cr-table tbody{display:block}#cr-table tr{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:end;gap:8px;padding:12px 4px;border-bottom:1px solid var(--line)}#cr-table td{display:block;padding:0;border:0;text-align:left;min-width:0}#cr-table td.cr-name{grid-column:1 / 3;align-self:start;font-weight:600}#cr-table td.cr-cut{grid-column:3;align-self:start;text-align:right;font-size:0.84rem;color:var(--muted)}#cr-table td.cr-sc::before{content:attr(data-k);display:block;margin-bottom:4px;font:500 var(--mono-cap)/1.2 var(--mono);letter-spacing:0.08em;text-transform:uppercase;color:var(--muted)}#cr-table .cr-m{padding-left:5px;padding-right:6px}#cr-table td.cr-ch{grid-column:1 / -1}#cr-table td.cr-ch::before{content:"still in ";font:400 0.8rem var(--body);color:var(--muted)}}@media (max-width:860px){.cr-fine a{display:inline-flex;align-items:center;min-height:44px}}.rd-browse-dlg .tg-dlg-body{padding:0;display:flex;flex-direction:column;overflow:hidden}.rd-browse{display:flex;flex-direction:column;min-height:0;flex:1 1 auto}.rd-browse .tg-pal-input{flex:0 0 auto;box-sizing:border-box;font-size:max(1.05rem,16px);background:transparent;border:0;border-bottom:1px solid var(--line);border-radius:0}.rd-browse .tg-pal-input:focus,.rd-browse .tg-pal-input:focus-visible{outline:none;box-shadow:none;border:0;border-bottom:1px solid var(--line)}.rd-browse .tg-pal-list{flex:1 1 auto;min-height:0;max-height:min(420px,56vh)}.rd-browse .tg-pal-item{min-height:44px;align-items:center}.rd-browse .tg-pal-item:hover{background:var(--fill-hover)}.rd-browse .tg-pal-item.sel{background:var(--fill-selected)}.rd-browse .tg-pal-hint{flex:0 0 auto}@media (max-width:640px){.tg-dlg.rd-browse-dlg{height:88vh}.rd-browse-dlg .tg-dlg-card{height:100%}.rd-browse .tg-pal-list{max-height:none}}.share-send{position:absolute;bottom:calc(100% + 10px);right:0;z-index:1200;display:flex;flex-direction:column;gap:8px;min-width:240px;background:var(--bg-1,#0c1714);border:1px solid var(--line);border-radius:var(--r-card);box-shadow:var(--shadow-pop);padding:14px 16px;transform-origin:bottom right;animation:tg-pop-in var(--dur-layer) var(--ease-snap);max-height:max(220px,min(70vh,440px));overflow-y:auto;overscroll-behavior:contain}.share-send-head{font-family:var(--display);font-weight:700;font-size:0.85rem;color:var(--accent);padding-right:26px}.share-send-btn{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:var(--r-ctl);padding:9px 14px;color:var(--ink);text-decoration:none;font-size:0.88rem;font-weight:600;transition:border-color 0.18s ease}.share-send-btn:hover{border-color:var(--edge-soft);background:var(--fill-hover)}.share-send-btn .ico{width:15px;height:15px;color:var(--accent);flex-shrink:0}.share-send-menu{display:flex;flex-direction:column;gap:8px}.share-send-x{position:absolute;top:4px;right:4px;display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;background:transparent;border:0;border-radius:var(--r-ctl);color:var(--muted);cursor:pointer;transition:background var(--dur-ctl) var(--ease-snap)}.share-send-x .ico{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}.share-send-x:hover{color:var(--ink);background:var(--fill-hover)}.share-send-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media (pointer:coarse){.share-send-x,.wf-pick-x{width:44px;height:44px;top:0;right:0}}.wf-pick{position:absolute;bottom:calc(100% + 10px);left:0;z-index:1200;display:flex;flex-direction:column;gap:8px;min-width:265px;max-width:min(92vw,340px);background:var(--bg-1,#0c1714);border:1px solid var(--line);border-radius:var(--r-card);box-shadow:var(--shadow-pop);padding:14px 16px;transform-origin:bottom left;animation:tg-pop-in var(--dur-layer) var(--ease-snap)}@media (prefers-reduced-motion:reduce){.share-send,.wf-pick{animation:none}}.wf-pick-head{font-family:var(--display);font-weight:700;font-size:0.85rem;color:var(--accent);padding-right:26px}.wf-opt{display:flex;flex-direction:column;align-items:flex-start;gap:3px;background:transparent;text-align:left;cursor:pointer;border:1px solid var(--line);border-radius:var(--r-ctl);padding:9px 13px;color:var(--ink);font:inherit;transition:border-color 0.18s ease}.wf-opt:hover,.wf-opt:focus-visible{border-color:var(--edge-soft);background:var(--fill-hover)}.wf-opt:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.wf-opt-top{display:flex;align-items:baseline;gap:8px;width:100%}.wf-opt-label{font-weight:600;font-size:0.9rem}.wf-opt-ext{margin-left:auto;color:var(--accent);font-size:0.78rem;font-weight:600}.wf-opt-hint{color:var(--muted);font-size:0.78rem;line-height:1.35}.wf-pick-menu{display:flex;flex-direction:column;gap:8px}.wf-pick-x{position:absolute;top:4px;right:4px;display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;background:transparent;border:0;border-radius:var(--r-ctl);color:var(--muted);cursor:pointer;transition:background var(--dur-ctl) var(--ease-snap)}.wf-pick-x .ico{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}.wf-pick-x:hover{color:var(--ink);background:var(--fill-hover)}.wx-along{margin-top:12px}.wx-along[hidden]{display:none}.wx-along-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 12px;margin-bottom:8px;font-size:0.78rem;color:var(--muted)}.wx-along-head .data-label{color:var(--ink);font-size:0.72rem}.wx-along-row{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(96px,1fr);gap:6px;overflow-x:auto;padding-bottom:4px;scrollbar-width:thin}.wx-stop{border:1px solid var(--line);border-radius:var(--r-card);padding:6px 8px;text-align:center;background:var(--glass);min-width:0}.wx-stop-k{font-family:var(--mono);font-size:0.64rem;letter-spacing:0.06em;text-transform:uppercase;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.wx-stop-t{font-size:0.7rem;color:var(--muted)}.wx-stop-v{font-size:1.05rem;font-weight:700;color:var(--ink);margin:2px 0}.wx-stop-s{font-size:0.72rem;color:var(--muted);white-space:nowrap}.wx-stop.is-hot{border-color:color-mix(in srgb,var(--c-fuel) 50%,transparent)}.wx-stop.is-hot .wx-stop-v,.wx-stop.is-hot .wx-stop-k{color:var(--c-fuel)}.wx-stop.is-cold{border-color:color-mix(in srgb,var(--c-aid) 50%,transparent)}.wx-stop.is-cold .wx-stop-v,.wx-stop.is-cold .wx-stop-k{color:var(--c-aid)}.wx-stop.is-out{opacity:0.6;border-style:dashed}@media (max-width:860px){.wx-along-row{grid-auto-columns:92px}}.rd-versions{margin:4px 0 12px;border:1px solid var(--line);border-radius:var(--r-card);overflow:hidden}.rd-versions[hidden]{display:none}.rd-versions-head{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 12px;border-bottom:1px solid var(--line);font-size:0.75rem;color:var(--ink)}.rd-versions-save{padding:4px 12px;min-height:32px;font-size:0.82rem}.rd-versions-list{list-style:none;margin:0;padding:0}.rd-ver{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:4px 8px;padding:7px 12px;font-size:0.86rem;border-top:1px solid var(--line)}.rd-ver:first-child{border-top:0}.rd-ver.is-current{background:var(--fill-selected)}.rd-ver-name{min-width:0;color:var(--ink)}.rd-ver-meta{color:var(--muted);font-size:0.8rem}.rd-ver-acts{display:inline-flex;align-items:center;gap:2px}.rd-ver-badge{font-size:0.72rem;color:var(--ok);border:1px solid color-mix(in srgb,var(--ok) 45%,transparent);border-radius:var(--r-ctl);padding:1px 7px;margin-right:4px}.rd-ver-btn{background:none;border:0;color:var(--accent);font:inherit;font-size:0.82rem;cursor:pointer;padding:4px 8px;border-radius:var(--r-ctl);transition:background var(--dur-ctl) var(--ease-snap)}.rd-ver-btn:hover,.rd-ver-btn[aria-pressed="true"]{background:var(--fill-hover)}.rd-ver-btn:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.rd-ver-rm{color:var(--muted);display:inline-flex;align-items:center;justify-content:center}.rd-ver-rm .ico{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}.rd-ver-rm:hover{color:var(--ink)}.rd-ver-cmp{flex-basis:100%;margin:2px 0 0;font-size:0.8rem;color:var(--muted)}.rd-ver-empty,.rd-versions-note{margin:0;padding:8px 12px;font-size:0.8rem;color:var(--muted)}.rd-versions-note{padding-top:0}.rd-ver-empty + .rd-versions-note,.rd-versions-list:not(:empty) + .rd-versions-note{padding-top:6px;border-top:1px solid var(--line)}@media (max-width:860px){.rd-versions-save,.rd-ver-btn{min-height:44px}.rd-ver-btn{min-width:44px}}.compare-panel.is-postrace,#compare-panel.is-postrace{border-color:color-mix(in srgb,var(--plum) 45%,var(--line))}.cmp-chart{margin:10px 0 4px}.cmp-chart svg{display:block;width:100%;height:auto;overflow:visible}.cmp-legend{display:flex;gap:14px;font-size:0.8rem;color:var(--muted);margin-bottom:4px;font-family:var(--mono)}.cmp-key{display:inline-flex;align-items:center;gap:6px}.cmp-key i{width:12px;height:3px;border-radius:2px;background:var(--c-pace)}.cmp-key.is-act i{background:var(--gold)}.cmp-line{fill:none;stroke-width:2.2;vector-effect:non-scaling-stroke;stroke-linejoin:round}.cmp-line.is-plan{stroke:var(--c-pace);stroke-dasharray:5 4}.cmp-line.is-act{stroke:var(--gold)}.cmp-grid{stroke:var(--line);stroke-width:1;vector-effect:non-scaling-stroke}.cmp-axis{fill:var(--muted);font-family:var(--mono);font-size:12px}.cmp-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:10px 0 12px}.cmp-stat{border:1px solid var(--line);border-radius:var(--r-card);padding:7px 10px;min-width:0}.cmp-stat-k{font-size:0.66rem;color:var(--muted)}.cmp-stat-v{font-size:1.05rem;font-weight:700;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cmp-stat-v small{font-size:0.72rem;font-weight:500;color:var(--muted);margin-left:3px}.cmp-stat.is-late .cmp-stat-v{color:var(--bad)}.cmp-stat.is-early .cmp-stat-v{color:var(--ok)}.cmp-send{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px;padding:10px 12px;border:1px solid var(--line);border-radius:var(--r-card);font-size:0.88rem;color:var(--ink)}.cmp-send p{margin:3px 0 0;color:var(--muted);font-size:0.8rem}.cmp-send .export-btn{flex:none}.cmp-sent{margin:0;color:var(--muted)}.cmp-sent b{color:var(--ok)}@media (max-width:860px){.cmp-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.cmp-send{flex-direction:column;align-items:stretch}.cmp-send .export-btn{min-height:44px}.cmp-table{font-size:0.8rem}}#rd-sum-goal:not(.is-empty){color:var(--c-pace)}#rd-sum-finish:not(.is-empty){color:var(--gold)}#rd-sum-carbs:not(.is-empty){color:var(--c-fuel)}#rd-sum-water:not(.is-empty){color:var(--c-aid)}.rd-billing{display:flex;align-items:flex-start;gap:10px;margin:0 0 14px;padding:11px 13px;border:1px solid var(--edge);border-radius:var(--r-ctl);background:var(--glass);color:var(--ink)}.rd-billing>.ico{width:18px;height:18px;color:var(--accent);flex-shrink:0;margin-top:2px}.rd-billing>.ico.rd-billing-waiting{color:var(--muted)}.rd-billing-msg{flex:1;min-width:0;margin:0;font-size:0.9rem;line-height:1.45}.rd-billing-race{font-weight:700;color:var(--ink-bright)}.rd-billing-msg a{color:var(--accent)}.rd-billing-x{flex-shrink:0;background:transparent;border:1px solid var(--line);color:var(--muted);border-radius:50%;width:26px;height:26px;display:grid;place-items:center;cursor:pointer;padding:0}.rd-billing-x .ico{width:13px;height:13px}.rd-billing-x:hover{color:var(--ink);border-color:var(--edge-soft);background:var(--fill-hover)}.rd-billing{flex-wrap:wrap}.rd-billing[hidden]{display:none}.rd-billing-rd{flex-basis:100%;margin:2px 0 0;padding-left:28px;font-size:0.8rem;line-height:1.4;color:var(--muted)}.rd-billing-rd a{color:var(--accent)}@media (max-width:860px){body.split-page .app-split>.rd-billing{margin-bottom:0}}.rd-sheet-map,.rd-sheet-head,.rd-sheet-foot{display:none}#rd-layout-row{display:none}@media (max-width:860px){#rd-layout-row{display:flex}body.rd-sheet-on{overflow:hidden;overscroll-behavior:none}body.rd-sheet-on .foot,body.rd-sheet-on>.backdrop,body.rd-sheet-on .section-chips,body.rd-sheet-on .rd-merged>.course-view>.map-wrap:empty{display:none!important}body.rd-sheet-on .rd-sheet-map{display:block;position:fixed;z-index:1;top:var(--rd-sheet-top,64px);left:0;right:0;bottom:var(--tg-tabbar-space,0px);background:var(--bg-1)}body.rd-sheet-on .rd-sheet-map>.map-wrap{position:absolute;inset:0;border:0;border-radius:0}body.rd-sheet-on .rd-sheet-map #course-map{height:100%}body.rd-sheet-on .rd-sheet-map .leaflet-bottom{bottom:min(calc(var(--rd-sheet-h,0px) - 6px),70%);transition:bottom var(--dur-layer) var(--ease-snap)}body.rd-sheet-dragging .rd-sheet-map .leaflet-bottom{transition:none}body.rd-sheet-on main.wrap{position:fixed;z-index:1500;left:0;right:0;bottom:var(--tg-tabbar-space,0px);height:var(--rd-sheet-h,50vh);max-height:calc(100dvh - var(--rd-sheet-top,64px) - var(--tg-tabbar-space,0px));margin:0;padding:0 16px;max-width:none;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;background:var(--bg-0);border:1px solid var(--line);border-bottom:0;border-radius:var(--r-card) var(--r-card) 0 0;box-shadow:var(--shadow-pop);transition:height var(--dur-layer) var(--ease-snap)}body.rd-sheet-dragging main.wrap{transition:none}body.rd-sheet-on[data-rd-snap="peek"] main.wrap{overflow-y:hidden}body.rd-sheet-on .rd-sheet-head{display:block;position:sticky;top:0;z-index:5;margin:0 -16px;padding:0 16px 8px;background:var(--bg-0);border-bottom:1px solid var(--line);touch-action:none}.rd-sheet-grip-row{display:flex;align-items:center;justify-content:center;position:relative;height:32px}.rd-sheet-handle{display:flex;align-items:center;justify-content:center;width:88px;height:28px;padding:0;margin:0 auto;background:none;border:0;border-radius:var(--r-ctl);cursor:grab;-webkit-tap-highlight-color:transparent}.rd-sheet-handle::before{content:"";width:40px;height:5px;border-radius:3px;background:var(--edge-soft);transition:background var(--dur-ctl) var(--ease-snap),width var(--dur-ctl) var(--ease-snap)}.rd-sheet-handle:hover::before,body.rd-sheet-dragging .rd-sheet-handle::before{background:var(--muted);width:48px}.rd-sheet-handle:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.rd-sheet-x{position:absolute;right:-8px;top:0;display:inline-grid;place-items:center;width:44px;height:44px;z-index:1;background:none;border:0;border-radius:var(--r-ctl);color:var(--muted);cursor:pointer;transition:background var(--dur-ctl) var(--ease-snap),color var(--dur-ctl) var(--ease-snap)}.rd-sheet-x:hover{background:var(--fill-hover);color:var(--ink)}.rd-sheet-x:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.rd-sheet-x .ico{width:18px;height:18px;stroke:currentColor;stroke-width:2;fill:none}body.rd-sheet-on[data-rd-snap="peek"] .rd-sheet-x{visibility:hidden}body.rd-sheet-on[data-rd-snap="peek"] .rd-sheet-tabs,body.rd-sheet-on[data-rd-snap="peek"] .rd-sheet-pos{display:none}.rd-sheet-figs .rd-sum-figs{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin:12px 0 8px}.rd-sheet-figs .rd-sum-fig{padding:5px 8px;border-radius:var(--r-ctl)}.rd-sheet-figs .rd-sum-fig .cs-label{font-size:0.62rem;letter-spacing:0.08em}.rd-sheet-figs .rd-sum-fig .cs-val{font-size:0.92rem;padding-top:1px}.rd-sheet-figs .rd-sum-fig .cs-val .unit{font-size:0.6rem;margin-left:2px}.rd-sheet-figs .rd-sum-fig .cs-label .rd-sum-per{display:inline}.rd-sheet-figs .rd-sum-fig .cs-val .rd-sum-per{display:none}.rd-sheet-figs .rd-sum-fig .cs-label .rd-sum-day{display:inline}.rd-sheet-figs .rd-sum-fig .cs-val .rd-sum-day{display:none}.rd-sheet-tabs{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;margin:0 -16px;padding:0 16px;touch-action:pan-x;scroll-behavior:smooth}.rd-sheet-tabs::-webkit-scrollbar{display:none}.rd-sheet-tabs .section-chip{min-height:44px;padding:6px 12px}.rd-sheet-pos{display:flex;justify-content:center;gap:4px;margin-top:7px}.rd-sheet-pos i{width:5px;height:5px;border-radius:50%;background:var(--line);transition:background var(--dur-ctl) var(--ease-snap),width var(--dur-ctl) var(--ease-snap)}.rd-sheet-pos i.on{width:14px;border-radius:3px;background:var(--accent)}body.rd-sheet-on .rd-page-off{display:none!important}body.rd-sheet-on .app-split{padding:12px 0 16px}body.rd-sheet-on .rd-page-cur>summary{cursor:default}body.rd-sheet-on .rd-page-cur>summary::after,body.rd-sheet-on .rd-page-cur>summary .rd-chev{display:none}body.rd-sheet-on .rd-page-cur.panel{border:0;background:transparent;box-shadow:none;padding:0}body.rd-sheet-on .rd-rail>.rd-rail-head{display:none}.rd-page-in-next{animation:rd-page-next var(--dur-layer) var(--ease-snap)}.rd-page-in-prev{animation:rd-page-prev var(--dur-layer) var(--ease-snap)}@keyframes rd-page-next{from{opacity:0;transform:translateX(28px)}to{opacity:1;transform:none}}@keyframes rd-page-prev{from{opacity:0;transform:translateX(-28px)}to{opacity:1;transform:none}}body.rd-sheet-on .rd-sheet-foot{display:block;position:sticky;bottom:0;z-index:5;margin:0 -16px;padding:8px 16px calc(8px + env(safe-area-inset-bottom,0px));background:var(--bg-0);border-top:1px solid var(--line)}body.rd-sheet-on:not([data-rd-snap="full"]) .rd-sheet-foot{display:none}body.rd-sheet-on .rd-sheet-foot .rd-plan-actions{display:flex;flex-wrap:nowrap;gap:4px;margin:0;padding:0;position:static;border:0;background:none;box-shadow:none}body.rd-sheet-on .rd-sheet-foot .rd-plan-actions>button{flex:1 1 0;min-width:0;min-height:52px;margin:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:6px 2px;font-size:0;line-height:1;white-space:nowrap}body.rd-sheet-on .rd-sheet-foot .rd-plan-actions>button[hidden]{display:none}body.rd-sheet-on .rd-sheet-foot .rd-plan-actions>button .ico{width:18px;height:18px}body.rd-sheet-on .rd-sheet-foot .rd-plan-actions>button>span{display:none}body.rd-sheet-on .rd-sheet-foot .rd-plan-actions>button[data-short]::after{content:attr(data-short)}body.rd-sheet-on .rd-sheet-foot .rd-plan-actions>button[data-short]::after,body.rd-sheet-on .rd-sheet-foot .rd-plan-actions>button>.tg-save-label,body.rd-sheet-on .rd-sheet-foot .rd-plan-actions>button>.tg-plan-offline-label{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;font:600 0.6875rem/1.15 var(--body);letter-spacing:0}body.rd-sheet-on #plan-rows tr{cursor:pointer}}@media (prefers-reduced-motion:reduce){body.rd-sheet-on main.wrap,body.rd-sheet-on .rd-sheet-map .leaflet-bottom{transition:none}.rd-page-in-next,.rd-page-in-prev{animation:none}.rd-sheet-tabs{scroll-behavior:auto}}.share-sheet{display:grid;gap:14px;color:var(--ink)}.share-sheet[hidden]{display:none}.share-sub{margin:0;font-size:0.85rem;color:var(--muted)}.share-sub:empty{display:none}.share-tabs{justify-self:start;gap:2px;padding:3px}.share-tabs button{min-height:40px;padding:6px 16px}.share-tabs button:hover{color:var(--ink)}.share-panel{display:grid;gap:10px}.share-panel[hidden],.share-field[hidden]{display:none}.share-note{margin:0;font-size:0.82rem;line-height:1.45;color:var(--muted)}.share-field{display:flex;gap:8px;align-items:stretch}.share-field input{flex:1;min-width:0;min-height:44px;padding:10px 12px;font-size:.8rem;color:var(--ink);background:var(--bg-well);border:1px solid var(--line);border-radius:var(--r-ctl)}.share-field input:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.share-sheet .export-btn{min-height:44px}.share-sheet .export-btn:focus-visible,.share-tabs button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.share-native{justify-self:start}.share-qr{justify-self:center;width:min(220px,70vw);border-radius:var(--r-ctl);overflow:hidden}.share-qr svg{display:block;width:100%;height:auto}.share-qr .qr-paper{fill:#fff}.share-qr .qr-ink{fill:#000}.rd-plan-sum{display:none}@media (min-width:861px){body.has-course .rd-plan-sum{display:flex;flex-direction:column;gap:10px}}.rd-sum-figs{display:grid;grid-template-columns:1fr 1fr;gap:8px}.rd-sum-fig{padding:8px 12px;flex:none;min-width:0}.rd-sum-fig .cs-val{font-size:1.1rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rd-sum-fig .cs-val .unit{font-size:0.68rem}.rd-sum-fig .cs-label .rd-sum-per{display:none}.rd-sum-fig .cs-label .rd-sum-day{display:none;margin-left:0.3em;letter-spacing:0;text-transform:none;color:var(--ink)}.rd-sum-fig .cs-val.is-empty{color:var(--muted);font-weight:500}.rd-sum-cutoff{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin:0;padding:7px 12px;border-radius:var(--r-ctl);background:var(--fill-idle);border:1px solid var(--line);font-size:0.8rem;color:var(--muted)}.rd-sum-cutoff[hidden]{display:none}.rd-sum-cutoff b{font-weight:700;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rd-sum-cutoff.is-tight{border-color:color-mix(in srgb,var(--warn) 55%,transparent);background:color-mix(in srgb,var(--warn) 12%,transparent)}.rd-sum-cutoff.is-tight b{color:var(--warn)}.rd-sum-cutoff.is-missed{border-color:color-mix(in srgb,var(--bad) 60%,transparent);background:color-mix(in srgb,var(--bad) 12%,transparent)}.rd-sum-cutoff.is-missed b{color:var(--bad)}.rd-sum-secs{display:flex;flex-direction:column;gap:2px}.rd-sum-sec{display:flex;align-items:center;gap:9px;width:100%;text-align:left;padding:5px 8px;min-height:30px;font:600 0.82rem/1.2 var(--body);color:var(--muted);background:transparent;border:1px solid transparent;border-radius:var(--r-ctl);cursor:pointer;transition:background var(--dur-ctl) var(--ease-snap),color var(--dur-ctl) var(--ease-snap)}.rd-sum-sec:hover{color:var(--ink);background:var(--fill-hover)}.rd-sum-sec:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.rd-sum-sec[aria-current]{color:var(--ink);font-weight:700;box-shadow:inset 2px 0 0 var(--accent)}.rd-sum-sec .rd-sum-tick{flex:none;width:15px;height:15px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line);color:transparent}.rd-sum-sec .rd-sum-tick .ico{width:10px;height:10px;stroke-width:2.4}.rd-sum-sec.is-done .rd-sum-tick{color:var(--ok);border-color:color-mix(in srgb,var(--ok) 55%,transparent);background:color-mix(in srgb,var(--ok) 12%,transparent)}.rd-sum-sec.is-done{color:var(--ink)}.rd-sum-sec .rd-sum-label{flex:1 1 auto;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rd-sum-sec .rd-sum-hint{flex:none;font-weight:400;font-size:0.7rem;color:var(--muted)}.rd-sum-sec[aria-current] .rd-sum-hint{color:var(--ink)}.rd-sum-map>summary{display:flex;align-items:center;gap:7px;list-style:none;cursor:pointer;padding:6px 8px;border-radius:var(--r-ctl);font:600 0.8rem/1.2 var(--body);color:var(--muted);transition:background var(--dur-ctl) var(--ease-snap),color var(--dur-ctl) var(--ease-snap)}.rd-sum-map>summary::-webkit-details-marker{display:none}.rd-sum-map>summary:hover{color:var(--ink);background:var(--fill-hover)}.rd-sum-map>summary:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.rd-sum-map>summary .ico{width:14px;height:14px;flex:none}.rd-sum-map>summary .ico-chev{margin-left:auto;transition:transform var(--dur-ctl) var(--ease-snap)}.rd-sum-map[open]>summary .ico-chev{transform:rotate(180deg)}.rd-sum-map-hide,.rd-sum-map[open] .rd-sum-map-show{display:none}.rd-sum-map[open] .rd-sum-map-hide{display:inline}.rd-sum-map .mini-map-wrap{margin-top:6px}@media (prefers-reduced-motion:reduce){.rd-sum-sec,.rd-sum-map>summary,.rd-sum-map>summary .ico-chev{transition:none}}@media (max-width:860px){.rd-sum-figs{display:none}body.has-course .rd-sum-figs.rd-sum-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;position:sticky;z-index:1889;margin:0;padding:6px 16px 8px;background:color-mix(in srgb,var(--bg-0,#07120f) 86%,transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}.rd-sum-strip .rd-sum-fig{padding:5px 8px;border-radius:var(--r-ctl)}.rd-sum-strip .rd-sum-fig .cs-label{font-size:0.62rem;letter-spacing:0.08em}.rd-sum-strip .rd-sum-fig .cs-val{font-size:0.92rem;padding-top:1px}.rd-sum-strip .rd-sum-fig .cs-val .unit{font-size:0.6rem;margin-left:2px}.rd-sum-strip .rd-sum-fig .cs-label .rd-sum-per{display:inline}.rd-sum-strip .rd-sum-fig .cs-val .rd-sum-per{display:none}.rd-sum-strip .rd-sum-fig .cs-label .rd-sum-day{display:inline}.rd-sum-strip .rd-sum-fig .cs-val .rd-sum-day{display:none}}.rd-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;min-height:300px;padding:24px;color:var(--muted)}.rd-loading[hidden]{display:none}body.loading-course .rd-start,body.loading-course .rd-rail-setup{display:none}.rd-loading-hill{width:160px;height:88px}.rd-loading-hill ellipse{fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-dasharray:100;stroke-dashoffset:0;animation:rd-ring 2.8s ease-in-out infinite}.rd-loading-hill ellipse:nth-child(2){animation-delay:0.25s}.rd-loading-hill ellipse:nth-child(3){animation-delay:0.5s}.rd-loading-pin{color:var(--accent);animation:rd-pin 2.8s ease-in-out infinite}.rd-loading-pin line{stroke:currentColor;stroke-width:2.5;stroke-linecap:round}.rd-loading-pin circle{fill:currentColor}.rd-loading-text{margin:0;font-family:var(--body);font-size:0.9rem;color:var(--muted)}@keyframes rd-ring{0%{stroke-dashoffset:100}35%{stroke-dashoffset:0}80%{stroke-dashoffset:0;opacity:1}100%{stroke-dashoffset:0;opacity:0}}@keyframes rd-pin{0%,55%{opacity:0;transform:translateY(-10px)}65%,85%{opacity:1;transform:translateY(0)}100%{opacity:0}}@media (prefers-reduced-motion:reduce){.rd-loading-hill ellipse,.rd-loading-pin{animation:none}.rd-loading-pin{opacity:1;transform:none}}.rd-help{min-height:44px;display:inline-flex;align-items:center;margin-bottom:8px;background:transparent;border:0;padding:0;font-family:var(--body);font-size:0.9rem;cursor:pointer}.rd-help:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}@media (max-width:860px),(pointer:coarse){.rd-plan-actions>button,.course-card-actions>button,.section-chips>button,.tg-tog{min-height:44px;min-width:44px}}.pace-whatif{margin:4px 0 12px;padding:10px 12px 12px;border:1px solid var(--line);border-radius:var(--r-card);background:var(--fill-idle)}.pace-whatif[hidden],.pace-whatif-actions[hidden],.pace-whatif-delta[hidden]{display:none}.pace-whatif-top{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}.pace-whatif-top .field-label{margin:0}.pace-whatif-goal{font-size:1.05rem;color:var(--ink-bright)}.pace-whatif-delta{font-size:0.78rem;padding:2px 8px;border-radius:var(--r-ctl);border:1px solid var(--edge-soft);color:var(--ink);background:var(--fill-hover)}.pace-whatif-track{display:flex;align-items:center;gap:10px;margin-top:10px}.pace-whatif-track .slider{flex:1 1 auto;min-width:0}.pace-whatif-track .slider:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.pace-whatif-track .data-label{flex:0 0 auto;white-space:nowrap}.pace-whatif-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}#pace-rows td.pace-moved{animation:pace-moved 1.1s var(--ease-snap)}@keyframes pace-moved{from{background:color-mix(in srgb,var(--accent) 22%,transparent)}}@media (prefers-reduced-motion:reduce){#pace-rows td.pace-moved{animation:none}}@media (max-width:860px){.pace-whatif-track{flex-wrap:wrap}.pace-whatif-track .slider{order:-1;flex-basis:100%;height:8px;margin:10px 0 2px}.pace-whatif-track #whatif-max{margin-left:auto}.pace-whatif-actions .export-btn{min-height:44px;flex:1 1 auto;white-space:nowrap}}.wf-pick.wf-pick-preview{min-width:290px;max-width:min(92vw,400px);max-height:calc(100vh - 120px);max-height:calc(100dvh - 120px);overflow-y:auto;overscroll-behavior:contain}.wf-pick-sub{font-size:0.72rem;color:var(--muted);text-transform:uppercase;letter-spacing:0.08em;font-family:var(--mono);margin-top:2px}.wf-preview{display:flex;align-items:center;gap:14px}.wf-watch{flex:0 0 auto;width:132px;height:132px;border-radius:50%;padding:7px;background:var(--bg-2);border:2px solid var(--edge-soft)}.wf-face{width:100%;height:100%;border-radius:50%;background:var(--bg-well);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;text-align:center;padding:0 12px;overflow:hidden}.wf-k{font-family:var(--mono);font-size:0.56rem;letter-spacing:0.14em;text-transform:uppercase;color:var(--muted)}.wf-name{font-family:var(--display);font-weight:800;font-size:0.72rem;line-height:1.15;text-transform:uppercase;color:var(--ink-bright);max-width:100%;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.wf-dist{font-family:var(--mono);font-variant-numeric:tabular-nums;font-weight:700;font-size:1.15rem;color:var(--accent);line-height:1.2}.wf-eta,.wf-cut{font-family:var(--mono);font-variant-numeric:tabular-nums;font-size:0.62rem;color:var(--ink)}.wf-cut{color:var(--muted)}.wf-sum{margin:0;font-size:0.8rem;line-height:1.4;color:var(--muted)}.wf-fuel{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;padding:8px 10px;border:1px solid var(--edge-soft);border-radius:10px;background:var(--bg-2)}.wf-fuel-on{display:inline-flex;align-items:center;gap:6px;font-size:0.82rem;font-weight:600;color:var(--ink);cursor:pointer}.wf-fuel-on input{accent-color:var(--accent);width:16px;height:16px}.wf-fuel select{font:inherit;font-size:0.8rem;padding:3px 6px;border-radius:6px;border:1px solid var(--edge-soft);background:var(--bg-well);color:var(--ink)}.wf-fuel select:disabled{opacity:0.5}.wf-fuel-note{flex-basis:100%;margin:0;font-size:0.72rem;line-height:1.4;color:var(--muted)}.wf-pick .wf-watches{display:grid;grid-template-columns:repeat(5,auto);overflow:visible;max-width:100%}.wf-pick .wf-watches button{padding:7px 8px;font-size:0.8rem}@media (max-width:480px){.wf-pick .wf-watches{grid-template-columns:repeat(3,1fr)}}body.rd-sheet-on .wf-pick.wf-pick-preview{max-height:calc(100vh - 210px);max-height:calc(100dvh - 210px)}.wf-pick .wf-watches button:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.wf-files{display:flex;flex-direction:column;gap:8px}.wf-opt-limit{color:var(--muted);font-size:0.72rem;line-height:1.35;border-top:1px solid var(--line);padding-top:4px;margin-top:2px;width:100%}.wf-docs{font-size:0.78rem;align-self:flex-start}@media (max-width:860px){.wf-opt{min-height:44px}.wf-fuel-on,.wf-fuel select{min-height:44px}.wf-pick .wf-watches button{min-height:44px}.wf-docs{display:inline-flex;align-items:center;min-height:44px}}.pb-paper{border-radius:var(--r-card)}
/* /print.css */
#print-doc{display:none}@media print{:root{--ink:#15201b;--ink-bright:#000000;--muted:#5b6864;--bg-0:#ffffff;--bg-1:#ffffff;--bg-2:#ffffff}}#print-doc{background:#fff;color:var(--ink);font-family:var(--body);font-size:10.5pt;line-height:1.45}#print-doc .pd-head{margin-bottom:10pt}#print-doc h1{font-family:var(--display);font-weight:800;font-size:20pt;margin:0 0 2pt;color:var(--ink);letter-spacing:-0.01em}#print-doc .pd-meta{color:var(--muted);font-size:10pt;margin:0}#print-doc .pd-meta strong{color:var(--ink)}#print-doc .pd-brandline{display:flex;justify-content:space-between;align-items:baseline;border-bottom:2.5pt solid var(--c-fuel);padding-bottom:6pt;margin-bottom:10pt}#print-doc .pd-brand{font-family:var(--display);font-weight:800;font-size:10pt;color:var(--c-fuel);letter-spacing:0.08em}#print-doc h2{font-family:var(--display);font-weight:700;font-size:12.5pt;color:var(--accent);margin:14pt 0 6pt;break-after:avoid}#print-doc .pd-sub{color:var(--muted);font-size:9pt;margin:-4pt 0 6pt}#print-doc .pd-metrics{display:flex;gap:8pt;margin:6pt 0 2pt;break-inside:avoid}#print-doc .pd-metric{flex:1;border:1pt solid #d8ded9;border-radius:6pt;padding:5pt 8pt}#print-doc .pd-metric .l{font-size:7.5pt;text-transform:uppercase;letter-spacing:0.06em;color:var(--muted)}#print-doc .pd-metric .v{font-family:var(--mono);font-weight:700;font-size:11pt}#print-doc .pd-metric .v small{font-weight:400;font-size:8pt;color:var(--muted)}#print-doc table{width:100%;border-collapse:collapse;font-size:9.5pt}#print-doc thead{display:table-header-group}#print-doc th{text-align:left;font-size:7.5pt;text-transform:uppercase;letter-spacing:0.06em;color:var(--muted);border-bottom:1.5pt solid var(--ink);padding:3pt 6pt}#print-doc td{padding:4pt 6pt;border-bottom:0.75pt solid #dfe5e0;vertical-align:top}#print-doc tr{break-inside:avoid}#print-doc tbody tr:nth-child(even) td{background:#f4f6f4}#print-doc .t-up,#print-doc .t-down,#print-doc .t-pace,#print-doc .t-sep,#print-doc .t-flat,#print-doc .aid-badge{color:inherit!important;background:none!important}#print-doc .pd-profile{width:100%;border:1pt solid #d8ded9;border-radius:6pt;margin:4pt 0}#print-doc ul.pd-check{list-style:none;margin:4pt 0;padding:0;columns:2;column-gap:18pt}#print-doc ul.pd-check li{padding:2pt 0 2pt 16pt;position:relative;break-inside:avoid}#print-doc ul.pd-check li::before{content:'';position:absolute;left:0;top:3.5pt;width:8pt;height:8pt;border:1.1pt solid var(--ink);border-radius:1.5pt}#print-doc .pd-note{color:var(--muted);font-size:9pt}#print-doc .pd-page{break-before:page}#print-doc .pd-foot{position:fixed;bottom:0;left:0;right:0;text-align:center;font-size:7.5pt;color:#98a39c}@page{margin:14mm 12mm 18mm}@media print{body.tg-printing>*:not(#print-doc){display:none!important}body.tg-printing #print-doc{display:block}body.tg-printing{background:#fff!important;height:auto!important;overflow:visible!important;display:block!important}}@media screen{body.tg-print-preview #print-doc{display:block;position:fixed;inset:0;z-index:99999;overflow:auto;padding:32px clamp(24px,12vw,220px)}}.pd-surf-legend{font-size:9px;color:#555;margin:2px 0 0}.pd-surf-legend span{display:inline-block;width:14px;height:7px;border-radius:2px;vertical-align:middle}#print-doc h2.pd-h{display:flex;align-items:center;gap:6pt;padding:4pt 8pt 4pt 6pt;border-radius:5pt;border-left:3pt solid var(--acc,var(--accent));background:color-mix(in srgb,var(--acc,var(--accent)) 9%,#fff);color:var(--ink);print-color-adjust:exact;-webkit-print-color-adjust:exact}#print-doc .pd-ico{flex:0 0 auto;width:15pt;height:15pt;border-radius:4pt;display:inline-grid;place-items:center;background:var(--acc,var(--accent));print-color-adjust:exact;-webkit-print-color-adjust:exact}#print-doc .pd-ico svg{width:9.5pt;height:9.5pt;fill:none;stroke:#fff;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}#print-doc .pd-abadge{display:inline-grid;place-items:center;width:11pt;height:11pt;border-radius:50%;margin-right:4pt;font:700 6.5pt var(--display);color:#fff;background:var(--pc,var(--c-aid));vertical-align:-2pt;print-color-adjust:exact;-webkit-print-color-adjust:exact}#print-doc .pd-bag{display:inline-flex;align-items:center;gap:1.5pt;margin-left:5pt;color:var(--gold);vertical-align:-1.5pt}#print-doc .pd-bag svg{width:10pt;height:10pt;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}#print-doc .pd-bag i{font-style:normal;font-size:7pt;font-weight:700}#print-doc .pd-pp{display:inline-grid;place-items:center;min-width:11pt;height:11pt;border-radius:99pt;padding:0 3pt;margin-left:4pt;font:700 6.5pt var(--display);color:#fff;background:var(--pc,var(--c-crew));vertical-align:-2pt;print-color-adjust:exact;-webkit-print-color-adjust:exact}#print-doc .pd-io{display:inline-block;margin-left:4pt;font-size:7pt;font-weight:700;color:var(--pc,var(--c-crew));border:0.9pt solid currentColor;border-radius:99pt;padding:0.5pt 4.5pt;white-space:nowrap;print-color-adjust:exact;-webkit-print-color-adjust:exact}#print-doc .pd-van{width:8pt;height:8pt;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;vertical-align:-1pt;margin-right:1.5pt}#print-doc td.pd-c-water{color:var(--c-course);font-weight:600}#print-doc td.pd-c-carb{color:var(--gold);font-weight:600}#print-doc .pd-metric{border-top:2.5pt solid var(--macc,#d8ded9);print-color-adjust:exact;-webkit-print-color-adjust:exact}#print-doc .pd-m-water{--macc:var(--c-course)}#print-doc .pd-m-sodium{--macc:var(--c-gear)}#print-doc .pd-m-carbs{--macc:var(--gold)}#print-doc .pd-m-cals{--macc:var(--c-fuel)}#print-doc .pd-person{border:1pt solid #dfe5e0;border-left:3pt solid var(--pc,var(--c-crew));border-radius:6pt;padding:5pt 8pt;margin:4pt 0;break-inside:avoid;print-color-adjust:exact;-webkit-print-color-adjust:exact}#print-doc .pd-person b{font-family:var(--display)}#print-doc .pd-role{display:inline-block;margin-left:4pt;font-size:6.5pt;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;color:var(--pc,var(--c-crew));border:0.9pt solid currentColor;border-radius:99pt;padding:1pt 5pt;vertical-align:1pt}#print-doc .pd-person .pd-note{margin:1pt 0 0}#print-doc .pd-map{width:100%;border:1pt solid #d8dfd8;border-radius:6pt;margin:10pt 0 3pt;break-inside:avoid}#print-doc .pd-map-legend{color:var(--muted);font-size:8.5pt;margin:0 0 10pt}#print-doc .pd-dot{display:inline-block;width:8pt;height:8pt;border-radius:50%;border:1pt solid var(--ink);vertical-align:-1pt}@media screen{.pw-box .pw-opts{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:4px}.pw-opt{display:flex;gap:10px;align-items:center;background:var(--glass);border:1px solid var(--line);border-radius:10px;padding:11px 13px;cursor:pointer;color:var(--ink);font-size:0.9rem;transition:border-color 0.18s ease}.pw-opt:hover{border-color:var(--edge-soft);background:var(--fill-hover)}.pw-opt input{accent-color:var(--accent);width:16px;height:16px;flex-shrink:0}.pw-opt .pw-empty{display:none;margin-left:auto;color:var(--muted);font-size:0.72rem;font-style:italic}.pw-opt.off{opacity:0.55;cursor:default}.pw-opt.off:hover{border-color:var(--line)}.pw-opt.off .pw-empty{display:inline}#pw-backdrop[hidden]{display:none}@media (max-width:560px){.pw-box .pw-opts{grid-template-columns:1fr}}}.pd-band-pair{display:flex;gap:10mm;break-inside:avoid;page-break-inside:avoid;margin-top:8mm}.pd-band{width:62mm;border:1.2px dashed #9aa7a0;border-radius:2mm;padding:3mm 3.5mm;font-size:8.2pt;line-height:1.25;color:var(--ink)}.pd-band-head{font-weight:700;font-size:8.6pt;letter-spacing:0.01em;margin-bottom:1.6mm;display:flex;justify-content:space-between;gap:2mm;align-items:baseline}.pd-band-head span{font-weight:600;color:var(--muted);font-size:7.6pt;white-space:nowrap}.pd-band table{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums}.pd-band th{text-align:left;font-size:6.8pt;text-transform:uppercase;letter-spacing:0.06em;color:var(--muted);padding:0 1mm 0.6mm 0;border-bottom:0.6px solid #c9d2cc}.pd-band td{padding:0.55mm 1mm 0.55mm 0;border-bottom:0.4px solid #e2e8e4;white-space:nowrap}.pd-band-name{max-width:24mm;overflow:hidden;text-overflow:ellipsis}.pd-band-foot{margin-top:1.6mm;font-size:6.6pt;color:#8a978f;text-align:right}.pd-band-note{margin-top:3mm}.pd-band-wx{color:var(--muted)}.pd-band-wx svg,.pd-band-lamp svg{width:1.05em;height:1.05em;vertical-align:-0.15em;margin-left:0.3mm;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}.pd-band-lamp{font-size:6.8pt;font-weight:600;color:var(--muted);margin:-0.6mm 0 1.4mm;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pd-band-lamp svg{margin:0 0.8mm 0 0}#print-doc .pd-band table{font-size:8.2pt}#print-doc .pd-band-tight table{font-size:7pt}.pd-band-tight{font-size:7pt}.pd-band-tight th{font-size:6.2pt}.pd-band-tight td{padding:0.4mm 1mm 0.4mm 0}.pd-band-tight .pd-band-head{font-size:7.6pt}.pd-band{box-sizing:border-box;flex:0 0 62mm}.pd-band-pair-stack{flex-direction:column;gap:6mm}.pd-band-wide{flex-basis:auto;width:124mm;max-width:100%}.pd-band-wider{width:138mm}.pd-band-only .pd-band-pair:first-child{margin-top:0}.pd-band-only .pd-band-pair + .pd-band-pair{margin-top:10mm}@media screen{body.tg-print-preview .pd-band{background:#fff}body.tg-print-preview .pd-pocket,body.tg-print-preview .pd-strip{background:#fff}}.pd-pocket-pair{display:flex;flex-wrap:wrap;gap:6mm;margin-top:6mm;break-inside:avoid;page-break-inside:avoid}.pd-pocket{box-sizing:border-box;width:127mm;height:76.2mm;overflow:hidden;display:flex;flex-direction:column;border:1.2px dashed #9aa7a0;border-radius:2mm;padding:3mm 3.5mm;font-size:7pt;line-height:1.2;color:var(--ink)}.pd-pocket table{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums}#print-doc .pd-pocket table{font-size:7pt}.pd-pocket>*{flex-shrink:0}#print-doc .pd-pocket th{text-align:left;font-size:6.2pt;font-weight:700;text-transform:uppercase;letter-spacing:0.06em;color:var(--muted);padding:0 1mm 0.5mm 0;border-bottom:0.6px solid #c9d2cc}#print-doc .pd-pocket td{padding:0.35mm 1mm 0.35mm 0;border-bottom:0.4px solid #e2e8e4;white-space:nowrap;vertical-align:baseline}.pd-pocket .pk-name{max-width:44mm;overflow:hidden;text-overflow:ellipsis}.pd-pocket .pd-band-foot{margin-top:auto}.pk-crew{display:inline-block;width:2.2mm;height:2.2mm;border-radius:50%;border:0.9px solid currentColor;vertical-align:-0.2mm;box-sizing:border-box}.pk-crew.yours{background:currentColor;print-color-adjust:exact;-webkit-print-color-adjust:exact}.pd-pocket svg,.pd-strip svg{width:1.05em;height:1.05em;vertical-align:-0.15em;margin-left:0.3mm;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}.pd-strip{box-sizing:border-box;width:190mm;max-width:100%;margin-top:4mm;padding:1.5mm 2.5mm;border:1.2px dashed #9aa7a0;border-radius:2mm;break-inside:avoid;page-break-inside:avoid;color:var(--ink)}.pd-strip table{width:100%;border-collapse:collapse;table-layout:fixed;font-variant-numeric:tabular-nums}#print-doc .pd-strip table{font-size:6.6pt}#print-doc .pd-strip th{width:8mm;text-align:left;font-size:5.8pt;font-weight:600;text-transform:uppercase;letter-spacing:0.06em;color:var(--muted);padding:0.3mm 0;border:0;background:none}#print-doc .pd-strip td{padding:0.3mm 0.8mm;border:0;border-left:0.4px solid #e2e8e4;overflow:hidden;text-overflow:ellipsis;line-height:1.15;vertical-align:top;background:none}.pd-strip .pk-s-name td{white-space:nowrap;font-weight:700}.pd-strip .pk-s-arr td{font-weight:700}.pd-strip .pk-s-mi td,.pd-strip .pk-s-cut td{color:var(--muted)}#print-doc.pd-pocket-only .pk-kicker{margin:8mm 0 0;padding:0;border:0;font:700 8pt/1.2 var(--mono);letter-spacing:0.1em;text-transform:uppercase;color:var(--muted)}.pd-pocket-only .pd-pocket-pair:first-child{margin-top:0}.pb-paper{margin:14px 0 4px;padding:18px;background:#fff;color:#1a211d;display:flex;flex-direction:column;align-items:center;max-height:58vh;overflow:auto;border:1px solid var(--line)}.pb-paper .pd-band{margin:0;color:inherit}.pb-paper .pd-band *{color:inherit}.pb-paper .pd-band table{font-size:8.2pt}.pb-paper .pd-band-tight table{font-size:7pt}.pb-paper .pd-band-head span,.pb-paper .pd-band th,.pb-paper .pd-band-foot{color:#5b6860}.pb-more{margin:8px 0 0;font-size:0.78rem;color:#5b6860}
/* /gear.css */
.gear-accent{color:var(--violet)}.hero .eyebrow.gear{color:var(--violet)}.gear-stack{display:flex;flex-direction:column;gap:18px}.kit-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.kit-title-wrap{display:flex;align-items:center;gap:10px}.count-badge{font-family:var(--mono);font-weight:700;font-size:0.78rem;color:var(--violet);background:rgba(139,108,255,0.12);border:1px solid rgba(139,108,255,0.4);border-radius:var(--r-ctl);padding:3px 10px;min-width:30px;text-align:center}.kit-actions{display:flex;gap:8px}.mini-btn{background:var(--glass-2);color:var(--ink);border:1px solid var(--line);border-radius:var(--r-ctl);padding:7px 14px;font-family:var(--body);font-weight:600;font-size:0.82rem;cursor:pointer;transition:border-color 0.18s ease,background 0.18s ease}.mini-btn:hover{border-color:var(--edge-soft);background:var(--fill-hover)}.mini-btn.danger:hover{border-color:var(--edge);background:var(--fill-hover);color:var(--ink)}.kit{display:flex;flex-wrap:wrap;gap:9px;margin-top:14px;min-height:44px;align-content:flex-start}.kit-empty{color:var(--muted);font-size:0.92rem;font-style:italic;padding:8px 2px;width:100%}.pill{display:inline-flex;align-items:center;gap:7px;font-family:var(--body);font-weight:600;font-size:0.9rem;border-radius:var(--r-ctl);padding:8px 14px;cursor:pointer;border:1px solid var(--line);background:var(--glass-2);color:var(--ink);transition:transform 0.12s ease,border-color 0.18s ease,background 0.18s ease,opacity 0.18s ease;user-select:none}.pill:hover{transform:translateY(-1px)}.pill:active{transform:translateY(0) scale(0.97)}.pill .ic{font-size:1rem;line-height:1;opacity:0.85}.pill.in{border-color:var(--accent);background:var(--fill-selected);color:var(--ink)}.pill.in:hover{border-color:var(--edge);background:var(--fill-hover)}.pill.in .ic{color:var(--accent);font-weight:700}.pill.in:hover .ic{color:var(--ink)}.pill.in.custom{border-style:dashed}.pill.add{color:var(--muted)}.pill.add:hover{color:var(--ink);border-color:var(--edge-soft);background:var(--fill-hover)}.pill.add .ic{color:var(--cat,var(--violet))}@keyframes pillpop{0%{transform:scale(0.7);opacity:0}60%{transform:scale(1.06)}100%{transform:scale(1);opacity:1}}.pill.pop{animation:pillpop 0.26s cubic-bezier(.2,.9,.3,1.3)}.add-row{display:flex;gap:9px;margin-top:16px}.add-row input{flex:1;background:var(--glass-2);color:var(--ink);border:1px solid var(--line);border-radius:var(--r-ctl);padding:10px 16px;font-family:inherit;font-size:0.95rem}.add-row input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--ring)}.add-row button{background:var(--fill-idle);color:var(--ink);border:1px solid var(--edge);border-radius:var(--r-ctl);padding:0 20px;font-family:var(--body);font-weight:700;font-size:0.9rem;cursor:pointer;transition:background 0.18s ease;white-space:nowrap}.add-row button:hover{background:var(--fill-hover)}.bin{display:flex;flex-direction:column;gap:18px;margin-top:14px}.bin-group{}.bin-cat{font-family:var(--mono);font-weight:700;font-size:0.82rem;letter-spacing:0.06em;text-transform:uppercase;color:var(--cat,var(--muted));display:flex;align-items:center;gap:8px;margin-bottom:10px}.bin-cat::after{content:"";flex:1;height:1px;background:var(--line)}.bin-pills{display:flex;flex-wrap:wrap;gap:9px}.bin-allin{color:var(--muted);font-size:0.86rem;font-style:italic}.bin-disclose>summary{list-style:none;cursor:pointer;user-select:none;display:flex;align-items:center;gap:8px;font-family:var(--body);font-weight:600;font-size:0.92rem;color:var(--ink);padding:10px 0}.bin-disclose>summary::-webkit-details-marker{display:none}.bin-disclose>summary::after{content:'⌄';margin-left:auto;color:var(--muted);font-size:1.05rem;line-height:1;transition:transform 0.18s ease}.bin-disclose[open]>summary::after{transform:rotate(180deg)}.bin-cats{display:flex;flex-direction:column;gap:4px}details.bin-group>summary{list-style:none;cursor:pointer;user-select:none;margin-bottom:0;padding:9px 0}details.bin-group>summary::-webkit-details-marker{display:none}details.bin-group[open]>summary{margin-bottom:10px}@media (prefers-reduced-motion:reduce){.bin-disclose>summary::after{transition:none}}.dropbag{padding:0;overflow:hidden}.dropbag-toggle{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;background:transparent;border:none;color:var(--ink);cursor:pointer;padding:22px 24px;font-family:inherit;text-align:left}.dropbag-toggle:hover{background:var(--glass)}.dropbag-titles{display:flex;flex-direction:column;gap:3px}.dropbag-h{display:flex;align-items:center;gap:10px;font-family:var(--display);font-weight:700;font-size:1.15rem}.opt-tag{font-family:var(--mono);font-weight:600;font-size:var(--mono-cap);letter-spacing:0.06em;text-transform:uppercase;color:var(--gold);border:1px solid rgba(255,210,63,0.45);border-radius:var(--r-ctl);padding:2px 8px;background:rgba(255,210,63,0.08)}.dropbag-toggle .panel-sub{margin:0}.chev{font-size:1.1rem;color:var(--muted);transition:transform 0.25s ease;flex-shrink:0}.dropbag-toggle[aria-expanded="true"] .chev{transform:rotate(180deg)}.dropbag-body{padding:0 24px 24px;border-top:1px solid var(--line)}.dropbag-body[hidden]{display:none}.dropbag-sub{color:var(--muted);font-size:0.92rem;margin:16px 0 4px}.dropbag .count-badge{color:var(--gold);background:rgba(255,210,63,0.12);border-color:rgba(255,210,63,0.4)}.bags-list{display:flex;flex-direction:column;gap:14px;margin:16px 0 14px}.bag-card{border:1px solid var(--line);border-radius:var(--r-card);padding:14px 16px 16px;background:var(--glass);transition:border-color 0.18s ease}.bag-card.bag-active{border-color:var(--accent);box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 25%,transparent)}.bag-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.bag-title{display:inline-flex;align-items:center;gap:8px;font-family:var(--display);font-weight:700;font-size:0.98rem;white-space:nowrap}.bag-title .ico{width:16px;height:16px;color:var(--gold)}.bag-aid{flex:1 1 220px;min-width:160px;background:var(--glass-2);color:var(--ink);border:1px solid var(--line);border-radius:var(--r-ctl);padding:9px 14px;font-family:var(--body);font-size:0.88rem;cursor:pointer}.bag-aid:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--ring)}.bag-aid:disabled{opacity:0.55;cursor:default}.bag-rm{background:transparent;border:1px solid var(--line);color:var(--muted);border-radius:50%;width:30px;height:30px;cursor:pointer;font-size:1rem;line-height:1;flex-shrink:0;transition:border-color 0.18s ease,color 0.18s ease}.bag-rm:hover{border-color:var(--edge-soft);background:var(--fill-hover);color:var(--ink)}.bag-noaids{color:var(--muted);font-size:0.85rem;font-style:italic;margin:10px 0 0}.bag-card .kit{margin-top:12px}.bag-card .add-row{margin-top:12px}#bag-add-btn{margin-top:2px}#bag-add-btn[hidden]{display:none}.aid-bag{display:inline-flex;align-items:center;gap:2px;margin-left:7px;vertical-align:-2px;color:var(--gold)}.aid-bag svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.aid-bag i{font-style:normal;font-size:0.68rem;font-weight:700}.aid-crew{display:inline-flex;align-items:center;justify-content:center;min-width:17px;height:17px;border-radius:999px;padding:0 5px;margin-left:6px;vertical-align:-3px;font-size:0.62rem;font-weight:700;font-family:var(--display);color:#07120f;background:var(--pc,var(--teal))}.crew-io{display:inline-block;margin-left:7px;font-size:0.68rem;font-weight:700;color:var(--pc,var(--teal));border:1px solid currentColor;border-radius:var(--r-ctl);padding:1px 8px;white-space:nowrap;vertical-align:1px}tr.leg-paced td:first-child{box-shadow:inset 3px 0 0 var(--pc,var(--teal))}.crew-list{display:flex;flex-direction:column;gap:14px;margin:16px 0 14px}.crew-card{border:1px solid var(--line);border-left:3px solid var(--pc,var(--teal));border-radius:var(--r-card);padding:14px 16px 16px;background:var(--glass)}.crew-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.crew-dot{width:10px;height:10px;border-radius:50%;background:var(--pc,var(--teal));flex-shrink:0}.crew-name{flex:1 1 150px;min-width:120px;background:var(--glass-2);color:var(--ink);border:1px solid var(--line);border-radius:var(--r-ctl);padding:9px 14px;font-family:var(--display);font-weight:700;font-size:0.95rem}.crew-name:focus,.crew-contact input:focus{outline:none;border-color:var(--pc,var(--teal));box-shadow:0 0 0 3px var(--ring)}.crew-role{flex-shrink:0}.crew-rm{background:transparent;border:1px solid var(--line);color:var(--muted);border-radius:50%;width:30px;height:30px;cursor:pointer;font-size:1rem;line-height:1;flex-shrink:0;transition:border-color 0.18s ease,color 0.18s ease}.crew-rm:hover{border-color:var(--edge-soft);background:var(--fill-hover);color:var(--ink)}.crew-save-me{display:inline-flex;align-items:center;gap:5px;flex-shrink:0;background:transparent;border:1px solid var(--line);color:var(--muted);border-radius:var(--r-ctl);padding:5px 9px;cursor:pointer;font:600 .74rem var(--body);transition:border-color .18s ease,color .18s ease}.crew-save-me:hover{border-color:var(--edge-soft);background:var(--fill-hover);color:var(--ink)}.crew-save-me .ico{width:13px;height:13px}.crew-add-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.crew-pick{background:var(--glass-2);color:var(--ink);border:1px solid var(--line);border-radius:var(--r-ctl);padding:7px 10px;font:600 .8rem var(--body);cursor:pointer}.crew-pick:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.crew-contact{display:flex;gap:9px;margin-top:10px;flex-wrap:wrap}.crew-contact input{background:var(--glass-2);color:var(--ink);border:1px solid var(--line);border-radius:var(--r-ctl);padding:8px 14px;font-family:var(--body);font-size:0.85rem}.crew-phone{flex:0 1 160px}.crew-email{flex:0 1 200px}.crew-note{flex:1 1 200px}.crew-lbl{color:var(--muted);font-size:0.8rem;font-weight:600;text-transform:uppercase;letter-spacing:0.05em;margin-right:2px;flex-shrink:0}.crew-aids{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-top:12px}.crew-chip{background:var(--glass-2);color:var(--muted);border:1px solid var(--line);border-radius:var(--r-ctl);padding:6px 12px;font-family:var(--body);font-size:0.82rem;cursor:pointer;transition:border-color 0.18s ease,color 0.18s ease}.crew-chip small{color:inherit;opacity:0.7;font-size:0.72rem}.crew-chip:hover{border-color:var(--pc,var(--teal));color:var(--ink)}.crew-chip.on{border-color:var(--pc,var(--teal));color:var(--ink);box-shadow:inset 0 0 0 1px var(--pc,var(--teal))}.crew-chip.gone{border-style:dashed;opacity:0.75}.crew-stint{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-top:12px}.crew-stint-sel{flex:1 1 180px;min-width:150px;background:var(--glass-2);color:var(--ink);border:1px solid var(--line);border-radius:var(--r-ctl);padding:8px 14px;font-family:var(--body);font-size:0.85rem;cursor:pointer}.crew-stint-sel:focus{outline:none;border-color:var(--pc,var(--teal));box-shadow:0 0 0 3px var(--ring)}.crew-stint-sel:disabled{opacity:0.55;cursor:default}.crew-arrow{color:var(--muted);flex-shrink:0}.crew-stint-dist{color:var(--pc,var(--teal));font-size:0.82rem;font-weight:600;white-space:nowrap}.crew-act{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:8px;padding-left:10px;border-left:2px solid var(--ak,var(--line))}.crew-act-pace{--ak:var(--pc,var(--teal))}.crew-act-drive{--ak:var(--gold)}.crew-act-at{--ak:var(--line)}.crew-act-kind{flex:0 0 auto;min-width:104px;background:var(--glass-2);color:var(--ink);border:1px solid var(--ak,var(--line));border-radius:var(--r-ctl);padding:8px 12px;font:600 0.82rem/1 var(--body);cursor:pointer}.crew-act-sel{flex:1 1 170px;min-width:145px;background:var(--glass-2);color:var(--ink);border:1px solid var(--line);border-radius:var(--r-ctl);padding:8px 14px;font-family:var(--body);font-size:0.85rem;cursor:pointer}.crew-act-kind:focus,.crew-act-sel:focus{outline:none;border-color:var(--ak,var(--teal));box-shadow:0 0 0 3px var(--ring)}.crew-act-sel:disabled{opacity:0.55;cursor:default}.crew-act-dist{color:var(--ak,var(--teal));font-size:0.82rem;font-weight:600;white-space:nowrap}.crew-act-rm{flex-shrink:0;margin-left:auto;background:transparent;border:1px solid var(--line);color:var(--muted);border-radius:50%;width:26px;height:26px;cursor:pointer;font-size:0.95rem;line-height:1}.crew-act-rm:hover{color:var(--ink);border-color:var(--edge-soft);background:var(--fill-hover)}.crew-act-empty{color:var(--muted);font-size:0.85rem;font-style:italic;margin-top:10px}.crew-act-add{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.crew-act-add button{background:transparent;border:1px dashed var(--line);color:var(--muted);border-radius:var(--r-ctl);padding:7px 14px;font:600 0.8rem/1 var(--body);cursor:pointer}.crew-act-add button[data-kind="pace"]:hover{color:var(--pc,var(--teal));border-color:var(--pc,var(--teal))}.crew-act-add button[data-kind="drive"]:hover{color:var(--gold);border-color:var(--gold)}.crew-act-add button[data-kind="at"]:hover{color:var(--ink);border-color:var(--ink)}.crew-io svg{width:13px;height:13px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;vertical-align:-2px;margin-right:3px}.crew-head .crew-role-sel{flex:0 0 auto;width:auto;font:600 0.66rem/1 var(--mono);letter-spacing:0.08em;text-transform:uppercase;color:var(--pc,var(--teal));background:var(--glass-2);padding:7px 10px;min-height:30px;cursor:pointer;border:1px solid color-mix(in srgb,var(--pc,var(--teal)) 45%,transparent);border-radius:var(--r-ctl)}.crew-head .crew-role-sel:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.crew-head .crew-role-sel option{color:var(--ink);background:var(--bg-1);text-transform:none}.crew-stops{border:1px solid var(--line);border-radius:var(--r-card);padding:14px 16px 16px;background:var(--glass)}.crew-stops-head .crew-lbl{margin:0}.crew-stops-sub{color:var(--muted);font-size:0.8rem;margin:4px 0 4px}.crew-stop{padding:12px 0;border-top:1px solid var(--line)}.crew-stops-head + .crew-stop{margin-top:8px}.crew-stop-top{display:flex;align-items:baseline;gap:10px}.crew-stop-name{font-family:var(--display);font-size:0.95rem;color:var(--ink)}.crew-stop-mi{color:var(--muted);font:500 0.78rem/1 var(--mono);font-variant-numeric:tabular-nums}.crew-stop-who{display:flex;align-items:center;gap:6px 8px;flex-wrap:wrap;margin-top:8px}.crew-stop-p{display:inline-flex;align-items:center;gap:6px;font-size:0.82rem;color:var(--ink);border:1px solid var(--line);border-radius:var(--r-ctl);padding:5px 10px}.crew-stop-p .crew-dot{width:8px;height:8px}.crew-stop-p small{color:var(--muted);font-size:0.74rem}.crew-stops .crew-stop-assign,.crew-stops .crew-stop-add select{width:auto;background:transparent;color:var(--muted);border:1px dashed var(--line);border-radius:var(--r-ctl);padding:6px 10px;font:600 0.78rem/1 var(--body);cursor:pointer;min-height:30px}.crew-stops .crew-stop-assign:hover,.crew-stops .crew-stop-add select:hover{color:var(--ink);border-color:var(--edge-soft)}.crew-stop-fields{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-top:10px}.crew-stop-u{color:var(--muted);font:600 0.7rem/1 var(--mono);letter-spacing:0.08em;text-transform:uppercase}.crew-stop-drive{display:inline-flex;align-items:center;gap:7px;flex:0 0 auto}.crew-stops .crew-stop-min{width:72px;flex:0 0 auto;background:var(--glass-2);color:var(--ink);border:1px solid var(--line);border-radius:var(--r-ctl);padding:8px 10px;font:600 0.9rem/1 var(--mono);font-variant-numeric:tabular-nums;text-align:right}.crew-stops .crew-stop-park{flex:1 1 240px;min-width:0;background:var(--glass-2);color:var(--ink);border:1px solid var(--line);border-radius:var(--r-ctl);padding:9px 12px;font:0.85rem var(--body)}.crew-stops .crew-stop-min:focus,.crew-stops .crew-stop-park:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--ring)}.crew-stops .crew-stop-assign:focus-visible,.crew-stops .crew-stop-add select:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.crew-stop-add{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding-top:12px;border-top:1px solid var(--line)}.crew-stop-add-at{color:var(--muted);font-size:0.82rem}.crew-noaids{color:var(--muted);font-size:0.85rem;font-style:italic;margin:12px 0 0}.crew-stops .crew-stop-todo,.crew-stops .crew-stop-planb{flex:1 1 240px;min-width:0;background:var(--glass-2);color:var(--ink);border:1px solid var(--line);border-radius:var(--r-ctl);padding:9px 12px;font:0.85rem var(--body)}.crew-stops .crew-stop-todo:focus,.crew-stops .crew-stop-planb:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--ring)}.crew-stop-more{margin-top:8px}.crew-stop-spot{margin-top:8px}.crew-stops .crew-stop-spotin{flex:1 1 240px;min-width:0;background:var(--glass-2);color:var(--ink);border:1px solid var(--line);border-radius:var(--r-ctl);padding:9px 12px;font:0.82rem var(--mono)}.crew-stops .crew-stop-spotin:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--ring)}.crew-stop-spot-hint{color:var(--muted);font-size:0.78rem;margin:6px 0 0;overflow-wrap:anywhere}.crew-stop-spot-hint[hidden]{display:none}.crew-stop-pin{white-space:normal;text-align:left}.crew-stop-usual[hidden]{display:none}.crew-pacer,.crew-plan{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-top:10px}.crew-pacer input,.crew-plan input{flex:1 1 200px;min-width:0;background:var(--glass-2);color:var(--ink);border:1px solid var(--line);border-radius:var(--r-ctl);padding:8px 14px;font:0.85rem var(--body)}.crew-pacer input:focus,.crew-plan input:focus{outline:none;border-color:var(--pc,var(--teal));box-shadow:0 0 0 3px var(--ring)}.crew-pacer .crew-stop-u,.crew-plan .crew-stop-u{flex:0 0 78px}.crew-guide-mark{flex:1 1 100%;margin-left:87px;color:var(--muted);font-size:0.78rem;line-height:1.4}.crew-guide-mark[hidden]{display:none}.crew-runner{--pc:var(--orange)}.crew-runner-lbl{font-family:var(--mono);font-weight:800;font-size:0.72rem;letter-spacing:0.12em;color:var(--orange);border:1px solid rgba(255,122,26,0.45);border-radius:var(--r-ctl);padding:5px 11px;flex-shrink:0}.crew-runner-sub{color:var(--muted);font-size:0.8rem;margin:10px 0 0}#crew-add-btn[hidden]{display:none}@media (max-width:560px){.kit-head{align-items:flex-start}.add-row{flex-direction:column}.add-row button{padding:11px 20px}.bag-head{align-items:stretch}.bag-aid{flex-basis:100%;order:3}.bag-title{flex:1}.crew-head{align-items:stretch}.crew-name{flex-basis:100%;order:-1}.crew-contact input{flex-basis:100%}.crew-stops .crew-stop-park,.crew-stops .crew-stop-todo,.crew-stops .crew-stop-planb,.crew-stops .crew-stop-spotin{flex-basis:100%;min-height:44px}.crew-pacer input,.crew-plan input{flex-basis:100%;min-height:44px}.crew-pacer .crew-stop-u,.crew-plan .crew-stop-u{flex-basis:100%}.crew-guide-mark{margin-left:0}.crew-head .crew-role-sel,.crew-stops .crew-stop-assign,.crew-stops .crew-stop-add select,.crew-stops .crew-stop-min,.crew-stops .crew-stop-park{min-height:44px}.crew-stops .crew-stop-add select{flex:1 1 100%}.crew-stint-sel{flex-basis:100%}.crew-arrow{display:none}}@media (prefers-reduced-motion:reduce){.pill,.pill.pop{animation:none;transition:none}}
/* /live-setup.css */
.live-setup{margin-top:14px}.live-setup[hidden]{display:none}.live-setup-card{--pc:var(--c-crew)}.ls-h{font:700 0.95rem/1.3 var(--display);color:var(--ink)}.crew-plan .ls-pw{flex:0 1 220px}.crew-plan .ls-bib{flex:0 0 96px;font-family:var(--mono);font-variant-numeric:tabular-nums}.ls-sub{color:var(--muted);font-size:0.8rem;line-height:1.45;margin:8px 0 0}.ls-num{color:var(--ink);font-family:var(--mono);font-weight:600;font-variant-numeric:tabular-nums}.ls-check{display:flex;align-items:flex-start;gap:10px;margin-top:12px;color:var(--ink-soft,var(--ink));font-size:0.85rem;line-height:1.45;cursor:pointer}.ls-check input{flex:0 0 auto;width:18px;height:18px;margin:2px 0 0;accent-color:var(--c-crew)}.ls-foot{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:14px}.ls-foot .export-btn{min-height:44px}.ls-status{color:var(--muted);font-size:0.82rem}.ls-hint[hidden]{display:none}.ls-hint-bad{color:var(--warn)}@media (max-width:560px){.crew-plan .ls-pw,.crew-plan .ls-bib{flex-basis:100%}.ls-check{min-height:44px}}
/* /debrief.css */
.dbf{min-width:0}.dbf-headline{font-size:0.98rem;margin:10px 0 12px;color:var(--ink)}.dbf-headline b{font-family:var(--mono);font-variant-numeric:tabular-nums}.dbf-d.is-early{color:var(--ok);font-weight:700}.dbf-d.is-late{color:var(--bad);font-weight:700}.dbf-h{font:500 max(0.72rem,var(--mono-cap)) var(--mono);letter-spacing:0.1em;text-transform:uppercase;color:var(--muted);margin:20px 0 8px}.dbf-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:4px 0 6px}.dbf-stat{border:1px solid var(--line);border-radius:var(--r-card);padding:8px 10px;min-width:0;background:var(--glass-2)}.dbf-stat-k{font-size:max(0.66rem,var(--mono-cap));color:var(--muted)}.dbf-stat-v{font-size:1.15rem;font-weight:700;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:2px}.dbf-stat-v small{font-size:0.72rem;font-weight:500;color:var(--muted);margin-left:3px;letter-spacing:0.06em}.dbf-stat-sub{font:500 0.74rem var(--mono);color:var(--muted);font-variant-numeric:tabular-nums}.dbf-stat.is-late .dbf-stat-v{color:var(--bad)}.dbf-stat.is-early .dbf-stat-v{color:var(--ok)}.dbf-chart{margin:4px 0 2px}.dbf-plot{display:grid;grid-template-columns:58px minmax(0,1fr)}.dbf-yaxis{position:relative}.dbf-yt{position:absolute;right:8px;transform:translateY(-50%);font-size:0.7rem;color:var(--muted);white-space:nowrap}.dbf-canvas{position:relative;height:190px;border-left:1px solid var(--line);border-bottom:1px solid var(--line)}.dbf-canvas svg{position:absolute;inset:0;width:100%;height:100%;display:block;overflow:visible}.dbf-grid{stroke:var(--line);stroke-width:1;vector-effect:non-scaling-stroke}.dbf-grid.is-zero{stroke:var(--edge);stroke-dasharray:5 4}.dbf-area{stroke:none}.dbf-area.is-early{fill:color-mix(in srgb,var(--ok) 20%,transparent)}.dbf-area.is-late{fill:color-mix(in srgb,var(--bad) 20%,transparent)}.dbf-line{fill:none;stroke:var(--gold);stroke-width:2.2;vector-effect:non-scaling-stroke;stroke-linejoin:round}.dbf-dot{position:absolute;width:9px;height:9px;margin:-4.5px 0 0 -4.5px;border-radius:50%;background:var(--bg-1);border:2px solid var(--gold);box-sizing:border-box}.dbf-dot.is-early{border-color:var(--ok)}.dbf-dot.is-late{border-color:var(--bad)}.dbf-tag{position:absolute;left:8px;font:500 max(0.62rem,var(--mono-cap)) var(--mono);letter-spacing:0.1em;text-transform:uppercase;color:var(--muted);pointer-events:none}.dbf-tag.is-up{top:6px}.dbf-tag.is-dn{bottom:6px}.dbf-xaxis{position:relative;height:20px;margin-left:58px;font-size:0.7rem;color:var(--muted)}.dbf-xaxis span{position:absolute;top:4px;transform:translateX(-50%);white-space:nowrap}.dbf-xaxis span:first-child{transform:none}.dbf-xaxis span.is-end{transform:translateX(-100%)}.dbf-notes{margin:8px 0 0;font-size:0.86rem;color:var(--muted);line-height:1.6}.dbf-notes b{color:var(--ink);font-weight:600}.dbf-notes .dbf-d{font-family:var(--mono)}.dbf-sep{margin:0 8px}.dbf-scroll{overflow-x:auto}.dbf-table{width:100%;border-collapse:collapse;font-size:0.88rem}.dbf-table th{text-align:left;color:var(--muted);font:500 max(0.68rem,var(--mono-cap)) var(--mono);letter-spacing:0.1em;text-transform:uppercase;padding:6px 10px;border-bottom:1px solid var(--line);white-space:nowrap}.dbf-table th:not(:first-child),.dbf-table td:not(:first-child){text-align:right;white-space:nowrap}.dbf-table td:not(:first-child){font-family:var(--mono);font-variant-numeric:tabular-nums}.dbf-table td{padding:8px 10px;border-bottom:1px solid var(--line);vertical-align:baseline}.dbf-table tbody tr:nth-child(even){background:rgba(255,255,255,0.03)}.dbf-table tbody tr:hover{background:var(--fill-hover)}.dbf-table td small{font-size:0.74rem;color:var(--muted);font-weight:500;margin-left:4px}.dbf-table td small.dbf-d.is-early{color:var(--ok)}.dbf-table td small.dbf-d.is-late{color:var(--bad)}.dbf-cp{font-weight:600;color:var(--ink)}.dbf-at{display:block;color:var(--muted);font:500 0.74rem var(--mono);font-variant-numeric:tabular-nums;margin-top:1px}.dbf-at .u,.dbf-table .u{font-size:0.8em;letter-spacing:0.08em;text-transform:uppercase}.dbf-table tr.is-miss td{color:var(--muted)}.dbf-table tr.is-total td{font-weight:700;border-top:1px solid var(--edge-soft)}.dbf-fine{margin:8px 0 0;font-size:0.8rem;color:var(--muted);line-height:1.55}.dbf-fine a{color:var(--accent)}.dbf-save{margin-top:16px;padding:12px 14px;border:1px solid var(--line);border-radius:var(--r-card);background:var(--glass)}.dbf-consent{display:flex;align-items:flex-start;gap:10px;font-size:0.88rem;color:var(--ink);cursor:pointer;line-height:1.45}.dbf-consent input{flex:none;width:18px;height:18px;margin:1px 0 0;accent-color:var(--accent)}.dbf-save-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:10px}.dbf-save-row .export-btn{display:inline-flex;align-items:center;gap:7px}.dbf-save-row .tg-goat{width:18px;height:18px;object-fit:contain}.dbf-saved{margin:0;font-size:0.88rem;color:var(--muted)}.dbf-saved b{color:var(--ok)}.dbf-saved a{color:var(--accent)}.dbf-link{flex:1 1 240px;min-width:0;font:500 0.82rem var(--mono);padding:8px 10px}.dbf-wrap{max-width:980px}.dbf-hero{margin:18px 0 18px}.dbf-hero h1{font-family:var(--display);font-weight:800;font-size:clamp(1.6rem,4vw,2.4rem);line-height:1.1;letter-spacing:-0.02em;margin:0}.dbf-meta{margin:8px 0 0;color:var(--muted);font:500 0.86rem var(--mono);font-variant-numeric:tabular-nums}.dbf-verdict{margin:10px 0 0;font-size:1.05rem;color:var(--ink);max-width:44rem}.dbf-verdict a{color:var(--accent)}.dbf-card{padding:18px 20px}.dbf-card .dbf-headline{margin-top:0}.dbf-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:18px 0 6px}.dbf-delete{margin-left:auto;background:none;color:var(--muted);border:1px solid transparent;border-radius:var(--r-ctl);padding:9px 14px;font:600 0.84rem var(--body);cursor:pointer}.dbf-delete:hover{border-color:var(--edge-soft);background:var(--fill-hover);color:var(--coral)}.dbf-delete[hidden]{display:none}.dbf-about{max-width:44rem}@media (max-width:860px){.dbf-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.dbf-save-row .export-btn,.dbf-delete{min-height:44px}.dbf-consent input{width:22px;height:22px}.dbf-canvas{height:160px}.dbf-plot{grid-template-columns:50px minmax(0,1fr)}.dbf-xaxis{margin-left:50px}}@media (max-width:600px){.dbf-table thead{display:none}.dbf-table,.dbf-table tbody{display:block}.dbf-table tr{display:flex;flex-wrap:wrap;align-items:baseline;column-gap:14px;row-gap:3px;padding:10px 4px;border-bottom:1px solid var(--line)}.dbf-table td{display:block;padding:0;border:0;text-align:left!important}.dbf-table td:first-child{flex:1 1 100%}.dbf-table td[data-k]::before{content:attr(data-k) " ";color:var(--muted);font:500 max(0.62rem,var(--mono-cap)) var(--mono);letter-spacing:0.08em;text-transform:uppercase;margin-right:3px}.dbf-table tr.is-total td{border-top:0}.dbf-delete{margin-left:0}.dbf-card{padding:14px}.dbf-xaxis span.is-near{display:none}}
/* /predictor.css */
.fp-open-block{align-self:flex-end}.fp-open{min-height:40px}.fp-open[aria-expanded="true"]{background:var(--fill-selected)}.fp{position:relative;margin:4px 0 12px;padding:12px 14px 14px;border:1px solid var(--line);border-radius:var(--r-card);background:var(--fill-idle)}.fp[hidden],.fp [hidden]{display:none!important}.fp.is-busy .fp-out{opacity:0.6;transition:opacity var(--dur-ctl,150ms) var(--ease-snap,ease-out)}.fp-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.fp-title{margin:0;font:700 1rem var(--display);color:var(--ink)}.fp-close{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;margin:-6px -8px -6px 0;padding:0;background:none;border:0;border-radius:var(--r-ctl);color:var(--muted);cursor:pointer;touch-action:manipulation}.fp-close:hover{color:var(--ink);background:var(--fill-hover)}.fp-close:focus-visible,.fp-remove:focus-visible,.fp-offer:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.fp-close .ico,.fp-remove .ico{width:16px;height:16px}.fp-sub{margin:4px 0 10px;font-size:0.84rem;line-height:1.5;color:var(--muted)}.fp-sub .inline-link{white-space:nowrap}.fp-races{list-style:none;margin:0 0 8px;padding:0;border:1px solid var(--line);border-radius:var(--r-card);background:var(--bg-1)}.fp-race{display:grid;grid-template-columns:minmax(0,1fr) auto auto auto;align-items:end;gap:10px;padding:8px 10px}.fp-race + .fp-race{border-top:1px solid var(--line)}.fp-race-name{min-width:0;align-self:center}.fp-race-name b{display:block;font-weight:600;font-size:0.9rem;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fp-race-name small{display:block;margin-top:1px;font:500 0.74rem/1.3 var(--mono);letter-spacing:0.04em;color:var(--muted);font-variant-numeric:tabular-nums}.fp-field{display:flex;flex-direction:column;gap:3px}.fp-field .data-label{font-size:var(--mono-cap,11px);color:var(--muted)}.fp-field select,.fp-field input,.fp-search input{min-height:38px;padding:6px 10px;color:var(--ink);background:var(--glass-2,var(--bg-2));border:1px solid var(--line);border-radius:var(--r-ctl);font:inherit;font-size:0.9rem}.fp-field input{width:6.5em;font-family:var(--mono);font-variant-numeric:tabular-nums}.fp-field select{color-scheme:dark;max-width:9em}html.theme-firstlight .fp-field select{color-scheme:light}.fp-field select:focus,.fp-field input:focus,.fp-search input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--ring)}.fp-field input[aria-invalid="true"]{border-color:var(--warn)}.fp-remove{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;padding:0;background:none;border:1px solid transparent;border-radius:var(--r-ctl);color:var(--muted);cursor:pointer;touch-action:manipulation}.fp-remove:hover{color:var(--ink);border-color:var(--edge-soft);background:var(--fill-hover)}.fp-hint,.fp-full,.fp-msg,.fp-used{margin:0 0 8px;font-size:0.82rem;line-height:1.45;color:var(--muted)}.fp-add{display:flex;flex-direction:column;gap:5px;margin-bottom:8px}.fp-search{position:relative}.fp-search input{width:100%;min-height:44px;box-sizing:border-box}.fp-search input:disabled{opacity:0.55}.fp .rd-results{position:absolute;z-index:30;left:0;right:0;top:calc(100% + 4px);list-style:none;margin:0;padding:4px;max-height:300px;overflow-y:auto;background:var(--bg-1);border:1px solid var(--edge-soft);border-radius:var(--r-card);box-shadow:var(--shadow-pop)}.fp .rd-result{display:flex;flex-direction:column;gap:1px;padding:8px 10px;min-height:44px;justify-content:center;border-radius:var(--r-ctl);cursor:pointer}.fp .rd-result b{color:var(--ink);font-size:0.9rem;font-weight:600}.fp .rd-result small{color:var(--muted);font-size:0.76rem}.fp .rd-result:hover,.fp .rd-result[aria-selected="true"]{background:var(--fill-hover)}.fp .rd-result[aria-selected="true"] b{color:var(--accent)}.fp .rd-result-note{color:var(--muted);font-size:0.84rem;padding:10px}.fp-offers{display:flex;flex-direction:column;gap:6px;margin-bottom:10px}.fp-offers>.data-label{font-size:var(--mono-cap,11px);color:var(--muted)}.fp-offer-list{display:flex;flex-wrap:wrap;gap:6px}.fp-offer{display:inline-flex;align-items:center;gap:7px;min-height:36px;padding:5px 11px 5px 8px;background:var(--fill-idle);color:var(--ink);border:1px solid var(--edge);border-radius:var(--r-ctl);font:600 0.82rem var(--body);cursor:pointer;touch-action:manipulation}.fp-offer:hover{background:var(--fill-hover)}.fp-offer .ico{width:13px;height:13px;color:var(--accent)}.fp-offer .data{font-weight:500;color:var(--muted)}.fp-out{padding-top:10px;border-top:1px solid var(--line)}.fp-fig{display:flex;align-items:baseline;flex-wrap:wrap;gap:6px 12px}.fp-fig>.data-label,.fp-range-line .data-label{font-size:var(--mono-cap,11px);color:var(--muted)}.fp-sec{font-size:1.6rem;font-weight:700;line-height:1.1;color:var(--ink-bright,var(--ink))}.fp-ev{padding:2px 8px;border:1px solid var(--edge-soft);border-radius:var(--r-ctl);background:var(--fill-hover);font:500 var(--mono-cap,11px)/1.4 var(--mono);letter-spacing:0.1em;text-transform:uppercase;color:var(--ink)}.fp-ev[data-ev="thin"]{border-color:color-mix(in srgb,var(--warn) 55%,transparent);color:var(--warn)}.fp-range-line{margin:4px 0 0;font-size:0.95rem}.fp-range-line .data{color:var(--ink);font-weight:600}.fp-why{margin:6px 0 0;font-size:0.86rem;line-height:1.45;color:var(--ink)}.fp-note{margin:6px 0 0;padding:7px 10px;border-left:3px solid color-mix(in srgb,var(--warn) 65%,transparent);border-radius:0 var(--r-ctl) var(--r-ctl) 0;background:var(--fill-idle);font-size:0.82rem;line-height:1.45;color:var(--ink)}.fp-actions{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0 6px}.fp-used{margin-top:2px}.fp-how{margin-top:6px}.fp-how>summary{display:inline-flex;align-items:center;min-height:36px;cursor:pointer;font-size:0.84rem;font-weight:600;color:var(--muted)}.fp-how>summary:hover{color:var(--ink)}.fp-how>summary:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:3px}.fp-table th[scope="row"]{font-weight:600;color:var(--ink);text-transform:none;letter-spacing:0;font-family:var(--body);font-size:0.86rem}.fp-table td:nth-child(3){font-family:var(--body);white-space:normal;text-align:left;color:var(--muted);font-size:0.82rem}.fp-table thead th:nth-child(3){text-align:left}.fp-yr{margin-left:6px;color:var(--muted);font-weight:500;font-size:0.78rem}@media (max-width:860px){.fp-open{min-height:44px}.fp-field select,.fp-field input,.fp-remove,.fp-offer{min-height:44px}.fp-remove{width:44px;height:44px}.fp-close{width:44px;height:44px}.fp-actions .export-btn{min-height:44px;flex:1 1 auto}.fp-how>summary{min-height:44px}}@media (max-width:600px){.fp{padding:10px 12px 12px}.fp-race{grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto}.fp-race-name{grid-column:1 / -1}.fp-field input,.fp-field select{width:100%;max-width:none;box-sizing:border-box}.fp-table thead{display:none}.fp-table,.fp-table tbody{display:block}.fp-table tr{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px 8px;padding:10px 4px;border-bottom:1px solid var(--line)}.fp-table th,.fp-table td{display:block;padding:0;border:0;text-align:left!important;min-width:0}.fp-table th[scope="row"]{grid-column:1 / -1}.fp-table td:nth-child(3){grid-column:1 / -1;order:9}.fp-table td::before{content:attr(data-l);display:block;margin-bottom:2px;font:500 var(--mono-cap,12px)/1.2 var(--mono);letter-spacing:0.08em;text-transform:uppercase;color:var(--muted)}.fp-table td:nth-child(3)::before{display:none}}@media (prefers-reduced-motion:reduce){.fp.is-busy .fp-out{transition:none}}
/* /multiday.css */
.md-legend{display:flex;flex-wrap:wrap;gap:6px 14px;margin:10px 0 4px;padding:0;list-style:none;font:500 var(--mono-cap,11px)/1.4 var(--mono);letter-spacing:0.06em;text-transform:uppercase;color:var(--muted)}.md-legend li{display:inline-flex;align-items:center;gap:6px}.md-key{display:inline-block;width:14px;height:8px;border-radius:2px}.md-key-move{background:var(--c-course);height:4px}.md-key-stop{background:var(--c-aid)}.md-key-sleep{background:color-mix(in srgb,var(--c-gear) 75%,transparent)}.md-key-night{background:var(--bg-well);border:1px solid var(--line)}.md-key-cutoff{width:2px;height:12px;background:var(--warn)}.md-days{display:flex;flex-direction:column;gap:10px;margin-top:8px}.md-day{padding:10px 12px 8px;border:1px solid var(--line);border-radius:var(--r-card);background:var(--fill-idle)}.md-day-h{display:flex;align-items:baseline;gap:8px;margin-bottom:6px}.md-day-n{font:700 0.95rem var(--display);color:var(--ink)}.md-day-wd{font:500 var(--mono-cap,11px) var(--mono);letter-spacing:0.08em;text-transform:uppercase;color:var(--muted)}.md-day-d{margin-left:auto;font:600 0.82rem var(--mono);font-variant-numeric:tabular-nums;color:var(--ink)}.md-track{position:relative;height:26px;border-radius:var(--r-ctl);background:var(--bg-1);border:1px solid var(--line-faint);overflow:hidden}.md-track>span{position:absolute;top:0;bottom:0}.md-off{background:repeating-linear-gradient(135deg,transparent 0 4px,var(--line-faint) 4px 5px)}.md-night{background:var(--bg-well)}.md-move{top:11px!important;bottom:auto!important;height:4px;border-radius:2px;background:var(--c-course)}.md-stop{top:6px!important;bottom:6px!important;background:var(--c-aid);border-radius:2px;min-width:2px}.md-sleep{top:4px!important;bottom:4px!important;border-radius:3px;background:color-mix(in srgb,var(--c-gear) 75%,transparent);box-shadow:inset 0 0 0 1px var(--c-gear)}.md-mark{width:0}.md-mark-stop{top:8px!important;bottom:8px!important;border-left:1px solid color-mix(in srgb,var(--ink) 55%,transparent)}.md-mark-cutoff{border-left:2px solid var(--warn)}.md-mark-cutoff.is-missed{border-left-color:var(--bad)}.md-ticks{position:relative;height:14px;margin-top:2px}.md-tick{position:absolute;top:0;transform:translateX(-50%);font:500 10px/14px var(--mono);font-variant-numeric:tabular-nums;color:var(--faint);white-space:nowrap}.md-tick:first-child{transform:none}.md-day-line{margin:4px 0 0;font-size:0.82rem;line-height:1.5;color:var(--muted)}.aid-dwell.aid-sleep{border-color:color-mix(in srgb,var(--c-gear) 50%,transparent);color:var(--c-gear)}.aid-dwell.aid-sleep.is-add{border-style:dashed;color:var(--muted);border-color:var(--line)}.aid-dwell.aid-sleep.is-add:hover,.aid-dwell.aid-sleep.is-add:focus-visible{color:var(--ink);border-color:color-mix(in srgb,var(--c-gear) 55%,transparent)}#sleep-note{color:var(--muted)}.sleep-add{margin-top:6px}@media (max-width:600px){.md-day{padding:9px 10px 7px}#raceplan-table .aid-dwell.aid-sleep{order:7;margin-top:0}}.sleep-add #sleep-dist{flex:0 0 80px}.sleep-add #sleep-len{flex:1 1 140px}.sleep-add[hidden]{display:none}.wp-box{margin-top:16px;padding:12px 14px 14px;border:1px solid var(--line);border-radius:var(--r-card);background:var(--fill-idle)}.wp-box[hidden],.wp-box [hidden]{display:none!important}.wp-box .col-head{margin:0 0 4px;border:0;padding:0}.wp-sub{margin:0 0 10px;color:var(--muted);font-size:0.86rem;line-height:1.5}.wp-box .export-btn{min-height:44px}.wp-status,.wp-carry{margin:8px 0 0;font-size:0.84rem;line-height:1.5;color:var(--muted)}.wp-status:empty,.wp-carry:empty{display:none}.wp-carry{color:var(--ink)}.wp-list{list-style:none;margin:10px 0 0;padding:0;border:1px solid var(--line);border-radius:var(--r-card);background:var(--bg-1);max-height:420px;overflow-y:auto}.wp-list:empty{display:none}.wp-row{display:grid;grid-template-columns:18px minmax(0,1fr) auto auto;align-items:center;gap:10px;padding:8px 10px}.wp-row + .wp-row{border-top:1px solid var(--line)}.wp-ico{width:16px;height:16px;color:var(--c-aid)}.wp-row.is-shop .wp-ico,.wp-row.is-camp .wp-ico{color:var(--muted)}.wp-what{min-width:0}.wp-what b{display:block;font-weight:600;font-size:0.9rem;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wp-what small{display:block;margin-top:1px;font:500 0.74rem/1.35 var(--mono);font-variant-numeric:tabular-nums;color:var(--muted)}.wp-pot{padding:1px 7px;border:1px solid var(--line);border-radius:var(--r-ctl);font:500 0.7rem/1.5 var(--mono);white-space:nowrap;color:var(--muted)}.wp-pot.is-yes{color:var(--ok);border-color:color-mix(in srgb,var(--ok) 45%,transparent)}.wp-pot.is-treat{color:var(--warn);border-color:color-mix(in srgb,var(--warn) 50%,transparent)}.wp-add{min-height:36px;padding:0 12px;border:1px solid var(--edge-soft);border-radius:var(--r-ctl);background:none;color:var(--ink);font:600 0.8rem var(--body);cursor:pointer}.wp-add:hover{background:var(--fill-hover)}.wp-add:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.wp-added{font:500 0.74rem var(--mono);color:var(--ok);letter-spacing:0.04em}@media (max-width:600px){.wp-list{max-height:none;overflow:visible}.wp-row{grid-template-columns:18px minmax(0,1fr) auto;row-gap:6px}.wp-pot{grid-column:2;justify-self:start}.wp-add,.wp-added{grid-column:3;grid-row:1 / span 2;min-height:44px}}
/* /nav.css */
.ico{width:15px;height:15px;flex:0 0 auto;vertical-align:-0.18em}.ico path,.ico circle,.ico rect,.ico line,.ico polyline{fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}.nav-ico .ico{width:13px;height:13px}.nav-search .ico,.nav-gear .ico{width:16px;height:16px}.nav a[aria-current="page"]{color:var(--accent);background:var(--fill-selected)}.nav-group{position:relative;display:inline-flex}.nav-caret{display:inline-flex;margin-left:5px;opacity:0.65;transition:transform 0.15s ease}.nav-caret svg{width:10px;height:10px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}.nav-group-btn[aria-expanded="true"] .nav-caret{transform:rotate(180deg)}.nav .nav-group-here{color:var(--ink);background:var(--glass,rgba(255,255,255,0.045))}@media (min-width:861px){.nav-group-menu{position:absolute;top:calc(100% + 6px);left:0;z-index:2100;min-width:220px;padding:6px;background:color-mix(in srgb,var(--bg-1,#0a1a1c) 96%,#ffffff 4%);border:1px solid var(--line);border-radius:var(--r-card);box-shadow:var(--shadow-pop);transform-origin:top left;animation:tg-pop-in var(--dur-layer) var(--ease-snap)}.nav .nav-group-menu a{display:flex;align-items:center;width:100%;padding:9px 12px;border-radius:var(--r-ctl)}.nav .nav-group-menu a small{margin-left:6px;color:var(--muted);font-weight:500}}@media (max-width:860px){.nav-group,.nav-group-menu,.nav-group-menu[hidden]{display:contents}.nav-caret{display:none}.topbar .topbar-tools .nav .nav-group-menu a{padding-left:36px;min-height:42px;font-size:0.95rem}.topbar .topbar-tools .nav a small{margin-left:6px;color:var(--muted);font-weight:500}}.nav-burger{display:none}@media (max-width:860px){.topbar{position:sticky;top:0;z-index:2000;flex-wrap:nowrap;padding-top:10px;padding-bottom:10px;background:color-mix(in srgb,var(--bg-0,#07120f) 86%,transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){.topbar,.section-chips{background:var(--bg-0,#07120f)}}.nav-burger{display:inline-flex;align-items:center;justify-content:center;order:10;flex:0 0 auto;width:44px;height:44px;margin:-4px 0;background:transparent;border:none;border-radius:var(--r-ctl);cursor:pointer;color:var(--ink)}.nav-burger:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.nav-burger-box{position:relative;width:20px;height:14px;display:block}.nav-burger-box span{position:absolute;left:0;width:20px;height:2px;border-radius:2px;background:currentColor;transition:transform 0.2s ease,opacity 0.15s ease,top 0.2s ease}.nav-burger-box span:nth-child(1){top:0}.nav-burger-box span:nth-child(2){top:6px}.nav-burger-box span:nth-child(3){top:12px}.menu-open .nav-burger-box span:nth-child(1){top:6px;transform:rotate(45deg)}.menu-open .nav-burger-box span:nth-child(2){opacity:0}.menu-open .nav-burger-box span:nth-child(3){top:6px;transform:rotate(-45deg)}.topbar-mascot{display:inline-flex;margin-right:auto}.topbar-tools{display:none;position:absolute;top:calc(100% + 8px);left:12px;right:12px;flex-direction:column;align-items:stretch;gap:4px;flex-wrap:nowrap;justify-content:flex-start;padding:8px;background:color-mix(in srgb,var(--bg-1,#0a1a1c) 96%,#ffffff 4%);border:1px solid var(--line);border-radius:var(--r-card);box-shadow:var(--shadow-pop);max-height:calc(100dvh - 90px);overflow-y:auto}.topbar.menu-open .topbar-tools{display:flex;transform-origin:top center;animation:tg-pop-in var(--dur-layer) var(--ease-snap)}.topbar .topbar-tools .nav{display:flex;flex-direction:column;align-items:stretch;flex-wrap:nowrap;gap:2px}.topbar .topbar-tools .nav a{display:flex;align-items:center;min-height:46px;padding:10px 14px;border-radius:var(--r-ctl);font-size:1rem;font-weight:600}.topbar .topbar-tools .nav a[aria-current="page"]{color:var(--accent)}.topbar .topbar-tools .nav a:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.topbar-tools .unit-toggle{display:flex;width:100%}.topbar-tools .unit-toggle button{flex:1 1 0;padding-top:10px;padding-bottom:10px}.topbar-tools .unit-toggle:first-of-type{margin-top:6px;border-radius:var(--r-ctl)}.topbar-tools .unit-toggle:first-of-type::before{display:none}.topbar-tools .unit-toggle + .unit-toggle{border-radius:var(--r-ctl)}body.nav-open::after{content:"";position:fixed;inset:0;z-index:1900;background:rgba(4,10,8,0.45)}}@media (prefers-reduced-motion:reduce){.topbar.menu-open .topbar-tools{animation:none}.nav-burger-box span{transition:none}}.section-chips{display:none}.section-chip{flex:0 0 auto;white-space:nowrap;min-height:36px;padding:6px 14px;background:var(--fill-idle);color:var(--muted);border:1px solid var(--line);border-radius:var(--r-ctl);font:inherit;font-family:var(--body);font-size:0.82rem;font-weight:600;cursor:pointer;transition:box-shadow 0.25s ease,background 0.25s ease,border-color 0.25s ease}.section-chip:hover{color:var(--ink);background:var(--fill-hover);border-color:var(--edge-soft)}.section-chip[aria-current],.section-chip.tg-here{color:var(--accent);border-color:transparent;background:var(--here-bg);transition:none}.section-chip:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.section-chips::-webkit-scrollbar{display:none}@media (max-width:860px){.section-chip{min-height:40px}.section-chips{position:sticky;z-index:1890;top:63px;display:flex;gap:8px;padding:8px 16px 10px;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;background:color-mix(in srgb,var(--bg-0,#07120f) 86%,transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}.section-chips[hidden]{display:none}.section-chips.chips-more-right{-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 44px),transparent);mask-image:linear-gradient(90deg,#000 calc(100% - 44px),transparent)}.section-chips.chips-more-left{-webkit-mask-image:linear-gradient(270deg,#000 calc(100% - 44px),transparent);mask-image:linear-gradient(270deg,#000 calc(100% - 44px),transparent)}.section-chips.chips-more-left.chips-more-right{-webkit-mask-image:linear-gradient(90deg,transparent,#000 44px,#000 calc(100% - 44px),transparent);mask-image:linear-gradient(90deg,transparent,#000 44px,#000 calc(100% - 44px),transparent)}}@media (min-width:861px){body.split-page .split-right>.section-chips{display:flex;flex-wrap:wrap;justify-content:center;gap:7px;position:sticky;top:0;z-index:7;margin:0;padding:10px 12px;background:var(--bg-0,#07120f);border:1px solid var(--line);border-radius:var(--r-card)}body.split-page .split-right>.section-chips[hidden]{display:none}body.split-page .split-right>.section-chips .section-chip{padding:6px 10px;font-size:0.8rem}body.split-page .split-right>.section-chips{transition:opacity 0.28s ease,transform 0.28s ease}body.split-page .split-right>.section-chips.rd-actions-hidden{opacity:0;transform:translateY(-10px);pointer-events:none}}@media (prefers-reduced-motion:reduce){body.split-page .split-right>.section-chips.rd-actions-hidden{transform:none}}.topbar-mascot{display:none;align-items:center;gap:1px;margin-left:8px;flex:0 0 auto}@media (max-width:860px){.topbar-mascot{display:inline-flex}}.topbar-goat{height:32px;width:auto;display:block;animation:tg-mini-bob 3.2s ease-in-out infinite}.topbar-mascot.goat-led .topbar-goat{animation:tg-mini-bob 3.2s ease-in-out infinite,tg-mini-led 2.2s linear 1}.topbar-dust{width:14px;height:14px;fill:var(--muted);flex:0 0 auto;order:-1;animation:tg-mini-dust 1.6s ease-in-out infinite}@keyframes tg-mini-bob{0%,100%{transform:translateY(0) rotate(-1deg)}50%{transform:translateY(-2px) rotate(1deg)}}@keyframes tg-mini-led{0%,100%{filter:drop-shadow(0 0 2px rgba(255,122,26,0.55)) drop-shadow(0 0 7px rgba(255,122,26,0.4))}16.6%{filter:drop-shadow(0 0 2px rgba(255,210,63,0.55)) drop-shadow(0 0 7px rgba(255,210,63,0.4))}33.3%{filter:drop-shadow(0 0 2px rgba(154,230,0,0.55)) drop-shadow(0 0 7px rgba(154,230,0,0.4))}50%{filter:drop-shadow(0 0 2px rgba(25,195,177,0.55)) drop-shadow(0 0 7px rgba(25,195,177,0.4))}66.6%{filter:drop-shadow(0 0 2px rgba(139,108,255,0.55)) drop-shadow(0 0 7px rgba(139,108,255,0.4))}83.3%{filter:drop-shadow(0 0 2px rgba(255,93,115,0.55)) drop-shadow(0 0 7px rgba(255,93,115,0.4))}}@keyframes tg-mini-dust{0%{opacity:0;transform:translateX(3px) scale(0.8)}40%{opacity:0.85}100%{opacity:0;transform:translateX(-10px) scale(1.1)}}@media (prefers-reduced-motion:reduce){.topbar-goat,.topbar-dust{animation:none}}.tg-status{display:inline-flex;align-items:center;gap:5px;font-family:var(--mono);font-size:var(--mono-cap);font-weight:600;letter-spacing:0.08em;text-transform:uppercase;line-height:1;padding:3px 7px;border-radius:var(--r-ctl);border:1px solid currentColor;color:var(--muted);white-space:nowrap;vertical-align:middle}.tg-status.is-draft{color:var(--muted)}.tg-status.is-ready{color:var(--ok)}.tg-status.is-shared{color:var(--c-aid)}.tg-status.is-live{color:var(--c-crew)}.tg-status.is-finished{color:var(--gold)}.tg-status.is-ok{color:var(--ok)}.tg-status.is-warn{color:var(--warn)}.tg-status.is-bad{color:var(--bad)}.tg-status.is-live::before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor;animation:tg-status-pulse 2s ease-in-out infinite}@keyframes tg-status-pulse{50%{opacity:0.35}}@media (prefers-reduced-motion:reduce){.tg-status.is-live::before{animation:none}}.tg-toast-stack{position:fixed;left:50%;bottom:max(18px,env(safe-area-inset-bottom,0px));transform:translateX(-50%);z-index:4000;width:max-content;max-width:min(calc(100vw - 32px),480px);display:flex;flex-direction:column;align-items:center;gap:10px;pointer-events:none}html.tg-tabs .tg-toast-stack{bottom:calc(var(--tg-tabbar-space,0px) + 12px)}.tg-toast{pointer-events:auto;display:flex;align-items:center;gap:10px;transform-origin:bottom center;max-width:100%;box-sizing:border-box;background:var(--bg-2,#0e1f20);border:1px solid var(--line,rgba(255,255,255,0.1));border-left:3px solid var(--tg-toast-acc,var(--accent));color:var(--ink,#eef5ef);border-radius:var(--r-card);padding:10px 14px;font-size:0.92rem;line-height:1.45;box-shadow:var(--shadow-pop);opacity:0;transform:translateY(8px) scale(0.96);transition:opacity var(--dur-layer) var(--ease-snap),transform var(--dur-layer) var(--ease-snap)}.tg-toast.show{opacity:1;transform:none}.tg-toast.is-ok{--tg-toast-kind:var(--ok)}.tg-toast.is-warn{--tg-toast-kind:var(--warn)}.tg-toast.is-bad{--tg-toast-kind:var(--bad)}.tg-toast.is-ok,.tg-toast.is-warn,.tg-toast.is-bad{border-left-color:var(--tg-toast-acc,var(--tg-toast-kind))}.tg-toast-dot{flex:none;width:8px;height:8px;border-radius:50%;background:var(--tg-toast-kind,var(--accent));box-shadow:0 0 0 3px color-mix(in srgb,var(--tg-toast-kind,var(--accent)) 22%,transparent)}.tg-toast-msg{flex:1 1 auto;min-width:0}.tg-toast-act{flex:none;margin:-6px -8px -6px 2px;padding:6px 10px;min-height:32px;border:0;border-radius:var(--r-ctl);background:transparent;color:var(--accent);font:inherit;font-weight:700;cursor:pointer;transition:background var(--dur-ctl) var(--ease-snap)}.tg-toast-act:hover{background:var(--fill-hover)}.tg-toast-act:focus-visible{outline:2px solid var(--accent);outline-offset:1px}@media (max-width:860px){.tg-toast-act{min-height:44px;padding:6px 12px}}@media (prefers-reduced-motion:reduce){.tg-toast{transition:none;transform:none}}.tg-pal-backdrop{position:fixed;inset:0;z-index:4500;display:none;background:rgba(3,9,7,0.55);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);padding:12vh 16px 0}.tg-pal-backdrop.open{display:block}.tg-pal{max-width:520px;margin:0 auto;transform-origin:top center;animation:tg-pop-in var(--dur-layer) var(--ease-snap);background:var(--bg-1,#0a1a1c);border:1px solid var(--line,rgba(255,255,255,0.1));border-radius:var(--r-card);overflow:hidden;box-shadow:var(--shadow-pop)}.tg-pal-input{width:100%;padding:16px 18px;background:transparent;border:none;outline:none;color:var(--ink,#eef5ef);font:inherit;font-family:var(--body);font-size:1.05rem;border-bottom:1px solid var(--line,rgba(255,255,255,0.1))}.tg-pal-list{max-height:320px;overflow-y:auto;padding:6px}.tg-pal-item{display:flex;align-items:baseline;gap:10px;width:100%;padding:10px 12px;border:none;border-radius:var(--r-ctl);background:transparent;color:var(--ink,#eef5ef);font:inherit;font-family:var(--body);text-align:left;cursor:pointer}.tg-pal-item.sel{background:var(--fill-selected)}.tg-pal-kind{flex:0 0 auto;font-size:0.68rem;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;color:var(--muted,#9ab5a8);border:1px solid var(--line,rgba(255,255,255,0.1));border-radius:var(--r-ctl);padding:1px 6px}.tg-pal-name{font-weight:600}.tg-pal-meta{color:var(--muted,#9ab5a8);font-size:0.85rem;margin-left:auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:45%}.tg-pal-none{padding:18px;color:var(--muted,#9ab5a8);font-size:0.92rem}.tg-pal-hint{padding:8px 16px;border-top:1px solid var(--line,rgba(255,255,255,0.08));color:var(--muted,#9ab5a8);font-size:0.75rem}body.pal-open{overflow:hidden}.tg-pal-head{display:flex;align-items:center;gap:10px;padding:0 8px 0 16px;border-bottom:1px solid var(--line)}.tg-pal-head>.ico{width:18px;height:18px;flex:0 0 auto;color:var(--muted)}.tg-pal-head .tg-pal-input{flex:1 1 auto;min-width:0;padding:16px 0;margin:0;border:0;border-radius:0;background:transparent;box-shadow:none;font-size:max(1.05rem,16px)}.tg-pal-head .tg-pal-input:focus,.tg-pal-head .tg-pal-input:focus-visible{outline:none;border:0;box-shadow:none}.tg-pal-esc{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:0;cursor:pointer;background:none;border:0;border-radius:var(--r-ctl)}.tg-pal-esc:hover{background:var(--fill-hover)}.tg-pal kbd{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 5px;box-sizing:border-box;font:500 0.68rem/1 var(--mono);color:var(--muted);background:var(--fill-idle);border:1px solid var(--edge-soft);border-bottom-width:2px;border-radius:var(--r-ctl)}.tg-pal-head ~ .tg-pal-list{max-height:min(420px,56vh)}.tg-pal-group + .tg-pal-group{margin-top:4px}.tg-pal-gh{display:flex;align-items:baseline;justify-content:space-between;gap:8px;padding:8px 12px 4px}.tg-pal-gh .data-label{font-size:0.66rem;color:var(--muted)}.tg-pal-count{font-size:0.7rem;color:var(--faint,var(--muted))}div.tg-pal-item{align-items:center;min-height:44px;box-sizing:border-box}.tg-pal-text{display:flex;flex-direction:column;gap:1px;min-width:0;flex:1 1 auto}.tg-pal-text .tg-pal-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tg-pal-text .tg-pal-meta{margin-left:0;max-width:none;font-size:0.8rem}.tg-pal-side{flex:0 0 auto;font-size:0.76rem;color:var(--muted)}.tg-pal-item .tg-pal-kind{min-width:78px;text-align:center;box-sizing:border-box}.tg-pal-item.sel .tg-pal-kind{color:var(--ink);border-color:var(--edge)}.tg-pal-note{margin:6px 6px 2px;padding:8px 10px;border-radius:var(--r-ctl);background:var(--fill-idle);color:var(--muted);font-size:0.8rem}.tg-pal-none a{color:var(--accent);font-weight:600}.tg-pal-skel{display:flex;align-items:center;gap:10px;min-height:44px;padding:0 12px}.tg-pal-skel-k,.tg-pal-skel-l{height:12px;border-radius:var(--r-ctl);background:linear-gradient(90deg,var(--fill-idle) 25%,var(--fill-hover) 50%,var(--fill-idle) 75%);background-size:200% 100%;animation:tg-pal-shimmer 1.2s ease-in-out infinite}.tg-pal-skel-k{width:78px;height:18px;flex:0 0 auto}@keyframes tg-pal-shimmer{0%{background-position:180% 0}100%{background-position:-80% 0}}.tg-pal-hint{display:flex;flex-wrap:wrap;gap:6px 16px}.tg-pal-hint span{display:inline-flex;align-items:center;gap:3px}.tg-pal-hint kbd{min-width:18px;height:18px}@media (max-width:860px){.tg-pal-backdrop{padding-top:8px}.tg-pal-hint-wide{display:none!important}.tg-pal-side{display:none}}@media (prefers-reduced-motion:reduce){.tg-pal-skel-k,.tg-pal-skel-l{animation:none}}.topbar-mascot.goat-sprint .topbar-goat{animation:goat-sprint 0.35s ease-in-out 4}.topbar-mascot.goat-sprint .topbar-dust{animation:goat-dust 1.4s ease-out 1}.topbar-mascot.goat-party .topbar-goat{animation:goat-hop 0.4s cubic-bezier(.3,1.6,.5,1) 4}@keyframes goat-sprint{0%,100%{transform:translateX(0) rotate(0)}50%{transform:translateX(-5px) rotate(-6deg)}}@keyframes goat-dust{0%{opacity:0;transform:translateX(0) scale(0.8)}30%{opacity:1}100%{opacity:0;transform:translateX(10px) scale(1.3)}}@keyframes goat-hop{0%,100%{transform:translateY(0)}45%{transform:translateY(-7px) rotate(6deg)}}.tg-auth{position:relative;display:inline-flex;align-items:center}.tg-auth-btn{font:inherit;font-family:var(--body);font-size:0.88rem;font-weight:600;color:var(--ink,#eef5ef);background:var(--glass,rgba(255,255,255,0.045));border:1px solid var(--line,rgba(255,255,255,0.1));border-radius:var(--r-ctl);padding:7px 16px;cursor:pointer;transition:border-color var(--dur-ctl) var(--ease-snap),background var(--dur-ctl) var(--ease-snap)}.tg-auth-btn:hover{border-color:var(--edge-soft);background:var(--fill-hover)}.tg-auth-chip{display:inline-flex;align-items:center;gap:8px;font:inherit;font-family:var(--body);font-size:0.88rem;font-weight:600;color:var(--ink,#eef5ef);background:var(--glass,rgba(255,255,255,0.045));border:1px solid var(--line,rgba(255,255,255,0.1));border-radius:var(--r-ctl);padding:4px 14px 4px 5px;cursor:pointer}.tg-auth-avatar{width:26px;height:26px;border-radius:50%;display:block}.tg-auth-menu{position:absolute;top:calc(100% + 8px);right:0;z-index:3000;min-width:220px;transform-origin:top right;animation:tg-pop-in var(--dur-layer) var(--ease-snap);background:var(--bg-1,#0a1a1c);border:1px solid var(--line,rgba(255,255,255,0.1));border-radius:var(--r-card);padding:10px;box-shadow:var(--shadow-pop)}.tg-auth-menu[hidden]{display:none}.tg-auth-who{padding:4px 6px 10px;font-weight:600;color:var(--ink,#eef5ef)}.tg-auth-who small{display:block;font-weight:400;color:var(--muted,#9ab5a8);margin-top:2px}.tg-auth-out{width:100%;text-align:left;font:inherit;font-family:var(--body);font-size:0.9rem;color:var(--ink,#eef5ef);background:transparent;border:1px solid var(--line,rgba(255,255,255,0.1));border-radius:var(--r-ctl);padding:9px 12px;cursor:pointer}.tg-auth-out:hover{border-color:var(--edge-soft);background:var(--fill-hover)}.tg-auth-head{font-weight:700;padding:4px 6px 10px}.tg-auth-google{display:flex;justify-content:center;padding:4px 0 8px;min-height:44px}.tg-auth-note{color:var(--muted,#9ab5a8);font-size:0.8rem;margin:4px 6px 2px;line-height:1.45}@media (max-width:860px){.tg-auth{display:block;order:-1;margin:0 0 8px;padding-bottom:8px;border-bottom:1px solid var(--line)}.tg-auth-btn,.tg-auth-chip{width:100%;justify-content:center;display:inline-flex;min-height:46px}.tg-auth-menu{position:static;margin-top:6px;width:100%;box-shadow:none;animation:none}}.tg-plans-head{font-family:var(--mono);font-size:0.72rem;font-weight:500;letter-spacing:0.1em;text-transform:uppercase;color:var(--muted,#9ab5a8);padding:8px 6px 6px;border-top:1px solid var(--line,rgba(255,255,255,0.08));margin-top:4px}.tg-plans-list{max-height:260px;overflow-y:auto;margin-bottom:8px}.tg-plans-empty{color:var(--muted,#9ab5a8);font-size:0.85rem;padding:6px;line-height:1.45}.tg-plan-row{display:flex;align-items:stretch;gap:4px}.tg-plan-open{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:1px;text-align:left;font:inherit;font-family:var(--body);color:var(--ink,#eef5ef);background:transparent;border:1px solid transparent;border-radius:var(--r-ctl);padding:8px 10px;cursor:pointer}.tg-plan-open:hover{background:var(--fill-hover);border-color:var(--edge-soft)}.tg-plan-name{font-weight:600;font-size:0.92rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tg-plan-meta{color:var(--muted,#9ab5a8);font-size:0.78rem}.tg-plan-main{flex:1 1 auto;min-width:0;display:flex;flex-direction:column}.tg-plan-crew{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:2px 10px 7px;font-size:0.76rem;color:var(--muted,#9ab5a8)}.tg-plan-crew .ico{width:13px;height:13px;flex:0 0 auto;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.tg-plan-crew-copy,.tg-plan-crew-open{background:none;border:none;padding:2px 0;cursor:pointer;font:600 0.76rem/1.3 inherit;font-family:var(--body);color:var(--accent);text-decoration:underline;text-underline-offset:3px}.tg-plan-crew-copy:hover,.tg-plan-crew-open:hover,.tg-plan-crew-copy:focus-visible,.tg-plan-crew-open:focus-visible{color:var(--ink,#eef5ef)}.tg-plan-del{flex:0 0 auto;width:34px;font:inherit;font-family:var(--body);font-size:1rem;color:var(--muted,#9ab5a8);background:transparent;border:1px solid transparent;border-radius:var(--r-ctl);cursor:pointer}.tg-plan-del:hover{color:var(--ink);border-color:var(--edge-soft);background:var(--fill-hover)}.tg-plan-save{font:inherit;font-family:var(--body);font-size:0.88rem;font-weight:600;color:var(--ink);background:var(--fill-idle);border:1px solid var(--edge);border-radius:var(--r-ctl);padding:8px 16px;cursor:pointer;margin-right:8px;transition:background 0.15s ease,transform 0.15s ease}.tg-plan-save:hover{background:var(--fill-hover);transform:translateY(-1px)}.tg-plan-save[hidden]{display:none}@media (prefers-reduced-motion:reduce){.tg-plan-save:hover{transform:none}}.nav-ico{margin-right:7px}.nav-search,.nav-gear{flex:0 0 auto;width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;font-size:0.95rem;cursor:pointer;color:var(--ink,#eef5ef);background:var(--glass,rgba(255,255,255,0.045));border:1px solid var(--line,rgba(255,255,255,0.1));border-radius:var(--r-ctl);transition:border-color var(--dur-ctl) var(--ease-snap),background var(--dur-ctl) var(--ease-snap)}.nav-search:hover,.nav-gear:hover{border-color:var(--edge-soft);background:var(--fill-hover)}.nav-search:focus-visible,.nav-gear:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.topbar .nav a:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.nav-settings{position:relative;flex:0 0 auto}.nav-settings-menu{position:absolute;top:calc(100% + 8px);right:0;z-index:3000;min-width:260px;transform-origin:top right;animation:tg-pop-in var(--dur-layer) var(--ease-snap);background:var(--bg-1,#0a1a1c);border:1px solid var(--line,rgba(255,255,255,0.1));border-radius:var(--r-card);padding:12px;box-shadow:var(--shadow-pop);display:flex;flex-direction:column;gap:10px}.nav-settings-menu[hidden]{display:none}.set-row{display:flex;align-items:center;justify-content:space-between;gap:14px}.set-label{font-size:0.88rem;font-weight:600}.set-row .unit-toggle{margin:0}.set-row-theme{flex-direction:column;align-items:stretch;gap:8px}.theme-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;background:rgba(0,0,0,0.35);border:1px solid rgba(255,255,255,0.09);border-radius:var(--r-card);padding:5px;box-shadow:var(--well,inset 0 2px 6px rgba(0,0,0,0.5))}.theme-grid button:last-child:nth-child(odd){grid-column:1 / -1}.theme-grid button{display:flex;align-items:center;gap:8px;width:100%;min-width:0;white-space:nowrap;background:transparent;color:var(--muted,#8ea7a0);border:1px solid transparent;cursor:pointer;font-family:var(--body);font-weight:700;font-size:0.78rem;letter-spacing:0.03em;padding:7px 10px;border-radius:var(--r-ctl);transition:background 0.15s,color 0.15s,border-color 0.15s}.theme-grid button:hover{color:var(--ink,#eaf4ee);background:rgba(255,255,255,0.05)}.theme-grid button.active{color:var(--ink,#eaf4ee);background:linear-gradient(180deg,rgba(255,255,255,0.16),rgba(255,255,255,0.08));border-color:rgba(255,255,255,0.16);box-shadow:inset 0 1px 0 rgba(255,255,255,0.2),0 3px 8px rgba(0,0,0,0.45)}.theme-grid button:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.theme-swatch{position:relative;flex:0 0 auto;width:22px;height:16px;border-radius:5px;border:1px solid rgba(255,255,255,0.18);overflow:hidden;display:block}.theme-swatch i{position:absolute;bottom:3px;width:6px;height:6px;border-radius:50%}.theme-swatch i:first-child{left:3px}.theme-swatch i:last-child{right:3px}.set-note{margin:0;color:var(--muted,#9ab5a8);font-size:0.76rem}@media (max-width:860px){.nav-search{width:100%;height:auto;min-height:46px;justify-content:flex-start;gap:10px;border-radius:var(--r-ctl);padding:10px 14px;font-size:1rem;font-weight:600}.nav-search-label{display:inline;font-size:1rem;font-family:var(--body);letter-spacing:0;text-transform:none}.nav-gear{display:none}.nav-settings{width:100%}.nav-settings-menu,.nav-settings-menu[hidden]{display:flex;position:static;min-width:0;width:100%;box-shadow:none;padding:10px 4px 2px;border:none;border-top:1px solid var(--line);border-radius:0;background:transparent;animation:none}}.topbar{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;padding:18px clamp(16px,2vw,30px);max-width:none;margin:0}.topbar .wordmark{font-family:var(--display);font-weight:800;font-size:1.4rem;letter-spacing:0.02em;color:var(--ink,#eaf4ee);text-decoration:none}.topbar .grad{background:linear-gradient(100deg,var(--teal),var(--accent));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.topbar .nav{display:flex;align-items:center;gap:4px;flex-wrap:wrap}.topbar .nav a{color:var(--muted,#8ea7a0);text-decoration:none;font-weight:600;font-size:0.92rem;padding:8px 14px;border-radius:var(--r-ctl);transition:color 0.2s ease,background 0.2s ease}.topbar .nav a:hover{color:var(--ink,#eaf4ee);background:var(--glass,rgba(255,255,255,0.045))}@media (min-width:861px){.topbar{flex-wrap:nowrap;height:44px;gap:14px;padding-top:0;padding-bottom:0;background:var(--bg-0);border-bottom:1px solid var(--line)}body.split-page>.topbar,body.app-shell>.topbar{padding-top:0;padding-bottom:0}.topbar .wordmark{flex:0 0 auto;font-size:1.15rem}.topbar-tools{display:flex;align-items:center;justify-content:flex-start;gap:8px;flex-wrap:nowrap;flex:1 1 auto;min-width:0;height:44px;margin:0}.topbar .nav.tool-switch{display:inline-flex;align-items:stretch;gap:0;flex:0 0 auto;height:44px;margin:0;padding:0;background:none;border:0;border-radius:0}.nav-group{display:inline-flex;align-items:stretch}.topbar .nav>.nav-group>.nav-group-btn,.topbar .nav>a{display:inline-flex;align-items:center;height:44px;padding:0 11px;border-radius:0;white-space:nowrap;font-family:var(--mono);font-weight:500;font-size:0.72rem;letter-spacing:0.1em;text-transform:uppercase;color:var(--muted);transition:color var(--dur-ctl) var(--ease-snap),background var(--dur-ctl) var(--ease-snap)}.topbar .nav>.nav-group>.nav-group-btn:hover,.topbar .nav>a:hover,.topbar .nav>.nav-group>.nav-group-btn[aria-expanded="true"]{color:var(--ink);background:var(--fill-hover)}.topbar .nav>a[aria-current="page"],.topbar .nav>.nav-group>.nav-group-btn.nav-group-here{color:var(--accent);background:none;box-shadow:inset 0 -2px 0 var(--accent)}.topbar .nav>.nav-group>.nav-group-btn.nav-group-here:hover{background:var(--fill-hover)}.topbar .nav-caret{margin-left:6px}.topbar .nav .nav-group-menu a{font-family:var(--body);font-weight:600;font-size:0.92rem;letter-spacing:0;text-transform:none;height:auto;padding:9px 12px;border-radius:var(--r-ctl);box-shadow:none;color:var(--muted)}.topbar .nav .nav-group-menu a:hover{color:var(--ink);background:var(--fill-hover)}.topbar .nav .nav-group-menu a[aria-current="page"]{color:var(--accent);background:var(--fill-selected)}.nav-search{flex:0 1 440px;min-width:0;width:auto;height:30px;margin:0 auto;justify-content:flex-start;gap:8px;padding:0 12px 0 10px;color:var(--muted);font-family:var(--mono);font-size:0.68rem;letter-spacing:0.06em;text-transform:none}.nav-search:hover{color:var(--ink)}.nav-search-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:max(0.68rem,var(--mono-cap))}.nav-gear{width:32px;height:32px}.tg-auth-btn,.tg-auth-chip{flex:0 0 auto}.topbar.topbar-tight .nav-search{flex:0 0 auto;width:32px;height:32px;padding:0;margin:0 0 0 auto;justify-content:center}.topbar.topbar-tight .nav-search-label{display:none}.tg-auth-name{display:inline-block;max-width:12ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topbar.topbar-tighter .nav>.nav-group>.nav-group-btn .nav-ico{display:none}.topbar.topbar-tighter .tg-auth-chip{padding-right:5px}.topbar.topbar-tighter .tg-auth-name{display:none}}@media (min-width:861px) and (max-width:1079px){.nav-search{flex:0 0 auto;width:32px;height:32px;padding:0;margin:0 0 0 auto;justify-content:center}.nav-search-label{display:none}}body.split-page>.topbar,body.app-shell>.topbar{align-self:stretch;width:auto;max-width:none;margin-left:0;margin-right:0;padding-left:clamp(16px,2vw,30px);padding-right:clamp(16px,2vw,30px)}.unit-toggle{display:inline-flex;gap:4px;background:rgba(0,0,0,0.35);border:1px solid rgba(255,255,255,0.09);border-radius:var(--r-ctl);padding:4px;box-shadow:var(--well,inset 0 2px 6px rgba(0,0,0,0.5))}.unit-toggle button{background:transparent;color:var(--muted,#8ea7a0);border:none;cursor:pointer;font-family:var(--body);font-weight:700;font-size:0.78rem;letter-spacing:0.04em;padding:7px 16px;border-radius:calc(var(--r-ctl) - 2px);transition:all 0.15s}.unit-toggle button.active{color:var(--ink,#eaf4ee);background:linear-gradient(180deg,rgba(255,255,255,0.16),rgba(255,255,255,0.08));box-shadow:inset 0 1px 0 rgba(255,255,255,0.2),0 3px 8px rgba(0,0,0,0.45)}.nav-settings-menu{max-height:min(76vh,640px);overflow-y:auto}.set-sec{margin-top:6px;padding-top:10px;border-top:1px solid var(--line,rgba(255,255,255,0.1));font-size:0.88rem;font-weight:700}.set-sec small{display:block;font-weight:400;font-size:0.72rem;color:var(--muted,#8ea7a0);margin-top:1px}.set-field{display:flex;flex-direction:column;gap:6px}.set-field .field-label{font-size:0.8rem;font-weight:600;color:var(--muted,#8ea7a0)}.set-field .field-label em{font-style:normal;color:var(--muted,#8ea7a0)}.set-field select,.set-field input[type="number"]{width:100%;background:rgba(0,0,0,0.3);color:var(--ink,#eaf4ee);border:1px solid var(--line,rgba(255,255,255,0.1));border-radius:var(--r-ctl);padding:8px 10px;font-family:var(--body);font-size:0.9rem;box-shadow:var(--well,inset 0 2px 6px rgba(0,0,0,0.5));color-scheme:dark}.slider-measured{display:flex;align-items:center;gap:8px;margin-top:8px}.slider-measured-label{flex:1 1 auto;font-size:0.72rem;color:var(--muted,#8ea7a0)}.set-field input.slider-measured-input{flex:0 0 88px;width:88px;padding:6px 8px;font-size:0.82rem;text-align:right}.slider-measured-unit{flex:0 0 auto;font-style:normal;font-size:0.72rem;color:var(--muted,#8ea7a0);min-width:46px}.set-field select:focus,.set-field input:focus{outline:none;border-color:var(--accent)}.tg-info{display:inline-grid;place-items:center;width:16px;height:16px;padding:0;border-radius:50%;border:1px solid rgba(255,255,255,0.28);background:rgba(255,255,255,0.06);color:var(--muted,#8ea7a0);font:700 0.62rem/1 var(--mono);cursor:help;vertical-align:-2px;flex:0 0 auto;transition:color 0.15s,border-color 0.15s,background 0.15s}.tg-info:hover,.tg-info:focus-visible{color:var(--accent-ink);background:var(--accent);border-color:var(--accent);outline:none}@media (pointer:coarse){.tg-info{width:24px;height:24px;font-size:0.72rem}}#tg-tip{position:fixed;z-index:9999;max-width:260px;background:var(--bg-2,#10231e);border:1px solid var(--edge-soft);color:var(--ink,#eaf4ee);font-size:0.78rem;line-height:1.5;padding:9px 12px;border-radius:var(--r-card);box-shadow:var(--shadow-pop);opacity:0;pointer-events:none;transition:opacity var(--dur-ctl) var(--ease-snap)}#tg-tip.show{opacity:1}#tg-tip .tg-tip-legend{list-style:none;margin:7px 0 0;padding:7px 0 0;border-top:1px solid var(--line-faint,rgba(255,255,255,0.08));display:grid;gap:4px}#tg-tip .tg-tip-legend li{display:flex;align-items:center;gap:8px}#tg-tip .tg-tip-legend i{flex:0 0 auto;width:9px;height:9px;border-radius:50%}#tg-tip::before{content:"";position:absolute;top:100%;left:var(--arrow-x,50%);transform:translateX(-50%);border:6px solid transparent;border-top-color:var(--edge-soft)}#tg-tip.below::before{top:auto;bottom:100%;border-top-color:transparent;border-bottom-color:var(--edge-soft)}#tg-pop{position:fixed;z-index:9999;width:min(280px,calc(100vw - 24px));background:var(--bg-1,#0e211c);border:1px solid var(--edge-soft);border-radius:var(--r-card);padding:14px 32px 14px 16px;box-shadow:var(--shadow-pop);font-size:0.8rem;color:var(--muted,#8ea7a0);line-height:1.55;opacity:0;pointer-events:none;transition:opacity var(--dur-ctl) var(--ease-snap)}#tg-pop.show{opacity:1;pointer-events:auto}#tg-pop b{color:var(--ink,#eaf4ee);display:block;margin-bottom:4px}#tg-pop .tg-pop-more{display:block;margin-top:8px;color:var(--accent);font-weight:600;text-decoration:none}#tg-pop .tg-pop-more:hover{text-decoration:underline}#tg-pop .tg-pop-x{position:absolute;top:8px;right:10px;background:none;border:none;color:var(--muted,#8ea7a0);cursor:pointer;font-size:0.9rem;padding:2px}@media (prefers-reduced-motion:reduce){#tg-tip,#tg-pop{transition:none}}.set-feedback{display:block;margin-top:10px;padding-top:10px;border-top:1px solid var(--line);font-size:0.85rem;font-weight:600;color:var(--accent);text-decoration:none}.set-feedback:hover{text-decoration:underline}.tg-auth-dash{display:block;font-size:0.9rem;font-weight:600;color:var(--accent);text-decoration:none;border:1px solid var(--line,rgba(255,255,255,0.1));border-radius:var(--r-ctl);padding:9px 12px;margin:0 0 4px}.tg-auth-dash:hover{border-color:var(--edge-soft);background:var(--fill-hover)}.tg-auth-admin{display:flex;align-items:center;gap:8px;color:var(--ink);margin-top:6px}.tg-auth-admin .ico{width:16px;height:16px;flex:none;color:var(--muted)}.tg-auth-admin .ico path{fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}footer.foot{text-align:left;max-width:1180px;margin:0 auto}.foot-grid{display:grid;grid-template-columns:repeat(var(--foot-cols,3),1fr);gap:28px;padding:30px 8px 22px;border-top:1px solid var(--line,rgba(255,255,255,0.1))}.foot-col h2{margin:0 0 10px;font-family:var(--mono);font-size:0.72rem;font-weight:500;letter-spacing:0.1em;text-transform:uppercase;color:var(--ink,#eef5ef)}.foot-link{display:inline-block;color:var(--accent);text-decoration:none;font-weight:600;font-size:0.92rem}@media (max-width:860px){.foot-link{min-height:40px;display:inline-flex;align-items:center}.foot-legal a,.foot-nav a{min-height:40px;display:inline-flex;align-items:center;padding:0 4px}}.foot-link:hover{text-decoration:underline}.foot-note{margin:8px 0 0;font-size:0.8rem;line-height:1.5;color:var(--muted,#9ab5a8)}.foot-donate{display:inline-flex;align-items:center;gap:7px;font-weight:700;font-size:0.92rem;text-decoration:none;color:var(--ink);background:var(--fill-idle);border:1px solid var(--edge);border-radius:var(--r-ctl);padding:9px 18px;transition:background 0.13s ease,border-color 0.13s ease}.foot-donate:hover{background:var(--fill-hover)}.foot-social{display:flex;gap:10px}.foot-soc{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;color:var(--muted,#9ab5a8);background:var(--glass,rgba(255,255,255,0.045));border:1px solid var(--line,rgba(255,255,255,0.1));transition:color 0.15s,border-color 0.15s,transform 0.15s}.foot-soc:hover{color:var(--ink,#eef5ef);border-color:var(--edge-soft);background:var(--fill-hover);transform:translateY(-2px)}.foot-credits{text-align:center;color:var(--muted,#9ab5a8);font-size:0.8rem;padding:14px 8px 6px;border-top:1px solid var(--line,rgba(255,255,255,0.06))}.foot-credits p{margin:0}@media (max-width:720px){.foot-grid{grid-template-columns:1fr;gap:22px}}.tg-plan-offline{display:inline-flex;align-items:center;gap:6px;margin-top:6px;padding:5px 11px;background:var(--fill-idle);border:1px solid var(--edge);border-radius:var(--r-ctl);color:var(--muted);cursor:pointer;font-family:var(--mono);font-weight:500;font-size:0.64rem;letter-spacing:0.1em;text-transform:uppercase}.tg-plan-offline .ico{width:13px;height:13px}.tg-map-retry-label{color:var(--gold)}@media (max-width:720px){.tg-plan-offline,.tg-tile-prog .export-btn{min-height:44px}}.tg-plan-offline:hover:not(:disabled){background:var(--fill-hover);color:var(--ink)}.tg-plan-offline:disabled{opacity:0.55;cursor:default}.tg-plan-offline.on{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 45%,transparent)}.tg-plan-offline.locked::after{content:"";width:11px;height:11px;flex:0 0 auto;background:currentColor;opacity:0.75;-webkit-mask:var(--tg-lock) center / contain no-repeat;mask:var(--tg-lock) center / contain no-repeat}:root{--tg-lock:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="black" d="M12 2a5 5 0 0 0-5 5v3H6a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-8a2 2 0 0 0-2-2h-1V7a5 5 0 0 0-5-5zm-3 8V7a3 3 0 1 1 6 0v3H9z"/></svg>')}.tg-offline-lapsed{margin-top:8px}.tg-plans-offline-head{margin-bottom:6px}.tg-plan-offline:disabled{opacity:1}.tg-tile-prog{display:flex;align-items:center;gap:8px;margin-top:6px}.tg-tile-bar{flex:1 1 auto;height:4px;min-width:80px;background:var(--fill-idle);border-radius:999px;overflow:hidden}.tg-tile-bar i{display:block;height:100%;width:0;background:var(--accent);transition:width 0.2s linear}.tg-tile-size{flex:0 0 auto;color:var(--muted);font-family:var(--mono);font-variant-numeric:tabular-nums;font-size:0.64rem;letter-spacing:0.06em}@media (prefers-reduced-motion:reduce){.tg-tile-bar i{transition:none}}.tg-offline-lapsed a{color:var(--accent)}.tg-offline-pro{margin-top:8px}.tg-portal-link{background:none;border:0;padding:0;cursor:pointer;font:inherit;color:var(--accent)}.tg-portal-link:hover{text-decoration:underline}.tg-portal-link:disabled{opacity:0.6;cursor:default;text-decoration:none}.tg-storage-clear{flex:0 0 auto;background:var(--fill-idle);border:1px solid var(--edge);color:var(--ink);border-radius:var(--r-ctl);padding:7px 15px;font:600 0.82rem/1 var(--body);cursor:pointer}.tg-storage-clear:hover{background:var(--fill-hover)}.wx-stale{color:var(--muted)}.tg-offline{flex:0 0 auto;align-self:center;padding:3px 8px;border-radius:var(--r-ctl);background:var(--fill-idle);border:1px solid var(--edge);color:var(--muted);font-family:var(--mono);font-weight:500;font-size:0.62rem;letter-spacing:0.12em;text-transform:uppercase;white-space:nowrap}.tg-offline[hidden]{display:none}@media (max-width:860px){.tg-offline{order:9;margin-left:auto}}:root{--tg-tabbar-h:56px}.tg-back{display:none}.tg-tabbar,.tg-sheet-scrim{display:none}@media (max-width:860px){html.tg-tabs{--tg-tabbar-space:calc(var(--tg-tabbar-h) + env(safe-area-inset-bottom,0px))}html.tg-tabs body.creator-drawing{--tg-tabbar-space:0px}html.tg-tabs body.creator-drawing .tg-tabbar{display:none}html.tg-tabs body{padding-bottom:var(--tg-tabbar-space)}html.tg-tabs .tg-tabbar{position:fixed;left:0;right:0;bottom:0;z-index:2050;display:flex;align-items:stretch;height:calc(var(--tg-tabbar-h) + env(safe-area-inset-bottom,0px));padding-bottom:env(safe-area-inset-bottom,0px);background:color-mix(in srgb,var(--bg-0,#07120f) 92%,transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-top:1px solid var(--line)}@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){html.tg-tabs .tg-tabbar{background:var(--bg-0,#07120f)}}html.tg-tabs .tg-tab{flex:1 1 0;min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:44px;gap:3px;padding:6px 2px;margin:4px 4px;position:relative;background:none;border:1px solid transparent;border-radius:var(--r-ctl);color:var(--muted);text-decoration:none;cursor:pointer;font-family:var(--mono);font-weight:500;font-size:0.6rem;letter-spacing:0.1em;text-transform:uppercase}html.tg-tabs .tg-tab .ico{width:20px;height:20px}html.tg-tabs .tg-tab:active{background:var(--fill-hover)}html.tg-tabs .tg-tab:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}html.tg-tabs .tg-tab-on{color:var(--accent)}html.tg-tabs .tg-tab-on::before{content:"";position:absolute;top:-6px;left:22%;right:22%;height:2px;background:var(--accent);border-radius:0 0 2px 2px}html.tg-standalone .tg-sheet-scrim{position:fixed;inset:0;z-index:2100;display:flex;align-items:flex-end;background:rgba(0,0,0,0.45)}html.tg-standalone .tg-sheet-scrim[hidden]{display:none}html.tg-standalone .tg-sheet{width:100%;max-height:78dvh;overflow-y:auto;display:flex;flex-direction:column;gap:2px;padding:10px 10px calc(10px + env(safe-area-inset-bottom,0px));background:color-mix(in srgb,var(--bg-1,#0a1a1c) 96%,#ffffff 4%);border-top:1px solid var(--line);border-radius:var(--r-card) var(--r-card) 0 0;transform-origin:bottom center;animation:tg-pop-in var(--dur-layer) var(--ease-snap)}html.tg-standalone .tg-sheet .nav-link{display:flex;align-items:center;gap:10px;width:100%;min-height:48px;padding:0 14px;background:none;border:0;border-radius:var(--r-ctl);color:var(--ink);text-decoration:none;text-align:left;font:600 0.95rem var(--body);cursor:pointer}html.tg-standalone .tg-sheet .nav-link:active{background:var(--fill-hover)}html.tg-standalone .tg-sheet .nav-link small{margin-left:6px;color:var(--muted);font-weight:500}html.tg-standalone .tg-back{display:inline-flex;align-items:center;justify-content:center;order:-1;flex:0 0 auto;width:40px;height:40px;margin:-4px 2px -4px -8px;background:transparent;border:0;border-radius:var(--r-ctl);color:var(--ink);cursor:pointer}html.tg-standalone .tg-back[hidden]{display:none}html.tg-standalone .tg-back .ico{width:20px;height:20px}html.tg-standalone .tg-back:active{background:var(--fill-hover)}html.tg-standalone .tg-back:focus-visible{outline:2px solid var(--accent);outline-offset:2px}html.tg-tabs .topbar-tools{max-height:calc(100dvh - 90px - var(--tg-tabbar-h) - env(safe-area-inset-bottom,0px))}}.tg-install{display:flex;align-items:center;gap:10px;margin:0 0 16px;background:var(--glass);border:1px solid var(--line);border-radius:var(--r-card);padding:11px 13px}.tg-install-ico{flex:0 0 auto;width:18px;height:18px;fill:none;stroke:var(--accent);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.tg-install-txt{flex:1 1 auto;font-size:0.85rem;color:var(--ink)}.tg-install-go,.tg-install-row-btn{flex:0 0 auto;background:var(--fill-idle);border:1px solid var(--edge);color:var(--ink);border-radius:var(--r-ctl);padding:7px 15px;font:600 0.82rem/1 var(--body);cursor:pointer}.tg-install-go:hover,.tg-install-row-btn:hover:not(:disabled){background:var(--fill-hover)}.tg-install-go:active,.tg-install-row-btn:active:not(:disabled){background:var(--fill-selected)}.tg-install-row-btn:disabled{color:var(--muted);cursor:default}.tg-install-x{flex:0 0 auto;background:none;border:0;color:var(--muted);font-size:1.15rem;line-height:1;cursor:pointer;padding:2px 4px}.tg-install-x:hover{color:var(--ink)}html.tg-standalone .tg-install{display:none}.tg-goat{width:1.35em;height:1.35em;object-fit:contain;display:inline-block;vertical-align:-0.32em;flex-shrink:0}.foot-legal,.foot-nav{display:flex;justify-content:center;align-items:center;gap:10px;flex-wrap:wrap;margin-top:18px}.foot-legal a,.foot-nav a{color:var(--muted);font-size:12.5px;text-decoration:none}.foot-legal a:hover,.foot-nav a:hover{color:var(--accent)}.foot-legal span{color:var(--muted);opacity:0.5;font-size:12px}.tg-keys-dlg .tg-dlg-body{padding:0}.tg-keys-body{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 28px;padding:16px 20px 20px}.tg-keys-group h3{margin:0 0 8px;font-size:0.66rem;color:var(--muted)}.tg-keys-group dl{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 12px;margin:0;align-items:center}.tg-keys-group dt{font-size:0.84rem;color:var(--ink)}.tg-keys-group dd{margin:0;display:inline-flex;align-items:center;gap:3px;justify-self:end}.tg-keys kbd{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;padding:0 6px;box-sizing:border-box;font:500 0.7rem/1 var(--mono);color:var(--ink);background:var(--fill-idle);border:1px solid var(--edge-soft);border-bottom-width:2px;border-radius:var(--r-ctl)}.tg-keys-then{margin:0 3px;font-size:0.7rem;color:var(--muted)}@media (max-width:860px){.tg-keys-body{grid-template-columns:minmax(0,1fr)}}.tg-wm-wrap{position:relative;display:inline-flex;align-items:center;flex:0 0 auto}.tg-new-dot{position:absolute;top:-10px;right:-16px;width:24px;height:24px;padding:0;display:inline-flex;align-items:center;justify-content:center;background:none;border:0;border-radius:50%;cursor:pointer}.tg-new-dot[hidden]{display:none}.tg-new-dot span{width:8px;height:8px;border-radius:50%;background:var(--gold);box-shadow:0 0 0 2px var(--bg-0)}.tg-new-dot:hover span{transform:scale(1.25)}.tg-new-dot:focus-visible{outline:2px solid var(--accent);outline-offset:-3px}.tg-new{position:fixed;z-index:3050;background:var(--bg-1);color:var(--ink);border:1px solid var(--line);border-radius:var(--r-card);box-shadow:var(--shadow-pop);transform-origin:top left;animation:tg-pop-in var(--dur-layer) var(--ease-snap)}.tg-new[hidden]{display:none}.tg-new-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px;padding:12px 14px 10px;border-bottom:1px solid var(--line)}.tg-new-h{font-size:0.7rem;color:var(--gold)}.tg-new-when{font-size:0.72rem;color:var(--muted)}.tg-new-list{list-style:none;margin:0;padding:6px 6px}.tg-new-list li{display:flex;align-items:baseline;gap:10px;padding:7px 8px}.tg-new-date{flex:0 0 auto;font-size:0.7rem;color:var(--muted)}.tg-new-list a,.tg-new-list li>span:last-child{color:var(--ink);text-decoration:none;font-weight:600;font-size:0.86rem;line-height:1.35}.tg-new-list a:hover{color:var(--accent)}.tg-new-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 14px 12px}.tg-new-all{color:var(--accent);font-size:0.82rem;font-weight:600;text-underline-offset:3px}.tg-new-ok{min-height:32px;padding:6px 14px;cursor:pointer;background:var(--fill-idle);color:var(--ink);border:1px solid var(--edge);border-radius:var(--r-ctl);font:600 0.8rem/1 var(--body)}.tg-new-ok:hover{background:var(--fill-hover)}.tg-new-ok:active{background:var(--fill-selected)}@media (pointer:coarse){.tg-new-ok{min-height:44px}}button.tg-new-all{background:none;border:0;padding:6px 0;cursor:pointer;font-family:var(--body);text-decoration:underline}.tg-new-full{list-style:none;margin:-6px 0;padding:0}.tg-new-full li{display:grid;grid-template-columns:52px auto minmax(0,1fr);align-items:baseline;gap:10px;padding:9px 0;border-bottom:1px solid var(--line-faint)}.tg-new-full li:last-child{border-bottom:0}.tg-new-full a{color:var(--ink);font-weight:600;font-size:0.9rem;line-height:1.35;text-decoration:none}.tg-new-full a:hover{color:var(--accent)}.tg-new-tag{font-size:0.66rem;font-weight:700;letter-spacing:0.06em;text-transform:uppercase;color:var(--muted);border:1px solid var(--line);border-radius:var(--r-ctl);padding:1px 6px}@media (prefers-reduced-motion:reduce){.tg-new{animation:none}}@media (prefers-reduced-motion:reduce){.nav-group-menu,.topbar.menu-open .topbar-tools,.tg-auth-menu,.nav-settings-menu,.tg-pal,.topbar-mascot.goat-led .topbar-goat{animation:none}}.tg-opening{opacity:0.6;pointer-events:none;cursor:progress}.tg-skip{position:fixed;top:8px;left:8px;z-index:12000;padding:10px 14px;min-height:44px;box-sizing:border-box;display:inline-flex;align-items:center;background:var(--bg-1);color:var(--ink);border:1px solid var(--edge);border-radius:var(--r-ctl);font:600 0.88rem/1 var(--body);text-decoration:none;box-shadow:var(--shadow-pop);transform:translateY(calc(-100% - 16px))}.tg-skip:focus,.tg-skip:focus-visible{transform:none}.tg-bell{position:relative;flex:0 0 auto;display:inline-flex}.tg-bell[hidden]{display:none}.tg-bell-btn{position:relative;display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;padding:0;cursor:pointer;background:none;border:0;border-radius:var(--r-ctl);color:var(--muted);transition:background var(--dur-ctl) var(--ease-snap),color var(--dur-ctl) var(--ease-snap)}.tg-bell-btn .ico{width:19px;height:19px}.tg-bell-btn:hover,.tg-bell-btn[aria-expanded="true"]{background:var(--fill-hover);color:var(--ink)}.tg-bell-dot{position:absolute;top:8px;right:9px;width:8px;height:8px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 2px var(--bg-0)}.tg-bell-dot[hidden]{display:none}.tg-bell-pop{position:fixed;z-index:3050;max-height:min(70vh,520px);overflow-y:auto;background:var(--bg-1);color:var(--ink);border:1px solid var(--line);border-radius:var(--r-card);box-shadow:var(--shadow-pop);transform-origin:top right;animation:tg-pop-in var(--dur-layer) var(--ease-snap)}.tg-bell-pop[hidden]{display:none}.tg-bell-head{position:sticky;top:0;z-index:1;background:var(--bg-1);display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 8px 8px 16px;border-bottom:1px solid var(--line)}.tg-bell-h{margin:0;font-size:0.7rem;color:var(--muted);outline:none}.tg-bell-all{min-height:36px;padding:6px 10px;cursor:pointer;background:none;border:0;border-radius:var(--r-ctl);color:var(--accent);font:600 0.8rem/1 var(--body)}.tg-bell-all:hover{background:var(--fill-hover)}.tg-bell-list{list-style:none;margin:0;padding:6px}.tg-bell-list a{display:flex;align-items:flex-start;gap:12px;padding:10px;border-radius:var(--r-ctl);color:var(--ink);text-decoration:none}.tg-bell-list a:hover{background:var(--fill-hover)}.tg-bell-ico{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:var(--r-ctl);background:var(--fill-idle);border:1px solid var(--line);color:var(--muted)}.tg-bell-ico .ico{width:15px;height:15px}.tg-bell-text{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1 1 auto}.tg-bell-title{font-weight:600;font-size:0.88rem;line-height:1.35}.tg-bell-meta{font-size:0.78rem;color:var(--muted);line-height:1.35}.tg-bell-list li:not(.is-unread) .tg-bell-title{color:var(--muted);font-weight:500}.tg-bell-unread{flex:0 0 auto;width:8px;height:8px;margin-top:6px;border-radius:50%;background:var(--accent)}.tg-bell-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.tg-bell-empty{margin:0;padding:16px;color:var(--muted);font-size:0.86rem;line-height:1.5}@media (max-width:860px){.tg-bell{order:9;margin:-4px 0}.tg-bell-btn{width:44px;height:44px}.tg-bell-all{min-height:44px}}@media (prefers-reduced-motion:reduce){.tg-bell-pop{animation:none}}.tg-bell-meta .data{white-space:nowrap}.tg-empty{display:flex;flex-direction:column;align-items:center;text-align:center;max-width:440px;margin:0 auto;padding:26px 16px 22px;font-style:normal}.tg-empty[hidden]{display:none}.tg-empty-art{display:grid;place-items:center;width:60px;height:60px;margin:0 0 12px;border-radius:50%;background:var(--fill-idle);border:1px solid var(--line)}.tg-empty-art img{width:36px;height:36px;object-fit:contain}.tg-empty-title{margin:0;font-family:var(--display);font-weight:800;font-size:1.05rem;line-height:1.25;color:var(--ink);text-wrap:balance}.tg-empty-line{margin:6px 0 14px;color:var(--muted);font-size:0.88rem;line-height:1.5;text-wrap:pretty}.tg-empty-go{min-height:40px;text-decoration:none}.tg-empty-go .ico{color:var(--accent)}.tg-empty-alt{margin:10px 0 0;color:var(--muted);font-size:0.84rem;line-height:1.4}.tg-empty-alt a,.tg-empty-alt button{display:inline-flex;align-items:center;min-height:32px;padding:0;border:0;background:none;font:inherit;color:var(--accent);cursor:pointer;text-decoration:underline;text-decoration-color:color-mix(in srgb,var(--accent) 40%,transparent);text-underline-offset:3px}.tg-empty-alt a:hover,.tg-empty-alt button:hover{text-decoration-color:var(--accent)}.tg-empty-go:focus-visible,.tg-empty-alt a:focus-visible,.tg-empty-alt button:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--r-ctl)}.tg-empty.is-compact{padding:16px 10px 14px}.tg-empty.is-compact .tg-empty-art{width:46px;height:46px;margin-bottom:10px}.tg-empty.is-compact .tg-empty-art img{width:28px;height:28px}.tg-empty.is-compact .tg-empty-title{font-size:0.96rem}.tg-empty.is-compact .tg-empty-line{font-size:0.84rem;margin-bottom:12px}@media (max-width:860px){.tg-empty-go{min-height:44px}.tg-empty-alt a,.tg-empty-alt button{min-height:44px}}.tg-skel{display:block;height:12px;border-radius:var(--r-ctl);background:linear-gradient(90deg,var(--fill-idle) 25%,var(--fill-hover) 50%,var(--fill-idle) 75%);background-size:200% 100%;animation:tg-skel 1.3s ease-in-out infinite}.tg-skel.is-title{height:14px}.tg-skel.is-sm{height:9px}.tg-skel.is-chip{height:18px;width:56px;flex:0 0 auto}.tg-skel.is-block{height:34px}.tg-skel-list{display:grid;gap:10px}.tg-skel-card{display:grid;gap:9px;padding:13px 14px;border:1px solid var(--line);border-radius:var(--r-card);background:var(--glass)}.tg-skel-row{display:flex;align-items:center;justify-content:space-between;gap:12px}@keyframes tg-skel{0%{background-position:180% 0}100%{background-position:-80% 0}}@media (prefers-reduced-motion:reduce){.tg-skel{animation:none;background:var(--fill-hover)}}
/* /race-header.css */
body:has(.race-header)>.topbar{position:sticky;top:0;z-index:2000}.race-header{position:sticky;top:var(--race-topbar-h,44px);z-index:1880;flex:0 0 auto;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:4px clamp(16px,2vw,30px);color:var(--ink);background:var(--bg-0);border-bottom:1px solid var(--line)}.race-header[hidden]{display:none}.race-identity{min-width:0}.race-name{display:block;font:700 1rem/1.3 var(--display);overflow-wrap:anywhere}.race-meta{display:block;margin-top:3px;font:400 .82rem/1.5 var(--body);color:var(--muted)}.race-meta:empty{display:none}.race-views{flex:0 0 auto;display:flex;gap:2px;padding:2px;border:1px solid var(--line);border-radius:var(--r-ctl);background:var(--bg-well)}.race-views a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;min-width:88px;padding:8px 14px;border:1px solid transparent;border-radius:var(--r-ctl);font:700 .85rem/1.3 var(--body);color:var(--muted);text-decoration:none;touch-action:manipulation}.race-views a:hover{background:var(--fill-hover);color:var(--ink)}.race-views a[aria-current="page"]{background:var(--fill-selected);color:var(--ink);border-color:var(--edge-soft);box-shadow:inset 0 -2px 0 var(--accent)}.race-views a:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.race-stats{display:none;margin-top:3px;gap:12px;min-width:0;font:500 .8rem/1.5 var(--mono);font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.race-header-full .race-stats{display:flex}.race-header-full .race-meta{display:none}.race-stat b{font-weight:700;color:var(--ink)}.race-stat .u{margin-left:3px;font-size:.8em;font-weight:500;letter-spacing:.08em;text-transform:uppercase}@media (max-width:860px){.race-header{top:var(--race-topbar-h,73px);gap:12px;padding:4px 16px}.race-identity{flex:1}.race-name{font-size:.875rem;line-height:1.25;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.race-views{gap:2px;padding:0;border:0;background:transparent}.race-meta{display:none}.race-views a{min-width:64px;padding:8px;font-size:.8125rem}.race-stats{gap:8px;font-size:.75rem}.race-stat-date,.race-stat-cutoff{display:none}}@media print{.race-header{display:none}}@media (prefers-reduced-motion:no-preference){body.has-race-header .race-header{view-transition-name:race-header}body.has-race-header .map-wrap:has(>#course-map){view-transition-name:race-map}body.has-race-header #course-stats{view-transition-name:race-stats}::view-transition-group(race-header),::view-transition-group(race-map),::view-transition-group(race-stats){animation-duration:var(--dur-layer,250ms);animation-timing-function:var(--ease-snap,cubic-bezier(0.23,1,0.32,1))}::view-transition-old(race-header){animation:none;opacity:0}::view-transition-new(race-header){animation:none}}
/* /launch-beta.css */
.tg-launch-note{font:400 .88rem/1.55 var(--body);color:var(--ink);background:var(--bg-1);border:1px solid var(--line);border-radius:var(--r-card);padding:12px 16px;margin:12px 0}.tg-launch-note a{color:var(--accent);text-decoration:underline;text-underline-offset:3px}.tg-beta-label{display:none}html[data-launch-beta="true"] .tg-beta-label,html[data-launch-beta="true"] .tg-plan-offline::after{display:inline-block;font:500 var(--mono-cap)/1.3 var(--mono);text-transform:uppercase;letter-spacing:.05em;color:var(--muted);border:1px solid var(--edge-soft);border-radius:var(--r-ctl);padding:2px 5px;margin-left:6px}html[data-launch-beta="true"] .tg-plan-offline::after{content:"Beta"}.tg-beta-pricing .pr-grid{margin-top:24px}.tg-beta-pricing .pr-card{background:var(--bg-1)}.tg-beta-pricing .export-btn{min-height:44px}.tg-beta-pricing .info-tldr{margin:24px 0}.tg-beta-pricing>.info-card{margin-top:24px;padding:22px;background:var(--bg-1);border:1px solid var(--line);border-radius:var(--r-card)}@media print{.tg-launch-note,.tg-beta-label{display:none!important}}html[data-launch-beta="true"] .wordmark .beta-pill{font:500 var(--mono-cap)/1.3 var(--mono);text-transform:uppercase;letter-spacing:.04em;color:var(--muted);border:1px solid var(--edge-soft);border-radius:var(--r-ctl);padding:3px 5px;margin-left:8px}.tg-beta-pricing .pr-launch{font:600 .84rem/1.4 var(--body);color:var(--accent);margin:-2px 0 12px}.tg-beta-pricing .pr-crew-note{color:var(--muted);font-size:.92rem;line-height:1.5;margin:14px 2px 0}.tg-beta-pricing .pr-dayblock .pr-day{margin-top:14px}
