@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500;600&display=swap";/* 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(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABoAAAAaCAQAAAADQ4RFAAACf0lEQVR4AY1UM3gkARTePdvdoTxXKc+qTl3aU5U6b2Kbkz3Gtq3Zw6ziLGNPzrYx7946Tr6/ee/XeCQ4D3ykPtL5tHno4n0d/h3+xfuWHGLX81cn7r0iTNzjr7LrlxCqPtkbTQEHeqOrTy4Yyt3VCi/IOB0v7rVC7q45Q3Gr5K6jt+3Gl5nCoDD4MtO+j96Wu8atmhGqcNGHObuf8OM/x3AMx38+4Z2sPqzCxRFK2aF2e5Jol56XTLyggAMTL56XOMoS1W4pOyjUcGGQdZxU6qRh7B9Zp+PfpOFlqt0zyDZckPi1ttmIp03jX8gyJ8a/PG2yutpS/Vol7peZIbZcKBAEEheEIAgFbDkz5H6Zrkm2hVWGiXKiF4Ycw0RWKdtC16Q7qe3X4iOMxruonzegJzWaXFrU9utOSsLUmrc0YjeWYjCW4PDMADElpJSSQ0vQvA1Tm6/JlKnqFs1EGyZiFCqnRZTEJJJiKRYzVYzJck2Rm6P4iH+cmSY0YzimYa8l0EtTODFWhcMIMVqdsI2uiTvKmTisIDHJ3od5GILVhBCarCfVRmo4uTjkhrhzkiBV7SsaqS+TzrzM1qpGGUFt28pIySQHR6h7F6KSwGWm97ay+Z+ZqMcEjEWebE7wxCSQwpkhJqoZA5ivCdZDjJepuJ9IQjGGUmuXJdBFUygxVqVsxFsLMbDe8ZbDYVCGKxs+W080max1hFCarCfV+C1KATwcnvE9gRRuMP2prdbWGowm1KB1y+zwMMENkM755cJ2yPDtqhTI6ED1M/82yIDtC/4j4BijjeObflpO9I9MwXTCsSX8jWAFeHr05WoLTJ5G8IQVS/7vwR6ohirYM7f6HzYpogfS3R2OAAAAAElFTkSuQmCC);
	width: 36px;
	height: 36px;
	}
.leaflet-retina .leaflet-control-layers-toggle {
	background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADQAAAA0CAQAAABvcdNgAAAEsklEQVR4AWL4TydIhpZK1kpWOlg0w3ZXP6D2soBtG42jeI6ZmQTHzAxiTbSJsYLjO9HhP+WOmcuhciVnmHVQcJnp7DFvScowZorad/+V/fVzMdMT2g9Cv9guXGv/7pYOrXh2U+RRR3dSd9JRx6bIFc/ekqHI29JC6pJ5ZEh1yWkhkbcFeSjxgx3L2m1cb1C7bceyxA+CNjT/Ifff+/kDk2u/w/33/IeCMOSaWZ4glosqT3DNnNZQ7Cs58/3Ce5HL78iZH/vKVIaYlqzfdLu8Vi7dnvUbEza5Idt36tquZFldl6N5Z/POLof0XLK61mZCmJSWjVF9tEjUluu74IUXvgttuVIHE7YxSkaYhJZam7yiM9Pv82JYfl9nptxZaxMJE4YSPty+vF0+Y2up9d3wwijfjZbabqm/3bZ9ecKHsiGmRflnn1MW4pjHf9oLufyn2z3y1D6n8g8TZhxyzipLNPnAUpsOiuWimg52psrTZYnOWYNDTMuWBWa0tJb4rgq1UvmutpaYEbZlwU3CLJm/ayYjHW5/h7xWLn9Hh1vepDkyf7dE7MtT5LR4e7yYpHrkhOUpEfssBLq2pPhAqoSWKUkk7EDqkmK6RrCEzqDjhNDWNE+XSMvkJRDWlZTmCW0l0PHQGRZY5t1L83kT0Y3l2SItk5JAWHl2dCOBm+fPu3fo5/3v61RMCO9Jx2EEYYhb0rmNQMX/vm7gqOEJLcXTGw3CAuRNeyaPWwjR8PRqKQ1PDA/dpv+on9Shox52WFnx0KY8onHayrJzm87i5h9xGw/tfkev0jGsQizqezUKjk12hBMKJ4kbCqGPVNXudyyrShovGw5CgxsRICxF6aRmSjlBnHRzg7Gx8fKqEubI2rahQYdR1YgDIRQO7JvQyD52hoIQx0mxa0ODtW2Iozn1le2iIRdzwWewedyZzewidueOGqlsn1MvcnQpuVwLGG3/IR1hIKxCjelIDZ8ldqWz25jWAsnldEnK0Zxro19TGVb2ffIZEsIO89EIEDvKMPrzmBOQcKQ+rroye6NgRRxqR4U8EAkz0CL6uSGOm6KQCdWjvjRiSP1BPalCRS5iQYiEIvxuBMJEWgzSoHADcVMuN7IuqqTeyUPq22qFimFtxDyBBJEwNyt6TM88blFHao/6tWWhuuOM4SAK4EI4QmFHA+SEyWlp4EQoJ13cYGzMu7yszEIBOm2rVmHUNqwAIQabISNMRstmdhNWcFLsSm+0tjJH1MdRxO5Nx0WDMhCtgD6OKgZeljJqJKc9po8juskR9XN0Y1lZ3mWjLR9JCO1jRDMd0fpYC2VnvjBSEFg7wBENc0R9HFlb0xvF1+TBEpF68d+DHR6IOWVv2BECtxo46hOFUBd/APU57WIoEwJhIi2CdpyZX0m93BZicktMj1AS9dClteUFAUNUIEygRZCtik5zSxI9MubTBH1GOiHsiLJ3OCoSZkILa9PxiN0EbvhsAo8tdAf9Seepd36lGWHmtNANTv5Jd0z4QYyeo/UEJqxKRpg5LZx6btLPsOaEmdMyxYdlc8LMaJnikDlhclqmPiQnTEpLUIZEwkRagjYkEibQErwhkTAKCLQEbUgkzJQWc/0PstHHcfEdQ+UAAAAASUVORK5CYII=);
	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(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABkAAAApCAYAAADAk4LOAAAFgUlEQVR4Aa1XA5BjWRTN2oW17d3YaZtr2962HUzbDNpjszW24mRt28p47v7zq/bXZtrp/lWnXr337j3nPCe85NcypgSFdugCpW5YoDAMRaIMqRi6aKq5E3YqDQO3qAwjVWrD8Ncq/RBpykd8oZUb/kaJutow8r1aP9II0WmLKLIsJyv1w/kqw9Ch2MYdB++12Onxee/QMwvf4/Dk/Lfp/i4nxTXtOoQ4pW5Aj7wpici1A9erdAN2OH64x8OSP9j3Ft3b7aWkTg/Fm91siTra0f9on5sQr9INejH6CUUUpavjFNq1B+Oadhxmnfa8RfEmN8VNAsQhPqF55xHkMzz3jSmChWU6f7/XZKNH+9+hBLOHYozuKQPxyMPUKkrX/K0uWnfFaJGS1QPRtZsOPtr3NsW0uyh6NNCOkU3Yz+bXbT3I8G3xE5EXLXtCXbbqwCO9zPQYPRTZ5vIDXD7U+w7rFDEoUUf7ibHIR4y6bLVPXrz8JVZEql13trxwue/uDivd3fkWRbS6/IA2bID4uk0UpF1N8qLlbBlXs4Ee7HLTfV1j54APvODnSfOWBqtKVvjgLKzF5YdEk5ewRkGlK0i33Eofffc7HT56jD7/6U+qH3Cx7SBLNntH5YIPvODnyfIXZYRVDPqgHtLs5ABHD3YzLuespb7t79FY34DjMwrVrcTuwlT55YMPvOBnRrJ4VXTdNnYug5ucHLBjEpt30701A3Ts+HEa73u6dT3FNWwflY86eMHPk+Yu+i6pzUpRrW7SNDg5JHR4KapmM5Wv2E8Tfcb1HoqqHMHU+uWDD7zg54mz5/2BSnizi9T1Dg4QQXLToGNCkb6tb1NU+QAlGr1++eADrzhn/u8Q2YZhQVlZ5+CAOtqfbhmaUCS1ezNFVm2imDbPmPng5wmz+gwh+oHDce0eUtQ6OGDIyR0uUhUsoO3vfDmmgOezH0mZN59x7MBi++WDL1g/eEiU3avlidO671bkLfwbw5XV2P8Pzo0ydy4t2/0eu33xYSOMOD8hTf4CrBtGMSoXfPLchX+J0ruSePw3LZeK0juPJbYzrhkH0io7B3k164hiGvawhOKMLkrQLyVpZg8rHFW7E2uHOL888IBPlNZ1FPzstSJM694fWr6RwpvcJK60+0HCILTBzZLFNdtAzJaohze60T8qBzyh5ZuOg5e7uwQppofEmf2++DYvmySqGBuKaicF1blQjhuHdvCIMvp8whTTfZzI7RldpwtSzL+F1+wkdZ2TBOW2gIF88PBTzD/gpeREAMEbxnJcaJHNHrpzji0gQCS6hdkEeYt9DF/2qPcEC8RM28Hwmr3sdNyht00byAut2k3gufWNtgtOEOFGUwcXWNDbdNbpgBGxEvKkOQsxivJx33iow0Vw5S6SVTrpVq11ysA2Rp7gTfPfktc6zhtXBBC+adRLshf6sG2RfHPZ5EAc4sVZ83yCN00Fk/4kggu40ZTvIEm5g24qtU4KjBrx/BTTH8ifVASAG7gKrnWxJDcU7x8X6Ecczhm3o6YicvsLXWfh3Ch1W0k8x0nXF+0fFxgt4phz8QvypiwCCFKMqXCnqXExjq10beH+UUA7+nG6mdG/Pu0f3LgFcGrl2s0kNNjpmoJ9o4B29CMO8dMT4Q5ox8uitF6fqsrJOr8qnwNbRzv6hSnG5wP+64C7h9lp30hKNtKdWjtdkbuPA19nJ7Tz3zR/ibgARbhb4AlhavcBebmTHcFl2fvYEnW0ox9xMxKBS8btJ+KiEbq9zA4RthQXDhPa0T9TEe69gWupwc6uBUphquXgf+/FrIjweHQS4/pduMe5ERUMHUd9xv8ZR98CxkS4F2n3EUrUZ10EYNw7BWm9x1GiPssi3GgiGRDKWRYZfXlON+dfNbM+GgIwYdwAAAAASUVORK5CYII=);
	}


/* 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;
		}
	}
.cloud-compositor-dark { color-scheme: dark; }
.cloud-compositor-dark .bg-white,
.cloud-compositor-dark .bg-white\/95 { background-color: rgb(15 23 42 / 0.96) !important; }
.cloud-compositor-dark .hover\:bg-white:hover { background-color: rgb(30 41 59) !important; }
.cloud-compositor-dark .bg-slate-50 { background-color: rgb(2 6 23) !important; }
.cloud-compositor-dark .bg-slate-100 { background-color: rgb(30 41 59) !important; }
.cloud-compositor-dark .hover\:bg-slate-100:hover,
.cloud-compositor-dark .hover\:bg-slate-200:hover { background-color: rgb(51 65 85) !important; }
.cloud-compositor-dark .bg-slate-200 { background-color: rgb(51 65 85) !important; }
.cloud-compositor-dark .bg-slate-300 { background-color: rgb(71 85 105) !important; }
.cloud-compositor-dark .bg-blue-50 { background-color: rgb(30 58 138 / 0.24) !important; }
.cloud-compositor-dark .bg-blue-100 { background-color: rgb(30 58 138 / 0.32) !important; }
.cloud-compositor-dark .bg-green-50 { background-color: rgb(20 83 45 / 0.30) !important; }
.cloud-compositor-dark .bg-red-50 { background-color: rgb(127 29 29 / 0.25) !important; }
.cloud-compositor-dark .border-slate-100,
.cloud-compositor-dark .border-slate-200 { border-color: rgb(51 65 85) !important; }
.cloud-compositor-dark .border-red-100 { border-color: rgb(127 29 29 / 0.7) !important; }
.cloud-compositor-dark .border-green-100 { border-color: rgb(21 128 61 / 0.65) !important; }
.cloud-compositor-dark .text-slate-800,
.cloud-compositor-dark .text-slate-700 { color: rgb(226 232 240) !important; }
.cloud-compositor-dark .text-slate-600 { color: rgb(203 213 225) !important; }
.cloud-compositor-dark .text-slate-500 { color: rgb(148 163 184) !important; }
.cloud-compositor-dark .text-slate-400 { color: rgb(148 163 184) !important; }
.cloud-compositor-dark .shadow-slate-200,
.cloud-compositor-dark .shadow-slate-300\/50,
.cloud-compositor-dark .shadow-blue-200,
.cloud-compositor-dark .shadow-red-200 { --tw-shadow-color: rgb(0 0 0 / 0.35) !important; }
.cloud-compositor-dark input[type="date"],
.cloud-compositor-dark input[type="text"] { color: rgb(226 232 240) !important; }
.cloud-compositor-dark input::placeholder { color: rgb(100 116 139) !important; }
.cloud-compositor-dark .black-coastlines img,
.cloud-compositor-dark .black-coastlines { filter: brightness(0); opacity: .75; }

/* AETHER integration: full-page, touch-safe compositor workflow. */
.cloud-compositor-overlay { overscroll-behavior: none; }
.cloud-compositor-shell { min-width: 0; }
.cloud-compositor-wizard { min-height: 0; }
.cloud-compositor-dark button { -webkit-tap-highlight-color: transparent; touch-action: manipulation; }
.cloud-compositor-dark :is(input,select,button) { min-height: 40px; }
.cloud-compositor-dark [class*="overflow-y-auto"] { overscroll-behavior: contain; -webkit-overflow-scrolling: touch; }
.cloud-compositor-dark .leaflet-container { background:#020617; touch-action: none; }
.cloud-compositor-dark .leaflet-control-attribution { display:none !important; }

@media (max-width: 640px) {
  .cloud-compositor-shell { border-width:0 !important; border-radius:0 !important; }
  .cloud-compositor-dark :is(input[type="text"],input[type="date"],select) { font-size:16px !important; }
  .cloud-compositor-dark .p-6 { padding:16px !important; }
  .cloud-compositor-dark .p-5 { padding:14px !important; }
  .cloud-compositor-dark .space-y-8 > :not([hidden]) ~ :not([hidden]) { margin-top:18px !important; }
  .cloud-compositor-dark .rounded-3xl { border-radius:16px !important; }
  .cloud-compositor-dark .rounded-2xl { border-radius:13px !important; }
  .cloud-compositor-dark .cloud-compositor-close { width:42px; height:42px; }
  .cloud-compositor-dark [class*="shadow-[0_-10px"] {
    padding-bottom: max(14px, env(safe-area-inset-bottom,0px)) !important;
  }
}
/* R192 — dedicated phone reference styling, isolated from AETHER dark/glass global theme. */
#root .tn-viewport{position:fixed!important;inset:0;z-index:9500;background:#a7d1f7!important;color:#141414!important;font-family:'Microsoft YaHei','PingFang SC','Noto Sans CJK SC',Arial,sans-serif;overflow:hidden;isolation:isolate;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;box-shadow:none!important;border:0!important}
.tn-viewport *{box-sizing:border-box}
.tn-header{height:54px;background:#00c91a;color:#fff;display:grid;grid-template-columns:51px 62px minmax(0,1fr) 51px;align-items:center;gap:8px;padding:0 6px;position:absolute;inset:0 0 auto;z-index:9505;box-shadow:0 1px 2px #127d191f}
#root .tn-header button{appearance:none;background:transparent!important;color:#fff!important;border:0!important;box-shadow:none!important;cursor:pointer;padding:0;flex-shrink:0;backdrop-filter:none!important}
#root .tn-header .tn-back{height:50px;width:51px;display:grid;place-items:center;background:#00ae20!important;border:1px solid #44f35f!important}
.tn-back svg{width:40px;height:40px}
#root .tn-header .tn-switch{font-size:13px;font-weight:700;line-height:1.12;border:1.5px solid #5cef84!important;border-radius:10px!important;padding:4px 9px!important;height:46px;min-width:58px;text-align:center;background:#00b94c!important}
.tn-header-title{grid-column:3;text-align:center;font-size:clamp(20px,6.1vw,31px);font-weight:500;letter-spacing:.2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-shadow:0 1px 0 #007d2933}
#root .tn-header .tn-reference-link{height:48px;width:51px;display:grid;place-items:center;background:#00b934!important}
.tn-reference-link svg{width:39px;height:39px}
.tn-map,.tn-baidu-map,.tn-petal-map{position:absolute;inset:54px 0 0;background:#a6d1fa;z-index:1}
.tn-baidu-map,.tn-petal-map{z-index:2}
.tn-map .leaflet-container{background:#a6d1fa}
.tn-ticker{pointer-events:none;position:absolute;top:57px;left:0;right:0;z-index:9502;text-align:right;color:#102aab;font-size:clamp(11px,3.22vw,18px);font-weight:500;line-height:1.25;text-shadow:0 1px 1px #fff8}
.tn-ticker div{white-space:nowrap;letter-spacing:-.55px}
.tn-ticker b{display:block;color:#eb0017;font-weight:800;font-size:clamp(18px,5vw,25px);margin-top:7px;text-shadow:1px 1px 0 #fff}
/* Native Leaflet popup: anchored in geographic coordinates; arrow is Leaflet's native tip. */
#root .tn-map .leaflet-popup.tn-map-popup{z-index:9200;color:#161616!important}
#root .tn-map .leaflet-popup.tn-map-popup .leaflet-popup-content-wrapper{background:#fff!important;color:#141414!important;border:1px solid #8e959c!important;box-shadow:0 3px 7px #43536448!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;border-radius:6px!important;padding:0!important}
#root .tn-map .leaflet-popup.tn-map-popup .leaflet-popup-content{margin:0!important;width:min(80vw,350px)!important;min-width:0;color:#141414!important}
#root .tn-map .leaflet-popup.tn-map-popup .leaflet-popup-tip{background:#fff!important;border:1px solid #8e959c!important;box-shadow:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
/* Highly specific overrides protect the content from app-wide dark styling and generic popup div rules. */
#root .tn-map .tn-map-popup .leaflet-popup-content > .tn-detail,
#root .tn-viewport .tn-detail{background:#fff!important;color:#151515!important;border:0!important;box-shadow:none!important;opacity:1!important;text-shadow:none!important;filter:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
.tn-detail{font-size:14px;line-height:1.66;border-radius:5px;padding-bottom:6px;max-width:min(390px,calc(100vw - 38px))}
#root .tn-viewport .tn-detail-heading{font-size:16px;font-weight:600;padding:8px 33px 8px 12px;line-height:1.35;border-bottom:1px solid #d0d2d4;background:#fff!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;opacity:1!important}
#root .tn-viewport .tn-detail-body{color:#161616!important;opacity:1!important;background:#fff!important;padding:9px 11px 4px;line-height:1.75}
#root .tn-viewport .tn-detail-body>div{color:#161616!important;opacity:1!important;text-shadow:none!important;white-space:normal}
.tn-quadrant{display:grid;grid-template-columns:minmax(105px,1.8fr) repeat(4,minmax(26px,1fr));text-align:center;gap:0;font-size:12px;white-space:nowrap}
.tn-quadrant span:first-child{text-align:left}
.tn-quadrant-label{padding-top:4px}
#root .tn-viewport .tn-simulated-note{text-align:right;color:#66737e!important;font-size:10px;padding-right:11px;background:#fff!important;opacity:1!important}
/* Baidu InfoWindow is likewise map-anchored with its provider-rendered triangular tip. */
#root .tn-baidu-map .tn-detail{background:#fff!important;color:#161616!important;opacity:1!important}
#root .tn-baidu-map .tn-detail-body, #root .tn-baidu-map .tn-detail-body>div{color:#161616!important;background:#fff!important;opacity:1!important}
.tn-map-error{position:absolute;z-index:9520;top:159px;left:10px;right:10px;background:#fff2d9;color:#804000;padding:10px;border-radius:8px;font-size:12px;box-shadow:0 2px 6px #3336;cursor:pointer}
.tn-label-pin{border:0!important;background:transparent!important;color:#fff;font:700 11px Arial,sans-serif;white-space:nowrap;pointer-events:none;-webkit-text-stroke:2px #262626;paint-order:stroke fill;text-shadow:0 1px 2px #222}
.tn-reference-page{position:absolute;inset:54px 0 0;background:#000;overflow:auto;display:flex;flex-direction:column;align-items:stretch;z-index:3}
.tn-nmc-img{display:block;width:100%;height:auto;object-fit:contain;object-position:top;flex:none;background:#fff}
.tn-reference-error{color:#d3dfef;font-size:14px;text-align:center;margin-top:30px;padding:20px}
.tn-loading{position:absolute;inset:0;background:linear-gradient(180deg,#01c539 0 65px,#d9eeff 65px,#add2f1 100%);display:flex;justify-content:center;align-items:center;flex-direction:column;gap:14px;padding:24px;text-align:center}
.tn-loading-title{color:#087e38;font-size:28px;font-weight:bold}
.tn-loading-caption{color:#1c5174;font-size:13px}
.tn-progress{height:18px;width:min(86vw,480px);overflow:hidden;background:#ffffffbb;border-radius:13px;border:1px solid #7ba4ac;box-shadow:inset 0 0 4px #235b7533}
.tn-progress>div{background:linear-gradient(90deg,#00b849,#12e5a4);height:100%;transition:width .12s linear}
.tn-progress-caption{font-size:12px;color:#175a59}
.tn-error{color:#9e1212;font-size:12px;max-width:330px}
#root .tn-loading button{background:#02b83f!important;color:#fff!important;border:0!important;border-radius:8px;padding:10px 20px;cursor:pointer}
@media (min-width:800px){.tn-header{height:65px}.tn-map,.tn-baidu-map,.tn-petal-map{top:65px}.tn-reference-page{top:65px}.tn-ticker{top:71px;font-size:18px}.tn-detail{font-size:16px}.tn-header-title{font-size:31px}.tn-ticker b{font-size:24px}}
@media (max-width:375px){.tn-header{gap:4px}.tn-header-title{font-size:21px}.tn-ticker{font-size:10px}.tn-detail{font-size:12px}.tn-quadrant{grid-template-columns:96px repeat(4,minmax(24px,1fr));font-size:11px}.tn-detail-body{padding:8px}}
/* R195: The Leaflet bottom attribution control is disabled in this product only.
   The OSM legal credit is a visible, background-free link near the map's upper edge.
   Do not create a mask, shadow, blurred pane, or any footer element. */
#root .tn-viewport .tn-osm-credit{
  position:absolute!important;top:143px;left:7px;right:auto;z-index:9503;
  display:inline-block;width:auto;height:auto;margin:0!important;padding:0!important;
  background:transparent!important;border:0!important;border-radius:0!important;
  box-shadow:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;
  font:400 9px/1.2 Arial,sans-serif!important;color:#364d67!important;
  opacity:.75;text-decoration:none!important;text-shadow:none!important;
  -webkit-text-stroke:0!important;pointer-events:auto;
}
#root .tn-viewport .tn-osm-credit-after-status{top:166px}
@media (max-width:799px){
  #root .tn-viewport .tn-osm-credit{top:117px;font-size:8px!important}
  #root .tn-viewport .tn-osm-credit-after-status{top:144px}
}

#root .tn-map .leaflet-popup.tn-agency-popup .leaflet-popup-content{width:min(68vw,300px)!important}

/* R192 reference typography: blue summary sits at upper-right, without halo/outline.
   No global app text shadow, stroke or bold transforms may leak into the caption. */
#root .tn-viewport .tn-ticker{left:auto!important;right:0!important;width:100%;top:58px;
  text-align:right!important;padding-right:7px!important;padding-left:5px!important;
  font-size:clamp(11px,3.0vw,16px)!important;font-weight:400!important;
  line-height:1.24!important;letter-spacing:0!important;text-shadow:none!important;
  -webkit-text-stroke:0!important;filter:none!important;color:#112ba5!important}
#root .tn-viewport .tn-ticker div{text-align:right!important;white-space:nowrap;
  font-size:inherit!important;font-weight:400!important;letter-spacing:0!important;
  -webkit-text-stroke:0!important;text-shadow:none!important}
#root .tn-viewport .tn-ticker b{font-size:clamp(18px,5vw,25px)!important;
  font-weight:700!important;line-height:1.25!important;text-shadow:none!important;
  -webkit-text-stroke:0!important;text-align:right!important;margin-top:5px!important}
#root .tn-viewport .tn-header-title{font-weight:400!important;text-shadow:none!important;
  -webkit-text-stroke:0!important;letter-spacing:0!important}
#root .tn-viewport .tn-provider-wrapper{position:relative;flex-shrink:0;display:flex;align-items:center}
#root .tn-viewport .tn-provider-menu{position:absolute;top:calc(100% + 5px);left:0;
  width:132px;background:#fff!important;border:1px solid #329f60!important;
  border-radius:6px;box-shadow:0 3px 12px #1236;z-index:9530;overflow:hidden;
  display:flex;flex-direction:column}
#root .tn-viewport .tn-provider-menu button{color:#174c31!important;background:#fff!important;
  font-size:13px!important;font-weight:500!important;text-align:left!important;
  padding:9px 10px!important;border-bottom:1px solid #e8eee9!important;
  min-height:34px;line-height:1.2;white-space:nowrap}
#root .tn-viewport .tn-provider-menu button:focus,
#root .tn-viewport .tn-provider-menu button:hover{background:#d9f8e5!important}
.tn-petal-map{background:#b0d9ec}
@media (max-width:375px){#root .tn-viewport .tn-ticker{font-size:10.5px!important}}
/* R192 phone screenshot calibration (reference captures have a ~45px web-app toolbar). */
@media (max-width:799px){
  #root .tn-viewport .tn-header{height:46px!important;gap:5px!important;padding:0 5px!important}
  #root .tn-viewport .tn-header .tn-back{height:43px!important;width:45px!important}
  #root .tn-viewport .tn-back svg{height:34px!important;width:34px!important}
  #root .tn-viewport .tn-header .tn-switch{height:41px!important;min-width:55px!important;
    font-size:12px!important;border-radius:9px!important;padding:3px 6px!important}
  #root .tn-viewport .tn-header-title{font-size:clamp(20px,5.4vw,26px)!important}
  #root .tn-viewport .tn-header .tn-reference-link{height:43px!important;width:44px!important}
  #root .tn-viewport .tn-reference-link svg{height:33px!important;width:33px!important}
  #root .tn-viewport .tn-map,#root .tn-viewport .tn-baidu-map,
  #root .tn-viewport .tn-petal-map{top:46px!important}
  #root .tn-viewport .tn-reference-page{top:46px!important}
  #root .tn-viewport .tn-ticker{top:47px!important;
    font-size:clamp(10.5px,3vw,14px)!important;line-height:1.24!important}
  #root .tn-viewport .tn-ticker b{font-size:clamp(17px,4.4vw,21px)!important;margin-top:5px!important}
  #root .tn-viewport .tn-detail{font-size:13px!important;line-height:1.60!important}
  #root .tn-viewport .tn-detail-heading{font-size:14px!important;font-weight:500!important;
    padding:7px 31px 7px 10px!important}
  #root .tn-viewport .tn-detail-body{line-height:1.65!important;padding:8px 10px 5px!important}
  #root .tn-viewport .tn-quadrant{font-size:11.5px!important}
}
/* Text stays fully opaque for native map popups, independent of the app theme. */
#root .tn-viewport .tn-detail, #root .tn-viewport .tn-detail *{
  text-shadow:none!important;-webkit-text-stroke:0!important;filter:none!important}

/* R193 offline water/land sampled from Petal reference images. No map-vendor imagery. */
#root .tn-viewport .tn-map.tn-offline-basemap{background:#a1d2fd!important}
#root .tn-viewport .tn-map.tn-offline-basemap .leaflet-container{background:#a1d2fd!important}
#root .tn-viewport .tn-provider-menu{width:184px!important}

/* R196: match reference header geometry with a reserved column for each control.
   Grid tracks keep the title centered between the map-switch and cyclone-icon
   instead of moving it as controls change width or the app's global styles load. */
#root .tn-viewport .tn-header{
  display:grid!important;grid-template-columns:51px 62px minmax(0,1fr) 51px!important;
  justify-content:stretch!important;align-items:center!important;
}
#root .tn-viewport .tn-header .tn-back{grid-column:1;grid-row:1}
#root .tn-viewport .tn-header .tn-provider-wrapper{grid-column:2;grid-row:1}
#root .tn-viewport .tn-header .tn-header-title{
  grid-column:3;grid-row:1;min-width:0;justify-self:stretch;
  align-self:center;text-align:center!important;line-height:1.14!important;
}
#root .tn-viewport .tn-header .tn-reference-link{grid-column:4;grid-row:1;justify-self:end}
#root .tn-viewport .tn-header.tn-header-reference{grid-template-columns:51px minmax(0,1fr) 51px!important}
#root .tn-viewport .tn-header.tn-header-reference .tn-header-title{grid-column:2}
/* The little unboxed x is INSIDE the white detail panel, not a filled square. */
@media (max-width:799px){
  #root .tn-viewport .tn-header{grid-template-columns:45px 55px minmax(0,1fr) 44px!important;gap:5px!important}
  #root .tn-viewport .tn-header.tn-header-reference{grid-template-columns:45px minmax(0,1fr) 44px!important}
  #root .tn-viewport .tn-header .tn-reference-link{width:44px!important;height:43px!important}
  #root .tn-viewport .tn-reference-link svg{width:39px!important;height:39px!important}
}

/* R196: one accessible close control inside every provider's data card, rather
   than a grey Leaflet button floating on top of the map. React's capture handler
   closes Leaflet, Baidu or Petal info at their original geographic anchor. */
#root .tn-viewport .tn-detail{position:relative!important}
#root .tn-viewport .tn-detail .tn-detail-close{
  position:absolute!important;right:12px!important;top:10px!important;z-index:10!important;
  display:flex!important;align-items:center!important;justify-content:center!important;
  width:22px!important;height:22px!important;min-width:0!important;min-height:0!important;
  margin:0!important;padding:0!important;border:0!important;border-radius:0!important;
  background:transparent!important;color:#898989!important;box-shadow:none!important;
  opacity:1!important;filter:none!important;backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;text-shadow:none!important;-webkit-text-stroke:0!important;
  font:400 16px/1 Arial,sans-serif!important;cursor:pointer;
}
#root .tn-viewport .tn-detail .tn-detail-close:hover,
#root .tn-viewport .tn-detail .tn-detail-close:focus-visible{color:#444!important;background:transparent!important}


/* R197 — user-supplied cyan alpha cyclone, centered precisely on its transparent eye.
   Only the cyan artwork spins; the colored physical-intensity eye stays stationary. */
#root .tn-viewport .tn-cyclone-icon{
  border:0!important;background:transparent!important;box-shadow:none!important;
  display:block!important;overflow:visible!important;pointer-events:auto!important;
}
#root .tn-viewport .tn-cyclone-center{
  display:block;position:relative;width:31px;height:31px;line-height:0;
  background:transparent;transform:translateZ(0);pointer-events:auto;
}
#root .tn-viewport .tn-cyclone-spin{
  display:block;position:absolute;inset:0;width:100%;height:100%;object-fit:contain;
  transform-origin:50% 50%;animation:tn-cyclone-counterclockwise 2s linear infinite;
  will-change:transform;pointer-events:none;
}
#root .tn-viewport .tn-cyclone-eye{
  position:absolute;left:50%;top:50%;width:9px;height:9px;border-radius:50%;
  transform:translate(-50%,-50%);background:var(--tn-intensity,#8320d6);
  pointer-events:none;
}
@keyframes tn-cyclone-counterclockwise{from{transform:rotate(0deg)}to{transform:rotate(-360deg)}}
/* Uploaded 51443.png is already a transparent WHITE cyclone symbol. */
#root .tn-viewport .tn-reference-art{display:block;object-fit:contain;width:40px;height:40px;
  background:transparent!important;box-shadow:none!important;pointer-events:none;filter:none}
#root .tn-viewport .tn-reference-link{border:0!important;background:#00b934!important;
  display:grid!important;place-items:center!important}
#root .tn-viewport .tn-amap-map{position:absolute;inset:54px 0 0;background:#a8d6f7;z-index:2}
@media(max-width:799px){
  #root .tn-viewport .tn-amap-map{top:46px!important}
  #root .tn-viewport .tn-reference-art{height:39px!important;width:39px!important}
}
/* CMA official-style lead-fix labels are placed near their own larger CMA dots. */
#root .tn-viewport .tn-label-pin{z-index:11;pointer-events:none}
/* Center the title against the ENTIRE handset width, not the asymmetric
   left-side back+provider columns.  At 360px it still fits between controls. */
@media(max-width:799px){
  #root .tn-viewport .tn-header .tn-header-title{
    position:absolute!important;left:50%!important;top:50%!important;
    transform:translate(-50%,-50%)!important;width:max-content!important;
    max-width:calc(100vw - 226px)!important;min-width:0!important;
    overflow:visible!important;text-overflow:clip!important;
    font-size:clamp(18px,5.1vw,25px)!important;
  }
  #root .tn-viewport .tn-header.tn-header-reference .tn-header-title{
    max-width:calc(100vw - 112px)!important;
  }
}
@media(max-width:799px){
  #root .tn-viewport .tn-header .tn-header-title{
    position:fixed!important;left:50vw!important;top:23px!important;
    transform:translate(-50%,-50%)!important;
  }
}

/* R198: disclose the user-reference app's map-source identity without truncation. */
#root .tn-viewport .tn-provider-menu {width:min(296px,calc(100vw - 18px))!important;}
#root .tn-viewport .tn-provider-menu button {white-space:normal!important;overflow-wrap:anywhere!important;}

/* R199 -- eliminate inherited frosted-glass backgrounds on map glyphs/captions.
   The user-provided PNGs themselves have transparent alpha backgrounds. */
#root .tn-viewport .tn-header .tn-reference-link,
#root .tn-viewport .tn-header .tn-reference-link:hover,
#root .tn-viewport .tn-header .tn-reference-link:focus {
  background:transparent!important;background-color:transparent!important;
  background-image:none!important;border:0!important;box-shadow:none!important;
  filter:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;
  opacity:1!important;isolation:isolate;
}
#root .tn-viewport .tn-header .tn-reference-link::before,
#root .tn-viewport .tn-header .tn-reference-link::after{content:none!important;display:none!important}
#root .tn-viewport .tn-reference-art {
  opacity:1!important;background:transparent!important;background-color:transparent!important;
  background-image:none!important;border:0!important;box-shadow:none!important;
  mix-blend-mode:normal!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;
}
#root .tn-viewport .tn-map .leaflet-marker-icon.tn-cyclone-icon,
#root .tn-viewport .tn-map .leaflet-marker-icon.tn-label-pin,
#root .tn-viewport .tn-map .leaflet-marker-icon.tn-forecast-lead-icon,
#root .tn-viewport .tn-cyclone-center,
#root .tn-viewport .tn-cyclone-spin,
#root .tn-viewport .tn-label-pin svg,
#root .tn-viewport .tn-forecast-lead-icon svg,
#root .tn-viewport .tn-cyclone-eye {
  background:transparent!important;background-color:transparent!important;background-image:none!important;
  border:0!important;border-radius:0!important;box-shadow:none!important;
  filter:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;
  opacity:1!important;mix-blend-mode:normal!important;
}
#root .tn-viewport .tn-cyclone-eye{border-radius:50%!important;background:var(--tn-intensity,#8320d6)!important}
#root .tn-viewport .tn-map .leaflet-marker-icon.tn-forecast-lead-icon {
  width:110px!important;height:23px!important;line-height:0!important;
  padding:0!important;outline:0!important;white-space:nowrap!important;overflow:visible!important;
}
#root .tn-viewport .tn-map .tn-forecast-lead-icon svg {
  display:block!important;width:110px!important;height:23px!important;overflow:visible!important;
}
#root .tn-viewport .tn-forecast-lead-icon::before,
#root .tn-viewport .tn-forecast-lead-icon::after,
#root .tn-viewport .tn-cyclone-icon::before,
#root .tn-viewport .tn-cyclone-icon::after{
  content:none!important;display:none!important;
}
/* Summary text must remain pure glyphs, never a semi-transparent card. */
#root .tn-viewport .tn-ticker,
#root .tn-viewport .tn-ticker div,
#root .tn-viewport .tn-ticker b {
  background:transparent!important;background-color:transparent!important;background-image:none!important;
  border:0!important;box-shadow:none!important;
  backdrop-filter:none!important;-webkit-backdrop-filter:none!important;opacity:1!important;
}

/* The global round126 dialog-button selector contains IDs inside :is(), giving
   it two-ID specificity.  An actual ID scoped to this one control is necessary
   to prevent the inherited gray fill and inset shadow from returning. */
#root .tn-viewport #tn-network-reference-icon:not(#aether-default-dialog-button),
#root .tn-viewport #tn-network-reference-icon:not(#aether-default-dialog-button):hover,
#root .tn-viewport #tn-network-reference-icon:not(#aether-default-dialog-button):focus-visible{
  background-color:transparent!important;background:transparent!important;
  box-shadow:none!important;border:0!important;backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;filter:none!important;
}

/* R200 mobile map stability and screenshot typography correction.
   Leaflet now uses a common SVG layer (rather than deferred Canvas repaint)
   for cyclone/rings/tracks/fixes during two-finger map gestures. */
#root .tn-viewport .tn-map .leaflet-overlay-pane svg.leaflet-zoom-animated,
#root .tn-viewport .tn-map .leaflet-overlay-pane svg.leaflet-zoom-hide {
  shape-rendering:geometricPrecision;
}
#root .tn-viewport .tn-map .leaflet-overlay-pane path {
  stroke-linecap:round;stroke-linejoin:round;
}
/* Reference text is fairly light.  Labels remain transparent, with a thin
   dark outline only around glyph strokes -- no dark rectangle/glass backdrop. */
#root .tn-viewport .tn-ticker {
  font-family:'Microsoft YaHei','PingFang SC','Noto Sans CJK SC',Arial,sans-serif!important;
  font-size:clamp(10px,2.72vw,14.4px)!important;
  font-weight:400!important;
  line-height:1.24!important;
  text-shadow:none!important;-webkit-text-stroke:0!important;
}
#root .tn-viewport .tn-ticker div {
  font-size:inherit!important;font-weight:400!important;
  text-shadow:none!important;-webkit-text-stroke:0!important;
}
#root .tn-viewport .tn-map .leaflet-marker-icon.tn-forecast-lead-icon {
  width:98px!important;height:19px!important;
}
#root .tn-viewport .tn-map .tn-forecast-lead-icon svg {
  width:98px!important;height:19px!important;
}
/* Override the older 2px CSS text stroke: the transparent SVG already draws
   its OWN calibrated 1.25px outline and must not get a second halo. */
#root .tn-viewport .tn-map .tn-forecast-lead-icon,
#root .tn-viewport .tn-map .tn-forecast-lead-icon svg,
#root .tn-viewport .tn-map .tn-forecast-lead-icon svg text {
  -webkit-text-stroke:0!important;text-shadow:none!important;
  filter:none!important;backdrop-filter:none!important;
}

/* R201: screenshot-calibrated, unboxed header controls.  Scoped IDs beat the
   application's global dialog / glass button selectors without altering menus. */
#root .tn-viewport .tn-header #tn-network-back:not(#aether-default-dialog-button),
#root .tn-viewport .tn-header #tn-network-back:not(#aether-default-dialog-button):hover,
#root .tn-viewport .tn-header #tn-network-back:not(#aether-default-dialog-button):focus-visible {
  box-sizing:border-box!important;
  background:transparent!important;background-color:transparent!important;
  background-image:none!important;
  border:1.5px solid #fff!important;border-radius:0!important;
  box-shadow:none!important;text-shadow:none!important;
  backdrop-filter:none!important;-webkit-backdrop-filter:none!important;
  filter:none!important;opacity:1!important;outline:none!important;
}
#root .tn-viewport .tn-header #tn-network-switch:not(#aether-default-dialog-button),
#root .tn-viewport .tn-header #tn-network-switch:not(#aether-default-dialog-button):hover,
#root .tn-viewport .tn-header #tn-network-switch:not(#aether-default-dialog-button):focus-visible {
  box-sizing:border-box!important;
  background:transparent!important;background-color:transparent!important;
  background-image:none!important;
  border:1.5px solid #fff!important;border-radius:9px!important;
  box-shadow:none!important;text-shadow:none!important;
  backdrop-filter:none!important;-webkit-backdrop-filter:none!important;
  filter:none!important;opacity:1!important;outline:none!important;
  width:46px!important;height:46px!important;min-width:46px!important;
  min-height:46px!important;max-width:46px!important;max-height:46px!important;
  padding:3px 0!important;
  display:flex!important;flex-direction:column!important;align-items:center!important;
  justify-content:center!important;gap:0!important;
  white-space:nowrap!important;line-height:1!important;
}
#root .tn-viewport .tn-header #tn-network-switch .tn-switch-first,
#root .tn-viewport .tn-header #tn-network-switch .tn-switch-second {
  display:block!important;position:static!important;
  width:auto!important;height:auto!important;
  margin:0!important;padding:0!important;
  background:transparent!important;border:0!important;box-shadow:none!important;
  text-shadow:none!important;filter:none!important;opacity:1!important;
  color:#fff!important;font-family:inherit!important;text-align:center!important;
  letter-spacing:0!important;white-space:nowrap!important;
}
#root .tn-viewport .tn-header #tn-network-switch .tn-switch-first {
  font-size:14px!important;font-weight:600!important;line-height:16px!important;
}
#root .tn-viewport .tn-header #tn-network-switch .tn-switch-second {
  font-size:12px!important;font-weight:600!important;line-height:14px!important;
}
#root .tn-viewport .tn-header #tn-network-reference-icon:not(#aether-default-dialog-button) {
  background:transparent!important;background-color:transparent!important;
  background-image:none!important;border:0!important;box-shadow:none!important;
  backdrop-filter:none!important;-webkit-backdrop-filter:none!important;
  filter:none!important;opacity:1!important;outline:none!important;
}
/* The real reference button ID is tn-network-reference-icon; keep this one
   selector alongside the already-existing R199 override for theme immunity. */
#root .tn-viewport .tn-header #tn-network-reference-icon:not(#aether-default-dialog-button):hover,
#root .tn-viewport .tn-header #tn-network-reference-icon:not(#aether-default-dialog-button):focus-visible {
  background:transparent!important;background-color:transparent!important;
  border:0!important;box-shadow:none!important;filter:none!important;
  backdrop-filter:none!important;-webkit-backdrop-filter:none!important;
}
#root .tn-viewport .tn-header #tn-network-back::before,
#root .tn-viewport .tn-header #tn-network-back::after,
#root .tn-viewport .tn-header #tn-network-switch::before,
#root .tn-viewport .tn-header #tn-network-switch::after {
  content:none!important;display:none!important;
}
@media(max-width:799px){
  #root .tn-viewport .tn-header #tn-network-switch:not(#aether-default-dialog-button),
  #root .tn-viewport .tn-header #tn-network-switch:not(#aether-default-dialog-button):hover,
  #root .tn-viewport .tn-header #tn-network-switch:not(#aether-default-dialog-button):focus-visible {
    width:41px!important;height:41px!important;min-width:41px!important;min-height:41px!important;
    max-width:41px!important;max-height:41px!important;border-radius:8px!important;
  }
  #root .tn-viewport .tn-header #tn-network-switch .tn-switch-first {font-size:12.5px!important;line-height:14px!important}
  #root .tn-viewport .tn-header #tn-network-switch .tn-switch-second {font-size:11px!important;line-height:12.5px!important}
}

/* R202: labels and cyclone now belong to the same geographic SVG overlay as
   tracks and wind-radii, not the delayed Leaflet DOM marker pane. SVG glyphs
   never render the inherited glass tile, and they pinch-zoom as one unit. */
#root .tn-viewport .tn-map svg .tn-geo-glyph,
#root .tn-viewport .tn-map svg .tn-geo-glyph * {
  background:none!important;filter:none!important;box-shadow:none!important;
  backdrop-filter:none!important;-webkit-backdrop-filter:none!important;
  opacity:1!important;mix-blend-mode:normal!important;
}
#root .tn-viewport .tn-map svg .tn-geo-lead {
  paint-order:stroke fill;stroke-linejoin:round;stroke:#292929;stroke-width:1.25px;
  fill:#fff;font-weight:600;pointer-events:none;
}
#root .tn-viewport .tn-map svg .tn-geo-cyclone-spin {
  transform-box:fill-box;transform-origin:center;
  animation:tn-cyclone-counterclockwise 2s linear infinite;
  pointer-events:none;
}
#root .tn-viewport .tn-map svg .tn-geo-cyclone-eye {stroke:none;pointer-events:none}
#root .tn-viewport .tn-map svg .leaflet-interactive[fill]:not(.tn-geo-cyclone-eye) {
  /* History/forecast SVG circles use a barely visible, translucent fine outline. */
}

/* R206 — single Gaode source; no map-provider menu or top-left menu popup. */
#root .tn-viewport .tn-header,
#root .tn-viewport .tn-header.tn-header-reference {
  grid-template-columns:51px minmax(0,1fr) 51px!important;
}
#root .tn-viewport .tn-header .tn-header-title,
#root .tn-viewport .tn-header.tn-header-reference .tn-header-title {
  grid-column:2!important;
  grid-row:1!important;
  text-align:center!important;
}
#root .tn-viewport .tn-header .tn-reference-link {grid-column:3!important;grid-row:1!important}
#root .tn-viewport .tn-header .tn-back {grid-column:1!important;grid-row:1!important}
/* Do not let old all-device glass styling add a backdrop to the arrow. */
#root .tn-viewport .tn-header #tn-network-back:not(#aether-default-dialog-button),
#root .tn-viewport .tn-header #tn-network-back:not(#aether-default-dialog-button):hover,
#root .tn-viewport .tn-header #tn-network-back:not(#aether-default-dialog-button):focus-visible {
  border:0!important;
  outline:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
/* Short, unobtrusive credit in the lower left. No backdrop, panel, or shadow. */
#root .tn-viewport .tn-osm-credit,
#root .tn-viewport .tn-osm-credit-after-status {
  top:auto!important;
  bottom:calc(9px + env(safe-area-inset-bottom, 0px))!important;
  left:7px!important;right:auto!important;
  z-index:9502!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  backdrop-filter:none!important;-webkit-backdrop-filter:none!important;
  font:400 9px/1.1 Arial,sans-serif!important;
  color:#3b5360!important;
  opacity:.58!important;
  white-space:nowrap!important;
  max-width:120px!important;
  pointer-events:auto!important;
}
@media(max-width:799px){
  #root .tn-viewport .tn-header,
  #root .tn-viewport .tn-header.tn-header-reference {
    grid-template-columns:45px minmax(0,1fr) 44px!important;
  }
  #root .tn-viewport .tn-header .tn-header-title,
  #root .tn-viewport .tn-header.tn-header-reference .tn-header-title {
    max-width:calc(100vw - 116px)!important;
  }
  #root .tn-viewport .tn-osm-credit {font-size:8px!important;}
}

/* R208: screenshot-matched map controls with the user's transparent PNG artwork.
   No glass tiles or grey pseudo-elements may leak from app-wide button rules. */
#root .tn-viewport .tn-header,
#root .tn-viewport .tn-header.tn-header-reference{
  grid-template-columns:46px minmax(0,1fr) repeat(3,35px)!important;
  gap:4px!important;padding:0 5px!important;
}
#root .tn-viewport .tn-header.tn-header-reference{
  grid-template-columns:46px minmax(0,1fr) 0px 0px 0px!important;
}
#root .tn-viewport .tn-header .tn-header-title,
#root .tn-viewport .tn-header.tn-header-reference .tn-header-title{
  grid-column:2!important;min-width:0!important;max-width:none!important;
  text-align:center!important;margin:0!important;
}
#root .tn-viewport .tn-header .tn-share-action{grid-column:3!important;grid-row:1!important}
#root .tn-viewport .tn-header .tn-reference-link{grid-column:4!important;grid-row:1!important}
#root .tn-viewport .tn-header .tn-history-action{grid-column:5!important;grid-row:1!important}
#root .tn-viewport .tn-header .tn-header-action,
#root .tn-viewport .tn-header .tn-header-action:hover,
#root .tn-viewport .tn-header .tn-header-action:focus-visible,
#root .tn-viewport .tn-header #tn-network-reference-icon:not(#aether-default-dialog-button){
  display:grid!important;place-items:center!important;
  width:35px!important;height:43px!important;min-width:0!important;min-height:0!important;
  max-width:none!important;max-height:none!important;
  padding:0!important;margin:0!important;border:0!important;border-radius:0!important;
  background:transparent!important;box-shadow:none!important;filter:none!important;
  backdrop-filter:none!important;-webkit-backdrop-filter:none!important;
  outline:none!important;opacity:1!important;
}
#root .tn-viewport .tn-header .tn-header-action img{
  display:block!important;width:34px!important;height:34px!important;object-fit:contain!important;
  background:transparent!important;box-shadow:none!important;filter:none!important;opacity:1!important;
}
#root .tn-viewport .tn-header .tn-header-action:disabled{opacity:.5!important}
#root .tn-viewport .tn-header .tn-header-action::before,
#root .tn-viewport .tn-header .tn-header-action::after{display:none!important;content:none!important}
#root .tn-viewport .tn-right-tools{
  position:absolute!important;right:10px!important;top:65.4%!important;z-index:9503!important;
  display:flex!important;flex-direction:column!important;gap:7px!important;
  background:transparent!important;pointer-events:auto;
}
#root .tn-viewport .tn-floating-button,
#root .tn-viewport .tn-replay-button{
  appearance:none!important;display:grid!important;place-items:center!important;
  width:42px!important;height:42px!important;padding:0!important;margin:0!important;
  background:transparent!important;border:0!important;border-radius:0!important;
  box-shadow:none!important;filter:none!important;
  backdrop-filter:none!important;-webkit-backdrop-filter:none!important;
  outline:none!important;cursor:pointer!important;opacity:1!important;
}
#root .tn-viewport .tn-floating-button img,
#root .tn-viewport .tn-replay-button img{
  width:100%!important;height:100%!important;display:block!important;object-fit:contain!important;
  background:transparent!important;box-shadow:none!important;filter:none!important;
}
#root .tn-viewport .tn-replay-button{
  position:absolute!important;left:9px!important;bottom:calc(52px + env(safe-area-inset-bottom, 0px))!important;
  width:54px!important;height:54px!important;z-index:9503!important;
}
#root .tn-viewport .tn-floating-button::before,
#root .tn-viewport .tn-floating-button::after,
#root .tn-viewport .tn-replay-button::before,
#root .tn-viewport .tn-replay-button::after{content:none!important;display:none!important}
/* Local, keyless night styling on genuine OSM raster data. Not a CARTO endpoint. */
#root .tn-viewport .tn-map img.tn-osm-night-tiles{
  filter:invert(.93) hue-rotate(175deg) saturate(.65) brightness(.78) contrast(1.14)!important;
}
/* R208 typographic rebalancing. The lead-times travel with SVG map geometry. */
#root .tn-viewport .tn-map svg .tn-geo-lead{
  stroke:#303030!important;stroke-width:.7px!important;
  font-weight:500!important;font-size:9px!important;
  paint-order:stroke fill!important;stroke-linejoin:round!important;
}
#root .tn-viewport .tn-ticker{
  font-size:clamp(12.5px,3.5vw,16.5px)!important;
  font-weight:400!important;line-height:1.24!important;
}
#root .tn-viewport .tn-ticker b.tn-status-active,
#root .tn-viewport .tn-ticker b.tn-status-ended{
  display:block!important;text-align:center!important;
  font-size:clamp(15px,3.6vw,18px)!important;
  font-weight:600!important;line-height:1.12!important;
  margin-top:5px!important;text-shadow:none!important;
}
#root .tn-viewport .tn-ticker b.tn-status-active{color:#e50019!important}
#root .tn-viewport .tn-ticker b.tn-status-ended{color:#00ac24!important}
@media(max-width:375px){
  #root .tn-viewport .tn-header,
  #root .tn-viewport .tn-header.tn-header-reference{
    grid-template-columns:42px minmax(0,1fr) repeat(3,32px)!important;gap:2px!important;
  }
  #root .tn-viewport .tn-header .tn-header-action,
  #root .tn-viewport .tn-header #tn-network-reference-icon:not(#aether-default-dialog-button){width:32px!important}
  #root .tn-viewport .tn-header .tn-header-action img{width:30px!important;height:30px!important}
  #root .tn-viewport .tn-ticker{font-size:clamp(11.5px,3.5vw,13.5px)!important}
}

/* Legible mandatory OpenStreetMap attribution on the dark OSM-derived tiles. */
#root .tn-viewport .tn-osm-credit.tn-credit-night{
  color:#ffffff!important;opacity:.87!important;font-size:10px!important;
  text-shadow:0 1px 2px #001a27!important;max-width:210px!important;
}

/* R211: all artwork-only controls are chrome-free, even when this full-screen
   product is mounted under a parent [role=dialog] and the global R126 glass
   rules use :is([role=dialog]) ID specificity. The actual UI controls are
   transparent; only the supplied PNG artwork (including its intended light
   rounded traffic/daylight tiles) is visible. */
#root .tn-viewport button.tn-header-action,
#root .tn-viewport button.tn-floating-button,
#root .tn-viewport button.tn-replay-button,
#root .tn-viewport button.tn-back {
  appearance:none!important;
  background:transparent!important;background-color:transparent!important;background-image:none!important;
  border:0!important;box-shadow:none!important;
  outline:0!important;filter:none!important;
  backdrop-filter:none!important;-webkit-backdrop-filter:none!important;
  opacity:1!important;mix-blend-mode:normal!important;
  -webkit-tap-highlight-color:transparent!important;
}
#root .tn-viewport button.tn-header-action:is(:hover,:active,:focus-visible),
#root .tn-viewport button.tn-floating-button:is(:hover,:active,:focus-visible),
#root .tn-viewport button.tn-replay-button:is(:hover,:active,:focus-visible),
#root .tn-viewport button.tn-back:is(:hover,:active,:focus-visible) {
  background:transparent!important;background-color:transparent!important;background-image:none!important;
  border:0!important;box-shadow:none!important;filter:none!important;
  backdrop-filter:none!important;-webkit-backdrop-filter:none!important;
}
#root .tn-viewport :is(.tn-header-action,.tn-floating-button,.tn-replay-button,.tn-back)::before,
#root .tn-viewport :is(.tn-header-action,.tn-floating-button,.tn-replay-button,.tn-back)::after {
  display:none!important;content:none!important;
}
#root .tn-viewport :is(.tn-header-action,.tn-floating-button,.tn-replay-button) > img {
  background:transparent!important;background-image:none!important;box-shadow:none!important;
  border:0!important;filter:none!important;opacity:1!important;
}


/* R212: restore the provider selector beside the back arrow. Day/night remains a
   direct Amap <-> OSM Night shortcut; ordinary OSM is available only in this menu. */
#root .tn-viewport .tn-header:not(.tn-header-reference){
  grid-template-columns:45px 46px minmax(0,1fr) repeat(3,35px)!important;
  gap:4px!important;padding:0 5px!important;
}
#root .tn-viewport .tn-header:not(.tn-header-reference) .tn-back{grid-column:1!important;grid-row:1!important}
#root .tn-viewport .tn-header:not(.tn-header-reference) .tn-provider-wrapper{
  position:relative!important;grid-column:2!important;grid-row:1!important;
  display:flex!important;align-items:center!important;justify-content:center!important;
  width:46px!important;height:46px!important;min-width:0!important;z-index:9540!important;
}
#root .tn-viewport .tn-header #tn-network-switch:not(#aether-default-dialog-button),
#root .tn-viewport .tn-header #tn-network-switch:not(#aether-default-dialog-button):hover,
#root .tn-viewport .tn-header #tn-network-switch:not(#aether-default-dialog-button):focus-visible{
  appearance:none!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;
  width:41px!important;height:41px!important;min-width:41px!important;min-height:41px!important;
  max-width:41px!important;max-height:41px!important;padding:2px 0!important;margin:0!important;
  border:1.5px solid #fff!important;border-radius:8px!important;
  background:transparent!important;background-color:transparent!important;background-image:none!important;
  box-shadow:none!important;filter:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;
  color:#fff!important;line-height:1!important;gap:0!important;white-space:nowrap!important;
}
#root .tn-viewport .tn-header #tn-network-switch .tn-switch-first,
#root .tn-viewport .tn-header #tn-network-switch .tn-switch-second{
  display:block!important;position:static!important;width:auto!important;height:auto!important;margin:0!important;padding:0!important;
  color:#fff!important;background:transparent!important;border:0!important;box-shadow:none!important;
  font-family:inherit!important;text-align:center!important;letter-spacing:0!important;white-space:nowrap!important;
}
#root .tn-viewport .tn-header #tn-network-switch .tn-switch-first{font-size:12.5px!important;font-weight:600!important;line-height:14px!important}
#root .tn-viewport .tn-header #tn-network-switch .tn-switch-second{font-size:11px!important;font-weight:600!important;line-height:12px!important}
#root .tn-viewport .tn-provider-menu{
  position:absolute!important;top:calc(100% + 5px)!important;left:0!important;
  display:flex!important;flex-direction:column!important;width:184px!important;max-width:calc(100vw - 58px)!important;
  padding:3px!important;overflow:hidden!important;background:#fff!important;color:#174c31!important;
  border:1px solid #329f60!important;border-radius:7px!important;box-shadow:0 3px 12px #1236!important;z-index:9545!important;
}
#root .tn-viewport .tn-provider-menu button{
  appearance:none!important;display:flex!important;align-items:center!important;justify-content:space-between!important;
  width:100%!important;min-height:36px!important;padding:8px 10px!important;margin:0!important;
  color:#174c31!important;background:#fff!important;border:0!important;border-bottom:1px solid #e8eee9!important;
  border-radius:0!important;box-shadow:none!important;font-size:13px!important;font-weight:500!important;line-height:1.25!important;
  text-align:left!important;white-space:normal!important;
}
#root .tn-viewport .tn-provider-menu button:last-child{border-bottom:0!important}
#root .tn-viewport .tn-provider-menu button:is(:hover,:focus-visible,.is-selected){background:#d9f8e5!important;outline:none!important}
#root .tn-viewport .tn-header .tn-header-title{grid-column:3!important;grid-row:1!important;min-width:0!important}
#root .tn-viewport .tn-header .tn-share-action{grid-column:4!important;grid-row:1!important}
#root .tn-viewport .tn-header .tn-reference-link{grid-column:5!important;grid-row:1!important}
#root .tn-viewport .tn-header .tn-history-action{grid-column:6!important;grid-row:1!important}
#root .tn-viewport .tn-header.tn-header-reference{grid-template-columns:45px minmax(0,1fr) repeat(3,0px)!important}
#root .tn-viewport .tn-header.tn-header-reference .tn-header-title{grid-column:2!important}
@media(max-width:799px){
  #root .tn-viewport .tn-header:not(.tn-header-reference){grid-template-columns:45px 46px minmax(0,1fr) repeat(3,32px)!important;gap:2px!important;padding:0 5px!important}
  #root .tn-viewport .tn-header:not(.tn-header-reference) .tn-provider-wrapper{width:44px!important;height:44px!important}
  #root .tn-viewport .tn-header #tn-network-switch:not(#aether-default-dialog-button),
  #root .tn-viewport .tn-header #tn-network-switch:not(#aether-default-dialog-button):hover,
  #root .tn-viewport .tn-header #tn-network-switch:not(#aether-default-dialog-button):focus-visible{
    width:40px!important;height:40px!important;min-width:40px!important;min-height:40px!important;max-width:40px!important;max-height:40px!important;
  }
  #root .tn-viewport .tn-header .tn-header-title{max-width:calc(100vw - 250px)!important}
  #root .tn-viewport .tn-header .tn-header-action,
  #root .tn-viewport .tn-header #tn-network-reference-icon:not(#aether-default-dialog-button){width:32px!important;height:40px!important}
  #root .tn-viewport .tn-header .tn-header-action img{width:30px!important;height:30px!important}
  #root .tn-viewport .tn-header.tn-header-reference{grid-template-columns:45px minmax(0,1fr) repeat(3,0px)!important}
}
/* R212 control calibration: slightly smaller buttons sit lower on the map. The
   supplied frames are forced to a 1:1 square so different PNG canvas ratios do
   not make the rounded-square controls look stretched or uneven. */
#root .tn-viewport .tn-right-tools{
  right:9px!important;top:67%!important;gap:5px!important;
}
#root .tn-viewport .tn-floating-button{
  width:38px!important;height:38px!important;min-width:38px!important;min-height:38px!important;
  max-width:38px!important;max-height:38px!important;overflow:hidden!important;border-radius:9px!important;
}
#root .tn-viewport .tn-floating-button img{
  width:100%!important;height:100%!important;object-fit:fill!important;aspect-ratio:1/1!important;
}
#root .tn-viewport .tn-replay-button{
  left:9px!important;bottom:calc(52px + env(safe-area-inset-bottom,0px))!important;
  width:46px!important;height:46px!important;min-width:46px!important;min-height:46px!important;
  max-width:46px!important;max-height:46px!important;overflow:hidden!important;border-radius:50%!important;
}
#root .tn-viewport .tn-replay-button img{width:100%!important;height:100%!important;object-fit:fill!important;aspect-ratio:1/1!important}
/* Slightly stronger outline/weight for the forecast lead labels without bringing
   back the old heavy black halo. */
#root .tn-viewport .tn-map svg .tn-geo-lead{
  stroke-width:.85px!important;font-weight:600!important;stroke-linejoin:round!important;
}
#root .tn-viewport .tn-ticker b.tn-status-active,
#root .tn-viewport .tn-ticker b.tn-status-ended{font-weight:500!important}


/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */

@layer properties {
  @supports (((-webkit-hyphens: none)) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color: rgb(from red r g b)))) {
    *, :before, :after, ::backdrop {
      --tw-translate-x: 0;
      --tw-translate-y: 0;
      --tw-translate-z: 0;
      --tw-rotate-x: initial;
      --tw-rotate-y: initial;
      --tw-rotate-z: initial;
      --tw-skew-x: initial;
      --tw-skew-y: initial;
      --tw-pan-x: initial;
      --tw-pan-y: initial;
      --tw-pinch-zoom: initial;
      --tw-scrollbar-thumb: #0000;
      --tw-scrollbar-track: #0000;
      --tw-space-y-reverse: 0;
      --tw-space-x-reverse: 0;
      --tw-divide-y-reverse: 0;
      --tw-border-style: solid;
      --tw-gradient-position: initial;
      --tw-gradient-from: #0000;
      --tw-gradient-via: #0000;
      --tw-gradient-to: #0000;
      --tw-gradient-stops: initial;
      --tw-gradient-via-stops: initial;
      --tw-gradient-from-position: 0%;
      --tw-gradient-via-position: 50%;
      --tw-gradient-to-position: 100%;
      --tw-leading: initial;
      --tw-font-weight: initial;
      --tw-tracking: initial;
      --tw-ordinal: initial;
      --tw-slashed-zero: initial;
      --tw-numeric-figure: initial;
      --tw-numeric-spacing: initial;
      --tw-numeric-fraction: initial;
      --tw-shadow: 0 0 #0000;
      --tw-shadow-color: initial;
      --tw-shadow-alpha: 100%;
      --tw-inset-shadow: 0 0 #0000;
      --tw-inset-shadow-color: initial;
      --tw-inset-shadow-alpha: 100%;
      --tw-ring-color: initial;
      --tw-ring-shadow: 0 0 #0000;
      --tw-inset-ring-color: initial;
      --tw-inset-ring-shadow: 0 0 #0000;
      --tw-ring-inset: initial;
      --tw-ring-offset-width: 0px;
      --tw-ring-offset-color: #fff;
      --tw-ring-offset-shadow: 0 0 #0000;
      --tw-outline-style: solid;
      --tw-blur: initial;
      --tw-brightness: initial;
      --tw-contrast: initial;
      --tw-grayscale: initial;
      --tw-hue-rotate: initial;
      --tw-invert: initial;
      --tw-opacity: initial;
      --tw-saturate: initial;
      --tw-sepia: initial;
      --tw-drop-shadow: initial;
      --tw-drop-shadow-color: initial;
      --tw-drop-shadow-alpha: 100%;
      --tw-drop-shadow-size: initial;
      --tw-backdrop-blur: initial;
      --tw-backdrop-brightness: initial;
      --tw-backdrop-contrast: initial;
      --tw-backdrop-grayscale: initial;
      --tw-backdrop-hue-rotate: initial;
      --tw-backdrop-invert: initial;
      --tw-backdrop-opacity: initial;
      --tw-backdrop-saturate: initial;
      --tw-backdrop-sepia: initial;
      --tw-duration: initial;
      --tw-ease: initial;
      --tw-scale-x: 1;
      --tw-scale-y: 1;
      --tw-scale-z: 1;
    }
  }
}

@layer theme {
  :root, :host {
    --font-sans: "Inter", system-ui, -apple-system, sans-serif;
    --font-mono: "JetBrains Mono", SFMono-Regular, Consolas, monospace;
    --color-red-50: oklch(97.1% .013 17.38);
    --color-red-100: oklch(93.6% .032 17.717);
    --color-red-200: oklch(88.5% .062 18.334);
    --color-red-300: oklch(80.8% .114 19.571);
    --color-red-400: oklch(70.4% .191 22.216);
    --color-red-500: oklch(63.7% .237 25.331);
    --color-red-600: oklch(57.7% .245 27.325);
    --color-red-700: oklch(50.5% .213 27.518);
    --color-red-800: oklch(44.4% .177 26.899);
    --color-red-900: oklch(39.6% .141 25.723);
    --color-red-950: oklch(25.8% .092 26.042);
    --color-orange-100: oklch(95.4% .038 75.164);
    --color-orange-200: oklch(90.1% .076 70.697);
    --color-orange-300: oklch(83.7% .128 66.29);
    --color-orange-400: oklch(75% .183 55.934);
    --color-orange-500: oklch(70.5% .213 47.604);
    --color-orange-800: oklch(47% .157 37.304);
    --color-orange-900: oklch(40.8% .123 38.172);
    --color-orange-950: oklch(26.6% .079 36.259);
    --color-amber-100: oklch(96.2% .059 95.617);
    --color-amber-200: oklch(92.4% .12 95.746);
    --color-amber-300: oklch(87.9% .169 91.605);
    --color-amber-400: oklch(82.8% .189 84.429);
    --color-amber-500: oklch(76.9% .188 70.08);
    --color-amber-600: oklch(66.6% .179 58.318);
    --color-amber-700: oklch(55.5% .163 48.998);
    --color-amber-800: oklch(47.3% .137 46.201);
    --color-amber-900: oklch(41.4% .112 45.904);
    --color-amber-950: oklch(27.9% .077 45.635);
    --color-yellow-100: oklch(97.3% .071 103.193);
    --color-yellow-500: oklch(79.5% .184 86.047);
    --color-green-50: oklch(98.2% .018 155.826);
    --color-green-100: oklch(96.2% .044 156.743);
    --color-green-500: oklch(72.3% .219 149.579);
    --color-green-700: oklch(52.7% .154 150.069);
    --color-emerald-100: oklch(95% .052 163.051);
    --color-emerald-200: oklch(90.5% .093 164.15);
    --color-emerald-300: oklch(84.5% .143 164.978);
    --color-emerald-400: oklch(76.5% .177 163.223);
    --color-emerald-500: oklch(69.6% .17 162.48);
    --color-emerald-600: oklch(59.6% .145 163.225);
    --color-emerald-700: oklch(50.8% .118 165.612);
    --color-emerald-800: oklch(43.2% .095 166.913);
    --color-emerald-900: oklch(37.8% .077 168.94);
    --color-emerald-950: oklch(26.2% .051 172.552);
    --color-teal-400: oklch(77.7% .152 181.912);
    --color-teal-500: oklch(70.4% .14 182.503);
    --color-teal-600: oklch(60% .118 184.704);
    --color-teal-700: oklch(51.1% .096 186.391);
    --color-cyan-100: oklch(95.6% .045 203.388);
    --color-cyan-200: oklch(91.7% .08 205.041);
    --color-cyan-300: oklch(86.5% .127 207.078);
    --color-cyan-400: oklch(78.9% .154 211.53);
    --color-cyan-500: oklch(71.5% .143 215.221);
    --color-cyan-600: oklch(60.9% .126 221.723);
    --color-cyan-700: oklch(52% .105 223.128);
    --color-cyan-800: oklch(45% .085 224.283);
    --color-cyan-900: oklch(39.8% .07 227.392);
    --color-cyan-950: oklch(30.2% .056 229.695);
    --color-sky-50: oklch(97.7% .013 236.62);
    --color-sky-100: oklch(95.1% .026 236.824);
    --color-sky-200: oklch(90.1% .058 230.902);
    --color-sky-300: oklch(82.8% .111 230.318);
    --color-sky-400: oklch(74.6% .16 232.661);
    --color-sky-500: oklch(68.5% .169 237.323);
    --color-sky-600: oklch(58.8% .158 241.966);
    --color-sky-700: oklch(50% .134 242.749);
    --color-sky-800: oklch(44.3% .11 240.79);
    --color-sky-900: oklch(39.1% .09 240.876);
    --color-sky-950: oklch(29.3% .066 243.157);
    --color-blue-50: oklch(97% .014 254.604);
    --color-blue-100: oklch(93.2% .032 255.585);
    --color-blue-200: oklch(88.2% .059 254.128);
    --color-blue-300: oklch(80.9% .105 251.813);
    --color-blue-400: oklch(70.7% .165 254.624);
    --color-blue-500: oklch(62.3% .214 259.815);
    --color-blue-600: oklch(54.6% .245 262.881);
    --color-blue-700: oklch(48.8% .243 264.376);
    --color-blue-800: oklch(42.4% .199 265.638);
    --color-blue-900: oklch(37.9% .146 265.522);
    --color-blue-950: oklch(28.2% .091 267.935);
    --color-indigo-100: oklch(93% .034 272.788);
    --color-indigo-200: oklch(87% .065 274.039);
    --color-indigo-300: oklch(78.5% .115 274.713);
    --color-indigo-400: oklch(67.3% .182 276.935);
    --color-indigo-500: oklch(58.5% .233 277.117);
    --color-indigo-600: oklch(51.1% .262 276.966);
    --color-indigo-700: oklch(45.7% .24 277.023);
    --color-indigo-800: oklch(39.8% .195 277.366);
    --color-indigo-900: oklch(35.9% .144 278.697);
    --color-indigo-950: oklch(25.7% .09 281.288);
    --color-violet-100: oklch(94.3% .029 294.588);
    --color-violet-200: oklch(89.4% .057 293.283);
    --color-violet-300: oklch(81.1% .111 293.571);
    --color-violet-400: oklch(70.2% .183 293.541);
    --color-violet-500: oklch(60.6% .25 292.717);
    --color-violet-700: oklch(49.1% .27 292.581);
    --color-violet-800: oklch(43.2% .232 292.759);
    --color-violet-900: oklch(38% .189 293.745);
    --color-violet-950: oklch(28.3% .141 291.089);
    --color-purple-300: oklch(82.7% .119 306.383);
    --color-purple-400: oklch(71.4% .203 305.504);
    --color-purple-500: oklch(62.7% .265 303.9);
    --color-purple-600: oklch(55.8% .288 302.321);
    --color-fuchsia-200: oklch(90.3% .076 319.62);
    --color-fuchsia-300: oklch(83.3% .145 321.434);
    --color-fuchsia-400: oklch(74% .238 322.16);
    --color-fuchsia-500: oklch(66.7% .295 322.15);
    --color-fuchsia-800: oklch(45.2% .211 324.591);
    --color-fuchsia-900: oklch(40.1% .17 325.612);
    --color-fuchsia-950: oklch(29.3% .136 325.661);
    --color-pink-500: oklch(65.6% .241 354.308);
    --color-rose-100: oklch(94.1% .03 12.58);
    --color-rose-200: oklch(89.2% .058 10.001);
    --color-rose-300: oklch(81% .117 11.638);
    --color-rose-400: oklch(71.2% .194 13.428);
    --color-rose-500: oklch(64.5% .246 16.439);
    --color-rose-600: oklch(58.6% .253 17.585);
    --color-rose-700: oklch(51.4% .222 16.935);
    --color-rose-800: oklch(45.5% .188 13.697);
    --color-rose-900: oklch(41% .159 10.272);
    --color-rose-950: oklch(27.1% .105 12.094);
    --color-slate-50: oklch(98.4% .003 247.858);
    --color-slate-100: oklch(96.8% .007 247.896);
    --color-slate-200: oklch(92.9% .013 255.508);
    --color-slate-300: oklch(86.9% .022 252.894);
    --color-slate-400: oklch(70.4% .04 256.788);
    --color-slate-500: oklch(55.4% .046 257.417);
    --color-slate-600: oklch(44.6% .043 257.281);
    --color-slate-700: oklch(37.2% .044 257.287);
    --color-slate-800: oklch(27.9% .041 260.031);
    --color-slate-900: oklch(20.8% .042 265.755);
    --color-slate-950: oklch(12.9% .042 264.695);
    --color-zinc-100: oklch(96.7% .001 286.375);
    --color-zinc-200: oklch(92% .004 286.32);
    --color-zinc-300: oklch(87.1% .006 286.286);
    --color-zinc-400: oklch(70.5% .015 286.067);
    --color-zinc-500: oklch(55.2% .016 285.938);
    --color-zinc-600: oklch(44.2% .017 285.786);
    --color-zinc-700: oklch(37% .013 285.805);
    --color-zinc-800: oklch(27.4% .006 286.033);
    --color-zinc-900: oklch(21% .006 285.885);
    --color-zinc-950: oklch(14.1% .005 285.823);
    --color-black: #000;
    --color-white: #fff;
    --spacing: .25rem;
    --container-sm: 24rem;
    --container-md: 28rem;
    --container-lg: 32rem;
    --container-xl: 36rem;
    --container-2xl: 42rem;
    --container-3xl: 48rem;
    --container-4xl: 56rem;
    --container-5xl: 64rem;
    --container-6xl: 72rem;
    --container-7xl: 80rem;
    --text-xs: .75rem;
    --text-xs--line-height: calc(1 / .75);
    --text-sm: .875rem;
    --text-sm--line-height: calc(1.25 / .875);
    --text-base: 1rem;
    --text-base--line-height: calc(1.5 / 1);
    --text-lg: 1.125rem;
    --text-lg--line-height: calc(1.75 / 1.125);
    --text-xl: 1.25rem;
    --text-xl--line-height: calc(1.75 / 1.25);
    --text-2xl: 1.5rem;
    --text-2xl--line-height: calc(2 / 1.5);
    --font-weight-normal: 400;
    --font-weight-medium: 500;
    --font-weight-semibold: 600;
    --font-weight-bold: 700;
    --font-weight-extrabold: 800;
    --font-weight-black: 900;
    --tracking-tight: -.025em;
    --tracking-wide: .025em;
    --tracking-wider: .05em;
    --tracking-widest: .1em;
    --leading-tight: 1.25;
    --leading-snug: 1.375;
    --leading-normal: 1.5;
    --leading-relaxed: 1.625;
    --radius-xs: .125rem;
    --radius-sm: .25rem;
    --radius-md: .375rem;
    --radius-lg: .5rem;
    --radius-xl: .75rem;
    --radius-2xl: 1rem;
    --radius-3xl: 1.5rem;
    --drop-shadow-xs: 0 1px 1px #0000000d;
    --ease-in: cubic-bezier(.4, 0, 1, 1);
    --ease-out: cubic-bezier(0, 0, .2, 1);
    --animate-spin: spin 1s linear infinite;
    --animate-pulse: pulse 2s cubic-bezier(.4, 0, .6, 1) infinite;
    --animate-bounce: bounce 1s infinite;
    --blur-sm: 8px;
    --blur-md: 12px;
    --blur-lg: 16px;
    --blur-xl: 24px;
    --blur-2xl: 40px;
    --default-transition-duration: .15s;
    --default-transition-timing-function: cubic-bezier(.4, 0, .2, 1);
    --default-font-family: var(--font-sans);
    --default-mono-font-family: var(--font-mono);
  }
}

@layer base {
  *, :after, :before, ::backdrop {
    box-sizing: border-box;
    border: 0 solid;
    margin: 0;
    padding: 0;
  }

  ::file-selector-button {
    box-sizing: border-box;
    border: 0 solid;
    margin: 0;
    padding: 0;
  }

  html, :host {
    -webkit-text-size-adjust: 100%;
    tab-size: 4;
    line-height: 1.5;
    font-family: var(--default-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");
    font-feature-settings: var(--default-font-feature-settings, normal);
    font-variation-settings: var(--default-font-variation-settings, normal);
    -webkit-tap-highlight-color: transparent;
  }

  hr {
    height: 0;
    color: inherit;
    border-top-width: 1px;
  }

  abbr:where([title]) {
    -webkit-text-decoration: underline dotted;
    text-decoration: underline dotted;
  }

  h1, h2, h3, h4, h5, h6 {
    font-size: inherit;
    font-weight: inherit;
  }

  a {
    color: inherit;
    -webkit-text-decoration: inherit;
    -webkit-text-decoration: inherit;
    -webkit-text-decoration: inherit;
    text-decoration: inherit;
  }

  b, strong {
    font-weight: bolder;
  }

  code, kbd, samp, pre {
    font-family: var(--default-mono-font-family, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);
    font-feature-settings: var(--default-mono-font-feature-settings, normal);
    font-variation-settings: var(--default-mono-font-variation-settings, normal);
    font-size: 1em;
  }

  small {
    font-size: 80%;
  }

  sub, sup {
    vertical-align: baseline;
    font-size: 75%;
    line-height: 0;
    position: relative;
  }

  sub {
    bottom: -.25em;
  }

  sup {
    top: -.5em;
  }

  table {
    text-indent: 0;
    border-color: inherit;
    border-collapse: collapse;
  }

  :-moz-focusring:where(:not(iframe)) {
    outline: auto;
  }

  progress {
    vertical-align: baseline;
  }

  summary {
    display: list-item;
  }

  ol, ul, menu {
    list-style: none;
  }

  img, svg, video, canvas, audio, iframe, embed, object {
    vertical-align: middle;
    display: block;
  }

  img, video {
    max-width: 100%;
    height: auto;
  }

  button, input, select, optgroup, textarea {
    font: inherit;
    font-feature-settings: inherit;
    font-variation-settings: inherit;
    letter-spacing: inherit;
    color: inherit;
    opacity: 1;
    background-color: #0000;
    border-radius: 0;
  }

  ::file-selector-button {
    font: inherit;
    font-feature-settings: inherit;
    font-variation-settings: inherit;
    letter-spacing: inherit;
    color: inherit;
    opacity: 1;
    background-color: #0000;
    border-radius: 0;
  }

  :where(select:is([multiple], [size])) optgroup {
    font-weight: bolder;
  }

  :where(select:is([multiple], [size])) optgroup option {
    padding-inline-start: 20px;
  }

  ::file-selector-button {
    margin-inline-end: 4px;
  }

  ::placeholder {
    opacity: 1;
  }

  @supports (not ((-webkit-appearance: -apple-pay-button))) or (contain-intrinsic-size: 1px) {
    ::placeholder {
      color: currentColor;
    }

    @supports (color: color-mix(in lab, red, red)) {
      ::placeholder {
        color: color-mix(in oklab, currentcolor 50%, transparent);
      }
    }
  }

  textarea {
    resize: vertical;
  }

  ::-webkit-search-decoration {
    -webkit-appearance: none;
  }

  ::-webkit-date-and-time-value {
    min-height: 1lh;
    text-align: inherit;
  }

  ::-webkit-datetime-edit {
    display: inline-flex;
  }

  ::-webkit-datetime-edit-fields-wrapper {
    padding: 0;
  }

  ::-webkit-datetime-edit {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-year-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-month-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-day-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-hour-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-minute-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-second-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-millisecond-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-meridiem-field {
    padding-block: 0;
  }

  ::-webkit-calendar-picker-indicator {
    line-height: 1;
  }

  :-moz-ui-invalid {
    box-shadow: none;
  }

  button, input:where([type="button"], [type="reset"], [type="submit"]) {
    appearance: button;
  }

  ::file-selector-button {
    appearance: button;
  }

  ::-webkit-inner-spin-button {
    height: auto;
  }

  ::-webkit-outer-spin-button {
    height: auto;
  }

  [hidden]:where(:not([hidden="until-found"])) {
    display: none !important;
  }
}

@layer components;

@layer utilities {
  .pointer-events-auto {
    pointer-events: auto;
  }

  .pointer-events-none {
    pointer-events: none;
  }

  .collapse {
    visibility: collapse;
  }

  .invisible {
    visibility: hidden;
  }

  .visible {
    visibility: visible;
  }

  .sr-only {
    clip-path: inset(50%);
    white-space: nowrap;
    border-width: 0;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    position: absolute;
    overflow: hidden;
  }

  .absolute {
    position: absolute;
  }

  .fixed {
    position: fixed;
  }

  .relative {
    position: relative;
  }

  .static {
    position: static;
  }

  .sticky {
    position: sticky;
  }

  .inset-0 {
    inset: 0;
  }

  .-top-3 {
    top: calc(var(--spacing) * -3);
  }

  .top-0 {
    top: 0;
  }

  .top-1 {
    top: var(--spacing);
  }

  .top-1\/2 {
    top: 50%;
  }

  .top-2 {
    top: calc(var(--spacing) * 2);
  }

  .top-2\.5 {
    top: calc(var(--spacing) * 2.5);
  }

  .top-3 {
    top: calc(var(--spacing) * 3);
  }

  .top-4 {
    top: calc(var(--spacing) * 4);
  }

  .top-8 {
    top: calc(var(--spacing) * 8);
  }

  .top-14 {
    top: calc(var(--spacing) * 14);
  }

  .top-28 {
    top: calc(var(--spacing) * 28);
  }

  .top-32 {
    top: calc(var(--spacing) * 32);
  }

  .top-\[19px\] {
    top: 19px;
  }

  .top-\[max\(12px\,env\(safe-area-inset-top\)\)\] {
    top: max(12px, env(safe-area-inset-top));
  }

  .top-\[max\(132px\,16dvh\)\] {
    top: max(132px, 16dvh);
  }

  .top-full {
    top: 100%;
  }

  .right-0 {
    right: 0;
  }

  .right-2 {
    right: calc(var(--spacing) * 2);
  }

  .right-2\.5 {
    right: calc(var(--spacing) * 2.5);
  }

  .right-3 {
    right: calc(var(--spacing) * 3);
  }

  .right-4 {
    right: calc(var(--spacing) * 4);
  }

  .right-5 {
    right: calc(var(--spacing) * 5);
  }

  .right-\[max\(12px\,env\(safe-area-inset-right\)\)\] {
    right: max(12px, env(safe-area-inset-right));
  }

  .bottom-0 {
    bottom: 0;
  }

  .bottom-3 {
    bottom: calc(var(--spacing) * 3);
  }

  .bottom-4 {
    bottom: calc(var(--spacing) * 4);
  }

  .bottom-5 {
    bottom: calc(var(--spacing) * 5);
  }

  .bottom-6 {
    bottom: calc(var(--spacing) * 6);
  }

  .bottom-10 {
    bottom: calc(var(--spacing) * 10);
  }

  .bottom-24 {
    bottom: calc(var(--spacing) * 24);
  }

  .bottom-\[110px\] {
    bottom: 110px;
  }

  .bottom-\[max\(190px\,24vh\)\] {
    bottom: max(190px, 24vh);
  }

  .bottom-\[max\(205px\,27dvh\)\] {
    bottom: max(205px, 27dvh);
  }

  .bottom-\[max\(225px\,29dvh\)\] {
    bottom: max(225px, 29dvh);
  }

  .left-0 {
    left: 0;
  }

  .left-1 {
    left: var(--spacing);
  }

  .left-1\/2 {
    left: 50%;
  }

  .left-2 {
    left: calc(var(--spacing) * 2);
  }

  .left-3 {
    left: calc(var(--spacing) * 3);
  }

  .left-8 {
    left: calc(var(--spacing) * 8);
  }

  .isolate {
    isolation: isolate;
  }

  .z-0 {
    z-index: 0;
  }

  .z-10 {
    z-index: 10;
  }

  .z-20 {
    z-index: 20;
  }

  .z-30 {
    z-index: 30;
  }

  .z-50 {
    z-index: 50;
  }

  .z-\[1\] {
    z-index: 1;
  }

  .z-\[900\] {
    z-index: 900;
  }

  .z-\[990\] {
    z-index: 990;
  }

  .z-\[1000\] {
    z-index: 1000;
  }

  .z-\[1050\] {
    z-index: 1050;
  }

  .z-\[1100\] {
    z-index: 1100;
  }

  .z-\[1200\] {
    z-index: 1200;
  }

  .z-\[1500\] {
    z-index: 1500;
  }

  .z-\[1600\] {
    z-index: 1600;
  }

  .z-\[2000\] {
    z-index: 2000;
  }

  .z-\[2100\] {
    z-index: 2100;
  }

  .z-\[2200\] {
    z-index: 2200;
  }

  .z-\[2500\] {
    z-index: 2500;
  }

  .z-\[5000\] {
    z-index: 5000;
  }

  .z-\[6000\] {
    z-index: 6000;
  }

  .z-\[7500\] {
    z-index: 7500;
  }

  .z-\[7600\] {
    z-index: 7600;
  }

  .z-\[7900\] {
    z-index: 7900;
  }

  .z-\[7950\] {
    z-index: 7950;
  }

  .z-\[8200\] {
    z-index: 8200;
  }

  .z-\[8300\] {
    z-index: 8300;
  }

  .z-\[8800\] {
    z-index: 8800;
  }

  .z-\[9000\] {
    z-index: 9000;
  }

  .z-\[9100\] {
    z-index: 9100;
  }

  .z-\[9200\] {
    z-index: 9200;
  }

  .z-\[9300\] {
    z-index: 9300;
  }

  .z-\[9900\] {
    z-index: 9900;
  }

  .z-\[9910\] {
    z-index: 9910;
  }

  .z-\[9920\] {
    z-index: 9920;
  }

  .z-\[9925\] {
    z-index: 9925;
  }

  .z-\[9990\] {
    z-index: 9990;
  }

  .z-\[9999\] {
    z-index: 9999;
  }

  .z-\[10000\] {
    z-index: 10000;
  }

  .z-\[10020\] {
    z-index: 10020;
  }

  .z-\[11000\] {
    z-index: 11000;
  }

  .z-\[12000\] {
    z-index: 12000;
  }

  .z-\[12600\] {
    z-index: 12600;
  }

  .z-\[13000\] {
    z-index: 13000;
  }

  .z-\[99999\] {
    z-index: 99999;
  }

  .z-\[100000\] {
    z-index: 100000;
  }

  .z-\[110000\] {
    z-index: 110000;
  }

  .col-span-2 {
    grid-column: span 2 / span 2;
  }

  .\!container {
    width: 100% !important;
  }

  @media (min-width: 40rem) {
    .\!container {
      max-width: 40rem !important;
    }
  }

  @media (min-width: 48rem) {
    .\!container {
      max-width: 48rem !important;
    }
  }

  @media (min-width: 64rem) {
    .\!container {
      max-width: 64rem !important;
    }
  }

  @media (min-width: 80rem) {
    .\!container {
      max-width: 80rem !important;
    }
  }

  @media (min-width: 96rem) {
    .\!container {
      max-width: 96rem !important;
    }
  }

  .container {
    width: 100%;
  }

  @media (min-width: 40rem) {
    .container {
      max-width: 40rem;
    }
  }

  @media (min-width: 48rem) {
    .container {
      max-width: 48rem;
    }
  }

  @media (min-width: 64rem) {
    .container {
      max-width: 64rem;
    }
  }

  @media (min-width: 80rem) {
    .container {
      max-width: 80rem;
    }
  }

  @media (min-width: 96rem) {
    .container {
      max-width: 96rem;
    }
  }

  .-mx-2 {
    margin-inline: calc(var(--spacing) * -2);
  }

  .mx-1 {
    margin-inline: var(--spacing);
  }

  .mx-auto {
    margin-inline: auto;
  }

  .my-3 {
    margin-block: calc(var(--spacing) * 3);
  }

  .my-auto {
    margin-block: auto;
  }

  .mt-0\.5 {
    margin-top: calc(var(--spacing) * .5);
  }

  .mt-1 {
    margin-top: var(--spacing);
  }

  .mt-1\.5 {
    margin-top: calc(var(--spacing) * 1.5);
  }

  .mt-2 {
    margin-top: calc(var(--spacing) * 2);
  }

  .mt-2\.5 {
    margin-top: calc(var(--spacing) * 2.5);
  }

  .mt-3 {
    margin-top: calc(var(--spacing) * 3);
  }

  .mt-4 {
    margin-top: calc(var(--spacing) * 4);
  }

  .mt-5 {
    margin-top: calc(var(--spacing) * 5);
  }

  .mt-6 {
    margin-top: calc(var(--spacing) * 6);
  }

  .mt-\[7px\] {
    margin-top: 7px;
  }

  .mr-1 {
    margin-right: var(--spacing);
  }

  .mr-1\.5 {
    margin-right: calc(var(--spacing) * 1.5);
  }

  .mr-2 {
    margin-right: calc(var(--spacing) * 2);
  }

  .mr-auto {
    margin-right: auto;
  }

  .mb-1 {
    margin-bottom: var(--spacing);
  }

  .mb-1\.5 {
    margin-bottom: calc(var(--spacing) * 1.5);
  }

  .mb-2 {
    margin-bottom: calc(var(--spacing) * 2);
  }

  .mb-3 {
    margin-bottom: calc(var(--spacing) * 3);
  }

  .mb-4 {
    margin-bottom: calc(var(--spacing) * 4);
  }

  .mb-5 {
    margin-bottom: calc(var(--spacing) * 5);
  }

  .mb-6 {
    margin-bottom: calc(var(--spacing) * 6);
  }

  .mb-8 {
    margin-bottom: calc(var(--spacing) * 8);
  }

  .mb-10 {
    margin-bottom: calc(var(--spacing) * 10);
  }

  .ml-1 {
    margin-left: var(--spacing);
  }

  .ml-1\.5 {
    margin-left: calc(var(--spacing) * 1.5);
  }

  .ml-2 {
    margin-left: calc(var(--spacing) * 2);
  }

  .ml-auto {
    margin-left: auto;
  }

  .block {
    display: block;
  }

  .contents {
    display: contents;
  }

  .flex {
    display: flex;
  }

  .grid {
    display: grid;
  }

  .hidden {
    display: none;
  }

  .inline {
    display: inline;
  }

  .inline-block {
    display: inline-block;
  }

  .inline-flex {
    display: inline-flex;
  }

  .table {
    display: table;
  }

  .h-1 {
    height: var(--spacing);
  }

  .h-1\.5 {
    height: calc(var(--spacing) * 1.5);
  }

  .h-1\/3 {
    height: 33.3333%;
  }

  .h-2 {
    height: calc(var(--spacing) * 2);
  }

  .h-2\.5 {
    height: calc(var(--spacing) * 2.5);
  }

  .h-2\/3 {
    height: 66.6667%;
  }

  .h-3 {
    height: calc(var(--spacing) * 3);
  }

  .h-3\.5 {
    height: calc(var(--spacing) * 3.5);
  }

  .h-4 {
    height: calc(var(--spacing) * 4);
  }

  .h-4\.5 {
    height: calc(var(--spacing) * 4.5);
  }

  .h-5 {
    height: calc(var(--spacing) * 5);
  }

  .h-6 {
    height: calc(var(--spacing) * 6);
  }

  .h-7 {
    height: calc(var(--spacing) * 7);
  }

  .h-8 {
    height: calc(var(--spacing) * 8);
  }

  .h-9 {
    height: calc(var(--spacing) * 9);
  }

  .h-10 {
    height: calc(var(--spacing) * 10);
  }

  .h-11 {
    height: calc(var(--spacing) * 11);
  }

  .h-12 {
    height: calc(var(--spacing) * 12);
  }

  .h-14 {
    height: calc(var(--spacing) * 14);
  }

  .h-16 {
    height: calc(var(--spacing) * 16);
  }

  .h-20 {
    height: calc(var(--spacing) * 20);
  }

  .h-56 {
    height: calc(var(--spacing) * 56);
  }

  .h-72 {
    height: calc(var(--spacing) * 72);
  }

  .h-\[1px\] {
    height: 1px;
  }

  .h-\[92vh\] {
    height: 92vh;
  }

  .h-\[96dvh\] {
    height: 96dvh;
  }

  .h-\[100dvh\] {
    height: 100dvh;
  }

  .h-\[calc\(100dvh-1\.5rem\)\] {
    height: calc(100dvh - 1.5rem);
  }

  .h-\[calc\(100dvh-1rem\)\] {
    height: calc(100dvh - 1rem);
  }

  .h-auto {
    height: auto;
  }

  .h-full {
    height: 100%;
  }

  .h-px {
    height: 1px;
  }

  .h-screen {
    height: 100vh;
  }

  .max-h-24 {
    max-height: calc(var(--spacing) * 24);
  }

  .max-h-44 {
    max-height: calc(var(--spacing) * 44);
  }

  .max-h-\[55vh\] {
    max-height: 55vh;
  }

  .max-h-\[60vh\] {
    max-height: 60vh;
  }

  .max-h-\[65vh\] {
    max-height: 65vh;
  }

  .max-h-\[70vh\] {
    max-height: 70vh;
  }

  .max-h-\[72vh\] {
    max-height: 72vh;
  }

  .max-h-\[80vh\] {
    max-height: 80vh;
  }

  .max-h-\[82vh\] {
    max-height: 82vh;
  }

  .max-h-\[88vh\] {
    max-height: 88vh;
  }

  .max-h-\[90vh\] {
    max-height: 90vh;
  }

  .max-h-\[92vh\] {
    max-height: 92vh;
  }

  .max-h-\[220px\] {
    max-height: 220px;
  }

  .max-h-\[300px\] {
    max-height: 300px;
  }

  .max-h-\[520px\] {
    max-height: 520px;
  }

  .max-h-\[min\(86dvh\,820px\)\] {
    max-height: min(86dvh, 820px);
  }

  .max-h-full {
    max-height: 100%;
  }

  .max-h-none {
    max-height: none;
  }

  .min-h-0 {
    min-height: 0;
  }

  .min-h-\[1rem\] {
    min-height: 1rem;
  }

  .min-h-\[40vh\] {
    min-height: 40vh;
  }

  .min-h-\[400px\] {
    min-height: 400px;
  }

  .min-h-\[420px\] {
    min-height: 420px;
  }

  .min-h-\[520px\] {
    min-height: 520px;
  }

  .min-h-screen {
    min-height: 100vh;
  }

  .w-1\.5 {
    width: calc(var(--spacing) * 1.5);
  }

  .w-1\/3 {
    width: 33.3333%;
  }

  .w-2 {
    width: calc(var(--spacing) * 2);
  }

  .w-2\.5 {
    width: calc(var(--spacing) * 2.5);
  }

  .w-2\/3 {
    width: 66.6667%;
  }

  .w-3 {
    width: calc(var(--spacing) * 3);
  }

  .w-3\.5 {
    width: calc(var(--spacing) * 3.5);
  }

  .w-4 {
    width: calc(var(--spacing) * 4);
  }

  .w-4\.5 {
    width: calc(var(--spacing) * 4.5);
  }

  .w-5 {
    width: calc(var(--spacing) * 5);
  }

  .w-6 {
    width: calc(var(--spacing) * 6);
  }

  .w-7 {
    width: calc(var(--spacing) * 7);
  }

  .w-8 {
    width: calc(var(--spacing) * 8);
  }

  .w-9 {
    width: calc(var(--spacing) * 9);
  }

  .w-10 {
    width: calc(var(--spacing) * 10);
  }

  .w-11 {
    width: calc(var(--spacing) * 11);
  }

  .w-12 {
    width: calc(var(--spacing) * 12);
  }

  .w-16 {
    width: calc(var(--spacing) * 16);
  }

  .w-20 {
    width: calc(var(--spacing) * 20);
  }

  .w-30 {
    width: calc(var(--spacing) * 30);
  }

  .w-56 {
    width: calc(var(--spacing) * 56);
  }

  .w-\[1px\] {
    width: 1px;
  }

  .w-\[4\.5rem\] {
    width: 4.5rem;
  }

  .w-\[4\.25rem\] {
    width: 4.25rem;
  }

  .w-\[65px\] {
    width: 65px;
  }

  .w-\[90\%\] {
    width: 90%;
  }

  .w-\[92\%\] {
    width: 92%;
  }

  .w-\[350px\] {
    width: 350px;
  }

  .w-\[min\(280px\,calc\(100vw-40px\)\)\] {
    width: min(280px, 100vw - 40px);
  }

  .w-\[min\(300px\,92vw\)\] {
    width: min(300px, 92vw);
  }

  .w-\[min\(390px\,94vw\)\] {
    width: min(390px, 94vw);
  }

  .w-\[min\(420px\,calc\(100vw-24px\)\)\] {
    width: min(420px, 100vw - 24px);
  }

  .w-\[min\(430px\,95vw\)\] {
    width: min(430px, 95vw);
  }

  .w-\[min\(520px\,calc\(100vw-24px\)\)\] {
    width: min(520px, 100vw - 24px);
  }

  .w-\[min\(580px\,94vw\)\] {
    width: min(580px, 94vw);
  }

  .w-\[min\(1040px\,calc\(100vw-24px\)\)\] {
    width: min(1040px, 100vw - 24px);
  }

  .w-full {
    width: 100%;
  }

  .w-screen {
    width: 100vw;
  }

  .max-w-2xl {
    max-width: var(--container-2xl);
  }

  .max-w-3xl {
    max-width: var(--container-3xl);
  }

  .max-w-4xl {
    max-width: var(--container-4xl);
  }

  .max-w-5xl {
    max-width: var(--container-5xl);
  }

  .max-w-6xl {
    max-width: var(--container-6xl);
  }

  .max-w-7xl {
    max-width: var(--container-7xl);
  }

  .max-w-\[55vw\] {
    max-width: 55vw;
  }

  .max-w-\[500px\] {
    max-width: 500px;
  }

  .max-w-\[min\(310px\,75vw\)\] {
    max-width: min(310px, 75vw);
  }

  .max-w-full {
    max-width: 100%;
  }

  .max-w-lg {
    max-width: var(--container-lg);
  }

  .max-w-md {
    max-width: var(--container-md);
  }

  .max-w-sm {
    max-width: var(--container-sm);
  }

  .max-w-xl {
    max-width: var(--container-xl);
  }

  .min-w-0 {
    min-width: 0;
  }

  .min-w-\[42px\] {
    min-width: 42px;
  }

  .min-w-\[145px\] {
    min-width: 145px;
  }

  .min-w-\[150px\] {
    min-width: 150px;
  }

  .min-w-\[160px\] {
    min-width: 160px;
  }

  .min-w-\[210px\] {
    min-width: 210px;
  }

  .min-w-\[230px\] {
    min-width: 230px;
  }

  .min-w-full {
    min-width: 100%;
  }

  .flex-1 {
    flex: 1;
  }

  .flex-\[2\] {
    flex: 2;
  }

  .flex-none {
    flex: none;
  }

  .shrink {
    flex-shrink: 1;
  }

  .shrink-0 {
    flex-shrink: 0;
  }

  .grow {
    flex-grow: 1;
  }

  .table-fixed {
    table-layout: fixed;
  }

  .border-collapse {
    border-collapse: collapse;
  }

  .-translate-x-1\/2 {
    --tw-translate-x: calc(calc(1 / 2 * 100%) * -1);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }

  .translate-x-0 {
    --tw-translate-x: 0px;
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }

  .translate-x-0\.5 {
    --tw-translate-x: calc(var(--spacing) * .5);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }

  .translate-x-5 {
    --tw-translate-x: calc(var(--spacing) * 5);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }

  .translate-x-6 {
    --tw-translate-x: calc(var(--spacing) * 6);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }

  .translate-x-full {
    --tw-translate-x: 100%;
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }

  .-translate-y-1\/2 {
    --tw-translate-y: calc(calc(1 / 2 * 100%) * -1);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }

  .-translate-y-full {
    --tw-translate-y: -100%;
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }

  .translate-y-0 {
    --tw-translate-y: 0px;
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }

  .translate-y-full {
    --tw-translate-y: 100%;
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }

  .rotate-180 {
    rotate: 180deg;
  }

  .transform {
    transform: var(--tw-rotate-x, ) var(--tw-rotate-y, ) var(--tw-rotate-z, ) var(--tw-skew-x, ) var(--tw-skew-y, );
  }

  .animate-\[fadeIn_0\.2s_ease-out\] {
    animation: .2s ease-out fadeIn;
  }

  .animate-\[fadeIn_0\.15s_ease-out\] {
    animation: .15s ease-out fadeIn;
  }

  .animate-\[fadeSlideIn_0\.22s_ease-out\] {
    animation: .22s ease-out fadeSlideIn;
  }

  .animate-\[scaleUp_0\.2s_ease-out\] {
    animation: .2s ease-out scaleUp;
  }

  .animate-bounce {
    animation: var(--animate-bounce);
  }

  .animate-pulse {
    animation: var(--animate-pulse);
  }

  .animate-spin {
    animation: var(--animate-spin);
  }

  .cursor-crosshair {
    cursor: crosshair;
  }

  .cursor-grab {
    cursor: grab;
  }

  .cursor-not-allowed {
    cursor: not-allowed;
  }

  .cursor-pointer {
    cursor: pointer;
  }

  .touch-pan-y {
    --tw-pan-y: pan-y;
    touch-action: var(--tw-pan-x, ) var(--tw-pan-y, ) var(--tw-pinch-zoom, );
  }

  .resize {
    resize: both;
  }

  .scrollbar-none {
    scrollbar-width: none;
  }

  .scrollbar-thin {
    scrollbar-width: thin;
  }

  .scrollbar-thumb-slate-800 {
    --tw-scrollbar-thumb: var(--color-slate-800);
    scrollbar-color: var(--tw-scrollbar-thumb) var(--tw-scrollbar-track);
  }

  .list-inside {
    list-style-position: inside;
  }

  .list-decimal {
    list-style-type: decimal;
  }

  .appearance-none {
    appearance: none;
  }

  .grid-cols-1 {
    grid-template-columns: repeat(1, minmax(0, 1fr));
  }

  .grid-cols-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .grid-cols-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .grid-cols-4 {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .grid-cols-5 {
    grid-template-columns: repeat(5, minmax(0, 1fr));
  }

  .grid-cols-\[1\.2fr_1fr_1fr_1fr\] {
    grid-template-columns: 1.2fr 1fr 1fr 1fr;
  }

  .grid-cols-\[1fr_4\.5rem\] {
    grid-template-columns: 1fr 4.5rem;
  }

  .grid-cols-\[minmax\(0\,1fr\)_auto\] {
    grid-template-columns: minmax(0, 1fr) auto;
  }

  .grid-cols-\[minmax\(0\,1fr\)_minmax\(0\,1fr\)_44px\] {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) 44px;
  }

  .flex-col {
    flex-direction: column;
  }

  .flex-row {
    flex-direction: row;
  }

  .flex-wrap {
    flex-wrap: wrap;
  }

  .place-items-center {
    place-items: center;
  }

  .items-baseline {
    align-items: baseline;
  }

  .items-center {
    align-items: center;
  }

  .items-end {
    align-items: flex-end;
  }

  .items-start {
    align-items: flex-start;
  }

  .items-stretch {
    align-items: stretch;
  }

  .justify-between {
    justify-content: space-between;
  }

  .justify-center {
    justify-content: center;
  }

  .justify-end {
    justify-content: flex-end;
  }

  .gap-1 {
    gap: var(--spacing);
  }

  .gap-1\.5 {
    gap: calc(var(--spacing) * 1.5);
  }

  .gap-2 {
    gap: calc(var(--spacing) * 2);
  }

  .gap-2\.5 {
    gap: calc(var(--spacing) * 2.5);
  }

  .gap-3 {
    gap: calc(var(--spacing) * 3);
  }

  .gap-3\.5 {
    gap: calc(var(--spacing) * 3.5);
  }

  .gap-4 {
    gap: calc(var(--spacing) * 4);
  }

  .gap-5 {
    gap: calc(var(--spacing) * 5);
  }

  .gap-6 {
    gap: calc(var(--spacing) * 6);
  }

  :where(.space-y-1 > :not(:last-child)) {
    --tw-space-y-reverse: 0;
    margin-block-start: calc(var(--spacing) * var(--tw-space-y-reverse));
    margin-block-end: calc(var(--spacing) * calc(1 - var(--tw-space-y-reverse)));
  }

  :where(.space-y-1\.5 > :not(:last-child)) {
    --tw-space-y-reverse: 0;
    margin-block-start: calc(calc(var(--spacing) * 1.5) * var(--tw-space-y-reverse));
    margin-block-end: calc(calc(var(--spacing) * 1.5) * calc(1 - var(--tw-space-y-reverse)));
  }

  :where(.space-y-2 > :not(:last-child)) {
    --tw-space-y-reverse: 0;
    margin-block-start: calc(calc(var(--spacing) * 2) * var(--tw-space-y-reverse));
    margin-block-end: calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-y-reverse)));
  }

  :where(.space-y-2\.5 > :not(:last-child)) {
    --tw-space-y-reverse: 0;
    margin-block-start: calc(calc(var(--spacing) * 2.5) * var(--tw-space-y-reverse));
    margin-block-end: calc(calc(var(--spacing) * 2.5) * calc(1 - var(--tw-space-y-reverse)));
  }

  :where(.space-y-3 > :not(:last-child)) {
    --tw-space-y-reverse: 0;
    margin-block-start: calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));
    margin-block-end: calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)));
  }

  :where(.space-y-3\.5 > :not(:last-child)) {
    --tw-space-y-reverse: 0;
    margin-block-start: calc(calc(var(--spacing) * 3.5) * var(--tw-space-y-reverse));
    margin-block-end: calc(calc(var(--spacing) * 3.5) * calc(1 - var(--tw-space-y-reverse)));
  }

  :where(.space-y-4 > :not(:last-child)) {
    --tw-space-y-reverse: 0;
    margin-block-start: calc(calc(var(--spacing) * 4) * var(--tw-space-y-reverse));
    margin-block-end: calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-y-reverse)));
  }

  :where(.space-y-5 > :not(:last-child)) {
    --tw-space-y-reverse: 0;
    margin-block-start: calc(calc(var(--spacing) * 5) * var(--tw-space-y-reverse));
    margin-block-end: calc(calc(var(--spacing) * 5) * calc(1 - var(--tw-space-y-reverse)));
  }

  :where(.space-y-6 > :not(:last-child)) {
    --tw-space-y-reverse: 0;
    margin-block-start: calc(calc(var(--spacing) * 6) * var(--tw-space-y-reverse));
    margin-block-end: calc(calc(var(--spacing) * 6) * calc(1 - var(--tw-space-y-reverse)));
  }

  :where(.space-y-8 > :not(:last-child)) {
    --tw-space-y-reverse: 0;
    margin-block-start: calc(calc(var(--spacing) * 8) * var(--tw-space-y-reverse));
    margin-block-end: calc(calc(var(--spacing) * 8) * calc(1 - var(--tw-space-y-reverse)));
  }

  .gap-x-2 {
    column-gap: calc(var(--spacing) * 2);
  }

  .gap-x-3 {
    column-gap: calc(var(--spacing) * 3);
  }

  .gap-x-4 {
    column-gap: calc(var(--spacing) * 4);
  }

  :where(.space-x-2 > :not(:last-child)) {
    --tw-space-x-reverse: 0;
    margin-inline-start: calc(calc(var(--spacing) * 2) * var(--tw-space-x-reverse));
    margin-inline-end: calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-x-reverse)));
  }

  .gap-y-1 {
    row-gap: var(--spacing);
  }

  :where(.divide-y > :not(:last-child)) {
    --tw-divide-y-reverse: 0;
    border-bottom-style: var(--tw-border-style);
    border-top-style: var(--tw-border-style);
    border-top-width: calc(1px * var(--tw-divide-y-reverse));
    border-bottom-width: calc(1px * calc(1 - var(--tw-divide-y-reverse)));
  }

  :where(.divide-slate-800\/70 > :not(:last-child)) {
    border-color: #1d293db3;
  }

  @supports (color: color-mix(in lab, red, red)) {
    :where(.divide-slate-800\/70 > :not(:last-child)) {
      border-color: color-mix(in oklab, var(--color-slate-800) 70%, transparent);
    }
  }

  :where(.divide-slate-800\/80 > :not(:last-child)) {
    border-color: #1d293dcc;
  }

  @supports (color: color-mix(in lab, red, red)) {
    :where(.divide-slate-800\/80 > :not(:last-child)) {
      border-color: color-mix(in oklab, var(--color-slate-800) 80%, transparent);
    }
  }

  .self-center {
    align-self: center;
  }

  .truncate {
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
  }

  .overflow-auto {
    overflow: auto;
  }

  .overflow-hidden {
    overflow: hidden;
  }

  .overflow-visible {
    overflow: visible;
  }

  .overflow-x-auto {
    overflow-x: auto;
  }

  .overflow-y-auto {
    overflow-y: auto;
  }

  .overflow-y-scroll {
    overflow-y: scroll;
  }

  .overscroll-contain {
    overscroll-behavior: contain;
  }

  .overscroll-none {
    overscroll-behavior: none;
  }

  .overscroll-x-contain {
    overscroll-behavior-x: contain;
  }

  .overscroll-y-contain {
    overscroll-behavior-y: contain;
  }

  .rounded {
    border-radius: .25rem;
  }

  .rounded-2xl {
    border-radius: var(--radius-2xl);
  }

  .rounded-3xl {
    border-radius: var(--radius-3xl);
  }

  .rounded-full {
    border-radius: 3.40282e38px;
  }

  .rounded-lg {
    border-radius: var(--radius-lg);
  }

  .rounded-md {
    border-radius: var(--radius-md);
  }

  .rounded-sm {
    border-radius: var(--radius-sm);
  }

  .rounded-xl {
    border-radius: var(--radius-xl);
  }

  .rounded-xs {
    border-radius: var(--radius-xs);
  }

  .rounded-t-3xl {
    border-top-left-radius: var(--radius-3xl);
    border-top-right-radius: var(--radius-3xl);
  }

  .border {
    border-style: var(--tw-border-style);
    border-width: 1px;
  }

  .border-0 {
    border-style: var(--tw-border-style);
    border-width: 0;
  }

  .border-2 {
    border-style: var(--tw-border-style);
    border-width: 2px;
  }

  .border-4 {
    border-style: var(--tw-border-style);
    border-width: 4px;
  }

  .border-\[3px\] {
    border-style: var(--tw-border-style);
    border-width: 3px;
  }

  .border-t {
    border-top-style: var(--tw-border-style);
    border-top-width: 1px;
  }

  .border-t-0 {
    border-top-style: var(--tw-border-style);
    border-top-width: 0;
  }

  .border-r {
    border-right-style: var(--tw-border-style);
    border-right-width: 1px;
  }

  .border-b {
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 1px;
  }

  .border-b-0 {
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 0;
  }

  .border-b-2 {
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 2px;
  }

  .border-l {
    border-left-style: var(--tw-border-style);
    border-left-width: 1px;
  }

  .border-l-2 {
    border-left-style: var(--tw-border-style);
    border-left-width: 2px;
  }

  .border-dashed {
    --tw-border-style: dashed;
    border-style: dashed;
  }

  .border-\[\#1E9CFF\]\/25 {
    border-color: oklab(67.8205% -.0635676 -.165986 / .25);
  }

  .border-\[\#1E9CFF\]\/50 {
    border-color: oklab(67.8205% -.0635676 -.165986 / .5);
  }

  .border-\[\#1E9CFF\]\/55 {
    border-color: oklab(67.8205% -.0635676 -.165986 / .55);
  }

  .border-\[\#1E9CFF\]\/60 {
    border-color: oklab(67.8205% -.0635676 -.165986 / .6);
  }

  .border-\[\#45D483\]\/20 {
    border-color: oklab(77.4439% -.151436 .0730664 / .2);
  }

  .border-\[\#434348\] {
    border-color: #434348;
  }

  .border-\[\#F6D34A\]\/20 {
    border-color: oklab(87.3055% -.0118862 .153904 / .2);
  }

  .border-\[\#FF4D4F\]\/20 {
    border-color: oklab(67.3245% .195098 .088769 / .2);
  }

  .border-\[\#c9d1d9\] {
    border-color: #c9d1d9;
  }

  .border-amber-400 {
    border-color: var(--color-amber-400);
  }

  .border-amber-400\/20 {
    border-color: #fcbb0033;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-amber-400\/20 {
      border-color: color-mix(in oklab, var(--color-amber-400) 20%, transparent);
    }
  }

  .border-amber-500\/20 {
    border-color: #f99c0033;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-amber-500\/20 {
      border-color: color-mix(in oklab, var(--color-amber-500) 20%, transparent);
    }
  }

  .border-amber-500\/30 {
    border-color: #f99c004d;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-amber-500\/30 {
      border-color: color-mix(in oklab, var(--color-amber-500) 30%, transparent);
    }
  }

  .border-amber-500\/35 {
    border-color: #f99c0059;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-amber-500\/35 {
      border-color: color-mix(in oklab, var(--color-amber-500) 35%, transparent);
    }
  }

  .border-amber-500\/40 {
    border-color: #f99c0066;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-amber-500\/40 {
      border-color: color-mix(in oklab, var(--color-amber-500) 40%, transparent);
    }
  }

  .border-amber-700\/35 {
    border-color: #b7500059;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-amber-700\/35 {
      border-color: color-mix(in oklab, var(--color-amber-700) 35%, transparent);
    }
  }

  .border-amber-700\/40 {
    border-color: #b7500066;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-amber-700\/40 {
      border-color: color-mix(in oklab, var(--color-amber-700) 40%, transparent);
    }
  }

  .border-amber-800\/30 {
    border-color: #953d004d;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-amber-800\/30 {
      border-color: color-mix(in oklab, var(--color-amber-800) 30%, transparent);
    }
  }

  .border-amber-800\/50 {
    border-color: #953d0080;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-amber-800\/50 {
      border-color: color-mix(in oklab, var(--color-amber-800) 50%, transparent);
    }
  }

  .border-amber-900\/30 {
    border-color: #7b33064d;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-amber-900\/30 {
      border-color: color-mix(in oklab, var(--color-amber-900) 30%, transparent);
    }
  }

  .border-blue-400 {
    border-color: var(--color-blue-400);
  }

  .border-blue-500 {
    border-color: var(--color-blue-500);
  }

  .border-blue-500\/20 {
    border-color: #3080ff33;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-blue-500\/20 {
      border-color: color-mix(in oklab, var(--color-blue-500) 20%, transparent);
    }
  }

  .border-blue-500\/30 {
    border-color: #3080ff4d;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-blue-500\/30 {
      border-color: color-mix(in oklab, var(--color-blue-500) 30%, transparent);
    }
  }

  .border-blue-600\/60 {
    border-color: #155dfc99;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-blue-600\/60 {
      border-color: color-mix(in oklab, var(--color-blue-600) 60%, transparent);
    }
  }

  .border-blue-800\/40 {
    border-color: #193cb866;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-blue-800\/40 {
      border-color: color-mix(in oklab, var(--color-blue-800) 40%, transparent);
    }
  }

  .border-blue-900\/40 {
    border-color: #1c398e66;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-blue-900\/40 {
      border-color: color-mix(in oklab, var(--color-blue-900) 40%, transparent);
    }
  }

  .border-current {
    border-color: currentColor;
  }

  .border-cyan-300 {
    border-color: var(--color-cyan-300);
  }

  .border-cyan-400 {
    border-color: var(--color-cyan-400);
  }

  .border-cyan-500 {
    border-color: var(--color-cyan-500);
  }

  .border-cyan-500\/20 {
    border-color: #00b7d733;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-cyan-500\/20 {
      border-color: color-mix(in oklab, var(--color-cyan-500) 20%, transparent);
    }
  }

  .border-cyan-500\/30 {
    border-color: #00b7d74d;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-cyan-500\/30 {
      border-color: color-mix(in oklab, var(--color-cyan-500) 30%, transparent);
    }
  }

  .border-cyan-500\/40 {
    border-color: #00b7d766;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-cyan-500\/40 {
      border-color: color-mix(in oklab, var(--color-cyan-500) 40%, transparent);
    }
  }

  .border-cyan-500\/60 {
    border-color: #00b7d799;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-cyan-500\/60 {
      border-color: color-mix(in oklab, var(--color-cyan-500) 60%, transparent);
    }
  }

  .border-cyan-600\/35 {
    border-color: #0092b559;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-cyan-600\/35 {
      border-color: color-mix(in oklab, var(--color-cyan-600) 35%, transparent);
    }
  }

  .border-cyan-600\/60 {
    border-color: #0092b599;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-cyan-600\/60 {
      border-color: color-mix(in oklab, var(--color-cyan-600) 60%, transparent);
    }
  }

  .border-cyan-700 {
    border-color: var(--color-cyan-700);
  }

  .border-cyan-700\/40 {
    border-color: #00749266;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-cyan-700\/40 {
      border-color: color-mix(in oklab, var(--color-cyan-700) 40%, transparent);
    }
  }

  .border-cyan-700\/60 {
    border-color: #00749299;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-cyan-700\/60 {
      border-color: color-mix(in oklab, var(--color-cyan-700) 60%, transparent);
    }
  }

  .border-cyan-800 {
    border-color: var(--color-cyan-800);
  }

  .border-cyan-800\/30 {
    border-color: #005f784d;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-cyan-800\/30 {
      border-color: color-mix(in oklab, var(--color-cyan-800) 30%, transparent);
    }
  }

  .border-cyan-800\/40 {
    border-color: #005f7866;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-cyan-800\/40 {
      border-color: color-mix(in oklab, var(--color-cyan-800) 40%, transparent);
    }
  }

  .border-cyan-800\/45 {
    border-color: #005f7873;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-cyan-800\/45 {
      border-color: color-mix(in oklab, var(--color-cyan-800) 45%, transparent);
    }
  }

  .border-cyan-800\/50 {
    border-color: #005f7880;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-cyan-800\/50 {
      border-color: color-mix(in oklab, var(--color-cyan-800) 50%, transparent);
    }
  }

  .border-cyan-800\/60 {
    border-color: #005f7899;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-cyan-800\/60 {
      border-color: color-mix(in oklab, var(--color-cyan-800) 60%, transparent);
    }
  }

  .border-cyan-800\/70 {
    border-color: #005f78b3;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-cyan-800\/70 {
      border-color: color-mix(in oklab, var(--color-cyan-800) 70%, transparent);
    }
  }

  .border-cyan-900\/40 {
    border-color: #104e6466;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-cyan-900\/40 {
      border-color: color-mix(in oklab, var(--color-cyan-900) 40%, transparent);
    }
  }

  .border-cyan-900\/45 {
    border-color: #104e6473;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-cyan-900\/45 {
      border-color: color-mix(in oklab, var(--color-cyan-900) 45%, transparent);
    }
  }

  .border-cyan-900\/50 {
    border-color: #104e6480;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-cyan-900\/50 {
      border-color: color-mix(in oklab, var(--color-cyan-900) 50%, transparent);
    }
  }

  .border-cyan-900\/60 {
    border-color: #104e6499;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-cyan-900\/60 {
      border-color: color-mix(in oklab, var(--color-cyan-900) 60%, transparent);
    }
  }

  .border-emerald-400 {
    border-color: var(--color-emerald-400);
  }

  .border-emerald-500 {
    border-color: var(--color-emerald-500);
  }

  .border-emerald-500\/20 {
    border-color: #00bb7f33;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-emerald-500\/20 {
      border-color: color-mix(in oklab, var(--color-emerald-500) 20%, transparent);
    }
  }

  .border-emerald-500\/25 {
    border-color: #00bb7f40;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-emerald-500\/25 {
      border-color: color-mix(in oklab, var(--color-emerald-500) 25%, transparent);
    }
  }

  .border-emerald-500\/30 {
    border-color: #00bb7f4d;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-emerald-500\/30 {
      border-color: color-mix(in oklab, var(--color-emerald-500) 30%, transparent);
    }
  }

  .border-emerald-500\/50 {
    border-color: #00bb7f80;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-emerald-500\/50 {
      border-color: color-mix(in oklab, var(--color-emerald-500) 50%, transparent);
    }
  }

  .border-emerald-700\/40 {
    border-color: #00795666;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-emerald-700\/40 {
      border-color: color-mix(in oklab, var(--color-emerald-700) 40%, transparent);
    }
  }

  .border-emerald-700\/50 {
    border-color: #00795680;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-emerald-700\/50 {
      border-color: color-mix(in oklab, var(--color-emerald-700) 50%, transparent);
    }
  }

  .border-emerald-800\/30 {
    border-color: #005f464d;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-emerald-800\/30 {
      border-color: color-mix(in oklab, var(--color-emerald-800) 30%, transparent);
    }
  }

  .border-emerald-900\/40 {
    border-color: #004e3b66;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-emerald-900\/40 {
      border-color: color-mix(in oklab, var(--color-emerald-900) 40%, transparent);
    }
  }

  .border-fuchsia-400 {
    border-color: var(--color-fuchsia-400);
  }

  .border-fuchsia-500\/40 {
    border-color: #e12afb66;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-fuchsia-500\/40 {
      border-color: color-mix(in oklab, var(--color-fuchsia-500) 40%, transparent);
    }
  }

  .border-fuchsia-800\/30 {
    border-color: #8a01944d;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-fuchsia-800\/30 {
      border-color: color-mix(in oklab, var(--color-fuchsia-800) 30%, transparent);
    }
  }

  .border-green-100 {
    border-color: var(--color-green-100);
  }

  .border-indigo-400 {
    border-color: var(--color-indigo-400);
  }

  .border-indigo-500\/20 {
    border-color: #625fff33;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-indigo-500\/20 {
      border-color: color-mix(in oklab, var(--color-indigo-500) 20%, transparent);
    }
  }

  .border-indigo-500\/30 {
    border-color: #625fff4d;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-indigo-500\/30 {
      border-color: color-mix(in oklab, var(--color-indigo-500) 30%, transparent);
    }
  }

  .border-indigo-500\/50 {
    border-color: #625fff80;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-indigo-500\/50 {
      border-color: color-mix(in oklab, var(--color-indigo-500) 50%, transparent);
    }
  }

  .border-indigo-800\/40 {
    border-color: #372aac66;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-indigo-800\/40 {
      border-color: color-mix(in oklab, var(--color-indigo-800) 40%, transparent);
    }
  }

  .border-indigo-900 {
    border-color: var(--color-indigo-900);
  }

  .border-orange-500\/30 {
    border-color: #fe6e004d;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-orange-500\/30 {
      border-color: color-mix(in oklab, var(--color-orange-500) 30%, transparent);
    }
  }

  .border-orange-500\/35 {
    border-color: #fe6e0059;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-orange-500\/35 {
      border-color: color-mix(in oklab, var(--color-orange-500) 35%, transparent);
    }
  }

  .border-orange-500\/40 {
    border-color: #fe6e0066;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-orange-500\/40 {
      border-color: color-mix(in oklab, var(--color-orange-500) 40%, transparent);
    }
  }

  .border-orange-800\/30 {
    border-color: #9f2d004d;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-orange-800\/30 {
      border-color: color-mix(in oklab, var(--color-orange-800) 30%, transparent);
    }
  }

  .border-purple-500\/20 {
    border-color: #ac4bff33;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-purple-500\/20 {
      border-color: color-mix(in oklab, var(--color-purple-500) 20%, transparent);
    }
  }

  .border-red-100 {
    border-color: var(--color-red-100);
  }

  .border-red-500\/15 {
    border-color: #fb2c3626;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-red-500\/15 {
      border-color: color-mix(in oklab, var(--color-red-500) 15%, transparent);
    }
  }

  .border-red-500\/20 {
    border-color: #fb2c3633;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-red-500\/20 {
      border-color: color-mix(in oklab, var(--color-red-500) 20%, transparent);
    }
  }

  .border-red-500\/25 {
    border-color: #fb2c3640;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-red-500\/25 {
      border-color: color-mix(in oklab, var(--color-red-500) 25%, transparent);
    }
  }

  .border-red-500\/30 {
    border-color: #fb2c364d;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-red-500\/30 {
      border-color: color-mix(in oklab, var(--color-red-500) 30%, transparent);
    }
  }

  .border-red-500\/40 {
    border-color: #fb2c3666;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-red-500\/40 {
      border-color: color-mix(in oklab, var(--color-red-500) 40%, transparent);
    }
  }

  .border-red-500\/60 {
    border-color: #fb2c3699;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-red-500\/60 {
      border-color: color-mix(in oklab, var(--color-red-500) 60%, transparent);
    }
  }

  .border-red-700\/60 {
    border-color: #bf000f99;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-red-700\/60 {
      border-color: color-mix(in oklab, var(--color-red-700) 60%, transparent);
    }
  }

  .border-red-700\/80 {
    border-color: #bf000fcc;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-red-700\/80 {
      border-color: color-mix(in oklab, var(--color-red-700) 80%, transparent);
    }
  }

  .border-red-800\/30 {
    border-color: #9f07124d;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-red-800\/30 {
      border-color: color-mix(in oklab, var(--color-red-800) 30%, transparent);
    }
  }

  .border-red-900\/30 {
    border-color: #82181a4d;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-red-900\/30 {
      border-color: color-mix(in oklab, var(--color-red-900) 30%, transparent);
    }
  }

  .border-red-900\/40 {
    border-color: #82181a66;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-red-900\/40 {
      border-color: color-mix(in oklab, var(--color-red-900) 40%, transparent);
    }
  }

  .border-rose-300\/30 {
    border-color: #ffa2ae4d;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-rose-300\/30 {
      border-color: color-mix(in oklab, var(--color-rose-300) 30%, transparent);
    }
  }

  .border-rose-500\/20 {
    border-color: #ff235733;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-rose-500\/20 {
      border-color: color-mix(in oklab, var(--color-rose-500) 20%, transparent);
    }
  }

  .border-rose-500\/30 {
    border-color: #ff23574d;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-rose-500\/30 {
      border-color: color-mix(in oklab, var(--color-rose-500) 30%, transparent);
    }
  }

  .border-rose-500\/35 {
    border-color: #ff235759;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-rose-500\/35 {
      border-color: color-mix(in oklab, var(--color-rose-500) 35%, transparent);
    }
  }

  .border-rose-700\/35 {
    border-color: #c2003959;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-rose-700\/35 {
      border-color: color-mix(in oklab, var(--color-rose-700) 35%, transparent);
    }
  }

  .border-rose-700\/50 {
    border-color: #c2003980;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-rose-700\/50 {
      border-color: color-mix(in oklab, var(--color-rose-700) 50%, transparent);
    }
  }

  .border-rose-800\/50 {
    border-color: #a3003780;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-rose-800\/50 {
      border-color: color-mix(in oklab, var(--color-rose-800) 50%, transparent);
    }
  }

  .border-rose-800\/60 {
    border-color: #a3003799;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-rose-800\/60 {
      border-color: color-mix(in oklab, var(--color-rose-800) 60%, transparent);
    }
  }

  .border-rose-900\/40 {
    border-color: #8b083666;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-rose-900\/40 {
      border-color: color-mix(in oklab, var(--color-rose-900) 40%, transparent);
    }
  }

  .border-sky-300 {
    border-color: var(--color-sky-300);
  }

  .border-sky-400 {
    border-color: var(--color-sky-400);
  }

  .border-sky-400\/40 {
    border-color: #00bcfe66;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-sky-400\/40 {
      border-color: color-mix(in oklab, var(--color-sky-400) 40%, transparent);
    }
  }

  .border-sky-400\/70 {
    border-color: #00bcfeb3;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-sky-400\/70 {
      border-color: color-mix(in oklab, var(--color-sky-400) 70%, transparent);
    }
  }

  .border-sky-500 {
    border-color: var(--color-sky-500);
  }

  .border-sky-500\/20 {
    border-color: #00a5ef33;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-sky-500\/20 {
      border-color: color-mix(in oklab, var(--color-sky-500) 20%, transparent);
    }
  }

  .border-sky-500\/30 {
    border-color: #00a5ef4d;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-sky-500\/30 {
      border-color: color-mix(in oklab, var(--color-sky-500) 30%, transparent);
    }
  }

  .border-sky-500\/40 {
    border-color: #00a5ef66;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-sky-500\/40 {
      border-color: color-mix(in oklab, var(--color-sky-500) 40%, transparent);
    }
  }

  .border-sky-500\/50 {
    border-color: #00a5ef80;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-sky-500\/50 {
      border-color: color-mix(in oklab, var(--color-sky-500) 50%, transparent);
    }
  }

  .border-sky-500\/60 {
    border-color: #00a5ef99;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-sky-500\/60 {
      border-color: color-mix(in oklab, var(--color-sky-500) 60%, transparent);
    }
  }

  .border-sky-700\/30 {
    border-color: #0069a44d;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-sky-700\/30 {
      border-color: color-mix(in oklab, var(--color-sky-700) 30%, transparent);
    }
  }

  .border-sky-700\/40 {
    border-color: #0069a466;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-sky-700\/40 {
      border-color: color-mix(in oklab, var(--color-sky-700) 40%, transparent);
    }
  }

  .border-sky-700\/50 {
    border-color: #0069a480;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-sky-700\/50 {
      border-color: color-mix(in oklab, var(--color-sky-700) 50%, transparent);
    }
  }

  .border-sky-800\/40 {
    border-color: #00598666;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-sky-800\/40 {
      border-color: color-mix(in oklab, var(--color-sky-800) 40%, transparent);
    }
  }

  .border-sky-800\/50 {
    border-color: #00598680;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-sky-800\/50 {
      border-color: color-mix(in oklab, var(--color-sky-800) 50%, transparent);
    }
  }

  .border-sky-900\/40 {
    border-color: #024a7066;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-sky-900\/40 {
      border-color: color-mix(in oklab, var(--color-sky-900) 40%, transparent);
    }
  }

  .border-sky-900\/50 {
    border-color: #024a7080;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-sky-900\/50 {
      border-color: color-mix(in oklab, var(--color-sky-900) 50%, transparent);
    }
  }

  .border-sky-900\/60 {
    border-color: #024a7099;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-sky-900\/60 {
      border-color: color-mix(in oklab, var(--color-sky-900) 60%, transparent);
    }
  }

  .border-slate-100 {
    border-color: var(--color-slate-100);
  }

  .border-slate-200 {
    border-color: var(--color-slate-200);
  }

  .border-slate-500 {
    border-color: var(--color-slate-500);
  }

  .border-slate-600 {
    border-color: var(--color-slate-600);
  }

  .border-slate-600\/70 {
    border-color: #45556cb3;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-slate-600\/70 {
      border-color: color-mix(in oklab, var(--color-slate-600) 70%, transparent);
    }
  }

  .border-slate-600\/80 {
    border-color: #45556ccc;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-slate-600\/80 {
      border-color: color-mix(in oklab, var(--color-slate-600) 80%, transparent);
    }
  }

  .border-slate-700 {
    border-color: var(--color-slate-700);
  }

  .border-slate-700\/40 {
    border-color: #31415866;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-slate-700\/40 {
      border-color: color-mix(in oklab, var(--color-slate-700) 40%, transparent);
    }
  }

  .border-slate-700\/45 {
    border-color: #31415873;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-slate-700\/45 {
      border-color: color-mix(in oklab, var(--color-slate-700) 45%, transparent);
    }
  }

  .border-slate-700\/50 {
    border-color: #31415880;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-slate-700\/50 {
      border-color: color-mix(in oklab, var(--color-slate-700) 50%, transparent);
    }
  }

  .border-slate-700\/55 {
    border-color: #3141588c;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-slate-700\/55 {
      border-color: color-mix(in oklab, var(--color-slate-700) 55%, transparent);
    }
  }

  .border-slate-700\/60 {
    border-color: #31415899;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-slate-700\/60 {
      border-color: color-mix(in oklab, var(--color-slate-700) 60%, transparent);
    }
  }

  .border-slate-700\/70 {
    border-color: #314158b3;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-slate-700\/70 {
      border-color: color-mix(in oklab, var(--color-slate-700) 70%, transparent);
    }
  }

  .border-slate-700\/80 {
    border-color: #314158cc;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-slate-700\/80 {
      border-color: color-mix(in oklab, var(--color-slate-700) 80%, transparent);
    }
  }

  .border-slate-800 {
    border-color: var(--color-slate-800);
  }

  .border-slate-800\/40 {
    border-color: #1d293d66;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-slate-800\/40 {
      border-color: color-mix(in oklab, var(--color-slate-800) 40%, transparent);
    }
  }

  .border-slate-800\/50 {
    border-color: #1d293d80;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-slate-800\/50 {
      border-color: color-mix(in oklab, var(--color-slate-800) 50%, transparent);
    }
  }

  .border-slate-800\/60 {
    border-color: #1d293d99;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-slate-800\/60 {
      border-color: color-mix(in oklab, var(--color-slate-800) 60%, transparent);
    }
  }

  .border-slate-800\/70 {
    border-color: #1d293db3;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-slate-800\/70 {
      border-color: color-mix(in oklab, var(--color-slate-800) 70%, transparent);
    }
  }

  .border-slate-800\/80 {
    border-color: #1d293dcc;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-slate-800\/80 {
      border-color: color-mix(in oklab, var(--color-slate-800) 80%, transparent);
    }
  }

  .border-slate-900 {
    border-color: var(--color-slate-900);
  }

  .border-slate-900\/50 {
    border-color: #0f172b80;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-slate-900\/50 {
      border-color: color-mix(in oklab, var(--color-slate-900) 50%, transparent);
    }
  }

  .border-teal-500\/50 {
    border-color: #00baa780;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-teal-500\/50 {
      border-color: color-mix(in oklab, var(--color-teal-500) 50%, transparent);
    }
  }

  .border-transparent {
    border-color: #0000;
  }

  .border-violet-400 {
    border-color: var(--color-violet-400);
  }

  .border-violet-500\/35 {
    border-color: #8d54ff59;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-violet-500\/35 {
      border-color: color-mix(in oklab, var(--color-violet-500) 35%, transparent);
    }
  }

  .border-violet-700\/70 {
    border-color: #7008e7b3;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-violet-700\/70 {
      border-color: color-mix(in oklab, var(--color-violet-700) 70%, transparent);
    }
  }

  .border-violet-800\/45 {
    border-color: #5d0ec073;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-violet-800\/45 {
      border-color: color-mix(in oklab, var(--color-violet-800) 45%, transparent);
    }
  }

  .border-white\/10 {
    border-color: #ffffff1a;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-white\/10 {
      border-color: color-mix(in oklab, var(--color-white) 10%, transparent);
    }
  }

  .border-white\/12 {
    border-color: #ffffff1f;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-white\/12 {
      border-color: color-mix(in oklab, var(--color-white) 12%, transparent);
    }
  }

  .border-white\/15 {
    border-color: #ffffff26;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-white\/15 {
      border-color: color-mix(in oklab, var(--color-white) 15%, transparent);
    }
  }

  .border-white\/20 {
    border-color: #fff3;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-white\/20 {
      border-color: color-mix(in oklab, var(--color-white) 20%, transparent);
    }
  }

  .border-white\/25 {
    border-color: #ffffff40;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-white\/25 {
      border-color: color-mix(in oklab, var(--color-white) 25%, transparent);
    }
  }

  .border-white\/30 {
    border-color: #ffffff4d;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-white\/30 {
      border-color: color-mix(in oklab, var(--color-white) 30%, transparent);
    }
  }

  .border-white\/40 {
    border-color: #fff6;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-white\/40 {
      border-color: color-mix(in oklab, var(--color-white) 40%, transparent);
    }
  }

  .border-white\/60 {
    border-color: #fff9;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-white\/60 {
      border-color: color-mix(in oklab, var(--color-white) 60%, transparent);
    }
  }

  .border-white\/65 {
    border-color: #ffffffa6;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-white\/65 {
      border-color: color-mix(in oklab, var(--color-white) 65%, transparent);
    }
  }

  .border-white\/90 {
    border-color: #ffffffe6;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-white\/90 {
      border-color: color-mix(in oklab, var(--color-white) 90%, transparent);
    }
  }

  .border-yellow-500\/40 {
    border-color: #edb20066;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-yellow-500\/40 {
      border-color: color-mix(in oklab, var(--color-yellow-500) 40%, transparent);
    }
  }

  .border-zinc-100 {
    border-color: var(--color-zinc-100);
  }

  .border-zinc-600 {
    border-color: var(--color-zinc-600);
  }

  .border-zinc-700 {
    border-color: var(--color-zinc-700);
  }

  .border-zinc-700\/65 {
    border-color: #3f3f46a6;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-zinc-700\/65 {
      border-color: color-mix(in oklab, var(--color-zinc-700) 65%, transparent);
    }
  }

  .border-zinc-800 {
    border-color: var(--color-zinc-800);
  }

  .border-t-cyan-300 {
    border-top-color: var(--color-cyan-300);
  }

  .border-t-white\/80 {
    border-top-color: #fffc;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-t-white\/80 {
      border-top-color: color-mix(in oklab, var(--color-white) 80%, transparent);
    }
  }

  .bg-\[\#0a0d12\] {
    background-color: #0a0d12;
  }

  .bg-\[\#0a1825\]\/95 {
    background-color: oklab(20.3602% -.0122288 -.0302994 / .95);
  }

  .bg-\[\#0b1020\] {
    background-color: #0b1020;
  }

  .bg-\[\#0b1320\] {
    background-color: #0b1320;
  }

  .bg-\[\#0b1420\] {
    background-color: #0b1420;
  }

  .bg-\[\#0b1420\]\/96 {
    background-color: oklab(18.9031% -.00685145 -.0272479 / .96);
  }

  .bg-\[\#0b1420\]\/98 {
    background-color: oklab(18.9031% -.00685145 -.0272479 / .98);
  }

  .bg-\[\#0b1726\]\/98 {
    background-color: oklab(20.1944% -.00921407 -.0336143 / .98);
  }

  .bg-\[\#0d2930\] {
    background-color: #0d2930;
  }

  .bg-\[\#1E9CFF\] {
    background-color: #1e9cff;
  }

  .bg-\[\#1E9CFF\]\/15 {
    background-color: oklab(67.8205% -.0635676 -.165986 / .15);
  }

  .bg-\[\#1c1c1f\] {
    background-color: #1c1c1f;
  }

  .bg-\[\#2b2b2e\] {
    background-color: #2b2b2e;
  }

  .bg-\[\#050a11\]\/96 {
    background-color: oklab(14.2377% -.00541197 -.0174095 / .96);
  }

  .bg-\[\#090a0d\] {
    background-color: #090a0d;
  }

  .bg-\[\#101b2a\] {
    background-color: #101b2a;
  }

  .bg-\[\#02060d\]\/78 {
    background-color: oklab(11.9687% -.00668148 -.0197899 / .78);
  }

  .bg-\[\#06101d\]\/85 {
    background-color: oklab(17.0772% -.00849351 -.0303674 / .85);
  }

  .bg-\[\#07111F\], .bg-\[\#07111f\] {
    background-color: #07111f;
  }

  .bg-\[\#08121f\] {
    background-color: #08121f;
  }

  .bg-\[\#08121f\]\/95 {
    background-color: oklab(18.0009% -.00789829 -.0298966 / .95);
  }

  .bg-\[\#08121f\]\/96 {
    background-color: oklab(18.0009% -.00789829 -.0298966 / .96);
  }

  .bg-\[\#18181b\]\/98 {
    background-color: oklab(21.0331% .00160407 -.0056366 / .98);
  }

  .bg-\[\#29292c\] {
    background-color: #29292c;
  }

  .bg-\[\#030914\]\/96 {
    background-color: oklab(13.8572% -.00683297 -.0268641 / .96);
  }

  .bg-\[\#081119\] {
    background-color: #081119;
  }

  .bg-\[\#081220\]\/80 {
    background-color: oklab(18.0716% -.00751881 -.0318465 / .8);
  }

  .bg-\[\#111820\]\/95 {
    background-color: oklab(20.5884% -.00589839 -.0182667 / .95);
  }

  .bg-\[\#111820\]\/96 {
    background-color: oklab(20.5884% -.00589839 -.0182667 / .96);
  }

  .bg-\[\#202023\] {
    background-color: #202023;
  }

  .bg-\[\#242427\] {
    background-color: #242427;
  }

  .bg-\[\#f7f8fa\] {
    background-color: #f7f8fa;
  }

  .bg-amber-400 {
    background-color: var(--color-amber-400);
  }

  .bg-amber-400\/5 {
    background-color: #fcbb000d;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-amber-400\/5 {
      background-color: color-mix(in oklab, var(--color-amber-400) 5%, transparent);
    }
  }

  .bg-amber-500 {
    background-color: var(--color-amber-500);
  }

  .bg-amber-500\/5 {
    background-color: #f99c000d;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-amber-500\/5 {
      background-color: color-mix(in oklab, var(--color-amber-500) 5%, transparent);
    }
  }

  .bg-amber-500\/10 {
    background-color: #f99c001a;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-amber-500\/10 {
      background-color: color-mix(in oklab, var(--color-amber-500) 10%, transparent);
    }
  }

  .bg-amber-500\/15 {
    background-color: #f99c0026;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-amber-500\/15 {
      background-color: color-mix(in oklab, var(--color-amber-500) 15%, transparent);
    }
  }

  .bg-amber-950\/15 {
    background-color: #46190126;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-amber-950\/15 {
      background-color: color-mix(in oklab, var(--color-amber-950) 15%, transparent);
    }
  }

  .bg-amber-950\/20 {
    background-color: #46190133;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-amber-950\/20 {
      background-color: color-mix(in oklab, var(--color-amber-950) 20%, transparent);
    }
  }

  .bg-amber-950\/80 {
    background-color: #461901cc;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-amber-950\/80 {
      background-color: color-mix(in oklab, var(--color-amber-950) 80%, transparent);
    }
  }

  .bg-black {
    background-color: var(--color-black);
  }

  .bg-black\/15 {
    background-color: #00000026;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-black\/15 {
      background-color: color-mix(in oklab, var(--color-black) 15%, transparent);
    }
  }

  .bg-black\/20 {
    background-color: #0003;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-black\/20 {
      background-color: color-mix(in oklab, var(--color-black) 20%, transparent);
    }
  }

  .bg-black\/25 {
    background-color: #00000040;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-black\/25 {
      background-color: color-mix(in oklab, var(--color-black) 25%, transparent);
    }
  }

  .bg-black\/30 {
    background-color: #0000004d;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-black\/30 {
      background-color: color-mix(in oklab, var(--color-black) 30%, transparent);
    }
  }

  .bg-black\/35 {
    background-color: #00000059;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-black\/35 {
      background-color: color-mix(in oklab, var(--color-black) 35%, transparent);
    }
  }

  .bg-black\/40 {
    background-color: #0006;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-black\/40 {
      background-color: color-mix(in oklab, var(--color-black) 40%, transparent);
    }
  }

  .bg-black\/50 {
    background-color: #00000080;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-black\/50 {
      background-color: color-mix(in oklab, var(--color-black) 50%, transparent);
    }
  }

  .bg-black\/60 {
    background-color: #0009;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-black\/60 {
      background-color: color-mix(in oklab, var(--color-black) 60%, transparent);
    }
  }

  .bg-black\/65 {
    background-color: #000000a6;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-black\/65 {
      background-color: color-mix(in oklab, var(--color-black) 65%, transparent);
    }
  }

  .bg-black\/70 {
    background-color: #000000b3;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-black\/70 {
      background-color: color-mix(in oklab, var(--color-black) 70%, transparent);
    }
  }

  .bg-black\/75 {
    background-color: #000000bf;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-black\/75 {
      background-color: color-mix(in oklab, var(--color-black) 75%, transparent);
    }
  }

  .bg-black\/80 {
    background-color: #000c;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-black\/80 {
      background-color: color-mix(in oklab, var(--color-black) 80%, transparent);
    }
  }

  .bg-black\/82 {
    background-color: #000000d1;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-black\/82 {
      background-color: color-mix(in oklab, var(--color-black) 82%, transparent);
    }
  }

  .bg-black\/90 {
    background-color: #000000e6;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-black\/90 {
      background-color: color-mix(in oklab, var(--color-black) 90%, transparent);
    }
  }

  .bg-blue-50 {
    background-color: var(--color-blue-50);
  }

  .bg-blue-100 {
    background-color: var(--color-blue-100);
  }

  .bg-blue-500 {
    background-color: var(--color-blue-500);
  }

  .bg-blue-500\/10 {
    background-color: #3080ff1a;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-blue-500\/10 {
      background-color: color-mix(in oklab, var(--color-blue-500) 10%, transparent);
    }
  }

  .bg-blue-500\/20 {
    background-color: #3080ff33;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-blue-500\/20 {
      background-color: color-mix(in oklab, var(--color-blue-500) 20%, transparent);
    }
  }

  .bg-blue-600 {
    background-color: var(--color-blue-600);
  }

  .bg-blue-950\/20 {
    background-color: #16245633;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-blue-950\/20 {
      background-color: color-mix(in oklab, var(--color-blue-950) 20%, transparent);
    }
  }

  .bg-blue-950\/30 {
    background-color: #1624564d;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-blue-950\/30 {
      background-color: color-mix(in oklab, var(--color-blue-950) 30%, transparent);
    }
  }

  .bg-cyan-400 {
    background-color: var(--color-cyan-400);
  }

  .bg-cyan-500 {
    background-color: var(--color-cyan-500);
  }

  .bg-cyan-500\/5 {
    background-color: #00b7d70d;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-cyan-500\/5 {
      background-color: color-mix(in oklab, var(--color-cyan-500) 5%, transparent);
    }
  }

  .bg-cyan-500\/10 {
    background-color: #00b7d71a;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-cyan-500\/10 {
      background-color: color-mix(in oklab, var(--color-cyan-500) 10%, transparent);
    }
  }

  .bg-cyan-500\/15 {
    background-color: #00b7d726;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-cyan-500\/15 {
      background-color: color-mix(in oklab, var(--color-cyan-500) 15%, transparent);
    }
  }

  .bg-cyan-600 {
    background-color: var(--color-cyan-600);
  }

  .bg-cyan-900\/35 {
    background-color: #104e6459;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-cyan-900\/35 {
      background-color: color-mix(in oklab, var(--color-cyan-900) 35%, transparent);
    }
  }

  .bg-cyan-950 {
    background-color: var(--color-cyan-950);
  }

  .bg-cyan-950\/15 {
    background-color: #05334526;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-cyan-950\/15 {
      background-color: color-mix(in oklab, var(--color-cyan-950) 15%, transparent);
    }
  }

  .bg-cyan-950\/20 {
    background-color: #05334533;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-cyan-950\/20 {
      background-color: color-mix(in oklab, var(--color-cyan-950) 20%, transparent);
    }
  }

  .bg-cyan-950\/30 {
    background-color: #0533454d;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-cyan-950\/30 {
      background-color: color-mix(in oklab, var(--color-cyan-950) 30%, transparent);
    }
  }

  .bg-cyan-950\/40 {
    background-color: #05334566;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-cyan-950\/40 {
      background-color: color-mix(in oklab, var(--color-cyan-950) 40%, transparent);
    }
  }

  .bg-cyan-950\/60 {
    background-color: #05334599;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-cyan-950\/60 {
      background-color: color-mix(in oklab, var(--color-cyan-950) 60%, transparent);
    }
  }

  .bg-emerald-400\/80 {
    background-color: #00d294cc;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-emerald-400\/80 {
      background-color: color-mix(in oklab, var(--color-emerald-400) 80%, transparent);
    }
  }

  .bg-emerald-500 {
    background-color: var(--color-emerald-500);
  }

  .bg-emerald-500\/5 {
    background-color: #00bb7f0d;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-emerald-500\/5 {
      background-color: color-mix(in oklab, var(--color-emerald-500) 5%, transparent);
    }
  }

  .bg-emerald-500\/10 {
    background-color: #00bb7f1a;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-emerald-500\/10 {
      background-color: color-mix(in oklab, var(--color-emerald-500) 10%, transparent);
    }
  }

  .bg-emerald-500\/15 {
    background-color: #00bb7f26;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-emerald-500\/15 {
      background-color: color-mix(in oklab, var(--color-emerald-500) 15%, transparent);
    }
  }

  .bg-emerald-500\/85 {
    background-color: #00bb7fd9;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-emerald-500\/85 {
      background-color: color-mix(in oklab, var(--color-emerald-500) 85%, transparent);
    }
  }

  .bg-emerald-500\/95 {
    background-color: #00bb7ff2;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-emerald-500\/95 {
      background-color: color-mix(in oklab, var(--color-emerald-500) 95%, transparent);
    }
  }

  .bg-emerald-600 {
    background-color: var(--color-emerald-600);
  }

  .bg-emerald-700 {
    background-color: var(--color-emerald-700);
  }

  .bg-emerald-950\/15 {
    background-color: #002c2226;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-emerald-950\/15 {
      background-color: color-mix(in oklab, var(--color-emerald-950) 15%, transparent);
    }
  }

  .bg-emerald-950\/20 {
    background-color: #002c2233;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-emerald-950\/20 {
      background-color: color-mix(in oklab, var(--color-emerald-950) 20%, transparent);
    }
  }

  .bg-emerald-950\/30 {
    background-color: #002c224d;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-emerald-950\/30 {
      background-color: color-mix(in oklab, var(--color-emerald-950) 30%, transparent);
    }
  }

  .bg-fuchsia-500\/10 {
    background-color: #e12afb1a;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-fuchsia-500\/10 {
      background-color: color-mix(in oklab, var(--color-fuchsia-500) 10%, transparent);
    }
  }

  .bg-fuchsia-500\/15 {
    background-color: #e12afb26;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-fuchsia-500\/15 {
      background-color: color-mix(in oklab, var(--color-fuchsia-500) 15%, transparent);
    }
  }

  .bg-fuchsia-950\/20 {
    background-color: #4b004f33;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-fuchsia-950\/20 {
      background-color: color-mix(in oklab, var(--color-fuchsia-950) 20%, transparent);
    }
  }

  .bg-green-50 {
    background-color: var(--color-green-50);
  }

  .bg-green-500 {
    background-color: var(--color-green-500);
  }

  .bg-indigo-500 {
    background-color: var(--color-indigo-500);
  }

  .bg-indigo-500\/10 {
    background-color: #625fff1a;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-indigo-500\/10 {
      background-color: color-mix(in oklab, var(--color-indigo-500) 10%, transparent);
    }
  }

  .bg-indigo-500\/15 {
    background-color: #625fff26;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-indigo-500\/15 {
      background-color: color-mix(in oklab, var(--color-indigo-500) 15%, transparent);
    }
  }

  .bg-indigo-600 {
    background-color: var(--color-indigo-600);
  }

  .bg-indigo-950\/25 {
    background-color: #1e1a4d40;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-indigo-950\/25 {
      background-color: color-mix(in oklab, var(--color-indigo-950) 25%, transparent);
    }
  }

  .bg-orange-500 {
    background-color: var(--color-orange-500);
  }

  .bg-orange-500\/5 {
    background-color: #fe6e000d;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-orange-500\/5 {
      background-color: color-mix(in oklab, var(--color-orange-500) 5%, transparent);
    }
  }

  .bg-orange-500\/10 {
    background-color: #fe6e001a;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-orange-500\/10 {
      background-color: color-mix(in oklab, var(--color-orange-500) 10%, transparent);
    }
  }

  .bg-orange-500\/20 {
    background-color: #fe6e0033;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-orange-500\/20 {
      background-color: color-mix(in oklab, var(--color-orange-500) 20%, transparent);
    }
  }

  .bg-orange-950\/20 {
    background-color: #44130633;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-orange-950\/20 {
      background-color: color-mix(in oklab, var(--color-orange-950) 20%, transparent);
    }
  }

  .bg-purple-400 {
    background-color: var(--color-purple-400);
  }

  .bg-purple-500\/10 {
    background-color: #ac4bff1a;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-purple-500\/10 {
      background-color: color-mix(in oklab, var(--color-purple-500) 10%, transparent);
    }
  }

  .bg-purple-600 {
    background-color: var(--color-purple-600);
  }

  .bg-red-50 {
    background-color: var(--color-red-50);
  }

  .bg-red-500 {
    background-color: var(--color-red-500);
  }

  .bg-red-500\/10 {
    background-color: #fb2c361a;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-red-500\/10 {
      background-color: color-mix(in oklab, var(--color-red-500) 10%, transparent);
    }
  }

  .bg-red-500\/\[0\.04\] {
    background-color: #fb2c360a;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-red-500\/\[0\.04\] {
      background-color: color-mix(in oklab, var(--color-red-500) 4%, transparent);
    }
  }

  .bg-red-600 {
    background-color: var(--color-red-600);
  }

  .bg-red-950\/20 {
    background-color: #46080933;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-red-950\/20 {
      background-color: color-mix(in oklab, var(--color-red-950) 20%, transparent);
    }
  }

  .bg-red-950\/30 {
    background-color: #4608094d;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-red-950\/30 {
      background-color: color-mix(in oklab, var(--color-red-950) 30%, transparent);
    }
  }

  .bg-red-950\/45 {
    background-color: #46080973;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-red-950\/45 {
      background-color: color-mix(in oklab, var(--color-red-950) 45%, transparent);
    }
  }

  .bg-rose-400 {
    background-color: var(--color-rose-400);
  }

  .bg-rose-500\/10 {
    background-color: #ff23571a;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-rose-500\/10 {
      background-color: color-mix(in oklab, var(--color-rose-500) 10%, transparent);
    }
  }

  .bg-rose-600 {
    background-color: var(--color-rose-600);
  }

  .bg-rose-900\/30 {
    background-color: #8b08364d;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-rose-900\/30 {
      background-color: color-mix(in oklab, var(--color-rose-900) 30%, transparent);
    }
  }

  .bg-rose-950\/20 {
    background-color: #4d021833;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-rose-950\/20 {
      background-color: color-mix(in oklab, var(--color-rose-950) 20%, transparent);
    }
  }

  .bg-rose-950\/30 {
    background-color: #4d02184d;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-rose-950\/30 {
      background-color: color-mix(in oklab, var(--color-rose-950) 30%, transparent);
    }
  }

  .bg-sky-50 {
    background-color: var(--color-sky-50);
  }

  .bg-sky-400 {
    background-color: var(--color-sky-400);
  }

  .bg-sky-500 {
    background-color: var(--color-sky-500);
  }

  .bg-sky-500\/5 {
    background-color: #00a5ef0d;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-sky-500\/5 {
      background-color: color-mix(in oklab, var(--color-sky-500) 5%, transparent);
    }
  }

  .bg-sky-500\/10 {
    background-color: #00a5ef1a;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-sky-500\/10 {
      background-color: color-mix(in oklab, var(--color-sky-500) 10%, transparent);
    }
  }

  .bg-sky-500\/15 {
    background-color: #00a5ef26;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-sky-500\/15 {
      background-color: color-mix(in oklab, var(--color-sky-500) 15%, transparent);
    }
  }

  .bg-sky-500\/20 {
    background-color: #00a5ef33;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-sky-500\/20 {
      background-color: color-mix(in oklab, var(--color-sky-500) 20%, transparent);
    }
  }

  .bg-sky-500\/60 {
    background-color: #00a5ef99;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-sky-500\/60 {
      background-color: color-mix(in oklab, var(--color-sky-500) 60%, transparent);
    }
  }

  .bg-sky-500\/80 {
    background-color: #00a5efcc;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-sky-500\/80 {
      background-color: color-mix(in oklab, var(--color-sky-500) 80%, transparent);
    }
  }

  .bg-sky-500\/\[0\.06\] {
    background-color: #00a5ef0f;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-sky-500\/\[0\.06\] {
      background-color: color-mix(in oklab, var(--color-sky-500) 6%, transparent);
    }
  }

  .bg-sky-600 {
    background-color: var(--color-sky-600);
  }

  .bg-sky-700 {
    background-color: var(--color-sky-700);
  }

  .bg-sky-950\/20 {
    background-color: #052f4a33;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-sky-950\/20 {
      background-color: color-mix(in oklab, var(--color-sky-950) 20%, transparent);
    }
  }

  .bg-slate-50 {
    background-color: var(--color-slate-50);
  }

  .bg-slate-100 {
    background-color: var(--color-slate-100);
  }

  .bg-slate-200 {
    background-color: var(--color-slate-200);
  }

  .bg-slate-300 {
    background-color: var(--color-slate-300);
  }

  .bg-slate-300\/10 {
    background-color: #cad5e21a;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-slate-300\/10 {
      background-color: color-mix(in oklab, var(--color-slate-300) 10%, transparent);
    }
  }

  .bg-slate-600 {
    background-color: var(--color-slate-600);
  }

  .bg-slate-700 {
    background-color: var(--color-slate-700);
  }

  .bg-slate-700\/30 {
    background-color: #3141584d;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-slate-700\/30 {
      background-color: color-mix(in oklab, var(--color-slate-700) 30%, transparent);
    }
  }

  .bg-slate-800 {
    background-color: var(--color-slate-800);
  }

  .bg-slate-800\/30 {
    background-color: #1d293d4d;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-slate-800\/30 {
      background-color: color-mix(in oklab, var(--color-slate-800) 30%, transparent);
    }
  }

  .bg-slate-800\/40 {
    background-color: #1d293d66;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-slate-800\/40 {
      background-color: color-mix(in oklab, var(--color-slate-800) 40%, transparent);
    }
  }

  .bg-slate-800\/60 {
    background-color: #1d293d99;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-slate-800\/60 {
      background-color: color-mix(in oklab, var(--color-slate-800) 60%, transparent);
    }
  }

  .bg-slate-800\/70 {
    background-color: #1d293db3;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-slate-800\/70 {
      background-color: color-mix(in oklab, var(--color-slate-800) 70%, transparent);
    }
  }

  .bg-slate-800\/80 {
    background-color: #1d293dcc;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-slate-800\/80 {
      background-color: color-mix(in oklab, var(--color-slate-800) 80%, transparent);
    }
  }

  .bg-slate-800\/90 {
    background-color: #1d293de6;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-slate-800\/90 {
      background-color: color-mix(in oklab, var(--color-slate-800) 90%, transparent);
    }
  }

  .bg-slate-800\/95 {
    background-color: #1d293df2;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-slate-800\/95 {
      background-color: color-mix(in oklab, var(--color-slate-800) 95%, transparent);
    }
  }

  .bg-slate-900 {
    background-color: var(--color-slate-900);
  }

  .bg-slate-900\/30 {
    background-color: #0f172b4d;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-slate-900\/30 {
      background-color: color-mix(in oklab, var(--color-slate-900) 30%, transparent);
    }
  }

  .bg-slate-900\/35 {
    background-color: #0f172b59;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-slate-900\/35 {
      background-color: color-mix(in oklab, var(--color-slate-900) 35%, transparent);
    }
  }

  .bg-slate-900\/40 {
    background-color: #0f172b66;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-slate-900\/40 {
      background-color: color-mix(in oklab, var(--color-slate-900) 40%, transparent);
    }
  }

  .bg-slate-900\/45 {
    background-color: #0f172b73;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-slate-900\/45 {
      background-color: color-mix(in oklab, var(--color-slate-900) 45%, transparent);
    }
  }

  .bg-slate-900\/50 {
    background-color: #0f172b80;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-slate-900\/50 {
      background-color: color-mix(in oklab, var(--color-slate-900) 50%, transparent);
    }
  }

  .bg-slate-900\/55 {
    background-color: #0f172b8c;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-slate-900\/55 {
      background-color: color-mix(in oklab, var(--color-slate-900) 55%, transparent);
    }
  }

  .bg-slate-900\/60 {
    background-color: #0f172b99;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-slate-900\/60 {
      background-color: color-mix(in oklab, var(--color-slate-900) 60%, transparent);
    }
  }

  .bg-slate-900\/65 {
    background-color: #0f172ba6;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-slate-900\/65 {
      background-color: color-mix(in oklab, var(--color-slate-900) 65%, transparent);
    }
  }

  .bg-slate-900\/70 {
    background-color: #0f172bb3;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-slate-900\/70 {
      background-color: color-mix(in oklab, var(--color-slate-900) 70%, transparent);
    }
  }

  .bg-slate-900\/75 {
    background-color: #0f172bbf;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-slate-900\/75 {
      background-color: color-mix(in oklab, var(--color-slate-900) 75%, transparent);
    }
  }

  .bg-slate-900\/80 {
    background-color: #0f172bcc;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-slate-900\/80 {
      background-color: color-mix(in oklab, var(--color-slate-900) 80%, transparent);
    }
  }

  .bg-slate-900\/95 {
    background-color: #0f172bf2;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-slate-900\/95 {
      background-color: color-mix(in oklab, var(--color-slate-900) 95%, transparent);
    }
  }

  .bg-slate-950 {
    background-color: var(--color-slate-950);
  }

  .bg-slate-950\/20 {
    background-color: #02061833;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-slate-950\/20 {
      background-color: color-mix(in oklab, var(--color-slate-950) 20%, transparent);
    }
  }

  .bg-slate-950\/25 {
    background-color: #02061840;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-slate-950\/25 {
      background-color: color-mix(in oklab, var(--color-slate-950) 25%, transparent);
    }
  }

  .bg-slate-950\/35 {
    background-color: #02061859;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-slate-950\/35 {
      background-color: color-mix(in oklab, var(--color-slate-950) 35%, transparent);
    }
  }

  .bg-slate-950\/40 {
    background-color: #02061866;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-slate-950\/40 {
      background-color: color-mix(in oklab, var(--color-slate-950) 40%, transparent);
    }
  }

  .bg-slate-950\/45 {
    background-color: #02061873;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-slate-950\/45 {
      background-color: color-mix(in oklab, var(--color-slate-950) 45%, transparent);
    }
  }

  .bg-slate-950\/50 {
    background-color: #02061880;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-slate-950\/50 {
      background-color: color-mix(in oklab, var(--color-slate-950) 50%, transparent);
    }
  }

  .bg-slate-950\/55 {
    background-color: #0206188c;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-slate-950\/55 {
      background-color: color-mix(in oklab, var(--color-slate-950) 55%, transparent);
    }
  }

  .bg-slate-950\/60 {
    background-color: #02061899;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-slate-950\/60 {
      background-color: color-mix(in oklab, var(--color-slate-950) 60%, transparent);
    }
  }

  .bg-slate-950\/65 {
    background-color: #020618a6;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-slate-950\/65 {
      background-color: color-mix(in oklab, var(--color-slate-950) 65%, transparent);
    }
  }

  .bg-slate-950\/70 {
    background-color: #020618b3;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-slate-950\/70 {
      background-color: color-mix(in oklab, var(--color-slate-950) 70%, transparent);
    }
  }

  .bg-slate-950\/80 {
    background-color: #020618cc;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-slate-950\/80 {
      background-color: color-mix(in oklab, var(--color-slate-950) 80%, transparent);
    }
  }

  .bg-slate-950\/85 {
    background-color: #020618d9;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-slate-950\/85 {
      background-color: color-mix(in oklab, var(--color-slate-950) 85%, transparent);
    }
  }

  .bg-slate-950\/88 {
    background-color: #020618e0;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-slate-950\/88 {
      background-color: color-mix(in oklab, var(--color-slate-950) 88%, transparent);
    }
  }

  .bg-slate-950\/90 {
    background-color: #020618e6;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-slate-950\/90 {
      background-color: color-mix(in oklab, var(--color-slate-950) 90%, transparent);
    }
  }

  .bg-slate-950\/92 {
    background-color: #020618eb;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-slate-950\/92 {
      background-color: color-mix(in oklab, var(--color-slate-950) 92%, transparent);
    }
  }

  .bg-slate-950\/95 {
    background-color: #020618f2;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-slate-950\/95 {
      background-color: color-mix(in oklab, var(--color-slate-950) 95%, transparent);
    }
  }

  .bg-slate-950\/96 {
    background-color: #020618f5;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-slate-950\/96 {
      background-color: color-mix(in oklab, var(--color-slate-950) 96%, transparent);
    }
  }

  .bg-slate-950\/98 {
    background-color: #020618fa;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-slate-950\/98 {
      background-color: color-mix(in oklab, var(--color-slate-950) 98%, transparent);
    }
  }

  .bg-teal-500\/20 {
    background-color: #00baa733;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-teal-500\/20 {
      background-color: color-mix(in oklab, var(--color-teal-500) 20%, transparent);
    }
  }

  .bg-teal-600 {
    background-color: var(--color-teal-600);
  }

  .bg-transparent {
    background-color: #0000;
  }

  .bg-violet-500\/10 {
    background-color: #8d54ff1a;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-violet-500\/10 {
      background-color: color-mix(in oklab, var(--color-violet-500) 10%, transparent);
    }
  }

  .bg-violet-500\/15 {
    background-color: #8d54ff26;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-violet-500\/15 {
      background-color: color-mix(in oklab, var(--color-violet-500) 15%, transparent);
    }
  }

  .bg-violet-950\/20 {
    background-color: #2f0d6833;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-violet-950\/20 {
      background-color: color-mix(in oklab, var(--color-violet-950) 20%, transparent);
    }
  }

  .bg-violet-950\/35 {
    background-color: #2f0d6859;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-violet-950\/35 {
      background-color: color-mix(in oklab, var(--color-violet-950) 35%, transparent);
    }
  }

  .bg-white {
    background-color: var(--color-white);
  }

  .bg-white\/5 {
    background-color: #ffffff0d;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-white\/5 {
      background-color: color-mix(in oklab, var(--color-white) 5%, transparent);
    }
  }

  .bg-white\/10 {
    background-color: #ffffff1a;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-white\/10 {
      background-color: color-mix(in oklab, var(--color-white) 10%, transparent);
    }
  }

  .bg-white\/95 {
    background-color: #fffffff2;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-white\/95 {
      background-color: color-mix(in oklab, var(--color-white) 95%, transparent);
    }
  }

  .bg-white\/\[0\.03\] {
    background-color: #ffffff08;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-white\/\[0\.03\] {
      background-color: color-mix(in oklab, var(--color-white) 3%, transparent);
    }
  }

  .bg-white\/\[0\.06\] {
    background-color: #ffffff0f;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-white\/\[0\.06\] {
      background-color: color-mix(in oklab, var(--color-white) 6%, transparent);
    }
  }

  .bg-white\/\[0\.07\] {
    background-color: #ffffff12;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-white\/\[0\.07\] {
      background-color: color-mix(in oklab, var(--color-white) 7.0%, transparent);
    }
  }

  .bg-white\/\[0\.035\] {
    background-color: #ffffff09;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-white\/\[0\.035\] {
      background-color: color-mix(in oklab, var(--color-white) 3.5%, transparent);
    }
  }

  .bg-white\/\[0\.045\] {
    background-color: #ffffff0b;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-white\/\[0\.045\] {
      background-color: color-mix(in oklab, var(--color-white) 4.5%, transparent);
    }
  }

  .bg-yellow-500 {
    background-color: var(--color-yellow-500);
  }

  .bg-yellow-500\/10 {
    background-color: #edb2001a;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-yellow-500\/10 {
      background-color: color-mix(in oklab, var(--color-yellow-500) 10%, transparent);
    }
  }

  .bg-zinc-100 {
    background-color: var(--color-zinc-100);
  }

  .bg-zinc-200 {
    background-color: var(--color-zinc-200);
  }

  .bg-zinc-800\/45 {
    background-color: #27272a73;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-zinc-800\/45 {
      background-color: color-mix(in oklab, var(--color-zinc-800) 45%, transparent);
    }
  }

  .bg-zinc-800\/65 {
    background-color: #27272aa6;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-zinc-800\/65 {
      background-color: color-mix(in oklab, var(--color-zinc-800) 65%, transparent);
    }
  }

  .bg-zinc-900 {
    background-color: var(--color-zinc-900);
  }

  .bg-zinc-900\/45 {
    background-color: #18181b73;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-zinc-900\/45 {
      background-color: color-mix(in oklab, var(--color-zinc-900) 45%, transparent);
    }
  }

  .bg-zinc-900\/50 {
    background-color: #18181b80;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-zinc-900\/50 {
      background-color: color-mix(in oklab, var(--color-zinc-900) 50%, transparent);
    }
  }

  .bg-zinc-900\/70 {
    background-color: #18181bb3;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-zinc-900\/70 {
      background-color: color-mix(in oklab, var(--color-zinc-900) 70%, transparent);
    }
  }

  .bg-zinc-900\/90 {
    background-color: #18181be6;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-zinc-900\/90 {
      background-color: color-mix(in oklab, var(--color-zinc-900) 90%, transparent);
    }
  }

  .bg-zinc-950 {
    background-color: var(--color-zinc-950);
  }

  .bg-zinc-950\/60 {
    background-color: #09090b99;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-zinc-950\/60 {
      background-color: color-mix(in oklab, var(--color-zinc-950) 60%, transparent);
    }
  }

  .bg-zinc-950\/82 {
    background-color: #09090bd1;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-zinc-950\/82 {
      background-color: color-mix(in oklab, var(--color-zinc-950) 82%, transparent);
    }
  }

  .bg-zinc-950\/90 {
    background-color: #09090be6;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-zinc-950\/90 {
      background-color: color-mix(in oklab, var(--color-zinc-950) 90%, transparent);
    }
  }

  .bg-zinc-950\/94 {
    background-color: #09090bf0;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-zinc-950\/94 {
      background-color: color-mix(in oklab, var(--color-zinc-950) 94%, transparent);
    }
  }

  .bg-gradient-to-r {
    --tw-gradient-position: to right in oklab;
    background-image: linear-gradient(var(--tw-gradient-stops));
  }

  .from-slate-900 {
    --tw-gradient-from: var(--color-slate-900);
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }

  .from-violet-500 {
    --tw-gradient-from: var(--color-violet-500);
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }

  .from-zinc-300 {
    --tw-gradient-from: var(--color-zinc-300);
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }

  .via-fuchsia-500 {
    --tw-gradient-via: var(--color-fuchsia-500);
    --tw-gradient-via-stops: var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-via) var(--tw-gradient-via-position), var(--tw-gradient-to) var(--tw-gradient-to-position);
    --tw-gradient-stops: var(--tw-gradient-via-stops);
  }

  .to-pink-500 {
    --tw-gradient-to: var(--color-pink-500);
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }

  .to-sky-950\/40 {
    --tw-gradient-to: #052f4a66;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .to-sky-950\/40 {
      --tw-gradient-to: color-mix(in oklab, var(--color-sky-950) 40%, transparent);
    }
  }

  .to-sky-950\/40 {
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }

  .to-white {
    --tw-gradient-to: var(--color-white);
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }

  .fill-current {
    fill: currentColor;
  }

  .stroke-\[3\] {
    stroke-width: 3px;
  }

  .object-contain {
    object-fit: contain;
  }

  .p-0 {
    padding: 0;
  }

  .p-0\.5 {
    padding: calc(var(--spacing) * .5);
  }

  .p-1 {
    padding: var(--spacing);
  }

  .p-1\.5 {
    padding: calc(var(--spacing) * 1.5);
  }

  .p-2 {
    padding: calc(var(--spacing) * 2);
  }

  .p-2\.5 {
    padding: calc(var(--spacing) * 2.5);
  }

  .p-3 {
    padding: calc(var(--spacing) * 3);
  }

  .p-3\.5 {
    padding: calc(var(--spacing) * 3.5);
  }

  .p-4 {
    padding: calc(var(--spacing) * 4);
  }

  .p-5 {
    padding: calc(var(--spacing) * 5);
  }

  .p-6 {
    padding: calc(var(--spacing) * 6);
  }

  .p-7 {
    padding: calc(var(--spacing) * 7);
  }

  .p-8 {
    padding: calc(var(--spacing) * 8);
  }

  .p-10 {
    padding: calc(var(--spacing) * 10);
  }

  .px-0\.5 {
    padding-inline: calc(var(--spacing) * .5);
  }

  .px-1 {
    padding-inline: var(--spacing);
  }

  .px-1\.5 {
    padding-inline: calc(var(--spacing) * 1.5);
  }

  .px-2 {
    padding-inline: calc(var(--spacing) * 2);
  }

  .px-2\.5 {
    padding-inline: calc(var(--spacing) * 2.5);
  }

  .px-3 {
    padding-inline: calc(var(--spacing) * 3);
  }

  .px-3\.5 {
    padding-inline: calc(var(--spacing) * 3.5);
  }

  .px-4 {
    padding-inline: calc(var(--spacing) * 4);
  }

  .px-5 {
    padding-inline: calc(var(--spacing) * 5);
  }

  .px-6 {
    padding-inline: calc(var(--spacing) * 6);
  }

  .py-0\.5 {
    padding-block: calc(var(--spacing) * .5);
  }

  .py-1 {
    padding-block: var(--spacing);
  }

  .py-1\.5 {
    padding-block: calc(var(--spacing) * 1.5);
  }

  .py-2 {
    padding-block: calc(var(--spacing) * 2);
  }

  .py-2\.5 {
    padding-block: calc(var(--spacing) * 2.5);
  }

  .py-3 {
    padding-block: calc(var(--spacing) * 3);
  }

  .py-3\.5 {
    padding-block: calc(var(--spacing) * 3.5);
  }

  .py-4 {
    padding-block: calc(var(--spacing) * 4);
  }

  .py-6 {
    padding-block: calc(var(--spacing) * 6);
  }

  .py-7 {
    padding-block: calc(var(--spacing) * 7);
  }

  .py-10 {
    padding-block: calc(var(--spacing) * 10);
  }

  .py-16 {
    padding-block: calc(var(--spacing) * 16);
  }

  .pt-0\.5 {
    padding-top: calc(var(--spacing) * .5);
  }

  .pt-1 {
    padding-top: var(--spacing);
  }

  .pt-2 {
    padding-top: calc(var(--spacing) * 2);
  }

  .pt-2\.5 {
    padding-top: calc(var(--spacing) * 2.5);
  }

  .pt-3 {
    padding-top: calc(var(--spacing) * 3);
  }

  .pt-4 {
    padding-top: calc(var(--spacing) * 4);
  }

  .pr-1 {
    padding-right: var(--spacing);
  }

  .pr-2 {
    padding-right: calc(var(--spacing) * 2);
  }

  .pr-3 {
    padding-right: calc(var(--spacing) * 3);
  }

  .pb-0\.5 {
    padding-bottom: calc(var(--spacing) * .5);
  }

  .pb-1 {
    padding-bottom: var(--spacing);
  }

  .pb-1\.5 {
    padding-bottom: calc(var(--spacing) * 1.5);
  }

  .pb-2 {
    padding-bottom: calc(var(--spacing) * 2);
  }

  .pb-3 {
    padding-bottom: calc(var(--spacing) * 3);
  }

  .pb-4 {
    padding-bottom: calc(var(--spacing) * 4);
  }

  .pb-\[max\(12px\,env\(safe-area-inset-bottom\)\)\] {
    padding-bottom: max(12px, env(safe-area-inset-bottom));
  }

  .pl-1 {
    padding-left: var(--spacing);
  }

  .pl-2 {
    padding-left: calc(var(--spacing) * 2);
  }

  .pl-3 {
    padding-left: calc(var(--spacing) * 3);
  }

  .text-center {
    text-align: center;
  }

  .text-left {
    text-align: left;
  }

  .text-right {
    text-align: right;
  }

  .font-mono {
    font-family: var(--font-mono);
  }

  .font-sans {
    font-family: var(--font-sans);
  }

  .text-2xl {
    font-size: var(--text-2xl);
    line-height: var(--tw-leading, var(--text-2xl--line-height));
  }

  .text-base {
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
  }

  .text-lg {
    font-size: var(--text-lg);
    line-height: var(--tw-leading, var(--text-lg--line-height));
  }

  .text-sm {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }

  .text-xl {
    font-size: var(--text-xl);
    line-height: var(--tw-leading, var(--text-xl--line-height));
  }

  .text-xs {
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
  }

  .text-\[8px\] {
    font-size: 8px;
  }

  .text-\[9px\] {
    font-size: 9px;
  }

  .text-\[10px\] {
    font-size: 10px;
  }

  .text-\[11px\] {
    font-size: 11px;
  }

  .text-\[13px\] {
    font-size: 13px;
  }

  .text-\[17px\] {
    font-size: 17px;
  }

  .text-\[18px\] {
    font-size: 18px;
  }

  .leading-4 {
    --tw-leading: calc(var(--spacing) * 4);
    line-height: calc(var(--spacing) * 4);
  }

  .leading-5 {
    --tw-leading: calc(var(--spacing) * 5);
    line-height: calc(var(--spacing) * 5);
  }

  .leading-6 {
    --tw-leading: calc(var(--spacing) * 6);
    line-height: calc(var(--spacing) * 6);
  }

  .leading-7 {
    --tw-leading: calc(var(--spacing) * 7);
    line-height: calc(var(--spacing) * 7);
  }

  .leading-\[1\.12\] {
    --tw-leading: 1.12;
    line-height: 1.12;
  }

  .leading-normal {
    --tw-leading: var(--leading-normal);
    line-height: var(--leading-normal);
  }

  .leading-relaxed {
    --tw-leading: var(--leading-relaxed);
    line-height: var(--leading-relaxed);
  }

  .leading-snug {
    --tw-leading: var(--leading-snug);
    line-height: var(--leading-snug);
  }

  .leading-tight {
    --tw-leading: var(--leading-tight);
    line-height: var(--leading-tight);
  }

  .font-black {
    --tw-font-weight: var(--font-weight-black);
    font-weight: var(--font-weight-black);
  }

  .font-bold {
    --tw-font-weight: var(--font-weight-bold);
    font-weight: var(--font-weight-bold);
  }

  .font-extrabold {
    --tw-font-weight: var(--font-weight-extrabold);
    font-weight: var(--font-weight-extrabold);
  }

  .font-medium {
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
  }

  .font-normal {
    --tw-font-weight: var(--font-weight-normal);
    font-weight: var(--font-weight-normal);
  }

  .font-semibold {
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
  }

  .tracking-\[\.15em\] {
    --tw-tracking: .15em;
    letter-spacing: .15em;
  }

  .tracking-\[0\.08em\] {
    --tw-tracking: .08em;
    letter-spacing: .08em;
  }

  .tracking-\[0\.12em\] {
    --tw-tracking: .12em;
    letter-spacing: .12em;
  }

  .tracking-\[0\.16em\] {
    --tw-tracking: .16em;
    letter-spacing: .16em;
  }

  .tracking-\[0\.18em\] {
    --tw-tracking: .18em;
    letter-spacing: .18em;
  }

  .tracking-tight {
    --tw-tracking: var(--tracking-tight);
    letter-spacing: var(--tracking-tight);
  }

  .tracking-wide {
    --tw-tracking: var(--tracking-wide);
    letter-spacing: var(--tracking-wide);
  }

  .tracking-wider {
    --tw-tracking: var(--tracking-wider);
    letter-spacing: var(--tracking-wider);
  }

  .tracking-widest {
    --tw-tracking: var(--tracking-widest);
    letter-spacing: var(--tracking-widest);
  }

  .break-words {
    overflow-wrap: break-word;
  }

  .whitespace-nowrap {
    white-space: nowrap;
  }

  .whitespace-pre-wrap {
    white-space: pre-wrap;
  }

  .text-\[\#1E9CFF\] {
    color: #1e9cff;
  }

  .text-\[\#45D483\] {
    color: #45d483;
  }

  .text-\[\#87919e\] {
    color: #87919e;
  }

  .text-\[\#536273\] {
    color: #536273;
  }

  .text-\[\#667085\] {
    color: #667085;
  }

  .text-\[\#F6D34A\] {
    color: #f6d34a;
  }

  .text-\[\#FF4D4F\] {
    color: #ff4d4f;
  }

  .text-\[\#b6b6bd\] {
    color: #b6b6bd;
  }

  .text-\[\#e5e5e7\] {
    color: #e5e5e7;
  }

  .text-amber-100 {
    color: var(--color-amber-100);
  }

  .text-amber-100\/75 {
    color: #fef3c6bf;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .text-amber-100\/75 {
      color: color-mix(in oklab, var(--color-amber-100) 75%, transparent);
    }
  }

  .text-amber-100\/80 {
    color: #fef3c6cc;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .text-amber-100\/80 {
      color: color-mix(in oklab, var(--color-amber-100) 80%, transparent);
    }
  }

  .text-amber-200 {
    color: var(--color-amber-200);
  }

  .text-amber-300 {
    color: var(--color-amber-300);
  }

  .text-amber-300\/80 {
    color: #ffd236cc;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .text-amber-300\/80 {
      color: color-mix(in oklab, var(--color-amber-300) 80%, transparent);
    }
  }

  .text-amber-400 {
    color: var(--color-amber-400);
  }

  .text-amber-600 {
    color: var(--color-amber-600);
  }

  .text-blue-200 {
    color: var(--color-blue-200);
  }

  .text-blue-200\/80 {
    color: #bedbffcc;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .text-blue-200\/80 {
      color: color-mix(in oklab, var(--color-blue-200) 80%, transparent);
    }
  }

  .text-blue-300 {
    color: var(--color-blue-300);
  }

  .text-blue-400 {
    color: var(--color-blue-400);
  }

  .text-blue-400\/80 {
    color: #54a2ffcc;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .text-blue-400\/80 {
      color: color-mix(in oklab, var(--color-blue-400) 80%, transparent);
    }
  }

  .text-blue-500 {
    color: var(--color-blue-500);
  }

  .text-blue-600 {
    color: var(--color-blue-600);
  }

  .text-blue-700 {
    color: var(--color-blue-700);
  }

  .text-cyan-100 {
    color: var(--color-cyan-100);
  }

  .text-cyan-100\/80 {
    color: #cefafecc;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .text-cyan-100\/80 {
      color: color-mix(in oklab, var(--color-cyan-100) 80%, transparent);
    }
  }

  .text-cyan-200 {
    color: var(--color-cyan-200);
  }

  .text-cyan-300 {
    color: var(--color-cyan-300);
  }

  .text-cyan-300\/80 {
    color: #53eafdcc;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .text-cyan-300\/80 {
      color: color-mix(in oklab, var(--color-cyan-300) 80%, transparent);
    }
  }

  .text-cyan-400 {
    color: var(--color-cyan-400);
  }

  .text-emerald-100 {
    color: var(--color-emerald-100);
  }

  .text-emerald-200 {
    color: var(--color-emerald-200);
  }

  .text-emerald-300 {
    color: var(--color-emerald-300);
  }

  .text-emerald-400 {
    color: var(--color-emerald-400);
  }

  .text-fuchsia-200 {
    color: var(--color-fuchsia-200);
  }

  .text-fuchsia-300 {
    color: var(--color-fuchsia-300);
  }

  .text-green-700 {
    color: var(--color-green-700);
  }

  .text-indigo-100 {
    color: var(--color-indigo-100);
  }

  .text-indigo-200 {
    color: var(--color-indigo-200);
  }

  .text-indigo-300 {
    color: var(--color-indigo-300);
  }

  .text-indigo-400 {
    color: var(--color-indigo-400);
  }

  .text-indigo-600 {
    color: var(--color-indigo-600);
  }

  .text-orange-100 {
    color: var(--color-orange-100);
  }

  .text-orange-200 {
    color: var(--color-orange-200);
  }

  .text-orange-300 {
    color: var(--color-orange-300);
  }

  .text-orange-400 {
    color: var(--color-orange-400);
  }

  .text-orange-400\/80 {
    color: #ff8b1acc;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .text-orange-400\/80 {
      color: color-mix(in oklab, var(--color-orange-400) 80%, transparent);
    }
  }

  .text-orange-500 {
    color: var(--color-orange-500);
  }

  .text-purple-300 {
    color: var(--color-purple-300);
  }

  .text-red-200 {
    color: var(--color-red-200);
  }

  .text-red-300 {
    color: var(--color-red-300);
  }

  .text-red-400 {
    color: var(--color-red-400);
  }

  .text-red-400\/80 {
    color: #ff6568cc;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .text-red-400\/80 {
      color: color-mix(in oklab, var(--color-red-400) 80%, transparent);
    }
  }

  .text-red-400\/90 {
    color: #ff6568e6;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .text-red-400\/90 {
      color: color-mix(in oklab, var(--color-red-400) 90%, transparent);
    }
  }

  .text-red-500 {
    color: var(--color-red-500);
  }

  .text-rose-100\/80 {
    color: #ffe4e6cc;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .text-rose-100\/80 {
      color: color-mix(in oklab, var(--color-rose-100) 80%, transparent);
    }
  }

  .text-rose-200 {
    color: var(--color-rose-200);
  }

  .text-rose-300 {
    color: var(--color-rose-300);
  }

  .text-rose-400 {
    color: var(--color-rose-400);
  }

  .text-rose-400\/80 {
    color: #ff667fcc;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .text-rose-400\/80 {
      color: color-mix(in oklab, var(--color-rose-400) 80%, transparent);
    }
  }

  .text-rose-500 {
    color: var(--color-rose-500);
  }

  .text-sky-100 {
    color: var(--color-sky-100);
  }

  .text-sky-200 {
    color: var(--color-sky-200);
  }

  .text-sky-200\/80 {
    color: #b8e6fecc;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .text-sky-200\/80 {
      color: color-mix(in oklab, var(--color-sky-200) 80%, transparent);
    }
  }

  .text-sky-300 {
    color: var(--color-sky-300);
  }

  .text-sky-300\/80 {
    color: #77d4ffcc;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .text-sky-300\/80 {
      color: color-mix(in oklab, var(--color-sky-300) 80%, transparent);
    }
  }

  .text-sky-400 {
    color: var(--color-sky-400);
  }

  .text-sky-500 {
    color: var(--color-sky-500);
  }

  .text-sky-800 {
    color: var(--color-sky-800);
  }

  .text-slate-100 {
    color: var(--color-slate-100);
  }

  .text-slate-200 {
    color: var(--color-slate-200);
  }

  .text-slate-300 {
    color: var(--color-slate-300);
  }

  .text-slate-300\/80 {
    color: #cad5e2cc;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .text-slate-300\/80 {
      color: color-mix(in oklab, var(--color-slate-300) 80%, transparent);
    }
  }

  .text-slate-400 {
    color: var(--color-slate-400);
  }

  .text-slate-500 {
    color: var(--color-slate-500);
  }

  .text-slate-600 {
    color: var(--color-slate-600);
  }

  .text-slate-700 {
    color: var(--color-slate-700);
  }

  .text-slate-800 {
    color: var(--color-slate-800);
  }

  .text-slate-900 {
    color: var(--color-slate-900);
  }

  .text-slate-950 {
    color: var(--color-slate-950);
  }

  .text-teal-400 {
    color: var(--color-teal-400);
  }

  .text-teal-500\/60 {
    color: #00baa799;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .text-teal-500\/60 {
      color: color-mix(in oklab, var(--color-teal-500) 60%, transparent);
    }
  }

  .text-violet-100 {
    color: var(--color-violet-100);
  }

  .text-violet-200 {
    color: var(--color-violet-200);
  }

  .text-violet-300 {
    color: var(--color-violet-300);
  }

  .text-violet-400 {
    color: var(--color-violet-400);
  }

  .text-white {
    color: var(--color-white);
  }

  .text-white\/80 {
    color: #fffc;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .text-white\/80 {
      color: color-mix(in oklab, var(--color-white) 80%, transparent);
    }
  }

  .text-yellow-100 {
    color: var(--color-yellow-100);
  }

  .text-yellow-500 {
    color: var(--color-yellow-500);
  }

  .text-zinc-100 {
    color: var(--color-zinc-100);
  }

  .text-zinc-200 {
    color: var(--color-zinc-200);
  }

  .text-zinc-300 {
    color: var(--color-zinc-300);
  }

  .text-zinc-400 {
    color: var(--color-zinc-400);
  }

  .text-zinc-500 {
    color: var(--color-zinc-500);
  }

  .text-zinc-900 {
    color: var(--color-zinc-900);
  }

  .uppercase {
    text-transform: uppercase;
  }

  .italic {
    font-style: italic;
  }

  .ordinal {
    --tw-ordinal: ordinal;
    font-variant-numeric: var(--tw-ordinal, ) var(--tw-slashed-zero, ) var(--tw-numeric-figure, ) var(--tw-numeric-spacing, ) var(--tw-numeric-fraction, );
  }

  .tabular-nums {
    --tw-numeric-spacing: tabular-nums;
    font-variant-numeric: var(--tw-ordinal, ) var(--tw-slashed-zero, ) var(--tw-numeric-figure, ) var(--tw-numeric-spacing, ) var(--tw-numeric-fraction, );
  }

  .underline {
    text-decoration-line: underline;
  }

  .decoration-dotted {
    text-decoration-style: dotted;
  }

  .underline-offset-2 {
    text-underline-offset: 2px;
  }

  .placeholder-slate-600::placeholder {
    color: var(--color-slate-600);
  }

  .accent-\[\#1E9CFF\] {
    accent-color: #1e9cff;
  }

  .accent-amber-400 {
    accent-color: var(--color-amber-400);
  }

  .accent-blue-500 {
    accent-color: var(--color-blue-500);
  }

  .accent-cyan-300 {
    accent-color: var(--color-cyan-300);
  }

  .accent-cyan-400 {
    accent-color: var(--color-cyan-400);
  }

  .accent-cyan-500 {
    accent-color: var(--color-cyan-500);
  }

  .accent-emerald-400 {
    accent-color: var(--color-emerald-400);
  }

  .accent-emerald-500 {
    accent-color: var(--color-emerald-500);
  }

  .accent-purple-400 {
    accent-color: var(--color-purple-400);
  }

  .accent-rose-400 {
    accent-color: var(--color-rose-400);
  }

  .accent-sky-400 {
    accent-color: var(--color-sky-400);
  }

  .accent-sky-500 {
    accent-color: var(--color-sky-500);
  }

  .accent-slate-100 {
    accent-color: var(--color-slate-100);
  }

  .accent-slate-300 {
    accent-color: var(--color-slate-300);
  }

  .accent-white {
    accent-color: var(--color-white);
  }

  .accent-zinc-300 {
    accent-color: var(--color-zinc-300);
  }

  .opacity-40 {
    opacity: .4;
  }

  .opacity-45 {
    opacity: .45;
  }

  .opacity-50 {
    opacity: .5;
  }

  .opacity-55 {
    opacity: .55;
  }

  .opacity-60 {
    opacity: .6;
  }

  .opacity-70 {
    opacity: .7;
  }

  .opacity-75 {
    opacity: .75;
  }

  .opacity-80 {
    opacity: .8;
  }

  .mix-blend-difference {
    mix-blend-mode: difference;
  }

  .shadow {
    --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, #0000001a), 0 1px 2px -1px var(--tw-shadow-color, #0000001a);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  .shadow-2xl {
    --tw-shadow: 0 25px 50px -12px var(--tw-shadow-color, #00000040);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  .shadow-\[0_-10px_40px_rgba\(0\,0\,0\,0\.1\)\] {
    --tw-shadow: 0 -10px 40px var(--tw-shadow-color, #0000001a);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  .shadow-\[0_-10px_40px_rgba\(0\,0\,0\,0\.05\)\] {
    --tw-shadow: 0 -10px 40px var(--tw-shadow-color, #0000000d);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  .shadow-\[0_-12px_32px_rgba\(2\,6\,23\,0\.36\)\] {
    --tw-shadow: 0 -12px 32px var(--tw-shadow-color, #0206175c);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  .shadow-\[0_0_0_9999px_rgba\(0\,0\,0\,0\.5\)\] {
    --tw-shadow: 0 0 0 9999px var(--tw-shadow-color, #00000080);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  .shadow-\[0_0_0_9999px_rgba\(0\,0\,0\,0\.13\)\,0_0_18px_rgba\(34\,211\,238\,0\.7\)\] {
    --tw-shadow: 0 0 0 9999px var(--tw-shadow-color, #00000021), 0 0 18px var(--tw-shadow-color, #22d3eeb3);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  .shadow-\[0_0_8px_rgba\(6\,182\,212\,0\.3\)\] {
    --tw-shadow: 0 0 8px var(--tw-shadow-color, #06b6d44d);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  .shadow-\[0_0_12px_rgba\(16\,185\,129\,0\.5\)\] {
    --tw-shadow: 0 0 12px var(--tw-shadow-color, #10b98180);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  .shadow-\[0_0_12px_rgba\(30\,156\,255\,0\.6\)\] {
    --tw-shadow: 0 0 12px var(--tw-shadow-color, #1e9cff99);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  .shadow-\[0_0_12px_rgba\(34\,211\,238\,0\.38\)\] {
    --tw-shadow: 0 0 12px var(--tw-shadow-color, #22d3ee61);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  .shadow-\[0_0_12px_rgba\(34\,211\,238\,0\.42\)\] {
    --tw-shadow: 0 0 12px var(--tw-shadow-color, #22d3ee6b);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  .shadow-\[0_0_12px_rgba\(34\,211\,238\,0\.45\)\] {
    --tw-shadow: 0 0 12px var(--tw-shadow-color, #22d3ee73);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  .shadow-\[0_0_12px_rgba\(96\,165\,250\,0\.42\)\] {
    --tw-shadow: 0 0 12px var(--tw-shadow-color, #60a5fa6b);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  .shadow-\[0_0_14px_rgba\(255\,255\,255\,\.05\)\] {
    --tw-shadow: 0 0 14px var(--tw-shadow-color, #ffffff0d);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  .shadow-\[0_0_14px_rgba\(255\,255\,255\,\.12\)\,inset_0_1px_0_rgba\(255\,255\,255\,0\.08\)\] {
    --tw-shadow: 0 0 14px var(--tw-shadow-color, #ffffff1f), inset 0 1px 0 var(--tw-shadow-color, #ffffff14);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  .shadow-\[0_0_14px_rgba\(255\,255\,255\,\.12\)\] {
    --tw-shadow: 0 0 14px var(--tw-shadow-color, #ffffff1f);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  .shadow-\[0_0_16px_rgba\(255\,255\,255\,\.18\)\] {
    --tw-shadow: 0 0 16px var(--tw-shadow-color, #ffffff2e);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  .shadow-\[0_4px_20px_rgba\(30\,156\,255\,0\.15\)\] {
    --tw-shadow: 0 4px 20px var(--tw-shadow-color, #1e9cff26);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  .shadow-\[0_4px_20px_rgba\(69\,212\,131\,0\.15\)\] {
    --tw-shadow: 0 4px 20px var(--tw-shadow-color, #45d48326);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  .shadow-\[0_4px_20px_rgba\(246\,211\,74\,0\.15\)\] {
    --tw-shadow: 0 4px 20px var(--tw-shadow-color, #f6d34a26);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  .shadow-\[0_4px_20px_rgba\(255\,77\,79\,0\.15\)\] {
    --tw-shadow: 0 4px 20px var(--tw-shadow-color, #ff4d4f26);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  .shadow-\[inset_0_1px_0_rgba\(255\,255\,255\,\.20\)\,0_10px_25px_rgba\(0\,0\,0\,\.16\)\] {
    --tw-shadow: inset 0 1px 0 var(--tw-shadow-color, #fff3), 0 10px 25px var(--tw-shadow-color, #00000029);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  .shadow-lg {
    --tw-shadow: 0 10px 15px -3px var(--tw-shadow-color, #0000001a), 0 4px 6px -4px var(--tw-shadow-color, #0000001a);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  .shadow-md {
    --tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, #0000001a), 0 2px 4px -2px var(--tw-shadow-color, #0000001a);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  .shadow-sm {
    --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, #0000001a), 0 1px 2px -1px var(--tw-shadow-color, #0000001a);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  .shadow-xl {
    --tw-shadow: 0 20px 25px -5px var(--tw-shadow-color, #0000001a), 0 8px 10px -6px var(--tw-shadow-color, #0000001a);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  .ring, .ring-1 {
    --tw-ring-shadow: var(--tw-ring-inset, ) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  .shadow-\[\#1E9CFF\]\/20 {
    --tw-shadow-color: #1e9cff33;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .shadow-\[\#1E9CFF\]\/20 {
      --tw-shadow-color: color-mix(in oklab, oklab(67.8205% -.0635676 -.165986 / .2) var(--tw-shadow-alpha), transparent);
    }
  }

  .shadow-\[\#1E9CFF\]\/25 {
    --tw-shadow-color: #1e9cff40;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .shadow-\[\#1E9CFF\]\/25 {
      --tw-shadow-color: color-mix(in oklab, oklab(67.8205% -.0635676 -.165986 / .25) var(--tw-shadow-alpha), transparent);
    }
  }

  .shadow-blue-200 {
    --tw-shadow-color: oklch(88.2% .059 254.128);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .shadow-blue-200 {
      --tw-shadow-color: color-mix(in oklab, var(--color-blue-200) var(--tw-shadow-alpha), transparent);
    }
  }

  .shadow-cyan-600\/30 {
    --tw-shadow-color: #0092b54d;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .shadow-cyan-600\/30 {
      --tw-shadow-color: color-mix(in oklab, color-mix(in oklab, var(--color-cyan-600) 30%, transparent) var(--tw-shadow-alpha), transparent);
    }
  }

  .shadow-red-200 {
    --tw-shadow-color: oklch(88.5% .062 18.334);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .shadow-red-200 {
      --tw-shadow-color: color-mix(in oklab, var(--color-red-200) var(--tw-shadow-alpha), transparent);
    }
  }

  .shadow-slate-200 {
    --tw-shadow-color: oklch(92.9% .013 255.508);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .shadow-slate-200 {
      --tw-shadow-color: color-mix(in oklab, var(--color-slate-200) var(--tw-shadow-alpha), transparent);
    }
  }

  .shadow-slate-300\/50 {
    --tw-shadow-color: #cad5e280;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .shadow-slate-300\/50 {
      --tw-shadow-color: color-mix(in oklab, color-mix(in oklab, var(--color-slate-300) 50%, transparent) var(--tw-shadow-alpha), transparent);
    }
  }

  .shadow-white\/10 {
    --tw-shadow-color: #ffffff1a;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .shadow-white\/10 {
      --tw-shadow-color: color-mix(in oklab, color-mix(in oklab, var(--color-white) 10%, transparent) var(--tw-shadow-alpha), transparent);
    }
  }

  .ring-white\/15 {
    --tw-ring-color: #ffffff26;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .ring-white\/15 {
      --tw-ring-color: color-mix(in oklab, var(--color-white) 15%, transparent);
    }
  }

  .outline {
    outline-style: var(--tw-outline-style);
    outline-width: 1px;
  }

  .blur {
    --tw-blur: blur(8px);
    filter: var(--tw-blur, ) var(--tw-brightness, ) var(--tw-contrast, ) var(--tw-grayscale, ) var(--tw-hue-rotate, ) var(--tw-invert, ) var(--tw-saturate, ) var(--tw-sepia, ) var(--tw-drop-shadow, );
  }

  .drop-shadow-\[0_2px_2px_rgba\(0\,0\,0\,\.85\)\] {
    --tw-drop-shadow-size: drop-shadow(0 2px 2px var(--tw-drop-shadow-color, #000000d9));
    --tw-drop-shadow: var(--tw-drop-shadow-size);
    filter: var(--tw-blur, ) var(--tw-brightness, ) var(--tw-contrast, ) var(--tw-grayscale, ) var(--tw-hue-rotate, ) var(--tw-invert, ) var(--tw-saturate, ) var(--tw-sepia, ) var(--tw-drop-shadow, );
  }

  .drop-shadow-xs {
    --tw-drop-shadow-size: drop-shadow(0 1px 1px var(--tw-drop-shadow-color, #0000000d));
    --tw-drop-shadow: drop-shadow(var(--drop-shadow-xs));
    filter: var(--tw-blur, ) var(--tw-brightness, ) var(--tw-contrast, ) var(--tw-grayscale, ) var(--tw-hue-rotate, ) var(--tw-invert, ) var(--tw-saturate, ) var(--tw-sepia, ) var(--tw-drop-shadow, );
  }

  .filter {
    filter: var(--tw-blur, ) var(--tw-brightness, ) var(--tw-contrast, ) var(--tw-grayscale, ) var(--tw-hue-rotate, ) var(--tw-invert, ) var(--tw-saturate, ) var(--tw-sepia, ) var(--tw-drop-shadow, );
  }

  .backdrop-blur {
    --tw-backdrop-blur: blur(8px);
    -webkit-backdrop-filter: var(--tw-backdrop-blur, ) var(--tw-backdrop-brightness, ) var(--tw-backdrop-contrast, ) var(--tw-backdrop-grayscale, ) var(--tw-backdrop-hue-rotate, ) var(--tw-backdrop-invert, ) var(--tw-backdrop-opacity, ) var(--tw-backdrop-saturate, ) var(--tw-backdrop-sepia, );
    backdrop-filter: var(--tw-backdrop-blur, ) var(--tw-backdrop-brightness, ) var(--tw-backdrop-contrast, ) var(--tw-backdrop-grayscale, ) var(--tw-backdrop-hue-rotate, ) var(--tw-backdrop-invert, ) var(--tw-backdrop-opacity, ) var(--tw-backdrop-saturate, ) var(--tw-backdrop-sepia, );
  }

  .backdrop-blur-2xl {
    --tw-backdrop-blur: blur(var(--blur-2xl));
    -webkit-backdrop-filter: var(--tw-backdrop-blur, ) var(--tw-backdrop-brightness, ) var(--tw-backdrop-contrast, ) var(--tw-backdrop-grayscale, ) var(--tw-backdrop-hue-rotate, ) var(--tw-backdrop-invert, ) var(--tw-backdrop-opacity, ) var(--tw-backdrop-saturate, ) var(--tw-backdrop-sepia, );
    backdrop-filter: var(--tw-backdrop-blur, ) var(--tw-backdrop-brightness, ) var(--tw-backdrop-contrast, ) var(--tw-backdrop-grayscale, ) var(--tw-backdrop-hue-rotate, ) var(--tw-backdrop-invert, ) var(--tw-backdrop-opacity, ) var(--tw-backdrop-saturate, ) var(--tw-backdrop-sepia, );
  }

  .backdrop-blur-\[1px\] {
    --tw-backdrop-blur: blur(1px);
    -webkit-backdrop-filter: var(--tw-backdrop-blur, ) var(--tw-backdrop-brightness, ) var(--tw-backdrop-contrast, ) var(--tw-backdrop-grayscale, ) var(--tw-backdrop-hue-rotate, ) var(--tw-backdrop-invert, ) var(--tw-backdrop-opacity, ) var(--tw-backdrop-saturate, ) var(--tw-backdrop-sepia, );
    backdrop-filter: var(--tw-backdrop-blur, ) var(--tw-backdrop-brightness, ) var(--tw-backdrop-contrast, ) var(--tw-backdrop-grayscale, ) var(--tw-backdrop-hue-rotate, ) var(--tw-backdrop-invert, ) var(--tw-backdrop-opacity, ) var(--tw-backdrop-saturate, ) var(--tw-backdrop-sepia, );
  }

  .backdrop-blur-\[10px\] {
    --tw-backdrop-blur: blur(10px);
    -webkit-backdrop-filter: var(--tw-backdrop-blur, ) var(--tw-backdrop-brightness, ) var(--tw-backdrop-contrast, ) var(--tw-backdrop-grayscale, ) var(--tw-backdrop-hue-rotate, ) var(--tw-backdrop-invert, ) var(--tw-backdrop-opacity, ) var(--tw-backdrop-saturate, ) var(--tw-backdrop-sepia, );
    backdrop-filter: var(--tw-backdrop-blur, ) var(--tw-backdrop-brightness, ) var(--tw-backdrop-contrast, ) var(--tw-backdrop-grayscale, ) var(--tw-backdrop-hue-rotate, ) var(--tw-backdrop-invert, ) var(--tw-backdrop-opacity, ) var(--tw-backdrop-saturate, ) var(--tw-backdrop-sepia, );
  }

  .backdrop-blur-lg {
    --tw-backdrop-blur: blur(var(--blur-lg));
    -webkit-backdrop-filter: var(--tw-backdrop-blur, ) var(--tw-backdrop-brightness, ) var(--tw-backdrop-contrast, ) var(--tw-backdrop-grayscale, ) var(--tw-backdrop-hue-rotate, ) var(--tw-backdrop-invert, ) var(--tw-backdrop-opacity, ) var(--tw-backdrop-saturate, ) var(--tw-backdrop-sepia, );
    backdrop-filter: var(--tw-backdrop-blur, ) var(--tw-backdrop-brightness, ) var(--tw-backdrop-contrast, ) var(--tw-backdrop-grayscale, ) var(--tw-backdrop-hue-rotate, ) var(--tw-backdrop-invert, ) var(--tw-backdrop-opacity, ) var(--tw-backdrop-saturate, ) var(--tw-backdrop-sepia, );
  }

  .backdrop-blur-md {
    --tw-backdrop-blur: blur(var(--blur-md));
    -webkit-backdrop-filter: var(--tw-backdrop-blur, ) var(--tw-backdrop-brightness, ) var(--tw-backdrop-contrast, ) var(--tw-backdrop-grayscale, ) var(--tw-backdrop-hue-rotate, ) var(--tw-backdrop-invert, ) var(--tw-backdrop-opacity, ) var(--tw-backdrop-saturate, ) var(--tw-backdrop-sepia, );
    backdrop-filter: var(--tw-backdrop-blur, ) var(--tw-backdrop-brightness, ) var(--tw-backdrop-contrast, ) var(--tw-backdrop-grayscale, ) var(--tw-backdrop-hue-rotate, ) var(--tw-backdrop-invert, ) var(--tw-backdrop-opacity, ) var(--tw-backdrop-saturate, ) var(--tw-backdrop-sepia, );
  }

  .backdrop-blur-sm {
    --tw-backdrop-blur: blur(var(--blur-sm));
    -webkit-backdrop-filter: var(--tw-backdrop-blur, ) var(--tw-backdrop-brightness, ) var(--tw-backdrop-contrast, ) var(--tw-backdrop-grayscale, ) var(--tw-backdrop-hue-rotate, ) var(--tw-backdrop-invert, ) var(--tw-backdrop-opacity, ) var(--tw-backdrop-saturate, ) var(--tw-backdrop-sepia, );
    backdrop-filter: var(--tw-backdrop-blur, ) var(--tw-backdrop-brightness, ) var(--tw-backdrop-contrast, ) var(--tw-backdrop-grayscale, ) var(--tw-backdrop-hue-rotate, ) var(--tw-backdrop-invert, ) var(--tw-backdrop-opacity, ) var(--tw-backdrop-saturate, ) var(--tw-backdrop-sepia, );
  }

  .backdrop-blur-xl {
    --tw-backdrop-blur: blur(var(--blur-xl));
    -webkit-backdrop-filter: var(--tw-backdrop-blur, ) var(--tw-backdrop-brightness, ) var(--tw-backdrop-contrast, ) var(--tw-backdrop-grayscale, ) var(--tw-backdrop-hue-rotate, ) var(--tw-backdrop-invert, ) var(--tw-backdrop-opacity, ) var(--tw-backdrop-saturate, ) var(--tw-backdrop-sepia, );
    backdrop-filter: var(--tw-backdrop-blur, ) var(--tw-backdrop-brightness, ) var(--tw-backdrop-contrast, ) var(--tw-backdrop-grayscale, ) var(--tw-backdrop-hue-rotate, ) var(--tw-backdrop-invert, ) var(--tw-backdrop-opacity, ) var(--tw-backdrop-saturate, ) var(--tw-backdrop-sepia, );
  }

  .transition {
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }

  .transition-\[width\] {
    transition-property: width;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }

  .transition-all {
    transition-property: all;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }

  .transition-colors {
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }

  .transition-opacity {
    transition-property: opacity;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }

  .transition-shadow {
    transition-property: box-shadow;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }

  .transition-transform {
    transition-property: transform, translate, scale, rotate;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }

  .duration-150 {
    --tw-duration: .15s;
    transition-duration: .15s;
  }

  .duration-200 {
    --tw-duration: .2s;
    transition-duration: .2s;
  }

  .duration-300 {
    --tw-duration: .3s;
    transition-duration: .3s;
  }

  .ease-in {
    --tw-ease: var(--ease-in);
    transition-timing-function: var(--ease-in);
  }

  .ease-out {
    --tw-ease: var(--ease-out);
    transition-timing-function: var(--ease-out);
  }

  .\[transition-timing-function\:cubic-bezier\(0\.16\,1\,0\.3\,1\)\] {
    transition-timing-function: cubic-bezier(.16, 1, .3, 1);
  }

  .outline-none {
    --tw-outline-style: none;
    outline-style: none;
  }

  .select-none {
    -webkit-user-select: none;
    user-select: none;
  }

  .\[-webkit-overflow-scrolling\:touch\] {
    -webkit-overflow-scrolling: touch;
  }

  @media (hover: hover) {
    .group-hover\:text-cyan-300:is(:where(.group):hover *) {
      color: var(--color-cyan-300);
    }

    .group-hover\:text-sky-300:is(:where(.group):hover *) {
      color: var(--color-sky-300);
    }

    .group-hover\:opacity-100:is(:where(.group):hover *) {
      opacity: 1;
    }
  }

  .placeholder\:text-slate-400::placeholder {
    color: var(--color-slate-400);
  }

  .last\:border-0:last-child {
    border-style: var(--tw-border-style);
    border-width: 0;
  }

  .last\:border-b-0:last-child {
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 0;
  }

  @media (hover: hover) {
    .hover\:border-\[\#1E9CFF\]:hover {
      border-color: #1e9cff;
    }

    .hover\:border-blue-500\/30:hover {
      border-color: #3080ff4d;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .hover\:border-blue-500\/30:hover {
        border-color: color-mix(in oklab, var(--color-blue-500) 30%, transparent);
      }
    }

    .hover\:border-cyan-500:hover {
      border-color: var(--color-cyan-500);
    }

    .hover\:border-cyan-500\/60:hover {
      border-color: #00b7d799;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .hover\:border-cyan-500\/60:hover {
        border-color: color-mix(in oklab, var(--color-cyan-500) 60%, transparent);
      }
    }

    .hover\:border-cyan-600\/60:hover {
      border-color: #0092b599;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .hover\:border-cyan-600\/60:hover {
        border-color: color-mix(in oklab, var(--color-cyan-600) 60%, transparent);
      }
    }

    .hover\:border-red-900\/30:hover {
      border-color: #82181a4d;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .hover\:border-red-900\/30:hover {
        border-color: color-mix(in oklab, var(--color-red-900) 30%, transparent);
      }
    }

    .hover\:border-rose-700\/60:hover {
      border-color: #c2003999;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .hover\:border-rose-700\/60:hover {
        border-color: color-mix(in oklab, var(--color-rose-700) 60%, transparent);
      }
    }

    .hover\:border-slate-200:hover {
      border-color: var(--color-slate-200);
    }

    .hover\:border-slate-300:hover {
      border-color: var(--color-slate-300);
    }

    .hover\:border-slate-500:hover {
      border-color: var(--color-slate-500);
    }

    .hover\:border-slate-600:hover {
      border-color: var(--color-slate-600);
    }

    .hover\:border-slate-700:hover {
      border-color: var(--color-slate-700);
    }

    .hover\:border-white\/25:hover {
      border-color: #ffffff40;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .hover\:border-white\/25:hover {
        border-color: color-mix(in oklab, var(--color-white) 25%, transparent);
      }
    }

    .hover\:bg-\[\#1E9CFF\]\/25:hover {
      background-color: oklab(67.8205% -.0635676 -.165986 / .25);
    }

    .hover\:bg-\[\#1E9CFF\]\/80:hover {
      background-color: oklab(67.8205% -.0635676 -.165986 / .8);
    }

    .hover\:bg-\[\#1E9CFF\]\/90:hover {
      background-color: oklab(67.8205% -.0635676 -.165986 / .9);
    }

    .hover\:bg-amber-500\/10:hover {
      background-color: #f99c001a;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .hover\:bg-amber-500\/10:hover {
        background-color: color-mix(in oklab, var(--color-amber-500) 10%, transparent);
      }
    }

    .hover\:bg-amber-600:hover {
      background-color: var(--color-amber-600);
    }

    .hover\:bg-amber-900\/30:hover {
      background-color: #7b33064d;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .hover\:bg-amber-900\/30:hover {
        background-color: color-mix(in oklab, var(--color-amber-900) 30%, transparent);
      }
    }

    .hover\:bg-black\/90:hover {
      background-color: #000000e6;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .hover\:bg-black\/90:hover {
        background-color: color-mix(in oklab, var(--color-black) 90%, transparent);
      }
    }

    .hover\:bg-blue-200:hover {
      background-color: var(--color-blue-200);
    }

    .hover\:bg-blue-500\/20:hover {
      background-color: #3080ff33;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .hover\:bg-blue-500\/20:hover {
        background-color: color-mix(in oklab, var(--color-blue-500) 20%, transparent);
      }
    }

    .hover\:bg-blue-700:hover {
      background-color: var(--color-blue-700);
    }

    .hover\:bg-blue-900\/40:hover {
      background-color: #1c398e66;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .hover\:bg-blue-900\/40:hover {
        background-color: color-mix(in oklab, var(--color-blue-900) 40%, transparent);
      }
    }

    .hover\:bg-cyan-400:hover {
      background-color: var(--color-cyan-400);
    }

    .hover\:bg-cyan-500:hover {
      background-color: var(--color-cyan-500);
    }

    .hover\:bg-cyan-500\/20:hover {
      background-color: #00b7d733;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .hover\:bg-cyan-500\/20:hover {
        background-color: color-mix(in oklab, var(--color-cyan-500) 20%, transparent);
      }
    }

    .hover\:bg-cyan-900\/30:hover {
      background-color: #104e644d;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .hover\:bg-cyan-900\/30:hover {
        background-color: color-mix(in oklab, var(--color-cyan-900) 30%, transparent);
      }
    }

    .hover\:bg-cyan-900\/35:hover {
      background-color: #104e6459;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .hover\:bg-cyan-900\/35:hover {
        background-color: color-mix(in oklab, var(--color-cyan-900) 35%, transparent);
      }
    }

    .hover\:bg-cyan-900\/40:hover {
      background-color: #104e6466;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .hover\:bg-cyan-900\/40:hover {
        background-color: color-mix(in oklab, var(--color-cyan-900) 40%, transparent);
      }
    }

    .hover\:bg-cyan-950\/40:hover {
      background-color: #05334566;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .hover\:bg-cyan-950\/40:hover {
        background-color: color-mix(in oklab, var(--color-cyan-950) 40%, transparent);
      }
    }

    .hover\:bg-emerald-400:hover {
      background-color: var(--color-emerald-400);
    }

    .hover\:bg-emerald-500\/10:hover {
      background-color: #00bb7f1a;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .hover\:bg-emerald-500\/10:hover {
        background-color: color-mix(in oklab, var(--color-emerald-500) 10%, transparent);
      }
    }

    .hover\:bg-emerald-900\/30:hover {
      background-color: #004e3b4d;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .hover\:bg-emerald-900\/30:hover {
        background-color: color-mix(in oklab, var(--color-emerald-900) 30%, transparent);
      }
    }

    .hover\:bg-fuchsia-900\/30:hover {
      background-color: #7213784d;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .hover\:bg-fuchsia-900\/30:hover {
        background-color: color-mix(in oklab, var(--color-fuchsia-900) 30%, transparent);
      }
    }

    .hover\:bg-indigo-500:hover {
      background-color: var(--color-indigo-500);
    }

    .hover\:bg-orange-900\/30:hover {
      background-color: #7e2a0c4d;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .hover\:bg-orange-900\/30:hover {
        background-color: color-mix(in oklab, var(--color-orange-900) 30%, transparent);
      }
    }

    .hover\:bg-red-500:hover {
      background-color: var(--color-red-500);
    }

    .hover\:bg-red-500\/10:hover {
      background-color: #fb2c361a;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .hover\:bg-red-500\/10:hover {
        background-color: color-mix(in oklab, var(--color-red-500) 10%, transparent);
      }
    }

    .hover\:bg-red-700:hover {
      background-color: var(--color-red-700);
    }

    .hover\:bg-red-900\/30:hover {
      background-color: #82181a4d;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .hover\:bg-red-900\/30:hover {
        background-color: color-mix(in oklab, var(--color-red-900) 30%, transparent);
      }
    }

    .hover\:bg-red-900\/40:hover {
      background-color: #82181a66;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .hover\:bg-red-900\/40:hover {
        background-color: color-mix(in oklab, var(--color-red-900) 40%, transparent);
      }
    }

    .hover\:bg-red-900\/50:hover {
      background-color: #82181a80;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .hover\:bg-red-900\/50:hover {
        background-color: color-mix(in oklab, var(--color-red-900) 50%, transparent);
      }
    }

    .hover\:bg-red-900\/60:hover {
      background-color: #82181a99;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .hover\:bg-red-900\/60:hover {
        background-color: color-mix(in oklab, var(--color-red-900) 60%, transparent);
      }
    }

    .hover\:bg-rose-500\/15:hover {
      background-color: #ff235726;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .hover\:bg-rose-500\/15:hover {
        background-color: color-mix(in oklab, var(--color-rose-500) 15%, transparent);
      }
    }

    .hover\:bg-rose-950\/40:hover {
      background-color: #4d021866;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .hover\:bg-rose-950\/40:hover {
        background-color: color-mix(in oklab, var(--color-rose-950) 40%, transparent);
      }
    }

    .hover\:bg-sky-100:hover {
      background-color: var(--color-sky-100);
    }

    .hover\:bg-sky-400:hover {
      background-color: var(--color-sky-400);
    }

    .hover\:bg-sky-500:hover {
      background-color: var(--color-sky-500);
    }

    .hover\:bg-sky-500\/10:hover {
      background-color: #00a5ef1a;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .hover\:bg-sky-500\/10:hover {
        background-color: color-mix(in oklab, var(--color-sky-500) 10%, transparent);
      }
    }

    .hover\:bg-sky-500\/20:hover {
      background-color: #00a5ef33;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .hover\:bg-sky-500\/20:hover {
        background-color: color-mix(in oklab, var(--color-sky-500) 20%, transparent);
      }
    }

    .hover\:bg-sky-500\/25:hover {
      background-color: #00a5ef40;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .hover\:bg-sky-500\/25:hover {
        background-color: color-mix(in oklab, var(--color-sky-500) 25%, transparent);
      }
    }

    .hover\:bg-sky-600:hover {
      background-color: var(--color-sky-600);
    }

    .hover\:bg-sky-900\/40:hover {
      background-color: #024a7066;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .hover\:bg-sky-900\/40:hover {
        background-color: color-mix(in oklab, var(--color-sky-900) 40%, transparent);
      }
    }

    .hover\:bg-slate-50:hover {
      background-color: var(--color-slate-50);
    }

    .hover\:bg-slate-100:hover {
      background-color: var(--color-slate-100);
    }

    .hover\:bg-slate-200:hover {
      background-color: var(--color-slate-200);
    }

    .hover\:bg-slate-700:hover {
      background-color: var(--color-slate-700);
    }

    .hover\:bg-slate-700\/50:hover {
      background-color: #31415880;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .hover\:bg-slate-700\/50:hover {
        background-color: color-mix(in oklab, var(--color-slate-700) 50%, transparent);
      }
    }

    .hover\:bg-slate-700\/80:hover {
      background-color: #314158cc;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .hover\:bg-slate-700\/80:hover {
        background-color: color-mix(in oklab, var(--color-slate-700) 80%, transparent);
      }
    }

    .hover\:bg-slate-800:hover {
      background-color: var(--color-slate-800);
    }

    .hover\:bg-slate-800\/40:hover {
      background-color: #1d293d66;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .hover\:bg-slate-800\/40:hover {
        background-color: color-mix(in oklab, var(--color-slate-800) 40%, transparent);
      }
    }

    .hover\:bg-slate-800\/60:hover {
      background-color: #1d293d99;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .hover\:bg-slate-800\/60:hover {
        background-color: color-mix(in oklab, var(--color-slate-800) 60%, transparent);
      }
    }

    .hover\:bg-slate-800\/70:hover {
      background-color: #1d293db3;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .hover\:bg-slate-800\/70:hover {
        background-color: color-mix(in oklab, var(--color-slate-800) 70%, transparent);
      }
    }

    .hover\:bg-slate-800\/80:hover {
      background-color: #1d293dcc;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .hover\:bg-slate-800\/80:hover {
        background-color: color-mix(in oklab, var(--color-slate-800) 80%, transparent);
      }
    }

    .hover\:bg-slate-900:hover {
      background-color: var(--color-slate-900);
    }

    .hover\:bg-slate-900\/55:hover {
      background-color: #0f172b8c;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .hover\:bg-slate-900\/55:hover {
        background-color: color-mix(in oklab, var(--color-slate-900) 55%, transparent);
      }
    }

    .hover\:bg-slate-900\/70:hover {
      background-color: #0f172bb3;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .hover\:bg-slate-900\/70:hover {
        background-color: color-mix(in oklab, var(--color-slate-900) 70%, transparent);
      }
    }

    .hover\:bg-teal-500:hover {
      background-color: var(--color-teal-500);
    }

    .hover\:bg-violet-900\/45:hover {
      background-color: #4d179a73;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .hover\:bg-violet-900\/45:hover {
        background-color: color-mix(in oklab, var(--color-violet-900) 45%, transparent);
      }
    }

    .hover\:bg-white:hover {
      background-color: var(--color-white);
    }

    .hover\:bg-white\/15:hover {
      background-color: #ffffff26;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .hover\:bg-white\/15:hover {
        background-color: color-mix(in oklab, var(--color-white) 15%, transparent);
      }
    }

    .hover\:bg-white\/\[0\.08\]:hover {
      background-color: #ffffff14;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .hover\:bg-white\/\[0\.08\]:hover {
        background-color: color-mix(in oklab, var(--color-white) 8%, transparent);
      }
    }

    .hover\:bg-white\/\[0\.11\]:hover {
      background-color: #ffffff1c;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .hover\:bg-white\/\[0\.11\]:hover {
        background-color: color-mix(in oklab, var(--color-white) 11%, transparent);
      }
    }

    .hover\:bg-white\/\[0\.075\]:hover {
      background-color: #ffffff13;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .hover\:bg-white\/\[0\.075\]:hover {
        background-color: color-mix(in oklab, var(--color-white) 7.5%, transparent);
      }
    }

    .hover\:bg-zinc-800\/35:hover {
      background-color: #27272a59;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .hover\:bg-zinc-800\/35:hover {
        background-color: color-mix(in oklab, var(--color-zinc-800) 35%, transparent);
      }
    }

    .hover\:text-\[\#1E9CFF\]:hover {
      color: #1e9cff;
    }

    .hover\:text-amber-100:hover {
      color: var(--color-amber-100);
    }

    .hover\:text-blue-300:hover {
      color: var(--color-blue-300);
    }

    .hover\:text-emerald-300:hover {
      color: var(--color-emerald-300);
    }

    .hover\:text-red-400:hover {
      color: var(--color-red-400);
    }

    .hover\:text-rose-300:hover {
      color: var(--color-rose-300);
    }

    .hover\:text-sky-200:hover {
      color: var(--color-sky-200);
    }

    .hover\:text-sky-300:hover {
      color: var(--color-sky-300);
    }

    .hover\:text-slate-200:hover {
      color: var(--color-slate-200);
    }

    .hover\:text-slate-300:hover {
      color: var(--color-slate-300);
    }

    .hover\:text-slate-400:hover {
      color: var(--color-slate-400);
    }

    .hover\:text-slate-800:hover {
      color: var(--color-slate-800);
    }

    .hover\:text-white:hover {
      color: var(--color-white);
    }

    .hover\:text-zinc-100:hover {
      color: var(--color-zinc-100);
    }

    .hover\:underline:hover {
      text-decoration-line: underline;
    }

    .hover\:shadow-cyan-500\/20:hover {
      --tw-shadow-color: #00b7d733;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .hover\:shadow-cyan-500\/20:hover {
        --tw-shadow-color: color-mix(in oklab, color-mix(in oklab, var(--color-cyan-500) 20%, transparent) var(--tw-shadow-alpha), transparent);
      }
    }
  }

  .focus\:border-\[\#1E9CFF\]:focus {
    border-color: #1e9cff;
  }

  .focus\:border-cyan-500:focus {
    border-color: var(--color-cyan-500);
  }

  .focus\:border-sky-300:focus {
    border-color: var(--color-sky-300);
  }

  .focus\:border-sky-500:focus {
    border-color: var(--color-sky-500);
  }

  .focus\:border-sky-500\/80:focus {
    border-color: #00a5efcc;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .focus\:border-sky-500\/80:focus {
      border-color: color-mix(in oklab, var(--color-sky-500) 80%, transparent);
    }
  }

  .focus\:border-white\/60:focus {
    border-color: #fff9;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .focus\:border-white\/60:focus {
      border-color: color-mix(in oklab, var(--color-white) 60%, transparent);
    }
  }

  .focus\:ring-1:focus {
    --tw-ring-shadow: var(--tw-ring-inset, ) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  .focus\:ring-2:focus {
    --tw-ring-shadow: var(--tw-ring-inset, ) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  .focus\:ring-blue-500:focus {
    --tw-ring-color: var(--color-blue-500);
  }

  .focus\:ring-sky-400:focus {
    --tw-ring-color: var(--color-sky-400);
  }

  .focus\:ring-sky-500\/45:focus {
    --tw-ring-color: #00a5ef73;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .focus\:ring-sky-500\/45:focus {
      --tw-ring-color: color-mix(in oklab, var(--color-sky-500) 45%, transparent);
    }
  }

  .focus\:outline-none:focus {
    --tw-outline-style: none;
    outline-style: none;
  }

  .active\:scale-95:active {
    --tw-scale-x: 95%;
    --tw-scale-y: 95%;
    --tw-scale-z: 95%;
    scale: var(--tw-scale-x) var(--tw-scale-y);
  }

  .active\:cursor-grabbing:active {
    cursor: grabbing;
  }

  .active\:bg-indigo-700:active {
    background-color: var(--color-indigo-700);
  }

  .active\:bg-slate-900:active {
    background-color: var(--color-slate-900);
  }

  .active\:bg-teal-700:active {
    background-color: var(--color-teal-700);
  }

  .active\:bg-zinc-100:active {
    background-color: var(--color-zinc-100);
  }

  .disabled\:cursor-not-allowed:disabled {
    cursor: not-allowed;
  }

  .disabled\:bg-slate-700:disabled {
    background-color: var(--color-slate-700);
  }

  .disabled\:bg-slate-800:disabled {
    background-color: var(--color-slate-800);
  }

  .disabled\:bg-slate-800\/50:disabled {
    background-color: #1d293d80;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .disabled\:bg-slate-800\/50:disabled {
      background-color: color-mix(in oklab, var(--color-slate-800) 50%, transparent);
    }
  }

  .disabled\:text-slate-400:disabled {
    color: var(--color-slate-400);
  }

  .disabled\:text-slate-500:disabled {
    color: var(--color-slate-500);
  }

  .disabled\:opacity-20:disabled {
    opacity: .2;
  }

  .disabled\:opacity-35:disabled {
    opacity: .35;
  }

  .disabled\:opacity-40:disabled {
    opacity: .4;
  }

  .disabled\:opacity-45:disabled {
    opacity: .45;
  }

  .disabled\:opacity-50:disabled {
    opacity: .5;
  }

  @media (hover: hover) {
    .disabled\:hover\:bg-transparent:disabled:hover {
      background-color: #0000;
    }
  }

  @media not all and (min-width: 650px) {
    .max-\[650px\]\:bottom-\[112px\] {
      bottom: 112px;
    }

    .max-\[650px\]\:bottom-\[max\(345px\,40dvh\)\] {
      bottom: max(345px, 40dvh);
    }
  }

  @media (min-width: 40rem) {
    .sm\:my-auto {
      margin-block: auto;
    }

    .sm\:hidden {
      display: none;
    }

    .sm\:inline {
      display: inline;
    }

    .sm\:table {
      display: table;
    }

    .sm\:h-\[92vh\] {
      height: 92vh;
    }

    .sm\:h-\[min\(94dvh\,940px\)\] {
      height: min(94dvh, 940px);
    }

    .sm\:h-auto {
      height: auto;
    }

    .sm\:max-h-\[92vh\] {
      max-height: 92vh;
    }

    .sm\:w-\[380px\] {
      width: 380px;
    }

    .sm\:w-auto {
      width: auto;
    }

    .sm\:flex-initial {
      flex: 0 auto;
    }

    .sm\:grid-cols-2 {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .sm\:grid-cols-3 {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .sm\:grid-cols-5 {
      grid-template-columns: repeat(5, minmax(0, 1fr));
    }

    .sm\:flex-row {
      flex-direction: row;
    }

    .sm\:items-center {
      align-items: center;
    }

    .sm\:justify-start {
      justify-content: flex-start;
    }

    .sm\:gap-2 {
      gap: calc(var(--spacing) * 2);
    }

    .sm\:gap-3 {
      gap: calc(var(--spacing) * 3);
    }

    .sm\:gap-4 {
      gap: calc(var(--spacing) * 4);
    }

    .sm\:rounded-2xl {
      border-radius: var(--radius-2xl);
    }

    .sm\:p-4 {
      padding: calc(var(--spacing) * 4);
    }

    .sm\:p-5 {
      padding: calc(var(--spacing) * 5);
    }

    .sm\:p-6 {
      padding: calc(var(--spacing) * 6);
    }

    .sm\:p-8 {
      padding: calc(var(--spacing) * 8);
    }

    .sm\:px-4 {
      padding-inline: calc(var(--spacing) * 4);
    }

    .sm\:px-5 {
      padding-inline: calc(var(--spacing) * 5);
    }

    .sm\:px-6 {
      padding-inline: calc(var(--spacing) * 6);
    }

    .sm\:text-2xl {
      font-size: var(--text-2xl);
      line-height: var(--tw-leading, var(--text-2xl--line-height));
    }

    .sm\:text-base {
      font-size: var(--text-base);
      line-height: var(--tw-leading, var(--text-base--line-height));
    }

    .sm\:text-xl {
      font-size: var(--text-xl);
      line-height: var(--tw-leading, var(--text-xl--line-height));
    }

    .sm\:text-xs {
      font-size: var(--text-xs);
      line-height: var(--tw-leading, var(--text-xs--line-height));
    }

    .sm\:text-\[13px\] {
      font-size: 13px;
    }

    .sm\:text-\[25px\] {
      font-size: 25px;
    }

    .sm\:text-\[26px\] {
      font-size: 26px;
    }
  }

  @media (min-width: 48rem) {
    .md\:bottom-\[115px\] {
      bottom: 115px;
    }

    .md\:w-\[440px\] {
      width: 440px;
    }

    .md\:grid-cols-2 {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .md\:grid-cols-3 {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .md\:grid-cols-4 {
      grid-template-columns: repeat(4, minmax(0, 1fr));
    }

    .md\:flex-row {
      flex-direction: row;
    }

    .md\:items-center {
      align-items: center;
    }

    .md\:border-t-0 {
      border-top-style: var(--tw-border-style);
      border-top-width: 0;
    }

    .md\:border-l {
      border-left-style: var(--tw-border-style);
      border-left-width: 1px;
    }

    .md\:p-5 {
      padding: calc(var(--spacing) * 5);
    }

    .md\:p-6 {
      padding: calc(var(--spacing) * 6);
    }

    .md\:p-8 {
      padding: calc(var(--spacing) * 8);
    }

    .md\:pt-0 {
      padding-top: 0;
    }

    .md\:pl-3 {
      padding-left: calc(var(--spacing) * 3);
    }
  }

  @media (min-width: 64rem) {
    .lg\:col-span-2 {
      grid-column: span 2 / span 2;
    }

    .lg\:flex {
      display: flex;
    }

    .lg\:flex-none {
      flex: none;
    }

    .lg\:grid-cols-2 {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .lg\:grid-cols-3 {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .lg\:grid-cols-4 {
      grid-template-columns: repeat(4, minmax(0, 1fr));
    }

    .lg\:grid-cols-5 {
      grid-template-columns: repeat(5, minmax(0, 1fr));
    }

    .lg\:grid-cols-7 {
      grid-template-columns: repeat(7, minmax(0, 1fr));
    }

    .lg\:grid-cols-\[0\.9fr_1\.35fr\] {
      grid-template-columns: .9fr 1.35fr;
    }

    .lg\:grid-cols-\[1fr_1\.15fr\] {
      grid-template-columns: 1fr 1.15fr;
    }

    .lg\:grid-cols-\[1fr_1\.15fr_0\.95fr\] {
      grid-template-columns: 1fr 1.15fr .95fr;
    }

    .lg\:grid-cols-\[minmax\(0\,1\.7fr\)_360px\] {
      grid-template-columns: minmax(0, 1.7fr) 360px;
    }

    .lg\:grid-cols-\[minmax\(0\,1\.7fr\)_minmax\(310px\,\.8fr\)\] {
      grid-template-columns: minmax(0, 1.7fr) minmax(310px, .8fr);
    }

    .lg\:items-end {
      align-items: flex-end;
    }

    .lg\:border-t-0 {
      border-top-style: var(--tw-border-style);
      border-top-width: 0;
    }

    .lg\:border-l {
      border-left-style: var(--tw-border-style);
      border-left-width: 1px;
    }

    .lg\:p-6 {
      padding: calc(var(--spacing) * 6);
    }
  }

  @media (min-width: 80rem) {
    .xl\:col-span-5 {
      grid-column: span 5 / span 5;
    }

    .xl\:col-span-7 {
      grid-column: span 7 / span 7;
    }

    .xl\:col-span-12 {
      grid-column: span 12 / span 12;
    }

    .xl\:grid-cols-2 {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .xl\:grid-cols-12 {
      grid-template-columns: repeat(12, minmax(0, 1fr));
    }

    .xl\:grid-cols-\[minmax\(0\,1\.4fr\)_minmax\(390px\,\.8fr\)\] {
      grid-template-columns: minmax(0, 1.4fr) minmax(390px, .8fr);
    }

    .xl\:border-r {
      border-right-style: var(--tw-border-style);
      border-right-width: 1px;
    }

    .xl\:border-b-0 {
      border-bottom-style: var(--tw-border-style);
      border-bottom-width: 0;
    }
  }

  @media (min-width: 96rem) {
    .\32 xl\:grid-cols-2 {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
  }

  .\[\&_\.leaflet-container\]\:\!bg-white .leaflet-container {
    background-color: var(--color-white) !important;
  }

  .\[\&\:\:-moz-range-thumb\]\:pointer-events-auto::-moz-range-thumb {
    pointer-events: auto;
  }

  .\[\&\:\:-webkit-slider-thumb\]\:pointer-events-auto::-webkit-slider-thumb {
    pointer-events: auto;
  }
}

html, body, #root {
  -webkit-user-select: none;
  user-select: none;
  touch-action: manipulation;
  overscroll-behavior: none;
  background-color: #07111f;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  overflow: hidden;
}

button, input, select, textarea, [role="button"] {
  touch-action: manipulation;
}

.touch-pan-y, .overflow-y-auto, .overflow-auto, .control-drawer, [role="dialog"] {
  -webkit-overflow-scrolling: touch;
  overscroll-behavior-y: contain;
  touch-action: pan-y pinch-zoom !important;
}

input[type="range"] {
  touch-action: pan-x manipulation;
}

@keyframes slideDown {
  0% {
    opacity: 0;
    transform: translateY(-12px);
  }

  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes fadeSlideIn {
  0% {
    opacity: 0;
    transform: translate(-50%, 20px);
  }

  100% {
    opacity: 1;
    transform: translate(-50%);
  }
}

@keyframes spin-slow {
  from {
    transform: rotate(0);
  }

  to {
    transform: rotate(360deg);
  }
}

.leaflet-container {
  background: #07111f;
  touch-action: none !important;
}

.custom-leaflet-popup .leaflet-popup-content-wrapper {
  color: #f7faff !important;
  background: #08121ff2 !important;
  border: 1px solid #a5b4c833 !important;
  border-radius: 16px !important;
  padding: 0 !important;
  box-shadow: 0 10px 30px #00000080 !important;
}

.custom-leaflet-popup .leaflet-popup-content {
  width: auto !important;
  margin: 0 !important;
  line-height: normal !important;
}

.custom-leaflet-popup .leaflet-popup-tip {
  background: #08121ff2 !important;
  border-bottom: 1px solid #a5b4c833 !important;
  border-left: 1px solid #a5b4c833 !important;
}

.custom-leaflet-popup .leaflet-popup-close-button {
  color: #9babbd !important;
  padding: 8px 10px 0 0 !important;
}

.custom-leaflet-popup .leaflet-popup-close-button:hover {
  color: #fff !important;
  background: none !important;
}

.custom-wind-circle-tooltip {
  color: #f7faff !important;
  background: #08121ff2 !important;
  border: 1px solid #a5b4c833 !important;
  border-radius: 8px !important;
  padding: 8px 12px !important;
  font-family: monospace !important;
  font-size: 10px !important;
  box-shadow: 0 4px 12px #0006 !important;
}

.custom-wind-circle-tooltip:before {
  border-right-color: #08121ff2 !important;
}

.scrollbar-thin::-webkit-scrollbar {
  width: 5px;
  height: 5px;
}

.scrollbar-thin::-webkit-scrollbar-track {
  background: #00000026;
  border-radius: 10px;
}

.scrollbar-thin::-webkit-scrollbar-thumb {
  background: #1e9cff59;
  border-radius: 10px;
}

.scrollbar-none::-webkit-scrollbar {
  display: none;
}

.leaflet-typhoon-center-icon {
  background: none !important;
  border: none !important;
}

.transition-snappy {
  transition-property: all;
  transition-duration: .25s !important;
  transition-timing-function: cubic-bezier(.16, 1, .3, 1) !important;
}

.transition-snappy-slow {
  transition-property: all;
  transition-duration: .45s !important;
  transition-timing-function: cubic-bezier(.16, 1, .3, 1) !important;
}

@keyframes slideInRightSnappy {
  0% {
    opacity: 0;
    transform: translateX(100%);
  }

  100% {
    opacity: 1;
    transform: translateX(0);
  }
}

@keyframes slideInLeftSnappy {
  0% {
    opacity: 0;
    transform: translateX(-100%);
  }

  100% {
    opacity: 1;
    transform: translateX(0);
  }
}

@keyframes slideInUpSnappy {
  0% {
    opacity: 0;
    transform: translateY(20px);
  }

  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes scaleUpSnappy {
  0% {
    opacity: 0;
    transform: scale(.96) translateY(5px);
  }

  100% {
    opacity: 1;
    transform: scale(1) translateY(0);
  }
}

@keyframes fadeInSnappy {
  0% {
    opacity: 0;
  }

  100% {
    opacity: 1;
  }
}

.animate-slide-in-right {
  animation: .35s cubic-bezier(.16, 1, .3, 1) forwards slideInRightSnappy;
}

.animate-slide-in-left {
  animation: .35s cubic-bezier(.16, 1, .3, 1) forwards slideInLeftSnappy;
}

.animate-slide-in-up {
  animation: .3s cubic-bezier(.16, 1, .3, 1) forwards slideInUpSnappy;
}

.animate-scale-up {
  animation: .25s cubic-bezier(.16, 1, .3, 1) forwards scaleUpSnappy;
}

.animate-fade-in {
  animation: .2s cubic-bezier(.16, 1, .3, 1) forwards fadeInSnappy;
}

:root {
  color-scheme: dark;
}

.theme-default {
  --ops-bg: #0b1015;
  --ops-panel: #111820;
  --ops-panel-2: #151d25;
  --ops-panel-3: #0e141a;
  --ops-border: #2b3640;
  --ops-border-soft: #202a33;
  --ops-accent: #8eacbb;
  --ops-accent-strong: #b6c8d1;
  --ops-text: #e7edf1;
  --ops-muted: #8b98a3;
}

.theme-default #typhoon-app-container {
  background: var(--ops-bg) !important;
  color: var(--ops-text) !important;
}

.theme-default #control-drawer-sidebar {
  border-left: 1px solid var(--ops-border) !important;
  -webkit-backdrop-filter: blur(14px) !important;
  backdrop-filter: blur(14px) !important;
  background: #0f151bfb !important;
  box-shadow: -18px 0 48px #0000006b !important;
}

.theme-default #control-drawer-sidebar > div:first-child {
  min-height: 62px;
  border-color: var(--ops-border) !important;
  background: #10161c !important;
}

.theme-default #control-drawer-sidebar [class*="rounded-xl"], .theme-default #control-drawer-sidebar [class*="rounded-2xl"] {
  border-radius: 8px !important;
}

.theme-default #control-drawer-sidebar button, .theme-default #control-drawer-sidebar input, .theme-default #control-drawer-sidebar select {
  border-radius: 6px !important;
}

.theme-default #control-drawer-sidebar [class*="bg-slate-900/30"], .theme-default #control-drawer-sidebar [class*="bg-slate-950/40"], .theme-default #control-drawer-sidebar [class*="bg-slate-950/45"] {
  background: var(--ops-panel-3) !important;
  border-color: var(--ops-border-soft) !important;
}

.theme-default #control-drawer-sidebar [class*="bg-slate-800"] {
  background: #18212a !important;
}

.theme-default #control-drawer-sidebar [class*="border-slate-800"], .theme-default #control-drawer-sidebar [class*="border-slate-700"] {
  border-color: var(--ops-border) !important;
}

.theme-default #control-drawer-sidebar [class*="text-[#1E9CFF]"] {
  color: var(--ops-accent-strong) !important;
}

.theme-default #control-drawer-sidebar [class*="bg-[#1E9CFF]"] {
  background: #536f7d !important;
}

.theme-default #control-drawer-sidebar [class*="accent-[#1E9CFF]"] {
  accent-color: #7896a5 !important;
}

.theme-default #control-drawer-sidebar .animate-spin {
  animation: none !important;
}

.theme-default #simulation-timeline, .theme-default .glass-panel {
  border-color: var(--ops-border) !important;
  -webkit-backdrop-filter: blur(12px) !important;
  backdrop-filter: blur(12px) !important;
  background: #0f151bf2 !important;
  box-shadow: 0 10px 30px #00000057 !important;
}

.theme-default #btn-toggle-menu, .theme-default #btn-more-options {
  color: #d6e0e5 !important;
  background: #0f151bf5 !important;
  border-color: #3a4650 !important;
  border-radius: 7px !important;
  box-shadow: 0 7px 22px #00000052 !important;
}

.theme-default #btn-toggle-menu:hover, .theme-default #btn-more-options:hover {
  background: #1b252e !important;
  border-color: #657885 !important;
}

.theme-default .custom-leaflet-popup .leaflet-popup-content-wrapper, .theme-default .custom-leaflet-popup .leaflet-popup-tip {
  background: #0e141af7 !important;
}

.theme-default .custom-leaflet-popup .leaflet-popup-content-wrapper {
  border-color: #39444d !important;
  border-radius: 7px !important;
  box-shadow: 0 12px 32px #00000075 !important;
}

.theme-default .scrollbar-thin::-webkit-scrollbar-thumb {
  background: #8eacbb57;
}

.theme-default input[type="range"] {
  accent-color: #7896a5;
}

.theme-default#typhoon-app-container {
  background: var(--ops-bg) !important;
  color: var(--ops-text) !important;
}

.theme-default [id^="typhoon-card-"], .theme-default #typhoon-status-card-empty {
  -webkit-backdrop-filter: blur(10px) !important;
  backdrop-filter: blur(10px) !important;
  background: #0f151bf7 !important;
  border-color: #35414b !important;
  border-radius: 8px !important;
  box-shadow: 0 12px 34px #00000057 !important;
}

.theme-default [id^="typhoon-card-"] [class*="rounded-xl"], .theme-default [id^="typhoon-card-"] [class*="rounded-2xl"], .theme-default [id^="typhoon-card-"] [class*="rounded-full"] {
  border-radius: 6px !important;
}

.theme-default [id^="typhoon-card-"] .animate-spin {
  animation: none !important;
}

.theme-default [id^="typhoon-card-"] .bg-\[\#1E9CFF\]\/10 {
  background: #1a242d !important;
}

.theme-default [id^="typhoon-card-"] .text-\[\#1E9CFF\] {
  color: #a8bdc8 !important;
}

.theme-default #compact-report-bar button, .theme-default [id^="typhoon-card-"] button[class*="from-amber"] {
  color: #10161c !important;
  background-color: #d5dde2 !important;
  background-image: none !important;
  border-color: #d5dde2 !important;
  border-radius: 6px !important;
  animation: none !important;
  box-shadow: 0 6px 18px #00000042 !important;
}

.theme-default #simulation-timeline, .theme-default #simulation-timeline-collapsed {
  border-radius: 8px !important;
}

.theme-default #simulation-timeline button, .theme-default #simulation-timeline-collapsed button {
  border-radius: 5px !important;
}

.theme-default select, .theme-default input[type="text"], .theme-default input[type="number"] {
  box-shadow: none !important;
}

.theme-default ::selection {
  background: #8eacbb47;
}

.jma-center-cross-wrap {
  background: none !important;
  border: none !important;
}

.jma-center-cross {
  color: #fff;
  width: 26px;
  height: 26px;
  text-shadow: none;
  pointer-events: none;
  justify-content: center;
  align-items: center;
  font: 900 29px / 1 Arial, Helvetica, sans-serif;
  display: flex;
  transform: translateY(-1px);
  box-shadow: none !important;
  background: none !important;
  border: 0 !important;
}

.osm-night-tiles .leaflet-tile, .leaflet-tile.osm-night-tiles {
  filter: invert(.92) hue-rotate(180deg) brightness(.68) contrast(1.14) saturate(.62);
}

.leaflet-control-attribution {
  border-radius: 4px 0 0;
  color: #cbd5e1b8 !important;
  background: #050c14b8 !important;
  padding: 2px 5px !important;
  font-size: 9px !important;
  line-height: 1.25 !important;
}

.leaflet-control-attribution a {
  color: #7dd3fcdb !important;
}

.typhoon-temp-station-transition-wrap {
  background: none !important;
  border: 0 !important;
  overflow: visible !important;
}

.typhoon-temp-station-transition {
  pointer-events: none;
  width: 118px;
  height: 42px;
  position: relative;
}

.typhoon-temp-station-transition__ring, .typhoon-temp-station-transition__dot {
  border-radius: 9999px;
  position: absolute;
  top: 21px;
  left: 21px;
  transform: translate(-50%, -50%);
}

.typhoon-temp-station-transition__ring {
  border: 2px solid #7dd3fceb;
  width: 13px;
  height: 13px;
  animation: .62s ease-out infinite typhoon-temp-station-pulse;
  box-shadow: 0 0 12px #38bdf88c;
}

.typhoon-temp-station-transition__dot {
  background: #e0f2fe;
  width: 6px;
  height: 6px;
  box-shadow: 0 0 7px #7dd3fcf2;
}

.typhoon-temp-station-transition__text {
  white-space: nowrap;
  color: #dbeafe;
  background: #08121fe6;
  border: 1px solid #64748bb3;
  border-radius: 6px;
  padding: 4px 7px;
  font-size: 10px;
  font-weight: 600;
  line-height: 1;
  animation: .18s ease-out both typhoon-temp-station-label-in;
  position: absolute;
  top: 10px;
  left: 34px;
  box-shadow: 0 5px 16px #00000047;
}

@keyframes typhoon-temp-station-pulse {
  0% {
    opacity: .95;
    transform: translate(-50%, -50%) scale(.72);
  }

  100% {
    opacity: 0;
    transform: translate(-50%, -50%) scale(2.35);
  }
}

@keyframes typhoon-temp-station-label-in {
  from {
    opacity: 0;
    transform: translateX(-4px);
  }

  to {
    opacity: 1;
    transform: translateX(0);
  }
}

.typhoon-genesis-confirm-wrap {
  background: none !important;
  border: 0 !important;
  overflow: visible !important;
}

.typhoon-genesis-confirm {
  pointer-events: none;
  width: 132px;
  height: 94px;
  position: relative;
}

.typhoon-genesis-confirm__dot {
  background: #fff;
  border: 1px solid #0f172a8c;
  border-radius: 9999px;
  width: 8px;
  height: 8px;
  position: absolute;
  top: 86px;
  left: 66px;
  transform: translate(-50%, -50%);
  box-shadow: 0 0 0 3px #ffffff29, 0 2px 8px #0000008c;
}

.typhoon-genesis-confirm__actions {
  pointer-events: auto;
  gap: 6px;
  display: flex;
  position: absolute;
  top: 5px;
  left: 66px;
  transform: translateX(-50%);
}

.typhoon-genesis-confirm__actions button {
  color: #fff;
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
  background: #08121ff0;
  border: 1px solid #e2e8f0b8;
  border-radius: 10px;
  justify-content: center;
  align-items: center;
  width: 34px;
  height: 30px;
  font-size: 18px;
  font-weight: 800;
  line-height: 1;
  display: flex;
  box-shadow: 0 5px 14px #00000061;
}

.typhoon-genesis-confirm__actions button:first-child {
  color: #86efac;
  border-color: #4ade80b8;
}

.typhoon-genesis-confirm__actions button:last-child {
  color: #fda4af;
  border-color: #fb7185a6;
}

.typhoon-genesis-confirm__actions button:active {
  transform: scale(.94);
}

.typhoon-genesis-confirm__intensity {
  pointer-events: auto;
  background: #08121ff0;
  border: 1px solid #94a3b87a;
  border-radius: 9px;
  align-items: center;
  gap: 4px;
  padding: 3px 5px;
  display: flex;
  position: absolute;
  top: 42px;
  left: 66px;
  transform: translateX(-50%);
  box-shadow: 0 4px 12px #00000052;
}

.typhoon-genesis-confirm__intensity button {
  color: #cbd5e1;
  cursor: pointer;
  background: #0f172ad1;
  border: 1px solid #64748b94;
  border-radius: 6px;
  min-width: 25px;
  height: 22px;
  padding: 0 4px;
  font-size: 10px;
  font-weight: 800;
  line-height: 1;
}

.typhoon-genesis-confirm__intensity button.is-active {
  color: #e0f2fe;
  background: #0ea5e938;
  border-color: #38bdf8;
  box-shadow: inset 0 0 0 1px #38bdf829;
}

.typhoon-genesis-confirm__intensity span {
  color: #94a3b8;
  white-space: nowrap;
  margin-left: 1px;
  font-size: 8px;
  font-weight: 700;
}

@media (max-width: 1023px) {
  .video-export-preview-stage {
    flex: none !important;
    min-height: 0 !important;
  }

  .video-export-preview-frame {
    width: min(100%, 760px) !important;
    height: auto !important;
    max-height: 36vh !important;
  }
}

.aether-launch {
  z-index: 20000;
  color: #fff;
  opacity: 1;
  contain: strict;
  isolation: isolate;
  background: #000;
  transition: opacity .56s cubic-bezier(.22, .75, .2, 1);
  position: fixed;
  inset: 0;
  overflow: hidden;
}

.aether-launch--exit {
  opacity: 0;
  pointer-events: none;
}

.aether-launch__brand, .aether-launch__author {
  position: absolute;
  inset: 0;
}

.aether-launch__brand {
  opacity: 1;
  will-change: opacity;
  place-items: center;
  transition: opacity .3s;
  display: grid;
}

.aether-launch--blackout .aether-launch__brand, .aether-launch--author .aether-launch__brand, .aether-launch--exit .aether-launch__brand {
  opacity: 0;
}

.aether-launch__wordstage {
  aspect-ratio: 760 / 220;
  will-change: transform, opacity;
  opacity: 0;
  width: min(76vw, 740px);
  animation: 1.65s cubic-bezier(.16, .82, .22, 1) 70ms forwards aether-wordstage-in;
  position: relative;
  transform: translateZ(0) scale(.985);
}

.aether-launch__wordmark-svg {
  width: 100%;
  height: 100%;
  display: block;
  overflow: visible;
}

.aether-launch__wordmark-trace path {
  stroke-width: 4.6px;
  stroke-dasharray: 1;
  stroke-dashoffset: 1px;
  opacity: .42;
  vector-effect: non-scaling-stroke;
  animation-name: aether-word-trace;
  animation-duration: .98s;
  animation-timing-function: cubic-bezier(.18, .76, .18, 1);
  animation-fill-mode: forwards;
}

.aether-launch__wordmark-crisp path {
  stroke-width: 2.8px;
  stroke-dasharray: 1;
  stroke-dashoffset: 1px;
  opacity: 0;
  vector-effect: non-scaling-stroke;
  animation-name: aether-word-crisp;
  animation-duration: .95s;
  animation-timing-function: cubic-bezier(.2, .78, .18, 1);
  animation-fill-mode: forwards;
}

.aether-launch__author {
  color: #f5f5f5e6;
  letter-spacing: .1em;
  text-align: center;
  opacity: 0;
  background: #000;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 10px;
  padding: 24px;
  font: 300 13px / 1.5 Inter, system-ui, sans-serif;
  transition: opacity .32s;
  display: flex;
}

.aether-launch__author-rule {
  background: #ffffff52;
  width: 54px;
  height: 1px;
}

.aether-launch__author-kicker {
  color: #94a3b894;
  letter-spacing: .28em;
  font-size: 8px;
}

.aether-launch--author .aether-launch__author {
  opacity: 1;
}

.aether-launch--exit .aether-launch__author {
  opacity: 0;
}

@keyframes aether-wordstage-in {
  0% {
    opacity: 0;
    transform: translateZ(0) scale(.955);
  }

  38% {
    opacity: .76;
  }

  72% {
    opacity: 1;
    transform: translateZ(0) scale(1.006);
  }

  100% {
    opacity: 1;
    transform: translateZ(0) scale(1);
  }
}

@keyframes aether-word-trace {
  0% {
    stroke-dashoffset: 1px;
    opacity: 0;
  }

  18% {
    opacity: .3;
  }

  72% {
    opacity: .7;
  }

  100% {
    stroke-dashoffset: 0;
    opacity: .28;
  }
}

@keyframes aether-word-crisp {
  0% {
    stroke-dashoffset: 1px;
    opacity: 0;
  }

  44% {
    opacity: .64;
  }

  100% {
    stroke-dashoffset: 0;
    opacity: 1;
  }
}

@media (max-width: 520px) {
  .aether-launch__wordstage {
    width: min(84vw, 640px);
  }

  .aether-launch__wordmark-trace path {
    stroke-width: 4px;
  }

  .aether-launch__wordmark-crisp path {
    stroke-width: 2.5px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .aether-launch__wordstage, .aether-launch__wordmark-trace path, .aether-launch__wordmark-crisp path {
    animation-duration: 1ms !important;
    animation-delay: 0s !important;
  }
}

@media (min-width: 900px) {
  .storminc-topbar {
    z-index: 1450;
    color: #eef7ff;
    background: linear-gradient(#070f1cfa, #070f1cb8 64%, #0000);
    align-items: center;
    height: 82px;
    padding: 0 28px;
    font-family: JetBrains Mono, monospace;
    display: flex;
    position: fixed;
    inset: 0 0 auto;
  }

  .storminc-brand {
    letter-spacing: .24em;
    align-items: baseline;
    gap: 16px;
    display: flex;
  }

  .storminc-brand b {
    letter-spacing: -.06em;
    color: #fff;
    text-shadow: 0 2px 16px #ffffff14;
    font: italic 900 35px / 1 Inter, sans-serif;
  }

  .storminc-brand b:after {
    content: "";
    background: #15d5e8;
    border-radius: 2px;
    width: 54px;
    height: 4px;
    margin-top: 10px;
    display: block;
  }

  .storminc-brand span {
    color: #59728d;
    font-size: 10px;
    font-weight: 700;
  }

  .storminc-live-pill {
    color: #b5c2d2;
    background: #050a12e0;
    border: 1px solid #92a2b240;
    border-radius: 999px;
    justify-content: center;
    align-items: center;
    gap: 18px;
    min-width: 380px;
    padding: 9px 22px;
    font-size: 12px;
    display: flex;
    position: absolute;
    top: 25px;
    left: 50%;
    transform: translateX(-50%);
    box-shadow: 0 7px 22px #00000040;
  }

  .storminc-live-pill strong {
    color: #68eff6;
  }

  .storminc-live-pill i {
    background: #94a3b840;
    width: 1px;
    height: 14px;
  }

  .storminc-top-actions {
    gap: 10px;
    margin-left: auto;
    display: flex;
  }

  .storminc-top-actions button {
    color: #9aaabd;
    background: #07101d;
    border: 1px solid #1c2939;
    border-radius: 50%;
    place-items: center;
    width: 42px;
    height: 42px;
    transition: all .18s;
    display: grid;
  }

  .storminc-top-actions button:hover {
    color: #22d3ee;
    border-color: #22d3ee88;
    transform: translateY(-1px);
  }

  .storminc-top-actions svg {
    width: 17px;
    height: 17px;
  }

  .storminc-ace-chip {
    z-index: 1200;
    color: #718096;
    letter-spacing: .16em;
    background: #060b12de;
    border: 1px solid #253245;
    border-radius: 999px;
    padding: 5px 14px;
    font: 10px JetBrains Mono, monospace;
    position: fixed;
    top: 88px;
    left: 50%;
    transform: translateX(-50%);
  }

  .storminc-ace-chip b {
    color: #dce6ef;
    margin-left: 8px;
  }

  [id^="typhoon-card-"]:not([id*="collapsed"]):not([id*="portrait"]) {
    overflow: hidden;
    -webkit-backdrop-filter: blur(12px) !important;
    backdrop-filter: blur(12px) !important;
    background: linear-gradient(#091425fa, #091323f5) !important;
    border: 1px solid #26344b !important;
    border-radius: 0 !important;
    width: 335px !important;
    max-width: 335px !important;
    padding: 0 !important;
    top: 104px !important;
    left: 30px !important;
    box-shadow: 0 14px 38px #00000057 !important;
  }

  [id^="typhoon-card-"]:not([id*="collapsed"]):not([id*="portrait"]) > div:first-child {
    padding: 14px 18px 10px;
    border-bottom: 1px solid #1f2e43 !important;
    margin: 0 !important;
  }

  [id^="typhoon-card-"]:not([id*="collapsed"]):not([id*="portrait"]) h1 {
    font-style: italic;
    letter-spacing: -.05em !important;
    font-size: 22px !important;
    font-weight: 900 !important;
  }

  .storminc-satellite-card {
    background: #020719;
    border-bottom: 1px solid #26344b;
    width: 100%;
    height: 166px;
    position: relative;
    overflow: hidden;
  }

  .storminc-satellite-label {
    z-index: 2;
    color: #ff4b61;
    letter-spacing: .08em;
    background: #0d0710c7;
    padding: 4px 7px;
    font: 700 10px JetBrains Mono, monospace;
    position: absolute;
    top: 12px;
    left: 14px;
  }

  .storminc-satellite-label span {
    background: #ff334f;
    border-radius: 50%;
    width: 6px;
    height: 6px;
    margin-right: 6px;
    display: inline-block;
    box-shadow: 0 0 8px #ff334f;
  }

  .storminc-satellite-canvas {
    object-fit: cover;
    image-rendering: auto;
    width: 100%;
    height: 100%;
  }

  [id^="typhoon-card-"]:not([id*="collapsed"]):not([id*="portrait"]) .grid.grid-cols-2 {
    gap: 10px;
    padding: 14px 16px 0;
  }

  [id^="typhoon-card-"]:not([id*="collapsed"]):not([id*="portrait"]) .grid.grid-cols-2 > div {
    background: #152037 !important;
    border-color: #21314a !important;
    border-radius: 4px !important;
  }

  [id^="typhoon-card-"]:not([id*="collapsed"]):not([id*="portrait"]) > button {
    margin-left: 16px;
    border-radius: 4px !important;
    width: calc(100% - 32px) !important;
  }

  .storminc-intensity-panel {
    z-index: 1150;
    color: #d5e3ef;
    background: #020810f0;
    border: 1px solid #2b3a4e;
    width: 360px;
    height: 210px;
    padding: 14px 14px 8px;
    font-family: JetBrains Mono, monospace;
    position: fixed;
    bottom: 70px;
    right: 34px;
    box-shadow: 0 12px 34px #00000057;
  }

  .storminc-panel-title {
    letter-spacing: .12em;
    border-left: 3px solid #15d5e8;
    margin-bottom: 5px;
    padding-left: 10px;
    font-size: 11px;
    font-weight: 800;
  }

  .storminc-panel-title span {
    float: right;
    color: #fff;
    background: #12bdd2;
    border-radius: 4px;
    padding: 2px 8px;
  }

  .storminc-intensity-panel svg {
    width: 100%;
    height: 168px;
  }

  .storminc-intensity-panel .grid {
    stroke: #738aa021;
    stroke-width: 1px;
  }

  .storminc-intensity-panel .curve {
    stroke: #f4f8fb;
    stroke-width: 2.4px;
    filter: drop-shadow(0 0 4px #fffc);
  }

  .storminc-intensity-panel .dot {
    fill: #d6a7ff;
    stroke: #fff;
    stroke-width: 1.3px;
  }

  .storminc-intensity-panel .axis-label, .storminc-intensity-panel .tick {
    fill: #75879c;
    font: 9px JetBrains Mono, monospace;
  }

  .storminc-dock {
    z-index: 1600;
    color: #a9b7c7;
    background: #040910f5;
    border: 1px solid #1f2a3b;
    border-radius: 16px;
    align-items: center;
    gap: 7px;
    min-height: 54px;
    padding: 6px 10px;
    display: flex;
    position: fixed;
    bottom: 12px;
    left: 50%;
    transform: translateX(-50%);
    box-shadow: 0 10px 32px #00000070;
  }

  .storminc-dock button {
    color: #8291a4;
    background: #080e18;
    border: 1px solid #172236;
    border-radius: 8px;
    height: 38px;
    font: 700 11px JetBrains Mono, monospace;
    transition: all .16s;
  }

  .storminc-dock button:hover {
    color: #e6f7ff;
    border-color: #34465f;
  }

  .storminc-restart {
    align-items: center;
    gap: 8px;
    padding: 0 16px;
    display: flex;
    color: #111827 !important;
    background: #f4f7f9 !important;
    border-radius: 11px !important;
    font-family: Inter, sans-serif !important;
  }

  .storminc-chip {
    padding: 0 14px;
  }

  .storminc-icon {
    place-items: center;
    width: 38px;
    display: grid;
  }

  .storminc-icon.active, .storminc-icon.cyan {
    color: #16d5e8 !important;
    background: #0b2131 !important;
    border-color: #16d5e866 !important;
  }

  .storminc-divider {
    background: #1d2735;
    width: 1px;
    height: 30px;
  }

  .storminc-terminate {
    align-items: center;
    gap: 7px;
    padding: 0 14px;
    display: flex;
    color: #e56672 !important;
    background: #270c12 !important;
    border-color: #6f1d28 !important;
  }
}

.icwc-product-workstation {
  color: #233044;
  font-family: Arial, Microsoft YaHei, sans-serif;
}

.icwc-product-sidebar {
  background: #f0f1f3;
  border-right: 1px solid #cbd0d7;
  flex: 0 0 185px;
  width: 185px;
  padding: 16px 10px;
  overflow: auto;
}

.icwc-product-sidebar-title {
  color: #4c596c;
  padding: 0 8px 11px;
  font-size: 12px;
  font-weight: 800;
}

.icwc-product-tab {
  text-align: left;
  color: #38465a;
  background: none;
  border: 1px solid #0000;
  border-radius: 4px;
  width: 100%;
  margin: 2px 0;
  padding: 10px 12px;
  font-size: 13px;
  font-weight: 700;
}

.icwc-product-tab:hover {
  background: #e7eaee;
}

.icwc-sidebar-separator {
  background: #d4d8de;
  height: 1px;
  margin: 10px 4px;
}

.icwc-product-settings {
  color: #273449 !important;
}

.icwc-product-settings .text-slate-100, .icwc-product-settings .text-white {
  color: #1f2937 !important;
}

.icwc-product-settings .text-slate-400, .icwc-product-settings .text-slate-500 {
  color: #667085 !important;
}

.icwc-product-settings .bg-slate-950, .icwc-product-settings [class*="bg-slate-950"], .icwc-product-settings [class*="bg-slate-900"], .icwc-product-settings [class*="bg-slate-800"] {
  background: #fff !important;
}

.icwc-product-settings [class*="border-slate-8"], .icwc-product-settings [class*="border-slate-7"] {
  border-color: #d2d7de !important;
}

.icwc-product-settings button {
  border-radius: 4px !important;
}

.icwc-preview-modal {
  height: min(760px, 90vh);
  background: #f5f6f7 !important;
  border: 1px solid #bfc5cc !important;
  border-radius: 0 !important;
  width: min(1180px, 94vw) !important;
  padding: 10px !important;
}

.icwc-preview-modal > div.flex-1 {
  border: 1px solid #c9ced5;
  background: #fff !important;
  border-radius: 0 !important;
}

.icwc-preview-modal p {
  color: #4b5563 !important;
}

.icwc-preview-modal button {
  border-radius: 2px !important;
}

@media (min-width: 900px) {
  .icwc-product-settings .icwc-legacy-product-selector {
    display: none !important;
  }

  [id^="typhoon-card-"]:not([id*="collapsed"]):not([id*="portrait"]) {
    scrollbar-width: thin;
    scrollbar-color: #334155 transparent;
    max-height: calc(100vh - 184px) !important;
    overflow: hidden auto !important;
  }

  [id^="typhoon-card-"]:not([id*="collapsed"]):not([id*="portrait"]) > div:first-child {
    z-index: 5;
    background: #091425fa;
    position: sticky;
    top: 0;
  }

  .storminc-dock {
    scrollbar-width: none;
    max-width: calc(100vw - 48px);
    overflow: auto hidden;
  }

  .storminc-dock::-webkit-scrollbar {
    display: none;
  }
}

@media (min-width: 900px) and (max-width: 1220px) {
  .storminc-topbar {
    padding: 0 16px;
  }

  .storminc-brand b {
    font-size: 28px;
  }

  .storminc-brand span {
    display: none;
  }

  .storminc-live-pill {
    gap: 11px;
    min-width: 330px;
    padding: 8px 15px;
    font-size: 10px;
  }

  .storminc-top-actions {
    gap: 5px;
  }

  .storminc-top-actions button {
    width: 36px;
    height: 36px;
  }

  .storminc-intensity-panel {
    width: 310px;
    right: 18px;
  }
}

.aether-track-tooltip.leaflet-tooltip:before {
  display: none !important;
}

.aether-track-hover {
  flex-direction: column;
  gap: 2px;
  min-width: 142px;
  padding: 7px 9px;
  font: 10px / 1.3 JetBrains Mono, monospace;
  display: flex;
}

.aether-track-hover b {
  color: #67e8f9;
  letter-spacing: .05em;
  font-size: 10px;
}

.icwc-product-workstation {
  min-width: 0;
}

.icwc-product-sidebar {
  scrollbar-width: thin;
}

.aether-product-section {
  color: #84909d;
  letter-spacing: .12em;
  text-transform: uppercase;
  border-top: 1px solid #d7dbe0;
  margin: 10px 8px 3px;
  padding-top: 8px;
  font-size: 9px;
  font-weight: 800;
}

.icwc-product-settings {
  min-width: 280px;
}

.icwc-product-settings [class*="text-purple-"], .icwc-product-settings [class*="text-cyan-"], .icwc-product-settings [class*="text-rose-"] {
  filter: saturate(.9);
}

@media (max-width: 1100px) {
  .icwc-product-workstation {
    width: 96vw !important;
    height: 90vh !important;
  }

  .icwc-product-sidebar {
    flex-basis: 164px;
    width: 164px;
    padding-left: 7px;
    padding-right: 7px;
  }

  .icwc-product-settings {
    padding: 14px !important;
  }
}

@media (min-width: 900px) and (max-height: 760px) {
  .storminc-topbar {
    height: 68px;
  }

  .storminc-brand b {
    font-size: 27px;
  }

  .storminc-brand b:after {
    height: 3px;
    margin-top: 6px;
  }

  .storminc-live-pill {
    top: 17px;
  }

  .storminc-ace-chip {
    top: 70px;
  }

  [id^="typhoon-card-"]:not([id*="collapsed"]):not([id*="portrait"]) {
    max-height: calc(100vh - 152px) !important;
    top: 82px !important;
  }

  .storminc-satellite-card {
    height: 132px;
  }

  .storminc-intensity-panel {
    height: 172px;
    bottom: 66px;
  }

  .storminc-intensity-panel svg {
    height: 130px;
  }
}

.aether-product-workstation {
  width: min(1480px, 96vw) !important;
  max-width: none !important;
  height: min(900px, 92vh) !important;
  max-height: none !important;
}

.aether-product-live-preview {
  min-width: 0;
}

.aether-product-settings {
  scrollbar-width: thin;
  scrollbar-color: #aeb7c2 transparent;
}

.aether-product-settings > div:first-child {
  min-width: 0;
}

.aether-satellite-synthesis-card {
  box-shadow: inset 0 0 0 1px #ffffff59;
}

.aether-report-summary {
  max-width: min(1440px, 96vw) !important;
}

.aether-report-summary-body {
  scrollbar-width: thin;
  scrollbar-color: #334155 transparent;
}

.aether-report-kpi-grid {
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)) !important;
}

.aether-report-builder {
  max-width: min(1480px, 96vw) !important;
}

.aether-report-builder-body {
  scrollbar-width: thin;
  scrollbar-color: #334155 transparent;
}

.aether-report-builder-controls, .aether-report-builder-preview {
  min-width: 0;
}

.aether-report-builder-preview canvas {
  width: auto;
  max-width: 100%;
  height: auto;
  max-height: 100%;
}

@media (min-width: 1024px) {
  .aether-report-builder-body {
    grid-template-columns: minmax(300px, 360px) minmax(0, 1fr) !important;
    gap: 16px !important;
    padding: 16px !important;
    display: grid !important;
    overflow: hidden !important;
  }

  .aether-report-builder-controls {
    overscroll-behavior: contain;
    overflow-y: auto;
    padding: 16px !important;
  }

  .aether-report-builder-preview {
    height: 100%;
    overflow: hidden;
    grid-column: auto !important;
    min-height: 0 !important;
    padding: 12px !important;
  }

  .aether-report-builder-preview > div {
    width: 100%;
    height: 100%;
    min-height: 0;
  }

  .aether-report-builder-preview canvas {
    max-height: calc(92vh - 120px) !important;
  }
}

@media (min-width: 1280px) {
  .icwc-product-sidebar {
    flex-basis: 204px;
    width: 204px;
    padding: 14px 10px;
  }

  .icwc-product-tab {
    padding: 9px 11px;
    font-size: 12px;
  }

  .aether-product-settings {
    flex-basis: 370px !important;
    width: 370px !important;
  }
}

@media (min-width: 1024px) and (max-width: 1279px) {
  .aether-product-workstation {
    width: 97vw !important;
    height: 94vh !important;
  }

  .icwc-product-sidebar {
    flex-basis: 172px;
    width: 172px;
  }

  .aether-product-settings {
    flex-basis: 330px !important;
    width: 330px !important;
  }

  .icwc-product-tab {
    padding: 8px 9px;
    font-size: 11px;
  }
}

@media (min-width: 900px) and (max-height: 760px) {
  .aether-product-workstation {
    height: 96vh !important;
  }

  .icwc-product-sidebar {
    padding-top: 10px;
    padding-bottom: 10px;
  }

  .icwc-product-tab {
    padding-top: 7px;
    padding-bottom: 7px;
  }

  .aether-product-settings {
    padding: 12px !important;
  }

  .aether-report-summary {
    max-height: 96vh !important;
  }

  .aether-report-summary-header, .aether-report-builder-header {
    padding-top: 10px !important;
    padding-bottom: 10px !important;
  }

  .aether-report-builder {
    height: 96vh !important;
  }

  .aether-report-builder-preview canvas {
    max-height: calc(96vh - 96px) !important;
  }
}

@media (max-width: 1023px) {
  .aether-product-workstation {
    width: 96vw !important;
    height: 92vh !important;
  }

  .icwc-product-sidebar {
    flex-basis: 170px;
    width: 170px;
  }

  .aether-product-settings {
    width: auto !important;
    min-width: 0 !important;
  }

  .aether-report-builder-body {
    overflow-y: auto !important;
  }
}

.aether-product-sidebar {
  overscroll-behavior: contain;
}

.aether-product-sidebar .icwc-product-sidebar-title {
  z-index: 2;
  background: linear-gradient(#f0f1f3 82%, #f0f1f3eb);
  border-bottom: 1px solid #d8dde3;
  margin: -4px -2px 8px;
  padding: 12px 10px 10px;
  position: sticky;
  top: -16px;
}

.aether-product-sidebar .icwc-product-sidebar-title > div {
  color: #344054;
  font-size: 12px;
  font-weight: 900;
}

.aether-product-sidebar .icwc-product-sidebar-title > span {
  letter-spacing: .13em;
  color: #98a2b3;
  margin-top: 3px;
  font: 700 7px / 1.2 ui-monospace, SFMono-Regular, Menlo, monospace;
  display: block;
}

.aether-product-settings {
  overscroll-behavior: contain;
  padding-bottom: 0 !important;
}

.aether-product-actions {
  z-index: 4;
  background: linear-gradient(#f8f9fbe6, #f8f9fb 24%);
  margin-left: -20px;
  margin-right: -20px;
  padding: 12px 20px 18px;
  position: sticky;
  bottom: 0;
  box-shadow: 0 -10px 22px #1f29370f;
}

.aether-satellite-workspace {
  background: linear-gradient(#f8fbfd, #eef5f8);
  border: 1px solid #d0d5dd;
  flex-direction: column;
  align-items: stretch;
  gap: 12px;
  padding: 18px;
  display: flex;
  box-shadow: 0 12px 28px #0f172a14;
}

.aether-satellite-workspace__head {
  border-bottom: 1px solid #d9e2e8;
  justify-content: space-between;
  align-items: flex-start;
  gap: 12px;
  padding-bottom: 10px;
  display: flex;
}

.aether-satellite-workspace__head > span {
  color: #0e7490;
  letter-spacing: .08em;
  background: #ecfeff;
  border: 1px solid #7dd3fc;
  flex: none;
  padding: 4px 7px;
  font: 800 8px / 1 ui-monospace, monospace;
}

.aether-satellite-workspace__diagram {
  aspect-ratio: 1;
  background: radial-gradient(circle, #0e7490 0 3%, #e0f2fe 3.5% 10%, #0000 10.5%), repeating-radial-gradient(circle, #0891b214 0 1px, #0000 1px 18px);
  border: 1px solid #bae6fd;
  border-radius: 50%;
  align-self: center;
  width: min(32vh, 240px);
  position: relative;
  overflow: hidden;
}

.aether-satellite-workspace__ring {
  border: 2px dashed #0891b27a;
  border-radius: 50%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.aether-satellite-workspace__ring.ring-outer {
  width: 82%;
  height: 82%;
}

.aether-satellite-workspace__ring.ring-mid {
  border-style: solid;
  border-color: #06b6d494;
  width: 56%;
  height: 56%;
}

.aether-satellite-workspace__ring.ring-inner {
  border-color: #f43f5e73;
  width: 28%;
  height: 28%;
}

.aether-satellite-workspace__core {
  color: #67e8f9;
  background: #07111f;
  border: 2px solid #22d3ee;
  border-radius: 50%;
  place-items: center;
  width: 36px;
  height: 36px;
  font: 900 10px / 1 ui-monospace, monospace;
  display: grid;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.aether-satellite-workspace__shear {
  transform-origin: 0;
  background: linear-gradient(90deg, #f97316, #f9731614);
  width: 44%;
  height: 2px;
  position: absolute;
  top: 50%;
  left: 50%;
}

.aether-satellite-workspace__shear:after {
  content: "";
  border-top: 5px solid #0000;
  border-bottom: 5px solid #0000;
  border-left: 8px solid #f97316;
  position: absolute;
  top: -4px;
  right: -2px;
}

.aether-satellite-workspace__shear span {
  color: #c2410c;
  font: 800 8px / 1 ui-monospace, monospace;
  position: absolute;
  top: 6px;
  right: 2px;
}

.aether-satellite-workspace > .grid > div {
  text-align: left;
  background: #fff;
  border: 1px solid #dbe4ea;
  flex-direction: column;
  gap: 2px;
  padding: 8px;
  display: flex;
}

.aether-satellite-workspace > .grid b {
  color: #101828;
  font: 800 12px / 1.2 ui-monospace, monospace;
}

.aether-satellite-workspace > .grid span, .aether-satellite-workspace > p {
  color: #667085;
  font-size: 9px;
  line-height: 1.5;
}

.aether-report-builder-controls-title {
  z-index: 4;
  -webkit-backdrop-filter: blur(8px);
  backdrop-filter: blur(8px);
  background: #050c18f5;
  border-bottom: 1px solid #1e293b;
  margin: -16px -16px 0;
  padding: 13px 16px 11px;
  position: sticky;
  top: -16px;
}

.aether-report-builder-controls-title span {
  color: #e2e8f0;
  letter-spacing: .06em;
  font-size: 12px;
  font-weight: 800;
  display: block;
}

.aether-report-builder-controls-title small {
  color: #64748b;
  margin-top: 3px;
  font-size: 9px;
  display: block;
}

.aether-report-builder-previewbar {
  background: #08111f;
  border: 1px solid #263244;
  border-bottom: 0;
  border-radius: 8px 8px 0 0;
  flex: none;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  min-height: 46px;
  padding: 8px 10px;
  display: flex;
}

.aether-report-builder-previewbar b {
  color: #e2e8f0;
  font-size: 11px;
  display: block;
}

.aether-report-builder-previewbar div > span:not(.aether-report-builder-previewmeta span) {
  color: #64748b;
  margin-top: 2px;
  font-size: 9px;
  display: block;
}

.aether-report-builder-previewmeta {
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 5px;
  display: flex;
}

.aether-report-builder-previewmeta span {
  color: #94a3b8;
  background: #0f172a;
  border: 1px solid #334155;
  border-radius: 4px;
  padding: 3px 6px;
  font: 700 8px / 1 ui-monospace, monospace;
}

.aether-report-builder-canvasframe {
  border-radius: 0 0 8px 8px !important;
}

@media (min-width: 1440px) {
  .aether-product-workstation {
    width: min(1580px, 96vw) !important;
  }

  .aether-product-settings {
    flex-basis: 390px !important;
    width: 390px !important;
  }

  .aether-report-builder {
    max-width: min(1580px, 96vw) !important;
  }

  .aether-report-builder-body {
    grid-template-columns: minmax(320px, 380px) minmax(0, 1fr) !important;
  }
}

@media (min-width: 1024px) and (max-height: 720px) {
  .aether-satellite-workspace__diagram {
    width: min(24vh, 170px);
  }

  .aether-report-builder-previewbar {
    min-height: 40px;
    padding-top: 6px;
    padding-bottom: 6px;
  }
}

:root {
  --aether-glass: #141416a8;
  --aether-glass-strong: #0c0c0ed1;
  --aether-glass-soft: #f5f5f714;
  --aether-stroke: #ffffff24;
  --aether-stroke-strong: #ffffff40;
  --aether-text: #f5f5f5;
  --aether-muted: #a3a3a3;
  --aether-deep: #09090b;
}

html, body, #root {
  background: #0a0a0b !important;
}

.aether-glass-overlay {
  -webkit-backdrop-filter: blur(18px) saturate(120%);
  background: radial-gradient(circle at 50% 12%, #ffffff0e, #0000 34%), #0000009e;
}

.aether-glass-panel {
  -webkit-backdrop-filter: blur(30px) saturate(135%);
  position: relative;
  border: 1px solid var(--aether-stroke) !important;
  background: linear-gradient(145deg, #232326c2, #0c0c0ed1) !important;
  border-radius: 22px !important;
  box-shadow: inset 0 1px #ffffff29, inset 0 -1px #ffffff09, 0 30px 90px #0000008f, 0 0 34px #ffffff09 !important;
}

.aether-glass-panel:before {
  content: "";
  border-radius: inherit;
  pointer-events: none;
  mix-blend-mode: screen;
  background: radial-gradient(circle at 18% 0, #ffffff1c, #0000 28%), linear-gradient(120deg, #ffffff0a, #0000 28%, #ffffff05 72%, #0000);
  position: absolute;
  inset: 0;
}

.custom-leaflet-popup .leaflet-popup-content-wrapper, .custom-leaflet-popup .leaflet-popup-tip {
  -webkit-backdrop-filter: blur(24px) saturate(130%);
  background: #141416d1 !important;
  border-color: #ffffff21 !important;
}

.storminc-topbar {
  -webkit-backdrop-filter: blur(14px);
  color: #f5f5f5 !important;
  background: linear-gradient(#080809cc, #0808096b 62%, #0000) !important;
}

.storminc-brand b {
  text-shadow: 0 0 22px #ffffff1a !important;
}

.storminc-brand b:after {
  box-shadow: 0 0 16px #ffffff2e;
  background: linear-gradient(90deg, #fff, #8b8b8f) !important;
}

.storminc-brand span {
  color: #9a9a9f !important;
}

.storminc-live-pill, .storminc-ace-chip, .storminc-dock, .storminc-intensity-panel {
  -webkit-backdrop-filter: blur(24px) saturate(135%);
  background: linear-gradient(145deg, #1c1c1fb8, #08080acc) !important;
  border-color: #ffffff24 !important;
  box-shadow: inset 0 1px #ffffff1f, 0 18px 48px #00000061, 0 0 20px #ffffff06 !important;
}

.storminc-live-pill strong, .storminc-icon.active, .storminc-icon.cyan {
  color: #fff !important;
}

.storminc-top-actions button, .storminc-dock button {
  box-shadow: inset 0 1px #ffffff12;
  color: #b8b8bd !important;
  background: #ffffff0b !important;
  border-color: #ffffff1c !important;
}

.storminc-top-actions button:hover, .storminc-dock button:hover {
  box-shadow: 0 0 18px #ffffff12, inset 0 1px #ffffff1f;
  color: #fff !important;
  background: #ffffff17 !important;
  border-color: #ffffff4d !important;
}

.storminc-icon.active, .storminc-icon.cyan {
  background: #ffffff21 !important;
  border-color: #ffffff47 !important;
  box-shadow: 0 0 20px #ffffff12 !important;
}

.storminc-restart {
  color: #111 !important;
  background: #f5f5f5f0 !important;
  border-color: #fff !important;
}

.storminc-terminate {
  color: #f5b7bc !important;
  background: #46141880 !important;
  border-color: #e76b7559 !important;
}

.storminc-panel-title {
  color: #e9e9ea;
  border-left-color: #f5f5f5 !important;
}

.storminc-panel-title span {
  color: #111 !important;
  background: #ffffffe0 !important;
}

.storminc-intensity-panel .dot {
  fill: #fff !important;
}

.control-drawer, [role="dialog"] > .bg-slate-900, .bg-slate-900\/95 {
  -webkit-backdrop-filter: blur(24px) saturate(125%);
}

.icwc-product-workstation {
  background: #f4f4f5f5 !important;
}

.icwc-product-sidebar {
  background: #eeeef0f0 !important;
  border-right-color: #d4d4d8 !important;
}

.icwc-product-tab.active {
  color: #111827 !important;
  background: #fff !important;
  border-color: #a1a1aa !important;
  box-shadow: inset 3px 0 #111827, 0 2px 8px #0000000f !important;
}

.icwc-product-settings input[type="range"] {
  accent-color: #404040 !important;
}

.icwc-product-settings [class*="bg-indigo-"], .icwc-product-settings [class*="bg-violet-"], .icwc-product-settings [class*="bg-fuchsia-"], .icwc-product-settings [class*="bg-cyan-"] {
  background-color: #e4e4e7 !important;
}

.icwc-product-settings [class*="text-indigo-"], .icwc-product-settings [class*="text-violet-"], .icwc-product-settings [class*="text-fuchsia-"], .icwc-product-settings [class*="text-cyan-"] {
  color: #27272a !important;
}

.icwc-product-settings [class*="border-indigo-"], .icwc-product-settings [class*="border-violet-"], .icwc-product-settings [class*="border-fuchsia-"], .icwc-product-settings [class*="border-cyan-"] {
  border-color: #a1a1aa !important;
}

.aether-report-summary-overlay, .aether-report-builder-overlay {
  -webkit-backdrop-filter: blur(20px) saturate(120%) !important;
  background: radial-gradient(circle at 45% 8%, #ffffff0f, #0000 33%), #000000ad !important;
}

.aether-report-summary, .aether-report-builder {
  -webkit-backdrop-filter: blur(30px) saturate(135%) !important;
  background: linear-gradient(145deg, #202023c4, #0c0c0edb) !important;
  border: 1px solid #ffffff24 !important;
  border-radius: 24px !important;
  box-shadow: inset 0 1px #ffffff26, 0 32px 100px #00000094, 0 0 42px #ffffff09 !important;
}

.aether-report-summary-header, .aether-report-builder-header, .aether-report-builder-controls-title, .aether-report-builder-previewbar {
  -webkit-backdrop-filter: blur(24px) !important;
  background: #18181b94 !important;
  border-color: #ffffff1a !important;
}

.aether-report-summary-body [class*="bg-slate-950"], .aether-report-summary-body [class*="bg-slate-900"], .aether-report-builder-body [class*="bg-slate-950"], .aether-report-builder-body [class*="bg-slate-900"] {
  background: #ffffff0b !important;
}

.aether-report-summary-body [class*="border-slate-8"], .aether-report-builder-body [class*="border-slate-8"], .aether-report-builder-body [class*="border-slate-7"] {
  border-color: #ffffff1a !important;
}

.aether-report-builder-controls {
  box-shadow: inset 0 1px #ffffff12;
  background: #ffffff09 !important;
  border-color: #ffffff1a !important;
  border-radius: 18px !important;
}

.aether-report-builder-previewbar {
  border-radius: 16px 16px 0 0 !important;
}

.aether-report-builder-previewmeta span {
  color: #d4d4d8 !important;
  background: #ffffff0d !important;
  border-color: #ffffff1f !important;
}

.aether-report-builder-canvasframe {
  background: #111113 !important;
  border-color: #ffffff1a !important;
}

.station-history-workstation {
  max-width: min(1440px, 96vw) !important;
}

.station-history-header {
  -webkit-backdrop-filter: blur(18px);
  backdrop-filter: blur(18px);
  background: #ffffff09;
  border-bottom: 1px solid #ffffff1a;
}

.station-history-workstation [class*="bg-slate-950"], .station-history-workstation [class*="bg-slate-900"] {
  background: #ffffff0a !important;
}

.station-history-workstation [class*="border-slate-8"], .station-history-workstation [class*="border-slate-7"] {
  border-color: #ffffff1a !important;
}

.station-chart-frame {
  background: #00000038;
  border: 1px solid #ffffff17;
  min-width: 0;
  box-shadow: inset 0 1px #ffffff0b;
}

.station-history-charts > div {
  min-width: 0;
}

@media (max-width: 1050px) {
  .station-history-workstation {
    max-width: 98vw !important;
  }

  .station-history-charts {
    grid-template-columns: 1fr !important;
  }

  .station-chart-frame {
    height: 250px !important;
  }
}

.aether-report-summary button[class*="bg-indigo-"], .aether-report-summary button[class*="bg-violet-"], .aether-report-summary button[class*="bg-fuchsia-"], .aether-report-summary button[class*="bg-cyan-"], .aether-report-builder button[class*="bg-indigo-"], .aether-report-builder button[class*="bg-violet-"], .aether-report-builder button[class*="bg-fuchsia-"], .aether-report-builder button[class*="bg-cyan-"] {
  color: #f5f5f5 !important;
  background: linear-gradient(145deg, #ffffff1f, #ffffff0e) !important;
  border-color: #ffffff2e !important;
  box-shadow: inset 0 1px #ffffff21, 0 0 18px #ffffff09 !important;
}

.aether-report-summary button:hover, .aether-report-builder button:hover {
  border-color: #ffffff52 !important;
  box-shadow: inset 0 1px #ffffff2e, 0 0 24px #ffffff13 !important;
}

.station-history-workstation button[class*="bg-violet-"], .station-history-workstation button[class*="bg-sky-"], .station-history-workstation button[class*="bg-indigo-"] {
  color: #f4f4f5 !important;
  background: linear-gradient(145deg, #ffffff24, #ffffff0e) !important;
  border: 1px solid #ffffff2b !important;
  box-shadow: inset 0 1px #ffffff1f, 0 0 20px #ffffff08 !important;
}

.station-history-workstation button[class*="bg-violet-"]:hover, .station-history-workstation button[class*="bg-sky-"]:hover, .station-history-workstation button[class*="bg-indigo-"]:hover {
  background: #ffffff21 !important;
  border-color: #ffffff4d !important;
}

@media (min-width: 900px) {
  [id^="typhoon-card-collapsed-"] {
    z-index: 1700 !important;
    top: 92px !important;
    left: 30px !important;
  }

  .aether-influence-modal {
    width: min(520px, 100vw - 32px) !important;
  }
}

.aether-track-tooltip.leaflet-tooltip {
  color: #f8fafc !important;
  background: #04070bf5 !important;
  border: 1px solid #e2e8f038 !important;
  border-radius: 3px !important;
  padding: 0 !important;
  box-shadow: 0 10px 28px #00000075 !important;
}

.aether-track-hover {
  gap: 3px;
  min-width: 154px;
  padding: 8px 10px;
  font: 10px / 1.35 JetBrains Mono, monospace;
}

.aether-track-hover b {
  letter-spacing: .055em;
  text-transform: uppercase;
  font-size: 10px;
  color: #fff !important;
}

.aether-track-hover span {
  color: #aeb8c5 !important;
}

.storminc-intensity-chart-wrap {
  position: relative;
}

.storminc-intensity-panel .hover-line {
  stroke: #ffffff42;
  stroke-width: 1px;
  stroke-dasharray: 2 3;
  pointer-events: none;
}

.storminc-intensity-panel .hover-dot {
  fill: #fff;
  stroke: #111827;
  stroke-width: 1.4px;
  pointer-events: none;
}

.storminc-chart-tooltip {
  pointer-events: none;
  color: #aab4c2;
  background: #03060af2;
  border: 1px solid #ffffff2e;
  border-radius: 3px;
  flex-direction: column;
  gap: 1px;
  min-width: 104px;
  padding: 6px 8px;
  font: 9px / 1.35 JetBrains Mono, monospace;
  display: flex;
  position: absolute;
  top: 26px;
  transform: translateX(-50%);
  box-shadow: 0 8px 20px #00000061;
}

.storminc-chart-tooltip strong {
  color: #fff;
  letter-spacing: .06em;
}

.storminc-timeline-expanded {
  background: linear-gradient(145deg, #19191ce8, #05070af5) !important;
  border-color: #ffffff24 !important;
  box-shadow: inset 0 1px #ffffff1a, 0 16px 45px #00000075 !important;
}

.aether-report-summary [class*="text-cyan-"], .aether-report-summary [class*="text-blue-"], .aether-report-summary [class*="text-indigo-"], .aether-report-summary [class*="text-violet-"], .aether-report-summary [class*="text-fuchsia-"], .aether-report-summary [class*="text-emerald-"], .aether-report-summary [class*="text-amber-"], .aether-report-summary [class*="text-orange-"], .aether-report-builder [class*="text-cyan-"], .aether-report-builder [class*="text-blue-"], .aether-report-builder [class*="text-indigo-"], .aether-report-builder [class*="text-violet-"], .aether-report-builder [class*="text-fuchsia-"], .aether-report-builder [class*="text-emerald-"], .aether-report-builder [class*="text-amber-"], .aether-report-builder [class*="text-orange-"] {
  color: #d4d4d8 !important;
}

.aether-report-summary [class*="bg-cyan-"], .aether-report-summary [class*="bg-blue-"], .aether-report-summary [class*="bg-indigo-"], .aether-report-summary [class*="bg-violet-"], .aether-report-summary [class*="bg-fuchsia-"], .aether-report-summary [class*="bg-emerald-"], .aether-report-summary [class*="bg-amber-"], .aether-report-summary [class*="bg-orange-"], .aether-report-builder [class*="bg-cyan-"], .aether-report-builder [class*="bg-blue-"], .aether-report-builder [class*="bg-indigo-"], .aether-report-builder [class*="bg-violet-"], .aether-report-builder [class*="bg-fuchsia-"], .aether-report-builder [class*="bg-emerald-"], .aether-report-builder [class*="bg-amber-"], .aether-report-builder [class*="bg-orange-"] {
  background: #ffffff13 !important;
}

.aether-report-summary [class*="border-cyan-"], .aether-report-summary [class*="border-blue-"], .aether-report-summary [class*="border-indigo-"], .aether-report-summary [class*="border-violet-"], .aether-report-summary [class*="border-fuchsia-"], .aether-report-summary [class*="border-emerald-"], .aether-report-summary [class*="border-amber-"], .aether-report-summary [class*="border-orange-"], .aether-report-builder [class*="border-cyan-"], .aether-report-builder [class*="border-blue-"], .aether-report-builder [class*="border-indigo-"], .aether-report-builder [class*="border-violet-"], .aether-report-builder [class*="border-fuchsia-"], .aether-report-builder [class*="border-emerald-"], .aether-report-builder [class*="border-amber-"], .aether-report-builder [class*="border-orange-"] {
  border-color: #ffffff24 !important;
}

@media (max-width: 899px) {
  .storminc-topbar {
    z-index: 1800;
    color: #fff;
    border-bottom: 1px solid #ffffff17;
    align-items: center;
    height: 62px;
    padding: 0 10px;
    font-family: JetBrains Mono, monospace;
    display: flex;
    position: fixed;
    inset: 0 0 auto;
    background: linear-gradient(#05070af7, #05070ae0) !important;
  }

  .storminc-brand {
    align-items: center;
    min-width: 88px;
    display: flex;
  }

  .storminc-brand b {
    letter-spacing: -.06em;
    font: italic 900 22px / 1 Inter, sans-serif;
  }

  .storminc-brand b:after {
    width: 38px;
    height: 3px;
    margin-top: 5px;
  }

  .storminc-brand span {
    display: none;
  }

  .storminc-top-actions {
    gap: 4px;
    margin-left: auto;
    display: flex;
  }

  .storminc-top-actions button {
    border-radius: 50%;
    place-items: center;
    width: 31px;
    height: 31px;
    display: grid;
  }

  .storminc-top-actions svg {
    width: 14px;
    height: 14px;
  }

  .storminc-live-pill {
    z-index: 1750;
    white-space: nowrap;
    justify-content: center;
    align-items: center;
    gap: 8px;
    min-width: 0;
    padding: 7px 10px;
    font: 9px JetBrains Mono, monospace;
    display: flex;
    position: fixed;
    top: 62px;
    left: 0;
    right: 0;
    overflow: hidden;
    transform: none;
    border: 0 !important;
    border-bottom: 1px solid #ffffff14 !important;
    border-radius: 0 !important;
  }

  .storminc-live-pill i {
    background: #ffffff24;
    flex: none;
    width: 1px;
    height: 10px;
  }

  .storminc-live-pill span, .storminc-live-pill strong {
    text-overflow: ellipsis;
    overflow: hidden;
  }

  .storminc-ace-chip {
    display: none;
  }

  [id^="typhoon-card-portrait-"] {
    z-index: 1500 !important;
    background: linear-gradient(145deg, #181b20e6, #07090df0) !important;
    border: 1px solid #ffffff1f !important;
    border-radius: 14px !important;
    padding: 10px 12px !important;
    top: 98px !important;
    left: 10px !important;
    right: 10px !important;
    box-shadow: 0 12px 34px #00000061 !important;
  }

  [id^="typhoon-card-portrait-"] #typhoon-expanded-details {
    border-radius: 10px !important;
    max-height: min(38vh, 280px) !important;
  }

  [id^="typhoon-card-collapsed-"] {
    max-width: calc(100vw - 20px);
    overflow: hidden;
    z-index: 1650 !important;
    top: 98px !important;
    left: 10px !important;
    right: 10px !important;
  }

  .storminc-intensity-panel {
    display: none !important;
  }

  .storminc-dock {
    left: 8px;
    right: 8px;
    bottom: max(8px,env(safe-area-inset-bottom));
    z-index: 1850;
    border-radius: 14px;
    grid-template-columns: minmax(74px, 1.35fr) repeat(7, minmax(34px, .62fr)) minmax(42px, .78fr);
    gap: 4px;
    min-height: 50px;
    padding: 6px;
    display: grid;
    position: fixed;
    transform: none;
    background: #05070af2 !important;
    overflow: visible !important;
  }

  .storminc-dock .storminc-divider, .storminc-dock .storminc-chip {
    display: none;
  }

  .storminc-dock button {
    border-radius: 8px;
    width: 100%;
    min-width: 0;
    height: 38px;
    padding: 0;
  }

  .storminc-dock .storminc-restart {
    justify-content: center;
    padding: 0 8px;
  }

  .storminc-dock .storminc-restart span {
    font-size: 9px;
  }

  .storminc-dock .storminc-terminate {
    justify-content: center;
    padding: 0;
  }

  .storminc-dock .storminc-terminate span {
    display: none;
  }

  .storminc-timeline-expanded {
    max-height: 44vh;
    overflow-y: auto;
    left: 8px !important;
    right: 8px !important;
    bottom: max(8px,env(safe-area-inset-bottom)) !important;
    gap: 8px !important;
    width: auto !important;
    padding: 10px !important;
    transform: none !important;
  }

  .storminc-timeline-expanded > div:first-child {
    border-bottom: 1px solid #ffffff14;
    border-right: 0 !important;
    padding: 0 0 8px !important;
  }

  .aether-influence-modal {
    border-radius: 16px !important;
    width: calc(100vw - 20px) !important;
    max-height: calc(100dvh - 120px) !important;
    padding: 14px !important;
  }

  .aether-report-summary, .aether-report-builder {
    border-radius: 16px !important;
    width: calc(100vw - 12px) !important;
    max-width: none !important;
    max-height: calc(100dvh - 12px) !important;
  }

  .aether-report-builder-body {
    flex-direction: column !important;
    display: flex !important;
    overflow: auto !important;
  }

  .icwc-product-workstation {
    border-radius: 14px !important;
    width: calc(100vw - 10px) !important;
    height: calc(100dvh - 10px) !important;
  }

  .icwc-product-sidebar {
    flex-basis: 112px !important;
    width: 112px !important;
  }
}

.storminc-forecast-lead-label.leaflet-tooltip {
  text-shadow: 0 1px 3px #000, 0 0 5px #000;
  font: 700 9px / 1 JetBrains Mono, monospace;
  box-shadow: none !important;
  color: #f8fafc !important;
  background: none !important;
  border: 0 !important;
  padding: 0 !important;
}

.storminc-forecast-lead-label.leaflet-tooltip:before {
  display: none !important;
}

@media (max-width: 899px) {
  .legacy-mobile-ui .storminc-topbar {
    background: linear-gradient(#020710fa, #020710c7 78%, #0000) !important;
    border-bottom: 0 !important;
    height: 72px !important;
    padding: 0 12px !important;
  }

  .legacy-mobile-ui .storminc-brand {
    min-width: 96px;
  }

  .legacy-mobile-ui .storminc-brand b {
    font-size: 24px !important;
  }

  .legacy-mobile-ui .storminc-top-actions {
    gap: 8px !important;
  }

  .legacy-mobile-ui .storminc-top-actions button {
    box-shadow: 0 8px 24px #00000047;
    background: #0f1624db !important;
    border: 1px solid #ffffff1a !important;
    border-radius: 999px !important;
    width: 42px !important;
    height: 42px !important;
  }

  .legacy-mobile-ui .storminc-top-actions svg {
    width: 18px !important;
    height: 18px !important;
  }

  .legacy-mobile-ui .storminc-live-pill {
    background: #08101ceb !important;
    border: 1px solid #758ba747 !important;
    border-radius: 12px !important;
    gap: 10px !important;
    min-width: 0 !important;
    padding: 10px 12px !important;
    top: 72px !important;
    left: 8px !important;
    right: 8px !important;
    transform: none !important;
    box-shadow: 0 10px 30px #0000004d !important;
  }

  .legacy-mobile-ui [id^="typhoon-card-portrait-"] {
    background: linear-gradient(145deg, #0a182bf0, #040a16f7) !important;
    border: 1px solid #327eb752 !important;
    border-radius: 18px !important;
    top: 128px !important;
    left: 12px !important;
    right: 12px !important;
  }

  .legacy-mobile-ui [id^="typhoon-card-collapsed-"] {
    max-width: calc(100vw - 24px) !important;
    top: 128px !important;
    left: 12px !important;
    right: 12px !important;
  }

  .legacy-mobile-ui [id^="typhoon-card-"] #btn-portrait-expand, .legacy-mobile-ui [id^="typhoon-card-"] #btn-toggle-details {
    z-index: 3;
    touch-action: manipulation;
    position: relative;
  }

  .legacy-mobile-ui #control-drawer-sidebar {
    background: #040d1cf7 !important;
    border-top: 1px solid #237eb147 !important;
    border-left: 0 !important;
    border-radius: 22px 22px 0 0 !important;
    width: auto !important;
    inset: 106px 0 90px !important;
    transform: translateY(0) !important;
  }

  .legacy-mobile-ui #control-drawer-sidebar.translate-x-full {
    transform: translateY(calc(100% + 24px)) !important;
  }

  .legacy-mobile-ui #control-drawer-tabs {
    background: #020c1cb3 !important;
    border-bottom-color: #3554718c !important;
  }

  .legacy-mobile-ui #control-drawer-tabs button {
    min-width: 66px;
  }

  .legacy-mobile-ui .storminc-dock {
    left: 10px !important;
    right: 10px !important;
    bottom: max(10px,env(safe-area-inset-bottom)) !important;
    background: #03080ff0 !important;
    border: 1px solid #ffffff1a !important;
    border-radius: 18px !important;
    grid-template-columns: 1.45fr repeat(7, .8fr) .8fr !important;
    gap: 6px !important;
    padding: 8px !important;
    display: grid !important;
    transform: none !important;
    box-shadow: 0 12px 34px #0000006b !important;
  }

  .legacy-mobile-ui .storminc-dock button {
    background: #080e18eb !important;
    border: 1px solid #ffffff14 !important;
    border-radius: 10px !important;
    height: 46px !important;
  }

  .legacy-mobile-ui .storminc-timeline-expanded {
    left: 12px !important;
    right: 12px !important;
    bottom: max(88px,calc(env(safe-area-inset-bottom) + 88px)) !important;
    background: #050b14f5 !important;
    border-radius: 18px !important;
    max-height: 40vh !important;
  }
}

@media (max-width: 1100px) {
  .legacy-mobile-ui .storminc-topbar {
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
    background: linear-gradient(#01060efa 0%, #020913e3 72%, #02091300 100%) !important;
    border-bottom: 0 !important;
    align-items: flex-start !important;
    height: 94px !important;
    padding: 0 10px !important;
  }

  .legacy-mobile-ui .storminc-brand {
    min-width: 0 !important;
    max-width: 120px !important;
    display: block !important;
    position: absolute !important;
    top: 18px !important;
    left: 12px !important;
  }

  .legacy-mobile-ui .storminc-brand b {
    letter-spacing: -.055em !important;
    font-size: 23px !important;
    line-height: 1 !important;
  }

  .legacy-mobile-ui .storminc-brand b:after {
    width: 40px !important;
    height: 3px !important;
    margin-top: 6px !important;
  }

  .legacy-mobile-ui .storminc-brand span {
    display: none !important;
  }

  .legacy-mobile-ui .storminc-top-actions {
    grid-template-columns: repeat(3, 38px) !important;
    gap: 5px !important;
    margin: 0 !important;
    display: grid !important;
    position: absolute !important;
    top: 8px !important;
    right: 10px !important;
  }

  .legacy-mobile-ui .storminc-top-actions button {
    -webkit-tap-highlight-color: transparent;
    color: #d6dde7 !important;
    background: #080e18e0 !important;
    border: 1px solid #ffffff1c !important;
    border-radius: 999px !important;
    width: 38px !important;
    height: 38px !important;
    box-shadow: 0 7px 20px #00000052 !important;
  }

  .legacy-mobile-ui .storminc-top-actions button:active {
    background: #ffffff1f !important;
    transform: scale(.94) !important;
  }

  .legacy-mobile-ui .storminc-top-actions svg {
    width: 17px !important;
    height: 17px !important;
  }

  .legacy-mobile-ui .storminc-live-pill {
    white-space: nowrap !important;
    scrollbar-width: none !important;
    background: #070e19e8 !important;
    border: 1px solid #ffffff1b !important;
    border-radius: 13px !important;
    justify-content: flex-start !important;
    gap: 9px !important;
    width: auto !important;
    min-width: 0 !important;
    height: 38px !important;
    padding: 0 11px !important;
    font-size: 9.5px !important;
    top: 94px !important;
    left: 10px !important;
    right: 10px !important;
    overflow: auto hidden !important;
    transform: none !important;
    box-shadow: 0 9px 26px #00000057 !important;
  }

  .legacy-mobile-ui .storminc-live-pill::-webkit-scrollbar {
    display: none;
  }

  .legacy-mobile-ui .storminc-live-pill i {
    flex: none !important;
    height: 12px !important;
  }

  .legacy-mobile-ui .storminc-live-pill span, .legacy-mobile-ui .storminc-live-pill strong {
    flex: none !important;
    overflow: visible !important;
  }

  .legacy-mobile-ui .storminc-ace-chip, .legacy-mobile-ui .storminc-intensity-panel {
    display: none !important;
  }

  .legacy-mobile-ui [id^="typhoon-card-portrait-"] {
    background: linear-gradient(145deg, #081322f0, #030912f7) !important;
    border: 1px solid #64809d3d !important;
    border-radius: 17px !important;
    padding: 10px 11px !important;
    top: 140px !important;
    left: 10px !important;
    right: 10px !important;
    box-shadow: 0 12px 30px #0000004d !important;
  }

  .legacy-mobile-ui [id^="typhoon-card-portrait-"] #typhoon-expanded-details {
    background: #020810c7 !important;
    border-radius: 13px !important;
    max-height: min(36dvh, 260px) !important;
    padding: 10px !important;
  }

  .legacy-mobile-ui [id^="typhoon-card-collapsed-"] {
    max-width: calc(100vw - 20px) !important;
    top: 140px !important;
    left: 10px !important;
    right: 10px !important;
  }

  .legacy-mobile-ui #btn-portrait-expand, .legacy-mobile-ui #btn-toggle-details {
    touch-action: manipulation !important;
    border-radius: 9px !important;
    min-height: 28px !important;
  }

  .legacy-mobile-ui #control-drawer-sidebar {
    top: 94px !important;
    left: 0 !important;
    right: 0 !important;
    bottom: max(76px,calc(env(safe-area-inset-bottom) + 70px)) !important;
    background: #030a14f9 !important;
    border-top: 1px solid #ffffff1a !important;
    border-left: 0 !important;
    border-radius: 20px 20px 0 0 !important;
    width: auto !important;
    transform: translateY(0) !important;
    box-shadow: 0 -12px 34px #00000061 !important;
  }

  .legacy-mobile-ui #control-drawer-sidebar.translate-x-full {
    transform: translateY(calc(100% + 32px)) !important;
  }

  .legacy-mobile-ui #control-drawer-tabs {
    z-index: 4 !important;
    scrollbar-width: none !important;
    background: #040c18f5 !important;
    border-bottom-color: #ffffff14 !important;
    position: sticky !important;
    top: 0 !important;
    overflow-x: auto !important;
  }

  .legacy-mobile-ui #control-drawer-tabs::-webkit-scrollbar {
    display: none;
  }

  .legacy-mobile-ui #control-drawer-tabs button {
    min-width: 72px !important;
    min-height: 44px !important;
  }

  .legacy-mobile-ui .storminc-dock {
    -webkit-overflow-scrolling: touch;
    left: 8px !important;
    right: 8px !important;
    bottom: max(8px,env(safe-area-inset-bottom)) !important;
    scrollbar-width: none !important;
    overscroll-behavior-x: contain !important;
    background: #02070ef0 !important;
    border: 1px solid #ffffff1c !important;
    border-radius: 18px !important;
    grid-template-columns: 78px repeat(8, 44px) !important;
    grid-auto-columns: 44px !important;
    grid-auto-flow: column !important;
    justify-content: start !important;
    gap: 5px !important;
    width: auto !important;
    max-width: none !important;
    padding: 7px !important;
    display: grid !important;
    overflow: auto hidden !important;
    transform: none !important;
    box-shadow: 0 14px 36px #00000070 !important;
  }

  .legacy-mobile-ui .storminc-dock::-webkit-scrollbar {
    display: none;
  }

  .legacy-mobile-ui .storminc-dock .storminc-divider, .legacy-mobile-ui .storminc-dock .storminc-chip {
    display: none !important;
  }

  .legacy-mobile-ui .storminc-dock button {
    -webkit-tap-highlight-color: transparent;
    color: #c4cedb !important;
    background: #090f19f0 !important;
    border: 1px solid #ffffff16 !important;
    border-radius: 12px !important;
    width: 44px !important;
    min-width: 44px !important;
    height: 44px !important;
    padding: 0 !important;
  }

  .legacy-mobile-ui .storminc-dock .storminc-restart {
    gap: 5px !important;
    width: 78px !important;
    min-width: 78px !important;
  }

  .legacy-mobile-ui .storminc-dock .storminc-restart span {
    font-size: 8.5px !important;
    display: inline !important;
  }

  .legacy-mobile-ui .storminc-dock .storminc-terminate span {
    display: none !important;
  }

  .legacy-mobile-ui .storminc-dock button:active {
    transform: scale(.95) !important;
  }

  .legacy-mobile-ui .storminc-timeline-expanded {
    left: 8px !important;
    right: 8px !important;
    bottom: max(72px,calc(env(safe-area-inset-bottom) + 70px)) !important;
    background: #030911f6 !important;
    border-color: #ffffff1a !important;
    border-radius: 18px !important;
    gap: 8px !important;
    width: auto !important;
    max-height: min(48dvh, 420px) !important;
    padding: 10px !important;
    overflow-y: auto !important;
    transform: none !important;
  }

  .legacy-mobile-ui .storminc-timeline-expanded > div:first-child {
    border-bottom: 1px solid #ffffff14 !important;
    border-right: 0 !important;
    padding: 0 0 8px !important;
  }

  .legacy-mobile-ui .aether-influence-modal {
    border-radius: 18px !important;
    width: calc(100vw - 16px) !important;
    max-width: none !important;
    max-height: calc(100dvh - 116px) !important;
  }

  .legacy-mobile-ui .aether-report-summary, .legacy-mobile-ui .aether-report-builder {
    border-radius: 17px !important;
    width: calc(100vw - 10px) !important;
    max-width: none !important;
    max-height: calc(100dvh - 10px) !important;
  }

  .legacy-mobile-ui .icwc-product-workstation {
    border-radius: 15px !important;
    width: calc(100vw - 8px) !important;
    height: calc(100dvh - 8px) !important;
  }
}

@media (max-width: 520px) {
  .legacy-mobile-ui .storminc-brand {
    top: 17px !important;
  }

  .legacy-mobile-ui .storminc-brand b {
    font-size: 21px !important;
  }

  .legacy-mobile-ui .storminc-top-actions {
    grid-template-columns: repeat(3, 35px) !important;
    gap: 4px !important;
  }

  .legacy-mobile-ui .storminc-top-actions button {
    width: 35px !important;
    height: 35px !important;
  }

  .legacy-mobile-ui .storminc-live-pill {
    gap: 8px !important;
    font-size: 9px !important;
  }

  .legacy-mobile-ui [id^="typhoon-card-portrait-"] {
    padding: 9px 10px !important;
  }

  .legacy-mobile-ui .storminc-dock {
    grid-template-columns: 72px repeat(8, 42px) !important;
    grid-auto-columns: 42px !important;
  }

  .legacy-mobile-ui .storminc-dock .storminc-restart {
    width: 72px !important;
    min-width: 72px !important;
  }

  .legacy-mobile-ui .storminc-dock button {
    width: 42px !important;
    min-width: 42px !important;
    height: 42px !important;
  }
}

.theme-default [id^="typhoon-card-"] {
  -webkit-backdrop-filter: blur(10px) saturate(115%) !important;
  background: #18222e61 !important;
  border: 1px solid #e2f0ff3d !important;
  box-shadow: inset 0 1px #ffffff21, 0 12px 32px #00000038 !important;
}

#joystick-wrapper {
  opacity: 1 !important;
  transition: none !important;
}

#joystick-container {
  background: #1e293b4d !important;
  border-color: #e2f0ff47 !important;
}

#joystick-handle {
  background: #3b82f64d !important;
  border: 1px solid #ffffff57 !important;
}

.aether-track-tooltip {
  pointer-events: none !important;
}

.aether-track-hover {
  flex-direction: column;
  gap: 3px;
  font: 11px / 1.35 ui-monospace, monospace;
  display: flex;
}

.aether-track-hover-title {
  color: #fff;
  font-weight: 700;
}

.aether-track-hover-line {
  color: #d5dee8;
}

.leaflet-interactive:focus {
  outline: none;
}

:root {
  --aether-glass: #202022b3;
  --aether-line: #ffffff2b;
  --aether-inner: #3c3c3f80;
}

#root :is([role="dialog"], .control-drawer, [class*="modal-content"], [class*="modal-panel"], [class*="settings-panel"], .storminc-intensity-panel, .storminc-status-card, .storminc-panel, .storminc-joystick-panel), .leaflet-popup-content-wrapper, .leaflet-tooltip, .custom-leaflet-popup .leaflet-popup-content-wrapper {
  background: var(--aether-glass) !important;
  border: 1px solid var(--aether-line) !important;
  color: #f2f2f2 !important;
  -webkit-backdrop-filter: blur(19px) saturate(115%) !important;
  box-shadow: 0 14px 40px #0006, inset 0 1px #ffffff12 !important;
}

#root :is(button, select, input, textarea, [role="button"]):not(.leaflet-control-zoom-in):not(.leaflet-control-zoom-out) {
  border-color: var(--aether-line) !important;
  background-color: var(--aether-inner) !important;
  color: #ededee !important;
}

#root :is(button, select, input, textarea, [role="button"]):hover {
  border-color: #ffffff59 !important;
}

#root :is(button, select, input, textarea, [role="button"]):focus-visible {
  outline-offset: 2px;
  outline: 2px solid #e1e1e1cc;
}

#root :is([role="dialog"], .control-drawer, [class*="modal"], [class*="drawer"]) :is([class*="bg-slate-9"], [class*="bg-blue-9"], [class*="bg-sky-9"], [class*="bg-[#0"], [class*="bg-[#1"]) {
  background-color: #1e1e20b3 !important;
  border-color: #ffffff1f !important;
}

.custom-leaflet-popup .leaflet-popup-tip {
  background: #202022d4 !important;
}

html, body, #root {
  background-color: #171719;
}

.storminc-topbar, .storminc-live-pill, .storminc-top-actions, .storminc-ace-chip, .pro-route-toolbar, .dry-air-toolbar, .storminc-chart-tooltip {
  -webkit-backdrop-filter: blur(16px) saturate(110%);
  background: #202022ad !important;
  border-color: #ffffff2b !important;
}

#root :is(.control-drawer, .aether-influence-modal, .aether-report-summary, .aether-report-builder, .storminc-timeline-expanded, .aether-glass-panel, .storminc-dock, .icwc-preview-modal, .legacy-mobile-ui .storminc-timeline-expanded) {
  -webkit-backdrop-filter: blur(16px) saturate(110%) !important;
  background: #1e1e20bd !important;
  border-color: #ffffff2e !important;
  box-shadow: 0 18px 48px #00000061, inset 0 1px #ffffff0f !important;
}

#root :is(.control-drawer, .storminc-dock, .storminc-timeline-expanded, [role="dialog"]) :is(.bg-\[\#08121f\], .bg-\[\#0b1420\], .bg-\[\#07111F\], .bg-\[\#07111f\], .bg-\[\#0b1020\], .bg-\[\#0a131f\]) {
  background-color: #2d2d2fa6 !important;
  border-color: #ffffff1f !important;
}

#root .storminc-dock button, #root .control-drawer button {
  background-color: #343436a6 !important;
  border-color: #ffffff21 !important;
}

@media (prefers-reduced-transparency: reduce) {
  #root :is([role="dialog"], .control-drawer, .storminc-panel, .storminc-dock), .leaflet-popup-content-wrapper {
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
    background: #29292b !important;
  }
}

#root :is([class*="bg-[#08121f"], [class*="bg-[#0b1420"], [class*="bg-[#07111F"], [class*="bg-[#07111f"], [class*="bg-[#0a0d12"], [class*="bg-[#0a131f"], [class*="bg-[#0b1020"], [class*="bg-[#050a11"], [class*="bg-[#06101d"], [class*="bg-[#0b1320"], [class*="bg-[#07111F"], [class*="bg-[#08121F"]) {
  background-color: #202022d4 !important;
  border-color: #ffffff26 !important;
}

#root [id^="typhoon-card-"] {
  background: #21212363 !important;
  border-color: #ffffff38 !important;
}

#root #joystick-container {
  background: #29292b4d !important;
  border-color: #ffffff3d !important;
}

#root #joystick-handle {
  background: #4e4e514d !important;
  border-color: #ffffff52 !important;
}

.leaflet-popup-content > div {
  background: #202022f0 !important;
  border-color: #ffffff2b !important;
}

#root .icwc-product-workstation {
  color: #ededee !important;
  background: #161618f7 !important;
  border-color: #ffffff26 !important;
}

#root .icwc-product-sidebar {
  color: #ddd !important;
  background: #222224e8 !important;
  border-right-color: #ffffff24 !important;
}

#root .icwc-product-sidebar-title, #root .aether-product-section {
  color: #bdbdc1 !important;
}

#root .icwc-product-tab {
  color: #bdbdc1 !important;
  background: none !important;
  border-color: #0000 !important;
}

#root .icwc-product-settings {
  color: #e4e4e7 !important;
  background: #1f1f21ed !important;
}

#root .icwc-product-settings :is(.text-slate-100, .text-white) {
  color: #eee !important;
}

#root .icwc-product-settings :is(.text-slate-400, .text-slate-500) {
  color: #aaa !important;
}

#root .icwc-product-settings :is([class*="bg-slate-950"], [class*="bg-slate-900"], [class*="bg-slate-800"]) {
  background: #353537ad !important;
}

#root .icwc-product-settings :is([class*="border-slate-8"], [class*="border-slate-7"]) {
  border-color: #ffffff29 !important;
}

#root .aether-product-live-preview > div .text-\[\#667085\], #root .aether-product-live-preview > div .text-\[\#768291\] {
  color: #bcbcc0 !important;
}

#root .aether-satellite-workspace {
  color: #dfdfe1 !important;
}

#root .storminc-live-pill .storminc-phase {
  color: #e9e9eb;
  white-space: nowrap;
  font-weight: 700;
}

.storminc-intensity-panel .aether-chart-playhead {
  stroke: #fff9;
  stroke-width: 1px;
  stroke-dasharray: 3 3;
  pointer-events: none;
}

@media (min-width: 900px) {
  .aether-status-edge-hotspot {
    z-index: 1705;
    align-items: flex-start;
    width: 26px;
    padding-top: 12px;
    display: flex;
    position: fixed;
    top: 82px;
    bottom: 0;
    left: 0;
  }

  #root .aether-status-edge-handle {
    opacity: 0;
    pointer-events: none;
    border-radius: 0 11px 11px 0;
    place-items: center;
    width: 28px;
    height: 58px;
    padding: 0;
    transition: opacity .16s, transform .16s;
    display: grid;
    transform: translateX(-11px);
    box-shadow: 0 8px 28px #0000006b;
    background: #222224b8 !important;
    border: 1px solid #ffffff3d !important;
  }

  .aether-status-edge-hotspot:hover .aether-status-edge-handle, .aether-status-edge-hotspot:focus-within .aether-status-edge-handle {
    opacity: 1;
    pointer-events: auto;
    transform: translateX(0);
  }
}

.aether-map-interacting #root :is(.storminc-topbar, .storminc-live-pill, .storminc-dock, .storminc-intensity-panel, .storminc-ace-chip, [id^="typhoon-card-"], .control-drawer) {
  -webkit-backdrop-filter: none !important;
}

.storminc-intensity-panel .curve {
  filter: none !important;
}

.aether-timeline-scrubbing #root :is(.storminc-topbar, .storminc-live-pill, .storminc-dock, .storminc-timeline-expanded, .storminc-intensity-panel, .storminc-ace-chip, [id^="typhoon-card-"], .control-drawer) {
  -webkit-backdrop-filter: none !important;
}

@media (min-width: 900px) and (max-width: 1380px) {
  .storminc-live-pill {
    gap: 9px;
    padding: 8px 12px;
    font-size: 10px;
  }

  .storminc-live-pill .storminc-phase {
    text-overflow: ellipsis;
    max-width: 82px;
    overflow: hidden;
  }
}

#root .aether-product-workstation {
  color: #e8e8ea !important;
  background: #202023 !important;
  border-color: #414147 !important;
}

#root .aether-product-sidebar {
  background: #28282b !important;
  border-color: #434348 !important;
}

#root .aether-product-sidebar .icwc-product-sidebar-title {
  background: linear-gradient(#2b2b2e 82%, #2b2b2ef5) !important;
  border-color: #45454b !important;
}

#root .aether-product-sidebar .icwc-product-sidebar-title > div {
  color: #f2f2f4 !important;
}

#root .aether-product-sidebar .icwc-product-sidebar-title > span {
  color: #acaeb6 !important;
}

#root .aether-product-section {
  color: #adb0b8 !important;
  border-color: #424249 !important;
}

#root .icwc-product-tab {
  color: #c5c5ca !important;
}

#root .icwc-product-tab:hover {
  color: #fff !important;
  background: #39393e !important;
}

#root .icwc-product-tab.active {
  color: #f7f7f9 !important;
  background: #414246 !important;
  border-color: #63666b !important;
  box-shadow: inset 3px 0 #a7cbd0 !important;
}

#root .aether-product-settings {
  color: #e5e5e8 !important;
  background: #29292c !important;
}

#root .aether-product-settings :is(.text-\[\#475467\], .text-\[\#667085\], .text-\[\#87919e\]) {
  color: #b7bac2 !important;
}

#root .aether-product-settings :is(.text-\[\#344054\], .text-\[\#1d2939\]) {
  color: #f0f1f3 !important;
}

#root .aether-product-settings :is(input, select, textarea) {
  color: #e6e7ea !important;
  border-color: #54545b !important;
}

#root .aether-product-settings :is(input, select, textarea):focus-visible {
  outline-color: #93c9d1 !important;
}

#root .aether-product-settings option {
  color: #f1f1f3 !important;
  background: #28282b !important;
}

#root .aether-product-actions {
  background: linear-gradient(#29292ceb, #29292c 25%) !important;
  border-top: 1px solid #414147 !important;
  box-shadow: 0 -9px 24px #0000003b !important;
}

#root .aether-product-live-preview {
  background: #242427 !important;
  border-color: #414147 !important;
}

#root .aether-product-live-preview > div {
  color: #dddde0 !important;
  background: #29292d !important;
  border-color: #424248 !important;
}

#root .aether-product-live-preview .aether-satellite-workspace {
  color: #e5e6e8 !important;
  background: linear-gradient(160deg, #292e32, #25282b) !important;
  border-color: #475259 !important;
  box-shadow: 0 10px 30px #00000038 !important;
}

#root .aether-product-live-preview .aether-satellite-workspace__head {
  border-color: #464e54 !important;
}

#root .aether-product-live-preview .aether-satellite-workspace__head > span {
  color: #b1e2e9 !important;
  background: #303f43 !important;
  border-color: #5e8b94 !important;
}

#root .aether-product-live-preview .aether-satellite-workspace__diagram {
  background: radial-gradient(circle, #102c32 0 3%, #3a565e 3.5% 10%, #0000 10.5%), repeating-radial-gradient(circle, #7aa9b01a 0 1px, #0000 1px 18px), #1c262b !important;
  border-color: #455960 !important;
}

#root .aether-product-live-preview .aether-satellite-workspace > .grid > div {
  background: #30363a !important;
  border-color: #495359 !important;
}

#root .aether-product-live-preview .aether-satellite-workspace > .grid b {
  color: #eaf0f2 !important;
}

#root .aether-product-live-preview .aether-satellite-workspace > .grid span, #root .aether-product-live-preview .aether-satellite-workspace > p {
  color: #aebac2 !important;
}

#root .aether-product-settings .aether-satellite-synthesis-card {
  color: #e0e5e8 !important;
  background: #303437 !important;
  border-color: #50595e !important;
}

#root .aether-product-settings .aether-satellite-synthesis-card :is(.text-\[\#667085\], .text-\[\#98a2b3\]) {
  color: #b0bac2 !important;
}

#root .aether-product-settings .aether-satellite-synthesis-card .text-cyan-800 {
  color: #a5d4db !important;
}

#root .aether-product-settings .aether-satellite-synthesis-card .bg-white {
  background: #2a2d32 !important;
}

#root .aether-product-live-preview canvas {
  background: #fff !important;
}

@media (max-width: 1023px) {
  #root .aether-product-settings {
    min-width: 0;
    width: 100% !important;
  }

  #root .aether-product-workstation {
    max-height: calc(100dvh - 20px);
  }

  #root .aether-product-sidebar {
    flex-shrink: 0;
  }
}

#root .storminc-dock, #root #simulation-timeline-collapsed {
  box-shadow: none !important;
  -webkit-backdrop-filter: none !important;
  background: none !important;
  border: 0 !important;
  border-radius: 0 !important;
}

#root .storminc-dock .storminc-divider, #root .storminc-dock .storminc-chip {
  display: none !important;
}

#root .storminc-dock button {
  box-shadow: 0 4px 18px #0000005e, inset 0 1px #ffffff1a !important;
}

.leaflet-popup.aether-track-hover-popup .leaflet-popup-content-wrapper {
  background: #1d1e21f5 !important;
  border: 1px solid #ffffff38 !important;
  border-radius: 9px !important;
  padding: 0 !important;
  box-shadow: 0 10px 28px #0000007a !important;
}

.leaflet-popup.aether-track-hover-popup .leaflet-popup-content {
  margin: 0 !important;
}

.leaflet-popup.aether-track-hover-popup .leaflet-popup-tip {
  display: none !important;
}

.leaflet-popup.aether-track-hover-popup .leaflet-popup-content-wrapper, .aether-track-tooltip.leaflet-tooltip {
  -webkit-backdrop-filter: none !important;
  background: #04070bf5 !important;
  border: 1px solid #e2e8f038 !important;
  border-radius: 3px !important;
  box-shadow: 0 10px 28px #00000075 !important;
}

body.aether-mobile-ui {
  --aether-mobile-top: calc(58px + env(safe-area-inset-top, 0px));
  --aether-mobile-status: 38px;
  --aether-mobile-dock: calc(58px + env(safe-area-inset-bottom, 0px));
  --aether-mobile-radius: 18px;
  -webkit-tap-highlight-color: transparent;
}

body.aether-mobile-ui #typhoon-app-container {
  contain: layout paint;
  width: var(--aether-vvw, 100vw) !important;
  height: var(--aether-vvh, 100dvh) !important;
  min-height: 0 !important;
}

body.aether-mobile-ui :is(input, select, textarea) {
  font-size: 16px;
}

body.aether-mobile-ui :is(button, [role="button"], input, select, textarea) {
  -webkit-tap-highlight-color: transparent;
}

body.aether-mobile-ui :is(.storminc-topbar, .storminc-live-pill, .storminc-dock, .storminc-timeline-expanded, .control-drawer, .aether-influence-modal, .aether-glass-panel, .icwc-product-workstation) {
  -webkit-backdrop-filter: none !important;
}

body.aether-mobile-ui .aether-map-interacting :is(.storminc-topbar, .storminc-live-pill, .storminc-dock) {
  box-shadow: none !important;
}

.storminc-mobile-actions {
  display: none;
}

body.aether-mobile-ui .storminc-top-actions-desktop {
  display: none !important;
}

body.aether-mobile-ui .storminc-topbar {
  top: var(--aether-vv-top, 0px) !important;
  left: var(--aether-vv-left, 0px) !important;
  width: var(--aether-vvw, 100vw) !important;
  height: var(--aether-mobile-top) !important;
  padding: env(safe-area-inset-top, 0px) 10px 0 12px !important;
  background: linear-gradient(#04070cf7, #04070ce6) !important;
  border-bottom: 1px solid #ffffff14 !important;
  align-items: center !important;
  display: flex !important;
  box-shadow: 0 8px 24px #0003 !important;
}

body.aether-mobile-ui .storminc-brand {
  max-width: 112px;
  min-width: 0 !important;
  margin: 0 !important;
  position: static !important;
  transform: none !important;
}

body.aether-mobile-ui .storminc-brand b {
  font-size: 22px !important;
  line-height: 1 !important;
}

body.aether-mobile-ui .storminc-brand b:after {
  width: 34px !important;
  height: 2px !important;
  margin-top: 5px !important;
}

body.aether-mobile-ui .storminc-brand span {
  display: none !important;
}

body.aether-mobile-ui .storminc-mobile-actions {
  pointer-events: auto;
  align-items: center;
  gap: 5px;
  margin-left: auto;
  display: flex;
  position: relative;
}

body.aether-mobile-ui .storminc-mobile-actions > button {
  color: #d8dde5 !important;
  background: #10141b !important;
  border: 1px solid #ffffff1a !important;
  border-radius: 13px !important;
  place-items: center !important;
  width: 44px !important;
  min-width: 44px !important;
  height: 44px !important;
  display: grid !important;
  box-shadow: 0 4px 14px #00000040 !important;
}

body.aether-mobile-ui .storminc-mobile-actions > button:active {
  transform: scale(.95);
  background: #181e28 !important;
}

body.aether-mobile-ui .storminc-mobile-actions svg {
  width: 18px !important;
  height: 18px !important;
}

body.aether-mobile-ui .storminc-mobile-more-menu {
  z-index: 60;
  background: #0d1118;
  border: 1px solid #ffffff1f;
  border-radius: 15px;
  width: 188px;
  padding: 6px;
  position: absolute;
  top: 50px;
  right: 0;
  box-shadow: 0 18px 45px #0000007a;
}

body.aether-mobile-ui .storminc-mobile-more-menu button {
  color: #d7dce5 !important;
  width: 100% !important;
  min-height: 44px !important;
  box-shadow: none !important;
  background: none !important;
  border: 0 !important;
  border-radius: 10px !important;
  justify-content: flex-start !important;
  align-items: center !important;
  gap: 10px !important;
  padding: 0 11px !important;
  font-size: 12px !important;
  display: flex !important;
}

body.aether-mobile-ui .storminc-mobile-more-menu button:active {
  background: #1a202a !important;
}

body.aether-mobile-ui .storminc-live-pill {
  scroll-snap-type: x proximity;
  scrollbar-width: none;
  top: calc(var(--aether-vv-top, 0px) + var(--aether-mobile-top)) !important;
  width: auto !important;
  height: var(--aether-mobile-status) !important;
  min-height: var(--aether-mobile-status) !important;
  white-space: nowrap !important;
  background: #0a0e15 !important;
  border: 1px solid #ffffff17 !important;
  border-radius: 11px !important;
  justify-content: flex-start !important;
  gap: 8px !important;
  padding: 0 11px !important;
  font-size: 9.5px !important;
  left: 8px !important;
  right: 8px !important;
  overflow: auto hidden !important;
  box-shadow: 0 6px 18px #00000038 !important;
}

body.aether-mobile-ui .storminc-live-pill::-webkit-scrollbar {
  display: none;
}

body.aether-mobile-ui .storminc-live-pill > * {
  scroll-snap-align: center;
  flex: none;
}

body.aether-mobile-ui .storminc-ace-chip, body.aether-mobile-ui .storminc-intensity-panel {
  display: none !important;
}

body.aether-mobile-ui .storminc-dock, body.aether-mobile-ui #simulation-timeline-collapsed {
  left: 8px !important;
  right: 8px !important;
  bottom: max(8px,env(safe-area-inset-bottom)) !important;
  scroll-snap-type: x mandatory !important;
  overscroll-behavior-x: contain !important;
  scrollbar-width: none !important;
  width: auto !important;
  max-width: none !important;
  min-height: 50px !important;
  box-shadow: none !important;
  background: none !important;
  border: 0 !important;
  justify-content: flex-start !important;
  align-items: center !important;
  gap: 6px !important;
  padding: 2px !important;
  display: flex !important;
  overflow: auto visible !important;
  transform: none !important;
}

body.aether-mobile-ui .storminc-dock::-webkit-scrollbar {
  display: none;
}

body.aether-mobile-ui .storminc-dock button {
  color: #c8d0db !important;
  scroll-snap-align: start !important;
  background: #10141a !important;
  border: 1px solid #ffffff1c !important;
  border-radius: 14px !important;
  flex: 0 0 46px !important;
  width: 46px !important;
  min-width: 46px !important;
  height: 46px !important;
  min-height: 46px !important;
  padding: 0 !important;
  box-shadow: 0 6px 18px #00000057 !important;
}

body.aether-mobile-ui .storminc-dock .storminc-restart {
  color: #111 !important;
  background: #f4f4f5 !important;
  flex-basis: 74px !important;
  justify-content: center !important;
  gap: 5px !important;
  width: 74px !important;
  min-width: 74px !important;
  display: flex !important;
}

body.aether-mobile-ui .storminc-dock .storminc-restart span {
  font-size: 8px !important;
  display: inline !important;
}

body.aether-mobile-ui .storminc-dock .storminc-terminate {
  color: #ffbcc2 !important;
  background: #271316 !important;
}

body.aether-mobile-ui .storminc-dock .storminc-terminate span {
  display: none !important;
}

body.aether-mobile-ui .storminc-dock button:active {
  transform: translateY(1px) scale(.95) !important;
}

body.aether-mobile-ui .storminc-timeline-expanded {
  width: 100% !important;
  max-height: min(58vh,calc(var(--aether-vvh, 100dvh) - var(--aether-mobile-top) - 14px)) !important;
  padding: 20px 12px max(12px,calc(env(safe-area-inset-bottom) + 8px)) !important;
  overscroll-behavior: contain !important;
  background: #080c12 !important;
  border: 1px solid #ffffff1c !important;
  border-bottom: 0 !important;
  border-radius: 22px 22px 0 0 !important;
  gap: 10px !important;
  bottom: 0 !important;
  left: 0 !important;
  right: 0 !important;
  overflow-y: auto !important;
  transform: none !important;
  box-shadow: 0 -18px 45px #00000075 !important;
}

body.aether-mobile-ui .storminc-timeline-expanded:before {
  content: "";
  background: #555d69;
  border-radius: 99px;
  width: 40px;
  height: 4px;
  position: absolute;
  top: 7px;
  left: 50%;
  transform: translateX(-50%);
}

body.aether-mobile-ui .storminc-timeline-expanded > div:first-child {
  border-bottom: 1px solid #ffffff14 !important;
  border-right: 0 !important;
  min-width: 0 !important;
  padding: 0 0 10px !important;
}

body.aether-mobile-ui .storminc-timeline-expanded input[type="range"] {
  height: 28px !important;
  margin: -8px 0 !important;
}

body.aether-mobile-ui .storminc-timeline-expanded input[type="range"]::-webkit-slider-thumb {
  width: 24px;
  height: 24px;
}

body.aether-mobile-ui .storminc-timeline-expanded > div:last-child {
  gap: 7px !important;
}

body.aether-mobile-ui .storminc-timeline-expanded > div:last-child button, body.aether-mobile-ui .storminc-timeline-expanded > div:last-child select {
  min-width: 44px;
  min-height: 44px;
}

body.aether-mobile-ui .storminc-timeline-expanded select {
  font-size: 13px !important;
}

body.aether-mobile-ui #joystick-wrapper {
  left: max(10px,env(safe-area-inset-left)) !important;
  bottom: calc(70px + env(safe-area-inset-bottom)) !important;
  z-index: 1450 !important;
  margin: 0 !important;
}

body.aether-mobile-ui #joystick-container {
  box-shadow: 0 8px 28px #00000047 !important;
}

body.aether-mobile-ui .draw-track-toolbar {
  top: auto !important;
  left: 8px !important;
  right: 8px !important;
  bottom: calc(84px + env(safe-area-inset-bottom)) !important;
  -webkit-backdrop-filter: none !important;
  background: #0c1118 !important;
  border-radius: 16px !important;
  width: auto !important;
  max-width: none !important;
  padding: 10px !important;
}

body.aether-mobile-ui .draw-track-toolbar button {
  min-height: 44px !important;
}

body.aether-mobile-ui .pro-route-toolbar, body.aether-mobile-ui .dry-air-toolbar {
  top: auto !important;
  left: 8px !important;
  right: 8px !important;
  bottom: calc(70px + env(safe-area-inset-bottom)) !important;
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
  background: #0d1118 !important;
  border-radius: 16px !important;
  flex-wrap: wrap !important;
  justify-content: center !important;
  transform: none !important;
}

body.aether-mobile-ui .pro-route-toolbar button, body.aether-mobile-ui .dry-air-toolbar button {
  min-width: 48px !important;
  min-height: 44px !important;
}

.control-drawer-mobile-scrim, .control-drawer-mobile-handle {
  display: none;
}

body.aether-mobile-ui .control-drawer-mobile-scrim {
  z-index: 1490;
  opacity: 0;
  pointer-events: none;
  background: #0000006b;
  transition: opacity .18s;
  display: block;
  position: fixed;
  inset: 0;
}

body.aether-mobile-ui .control-drawer-mobile-scrim.is-open {
  opacity: 1;
  pointer-events: auto;
}

body.aether-mobile-ui #control-drawer-sidebar {
  contain: layout paint;
  left: 0 !important;
  right: 0 !important;
  top: max(calc(48px + env(safe-area-inset-top)),calc(var(--aether-vv-top, 0px) + 48px)) !important;
  width: 100% !important;
  height: auto !important;
  max-height: calc(var(--aether-vvh, 100dvh) - 48px) !important;
  padding-top: 0 !important;
  padding-bottom: env(safe-area-inset-bottom, 0px) !important;
  background: #080d14 !important;
  border-top: 1px solid #ffffff1a !important;
  border-left: 0 !important;
  border-radius: 22px 22px 0 0 !important;
  bottom: 0 !important;
  box-shadow: 0 -18px 50px #0000007a !important;
}

body.aether-mobile-ui #control-drawer-sidebar.translate-x-0 {
  transform: translateY(var(--drawer-drag-y, 0px)) !important;
}

body.aether-mobile-ui #control-drawer-sidebar.translate-x-full {
  transform: translateY(calc(100% + 32px)) !important;
}

body.aether-mobile-ui .control-drawer-mobile-handle {
  touch-action: none;
  cursor: grab;
  flex: 0 0 22px;
  justify-content: center;
  align-items: center;
  height: 22px;
  display: flex;
}

body.aether-mobile-ui .control-drawer-mobile-handle span {
  background: #4f5864;
  border-radius: 99px;
  width: 42px;
  height: 4px;
}

body.aether-mobile-ui .control-drawer-header {
  min-height: 54px;
  padding: 8px 12px 10px !important;
}

body.aether-mobile-ui .control-drawer-header #btn-close-drawer {
  place-items: center;
  width: 44px;
  height: 44px;
  display: grid;
}

body.aether-mobile-ui #control-drawer-tabs {
  scroll-snap-type: x proximity;
  overscroll-behavior-x: contain;
  gap: 4px;
  min-height: 58px;
  padding: 4px 6px 6px;
  touch-action: pan-x !important;
  scrollbar-width: none !important;
  background: #0a0f17 !important;
  overflow: auto hidden !important;
}

body.aether-mobile-ui #control-drawer-tabs::-webkit-scrollbar {
  display: none;
}

body.aether-mobile-ui #control-drawer-tabs button {
  scroll-snap-align: center;
  border-bottom-width: 0 !important;
  border-radius: 11px !important;
  gap: 3px !important;
  width: 74px !important;
  min-width: 74px !important;
  min-height: 50px !important;
  padding: 6px 5px !important;
  font-size: 10px !important;
}

body.aether-mobile-ui #control-drawer-tabs button[id^="tab-select-"][class*="border-zinc-100"] {
  box-shadow: inset 0 0 0 1px #ffffff21;
  background: #202630 !important;
}

body.aether-mobile-ui #control-drawer-sidebar > .flex-1 {
  overscroll-behavior: contain;
  padding: 12px !important;
  padding-bottom: calc(20px + env(safe-area-inset-bottom)) !important;
}

body.aether-mobile-ui #control-drawer-sidebar :is(button, select, input[type="text"], input[type="number"], input[type="date"], input[type="time"]) {
  min-height: 44px;
}

body.aether-mobile-ui #control-drawer-sidebar input[type="range"] {
  min-height: 32px;
}

body.aether-mobile-ui #control-drawer-sidebar .grid.grid-cols-4 {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}

body.aether-mobile-ui .aether-influence-overlay {
  background: #0000007a !important;
  align-items: flex-end !important;
  padding: 0 !important;
  overflow: hidden !important;
}

body.aether-mobile-ui .aether-influence-modal {
  width: 100% !important;
  max-width: none !important;
  max-height: min(82vh,calc(var(--aether-vvh, 100dvh) - 28px)) !important;
  padding: 18px 12px max(16px,calc(env(safe-area-inset-bottom) + 10px)) !important;
  background: #090e15 !important;
  border-bottom: 0 !important;
  border-radius: 22px 22px 0 0 !important;
  margin: 0 !important;
  box-shadow: 0 -18px 50px #0000007a !important;
}

body.aether-mobile-ui .aether-influence-modal:before {
  content: "";
  background: #4d5661;
  border-radius: 99px;
  width: 40px;
  height: 4px;
  margin: -9px auto 12px;
  display: block;
}

body.aether-mobile-ui .aether-influence-modal button {
  min-height: 48px;
}

body.aether-mobile-ui .termination-dialog-overlay {
  align-items: flex-end !important;
  padding: 0 !important;
}

body.aether-mobile-ui .termination-dialog-panel {
  max-width: none !important;
  padding: 16px 12px max(16px,calc(env(safe-area-inset-bottom) + 10px)) !important;
  border-bottom: 0 !important;
  border-radius: 22px 22px 0 0 !important;
}

body.aether-mobile-ui .termination-dialog-panel button {
  min-height: 48px;
}

body.aether-mobile-ui .forecast-product-overlay {
  background: #202023 !important;
  align-items: stretch !important;
  padding: 0 !important;
}

body.aether-mobile-ui .icwc-product-workstation, body.aether-mobile-ui .aether-product-workstation {
  width: 100% !important;
  height: var(--aether-vvh, 100dvh) !important;
  border: 0 !important;
  border-radius: 0 !important;
  flex-direction: column !important;
  max-height: none !important;
  animation: none !important;
}

body.aether-mobile-ui .icwc-product-sidebar, body.aether-mobile-ui .aether-product-sidebar {
  scroll-snap-type: x proximity;
  overscroll-behavior-x: contain;
  scrollbar-width: none;
  min-height: 58px;
  width: 100% !important;
  padding: max(6px,env(safe-area-inset-top)) 8px 7px !important;
  background: #252528 !important;
  border-bottom: 1px solid #45454b !important;
  border-right: 0 !important;
  flex: none !important;
  align-items: center !important;
  gap: 5px !important;
  display: flex !important;
  overflow: auto hidden !important;
}

body.aether-mobile-ui .icwc-product-sidebar::-webkit-scrollbar {
  display: none;
}

body.aether-mobile-ui .icwc-product-sidebar-title, body.aether-mobile-ui .aether-product-section {
  display: none !important;
}

body.aether-mobile-ui .icwc-product-tab {
  white-space: nowrap;
  scroll-snap-align: center;
  text-align: center !important;
  color: #c6c7cc !important;
  background: #303034 !important;
  border: 1px solid #46464b !important;
  border-radius: 12px !important;
  flex: none !important;
  width: auto !important;
  min-width: 118px !important;
  min-height: 44px !important;
  margin: 0 !important;
  padding: 0 12px !important;
}

body.aether-mobile-ui .icwc-product-tab.active {
  color: #fff !important;
  background: #3a3b3f !important;
  border-color: #697075 !important;
  box-shadow: inset 0 -2px #bfd7dc !important;
}

body.aether-mobile-ui .aether-product-live-preview {
  display: none !important;
}

body.aether-mobile-ui .icwc-product-settings, body.aether-mobile-ui .aether-product-settings {
  overscroll-behavior: contain;
  width: 100% !important;
  min-width: 0 !important;
  padding: 14px 12px calc(18px + env(safe-area-inset-bottom)) !important;
  background: #29292c !important;
  flex: auto !important;
  overflow-y: auto !important;
}

body.aether-mobile-ui .aether-product-settings > div:first-child > div:first-child {
  z-index: 12;
  background: #29292c;
  border-bottom: 1px solid #44444a;
  position: sticky;
  top: -14px;
  margin: -14px -12px 12px !important;
  padding: 10px 12px !important;
}

body.aether-mobile-ui .aether-product-settings button, body.aether-mobile-ui .aether-product-settings select, body.aether-mobile-ui .aether-product-settings input:not([type="range"]) {
  min-height: 44px;
}

body.aether-mobile-ui .aether-product-settings input[type="range"] {
  min-height: 32px;
}

body.aether-mobile-ui .aether-product-actions {
  padding: 10px 12px max(12px,calc(env(safe-area-inset-bottom) + 8px)) !important;
  background: #29292c !important;
  margin-left: -12px !important;
  margin-right: -12px !important;
  box-shadow: 0 -8px 18px #00000042 !important;
}

body.aether-mobile-ui #disclaimer-dialog {
  align-self: flex-end;
  max-width: none !important;
  padding: 18px 14px max(16px,calc(env(safe-area-inset-bottom) + 10px)) !important;
  border-radius: 22px 22px 0 0 !important;
}

body.aether-mobile-ui #disclaimer-dialog button {
  min-height: 48px;
}

body.aether-mobile-ui .station-ranking-page {
  height: var(--aether-vvh, 100dvh) !important;
  padding-top: env(safe-area-inset-top) !important;
  padding-bottom: env(safe-area-inset-bottom) !important;
}

body.aether-mobile-ui .station-ranking-page button, body.aether-mobile-ui .station-ranking-page select, body.aether-mobile-ui .station-ranking-page input {
  min-height: 44px;
}

body.aether-mobile-ui :is(.aether-report-summary-overlay, .aether-report-builder-overlay, .aether-glass-overlay, .aircraft-recon-overlay, .aether-terms-overlay) {
  -webkit-backdrop-filter: none !important;
  background: #070a0f !important;
  align-items: stretch !important;
  padding: 0 !important;
}

body.aether-mobile-ui :is(.aether-report-summary, .aether-report-builder, .station-history-workstation, .aircraft-recon-panel, .aether-terms-panel) {
  width: 100% !important;
  height: var(--aether-vvh, 100dvh) !important;
  max-width: none !important;
  max-height: none !important;
  box-shadow: none !important;
  border-left: 0 !important;
  border-right: 0 !important;
  border-radius: 0 !important;
  margin: 0 !important;
}

body.aether-mobile-ui :is(.aether-report-summary-header, .aether-report-builder-header, .station-history-header) {
  z-index: 15;
  position: sticky;
  top: 0;
  padding-top: max(10px,env(safe-area-inset-top)) !important;
}

body.aether-mobile-ui .aether-report-summary-body {
  padding: 12px !important;
}

body.aether-mobile-ui .aether-report-builder-body {
  gap: 12px !important;
  padding: 10px !important;
}

body.aether-mobile-ui .aether-report-builder-controls {
  padding: 12px !important;
}

body.aether-mobile-ui .aether-report-builder-canvasframe {
  min-height: 260px !important;
}

body.aether-mobile-ui .station-history-workstation > .flex-1 {
  gap: 12px !important;
  padding: 12px !important;
}

body.aether-mobile-ui .station-history-workstation .grid.grid-cols-2.md\:grid-cols-3 {
  gap: 8px !important;
}

body.aether-mobile-ui .station-history-workstation .grid.grid-cols-2.md\:grid-cols-3 > div {
  gap: 9px !important;
  padding: 10px !important;
}

body.aether-mobile-ui .station-chart-frame {
  height: 220px !important;
  padding: 6px !important;
}

body.aether-mobile-ui .station-history-charts {
  gap: 10px !important;
}

body.aether-mobile-ui .aircraft-recon-panel header {
  padding: max(10px,env(safe-area-inset-top)) 12px 10px !important;
}

body.aether-mobile-ui .aircraft-recon-panel :is(button, select, input) {
  min-height: 44px;
}

body.aether-mobile-ui .video-export-workstation {
  height: var(--aether-vvh, 100dvh) !important;
  padding-top: env(safe-area-inset-top) !important;
  padding-bottom: env(safe-area-inset-bottom) !important;
}

body.aether-mobile-ui .video-export-workstation :is(button, select, input:not([type="range"])) {
  min-height: 44px;
}

body.aether-mobile-ui .aether-terms-panel > div:last-child {
  position: sticky;
  bottom: 0;
  padding-bottom: max(14px,calc(env(safe-area-inset-bottom) + 10px)) !important;
}

body.aether-mobile-ui .leaflet-popup-content-wrapper {
  max-width: calc(100vw - 24px) !important;
}

body.aether-mobile-ui .aether-track-hover {
  max-width: calc(100vw - 54px);
  min-width: 0 !important;
  font-size: 12px !important;
  line-height: 1.45 !important;
}

body.aether-mobile-ui .leaflet-control-attribution {
  white-space: nowrap;
  text-overflow: ellipsis;
  max-width: 72vw;
  font-size: 8px;
  overflow: hidden;
}

body.aether-mobile-ui .leaflet-control a {
  min-width: 42px;
  min-height: 42px;
  line-height: 42px;
}

body.aether-mobile-ui #toast-stack {
  left: 8px !important;
  right: 8px !important;
  bottom: calc(72px + env(safe-area-inset-bottom) + var(--aether-keyboard, 0px)) !important;
  width: auto !important;
  max-width: none !important;
  transform: none !important;
}

body.aether-mobile-ui.aether-keyboard-open .storminc-live-pill, body.aether-mobile-ui.aether-keyboard-open .storminc-dock, body.aether-mobile-ui.aether-keyboard-open #joystick-wrapper {
  opacity: 0 !important;
  pointer-events: none !important;
}

body.aether-mobile-ui.aether-mobile-landscape {
  --aether-mobile-top: calc(48px + env(safe-area-inset-top, 0px));
  --aether-mobile-status: 32px;
}

body.aether-mobile-ui.aether-mobile-landscape .storminc-brand b {
  font-size: 19px !important;
}

body.aether-mobile-ui.aether-mobile-landscape .storminc-mobile-actions > button {
  width: 40px !important;
  min-width: 40px !important;
  height: 40px !important;
}

body.aether-mobile-ui.aether-mobile-landscape .storminc-live-pill {
  left: 118px !important;
  right: 194px !important;
  top: calc(var(--aether-vv-top, 0px) + 8px + env(safe-area-inset-top)) !important;
  height: 34px !important;
}

body.aether-mobile-ui.aether-mobile-landscape #joystick-wrapper {
  bottom: 66px !important;
}

body.aether-mobile-ui.aether-mobile-landscape .storminc-timeline-expanded {
  max-height: 78vh !important;
}

body.aether-mobile-ui.aether-mobile-landscape #control-drawer-sidebar {
  max-height: calc(var(--aether-vvh, 100dvh) - 36px) !important;
  top: 36px !important;
}

body.aether-mobile-ui.aether-mobile-landscape .aether-influence-modal {
  max-height: 92vh !important;
}

@media (max-width: 390px) {
  body.aether-mobile-ui .storminc-mobile-actions {
    gap: 3px;
  }

  body.aether-mobile-ui .storminc-mobile-actions > button {
    border-radius: 12px !important;
    width: 41px !important;
    min-width: 41px !important;
    height: 41px !important;
  }

  body.aether-mobile-ui .storminc-brand {
    max-width: 92px;
  }

  body.aether-mobile-ui .storminc-brand b {
    font-size: 20px !important;
  }

  body.aether-mobile-ui #control-drawer-tabs button {
    width: 68px !important;
    min-width: 68px !important;
  }

  body.aether-mobile-ui .icwc-product-tab {
    min-width: 108px !important;
  }
}

body.aether-mobile-ui {
  --aether-mobile-header-h: 58px;
  --aether-mobile-status-h: 38px;
  --aether-mobile-edge: 10px;
  overscroll-behavior: none;
  background: #07090d;
}

body.aether-mobile-ui .aether-mobile-root {
  width: var(--aether-vvw, 100vw) !important;
  height: var(--aether-vvh, 100dvh) !important;
  background: #07090d !important;
  min-height: 0 !important;
  overflow: hidden !important;
}

body.aether-mobile-ui .aether-mobile-header {
  z-index: 2400;
  left: var(--aether-vv-left, 0px);
  top: var(--aether-vv-top, 0px);
  width: var(--aether-vvw, 100vw);
  height: calc(var(--aether-mobile-header-h) + env(safe-area-inset-top, 0px));
  padding: env(safe-area-inset-top, 0px) 10px 0 14px;
  pointer-events: auto;
  background: linear-gradient(#07090dfa, #07090df0);
  border-bottom: 1px solid #94a3b829;
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  display: flex;
  position: fixed;
  box-shadow: 0 8px 24px #00000038;
}

body.aether-mobile-ui .aether-mobile-brand {
  flex-direction: column;
  justify-content: center;
  min-width: 0;
  display: flex;
}

body.aether-mobile-ui .aether-mobile-brand b {
  letter-spacing: -.055em;
  color: #f7f8fa;
  font: italic 800 23px / 1 Inter, ui-sans-serif, system-ui, sans-serif;
}

body.aether-mobile-ui .aether-mobile-brand span {
  letter-spacing: .18em;
  color: #657080;
  white-space: nowrap;
  margin-top: 5px;
  font: 700 7px / 1 JetBrains Mono, ui-monospace, monospace;
}

body.aether-mobile-ui .aether-mobile-header-actions {
  flex: none;
  align-items: center;
  gap: 6px;
  display: flex;
}

body.aether-mobile-ui .aether-mobile-header-actions > button, body.aether-mobile-ui .aether-mobile-overflow button, body.aether-mobile-ui .aether-mobile-timeline button, body.aether-mobile-ui .aether-mobile-transport button {
  -webkit-tap-highlight-color: transparent;
  touch-action: manipulation;
}

body.aether-mobile-ui .aether-mobile-header-actions > button {
  color: #d7dde6;
  background: #11151b;
  border: 1px solid #94a3b838;
  border-radius: 12px;
  place-items: center;
  width: 44px;
  min-width: 44px;
  height: 44px;
  display: grid;
  box-shadow: inset 0 1px #ffffff09;
}

body.aether-mobile-ui .aether-mobile-header-actions > button.active {
  color: #ecfeff;
  background: linear-gradient(#0c4a6eb8, #0c121cfa);
  border-color: #38bdf87a;
}

body.aether-mobile-ui .aether-mobile-header-actions > button:active {
  background: #171c24;
  transform: scale(.96);
}

body.aether-mobile-ui .aether-mobile-header-actions svg {
  stroke-width: 1.8px;
  width: 19px;
  height: 19px;
}

body.aether-mobile-ui .aether-mobile-overflow {
  right: 10px;
  top: calc(env(safe-area-inset-top, 0px) + 52px);
  background: #10141a;
  border: 1px solid #94a3b838;
  border-radius: 14px;
  width: 190px;
  padding: 6px;
  position: absolute;
  box-shadow: 0 16px 40px #00000070;
}

body.aether-mobile-ui .aether-mobile-overflow button {
  color: #d2d8e1;
  text-align: left;
  background: none;
  border: 0;
  border-radius: 9px;
  align-items: center;
  gap: 10px;
  width: 100%;
  min-height: 44px;
  padding: 0 10px;
  font: 600 12px / 1.2 ui-sans-serif, system-ui, sans-serif;
  display: flex;
}

body.aether-mobile-ui .aether-mobile-overflow button:active {
  background: #1b2028;
}

body.aether-mobile-ui .aether-mobile-overflow svg {
  color: #8793a2;
  width: 17px;
  height: 17px;
}

body.aether-mobile-ui .aether-mobile-statusrail {
  z-index: 2310;
  left: var(--aether-vv-left, 0px);
  top: calc(var(--aether-vv-top, 0px) + env(safe-area-inset-top, 0px) + var(--aether-mobile-header-h));
  width: var(--aether-vvw, 100vw);
  height: var(--aether-mobile-status-h);
  scrollbar-width: none;
  white-space: nowrap;
  color: #aeb7c4;
  pointer-events: auto;
  background: #0a0d12ed;
  border-bottom: 1px solid #94a3b821;
  align-items: center;
  gap: 8px;
  padding: 0 12px;
  font: 650 10px / 1 JetBrains Mono, ui-monospace, monospace;
  display: flex;
  position: fixed;
  overflow: auto hidden;
}

body.aether-mobile-ui .aether-mobile-statusrail::-webkit-scrollbar {
  display: none;
}

body.aether-mobile-ui .aether-mobile-statusrail i {
  background: #343b46;
  flex: 0 0 1px;
  width: 1px;
  height: 14px;
}

body.aether-mobile-ui .aether-mobile-statusrail strong {
  color: #eff2f5;
  font-weight: 800;
}

body.aether-mobile-ui .aether-mobile-status-time {
  color: #eef2f6;
}

body.aether-mobile-ui .aether-mobile-status-phase {
  color: #b9c4d1;
}

body.aether-mobile-ui .aether-mobile-transport {
  z-index: 2380;
  left: calc(var(--aether-vv-left, 0px) + 50%);
  bottom: max(10px,env(safe-area-inset-bottom, 0px));
  background: #090c11f0;
  border: 1px solid #94a3b833;
  border-radius: 17px;
  grid-template-columns: repeat(4, 52px);
  gap: 4px;
  height: 56px;
  padding: 4px;
  display: grid;
  position: fixed;
  transform: translateX(-50%);
  box-shadow: 0 14px 42px #0006;
}

body.aether-mobile-ui .aether-mobile-transport button {
  color: #b7c0cc;
  background: none;
  border: 0;
  border-radius: 12px;
  place-items: center;
  min-width: 48px;
  min-height: 48px;
  display: grid;
}

body.aether-mobile-ui .aether-mobile-transport button.primary {
  color: #101318;
  background: #e8edf2;
}

body.aether-mobile-ui .aether-mobile-transport button:active:not(:disabled) {
  background: #1b2028;
  transform: scale(.95);
}

body.aether-mobile-ui .aether-mobile-transport button.primary:active {
  background: #d7dde4;
}

body.aether-mobile-ui .aether-mobile-transport button:disabled {
  opacity: .28;
}

body.aether-mobile-ui .aether-mobile-timeline {
  z-index: 2450;
  left: calc(var(--aether-vv-left, 0px) + 8px);
  right: 8px;
  bottom: max(8px,env(safe-area-inset-bottom, 0px));
  max-height: min(330px,calc(var(--aether-vvh, 100dvh) - 122px));
  color: #e7ebef;
  background: #0b0e13;
  border: 1px solid #94a3b838;
  border-radius: 20px;
  flex-direction: column;
  gap: 10px;
  padding: 14px 12px 12px;
  display: flex;
  position: fixed;
  box-shadow: 0 18px 52px #0000007a;
}

body.aether-mobile-ui .aether-mobile-timeline-head {
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  display: flex;
}

body.aether-mobile-ui .aether-mobile-timeline-head > div {
  flex-direction: column;
  gap: 4px;
  min-width: 0;
  display: flex;
}

body.aether-mobile-ui .aether-mobile-timeline-head span {
  color: #677281;
  letter-spacing: .15em;
  font: 750 8px / 1 JetBrains Mono, monospace;
}

body.aether-mobile-ui .aether-mobile-timeline-head strong {
  color: #f1f3f5;
  font: 750 14px / 1 JetBrains Mono, monospace;
}

body.aether-mobile-ui .aether-mobile-timeline-head button {
  color: #aeb7c3;
  background: #12161c;
  border: 1px solid #252b35;
  border-radius: 10px;
  width: 38px;
  height: 38px;
}

body.aether-mobile-ui .aether-mobile-seekrow {
  color: #6f7a88;
  grid-template-columns: 28px 1fr 36px;
  align-items: center;
  gap: 8px;
  font: 700 9px / 1 JetBrains Mono, monospace;
  display: grid;
}

body.aether-mobile-ui .aether-mobile-seekrow input[type="range"] {
  accent-color: #d8dee6;
  width: 100%;
  height: 30px;
  margin: 0;
}

body.aether-mobile-ui .aether-mobile-seekrow input[type="range"]::-webkit-slider-thumb {
  width: 22px;
  height: 22px;
}

body.aether-mobile-ui .aether-mobile-timeline-meta {
  color: #66717f;
  justify-content: space-between;
  align-items: center;
  margin-top: -4px;
  font: 650 9px / 1 JetBrains Mono, monospace;
  display: flex;
}

body.aether-mobile-ui .aether-mobile-timeline-meta b {
  color: #cfd6de;
}

body.aether-mobile-ui .aether-mobile-timeline-actions {
  grid-template-columns: 1fr 1.35fr 1fr 1.1fr;
  gap: 6px;
  display: grid;
}

body.aether-mobile-ui .aether-mobile-timeline-actions button, body.aether-mobile-ui .aether-mobile-timeline-tools button, body.aether-mobile-ui .aether-mobile-speed {
  color: #aab4c0;
  background: #11151b;
  border: 1px solid #252b35;
  border-radius: 11px;
  justify-content: center;
  align-items: center;
  gap: 5px;
  min-height: 46px;
  font: 700 10px / 1 ui-sans-serif, system-ui, sans-serif;
  display: flex;
}

body.aether-mobile-ui .aether-mobile-timeline-actions button.primary {
  color: #0f1217;
  background: #e7ebef;
  border-color: #e7ebef;
}

body.aether-mobile-ui .aether-mobile-timeline-actions svg, body.aether-mobile-ui .aether-mobile-timeline-tools svg {
  width: 16px;
  height: 16px;
}

body.aether-mobile-ui .aether-mobile-speed {
  flex-direction: column;
  gap: 2px;
  padding: 0 6px;
}

body.aether-mobile-ui .aether-mobile-speed span {
  color: #697482;
  font-size: 8px;
}

body.aether-mobile-ui .aether-mobile-speed select {
  color: #e4e8ed;
  background: none;
  border: 0;
  width: auto;
  padding: 0;
  font: 700 11px / 1 JetBrains Mono, monospace;
  min-height: 20px !important;
}

body.aether-mobile-ui .aether-mobile-timeline-tools {
  grid-template-columns: repeat(5, 1fr);
  gap: 5px;
  display: grid;
}

body.aether-mobile-ui .aether-mobile-timeline-tools button {
  flex-direction: column;
  gap: 3px;
  min-width: 0;
  padding: 0 4px;
  font-size: 9px;
}

body.aether-mobile-ui .aether-mobile-timeline-tools button.active {
  color: #ebfbff;
  background: #10202f;
  border-color: #2b7dab;
}

body.aether-mobile-ui .aether-mobile-timeline-tools button.danger {
  color: #f6b5bb;
  background: #1b1114;
  border-color: #4e242a;
}

body.aether-mobile-ui .aether-mobile-timeline-tools button.report {
  color: #b9d8ff;
  background: #101722;
  border-color: #243a55;
}

body.aether-mobile-ui #joystick-wrapper {
  transform-origin: 0 100%;
  transform: scale(.88);
  left: max(12px,env(safe-area-inset-left, 0px)) !important;
  bottom: 82px !important;
}

body.aether-mobile-ui:has(.aether-mobile-timeline) #joystick-wrapper {
  opacity: 0 !important;
  pointer-events: none !important;
}

body.aether-mobile-ui .draw-track-toolbar, body.aether-mobile-ui .pro-route-toolbar, body.aether-mobile-ui .dry-air-toolbar {
  width: auto !important;
  max-width: none !important;
  inset: auto 10px 82px !important;
  transform: none !important;
}

body.aether-mobile-ui .aether-mobile-drawer-scrim {
  display: none !important;
}

body.aether-mobile-ui #control-drawer-sidebar.aether-mobile-drawer {
  grid-template-rows: calc(58px + env(safe-area-inset-top, 0px)) 58px minmax(0,1fr);
  color: #eef1f4;
  opacity: 1;
  z-index: 5200 !important;
  left: var(--aether-vv-left, 0px) !important;
  right: auto !important;
  top: var(--aether-vv-top, 0px) !important;
  width: var(--aether-vvw, 100vw) !important;
  height: var(--aether-vvh, 100dvh) !important;
  max-width: none !important;
  max-height: none !important;
  box-shadow: none !important;
  -webkit-backdrop-filter: none !important;
  background: #0b0d11 !important;
  border: 0 !important;
  padding: 0 !important;
  transition: transform .24s cubic-bezier(.2, .75, .2, 1), opacity .18s !important;
  display: grid !important;
  position: fixed !important;
  bottom: auto !important;
  transform: translateX(0) !important;
}

body.aether-mobile-ui #control-drawer-sidebar.aether-mobile-drawer.translate-x-full {
  opacity: .4;
  pointer-events: none;
  transform: translateX(100%) !important;
}

body.aether-mobile-ui .aether-mobile-drawer-header {
  background: #0d1015;
  border-bottom: 1px solid #232833;
  justify-content: space-between;
  align-items: center;
  display: flex;
  min-height: 0 !important;
  padding: env(safe-area-inset-top, 0px) 12px 0 14px !important;
}

body.aether-mobile-ui .aether-mobile-drawer-header > div {
  align-items: center;
  gap: 9px;
  display: flex;
}

body.aether-mobile-ui .aether-mobile-drawer-header h2 {
  color: #f0f3f6;
  letter-spacing: .03em !important;
  font-size: 15px !important;
}

body.aether-mobile-ui .aether-mobile-drawer-header p {
  letter-spacing: .11em;
  color: #606b79 !important;
}

body.aether-mobile-ui .aether-mobile-drawer-header #btn-close-drawer {
  background: #13171d;
  border: 1px solid #282e38;
  border-radius: 11px;
  place-items: center;
  display: grid;
  width: 42px !important;
  height: 42px !important;
  padding: 0 !important;
}

body.aether-mobile-ui .aether-mobile-drawer-tabs {
  overscroll-behavior-x: contain;
  scroll-snap-type: x proximity;
  scrollbar-width: none;
  background: #0f1217;
  border-bottom: 1px solid #222731;
  align-items: center;
  gap: 6px;
  min-width: 0;
  padding: 7px 10px;
  display: flex;
  overflow: auto hidden;
}

body.aether-mobile-ui .aether-mobile-drawer-tabs::-webkit-scrollbar {
  display: none;
}

body.aether-mobile-ui #control-drawer-tabs .aether-mobile-drawer-tab {
  scroll-snap-align: center;
  font: 650 11px / 1 ui-sans-serif, system-ui, sans-serif;
  color: #7f8997 !important;
  touch-action: pan-x !important;
  background: #12161c !important;
  border: 1px solid #282e37 !important;
  border-radius: 10px !important;
  flex-direction: row !important;
  flex: none !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 6px !important;
  width: auto !important;
  min-width: 72px !important;
  height: 42px !important;
  padding: 0 11px !important;
  display: flex !important;
}

body.aether-mobile-ui #control-drawer-tabs .aether-mobile-drawer-tab svg {
  width: 15px !important;
  height: 15px !important;
}

body.aether-mobile-ui #control-drawer-tabs .aether-mobile-drawer-tab.active {
  box-shadow: inset 0 1px #ffffff0b;
  color: #f3f5f7 !important;
  background: #1b2027 !important;
  border-color: #4a5360 !important;
}

body.aether-mobile-ui .aether-mobile-drawer-content {
  overscroll-behavior-y: contain;
  -webkit-overflow-scrolling: touch;
  min-height: 0;
  padding: 12px 12px calc(24px + env(safe-area-inset-bottom, 0px));
  scrollbar-width: thin;
  background: #0b0d11;
  overflow-y: auto;
}

body.aether-mobile-ui .aether-mobile-drawer-content > * {
  max-width: 720px;
  margin-left: auto;
  margin-right: auto;
}

body.aether-mobile-ui .aether-mobile-drawer-content .space-y-4 > :not([hidden]) ~ :not([hidden]) {
  margin-top: 10px;
}

body.aether-mobile-ui .aether-mobile-drawer-content .rounded-xl {
  box-shadow: none !important;
  border-radius: 13px !important;
}

body.aether-mobile-ui .aether-mobile-drawer-content input[type="range"] {
  min-height: 34px;
}

body.aether-mobile-ui .aether-mobile-drawer-content .grid.grid-cols-4 {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}

body.aether-mobile-ui .aether-mobile-drawer-content .grid.grid-cols-3 {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}

body.aether-mobile-ui .aether-mobile-drawer-content .text-xs {
  line-height: 1.45;
}

body.aether-mobile-ui .aether-mobile-product-overlay {
  z-index: 6000;
  left: var(--aether-vv-left, 0px);
  top: var(--aether-vv-top, 0px);
  width: var(--aether-vvw, 100vw);
  height: var(--aether-vvh, 100dvh);
  color: #eef1f4;
  background: #0a0c10;
  position: fixed;
  overflow: hidden;
}

body.aether-mobile-ui .aether-mobile-product-overlay #disclaimer-dialog {
  margin: auto;
  position: absolute;
  top: 50%;
  left: 12px;
  right: 12px;
  transform: translateY(-50%);
  background: #10141a !important;
  border-color: #2b313b !important;
  border-radius: 18px !important;
  width: auto !important;
  max-width: 460px !important;
  padding: 18px !important;
}

body.aether-mobile-ui .aether-mobile-product-workstation {
  grid-template-rows: calc(58px + env(safe-area-inset-top, 0px)) 56px minmax(0,1fr);
  background: #0b0d11;
  width: 100%;
  height: 100%;
  min-height: 0;
  display: grid;
  overflow: hidden;
}

body.aether-mobile-ui .aether-mobile-product-header {
  padding: env(safe-area-inset-top, 0px) 12px 0 14px;
  background: #0e1116;
  border-bottom: 1px solid #242933;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  display: flex;
}

body.aether-mobile-ui .aether-mobile-product-header > div:first-child {
  flex-direction: column;
  min-width: 0;
  display: flex;
}

body.aether-mobile-ui .aether-mobile-product-header b {
  letter-spacing: .025em;
  font-size: 15px;
}

body.aether-mobile-ui .aether-mobile-product-header span {
  color: #65707d;
  letter-spacing: .14em;
  margin-top: 4px;
  font: 700 7px / 1 JetBrains Mono, monospace;
}

body.aether-mobile-ui .aether-mobile-product-header-actions {
  flex-direction: row !important;
  gap: 6px !important;
  display: flex !important;
}

body.aether-mobile-ui .aether-mobile-product-header-actions button {
  color: #cbd2db;
  background: #14181e;
  border: 1px solid #2b313a;
  border-radius: 11px;
  place-items: center;
  width: 42px;
  height: 42px;
  display: grid;
  min-height: 42px !important;
}

body.aether-mobile-ui .aether-mobile-product-header-actions svg {
  width: 18px;
  height: 18px;
}

body.aether-mobile-ui .aether-mobile-product-nav {
  scrollbar-width: none;
  min-width: 0;
  min-height: 0;
  background: #0f1217 !important;
  border: 0 !important;
  border-bottom: 1px solid #232833 !important;
  flex-direction: row !important;
  align-items: center !important;
  gap: 6px !important;
  padding: 7px 10px !important;
  display: flex !important;
  overflow: auto hidden !important;
}

body.aether-mobile-ui .aether-mobile-product-nav::-webkit-scrollbar {
  display: none;
}

body.aether-mobile-ui .aether-mobile-product-nav .icwc-product-sidebar-title, body.aether-mobile-ui .aether-mobile-product-nav .aether-product-section {
  display: none !important;
}

body.aether-mobile-ui .aether-mobile-product-nav .icwc-product-tab {
  white-space: nowrap;
  color: #8c96a3 !important;
  background: #14181e !important;
  border: 1px solid #2b3039 !important;
  border-radius: 10px !important;
  flex: none !important;
  width: auto !important;
  min-width: auto !important;
  height: 40px !important;
  margin: 0 !important;
  padding: 0 12px !important;
  font: 650 11px / 1 ui-sans-serif, system-ui, sans-serif !important;
}

body.aether-mobile-ui .aether-mobile-product-nav .icwc-product-tab.active {
  color: #f1f3f5 !important;
  box-shadow: none !important;
  background: #20252c !important;
  border-color: #525c69 !important;
}

body.aether-mobile-ui .aether-mobile-product-workstation .aether-product-live-preview {
  display: none !important;
}

body.aether-mobile-ui .aether-mobile-product-settings {
  -webkit-overflow-scrolling: touch;
  color: #e7ebef;
  min-width: 0;
  min-height: 0;
  width: 100% !important;
  max-width: none !important;
  padding: 14px 12px calc(18px + env(safe-area-inset-bottom, 0px)) !important;
  background: #0b0d11 !important;
  display: block !important;
  overflow: hidden auto !important;
}

body.aether-mobile-ui .aether-mobile-product-settings > div:first-child {
  max-width: 720px;
  margin: 0 auto;
}

body.aether-mobile-ui .aether-mobile-product-settings .space-y-6 > :not([hidden]) ~ :not([hidden]) {
  margin-top: 14px !important;
}

body.aether-mobile-ui .aether-mobile-product-settings .grid.grid-cols-2 {
  gap: 8px !important;
}

body.aether-mobile-ui .aether-mobile-product-settings .aether-product-actions {
  left: 0;
  right: 0;
  bottom: calc(-18px - env(safe-area-inset-bottom, 0px));
  z-index: 8;
  box-shadow: 0 -10px 30px #00000042;
  padding: 10px 12px max(12px,env(safe-area-inset-bottom, 0px)) !important;
  background: #0b0d11f7 !important;
  border-top: 1px solid #262c35 !important;
  margin: 16px -12px 0 !important;
  position: sticky !important;
}

body.aether-mobile-ui .aether-mobile-product-settings .aether-product-actions button {
  border-radius: 11px !important;
  min-height: 48px !important;
}

body.aether-mobile-ui .aether-influence-overlay, body.aether-mobile-ui .termination-dialog-overlay {
  background: #0000008a !important;
  align-items: flex-end !important;
  padding: 0 !important;
}

body.aether-mobile-ui .aether-influence-modal, body.aether-mobile-ui .termination-dialog-panel {
  width: 100% !important;
  max-width: none !important;
  max-height: min(78vh, 680px) !important;
  padding: 16px 12px max(16px,calc(env(safe-area-inset-bottom, 0px) + 10px)) !important;
  -webkit-backdrop-filter: none !important;
  background: #0e1116 !important;
  border-color: #2a3039 !important;
  border-radius: 20px 20px 0 0 !important;
  margin: 0 !important;
}

body.aether-mobile-ui.aether-keyboard-open .aether-mobile-statusrail, body.aether-mobile-ui.aether-keyboard-open .aether-mobile-transport, body.aether-mobile-ui.aether-keyboard-open #joystick-wrapper {
  opacity: 0 !important;
  pointer-events: none !important;
}

body.aether-mobile-ui.aether-mobile-landscape {
  --aether-mobile-header-h: 50px;
  --aether-mobile-status-h: 34px;
}

body.aether-mobile-ui.aether-mobile-landscape .aether-mobile-brand span {
  display: none;
}

body.aether-mobile-ui.aether-mobile-landscape .aether-mobile-header-actions > button {
  width: 40px;
  min-width: 40px;
  height: 40px;
}

body.aether-mobile-ui.aether-mobile-landscape .aether-mobile-drawer, body.aether-mobile-ui.aether-mobile-landscape .aether-mobile-product-workstation {
  grid-template-rows: calc(50px + env(safe-area-inset-top, 0px)) 50px minmax(0,1fr) !important;
}

@media (max-width: 390px) {
  body.aether-mobile-ui .aether-mobile-header {
    gap: 6px;
    padding-left: 11px;
    padding-right: 7px;
  }

  body.aether-mobile-ui .aether-mobile-brand b {
    font-size: 21px;
  }

  body.aether-mobile-ui .aether-mobile-brand span {
    letter-spacing: .12em;
    font-size: 6px;
  }

  body.aether-mobile-ui .aether-mobile-header-actions {
    gap: 4px;
  }

  body.aether-mobile-ui .aether-mobile-header-actions > button {
    width: 41px;
    min-width: 41px;
    height: 41px;
  }

  body.aether-mobile-ui .aether-mobile-timeline-actions {
    grid-template-columns: 1fr 1.22fr 1fr .95fr;
  }

  body.aether-mobile-ui .aether-mobile-timeline-tools button span {
    font-size: 8px;
  }

  body.aether-mobile-ui .aether-mobile-drawer-content .grid.grid-cols-4 {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

#root .aether-mobile-product-nav .icwc-product-tab {
  color: #8c96a3 !important;
  width: auto !important;
  min-width: auto !important;
  height: 40px !important;
  box-shadow: none !important;
  background: #14181e !important;
  border: 1px solid #2b3039 !important;
  border-radius: 10px !important;
  flex: none !important;
  margin: 0 !important;
  padding: 0 12px !important;
  font: 650 11px / 1 ui-sans-serif, system-ui, sans-serif !important;
}

#root .aether-mobile-product-nav .icwc-product-tab:hover {
  color: #cfd5dd !important;
  background: #191e25 !important;
}

#root .aether-mobile-product-nav .icwc-product-tab.active {
  color: #f1f3f5 !important;
  box-shadow: none !important;
  background: #20252c !important;
  border-color: #525c69 !important;
}

body.aether-mobile-ui .aether-mobile-product-title {
  border-bottom: 1px solid #252a33;
  justify-content: space-between;
  align-items: flex-end;
  gap: 12px;
  padding: 2px 2px 10px;
  display: flex;
}

body.aether-mobile-ui .aether-mobile-product-title > div {
  flex-direction: column;
  gap: 4px;
  display: flex;
}

body.aether-mobile-ui .aether-mobile-product-title > div > span {
  color: #697482;
  letter-spacing: .15em;
  font: 700 8px / 1 JetBrains Mono, monospace;
}

body.aether-mobile-ui .aether-mobile-product-title b {
  color: #f0f2f5;
  font-size: 15px;
  line-height: 1.2;
}

body.aether-mobile-ui .aether-mobile-product-title > span {
  color: #8793a1;
  font: 700 10px / 1 JetBrains Mono, monospace;
}

body.aether-mobile-ui .aether-mobile-transport {
  bottom: calc(var(--aether-vv-bottom, 0px) + max(10px,env(safe-area-inset-bottom, 0px))) !important;
}

body.aether-mobile-ui .aether-mobile-timeline {
  bottom: calc(var(--aether-vv-bottom, 0px) + max(8px,env(safe-area-inset-bottom, 0px))) !important;
}

body.aether-mobile-ui #joystick-wrapper, body.aether-mobile-ui .draw-track-toolbar, body.aether-mobile-ui .pro-route-toolbar, body.aether-mobile-ui .dry-air-toolbar {
  bottom: calc(var(--aether-vv-bottom, 0px) + 82px) !important;
}

#root .aether-mobile-product-settings :is(.text-\[\#667085\], .text-\[\#87919e\], .text-\[\#98a2b3\]) {
  color: #98a3b0 !important;
}

#root .aether-mobile-product-settings :is(.text-\[\#344054\], .text-\[\#1d2939\]) {
  color: #e3e7eb !important;
}

#root .aether-mobile-product-settings [class*="border-slate-2"] {
  border-color: #303640 !important;
}

#root .aether-mobile-product-settings .bg-sky-50 {
  background: #16212a !important;
}

#root .aether-mobile-product-settings .text-sky-800 {
  color: #b7d7e7 !important;
}

#root .aether-mobile-product-settings .hover\:bg-sky-100:hover {
  background: #1b2a35 !important;
}

body.aether-mobile-ui {
  --aether-mobile-header-h: 50px;
  --aether-mobile-status-h: 34px;
  --aether-glass-bg: #14171d94;
  --aether-glass-line: #ffffff29;
  --aether-glass-highlight: #ffffff13;
}

body.aether-mobile-ui .aether-mobile-header {
  padding: env(safe-area-inset-top, 0px) 8px 0 12px;
  border-color: var(--aether-glass-line);
  box-shadow: 0 8px 30px #0000003d, inset 0 1px 0 var(--aether-glass-highlight);
  -webkit-backdrop-filter: blur(18px) saturate(135%);
  contain: layout paint style;
  background: linear-gradient(#1c1f25a8, #0c0f148a);
  gap: 8px;
}

body.aether-mobile-ui .aether-mobile-brand b {
  letter-spacing: -.045em;
  font-size: 20px;
}

body.aether-mobile-ui .aether-mobile-brand span {
  display: none !important;
}

body.aether-mobile-ui .aether-mobile-header-actions > button {
  background: #fff1;
  border-color: #ffffff2b;
  border-radius: 11px;
  width: 38px;
  min-width: 38px;
  height: 38px;
  box-shadow: inset 0 1px #ffffff14, 0 6px 18px #0000001f;
}

body.aether-mobile-ui .aether-mobile-header-actions svg {
  width: 18px;
  height: 18px;
}

body.aether-mobile-ui .aether-mobile-statusrail {
  -webkit-backdrop-filter: blur(12px);
  background: #090c11c7;
  gap: 7px;
  padding: 0 10px;
  font-size: 9px;
}

body.aether-mobile-ui .aether-mobile-transport {
  right: calc(10px + env(safe-area-inset-right, 0px));
  border-color: var(--aether-glass-line);
  -webkit-backdrop-filter: blur(18px) saturate(140%);
  height: 50px;
  box-shadow: 0 14px 36px #00000057,inset 0 1px 0 var(--aether-glass-highlight);
  contain: layout paint style;
  background: linear-gradient(145deg, #21242ba6, #0b0e138f);
  border-radius: 16px;
  grid-template-columns: repeat(4, 43px);
  gap: 3px;
  padding: 3px;
  left: auto !important;
  transform: none !important;
}

body.aether-mobile-ui .aether-mobile-transport button {
  color: #d7dde5;
  border-radius: 12px;
  min-width: 43px;
  min-height: 43px;
}

body.aether-mobile-ui .aether-mobile-transport button.primary {
  color: #11151a;
  background: #f4f7fae6;
  box-shadow: 0 4px 14px #00000026;
}

body.aether-mobile-ui .aether-mobile-transport button.danger {
  color: #ffb9bf;
  background: #5e1b2447;
}

body.aether-mobile-ui .aether-mobile-transport button.report {
  color: #b9d8ff;
  background: #1f39584d;
}

body.aether-mobile-ui .aether-mobile-transport svg {
  width: 18px;
  height: 18px;
}

body.aether-mobile-ui #joystick-wrapper {
  transform-origin: 0 100%;
  will-change: transform;
  left: calc(10px + env(safe-area-inset-left, 0px)) !important;
  bottom: calc(var(--aether-vv-bottom, 0px) + max(10px,env(safe-area-inset-bottom, 0px))) !important;
  transform: scale(.66) !important;
}

body.aether-mobile-ui #joystick-container {
  -webkit-backdrop-filter: blur(18px) saturate(135%) !important;
  background: linear-gradient(145deg, #292d358f, #0e11167a) !important;
  border-color: #fff3 !important;
  box-shadow: inset 0 1px #ffffff1a, 0 12px 34px #0000004d !important;
}

body.aether-mobile-ui #joystick-handle[class*="bg-slate-700"] {
  -webkit-backdrop-filter: blur(12px) !important;
  background: #eff3f71f !important;
}

body.aether-mobile-ui :is(.aether-mobile-drawer-content, .aether-mobile-product-settings, .aether-mobile-timeline) input[type="range"] {
  appearance: none;
  cursor: pointer;
  accent-color: #0000 !important;
  background: none !important;
  height: 30px !important;
  min-height: 30px !important;
}

body.aether-mobile-ui :is(.aether-mobile-drawer-content, .aether-mobile-product-settings, .aether-mobile-timeline) input[type="range"]::-webkit-slider-runnable-track {
  background: linear-gradient(90deg, #79c0d8d1, #7e91a466);
  border-radius: 999px;
  height: 4px;
  box-shadow: inset 0 0 0 1px #ffffff14;
}

body.aether-mobile-ui :is(.aether-mobile-drawer-content, .aether-mobile-product-settings, .aether-mobile-timeline) input[type="range"]::-webkit-slider-thumb {
  appearance: none;
  background: #d9e8ee;
  border: 1px solid #ffffffc7;
  border-radius: 50%;
  width: 18px;
  height: 18px;
  margin-top: -7px;
  box-shadow: 0 2px 8px #00000057, 0 0 0 4px #6bb7d31f;
}

body.aether-mobile-ui :is(.aether-mobile-drawer-content, .aether-mobile-product-settings, .aether-mobile-timeline) input[type="range"]::-moz-range-track {
  background: #54616e;
  border-radius: 999px;
  height: 4px;
}

body.aether-mobile-ui :is(.aether-mobile-drawer-content, .aether-mobile-product-settings, .aether-mobile-timeline) input[type="range"]::-moz-range-thumb {
  background: #d9e8ee;
  border: 1px solid #ffffffc7;
  border-radius: 50%;
  width: 18px;
  height: 18px;
}

body.aether-mobile-ui .aether-mobile-drawer-content :is(button, select, input[type="text"], input[type="number"], input[type="date"], input[type="time"]), body.aether-mobile-ui .aether-mobile-product-settings :is(button, select, input[type="text"], input[type="number"]) {
  border-radius: 10px !important;
}

body.aether-mobile-ui #control-drawer-tabs .aether-mobile-drawer-tab {
  border-radius: 10px !important;
  min-width: 68px !important;
  height: 39px !important;
}

body.aether-mobile-ui .aether-mobile-drawer-content .rounded-xl {
  border-radius: 11px !important;
}

#typhoon-gis-viewport, #forecast-gis-viewport {
  contain: layout paint style;
}

#typhoon-gis-viewport .leaflet-map-pane, #typhoon-gis-viewport canvas, #forecast-gis-viewport .leaflet-map-pane, #forecast-gis-viewport canvas {
  will-change: transform;
}

body.aether-mobile-ui #joystick-wrapper {
  left: calc(10px + env(safe-area-inset-left, 0px)) !important;
  bottom: calc(var(--aether-vv-bottom, 0px) + max(10px,env(safe-area-inset-bottom, 0px))) !important;
  transform: none !important;
}

body.aether-mobile-ui .aether-mobile-timeline {
  -webkit-backdrop-filter: blur(20px) saturate(135%) !important;
  background: linear-gradient(155deg, #1b1e25c2, #080b10b3) !important;
  border-color: #ffffff26 !important;
  box-shadow: 0 18px 52px #0000006b, inset 0 1px #ffffff12 !important;
}

body.aether-mobile-ui .aether-mobile-overflow {
  -webkit-backdrop-filter: blur(18px) saturate(135%) !important;
  background: #12161cc7 !important;
}

body.aether-mobile-ui #control-drawer-sidebar.aether-mobile-drawer {
  grid-template-rows: calc(50px + env(safe-area-inset-top, 0px)) 48px minmax(0,1fr) !important;
}

body.aether-mobile-ui .aether-mobile-drawer-header {
  padding: env(safe-area-inset-top, 0px) 10px 0 12px !important;
}

body.aether-mobile-ui .aether-mobile-drawer-header h2 {
  font-size: 14px !important;
}

body.aether-mobile-ui .aether-mobile-drawer-header p {
  font-size: 7px !important;
}

body.aether-mobile-ui .aether-mobile-drawer-header #btn-close-drawer {
  border-radius: 10px !important;
  width: 36px !important;
  height: 36px !important;
  min-height: 36px !important;
}

body.aether-mobile-ui .aether-mobile-drawer-tabs {
  gap: 5px !important;
  padding: 5px 8px !important;
}

body.aether-mobile-ui #control-drawer-tabs .aether-mobile-drawer-tab {
  min-width: 66px !important;
  height: 37px !important;
  min-height: 37px !important;
  padding: 0 9px !important;
}

body.aether-mobile-ui .aether-mobile-drawer-content {
  padding: 10px 10px calc(20px + env(safe-area-inset-bottom, 0px)) !important;
}

body.aether-mobile-ui .aether-mobile-drawer-content :is(button, select, input[type="text"], input[type="number"], input[type="date"], input[type="time"]) {
  min-height: 40px !important;
}

body.aether-mobile-ui .aether-mobile-product-workstation {
  grid-template-rows: calc(50px + env(safe-area-inset-top, 0px)) 48px minmax(0,1fr) !important;
}

body.aether-mobile-ui .aether-mobile-product-header {
  padding: env(safe-area-inset-top, 0px) 10px 0 12px !important;
}

body.aether-mobile-ui .aether-mobile-product-header-actions button {
  width: 36px !important;
  height: 36px !important;
  min-height: 36px !important;
}

body.aether-mobile-ui .aether-mobile-product-nav {
  gap: 5px !important;
  padding: 5px 8px !important;
}

#root .aether-mobile-product-nav .icwc-product-tab {
  height: 37px !important;
  padding: 0 10px !important;
}

body.aether-mobile-ui .aether-mobile-product-settings :is(button, select, input[type="text"], input[type="number"]) {
  min-height: 40px;
}

body.aether-mobile-ui .aether-mobile-timeline-actions button, body.aether-mobile-ui .aether-mobile-timeline-tools button, body.aether-mobile-ui .aether-mobile-speed {
  min-height: 42px;
}

body.aether-mobile-ui :is(.aether-mobile-drawer-content, .aether-mobile-product-settings, .aether-mobile-timeline) input[type="range"]::-webkit-slider-thumb {
  width: 16px;
  height: 16px;
  margin-top: -6px;
  box-shadow: 0 2px 7px #00000052, 0 0 0 3px #6bb7d31c;
}

body.aether-mobile-ui :is(.aether-mobile-drawer-content, .aether-mobile-product-settings) input[type="checkbox"] {
  accent-color: #86b8ca;
  border-radius: 5px;
  width: 18px !important;
  height: 18px !important;
  min-height: 18px !important;
}

body.aether-mobile-ui #typhoon-gis-viewport .leaflet-container, body.aether-mobile-ui #forecast-gis-viewport .leaflet-container {
  transition: none !important;
}

@media (max-width: 390px) {
  body.aether-mobile-ui #joystick-wrapper {
    left: 7px !important;
    transform: none !important;
  }

  body.aether-mobile-ui .aether-mobile-transport {
    grid-template-columns: repeat(4, 39px);
    height: 46px;
    right: 7px;
  }

  body.aether-mobile-ui .aether-mobile-transport button {
    min-width: 39px;
    min-height: 39px;
  }

  body.aether-mobile-ui #control-drawer-tabs .aether-mobile-drawer-tab {
    min-width: 62px !important;
    padding: 0 8px !important;
  }
}

body.aether-mobile-ui .aether-mobile-transport {
  bottom: calc(var(--aether-vv-bottom, 0px) + max(10px,env(safe-area-inset-bottom, 0px)) + 10px) !important;
  right: calc(12px + env(safe-area-inset-right, 0px)) !important;
}

body.aether-mobile-ui #joystick-wrapper {
  bottom: calc(var(--aether-vv-bottom, 0px) + max(10px,env(safe-area-inset-bottom, 0px)) + 10px) !important;
  left: calc(12px + env(safe-area-inset-left, 0px)) !important;
}

body.aether-mobile-ui #joystick-container {
  background: linear-gradient(145deg, #292d3563, #0e11164d) !important;
  border-color: #ffffff26 !important;
  box-shadow: inset 0 1px #ffffff13, 0 10px 28px #00000038 !important;
}

body.aether-mobile-ui #joystick-handle[class*="bg-slate-700"] {
  background: #eff3f718 !important;
  border-color: #ffffff3d !important;
}

body.aether-mobile-ui .pro-route-toolbar {
  top: auto !important;
  left: 50% !important;
  right: auto !important;
  bottom: calc(var(--aether-vv-bottom, 0px) + max(10px,env(safe-area-inset-bottom, 0px)) + 74px) !important;
  border-radius: 15px !important;
  flex-wrap: nowrap !important;
  gap: 6px !important;
  width: max-content !important;
  max-width: calc(100vw - 24px) !important;
  padding: 6px !important;
  transform: translateX(-50%) !important;
}

body.aether-mobile-ui .pro-route-toolbar button {
  width: 46px !important;
  min-width: 46px !important;
  height: 46px !important;
  min-height: 46px !important;
  padding: 0 !important;
}

@media (max-width: 390px) {
  body.aether-mobile-ui .aether-mobile-transport {
    right: calc(8px + env(safe-area-inset-right, 0px)) !important;
  }

  body.aether-mobile-ui #joystick-wrapper {
    left: calc(8px + env(safe-area-inset-left, 0px)) !important;
  }
}

body.aether-mobile-ui .dry-air-toolbar {
  left: calc(var(--aether-vv-left, 0px) + 8px) !important;
  width: calc(var(--aether-vvw, 100vw) - 16px) !important;
  max-width: calc(var(--aether-vvw, 100vw) - 16px) !important;
  box-sizing: border-box !important;
  flex-wrap: wrap !important;
  justify-content: center !important;
  gap: 6px !important;
  padding: 7px !important;
  right: auto !important;
  transform: none !important;
}

body.aether-mobile-ui .dry-air-toolbar > div {
  text-align: center !important;
  flex: 1 0 100% !important;
  padding: 1px 4px 0 !important;
}

#typhoon-app-container :is(button, [role="button"], input, select, textarea) {
  -webkit-tap-highlight-color: transparent;
}

#typhoon-app-container :is(button, [role="button"], input, select, textarea):focus-visible {
  outline-offset: 2px;
  outline: 2px solid #7dd3fceb;
}

#typhoon-app-container button:disabled {
  opacity: .46;
  filter: saturate(.7);
  cursor: not-allowed !important;
}

:is(.aether-mobile-drawer-content, .aether-mobile-product-settings, .video-export-workstation, .aether-report-builder, .aether-report-summary-body, .station-history-workstation, .station-ranking-page, .aircraft-recon-overlay, .cloud-compositor-dark) {
  overscroll-behavior: contain;
}

:is(.aether-mobile-drawer-content, .aether-mobile-product-settings, .aether-report-summary-body, .station-history-workstation, .station-ranking-page, .video-export-workstation [class*="overflow-y-auto"], .aircraft-recon-overlay [class*="overflow-y-auto"], .cloud-compositor-dark [class*="overflow-y-auto"]) {
  -webkit-overflow-scrolling: touch;
  scrollbar-gutter: stable;
}

@media (pointer: coarse) {
  :is(.video-export-workstation, .forecast-product-overlay, .aether-mobile-product-overlay, .aether-report-builder-overlay, .aether-report-summary-overlay, .station-ranking-page, .aircraft-recon-overlay, .aether-terms-overlay, .cloud-compositor-dark, .station-history-workstation) :is(input[type="text"], input[type="number"], input[type="date"], input[type="time"], input[type="search"], select, textarea) {
    font-size: 16px !important;
  }

  :is(.video-export-workstation, .forecast-product-overlay, .aether-mobile-product-overlay, .aether-report-builder-overlay, .aether-report-summary-overlay, .station-ranking-page, .aircraft-recon-overlay, .aether-terms-overlay, .cloud-compositor-dark) button {
    touch-action: manipulation;
  }
}

@media (max-width: 767px) {
  .video-export-workstation, .station-ranking-page, .aether-report-builder-overlay, .aether-report-summary-overlay, .aircraft-recon-overlay, .aether-terms-overlay, .cloud-compositor-overlay {
    width: 100dvw;
    max-width: 100dvw;
    height: 100dvh;
    max-height: 100dvh;
  }

  .forecast-product-overlay, .icwc-preview-backdrop, .aether-glass-overlay, .aircraft-recon-overlay, .aether-terms-overlay {
    padding-left: max(6px, env(safe-area-inset-left, 0px)) !important;
    padding-right: max(6px, env(safe-area-inset-right, 0px)) !important;
  }

  .icwc-preview-modal {
    width: 100% !important;
    max-height: calc(100dvh - max(12px, env(safe-area-inset-top, 0px)) - max(12px, env(safe-area-inset-bottom, 0px))) !important;
  }

  .station-history-workstation, .aether-terms-panel {
    max-height: calc(100dvh - max(12px, env(safe-area-inset-top, 0px)) - max(12px, env(safe-area-inset-bottom, 0px))) !important;
  }

  .video-export-workstation > div:first-child {
    padding-left: max(12px, env(safe-area-inset-left, 0px)) !important;
    padding-right: max(12px, env(safe-area-inset-right, 0px)) !important;
    padding-top: max(10px, env(safe-area-inset-top, 0px)) !important;
  }

  .video-export-workstation > div:first-child h2 {
    flex-wrap: wrap;
    font-size: 14px !important;
    line-height: 1.25 !important;
  }

  .video-export-workstation > div:nth-child(2) {
    scroll-snap-type: x proximity;
    padding-left: 10px !important;
    padding-right: 10px !important;
  }

  .video-export-workstation > div:nth-child(2) > button {
    scroll-snap-align: start;
  }

  .video-export-workstation .video-export-preview-stage {
    min-height: 220px;
  }

  .video-export-workstation .video-export-preview-frame {
    max-height: 48dvh !important;
  }

  .station-ranking-page table {
    min-width: 640px;
  }
}

@media (max-height: 560px) and (orientation: landscape) {
  .video-export-workstation > div:first-child {
    padding-top: 7px !important;
    padding-bottom: 7px !important;
  }

  .video-export-workstation > div:first-child p {
    display: none;
  }

  .video-export-workstation .video-export-preview-frame {
    max-height: 55dvh !important;
  }

  .aether-report-builder-overlay, .aether-report-summary-overlay, .aircraft-recon-overlay, .aether-terms-overlay, .cloud-compositor-overlay {
    padding-top: 4px !important;
    padding-bottom: 4px !important;
  }
}

body.aether-mobile-ui .dry-air-toolbar {
  box-sizing: border-box !important;
  width: min(520px, 100vw - 16px) !important;
  max-width: calc(100vw - 16px) !important;
  left: 50% !important;
  right: auto !important;
  bottom: calc(var(--aether-vv-bottom, 0px) + 82px) !important;
  flex-wrap: wrap !important;
  justify-content: center !important;
  top: auto !important;
  overflow: visible !important;
  transform: translateX(-50%) !important;
}

body.aether-mobile-ui .dry-air-toolbar > div {
  text-align: center !important;
  flex: 1 0 100% !important;
  min-width: 0 !important;
}

@media (pointer: coarse) {
  #control-drawer-sidebar input[type="range"], .aether-influence-modal input[type="range"], .aether-menu-range {
    touch-action: pan-y !important;
  }
}

body.aether-mobile-ui .dry-air-toolbar {
  width: min(520px,calc(var(--aether-vvw, 100vw) - 16px - env(safe-area-inset-left, 0px) - env(safe-area-inset-right, 0px))) !important;
  max-width: calc(var(--aether-vvw, 100vw) - 16px - env(safe-area-inset-left, 0px) - env(safe-area-inset-right, 0px)) !important;
  left: 50% !important;
  right: auto !important;
  transform: translateX(-50%) !important;
}

body.aether-mobile-ui .aether-mobile-tools-overflow {
  overscroll-behavior: contain;
  right: max(8px,env(safe-area-inset-right, 0px)) !important;
  top: calc(env(safe-area-inset-top, 0px) + 46px) !important;
  width: min(360px,calc(var(--aether-vvw, 100vw) - 16px - env(safe-area-inset-left, 0px) - env(safe-area-inset-right, 0px))) !important;
  max-height: calc(var(--aether-vvh, 100dvh) - env(safe-area-inset-top, 0px) - 58px) !important;
  padding: 8px !important;
  overflow-y: auto !important;
}

body.aether-mobile-ui .aether-more-tool-section {
  border-bottom: 1px solid #94a3b826;
  padding: 9px;
}

body.aether-mobile-ui .aether-more-tool-title {
  color: #e5e7eb;
  justify-content: space-between;
  align-items: center;
  gap: 8px;
  font-size: 11px;
  display: flex;
}

body.aether-mobile-ui .aether-more-tool-title > span, body.aether-mobile-ui .aether-more-tool-title label {
  color: #94a3b8;
  font-size: 9px;
  font-weight: 600;
}

body.aether-mobile-ui .aether-more-slider-row {
  grid-template-columns: minmax(0, 1fr) 58px;
  align-items: center;
  gap: 8px;
  margin-top: 8px;
  display: grid;
}

body.aether-mobile-ui .aether-more-slider-row input[type="range"] {
  width: 100%;
  min-width: 0;
  min-height: 28px;
}

body.aether-mobile-ui .aether-more-slider-row > span {
  color: #dbeafe;
  text-align: right;
  font: 700 10px / 1 ui-monospace, SFMono-Regular, monospace;
}

body.aether-mobile-ui .aether-more-tool-actions {
  grid-template-columns: 1fr 72px;
  gap: 7px;
  margin-top: 7px;
  display: grid;
}

body.aether-mobile-ui .aether-more-tool-actions button {
  background: #1e293b85 !important;
  border: 1px solid #94a3b838 !important;
  justify-content: center !important;
  min-height: 36px !important;
  padding: 0 8px !important;
  font-size: 10px !important;
}

body.aether-mobile-ui .aether-more-tool-section p {
  color: #64748b;
  margin: 5px 0 0;
  font-size: 8px;
  line-height: 1.45;
}

body.aether-mobile-ui .aether-more-system-actions {
  padding-top: 4px;
}

body.aether-mobile-ui .aether-influence-modal {
  height: var(--aether-vvh, 100dvh) !important;
  max-height: var(--aether-vvh, 100dvh) !important;
  padding-top: max(8px,env(safe-area-inset-top, 0px)) !important;
  border-radius: 0 !important;
}

body.aether-mobile-ui .aether-influence-modal:before {
  content: none !important;
  display: none !important;
}

body.aether-mobile-ui .aether-influence-sheet-handle {
  justify-content: center;
  align-items: center;
  touch-action: none !important;
  background: none !important;
  border: 0 !important;
  width: 72px !important;
  min-width: 72px !important;
  height: 26px !important;
  min-height: 26px !important;
  margin: 0 auto 4px !important;
  padding: 0 !important;
  display: flex !important;
}

body.aether-mobile-ui .aether-influence-sheet-handle > span {
  background: #e2e8f0b8;
  border-radius: 99px;
  width: 40px;
  height: 5px;
  display: block;
}

body.aether-mobile-ui .atmosphere-draw-toolbar {
  left: calc(var(--aether-vv-left, 0px) + var(--aether-vvw, 100vw)/2) !important;
  width: min(calc(var(--aether-vvw, 100vw) - 16px),620px) !important;
  max-width: calc(var(--aether-vvw, 100vw) - 16px) !important;
}

body.aether-mobile-ui .aether-mobile-header.aether-mobile-more-open {
  contain: layout style !important;
  z-index: 7000 !important;
  overflow: visible !important;
}

body.aether-mobile-ui .aether-mobile-header.aether-mobile-more-open .aether-mobile-tools-overflow {
  z-index: 7010 !important;
  pointer-events: auto !important;
  visibility: visible !important;
  opacity: 1 !important;
}

body.aether-mobile-ui .atmosphere-draw-toolbar {
  top: auto !important;
  left: 50% !important;
  bottom: calc(var(--aether-vv-bottom, 0px) + 82px) !important;
  width: min(560px,calc(var(--aether-vvw, 100vw) - 16px - env(safe-area-inset-left, 0px) - env(safe-area-inset-right, 0px))) !important;
  max-width: calc(var(--aether-vvw, 100vw) - 16px - env(safe-area-inset-left, 0px) - env(safe-area-inset-right, 0px)) !important;
  box-sizing: border-box !important;
  -webkit-backdrop-filter: blur(22px) saturate(145%) !important;
  background: linear-gradient(155deg, #0f1218c7, #06090fad) !important;
  border: 1px solid #ffffff24 !important;
  border-radius: 18px !important;
  gap: 8px !important;
  padding: 10px 12px !important;
  display: grid !important;
  overflow: hidden !important;
  transform: translateX(-50%) !important;
  box-shadow: 0 18px 44px #0000005c, inset 0 1px #ffffff14 !important;
}

body.aether-mobile-ui .dry-air-toolbar {
  background: linear-gradient(155deg, #301c04b8, #0b0d11ad) !important;
  border-color: #fbbf2457 !important;
}

body.aether-mobile-ui .shear-region-toolbar {
  background: linear-gradient(155deg, #062033bd, #080b11ad) !important;
  border-color: #38bdf84d !important;
}

body.aether-mobile-ui .aether-draw-toolbar-title {
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  min-width: 0;
  display: flex;
}

body.aether-mobile-ui .aether-draw-toolbar-heading {
  color: #f8fafc;
  letter-spacing: -.015em;
  font: 800 13px / 1.15 Inter, ui-sans-serif, system-ui, sans-serif;
}

body.aether-mobile-ui .aether-draw-toolbar-meta {
  color: #e2e8f0e6;
  white-space: nowrap;
  font: 700 11px / 1 JetBrains Mono, ui-monospace, monospace;
}

body.aether-mobile-ui .aether-draw-toolbar-actions {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  display: grid;
}

body.aether-mobile-ui .aether-draw-toolbar-button {
  color: #e5e7eb !important;
  background: #ffffff12 !important;
  border: 1px solid #ffffff29 !important;
  border-radius: 12px !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 6px !important;
  min-height: 42px !important;
  padding: 0 10px !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  display: flex !important;
  box-shadow: inset 0 1px #ffffff12 !important;
}

body.aether-mobile-ui .aether-draw-toolbar-button.is-primary {
  color: #ecfdf5 !important;
  background: linear-gradient(#16a34a57, #052e1652) !important;
  border-color: #4ade806b !important;
}

body.aether-mobile-ui .aether-mobile-tools-overflow {
  top: calc(env(safe-area-inset-top, 0px) + 52px) !important;
  -webkit-backdrop-filter: blur(24px) saturate(145%) !important;
  background: linear-gradient(160deg, #14181f8f, #080b116b) !important;
  border: 1px solid #ffffff29 !important;
  border-radius: 18px !important;
  padding: 10px !important;
  box-shadow: 0 18px 46px #00000057, inset 0 1px #ffffff14 !important;
}

body.aether-mobile-ui .aether-more-tool-section {
  background: #0f172a3d;
  border: 1px solid #ffffff1a;
  border-radius: 16px;
  margin-bottom: 8px;
  box-shadow: inset 0 1px #ffffff0f;
  padding: 10px !important;
}

body.aether-mobile-ui .aether-more-tool-section:last-child {
  margin-bottom: 0;
}

body.aether-mobile-ui .aether-more-tool-title {
  color: #eff6ff;
  font-size: 12px;
  font-weight: 800;
}

body.aether-mobile-ui .aether-more-tool-title > span, body.aether-mobile-ui .aether-more-tool-title label {
  color: #a8b5c8;
  font-size: 9px;
}

body.aether-mobile-ui .aether-more-tool-actions {
  gap: 8px;
}

body.aether-mobile-ui .aether-more-tool-actions button, body.aether-mobile-ui .aether-more-system-actions button {
  background: #1e293b6b !important;
  border: 1px solid #ffffff24 !important;
  border-radius: 12px !important;
  min-height: 38px !important;
  box-shadow: inset 0 1px #ffffff0d !important;
}

body.aether-mobile-ui .aether-mobile-header-actions {
  gap: 7px;
}

@media (max-width: 460px) {
  body.aether-mobile-ui .aether-draw-toolbar-title {
    flex-direction: column;
    align-items: flex-start;
  }

  body.aether-mobile-ui .aether-draw-toolbar-meta {
    white-space: normal;
  }

  body.aether-mobile-ui .aether-draw-toolbar-actions {
    grid-template-columns: 1fr;
  }
}

body.aether-mobile-ui .aether-mobile-header.aether-mobile-more-open .aether-mobile-tools-overflow {
  top: calc(env(safe-area-inset-top, 0px) + 50px) !important;
  -webkit-backdrop-filter: blur(26px) saturate(155%) !important;
  background: linear-gradient(160deg, #0f1319ad, #080b118f) !important;
  border: 1px solid #ffffff24 !important;
  border-radius: 22px !important;
  padding: 10px !important;
  box-shadow: 0 22px 56px #00000061, inset 0 1px #ffffff14 !important;
}

body.aether-mobile-ui .aether-more-system-actions {
  gap: 10px !important;
  padding-top: 6px !important;
  display: grid !important;
}

body.aether-mobile-ui .aether-more-system-actions button {
  background: #10182652 !important;
}

body.aether-mobile-ui .aether-mobile-header-actions > button {
  background: linear-gradient(#181c23f0, #0e1219f0) !important;
}

#typhoon-app-container :is(button, [role="button"]):not(:disabled):focus, #forecast-modal-overlay :is(button, [role="button"]):not(:disabled):focus, #typhoon-app-container :is(button, [role="button"])[aria-pressed="true"], #forecast-modal-overlay :is(button, [role="button"])[aria-pressed="true"], #forecast-modal-overlay .icwc-product-tab.active {
  outline-offset: 1px;
  outline: 2px solid #67e8f9d1;
  box-shadow: 0 0 0 3px #22d3ee26, 0 0 16px #22d3ee33;
}

#typhoon-app-container label:has(input[type="checkbox"]:checked), #typhoon-app-container label:has(input[type="radio"]:checked), #forecast-modal-overlay label:has(input[type="checkbox"]:checked), #forecast-modal-overlay label:has(input[type="radio"]:checked) {
  box-shadow: 0 0 0 2px #22d3ee1f, 0 0 12px #22d3ee1f;
  border-color: #67e8f9b3 !important;
}

#typhoon-app-container :is(select, input, textarea):focus, #forecast-modal-overlay :is(select, input, textarea):focus {
  box-shadow: 0 0 0 2px #22d3ee24;
  border-color: #67e8f9d1 !important;
}

#typhoon-app-container {
  --aether-neutral-glass: #121215a3;
  --aether-neutral-glass-strong: #101013d1;
  --aether-neutral-border: #ffffff21;
  --aether-neutral-border-active: #ffffffb3;
  background: #090a0d !important;
}

#control-drawer-sidebar, body.aether-mobile-ui .aether-mobile-drawer, body.aether-mobile-ui .aether-mobile-tools-overflow {
  border-color: var(--aether-neutral-border) !important;
  -webkit-backdrop-filter: blur(26px) saturate(112%) !important;
  background: linear-gradient(155deg, #18181bb8, #09090b9e) !important;
  box-shadow: 0 22px 58px #00000061, inset 0 1px #fff1 !important;
}

#control-drawer-sidebar :is(.rounded-xl, .rounded-2xl, .rounded-lg)[class*="bg-slate-"], #control-drawer-sidebar :is(.rounded-xl, .rounded-2xl, .rounded-lg)[class*="bg-zinc-"], #forecast-modal-overlay :is(.rounded-xl, .rounded-2xl, .rounded-lg)[class*="bg-slate-"] {
  -webkit-backdrop-filter: blur(14px) saturate(108%);
}

#typhoon-app-container :is(button, [role="button"], label)[class*="bg-cyan-"], #typhoon-app-container :is(button, [role="button"], label)[class*="bg-sky-"], #typhoon-app-container :is(button, [role="button"], label)[class*="bg-blue-"], #typhoon-app-container :is(button, [role="button"], label)[class*="bg-indigo-"], #typhoon-app-container :is(button, [role="button"], label)[class*="bg-violet-"], #forecast-modal-overlay :is(button, [role="button"], label)[class*="bg-cyan-"], #forecast-modal-overlay :is(button, [role="button"], label)[class*="bg-sky-"], #forecast-modal-overlay :is(button, [role="button"], label)[class*="bg-blue-"], #forecast-modal-overlay :is(button, [role="button"], label)[class*="bg-indigo-"], #forecast-modal-overlay :is(button, [role="button"], label)[class*="bg-violet-"] {
  color: #f4f4f5 !important;
  background: #ffffff13 !important;
}

#typhoon-app-container :is(button, [role="button"], label)[class*="border-cyan-"], #typhoon-app-container :is(button, [role="button"], label)[class*="border-sky-"], #typhoon-app-container :is(button, [role="button"], label)[class*="border-blue-"], #typhoon-app-container :is(button, [role="button"], label)[class*="border-indigo-"], #typhoon-app-container :is(button, [role="button"], label)[class*="border-violet-"], #typhoon-app-container :is(button, [role="button"], label)[class*="border-emerald-"], #typhoon-app-container :is(button, [role="button"], label)[class*="border-amber-"], #forecast-modal-overlay :is(button, [role="button"], label)[class*="border-cyan-"], #forecast-modal-overlay :is(button, [role="button"], label)[class*="border-sky-"], #forecast-modal-overlay :is(button, [role="button"], label)[class*="border-blue-"], #forecast-modal-overlay :is(button, [role="button"], label)[class*="border-indigo-"], #forecast-modal-overlay :is(button, [role="button"], label)[class*="border-violet-"], #forecast-modal-overlay :is(button, [role="button"], label)[class*="border-emerald-"], #forecast-modal-overlay :is(button, [role="button"], label)[class*="border-amber-"] {
  border-color: #ffffff9e !important;
  box-shadow: 0 0 0 1px #ffffff0f, 0 0 16px #ffffff21 !important;
}

#typhoon-app-container :is(button, [role="button"]) :is([class*="bg-cyan-"], [class*="bg-sky-"], [class*="bg-blue-"], [class*="bg-indigo-"], [class*="bg-violet-"]), #forecast-modal-overlay :is(button, [role="button"]) :is([class*="bg-cyan-"], [class*="bg-sky-"], [class*="bg-blue-"], [class*="bg-indigo-"], [class*="bg-violet-"]) {
  background: #ffffffd1 !important;
  border-color: #ffffffeb !important;
  box-shadow: 0 0 10px #ffffff3d !important;
}

#typhoon-app-container :is(button, [role="button"])[class*="text-cyan-"], #typhoon-app-container :is(button, [role="button"])[class*="text-sky-"], #typhoon-app-container :is(button, [role="button"])[class*="text-blue-"], #forecast-modal-overlay :is(button, [role="button"])[class*="text-cyan-"], #forecast-modal-overlay :is(button, [role="button"])[class*="text-sky-"], #forecast-modal-overlay :is(button, [role="button"])[class*="text-blue-"] {
  color: #f4f4f5 !important;
}

#typhoon-app-container :is(button, [role="button"]):not(:disabled), #forecast-modal-overlay :is(button, [role="button"]):not(:disabled) {
  transition-property: transform, border-color, box-shadow, filter, background-color, color;
  transition-duration: .12s;
  transition-timing-function: ease-out;
}

#typhoon-app-container :is(button, [role="button"]):not(:disabled):active, #forecast-modal-overlay :is(button, [role="button"]):not(:disabled):active {
  filter: brightness(1.08);
  transform: translateY(1px);
  box-shadow: 0 0 0 2px #ffffff38, 0 0 16px #ffffff29 !important;
}

#typhoon-app-container :is(button, [role="button"]):not(:disabled):focus-visible, #forecast-modal-overlay :is(button, [role="button"]):not(:disabled):focus-visible, #typhoon-app-container :is(button, [role="button"])[aria-pressed="true"], #forecast-modal-overlay :is(button, [role="button"])[aria-pressed="true"], #forecast-modal-overlay .icwc-product-tab.active {
  outline-offset: 1px;
  border-color: #ffffffb3 !important;
  outline: 1px solid #ffffffc2 !important;
  box-shadow: 0 0 0 2px #ffffff1a, 0 0 18px #ffffff2e !important;
}

#typhoon-app-container label:has(input[type="checkbox"]:checked), #typhoon-app-container label:has(input[type="radio"]:checked), #forecast-modal-overlay label:has(input[type="checkbox"]:checked), #forecast-modal-overlay label:has(input[type="radio"]:checked) {
  border-color: #ffffffa8 !important;
  box-shadow: 0 0 0 1px #ffffff1a, 0 0 14px #ffffff24 !important;
}

#typhoon-app-container :is(select, input, textarea):focus, #forecast-modal-overlay :is(select, input, textarea):focus {
  border-color: #ffffffb8 !important;
  box-shadow: 0 0 0 2px #ffffff1c !important;
}

#typhoon-app-container input[type="checkbox"], #typhoon-app-container input[type="radio"], #typhoon-app-container input[type="range"], #forecast-modal-overlay input[type="checkbox"], #forecast-modal-overlay input[type="radio"], #forecast-modal-overlay input[type="range"] {
  accent-color: #e4e4e7 !important;
}

#typhoon-app-container :is(button, [role="button"]):not(:disabled):focus, #forecast-modal-overlay :is(button, [role="button"]):not(:disabled):focus {
  outline-offset: 1px;
  outline: 1px solid #ffffffb8 !important;
  box-shadow: 0 0 0 2px #ffffff17, 0 0 16px #ffffff26 !important;
}

:where(button, [role="button"], .aether-button):not(:disabled) {
  transform-origin: center;
  transition-property: scale, transform, border-color, box-shadow, filter, background-color, color, opacity;
  transition-duration: .3s, .18s, .18s, .18s, .18s, .18s, .18s, .18s;
  transition-timing-function: cubic-bezier(.2, 1.62, .32, 1), ease-out, ease-out, ease-out, ease-out, ease-out, ease-out, ease-out;
  scale: 1;
}

:where(button, [role="button"], .aether-button):not(:disabled):active {
  transition-duration: 62ms, 62ms, 90ms, 90ms, 90ms, 90ms, 90ms, 90ms;
  transition-timing-function: cubic-bezier(.3, .05, .65, .3);
  scale: .94;
}

@media (prefers-reduced-motion: reduce) {
  :where(button, [role="button"], .aether-button) {
    transition-duration: 1ms !important;
    scale: 1 !important;
  }
}

.video-export-workstation {
  --ve-glass: #18181b9e;
  --ve-glass-strong: #0f0f12d6;
  --ve-border: #ffffff1f;
  --ve-border-active: #ffffffa8;
  background: radial-gradient(circle at 22% 5%, #ffffff0b, #0000 34%), #09090b !important;
}

.video-export-workstation :is(section, .video-export-config-column > div, [class*="rounded-xl"], [class*="rounded-2xl"])[class*="bg-slate-"], .video-export-workstation :is(section, .video-export-config-column > div, [class*="rounded-xl"], [class*="rounded-2xl"])[class*="bg-zinc-"] {
  -webkit-backdrop-filter: blur(16px) saturate(108%);
}

.video-export-workstation :is(button, [role="button"], label)[class*="bg-blue-"], .video-export-workstation :is(button, [role="button"], label)[class*="bg-sky-"], .video-export-workstation :is(button, [role="button"], label)[class*="bg-cyan-"], .video-export-workstation :is(button, [role="button"], label)[class*="bg-indigo-"], .video-export-workstation :is(button, [role="button"], label)[class*="bg-violet-"], .video-export-workstation :is(button, [role="button"], label)[class*="bg-purple-"], .video-export-workstation :is(button, [role="button"], label)[class*="bg-teal-"], .video-export-workstation :is(button, [role="button"], label)[class*="bg-emerald-"] {
  color: #f4f4f5 !important;
  background: #ffffff16 !important;
}

.video-export-workstation :is(button, [role="button"], label)[class*="border-blue-"], .video-export-workstation :is(button, [role="button"], label)[class*="border-sky-"], .video-export-workstation :is(button, [role="button"], label)[class*="border-cyan-"], .video-export-workstation :is(button, [role="button"], label)[class*="border-indigo-"], .video-export-workstation :is(button, [role="button"], label)[class*="border-violet-"], .video-export-workstation :is(button, [role="button"], label)[class*="border-purple-"], .video-export-workstation :is(button, [role="button"], label)[class*="border-teal-"], .video-export-workstation :is(button, [role="button"], label)[class*="border-emerald-"] {
  border-color: var(--ve-border-active) !important;
  box-shadow: 0 0 0 1px #ffffff0e, 0 0 17px #ffffff21 !important;
}

.video-export-workstation :is(button, [role="button"])[class*="text-blue-"], .video-export-workstation :is(button, [role="button"])[class*="text-sky-"], .video-export-workstation :is(button, [role="button"])[class*="text-cyan-"], .video-export-workstation :is(button, [role="button"])[class*="text-violet-"], .video-export-workstation :is(button, [role="button"])[class*="text-purple-"], .video-export-workstation :is(button, [role="button"])[class*="text-teal-"], .video-export-workstation :is(button, [role="button"])[class*="text-emerald-"] {
  color: #f4f4f5 !important;
}

.video-export-workstation :is(input[type="checkbox"], input[type="radio"], input[type="range"]) {
  accent-color: #f4f4f5 !important;
}

.video-export-workstation :is(select, input, textarea):focus {
  outline: none;
  border-color: #ffffffb3 !important;
  box-shadow: 0 0 0 2px #ffffff1a !important;
}

.video-export-config-column {
  scrollbar-gutter: stable;
}

.video-export-config-column > section {
  margin-inline: 0;
}

.video-export-config-column :is(button, select, input) {
  max-width: 100%;
}

.video-export-config-column .sticky.bottom-0 {
  box-shadow: 0 -12px 28px #0000003b;
}

@media (max-width: 1279px) {
  .video-export-main {
    overscroll-behavior: contain;
    display: block !important;
    overflow-y: auto !important;
  }

  .video-export-preview-column, .video-export-config-column {
    min-height: auto !important;
    overflow: visible !important;
  }

  .video-export-preview-column {
    min-height: min(68dvh, 760px) !important;
  }

  .video-export-config-column {
    padding-bottom: max(18px,env(safe-area-inset-bottom, 0px)) !important;
  }
}

:is(#typhoon-app-container, #forecast-modal-overlay, .video-export-workstation, .forecast-product-overlay, .aether-mobile-product-overlay, .aether-report-builder-overlay, .aether-report-summary-overlay, .station-ranking-page, .station-history-workstation, .aircraft-recon-overlay, .aether-terms-overlay, .cloud-compositor-dark) :is(button, [role="button"], label):is([class*="bg-cyan-"], [class*="bg-sky-"], [class*="bg-blue-"], [class*="bg-indigo-"], [class*="bg-violet-"], [class*="bg-purple-"], [class*="bg-teal-"], [class*="bg-emerald-"]) {
  color: #f4f4f5 !important;
  background: #ffffff14 !important;
}

:is(#typhoon-app-container, #forecast-modal-overlay, .video-export-workstation, .forecast-product-overlay, .aether-mobile-product-overlay, .aether-report-builder-overlay, .aether-report-summary-overlay, .station-ranking-page, .station-history-workstation, .aircraft-recon-overlay, .aether-terms-overlay, .cloud-compositor-dark) :is(button, [role="button"], label):is([class*="border-cyan-"], [class*="border-sky-"], [class*="border-blue-"], [class*="border-indigo-"], [class*="border-violet-"], [class*="border-purple-"], [class*="border-teal-"], [class*="border-emerald-"]) {
  border-color: #ffffffa3 !important;
  box-shadow: 0 0 0 1px #ffffff0f, 0 0 17px #ffffff24 !important;
}

:is(#typhoon-app-container, #forecast-modal-overlay, .video-export-workstation, .forecast-product-overlay, .aether-mobile-product-overlay, .aether-report-builder-overlay, .aether-report-summary-overlay, .station-ranking-page, .station-history-workstation, .aircraft-recon-overlay, .aether-terms-overlay, .cloud-compositor-dark) :is(input[type="checkbox"], input[type="radio"], input[type="range"]) {
  accent-color: #f4f4f5 !important;
}

:is(.video-export-workstation, .forecast-product-overlay, .aether-mobile-product-overlay, .aether-report-builder-overlay, .aether-report-summary-overlay, .station-ranking-page, .station-history-workstation, .aircraft-recon-overlay, .aether-terms-overlay, .cloud-compositor-dark) :is(.flex, .grid) > * {
  min-width: 0;
}

:root {
  --aether-neutral-canvas: #18181a;
  --aether-glass-surface: #27272aa3;
  --aether-glass-surface-strong: #202023c7;
  --aether-glass-control: #52525757;
  --aether-glass-control-hover: #68686e70;
  --aether-glass-control-active: #7e7e847d;
  --aether-glass-line: #ffffff29;
  --aether-glass-line-strong: #ffffff47;
  --aether-glass-highlight: #ffffff13;
  --aether-neutral-text: #f0f0f2;
  --aether-neutral-muted: #a7a7ad;
}

html, body, #root, #typhoon-app-container {
  background-color: var(--aether-neutral-canvas) !important;
}

#root :is(#control-drawer-sidebar, [id^="typhoon-card-"], #typhoon-status-card-empty, #simulation-timeline, .storminc-topbar, .storminc-live-pill, .storminc-intensity-panel, .storminc-timeline-expanded, .aether-influence-modal, .aether-report-summary, .aether-report-builder, .aether-glass-panel, .station-history-workstation, .station-ranking-page, .aircraft-recon-panel, .forecast-intensity-curve-editor, .icwc-product-workstation, .aether-product-workstation, .video-export-workstation) {
  border-color: var(--aether-glass-line) !important;
  box-shadow: 0 18px 48px #00000057, inset 0 1px 0 var(--aether-glass-highlight) !important;
  -webkit-backdrop-filter: blur(20px) saturate(108%) !important;
  color: var(--aether-neutral-text) !important;
  background: linear-gradient(145deg, #3a3a3e99, #1b1b1ead) !important;
}

#root :is(.icwc-product-sidebar, .icwc-product-settings, .aether-product-sidebar, .aether-product-settings, .video-export-config-column) {
  border-color: var(--aether-glass-line) !important;
  color: var(--aether-neutral-text) !important;
  background-color: #242427c7 !important;
}

#root :is(#control-drawer-sidebar, [role="dialog"], .storminc-topbar, .storminc-live-pill, .storminc-intensity-panel, .storminc-timeline-expanded, .aether-influence-modal, .aether-report-summary, .aether-report-builder, .station-history-workstation, .station-ranking-page, .aircraft-recon-overlay, .forecast-product-overlay, .aether-product-workstation, .icwc-product-workstation, .video-export-workstation) :is(button, select, input:not([type="range"]):not([type="checkbox"]):not([type="radio"]), textarea, [role="button"]):not(.tn-viewport button):not(.tn-viewport [role="button"]) {
  background-color: var(--aether-glass-control) !important;
  border-color: var(--aether-glass-line) !important;
  color: var(--aether-neutral-text) !important;
  background-image: none !important;
  box-shadow: inset 0 1px #ffffff0b !important;
}

#root :is(#control-drawer-sidebar, [role="dialog"], .storminc-topbar, .storminc-intensity-panel, .storminc-timeline-expanded, .aether-product-workstation, .icwc-product-workstation, .video-export-workstation) :is(button, [role="button"]):not(.tn-viewport button):not(.tn-viewport [role="button"]):hover {
  background-color: var(--aether-glass-control-hover) !important;
  border-color: var(--aether-glass-line-strong) !important;
}

#root :is(#control-drawer-sidebar, [role="dialog"], .storminc-topbar, .storminc-intensity-panel, .storminc-timeline-expanded, .aether-product-workstation, .icwc-product-workstation, .video-export-workstation) :is(button, [role="button"]):not(.tn-viewport button):not(.tn-viewport [role="button"]):active {
  background-color: var(--aether-glass-control-active) !important;
}

#root :is(#control-drawer-sidebar, [role="dialog"], .storminc-intensity-panel, .storminc-timeline-expanded, .aether-report-summary, .aether-report-builder, .station-history-workstation, .station-ranking-page, .forecast-product-overlay, .aether-product-workstation, .icwc-product-workstation, .video-export-workstation) :is([class*="bg-slate-9"], [class*="bg-slate-8"], [class*="bg-zinc-9"], [class*="bg-zinc-8"], [class*="bg-blue-9"], [class*="bg-sky-9"], [class*="bg-cyan-9"], [class*="bg-indigo-9"], [class*="bg-violet-9"], [class*="bg-purple-9"], [class*="bg-teal-9"], [class*="bg-emerald-9"]) {
  background-color: #2f2f338f !important;
  border-color: #ffffff21 !important;
}

#root :is(input[type="checkbox"], input[type="radio"], input[type="range"]) {
  accent-color: #e4e4e7 !important;
}

select option {
  color: #f4f4f5 !important;
  background-color: #27272a !important;
}

.scrollbar-thin::-webkit-scrollbar-track {
  background: #0000002e;
}

.scrollbar-thin::-webkit-scrollbar-thumb {
  background: #d4d4d847;
}

.scrollbar-thin::-webkit-scrollbar-thumb:hover {
  background: #e4e4e76b;
}

.custom-leaflet-popup .leaflet-popup-content-wrapper, .custom-leaflet-popup .leaflet-popup-tip, .aether-track-tooltip.leaflet-tooltip, .leaflet-popup.aether-track-hover-popup .leaflet-popup-content-wrapper {
  -webkit-backdrop-filter: blur(16px) saturate(108%) !important;
  background: #252528c7 !important;
  border-color: #ffffff2e !important;
  box-shadow: 0 14px 38px #0000005c, inset 0 1px #ffffff0e !important;
}

@media (prefers-reduced-transparency: reduce) {
  #root :is(#control-drawer-sidebar, [id^="typhoon-card-"], #simulation-timeline, .storminc-topbar, .storminc-live-pill, .storminc-intensity-panel, .storminc-timeline-expanded, [role="dialog"], .aether-product-workstation, .icwc-product-workstation, .video-export-workstation) {
    -webkit-backdrop-filter: none !important;
    background: #29292c !important;
  }
}

body.aether-mobile-ui .pro-route-toolbar {
  left: calc(var(--aether-vv-left, 0px) + var(--aether-vvw, 100vw) / 2) !important;
  width: max-content !important;
  max-width: calc(var(--aether-vvw, 100vw) - 16px - env(safe-area-inset-left, 0px) - env(safe-area-inset-right, 0px)) !important;
  box-sizing: border-box !important;
  right: auto !important;
  bottom: calc(var(--aether-vv-bottom, 0px) + max(10px, env(safe-area-inset-bottom, 0px)) + 74px) !important;
  flex-wrap: nowrap !important;
  position: fixed !important;
  transform: translateX(-50%) !important;
}

body.aether-mobile-ui .pro-route-toolbar > button {
  flex: 0 46px;
}

body.aether-mobile-ui [aria-label="预报强度曲线编辑器"] {
  left: calc(var(--aether-vv-left, 0px) + var(--aether-vvw, 100vw) / 2) !important;
  width: min(960px, calc(var(--aether-vvw, 100vw) - 16px)) !important;
  max-height: calc(var(--aether-vvh, 100dvh) - 16px) !important;
  bottom: calc(var(--aether-vv-bottom, 0px) + 12px) !important;
  transform: translateX(-50%) !important;
}

body.aether-mobile-ui [aria-label="预报强度曲线编辑器"].forecast-curve-fullscreen {
  top: calc(var(--aether-vv-top, 0px) + 8px) !important;
  width: calc(var(--aether-vvw, 100vw) - 16px) !important;
  height: calc(var(--aether-vvh, 100dvh) - 16px) !important;
}

.pro-route-toolbar, .forecast-curve-popup {
  transform: translateX(-50%);
  translate: none !important;
}

body.aether-mobile-ui [aria-label="预报强度曲线编辑器"].forecast-curve-fullscreen {
  left: calc(var(--aether-vv-left, 0px) + 8px) !important;
  right: auto !important;
  top: calc(var(--aether-vv-top, 0px) + 8px) !important;
  width: calc(var(--aether-vvw, 100vw) - 16px) !important;
  height: calc(var(--aether-vvh, 100dvh) - 16px) !important;
  box-sizing: border-box !important;
  min-width: 0 !important;
  position: fixed !important;
  bottom: auto !important;
  transform: none !important;
}

.pro-route-toolbar {
  flex-wrap: nowrap !important;
  justify-content: flex-start !important;
  gap: 4px !important;
  width: max-content !important;
  max-width: calc(100vw - 24px) !important;
  padding: 4px !important;
  inset: 112px auto auto 12px !important;
  transform: none !important;
}

body.aether-mobile-ui .pro-route-toolbar {
  left: calc(var(--aether-vv-left, 0px) + max(8px, env(safe-area-inset-left, 0px))) !important;
  top: auto !important;
  right: auto !important;
  bottom: calc(var(--aether-vv-bottom, 0px) + max(10px, env(safe-area-inset-bottom, 0px)) + 225px) !important;
  width: max-content !important;
  max-width: calc(var(--aether-vvw, 100vw) - 16px) !important;
  border-radius: 11px !important;
  flex-wrap: nowrap !important;
  justify-content: flex-start !important;
  gap: 4px !important;
  padding: 4px !important;
  transform: none !important;
}

body.aether-mobile-ui .pro-route-toolbar > button {
  flex: 0 0 36px !important;
  width: 36px !important;
  min-width: 36px !important;
  height: 36px !important;
  min-height: 36px !important;
}

@media (max-height: 540px) {
  body.aether-mobile-ui .pro-route-toolbar {
    bottom: auto !important;
    top: calc(var(--aether-vv-top, 0px) + 96px) !important;
  }
}

#typhoon-app-container.aether-synoptic-selection-active button:not([aria-label="确认风场图选区"]):not([aria-label="取消风场图选区"]), #typhoon-app-container.aether-synoptic-selection-active input, #typhoon-app-container.aether-synoptic-selection-active select, #typhoon-app-container.aether-synoptic-selection-active #joystick-wrapper {
  pointer-events: none !important;
}

.aether-video-dual-range input[type="range"] {
  appearance: none;
  pointer-events: none;
  background: none;
  height: 40px;
  margin: 0;
}

.aether-video-dual-range input[type="range"]::-webkit-slider-runnable-track {
  background: none;
  height: 4px;
}

.aether-video-dual-range input[type="range"]::-moz-range-track {
  background: none;
  height: 4px;
}

.aether-video-dual-range input[type="range"]::-webkit-slider-thumb {
  appearance: none;
  pointer-events: auto;
  cursor: ew-resize;
  background: #0891b2;
  border: 2px solid #e0f2fe;
  border-radius: 50%;
  width: 19px;
  height: 19px;
  margin-top: -8px;
  box-shadow: 0 0 0 2px #020617;
}

.aether-video-dual-range input[type="range"]:last-child::-webkit-slider-thumb {
  background: #f59e0b;
}

.aether-video-dual-range input[type="range"]::-moz-range-thumb {
  pointer-events: auto;
  cursor: ew-resize;
  background: #0891b2;
  border: 2px solid #e0f2fe;
  border-radius: 50%;
  width: 17px;
  height: 17px;
}

.aether-video-dual-range input[type="range"]:last-child::-moz-range-thumb {
  background: #f59e0b;
}

.aether-realistic-desktop-menu {
  z-index: 1100;
  background: #111e30;
  border: 1px solid #475569;
  border-radius: 12px;
  flex-direction: column;
  gap: 5px;
  min-width: 230px;
  padding: 8px;
  display: flex;
  position: fixed;
  top: 60px;
  right: 16px;
  box-shadow: 0 18px 35px #0009;
}

.aether-realistic-desktop-menu button {
  text-align: left;
  color: #e5edf5;
  border-radius: 7px;
  padding: 9px;
  font-size: 13px;
}

.aether-realistic-desktop-menu button:hover:not(:disabled) {
  background: #334155;
}

.aether-realistic-desktop-menu button:disabled {
  opacity: .4;
  cursor: not-allowed;
}

@media (max-width: 767px) {
  .aether-realistic-desktop-menu {
    display: none;
  }
}

@property --tw-translate-x {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}

@property --tw-translate-y {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}

@property --tw-translate-z {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}

@property --tw-rotate-x {
  syntax: "*";
  inherits: false
}

@property --tw-rotate-y {
  syntax: "*";
  inherits: false
}

@property --tw-rotate-z {
  syntax: "*";
  inherits: false
}

@property --tw-skew-x {
  syntax: "*";
  inherits: false
}

@property --tw-skew-y {
  syntax: "*";
  inherits: false
}

@property --tw-pan-x {
  syntax: "*";
  inherits: false
}

@property --tw-pan-y {
  syntax: "*";
  inherits: false
}

@property --tw-pinch-zoom {
  syntax: "*";
  inherits: false
}

@property --tw-scrollbar-thumb {
  syntax: "<color>";
  inherits: false;
  initial-value: #0000;
}

@property --tw-scrollbar-track {
  syntax: "<color>";
  inherits: false;
  initial-value: #0000;
}

@property --tw-space-y-reverse {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}

@property --tw-space-x-reverse {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}

@property --tw-divide-y-reverse {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}

@property --tw-border-style {
  syntax: "*";
  inherits: false;
  initial-value: solid;
}

@property --tw-gradient-position {
  syntax: "*";
  inherits: false
}

@property --tw-gradient-from {
  syntax: "<color>";
  inherits: false;
  initial-value: #0000;
}

@property --tw-gradient-via {
  syntax: "<color>";
  inherits: false;
  initial-value: #0000;
}

@property --tw-gradient-to {
  syntax: "<color>";
  inherits: false;
  initial-value: #0000;
}

@property --tw-gradient-stops {
  syntax: "*";
  inherits: false
}

@property --tw-gradient-via-stops {
  syntax: "*";
  inherits: false
}

@property --tw-gradient-from-position {
  syntax: "<length-percentage>";
  inherits: false;
  initial-value: 0%;
}

@property --tw-gradient-via-position {
  syntax: "<length-percentage>";
  inherits: false;
  initial-value: 50%;
}

@property --tw-gradient-to-position {
  syntax: "<length-percentage>";
  inherits: false;
  initial-value: 100%;
}

@property --tw-leading {
  syntax: "*";
  inherits: false
}

@property --tw-font-weight {
  syntax: "*";
  inherits: false
}

@property --tw-tracking {
  syntax: "*";
  inherits: false
}

@property --tw-ordinal {
  syntax: "*";
  inherits: false
}

@property --tw-slashed-zero {
  syntax: "*";
  inherits: false
}

@property --tw-numeric-figure {
  syntax: "*";
  inherits: false
}

@property --tw-numeric-spacing {
  syntax: "*";
  inherits: false
}

@property --tw-numeric-fraction {
  syntax: "*";
  inherits: false
}

@property --tw-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}

@property --tw-shadow-color {
  syntax: "*";
  inherits: false
}

@property --tw-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}

@property --tw-inset-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}

@property --tw-inset-shadow-color {
  syntax: "*";
  inherits: false
}

@property --tw-inset-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}

@property --tw-ring-color {
  syntax: "*";
  inherits: false
}

@property --tw-ring-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}

@property --tw-inset-ring-color {
  syntax: "*";
  inherits: false
}

@property --tw-inset-ring-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}

@property --tw-ring-inset {
  syntax: "*";
  inherits: false
}

@property --tw-ring-offset-width {
  syntax: "<length>";
  inherits: false;
  initial-value: 0;
}

@property --tw-ring-offset-color {
  syntax: "*";
  inherits: false;
  initial-value: #fff;
}

@property --tw-ring-offset-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}

@property --tw-outline-style {
  syntax: "*";
  inherits: false;
  initial-value: solid;
}

@property --tw-blur {
  syntax: "*";
  inherits: false
}

@property --tw-brightness {
  syntax: "*";
  inherits: false
}

@property --tw-contrast {
  syntax: "*";
  inherits: false
}

@property --tw-grayscale {
  syntax: "*";
  inherits: false
}

@property --tw-hue-rotate {
  syntax: "*";
  inherits: false
}

@property --tw-invert {
  syntax: "*";
  inherits: false
}

@property --tw-opacity {
  syntax: "*";
  inherits: false
}

@property --tw-saturate {
  syntax: "*";
  inherits: false
}

@property --tw-sepia {
  syntax: "*";
  inherits: false
}

@property --tw-drop-shadow {
  syntax: "*";
  inherits: false
}

@property --tw-drop-shadow-color {
  syntax: "*";
  inherits: false
}

@property --tw-drop-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}

@property --tw-drop-shadow-size {
  syntax: "*";
  inherits: false
}

@property --tw-backdrop-blur {
  syntax: "*";
  inherits: false
}

@property --tw-backdrop-brightness {
  syntax: "*";
  inherits: false
}

@property --tw-backdrop-contrast {
  syntax: "*";
  inherits: false
}

@property --tw-backdrop-grayscale {
  syntax: "*";
  inherits: false
}

@property --tw-backdrop-hue-rotate {
  syntax: "*";
  inherits: false
}

@property --tw-backdrop-invert {
  syntax: "*";
  inherits: false
}

@property --tw-backdrop-opacity {
  syntax: "*";
  inherits: false
}

@property --tw-backdrop-saturate {
  syntax: "*";
  inherits: false
}

@property --tw-backdrop-sepia {
  syntax: "*";
  inherits: false
}

@property --tw-duration {
  syntax: "*";
  inherits: false
}

@property --tw-ease {
  syntax: "*";
  inherits: false
}

@property --tw-scale-x {
  syntax: "*";
  inherits: false;
  initial-value: 1;
}

@property --tw-scale-y {
  syntax: "*";
  inherits: false;
  initial-value: 1;
}

@property --tw-scale-z {
  syntax: "*";
  inherits: false;
  initial-value: 1;
}

@keyframes spin {
  to {
    transform: rotate(360deg);
  }
}

@keyframes pulse {
  50% {
    opacity: .5;
  }
}

@keyframes bounce {
  0%, 100% {
    animation-timing-function: cubic-bezier(.8, 0, 1, 1);
    transform: translateY(-25%);
  }

  50% {
    animation-timing-function: cubic-bezier(0, 0, .2, 1);
    transform: none;
  }
}
