.maplibregl-map{font:12px/20px Helvetica Neue,Arial,Helvetica,sans-serif;overflow:hidden;position:relative;-webkit-tap-highlight-color:rgb(0,0,0,0)}.maplibregl-canvas{left:0;position:absolute;top:0}.maplibregl-map:fullscreen{height:100%;width:100%}.maplibregl-ctrl-group button.maplibregl-ctrl-compass{touch-action:none}.maplibregl-canvas-container.maplibregl-interactive,.maplibregl-ctrl-group button.maplibregl-ctrl-compass{cursor:grab;-webkit-user-select:none;-moz-user-select:none;user-select:none}.maplibregl-canvas-container.maplibregl-interactive.maplibregl-track-pointer{cursor:pointer}.maplibregl-canvas-container.maplibregl-interactive:active,.maplibregl-ctrl-group button.maplibregl-ctrl-compass:active{cursor:grabbing}.maplibregl-canvas-container.maplibregl-touch-zoom-rotate,.maplibregl-canvas-container.maplibregl-touch-zoom-rotate .maplibregl-canvas{touch-action:pan-x pan-y}.maplibregl-canvas-container.maplibregl-touch-drag-pan,.maplibregl-canvas-container.maplibregl-touch-drag-pan .maplibregl-canvas{touch-action:pinch-zoom}.maplibregl-canvas-container.maplibregl-touch-zoom-rotate.maplibregl-touch-drag-pan,.maplibregl-canvas-container.maplibregl-touch-zoom-rotate.maplibregl-touch-drag-pan .maplibregl-canvas{touch-action:none}.maplibregl-canvas-container.maplibregl-touch-drag-pan.maplibregl-cooperative-gestures,.maplibregl-canvas-container.maplibregl-touch-drag-pan.maplibregl-cooperative-gestures .maplibregl-canvas{touch-action:pan-x pan-y}.maplibregl-ctrl-bottom-left,.maplibregl-ctrl-bottom-right,.maplibregl-ctrl-top-left,.maplibregl-ctrl-top-right{pointer-events:none;position:absolute;z-index:2}.maplibregl-ctrl-top-left{left:0;top:0}.maplibregl-ctrl-top-right{right:0;top:0}.maplibregl-ctrl-bottom-left{bottom:0;left:0}.maplibregl-ctrl-bottom-right{bottom:0;right:0}.maplibregl-ctrl{clear:both;pointer-events:auto;transform:translate(0)}.maplibregl-ctrl-top-left .maplibregl-ctrl{float:left;margin:10px 0 0 10px}.maplibregl-ctrl-top-right .maplibregl-ctrl{float:right;margin:10px 10px 0 0}.maplibregl-ctrl-bottom-left .maplibregl-ctrl{float:left;margin:0 0 10px 10px}.maplibregl-ctrl-bottom-right .maplibregl-ctrl{float:right;margin:0 10px 10px 0}.maplibregl-ctrl-group{background:#fff;border-radius:4px}.maplibregl-ctrl-group:not(:empty){box-shadow:0 0 0 2px #0000001a}@media(forced-colors:active){.maplibregl-ctrl-group:not(:empty){box-shadow:0 0 0 2px ButtonText}}.maplibregl-ctrl-group button{background-color:transparent;border:0;box-sizing:border-box;cursor:pointer;display:block;height:29px;outline:none;padding:0;width:29px}.maplibregl-ctrl-group button+button{border-top:1px solid #ddd}.maplibregl-ctrl button .maplibregl-ctrl-icon{background-position:50%;background-repeat:no-repeat;display:block;height:100%;width:100%}@media(forced-colors:active){.maplibregl-ctrl-icon{background-color:transparent}.maplibregl-ctrl-group button+button{border-top:1px solid ButtonText}}.maplibregl-ctrl button::-moz-focus-inner{border:0;padding:0}.maplibregl-ctrl-attrib-button:focus,.maplibregl-ctrl-group button:focus{box-shadow:0 0 2px 2px #0096ff}.maplibregl-ctrl button:disabled{cursor:not-allowed}.maplibregl-ctrl button:disabled .maplibregl-ctrl-icon{opacity:.25}@media(hover:hover){.maplibregl-ctrl button:not(:disabled):hover{background-color:#0000000d}}.maplibregl-ctrl button:not(:disabled):active{background-color:#0000000d}.maplibregl-ctrl-group button:focus:focus-visible{box-shadow:0 0 2px 2px #0096ff}.maplibregl-ctrl-group button:focus:not(:focus-visible){box-shadow:none}.maplibregl-ctrl-group button:focus:first-child{border-radius:4px 4px 0 0}.maplibregl-ctrl-group button:focus:last-child{border-radius:0 0 4px 4px}.maplibregl-ctrl-group button:focus:only-child{border-radius:inherit}.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}@media(forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}}@media(forced-colors:active)and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}@media(forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}}@media(forced-colors:active)and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}@media(forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}}@media(forced-colors:active)and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-globe .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' fill='none' stroke='%23333' viewBox='0 0 22 22'%3E%3Ccircle cx='11' cy='11' r='8.5'/%3E%3Cpath d='M17.5 11c0 4.819-3.02 8.5-6.5 8.5S4.5 15.819 4.5 11 7.52 2.5 11 2.5s6.5 3.681 6.5 8.5Z'/%3E%3Cpath d='M13.5 11c0 2.447-.331 4.64-.853 6.206-.262.785-.562 1.384-.872 1.777-.314.399-.58.517-.775.517s-.461-.118-.775-.517c-.31-.393-.61-.992-.872-1.777C8.831 15.64 8.5 13.446 8.5 11s.331-4.64.853-6.206c.262-.785.562-1.384.872-1.777.314-.399.58-.517.775-.517s.461.118.775.517c.31.393.61.992.872 1.777.522 1.565.853 3.76.853 6.206Z'/%3E%3Cpath d='M11 7.5c-1.909 0-3.622-.166-4.845-.428-.616-.132-1.08-.283-1.379-.434a1.3 1.3 0 0 1-.224-.138q.07-.058.224-.138c.299-.151.763-.302 1.379-.434C7.378 5.666 9.091 5.5 11 5.5s3.622.166 4.845.428c.616.132 1.08.283 1.379.434.105.053.177.1.224.138q-.07.058-.224.138c-.299.151-.763.302-1.379.434-1.223.262-2.936.428-4.845.428ZM4.486 6.436ZM11 16.5c-1.909 0-3.622-.166-4.845-.428-.616-.132-1.08-.283-1.379-.434a1.3 1.3 0 0 1-.224-.138 1.3 1.3 0 0 1 .224-.138c.299-.151.763-.302 1.379-.434C7.378 14.666 9.091 14.5 11 14.5s3.622.166 4.845.428c.616.132 1.08.283 1.379.434.105.053.177.1.224.138a1.3 1.3 0 0 1-.224.138c-.299.151-.763.302-1.379.434-1.223.262-2.936.428-4.845.428Zm-6.514-1.064ZM11 12.5c-2.46 0-4.672-.222-6.255-.574-.796-.177-1.406-.38-1.805-.59a1.5 1.5 0 0 1-.39-.272.3.3 0 0 1-.047-.064.3.3 0 0 1 .048-.064c.066-.073.189-.167.389-.272.399-.21 1.009-.413 1.805-.59C6.328 9.722 8.54 9.5 11 9.5s4.672.222 6.256.574c.795.177 1.405.38 1.804.59.2.105.323.2.39.272a.3.3 0 0 1 .047.064.3.3 0 0 1-.048.064 1.4 1.4 0 0 1-.389.272c-.399.21-1.009.413-1.804.59-1.584.352-3.796.574-6.256.574Zm-8.501-1.51v.002zm0 .018v.002zm17.002.002v-.002zm0-.018v-.002z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-globe-enabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' fill='none' stroke='%2333b5e5' viewBox='0 0 22 22'%3E%3Ccircle cx='11' cy='11' r='8.5'/%3E%3Cpath d='M17.5 11c0 4.819-3.02 8.5-6.5 8.5S4.5 15.819 4.5 11 7.52 2.5 11 2.5s6.5 3.681 6.5 8.5Z'/%3E%3Cpath d='M13.5 11c0 2.447-.331 4.64-.853 6.206-.262.785-.562 1.384-.872 1.777-.314.399-.58.517-.775.517s-.461-.118-.775-.517c-.31-.393-.61-.992-.872-1.777C8.831 15.64 8.5 13.446 8.5 11s.331-4.64.853-6.206c.262-.785.562-1.384.872-1.777.314-.399.58-.517.775-.517s.461.118.775.517c.31.393.61.992.872 1.777.522 1.565.853 3.76.853 6.206Z'/%3E%3Cpath d='M11 7.5c-1.909 0-3.622-.166-4.845-.428-.616-.132-1.08-.283-1.379-.434a1.3 1.3 0 0 1-.224-.138q.07-.058.224-.138c.299-.151.763-.302 1.379-.434C7.378 5.666 9.091 5.5 11 5.5s3.622.166 4.845.428c.616.132 1.08.283 1.379.434.105.053.177.1.224.138q-.07.058-.224.138c-.299.151-.763.302-1.379.434-1.223.262-2.936.428-4.845.428ZM4.486 6.436ZM11 16.5c-1.909 0-3.622-.166-4.845-.428-.616-.132-1.08-.283-1.379-.434a1.3 1.3 0 0 1-.224-.138 1.3 1.3 0 0 1 .224-.138c.299-.151.763-.302 1.379-.434C7.378 14.666 9.091 14.5 11 14.5s3.622.166 4.845.428c.616.132 1.08.283 1.379.434.105.053.177.1.224.138a1.3 1.3 0 0 1-.224.138c-.299.151-.763.302-1.379.434-1.223.262-2.936.428-4.845.428Zm-6.514-1.064ZM11 12.5c-2.46 0-4.672-.222-6.255-.574-.796-.177-1.406-.38-1.805-.59a1.5 1.5 0 0 1-.39-.272.3.3 0 0 1-.047-.064.3.3 0 0 1 .048-.064c.066-.073.189-.167.389-.272.399-.21 1.009-.413 1.805-.59C6.328 9.722 8.54 9.5 11 9.5s4.672.222 6.256.574c.795.177 1.405.38 1.804.59.2.105.323.2.39.272a.3.3 0 0 1 .047.064.3.3 0 0 1-.048.064 1.4 1.4 0 0 1-.389.272c-.399.21-1.009.413-1.804.59-1.584.352-3.796.574-6.256.574Zm-8.501-1.51v.002zm0 .018v.002zm17.002.002v-.002zm0-.018v-.002z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-terrain .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' fill='%23333' viewBox='0 0 22 22'%3E%3Cpath d='m1.754 13.406 4.453-4.851 3.09 3.09 3.281 3.277.969-.969-3.309-3.312 3.844-4.121 6.148 6.886h1.082v-.855l-7.207-8.07-4.84 5.187L6.169 6.57l-5.48 5.965v.871ZM.688 16.844h20.625v1.375H.688Zm0 0'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-terrain-enabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' fill='%2333b5e5' viewBox='0 0 22 22'%3E%3Cpath d='m1.754 13.406 4.453-4.851 3.09 3.09 3.281 3.277.969-.969-3.309-3.312 3.844-4.121 6.148 6.886h1.082v-.855l-7.207-8.07-4.84 5.187L6.169 6.57l-5.48 5.965v.871ZM.688 16.844h20.625v1.375H.688Zm0 0'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23aaa' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e58978' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e54e33' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-waiting .maplibregl-ctrl-icon{animation:maplibregl-spin 2s linear infinite}@media(forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23999' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e58978' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e54e33' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}}@media(forced-colors:active)and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23666' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}}@keyframes maplibregl-spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}a.maplibregl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E");background-repeat:no-repeat;cursor:pointer;display:block;height:23px;margin:0 0 -4px -4px;overflow:hidden;width:88px}a.maplibregl-ctrl-logo.maplibregl-compact{width:14px}@media(forced-colors:active){a.maplibregl-ctrl-logo{background-color:transparent;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E")}}@media(forced-colors:active)and (prefers-color-scheme:light){a.maplibregl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E")}}.maplibregl-ctrl.maplibregl-ctrl-attrib{background-color:#ffffff80;margin:0;padding:0 5px}@media screen{.maplibregl-ctrl-attrib.maplibregl-compact{background-color:#fff;border-radius:12px;box-sizing:content-box;color:#000;margin:10px;min-height:20px;padding:2px 24px 2px 0;position:relative}.maplibregl-ctrl-attrib.maplibregl-compact-show{padding:2px 28px 2px 8px;visibility:visible}.maplibregl-ctrl-bottom-left>.maplibregl-ctrl-attrib.maplibregl-compact-show,.maplibregl-ctrl-top-left>.maplibregl-ctrl-attrib.maplibregl-compact-show{border-radius:12px;padding:2px 8px 2px 28px}.maplibregl-ctrl-attrib.maplibregl-compact .maplibregl-ctrl-attrib-inner{display:none}.maplibregl-ctrl-attrib-button{background-color:#ffffff80;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E");border:0;border-radius:12px;box-sizing:border-box;cursor:pointer;display:none;height:24px;outline:none;position:absolute;right:0;top:0;width:24px}.maplibregl-ctrl-attrib summary.maplibregl-ctrl-attrib-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;list-style:none}.maplibregl-ctrl-attrib summary.maplibregl-ctrl-attrib-button::-webkit-details-marker{display:none}.maplibregl-ctrl-bottom-left .maplibregl-ctrl-attrib-button,.maplibregl-ctrl-top-left .maplibregl-ctrl-attrib-button{left:0}.maplibregl-ctrl-attrib.maplibregl-compact .maplibregl-ctrl-attrib-button,.maplibregl-ctrl-attrib.maplibregl-compact-show .maplibregl-ctrl-attrib-inner{display:block}.maplibregl-ctrl-attrib.maplibregl-compact-show .maplibregl-ctrl-attrib-button{background-color:#0000000d}.maplibregl-ctrl-bottom-right>.maplibregl-ctrl-attrib.maplibregl-compact:after{bottom:0;right:0}.maplibregl-ctrl-top-right>.maplibregl-ctrl-attrib.maplibregl-compact:after{right:0;top:0}.maplibregl-ctrl-top-left>.maplibregl-ctrl-attrib.maplibregl-compact:after{left:0;top:0}.maplibregl-ctrl-bottom-left>.maplibregl-ctrl-attrib.maplibregl-compact:after{bottom:0;left:0}}@media screen and (forced-colors:active){.maplibregl-ctrl-attrib.maplibregl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='%23fff' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E")}}@media screen and (forced-colors:active)and (prefers-color-scheme:light){.maplibregl-ctrl-attrib.maplibregl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E")}}.maplibregl-ctrl-attrib a{color:#000000bf;text-decoration:none}.maplibregl-ctrl-attrib a:hover{color:inherit;text-decoration:underline}.maplibregl-attrib-empty{display:none}.maplibregl-ctrl-scale{background-color:#ffffffbf;border:2px solid #333;border-top:#333;box-sizing:border-box;color:#333;font-size:10px;padding:0 5px;white-space:nowrap}.maplibregl-popup{display:flex;left:0;pointer-events:none;position:absolute;top:0;will-change:transform}.maplibregl-popup-anchor-top,.maplibregl-popup-anchor-top-left,.maplibregl-popup-anchor-top-right{flex-direction:column}.maplibregl-popup-anchor-bottom,.maplibregl-popup-anchor-bottom-left,.maplibregl-popup-anchor-bottom-right{flex-direction:column-reverse}.maplibregl-popup-anchor-left{flex-direction:row}.maplibregl-popup-anchor-right{flex-direction:row-reverse}.maplibregl-popup-tip{border:10px solid transparent;height:0;width:0;z-index:1}.maplibregl-popup-anchor-top .maplibregl-popup-tip{align-self:center;border-bottom-color:#fff;border-top:none}.maplibregl-popup-anchor-top-left .maplibregl-popup-tip{align-self:flex-start;border-bottom-color:#fff;border-left:none;border-top:none}.maplibregl-popup-anchor-top-right .maplibregl-popup-tip{align-self:flex-end;border-bottom-color:#fff;border-right:none;border-top:none}.maplibregl-popup-anchor-bottom .maplibregl-popup-tip{align-self:center;border-bottom:none;border-top-color:#fff}.maplibregl-popup-anchor-bottom-left .maplibregl-popup-tip{align-self:flex-start;border-bottom:none;border-left:none;border-top-color:#fff}.maplibregl-popup-anchor-bottom-right .maplibregl-popup-tip{align-self:flex-end;border-bottom:none;border-right:none;border-top-color:#fff}.maplibregl-popup-anchor-left .maplibregl-popup-tip{align-self:center;border-left:none;border-right-color:#fff}.maplibregl-popup-anchor-right .maplibregl-popup-tip{align-self:center;border-left-color:#fff;border-right:none}[dir=rtl] .maplibregl-popup-anchor-left{flex-direction:row-reverse}[dir=rtl] .maplibregl-popup-anchor-right{flex-direction:row}[dir=rtl] .maplibregl-popup-anchor-top-left .maplibregl-popup-tip{align-self:flex-end}[dir=rtl] .maplibregl-popup-anchor-top-right .maplibregl-popup-tip{align-self:flex-start}[dir=rtl] .maplibregl-popup-anchor-bottom-left .maplibregl-popup-tip{align-self:flex-end}[dir=rtl] .maplibregl-popup-anchor-bottom-right .maplibregl-popup-tip{align-self:flex-start}.maplibregl-popup-close-button{background-color:transparent;border:0;border-radius:0 3px 0 0;cursor:pointer;position:absolute;right:0;top:0}.maplibregl-popup-close-button:hover{background-color:#0000000d}.maplibregl-popup-content{background:#fff;border-radius:3px;box-shadow:0 1px 2px #0000001a;padding:15px 10px;pointer-events:auto;position:relative}.maplibregl-popup-anchor-top-left .maplibregl-popup-content{border-top-left-radius:0}.maplibregl-popup-anchor-top-right .maplibregl-popup-content{border-top-right-radius:0}.maplibregl-popup-anchor-bottom-left .maplibregl-popup-content{border-bottom-left-radius:0}.maplibregl-popup-anchor-bottom-right .maplibregl-popup-content{border-bottom-right-radius:0}.maplibregl-popup-track-pointer{display:none}.maplibregl-popup-track-pointer *{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.maplibregl-map:hover .maplibregl-popup-track-pointer{display:flex}.maplibregl-map:active .maplibregl-popup-track-pointer{display:none}.maplibregl-marker{left:0;position:absolute;top:0;transition:opacity .2s;will-change:transform}.maplibregl-user-location-dot,.maplibregl-user-location-dot:before{background-color:#1da1f2;border-radius:50%;height:15px;width:15px}.maplibregl-user-location-dot:before{animation:maplibregl-user-location-dot-pulse 2s infinite;content:"";position:absolute}.maplibregl-user-location-dot:after{border:2px solid #fff;border-radius:50%;box-shadow:0 0 3px #00000059;box-sizing:border-box;content:"";height:19px;left:-2px;position:absolute;top:-2px;width:19px}@media(prefers-reduced-motion:reduce){.maplibregl-user-location-dot:before{animation:none}}@keyframes maplibregl-user-location-dot-pulse{0%{opacity:1;transform:scale(1)}70%{opacity:0;transform:scale(3)}to{opacity:0;transform:scale(1)}}.maplibregl-user-location-dot-stale{background-color:#aaa}.maplibregl-user-location-dot-stale:after{display:none}.maplibregl-user-location-accuracy-circle{background-color:#1da1f233;border-radius:100%;height:1px;width:1px}.maplibregl-crosshair,.maplibregl-crosshair .maplibregl-interactive,.maplibregl-crosshair .maplibregl-interactive:active{cursor:crosshair}.maplibregl-boxzoom{background:#fff;border:2px dotted #202020;height:0;left:0;opacity:.5;position:absolute;top:0;width:0}.maplibregl-cooperative-gesture-screen{align-items:center;background:#0006;color:#fff;display:flex;font-size:1.4em;inset:0;justify-content:center;line-height:1.2;opacity:0;padding:1rem;pointer-events:none;position:absolute;transition:opacity 1s ease 1s;z-index:99999}.maplibregl-cooperative-gesture-screen.maplibregl-show{opacity:1;transition:opacity .05s}.maplibregl-cooperative-gesture-screen .maplibregl-mobile-message{display:none}@media(hover:none),(pointer:coarse){.maplibregl-cooperative-gesture-screen .maplibregl-desktop-message{display:none}.maplibregl-cooperative-gesture-screen .maplibregl-mobile-message{display:block}}.maplibregl-pseudo-fullscreen{height:100%!important;left:0!important;position:fixed!important;top:0!important;width:100%!important;z-index:99999}:root{--bg-primary: #ffffff;--bg-secondary: #f0f0f0;--bg-muted: #a0a0a0;--bg-card: #ffffff;--bg-card-hover: #f8f8f8;--text-primary: #545454;--text-secondary: #888888;--text-muted: #888888;--accent: #bf2c37;--accent-hover: #a32630;--accent-light: #d85b66;--accent-text: #ffffff;--primary: #fce107;--primary-hover: #fde739;--primary-text: #000000;--secondary: #424245;--secondary-hover: #747479;--secondary-text: #ffffff;--success: #4ade80;--warning: #fbbf24;--danger: #ef4444;--border-radius: 8px;--border-radius-lg: 12px;--spacing: 1rem;--max-width: 480px;--bottom-bar-height: 56px;--bottom-bar-total: calc(56px + env(safe-area-inset-bottom, 0px)) ;--page-header-height: 56px;--font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", sans-serif}*{box-sizing:border-box}button,a,[role=button],summary,input,select,textarea,label{touch-action:manipulation}button{color:inherit}html{background:var(--bg-primary);overscroll-behavior:none;-webkit-overflow-scrolling:touch;height:100%;overflow:hidden}html.swipe-page{background:var(--bg-secondary);overflow:hidden;overscroll-behavior:none}body{margin:0;padding:0 var(--spacing) var(--spacing);font-family:var(--font-family);background:var(--bg-primary);color:var(--text-primary);height:100%;overflow-y:auto;-webkit-font-smoothing:antialiased;overscroll-behavior-y:none;-webkit-overflow-scrolling:touch}body.status-screen-page{background:var(--bg-secondary)}.container{max-width:var(--max-width);margin:0 auto}.page-header{position:sticky;top:0;z-index:100;background:var(--bg-primary);display:flex;align-items:center;gap:.25rem;padding:calc(env(safe-area-inset-top,0) + .5rem) var(--spacing) .5rem;margin-left:calc(-1 * var(--spacing));margin-right:calc(-1 * var(--spacing));border-bottom:1px solid var(--bg-secondary);margin-bottom:1.5rem}.page-header__left{display:flex;align-items:center;gap:.25rem;flex-shrink:0}.page-header__center{flex:1;min-width:0;padding:0 .25rem 0 .625rem}.page-header__right{flex-shrink:0;display:flex;align-items:center}.page-header__title{font-size:1.4rem;font-weight:700;text-transform:uppercase;letter-spacing:-.5px;color:var(--accent);margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.page-header__subtitle{font-size:.8rem;color:var(--text-secondary);margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.page-header__hamburger,.page-header__back{width:44px;height:44px;flex-shrink:0;display:flex;align-items:center;justify-content:center;background:var(--bg-card);border:1px solid var(--bg-secondary);border-radius:50%;cursor:pointer;color:var(--text-primary);box-shadow:0 2px 8px #0000001a;transition:background .2s ease,transform .15s ease}.page-header__hamburger:hover,.page-header__back:hover{background:var(--bg-secondary)}.page-header__hamburger:active,.page-header__back:active{transform:scale(.93)}@media(min-width:768px){.page-header{padding-top:calc(env(safe-area-inset-top,0) + .75rem);padding-bottom:.75rem}}@media(max-width:767px)and (min-height:650px){.page-header__hamburger{display:none}}.download-button,.add-menu-button,.page-header__icon-btn{width:44px;height:44px;flex-shrink:0;display:flex;align-items:center;justify-content:center;background:var(--bg-card);border:1px solid var(--bg-secondary);border-radius:50%;cursor:pointer;color:var(--text-primary);box-shadow:0 2px 8px #0000001a;transition:background .2s ease,transform .15s ease}.download-button:hover,.add-menu-button:hover,.page-header__icon-btn:hover{background:var(--bg-secondary)}.download-button:active,.add-menu-button:active,.page-header__icon-btn:active{transform:scale(.93)}.page-header__icon-btn:disabled{opacity:.45;cursor:default}.add-menu-container{position:relative;z-index:100}.add-menu-dropdown{position:absolute;top:calc(100% + .5rem);right:0;background:var(--bg-card);border:1px solid var(--bg-secondary);border-radius:var(--border-radius);box-shadow:0 4px 12px #00000026;min-width:180px;overflow:hidden}.add-menu-dropdown button{width:100%;padding:.875rem 1rem;font-size:.9rem;font-weight:500;text-align:left;background:var(--bg-card);color:var(--text-primary);border:none;cursor:pointer;transition:background .2s ease;display:block}.add-menu-dropdown button:hover{background:var(--bg-secondary)}.add-menu-dropdown button:not(:last-child){border-bottom:1px solid var(--bg-secondary)}.group-selector{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(calc((100% - 2 * var(--spacing)) / 3),100%),1fr));gap:var(--spacing);margin-bottom:1.5rem}.group-btn{padding:2rem 1rem;font-size:1.5rem;font-weight:700;letter-spacing:1px;text-transform:uppercase;border:2px solid var(--bg-secondary);border-radius:var(--border-radius-lg);background:var(--bg-secondary);color:var(--text-primary);cursor:pointer;transition:all .2s ease}.group-btn:hover{border-color:var(--accent);background:var(--bg-card-hover)}.group-btn.active{border-color:var(--accent);background:var(--accent);color:var(--accent-text)}.group-btn .count{display:block;font-size:.8rem;font-weight:500;letter-spacing:0;text-transform:none;margin-top:.5rem;opacity:.7}.history-section{margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid var(--bg-secondary)}.history-link{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.875rem 1.5rem;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--border-radius);color:var(--text-primary);text-decoration:none;font-weight:500;transition:all .2s}.history-link:hover{background:var(--bg-secondary);border-color:var(--accent);color:var(--accent);transform:translateY(-1px)}.history-link svg{flex-shrink:0}.admin-link{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.875rem 1.5rem;background:#ffc1071a;border:1px solid rgba(255,193,7,.3);border-radius:var(--border-radius);color:var(--text-primary);text-decoration:none;font-weight:500;transition:all .2s}.admin-link:hover{background:#ffc10733;border-color:#ffc10780;transform:translateY(-1px)}.admin-link svg{flex-shrink:0}.reset-section{margin-top:2rem;padding-top:var(--spacing);padding-bottom:calc(var(--spacing) + env(safe-area-inset-bottom,0));border-top:1px solid var(--bg-secondary)}.reset-btn{width:100%;padding:1rem;font-size:.9rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--danger);background:transparent;border:1px solid var(--danger);border-radius:var(--border-radius);cursor:pointer;transition:all .2s ease}.reset-btn:hover{background:var(--danger);color:var(--bg-primary)}.pull-refresh-indicator{position:fixed;top:env(safe-area-inset-top,0);left:0;right:0;height:44px;display:flex;align-items:center;justify-content:center;z-index:1200;transform:translateY(-100%);opacity:0;will-change:transform,opacity;pointer-events:none}.pull-refresh-indicator__spinner{width:22px;height:22px;border:2.5px solid var(--bg-secondary);border-top-color:var(--accent);border-radius:50%}.pull-refresh-indicator--spinning .pull-refresh-indicator__spinner{animation:spinner-rotate .7s linear infinite}.button{padding:.75rem 1.25rem;font-size:.85rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;border:none;border-radius:var(--border-radius);cursor:pointer;transition:all .2s ease;min-width:80px;font-family:inherit;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:.5rem}.button--primary{background:var(--accent);color:var(--accent-text)}.button--primary:hover:not(.button--disabled){background:var(--accent-hover)}.button--success{background:var(--success);color:#fff}.button--success:hover:not(.button--disabled){background:#22c55e}.button--danger{background:var(--danger);color:var(--accent-text)}.button--danger:hover:not(.button--disabled){background:#1a1a1a}.button--warning{background:var(--warning);color:#000}.button--warning:hover:not(.button--disabled){background:#fcd34d}.button--yellow{background:var(--primary);color:var(--primary-text)}.button--yellow:hover:not(.button--disabled){background:var(--primary-hover)}.button--secondary{background:var(--secondary);color:var(--secondary-text)}.button--secondary:hover:not(.button--disabled){background:var(--secondary-hover)}.button--outline{background:transparent;border:1px solid currentColor;color:var(--text-primary)}.button--outline:hover:not(.button--disabled){background:var(--bg-card-hover)}.button--outline-danger{background:transparent;border:1px solid var(--danger);color:var(--danger)}.button--outline-danger:hover:not(.button--disabled){background:var(--danger);color:var(--bg-primary)}.button--ghost{background:var(--bg-secondary);color:var(--text-primary);border:2px solid var(--bg-secondary)}.button--ghost:hover:not(.button--disabled){background:var(--bg-card-hover);border-color:var(--accent)}.button--muted{background:var(--bg-secondary);color:var(--text-muted);border:1px solid var(--bg-secondary)}.button--muted:hover:not(.button--disabled){background:var(--bg-card-hover);color:var(--text-primary)}.button--large{padding:1rem;font-size:1rem}.button--hero{padding:2rem 1rem;font-size:1.5rem;font-weight:700;letter-spacing:1px;border-radius:var(--border-radius-lg)}.button--compact{padding:.5rem .6rem;font-size:.75rem;min-width:unset}.button--tiny{padding:.35rem .5rem;font-size:.7rem;min-width:unset}.button--disabled,.button:disabled{opacity:.4;cursor:not-allowed;background:var(--bg-muted);pointer-events:none}.button--active{box-shadow:inset 0 2px 4px #0003}.button--selected{background:var(--accent);color:var(--accent-text);border-color:var(--accent)}.button--circle{width:44px;height:44px;min-width:unset;border-radius:50%;padding:0}.button--full-width{width:100%}.button--icon-only{min-width:unset;padding:.75rem}.button--clear{padding:.5rem .75rem;font-size:1.25rem;line-height:1;color:var(--text-muted);background:transparent;border:none;min-width:36px;height:36px;display:flex;align-items:center;justify-content:center}.button--clear:hover:not(.button--disabled){background:#dc26261a;color:var(--danger)}.button--clear:active:not(.button--disabled){background:var(--danger);color:var(--accent-text)}.button--clear.button--disabled{opacity:.3;background:transparent}.button--clear.button--disabled:hover{background:transparent;color:var(--text-muted)}.button--list-item{display:block;width:100%;padding:.75rem;text-align:left;background:var(--bg-secondary);border:none;margin-bottom:.5rem;min-width:unset}.button--list-item:hover:not(.button--disabled){background:var(--bg-card-hover)}@media(max-width:375px){.button{padding:.5rem 1rem;font-size:.75rem}.button--large{padding:.875rem;font-size:.95rem}.button--hero{padding:1.5rem .75rem;font-size:1.25rem}.button--compact{padding:.35rem .5rem;font-size:.7rem}}.card{background:var(--bg-card);border-radius:var(--border-radius);padding:1rem 1.25rem;border:1px solid var(--bg-secondary);transition:background .2s ease,box-shadow .2s ease,transform .2s ease}.card:hover{background:var(--bg-card-hover)}.card__header{margin-bottom:.75rem}.card__header--with-action{display:flex;justify-content:space-between;align-items:center;gap:1rem}.card__title{margin:0 0 .25rem;font-size:1.1rem;font-weight:600;color:var(--text-primary)}.card__body{flex:1}.card__main{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--spacing);width:100%}.card__info{flex:1;min-width:0}.card__info h3{margin:0 0 .25rem;font-size:1.1rem;font-weight:600;color:var(--text-primary)}.card__metadata{display:flex;align-items:center;gap:.75rem;margin-top:.25rem}.card__info .age{color:var(--text-muted);font-size:.85rem}.card__level{color:var(--text-secondary);font-size:.9em;font-weight:400}.card__info .device-status{font-size:.85rem;margin-top:.35rem}.card__info .device-status.scanned{color:var(--success);font-weight:600}.card__info .device-status.pending{color:var(--text-muted)}.card__info .student-note-container{margin-top:.75rem;width:100%}.card__actions{display:flex;flex-direction:column;gap:.5rem;align-items:stretch;min-width:110px}.card__actions .scan-btn,.card__actions .remove-btn{width:100%;text-align:center}.card__notes{width:100%}.card__footer{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--bg-secondary)}.card--horizontal{display:flex;justify-content:space-between;align-items:center}.card--vertical{display:flex;flex-direction:column;gap:.75rem}.card--with-notes{flex-direction:column;gap:.75rem}.card--student{display:flex;justify-content:space-between;align-items:flex-start}.card--attendance{box-shadow:0 1px 3px #0000001a}.card--history{box-shadow:0 2px 8px #00000014}.card--history:hover{box-shadow:0 4px 16px #0000001f;transform:translateY(-2px)}.card--workflow{text-decoration:none;color:var(--text-primary);border-left:4px solid transparent}.card--workflow:hover{border-left-color:var(--accent)}.card--absent{background:var(--bg-card-hover)}.card--editing{border-color:var(--accent);box-shadow:0 4px 6px #0000001a,0 2px 4px #0000000f}.card--coach{background:#fce10714;border:2px solid var(--primary);border-left:4px solid var(--primary)}.card--coach:hover{background:#fce1071f}.card--transfer{border-left:3px solid var(--warning)}.card--manual{border-left:3px solid var(--accent-light)}.card--highlighted{border-left:4px solid var(--accent);background:#bf2c370a}.card--highlighted:hover{background:#bf2c3712}.covers-day-picker{display:flex;gap:.5rem;margin-bottom:1.25rem;align-items:center}.covers-date-input{flex:1}.card--disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.card--pulse{border-left-color:var(--primary);background:linear-gradient(135deg,var(--bg-secondary) 0%,rgba(252,225,7,.08) 100%);animation:pulse-border 2s ease-in-out infinite}.badge{display:inline-block;padding:.25rem .6rem;border-radius:4px;font-size:.75rem;font-weight:600;text-transform:uppercase;white-space:nowrap}.badge--flaik{background:var(--bg-secondary);color:var(--text-muted);font-family:SF Mono,Monaco,monospace}.badge--flaik.badge--assigned{background:#4ade8026;color:var(--success)}.badge--flaik-large{display:inline-flex;align-items:center;gap:.35rem;font-size:1rem;font-weight:700;padding:.35rem .65rem}.badge--flaik svg{flex-shrink:0;width:16px;height:16px}.badge--signout{border:none;cursor:pointer;transition:opacity .2s;padding:.35rem .65rem;font-size:.85rem;font-weight:700}.badge--signout:active{opacity:.7}.badge--transfer{background:var(--warning);color:#000;font-size:.7rem;padding:.2rem .4rem;margin-top:.5rem}.badge--manual{background:var(--accent-light);color:#fff;font-size:.7rem;padding:.2rem .4rem;margin-top:.5rem}.badge--coach{background:var(--primary);color:var(--primary-text);font-size:.7rem;font-weight:700;letter-spacing:.5px;padding:.25rem .65rem;vertical-align:middle}.badge--status{border:1px solid;margin-right:.5rem}.badge--red{background:#dc2626;color:#fff}.badge--yellow{background:#ca8a04;color:#fff}.badge--green{background:#16a34a;color:#fff}.badge--success{background:#16a34a26;color:#16a34a;border-color:#16a34a}.badge--warning{background:#fbbf2426;color:#d97706;border-color:#d97706}.badge--error{background:#dc262626;color:#dc2626;border-color:#dc2626}.badge--overridden{border:2px dashed #ffffff}.badge--level{background:#4ade8026;color:var(--success)}.badge--muted{background:var(--bg-secondary);color:var(--text-muted)}.badge--compact{padding:.25rem .55rem;font-size:.7rem}.badge--large{padding:.75rem 1.5rem;font-size:1rem}@media(max-width:375px){.badge--signout{font-size:.75rem;padding:.25rem .55rem}}.student-list{display:flex;flex-direction:column;gap:.75rem}.coach-badge-inline{display:inline-block;padding:.25rem .65rem;background:var(--primary);color:var(--primary-text);font-size:.7rem;font-weight:700;border-radius:4px;letter-spacing:.5px;vertical-align:middle}.scan-btn{padding:.75rem 1.25rem;font-size:.85rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--accent-text);background:var(--accent);border:none;border-radius:var(--border-radius);cursor:pointer;transition:all .2s ease;min-width:80px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.scan-btn:hover{background:var(--accent-hover)}.scan-btn.scanned{background:var(--success)}.scan-btn:disabled{opacity:.4;cursor:not-allowed;background:var(--bg-muted)}.instruction-banner{display:flex;align-items:flex-start;gap:1rem;background:var(--bg-secondary);padding:1rem 1.25rem;border-radius:var(--border-radius);margin-bottom:var(--spacing);border-left:4px solid var(--primary)}.instruction-icon{font-size:2rem;line-height:1;flex-shrink:0}.instruction-content{flex:1}.instruction-title{font-size:.95rem;font-weight:600;color:var(--text-primary);margin-bottom:.35rem;line-height:1.3}.instruction-text{font-size:.85rem;color:var(--text-secondary);line-height:1.4}.status-screen{position:fixed;inset:0;background:var(--bg-secondary);display:flex;align-items:center;justify-content:center;padding:1rem;padding-top:calc(1rem + env(safe-area-inset-top,0));padding-bottom:calc(1rem + env(safe-area-inset-bottom,0));overflow:hidden}.status-screen-content{display:flex;flex-direction:column;align-items:center;width:100%;max-width:500px;max-height:100%;overflow-y:auto}.status-screen-hero{text-align:center;margin-bottom:2rem}.status-screen-icon{font-size:4rem;line-height:1;color:var(--success);margin-bottom:1rem;animation:statusPulse .6s ease-out}@keyframes statusPulse{0%{transform:scale(.5);opacity:0}50%{transform:scale(1.1)}to{transform:scale(1);opacity:1}}.status-screen-title{font-size:1.75rem;font-weight:700;color:var(--text-primary);margin:0;letter-spacing:-.5px}.status-screen-card{background:var(--bg-card);border:1px solid #ddd;border-radius:var(--border-radius-lg);padding:1.5rem;margin-bottom:2rem;width:100%;box-shadow:0 2px 8px #00000014}.status-screen-card h2{margin:0 0 1rem;font-size:1.1rem;font-weight:600;color:var(--text-primary)}.status-screen-steps{list-style:none;padding:0;margin:0}.status-screen-steps li{padding:.875rem 0;border-bottom:1px solid var(--bg-secondary);color:var(--text-secondary);line-height:1.5;font-size:.95rem}.status-screen-steps li:last-child{border-bottom:none}.status-screen-steps strong{color:var(--text-primary);font-weight:600}.status-screen-info{display:flex;align-items:center;gap:.75rem;margin-bottom:2rem;font-size:.95rem}.status-screen-badge{background:var(--accent);color:var(--accent-text);padding:.4rem .875rem;border-radius:var(--border-radius);font-weight:700;letter-spacing:.5px;font-size:.9rem}.status-screen-separator{color:var(--text-muted)}.status-screen-coach{color:var(--text-primary);font-weight:600}.status-screen-actions{display:flex;flex-direction:column;gap:.75rem;width:100%}.status-screen-btn{text-align:center;padding:1rem 1.5rem;font-size:1rem;text-decoration:none;border-radius:var(--border-radius);font-weight:600;transition:all .2s;cursor:pointer;display:block}.status-screen-btn.primary{background:var(--accent);color:var(--accent-text);border:none}.status-screen-btn.primary:hover{background:var(--accent-hover);transform:translateY(-1px)}.status-screen-btn.secondary{background:transparent;color:var(--text-primary);border:2px solid #ccc}.status-screen-btn.secondary:hover{border-color:var(--accent);color:var(--accent)}@media(max-width:767px){.status-screen-hero{margin-bottom:1.25rem}.status-screen-icon{font-size:3rem;margin-bottom:.75rem}.status-screen-title{font-size:1.5rem}.status-screen-card{padding:1.25rem;margin-bottom:1.25rem}.status-screen-info{margin-bottom:1.25rem}.status-screen-btn{padding:.875rem 1.25rem}}.assignment-warning-banner{display:flex;align-items:flex-start;gap:1rem;background:#ef44441a;padding:1rem 1.25rem;border-radius:var(--border-radius);margin-top:var(--spacing);border-left:4px solid #dc2626}.assignment-warning-icon{font-size:1.5rem;line-height:1;flex-shrink:0}.assignment-warning-content{flex:1}.assignment-warning-title{font-size:.95rem;font-weight:600;color:#dc2626;margin-bottom:.35rem;line-height:1.3}.assignment-warning-text{font-size:.85rem;color:#991b1b;line-height:1.4}@keyframes highlightError{0%{transform:scale(1);box-shadow:0 0 #dc262666}50%{transform:scale(1.02);box-shadow:0 0 0 8px #dc262600}to{transform:scale(1);box-shadow:0 0 #dc262600}}.student-search{position:relative;margin:1rem 0}.student-search-input{width:100%;padding:.75rem 2.5rem;font-size:1rem;border:2px solid var(--border-color);border-radius:var(--border-radius);background:var(--bg-card);color:var(--text-primary);transition:border-color .2s,background .2s}.student-search-input:focus{outline:none;border-color:var(--accent);background:var(--bg-primary)}.student-search-input:disabled{opacity:.6;cursor:not-allowed}.student-search .search-icon{position:absolute;left:.75rem;top:50%;transform:translateY(-50%);opacity:.5;pointer-events:none;color:var(--text-muted)}.student-search .search-clear-btn{position:absolute;right:.75rem;top:50%;transform:translateY(-50%);background:none;border:none;font-size:1.5rem;cursor:pointer;opacity:.5;color:var(--text-muted);padding:.25rem;line-height:1;transition:opacity .2s}.student-search .search-clear-btn:hover{opacity:1}.search-results-info{padding:.5rem 1rem;font-size:.875rem;color:var(--text-secondary);text-align:center;background:var(--bg-secondary);border-radius:var(--border-radius);margin-bottom:1rem}.load-more-section{text-align:center;padding:2rem 1rem;border-top:1px solid var(--border-color);margin-top:1rem}.load-more-info{font-size:.875rem;color:var(--text-secondary);margin-bottom:1rem}.load-more-btn{background:var(--primary);color:var(--primary-text);border:none;padding:.75rem 2rem;border-radius:var(--border-radius);font-weight:600;font-size:1rem;cursor:pointer;transition:all .2s;text-transform:uppercase;letter-spacing:.5px}.load-more-btn:disabled{opacity:.5;cursor:not-allowed}.load-more-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #00000026;background:var(--primary-hover)}.toast{position:fixed;top:calc(2rem + env(safe-area-inset-top,0));left:50%;transform:translate(-50%) translateY(-120%);background:var(--bg-card);color:var(--text-primary);padding:1rem 1.5rem;border-radius:var(--border-radius-lg);box-shadow:0 8px 24px #0003;display:flex;align-items:center;gap:.75rem;z-index:10000;max-width:calc(var(--max-width) - 2rem);transition:transform .3s ease-in-out;font-weight:500}.toast--visible{transform:translate(-50%) translateY(0)}.toast--success{background:var(--success);color:#fff}.toast--error{background:var(--accent);color:var(--accent-text)}.toast--info{background:var(--secondary);color:var(--secondary-text)}.toast-icon{font-size:1.5rem;line-height:1;font-weight:700}.toast-message{font-size:.95rem;line-height:1.4}.flaik-counter{background:var(--bg-secondary);border-radius:var(--border-radius);padding:.75rem 1rem;margin:0 0 1rem;display:flex;align-items:center;justify-content:space-between;gap:1rem}.flaik-counter__label{font-size:.9rem;font-weight:500;color:var(--text-secondary)}.flaik-counter__value{font-size:1.5rem;font-weight:600;color:var(--accent);line-height:1}.loading-spinner{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;padding:3rem 1.5rem}.loading-spinner--small{padding:1.5rem 1rem;gap:.75rem}.loading-spinner--large{padding:4rem 2rem;gap:1.5rem}.loading-spinner__spinner{width:48px;height:48px;border:4px solid rgba(255,255,255,.1);border-top-color:var(--accent);border-radius:50%;animation:spinner-rotate .8s linear infinite}.loading-spinner--small .loading-spinner__spinner{width:32px;height:32px;border-width:3px}.loading-spinner--large .loading-spinner__spinner{width:64px;height:64px;border-width:5px}.spinner{animation:spinner-rotate .8s linear infinite}.loading-spinner__text{color:var(--text-secondary);font-size:1rem;font-weight:500;opacity:.9}.loading-spinner--small .loading-spinner__text{font-size:.875rem}.loading-spinner--large .loading-spinner__text{font-size:1.125rem}.update-banner{position:fixed;bottom:calc(env(safe-area-inset-bottom,0) + .75rem);left:.75rem;right:.75rem;background:var(--bg-card);border:1px solid var(--bg-secondary);border-radius:var(--border-radius);box-shadow:0 4px 16px #0003;display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.75rem 1rem;z-index:1600;animation:update-banner-in .25s ease-out}@keyframes update-banner-in{0%{transform:translateY(120%);opacity:0}to{transform:translateY(0);opacity:1}}.update-banner__text{font-size:.875rem;color:var(--text-primary);flex:1}.update-banner__actions{display:flex;align-items:center;gap:.5rem;flex-shrink:0}.update-banner__dismiss{background:none;border:none;color:var(--text-muted);font-size:1.2rem;line-height:1;cursor:pointer;padding:.25rem}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;padding:3rem 1rem;color:var(--text-muted);text-align:center}.empty-state p{margin:0}.filter-pills{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:1rem;align-items:center}.filter-pill{padding:.35rem .75rem;border-radius:999px;border:1px solid var(--bg-secondary);background:var(--bg-card);color:var(--text-secondary);font-size:.85rem;font-weight:500;cursor:pointer;transition:background .15s,color .15s,border-color .15s}.filter-pill--active{background:var(--secondary);color:var(--secondary-text);border-color:var(--secondary)}.filter-divider{width:1px;height:1.25rem;background:var(--bg-secondary);margin:0 .2rem}.badge--program{background:var(--bg-secondary);color:var(--text-secondary);font-size:.75rem;font-weight:600;padding:.2rem .5rem;border-radius:4px;text-transform:uppercase;letter-spacing:.04em}.modal{position:fixed;inset:0;display:none;z-index:1000}.modal--open{display:flex}.modal__overlay{position:absolute;inset:0;background:#000000e6}.modal__content{position:relative;background:var(--bg-card);padding:1.5rem;border-radius:var(--border-radius-lg);width:100%;max-width:400px;border:1px solid var(--bg-secondary);z-index:1;margin:auto;box-sizing:border-box;overflow-x:hidden}.modal__header{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem}.modal__title{margin:0;font-size:1.1rem;font-weight:600;color:var(--text-primary);flex:1}.modal__body{margin-bottom:1rem}.modal__footer{display:flex;align-items:center;gap:.75rem}.modal__footer .button{flex:1}.modal__footer--column{flex-direction:column;gap:.5rem}.modal--center{display:flex;align-items:center;justify-content:center;padding:var(--spacing)}.modal--center .modal__content{max-height:calc(100dvh - 2 * var(--spacing, 1rem));display:flex;flex-direction:column}.modal--center .modal__body{overflow-y:auto;-webkit-overflow-scrolling:touch;flex:1;min-height:0}@media(max-width:767px){.modal--center{padding:.75rem}.modal__content{padding:1rem;border-radius:var(--border-radius)}.modal__content .form-field__input,.modal__content .form-field__select,.modal__content .form-field__textarea{max-width:100%;box-sizing:border-box}.modal__content .form-field__help{word-wrap:break-word;overflow-wrap:break-word}}.modal--fullscreen{padding:0;flex-direction:column}.modal--fullscreen .modal__overlay{background:var(--bg-primary);position:static}.modal--fullscreen .modal__content{max-width:100%;width:100%;height:100%;border-radius:0;border:none;padding:0;display:flex;flex-direction:column;margin:0;overflow:hidden}.modal--fullscreen .modal__header{padding:var(--spacing);background:var(--bg-secondary);text-align:center;border-bottom:1px solid var(--bg-secondary);margin-bottom:0}.modal--fullscreen .modal__body{flex:1;min-height:0;overflow:hidden;display:flex;align-items:center;justify-content:center;background:var(--bg-primary);margin-bottom:0}.modal--fullscreen .modal__footer{padding:var(--spacing);padding-bottom:calc(1.5rem + env(safe-area-inset-bottom));background:var(--bg-secondary);border-top:1px solid var(--bg-secondary)}.modal--scanner{z-index:1000}.modal--scanner .modal__content{background:var(--bg-primary)}.modal--confirm .modal__content{text-align:center}.modal--confirm .modal__title{color:var(--danger)}.modal--confirm .modal__body p{margin:0 0 1rem;color:var(--text-secondary);line-height:1.5}.modal--confirm .modal__body p:last-child{margin-bottom:0}.modal--confirm .confirm-warning{margin:0;padding:.75rem;background:#ffc1071a;border:1px solid rgba(255,193,7,.3);border-radius:var(--border-radius);color:var(--text-secondary);font-size:.9rem;line-height:1.4}.modal--level-1{z-index:1001}.modal--level-2{z-index:1002}.modal--level-3{z-index:1003}#scanner-container{width:100%;max-width:400px;position:relative;overflow:hidden}#scanner-container video{width:100%;max-height:calc(100dvh - 10rem - env(safe-area-inset-bottom,0px));display:block;border-radius:var(--border-radius);object-fit:contain;min-height:200px}.scanner-aim-frame{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:250px;height:250px;box-shadow:0 0 0 2000px #00000080;pointer-events:none}.scanner-aim-frame__corner{position:absolute;width:40px;height:40px}.scanner-aim-frame__corner--tl{top:0;left:0;border-top:5px solid white;border-left:5px solid white}.scanner-aim-frame__corner--tr{top:0;right:0;border-top:5px solid white;border-right:5px solid white}.scanner-aim-frame__corner--bl{bottom:0;left:0;border-bottom:5px solid white;border-left:5px solid white}.scanner-aim-frame__corner--br{bottom:0;right:0;border-bottom:5px solid white;border-right:5px solid white}.scanner-loading{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:var(--text-primary);font-size:.9rem;white-space:nowrap}.scanner-error{padding:1rem;text-align:center;display:flex;flex-direction:column;align-items:center;gap:1rem;color:var(--text-primary)}.scanner-focus-indicator{position:absolute;width:72px;height:72px;border:2px solid white;border-radius:2px;transform:translate(-50%,-50%);pointer-events:none;animation:scanner-focus-anim 2s ease forwards}@keyframes scanner-focus-anim{0%{opacity:0;transform:translate(-50%,-50%) scale(1.5)}12%{opacity:1;transform:translate(-50%,-50%) scale(1)}70%{opacity:1;transform:translate(-50%,-50%) scale(1)}to{opacity:0;transform:translate(-50%,-50%) scale(1)}}#manual-scanner-container{width:100%;max-width:400px;margin:0 auto}.coach-search{margin-bottom:1rem}.coach-selector{display:flex;flex-direction:column;gap:.75rem}.coach-btn{padding:1.25rem;text-align:left;background:var(--bg-secondary);border:2px solid var(--bg-secondary);border-radius:var(--border-radius);cursor:pointer;transition:all .2s ease}.coach-btn:hover{border-color:var(--accent);background:var(--bg-card-hover)}.coach-btn .coach-name{display:block;font-size:1.1rem;font-weight:600;color:var(--text-primary);margin-bottom:.25rem}.coach-btn .coach-groups{display:block;font-size:.75rem;font-weight:400;color:var(--text-muted)}.coach-btn--cover{background:#fff9e6;border-color:var(--primary);margin-top:.5rem}.coach-btn--cover:hover{background:#fff3cc;border-color:var(--primary)}.coach-btn--cover .coach-name{color:#960;font-weight:600}.coach-btn--cover .coach-groups{color:#650}.coach-btn--muted{opacity:.5;background:var(--bg-secondary)}.coach-btn--muted:hover{opacity:.6;background:var(--bg-secondary);border-color:var(--border)}.coach-header{display:flex;align-items:center;justify-content:center;gap:.75rem;margin-top:.5rem}.current-coach{font-size:.9rem;color:var(--text-secondary);font-weight:500}.change-coach-btn{padding:.35rem .75rem;font-size:.75rem;font-weight:600;text-transform:uppercase;background:var(--bg-secondary);color:var(--text-muted);border:1px solid var(--bg-muted);border-radius:var(--border-radius);cursor:pointer;transition:all .2s ease}.change-coach-btn:hover{background:var(--bg-card-hover);color:var(--text-primary)}.roster-actions{display:flex;gap:.75rem;margin-bottom:var(--spacing)}.roster-actions button{flex:1;padding:.75rem;font-size:.85rem;font-weight:600;background:var(--bg-secondary);color:var(--accent);border:1px dashed var(--accent);border-radius:var(--border-radius);cursor:pointer;transition:all .2s ease}.roster-actions button:hover{background:var(--accent);color:var(--accent-text);border-style:solid}.transfer-list{flex:1;overflow-y:auto;margin-bottom:1rem;min-height:100px}.transfer-student-btn .name{display:block;font-weight:600;color:var(--text-primary)}.transfer-student-btn .info{display:block;font-size:.75rem;font-weight:400;color:var(--text-muted)}.customer-id-row{display:flex;gap:.5rem}.customer-id-row input{flex:1}.scan-id-btn{white-space:nowrap}.scanner-inline{margin-top:1rem;text-align:center}.scanner-inline #manual-scanner-container{margin-bottom:.5rem}.continuous-scanner{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;background:#000}.continuous-scanner__overlay{position:absolute;inset:0;background:#000000f2;z-index:1}.continuous-scanner__container{position:relative;z-index:2;width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left)}.scanner-progress-bar{position:fixed;top:0;left:0;right:0;height:calc(10px + env(safe-area-inset-top,0));padding-top:env(safe-area-inset-top,0);background:#0006;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);z-index:1001;display:flex;gap:3px;padding-left:3px;padding-right:3px}.scanner-progress-bar__segment{flex:1;background:#fff3;border-radius:2px;transition:all .4s cubic-bezier(.4,0,.2,1)}.scanner-progress-bar__segment--filled{background:#10b981;box-shadow:0 0 10px #10b98199}.scanner-progress-bar__text{position:fixed;bottom:6rem;left:50%;transform:translate(-50%);z-index:1001;color:#fff;font-size:1rem;font-weight:600;text-shadow:0 2px 8px rgba(0,0,0,.8);padding:.5rem 1rem;background:#0009;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:20px;border:1px solid rgba(255,255,255,.1);white-space:nowrap}@media(max-width:767px){.scanner-progress-bar{height:calc(8px + env(safe-area-inset-top,0));gap:2px;padding-left:2px;padding-right:2px}.scanner-progress-bar__text{font-size:.9rem;bottom:calc(5.5rem + env(safe-area-inset-bottom,0px))}}.scanner-camera{position:relative;width:100%;max-width:800px;aspect-ratio:4 / 3;background:#000;border-radius:12px;overflow:hidden;box-shadow:0 20px 60px #00000080}@media(max-width:767px){.scanner-camera{width:100%;height:100vh;height:100dvh;max-width:none;aspect-ratio:unset;border-radius:0}}.scanner-camera__video{width:100%;height:100%;object-fit:cover;display:block}.scanner-camera__loading{position:absolute;inset:0;background:#000000e6;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;z-index:10}.scanner-camera__dimming-overlay{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:280px;height:280px;border-radius:16px;box-shadow:0 0 0 9999px #00000080;z-index:4;pointer-events:none}.scanner-camera__aim-frame{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:280px;height:280px;z-index:5;pointer-events:none}@media(max-width:767px){.scanner-camera__dimming-overlay,.scanner-camera__aim-frame{width:260px;height:260px}}.scanner-camera__corner{position:absolute;width:50px;height:50px;border:4px solid var(--primary);animation:scanner-corner-pulse 3s ease-in-out infinite}@keyframes scanner-corner-pulse{0%,to{opacity:1}50%{opacity:.2}}.scanner-camera__corner--tl{top:0;left:0;border-right:none;border-bottom:none;border-radius:16px 0 0}.scanner-camera__corner--tr{top:0;right:0;border-left:none;border-bottom:none;border-radius:0 16px 0 0}.scanner-camera__corner--bl{bottom:0;left:0;border-right:none;border-top:none;border-radius:0 0 0 16px}.scanner-camera__corner--br{bottom:0;right:0;border-left:none;border-top:none;border-radius:0 0 16px}@media(max-width:767px){.scanner-camera__corner{width:45px;height:45px;border-width:3px}}.scanner-camera__loading-spinner{width:48px;height:48px;border:4px solid rgba(255,255,255,.1);border-top-color:#fce107;border-radius:50%;animation:spinner-rotate .8s linear infinite}@keyframes spinner-rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.scanner-camera__loading-text{color:#fff;font-size:1rem;font-weight:500;opacity:.9}.scanner-flash-overlay{position:fixed;inset:0;z-index:2000;pointer-events:none;animation-duration:.5s;animation-timing-function:ease-out}.scanner-flash-overlay--success{animation-name:flash-success}.scanner-flash-overlay--duplicate{animation-name:flash-duplicate}.scanner-flash-overlay--error{animation-name:flash-error}@keyframes flash-success{0%{background:#10b98100;box-shadow:inset 0 0 #10b98100}50%{background:#10b98140;box-shadow:inset 0 0 60px 15px #10b981b3}to{background:#10b98100;box-shadow:inset 0 0 #10b98100}}@keyframes flash-duplicate{0%{background:#fce10700;box-shadow:inset 0 0 #fce10700}50%{background:#fce10740;box-shadow:inset 0 0 60px 15px #fce107b3}to{background:#fce10700;box-shadow:inset 0 0 #fce10700}}@keyframes flash-error{0%{background:#ef444400;box-shadow:inset 0 0 #ef444400}50%{background:#ef444440;box-shadow:inset 0 0 60px 15px #ef4444b3}to{background:#ef444400;box-shadow:inset 0 0 #ef444400}}.scanner-torch-btn{position:absolute;bottom:6rem;right:2rem;width:42px;height:42px;border-radius:50%;background:#000c;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:2px solid rgba(255,255,255,.3);color:#fff;cursor:pointer;z-index:100;display:flex;align-items:center;justify-content:center;transition:all .2s ease;box-shadow:0 2px 10px #0000004d}.scanner-torch-btn:hover{background:#000000e6;transform:scale(1.05)}.scanner-torch-btn--active{background:#fce107e6;border-color:#fce107;box-shadow:0 0 30px #fce10799}@media(max-width:767px){.scanner-torch-btn{bottom:calc(5.5rem + env(safe-area-inset-bottom,0px));right:1rem}}.scanner-button-bar{position:fixed;bottom:0;left:0;right:0;display:flex;gap:1rem;padding:1rem;padding-bottom:calc(1rem + env(safe-area-inset-bottom));background:#000000e6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-top:1px solid rgba(255,255,255,.1);z-index:100}.scanner-button-bar .button{flex:1}@media(max-width:767px){.scanner-button-bar{gap:.75rem;padding:.75rem;padding-bottom:calc(.75rem + env(safe-area-inset-bottom,0px))}}.scanner-target-card{position:absolute;top:calc(env(safe-area-inset-top,0px) + 18px);left:50%;transform:translate(-50%);background:#000000d9;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:2px solid rgba(252,225,7,.5);border-radius:12px;padding:1rem 2rem;text-align:center;z-index:11;box-shadow:0 10px 30px #00000080;min-width:250px}@media(max-width:767px){.scanner-target-card{top:calc(env(safe-area-inset-top,0px) + 14px);min-width:200px;padding:.75rem 1.5rem}}.scanner-target-card__label{font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:#fff9;margin-bottom:.25rem;font-weight:600}.scanner-target-card__name{font-size:1.25rem;font-weight:700;color:var(--primary);text-shadow:0 2px 4px rgba(0,0,0,.3)}@media(max-width:767px){.scanner-target-card__name{font-size:1.1rem}}.scanner-warnings{position:fixed;top:calc(60px + env(safe-area-inset-top,0));left:1rem;right:1rem;z-index:1000;display:flex;flex-direction:column;gap:.5rem;max-width:600px;margin:0 auto}@media(max-width:767px){.scanner-warnings{top:calc(50px + env(safe-area-inset-top,0))}}@keyframes warning-fade-out{0%,80%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-10px)}}.scanner-warning{display:flex;align-items:center;gap:.5rem;padding:.75rem;background:#000000d9;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:8px;font-size:.85rem;border-left:4px solid transparent;color:#fff;box-shadow:0 2px 10px #0000004d;animation:warning-fade-out 5s ease-out forwards}.scanner-warning--duplicate{border-left-color:var(--primary);background:#fce10726}.scanner-warning--error{border-left-color:var(--danger);background:#ef444426}.scanner-warning__text{flex:1;font-weight:500;line-height:1.3}.scanner-close-btn{position:fixed;bottom:2rem;right:2rem;z-index:100}.scanner-close-btn--success{animation:pulse-success 1.5s ease-in-out infinite}@keyframes pulse-success{0%,to{box-shadow:0 4px 20px #10b98180}50%{box-shadow:0 4px 30px #10b981cc}}@media(max-width:767px){.scanner-close-btn{bottom:calc(1rem + env(safe-area-inset-bottom));right:1rem;left:1rem;width:calc(100% - 2rem)}}.continuous-scanner__completion{position:absolute;inset:0;z-index:100;display:flex;align-items:center;justify-content:center;background:#000000f2;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);animation:fadeIn .3s ease-out;cursor:pointer}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.completion-content{text-align:center;animation:scaleIn .5s ease-out;pointer-events:none}.completion-content .button{pointer-events:auto}@keyframes scaleIn{0%{transform:scale(.8);opacity:0}to{transform:scale(1);opacity:1}}.completion-icon{font-size:5rem;margin-bottom:1rem;animation:bounce .6s ease-out}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}.completion-title{font-size:2rem;font-weight:700;color:var(--success);margin:0 0 .5rem;text-shadow:0 2px 10px rgba(16,185,129,.5)}.completion-message{font-size:1.1rem;color:#fffc;margin:0}.completion-title--error{color:var(--danger);text-shadow:none}.camera-error-actions{display:flex;flex-direction:column;align-items:center;gap:.75rem;margin-top:1.5rem;pointer-events:auto}@media(max-width:767px){.completion-icon{font-size:4rem}.completion-title{font-size:1.75rem}.completion-message{font-size:1rem}}.profile-summary{margin-bottom:1rem;padding:.75rem;background:var(--bg-secondary);border-radius:var(--border-radius)}.profile-summary--loading{display:flex;justify-content:center;padding:.5rem}.profile-summary__row{display:flex;flex-direction:column;gap:.25rem}.profile-summary__row+.profile-summary__row{margin-top:.5rem;padding-top:.5rem;border-top:1px solid var(--border)}.profile-summary__label{font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em;color:var(--text-muted)}.profile-summary__fields{display:flex;flex-wrap:wrap;gap:.5rem 1rem}.profile-summary__field{display:flex;align-items:center;gap:.375rem}.profile-summary__field-label{font-size:.7rem;color:var(--text-muted);white-space:nowrap}.profile-summary__field-value{font-size:.8rem;font-weight:600;color:var(--text-primary)}body.swipe-page{padding:0;padding-top:env(safe-area-inset-top,0);background:var(--bg-secondary);overflow:hidden}@media(orientation:landscape)and (max-height:500px){body.swipe-page{overflow-y:auto}.swipe-header{padding:.5rem var(--spacing)}.swipe-header h1{margin:.25rem 0;font-size:1rem}.swipe-card-area{padding:.5rem var(--spacing)}.swipe-card{padding:1rem}.swipe-card .student-name{margin-bottom:.5rem;font-size:1.25rem}.swipe-card .barcode-container{margin:.5rem 0;padding:.75rem}.swipe-card .customer-id{margin:.35rem 0 0}.swipe-card .flaik-ref{margin-top:.5rem;padding:.5rem}.coach-reminder-content{padding:1.5rem 1rem}.coach-reminder-body{font-size:.95rem}.coach-reminder-instructions{padding:.75rem}}@media(max-height:700px){.swipe-card,.coach-reminder-content{padding:.75rem!important}.coach-reminder-title{font-size:1.1rem!important;margin-bottom:.5rem!important}.coach-reminder-body{font-size:.8rem!important}.coach-reminder-note{margin:0 0 .4rem!important;font-size:.75rem!important}.coach-reminder-flow{padding:.5rem .5rem .5rem 1.5rem!important;margin:.4rem 0!important;font-size:.8rem!important}.coach-reminder-flow li{margin-bottom:.15rem!important}.coach-reminder-subheading{margin:.5rem 0 0!important;font-size:.8rem!important}.coach-reminder-feature-hint{padding:.5rem!important;margin-top:.5rem!important;font-size:.7rem!important;line-height:1.3!important}.coach-reminder-continue{margin-top:.6rem!important;font-size:.7rem!important}.swipe-header{padding:.5rem var(--spacing)!important}.swipe-header h1{font-size:1rem!important;margin:.3rem 0!important}.step-label{font-size:.7rem!important}.swipe-card-area{padding:.5rem var(--spacing)!important}.student-qr-card-inner,.flaik-qr-card-inner{padding:1rem .75rem!important}.student-qr-card-title,.flaik-qr-card-title{font-size:.95rem!important;margin-bottom:.25rem!important}.student-qr-card-level{font-size:.75rem!important;margin-bottom:.6rem!important}.flaik-qr-card-ref{font-size:1rem!important;margin-bottom:.6rem!important}.student-qr-container,.flaik-qr-container{padding:.6rem!important}.student-qr-container svg,.flaik-qr-container svg{width:180px!important;height:180px!important}.student-qr-help-text,.flaik-qr-help-text{font-size:.7rem!important;margin-top:.6rem!important}.student-qr-note{padding:.5rem!important;margin-top:.6rem!important;font-size:.7rem!important}.flaik-qr-placeholder{min-height:160px!important;padding:1.25rem!important}.swipe-card-badges{margin-top:.5rem!important}.swipe-card .student-name{font-size:1.2rem!important;margin-bottom:.4rem!important}.scan-reminder-box{padding:.4rem .6rem!important;margin-bottom:.4rem!important}.scan-reminder-text{font-size:.8rem!important}.swipe-card .barcode-container{margin:.5rem 0!important;padding:.75rem!important}.swipe-card .customer-id{font-size:.9rem!important;margin:.25rem 0 0!important}.swipe-card .flaik-ref{font-size:.9rem!important;margin-top:.5rem!important;padding:.65rem!important}.swipe-card .student-note{font-size:.8rem!important;padding:.5rem .75rem!important;margin-top:.5rem!important}}@media(max-height:580px){.swipe-card{padding:.5rem!important}.swipe-card .student-name{font-size:1rem!important;margin-bottom:.25rem!important}.scan-reminder-box{padding:.25rem .5rem!important;margin-bottom:.25rem!important}.swipe-card .barcode-container{margin:.25rem 0!important;padding:.5rem!important}.swipe-card .customer-id{font-size:.8rem!important;margin:.15rem 0 0!important}.swipe-card .flaik-ref{font-size:.8rem!important;margin-top:.25rem!important;padding:.5rem!important}.swipe-card .student-note{font-size:.75rem!important;padding:.4rem .5rem!important;margin-top:.25rem!important}.student-qr-container svg,.flaik-qr-container svg{width:150px!important;height:150px!important}.flaik-qr-placeholder{min-height:150px!important;padding:1rem!important}.coach-reminder-content{padding:.5rem!important}}@media(max-width:375px){.swipe-card{max-width:100%!important;padding:.75rem!important}.swipe-card .student-name{font-size:1.1rem!important;line-height:1.3!important;margin-bottom:.35rem!important}.swipe-card .student-level-text{display:block!important;font-size:.85rem!important;margin-top:.25rem!important}.swipe-card .barcode-container{margin:.35rem 0!important;padding:.5rem!important}.swipe-card .barcode-container svg{max-width:100%!important;height:auto!important}.swipe-card .customer-id{font-size:.9rem!important;margin:.25rem 0 0!important}.swipe-card .flaik-ref{font-size:.95rem!important;margin-top:.35rem!important;padding:.65rem!important}.scan-reminder-box{padding:.4rem .6rem!important;margin:.35rem 0!important}.scan-reminder-text{font-size:.8rem!important}.coach-reminder-content{padding:1rem .75rem!important}.coach-reminder-title{margin-bottom:1rem!important;font-size:1.25rem!important}.coach-reminder-body{font-size:.9rem!important}.coach-reminder-primary{margin-bottom:.75rem!important;font-size:.9rem!important}.coach-reminder-instructions{padding:.65rem!important;margin-top:1rem!important}.coach-reminder-instructions-title{font-size:.9rem!important;margin-bottom:.4rem!important}.coach-reminder-list{padding-left:1rem!important;font-size:.85rem!important}.coach-reminder-list li{margin-bottom:.25rem!important}.coach-reminder-continue{margin-top:1rem!important;font-size:.8rem!important}}.swipe-container{display:flex;flex-direction:column;min-height:100vh;min-height:100dvh;width:100%}.swipe-header{padding:var(--spacing);text-align:center;background:var(--bg-secondary);border-bottom:1px solid var(--bg-secondary)}.swipe-header h1{color:var(--text-primary);margin:.5rem 0;font-size:1.1rem;text-transform:uppercase;letter-spacing:1px}.student-counter{font-size:.85rem;color:var(--text-muted);font-weight:500}.swipe-card-badges{position:absolute;top:1rem;left:50%;transform:translate(-50%);display:flex;gap:.5rem;align-items:center;pointer-events:none;z-index:15}.student-counter-badge{font-size:.75rem;font-weight:600;color:var(--text-primary);background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:.4rem .85rem;border-radius:16px;white-space:nowrap;box-shadow:0 2px 12px #00000026;border:1px solid rgba(0,0,0,.05)}.hidden-student-badge{font-size:.7rem;color:var(--text-muted);background:#ffffffe6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:.35rem .75rem;border-radius:12px;white-space:nowrap;box-shadow:0 2px 12px #0000001f;border:1px solid rgba(0,0,0,.05)}.swipe-card-area{flex:1;display:flex;align-items:center;justify-content:center;padding:var(--spacing);touch-action:pan-x;background:var(--bg-primary);position:relative;padding-bottom:calc(var(--spacing) + env(safe-area-inset-bottom,0))}.swipe-card-area:before,.swipe-card-area:after{display:none}.swipe-card{background:var(--bg-card);border-radius:var(--border-radius-lg);padding:1rem 1.5rem;text-align:center;width:100%;max-width:350px;border:1px solid var(--bg-secondary);position:relative;z-index:10;box-shadow:0 8px 25px #00000014}.swipe-arrow-btn{position:absolute;top:50%;transform:translateY(-50%);z-index:20;background:transparent;border:none;font-size:3.5rem;font-weight:200;color:var(--text-muted);opacity:.5;transition:all .3s ease;padding:1rem .5rem;cursor:pointer;-webkit-tap-highlight-color:transparent}.swipe-arrow-btn:hover:not(:disabled){opacity:.8;color:var(--text-primary)}.swipe-arrow-btn.prev{left:0}.swipe-arrow-btn.next{right:0}.swipe-arrow-btn:disabled{opacity:0;cursor:default}.swipe-card.animate-in{animation:slideIn .2s ease-out}@keyframes slideIn{0%{opacity:.7;transform:scale(.97)}to{opacity:1;transform:scale(1)}}.swipe-card.swipe-out-left{animation:swipeOutLeft .2s ease-out forwards}.swipe-card.swipe-out-right{animation:swipeOutRight .2s ease-out forwards}.swipe-card.enter-from-left{animation:enterFromLeft .25s ease-out forwards}.swipe-card.enter-from-right{animation:enterFromRight .25s ease-out forwards}@keyframes swipeOutLeft{to{transform:translate(-120%) rotate(-15deg);opacity:0}}@keyframes swipeOutRight{to{transform:translate(120%) rotate(15deg);opacity:0}}@keyframes enterFromLeft{0%{transform:translate(-100%) rotate(-10deg);opacity:0}to{transform:translate(0) rotate(0);opacity:1}}@keyframes enterFromRight{0%{transform:translate(100%) rotate(10deg);opacity:0}to{transform:translate(0) rotate(0);opacity:1}}.swipe-card .student-name{margin:0 0 1rem;font-size:1.5rem;font-weight:700;color:var(--text-primary);text-transform:uppercase;letter-spacing:.5px}.swipe-card .barcode-container{margin:1rem 0;background:#fff;padding:1.5rem;border-radius:var(--border-radius)}.swipe-card .barcode-container svg{max-width:100%;height:auto}.swipe-card .customer-id{font-family:SF Mono,Monaco,monospace;font-size:1.1rem;color:var(--text-muted);margin:.5rem 0 0;font-weight:500}.swipe-card .flaik-ref{font-size:1.1rem;margin:.75rem 0 0;padding:1rem;background:var(--bg-secondary);border-radius:var(--border-radius);border-left:3px solid var(--accent)}.swipe-card .flaik-ref.assigned strong{color:var(--success)}.swipe-card .flaik-ref.unassigned{border-left-color:#f59e0b;background:#f59e0b1a}.swipe-card .flaik-ref.unassigned strong{color:#f59e0b}.swipe-card .flaik-ref strong{color:var(--text-muted);font-family:SF Mono,Monaco,monospace}.swipe-card .student-note{font-size:.9rem;margin:1rem 0 0;padding:.75rem 1rem;background:#fbbf2426;border-radius:var(--border-radius);color:var(--warning);font-weight:500}.swipe-card .student-note.hidden{display:none}.swipe-card .no-flaik-message{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:3rem 2rem;margin:1.5rem 0;background:var(--bg-secondary);border-radius:var(--border-radius);border:2px dashed var(--text-muted)}.swipe-card .no-flaik-message svg{color:var(--text-muted);margin-bottom:1rem;opacity:.5}.swipe-card .no-flaik-message p{font-size:1.1rem;font-weight:600;color:var(--text-primary);margin:0 0 .5rem}.swipe-card .no-flaik-message span{font-size:.9rem;color:var(--text-muted);margin:0}.coach-reminder-content{text-align:center;padding:2rem 1rem}.coach-flaik-assigned{margin:1rem 0;padding:.875rem 1rem;background:#4ade8026;border:1px solid var(--success);border-radius:var(--border-radius)}.coach-flaik-assigned p{margin:0;font-size:.95rem;color:#15803d}.coach-flaik-assigned strong{color:#16a34a;font-family:SF Mono,Monaco,monospace}.coach-reminder-title{margin-bottom:1.5rem}.coach-reminder-body{font-size:1rem;line-height:1.5;text-align:left}.coach-reminder-primary{margin-bottom:1rem;font-weight:600}.coach-reminder-flow{background:var(--bg-secondary);padding:.75rem 1rem .75rem 2.5rem;border-radius:8px;margin:.75rem 0;font-size:.95rem;line-height:1.6}.coach-reminder-flow li{margin-bottom:.5rem}.coach-reminder-flow li:last-child{margin-bottom:0}.coach-reminder-flow ul{margin-top:.35rem;padding-left:1.25rem;font-size:.9rem;font-weight:400}.coach-reminder-flow ul li{margin-bottom:.25rem}.coach-reminder-subheading{margin:1rem 0 0;font-weight:600;font-size:.95rem}.coach-reminder-note{margin:0 0 .5rem;font-size:.9rem;color:var(--text-muted)}.coach-reminder-instructions{background:var(--bg-secondary);padding:.875rem;border-radius:8px;margin-top:1.25rem}.coach-reminder-instructions-title{font-weight:600;margin-top:0;margin-bottom:.5rem}.coach-reminder-list{padding-left:1.25rem;margin-bottom:0;font-size:.9rem}.coach-reminder-list li{margin-bottom:.35rem}.coach-reminder-list li:last-child{margin-bottom:0}.coach-reminder-continue{margin-top:1.5rem;font-size:1.1rem;font-weight:600;color:var(--text-primary);text-align:center}.coach-reminder-feature-hint{background:#fce10726;border:1px solid var(--primary);border-radius:var(--border-radius);padding:.75rem;margin-top:1rem;font-size:.85rem;text-align:left}.coach-reminder-feature-hint strong{color:var(--primary)}.qr-mode-toggle-btn{position:fixed;top:calc(var(--spacing) + env(safe-area-inset-top,0));right:var(--spacing);z-index:1000;background:var(--bg-card);border:none;border-radius:50%;width:40px;height:40px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;padding:0;box-shadow:0 2px 8px #00000026;color:var(--text-secondary)}.qr-mode-toggle-btn:active{transform:scale(.95)}.qr-mode-toggle-btn:hover{background:var(--bg-secondary)}.qr-mode-toggle-btn.active{color:var(--accent);background:var(--bg-card)}.qr-mode-toggle-btn .new-badge{position:absolute;top:-4px;right:-4px;background:#bf2c37;color:#fff;font-size:.6rem;padding:.15rem .35rem;border-radius:8px;font-weight:700}.flaik-qr-card{background:#d32f2f;border-radius:var(--border-radius-lg);padding:.5rem;box-shadow:0 8px 25px #00000026}.flaik-qr-card-inner{background:#212121;border-radius:calc(var(--border-radius-lg) - 4px);padding:1.5rem 1rem;text-align:center}.flaik-qr-card-title{color:#fff;font-size:1.1rem;font-weight:600;margin:0 0 .5rem;text-transform:uppercase;letter-spacing:.5px}.flaik-qr-card-ref{color:#fff;font-family:SF Mono,Monaco,monospace;font-size:1.3rem;font-weight:700;margin:0 0 1rem;letter-spacing:1px}.flaik-qr-container{background:#fff;padding:1rem;border-radius:var(--border-radius);display:inline-block}.flaik-qr-container svg{display:block;width:220px;height:220px}.flaik-qr-help-text{color:#fff;opacity:.7;font-size:.85rem;margin:1rem 0 0}.flaik-qr-placeholder{background:#ffffff1a;padding:2rem;border-radius:var(--border-radius);display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:180px}.flaik-qr-placeholder-icon{font-size:3rem;margin-bottom:1rem}.flaik-qr-placeholder-text{color:#fff;font-size:1.1rem;font-weight:600;margin:0;opacity:.9}.student-qr-card{background:var(--bg-card);border-radius:var(--border-radius-lg);padding:.5rem;box-shadow:0 8px 25px #00000026}.student-qr-card-inner{background:var(--bg-card);border-radius:calc(var(--border-radius-lg) - 4px);padding:1.5rem 1rem;text-align:center}.student-qr-card-title{color:var(--text-primary);font-size:1.3rem;font-weight:600;margin:0 0 .25rem;letter-spacing:.5px}.student-qr-card-level{color:var(--text-secondary);font-size:.9rem;margin:0 0 1rem;font-weight:500}.student-qr-container{background:var(--bg-card);padding:1rem;border-radius:var(--border-radius);display:inline-block}.student-qr-container svg{display:block;width:220px;height:220px}.student-qr-help-text{color:var(--text-secondary);font-size:.85rem;margin:1rem 0 0;font-weight:500}.student-qr-note{background:var(--bg-secondary);color:var(--text-primary);padding:.75rem;border-radius:var(--border-radius);margin-top:1rem;font-size:.85rem;line-height:1.4}.student-level-text{font-size:.8em;font-weight:400;color:var(--text-secondary)}.scan-reminder-box{background:var(--bg-secondary);padding:.65rem .875rem;border-radius:6px;margin-bottom:.75rem;font-size:.85rem;line-height:1.4}.scan-reminder-text{margin:0;font-weight:600}@media(min-width:768px){.swipe-card{max-width:450px;padding:2.5rem 2rem}.swipe-card .student-name{font-size:1.75rem}.swipe-card .barcode-container{padding:2rem}}@media(min-width:1024px){.swipe-card{max-width:500px;padding:3rem 2.5rem}.swipe-card .barcode-container svg{max-height:120px}}.attendance-summary{display:flex;justify-content:space-around;background:var(--bg-secondary);padding:1rem;border-radius:var(--border-radius);margin-bottom:var(--spacing);font-weight:600;font-size:.9rem}.attendance-summary .full-count{color:var(--success)}.attendance-summary .half-count{color:var(--warning)}.attendance-summary .absent-count{color:var(--danger)}.attendance-filter{margin-bottom:var(--spacing)}.filter-toggle{display:flex;align-items:center;justify-content:space-between;gap:1rem;cursor:pointer;-webkit-user-select:none;user-select:none;padding:1rem;background:var(--bg-secondary);border-radius:var(--border-radius);transition:background .2s}.filter-toggle:hover{background:var(--bg-card-hover)}.filter-toggle input[type=checkbox]{display:none}.toggle-label{font-size:.95rem;font-weight:500;color:var(--text-primary);flex:1}.hidden-count{margin-left:.5rem;font-size:.85rem;color:var(--text-muted);font-weight:400}.toggle-switch{position:relative;display:inline-block;width:48px;height:28px;background:var(--bg-card);border-radius:14px;border:2px solid var(--bg-card);transition:all .3s ease;flex-shrink:0}.toggle-slider{position:absolute;top:2px;left:2px;width:20px;height:20px;background:var(--text-muted);border-radius:50%;transition:all .3s ease;box-shadow:0 2px 4px #0003}.filter-toggle input[type=checkbox]:checked+.toggle-switch{background:var(--accent);border-color:var(--accent)}.filter-toggle input[type=checkbox]:checked+.toggle-switch .toggle-slider{transform:translate(20px);background:var(--accent-text)}.attendance-list{display:flex;flex-direction:column;gap:.75rem}.attendance-info{margin-bottom:.75rem}.attendance-name-row{display:flex;justify-content:space-between;align-items:center;gap:.5rem}.attendance-info h3{margin:0;font-size:1rem;font-weight:600;color:var(--text-primary);flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.flaik-badge-compact{display:inline-flex;align-items:center;gap:.35rem;font-size:1rem;font-weight:700;padding:.35rem .65rem;background:#4ade8026;color:var(--success);border-radius:4px;font-family:SF Mono,Monaco,monospace;white-space:nowrap}@media(max-width:375px){.flaik-badge-compact{font-size:.75rem;padding:.25rem .55rem}.flaik-badge-compact svg{display:none}}.flaik-badge-compact svg{flex-shrink:0;width:16px;height:16px}.flaik-badge{display:inline-block;font-size:.75rem;font-weight:600;padding:.25rem .6rem;background:var(--bg-secondary);border-radius:4px;color:var(--text-muted);font-family:SF Mono,Monaco,monospace}.flaik-badge.assigned{background:#4ade8026;color:var(--success)}.attendance-badges-row{margin-top:.35rem}.signout-badge{border:none;padding:.35rem .65rem;border-radius:4px;font-size:.85rem;font-weight:700;cursor:pointer;transition:opacity .2s}.signout-badge:active{opacity:.7}.signout-badge.red{background:#dc2626;color:#fff}.signout-badge.yellow{background:#ca8a04;color:#fff}.signout-badge.green{background:#16a34a;color:#fff}.signout-badge.overridden{border:2px dashed #ffffff}@media(max-width:375px){.signout-badge{font-size:.75rem;padding:.25rem .55rem}}.signout-badge-container{position:relative}.signout-details{position:absolute;top:calc(100% + 10px);right:0;width:280px;padding:1rem;background:var(--bg-card, white);border:1px solid var(--bg-secondary, #f0f0f0);border-radius:var(--border-radius, 8px);font-size:.9rem;line-height:1.5;color:var(--text-primary);box-shadow:0 8px 24px #00000026;z-index:100;text-align:left}.signout-details:before{content:"";position:absolute;bottom:100%;left:50%;transform:translate(-50%);border-width:9px;border-style:solid;border-color:transparent transparent var(--bg-secondary, #f0f0f0) transparent}.signout-details:after{content:"";position:absolute;bottom:100%;left:50%;transform:translate(-50%);border-width:8px;border-style:solid;border-color:transparent transparent var(--bg-card, white) transparent}.signout-details .signout-rule{margin:0 0 .5rem;color:var(--text-primary);line-height:1.4}.signout-details .signout-age{margin:.5rem 0 0;color:var(--text-secondary);font-size:.8rem}.signout-waiver-row{display:flex;justify-content:space-between;align-items:center;gap:.5rem;font-size:.85rem;color:var(--text-secondary)}.waiver-toggle-btn{border:none;padding:.4rem .6rem;border-radius:4px;font-size:.75rem;font-weight:600;cursor:pointer;background:var(--secondary);color:var(--secondary-text);position:relative;z-index:1}.waiver-toggle-btn:active{background:var(--secondary-hover)}.waiver-toggle-btn:disabled{opacity:.5;cursor:not-allowed}.attendance-options{display:flex;gap:.5rem}.attendance-option{flex:1;cursor:pointer}.attendance-option input{display:none}.attendance-option .option-label{display:block;width:100%;padding:.65rem .5rem;text-align:center;font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;border-radius:var(--border-radius);border:2px solid var(--bg-secondary);background:var(--bg-secondary);color:var(--text-muted);transition:all .2s ease}.attendance-option .option-label.full{border-color:#4ade804d}.attendance-option .option-label.half{border-color:#fbbf244d}.attendance-option .option-label.absent{border-color:#f871714d}.attendance-option.selected .option-label.full{background:var(--success);border-color:var(--success);color:var(--accent-text)}.attendance-option.selected .option-label.half{background:var(--warning);border-color:var(--warning);color:var(--accent-text)}.attendance-option.selected .option-label.absent{background:var(--danger);border-color:var(--danger);color:var(--accent-text)}.signout-instructions{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--bg-secondary)}.signout-instructions input{width:100%;padding:.75rem;font-size:.9rem;background:var(--bg-secondary);color:var(--text-primary);border:2px solid var(--bg-secondary);border-radius:var(--border-radius);margin-bottom:.75rem;transition:border-color .2s}.signout-instructions input:focus{outline:none;border-color:var(--accent)}.quick-options{display:flex;gap:.5rem;overflow-x:auto;flex-wrap:nowrap;padding-bottom:.5rem}.quick-options-rows{display:flex;flex-direction:column;gap:.5rem}.quick-options-row{display:flex;gap:.4rem;align-items:center;overflow-x:auto;flex-wrap:nowrap}.quick-options-row .row-label{font-size:.7rem;font-weight:600;color:var(--text-secondary);white-space:nowrap;min-width:60px}.quick-options-row .placeholder-text{font-size:.75rem;color:var(--text-muted);font-style:italic;padding:.5rem 0}.quick-option-btn{padding:.5rem .6rem;font-size:.75rem;font-weight:600;text-transform:uppercase;background:var(--bg-secondary);color:var(--text-muted);border:1px solid var(--bg-secondary);border-radius:var(--border-radius);cursor:pointer;transition:all .2s ease;white-space:nowrap}.quick-option-btn:hover{background:var(--bg-card-hover);color:var(--text-primary)}.quick-option-btn.clear-btn{color:var(--danger)}.quick-option-btn.clear-btn:hover{background:var(--danger);color:var(--accent-text)}.quick-option-btn.parent-required{background:#dc2626;color:#fff}.quick-option-btn.parent-required:hover{background:#b91c1c;color:#fff}.quick-option-btn.compact{padding:.35rem .5rem;font-size:.7rem}.quick-option-btn.selected{background:var(--accent);color:var(--accent-text);border-color:var(--accent)}.instruction-display{display:flex;justify-content:space-between;align-items:center;gap:.5rem;padding:.75rem;background:var(--bg-secondary);border-radius:var(--border-radius);cursor:pointer;transition:background .2s;min-height:48px}.instruction-display:hover{background:var(--bg-card-hover)}.instruction-display .instruction-text{font-size:.9rem;color:var(--text-primary);flex:1}.instruction-display .instruction-placeholder{font-size:.9rem;color:var(--text-muted);font-style:italic;flex:1}.instruction-display .edit-icon{flex-shrink:0;color:var(--text-secondary)}.editing-actions{margin-top:.75rem;display:flex;gap:.5rem;align-items:stretch}.editing-actions .reset-btn{padding:.65rem .75rem;width:48px;flex:0 0 48px;background:var(--bg-secondary);color:var(--text-muted);border:1px solid var(--bg-secondary);border-radius:var(--border-radius);cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center}.editing-actions .reset-btn:hover{background:var(--bg-card-hover);color:var(--danger);border-color:var(--danger)}.editing-actions .reset-btn:active{background:var(--danger);color:var(--accent-text);border-color:var(--danger)}.done-editing-btn{flex:1;padding:.65rem;font-size:.85rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;background:var(--accent);color:var(--accent-text);border:none;border-radius:var(--border-radius);cursor:pointer;transition:background .2s}.done-editing-btn:active{background:var(--accent-hover)}.quick-option-btn.compact.selected:hover{background:var(--accent-hover);border-color:var(--accent-hover)}.form-field{margin-bottom:1rem}.form-field:last-child{margin-bottom:0}.form-field__label{display:block;font-weight:500;margin-bottom:.5rem;color:var(--text-primary);font-size:.95rem}.form-field__label--required:after{content:" *";color:#dc2626;font-weight:600}.form-field__required{color:#dc2626;font-weight:600}.form-field__hint{display:block;font-size:.85rem;color:var(--text-muted);margin-top:.25rem}.form-field__error{display:block;font-size:.85rem;color:#dc2626;margin-top:.25rem;font-weight:500}.form-field__help{display:block;margin-top:.5rem;font-size:.85rem;color:var(--text-secondary);font-style:italic;line-height:1.4}.form-field__input,.form-field__textarea,.form-field__select{width:100%;padding:.75rem;border:2px solid var(--bg-secondary);border-radius:var(--border-radius);font-family:inherit;font-size:.95rem;line-height:1.5;background:var(--bg-secondary);color:var(--text-primary);transition:border-color .2s,background .2s}.form-field__input:focus,.form-field__textarea:focus,.form-field__select:focus{outline:none;border-color:var(--accent);background:var(--bg-primary)}.form-field__input:disabled,.form-field__textarea:disabled,.form-field__select:disabled{opacity:.6;cursor:not-allowed}.form-field__input::placeholder,.form-field__textarea::placeholder{color:var(--text-muted)}.form-field__textarea{resize:vertical;min-height:100px}.form-field__input--large{padding:1rem;font-size:1.25rem}.form-field__input--monospace{font-family:SF Mono,Monaco,monospace;text-transform:uppercase}.form-field__input--search{padding-left:2.5rem}.form-field__input-wrapper{position:relative}.form-field__input-icon{position:absolute;left:.75rem;top:50%;transform:translateY(-50%);color:var(--text-muted);pointer-events:none}.form-field__input-wrapper .form-field__input{padding-left:2.5rem}.form-field__button-group{display:flex;gap:.75rem}.form-section{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--border-radius);padding:1.5rem;margin-bottom:1.5rem}.form-section__title{margin:0 0 1rem;font-size:1.1rem;font-weight:600;color:var(--text-primary)}.form-section__description{margin:0 0 1rem;font-size:.9rem;color:var(--text-secondary);line-height:1.5}.form-toggle{display:inline-flex;align-items:center;gap:.75rem;cursor:pointer;-webkit-user-select:none;user-select:none}.form-toggle__input{position:absolute;opacity:0;pointer-events:none}.form-toggle__switch{position:relative;width:44px;height:24px;background:var(--bg-secondary);border-radius:12px;transition:background .2s}.form-toggle__input:checked+.form-toggle__switch{background:var(--accent)}.form-toggle__slider{position:absolute;top:2px;left:2px;width:20px;height:20px;background:#fff;border-radius:50%;transition:transform .2s}.form-toggle__input:checked+.form-toggle__switch .form-toggle__slider{transform:translate(20px)}.form-toggle__label{font-size:.95rem;font-weight:500;color:var(--text-primary)}.form-options{display:flex;flex-direction:column;gap:.5rem}.form-options--horizontal{flex-direction:row;flex-wrap:wrap;gap:.75rem}.form-option{display:flex;align-items:center;gap:.5rem;cursor:pointer;-webkit-user-select:none;user-select:none}.form-option__input{cursor:pointer}.form-option__label{cursor:pointer;font-size:.95rem;color:var(--text-primary)}.workflow-steps{display:flex;flex-direction:column;gap:.75rem;margin-bottom:var(--spacing)}.workflow-step{display:flex;align-items:center;gap:1rem;padding:1.25rem;background:var(--bg-secondary);border-radius:var(--border-radius);text-decoration:none;color:var(--text-primary);transition:all .2s ease;border-left:4px solid transparent}.workflow-step:hover{background:var(--bg-card-hover);border-left-color:var(--accent)}.step-number{display:flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;background:var(--bg-primary);border:2px solid var(--accent);border-radius:50%;font-size:1.1rem;font-weight:700;color:var(--accent);flex-shrink:0}.step-content{flex:1;display:flex;flex-direction:column;gap:.25rem}.step-title{font-size:1rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.step-desc{font-size:.85rem;color:var(--text-muted)}.step-progress{font-size:.8rem;font-weight:600;color:var(--warning);font-family:SF Mono,Monaco,monospace}.step-progress.complete{color:var(--success)}.step-arrow{font-size:1.25rem;color:var(--text-muted);transition:transform .2s ease}.workflow-step:hover .step-arrow{transform:translate(4px);color:var(--accent)}.workflow-step.disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.workflow-step.disabled .step-number{border-color:var(--text-muted);color:var(--text-muted)}.workflow-step.disabled .step-desc{color:var(--text-muted);font-style:italic}.workflow-step.step-start-here{border-left-color:var(--primary);background:linear-gradient(135deg,var(--bg-secondary) 0%,rgba(252,225,7,.08) 100%);animation:pulse-border 2s ease-in-out infinite}@keyframes pulse-border{0%,to{border-left-color:var(--primary);box-shadow:0 0 #fce10766}50%{border-left-color:var(--accent);box-shadow:0 0 0 4px #fce1071a}}.step-indicator{display:flex;align-items:center;justify-content:center;gap:0;padding:1rem 0}.step-indicator.compact{padding:.5rem 0}.step-dot{width:12px;height:12px;border-radius:50%;background:var(--bg-secondary);border:2px solid var(--text-muted);transition:all .2s ease}.step-dot.active{background:var(--accent);border-color:var(--accent);box-shadow:0 0 0 4px #bf2c3733}.step-dot.completed{background:var(--accent);border-color:var(--accent)}.step-line{width:3rem;height:2px;background:var(--bg-muted);transition:background .2s ease}.step-line.completed{background:var(--accent)}.step-label{font-size:.75rem;text-transform:uppercase;letter-spacing:1px;color:var(--text-muted);margin-bottom:.25rem}.home-button{position:absolute;top:calc(env(safe-area-inset-top,0) + .75rem);left:0;z-index:10;display:flex;align-items:center;justify-content:center;width:44px;height:44px;background-color:#0000000d;border-radius:50%;color:var(--text-primary);font-size:1.5rem;text-decoration:none;transition:background-color .2s}.home-button:hover{background-color:#0000001a}.swipe-container .home-button{top:calc(var(--spacing) + .5rem);left:var(--spacing)}.admin-actions{margin-top:var(--spacing);padding:var(--spacing) 0;border-top:1px solid var(--bg-secondary);display:flex;flex-direction:column;gap:.75rem}@media(min-width:640px){.admin-actions{flex-direction:row}}.admin-actions-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:.5rem;padding:1rem;font-size:.9rem;font-weight:600;text-decoration:none;text-transform:uppercase;letter-spacing:.5px;border-radius:var(--border-radius);transition:all .2s ease;border:none;cursor:pointer}.admin-actions-btn svg{flex-shrink:0}.admin-actions-btn.secondary{background:var(--bg-secondary);color:var(--text-primary)}.admin-actions-btn.secondary:hover{background:var(--bg-card-hover)}.step-nav{width:100%;max-width:var(--max-width);margin-left:auto;margin-right:auto;display:flex;gap:.75rem;margin-top:2rem;margin-bottom:2rem;padding:var(--spacing) 0;border-top:1px solid var(--bg-secondary)}.step-nav-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:.5rem;padding:1rem;font-size:.9rem;font-weight:600;text-decoration:none;text-transform:uppercase;letter-spacing:.5px;border-radius:var(--border-radius);transition:all .2s ease;border:none;cursor:pointer}.step-nav-spacer{display:none}@media(max-width:767px){.step-nav-spacer{display:block;height:calc(4rem + var(--spacing) + env(safe-area-inset-bottom))}}.submit-reminder-banner{background:var(--bg-secondary);padding:.75rem .875rem;border-radius:var(--border-radius);margin-bottom:1.25rem;border-left:3px solid var(--primary);font-size:.85rem;line-height:1.4}.submit-summary{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--border-radius);padding:1.5rem;margin-bottom:1.5rem}.submit-summary h3{margin:0 0 .5rem;font-size:1.1rem;color:var(--text-primary)}.submit-date{margin:0 0 1rem;padding:.75rem;background:var(--bg-secondary);border-radius:var(--border-radius);color:var(--text-secondary);font-size:.95rem}.submit-date strong{color:var(--text-primary)}.summary-note{margin:0;color:var(--text-muted);font-size:.9rem;text-align:center}.lesson-fields-section{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--border-radius);padding:1.5rem;margin-bottom:1.5rem}.lesson-fields-section h3{margin:0 0 1rem;font-size:1.1rem;color:var(--text-primary)}.submit-section{margin-bottom:1.5rem;display:flex;flex-direction:column;gap:.75rem}.step-nav-btn.submit-attendance-btn{width:100%;padding:1rem;font-size:1rem;font-weight:600;border:none;border-radius:var(--border-radius);cursor:pointer;transition:all .2s;background:var(--accent);color:var(--accent-text)}.step-nav-btn.submit-attendance-btn:hover:not(:disabled){background:var(--accent-hover);transform:translateY(-1px)}.submit-attendance-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.submit-error-message{padding:.75rem;margin-bottom:1.5rem;background:#dc26261a;border:1px solid #dc2626;border-radius:var(--border-radius);color:#dc2626;font-size:.9rem;font-weight:500}.error-banner{position:fixed;top:0;left:0;right:0;z-index:9999;padding:1rem;background:#dc2626;color:#fff;font-weight:600;font-size:1rem;text-align:center;box-shadow:0 4px 12px #0000004d;animation:slideDown .3s ease-out}.error-banner-content{max-width:900px;margin:0 auto;display:flex;align-items:center;justify-content:center;gap:.75rem}.error-banner-icon{flex-shrink:0}.error-banner-close{position:absolute;top:50%;right:1rem;transform:translateY(-50%);background:transparent;border:none;color:#fff;font-size:1.5rem;cursor:pointer;padding:.25rem .5rem;line-height:1}@keyframes slideDown{0%{transform:translateY(-100%);opacity:0}to{transform:translateY(0);opacity:1}}.error-banner+.container{padding-top:4rem}.backup-mode-banner{position:fixed;top:0;left:0;right:0;z-index:9998;padding:1rem;background:#f59e0b;color:#78350f;font-weight:600;font-size:1rem;text-align:center;box-shadow:0 4px 12px #0000004d;animation:slideDown .3s ease-out}.backup-mode-banner-content{max-width:900px;margin:0 auto;display:flex;align-items:center;justify-content:center;gap:.75rem}.backup-mode-banner-icon{flex-shrink:0}.backup-mode-banner-text-container{display:flex;flex-direction:column;gap:.25rem;flex:1}.backup-mode-banner-text{display:block}.backup-mode-banner-expiry{display:block;font-size:.85rem;opacity:.9;font-weight:500}.backup-mode-banner-disable{background:#78350f33;border:1px solid #78350f;color:#78350f;padding:.5rem 1rem;border-radius:4px;font-weight:600;font-size:.9rem;cursor:pointer;transition:all .2s ease;white-space:nowrap;margin-left:1rem}.backup-mode-banner-disable:hover{background:#78350f4d;transform:translateY(-1px)}body:has(.backup-mode-banner){padding-top:7rem}@media(min-width:768px){body:has(.backup-mode-banner){padding-top:5rem}}.error-message{padding:.75rem;margin-bottom:1.5rem;background:#dc26261a;border:1px solid #dc2626;border-radius:var(--border-radius);color:#dc2626;font-size:.9rem;font-weight:500}@media print{:root{--bg-primary: white;--text-primary: black}body{background:#fff;padding:0;color:#000}.back-link,.reset-section,.swipe-header,.step-indicator,.step-nav,.step-label,.home-button{display:none!important}.swipe-card{background:#fff;border:1px solid #ccc;box-shadow:none}.swipe-card .student-name{color:#000}}@media(max-width:767px){.step-nav{position:fixed;bottom:0;left:0;right:0;max-width:none;background:var(--bg-secondary);padding:var(--spacing) var(--spacing) calc(var(--spacing) + env(safe-area-inset-bottom));margin:0;border-top:1px solid var(--bg-secondary);z-index:100}}@media(min-width:768px){.swipe-container .step-nav{position:fixed;bottom:0;left:50%;transform:translate(-50%);max-width:var(--max-width);background:var(--bg-secondary);padding:var(--spacing);margin:0;border-top:1px solid var(--bg-secondary);z-index:100;box-shadow:0 -4px 12px #00000014}}.coach-reminder-card{background:linear-gradient(135deg,#fbbf241a,#fbbf240d);border-left:4px solid var(--warning);box-shadow:0 2px 8px #fbbf241a}.coach-reminder-card .student-info h3{color:var(--warning);font-size:1.15rem}.coach-reminder-card .reminder-text{margin-top:.75rem}.coach-reminder-card .reminder-text p{margin:.5rem 0;font-size:.9rem;line-height:1.5;color:var(--text-primary)}.coach-reminder-card .reminder-text p:first-child{font-weight:600}.absent-btn{padding:.75rem 1.25rem;font-size:.85rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--text-primary);background:transparent;border:1px solid var(--text-muted);border-radius:var(--border-radius);cursor:pointer;transition:all .2s ease;min-width:80px}.absent-btn:hover{background:#0000000d;border-color:var(--danger)}.absent-btn.active{background:var(--danger);color:var(--accent-text);border-color:var(--danger)}.absent-btn.active:hover{background:#000;border-color:#000}.clear-attendance-btn{padding:.5rem .75rem;font-size:1.25rem;line-height:1;font-weight:600;color:var(--text-muted);background:transparent;border:none;border-radius:var(--border-radius);cursor:pointer;transition:all .2s ease;min-width:36px;height:36px;display:flex;align-items:center;justify-content:center}.clear-attendance-btn:hover{background:#dc26261a;color:var(--danger)}.clear-attendance-btn:active{background:var(--danger);color:var(--accent-text)}.clear-attendance-btn:disabled{opacity:.3;cursor:not-allowed;background:transparent}.clear-attendance-btn:disabled:hover{background:transparent;color:var(--text-muted)}.student-note-container{cursor:pointer;display:flex;align-items:center;width:100%}.student-note-container .student-note{width:100%;padding:.6rem 0;font-size:.85rem;color:var(--text-secondary)}.student-note-container .student-note.placeholder{color:var(--text-muted);font-style:italic;font-weight:400}.student-note-input{width:100%;padding:.6rem 0;font-size:.85rem;background-color:transparent;border:none;border-radius:0;border-bottom:2px solid transparent;transition:border-color .2s;outline:none}.student-note-input:focus{outline:none;border-bottom-color:var(--accent)}.student-note-input::placeholder{color:var(--text-muted)}.login-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:80vh;padding:2rem 1rem}.login-header{text-align:center;margin-bottom:2rem}.login-header h1{font-size:2rem;font-weight:700;color:var(--accent);margin:0 0 .5rem}.login-header h2{font-size:1.25rem;font-weight:500;color:var(--text-primary);margin:0}.login-form{width:100%;max-width:360px;background:var(--bg-card);padding:2rem;border-radius:var(--border-radius-lg);box-shadow:0 2px 8px #0000001a}.login-error{background:#fee;border:1px solid var(--accent);color:var(--accent);padding:.75rem;border-radius:var(--border-radius);margin-bottom:1rem;font-size:.9rem;text-align:center}.form-group{margin-bottom:1.5rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:500;color:var(--text-primary)}.form-group input{width:100%;padding:.75rem;font-size:1rem;border:2px solid var(--bg-secondary);border-radius:var(--border-radius);background:var(--bg-primary);color:var(--text-primary);transition:border-color .2s}.form-group input:focus{outline:none;border-color:var(--accent)}.form-group input:disabled{opacity:.6;cursor:not-allowed}.login-btn{width:100%;padding:.875rem;font-size:1rem;font-weight:600;background:var(--accent);color:var(--accent-text);border:none;border-radius:var(--border-radius);cursor:pointer;transition:background .2s}.login-btn:hover:not(:disabled){background:var(--accent-hover)}.login-btn:disabled{opacity:.6;cursor:not-allowed}.login-footer{margin-top:2rem;text-align:center}.login-footer p{color:var(--text-muted);font-size:.9rem;margin:0}.auth-info{display:flex;align-items:center;justify-content:center;gap:1rem;font-size:.9rem;color:var(--text-muted);margin-top:.5rem}.logout-btn-inline{padding:.4rem .8rem;font-size:.85rem;background:var(--secondary);color:var(--secondary-text);border:none;border-radius:var(--border-radius);cursor:pointer;transition:background .2s}.logout-btn-inline:hover{background:var(--secondary-hover)}.day-mismatch-banner{display:flex;align-items:center;gap:.625rem;flex-wrap:wrap;background:#0084a81a;border:2px solid rgba(0,132,168,.35);border-radius:var(--border-radius);padding:.75rem 1rem;margin-bottom:1rem}.day-mismatch-banner__text{flex:1;font-size:.9rem;color:var(--text-primary);min-width:0}.day-mismatch-banner__switch{flex-shrink:0}.day-mismatch-banner__dismiss{flex-shrink:0;color:var(--text-muted)}.stale-data-warning{background:#fff3cd;border:2px solid #ffc107;border-radius:var(--border-radius);padding:1rem;margin-bottom:1.5rem;text-align:center}.stale-data-warning strong{display:block;color:#856404;font-size:1rem;margin-bottom:.5rem}.stale-data-warning p{color:#856404;margin:0 0 .75rem;font-size:.9rem}.refresh-btn{background:var(--accent);color:var(--accent-text);border:none;padding:.6rem 1.2rem;border-radius:var(--border-radius);font-weight:600;cursor:pointer;transition:background .2s}.refresh-btn:hover:not(:disabled){background:var(--accent-hover)}.refresh-btn:disabled{opacity:.6;cursor:not-allowed}.history-filters{display:flex;flex-direction:column;gap:.375rem;margin-bottom:1rem}.history-filters__row{display:flex;gap:.375rem;align-items:center}.history-filters__row .form-field__select,.history-filters__row .form-field__input{flex:1 1 0;min-width:0;font-size:.8rem;padding:.35rem .5rem}.history-count{font-size:.9rem;color:var(--text-muted)}.history-count-footer{text-align:center;padding:1rem;margin-bottom:1rem;font-size:.95rem;color:var(--text-muted)}.history-list{display:flex;flex-direction:column;gap:1.5rem;margin-bottom:1.5rem}.history-card{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--border-radius);overflow:hidden;box-shadow:0 2px 8px #00000014;transition:box-shadow .2s,transform .2s;content-visibility:auto;contain-intrinsic-size:auto 80px}.history-card:hover{box-shadow:0 4px 16px #0000001f;transform:translateY(-2px)}.history-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background .2s}.history-header:hover{background:var(--bg-secondary)}.history-header-main{flex:1}.history-header h3{margin:0 0 .5rem;font-size:1.1rem;color:var(--text-primary)}.history-header h3 .coach-name{font-weight:400;color:var(--text-muted);font-size:.95rem}.lesson-metadata{display:flex;flex-wrap:wrap;gap:.75rem;margin:.5rem 0;font-size:.85rem}.metadata-item{padding:.25rem .5rem;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:4px;color:var(--text-muted)}.history-header .summary{font-size:.9rem;color:var(--text-muted)}.expand-icon{transition:transform .2s;color:var(--text-muted);flex-shrink:0;margin-left:1rem}.expand-icon.expanded{transform:rotate(180deg)}.history-details{padding:0 1.25rem 1.25rem;border-top:1px solid var(--border-color)}.detail-section,.detail-section:first-child{margin-top:1rem}.detail-section strong{display:block;margin-bottom:.5rem;color:var(--text-primary);font-size:.95rem}.detail-section p{margin:0;color:var(--text-secondary);line-height:1.5}.detail-section .no-notes{color:var(--text-muted);font-style:italic}.student-list{list-style:none;padding:0;margin:0}.student-list li{padding:.75rem;margin-bottom:.5rem;background:var(--bg-secondary);border-radius:var(--border-radius);border-left:3px solid var(--border-color)}.student-list li:last-child{margin-bottom:0}.status-badge{display:inline-block;padding:.25rem .6rem;border-radius:4px;font-size:.75rem;font-weight:600;text-transform:uppercase;margin-right:.5rem}.status-badge.full{background:#16a34a26;color:#16a34a;border:1px solid #16a34a}.status-badge.half{background:#fbbf2426;color:#d97706;border:1px solid #d97706}.status-badge.absent{background:#dc262626;color:#dc2626;border:1px solid #dc2626}.student-name{font-weight:500;color:var(--text-primary)}.student-source{display:inline-block;margin-left:.5rem;padding:.25rem .5rem;background:#fce1071a;border:1px solid rgba(252,225,7,.3);border-radius:4px;font-size:.8rem;color:var(--text-muted);font-style:italic}.flaik-ref{display:inline-block;margin-left:.5rem;padding:.25rem .5rem;background:var(--bg-primary);border-radius:4px;font-size:.85rem;color:var(--text-muted);font-family:SF Mono,Monaco,monospace}.sign-out-instructions{margin-top:.5rem;padding:.5rem;background:#3b82f61a;border-left:2px solid #3b82f6;border-radius:4px;font-size:.9rem;color:var(--text-secondary)}.submission-meta{display:flex;flex-direction:column;gap:.25rem;font-size:.85rem;color:var(--text-muted);padding-top:.75rem;border-top:1px solid var(--border-color)}.delete-section{padding-top:.75rem;border-top:1px solid var(--border-color)}.delete-lesson-btn{width:100%;padding:.75rem;background:var(--accent);color:var(--accent-text);border:none;border-radius:var(--border-radius);font-weight:600;font-size:1rem;cursor:pointer;transition:background .2s}.delete-lesson-btn:hover{background:var(--accent-hover)}.delete-lesson-btn:active{transform:scale(.98)}.bottom-nav{display:flex;justify-content:center;padding-top:1rem;border-top:1px solid var(--border-color)}.nav-link{color:var(--accent);text-decoration:none;font-weight:500;padding:.5rem 1rem;transition:all .2s}.nav-link:hover{text-decoration:underline}.admin-export-container{max-width:100%;padding-left:0;padding-right:0}@media(min-width:768px){.admin-export-container{max-width:1400px;padding-left:1rem;padding-right:1rem}}@media(min-width:1200px){.admin-export-container{max-width:1600px}}.admin-export-controls{display:flex;flex-direction:column;gap:1rem;margin-bottom:1.5rem;padding:1rem;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--border-radius)}.export-filters{display:flex;flex-wrap:wrap;gap:1rem;align-items:flex-end}.checkbox-filter{display:flex;align-items:center;gap:.5rem;padding:.65rem .75rem;background:var(--bg-secondary);border:2px solid var(--bg-secondary);border-radius:var(--border-radius);min-height:44px;font-size:.95rem;color:var(--text-primary);cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap;transition:border-color .2s,background .2s}.checkbox-filter:hover{border-color:var(--accent)}.checkbox-filter input[type=checkbox]{width:18px;height:18px;flex-shrink:0;cursor:pointer;accent-color:var(--accent)}.date-filter{display:flex;flex-direction:column;gap:.375rem;min-width:0}.date-filter__label{font-size:.85rem;font-weight:500;color:var(--text-secondary);white-space:nowrap}.date-filter__input{padding:.5rem .75rem;border:2px solid var(--bg-secondary);border-radius:var(--border-radius);background:var(--bg-secondary);color:var(--text-primary);font-size:.95rem;cursor:pointer;transition:border-color .2s,background .2s;min-width:150px}.date-filter__input:focus{outline:none;border-color:var(--accent);background:var(--bg-primary)}@media(max-width:640px){.card__header--with-action{flex-direction:column;align-items:stretch;gap:.75rem}.date-filter{width:100%}.date-filter__input{width:100%;min-width:0}}.export-actions{display:flex;flex-direction:column;gap:1rem;align-items:stretch}.admin-export-controls label{display:flex;flex-direction:column;gap:.25rem;font-weight:500;color:var(--text-primary);font-size:.9rem}.admin-export-controls select,.admin-export-controls .date-input,.admin-export-controls input[type=text],.admin-export-controls input[type=date]{padding:.65rem .75rem;border:2px solid var(--bg-secondary);border-radius:var(--border-radius);background:var(--bg-secondary);color:var(--text-primary);font-size:.95rem;line-height:1.5;min-height:44px;cursor:text;transition:border-color .2s,background .2s;font-family:inherit;box-sizing:border-box;max-width:100%}.admin-export-controls select,.admin-export-controls .date-input,.admin-export-controls input[type=date]{cursor:pointer}.admin-export-controls select:focus,.admin-export-controls .date-input:focus,.admin-export-controls input[type=text]:focus,.admin-export-controls input[type=date]:focus{outline:none;border-color:var(--accent);background:var(--bg-primary)}.clear-date-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:var(--bg-primary);color:var(--text-primary);border:1px solid var(--border-color);border-radius:var(--border-radius);font-size:.85rem;font-weight:500;cursor:pointer;transition:all .2s ease;white-space:nowrap}.clear-date-btn:hover{background:var(--bg-secondary);border-color:var(--accent)}.clear-date-btn svg{flex-shrink:0}@media(min-width:768px){.admin-export-controls{padding:1.5rem;flex-direction:row;justify-content:space-between;align-items:flex-end;gap:1.5rem}.export-filters{flex:1}.export-actions{flex-direction:row;align-items:flex-end;gap:1rem}.admin-export-controls select,.admin-export-controls .date-input{min-width:150px}}.admin-export-summary{display:flex;flex-direction:column;gap:1.5rem}@media(min-width:1024px){.admin-export-summary{gap:2rem}}.summary-card{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--border-radius);padding:var(--spacing)}.summary-card h3{margin:0 0 1rem;font-size:1.1rem;color:var(--text-primary)}.stat-item{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0;border-bottom:1px solid var(--bg-secondary)}.stat-item:last-child{border-bottom:none}.stat-label{color:var(--text-muted);font-weight:500}.stat-value{color:var(--text-primary);font-weight:600}.admin-export-preview{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--border-radius);padding:var(--spacing)}.admin-export-preview h3{margin:0 0 1rem;font-size:1.1rem;color:var(--text-primary)}.preview-table-container{overflow-x:auto;margin-bottom:1rem;max-width:100%}.preview-table{width:100%;border-collapse:separate;border-spacing:0;font-size:.9rem;min-width:700px}.preview-table th,.preview-table td{padding:.75rem;text-align:left;border:1px solid var(--border-color)}.preview-table th{background:var(--bg-secondary);font-weight:600;color:var(--text-primary);white-space:nowrap;position:sticky;top:0;z-index:10}.preview-table td{color:var(--text-secondary);background:var(--bg-primary)}.preview-table td[rowspan]{background:var(--bg-secondary);font-weight:500;color:var(--text-primary);border-right:3px solid var(--accent)}.preview-table tbody:first-of-type td{border-top:none}.preview-table tbody td{border-top:1px solid var(--secondary)}.preview-table tbody tr:hover td{background:var(--bg-card-hover)}.preview-table tbody tr:hover td[rowspan]{background:var(--bg-secondary)}.preview-lesson-notes-row{background:var(--bg-card-hover);border-left:4px solid var(--accent)}.preview-lesson-notes-row td{padding:1rem!important;background:var(--bg-card-hover)!important;font-size:.85rem;color:var(--text-secondary)}.preview-lesson-field{margin-bottom:.5rem;line-height:1.5}.preview-lesson-field:last-child{margin-bottom:0}.preview-lesson-field strong{color:var(--text-primary);font-weight:600;margin-right:.5rem}.preview-note{text-align:center;color:var(--text-muted);font-size:.9rem;font-style:italic}@media(max-width:767px){.preview-table-container{display:none}.missing-reports-mobile{display:flex;flex-direction:column;gap:1rem}}@media(min-width:768px){.missing-reports-mobile{display:none}}.missing-report-card{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--border-radius);padding:1rem;box-shadow:0 2px 8px #00000014}.missing-report-card__header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.75rem;padding-bottom:.75rem;border-bottom:1px solid var(--border-color)}.missing-report-card__coach{font-size:1.05rem;font-weight:600;color:var(--text-primary);margin:0}.missing-report-card__day{display:inline-block;padding:.25rem .6rem;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:4px;font-size:.75rem;font-weight:600;color:var(--text-primary)}.missing-report-card__body{display:flex;flex-direction:column;gap:.5rem}.missing-report-card__field{display:flex;justify-content:space-between;align-items:baseline;font-size:.9rem}.missing-report-card__label{color:var(--text-muted);font-weight:500;flex-shrink:0;margin-right:.75rem}.missing-report-card__value{color:var(--text-primary);text-align:right;word-break:break-word}.missing-report-card__programs{font-size:.85rem;line-height:1.4}.missing-report-card__overdue{font-weight:600;font-size:1rem}.missing-report-card__overdue--warning{color:var(--accent)}.missing-report-card__overdue--normal{color:var(--text-muted)}@media(min-width:768px){.admin-export-preview{padding:2rem}.preview-table{font-size:1rem}.preview-table th,.preview-table td{padding:1rem}}.missing-reports-controls{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1rem}.missing-reports-summary{font-size:.85rem;color:var(--text-muted);margin:0 0 1rem}.missing-reports-summary strong{color:var(--text-primary)}.overdue-warning{color:var(--accent);font-weight:600}.overdue-normal{color:var(--text-muted)}.admin-home-container{max-width:var(--max-width)}@media(min-width:768px){.admin-home-container{max-width:900px}}@media(min-width:1024px){.admin-home-container{max-width:1200px}}@media(min-width:1440px){.admin-home-container{max-width:1400px}}.admin-home-container header{padding:0}.admin-hub{display:flex;flex-direction:column;gap:2rem;margin-top:1.75rem}.admin-hub__section-title{font-size:.95rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-secondary);margin:0 0 .75rem;padding-bottom:.5rem;border-bottom:2px solid var(--bg-secondary)}.admin-home-grid{display:grid;grid-template-columns:1fr;gap:.625rem}@media(min-width:600px){.admin-home-grid{grid-template-columns:repeat(2,1fr);gap:1rem}}@media(min-width:1024px){.admin-home-grid{grid-template-columns:repeat(3,1fr);gap:1.25rem}}.admin-home-card{display:flex;flex-direction:row;align-items:center;gap:1rem;padding:.875rem 1rem;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--border-radius-lg);text-decoration:none;color:var(--text-primary);transition:background .15s ease,border-color .15s ease,box-shadow .15s ease}.admin-home-card:hover{background:var(--bg-card-hover);border-color:var(--accent);box-shadow:0 2px 8px #00000014}@media(min-width:600px){.admin-home-card{flex-direction:column;align-items:flex-start;gap:.75rem;padding:1.25rem}}.admin-home-card-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:44px;height:44px;background:#bf2c3714;border-radius:12px;color:var(--accent)}@media(min-width:600px){.admin-home-card-icon{width:48px;height:48px;border-radius:14px}}.admin-home-card-body{flex:1;min-width:0}.admin-home-card-body h3{margin:0 0 .2rem;font-size:.95rem;font-weight:600;color:var(--text-primary);line-height:1.2}@media(min-width:600px){.admin-home-card-body h3{font-size:1rem;margin-bottom:.3rem}}.admin-home-card-body p{margin:0;font-size:.78rem;color:var(--text-secondary);line-height:1.35}@media(min-width:600px){.admin-home-card-body p{font-size:.82rem}}.admin-section{margin-bottom:2rem}.admin-section h2{font-size:1.25rem;margin-bottom:1rem;color:var(--text-primary)}.status-badge{display:inline-block;padding:.75rem 1.5rem;border-radius:var(--border-radius);font-weight:600;font-size:1rem}.status-active{background:#fef3c7;color:#78350f;border:2px solid #f59e0b}.status-inactive{background:#d1fae5;color:#065f46;border:2px solid #10b981}.help-text{font-size:.95rem;color:var(--text-secondary);line-height:1.6;margin-bottom:1rem}.help-list{margin:1rem 0;padding-left:1.5rem}.help-list li{margin-bottom:.5rem;color:var(--text-secondary)}.warning-text{color:#d97706;font-weight:500}.qr-duration-selector{display:flex;gap:1rem;margin-bottom:1.5rem;flex-wrap:wrap}.qr-duration-option{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:var(--border-radius);cursor:pointer;transition:all .2s ease;flex:1;min-width:200px}.qr-duration-option:hover{background:var(--bg-card-hover);border-color:var(--accent)}.qr-duration-option input[type=radio]:checked+span{font-weight:700}.qr-duration-option input[type=radio]{width:20px;height:20px;cursor:pointer}.qr-duration-option span{font-size:.95rem;color:var(--text-primary);font-weight:500}.qr-code-container{display:grid;grid-template-columns:1fr;gap:1.5rem;margin-top:1.5rem}@media(min-width:768px){.qr-code-container{grid-template-columns:repeat(2,1fr)}}.qr-code-container-two{grid-template-columns:1fr}@media(min-width:768px){.qr-code-container-two{grid-template-columns:repeat(2,1fr)}}.qr-code-card{display:flex;flex-direction:column;align-items:center;padding:2rem;background:var(--bg-card);border:2px solid var(--border-color);border-radius:var(--border-radius-lg)}.qr-code-card-permanent{border-color:#f59e0b;background:#f59e0b0d}.qr-code-card h3{margin:0 0 1.5rem;font-size:1.1rem;color:var(--text-primary)}.qr-warning-text{font-size:.85rem;color:#d97706;font-weight:600;text-align:center;margin:1rem 0 0;padding:0 .5rem}.qr-code-wrapper{padding:1rem;background:#fff;border-radius:var(--border-radius);margin-bottom:1rem}.url-text{font-size:.8rem;color:var(--text-secondary);word-break:break-all;text-align:center;margin:0;padding:0 .5rem}.backup-status-active,.backup-status-inactive{display:flex;align-items:center;gap:1rem;padding:1rem 1.5rem;border-radius:var(--border-radius-lg);margin-bottom:1rem}.backup-status-active{background:#f59e0b1a;border:2px solid #f59e0b}.backup-status-inactive{background:#10b9811a;border:2px solid #10b981}.backup-status-icon{font-size:2rem;line-height:1}.backup-status-title{font-size:1.1rem;font-weight:600;color:var(--text-primary);margin-bottom:.25rem}.backup-status-expiry{font-size:.9rem;color:var(--text-secondary)}.backup-mode-controls{display:flex;flex-direction:column;gap:1.5rem;margin-top:1rem}.backup-mode-duration{display:flex;flex-direction:column;gap:.75rem}.duration-option{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:var(--border-radius);cursor:pointer;transition:all .2s ease}.duration-option:hover{background:var(--bg-card-hover);border-color:var(--accent)}.duration-option input[type=radio]{width:20px;height:20px;cursor:pointer}.duration-option span{font-size:.95rem;color:var(--text-primary);font-weight:500}.backup-mode-actions{display:flex;gap:1rem;flex-wrap:wrap}.btn-warning{background:#f59e0b;color:#78350f;border:none;padding:.75rem 1.5rem;border-radius:var(--border-radius);font-weight:600;font-size:1rem;cursor:pointer;transition:all .2s ease}.btn-warning:hover:not(:disabled){background:#d97706;transform:translateY(-1px)}.btn-warning:disabled{opacity:.5;cursor:not-allowed}.btn-secondary{background:var(--bg-secondary);color:var(--text-primary);border:2px solid var(--border-color);padding:.75rem 1.5rem;border-radius:var(--border-radius);font-weight:600;font-size:1rem;cursor:pointer;transition:all .2s ease}.btn-secondary:hover:not(:disabled){background:var(--bg-card-hover);border-color:var(--accent);transform:translateY(-1px)}.btn-secondary:disabled{opacity:.5;cursor:not-allowed}.success-message{display:flex;flex-direction:column;align-items:center;text-align:center;padding:2rem}.success-icon{width:64px;height:64px;background:#10b981;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:2rem;font-weight:700;margin-bottom:1rem}.success-message h2{color:var(--text-primary);margin:0 0 1rem}.status-text{font-size:1rem;color:var(--text-secondary);margin-bottom:1rem}.redirect-text{font-size:.9rem;color:var(--text-secondary);font-style:italic}.error-icon{width:64px;height:64px;background:#dc2626;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:2rem;font-weight:700;margin-bottom:1rem}.student-lookup-controls{margin-bottom:1.5rem}.student-lookup-search-row{position:relative;margin-bottom:1rem}.student-lookup-search-row .form-field__input{padding-right:2.5rem}.clear-search-btn{position:absolute;right:.5rem;top:50%;transform:translateY(-50%);display:flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;background:transparent;color:var(--text-muted);border:none;border-radius:50%;cursor:pointer;transition:all .2s ease}.clear-search-btn:hover{background:#0000000d;color:var(--text-primary)}.filters-section{margin-bottom:1rem}.filters-toggle{display:flex;align-items:center;gap:.5rem;width:100%;padding:.75rem 1rem;background:var(--bg-surface);color:var(--text-primary);border:1px solid var(--border-color);border-radius:var(--border-radius);font-size:.95rem;font-weight:500;cursor:pointer;transition:all .2s ease}.filters-toggle:hover{background:var(--bg-secondary)}.filters-toggle svg:first-child{flex-shrink:0}.filter-count{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 .35rem;background:var(--accent);color:#fff;border-radius:10px;font-size:.75rem;font-weight:600;margin-left:auto}.toggle-arrow{flex-shrink:0;transition:transform .2s ease}.toggle-arrow.expanded{transform:rotate(180deg)}.clear-filters-container{display:flex;justify-content:flex-end;border-top:1px solid var(--border-color)}.clear-filters-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:var(--bg-primary);color:var(--text-primary);border:1px solid var(--border-color);border-radius:var(--border-radius);font-size:.85rem;font-weight:500;cursor:pointer;transition:all .2s ease}.clear-filters-btn:hover{background:var(--bg-secondary);border-color:var(--accent)}.clear-filters-btn svg{flex-shrink:0}.filter-row{display:flex;flex-direction:column;gap:1rem;padding:1rem;margin-top:.5rem;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--border-radius)}@media(min-width:640px){.filter-row{flex-direction:row;flex-wrap:wrap}}.filter-row label{display:flex;align-items:center;gap:.5rem;font-weight:500;color:var(--text-primary);font-size:.95rem}.filter-row select{padding:.5rem .75rem;border:2px solid var(--bg-secondary);border-radius:var(--border-radius);background:var(--bg-secondary);color:var(--text-primary);font-size:.95rem;cursor:pointer;transition:border-color .2s,background .2s}.filter-row select:focus{outline:none;border-color:var(--accent);background:var(--bg-primary)}.student-lookup-summary{text-align:center;margin-top:1rem;padding:.5rem;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--border-radius);font-size:.9rem;color:var(--text-secondary)}.student-lookup-summary strong{color:var(--text-primary);font-weight:600}.student-lookup-results{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--border-radius);padding:1rem}.student-table-container{overflow-x:auto;margin-bottom:0}.student-table{width:100%;border-collapse:separate;border-spacing:0;font-size:.85rem;min-width:600px}.student-table th,.student-table td{padding:.5rem;text-align:left;border:1px solid var(--border-color);white-space:nowrap}.student-table th{background:var(--bg-secondary);font-weight:600;color:var(--text-primary);white-space:nowrap;position:sticky;top:0;z-index:10}.student-table td{color:var(--text-secondary);background:var(--bg-primary)}.student-table tbody tr:hover td{background:var(--bg-card-hover)}.student-name-cell{font-weight:500;color:var(--text-primary);max-width:200px;overflow:hidden;text-overflow:ellipsis}.day-cell,.program-cell,.group-cell,.level-cell{text-align:center}.coach-cell{font-weight:500;max-width:150px;overflow:hidden;text-overflow:ellipsis}@media(min-width:768px){.filter-row{padding:1.5rem}.student-table{font-size:.95rem}.student-table th,.student-table td{padding:.75rem}.student-name-cell,.coach-cell{max-width:none}}.session-warning-overlay{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:10000;padding:var(--spacing)}.session-warning-modal{background:var(--bg-card);padding:2rem;border-radius:var(--border-radius-lg);max-width:400px;width:100%;margin:1rem;box-shadow:0 4px 20px #0000004d;animation:modalSlideIn .3s ease-out}@keyframes modalSlideIn{0%{transform:translateY(-20px);opacity:0}to{transform:translateY(0);opacity:1}}.session-warning-modal h3{margin:0 0 1rem;font-size:1.25rem;font-weight:600;color:var(--text-primary);text-align:center}.session-warning-modal p{margin:0 0 1rem;text-align:center;color:var(--text-secondary);font-size:.95rem;line-height:1.5}.session-warning-modal strong{color:var(--accent);font-weight:600}.session-warning-modal .warning-text{color:var(--accent);font-size:.875rem;margin-bottom:1.5rem;font-weight:500}.session-warning-modal .btn-group{display:flex;gap:.75rem}.session-warning-modal .btn-group button{flex:1;padding:.875rem 1rem;font-size:.95rem;font-weight:600;border:none;border-radius:var(--border-radius);cursor:pointer;transition:all .2s;text-transform:uppercase;letter-spacing:.5px}.session-warning-modal .primary-btn{background:var(--accent);color:var(--accent-text)}.session-warning-modal .primary-btn:hover{background:var(--accent-hover);transform:translateY(-1px);box-shadow:0 4px 12px #bf2c374d}.session-warning-modal .secondary-btn{background:var(--bg-secondary);color:var(--text-primary)}.session-warning-modal .secondary-btn:hover{background:var(--bg-card-hover)}.session-expired-banner{background:var(--accent);color:var(--accent-text);padding:1rem;text-align:center;margin-bottom:1rem;border-radius:var(--border-radius);font-weight:500;font-size:.95rem;box-shadow:0 2px 8px #bf2c3733}.notices-banner{padding-top:.75rem;margin-bottom:1.5rem;display:flex;flex-direction:column;gap:.75rem}.card--notice{overflow:hidden;padding:.75rem}.card--notice-critical{background-color:#fee;border-left:4px solid #d32f2f}.card--notice-critical:hover{background-color:#fee}.card--notice-info{background-color:#e3f2fd;border-left:4px solid #1976d2}.card--notice-info:hover{background-color:#e3f2fd}.card--notice-updates{background-color:#fffde7;border-left:4px solid #f57c00}.card--notice-updates:hover{background-color:#fffde7}.card--notice-event{background-color:#f3e5f5;border-left:4px solid #7b1fa2}.card--notice-event:hover{background-color:#f3e5f5}.card--notice .card__header{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:0;margin-bottom:.5rem}.card__header-content{display:flex;align-items:center;gap:.5rem;flex:1;min-width:0}.card__icon{font-size:1.25rem;flex-shrink:0;line-height:1}.card--notice .card__title{font-size:.95rem;font-weight:600;margin:0;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.card__countdown{font-size:.75rem;font-weight:500;padding:.2rem .4rem;background:#0000001a;border-radius:4px;white-space:nowrap;flex-shrink:0}.card__dismiss{background:none;border:none;font-size:1.5rem;line-height:1;padding:0;width:1.75rem;height:1.75rem;display:flex;align-items:center;justify-content:center;cursor:pointer;border-radius:4px;transition:background .2s;flex-shrink:0;color:inherit}.card__dismiss:hover{background:#00000026}.card--notice .card__body{padding:0}.card__message{margin:0;line-height:1.5;white-space:pre-wrap;font-size:.9rem;color:var(--text-secondary)}.card__footer-text{margin:.75rem 0 0;padding-top:.75rem;border-top:1px solid rgba(0,0,0,.1);font-size:.875rem;color:var(--text-secondary)}.time-range-presets{display:flex;flex-wrap:wrap;gap:.5rem}.filter-mode-options{display:flex;flex-direction:column;gap:.75rem}.filter-mode-option{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:var(--border-radius);cursor:pointer;transition:all .2s ease;-webkit-user-select:none;user-select:none}.filter-mode-option:hover{background:var(--bg-card-hover);border-color:var(--accent)}.filter-mode-option:has(input:checked){background:#fce1071a;border-color:var(--primary);font-weight:600}.filter-mode-option input[type=radio]{width:20px;height:20px;cursor:pointer;accent-color:var(--primary)}.filter-mode-option span{font-size:.95rem;color:var(--text-primary)}.multiselect{margin-top:var(--spacing-2)}.multiselect__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-2)}.multiselect__toggle-all{padding:.5rem 1rem;font-size:.875rem;font-weight:500;color:var(--text-primary);background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:var(--border-radius);cursor:pointer;transition:all .2s ease;white-space:nowrap}.multiselect__toggle-all:hover{background:var(--bg-card-hover);border-color:var(--primary)}.multiselect__toggle-all--active{background:#fce10726;border-color:var(--primary);color:var(--text-primary);font-weight:600}.multiselect__list{max-height:280px;overflow-y:auto;border:2px solid var(--border-color);border-radius:var(--border-radius);padding:.5rem;background:var(--bg-primary)}.multiselect__list--compact{max-height:none;overflow-y:visible}.multiselect__item{display:flex;align-items:center;gap:.75rem;padding:.75rem;cursor:pointer;border-radius:var(--border-radius);transition:all .2s ease;-webkit-user-select:none;user-select:none;background:transparent;border:1px solid transparent}.multiselect__item:hover{background:var(--bg-secondary);border-color:var(--border-color)}.multiselect__item:has(.multiselect__checkbox:checked){background:#fce1071a;border-color:var(--primary)}.multiselect__checkbox{width:1.25rem;height:1.25rem;cursor:pointer;accent-color:var(--primary);flex-shrink:0}.multiselect__label{flex:1;font-size:.95rem;color:var(--text-primary);font-weight:500}.multiselect__item:has(.multiselect__checkbox:checked) .multiselect__label{font-weight:600}.multiselect__summary{margin-top:var(--spacing-2);padding:.5rem .75rem;background:var(--bg-secondary);border-radius:var(--border-radius);font-size:.875rem;color:var(--text-secondary);text-align:center}.typeahead{position:relative;width:100%}.typeahead__suggestions{position:absolute;top:100%;left:0;right:0;margin:.25rem 0 0;padding:0;list-style:none;background:var(--bg-card);border:2px solid var(--accent);border-radius:var(--border-radius);box-shadow:0 4px 12px #00000026;max-height:300px;overflow-y:auto;z-index:100}.typeahead__suggestion{padding:.75rem 1rem;cursor:pointer;transition:background .2s;border-bottom:1px solid var(--bg-secondary)}.typeahead__suggestion:last-child{border-bottom:none}.typeahead__suggestion:hover{background:var(--bg-card-hover)}.typeahead__suggestion:active{background:var(--accent);color:var(--accent-text)}.notice-history{display:flex;flex-direction:column;gap:1rem}.card--archived{opacity:.6}.card--notice.card--history{padding:.75rem}.card--notice.card--history .card__header{display:flex;justify-content:space-between;align-items:flex-start;gap:.5rem;padding:0;margin-bottom:.5rem}.card--notice.card--history .card__info{flex:1;min-width:0}.card--notice.card--history .card__title{font-size:1rem;font-weight:600;margin:0 0 .35rem;white-space:normal;overflow:visible;text-overflow:clip}.card--notice.card--history .card__metadata{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;font-size:.85rem;color:var(--text-secondary);margin-top:0}.card--notice.card--history .card__body{padding:0}.csv-preview{display:flex;flex-direction:column;gap:.75rem}.csv-preview-item{padding:.75rem;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--border-radius);font-size:.875rem;line-height:1.4}.csv-preview-item strong{display:block;margin-bottom:.25rem;color:var(--text-primary)}.error-list{margin:0;padding-left:1.25rem;font-size:.875rem;line-height:1.6}.error-list li{margin-bottom:.5rem;color:var(--text-secondary)}.error-list li:last-child{margin-bottom:0}.card--error{background:#fee;border:1px solid #dc2626;border-radius:var(--border-radius)}.card--error .card__body{padding:1rem}.card--error h3{color:#dc2626;margin:0 0 .75rem;font-size:1rem}.card--success{background:#d1fae5;border:1px solid #10b981;border-radius:var(--border-radius)}.card--success .card__body{padding:1rem}.card--success h3{color:#065f46;margin:0 0 .75rem;font-size:1rem}.notice-filter{display:flex;flex-direction:column;gap:.25rem;min-width:140px}.notice-filter .form-field__label{font-size:.75rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;margin:0}.form-field__select--compact{font-size:.9rem;padding:.4rem .6rem;min-height:auto}.notice-toggle-container{margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid var(--border-color)}.modal__content--large{max-width:600px;max-height:90vh;overflow-y:auto}@media(min-width:768px){.modal__content--large{max-width:700px}}.admin-table{width:100%;border-collapse:separate;border-spacing:0;font-size:.9rem;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--border-radius);overflow:hidden}.admin-table th{background:var(--bg-secondary);font-weight:600;color:var(--text-primary);padding:1rem .75rem;text-align:left;border-bottom:2px solid var(--border-color);white-space:nowrap;font-size:.85rem;text-transform:uppercase;letter-spacing:.5px}.admin-table td{padding:1rem .75rem;border-bottom:1px solid var(--border-color);color:var(--text-secondary);background:var(--bg-primary)}.admin-table tbody tr:nth-child(4n+1),.admin-table tbody tr:nth-child(4n+2){background:var(--bg-primary)}.admin-table tbody tr:nth-child(4n+3),.admin-table tbody tr:nth-child(4n+4){background:#00000005}.admin-table tbody tr:not([data-detail-row]):hover td{background:var(--bg-card-hover);cursor:pointer}.admin-table tbody tr[data-detail-row] td{background:#fce10708!important;border-bottom:2px solid var(--border-color);padding:1.5rem!important}.admin-table tbody tr[data-detail-row]:hover td{background:#fce10708!important;cursor:default}.admin-table .admin-table{margin-top:.5rem;font-size:.85rem;border:1px solid var(--border-color);box-shadow:0 1px 3px #0000000d}.admin-table .admin-table th{padding:.65rem .75rem;font-size:.8rem;background:#00000005}.admin-table .admin-table td{padding:.65rem .75rem}.admin-table .admin-table tbody tr{background:var(--bg-primary)!important}.admin-table .admin-table tbody tr:hover td{background:var(--bg-card-hover)!important}@media(min-width:768px){.admin-table{font-size:.95rem}.admin-table th{padding:1rem;font-size:.9rem}.admin-table td{padding:1rem}.admin-table .admin-table th{padding:.75rem;font-size:.85rem}.admin-table .admin-table td{padding:.75rem}}.attendance-summary-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:1.5rem}.attendance-summary-filters{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem;align-items:end}.attendance-summary-filters .form-field{margin-bottom:0}.attendance-detail-loading{text-align:center;color:var(--text-muted);padding:1rem}.attendance-detail-header{margin:0 0 1rem;font-size:.95rem;font-weight:600;color:var(--text-primary)}.attendance-expand-icon{width:40px;text-align:center}.attendance-expand-icon svg{transition:transform .2s ease}.attendance-card-footer-expanded{border-top:1px solid var(--border-color);padding-top:1rem;margin-top:1rem;background:#fce10708}.stat-value-large{font-size:2rem}.stat-label-small{font-size:.875rem;margin-bottom:.5rem}.u-mb-0{margin-bottom:0}.u-mb-1{margin-bottom:.5rem}.u-mb-2{margin-bottom:1rem}.u-mb-3{margin-bottom:1.5rem}.u-mb-4{margin-bottom:2rem}.u-mt-0{margin-top:0}.u-mt-1{margin-top:.5rem}.u-mt-2{margin-top:1rem}.u-mt-3{margin-top:1.5rem}.u-mt-4{margin-top:2rem}.u-ml-0{margin-left:0}.u-ml-1{margin-left:.5rem}.u-ml-2{margin-left:1rem}.u-mr-0{margin-right:0}.u-mr-1{margin-right:.5rem}.u-mr-2{margin-right:1rem}.u-p-0{padding:0}.u-p-1{padding:.5rem}.u-p-2{padding:1rem}.u-p-3{padding:1.5rem}.u-p-4{padding:2rem}.u-block{display:block}.u-inline-block{display:inline-block}.u-inline{display:inline}.u-hidden{display:none}.u-flex{display:flex}.u-flex-column{flex-direction:column}.u-flex-row{flex-direction:row}.u-flex-wrap{flex-wrap:wrap}.u-flex-start{justify-content:flex-start}.u-flex-end{justify-content:flex-end}.u-flex-center{justify-content:center}.u-flex-between{justify-content:space-between}.u-flex-around{justify-content:space-around}.u-align-start{align-items:flex-start}.u-align-end{align-items:flex-end}.u-align-center{align-items:center}.u-align-stretch{align-items:stretch}.u-gap-0{gap:0}.u-gap-1{gap:.5rem}.u-gap-2{gap:1rem}.u-gap-3{gap:1.5rem}.u-gap-4{gap:2rem}.u-flex-1{flex:1}.u-flex-auto{flex:auto}.u-flex-none{flex:none}.u-text-left{text-align:left}.u-text-center{text-align:center}.u-text-right{text-align:right}.u-text-muted{color:var(--text-muted)}.u-text-primary{color:var(--text-primary)}.u-text-secondary{color:var(--text-secondary)}.u-text-accent{color:var(--accent)}.u-font-mono{font-family:SF Mono,Monaco,monospace}.u-font-bold{font-weight:700}.u-font-semibold{font-weight:600}.u-font-normal{font-weight:400}.u-text-uppercase{text-transform:uppercase}.u-text-lowercase{text-transform:lowercase}.u-text-capitalize{text-transform:capitalize}.u-text-sm{font-size:.875rem}.u-text-base{font-size:1rem}.u-text-lg{font-size:1.125rem}.u-text-xl{font-size:1.25rem}.u-w-full{width:100%}.u-w-auto{width:auto}.u-w-half{width:50%}.u-relative{position:relative}.u-absolute{position:absolute}.u-fixed{position:fixed}@media(max-width:767px){.u-hidden-mobile{display:none}}@media(min-width:768px){.u-hidden-desktop{display:none}}.u-opacity-0{opacity:0}.u-opacity-50{opacity:.5}.u-opacity-100{opacity:1}.u-overflow-auto{overflow:auto}.u-overflow-hidden{overflow:hidden}.u-overflow-scroll{overflow:scroll}.sidebar-safe-area-fill{position:fixed;top:0;left:0;right:0;height:env(safe-area-inset-top,0);background:var(--bg-primary);z-index:1510;pointer-events:none;will-change:transform;transition:background .28s cubic-bezier(.4,0,.2,1)}.sidebar-safe-area-fill--open{background:var(--bg-card)}.sidebar-overlay{position:fixed;inset:0;background:#00000073;z-index:1500;opacity:0;pointer-events:none;transition:opacity .25s ease}.sidebar-overlay--visible{opacity:1;pointer-events:auto}.sidebar-panel{position:fixed;top:0;left:0;width:280px;height:100%;height:100dvh;background:var(--bg-card);z-index:1501;display:flex;flex-direction:column;transform:translate(-100%);transition:transform .28s cubic-bezier(.4,0,.2,1);box-shadow:4px 0 24px #0000002e;overflow-y:auto;-webkit-overflow-scrolling:touch;padding-top:env(safe-area-inset-top,0);padding-bottom:env(safe-area-inset-bottom,0)}.sidebar-panel--open{transform:translate(0)}.sidebar-close{position:absolute;top:calc(.75rem + env(safe-area-inset-top,0));right:.75rem;width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:none;border:none;border-radius:50%;cursor:pointer;font-size:1.3rem;color:var(--text-secondary);transition:background .15s ease,color .15s ease}.sidebar-close:hover{background:var(--bg-secondary);color:var(--text-primary)}.sidebar-user-info{padding:calc(1.25rem + env(safe-area-inset-top,0)) 1.25rem 1.25rem;border-bottom:1px solid var(--bg-secondary)}.sidebar-user-info__name{font-size:.8rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.25rem}.sidebar-user-info__value{font-size:1rem;font-weight:600;color:var(--text-primary)}.sidebar-user-info__coach{margin-top:.75rem;padding-top:.75rem;border-top:1px solid var(--bg-secondary)}.sidebar-user-info__coach-row{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.sidebar-user-info__coach-label{font-size:.8rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em}.sidebar-user-info__coach-name{font-size:.95rem;font-weight:600;color:var(--text-primary);margin-top:.15rem}.sidebar-user-info__coach-name--empty{font-weight:400;color:var(--text-muted);font-style:italic}.sidebar-user-info__change-btn{font-size:.78rem;color:var(--accent);background:none;border:none;cursor:pointer;padding:.2rem .4rem;border-radius:4px;transition:background .15s ease;white-space:nowrap;flex-shrink:0}.sidebar-user-info__change-btn:hover{background:#bf2c3714}.sidebar-nav{flex:1;padding:.75rem 0}.sidebar-nav-item{display:flex;align-items:center;gap:.875rem;width:100%;padding:.875rem 1.25rem;min-height:48px;font-size:.95rem;font-weight:500;color:var(--text-primary);background:none;border:none;text-decoration:none;cursor:pointer;transition:background .15s ease,color .15s ease;text-align:left}.sidebar-nav-item:hover{background:var(--bg-secondary)}.sidebar-nav-item--active{color:var(--accent);background:#bf2c370f;font-weight:600}.sidebar-nav-item--active:hover{background:#bf2c371a}.sidebar-nav-item--dimmed{opacity:.4;pointer-events:none}.sidebar-nav-item--danger{color:var(--danger)}.sidebar-nav-item--danger:hover{background:#ef444414}.sidebar-nav-item__icon{font-size:1.1rem;width:1.5rem;text-align:center;flex-shrink:0}.sidebar-divider{height:1px;background:var(--bg-secondary);margin:.5rem 0}.sidebar-footer{padding:.5rem 0;border-top:1px solid var(--bg-secondary)}.sidebar-nav-item--install{color:var(--text-secondary)}.sidebar-nav-item--install:hover{background:var(--bg-secondary);color:var(--text-primary)}.sidebar-nav-item__install-text{display:flex;flex-direction:column;gap:.1rem}.sidebar-nav-item__install-sub{font-size:.72rem;font-weight:400;color:var(--text-muted)}.sidebar-install-hint{padding:.375rem 1.25rem .5rem 3.625rem;font-size:.78rem;color:var(--text-muted);line-height:1.4}.map-page{position:fixed;inset:0;display:flex;flex-direction:column;background:#1a1a2e;padding-top:env(safe-area-inset-top,0)}.map-container{flex:1;position:relative;overflow:hidden;min-height:0}.map-container .maplibregl-map{position:absolute;inset:0;width:100%;height:100%}.map-freshness-banner{position:absolute;top:.75rem;left:calc(1.25rem + 44px);right:calc(1.25rem + 44px);z-index:200;border-radius:var(--border-radius);padding:.6rem .875rem;font-size:.82rem;font-weight:500;display:flex;align-items:center;gap:.5rem;box-shadow:0 2px 8px #0003}.map-freshness-banner--subtle{background:#fffffff2;color:var(--text-primary);border:1px solid var(--bg-secondary)}.map-freshness-banner--prominent{background:#fbbf24f7;color:#92400e;border:1px solid rgba(251,191,36,.8)}.map-freshness-banner__refresh-btn{margin-left:auto;background:none;border:none;font-size:.8rem;font-weight:700;color:var(--accent);cursor:pointer;padding:.15rem .4rem;border-radius:4px;white-space:nowrap;flex-shrink:0}.map-freshness-banner--prominent .map-freshness-banner__refresh-btn{color:#92400e;text-decoration:underline}.map-hamburger-btn{position:absolute;top:calc(.75rem + env(safe-area-inset-top,0));left:.75rem;z-index:200;width:44px;height:44px;display:flex;align-items:center;justify-content:center;background:var(--bg-card);border:1px solid var(--bg-secondary);border-radius:50%;cursor:pointer;color:var(--text-primary);box-shadow:0 2px 8px #0003;transition:background .15s ease,transform .15s ease}.map-hamburger-btn:hover{background:var(--bg-secondary)}.map-hamburger-btn:active{transform:scale(.93)}@media(max-width:767px)and (min-height:650px){.map-hamburger-btn{display:none}}.map-download-panel{position:absolute;top:.75rem;right:.75rem;z-index:300}.map-download-btn{width:44px;height:44px;display:flex;align-items:center;justify-content:center;background:var(--bg-card);border:1px solid var(--bg-secondary);border-radius:50%;cursor:pointer;box-shadow:0 2px 8px #0003;color:var(--text-primary);transition:background .15s ease,transform .15s ease}.map-download-btn:hover{background:var(--bg-secondary)}.map-download-btn:active{transform:scale(.93)}.map-download-dropdown{position:absolute;top:calc(100% + .5rem);right:0;width:260px;background:var(--bg-card);border:1px solid var(--bg-secondary);border-radius:var(--border-radius);box-shadow:0 4px 16px #0000002e;padding:1rem}.map-download-dropdown__title{font-size:.85rem;font-weight:600;color:var(--text-primary);margin-bottom:.4rem}.map-download-dropdown__meta{font-size:.78rem;color:var(--text-secondary);margin-bottom:.75rem}.map-download-dropdown__hint{font-size:.72rem;color:var(--text-secondary);margin-bottom:.5rem;font-style:italic}.map-download-done{font-size:.8rem;font-weight:600;color:#16a34a;margin-bottom:.5rem}.map-download-persist-notice{font-size:.73rem;color:#92400e;background:#fef3c7;border:1px solid #fde68a;border-radius:var(--border-radius);padding:.4rem .5rem;margin-bottom:.5rem}.map-download-eviction-warning{font-size:.78rem;color:#92400e;background:#fef3c7;border:1px solid #fde68a;border-radius:var(--border-radius);padding:.5rem .6rem;margin-bottom:.75rem}.map-download-progress{margin-bottom:.75rem}.map-download-progress__bar-track{height:6px;background:var(--bg-secondary);border-radius:3px;overflow:hidden;margin-bottom:.3rem}.map-download-progress__bar-fill{height:100%;background:var(--accent);border-radius:3px;transition:width .3s ease}.map-download-progress__label{font-size:.75rem;color:var(--text-secondary)}.map-download-dropdown__clear-btn{background:none;border:none;font-size:.78rem;color:var(--text-secondary);cursor:pointer;text-decoration:underline;padding:0;margin-top:.5rem;display:block}.map-download-dropdown__clear-btn:hover{color:var(--danger)}.map-download-quality{display:flex;gap:.4rem;margin-bottom:.6rem}.map-download-quality__btn{flex:1;padding:.4rem .25rem;font-size:.78rem;font-weight:500;border:1px solid var(--bg-secondary);border-radius:var(--border-radius);background:var(--bg-secondary);color:var(--text-primary);cursor:pointer;transition:all .15s ease;text-align:center;display:flex;flex-direction:column;align-items:center;gap:.1rem}.map-download-quality__btn:hover{border-color:var(--accent)}.map-download-quality__btn--active{background:var(--accent);color:var(--accent-text);border-color:var(--accent);font-weight:600}.map-download-quality__size{font-size:.68rem;opacity:.75}.map-filter-panel{position:relative;z-index:200;background:var(--bg-card);border-top:2px solid var(--bg-secondary);box-shadow:0 -6px 32px #00000047;padding-bottom:env(safe-area-inset-bottom,0)}.map-filter-panel:before{content:"";display:block;width:36px;height:4px;background:var(--text-secondary);border-radius:2px;margin:8px auto 0;opacity:.45}.map-filter-panel__toggle{width:100%;padding:.7rem 1.25rem;display:flex;align-items:center;justify-content:space-between;background:none;border:none;cursor:pointer;transition:background .15s ease;gap:.5rem}.map-filter-panel__toggle:hover{background:var(--bg-secondary)}.map-filter-panel__toggle-summary{display:flex;align-items:center;gap:.5rem;min-width:0;flex:1;overflow:hidden}.map-filter-panel__toggle-label{font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-primary);white-space:nowrap;display:flex;align-items:center;gap:.3rem}.map-filter-panel__toggle-range{font-size:.82rem;font-weight:500;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.map-filter-panel__toggle-arrow{font-size:.85rem;color:var(--text-secondary);transition:transform .25s ease;flex-shrink:0}.map-filter-panel__toggle-arrow--up{transform:rotate(180deg)}.map-filter-panel__body{padding:.5rem 1.25rem 1rem;border-top:1px solid var(--bg-secondary)}.map-filter-section{margin-bottom:.875rem}.map-filter-section:last-child{margin-bottom:0}.map-filter-section__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.5rem}.map-filter-section__label{font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.07em;color:var(--text-secondary)}.map-filter-section__label:only-child{margin-bottom:.5rem}.map-filter-panel__reset-btn{display:flex;align-items:center;gap:.3rem;background:none;border:none;font-size:.72rem;font-weight:600;color:var(--text-secondary);cursor:pointer;padding:.2rem .4rem;border-radius:4px;transition:color .15s ease,background .15s ease}.map-filter-panel__reset-btn:hover{color:var(--accent);background:var(--bg-secondary)}.map-level-chips{display:flex;gap:.3rem}.map-level-chip{flex:1;height:36px;font-size:.68rem;font-weight:700;border:2px solid;background:transparent;color:var(--text-secondary);cursor:pointer;border-radius:6px;transition:background .15s ease,color .15s ease,transform .1s ease;padding:0;display:flex;align-items:center;justify-content:center;letter-spacing:-.01em}.map-level-chip:active{transform:scale(.94)}.map-level-chip--active{font-weight:800}.map-tree-presets{display:flex;gap:.5rem}.map-tree-preset-btn{flex:1;padding:.5rem .25rem;font-size:.8rem;font-weight:500;border:1px solid var(--bg-secondary);border-radius:var(--border-radius);background:var(--bg-secondary);color:var(--text-primary);cursor:pointer;transition:all .15s ease;text-align:center;display:flex;align-items:center;justify-content:center;gap:.3rem}.map-tree-preset-btn:hover{border-color:var(--accent)}.map-tree-preset-btn--active{background:var(--accent);color:var(--accent-text);border-color:var(--accent);font-weight:600}.maplibregl-popup-close-button{width:32px!important;height:32px!important;font-size:1.2rem!important;line-height:32px!important;border-radius:50%!important;background:var(--bg-secondary)!important;color:var(--text-primary)!important;top:6px!important;right:6px!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:0!important;border:none!important;cursor:pointer!important}.maplibregl-popup-close-button:hover{background:var(--bg-tertiary, #ddd)!important}.maplibregl-popup-content{padding:0;border-radius:var(--border-radius);box-shadow:0 4px 16px #0003;min-width:180px;max-width:300px}.map-run-popup{padding:.875rem 2.5rem .875rem 1rem}.map-run-popup__name{font-size:1rem;font-weight:700;color:var(--text-primary);margin-bottom:.15rem;line-height:1.3}.map-run-popup__alt-name{font-size:.78rem;color:var(--text-secondary);font-style:italic;margin-bottom:.25rem}.map-run-popup__meta{font-size:.8rem;color:var(--text-secondary);margin-bottom:.4rem}.map-run-popup__tree-badge{display:inline-flex;align-items:center;gap:.25rem;font-size:.75rem;font-weight:600;background:#22c55e1f;color:#15803d;border:1px solid rgba(34,197,94,.3);border-radius:999px;padding:.15rem .6rem;margin-bottom:.4rem}.map-run-popup__field{border-top:1px solid var(--bg-secondary);padding-top:.4rem;margin-top:.3rem}.map-run-popup__field-label{font-size:.68rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-secondary);margin-bottom:.1rem}.map-run-popup__field-value{font-size:.8rem;color:var(--text-primary);line-height:1.4}.map-run-popup__notes{font-size:.8rem;color:var(--text-secondary);border-top:1px solid var(--bg-secondary);padding-top:.5rem;margin-top:.25rem;line-height:1.45}.map-loading{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#1a1a2e;z-index:100;color:#aaa;gap:.75rem;font-size:.9rem}.map-loading__spinner{width:32px;height:32px;border:3px solid rgba(255,255,255,.15);border-top-color:var(--accent);border-radius:50%;animation:map-spin .8s linear infinite}@keyframes map-spin{to{transform:rotate(360deg)}}.map-container .maplibregl-ctrl-bottom-right{bottom:.75rem;right:.75rem}.map-search-btn{position:absolute;bottom:.75rem;left:.75rem;z-index:200;width:44px;height:44px;display:flex;align-items:center;justify-content:center;background:var(--bg-card);border:1px solid var(--bg-secondary);border-radius:50%;cursor:pointer;box-shadow:0 2px 8px #0003;color:var(--text-primary);transition:background .15s ease,transform .15s ease}.map-search-btn:hover{background:var(--bg-secondary)}.map-search-btn:active{transform:scale(.93)}.map-3d-btn{position:absolute;top:calc(1.25rem + 44px);right:.75rem;z-index:200;width:44px;height:44px;display:flex;align-items:center;justify-content:center;background:var(--bg-card);border:1px solid var(--bg-secondary);border-radius:50%;cursor:pointer;box-shadow:0 2px 8px #0003;color:var(--text-primary);font-size:.78rem;font-weight:700;letter-spacing:.03em;transition:background .15s ease,transform .15s ease}.map-3d-btn:hover{background:var(--bg-secondary)}.map-3d-btn:active{transform:scale(.93)}.map-3d-btn--active{background:var(--accent);color:var(--accent-text);border-color:var(--accent)}.map-3d-btn--active:hover{background:var(--accent);opacity:.88}.map-search-overlay{position:fixed;inset:0;z-index:1520;background:var(--bg-card);display:flex;flex-direction:column}.map-search-header{display:flex;align-items:center;gap:.5rem;padding:.75rem;border-bottom:1px solid var(--bg-secondary);flex-shrink:0}.map-search-input-wrap{flex:1;position:relative;display:flex;align-items:center}.map-search-input-icon{position:absolute;left:.6rem;color:var(--text-secondary);pointer-events:none}.map-search-input{width:100%;padding:.55rem 2rem .55rem 2.1rem;border:1px solid var(--bg-secondary);border-radius:8px;background:var(--bg-secondary);color:var(--text-primary);font-size:1rem;outline:none;-webkit-appearance:none}.map-search-input:focus{border-color:var(--accent)}.map-search-clear{position:absolute;right:.5rem;background:none;border:none;color:var(--text-secondary);font-size:1.2rem;line-height:1;cursor:pointer;padding:.2rem}.map-search-cancel{background:none;border:none;color:var(--accent);font-size:.9rem;font-weight:600;cursor:pointer;white-space:nowrap;padding:.25rem;flex-shrink:0}.map-search-results{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch}.map-search-result{width:100%;padding:.75rem 1rem;display:flex;flex-direction:column;align-items:flex-start;gap:.15rem;background:none;border:none;border-bottom:1px solid var(--bg-secondary);cursor:pointer;text-align:left;transition:background .1s ease}.map-search-result:hover,.map-search-result:active{background:var(--bg-secondary)}.map-search-result__name{font-size:.95rem;font-weight:600;color:var(--text-primary)}.map-search-result__altname{display:block;font-size:.78rem;font-weight:400;color:var(--text-secondary)}.map-search-result__meta{font-size:.78rem;color:var(--text-secondary)}.map-search-empty{padding:2rem 1rem;text-align:center;font-size:.9rem;color:var(--text-secondary)}.safety-manual{position:fixed;inset:0;display:flex;flex-direction:column;background:var(--bg-primary);padding-top:env(safe-area-inset-top,0);padding-bottom:env(safe-area-inset-bottom,0)}.safety-manual__header{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem .5rem .5rem;font-size:.9rem;font-weight:600;color:var(--text-primary);border-bottom:1px solid var(--bg-secondary);flex-shrink:0}.safety-manual__hamburger{width:40px;height:40px;flex-shrink:0;display:flex;align-items:center;justify-content:center;background:none;border:none;border-radius:50%;cursor:pointer;color:var(--text-primary);transition:background .15s ease}.safety-manual__hamburger:hover{background:var(--bg-secondary)}@media(max-width:767px)and (min-height:650px){.safety-manual__hamburger{display:none}}.safety-manual__scroll{flex:1;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch}.safety-manual__pages{display:flex;flex-direction:column}.safety-manual__status{padding:2rem 1rem;text-align:center;font-size:.9rem;color:var(--text-secondary)}.safety-manual__status--error{color:var(--color-danger, #bf2c37)}.profile-open-btn{min-width:32px;min-height:32px;padding:.25rem;color:var(--text-muted);flex-shrink:0}.profile-color-dots{display:flex;flex-direction:row;align-items:center;gap:.35rem;margin-top:.3rem;flex-wrap:wrap}.profile-color-dot{display:inline-block;width:12px;height:12px;border-radius:50%;background-color:var(--dot-color, var(--bg-secondary));border:1px solid rgba(0,0,0,.2);flex-shrink:0}.profile-color-dot--unknown{background-color:var(--bg-secondary);border-style:dashed}.profile-color-label{font-size:.7rem;color:var(--text-muted);line-height:1}.roster-day-heading{font-size:.85rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);margin:0 0 .5rem}.roster-list{display:flex;flex-direction:column;gap:.5rem}.roster-card{cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}.roster-card:active{opacity:.85}.roster-card__name{font-weight:600;font-size:1rem;color:var(--text-primary)}.roster-card__notes{margin:.35rem 0 0;font-size:.85rem;color:var(--text-muted);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.roster-card__no-profile{margin-top:.35rem;font-size:.8rem;color:var(--text-muted);font-style:italic}.color-select-row{display:flex;align-items:center;gap:.5rem}.color-select-row .form-field__select{flex:1}.color-select-swatch{width:28px;height:28px;border-radius:50%;background-color:var(--swatch-color, var(--bg-secondary));border:2px solid var(--bg-secondary);box-shadow:inset 0 0 0 1px #00000026;flex-shrink:0;transition:background-color .15s}.color-select-trigger{display:flex;align-items:center;gap:.5rem;width:100%;padding:.5rem .75rem;border:1.5px solid var(--border);border-radius:var(--border-radius);background:var(--bg-card);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:border-color .15s}.color-select-trigger:active{border-color:var(--accent)}.color-select-trigger__dot{width:20px;height:20px;border-radius:50%;background-color:var(--swatch-color, var(--bg-secondary));border:1.5px solid rgba(0,0,0,.2);flex-shrink:0}.color-select-trigger__name{flex:1;font-size:.9rem;color:var(--text-primary);text-align:left}.color-select-trigger__placeholder{flex:1;font-size:.9rem;color:var(--text-muted);text-align:left}.color-select-trigger__icon{color:var(--text-muted);flex-shrink:0}.color-swatch-grid{display:flex;flex-wrap:wrap;gap:.35rem}.color-swatch-btn{display:flex;flex-direction:column;align-items:center;gap:.15rem;padding:.25rem;border:2px solid transparent;border-radius:var(--border-radius);background:none;cursor:pointer;min-width:44px;min-height:44px;position:relative;-webkit-tap-highlight-color:transparent;transition:border-color .15s}.color-swatch-btn:active{opacity:.8}.color-swatch-btn--selected{border-color:var(--accent);background-color:var(--bg-secondary)}.color-swatch-btn__circle{width:26px;height:26px;border-radius:50%;background-color:var(--swatch-color, var(--bg-secondary));border:1.5px solid rgba(0,0,0,.2);flex-shrink:0;transition:transform .1s}.color-swatch-btn:active .color-swatch-btn__circle{transform:scale(.9)}.color-swatch-btn__circle--more{display:flex;align-items:center;justify-content:center;background-color:var(--bg-secondary);border-style:dashed;font-size:1rem;font-weight:700;color:var(--text-secondary)}.color-swatch-btn__check{position:absolute;top:.2rem;right:.2rem;display:flex;align-items:center;justify-content:center;width:16px;height:16px;border-radius:50%;background-color:var(--accent);color:#fff}.color-swatch-btn__label{font-size:.6rem;line-height:1;color:var(--text-secondary);max-width:44px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:center}.color-swatch-btn--selected .color-swatch-btn__label{color:var(--text-primary);font-weight:600}.color-select-preview{display:flex;align-items:center;gap:.5rem}.color-swatch-freetext{display:flex;align-items:stretch;gap:.5rem}.color-swatch-freetext .form-field__input{flex:1}.color-swatch-freetext .button{white-space:nowrap}.color-swatch--red{--swatch-color: #CC2200}.color-swatch--maroon{--swatch-color: #7A0000}.color-swatch--coral{--swatch-color: #FF5533}.color-swatch--orange{--swatch-color: #FF6600}.color-swatch--brown{--swatch-color: #7B3F00}.color-swatch--tan{--swatch-color: #C4A25A}.color-swatch--yellow{--swatch-color: #FFD700}.color-swatch--lime{--swatch-color: #8BC34A}.color-swatch--green{--swatch-color: #006400}.color-swatch--olive{--swatch-color: #6B7A2A}.color-swatch--teal{--swatch-color: #008080}.color-swatch--sky{--swatch-color: #5BB8E8}.color-swatch--blue{--swatch-color: #0055CC}.color-swatch--navy{--swatch-color: #003087}.color-swatch--purple{--swatch-color: #6600CC}.color-swatch--pink{--swatch-color: #FF69B4}.color-swatch--black{--swatch-color: #222222}.color-swatch--grey{--swatch-color: #808080}.color-swatch--silver{--swatch-color: #ABABAB}.color-swatch--white{--swatch-color: #E8E8E8}.color-swatch--burgundy{--swatch-color: #800020}.color-swatch--rust{--swatch-color: #B7410E}.color-swatch--peach{--swatch-color: #FFCBA4}.color-swatch--gold{--swatch-color: #DAA520}.color-swatch--bright-yellow{--swatch-color: #FFEF00}.color-swatch--cream{--swatch-color: #FFFDD0}.color-swatch--sage{--swatch-color: #87AE73}.color-swatch--dark-green{--swatch-color: #013220}.color-swatch--mint{--swatch-color: #98FB98}.color-swatch--forest{--swatch-color: #228B22}.color-swatch--turquoise{--swatch-color: #30D5C8}.color-swatch--light-blue{--swatch-color: #ADD8E6}.color-swatch--powder-blue{--swatch-color: #B0E0E6}.color-swatch--royal-blue{--swatch-color: #4169E1}.color-swatch--slate{--swatch-color: #708090}.color-swatch--lavender{--swatch-color: #B57EDC}.color-swatch--plum{--swatch-color: #8E4585}.color-swatch--dusty-rose{--swatch-color: #C4767A}.color-swatch--hot-pink{--swatch-color: #FF69B4}.color-swatch--magenta{--swatch-color: #CC00CC}.color-swatch--charcoal{--swatch-color: #36454F}.color-swatch--beige{--swatch-color: #D2B48C}.color-swatch--copper{--swatch-color: #B87333}.color-swatch--neon-green{--swatch-color: #39FF14}.color-swatch--neon-orange{--swatch-color: #FF6700}.checkin-form{padding:.5rem 0}.checkin-form__actions{display:flex;flex-direction:column;gap:.5rem;margin-top:1.5rem}.checkin-form__error{color:var(--error)}.checkin-greeting{font-size:1rem;color:var(--text-primary);margin-bottom:1.25rem}.checkin-options{display:flex;flex-direction:column;gap:.75rem}.checkin-option{display:flex;align-items:center;gap:.75rem;padding:.875rem 1rem;border-radius:var(--radius);border:2px solid var(--border);background:var(--bg-primary);color:var(--text-primary);font-size:1rem;font-weight:500;text-align:left;cursor:pointer;transition:border-color .15s,background .15s;min-height:56px}.checkin-option__icon{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;flex-shrink:0}.checkin-option--here .checkin-option__icon{background:#22c55e26;color:#16a34a}.checkin-option--late .checkin-option__icon{background:#eab30826;color:#b45309}.checkin-option--unavailable .checkin-option__icon{background:#ef444426;color:#dc2626}.checkin-option--selected{border-color:currentColor}.checkin-option--here.checkin-option--selected{border-color:#16a34a;background:#22c55e0f}.checkin-option--late.checkin-option--selected{border-color:#b45309;background:#eab3080f}.checkin-option--unavailable.checkin-option--selected{border-color:#dc2626;background:#ef44440f}.checkin-late-expand{display:flex;flex-direction:column;gap:.75rem;padding:1rem;background:#eab3080f;border:1px solid #b45309;border-radius:var(--border-radius)}.checkins-program-filter{display:flex;gap:.5rem;overflow-x:auto;padding-bottom:.125rem;margin-bottom:1rem;-webkit-overflow-scrolling:touch;scrollbar-width:none}.checkins-program-filter::-webkit-scrollbar{display:none}.checkins-program-chip{flex-shrink:0;padding:.375rem .875rem;border-radius:999px;border:2px solid var(--border);background:transparent;color:var(--text-secondary);font-size:.85rem;font-weight:600;cursor:pointer;min-height:36px;white-space:nowrap;transition:border-color .15s,background .15s,color .15s}.checkins-program-chip--active{border-color:var(--accent);background:var(--accent);color:var(--accent-text)}.checkins-date-nav{display:flex;align-items:center;gap:.5rem;margin-bottom:1.25rem}.checkins-date-nav__label{position:relative;flex:1;text-align:center;padding:.5rem .25rem}.checkins-date-nav__text{font-size:1rem;font-weight:600;color:var(--text-primary);pointer-events:none}.checkins-date-nav__overlay{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer;border:none;background:transparent}.checkin-badge{display:inline-flex;align-items:center;padding:.2rem .6rem;border-radius:999px;font-size:.75rem;font-weight:600;white-space:nowrap;flex-shrink:0}.checkin-badge--here{background:#22c55e26;color:#16a34a}.checkin-badge--late{background:#eab30826;color:#b45309}.checkin-badge--unavailable{background:#ef444426;color:#dc2626}.checkin-badge--pending{background:var(--bg-tertiary, var(--bg-secondary));color:var(--text-muted)}.checkins-summary{display:flex;gap:.75rem;margin-bottom:1.5rem}.checkins-summary__item{flex:1;display:flex;flex-direction:column;align-items:center;padding:.75rem .5rem;border-radius:var(--radius);background:var(--bg-secondary)}.checkins-summary__count{font-size:1.75rem;font-weight:700;line-height:1}.checkins-summary__label{font-size:.7rem;color:var(--text-muted);margin-top:.2rem}.checkins-summary__item--absent .checkins-summary__count{color:#dc2626}.checkins-summary__item--late .checkins-summary__count{color:#b45309}.checkins-summary__item--here .checkins-summary__count{color:#16a34a}.checkins-section{margin-bottom:1.5rem}.checkins-section__heading{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;margin:0 0 .625rem;padding-bottom:.375rem;border-bottom:2px solid}.checkins-section__heading--absent{color:#dc2626;border-color:#dc262640}.checkins-section__heading--pending{color:var(--text-muted);border-color:var(--border)}.checkins-section__heading--late{color:#b45309;border-color:#b4530940}.checkins-section__toggle{display:flex;align-items:center;justify-content:space-between;width:100%;padding:0 0 .375rem;border:none;border-bottom:2px solid;background:transparent;cursor:pointer;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.625rem}.checkins-section__toggle--here{color:#16a34a;border-color:#16a34a40}.checkins-list{display:flex;flex-direction:column;gap:.5rem}.checkins-list--here{margin-top:.5rem}.checkin-row{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;border-radius:var(--radius);background:var(--bg-secondary)}.checkin-row__name{flex:1;font-weight:600;font-size:.95rem}.checkin-row__time{font-size:.78rem;color:var(--text-muted)}.checkin-row__eta{font-size:.78rem;font-weight:600;color:#b45309}.checkins-all-good{text-align:center;color:#16a34a;font-weight:600;font-size:.95rem;padding:1.5rem 0}.checkins-empty{text-align:center;color:var(--text-muted);padding:2.5rem 0}.checkins-error{color:var(--danger);font-size:.9rem}.assessment-score{margin-bottom:1.5rem}.assessment-score__label{font-size:.9375rem;font-weight:600;color:var(--text-primary);margin-bottom:.25rem}.assessment-score__prompt{font-size:.875rem;color:var(--text-secondary);margin-bottom:.75rem;line-height:1.4}.assessment-score__optional{font-weight:400;color:var(--text-muted);font-size:.8125rem}.assessment-score__options{display:flex;flex-direction:column;gap:.5rem}.assessment-score__options--grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.5rem}.assessment-score__options--chips{flex-direction:row;flex-wrap:wrap;gap:.5rem}.assessment-score__options--level-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem}.assessment-score__btn{display:flex;flex-direction:column;gap:.125rem;background:var(--bg-card);border:1.5px solid var(--bg-secondary);border-radius:var(--border-radius);padding:.625rem .875rem;text-align:left;cursor:pointer;transition:border-color .15s,background .15s;min-height:44px}.assessment-score__btn:active{background:var(--bg-secondary)}.assessment-score__btn--active{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,var(--bg-card))}.assessment-score__btn-label{font-size:.875rem;font-weight:600;color:var(--text-primary)}.assessment-score__btn-desc{font-size:.8125rem;color:var(--text-secondary);line-height:1.3}.assessment-score__chip{background:var(--bg-card);border:1.5px solid var(--bg-secondary);border-radius:999px;padding:.375rem .875rem;font-size:.875rem;font-weight:500;color:var(--text-primary);cursor:pointer;min-height:36px;transition:border-color .15s,background .15s}.assessment-score__chip--active{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 15%,var(--bg-card));color:var(--accent)}.assessment-score__skip-btn{background:none;border:none;color:var(--text-muted);font-size:.8125rem;cursor:pointer;padding:.25rem 0;text-decoration:underline;text-underline-offset:2px;align-self:flex-start}.assessment-form{padding-bottom:1.5rem}.assessment-form__step-label{font-size:.8125rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:1.25rem}.assessment-form__derived-level{background:var(--bg-card);border:1.5px solid var(--bg-secondary);border-radius:var(--border-radius);padding:1rem;margin-bottom:1.5rem;text-align:center}.assessment-form__derived-level-label{font-size:.8125rem;color:var(--text-secondary);margin-bottom:.25rem}.assessment-form__derived-level-value{font-size:2rem;font-weight:700;color:var(--accent);line-height:1.2}.assessment-form__derived-level-hint{font-size:.8125rem;color:var(--text-muted);margin-top:.375rem}.assessment-form__nav{display:flex;gap:.75rem;margin-top:1.5rem}.assessment-form__nav .button{flex:1}.assessment-form__priority{margin-bottom:1.25rem}.assessment-form__priority-label{display:flex;align-items:center;gap:.5rem;font-size:.9375rem;font-weight:500;color:var(--text-primary);cursor:pointer}.assessment-form__priority-checkbox{width:18px;height:18px;cursor:pointer;accent-color:var(--accent)}.assessment-form__priority-hint{font-size:.8125rem;color:var(--text-muted);margin-top:.375rem;padding-left:1.625rem;line-height:1.4}.assessment-list{padding-bottom:2rem}.assessment-list__progress{margin-bottom:1.25rem}.assessment-list__progress-count{font-size:.875rem;color:var(--text-secondary);display:block;margin-bottom:.375rem}.assessment-list__progress-bar{height:6px;background:var(--bg-secondary);border-radius:999px;overflow:hidden}.assessment-list__progress-fill{height:100%;width:var(--progress-fill, 0%);background:var(--accent);border-radius:999px;transition:width .3s ease}.assessment-list__loading,.assessment-list__empty{text-align:center;color:var(--text-muted);padding:2rem 1rem;font-size:.9375rem}.assessment-list__items{display:flex;flex-direction:column;gap:.5rem}.assessment-list__item{display:flex;align-items:center;gap:.75rem;background:var(--bg-card);border:1.5px solid var(--bg-secondary);border-radius:var(--border-radius);padding:.75rem 1rem;text-align:left;cursor:pointer;width:100%;min-height:56px;transition:border-color .15s}.assessment-list__item--done{opacity:.7}.assessment-list__item-icon{flex-shrink:0}.assessment-list__icon--done{color:#38a800}.assessment-list__icon--pending{color:var(--text-muted)}.assessment-list__item-info{flex:1;display:flex;flex-direction:column;gap:.125rem}.assessment-list__item-name{font-size:.9375rem;font-weight:500;color:var(--text-primary)}.assessment-list__item-meta{font-size:.8125rem;color:var(--text-secondary)}.assessment-list__item-draft{color:var(--accent)}.assessment-list__item-arrow{color:var(--text-muted);font-size:1.25rem;flex-shrink:0}.assessment-nudge{display:flex;align-items:center;gap:.75rem;background:color-mix(in srgb,var(--accent) 10%,var(--bg-card));border:1.5px solid color-mix(in srgb,var(--accent) 40%,transparent);border-radius:var(--border-radius);padding:.75rem 1rem;margin-bottom:1rem}.assessment-nudge__text{flex:1;font-size:.875rem;color:var(--text-primary)}.assessment-season-card{background:color-mix(in srgb,#fce107 12%,var(--bg-card));border:1.5px solid color-mix(in srgb,#fce107 50%,transparent);border-radius:var(--border-radius);padding:1rem;margin-bottom:1rem;display:flex;flex-direction:column;gap:.5rem}.assessment-season-card__title{font-size:.875rem;font-weight:700;color:var(--text-primary);text-transform:uppercase;letter-spacing:.04em}.assessment-season-card__body{font-size:.9375rem;color:var(--text-primary)}.assessment-error{background:color-mix(in srgb,var(--accent) 10%,var(--bg-card));border:1.5px solid color-mix(in srgb,var(--accent) 40%,transparent);border-radius:var(--border-radius);padding:.75rem 1rem;font-size:.875rem;color:var(--text-primary);margin-bottom:1rem}.sidebar-nav-item__badge{display:inline-flex;align-items:center;justify-content:center;background:var(--accent);color:#fff;font-size:.6875rem;font-weight:700;border-radius:999px;min-width:18px;height:18px;padding:0 .3rem;margin-left:auto}.admin-surveys__filters{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem;margin-bottom:1rem}.admin-surveys__toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem}.admin-surveys__count{font-size:.875rem;color:var(--text-secondary)}.admin-surveys__table-wrapper{overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:var(--border-radius);border:1px solid var(--bg-secondary)}.admin-surveys__table{width:100%;border-collapse:collapse;font-size:.8125rem}.admin-surveys__table th{background:var(--bg-secondary);color:var(--text-secondary);font-weight:600;text-align:left;padding:.5rem .75rem;white-space:nowrap}.admin-surveys__table td{padding:.5rem .75rem;border-bottom:1px solid var(--bg-secondary);color:var(--text-primary);vertical-align:middle}.admin-surveys__table tr:last-child td{border-bottom:none}.admin-surveys__row{cursor:pointer}.admin-surveys__row:hover td{background:var(--bg-secondary)}.admin-surveys__row--priority td:first-child{border-left:3px solid var(--accent)}.admin-surveys__row-chevron{color:var(--text-muted);font-size:1.1rem;text-align:right;white-space:nowrap;width:1rem}.admin-surveys__modal-flag{color:var(--accent)}.admin-surveys__detail-heading{font-size:.75rem;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;margin:1rem 0 .375rem}.admin-surveys__detail-section{border:1px solid var(--bg-secondary);border-radius:var(--border-radius);overflow:hidden}.admin-surveys__detail-row{display:flex;justify-content:space-between;align-items:baseline;gap:1rem;padding:.4rem .75rem;border-bottom:1px solid var(--bg-secondary);font-size:.875rem}.admin-surveys__detail-row:last-child{border-bottom:none}.admin-surveys__detail-key{color:var(--text-secondary);flex-shrink:0}.admin-surveys__detail-value{color:var(--text-primary);font-weight:500;text-align:right}.admin-surveys__detail-notes{font-size:.875rem;color:var(--text-primary);white-space:pre-wrap;background:var(--bg-secondary);border-radius:var(--border-radius);padding:.625rem .75rem;margin:0}.bottom-tab-bar{display:none;position:fixed;bottom:0;left:0;right:0;height:var(--bottom-bar-total);padding-bottom:env(safe-area-inset-bottom,0);background:var(--bg-card);border-top:1px solid var(--bg-secondary);z-index:900;align-items:flex-start}.bottom-tab{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:8px 4px;min-height:44px;font-size:.65rem;font-weight:500;color:var(--text-secondary);text-decoration:none;background:none;border:none;cursor:pointer;transition:color .15s ease}.bottom-tab--active{color:var(--accent)}.bottom-tab--dimmed{opacity:.4;pointer-events:none}.bottom-tab__icon-wrap{position:relative;display:inline-flex}.bottom-tab__badge{position:absolute;top:-4px;right:-6px;min-width:14px;height:14px;border-radius:999px;background:var(--accent);color:#fff;font-size:.55rem;font-weight:700;display:inline-flex;align-items:center;justify-content:center;padding:0 .2rem}.bottom-sheet-overlay{position:fixed;inset:0;background:#00000073;z-index:950}.bottom-sheet{position:fixed;bottom:0;left:0;right:0;background:var(--bg-card);border-radius:12px 12px 0 0;z-index:960;padding-bottom:calc(var(--bottom-bar-height) + env(safe-area-inset-bottom,0));transform:translateY(100%);transition:transform .28s cubic-bezier(.4,0,.2,1);max-height:80dvh;overflow-y:auto}.bottom-sheet--open{transform:translateY(0)}.bottom-sheet__handle{width:36px;height:4px;background:var(--bg-secondary);border-radius:2px;margin:12px auto 8px}.bottom-sheet__identity{padding:.75rem 1.25rem .875rem;border-bottom:1px solid var(--bg-secondary)}.bottom-sheet__identity-user{font-size:.85rem;color:var(--text-secondary);margin-bottom:.5rem}.bottom-sheet__identity-user strong{color:var(--text-primary);font-weight:600}.bottom-sheet__identity-coach-row{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.bottom-sheet__identity-coach{font-size:.9rem;font-weight:500;color:var(--text-primary)}.bottom-sheet__identity-coach em{font-weight:400;color:var(--text-muted)}.bottom-sheet__change-btn{font-size:.78rem;color:var(--accent);background:none;border:none;cursor:pointer;padding:.2rem .4rem;border-radius:4px;transition:background .15s ease;white-space:nowrap;flex-shrink:0}.bottom-sheet__change-btn:hover{background:#bf2c3714}.bottom-sheet__nav{padding:.5rem 0}.bottom-sheet__nav-item{display:flex;align-items:center;gap:.875rem;width:100%;padding:.875rem 1.25rem;min-height:48px;font-size:.95rem;font-weight:500;color:var(--text-primary);background:none;border:none;text-decoration:none;cursor:pointer;transition:background .15s ease,color .15s ease;text-align:left}.bottom-sheet__nav-item:hover{background:var(--bg-secondary)}.bottom-sheet__nav-item--active{color:var(--accent);background:#bf2c370f;font-weight:600}.bottom-sheet__nav-item--dimmed{opacity:.4;pointer-events:none}.bottom-sheet__nav-item--danger{color:var(--danger)}.bottom-sheet__nav-item--danger:hover{background:#ef444414}.bottom-sheet__nav-item--install{color:var(--text-secondary)}.bottom-sheet__install-text{display:flex;flex-direction:column;gap:.1rem}.bottom-sheet__install-sub{font-size:.72rem;font-weight:400;color:var(--text-muted)}.bottom-sheet__divider{height:1px;background:var(--bg-secondary);margin:.5rem 0}.bottom-sheet__install-hint{padding:.375rem 1.25rem .5rem calc(2.125rem + 18px);font-size:.78rem;color:var(--text-muted);line-height:1.4}@media(max-width:767px)and (min-height:650px){.bottom-tab-bar{display:flex}.map-page{bottom:var(--bottom-bar-total)}.map-filter-panel{padding-bottom:0}body:not(.swipe-page) .step-nav{bottom:var(--bottom-bar-total);padding-bottom:var(--spacing)}body:not(.swipe-page) .step-nav-spacer{height:calc(4rem + 2 * var(--spacing))}body{padding-bottom:var(--bottom-bar-total)}body.swipe-page{padding-bottom:0}.update-banner{bottom:calc(var(--bottom-bar-total) + .75rem)}.sidebar-panel,.sidebar-overlay,.sidebar-safe-area-fill{display:none!important}}@media(min-width:768px),(max-height:649px){.bottom-tab-bar,.bottom-sheet-overlay,.bottom-sheet{display:none}}.student-detail{display:flex;flex-direction:column;gap:1rem}.student-detail__header{padding:1rem}.student-detail__identity{display:flex;flex-direction:column;gap:.5rem}.student-detail__name-row{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.student-detail__name{font-size:1.25rem;font-weight:700;margin:0}.student-detail__meta{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.student-detail__waiver-row{display:flex;align-items:center;gap:.75rem}.student-detail__level-badge{font-size:.9rem}.student-detail__notes{margin:.25rem 0 0;font-size:.9rem;color:var(--text-secondary)}.student-detail__appearance{display:flex;gap:.75rem;flex-wrap:wrap}.student-detail__gear{font-size:.8rem;color:var(--text-muted)}.student-detail__top-row{display:flex;flex-direction:column;gap:1rem}@media(min-width:768px){.student-detail__top-row{flex-direction:row;align-items:flex-start}.student-detail__top-row>.student-detail__section{flex:1}}.student-detail__section{background:var(--bg-card);border-radius:var(--border-radius);padding:1rem;border:1px solid var(--bg-secondary)}.student-detail__section--full{width:100%}.student-detail__section-title{display:flex;align-items:center;gap:.4rem;font-size:.9rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-secondary);margin:0 0 .75rem}.student-detail__group-cards{display:flex;flex-direction:column;gap:.5rem}.student-detail__group-card{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem}.student-detail__group-info{display:flex;align-items:center;gap:.5rem;flex:1;flex-wrap:wrap}.student-detail__group-program{font-weight:600;font-size:.9rem}.student-detail__group-num{font-size:.9rem}.student-detail__group-coach{color:var(--text-muted);font-size:.85rem;margin-left:auto}.student-detail__past-seasons{margin-top:.5rem}.student-detail__past-seasons summary{cursor:pointer;-webkit-user-select:none;user-select:none;padding:.25rem 0}.student-detail__past-row{font-size:.8rem;color:var(--text-muted);padding:.2rem 0}.student-detail__att-stats{display:flex;gap:1.5rem;margin-bottom:.75rem}.student-detail__att-stat{display:flex;flex-direction:column;align-items:center;gap:.2rem}.student-detail__att-num{font-size:1.5rem;font-weight:700;line-height:1}.student-detail__att-num--present{color:var(--success)}.student-detail__att-num--absent{color:var(--danger)}.student-detail__att-list{display:flex;flex-direction:column;gap:.25rem;margin-top:.5rem;max-height:260px;overflow-y:auto}.student-detail__att-row{display:flex;align-items:center;gap:.5rem;min-height:32px}.student-detail__att-date{font-size:.8rem;color:var(--text-muted);min-width:90px}.student-detail__att-coach{margin-left:auto;text-align:right}.student-detail__table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}.student-detail__table{width:100%;border-collapse:collapse;font-size:.85rem}.student-detail__table th{text-align:left;font-weight:600;color:var(--text-secondary);padding:.4rem .5rem;border-bottom:1px solid var(--bg-secondary);white-space:nowrap}.student-detail__table td{padding:.5rem;border-bottom:1px solid var(--bg-secondary);vertical-align:middle}.student-detail__table tr:last-child td{border-bottom:none}.student-detail__level-change{display:inline-flex;align-items:center;gap:.3rem;font-weight:600}.student-detail__assessments{display:flex;flex-direction:column;gap:.5rem}.student-detail__assessment-card{padding:.75rem;display:flex;flex-direction:column;gap:.4rem}.student-detail__assessment-header{display:flex;align-items:center;justify-content:space-between}.student-detail__assessment-body{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.student-detail__friend-link{color:var(--accent);text-decoration:none}.student-detail__friend-link:hover{text-decoration:underline}.student-table-row--clickable{cursor:pointer}.student-table-row--clickable:hover{background:var(--bg-card-hover)}.student-lookup-name-with-arrow{display:inline-flex;align-items:center;gap:.25rem}.student-lookup-row-arrow{color:var(--text-muted);flex-shrink:0}.admin-home-card--action{cursor:default}.admin-home-card--action .admin-home-card-body{display:flex;flex-direction:column;gap:.5rem}.admin-file-input{display:none}.admin-upload-row{display:flex;gap:.4rem;flex-wrap:wrap;align-items:center;margin-top:.25rem}.admin-upload-row .button:first-child{max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-upload-row--selects{margin-top:.5rem;margin-bottom:.25rem}.admin-select{font-size:.82rem;padding:.3rem .5rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--text);cursor:pointer}.admin-select:disabled{opacity:.5;cursor:not-allowed}.admin-hub__section-desc{font-size:.85rem;color:var(--text-muted);margin:-.5rem 0 .75rem}.admin-data-result{font-size:.82rem;color:var(--success);margin-top:.25rem}.admin-data-errors{color:var(--warning)}.admin-data-error{font-size:.82rem;color:var(--danger);margin-top:.25rem}.group-detail__coach-banner{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background:var(--bg-card);border:1px solid var(--bg-secondary);border-radius:var(--border-radius);margin-bottom:.5rem}.group-detail__coach-name{font-weight:600;font-size:1rem;flex:1}.group-detail__list{display:flex;flex-direction:column;gap:.25rem}.group-detail__student-row{display:flex;align-items:center;gap:.5rem;padding:.6rem .75rem;background:var(--bg-card);border:1px solid var(--bg-secondary);border-radius:var(--border-radius);min-height:52px}.group-detail__student-info{display:flex;align-items:center;gap:.5rem;flex:1;flex-wrap:wrap;cursor:pointer}.group-detail__student-name{font-weight:500;font-size:.95rem}.admin-groups__filter-row{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap;margin-bottom:1rem}.admin-groups__filter-row .form-field__select{flex:1 1 0;min-width:0}@media(min-width:600px){.admin-groups__filter-row .form-field__select{flex:0 0 auto;width:auto}}.admin-groups__search{display:flex;align-items:center;gap:.375rem;flex:1 1 100%;min-width:0}@media(min-width:600px){.admin-groups__search{flex:1 1 auto;min-width:140px;margin-left:auto}}.admin-groups__search .form-field__input{flex:1;min-width:0;font-size:.875rem;padding:.25rem .5rem}.admin-groups__columns-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;padding-bottom:1rem}.admin-groups__columns{display:flex;gap:.75rem;align-items:flex-start;min-width:min-content}.admin-groups__column{width:280px;flex-shrink:0;background:var(--bg-secondary);border-radius:var(--border-radius);overflow:hidden}.admin-groups__col-header{display:flex;align-items:center;gap:.5rem;padding:.65rem .75rem;background:var(--bg-card);border-bottom:1px solid var(--bg-secondary)}.admin-groups__col-header--link{cursor:pointer}.admin-groups__col-header--link:hover{background:var(--bg-card-hover)}.admin-groups__col-title{font-weight:700;font-size:.95rem;flex:1}.admin-groups__col-coach{flex:1;text-align:right;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:120px}.admin-groups__col-loading{padding:1rem;display:flex;justify-content:center}.admin-groups__col-students{display:flex;flex-direction:column}.admin-groups__student-row{display:flex;align-items:center;gap:.5rem;padding:.6rem .75rem;min-height:44px;border-bottom:1px solid var(--bg-secondary);background:var(--bg-card)}.admin-groups__student-row:last-child{border-bottom:none}.admin-groups__student-info{flex:1;display:flex;flex-direction:column;gap:.1rem;min-width:0;cursor:pointer}.admin-groups__student-info:hover .admin-groups__student-name{text-decoration:underline}.admin-groups__student-name{font-size:.9rem;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.admin-groups__cross-day-warn{display:block;padding:.5rem .75rem;font-size:.82rem;text-transform:none;font-weight:500;border-radius:var(--border-radius);margin-bottom:.5rem}.form-field__static{font-size:.9rem;color:var(--text-secondary);padding:.5rem 0}.admin-groups__list{display:flex;flex-direction:column;gap:.5rem}.group-student-card{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background:var(--bg-card);border-radius:var(--border-radius);border:1px solid var(--bg-secondary)}.group-student-card__info{flex:1;display:flex;flex-direction:column;gap:.15rem;min-width:0}.group-student-card__name{font-weight:600;font-size:.95rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.group-student-card__name--clickable{cursor:pointer;display:inline-flex;align-items:center;gap:.25rem}.group-student-card__name--clickable:hover{color:var(--accent)}.group-student-card__meta{font-size:.82rem;color:var(--text-muted)}.group-student-card__badges{display:flex;gap:.35rem;flex-shrink:0}.admin-coaches{display:flex;flex-direction:column;gap:1.5rem}.admin-coaches__add-form{background:var(--surface-elevated);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:1rem;display:flex;flex-direction:column;gap:.75rem}.admin-coaches__add-form h3{margin:0 0 .25rem;font-size:.95rem;font-weight:600}.admin-coaches__form-row{display:flex;gap:.5rem;flex-wrap:wrap}.admin-coaches__form-row input{flex:1;min-width:140px}.admin-coaches__list{display:flex;flex-direction:column;gap:.5rem}.admin-coaches__item{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background:var(--surface-elevated);border:1px solid var(--border-color);border-radius:var(--radius-md)}.admin-coaches__item--inactive{opacity:.55}.admin-coaches__item--clickable{cursor:pointer}.admin-coaches__item--clickable:hover{border-color:var(--color-primary)}.admin-coaches__item-info{flex:1;min-width:0}.admin-coaches__item-name{font-weight:600;font-size:.95rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.admin-coaches__item-id{font-size:.8rem;color:var(--text-muted);font-family:monospace}.admin-coaches__item-actions{display:flex;gap:.4rem;flex-shrink:0}.admin-coaches__status-badge{font-size:.7rem;font-weight:600;padding:.15rem .5rem;border-radius:9999px;text-transform:uppercase;letter-spacing:.04em}.admin-coaches__status-badge--active{background:var(--color-success-bg, #dcfce7);color:var(--color-success, #16a34a)}.admin-coaches__status-badge--inactive{background:var(--surface-muted, #f1f5f9);color:var(--text-muted)}.admin-coaches__filter-row{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap}.admin-coaches__search{display:flex;align-items:center;gap:.375rem;width:100%}.admin-coaches__search .form-field__input{flex:1;min-width:0;font-size:.875rem;padding:.25rem .5rem}.admin-coaches__count{font-size:.85rem;color:var(--text-muted);margin-left:auto}.admin-coach-detail__profile{background:var(--bg-card);border:1px solid var(--bg-secondary);border-radius:var(--border-radius-lg);padding:1.25rem 1rem 1rem;display:flex;flex-direction:column;gap:.5rem}.admin-coach-detail__profile-name{font-size:1.3rem;font-weight:700;color:var(--text-primary);margin:0;line-height:1.2}.admin-coach-detail__profile-id{font-size:.78rem;font-family:monospace;color:var(--text-muted);letter-spacing:.02em}.admin-coach-detail__profile-row{display:flex;align-items:center;gap:.5rem;margin-top:.25rem}.admin-coach-detail__groups-section{display:flex;flex-direction:column;gap:1rem}.admin-coach-detail__section-title{display:flex;align-items:center;gap:.4rem;font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);margin:0 0 .25rem}.admin-coach-detail__season-block{display:flex;flex-direction:column;gap:.75rem}.admin-coach-detail__season-label{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);padding:.2rem 0;border-bottom:1px solid var(--bg-secondary);margin-bottom:.25rem}.admin-coach-detail__day-section{display:flex;flex-direction:column;gap:.35rem}.admin-coach-detail__day-pill{display:inline-flex;align-items:center;font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:.2rem .6rem;border-radius:9999px;background:var(--accent);color:#fff;width:fit-content;margin-bottom:.15rem}.admin-coach-detail__group-list{display:flex;flex-direction:column;gap:.35rem}.admin-coach-detail__group-row{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background:var(--bg-card);border:1px solid var(--bg-secondary);border-radius:var(--border-radius);cursor:pointer;width:100%;text-align:left;transition:border-color .15s ease}.admin-coach-detail__group-row:hover{border-color:var(--accent)}.admin-coach-detail__group-info{display:flex;flex-direction:column;gap:.15rem;flex:1;min-width:0}.admin-coach-detail__group-name{font-size:.95rem;font-weight:600;color:var(--text-primary)}.admin-coach-detail__group-count{font-size:.8rem;color:var(--text-muted)}.admin-coach-detail__group-program-badge{font-size:.7rem;font-weight:700;letter-spacing:.04em;padding:.15rem .45rem;border-radius:4px;background:var(--bg-secondary);color:var(--text-secondary);flex-shrink:0}.admin-coach-detail__arrow{flex-shrink:0;color:var(--text-muted)}.admin-programs__sort-input{max-width:110px}.admin-programs__checkbox-row{display:flex;align-items:center;gap:.5rem;font-size:.9rem}.admin-programs__edit-body{flex:1;display:flex;flex-direction:column;gap:.75rem}.admin-programs__edit-checkbox{display:flex;align-items:center;gap:.5rem;font-size:.85rem}.admin-programs__hint{margin-top:.5rem;text-align:center}.admin-programs__field-group{display:flex;flex-direction:column;gap:.4rem;padding:.6rem .75rem;background:var(--bg-secondary);border-radius:var(--border-radius)}.admin-programs__field-label{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted)}.admin-programs__day-toggles{display:flex;gap:.3rem;flex-wrap:wrap}.admin-programs__day-toggle{all:unset;box-sizing:border-box;display:flex;align-items:center;justify-content:center;min-width:2.4rem;height:1.8rem;padding:0 .5rem;font-size:.75rem;font-weight:600;border-radius:9999px;border:1.5px solid var(--bg-muted);background:var(--bg-primary);color:var(--text-muted);cursor:pointer;transition:background .15s,color .15s,border-color .15s;-webkit-user-select:none;user-select:none}.admin-programs__day-toggle:hover{border-color:var(--accent);color:var(--accent)}.admin-programs__day-toggle--active{background:var(--accent);color:var(--accent-text);border-color:var(--accent)}.admin-programs__day-toggle--active:hover{background:var(--accent-hover);border-color:var(--accent-hover);color:var(--accent-text)}.admin-programs__enrollment-toggles{display:flex;gap:.3rem;flex-wrap:wrap}.admin-programs__enrollment-toggle{all:unset;box-sizing:border-box;display:flex;align-items:center;justify-content:center;min-width:2.4rem;height:1.8rem;padding:0 .5rem;font-size:.75rem;font-weight:600;border-radius:9999px;border:1.5px solid var(--bg-muted);background:var(--bg-primary);color:var(--text-muted);cursor:pointer;transition:background .15s,color .15s,border-color .15s;-webkit-user-select:none;user-select:none}.admin-programs__enrollment-toggle:hover{border-color:var(--accent);color:var(--accent)}.admin-programs__enrollment-toggle--active{background:var(--accent);color:var(--accent-text);border-color:var(--accent)}.admin-programs__enrollment-toggle--active:hover{background:var(--accent-hover);border-color:var(--accent-hover);color:var(--accent-text)}.cover-claim{min-height:100dvh;display:flex;flex-direction:column;background:var(--bg-secondary);padding:env(safe-area-inset-top,0) 0 env(safe-area-inset-bottom,0)}.cover-claim__inner{flex:1;display:flex;flex-direction:column;justify-content:center;padding:1.5rem 1rem 2rem;max-width:480px;width:100%;margin:0 auto}.cover-claim__brand{text-align:center;margin-bottom:2rem}.cover-claim__brand-name{font-size:1.125rem;font-weight:700;color:var(--accent);letter-spacing:.02em;margin:0 0 .25rem}.cover-claim__brand-sub{font-size:.8125rem;color:var(--text-secondary);margin:0}.cover-claim__card{background:var(--bg-card);border-radius:var(--border-radius-lg);box-shadow:0 2px 12px #00000014;overflow:hidden}.cover-claim__card-header{background:var(--accent);padding:1.25rem 1.5rem}.cover-claim__title{font-size:1.25rem;font-weight:700;color:#fff;margin:0 0 .25rem}.cover-claim__subtitle{font-size:.875rem;color:#ffffffd9;margin:0}.cover-claim__card-body{padding:1.5rem}.cover-claim__details{display:flex;flex-direction:column;gap:0;margin-bottom:1.5rem;border:1px solid rgba(0,0,0,.08);border-radius:var(--border-radius);overflow:hidden}.cover-claim__detail-row{display:flex;justify-content:space-between;align-items:center;padding:.875rem 1rem;gap:1rem;border-bottom:1px solid rgba(0,0,0,.06)}.cover-claim__detail-row:last-child{border-bottom:none}.cover-claim__detail-row:nth-child(2n){background:var(--bg-secondary)}.cover-claim__label{font-size:.8125rem;color:var(--text-secondary);white-space:nowrap;flex-shrink:0}.cover-claim__value{font-size:.9375rem;font-weight:600;color:var(--text-primary);text-align:right}.cover-claim__detail-row--notes{flex-direction:column;align-items:flex-start;gap:.375rem}.cover-claim__detail-row--notes .cover-claim__value{text-align:left;font-weight:400;color:var(--text-secondary);font-size:.875rem}.cover-claim__loading{display:flex;flex-direction:column;align-items:center;gap:1rem;padding:3rem 1.5rem;color:var(--text-secondary);font-size:.9375rem}.cover-claim__error-icon{font-size:2.5rem;margin-bottom:.5rem}.cover-claim__error-title{font-size:1.25rem;font-weight:700;color:var(--text-primary);margin:0 0 .5rem}.cover-claim__error-message{font-size:.9375rem;color:var(--text-secondary);margin:0 0 1.5rem;text-align:center;line-height:1.5}.cover-claim__card-body--centered{text-align:center}.cover-claim__name-section{margin-top:1.5rem;display:flex;flex-direction:column;gap:.5rem}.cover-claim__name-label{font-size:.8125rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em}.admin-self-assessments{display:flex;flex-direction:column;gap:1rem}.admin-self-assessments__upload{background:var(--bg-card);border:1px solid var(--bg-secondary);border-radius:var(--border-radius);padding:1rem 1.25rem}.admin-self-assessments__section-title{display:flex;align-items:center;gap:.5rem;font-size:1rem;font-weight:600;margin:0 0 .75rem}.admin-self-assessments__preview{margin-top:.75rem;border-top:1px solid var(--bg-secondary);padding-top:.75rem}.admin-self-assessments__columns{display:flex;flex-direction:column;gap:.5rem;margin-bottom:.75rem}.admin-self-assessments__column-row{display:flex;align-items:center;gap:.5rem}.admin-self-assessments__column-header{flex:1;font-size:.82rem;font-weight:500;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-self-assessments__column-row .form-field__select{flex:1;min-width:150px}.admin-self-assessments__preview-table{margin-top:.75rem;overflow-x:auto}.admin-self-assessments__link-badge{cursor:pointer}.student-link-modal__input-row{position:relative;display:flex;align-items:center}.student-link-modal__search-icon{position:absolute;left:.6rem;color:var(--text-muted);pointer-events:none}.student-link-modal__input{padding-left:2rem}.student-link-modal__spinner{position:absolute;right:.6rem;width:14px;height:14px;border:2px solid var(--bg-secondary);border-top-color:var(--accent);border-radius:50%;animation:spin .6s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.admin-self-assessments__search-results{display:flex;flex-direction:column;gap:.25rem;margin-top:.5rem;max-height:240px;overflow-y:auto}.admin-self-assessments__search-result{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;border:1px solid var(--bg-secondary);border-radius:var(--border-radius);background:var(--bg-primary);cursor:pointer;text-align:left;font-size:.82rem;transition:background-color .15s}.admin-self-assessments__search-result:hover{background:var(--bg-card-hover)}.admin-self-assessments__friend-groups{display:flex;flex-direction:column;gap:.75rem}.admin-self-assessments__friend-card{padding:.75rem}.admin-self-assessments__friend-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem}.admin-self-assessments__friend-list{display:flex;flex-direction:column;gap:.25rem}.admin-self-assessments__friend-row{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.25rem 0;font-size:.82rem}.admin-self-assessments__friend-name{flex:1}.admin-self-assessments__split-names{display:flex;flex-direction:column;gap:.5rem}.admin-self-assessments__split-row{display:flex;align-items:center;gap:.5rem}.admin-self-assessments__split-row .form-field__input{flex:1}
