@layer reset{*,:before,:after{box-sizing:border-box}html,body,#app{width:100%;min-height:100%;margin:0}button,input,select,textarea{font:inherit}button{border:0}}@layer base{:root{--app-header-height:56px;--canvas:#edf0ed;--paper:#f7f6f1;--paper-strong:#fffefa;--ink:#102b3a;--ink-soft:#53666e;--ink-readable:#4d616a;--line:#d5dcd9;--sea:#176b87;--sea-deep:#0e5068;--sea-wash:#e3eef0;--coral:#e96135;--coral-soft:#fff0ea;--route-ink:#071923;--danger:#a33428;--danger-wash:#fff0ed;--warning:#805c16;--success:#286342;--sand:#e7e7de;--shadow:0 8px 24px #102b3a1f;--sans:ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--display:var(--sans);--text-caption:.75rem;--text-label:.8125rem;--text-body:.875rem;--text-input:1rem;--text-section:1.125rem;--text-title:1.75rem;--weight-normal:400;--weight-medium:500;--weight-semibold:600;--weight-bold:700;--menu-reveal-duration:.12s;--menu-hide-duration:90ms}body{background:var(--canvas);color:var(--ink);font-family:var(--sans);font-size:var(--text-body);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;line-height:1.45;overflow:hidden}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}button,a,input{color:inherit}button,a{-webkit-touch-callout:none}button{cursor:pointer}:focus-visible{outline:3px solid var(--sea);outline-offset:2px}:root{--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-6:24px;--space-8:32px;--control-height:44px;--control-radius:6px;--surface-radius:8px;--content-form-width:720px}}@layer vendor{.maplibregl-map{-webkit-tap-highlight-color:#0000;font:12px/20px Helvetica Neue,Arial,Helvetica,sans-serif;position:relative;overflow:hidden}.maplibregl-canvas{position:absolute;top:0;left:0}.maplibregl-map:fullscreen{width:100%;height: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;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;z-index:2;position:absolute}.maplibregl-ctrl-top-left{top:0;left:0}.maplibregl-ctrl-top-right{top:0;right: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{box-sizing:border-box;cursor:pointer;background-color:#0000;border:0;outline:none;width:29px;height:29px;padding:0;display:block}.maplibregl-ctrl-group button+button{border-top:1px solid #ddd}.maplibregl-ctrl button .maplibregl-ctrl-icon{background-position:50%;background-repeat:no-repeat;width:100%;height:100%;display:block}@media (forced-colors:active){.maplibregl-ctrl-icon{background-color:#0000}.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.428Zm0 9c-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.428Zm0-4c-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.428Zm0 9c-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.428Zm0-4c-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:2s linear infinite maplibregl-spin}@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{cursor:pointer;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;width:88px;height:23px;margin:0 0 -4px -4px;display:block;overflow:hidden}a.maplibregl-ctrl-logo.maplibregl-compact{width:14px}@media (forced-colors:active){a.maplibregl-ctrl-logo{background-color:#0000;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{color:#000;box-sizing:content-box;background-color:#fff;border-radius:12px;min-height:20px;margin:10px;padding:2px 24px 2px 0;position:relative}.maplibregl-ctrl-attrib.maplibregl-compact-show{visibility:visible;padding:2px 28px 2px 8px}.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{cursor:pointer;box-sizing:border-box;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;outline:none;width:24px;height:24px;display:none;position:absolute;top:0;right:0}.maplibregl-ctrl-attrib summary.maplibregl-ctrl-attrib-button{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{top:0;right:0}.maplibregl-ctrl-top-left>.maplibregl-ctrl-attrib.maplibregl-compact:after{top:0;left: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{white-space:nowrap;color:#333;box-sizing:border-box;background-color:#ffffffbf;border:2px solid #333;border-top:#333;padding:0 5px;font-size:10px}.maplibregl-popup{will-change:transform;pointer-events:none;display:flex;position:absolute;top:0;left:0}.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{z-index:1;border:10px solid #0000;width:0;height:0}.maplibregl-popup-anchor-top .maplibregl-popup-tip{border-top:none;border-bottom-color:#fff;align-self:center}.maplibregl-popup-anchor-top-left .maplibregl-popup-tip{border-top:none;border-bottom-color:#fff;border-left:none;align-self:flex-start}.maplibregl-popup-anchor-top-right .maplibregl-popup-tip{border-top:none;border-bottom-color:#fff;border-right:none;align-self:flex-end}.maplibregl-popup-anchor-bottom .maplibregl-popup-tip{border-top-color:#fff;border-bottom:none;align-self:center}.maplibregl-popup-anchor-bottom-left .maplibregl-popup-tip{border-top-color:#fff;border-bottom:none;border-left:none;align-self:flex-start}.maplibregl-popup-anchor-bottom-right .maplibregl-popup-tip{border-top-color:#fff;border-bottom:none;border-right:none;align-self:flex-end}.maplibregl-popup-anchor-left .maplibregl-popup-tip{border-left:none;border-right-color:#fff;align-self:center}.maplibregl-popup-anchor-right .maplibregl-popup-tip{border-left-color:#fff;border-right:none;align-self:center}[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{cursor:pointer;background-color:#0000;border:0;border-radius:0 3px 0 0;position:absolute;top:0;right:0}.maplibregl-popup-close-button:hover{background-color:#0000000d}.maplibregl-popup-content{pointer-events:auto;background:#fff;border-radius:3px;padding:15px 10px;position:relative;box-shadow:0 1px 2px #0000001a}.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;user-select:none}.maplibregl-map:hover .maplibregl-popup-track-pointer{display:flex}.maplibregl-map:active .maplibregl-popup-track-pointer{display:none}.maplibregl-marker{will-change:transform;transition:opacity .2s;position:absolute;top:0;left:0}.maplibregl-marker-draggable{cursor:grab}.maplibregl-user-location-dot,.maplibregl-user-location-dot:before{background-color:#1da1f2;border-radius:50%;width:15px;height:15px}.maplibregl-user-location-dot:before{content:"";animation:2s infinite maplibregl-user-location-dot-pulse;position:absolute}.maplibregl-user-location-dot:after{content:"";box-sizing:border-box;border:2px solid #fff;border-radius:50%;width:19px;height:19px;position:absolute;top:-2px;left:-2px;box-shadow:0 0 3px #00000059}@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%;width:1px;height:1px}.maplibregl-crosshair,.maplibregl-crosshair .maplibregl-interactive,.maplibregl-crosshair .maplibregl-interactive:active{cursor:crosshair}.maplibregl-boxzoom{opacity:.5;background:#fff;border:2px dotted #202020;width:0;height:0;position:absolute;top:0;left:0}.maplibregl-cooperative-gesture-screen{color:#fff;opacity:0;pointer-events:none;z-index:99999;background:#0006;justify-content:center;align-items:center;padding:1rem;font-size:1.4em;line-height:1.2;transition:opacity 1s 1s;display:flex;position:absolute;inset:0}.maplibregl-cooperative-gesture-screen.maplibregl-show{opacity:1;transition:opacity 50ms}.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{z-index:99999;width:100%!important;height:100%!important;position:fixed!important;top:0!important;left:0!important}}@layer components{.ai-usage-page{background:var(--paper);height:100dvh;overflow:auto}.ai-usage-content{width:min(1400px,100%);font-size:var(--text-body);grid-template-columns:minmax(0,1fr);gap:20px;margin:0 auto;padding:20px;display:grid}.ai-usage-content>*{min-width:0}.ai-usage-heading{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px;display:flex}.ai-usage-heading h1{font-size:var(--text-title);margin:0}.ai-usage-heading span,.ai-usage-note,.ai-usage-content small{color:var(--ink-soft);font-size:var(--text-caption)}.ai-usage-content h2{font-size:var(--text-section);margin:0 0 12px}.ai-usage-filters{grid-template-columns:repeat(4,minmax(100px,1fr)) auto auto;align-items:end;gap:12px;display:grid}.ai-usage-filters :is(input,select){width:100%;min-height:var(--control-height);border:1px solid var(--line);border-radius:var(--control-radius);background:var(--paper-strong);color:var(--ink);font-size:var(--text-input);padding:8px 10px}.ai-usage-totals{border-block:1px solid var(--line);grid-template-columns:repeat(5,minmax(0,1fr));margin:0;display:grid}.ai-usage-totals>div{border-right:1px solid var(--line);padding:14px 12px}.ai-usage-totals>div:last-child{border-right:0}.ai-usage-totals dt{font-weight:var(--weight-medium)}.ai-usage-totals dd{font-size:var(--text-section);font-weight:var(--weight-semibold);font-variant-numeric:tabular-nums;overflow-wrap:anywhere;margin:8px 0}.ai-usage-controls{border-bottom:1px solid var(--line);padding-bottom:8px}.ai-usage-content summary{cursor:pointer;align-content:center;min-height:44px}.ai-usage-controls p{max-width:90ch;color:var(--ink-soft);line-height:1.6}.ai-usage-group{flex-wrap:wrap;gap:8px;margin-bottom:12px;display:flex}.ai-usage-table-scroll{border:1px solid var(--line);border-radius:var(--control-radius);background:var(--paper-strong);min-width:0;max-width:100%;overflow-x:auto}.ai-usage-table-scroll table{border-collapse:collapse;text-align:left;font-variant-numeric:tabular-nums;width:100%}.ai-usage-table-scroll :is(th,td){border-bottom:1px solid var(--line);vertical-align:top;min-width:95px;padding:10px 12px}.ai-usage-table-scroll th{font-weight:var(--weight-medium)}.ai-usage-table-scroll thead{background:var(--sea-wash);font-size:var(--text-label)}.ai-usage-table-scroll tbody th{min-width:180px}.ai-usage-table-scroll small{overflow-wrap:anywhere;margin-top:5px;display:block}.ai-usage-table-scroll a{color:var(--sea-deep);align-items:center;min-height:44px;display:inline-flex}.ai-usage-note{margin:10px 0 0}@media (width<=1000px){.ai-usage-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.ai-usage-totals{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=600px){.ai-usage-content{gap:16px;padding:14px}.ai-usage-totals{grid-template-columns:repeat(2,minmax(0,1fr))}.ai-usage-totals>div{padding:12px 8px}.ai-usage-totals>div:last-child{border-top:1px solid var(--line);grid-column:1/-1}.ai-usage-page .personal-nav{overflow-x:auto}.ai-usage-page .personal-nav a{white-space:nowrap}}.performance-hud,.performance-hud-toggle{right:max(12px, env(safe-area-inset-right));bottom:max(12px, env(safe-area-inset-bottom));z-index:260;color:#f7f6f1;font-variant-numeric:tabular-nums;background:#102f3d;border:1px solid #496b76;border-radius:8px;position:fixed;box-shadow:0 16px 46px #05161e5c}.performance-hud{width:min(1100px,100vw - 24px);max-height:min(440px,100dvh - 24px);display:grid;overflow:hidden}.performance-hud>header{background:#163b4b;border-bottom:1px solid #365866;flex:none;justify-content:space-between;align-items:center;gap:16px;min-height:52px;padding:6px 7px 6px 13px;display:flex}.performance-hud>header>span{gap:1px;min-width:0;display:grid}.performance-hud>header strong{font-size:12px}.performance-hud>header small{color:#a9c2c9;font-size:10px}.performance-hud>header nav{flex:none;gap:2px;display:flex}.performance-hud button{color:#c9dcdf;min-width:42px;min-height:42px;font-size:11px;font-weight:var(--weight-semibold);background:0 0;border-radius:5px;padding:0 10px}.performance-hud button:hover:not(:disabled){color:#fff;background:#ffffff17}.performance-hud button:disabled{opacity:.38}.performance-hud>p{color:#bfd1d5;margin:0;padding:18px;font-size:12px}.performance-hud-table{overscroll-behavior:contain;min-width:0;overflow:auto}.performance-hud table{border-collapse:collapse;color:#dce8e9;text-align:right;white-space:nowrap;width:100%;min-width:1020px;font-size:10px}.performance-hud :is(th,td){border-bottom:1px solid #294c59;height:35px;padding:6px 9px}.performance-hud thead{z-index:1;color:#a9c7ce;letter-spacing:.06em;text-transform:uppercase;background:#1b4555;font-size:9px;position:sticky;top:0}.performance-hud tbody tr:last-child :is(th,td){border-bottom:0}.performance-hud tbody tr:hover{background:#ffffff09}.performance-hud tbody th{text-align:left;background:#102f3d;min-width:120px;position:sticky;left:0}.performance-hud tbody tr:hover th{background:#163846}.performance-hud tbody th strong,.performance-hud tbody th small{display:block}.performance-hud tbody th strong{color:#fff;font-size:11px}.performance-hud tbody th small{color:#8fb1b9;font-size:9px;font-weight:var(--weight-medium);margin-top:1px}.performance-hud .is-good{color:#9ed8b2}.performance-hud .is-watch{color:#f1cc78}.performance-hud .is-slow{color:#ff9a75}.performance-hud-toggle{align-items:center;gap:8px;min-height:44px;padding:0 13px;display:inline-flex}.performance-hud-toggle span{color:#9fc3ca;font-size:10px;font-weight:var(--weight-bold);letter-spacing:.08em;text-transform:uppercase}.performance-hud-toggle strong{font-size:12px}.performance-hud-toggle .is-good{color:#b3dfc2}.performance-hud-toggle .is-watch{color:#f1cc78}.performance-hud-toggle .is-slow{color:#ff9a75}.app-update-notice{top:max(12px, env(safe-area-inset-top));z-index:260;color:#fff;background:#102b3afa;border:1px solid #9ebbc0;border-radius:9px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;width:min(560px,100vw - 24px);min-height:58px;padding:7px 7px 7px 13px;animation:.2s cubic-bezier(.16,1,.3,1) both app-update-enter;display:grid;position:fixed;left:50%;translate:-50%;box-shadow:0 18px 44px #102b3a4d}.app-update-notice>.icon{color:#a9d6df}.app-update-notice>span{gap:2px;min-width:0;display:grid}.app-update-notice strong{font-size:var(--text-caption)}.app-update-notice small{color:#c9d8da;font-size:var(--text-caption);line-height:1.35}.app-update-notice button,.app-update-dialog button{background:var(--sea-deep);color:#fff;min-height:44px;font-size:var(--text-caption);font-weight:var(--weight-bold);border-radius:6px;padding:0 14px}.app-update-notice button:hover:not(:disabled),.app-update-dialog button:hover:not(:disabled){background:#d9532c}.app-update-notice button:disabled,.app-update-dialog button:disabled{cursor:wait;opacity:.65}.app-update-overlay{z-index:300;padding:max(16px, env(safe-area-inset-top)) max(16px, env(safe-area-inset-right)) max(16px, env(safe-area-inset-bottom)) max(16px, env(safe-area-inset-left));-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0a1f2a8f;place-items:center;animation:.16s ease-out both app-update-backdrop-enter;display:grid;position:fixed;inset:0}.app-update-dialog{background:var(--paper-strong);border:1px solid #aac2c5;border-radius:10px;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:14px;width:min(460px,100%);padding:22px;animation:.2s cubic-bezier(.16,1,.3,1) both app-update-dialog-enter;display:grid;box-shadow:0 24px 70px #0a1f2a57}.app-update-dialog>.icon{color:var(--coral)}.app-update-dialog>span{gap:5px;display:grid}.app-update-dialog small{color:var(--coral);font-size:var(--text-caption);font-weight:var(--weight-bold);letter-spacing:.11em;text-transform:uppercase}.app-update-dialog h2{font-family:var(--display);letter-spacing:-.02em;margin:0;font-size:22px}.app-update-dialog p{color:var(--ink-readable);font-size:var(--text-caption);margin:0;line-height:1.5}.app-update-dialog button{grid-column:2;justify-self:end;min-width:116px;margin-top:3px}@keyframes app-update-enter{0%{opacity:0;translate:-50% -10px}}@keyframes app-update-backdrop-enter{0%{opacity:0}}@keyframes app-update-dialog-enter{0%{opacity:0;translate:0 10px}}@media (prefers-reduced-motion:reduce){.app-update-notice,.app-update-overlay,.app-update-dialog{animation:none}}.app-shell{grid-template:var(--app-header-height) minmax(0, 1fr) / 76px minmax(0, 1fr);background-color:var(--canvas);background-image:linear-gradient(#176b8709 1px,#0000 1px),linear-gradient(90deg,#176b8709 1px,#0000 1px);background-size:24px 24px;height:100dvh;min-height:620px;display:grid}.topbar{z-index:20;height:var(--app-header-height);min-height:var(--app-header-height);border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#f7f6f1f7;grid-column:1/-1;justify-content:space-between;align-items:center;gap:16px;min-width:0;padding:0 18px 0 16px;display:flex}.topbar>*{min-width:0}.topbar-identity{align-items:center;gap:20px;min-width:0;display:flex}.brand{color:var(--ink);font-family:var(--display);font-size:20px;font-weight:var(--weight-bold);letter-spacing:-.02em;align-items:center;gap:10px;text-decoration:none;display:flex}.brand-mark{fill:none;width:32px;height:32px;stroke:var(--ink);stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;overflow:visible}.brand-mark .brand-sail-main{fill:none;stroke:var(--sea)}.brand-mark .brand-sail-small{fill:none;stroke:var(--coral)}.fleet-switcher{justify-self:start;min-width:0;position:relative}.trip-switcher{text-align:left;background:0 0;border-radius:7px;justify-content:space-between;align-items:center;gap:16px;min-width:280px;padding:6px 10px;display:flex}.trip-switcher:hover{background:var(--canvas)}.trip-switcher>.icon{transition:rotate .16s cubic-bezier(.2,.8,.2,1)}.trip-switcher[aria-expanded=true]>.icon{rotate:180deg}.trip-switcher-copy{flex:1;gap:2px;min-width:0;display:grid}.trip-switcher-copy strong{font-size:var(--text-body);font-weight:var(--weight-bold)}.trip-switcher-copy small{color:var(--ink-soft);font-size:var(--text-caption);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.fleet-context-menu{z-index:40;border:1px solid var(--line);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fffefafa;border-radius:9px;width:min(370px,100vw - 24px);max-height:calc(100dvh - 82px);padding:7px;display:grid;position:absolute;top:calc(100% + 10px);left:0;overflow:auto;box-shadow:0 16px 42px #102b3a33}.fleet-context-menu>header{border-bottom:1px solid var(--line);gap:2px;padding:9px 10px 10px;display:grid}.fleet-context-menu>header span{color:var(--sea);font-size:var(--text-caption);font-weight:var(--weight-bold);letter-spacing:.1em;text-transform:uppercase}.fleet-context-menu>header strong{font-size:var(--text-caption)}.fleet-context-section{border-bottom:1px solid var(--line);padding:6px 0;display:grid}.fleet-context-label{color:var(--ink-soft);font-size:var(--text-caption);font-weight:var(--weight-bold);letter-spacing:.1em;text-transform:uppercase;padding:6px 10px 4px}.fleet-context-option{text-align:left;background:0 0;border-radius:6px;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:9px;width:100%;min-height:54px;padding:6px 9px;display:grid}.fleet-context-option:hover{background:var(--canvas)}.fleet-context-option.is-active{background:var(--sea-deep);color:#fff}.fleet-context-option.is-active:hover{background:#0b465c}.fleet-context-option>span:nth-child(2){gap:2px;min-width:0;display:grid}.fleet-context-option strong,.fleet-context-option small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.fleet-context-option strong{font-size:var(--text-caption)}.fleet-context-option small{color:var(--ink-soft);font-size:var(--text-caption)}.fleet-context-option.is-active small{color:#ffffffbf}.fleet-context-icon{border:1px solid color-mix(in srgb, var(--yacht-color,var(--sea)) 28%, var(--line));background:color-mix(in srgb, var(--yacht-color,var(--sea)) 12%, white);width:34px;height:34px;color:var(--yacht-color,var(--sea));border-radius:50%;place-items:center;display:grid}.fleet-context-count{background:var(--sand);min-width:23px;height:23px;color:var(--ink-soft);font-size:var(--text-caption);font-weight:var(--weight-bold);border-radius:4px;place-items:center;padding:0 6px;display:grid}.fleet-context-option.is-active .fleet-context-count,.fleet-trip-option.is-active .fleet-context-count{color:#fff;background:#ffffff29}.fleet-trip-option{text-align:left;background:0 0;border-radius:6px;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:9px;width:100%;min-height:54px;padding:6px 9px;display:grid}.fleet-trip-option:hover{background:var(--canvas)}.fleet-trip-option.is-active{background:var(--sea-deep);color:#fff}.fleet-trip-option.is-active:hover{background:#0b465c}.fleet-trip-option>span:nth-child(2){gap:2px;min-width:0;display:grid}.fleet-trip-option strong,.fleet-trip-option small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.fleet-trip-option strong{font-size:var(--text-caption)}.fleet-trip-option small{color:var(--ink-soft);font-size:var(--text-caption)}.fleet-trip-option.is-active small{color:#ffffffbf}.fleet-new-trip{background:var(--paper);min-height:44px;color:var(--sea-deep);font-size:var(--text-caption);font-weight:var(--weight-bold);border:1px dashed #aec2c4;border-radius:6px;justify-content:center;align-items:center;gap:6px;margin:3px 7px 0;display:flex}.fleet-new-trip:hover{border-color:var(--sea);background:var(--sea-wash)}.fleet-context-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;padding:7px 0 0;display:grid}.fleet-context-actions button{background:var(--paper);min-height:44px;color:var(--sea-deep);font-size:var(--text-caption);font-weight:var(--weight-bold);border-radius:6px;justify-content:center;align-items:center;gap:6px;display:flex}.fleet-context-actions button:only-child{grid-column:1/-1}.fleet-context-actions button:hover{background:var(--sea-wash)}.fleet-manage-link{border-top:1px solid var(--line);min-height:42px;color:var(--sea-deep);font-size:var(--text-caption);font-weight:var(--weight-bold);background:0 0;border-radius:0 0 6px 6px;justify-content:center;align-items:center;gap:7px;margin-top:5px;display:flex}.fleet-manage-link:hover{background:var(--sea-wash)}.trip-switcher-wrap{border-left:1px solid var(--line);min-width:0;padding-left:20px;position:relative}.trip-navigation-layer{position:fixed;inset:0}.trip-menu-backdrop{z-index:69;cursor:default;touch-action:none;animation:trip-menu-backdrop-in var(--menu-reveal-duration) ease-out both;background:#102b3a14;position:fixed;inset:0}.trip-menu-backdrop.is-closing{animation:trip-menu-backdrop-out var(--menu-hide-duration) ease-in both}.trip-menu{top:var(--trip-menu-top);left:var(--trip-menu-left);z-index:70;border:1px solid var(--line);transform-origin:0 0;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);width:min(370px,100vw - 24px);max-height:min(70dvh,620px);animation:trip-menu-in var(--menu-reveal-duration) cubic-bezier(.16, 1, .3, 1) both;background:#fffefafa;border-radius:9px;grid-template-rows:auto minmax(0,1fr) auto;display:grid;position:fixed;overflow:hidden;box-shadow:0 16px 42px #102b3a33}.trip-menu.is-closing{pointer-events:none;animation:trip-menu-out var(--menu-hide-duration) cubic-bezier(.4, 0, 1, 1) both}@keyframes trip-menu-backdrop-in{0%{opacity:0}to{opacity:1}}@keyframes trip-menu-backdrop-out{0%{opacity:1}to{opacity:0}}@keyframes trip-menu-in{0%{opacity:0;translate:0 -6px;scale:.985}to{opacity:1;translate:0;scale:1}}@keyframes trip-menu-out{0%{opacity:1;translate:0;scale:1}to{opacity:0;translate:0 -4px;scale:.99}}@keyframes trip-menu-sheet-in{0%{opacity:0;translate:0 14px;scale:.99}to{opacity:1;translate:0;scale:1}}@keyframes trip-menu-sheet-out{0%{opacity:1;translate:0;scale:1}to{opacity:0;translate:0 10px;scale:.995}}.trip-menu>header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;min-height:49px;padding:3px 6px 3px 12px;display:flex}.trip-menu>header strong{font-size:var(--text-body)}.trip-menu-home{min-height:42px;color:var(--sea-deep);font-size:var(--text-caption);font-weight:var(--weight-bold);border-radius:5px;align-items:center;gap:4px;padding:0 7px 0 10px;text-decoration:none;display:flex}.trip-menu-home:hover{background:var(--sea-wash)}.trip-menu-list{overscroll-behavior:contain;min-height:0;padding:5px 6px;display:grid;overflow-y:auto}.trip-menu-entry{border-bottom:1px solid color-mix(in srgb, var(--line) 74%, transparent);position:relative}.trip-menu-entry:last-child{border-bottom:0}.trip-menu-option{text-align:left;background:0 0;border-radius:5px;grid-template-columns:17px minmax(0,1fr);align-items:center;gap:7px;width:100%;min-height:54px;padding:7px 9px;display:grid}.trip-menu-option.has-edit{padding-right:52px}.trip-menu-option:hover{background:var(--canvas)}.trip-menu-option.is-active{background:var(--sea-wash);color:var(--ink);box-shadow:inset 2px 0 0 var(--sea)}.trip-menu-option.is-active:hover{background:#dcebef}.trip-menu-selection{color:var(--sea);place-items:center;display:grid}.trip-menu-option-copy{gap:2px;min-width:0;display:grid}.trip-menu-option-copy strong{font-size:var(--text-caption);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.trip-menu-option-copy small{color:var(--ink-readable);font-size:var(--text-caption);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.trip-menu-option.is-active .trip-menu-option-copy small{color:var(--ink-readable)}.trip-menu-edit{width:42px;height:42px;color:var(--sea-deep);background:0 0;border-radius:50%;place-items:center;text-decoration:none;display:grid;position:absolute;top:50%;right:7px;translate:0 -50%}.trip-menu-edit:hover{background:#ffffffb3}.trip-menu-entry.is-active .trip-menu-edit:hover{background:#ffffffd1}.trip-menu>footer{border-top:1px solid var(--line);grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;padding:7px;display:grid}.trip-menu-finish{border:1px solid var(--line);min-height:44px;color:var(--sea-deep);font-size:var(--text-caption);font-weight:var(--weight-semibold);border-radius:6px;justify-content:center;align-items:center;gap:7px;padding:7px 9px;text-decoration:none;display:flex}.trip-menu-finish>svg{flex-shrink:0}.trip-menu-finish:hover{background:var(--sea-wash)}.trip-menu-create{background:var(--sea-deep);color:#fff;min-height:44px;font-size:var(--text-caption);font-weight:var(--weight-bold);border-radius:6px;justify-content:center;align-items:center;gap:7px;text-decoration:none;display:flex}.trip-menu-create:only-child{grid-column:1/-1}.trip-menu-create:hover{background:var(--sea)}.topbar-actions{align-items:center;gap:12px;display:flex}.archive-status{background:var(--sea-wash);min-height:40px;color:var(--sea-deep);border:1px solid #a9c5c9;border-radius:7px;align-items:center;gap:7px;padding:5px 10px;text-decoration:none;display:flex}.archive-status>span{gap:0;display:grid}.archive-status strong{font-size:var(--text-caption);text-transform:uppercase;line-height:1.15}.archive-status small{color:var(--ink-readable);font-size:var(--text-caption);line-height:1.15}.archive-status:hover{border-color:var(--sea);background:#dcebef}.finish-trip-button{background:var(--sea-wash);min-height:42px;color:var(--sea-deep);font-size:var(--text-caption);font-weight:var(--weight-bold);white-space:nowrap;border:1px solid #a9c5c9;border-radius:6px;justify-content:center;align-items:center;gap:6px;padding:0 12px;text-decoration:none;display:flex}.finish-trip-button:hover{border-color:var(--sea);background:#d6e7e9}.sync-state{color:var(--ink-soft);font-size:var(--text-caption);font-weight:var(--weight-semibold);align-items:center;gap:6px;display:flex}.sync-dot{background:#4c9b73;border-radius:50%;width:6px;height:6px;box-shadow:0 0 0 3px #4c9b7321}.sync-state.is-saving .sync-dot{background:#d19a3d;animation:1s ease-in-out infinite sync-pulse;box-shadow:0 0 0 3px #d19a3d24}.sync-state.is-error{color:#a4472d}.sync-state.is-error .sync-dot{background:var(--coral);box-shadow:0 0 0 3px #e9613524}@keyframes sync-pulse{50%{opacity:.35}}.soon-flag{background:var(--sand);color:#6d6753;min-width:34px;height:18px;font-size:var(--text-caption);font-style:normal;font-weight:var(--weight-bold);letter-spacing:.04em;white-space:nowrap;border:1px solid #d8d3c2;border-radius:4px;place-items:center;padding:0 6px;display:inline-grid}.unbuilt-flag{background:var(--sand);color:#6d6753;font-size:var(--text-caption);font-weight:var(--weight-bold);letter-spacing:.07em;text-transform:uppercase;border:1px dashed #c9c3ae;border-radius:5px;justify-self:start;align-items:center;gap:6px;padding:4px 9px;display:inline-flex}.unbuilt-flag:before{content:"";background:#b3ab92;border-radius:50%;width:6px;height:6px}button:disabled.is-unbuilt,a.is-unbuilt{cursor:not-allowed;opacity:.62}.user-menu-wrap{position:relative}.user-menu-trigger{width:58px;height:42px;color:var(--ink-soft);transition:background var(--menu-reveal-duration) ease-out, color var(--menu-reveal-duration) ease-out;background:0 0;border-radius:7px;grid-template-columns:34px 13px;align-items:center;gap:4px;padding:4px 3px 4px 4px;display:grid}.user-menu-trigger .user-avatar{width:34px;height:34px;font-size:var(--text-caption)}.user-menu-trigger>.icon{transition:rotate var(--menu-reveal-duration) ease-out}.user-menu-trigger:hover,.user-menu-trigger:focus-visible,.user-menu-trigger[aria-expanded=true]{background:var(--sea-wash);color:var(--sea-deep)}.user-menu-trigger[aria-expanded=true]>.icon{rotate:180deg}.user-menu-backdrop{z-index:69;cursor:default;touch-action:none;animation:trip-menu-backdrop-in var(--menu-reveal-duration) ease-out both;background:#102b3a14;position:fixed;inset:0}.user-menu-backdrop.is-closing{animation:trip-menu-backdrop-out var(--menu-hide-duration) ease-in both}.user-menu{top:var(--user-menu-top);left:var(--user-menu-left);z-index:70;width:min(268px,100vw - 24px);max-height:calc(100dvh - var(--user-menu-top) - 12px);border:1px solid var(--line);transform-origin:100% 0;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);overscroll-behavior:contain;animation:trip-menu-in var(--menu-reveal-duration) cubic-bezier(.16, 1, .3, 1) both;background:#fffefafa;border-radius:9px;outline:0;gap:0;padding:6px;display:grid;position:fixed;overflow-y:auto;box-shadow:0 16px 42px #102b3a33}.user-menu.is-closing{pointer-events:none;animation:trip-menu-out var(--menu-hide-duration) cubic-bezier(.4, 0, 1, 1) both}.user-menu-identity{min-height:58px;color:var(--ink);border-radius:6px;grid-template-columns:34px minmax(0,1fr) 14px;align-items:center;gap:10px;padding:7px 9px;text-decoration:none;display:grid}.user-menu-identity:hover{background:var(--canvas)}.user-menu-identity>span:nth-child(2){gap:1px;min-width:0;display:grid}.user-menu-identity strong,.user-menu-identity small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.user-menu-identity strong{font-size:var(--text-body)}.user-menu-identity small{color:var(--ink-soft);font-size:var(--text-caption)}.user-menu-identity .user-avatar{width:34px;height:34px;font-size:var(--text-caption);flex:none}.user-menu-identity>.icon{color:var(--ink-soft)}.user-menu-actions{border-top:1px solid var(--line);gap:2px;margin-top:4px;padding-top:4px;display:grid}.user-menu-item{width:100%;min-height:44px;color:var(--ink-readable);font-size:var(--text-caption);font-weight:var(--weight-bold);text-align:left;background:0 0;border-radius:6px;align-items:center;gap:9px;margin:0;padding:0 10px;text-decoration:none;display:flex}.user-menu-item .soon-flag{margin-left:auto}.user-menu-item:hover:not(:disabled){background:var(--canvas);color:var(--ink)}.user-menu-signout{border-top:1px solid var(--line);margin-top:4px;padding-top:4px}.user-menu-item.is-signout:hover{background:var(--coral-soft);color:#9b442a}.save-alert{top:max(12px, env(safe-area-inset-top));z-index:60;background:#fff4ee;border:1px solid #e6bda9;border-radius:8px;align-items:center;gap:11px;width:min(430px,100vw - 20px);padding:11px 8px 11px 13px;display:flex;position:fixed;left:50%;translate:-50%;box-shadow:0 14px 38px #102b3a38}.save-alert-icon{background:var(--danger);color:#fff;border-radius:50%;flex:none;place-items:center;width:30px;height:30px;display:grid}.save-alert-copy{gap:2px;min-width:0;display:grid}.save-alert-copy strong{color:#8f3d22;font-size:var(--text-caption)}.save-alert-copy small{color:#8a5340;font-size:var(--text-caption);line-height:1.4}.save-alert>button{color:#8a5340;background:0 0;border-radius:5px;flex:none;place-items:center;width:36px;height:36px;display:grid}.save-alert>button:hover{background:#e961351f}.share-overlay{z-index:70;padding:max(14px, env(safe-area-inset-top)) 14px max(14px, env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0a1f2a80;place-items:center;display:grid;position:fixed;inset:0}.share-dialog{border:1px solid var(--line);background:var(--paper-strong);border-radius:11px;gap:13px;width:min(100%,460px);max-height:100%;padding:18px;display:grid;overflow:auto;box-shadow:0 22px 62px #0000004d}.share-heading{justify-content:space-between;align-items:start;gap:12px;display:flex}.share-heading>span{gap:3px;display:grid}.share-heading small{color:var(--sea);font-size:var(--text-caption);font-weight:var(--weight-bold);letter-spacing:.1em;text-transform:uppercase}.share-heading strong{font-family:var(--display);font-size:var(--text-section);line-height:1.2}.share-heading button{width:38px;height:38px;color:var(--ink-soft);background:0 0;border-radius:6px;flex:none;place-items:center;display:grid}.share-heading button:hover{background:var(--canvas);color:var(--ink)}.share-form{background:var(--sea-wash);border:1px solid #bad1d5;border-radius:8px;gap:9px;padding:12px;display:grid}.share-form label{color:var(--ink-readable);font-size:var(--text-caption);font-weight:var(--weight-bold);gap:5px;display:grid}.share-form label small{color:var(--ink-soft);font-weight:var(--weight-semibold)}.share-form label>span{justify-content:space-between;gap:8px;display:flex}.share-form input,.share-form select{background:var(--paper-strong);width:100%;min-width:0;min-height:46px;color:var(--ink);font-size:var(--text-input);font-weight:var(--weight-medium);border:1px solid #b8ced2;border-radius:6px;outline:0;padding:0 11px}.share-form select{padding-right:26px}.share-form input:focus,.share-form select:focus{border-color:var(--sea);box-shadow:0 0 0 3px #176b871f}.share-form button{background:var(--sea-deep);color:#fff;min-height:46px;font-size:var(--text-caption);font-weight:var(--weight-bold);border-radius:6px}.share-form button:disabled{cursor:wait;opacity:.55}.share-error{border-left:3px solid var(--coral);background:var(--coral-soft);color:#98442a;font-size:var(--text-caption);font-weight:var(--weight-bold);margin:0;padding:8px 10px}.share-invites{gap:6px;display:grid}.share-empty{color:var(--ink-readable);font-size:var(--text-caption);text-align:center;border:1px dashed #c2ccca;border-radius:7px;margin:0;padding:14px 10px;line-height:1.5}.share-invite{border:1px solid var(--line);background:var(--paper);border-radius:7px;justify-content:space-between;align-items:center;gap:10px;min-height:54px;padding:8px 10px;display:flex}.share-invite-copy{gap:2px;min-width:0;display:grid}.share-invite-copy strong{font-size:var(--text-caption);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.share-invite-copy small{color:var(--ink-soft);font-size:var(--text-caption)}.share-invite-copy small:first-letter{text-transform:uppercase}.share-invite-actions{flex:none;gap:5px;display:flex}.share-invite-actions button{border:1px solid var(--line);background:var(--paper-strong);min-width:44px;min-height:38px;color:var(--sea-deep);font-size:var(--text-caption);font-weight:var(--weight-bold);border-radius:5px;justify-content:center;align-items:center;padding:0 10px;display:flex}.share-invite-actions button:hover:not(:disabled){background:var(--sea-wash);border-color:#9dbfc4}.share-invite-actions button.is-danger{color:#9b442a}.share-invite-actions button.is-danger:hover:not(:disabled){background:var(--coral-soft);border-color:#e3b3a0}.share-caution{background:var(--sand);color:#62675f;font-size:var(--text-caption);border-radius:6px;margin:0;padding:9px 11px;line-height:1.5}.invite-summary{border:1px solid var(--line);background:var(--paper-strong);border-radius:9px;gap:0;margin:0 0 22px;display:grid;overflow:hidden}.invite-summary>div{border-bottom:1px solid var(--line);justify-content:space-between;gap:12px;padding:11px 14px;display:flex}.invite-summary>div:last-child{border-bottom:0}.invite-summary dt{color:var(--ink-soft);font-size:var(--text-caption);font-weight:var(--weight-bold);letter-spacing:.05em;text-transform:uppercase;margin:0}.invite-summary dd{font-size:var(--text-body);font-weight:var(--weight-bold);text-align:right;margin:0}.invite-summary dd:first-letter{text-transform:uppercase}.auth-submit.is-link{text-align:center;place-items:center;text-decoration:none;display:grid}.crew-stack{isolation:isolate;padding-left:8px;display:flex}.crew-avatar,.user-avatar{border:2px solid var(--paper);color:#fff;width:34px;height:34px;font-size:var(--text-caption);font-weight:var(--weight-bold);letter-spacing:.03em;border-radius:50%;place-items:center;display:grid}.crew-avatar{margin-left:-8px;position:relative}.crew-avatar:first-child{z-index:4}.crew-avatar:nth-child(2){z-index:3}.crew-avatar:nth-child(3){z-index:2}.crew-avatar:nth-child(4){z-index:1}.crew-avatar.is-online:after{border:2px solid var(--paper);content:"";background:#37a06c;border-radius:50%;width:10px;height:10px;position:absolute;bottom:-1px;right:-1px}.crew-tone-1{background:#315e73}.crew-tone-2{background:#b16951}.crew-tone-3{background:#777251}.crew-more{background:var(--sand);color:var(--ink)}.user-avatar{background:var(--sea-deep);border:0;width:40px;height:40px}.user-avatar,.avatar-preview{overflow:hidden}.user-avatar.has-avatar-photo,.avatar-preview.has-avatar-photo{background-position:50%;background-repeat:no-repeat;background-size:cover}.icon-button{border:1px solid var(--line);background:var(--paper);border-radius:7px;justify-content:center;place-items:center;width:40px;height:40px;display:flex}.icon-button:hover{background:var(--paper-strong);border-color:#b8c5c7}.briefing-trigger{width:auto;color:var(--sea-deep);font-size:var(--text-caption);font-weight:var(--weight-bold);white-space:nowrap;gap:6px;padding:0 10px;position:relative}.briefing-trigger[aria-expanded=true]{background:var(--sea-wash);border-color:#9fc5cb}.briefing-trigger em{background:var(--sand);min-width:19px;height:19px;color:var(--ink-readable);font-size:var(--text-caption);font-style:normal;font-weight:var(--weight-bold);border-radius:4px;place-items:center;padding:0 5px;display:grid}.share-button{background:var(--ink);color:#fff;width:auto;font-size:var(--text-caption);font-weight:var(--weight-bold);gap:7px;padding:0 13px;position:relative}.share-button:hover{border-color:var(--ink);background:#183a4b}.share-button em{background:var(--coral);min-width:19px;height:19px;color:var(--route-ink);font-size:var(--text-caption);font-style:normal;font-weight:var(--weight-bold);border-radius:4px;place-items:center;padding:0 5px;display:grid}.primary-nav{z-index:15;border-right:1px solid var(--line);background:var(--paper);flex-direction:column;align-items:center;gap:4px;padding:16px 8px;display:flex}.nav-item{width:58px;min-height:54px;color:var(--ink-soft);font-size:var(--text-caption);font-weight:var(--weight-semibold);background:0 0;border-radius:7px;flex-direction:column;justify-content:center;align-items:center;gap:5px;text-decoration:none;display:flex;position:relative}.nav-item:hover{background:var(--canvas);color:var(--ink)}.nav-item.is-active{background:var(--sea-deep);color:#fff}.nav-item.is-active:hover{color:#fff;background:#0b465c}.nav-item.is-active:before{background:var(--coral);content:"";border-radius:0 2px 2px 0;width:3px;height:28px;position:absolute;left:-8px}.nav-item.is-soon{color:#8b9698}.nav-item.is-soon .icon{opacity:.72}.nav-soon-flag{border:1.5px solid var(--paper);color:#0000;background:#bcb49a;border-radius:50%;width:7px;height:7px;font-size:0;position:absolute;top:3px;right:3px;overflow:hidden}.nav-item.is-active .nav-soon-flag{border-color:var(--sea-deep)}.section-workspace{overscroll-behavior:contain;grid-area:2/2;grid-template-columns:minmax(0,1fr);align-content:start;gap:14px;min-width:0;min-height:0;padding:22px;display:grid;overflow:auto}.section-workspace>*{width:100%;min-width:0;max-width:1180px;margin:0 auto}.section-heading{justify-content:space-between;align-items:end;gap:18px;display:flex}.section-heading>span{gap:4px;min-width:0;display:grid}.section-heading small{color:var(--sea);font-size:var(--text-caption);font-weight:var(--weight-bold);letter-spacing:.11em;text-transform:uppercase}.section-heading p{color:var(--ink-readable);font-size:var(--text-body);margin:0;line-height:1.5}.section-heading-actions{flex:none;align-items:center;gap:8px;display:flex}.section-add-button{background:var(--ink);color:#fff;min-height:52px;font-size:var(--text-caption);font-weight:var(--weight-bold);border-radius:7px;align-items:center;gap:7px;padding:0 16px;display:flex}.section-add-button:hover{background:#183a4b}.kitty-currency{border:1px solid var(--line);background:var(--paper-strong);height:52px;min-height:52px;font-size:var(--text-caption);font-weight:var(--weight-bold);border-radius:7px;padding:0 10px}.kitty-currency:disabled,.kitty-workspace .section-add-button:disabled,.kitty-entry-tools button:disabled,.kitty-settle li button:disabled{cursor:not-allowed;opacity:.42}.section-story-button{background:var(--paper-strong);min-height:52px;color:var(--ink-readable);font-size:var(--text-caption);font-weight:var(--weight-bold);border:1px dashed #c9c3ae;border-radius:7px;align-items:center;gap:7px;padding:0 16px;display:flex}.kitty-stats{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;display:grid}.kitty-stats article{border:1px solid var(--line);background:var(--paper-strong);border-radius:9px;gap:3px;padding:13px 15px;display:grid}.kitty-stats small{color:var(--ink-readable);font-size:var(--text-caption);font-weight:var(--weight-bold);letter-spacing:.06em;text-transform:uppercase}.kitty-stats strong{font-family:var(--display);letter-spacing:-.02em;font-size:21px}.kitty-stats strong.is-negative{color:#9b442a}.kitty-composer-backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#102b3a57;justify-items:end;animation:.12s ease-out both kitty-composer-backdrop-in;display:grid;position:fixed;inset:0;overflow:hidden}.kitty-composer-sheet{background:var(--paper);border-left:1px solid #aebfc1;flex-direction:column;width:min(520px,100vw - 24px);height:100dvh;min-height:0;animation:.12s cubic-bezier(.16,1,.3,1) both kitty-composer-sheet-in;display:flex;overflow:hidden;box-shadow:-18px 0 48px #0a1f2a38}.kitty-composer-header{min-height:68px;padding:max(12px, env(safe-area-inset-top)) max(14px, env(safe-area-inset-right)) 12px 18px;border-bottom:1px solid var(--line);background:#fffefaf7;justify-content:space-between;align-items:center;gap:12px;display:flex}.kitty-composer-header>span{gap:1px;min-width:0;display:grid}.kitty-composer-header small{color:var(--sea);font-size:var(--text-caption);font-weight:var(--weight-bold);letter-spacing:.1em;text-transform:uppercase}.kitty-composer-header strong{font-family:var(--display);text-overflow:ellipsis;white-space:nowrap;font-size:21px;overflow:hidden}.kitty-composer-header>button{background:var(--canvas);width:44px;height:44px;color:var(--ink-readable);border-radius:6px;flex:none;place-items:center;display:grid}.kitty-composer-header>button:hover:not(:disabled){background:var(--sea-wash);color:var(--sea-deep)}.kitty-composer-header>button:disabled{cursor:wait;opacity:.45}.kitty-composer-tabs{border-bottom:1px solid var(--line);background:var(--paper-strong);grid-template-columns:repeat(auto-fit,minmax(0,1fr));gap:4px;padding:9px 16px;display:grid}.kitty-composer-tabs button{min-height:42px;color:var(--ink-soft);font-size:var(--text-caption);font-weight:var(--weight-bold);background:0 0;border:1px solid #0000;border-radius:6px;padding:0 8px}.kitty-composer-tabs button:hover:not(:disabled){background:var(--canvas);color:var(--ink)}.kitty-composer-tabs button.is-active{background:var(--sea-wash);color:var(--sea-deep);box-shadow:inset 0 -2px 0 var(--sea);border-color:#b8ced2}.kitty-composer-tabs button:disabled{cursor:wait;opacity:.5}.kitty-composer-intro{color:var(--ink-readable);font-size:var(--text-caption);margin:0;padding:12px 16px 0;line-height:1.45}.kitty-composer-body{overscroll-behavior:contain;flex:auto;min-height:0;padding:12px 16px 16px;overflow-y:auto}.kitty-composer-body>.kitty-form{background:0 0;border:0;border-radius:0;flex-direction:column;min-height:100%;padding:0;display:flex}.kitty-composer-body>.kitty-form .kitty-form-actions{z-index:2;min-height:68px;padding:12px 16px max(12px, env(safe-area-inset-bottom));border-top:1px solid var(--line);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffefafa;align-self:stretch;margin:auto -16px -16px;position:sticky;bottom:-16px;box-shadow:0 -8px 18px #102b3a09}@keyframes kitty-composer-backdrop-in{0%{-webkit-backdrop-filter:blur();backdrop-filter:blur();background:#102b3a00}}@keyframes kitty-composer-sheet-in{0%{opacity:.65;transform:translate(20px)}}@keyframes kitty-composer-sheet-mobile-in{0%{opacity:0}}@media (prefers-reduced-motion:reduce){.kitty-composer-backdrop,.kitty-composer-sheet{animation:none}}.kitty-form{background:var(--sea-wash);border:1px solid #bad1d5;border-radius:9px;gap:10px;padding:14px;display:grid}.kitty-form-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;display:grid}.kitty-form-grid label{min-width:0;color:var(--ink-readable);font-size:var(--text-caption);font-weight:var(--weight-bold);gap:5px;display:grid}.kitty-form-grid label.is-wide{grid-column:1/-1}.kitty-form-grid label>span{justify-content:space-between;display:flex}.kitty-form-grid label small{color:var(--ink-soft);font-weight:var(--weight-semibold)}.kitty-form-grid input,.kitty-form-grid select{background:var(--paper-strong);width:100%;min-width:0;min-height:44px;color:var(--ink);font-size:var(--text-input);font-weight:var(--weight-medium);border:1px solid #b8ced2;border-radius:6px;outline:0;padding:0 10px}.kitty-form-grid input,.kitty-form-grid select,.kitty-form-grid .date-input-control{height:44px}.kitty-form-grid select{padding-right:26px}.kitty-form-grid input:focus,.kitty-form-grid select:focus{border-color:var(--sea);box-shadow:0 0 0 3px #176b871f}.kitty-attachment-field{border:1px dashed #0000;border-radius:7px;gap:6px;margin:-4px -8px;padding:6px 8px;display:grid}.kitty-attachment-field.is-dragging{border-color:var(--sea);background:var(--sea-wash);box-shadow:inset 0 0 0 1px #176b8714}.kitty-attachment-field.is-dragging>header strong,.kitty-attachment-field.is-dragging>header small{color:var(--sea-deep)}.kitty-attachment-field>header{justify-content:space-between;align-items:center;gap:10px;display:flex}.kitty-attachment-field>header>span{gap:1px;min-width:0;display:grid}.kitty-attachment-field>header strong{color:var(--ink-readable);font-size:var(--text-caption)}.kitty-attachment-field>header small{color:var(--ink-soft);font-size:11px;line-height:1.35}.kitty-attachment-field>header label{background:var(--paper-strong);min-height:42px;color:var(--sea-deep);cursor:pointer;font-size:var(--text-caption);font-weight:var(--weight-bold);border:1px dashed #9dbbc1;border-radius:6px;flex:none;justify-content:center;align-items:center;gap:6px;padding:0 11px;display:inline-flex}.kitty-attachment-field>header label:hover{border-style:solid;border-color:var(--sea)}.kitty-attachment-field>header label:focus-within{border-style:solid;border-color:var(--sea);box-shadow:0 0 0 3px #176b871f}.kitty-attachment-field>header label.is-disabled{cursor:not-allowed;opacity:.48}.kitty-attachment-field>header input{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.kitty-attachment-field ul{gap:4px;margin:0;padding:0;list-style:none;display:grid}.kitty-attachment-field li{background:var(--canvas);min-height:38px;color:var(--sea-deep);border-radius:5px;grid-template-columns:18px minmax(0,1fr) auto 34px;align-items:center;gap:6px;padding:2px 3px 2px 9px;display:grid}.kitty-attachment-field li>a,.kitty-attachment-field li>span{min-width:0;color:var(--ink-readable);font-size:var(--text-caption);font-weight:var(--weight-semibold);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.kitty-attachment-field li>a:hover{color:var(--sea);text-decoration:underline}.kitty-attachment-field li>small{color:var(--ink-soft);white-space:nowrap;font-size:10px}.kitty-attachment-field li>button{width:34px;height:34px;color:var(--ink-soft);background:0 0;border-radius:5px;place-items:center;display:grid}.kitty-attachment-field li>button:hover:not(:disabled){background:var(--paper-strong);color:var(--ink)}.kitty-attachment-field li.is-removed>:not(button){opacity:.42;text-decoration:line-through}.kitty-form-pocket{color:var(--ink-readable);font-size:var(--text-caption);font-weight:var(--weight-bold);align-items:center;gap:8px;display:flex}.kitty-form-pocket input{width:17px;height:17px;accent-color:var(--sea)}.kitty-payment-source{border-block:1px solid #bad1d5;justify-content:space-between;align-items:center;gap:12px;min-height:58px;padding-block:8px;display:flex}.kitty-payment-source>span{gap:1px;display:grid}.kitty-payment-source>span strong{font-size:var(--text-caption)}.kitty-payment-source>span small{color:var(--ink-soft);font-size:var(--text-caption)}.kitty-payment-source>div{gap:4px;display:flex}.kitty-payment-source button{background:var(--paper-strong);min-height:40px;color:var(--ink-readable);font-size:var(--text-caption);font-weight:var(--weight-bold);border:1px solid #b8ced2;border-radius:6px;padding:0 12px}.kitty-payment-source button.is-active{border-color:var(--sea);background:var(--sea-deep);color:#fff}.kitty-form-payer{color:var(--ink-readable);font-size:var(--text-caption);font-weight:var(--weight-bold);grid-template-columns:minmax(0,1fr);gap:5px;display:grid}.kitty-form-payer select,.kitty-yacht-split select{background:var(--paper-strong);width:100%;min-width:0;min-height:44px;color:var(--ink);font-size:var(--text-input);font-weight:var(--weight-medium);border:1px solid #b8ced2;border-radius:6px;padding:0 28px 0 10px}.kitty-split-fieldset{border:0;gap:7px;min-width:0;margin:0;padding:0;display:grid}.kitty-split-fieldset legend{color:var(--ink-readable);font-size:var(--text-caption);font-weight:var(--weight-bold);margin-bottom:1px}.kitty-split-options{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:5px;display:grid}.kitty-split-options button{background:var(--paper-strong);min-height:56px;color:var(--ink-readable);text-align:left;border:1px solid #b8ced2;border-radius:6px;align-content:center;justify-items:start;gap:1px;padding:7px 10px;display:grid}.kitty-split-options button strong{font-size:var(--text-caption)}.kitty-split-options button small{color:var(--ink-soft);font-size:var(--text-caption)}.kitty-split-options button.is-active{border-color:var(--sea);background:var(--paper-strong);box-shadow:inset 0 0 0 1px var(--sea);color:var(--sea-deep)}.kitty-split-summary,.kitty-yacht-split,.kitty-member-split{background:#ffffff73;border-radius:7px;margin:0;padding:10px 11px}.kitty-split-summary{color:var(--sea-deep);font-size:var(--text-caption);background:0 0;border-radius:0;grid-template-columns:auto minmax(0,1fr);gap:8px;padding:8px 0;display:grid}.kitty-split-summary span,.kitty-yacht-split p span{color:var(--ink-soft)}.kitty-yacht-split{background:0 0;border-radius:0;grid-template-columns:minmax(160px,.6fr) minmax(0,1fr);align-items:end;gap:10px;padding:8px 0;display:grid}.kitty-yacht-split label{color:var(--ink-readable);font-size:var(--text-caption);font-weight:var(--weight-bold);gap:4px;display:grid}.kitty-yacht-split p{color:var(--sea-deep);font-size:var(--text-caption);gap:2px;margin:0 0 4px;display:grid}.kitty-member-split{gap:7px;display:grid}.kitty-member-split header{justify-content:space-between;align-items:center;gap:10px;display:flex}.kitty-member-split header>span{font-size:var(--text-caption);gap:1px;display:grid}.kitty-member-split header small{color:var(--ink-soft);font-size:var(--text-caption)}.kitty-member-split header button{min-height:38px;color:var(--sea);font-size:var(--text-caption);font-weight:var(--weight-bold);background:0 0;padding:0 5px}.kitty-member-split>div{grid-template-columns:repeat(2,minmax(0,1fr));gap:2px 10px;display:grid}.kitty-member-split>div label{min-height:44px;font-size:var(--text-caption);grid-template-columns:20px 32px minmax(0,1fr);align-items:center;gap:6px;display:grid}.kitty-member-split>div label>span:last-child{gap:1px;display:grid}.kitty-member-split>div label>span:last-child small{color:var(--ink-soft);font-size:10px}.kitty-member-split input{width:18px;height:18px;accent-color:var(--sea)}.kitty-member-split .kitty-balance-avatar{background:var(--sea);color:#fff;width:29px;height:29px;font-size:10px;font-weight:var(--weight-bold);border-radius:50%;place-items:center;display:grid}.kitty-more-fields{border-top:1px solid #0000;display:grid}.kitty-more-fields-toggle{width:100%;min-height:44px;color:var(--ink-soft);cursor:pointer;font-size:var(--text-caption);font-weight:var(--weight-bold);text-align:left;background:0 0;border-radius:5px;justify-content:space-between;align-items:center;gap:12px;padding:0;display:flex}.kitty-more-fields-toggle>span{flex:none}.kitty-more-fields-toggle>small{min-width:0;color:var(--sea-deep);font-size:var(--text-caption);font-weight:var(--weight-semibold);text-overflow:ellipsis;white-space:nowrap;margin-left:auto;overflow:hidden}.kitty-more-fields-toggle:after{content:"";border-bottom:2px solid;border-right:2px solid;flex:none;width:8px;height:8px;transition:transform .16s cubic-bezier(.16,1,.3,1);transform:translateY(-2px)rotate(45deg)}.kitty-more-fields-toggle:hover:not(:disabled){color:var(--sea-deep)}.kitty-more-fields-toggle:focus-visible{outline:2px solid var(--sea);outline-offset:1px}.kitty-more-fields-toggle:disabled{cursor:wait;opacity:.5}.kitty-more-fields.is-open .kitty-more-fields-toggle:after{transform:translateY(2px)rotate(-135deg)}.kitty-more-fields-panel{opacity:0;grid-template-rows:0fr;transition:grid-template-rows .16s cubic-bezier(.16,1,.3,1),opacity .1s ease-out;display:grid}.kitty-more-fields.is-open .kitty-more-fields-panel{opacity:1;grid-template-rows:1fr}.kitty-more-fields-inner{min-height:0;overflow:hidden}.kitty-more-fields-inner>.kitty-form-grid{padding:2px 0 4px}.kitty-category-date-grid{grid-template-columns:minmax(140px,.85fr) minmax(200px,1.15fr)}@media (prefers-reduced-motion:reduce){.kitty-more-fields-toggle:after,.kitty-more-fields-panel{transition:none}}@media (width<=420px){.kitty-category-date-grid,.kitty-transfer-form>.kitty-form-grid{grid-template-columns:minmax(0,1fr)}.kitty-attachment-field>header{align-items:end}}.kitty-form-actions{justify-content:flex-end;gap:6px;display:flex}.kitty-form-actions button{min-height:42px;color:var(--ink-soft);font-size:var(--text-caption);font-weight:var(--weight-bold);background:#ffffffa6;border-radius:6px;padding:0 14px}.kitty-form-actions button.is-primary{background:var(--ink);color:#fff}.kitty-form-actions button:disabled{cursor:wait;opacity:.55}.kitty-columns{grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);align-items:start;gap:14px;display:grid}.kitty-ledger,.kitty-balances{border:1px solid var(--line);background:var(--paper-strong);border-radius:10px;gap:8px;padding:14px;display:grid}.kitty-ledger h2,.kitty-balances h2{font-family:var(--display);font-size:var(--text-input);margin:0 0 2px}.kitty-ledger ul,.kitty-balances ul{gap:0;margin:0;padding:0;list-style:none;display:grid}.kitty-activity-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:4px 12px;display:flex}.kitty-activity-heading h2:focus-visible{outline:2px solid var(--sea);outline-offset:3px}.kitty-person-filter{min-width:0;max-width:min(240px,100% - 84px);margin-left:auto;display:block}.kitty-person-filter select{field-sizing:content;border-radius:var(--control-radius);width:auto;min-width:0;max-width:100%;min-height:44px;color:var(--sea-deep);font-size:var(--text-input);cursor:pointer;background-color:#0000;border:1px solid #0000;padding-left:10px}.kitty-person-filter select:hover:not(:disabled),.kitty-person-filter select:focus-visible{background-color:var(--sea-wash)}.kitty-person-filter select:focus-visible{outline:2px solid var(--sea);outline-offset:1px}.kitty-person-summary{border-block:1px solid var(--line);flex-wrap:wrap;gap:8px 20px;padding:8px 0;display:flex}.kitty-person-summary>span{gap:3px;display:grid}.kitty-person-summary small,.kitty-entry-share small{color:var(--ink-soft);font-size:var(--text-caption)}.kitty-person-summary strong{font-size:var(--text-body)}.kitty-activity-views{flex-wrap:wrap;gap:4px;display:flex}.kitty-activity-views button,.kitty-view-activity,.kitty-filter-empty button{min-height:42px;color:var(--sea-deep);font-size:var(--text-caption);font-weight:var(--weight-semibold);background:0 0;border-radius:5px;padding:0 10px}.kitty-activity-views button[aria-pressed=true]{background:var(--sea-wash);box-shadow:inset 0 0 0 1px var(--sea)}.kitty-activity-views button:hover,.kitty-view-activity:hover,.kitty-filter-empty button:hover{background:var(--sea-wash)}.kitty-activity-views button:disabled,.kitty-view-activity:disabled,.kitty-filter-empty button:disabled{cursor:not-allowed;opacity:.42}.kitty-activity-help,.kitty-activity-count,.kitty-filter-empty p{color:var(--ink-soft);font-size:var(--text-caption);margin:0;line-height:1.45}.kitty-filter-empty{padding:12px 0}.kitty-entry-share{text-align:right;flex:none;gap:2px;display:grid}.kitty-entry-share strong{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:var(--text-body)}.kitty-empty{color:var(--ink-readable);font-size:var(--text-body);text-align:center;border:1px dashed #c2ccca;border-radius:8px;margin:0;padding:22px 10px;line-height:1.5}.workspace-empty{gap:var(--space-2);padding:var(--space-4);border:1px solid var(--line);border-radius:var(--surface-radius);background:var(--paper-strong);display:grid}.workspace-empty h2{font-size:var(--text-section);font-weight:var(--weight-semibold);margin:0}.workspace-empty p{max-width:60ch;color:var(--ink-soft);font-size:var(--text-body);margin:0;line-height:1.5}.kitty-entry{border-bottom:1px solid var(--line);align-items:center;gap:10px;min-height:56px;padding:8px 4px;display:flex}.kitty-ledger li:last-child .kitty-entry{border-bottom:0}.kitty-entry-copy{flex:1;gap:2px;min-width:0;display:grid}.kitty-entry-copy strong{font-size:var(--text-body);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.kitty-entry-copy small{color:var(--ink-soft);font-size:var(--text-caption)}.kitty-entry-participants{min-width:0}.kitty-entry-participants>summary{cursor:pointer;align-content:center;gap:2px;min-height:42px;list-style:none;display:grid}.kitty-entry-participants>summary::-webkit-details-marker{display:none}.kitty-entry-participants>summary:focus-visible{outline:2px solid var(--sea);outline-offset:2px;border-radius:3px}.kitty-entry-scope-toggle{color:var(--sea-deep);align-items:center;gap:3px;display:inline-flex}.kitty-entry-scope-toggle svg{flex:none}.kitty-entry-participants[open] .kitty-entry-scope-toggle svg{transform:rotate(90deg)}.kitty-entry-participants>small{overflow-wrap:anywhere;padding-top:3px;display:block}.kitty-entry-attachments{flex-wrap:wrap;gap:4px;min-width:0;margin-top:2px;display:flex}.kitty-entry-attachments a{background:var(--sea-wash);max-width:min(100%,210px);min-height:25px;color:var(--sea-deep);font-size:10px;font-weight:var(--weight-semibold);border-radius:4px;align-items:center;gap:4px;padding:1px 7px;display:inline-flex}.kitty-entry-attachments a:hover{color:var(--sea);background:#d8e9ec}.kitty-entry-attachments a span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.kitty-entry-amount{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:var(--text-body);font-weight:var(--weight-bold);flex:none}.kitty-entry-amount.is-contribution{color:#2f6e4b}.kitty-entry-amount.is-expense{color:var(--ink)}.kitty-entry-amount.is-transfer{color:var(--sea-deep)}.kitty-entry-tools,.kitty-entry-confirm{flex:none;gap:3px;display:flex}.kitty-entry-tools button{width:34px;height:34px;color:var(--ink-soft);background:0 0;border-radius:5px;place-items:center;display:grid}.kitty-entry-tools button:hover{background:var(--canvas);color:var(--ink)}.kitty-entry-tools button.is-danger:hover{background:var(--coral-soft);color:#9b442a}.kitty-entry-confirm button{background:var(--canvas);min-height:34px;color:var(--ink-readable);font-size:var(--text-caption);font-weight:var(--weight-bold);border-radius:5px;padding:0 10px}.kitty-entry-confirm button.is-danger{background:var(--danger);color:#fff}.kitty-balance-heading{justify-content:space-between;align-items:center;gap:10px;display:flex}.kitty-balance-heading>span{gap:2px;display:grid}.kitty-balance-heading small{color:var(--ink-soft);font-size:var(--text-caption)}.kitty-balance-heading>strong{color:var(--sea-deep);font-size:var(--text-caption);text-align:right;white-space:nowrap}.kitty-balances .kitty-balance-list{margin-top:5px}.kitty-balance-list li:last-child .kitty-balance-row{border-bottom:0}.kitty-balance-row{border-bottom:1px solid var(--line);width:100%;min-height:48px;color:var(--ink);text-align:left;background:0 0;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding:7px 0;display:grid}.kitty-balance-row:hover:not(:disabled){color:var(--sea-deep)}.kitty-balance-row:focus-visible{outline:2px solid var(--sea);outline-offset:1px}.kitty-balance-copy{gap:2px;min-width:0;display:grid}.kitty-balance-copy strong{font-size:var(--text-caption);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.kitty-balance-copy small{color:var(--ink-soft);font-size:var(--text-caption);display:none}.kitty-balance-row[aria-expanded=true] .kitty-balance-copy small{display:block}.kitty-balance-net{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:var(--text-caption);font-weight:var(--weight-bold);color:var(--ink-soft);flex:none}.kitty-balance-net.is-owed{color:#2f6e4b}.kitty-balance-net.is-owing{color:#9b442a}.kitty-settlement-launch{background:var(--sea-deep);color:#fff;text-align:left;border-radius:7px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;width:100%;min-height:58px;margin-top:5px;padding:9px 12px;display:grid}.kitty-settlement-launch>span{gap:2px;display:grid}.kitty-settlement-launch strong{font-size:var(--text-caption)}.kitty-settlement-launch small{color:#ffffffc7;font-size:var(--text-caption)}.kitty-settlement-launch:disabled{cursor:not-allowed;opacity:.5}.kitty-settled{background:var(--sea-wash);color:var(--sea-deep);font-size:var(--text-caption);border-radius:7px;gap:2px;padding:10px 11px;display:grid}.kitty-settled span{color:var(--ink-soft)}.kitty-balance-help{color:var(--ink-soft);font-size:var(--text-caption);align-items:center;gap:6px;margin:0;line-height:1.4;display:flex}.kitty-balance-help svg{flex:none}.kitty-settlement-header{min-height:68px;padding:max(12px, env(safe-area-inset-top)) max(14px, env(safe-area-inset-right)) 12px 18px;border-bottom:1px solid var(--line);background:#fffefaf7;grid-template-columns:minmax(84px,1fr) auto minmax(84px,1fr);align-items:center;gap:10px;display:grid}.kitty-settlement-header>button{min-height:44px;color:var(--sea-deep);font-size:var(--text-caption);font-weight:var(--weight-bold);background:0 0;justify-self:start;align-items:center;gap:4px;padding:0 4px 0 0;display:flex}.kitty-settlement-title{text-align:center;gap:1px;display:grid}.kitty-settlement-title small{color:var(--sea);font-size:var(--text-caption);font-weight:var(--weight-bold);letter-spacing:.1em;text-transform:uppercase}.kitty-settlement-title strong{font-family:var(--display);font-size:21px}.kitty-settlement-count{color:var(--ink-soft);font-size:var(--text-caption);font-weight:var(--weight-bold);white-space:nowrap;justify-self:end}.kitty-settlement-body{overscroll-behavior:contain;flex:auto;min-height:0;padding:12px 16px 18px;overflow-y:auto}.kitty-settlement-grouping{z-index:2;border-bottom:1px solid var(--line);background:var(--paper);grid-template-columns:repeat(2,minmax(0,1fr));padding-top:2px;display:grid;position:sticky;top:-12px}.kitty-settlement-grouping button{min-height:44px;color:var(--ink-soft);font-size:var(--text-caption);font-weight:var(--weight-bold);background:0 0;border-bottom:2px solid #0000;padding:0 8px}.kitty-settlement-grouping button[aria-pressed=true]{border-bottom-color:var(--sea);color:var(--sea-deep)}.kitty-settlement-intro{color:var(--ink-soft);font-size:var(--text-caption);margin:10px 0 0}.kitty-settlement-groups{gap:10px;margin-top:10px;display:grid}.kitty-settlement-group{background:var(--sea-wash);border-radius:7px;padding:9px 11px 4px;display:grid}.kitty-settlement-group>header{justify-content:space-between;align-items:baseline;gap:10px;padding-bottom:5px;display:flex}.kitty-settlement-group>header strong,.kitty-settlement-group>header span{font-size:var(--text-caption)}.kitty-settlement-group>header span{color:#2f6e4b;font-weight:var(--weight-bold);white-space:nowrap}.kitty-settlement-group.is-payer>header span{color:#9b442a}.kitty-settlement-group ul{margin:0;padding:0;list-style:none;display:grid}.kitty-settlement-group li{min-height:48px;color:var(--ink-readable);font-size:var(--text-caption);border-top:1px solid #176b8721;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:9px;display:grid}.kitty-settlement-group li:has(button){grid-template-columns:minmax(0,1fr) auto auto}.kitty-settlement-group li>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.kitty-settlement-group li>strong{white-space:nowrap;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.kitty-settlement-group li>button{border:1px solid var(--line);background:var(--paper-strong);min-height:42px;color:var(--sea-deep);font-size:var(--text-caption);font-weight:var(--weight-bold);border-radius:5px;padding:0 9px}.log-form{background:var(--sea-wash);border:1px solid #bad1d5;border-radius:9px;gap:10px;padding:14px;display:grid}.log-form-legs{flex-wrap:wrap;align-items:center;gap:5px;display:flex}.log-form-legs>span{color:var(--ink-readable);font-size:var(--text-caption);font-weight:var(--weight-bold)}.log-form-legs button{background:var(--paper-strong);min-height:32px;color:var(--sea-deep);font-size:var(--text-caption);font-weight:var(--weight-bold);border:1px solid #b8ced2;border-radius:99px;padding:0 10px}.log-form-legs button:hover:not(:disabled){border-color:var(--sea);background:#fff}.log-yacht-totals{flex-wrap:wrap;gap:8px;display:flex}.log-yacht-totals>span{border:1px solid var(--line);background:var(--paper-strong);min-height:36px;color:var(--ink-readable);font-size:var(--text-caption);border-radius:99px;align-items:center;gap:7px;padding:0 12px;display:flex}.log-yacht-totals i{background:var(--yacht-color);border-radius:50%;width:9px;height:9px}.log-entries{border:1px solid var(--line);background:var(--paper-strong);border-radius:10px;gap:6px;padding:14px;display:grid}.log-entries ul{margin:0;padding:0;list-style:none;display:grid}.log-entry{border-bottom:1px solid var(--line);align-items:start;gap:12px;padding:11px 4px;display:flex}.log-entries li:last-child .log-entry{border-bottom:0}.log-entry-date{border-left:3px solid var(--yacht-color);flex:none;gap:2px;width:92px;padding-left:10px;display:grid}.log-entry-date strong{font-size:var(--text-caption)}.log-entry-date small{color:var(--ink-soft);font-size:var(--text-caption);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.log-entry-route{flex:1;gap:3px;min-width:0;display:grid}.log-entry-route strong{font-size:var(--text-body)}.log-entry-route em{color:var(--coral);font-style:normal}.log-entry-route small{color:var(--ink-soft);font-size:var(--text-caption)}.log-entry-route p{color:var(--ink-readable);font-size:var(--text-caption);white-space:pre-wrap;margin:2px 0 0;line-height:1.5}.log-notes-input{background:var(--paper-strong);width:100%;min-width:0;min-height:96px;color:var(--ink);font:inherit;font-size:var(--text-input);resize:vertical;border:1px solid #b8ced2;border-radius:6px;outline:0;padding:10px 11px;line-height:1.5}.log-notes-input:focus{border-color:var(--sea);box-shadow:0 0 0 3px #176b871f}.log-form-hint{color:var(--ink-soft);font-size:var(--text-caption);flex:1;align-self:center;line-height:1.4}.log-workspace .section-heading-actions button:disabled{cursor:not-allowed;opacity:.48}.log-composer-sheet{width:min(580px,100vw - 24px)}.log-composer-sheet .kitty-composer-body>.log-form{background:0 0;border:0;border-radius:0;flex-direction:column;min-height:100%;padding:0;display:flex}.log-composer-sheet .kitty-form-actions{z-index:2;min-height:68px;padding:12px 16px max(12px, env(safe-area-inset-bottom));border-top:1px solid var(--line);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffefafa;align-self:stretch;margin:auto -16px -16px;position:sticky;bottom:-16px;box-shadow:0 -8px 18px #102b3a09}.log-description-field{color:var(--ink-readable);font-size:var(--text-caption);font-weight:var(--weight-bold);gap:6px;display:grid}.log-description-field>label{justify-content:space-between;gap:12px;display:flex}.log-description-field small{color:var(--ink-soft);font-weight:var(--weight-semibold)}.log-description-field .log-notes-input{min-height:150px;font-weight:var(--weight-normal)}.log-description-field .log-notes-input::placeholder{color:var(--ink-soft);font-weight:var(--weight-normal);opacity:.72}.crew-mention-editor{gap:5px;display:grid;position:relative}.crew-mention-suggestions{z-index:6;background:var(--paper-strong);border:1px solid #a9c5ca;border-radius:6px;max-width:calc(100% - 16px);max-height:min(230px,38vh);display:grid;position:absolute;overflow:hidden auto;box-shadow:0 12px 30px #102b3a29}.crew-mention-suggestions button{border-bottom:1px solid var(--line);min-height:42px;color:var(--ink);text-align:left;background:0 0;border-radius:0;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:8px;padding:5px 9px;display:grid}.crew-mention-suggestions button:last-child{border-bottom:0}.crew-mention-suggestions button:hover,.crew-mention-suggestions button.is-active{background:var(--sea-wash)}.crew-mention-suggestions button>span{background:var(--sea-deep);color:#fff;letter-spacing:.03em;border-radius:50%;place-items:center;width:27px;height:27px;font-size:9px;display:grid}.crew-mention-suggestions button strong{font-size:var(--text-caption);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.crew-mention-suggestions button small{font-size:10px}.crew-mention-status{flex-wrap:wrap;align-items:center;gap:4px 6px;min-height:21px;display:flex}.crew-mention-status>small:first-child{color:var(--ink-soft);font-size:var(--text-caption);font-weight:var(--weight-semibold);margin-right:2px}.crew-mention-chip,.crew-mention{color:var(--sea-deep);font-weight:var(--weight-bold)}.crew-mention-chip{background:var(--sea-wash);border:1px solid #c4dadd;border-radius:99px;padding:2px 6px;font-size:10px;line-height:1.3}.crew-mention{background:var(--sea-wash);border-radius:3px;padding:0 2px}.crew-mention.is-clickable{text-underline-offset:2px;text-decoration:none}.crew-mention.is-clickable:hover{color:var(--sea);text-decoration:underline}.crew-mention.is-clickable:focus-visible{outline:2px solid var(--sea);outline-offset:2px}.log-category-options{flex-wrap:wrap;align-items:center;gap:5px;display:flex}.log-category-options>span{color:var(--ink-soft);font-size:var(--text-caption);font-weight:var(--weight-bold);margin-right:2px}.log-category-options button{border:1px solid var(--line);background:var(--paper-strong);min-height:36px;color:var(--ink-soft);font-size:var(--text-caption);font-weight:var(--weight-semibold);border-radius:99px;padding:0 10px}.log-category-options button:hover:not(:disabled){color:var(--sea-deep);border-color:#9dbbc1}.log-category-options button[aria-pressed=true]{border-color:var(--sea);background:var(--sea-wash);color:var(--sea-deep);box-shadow:inset 0 0 0 1px #176b871a}.log-location{border:1px solid var(--line);background:var(--canvas);border-radius:7px;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:8px;min-height:58px;padding:8px 9px;display:grid}.log-location-icon{background:var(--paper-strong);width:32px;height:32px;color:var(--ink-soft);border-radius:50%;place-items:center;display:grid}.log-location.is-ready{background:#edf5ef;border-color:#a9c9be}.log-location.is-ready .log-location-icon{color:var(--success)}.log-location.is-locating .log-location-icon{color:var(--sea);animation:1s ease-in-out infinite alternate log-location-pulse}.log-location>span:nth-child(2){gap:2px;min-width:0;display:grid}.log-location strong{color:var(--ink-readable);font-size:var(--text-caption);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.log-location small{color:var(--ink-soft);font-size:var(--text-caption);line-height:1.3}.log-location button{background:var(--paper-strong);min-height:40px;color:var(--sea-deep);font-size:var(--text-caption);font-weight:var(--weight-bold);border-radius:5px;padding:0 9px}.log-location button.is-quiet{color:var(--ink-soft);background:0 0}.log-location button:disabled{cursor:wait;opacity:.5}.log-location-actions{flex-wrap:wrap;justify-content:flex-end;gap:5px;max-width:250px;display:flex}.log-map-picker-layer{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#102b3a7a;place-items:center;padding:16px;animation:.12s ease-out both kitty-composer-backdrop-in;display:grid;position:fixed;inset:0}.log-map-picker{background:var(--paper);border:1px solid #aebfc1;border-radius:10px;flex-direction:column;width:min(900px,100vw - 32px);height:min(720px,100dvh - 32px);min-height:0;animation:.12s cubic-bezier(.16,1,.3,1) both log-map-picker-in;display:flex;overflow:hidden;box-shadow:0 24px 70px #0a1f2a4d}.log-map-picker>header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;min-height:66px;padding:10px 12px 10px 18px;display:flex}.log-map-picker>header>span{gap:1px;display:grid}.log-map-picker>header small{color:var(--sea);font-size:var(--text-caption);font-weight:var(--weight-bold);letter-spacing:.1em;text-transform:uppercase}.log-map-picker>header strong{font-family:var(--display);font-size:21px}.log-map-picker>header button{background:var(--canvas);width:44px;height:44px;color:var(--ink-readable);border-radius:6px;place-items:center;display:grid}.log-map-picker-body{flex:auto;grid-template-rows:minmax(300px,1fr) auto;min-height:0;display:grid}.log-map-picker-chart{border-bottom:1px solid var(--line);background:#dce8e5;min-height:0;position:relative;overflow:hidden}.log-map-picker-chart>[role=region]{position:absolute;inset:0}.log-map-picker-chart.is-unavailable{background:var(--canvas);place-items:center;display:grid}.log-map-picker-chart.is-unavailable>p{max-width:34ch;color:var(--ink-soft);font-size:var(--text-body);text-align:center;margin:0;padding:20px;line-height:1.5}.log-map-picker-chart .maplibregl-canvas{cursor:crosshair}.log-map-picker-chart .maplibregl-ctrl-top-right{top:10px;right:10px}.log-map-picker-chart .maplibregl-ctrl-bottom-right{bottom:4px}.log-map-picker-search{z-index:24;width:min(430px,100% - 86px);position:absolute;top:12px;left:12px}.log-map-picker-search>label{min-height:46px;color:var(--ink-soft);background:#fffefafa;border:1px solid #aec4c6;border-radius:7px;align-items:center;gap:8px;padding:0 8px 0 12px;display:flex;box-shadow:0 7px 20px #102b3a29}.log-map-picker-search input{min-width:0;height:42px;color:var(--ink);font-size:var(--text-input);background:0 0;border:0;outline:0;flex:1}.log-map-picker-search>label>button{width:36px;height:36px;color:var(--ink-soft);border-radius:5px;flex:none;place-items:center;display:grid}.log-map-picker-results{background:#fffefafa;border:1px solid #aec4c6;border-radius:7px;max-height:min(300px,44dvh);margin-top:5px;display:grid;overflow-y:auto;box-shadow:0 9px 26px #102b3a2e}.log-map-picker-results>p{color:var(--ink-soft);font-size:var(--text-caption);margin:0;padding:12px}.log-map-picker-results>p.is-error{color:var(--danger)}.log-map-picker-results>button{border-bottom:1px solid var(--line);min-height:52px;color:var(--ink-readable);text-align:left;gap:2px;padding:8px 12px;display:grid}.log-map-picker-results>button:last-child{border-bottom:0}.log-map-picker-results>button:hover{background:var(--sea-wash)}.log-map-picker-results strong{font-size:var(--text-caption);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.log-map-picker-results small{color:var(--ink-soft);font-size:var(--text-caption);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.log-map-picker-hint{z-index:21;color:#fff;font-size:var(--text-caption);font-weight:var(--weight-bold);pointer-events:none;white-space:nowrap;background:#071923db;border-radius:99px;padding:7px 11px;position:absolute;bottom:18px;left:50%;transform:translate(-50%)}.log-map-picker-marker{background:var(--coral);cursor:grab;border:3px solid #fff;border-radius:50% 50% 50% 4px;outline:0;width:30px;height:30px;position:relative;transform:rotate(-45deg);box-shadow:0 4px 12px #102b3a59}.log-map-picker-marker:after{content:"";background:#fff;border-radius:50%;position:absolute;inset:7px}.log-map-picker-marker:active{cursor:grabbing}.log-map-picker-marker:focus-visible{outline:3px solid var(--sea);outline-offset:3px}.log-map-picker-position{background:var(--paper-strong);gap:9px;padding:12px 16px;display:grid}.log-map-picker-position>span{flex-wrap:wrap;align-items:baseline;gap:4px 10px;display:flex}.log-map-picker-position>span small{color:var(--ink-soft);font-size:var(--text-caption);font-weight:var(--weight-bold)}.log-map-picker-position>span strong{color:var(--ink);font-size:var(--text-body)}.log-map-picker-position>span em{color:var(--ink-soft);font-size:var(--text-caption);font-style:normal}.log-map-coordinate-fields{grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;align-items:end;gap:8px;display:grid}.log-map-coordinate-fields label{min-width:0;color:var(--ink-soft);font-size:var(--text-caption);font-weight:var(--weight-bold);gap:4px;display:grid}.log-map-coordinate-fields input{background:var(--paper);width:100%;min-width:0;height:44px;color:var(--ink);font-size:var(--text-input);font-variant-numeric:tabular-nums;border:1px solid #b8ced2;border-radius:6px;outline:0;padding:0 10px}.log-map-coordinate-fields input:focus{border-color:var(--sea);box-shadow:0 0 0 3px #176b871f}.log-map-coordinate-fields>button{background:var(--sea-wash);min-height:44px;color:var(--sea-deep);font-size:var(--text-caption);font-weight:var(--weight-bold);border-radius:6px;padding:0 13px}.log-map-picker-error{color:var(--danger);font-size:var(--text-caption)}.log-map-picker>footer{min-height:68px;padding:10px 16px max(10px, env(safe-area-inset-bottom));border-top:1px solid var(--line);background:var(--paper);justify-content:flex-end;align-items:center;gap:7px;display:flex}.log-map-picker>footer>span{color:var(--ink-soft);font-size:var(--text-caption);flex:1}.log-map-picker>footer button{background:var(--canvas);min-height:44px;color:var(--ink-soft);font-size:var(--text-caption);font-weight:var(--weight-bold);border-radius:6px;padding:0 14px}.log-map-picker>footer button.is-primary{background:var(--ink);color:#fff}.log-map-picker>footer button:disabled{cursor:not-allowed;opacity:.5}@keyframes log-map-picker-in{0%{opacity:.7;transform:translateY(8px)scale(.99)}}@keyframes log-location-pulse{to{opacity:.45;transform:scale(.9)}}.log-more-fields{border-top:1px solid var(--line);display:grid}.log-more-fields-toggle{width:100%;min-height:44px;color:var(--ink-soft);text-align:left;background:0 0;align-items:center;gap:10px;padding:0;display:flex}.log-more-fields-toggle>span{font-size:var(--text-caption);font-weight:var(--weight-bold)}.log-more-fields-toggle>small{color:var(--sea-deep);font-size:var(--text-caption);font-weight:var(--weight-semibold);margin-left:auto}.log-more-fields-toggle:after{content:"";border-bottom:2px solid;border-right:2px solid;flex:none;width:8px;height:8px;transition:transform .16s cubic-bezier(.16,1,.3,1);transform:translateY(-2px)rotate(45deg)}.log-more-fields.is-open .log-more-fields-toggle:after{transform:translateY(2px)rotate(-135deg)}.log-more-fields-panel{opacity:0;grid-template-rows:0fr;transition:grid-template-rows .16s cubic-bezier(.16,1,.3,1),opacity .1s ease-out;display:grid}.log-more-fields.is-open .log-more-fields-panel{opacity:1;grid-template-rows:1fr}.log-more-fields-inner{min-height:0;overflow:hidden}.log-more-fields-inner>.kitty-form-grid{padding:2px 0 5px}.log-timeline-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:8px;padding:1px 4px 6px;display:flex}.log-timeline-heading h2{font-size:var(--text-section);margin:0}.log-timeline-heading small{color:var(--ink-soft);font-size:var(--text-caption)}.log-timeline-controls{align-items:center;gap:8px;min-width:0;display:flex}.log-timeline-controls>small{white-space:nowrap}.log-filter-toggle b{background:var(--sea-deep);color:#fff;border-radius:9px;place-items:center;min-width:18px;height:18px;padding-inline:3px;font-size:12px;display:grid}.log-filter-panel{border-bottom:1px solid var(--line);gap:10px;min-width:0;padding:4px 4px 12px;display:grid}.log-filter-search,.log-filter-fields,.log-filter-dates{min-width:0}.log-filter-fields{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:8px;display:grid}.log-filter-dates{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.log-filter-date-range>summary{min-height:42px;color:var(--ink-readable);font-size:var(--text-label);cursor:pointer;align-items:center;gap:6px;list-style:none;display:flex}.log-filter-date-range>summary::-webkit-details-marker{display:none}.log-filter-date-range>summary span{color:var(--ink-soft);font-size:var(--text-caption);margin-left:auto}.log-filter-date-range[open]>summary .icon{transform:rotate(180deg)}.log-filter-date-range>summary:focus-visible{outline:2px solid var(--sea);outline-offset:2px}.log-filter-date-range[open]{padding-bottom:4px}.log-filter-panel footer{justify-content:space-between;gap:8px;display:flex}.log-filter-empty{justify-items:start;gap:8px;padding:18px 4px;display:grid}.log-filter-empty p{color:var(--ink-soft);font-size:var(--text-body);margin:0}@media (width<=380px){.log-filter-toggle>span{display:none}}@media (width<=520px){.log-filter-fields>.ui-field:last-child:nth-child(odd){grid-column:1/-1}.log-filter-dates{grid-template-columns:minmax(0,1fr)}}.log-entry{align-items:start;gap:13px;min-height:82px;padding:13px 4px;position:relative}.log-entry-date{width:96px;min-height:42px;padding-left:10px}.log-entry-date strong{color:var(--ink);font-size:var(--text-body);font-variant-numeric:tabular-nums}.log-entry-copy{border-left:1px solid var(--line);flex:1;gap:5px;min-width:0;padding-left:13px;display:grid}.log-entry-eyebrow{flex-wrap:wrap;align-items:baseline;gap:5px 8px;min-height:18px;display:flex}.log-entry-eyebrow strong{color:var(--sea-deep);font-size:var(--text-caption);font-weight:var(--weight-bold);letter-spacing:.08em;text-transform:uppercase}.log-entry-eyebrow small,.log-entry-facts{color:var(--ink-soft);font-size:var(--text-caption)}.log-entry-copy h2{font-size:var(--text-body);margin:0;line-height:1.35}.log-entry-copy h2 em{color:var(--coral);font-style:normal}.log-entry-location{background:var(--canvas);max-width:100%;min-height:42px;color:var(--ink-soft);font-size:var(--text-caption);font-weight:var(--weight-semibold);text-align:left;border:1px solid #0000;border-radius:99px;justify-self:start;align-items:center;gap:6px;padding:3px 10px;display:flex}.log-entry-location:hover,.log-entry-location[aria-expanded=true]{background:var(--sea-wash);color:var(--sea-deep);border-color:#aac6ca}.log-entry-location:focus-visible{outline:2px solid var(--sea);outline-offset:2px}.log-entry-location .icon{flex:none}.log-entry-location>span{overflow-wrap:anywhere;min-width:0}.log-map-module-loading{background:var(--paper);width:min(900px,100vw - 32px);height:min(720px,100dvh - 32px);color:var(--ink-soft);font-size:var(--text-caption);font-weight:var(--weight-bold);border-radius:10px;place-items:center;display:grid}.log-location-preview,.log-location-preview-loading{background:var(--paper-strong);border:1px solid #aebfc1;border-radius:9px;width:100%;box-shadow:0 18px 46px #0a1f2a3d}.log-location-preview{overscroll-behavior:contain;max-height:calc(100dvh - 24px);display:grid;overflow:hidden auto}.log-location-preview-loading{min-height:340px;color:var(--ink-soft);font-size:var(--text-caption);font-weight:var(--weight-bold);place-items:center;display:grid}.log-location-preview>header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:10px;min-height:58px;padding:8px 8px 8px 13px;display:flex}.log-location-preview>header>span{gap:1px;min-width:0;display:grid}.log-location-preview>header small{color:var(--sea);font-size:var(--text-caption);font-weight:var(--weight-bold);letter-spacing:.09em;text-transform:uppercase}.log-location-preview>header strong{color:var(--ink);font-size:var(--text-body);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.log-location-preview>header button{background:var(--canvas);width:42px;height:42px;color:var(--ink-readable);border-radius:6px;flex:none;place-items:center;display:grid}.log-location-preview-chart{background:#dce8e5;height:230px;position:relative;overflow:hidden}.log-location-preview-chart>[role=region]{position:absolute;inset:0}.log-location-preview-chart.is-unavailable{background:var(--canvas);place-items:center;display:grid}.log-location-preview-chart.is-unavailable>p{max-width:34ch;color:var(--ink-soft);font-size:var(--text-caption);text-align:center;margin:0;padding:18px;line-height:1.5}.log-location-preview-chart .maplibregl-ctrl-top-right{top:7px;right:7px}.log-location-preview-chart .maplibregl-ctrl-bottom-right{bottom:3px}.log-location-preview-marker{border:3px solid var(--paper-strong);background:var(--coral);border-radius:50%;width:18px;height:18px;display:block;box-shadow:0 0 0 2px #e9613547,0 3px 9px #102b3a57}.log-location-preview>footer{grid-template-columns:minmax(0,1fr) auto;gap:8px;padding:10px 12px 12px;display:grid}.log-location-preview-position{align-content:center;gap:2px;min-width:0;display:grid}.log-location-preview-position strong{color:var(--ink);font-size:var(--text-caption);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.log-location-preview-position small{color:var(--ink-soft);font-size:11px;line-height:1.35}.log-location-preview-copy{border:1px solid var(--line);background:var(--paper);min-height:42px;color:var(--sea-deep);font-size:var(--text-caption);font-weight:var(--weight-bold);border-radius:6px;align-items:center;gap:6px;padding:0 10px;display:inline-flex}.log-location-preview-open-in{grid-column:1/-1;grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:5px;display:grid}.log-location-preview-open-in a{white-space:nowrap;justify-content:center;min-height:42px;padding-inline:5px}.log-polish-button{background:var(--paper-strong);min-height:36px;color:var(--sea-deep);font-size:var(--text-caption);font-weight:var(--weight-bold);border:1px solid #b8ced2;border-radius:6px;justify-self:start;align-items:center;gap:6px;margin-top:2px;padding:0 10px;display:inline-flex}.log-polish-button:hover:not(:disabled){border-color:var(--sea);background:var(--sea-wash)}.log-polish-button:disabled{cursor:wait;opacity:.55}.log-polish-review{background:var(--sea-wash);border:1px solid #aacbd1;border-radius:7px;gap:7px;margin-top:4px;padding:10px 11px;display:grid}.log-polish-review>header{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:4px 10px;display:flex}.log-polish-review>header span{color:var(--sea-deep);font-size:var(--text-caption);align-items:center;gap:5px;display:flex}.log-polish-review>header small{color:var(--ink-soft);font-size:var(--text-caption)}.log-polish-review footer{justify-content:flex-end;gap:5px;display:flex}.log-polish-review footer button{background:var(--paper-strong);min-height:38px;color:var(--ink-soft);font-size:var(--text-caption);font-weight:var(--weight-bold);border-radius:5px;padding:0 10px}.log-polish-review footer button.is-primary{background:var(--ink);color:#fff}.log-polish-review footer button:disabled{cursor:wait;opacity:.5}.log-polish-error{color:var(--danger);font-size:var(--text-caption);margin:3px 0 0;line-height:1.4}.log-original-note{border-top:1px dashed var(--line);margin-top:2px;padding-top:4px}.log-original-note summary{min-height:34px;color:var(--sea-deep);cursor:pointer;font-size:var(--text-caption);font-weight:var(--weight-bold);align-items:center;gap:5px;display:inline-flex}.log-original-note[open] summary{margin-bottom:4px}.log-original-note[open] .rich-note{border-left:2px solid #b8ced2;padding-left:10px}.log-original-actions{flex-wrap:wrap;align-items:flex-start;gap:4px 10px;display:flex}.log-original-actions .log-original-note{flex:200px;min-width:0}.log-restore-original{gap:3px;display:grid}.log-restore-button{min-height:42px;font-size:var(--text-caption);padding-inline:10px}.log-passage-summary{border:1px solid var(--line);background:#fffefaa6;border-radius:8px;padding:0 14px}.log-passage-summary summary{min-height:46px;color:var(--ink-readable);cursor:pointer;font-size:var(--text-caption);font-weight:var(--weight-bold);justify-content:space-between;align-items:center;gap:12px;display:flex}.log-passage-summary summary span{color:var(--sea-deep);margin-left:auto}.log-passage-summary .log-yacht-totals{padding:0 0 12px}@media (prefers-reduced-motion:reduce){.log-location.is-locating .log-location-icon,.log-map-picker-layer,.log-map-picker{animation:none}.log-more-fields-toggle:after,.log-more-fields-panel{transition:none}}@media (width<=680px){.log-composer-sheet{width:100%}.log-composer-sheet .kitty-composer-body>.log-form .kitty-form-actions{padding-right:max(12px, env(safe-area-inset-right));padding-left:max(12px, env(safe-area-inset-left));margin:auto -12px -12px;bottom:-12px}.log-description-field .log-notes-input{min-height:132px}.log-location{grid-template-columns:34px minmax(0,1fr)}.log-location-actions{grid-column:1/-1;grid-template-columns:repeat(auto-fit,minmax(92px,1fr));width:100%;max-width:none;display:grid}.log-map-picker-layer{padding:0}.log-map-picker{border:0;border-radius:0;width:100%;height:100dvh;animation-name:kitty-composer-sheet-mobile-in}.log-map-picker>header{min-height:64px;padding-top:max(10px, env(safe-area-inset-top))}.log-map-picker-body{grid-template-rows:minmax(260px,1fr) auto}.log-map-picker-search{width:calc(100% - 68px);top:8px;left:8px}.log-map-picker-position{padding:10px 12px}.log-map-coordinate-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.log-map-coordinate-fields>button{grid-column:1/-1}.log-map-picker>footer{padding-right:max(12px, env(safe-area-inset-right));padding-left:max(12px, env(safe-area-inset-left));grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);display:grid}.log-map-picker>footer>span{display:none}.log-map-picker>footer button{padding-inline:8px}.log-entry{gap:7px;padding-right:0}.log-entry-date{width:68px;padding-left:6px}.log-entry-date strong{font-size:var(--text-caption)}.log-entry-date small{white-space:normal}.log-entry-copy{padding-left:10px}.log-entry>.kitty-entry-tools,.log-entry>.kitty-entry-confirm{background:var(--paper-strong);padding-left:4px;position:absolute;top:8px;right:0}.log-entry-eyebrow{padding-right:38px}.log-polish-review footer{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.log-polish-review footer button{padding-inline:6px}.log-passage-summary summary{flex-direction:column;justify-content:center;align-items:start;gap:2px;padding-block:7px}.log-passage-summary summary span{margin-left:0}}.rich-note{gap:5px;margin-top:3px;display:grid}.rich-note p{color:var(--ink-readable);font-size:var(--text-caption);white-space:normal;overflow-wrap:break-word;margin:0;line-height:1.55}.rich-note em{color:inherit;font-style:italic}.rich-note ul{gap:2px;margin:0;padding-left:18px;list-style:outside;display:grid}.rich-note li{color:var(--ink-readable);font-size:var(--text-caption);overflow-wrap:break-word;line-height:1.5}.rich-note strong{color:var(--ink)}.yacht-detail-crew-list{flex-wrap:wrap;gap:6px;display:flex}.yacht-detail-crew-list>span{border:1px solid var(--line);background:var(--paper);min-height:34px;font-size:var(--text-caption);font-weight:var(--weight-bold);border-radius:99px;align-items:center;gap:6px;padding:0 10px 0 4px;display:flex}.yacht-detail-crew-list i{background:var(--sea-deep);color:#fff;width:26px;height:26px;font-size:var(--text-caption);font-style:normal;font-weight:var(--weight-bold);border-radius:50%;place-items:center;display:grid}.yacht-detail-crew-link{min-height:34px;color:var(--sea-deep);font-size:var(--text-caption);font-weight:var(--weight-bold);justify-self:start;align-items:center;gap:4px;margin-top:2px;text-decoration:none;display:flex}.yacht-detail-crew-link:hover{color:var(--sea);text-underline-offset:3px;text-decoration:underline}.yacht-detail-dot{background:var(--yacht-color);vertical-align:baseline;border-radius:50%;width:13px;height:13px;display:inline-block}.yacht-detail.is-embedded{gap:12px;min-width:0;display:grid}.yacht-detail-add{min-height:52px;color:var(--sea-deep);font-size:var(--text-caption);font-weight:var(--weight-bold);background:0 0;border:1px solid #9fc4c8;border-radius:7px;align-items:center;gap:6px;padding:0 14px;display:flex}.yacht-detail-add:hover{background:var(--sea-wash)}.yacht-detail-remove{background:var(--coral-soft);color:#9b442a;min-height:52px;font-size:var(--text-caption);font-weight:var(--weight-bold);border:1px solid #e3b3a0;border-radius:7px;align-items:center;gap:6px;padding:0 15px;display:flex}.yacht-detail-remove:disabled{cursor:not-allowed;opacity:.45}.yacht-profile-layout{grid-template-columns:minmax(280px,.9fr) minmax(400px,1.1fr);align-items:start;gap:20px;padding-top:2px;display:grid}.yacht-profile-visual,.yacht-profile-information{align-content:start;gap:12px;min-width:0;display:grid}.yacht-detail-media{grid-template-columns:minmax(0,1fr);gap:10px;display:grid}.yacht-detail-media figure{gap:6px;margin:0;display:grid}.yacht-detail-media img{border:1px solid var(--line);background:var(--canvas);object-fit:cover;border-radius:8px;width:100%;max-height:360px}.yacht-detail-media figcaption{color:var(--ink-soft);font-size:var(--text-caption);font-weight:var(--weight-bold)}.yacht-detail-media figcaption a{color:var(--sea-deep);text-underline-offset:2px;text-decoration-thickness:1px}.yacht-profile-placeholder{background:linear-gradient(145deg, var(--sea-wash), #fffefabf);min-height:250px;color:var(--sea-deep);text-align:center;border:1px dashed #b8c5c3;border-radius:8px;place-content:center;justify-items:center;gap:7px;padding:24px;display:grid}.yacht-profile-placeholder strong{font-family:var(--display);font-size:22px}.yacht-profile-placeholder span{color:var(--ink-readable);font-size:var(--text-caption)}.yacht-profile-specs{border-top:1px solid var(--line);grid-template-columns:repeat(2,minmax(0,1fr));column-gap:20px;margin:0;display:grid}.yacht-profile-specs>div{border-bottom:1px solid var(--line);justify-content:space-between;align-items:baseline;gap:12px;min-width:0;min-height:48px;padding:9px 2px;display:flex}.yacht-profile-specs dt{color:var(--ink-readable);font-size:var(--text-caption);font-weight:var(--weight-bold);letter-spacing:.06em;text-transform:uppercase}.yacht-profile-specs dd{font-family:var(--display);font-size:15px;font-weight:var(--weight-bold);text-overflow:ellipsis;white-space:nowrap;margin:0;overflow:hidden}.yacht-detail-crew{border:0;border-top:1px solid var(--line);background:0 0;border-radius:0;gap:10px;padding:12px 0 0;display:grid}.yacht-detail-crew .fleet-yacht-command{border:0;border-radius:6px}.yacht-detail-listing{border:1px solid var(--line);background:var(--paper-strong);min-height:44px;color:var(--sea-deep);font-size:var(--text-caption);font-weight:var(--weight-bold);border-radius:7px;justify-self:start;align-items:center;gap:7px;padding:0 15px;text-decoration:none;display:flex}.yacht-detail-listing:hover{background:var(--sea-wash);border-color:#9dbfc4}.crew-workspace-tabs{border-bottom:1px solid var(--line);align-items:end;gap:22px;width:min(100%,1280px);min-height:44px;margin:0 auto;display:flex}.crew-workspace-tabs a{min-height:44px;color:var(--ink-readable);font-size:var(--text-caption);font-weight:var(--weight-bold);align-items:center;gap:7px;padding:0 2px;text-decoration:none;display:flex;position:relative}.crew-workspace-tabs a:after{content:"";background:0 0;height:3px;position:absolute;bottom:-1px;left:0;right:0}.crew-workspace-tabs a:hover,.crew-workspace-tabs a.is-active{color:var(--sea-deep)}.crew-workspace-tabs a.is-active:after{background:var(--sea)}.crew-workspace-tabs a span{min-width:20px;height:20px;color:var(--ink-readable);font-size:var(--text-caption);background:#102b3a12;border-radius:4px;place-items:center;padding-inline:5px;display:grid}.crew-workspace-tabs a.is-active span{background:var(--sea-wash);color:var(--sea-deep)}.fleet-manifest{align-content:start;gap:11px;min-width:0;display:grid}.fleet-manifest-heading{grid-template-columns:minmax(220px,1fr) auto auto;align-items:center;gap:16px;margin-top:2px;display:grid}.fleet-manifest-heading>span{gap:3px;min-width:0;display:grid}.fleet-manifest-heading>span>small,.shared-yacht-heading>span>small,.shared-yacht-section>header small{color:var(--sea);font-size:var(--text-caption);font-weight:var(--weight-bold);letter-spacing:.11em;text-transform:uppercase}.fleet-manifest-heading h1{font-size:var(--text-title)}.fleet-manifest-heading p{max-width:62ch;color:var(--ink-readable);font-size:var(--text-caption);margin:0;line-height:1.35}.fleet-manifest-summary{border:1px solid var(--line);background:#fffefab3;border-radius:7px;align-items:stretch;height:44px;min-height:44px;display:flex}.fleet-manifest-summary>span{border-left:1px solid var(--line);text-align:center;align-content:center;gap:1px;min-width:74px;padding:5px 12px;display:grid}.fleet-manifest-summary>span:first-child{border-left:0}.fleet-manifest-summary strong{font-family:var(--display);font-size:15px;line-height:1.1}.fleet-manifest-summary small{color:var(--ink-soft);font-size:var(--text-caption);font-weight:var(--weight-bold);letter-spacing:.05em;text-transform:uppercase}.fleet-manifest-summary .is-warning strong{color:#9b472f}.fleet-manifest-heading>.fleet-add-button{height:44px;min-height:44px}.fleet-readiness-note{background:var(--coral-soft);color:#873f29;min-height:46px;font-size:var(--text-caption);font-weight:var(--weight-bold);border:1px solid #e0b9a8;border-radius:7px;align-items:center;gap:8px;padding:0 12px;text-decoration:none;display:flex}.fleet-readiness-note .icon:last-child{margin-left:auto}.fleet-manifest-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,330px),1fr));gap:12px;display:grid}.yacht-card{border:1px solid var(--line);background:#fffefae6;border-radius:9px;min-width:0;display:grid;overflow:hidden;box-shadow:0 5px 16px #102b3a0b}.yacht-card:hover{border-color:#a9c8cd;box-shadow:0 9px 24px #102b3a17}.yacht-card-main{min-width:0;color:inherit;grid-template-columns:116px minmax(0,1fr) 20px;align-items:center;gap:13px;padding:10px;text-decoration:none;display:grid}.yacht-card-media{background:linear-gradient(145deg, var(--sea-wash), var(--canvas));width:116px;height:116px;color:var(--sea-deep);border-radius:7px;place-items:center;display:grid;position:relative;overflow:hidden}.yacht-card-media:after{border-bottom:4px solid var(--yacht-color);content:"";pointer-events:none;position:absolute;inset:0}.yacht-card-media img{object-fit:cover;width:100%;height:100%;transition:transform .2s}.yacht-card:hover .yacht-card-media img{transform:scale(1.025)}.yacht-card-media em{z-index:1;color:#fff;font-size:var(--text-caption);font-style:normal;font-weight:var(--weight-bold);background:#102b3ad6;border-radius:4px;padding:4px 6px;position:absolute;bottom:7px;right:6px}.yacht-card-copy{align-content:center;gap:4px;min-width:0;display:grid}.yacht-card-copy>small{color:var(--ink-soft);font-size:var(--text-caption);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.yacht-card-copy>strong{font-family:var(--display);text-overflow:ellipsis;white-space:nowrap;font-size:20px;line-height:1.1;overflow:hidden}.yacht-card-status{min-height:20px;color:var(--ink-readable);font-size:var(--text-caption);font-weight:var(--weight-bold);align-items:center;gap:5px;display:flex}.yacht-card-status i{background:var(--ink-soft);border-radius:50%;flex:none;width:7px;height:7px}.yacht-card-status.is-ready{color:#367451}.yacht-card-status.is-ready i{background:#4c8c64}.yacht-card-status.is-warning{color:#934526}.yacht-card-status.is-warning i{background:var(--coral)}.yacht-card-facts{border-top:1px solid var(--line);grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-top:5px;padding-top:7px;display:grid}.yacht-card-facts>span{gap:1px;min-width:0;display:grid}.yacht-card-facts small{color:var(--ink-soft);font-size:var(--text-caption);font-weight:var(--weight-bold);letter-spacing:.02em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap;overflow:hidden}.yacht-card-facts b{font-size:var(--text-caption);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.yacht-card-main>.icon{color:var(--sea-deep)}.yacht-card-actions{border-top:1px solid var(--line);background:#eef4f37a;justify-content:flex-end;gap:5px;min-height:48px;padding:5px 10px;display:flex}.fleet-sheet-backdrop{z-index:120;padding:max(12px, env(safe-area-inset-top)) max(12px, env(safe-area-inset-right)) max(12px, env(safe-area-inset-bottom)) max(12px, env(safe-area-inset-left));-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#102b3a6b;place-items:center;display:grid;position:fixed;inset:0;overflow:hidden}.fleet-sheet{border:1px solid var(--line);background:var(--paper);border-radius:10px;align-content:start;width:min(100%,1020px);max-height:calc(100dvh - 24px);display:grid;overflow-y:auto;box-shadow:0 24px 64px #102b3a40}.fleet-sheet.is-choose{width:min(100%,590px)}.fleet-sheet.is-library{width:min(100%,840px)}.fleet-sheet.is-listing{width:min(100%,1120px)}.fleet-sheet>header{z-index:2;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffefaf5;justify-content:space-between;align-items:center;gap:12px;min-height:72px;padding:12px 16px;display:flex;position:sticky;top:0}.fleet-sheet>header>span{gap:2px;display:grid}.fleet-sheet>header small{color:var(--sea);font-size:var(--text-caption);font-weight:var(--weight-bold);letter-spacing:.1em;text-transform:uppercase}.fleet-sheet>header strong{font-family:var(--display);font-size:20px}.fleet-sheet>header>button{background:var(--canvas);width:44px;height:44px;color:var(--ink-readable);border-radius:6px;place-items:center;display:grid}.fleet-sheet>.yacht-editor,.fleet-sheet>.yacht-reuse{border:0;border-radius:0;margin:0}.fleet-sheet.is-editor>.yacht-editor,.fleet-sheet.is-manual>.yacht-editor{background:var(--paper);padding:18px}.fleet-sheet.is-editor .yacht-editor-heading,.fleet-sheet.is-manual .yacht-editor-heading{z-index:2;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffefaf7;min-height:70px;margin:-18px -18px 0;padding:12px 18px;position:sticky;top:-18px}.fleet-sheet.is-editor .yacht-editor-actions,.fleet-sheet.is-manual .yacht-editor-actions{z-index:2;border-top:1px solid var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffefaf7;min-height:72px;margin:0 -18px -18px;padding:12px 18px;position:sticky;bottom:0}.fleet-sheet-content{padding:18px}.fleet-sheet-content>.yacht-lookup{background:0 0;border:0;padding:0}.fleet-add-choices{gap:8px;padding:16px;display:grid}.fleet-add-choices>button{border:1px solid var(--line);background:var(--paper-strong);min-height:76px;color:var(--sea-deep);text-align:left;border-radius:8px;grid-template-columns:32px minmax(0,1fr) 20px;align-items:center;gap:10px;padding:10px 12px;display:grid}.fleet-add-choices>button:hover{background:var(--sea-wash);border-color:#9dbfc4}.fleet-add-choices>button>span{gap:3px;display:grid}.fleet-add-choices strong{color:var(--ink);font-size:var(--text-caption)}.fleet-add-choices small{color:var(--ink-readable);font-size:var(--text-caption);line-height:1.4}.fleet-remove-dialog{background:var(--paper-strong);border:1px solid #e3b3a0;border-radius:10px;place-self:center;gap:18px;width:min(100% - 24px,430px);padding:24px;display:grid;box-shadow:0 24px 60px #102b3a40}.fleet-remove-dialog>span{justify-items:start;gap:5px;display:grid}.fleet-remove-dialog>span>.icon{color:var(--coral)}.fleet-remove-dialog small{color:#9b442a;font-size:var(--text-caption);font-weight:var(--weight-bold);letter-spacing:.09em;text-transform:uppercase}.fleet-remove-dialog strong{font-family:var(--display);font-size:23px}.fleet-remove-dialog p{color:var(--ink-readable);font-size:var(--text-caption);margin:2px 0 0;line-height:1.5}.fleet-remove-dialog>div{justify-content:flex-end;gap:7px;display:flex}.fleet-remove-dialog button{background:var(--canvas);min-height:44px;color:var(--ink-readable);font-size:var(--text-caption);font-weight:var(--weight-bold);border-radius:6px;padding:0 13px}.fleet-remove-dialog button.is-danger{background:var(--coral-soft);color:#9b442a}.shared-yacht-profile{align-content:start;gap:14px;width:100%;min-width:0;display:grid}.shared-yacht-heading{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:16px;min-width:0;padding-bottom:2px;display:grid}.shared-yacht-heading>span{gap:4px;min-width:0;display:grid}.shared-yacht-heading h1{font-size:var(--text-title);align-items:center;gap:9px;display:flex}.shared-yacht-heading h1 i{background:var(--yacht-color);border-radius:50%;flex:none;width:13px;height:13px}.shared-yacht-heading p{color:var(--ink-readable);font-size:var(--text-caption);margin:0}.shared-yacht-back{min-height:34px;color:var(--sea-deep);font-size:var(--text-caption);font-weight:var(--weight-bold);justify-self:start;align-items:center;gap:4px;margin-bottom:2px;text-decoration:none;display:flex}.shared-yacht-back .icon{transform:rotate(180deg)}.shared-yacht-actions{align-items:center;gap:6px;display:flex}.shared-yacht-actions>.section-story-button{border-style:solid;height:44px;min-height:44px}.shared-yacht-actions>.section-story-button:not(.is-secondary){border-color:var(--ink);background:var(--ink);color:#fff}.shared-yacht-actions>.section-story-button.is-secondary{background:var(--paper-strong);color:var(--sea-deep);border-color:#9fc4c8}.yacht-detail-menu{position:relative}.yacht-detail-menu>button{border:1px solid var(--line);background:var(--paper-strong);width:44px;height:44px;color:var(--ink-readable);border-radius:6px;place-items:center;display:grid}.yacht-detail-menu>div{z-index:20;border:1px solid var(--line);background:var(--paper-strong);border-radius:7px;width:190px;padding:5px;display:grid;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 12px 28px #102b3a29}.yacht-detail-menu>div button{color:#9b442a;min-height:42px;font-size:var(--text-caption);font-weight:var(--weight-bold);text-align:left;background:0 0;border-radius:5px;align-items:center;gap:7px;padding:0 9px;display:flex}.yacht-detail-menu>div button:hover{background:var(--coral-soft)}.yacht-profile-gallery{background:var(--canvas);border-radius:10px;grid-template-rows:repeat(2,minmax(0,1fr));grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(150px,.52fr);gap:6px;min-width:0;height:clamp(300px,35vw,520px);display:grid;position:relative;overflow:hidden}.yacht-profile-gallery>button:not(.yacht-profile-gallery-count){background:var(--canvas);min-width:0;position:relative;overflow:hidden}.yacht-profile-gallery.is-4>button:first-child{grid-area:1/1/-1}.yacht-profile-gallery.is-4>button:nth-child(2){grid-area:1/2/-1}.yacht-profile-gallery.is-4>button:nth-child(3){grid-area:1/3}.yacht-profile-gallery.is-4>button:nth-child(4){grid-area:2/3}.yacht-profile-gallery.is-3{grid-template-rows:minmax(0,1fr);grid-template-columns:repeat(3,minmax(0,1fr));height:clamp(280px,31vw,460px)}.yacht-profile-gallery.is-2{grid-template-rows:minmax(0,1fr);grid-template-columns:repeat(2,minmax(0,1fr));height:clamp(280px,35vw,480px)}.yacht-profile-gallery.is-1{grid-template-rows:minmax(0,1fr);grid-template-columns:minmax(0,1fr);height:clamp(280px,38vw,500px)}.yacht-profile-gallery img{object-fit:cover;width:100%;height:100%;transition:transform .2s}.yacht-profile-gallery>button:hover img{transform:scale(1.02)}.yacht-profile-gallery>button>span{color:#fff;font-size:var(--text-caption);font-weight:var(--weight-bold);background:#102b3ad1;border-radius:4px;padding:4px 6px;position:absolute;bottom:7px;left:7px}.yacht-profile-gallery-count{color:#fff;min-height:38px;font-size:var(--text-caption);font-weight:var(--weight-bold);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#102b3adb;border:1px solid #fff9;border-radius:6px;padding:0 11px;position:absolute;bottom:9px;right:9px}.yacht-profile-empty-media{background:linear-gradient(145deg, var(--sea-wash), #fffefabf);min-height:250px;color:var(--sea-deep);text-align:center;border:1px dashed #b8c5c3;border-radius:10px;place-content:center;justify-items:center;gap:7px;padding:24px;display:grid}.yacht-profile-empty-media strong{font-family:var(--display);font-size:20px}.yacht-profile-empty-media span{color:var(--ink-readable);font-size:var(--text-caption)}.yacht-gallery-lightbox{z-index:200;padding:max(12px, env(safe-area-inset-top)) max(12px, env(safe-area-inset-right)) max(12px, env(safe-area-inset-bottom)) max(12px, env(safe-area-inset-left));-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#07161feb;display:grid;position:fixed;inset:0}.yacht-gallery-lightbox>section{color:#fff;background:#0d2029;border:1px solid #ffffff29;border-radius:9px;outline:0;grid-template-rows:auto minmax(0,1fr) 78px auto;width:min(100%,1360px);min-height:0;max-height:calc(100dvh - 24px);margin:auto;display:grid;overflow:hidden}.yacht-gallery-lightbox header,.yacht-gallery-lightbox footer{justify-content:space-between;align-items:center;gap:12px;min-height:56px;padding:9px 12px;display:flex}.yacht-gallery-lightbox header>span{gap:2px;display:grid}.yacht-gallery-lightbox header strong{font-size:var(--text-caption)}.yacht-gallery-lightbox header small,.yacht-gallery-lightbox footer{color:#ffffffab;font-size:var(--text-caption)}.yacht-gallery-lightbox header button{color:#fff;background:#ffffff1a;border-radius:6px;place-items:center;width:42px;height:42px;display:grid}.yacht-gallery-stage{touch-action:pan-y;background:#08171e;place-items:center;min-width:0;min-height:0;display:grid;position:relative;overflow:hidden}.yacht-gallery-stage>img{object-fit:contain;max-width:100%;max-height:calc(100dvh - 158px);display:block}.yacht-gallery-stage>button{color:#fff;background:#102b3ac7;border-radius:7px;place-items:center;width:48px;height:52px;display:grid;position:absolute;top:50%;transform:translateY(-50%)}.yacht-gallery-stage>button.is-previous{left:10px}.yacht-gallery-stage>button.is-previous .icon{transform:rotate(180deg)}.yacht-gallery-stage>button.is-next{right:10px}.yacht-gallery-filmstrip{overscroll-behavior-inline:contain;scrollbar-color:#ffffff3d transparent;background:#102832;border-top:1px solid #ffffff1a;border-bottom:1px solid #ffffff1a;align-items:center;gap:7px;min-width:0;padding:8px 12px;display:flex;overflow-x:auto}.yacht-gallery-filmstrip button{opacity:.62;background:#08171e;border:2px solid #0000;border-radius:5px;flex:0 0 88px;height:60px;position:relative;overflow:hidden}.yacht-gallery-filmstrip button:hover,.yacht-gallery-filmstrip button.is-active{opacity:1}.yacht-gallery-filmstrip button.is-active{border-color:var(--route)}.yacht-gallery-filmstrip img{object-fit:cover;width:100%;height:100%;display:block}.yacht-gallery-filmstrip span{color:#fff;min-width:17px;height:17px;font-size:var(--text-caption);font-weight:var(--weight-bold);background:#07161fc7;border-radius:3px;place-items:center;padding-inline:3px;display:grid;position:absolute;bottom:3px;right:3px}.yacht-gallery-lightbox footer a{color:#fff;font-weight:var(--weight-bold);align-items:center;gap:5px;text-decoration:none;display:flex}.shared-yacht-stats{border:1px solid var(--line);background:#fffefab8;border-radius:8px;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));display:grid}.shared-yacht-stats>span{border-left:1px solid var(--line);align-content:center;gap:2px;min-width:0;min-height:58px;padding:9px 13px;display:grid}.shared-yacht-stats>span:first-child{border-left:0}.shared-yacht-stats strong{font-family:var(--display);font-size:var(--text-input);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.shared-yacht-stats small{color:var(--ink-soft);font-size:var(--text-caption);font-weight:var(--weight-bold);letter-spacing:.05em;text-transform:uppercase}.shared-yacht-content{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:12px;display:grid}.shared-yacht-section{border:1px solid var(--line);background:#fffefac2;border-radius:9px;align-content:start;gap:11px;min-width:0;padding:15px;display:grid}.shared-yacht-section>header{gap:2px;display:grid}.shared-yacht-section>header h2{font-family:var(--display);margin:0;font-size:19px;line-height:1.1}.shared-yacht-specs{border-top:1px solid var(--line);grid-template-columns:repeat(2,minmax(0,1fr));margin:0;display:grid}.shared-yacht-specs>div{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;min-height:48px;padding:8px 5px;display:grid}.shared-yacht-specs>div:nth-child(odd){padding-left:0;padding-right:11px}.shared-yacht-specs>div:nth-child(2n){border-left:1px solid var(--line);padding-left:11px;padding-right:0}.shared-yacht-specs dt{color:var(--ink-readable);font-size:var(--text-caption);font-weight:var(--weight-bold);letter-spacing:.04em;text-transform:uppercase}.shared-yacht-specs dd{font-family:var(--display);font-size:var(--text-body);font-weight:var(--weight-bold);text-overflow:ellipsis;white-space:nowrap;margin:0;overflow:hidden}.shared-yacht-source{min-height:38px;color:var(--sea-deep);font-size:var(--text-caption);font-weight:var(--weight-bold);justify-self:start;align-items:center;gap:6px;text-decoration:none;display:flex}.shared-yacht-source:hover{text-underline-offset:3px;text-decoration:underline}.shared-yacht-section.yacht-detail-crew{border:1px solid var(--line);background:#fffefac2;border-radius:9px;padding:15px}.shared-yacht-empty{color:var(--ink-soft);font-size:var(--text-caption);margin:0;line-height:1.45}.yacht-library-profile-shell .history-content{width:min(100%,1180px)}.yacht-lookup-gallery-actions{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.yacht-lookup-gallery-actions button{border:1px solid var(--line);background:var(--paper-strong);min-height:36px;color:var(--sea-deep);font-size:var(--text-caption);font-weight:var(--weight-bold);border-radius:5px;padding:0 9px}.yacht-lookup-image-grid label.is-gallery-choice{background:var(--sea-wash);min-height:28px;color:var(--sea-deep);border-radius:4px;padding:3px 5px}.unbuilt-section{grid-area:2/2;place-items:center;min-width:0;min-height:0;padding:24px;display:grid;overflow:auto}.unbuilt-card{border:1px solid var(--line);background:#fffefad1;border-radius:11px;justify-items:start;gap:11px;width:min(100%,560px);padding:30px;display:grid;box-shadow:0 8px 24px #102b3a0f}.unbuilt-icon{background:var(--sea-wash);width:54px;height:54px;color:var(--sea-deep);border:1px solid #c3d9dd;border-radius:9px;place-items:center;display:grid}.unbuilt-card h1{max-width:26ch;font-size:var(--text-title);line-height:1.1}.unbuilt-card>p{max-width:52ch;color:var(--ink-readable);font-size:var(--text-body);margin:0;line-height:1.6}.unbuilt-points{border-top:1px solid var(--line);gap:7px;width:100%;margin:6px 0 0;padding:15px 0 0;list-style:none;display:grid}.unbuilt-points li{color:var(--ink-readable);font-size:var(--text-body);align-items:center;gap:8px;display:flex}.unbuilt-points .icon{color:var(--sea);flex:none}.unbuilt-note{background:var(--sand);color:#62675f;max-width:52ch;font-size:var(--text-caption);border-left:3px solid #cfc9b4;margin:4px 0 0;padding:10px 12px;line-height:1.5}.unbuilt-back{background:var(--ink);color:#fff;min-height:44px;font-size:var(--text-caption);font-weight:var(--weight-bold);border-radius:6px;align-items:center;gap:7px;margin-top:6px;padding:0 15px;text-decoration:none;display:flex}.unbuilt-back:hover{background:#183a4b}.planner-workspace{grid-template-columns:var(--panel-width,minmax(330px, 370px)) minmax(0, 1fr);min-width:0;min-height:0;padding:0;display:grid}.planner-workspace.is-panel-collapsed{grid-template-columns:minmax(0,1fr)}.planner-workspace.is-panel-collapsed .itinerary-panel,.mobile-workspace-switcher{display:none}.itinerary-panel{z-index:4;border:0;border-right:1px solid var(--line);background:var(--paper);border-radius:0;flex-direction:column;min-height:0;display:flex;position:relative;overflow:hidden;box-shadow:5px 0 18px #102b3a0f}.panel-resize-handle{z-index:7;cursor:col-resize;touch-action:none;width:13px;position:absolute;top:0;bottom:0;right:0}.panel-resize-handle:before{content:"";background:0 0;width:3px;transition:background .15s;position:absolute;inset:0 0 0 auto}.panel-resize-handle:hover:before,.panel-resize-handle.is-resizing:before{background:#176b874d}.panel-toggle{z-index:6;border:1px solid var(--line);min-height:52px;color:var(--ink-readable);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fffefaf5;border-left:0;border-radius:0 7px 7px 0;place-items:center;gap:6px;padding:10px 2px;display:grid;position:absolute;top:50%;left:0;transform:translateY(-50%);box-shadow:4px 3px 14px #102b3a24}.panel-toggle:hover{color:var(--sea-deep)}.panel-toggle:not(.is-collapsed) .icon{transform:rotate(180deg)}.panel-heading{justify-content:space-between;align-items:center;gap:16px;padding:15px 18px 11px;display:flex}.eyebrow,.detail-eyebrow{color:var(--sea);font-size:var(--text-caption);font-weight:var(--weight-bold);letter-spacing:.12em;text-transform:uppercase}.title-line{align-items:center;gap:9px;display:flex}h1{font-family:var(--display);font-size:var(--text-title);font-weight:var(--weight-bold);letter-spacing:-.04em;margin:0;line-height:1}.title-line h1 small{color:var(--ink-soft);font-size:var(--text-caption);font-weight:var(--weight-bold);letter-spacing:.02em;text-transform:uppercase}.route-heading-meta{color:var(--ink-readable);font-size:var(--text-label);font-variant-numeric:tabular-nums;gap:6px;margin-top:4px;display:flex}.route-heading-meta strong{color:var(--ink);font-weight:var(--weight-semibold)}.route-heading-meta>span:before{color:#89999c;content:"·";margin-right:6px}.plan-summary{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.plan-summary-copy{flex:auto;min-width:0}.planning-context{flex-wrap:wrap;align-items:center;gap:8px;margin-top:11px;display:flex}.planning-context>span{color:var(--ink-readable);font-size:var(--text-caption);font-weight:var(--weight-bold);letter-spacing:.06em;text-transform:uppercase}.planning-context select{border:1px solid var(--line);background:var(--paper-strong);min-height:32px;color:var(--ink-readable);font-size:var(--text-caption);font-weight:var(--weight-bold);border-radius:5px;padding:0 9px}.planning-context select:focus{border-color:var(--sea);outline:0;box-shadow:0 0 0 3px #176b871f}.status-pill{background:var(--sand);color:#62675f;font-size:var(--text-caption);font-weight:var(--weight-bold);letter-spacing:.06em;text-transform:uppercase;border:1px solid #dbdcd2;border-radius:4px;padding:3px 7px}.panel-more-wrap{flex:none;position:relative}.panel-more{background:0 0;border:0}.plan-switcher{border-top:1px solid var(--line);background:#fffefa99;gap:7px;padding:11px 18px 14px;display:grid}.plan-card{border:1px solid var(--line);background:var(--paper-strong);border-radius:9px;gap:10px;padding:12px 13px 11px;display:grid;box-shadow:0 5px 14px #102b3a0d}.plan-card .plan-meta{border-top:1px dashed var(--line);padding-top:10px}.plan-tabs-row{align-items:center;gap:5px;min-width:0;display:flex}.plan-tabs{scrollbar-width:none;flex:auto;align-items:center;gap:5px;min-width:0;display:flex;overflow:auto}.plan-tabs::-webkit-scrollbar{display:none}.plan-tab{min-height:34px;color:var(--ink-readable);font-size:var(--text-caption);font-weight:var(--weight-bold);background:0 0;border:1px solid #0000;border-radius:6px;flex:none;align-items:center;gap:6px;padding:0 10px;text-decoration:none;display:flex}.plan-tab:hover{background:var(--canvas);color:var(--ink)}.plan-tab.is-current{background:var(--sea-wash);color:var(--sea-deep);box-shadow:none}.plan-tab.is-current:hover{background:var(--sea-wash);color:var(--sea-deep)}.plan-tab small{min-width:19px;height:19px;color:var(--ink-soft);font-size:var(--text-caption);font-weight:var(--weight-normal);place-items:center;padding:0 2px;display:grid}.plan-tab.is-current small{color:var(--sea-deep)}.plan-tab-chosen{background:var(--coral);border-radius:50%;flex:none;width:7px;height:7px;box-shadow:0 0 0 3px #e961352e}.plan-add-wrap{flex:none;position:relative}.plan-add{width:34px;height:34px;color:var(--sea-deep);background:0 0;border:1px solid #0000;border-radius:6px;place-items:center;display:grid}.plan-add:hover:not(:disabled){border-color:var(--sea);background:var(--sea-wash)}.plan-add:disabled{cursor:not-allowed;opacity:.4}.plan-add-menu{z-index:30;border:1px solid var(--line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fffefafa;border-radius:8px;gap:3px;width:max(240px,100%);padding:6px;display:grid;position:absolute;top:calc(100% + 7px);right:0;box-shadow:0 14px 34px #102b3a33}.plan-add-menu button,.plan-add-menu a,.plan-add-menu label{min-height:48px;color:inherit;text-align:left;cursor:pointer;background:0 0;border-radius:6px;gap:2px;padding:8px 10px;text-decoration:none;display:grid}.plan-add-menu button:hover:not(:disabled),.plan-add-menu a:hover,.plan-add-menu label:hover:not(.is-busy){background:var(--sea-wash)}.plan-add-menu label.is-busy{cursor:wait;opacity:.55}.plan-add-menu strong{font-size:var(--text-caption);align-items:center;gap:7px;display:flex}.plan-add-menu strong .icon{color:var(--sea-deep)}.plan-add-menu small{color:var(--ink-readable);font-size:var(--text-caption)}.plan-add-menu button:disabled{cursor:not-allowed;opacity:.45}.plan-add-menu button.is-danger strong{color:#9b442a}.plan-add-menu button.is-danger:hover:not(:disabled){background:var(--coral-soft)}.plan-options-menu{z-index:30;border:1px solid var(--line);transform-origin:100% 0;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);overscroll-behavior:contain;background:#fffefafa;border-radius:9px;outline:0;width:min(268px,100vw - 16px);max-height:calc(100dvh - 16px);padding:6px;display:grid;position:absolute;top:calc(100% + 7px);right:0;overflow-y:auto;box-shadow:0 16px 42px #102b3a33}.plan-options-identity{min-height:58px;color:var(--ink);border-radius:6px;grid-template-columns:34px minmax(0,1fr) 14px;align-items:center;gap:10px;padding:7px 9px;text-decoration:none;display:grid}.plan-options-identity:not(.is-static):hover{background:var(--canvas)}.plan-options-identity:focus-visible{outline:2px solid var(--sea);outline-offset:-2px}.plan-options-identity>span:nth-child(2){gap:1px;min-width:0;display:grid}.plan-options-identity strong,.plan-options-identity small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.plan-options-identity strong{font-size:var(--text-body);line-height:1.25}.plan-options-identity small{color:var(--ink-soft);font-size:var(--text-caption);line-height:1.3}.plan-options-identity>.icon{color:var(--ink-soft)}.plan-options-mark{background:var(--sea-wash);width:34px;height:34px;color:var(--sea-deep);border-radius:6px;place-items:center;display:grid}.plan-options-actions{border-top:1px solid var(--line);gap:2px;margin-top:4px;padding-top:4px;display:grid}.plan-options-item{width:100%;min-height:44px;color:var(--ink-readable);text-align:left;background:0 0;border-radius:6px;grid-template-columns:18px minmax(0,1fr);align-items:center;gap:9px;padding:0 10px;text-decoration:none;display:grid}.plan-options-item:has(small){min-height:54px;padding-block:6px}.plan-options-item>.icon{color:var(--sea-deep)}.plan-options-item>span{gap:1px;min-width:0;display:grid}.plan-options-item strong{font-size:var(--text-caption);font-weight:var(--weight-bold);line-height:1.3}.plan-options-item small{color:var(--ink-soft);font-size:var(--text-caption);line-height:1.3}.plan-options-item:hover:not(:disabled),.plan-options-item:focus-visible{background:var(--canvas);color:var(--ink)}.plan-options-item:disabled{cursor:not-allowed;opacity:.48}.plan-options-danger{border-top:1px solid var(--line);margin-top:4px;padding-top:4px;display:grid}.plan-options-item.is-danger{color:#9b442a}.plan-options-item.is-danger:hover:not(:disabled),.plan-options-item.is-danger:focus-visible{background:var(--coral-soft);color:#8f351e}.route-activate-confirm{gap:9px;width:min(290px,100vw - 32px);padding:12px}.route-activate-confirm>strong{color:var(--ink);font-size:var(--text-caption);line-height:1.35}.route-activate-confirm>p{color:var(--ink-readable);font-size:var(--text-caption);margin:0;line-height:1.45}.route-activate-confirm>span{justify-content:flex-end;gap:6px;display:flex}.route-activate-confirm>span button{background:var(--canvas);min-height:42px;font-size:var(--text-caption);font-weight:var(--weight-bold);justify-content:center;align-items:center;padding:0 11px;display:flex}.route-activate-confirm>span button.is-primary{background:var(--ink);color:#fff}.route-activate-confirm>span button.is-primary:hover:not(:disabled){background:#183a4b}.plan-context-layer{z-index:100;pointer-events:none;position:fixed;inset:0}.plan-context-backdrop{pointer-events:auto;touch-action:none;overscroll-behavior:contain;animation:trip-menu-backdrop-in var(--menu-reveal-duration) ease-out both;background:#102b3a14;position:absolute;inset:0}.plan-context-layer.is-closing .plan-context-backdrop{animation:trip-menu-backdrop-out var(--menu-hide-duration) ease-in both}.plan-tab-context-menu{z-index:1;pointer-events:auto;transform-origin:100% 0;width:min(268px,100vw - 16px);max-height:calc(100dvh - 16px);animation:trip-menu-in var(--menu-reveal-duration) cubic-bezier(.16, 1, .3, 1) both;position:fixed;top:auto;right:auto;overflow-y:auto}.plan-tab-context-menu.is-closing{pointer-events:none;animation:trip-menu-out var(--menu-hide-duration) cubic-bezier(.4, 0, 1, 1) both}.planner-context-layer{z-index:110;pointer-events:none;position:fixed;inset:0}.planner-context-backdrop{pointer-events:auto;touch-action:none;overscroll-behavior:contain;background:#102b3a1f;position:absolute;inset:0}.planner-context-menu{top:var(--context-top,12px);left:var(--context-left,12px);z-index:1;pointer-events:auto;overscroll-behavior:contain;background:#fffefafc;border:1px solid #c7d3d1fa;border-radius:8px;width:min(276px,100vw - 24px);max-height:calc(100dvh - 24px);display:grid;position:fixed;overflow:hidden auto;box-shadow:0 18px 44px #102b3a3d}.planner-context-menu>header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:8px;min-height:0;padding:7px 6px 6px 10px;display:flex}.planner-context-menu>header>span{gap:2px;min-width:0;display:grid}.planner-context-menu>header small{color:var(--sea);font-size:var(--text-caption);font-weight:var(--weight-bold);letter-spacing:.09em;text-transform:uppercase}.planner-context-menu>header strong{color:var(--ink);font-family:var(--display);font-size:var(--text-body);text-overflow:ellipsis;white-space:nowrap;line-height:1.2;overflow:hidden}.planner-context-menu>header p{color:var(--ink-soft);font-size:var(--text-caption);margin:0;line-height:1.3}.planner-context-menu>header>button{width:36px;height:36px;color:var(--ink-soft);background:0 0;border-radius:5px;flex:none;place-items:center;margin:-2px -1px -2px 0;display:grid}.planner-context-menu>header>button:hover{background:var(--canvas);color:var(--ink)}.planner-context-actions{padding:3px;display:grid}.planner-context-actions>button{min-height:42px;color:var(--ink);text-align:left;background:0 0;border-radius:5px;grid-template-columns:18px minmax(0,1fr);align-items:center;gap:7px;padding:4px 7px;display:grid}.planner-context-actions>button:not(:has(svg)){grid-template-columns:minmax(0,1fr);padding-left:9px}.planner-context-actions>button:hover:not(:disabled),.planner-context-actions>button:focus-visible{background:var(--sea-wash);color:var(--sea-deep)}.planner-context-actions>button.is-danger{color:#a4472d}.planner-context-actions>button.is-danger:hover:not(:disabled),.planner-context-actions>button.is-danger:focus-visible{background:var(--coral-soft);color:#8f351e}.planner-context-actions>button:disabled{opacity:.45;cursor:not-allowed}.planner-context-actions>button>span{gap:1px;min-width:0;display:grid}.planner-context-actions strong{font-size:var(--text-caption);font-weight:var(--weight-bold);line-height:1.25}.planner-context-actions small{color:var(--ink-soft);font-size:var(--text-caption);line-height:1.25}.planner-context-layer.is-sheet .planner-context-backdrop{background:#102b3a33}.planner-context-layer.is-sheet .planner-context-menu{top:auto;right:12px;bottom:max(12px, env(safe-area-inset-bottom));width:auto;max-height:calc(100dvh - 24px - env(safe-area-inset-top) - env(safe-area-inset-bottom));left:12px}.planner-undo-toast{z-index:120;color:#fff;background:#102b3af7;border:1px solid #9ebbc0;border-radius:8px;grid-template-columns:minmax(0,1fr) auto 42px;align-items:center;gap:6px;width:min(410px,100vw - 28px);min-height:54px;padding:6px;display:grid;position:fixed;bottom:14px;right:14px;box-shadow:0 16px 38px #102b3a4d}.planner-undo-toast>span{align-items:center;gap:8px;min-width:0;padding-left:8px;display:flex}.planner-undo-toast>span .icon{color:#a9d6df;flex:none}.planner-undo-toast>span strong{font-size:var(--text-caption);text-overflow:ellipsis;white-space:nowrap;line-height:1.3;overflow:hidden}.planner-undo-toast>button{color:#fff;min-height:42px;font-size:var(--text-caption);font-weight:var(--weight-bold);background:#ffffff1a;border-radius:5px;padding:0 11px}.planner-undo-toast>button:hover:not(:disabled){background:#ffffff2e}.planner-undo-toast>button:last-child{place-items:center;width:42px;padding:0;display:grid}.planner-undo-toast>button:disabled{opacity:.45;cursor:wait}.plan-context-form,.plan-context-confirm{border:1px solid var(--line);background:#fffefafc;border-radius:8px;gap:10px;padding:12px;display:grid;box-shadow:0 14px 34px #102b3a38}.plan-context-form>strong,.plan-context-confirm>strong{font-size:var(--text-caption)}.plan-context-form input{background:var(--paper-strong);width:100%;min-height:44px;font-size:var(--text-body);font-weight:var(--weight-semibold);border:1px solid #b8ced2;border-radius:6px;outline:0;padding:0 10px}.plan-context-form input:focus{border-color:var(--sea);box-shadow:0 0 0 3px #176b871f}.plan-context-confirm p{color:var(--ink-readable);font-size:var(--text-caption);margin:0;line-height:1.45}.plan-context-form>span,.plan-context-confirm>span{justify-content:flex-end;gap:6px;display:flex}.plan-context-form button,.plan-context-confirm button{background:var(--canvas);min-height:42px;color:var(--ink-readable);font-size:var(--text-caption);font-weight:var(--weight-bold);border-radius:6px;padding:0 11px}.plan-context-form button.is-primary{background:var(--ink);color:#fff}.plan-context-confirm button.is-danger{background:var(--coral-soft);color:#9b442a}.plan-context-form button:disabled,.plan-context-confirm button:disabled{cursor:not-allowed;opacity:.45}.plan-meta{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:7px;display:flex}.plan-meta>span:first-child{min-width:0;color:var(--ink-soft);font-size:var(--text-caption);flex:100%;line-height:1.4}.plan-meta.is-confirming>span:first-child{color:#8f3d22;font-weight:var(--weight-bold)}.plan-meta-actions{flex:none;gap:5px;display:flex}.plan-meta-actions button,.plan-rename button{background:var(--canvas);min-height:32px;color:var(--ink-readable);font-size:var(--text-caption);font-weight:var(--weight-bold);border-radius:5px;padding:0 9px}.plan-meta-actions button:hover:not(:disabled),.plan-rename button:hover:not(:disabled){background:var(--sand);color:var(--ink)}.plan-meta-actions button.is-primary,.plan-rename button.is-primary{background:var(--ink);color:#fff}.plan-meta-actions button.is-primary:hover:not(:disabled),.plan-rename button.is-primary:hover:not(:disabled){color:#fff;background:#183a4b}.plan-meta-actions button.is-danger{background:var(--coral-soft);color:#9b442a}.plan-meta-actions button.is-danger:hover:not(:disabled){color:#8f3d22;background:#fbdfd3}.plan-meta-actions button:disabled{cursor:not-allowed;opacity:.42}.plan-rename{align-items:center;gap:5px;display:flex}.plan-rename input{background:var(--paper-strong);min-width:0;min-height:32px;font-size:var(--text-caption);font-weight:var(--weight-semibold);border:1px solid #b8ced2;border-radius:5px;outline:0;flex:1;padding:0 9px}.plan-rename input:focus{border-color:var(--sea);box-shadow:0 0 0 3px #176b871f}.plan-error{border-left:3px solid var(--coral);background:var(--coral-soft);color:#98442a;font-size:var(--text-caption);font-weight:var(--weight-bold);margin:0;padding:7px 9px}.planner-panel-switcher{border-bottom:1px solid var(--line);flex:none;gap:16px;margin:0 13px;display:flex}.planner-panel-switcher button{min-height:42px;color:var(--ink-soft);font-size:var(--text-label);font-weight:var(--weight-semibold);background:0 0;border-bottom:2px solid #0000;padding:0 4px;position:relative}.planner-panel-switcher button:hover{color:var(--ink)}.planner-panel-switcher button.is-active{border-bottom-color:var(--sea-deep);color:var(--sea-deep)}.planner-panel-switcher small{color:inherit;font-size:var(--text-caption);margin-left:5px}.planner-routes-panel{flex-direction:column;flex:1;min-height:0;display:flex}.planner-routes-panel .plan-switcher{border-top:0}.itinerary-list-heading{color:var(--ink-soft);font-size:var(--text-label);font-weight:var(--weight-semibold);align-items:baseline;gap:6px;margin:0;padding:2px 14px 0;display:flex}.itinerary-list-heading small{font-size:var(--text-caption);font-weight:var(--weight-normal)}.places-panel-content{flex-direction:column;flex:1;min-height:0;display:flex}.places-list-heading{min-height:42px;color:var(--ink-soft);font-size:var(--text-caption);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;padding:8px 13px;display:flex}.places-heading-copy{gap:2px;display:grid}.places-heading-copy h1{color:var(--ink);font-size:var(--text-section);margin:0}.places-heading-copy small{font-size:var(--text-caption)}.places-list-heading-actions{flex:none;gap:3px;display:flex}.places-list-heading-actions button{background:var(--sea-wash);min-height:42px;color:var(--sea-deep);font-size:var(--text-caption);font-weight:var(--weight-bold);border-radius:5px;align-items:center;gap:5px;padding:0 8px;display:flex}.places-list{overscroll-behavior:contain;flex:1;align-content:start;gap:5px;min-height:0;margin:0;padding:3px 9px 14px;list-style:none;display:grid;overflow:auto}.place-row{background:0 0;border:1px solid #0000;border-radius:7px;grid-template-columns:minmax(0,1fr) auto;min-height:64px;display:grid}.place-row:hover{background:var(--canvas)}.place-row.is-selected{background:var(--sea-wash);border-color:#a9cbd0}.place-select{text-align:left;background:0 0;grid-template-columns:30px minmax(0,1fr);align-items:center;gap:8px;min-width:0;min-height:62px;padding:6px 4px 6px 8px;display:grid}.place-pin{border:2px solid var(--sea);background:var(--paper-strong);border-radius:50% 50% 50% 5px;justify-self:center;width:21px;height:25px;display:block;position:relative;rotate:-45deg}.place-pin:after{background:var(--sea);content:"";border-radius:50%;width:5px;height:5px;position:absolute;top:6px;left:6px}.place-pin.is-must{border-color:var(--coral)}.place-pin.is-must:after{background:var(--coral)}.place-pin.is-maybe{opacity:.64}.place-copy{gap:3px;min-width:0;display:grid}.place-copy>strong{font-family:var(--display);font-size:var(--text-body);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.place-copy>small{color:var(--ink-soft);font-size:var(--text-caption);text-overflow:ellipsis;white-space:nowrap;line-height:1.3;overflow:hidden}.place-flags{flex-wrap:wrap;gap:5px;min-width:0;display:flex}.place-flags em{font-size:var(--text-caption);font-style:normal;font-weight:var(--weight-bold);letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;border-radius:3px;padding:2px 4px}.place-flags .place-priority{color:var(--ink-soft);font-weight:var(--weight-normal);letter-spacing:0;text-transform:none;background:0 0;padding:2px 0}.place-flags .place-priority.is-must{background:var(--coral-soft);color:#963f27;font-weight:var(--weight-semibold);padding-inline:4px}.place-flags .place-plan-use{color:#68726f;letter-spacing:0;text-transform:none;white-space:normal;overflow-wrap:anywhere;background:#e8ebe6}.place-plan-use.is-current{color:#2f6e4b;background:#d9eadf}.place-row-actions{align-items:center;gap:2px;padding-right:4px;display:flex}.place-row-actions button{width:42px;height:42px;color:var(--ink-soft);background:0 0;border-radius:5px;place-items:center;display:grid}.place-row-actions .place-add-to-plan{width:auto;height:42px;color:var(--sea-deep);font-size:var(--text-caption);font-weight:var(--weight-semibold);white-space:nowrap;align-items:center;gap:4px;padding:0 8px;display:inline-flex}.place-row-actions button:hover{background:var(--sea-wash);color:var(--sea-deep)}.place-row.is-selected .place-row-actions button:hover{background:#ffffff7a}.places-empty{text-align:center;flex:1;align-content:center;justify-items:center;min-height:0;padding:28px 24px;display:grid}.places-empty>span{background:var(--sea-wash);width:48px;height:48px;color:var(--sea-deep);border:1px solid #b3d0d4;border-radius:8px;place-items:center;margin-bottom:12px;display:grid}.places-empty>strong{font-family:var(--display);font-size:17px}.places-empty p{max-width:31ch;color:var(--ink-readable);font-size:var(--text-caption);margin:6px 0 15px;line-height:1.5}.places-empty-actions{flex-wrap:wrap;justify-content:center;gap:6px;display:flex}.places-empty-actions button{background:var(--ink);color:#fff;min-height:42px;font-size:var(--text-caption);font-weight:var(--weight-bold);border-radius:6px;align-items:center;gap:6px;padding:0 12px;display:flex}.places-empty-actions button.is-secondary{background:var(--sea-wash);color:var(--sea-deep)}.place-editor-layer{z-index:140;padding:max(14px, env(safe-area-inset-top)) max(14px, env(safe-area-inset-right)) max(14px, env(safe-area-inset-bottom)) max(14px, env(safe-area-inset-left));pointer-events:none;place-items:center;display:grid;position:fixed;inset:0}.place-editor-backdrop{pointer-events:auto;touch-action:none;overscroll-behavior:contain;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0a1f2a6b;position:absolute;inset:0}.place-editor-dialog{z-index:1;background:var(--paper-strong);pointer-events:auto;border:1px solid #aebfc1;border-radius:9px;outline:0;grid-template-rows:auto minmax(0,1fr);width:min(560px,100%);max-height:min(760px,100dvh - 28px);display:grid;position:relative;overflow:hidden;box-shadow:0 24px 70px #0a1f2a57}.place-editor-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:14px;min-height:76px;padding:14px 10px 12px 16px;display:flex}.place-editor-heading>span{gap:2px;min-width:0;display:grid}.place-editor-heading small{color:var(--sea);font-size:var(--text-caption);font-weight:var(--weight-bold);letter-spacing:.1em;text-transform:uppercase}.place-editor-heading strong{font-family:var(--display);font-size:20px}.place-editor-heading p{color:var(--ink-readable);font-size:var(--text-caption);margin:2px 0 0;line-height:1.4}.place-editor-close{width:42px;height:42px;color:var(--ink-soft);background:0 0;border-radius:6px;flex:none;place-items:center;display:grid}.place-editor-close:hover:not(:disabled){background:var(--canvas);color:var(--ink)}.place-editor-form{overscroll-behavior:contain;min-height:0;overflow:auto}.place-editor-fields{grid-template-columns:minmax(0,1.1fr) minmax(150px,.9fr);gap:11px;padding:14px 16px;display:grid}.place-editor-field{min-width:0;color:var(--ink-readable);font-size:var(--text-caption);font-weight:var(--weight-bold);letter-spacing:.05em;text-transform:uppercase;align-content:start;gap:6px;display:grid}.place-editor-field>span,.place-editor-field>legend{width:100%;color:var(--ink-readable);justify-content:space-between;display:flex}.place-editor-field>span small{color:var(--ink-soft);font-weight:var(--weight-semibold)}.place-editor-field input[type=text],.place-editor-field input:not([type]),.place-editor-field select,.place-editor-field textarea{background:var(--paper);width:100%;min-width:0;min-height:44px;color:var(--ink);font:650 14px/1.4 var(--sans);letter-spacing:normal;text-transform:none;border:1px solid #b8ced2;border-radius:6px;outline:0;padding:9px 10px}.place-editor-field select{padding-block:0}.place-editor-field textarea{resize:vertical;min-height:92px}.place-editor-field input:focus,.place-editor-field select:focus,.place-editor-field textarea:focus{border-color:var(--sea);box-shadow:0 0 0 3px #176b871f}.place-editor-field [aria-invalid=true]{border-color:#ca7458}.place-editor-priority,.place-editor-note,.place-editor-position{border:0;grid-column:1/-1;margin:0;padding:0}.place-priority-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;display:grid}.place-priority-option{border:1px solid var(--line);background:var(--canvas);cursor:pointer;border-radius:6px;min-height:57px;padding:7px 8px;display:grid;position:relative}.place-priority-option input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.place-priority-option>span{align-content:center;gap:2px;display:grid}.place-priority-option strong{color:var(--ink);font-size:var(--text-caption);text-transform:none}.place-priority-option small{color:var(--ink-soft);font-size:var(--text-caption);font-weight:var(--weight-semibold);letter-spacing:normal;text-transform:none;line-height:1.25}.place-priority-option.is-selected{border-color:var(--sea);background:var(--sea-wash);box-shadow:inset 0 0 0 1px #176b8729}.place-priority-option:has(input:focus-visible){box-shadow:0 0 0 3px #176b8724}.place-editor-count{color:var(--ink-soft);font-size:var(--text-caption);font-weight:var(--weight-semibold);letter-spacing:normal;text-transform:none;justify-self:end;margin-top:-3px}.place-editor-coordinates{border:1px solid var(--line);background:var(--canvas);border-radius:6px;grid-template-columns:repeat(2,minmax(0,1fr));min-height:44px;display:grid;overflow:hidden}.place-editor-coordinates>span{min-width:0;color:var(--ink);letter-spacing:normal;text-transform:none;align-items:center;gap:7px;padding:7px 9px;font:700 11px/1.3 ui-monospace,SFMono-Regular,Menlo,monospace;display:flex}.place-editor-coordinates>span+span{border-left:1px solid var(--line)}.place-editor-coordinates small{color:var(--sea);font:850 8px/1 var(--sans);letter-spacing:.06em;text-transform:uppercase}.place-editor-error,.place-editor-submit-error{color:#9b442a;font-size:var(--text-caption);font-weight:var(--weight-bold);letter-spacing:normal;text-transform:none;line-height:1.35}.place-editor-submit-error{border-left:3px solid var(--coral);background:var(--coral-soft);margin:0 16px 12px;padding:8px 9px}.place-editor-delete-confirm{background:var(--coral-soft);border:1px solid #e2c1b5;border-radius:6px;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:7px;margin:0 16px 12px;padding:9px;display:grid}.place-editor-delete-confirm>span{gap:2px;display:grid}.place-editor-delete-confirm strong{font-size:var(--text-caption)}.place-editor-delete-confirm small{color:var(--ink-readable);font-size:var(--text-caption);line-height:1.3}.place-editor-delete-confirm button,.place-editor-actions button{background:var(--canvas);min-height:42px;color:var(--ink-readable);font-size:var(--text-caption);font-weight:var(--weight-bold);border-radius:6px;padding:0 12px}.place-editor-delete-confirm button.is-danger,.place-editor-actions button.place-editor-delete{background:var(--coral-soft);color:#9b442a}.place-editor-actions{padding:10px 16px max(10px, env(safe-area-inset-bottom));border-top:1px solid var(--line);background:#fffefaf7;justify-content:space-between;align-items:center;gap:9px;display:flex;position:sticky;bottom:0}.place-editor-actions>span{gap:6px;margin-left:auto;display:flex}.place-editor-actions button.is-primary{background:var(--ink);color:#fff;align-items:center;gap:7px;display:inline-flex}.place-editor-actions button:disabled,.place-editor-delete-confirm button:disabled{cursor:wait;opacity:.5}.place-map-detail{z-index:7;width:min(340px,100% - 28px);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffefafa;border:1px solid #a9c8cc;border-radius:8px;display:grid;position:absolute;bottom:14px;right:14px;overflow:hidden}.place-map-detail>header{justify-content:space-between;align-items:flex-start;gap:10px;min-height:59px;padding:10px 8px 8px 12px;display:flex}.place-map-detail>header>span{gap:2px;min-width:0;display:grid}.place-map-detail>header small{color:var(--sea);font-size:var(--text-caption);font-weight:var(--weight-bold);letter-spacing:.07em;text-transform:uppercase}.place-map-detail>header strong{font-family:var(--display);text-overflow:ellipsis;white-space:nowrap;font-size:17px;overflow:hidden}.place-map-detail>header button{width:42px;height:42px;color:var(--ink-soft);background:0 0;border-radius:5px;flex:none;place-items:center;display:grid}.place-map-detail>p{color:var(--ink-readable);font-size:var(--text-caption);margin:0;padding:0 12px 9px;line-height:1.4}.place-map-detail-open-in{padding:0 12px 10px}.place-map-detail-open-in a{min-height:42px}.place-map-detail>footer{border-top:1px solid var(--line);background:var(--canvas);flex-wrap:wrap;justify-content:flex-end;gap:5px;padding:7px 8px;display:flex}.place-map-detail>footer button{background:var(--paper-strong);max-width:100%;min-height:42px;color:var(--ink-readable);font-size:var(--text-caption);font-weight:var(--weight-bold);overflow-wrap:anywhere;border-radius:5px;justify-content:center;align-items:center;gap:5px;padding:0 9px;display:flex}.place-map-detail>footer button.is-primary{background:var(--sea-deep);color:#fff}.place-map-detail>footer button:last-child{width:42px;padding:0}.itinerary-list{--itinerary-row-hover:#f0f1ed;overscroll-behavior:contain;flex:1;min-height:0;margin:0;padding:10px 10px 18px 13px;list-style:none;overflow:auto}.itinerary-list::-webkit-scrollbar{width:5px}.itinerary-list::-webkit-scrollbar-thumb{background:#d2cec2;border-radius:4px}.itinerary-item{position:relative}.itinerary-item:before{z-index:2;background:repeating-linear-gradient(to bottom, var(--sea) 0 3px, transparent 3px 7px);content:"";opacity:.42;pointer-events:none;width:1px;position:absolute;top:40px;bottom:-5px;left:19px}.itinerary-item:last-child:before{display:none}.sailing-day-arrival{position:relative}.sailing-day-arrival:before{z-index:3;content:"";pointer-events:none;background:0 0;width:2px;transition:background-color .15s;position:absolute;top:0;bottom:0;left:19px}.sailing-day-arrival.is-day-active:before{background:color-mix(in srgb, var(--sea) 40%, var(--paper))}.leg-summary-wrap{background:0 0;border-radius:6px;grid-template-columns:minmax(0,1fr) auto;align-items:center;min-height:42px;transition:background-color .15s;display:grid}.leg-summary-wrap:has(:focus-visible){background:var(--itinerary-row-hover)}.leg-summary-wrap.is-sailing-day{border-top:1px solid #c8dcde;margin-top:5px;transition:background-color .15s,border-color .15s}.sailing-day-arrival.is-day-active .leg-summary-wrap.is-sailing-day{border-top-color:#176b878c}.leg-summary{width:100%;min-width:0;min-height:42px;color:var(--ink-soft);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:var(--text-caption);font-weight:var(--weight-semibold);text-align:left;background:0 0;border-radius:6px;justify-content:flex-start;align-items:center;gap:6px;padding:4px 7px 4px 43px;display:flex}.leg-summary>*{z-index:4;position:relative}.leg-summary:hover,.leg-summary:focus-visible{background:0 0}.leg-summary>span:not(.sr-only){white-space:nowrap}.leg-summary>.icon{flex:none;margin-left:auto}.leg-summary>em{color:#8a5d24;min-width:45px;font:850 8px/1.2 var(--sans);letter-spacing:.05em;text-align:center;text-transform:uppercase;background:#fff0d8;border-radius:3px;flex:none;padding:2px 4px;font-style:normal}.leg-summary:not(.is-sailing-day)>em{margin-left:auto}.leg-summary:not(.is-sailing-day):has(>em)>.icon{margin-left:0}.leg-summary.is-sailing-day{background:0 0;border-radius:0;grid-template-rows:auto auto;grid-template-columns:minmax(0,1fr) auto auto;align-content:center;gap:1px 6px;min-height:51px;padding-block:7px 5px;display:grid}.leg-summary.is-sailing-day:hover,.leg-summary.is-sailing-day:focus-visible{background:0 0}.leg-summary.is-sailing-day>.sailing-day-heading,.leg-summary.is-sailing-day>.sailing-day-course{grid-column:1}.leg-summary.is-sailing-day>em{grid-area:1/2/span 2;align-self:center}.leg-summary.is-sailing-day>.icon{grid-area:1/3/span 2;align-self:center;margin-left:0}.leg-reset-button{width:42px;height:42px;color:var(--ink-soft);background:0 0;border-radius:6px;place-items:center;display:grid}.leg-reset-button:focus-visible{background:var(--coral-soft);color:#9b442a}.sailing-day-summary{min-height:52px;color:var(--ink-readable);background:0 0;border-top:1px solid #c8dcde;align-content:center;gap:1px;margin:5px 0 0;padding:7px 7px 5px 43px;transition:border-color .15s;display:grid;position:relative}.sailing-day-summary:before{z-index:3;content:"";pointer-events:none;background:0 0;width:2px;transition:background-color .15s;position:absolute;top:0;bottom:0;left:19px}.sailing-day-summary>*{z-index:4;position:relative}.sailing-day-summary.is-day-active{border-top-color:#176b878c}.sailing-day-summary.is-day-active:before{background:color-mix(in srgb, var(--sea) 40%, var(--paper))}.sailing-day-heading{min-width:0;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:var(--text-caption);font-weight:var(--weight-bold);flex-wrap:wrap;align-items:center;gap:3px 7px;display:flex}.sailing-day-total{white-space:nowrap;align-items:center;gap:6px;display:flex}.sailing-day-heading strong{color:var(--sea-deep);font:850 10px/1.2 var(--sans);letter-spacing:.06em;text-transform:uppercase;white-space:nowrap}.sailing-day-heading.is-estimated strong{color:var(--ink-soft)}.sailing-day-heading abbr{color:#6f7c7e;font:800 8px/1 var(--sans);letter-spacing:.04em;text-transform:uppercase;border:1px dashed #aebfbe;border-radius:3px;padding:1px 3px;text-decoration:none}.sailing-day-heading>em{color:var(--ink-soft);font:800 8px/1.2 var(--sans);letter-spacing:.05em;text-transform:uppercase;white-space:nowrap;margin-left:auto;font-style:normal}.sailing-day-course{min-width:0;color:var(--ink-soft);font-family:var(--sans);font-size:var(--text-caption);font-weight:var(--weight-bold);align-items:center;gap:5px;display:flex;overflow:hidden}.sailing-day-course>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.stop-row{position:relative}.stop-card{text-align:left;background:0 0;border:1px solid #0000;border-radius:6px;grid-template-columns:38px minmax(0,1fr);align-items:center;gap:8px;width:100%;min-height:65px;padding:7px 7px 7px 0;display:grid;position:relative}.stop-row.has-reorder .stop-card{padding-right:91px}.stop-row:has(:focus-visible) .stop-card:not(.is-selected){background:var(--itinerary-row-hover)}.stop-card.is-selected{background:var(--coral-soft);box-shadow:none;border-color:#f1cabb}.stop-number{z-index:4;border:2px solid var(--sea);background:var(--paper-strong);width:27px;height:27px;box-shadow:0 0 0 2px var(--paper);color:var(--sea-deep);font-family:var(--display);font-size:var(--text-caption);font-weight:var(--weight-bold);border-radius:50%;place-items:center;margin-left:5px;display:grid;position:relative}.stop-card.is-selected .stop-number{border-color:var(--coral);background:var(--coral);box-shadow:0 0 0 2px var(--paper);color:var(--route-ink)}.stop-card.is-day-stop .stop-number{background:var(--sea-wash);border-style:dashed}.stop-card.is-day-stop.is-selected .stop-number{background:var(--coral);border-style:solid}.stop-copy{z-index:4;gap:3px;min-width:0;display:grid;position:relative}.stop-copy strong{font-family:var(--display);font-size:var(--text-body);font-weight:var(--weight-bold);letter-spacing:-.015em;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.stop-day{color:var(--sea);font-size:var(--text-caption);font-weight:var(--weight-bold);letter-spacing:.07em;text-transform:uppercase;align-items:center;gap:5px;display:flex}.stop-day.is-estimated{color:var(--ink-soft)}.stop-day abbr{color:#6f7c7e;border:1px dashed #c2ccca;border-radius:3px;padding:1px 4px;text-decoration:none}.stop-day-kind{color:var(--sea-deep);font-size:var(--text-caption);font-weight:var(--weight-bold);letter-spacing:.05em;text-transform:uppercase}.stop-meta{color:var(--ink-soft);font-size:var(--text-caption);align-items:center;gap:7px;display:flex}@media (hover:hover) and (pointer:fine){.leg-summary-wrap:hover,.stop-row:hover .stop-card:not(.is-selected){background:var(--itinerary-row-hover)}.leg-reset-button:hover{background:var(--coral-soft);color:#9b442a}.leg-summary>.icon,.leg-reset-button{opacity:0;transition:opacity .15s}.leg-summary-wrap:hover .leg-summary>.icon,.leg-summary-wrap:focus-within .leg-summary>.icon,.leg-summary-wrap:hover .leg-reset-button,.leg-summary-wrap:focus-within .leg-reset-button{opacity:1}}.reorder-actions{z-index:2;opacity:0;grid-template-columns:repeat(2,42px);gap:1px;transition:opacity .15s;display:grid;position:absolute;top:50%;right:3px;translate:0 -50%}.stop-row:hover .reorder-actions,.reorder-actions:focus-within,.reorder-button:focus-visible{opacity:1}.stop-row:has(.stop-card.is-selected) .reorder-actions{opacity:1}@media (hover:none),(pointer:coarse){.reorder-actions{opacity:1}}.reorder-button{width:42px;height:42px;color:var(--ink-soft);background:0 0;border-radius:6px;place-items:center;display:grid}.reorder-button:hover:not(:disabled){color:var(--ink);background:#ffffffbf}.reorder-button:disabled{cursor:not-allowed;opacity:.3}.route-reorder-draft{background:color-mix(in srgb, var(--sea-wash) 72%, var(--paper));border-top:1px solid #a8c7cb;gap:9px;padding:11px 13px 12px;display:grid;box-shadow:0 -7px 18px #102b3a14}.route-reorder-draft-copy{gap:2px;display:grid}.route-reorder-draft-copy small{color:var(--sea);font-size:var(--text-caption);font-weight:var(--weight-bold);letter-spacing:.09em;text-transform:uppercase}.route-reorder-draft-copy strong{color:var(--ink);font-size:var(--text-caption)}.route-reorder-draft-copy p{color:var(--ink-readable);font-size:var(--text-caption);margin:0;line-height:1.35}.route-reorder-clear-option{cursor:pointer;background:#fffefab3;border:1px solid #b7ced1;border-radius:6px;grid-template-columns:22px minmax(0,1fr);align-items:center;gap:8px;min-height:48px;padding:5px 8px;display:grid}.route-reorder-clear-option input{width:18px;height:18px;accent-color:var(--sea);margin:0}.route-reorder-clear-option>span{gap:2px;display:grid}.route-reorder-clear-option strong{font-size:var(--text-caption)}.route-reorder-clear-option small{color:var(--ink-soft);font-size:var(--text-caption);line-height:1.3}.route-reorder-draft-actions{grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:6px;display:grid}.route-reorder-draft-actions button{min-height:43px;color:var(--ink-readable);font-size:var(--text-caption);font-weight:var(--weight-bold);background:#fffefad1;border-radius:6px}.route-reorder-draft-actions button.is-primary{background:var(--ink);color:#fff}.route-reorder-draft-actions button:disabled{cursor:wait;opacity:.5}.panel-footer{border-top:1px solid var(--line);background:#f7f6f1f7;padding:10px 13px 12px}.read-only-note{background:var(--sand);min-height:44px;color:var(--ink-soft);font-size:var(--text-caption);font-weight:var(--weight-bold);text-align:center;border-radius:11px;place-items:center;display:grid}.primary-button,.secondary-button{min-height:43px;font-size:var(--text-caption);font-weight:var(--weight-bold);border-radius:6px;justify-content:center;align-items:center;gap:8px;display:flex}.primary-button{background:var(--ink);color:#fff;width:100%;box-shadow:none}.primary-button:hover{background:#183a4b}.primary-button.is-active{background:var(--coral)}.secondary-button{border:1px solid var(--line);background:var(--paper-strong);padding:0 16px}.briefing-layer{z-index:110;pointer-events:none;position:fixed;inset:0}.briefing-backdrop{pointer-events:auto;touch-action:none;overscroll-behavior:contain;background:#0a1f2a5c;animation:.2s ease-out both briefing-backdrop-in;position:absolute;inset:0}.briefing-drawer-shell{width:min(var(--briefing-drawer-width,460px), calc(100vw - 28px));pointer-events:auto;will-change:transform;animation:.26s cubic-bezier(.22,1,.36,1) both briefing-drawer-in;position:absolute;top:0;bottom:0;right:0}.briefing-drawer{z-index:1;background:var(--paper);border-left:1px solid #afc3c5;grid-template-rows:auto minmax(0,1fr);width:100%;height:100%;display:grid;position:relative;overflow:hidden;box-shadow:-18px 0 48px #102b3a3d}.briefing-resize-handle{z-index:2;cursor:col-resize;touch-action:none;outline:0;width:42px;position:absolute;top:0;bottom:0;left:-21px}.briefing-resize-handle:before{content:"";background:#598b956b;border-radius:2px;width:4px;height:48px;transition:width .12s,background .12s;position:absolute;top:50%;left:19px;transform:translateY(-50%);box-shadow:0 0 0 1px #fffefad1}.briefing-resize-handle:hover:before,.briefing-resize-handle:focus-visible:before,.briefing-drawer-shell.is-resizing .briefing-resize-handle:before{background:var(--sea);width:5px}.briefing-drawer-shell.is-resizing{-webkit-user-select:none;user-select:none}.briefing-layer.is-closing .briefing-backdrop{animation:.18s ease-in both briefing-backdrop-out}.briefing-layer.is-closing .briefing-drawer-shell{pointer-events:none;animation:.2s cubic-bezier(.4,0,.6,1) both briefing-drawer-out}@keyframes briefing-backdrop-in{0%{opacity:0}to{opacity:1}}@keyframes briefing-backdrop-out{0%{opacity:1}to{opacity:0}}@keyframes briefing-drawer-in{0%{transform:translate(calc(100% + 2px))}to{transform:translate(0,0)}}@keyframes briefing-drawer-out{0%{transform:translate(0,0)}to{transform:translate(calc(100% + 2px))}}.briefing-heading{min-height:calc(67px + env(safe-area-inset-top));padding:max(10px, env(safe-area-inset-top)) max(12px, calc(12px + env(safe-area-inset-right))) 10px 16px;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fffefaf7;justify-content:space-between;align-items:center;gap:14px;display:flex}.briefing-heading>span:first-child{gap:2px;min-width:0;display:grid}.briefing-heading small{color:var(--sea);font-size:var(--text-caption);font-weight:var(--weight-bold);letter-spacing:.1em;text-transform:uppercase}.briefing-heading strong{font-family:var(--display);text-overflow:ellipsis;white-space:nowrap;font-size:19px;line-height:1.2;overflow:hidden}.briefing-heading em{color:var(--ink-readable);font-size:var(--text-caption);text-overflow:ellipsis;white-space:nowrap;font-style:normal;overflow:hidden}.briefing-heading-actions{flex:none;align-items:center;gap:5px;display:flex}.briefing-add,.briefing-close{min-height:42px;font-size:var(--text-caption);font-weight:var(--weight-bold);border-radius:6px;justify-content:center;align-items:center;display:flex}.briefing-add{background:var(--sea-deep);color:#fff;gap:6px;padding:0 11px}.briefing-add:hover:not(:disabled){background:var(--sea)}.briefing-add:disabled{cursor:default;opacity:.42}.briefing-close{width:42px;color:var(--ink-soft);background:0 0}.briefing-close:hover{background:var(--canvas);color:var(--ink)}.briefing-content{overscroll-behavior:contain;min-height:0;padding-bottom:max(18px, env(safe-area-inset-bottom));-webkit-overflow-scrolling:touch;overflow-y:auto}.briefing-composer{background:var(--sea-wash);border-bottom:1px solid #a9cbd0;gap:9px;padding:14px 16px 15px;display:grid}.briefing-composer>label:first-child{color:var(--sea-deep);font-size:var(--text-caption);font-weight:var(--weight-bold);justify-content:space-between;gap:8px;display:flex}.briefing-composer>label:first-child small{color:var(--ink-soft);font-size:var(--text-caption);font-weight:var(--weight-semibold)}.briefing-composer textarea,.briefing-note-edit textarea{background:var(--paper-strong);width:100%;min-width:0;min-height:96px;color:var(--ink);font:inherit;font-size:var(--text-input);resize:vertical;border:1px solid #9fbfc4;border-radius:6px;outline:0;padding:10px 11px;line-height:1.45}.briefing-composer textarea:focus,.briefing-note-edit textarea:focus,.briefing-stop-field select:focus{border-color:var(--sea);box-shadow:0 0 0 3px #176b871f}.briefing-stop-field{color:var(--ink-readable);font-size:var(--text-caption);font-weight:var(--weight-bold);gap:5px;display:grid}.briefing-stop-field>span{justify-content:space-between;gap:8px;display:flex}.briefing-stop-field small{color:var(--ink-soft);font-weight:var(--weight-semibold)}.briefing-stop-field select{background:var(--paper-strong);width:100%;min-width:0;min-height:44px;color:var(--ink);font-size:var(--text-input);border:1px solid #aabfc2;border-radius:6px;outline:0;padding:0 34px 0 10px}.briefing-photo-picker{border:0;gap:5px;min-width:0;margin:0;padding:0;display:grid}.briefing-photo-picker legend{width:100%;color:var(--ink-readable);font-size:var(--text-caption);font-weight:var(--weight-bold);margin:0 0 5px;padding:0}.briefing-photo-picker legend small{float:right;color:var(--ink-soft);font-weight:var(--weight-semibold)}.briefing-photo-picker>small{color:var(--ink-soft);font-size:var(--text-caption);line-height:1.35}.briefing-photo-picker-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;display:grid}.briefing-photo-preview,.briefing-photo-add{background:var(--paper-strong);aspect-ratio:4/3;border:1px solid #a9c3c7;border-radius:6px;place-items:center;min-width:0;min-height:76px;display:grid;position:relative;overflow:hidden}.briefing-photo-preview img{object-fit:cover;width:100%;height:100%}.briefing-photo-preview button{color:#fff;background:#0a1f2ac2;border-radius:0 0 0 6px;place-items:center;width:42px;height:42px;display:grid;position:absolute;top:0;right:0}.briefing-photo-preview.is-removed img{opacity:.25;filter:grayscale()}.briefing-photo-preview em{color:var(--ink-readable);font-size:var(--text-caption);font-style:normal;font-weight:var(--weight-bold);text-align:center;text-overflow:ellipsis;text-transform:uppercase;position:absolute;inset:auto 4px 5px;overflow:hidden}.briefing-photo-add{color:var(--sea-deep);cursor:pointer;text-align:center;background:#fffefaa6;border-style:dashed;align-content:center;gap:3px}.briefing-photo-add:hover{border-color:var(--sea);background:var(--paper-strong)}.briefing-photo-add>span{font-size:var(--text-caption);font-weight:var(--weight-bold)}.briefing-photo-add>small{color:var(--ink-soft);font-size:var(--text-caption);font-weight:var(--weight-bold)}.briefing-photo-add input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute;overflow:hidden}.briefing-form-error{border-left:3px solid var(--coral);background:var(--coral-soft);color:#98442a;font-size:var(--text-caption);font-weight:var(--weight-bold);margin:0;padding:8px 10px;line-height:1.4}.briefing-form-actions{grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);gap:7px;display:grid}.briefing-form-actions button{min-height:44px;color:var(--ink-readable);font-size:var(--text-caption);font-weight:var(--weight-bold);background:#fffefac7;border-radius:6px;padding:0 12px}.briefing-form-actions button.is-primary{background:var(--ink);color:#fff}.briefing-form-actions button:hover:not(:disabled){filter:brightness(.97)}.briefing-form-actions button:disabled{cursor:not-allowed;opacity:.45}.briefing-empty{text-align:center;align-content:center;place-items:center;min-height:100%;padding:46px 28px;display:grid}.briefing-empty>span{background:var(--sea-wash);width:54px;height:54px;color:var(--sea-deep);border:1px solid #b3d0d4;border-radius:9px;place-items:center;margin-bottom:14px;display:grid}.briefing-empty>strong{font-family:var(--display);font-size:19px}.briefing-empty p{max-width:34ch;color:var(--ink-readable);font-size:var(--text-caption);margin:6px 0 17px;line-height:1.55}.briefing-empty button{background:var(--ink);color:#fff;min-height:44px;font-size:var(--text-caption);font-weight:var(--weight-bold);border-radius:6px;align-items:center;gap:7px;padding:0 14px;display:flex}.briefing-note-list{align-content:start;gap:8px;padding:12px 12px 4px;display:grid}.briefing-note-group{gap:6px;display:grid}.briefing-group-label{min-height:22px;color:var(--sea);font-size:var(--text-caption);font-weight:var(--weight-bold);letter-spacing:.1em;text-transform:uppercase;align-items:center;gap:5px;padding:2px 5px 0;display:flex}.briefing-note{border:1px solid var(--line);background:var(--paper-strong);border-radius:7px;grid-template-columns:32px minmax(0,1fr);gap:9px;padding:11px;display:grid}.briefing-note.is-pinned{background:color-mix(in srgb, var(--sea-wash) 42%, var(--paper-strong));box-shadow:inset 3px 0 0 var(--sea);border-color:#abc9ce}.briefing-note-avatar{background:var(--sea-deep);color:#fff;width:30px;height:30px;font-size:var(--text-caption);font-weight:var(--weight-bold);border-radius:50%;place-items:center;display:grid}.briefing-note-main{gap:8px;min-width:0;display:grid}.briefing-note-main>header{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:6px;min-height:30px;display:grid}.briefing-note-byline{gap:2px;min-width:0;display:grid}.briefing-note-byline strong,.briefing-note-byline small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.briefing-note-byline strong{font-size:var(--text-caption)}.briefing-note-byline small{color:var(--ink-soft);font-size:var(--text-caption)}.briefing-note-more{width:42px;height:42px;color:var(--ink-soft);background:0 0;border-radius:6px;place-items:center;margin:-6px -6px -6px 0;display:grid}.briefing-note-more:hover,.briefing-note-more[aria-expanded=true]{background:var(--canvas);color:var(--ink)}.briefing-note-body{color:var(--ink);font-size:var(--text-body);line-height:1.52}.note-markdown{overflow-wrap:anywhere;gap:6px;min-width:0;display:grid}.note-markdown p,.note-markdown ul,.note-markdown ol{margin:0}.note-markdown ul,.note-markdown ol{gap:2px;padding-left:21px;display:grid}.note-markdown ul{list-style:outside}.note-markdown ol{list-style:decimal}.note-markdown li{padding-left:1px}.note-markdown-table-scroll{-webkit-overflow-scrolling:touch;border:1px solid #b8cacc;border-radius:5px;outline:0;max-width:100%;overflow-x:auto}.note-markdown-table-scroll:focus-visible{border-color:var(--sea);box-shadow:0 0 0 3px #176b871f}.note-markdown table{border-collapse:collapse;background:var(--paper-strong);width:100%;min-width:max-content;font-size:var(--text-caption)}.note-markdown th,.note-markdown td{vertical-align:top;border-bottom:1px solid #cbd8d9;border-right:1px solid #cbd8d9;max-width:30ch;padding:6px 8px}.note-markdown th{background:var(--sea-wash);color:var(--sea-deep);font-weight:var(--weight-bold)}.note-markdown tr:last-child td{border-bottom:0}.note-markdown th:last-child,.note-markdown td:last-child{border-right:0}.note-markdown .is-left{text-align:left}.note-markdown .is-center{text-align:center}.note-markdown .is-right{text-align:right}.note-markdown a{color:var(--sea-deep);font-weight:var(--weight-bold);text-underline-offset:2px;text-decoration-thickness:1px}.note-markdown a:hover{color:var(--route)}.note-markdown code,.note-markdown-hint code{background:var(--canvas);color:var(--ink-readable);border:1px solid #c5d4d5;border-radius:3px;padding:1px 4px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.9em}.note-markdown-hint{color:var(--ink-soft);font-size:var(--text-caption);margin-top:-3px;line-height:1.5}.briefing-photo-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;display:grid}.briefing-photo-gallery.is-single{grid-template-columns:minmax(0,1fr)}.briefing-photo-gallery>a{background:var(--canvas);aspect-ratio:4/3;border:1px solid #b8cacc;border-radius:5px;min-width:0;position:relative;overflow:hidden}.briefing-photo-gallery:not(.is-single)>a:last-child:nth-child(odd){aspect-ratio:16/9;grid-column:1/-1}.briefing-photo-gallery img{object-fit:cover;width:100%;height:100%;transition:scale .15s}.briefing-photo-gallery>a:hover img{scale:1.025}.briefing-photo-gallery>a>span{color:#fff;background:#0a1f2ab8;border-radius:4px;place-items:center;width:28px;height:28px;display:grid;position:absolute;bottom:5px;right:5px}.briefing-stop-link{background:var(--sea-wash);min-height:42px;color:var(--sea-deep);text-align:left;border:1px solid #bdd2d5;border-radius:5px;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:6px;padding:0 8px;display:grid}.briefing-stop-link span{font-size:var(--text-caption);font-weight:var(--weight-bold);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.briefing-stop-link small{color:var(--ink-readable);font-size:var(--text-caption);white-space:nowrap}.briefing-stop-link:hover{border-color:var(--sea)}.briefing-note-inline-actions{grid-template-columns:repeat(auto-fit,minmax(88px,1fr));gap:5px;padding-top:2px;display:grid}.briefing-note-inline-actions button{background:var(--canvas);min-width:0;min-height:42px;color:var(--ink-readable);font-size:var(--text-caption);font-weight:var(--weight-bold);border-radius:5px;justify-content:center;align-items:center;gap:5px;padding:0 7px;display:flex}.briefing-note-inline-actions button.is-danger{background:var(--coral-soft);color:#9b442a}.briefing-note-inline-actions button:disabled{cursor:wait;opacity:.5}.briefing-note-edit{gap:8px;display:grid}.briefing-note-confirm{background:var(--coral-soft);border:1px solid #efc2af;border-radius:6px;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:6px;padding:8px;display:grid}.briefing-note-confirm>span{gap:2px;display:grid}.briefing-note-confirm strong{color:#8f3d22;font-size:var(--text-caption)}.briefing-note-confirm small{color:#77594f;font-size:var(--text-caption)}.briefing-note-confirm button{background:var(--paper-strong);min-height:42px;color:var(--ink-readable);font-size:var(--text-caption);font-weight:var(--weight-bold);border-radius:5px;padding:0 9px}.briefing-note-confirm button.is-danger{background:var(--danger);color:#fff}.fleet-workspace{overscroll-behavior:contain;grid-area:2/2;min-width:0;min-height:0;padding:22px;overflow:auto}.fleet-workspace.is-yacht-workspace{grid-template-columns:minmax(0,1fr);align-content:start;gap:12px;display:grid}.fleet-yacht-switcher{overscroll-behavior-inline:contain;border-bottom:1px solid var(--line);scrollbar-width:thin;gap:4px;width:100%;max-width:1280px;margin:0 auto;display:flex;overflow-x:auto}.fleet-yacht-switcher>a{min-height:54px;color:var(--ink-readable);border-bottom:3px solid #0000;flex:0 0 min(270px,42vw);grid-template-columns:36px minmax(0,1fr);align-items:center;gap:9px;padding:6px 10px 7px;text-decoration:none;display:grid}.fleet-yacht-switcher>a:hover{color:var(--ink);background:#fffefab3}.fleet-yacht-switcher>a.is-active{border-bottom-color:var(--yacht-color);background:color-mix(in srgb, var(--yacht-color) 7%, transparent);color:var(--ink)}.fleet-yacht-switcher img,.fleet-yacht-switcher i{border:1px solid var(--line);background:var(--paper-strong);width:36px;height:36px;color:var(--yacht-color);object-fit:cover;border-radius:5px;place-items:center;display:grid}.fleet-yacht-switcher>a>span{gap:2px;min-width:0;display:grid}.fleet-yacht-switcher strong,.fleet-yacht-switcher small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.fleet-yacht-switcher strong{font-family:var(--display);font-size:var(--text-body)}.fleet-yacht-switcher small{color:var(--ink-readable);font-size:var(--text-caption)}.fleet-yacht-profile{min-width:0}.fleet-yacht-profile>.yacht-editor{margin:0 0 12px}.fleet-page-heading{grid-template-columns:minmax(0,1fr) auto auto;align-items:end;gap:24px;width:100%;max-width:1280px;margin:0 auto 18px;display:grid}.fleet-page-heading>span:first-child{gap:5px;display:grid}.fleet-page-heading small,.fleet-section-heading small,.yacht-editor-heading small{color:var(--sea);font-size:var(--text-caption);font-weight:var(--weight-bold);letter-spacing:.11em;text-transform:uppercase}.fleet-page-heading p{color:var(--ink-readable);font-size:var(--text-body);margin:1px 0 0;line-height:1.5}.fleet-page-summary{border:1px solid var(--line);background:#fffefab8;border-radius:7px;align-items:center;gap:18px;min-height:52px;padding:6px 16px;display:flex}.fleet-page-summary span{color:var(--ink-readable);font-size:var(--text-caption);text-transform:uppercase;gap:2px;display:grid}.fleet-page-summary strong{color:var(--ink);font-size:var(--text-input)}.fleet-add-button{background:var(--ink);color:#fff;height:52px;min-height:52px;font-size:var(--text-caption);font-weight:var(--weight-bold);border-radius:7px;justify-content:center;align-items:center;gap:7px;padding:0 18px;display:flex}.fleet-add-button:hover{background:#183a4b}.fleet-heading-actions{align-items:stretch;gap:7px;display:flex}.fleet-import-button{background:var(--paper-strong);min-height:52px;color:var(--sea-deep);font-size:var(--text-caption);font-weight:var(--weight-bold);border:1px solid #9fc4c8;border-radius:7px;padding:0 15px}.fleet-import-button:hover{background:var(--sea-wash)}.fleet-page-grid{grid-template-columns:minmax(430px,1.08fr) minmax(340px,.92fr);gap:16px;width:100%;max-width:1280px;margin:0 auto;display:grid}.fleet-page-grid.is-single-view{grid-template-columns:minmax(0,1fr)}.fleet-roster-filter button span{background:var(--sand);min-width:22px;height:22px;color:inherit;font-size:var(--text-caption);border-radius:4px;place-items:center;padding:0 5px;display:grid}.fleet-roster-section{border:1px solid var(--line);background:#f7f6f1f5;border-radius:9px;min-width:0;overflow:hidden;box-shadow:0 8px 24px #102b3a12}.fleet-section-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;min-height:60px;padding:10px 14px;display:flex}.fleet-section-heading>span:first-child{gap:3px;display:grid}.fleet-section-heading strong{font-family:var(--display);font-size:var(--text-section)}.fleet-yacht-command{border-top:1px solid var(--line);align-items:center;gap:9px;min-height:48px;padding:7px 12px;display:flex}.fleet-yacht-command>span{gap:2px;min-width:0;display:grid}.fleet-yacht-command strong{font-size:var(--text-caption);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.fleet-yacht-command small{color:var(--ink-readable);font-size:var(--text-caption)}.fleet-yacht-command.is-ready{background:var(--sea-wash);color:var(--sea-deep)}.fleet-yacht-command.is-warning{background:var(--coral-soft);color:#9b442a}.fleet-delete-confirmation{background:var(--coral-soft);border-top:1px solid #f1cabb;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.fleet-delete-confirmation>span{gap:2px;display:grid}.fleet-delete-confirmation strong{font-size:var(--text-caption)}.fleet-delete-confirmation small{color:#77594f;font-size:var(--text-caption)}.fleet-delete-confirmation>div{flex:none;gap:5px;display:flex}.fleet-delete-confirmation button{background:var(--paper-strong);min-height:44px;color:var(--ink-soft);font-size:var(--text-caption);font-weight:var(--weight-bold);border-radius:5px;padding:0 11px}.fleet-delete-confirmation button.is-danger{background:var(--danger);color:#fff}.yacht-editor{background:var(--sea-wash);border:1px solid #bad1d5;border-radius:7px;gap:12px;margin:0 10px 10px;padding:14px;display:grid}.yacht-editor-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.yacht-editor-heading>span{gap:2px;display:grid}.yacht-editor-heading strong{font-family:var(--display);font-size:var(--text-input)}.yacht-editor-heading button{width:44px;height:44px;color:var(--ink-soft);background:0 0;border-radius:5px;place-items:center;display:grid}.yacht-lookup{background:color-mix(in srgb, var(--paper-strong) 58%, var(--sea-wash));border:1px solid #9fc7cc;border-radius:6px;gap:10px;padding:12px;display:grid}.yacht-lookup-heading{color:var(--sea-deep);justify-content:space-between;align-items:center;gap:10px;display:flex}.yacht-lookup-heading>span{gap:2px;display:grid}.yacht-lookup-heading small,.yacht-lookup-review header small{color:var(--sea);font-size:var(--text-caption);font-weight:var(--weight-bold);letter-spacing:.09em;text-transform:uppercase}.yacht-lookup-heading strong{font-family:var(--display);font-size:15px}.yacht-lookup>p{color:var(--ink-readable);font-size:var(--text-caption);margin:0;line-height:1.45}.yacht-lookup-input{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:7px;display:grid}.yacht-lookup-input label{min-width:0;color:var(--ink-soft);font-size:var(--text-caption);font-weight:var(--weight-bold);letter-spacing:.06em;text-transform:uppercase;gap:5px;display:grid}.yacht-lookup-input input{background:var(--paper-strong);min-width:0;height:48px;min-height:48px;color:var(--ink);font-size:var(--text-caption);font-weight:var(--weight-semibold);letter-spacing:normal;text-transform:none;border:1px solid #b8ced2;border-radius:5px;outline:0;padding:0 10px}.yacht-lookup-input input:focus{border-color:var(--sea);box-shadow:0 0 0 3px #176b871f}.yacht-lookup-input button,.yacht-lookup-actions button{background:var(--sea-deep);color:#fff;min-height:48px;font-size:var(--text-caption);font-weight:var(--weight-bold);border-radius:5px;padding:0 12px}.yacht-lookup-input button:disabled,.yacht-lookup-actions button:disabled{cursor:wait;opacity:.55}.yacht-lookup-error{border-left:3px solid var(--coral);background:var(--coral-soft);font-weight:var(--weight-bold);padding:8px 10px;color:#98442a!important;font-size:var(--text-caption)!important}.yacht-lookup-status{min-height:28px;font-weight:var(--weight-bold);align-items:center;gap:9px;display:flex;color:var(--sea-deep)!important;font-size:var(--text-caption)!important}.yacht-lookup-loader{border:2px solid #176b8733;border-top-color:var(--route);border-right-color:var(--sea);border-radius:50%;flex:none;width:19px;height:19px;animation:.85s linear infinite yacht-lookup-spin;display:block;position:relative}.yacht-lookup-loader:after{background:var(--route);content:"";border-radius:50%;width:3px;height:3px;position:absolute;top:1px;left:50%;translate:-50%}.yacht-lookup-review{border-top:1px solid #a8cbd0;gap:9px;padding-top:10px;display:grid}.yacht-lookup-review>header{justify-content:space-between;align-items:end;gap:12px;display:flex}.yacht-lookup-review header>span{gap:3px;display:grid}.yacht-lookup-review header strong{font-size:var(--text-caption)}.yacht-lookup-review header a{color:var(--sea-deep);font-size:var(--text-caption);font-weight:var(--weight-bold);text-underline-offset:2px;text-decoration:underline}.yacht-lookup-summary{color:var(--ink-readable);font-size:var(--text-caption);margin:0;line-height:1.45}.yacht-lookup-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;display:grid}.yacht-lookup-fields label{background:var(--paper-strong);cursor:pointer;border:1px solid #c0d4d6;border-radius:5px;grid-template-columns:18px minmax(0,1fr);gap:7px;min-width:0;padding:8px;display:grid;position:relative}.yacht-lookup-fields input{width:16px;height:16px;accent-color:var(--sea);margin:2px 0 0}.yacht-lookup-fields label>span{gap:2px;min-width:0;display:grid}.yacht-lookup-fields strong{color:var(--ink-readable);font-size:var(--text-caption);font-weight:var(--weight-bold);letter-spacing:.05em;text-transform:uppercase}.yacht-lookup-fields b{color:var(--ink);font-size:var(--text-caption);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.yacht-lookup-fields small{color:var(--ink-readable);font-size:var(--text-caption);line-height:1.35}.yacht-lookup-fields em{color:var(--ink-readable);font-size:var(--text-caption);font-style:normal;font-weight:var(--weight-bold);grid-column:2}.yacht-lookup-fields em.is-high{color:var(--sea-deep)}.yacht-lookup-fields em.is-low{color:#9b5a39}.yacht-lookup-empty{color:var(--ink-readable);font-size:var(--text-caption);border:1px dashed #afcbd0;border-radius:5px;margin:0;padding:10px;line-height:1.45}.yacht-lookup-images{border:0;gap:6px;min-width:0;margin:0;padding:0;display:grid}.yacht-lookup-images legend{color:var(--ink-soft);font-size:var(--text-caption);font-weight:var(--weight-bold);letter-spacing:.06em;text-transform:uppercase}.yacht-lookup-images>p{color:var(--ink-readable);font-size:var(--text-caption);margin:0;line-height:1.4}.yacht-lookup-image-none-options{flex-wrap:wrap;gap:6px;display:flex}.yacht-lookup-image-none-options label{background:var(--paper-strong);min-height:28px;color:var(--ink-readable);cursor:pointer;font-size:var(--text-caption);font-weight:var(--weight-bold);border:1px solid #c0d4d6;border-radius:4px;align-items:center;gap:5px;padding:0 8px;display:flex}.yacht-lookup-image-none-options input{width:14px;height:14px;accent-color:var(--sea);margin:0}.yacht-lookup-image-grid{overscroll-behavior:contain;grid-template-columns:repeat(auto-fit,minmax(132px,1fr));grid-auto-rows:max-content;align-items:start;gap:7px;max-height:390px;padding:1px;display:grid;overflow:auto}.yacht-lookup-image-grid article{background:var(--paper-strong);border:1px solid #c0d4d6;border-radius:5px;flex-direction:column;align-self:start;min-width:0;display:flex;overflow:hidden}.yacht-lookup-image-grid article.is-selected{border-color:var(--sea);box-shadow:0 0 0 1px var(--sea)}.yacht-lookup-image-preview{position:relative}.yacht-lookup-image-preview img{aspect-ratio:4/3;background:var(--canvas);object-fit:cover;flex:none;width:100%;display:block}.yacht-lookup-image-preview button{color:#fff;background:#102b3ac2;border:1px solid #ffffffc2;border-radius:4px;place-items:center;width:30px;height:30px;display:grid;position:absolute;top:6px;right:6px;box-shadow:0 2px 7px #102b3a33}.yacht-lookup-image-preview button:hover{background:var(--sea-deep)}.yacht-lookup-image-options{flex:none;gap:4px;padding:6px;display:grid}.yacht-lookup-image-options>small{color:var(--ink-readable);font-size:var(--text-caption);font-weight:var(--weight-bold);letter-spacing:.02em;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.yacht-lookup-image-grid label{color:var(--ink-readable);cursor:pointer;font-size:var(--text-caption);font-weight:var(--weight-bold);align-items:center;gap:5px;display:flex}.yacht-lookup-image-grid input{width:14px;height:14px;accent-color:var(--sea);margin:0}.listing-image-lightbox{z-index:180;padding:max(18px, env(safe-area-inset-top)) max(18px, env(safe-area-inset-right)) max(18px, env(safe-area-inset-bottom)) max(18px, env(safe-area-inset-left));-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0a1f2ac2;place-items:center;display:grid;position:fixed;inset:0}.listing-image-lightbox section{background:var(--paper-strong);border:1px solid #ffffff57;border-radius:8px;grid-template-rows:auto minmax(0,1fr);width:min(100%,1120px);max-height:min(100%,820px);display:grid;overflow:hidden;box-shadow:0 22px 62px #00000057}.listing-image-lightbox header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;min-height:50px;padding:8px 10px 8px 15px;display:flex}.listing-image-lightbox header strong{font-size:var(--text-caption);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.listing-image-lightbox header button{background:var(--canvas);width:36px;height:36px;color:var(--ink-soft);border-radius:5px;flex:none;place-items:center;display:grid}.listing-image-lightbox header button:hover{background:var(--sea-wash);color:var(--sea-deep)}.listing-image-lightbox section>img{object-fit:contain;touch-action:pinch-zoom;background:#102b3a;width:100%;min-height:0;max-height:calc(100dvh - 120px);display:block}.yacht-lookup-warnings{border-left:3px solid var(--route);color:#75542e;font-size:var(--text-caption);background:#fff6e8;gap:3px;margin:0;padding:8px 8px 8px 22px;line-height:1.35;display:grid}.yacht-lookup-actions{justify-content:space-between;align-items:center;gap:10px;display:flex}.yacht-lookup-actions>span{color:var(--ink-readable);font-size:var(--text-caption);font-weight:var(--weight-bold)}@keyframes yacht-lookup-spin{to{rotate:1turn}}.yacht-editor-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;display:grid}.yacht-editor-fields.is-specs{grid-template-columns:repeat(4,minmax(0,1fr))}.yacht-editor-fields label.is-wide{grid-column:1/-1}.yacht-editor-fields label{color:var(--ink-soft);font-size:var(--text-caption);font-weight:var(--weight-bold);letter-spacing:.06em;text-transform:uppercase;grid-template-rows:24px 48px;gap:5px;display:grid}.yacht-editor-fields label>span{align-items:end;line-height:1.2;display:flex}.yacht-editor-fields input{background:var(--paper-strong);min-width:0;height:48px;min-height:48px;color:var(--ink);font-size:var(--text-caption);font-weight:var(--weight-semibold);letter-spacing:normal;text-transform:none;border:1px solid #b8ced2;border-radius:5px;outline:0;padding:0 10px}.yacht-editor-fields input:focus{border-color:var(--sea);box-shadow:0 0 0 3px #176b871f}.yacht-color-field{border:0;min-width:0;margin:0;padding:0}.yacht-color-field legend{color:var(--ink-soft);font-size:var(--text-caption);font-weight:var(--weight-bold);letter-spacing:.06em;text-transform:uppercase;margin-bottom:6px}.yacht-color-field>div{gap:6px;display:flex}.yacht-color-field button{border:8px solid var(--paper-strong);background:var(--swatch);border-radius:50%;width:44px;height:44px;box-shadow:0 0 0 1px #102b3a1f}.yacht-color-field button.is-active{box-shadow:0 0 0 2px var(--ink)}.fleet-form-error{background:var(--coral-soft);color:#9b442a;font-size:var(--text-caption);font-weight:var(--weight-bold);border-radius:5px;padding:8px 10px}.yacht-editor-actions{justify-content:flex-end;gap:6px;display:flex}.yacht-editor-actions button{min-height:48px;color:var(--ink-soft);font-size:var(--text-caption);font-weight:var(--weight-bold);background:#ffffffa6;border-radius:5px;padding:0 14px}.yacht-editor-actions button.is-primary{background:var(--ink);color:#fff}.yacht-editor-actions button:disabled{cursor:wait;opacity:.55}.fleet-assignment-count{background:var(--sea-wash);min-width:34px;height:28px;color:var(--sea-deep);font-size:var(--text-caption);font-weight:var(--weight-bold);border-radius:5px;place-items:center;padding:0 8px;display:grid}.fleet-roster-filter{border-bottom:1px solid var(--line);scrollbar-width:none;background:#fffefaa6;gap:6px;padding:10px 12px;display:flex;overflow:auto}.fleet-roster-filter::-webkit-scrollbar{display:none}.fleet-roster-filter button{border:1px solid var(--line);background:var(--paper-strong);min-height:38px;color:var(--ink-readable);font-size:var(--text-caption);font-weight:var(--weight-bold);border-radius:5px;flex:none;align-items:center;gap:6px;padding:0 10px;display:flex}.fleet-roster-filter button.is-active{border-color:var(--sea-deep);background:var(--sea-deep);color:#fff}.fleet-roster-filter button.is-active span{background:#ffffff29}.fleet-roster-list{padding:4px 12px;display:grid}.fleet-empty-message{color:var(--ink-readable);font-size:var(--text-body);text-align:center;margin:0;padding:22px 4px;line-height:1.5}.fleet-roster-row{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr);align-items:start;gap:9px;min-height:67px;padding:11px 0;transition:background .15s,opacity .15s;display:grid}.fleet-roster-row:last-child{border-bottom:0}.fleet-roster-row.is-muted{opacity:.42}.fleet-roster-row.is-busy{opacity:.6}.fleet-roster-row.is-selected{background:var(--sea-wash);border:1px solid #a8c8cc;border-radius:7px;margin:5px 0;padding:12px}.fleet-roster-row.is-selected+.fleet-roster-row{border-top:0}.fleet-roster-summary{text-align:left;background:0 0;grid-template-columns:36px minmax(0,1fr);align-items:start;gap:9px;width:100%;padding:0;display:grid}.fleet-roster-summary:not(.is-static):hover .fleet-roster-person strong{color:var(--sea-deep)}.fleet-roster-summary.is-static{cursor:default}.fleet-roster-avatar{background:var(--yacht-color,var(--sea));color:#fff;width:34px;height:34px;font-size:var(--text-caption);font-weight:var(--weight-bold);border-radius:50%;place-items:center;display:grid}.fleet-roster-person{gap:2px;min-width:0;display:grid}.fleet-roster-person strong{font-size:var(--text-body);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.fleet-roster-person small{color:var(--ink-readable);font-size:var(--text-caption)}.fleet-responsibility-badges{flex-wrap:wrap;gap:4px;margin-top:3px;display:flex}.fleet-responsibility-badges>span{background:var(--sea-wash);min-height:22px;color:var(--sea-deep);font-size:var(--text-caption);font-weight:var(--weight-bold);border-radius:3px;align-items:center;gap:4px;padding:0 7px;display:flex}.fleet-roster-controls{grid-column:1/-1;grid-template-columns:minmax(0,.78fr) minmax(0,.78fr) minmax(210px,1.44fr);align-items:end;gap:8px;margin-top:3px;display:grid}.fleet-roster-controls.is-single-yacht{grid-template-columns:minmax(120px,.75fr) minmax(220px,1.25fr)}.fleet-control-field{min-width:0;color:var(--ink-readable);font-size:var(--text-caption);font-weight:var(--weight-bold);letter-spacing:.06em;text-transform:uppercase;gap:6px;display:grid}.fleet-control-field select{border:1px solid var(--line);background:var(--paper-strong);width:100%;min-width:0;min-height:46px;color:var(--ink);font-size:var(--text-caption);font-weight:var(--weight-bold);letter-spacing:normal;text-transform:none;border-radius:5px;outline:0;padding:0 28px 0 10px}.fleet-control-field select:focus{border-color:var(--sea);box-shadow:0 0 0 3px #176b871f}.fleet-control-field select:disabled{cursor:wait;opacity:.55}.fleet-responsibility-controls{border:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;min-width:0;margin:0;padding:0;display:grid}.fleet-responsibility-controls legend{color:var(--ink-readable);font-size:var(--text-caption);font-weight:var(--weight-bold);letter-spacing:.06em;text-transform:uppercase;grid-column:1/-1;margin-bottom:6px}.fleet-responsibility-controls label{cursor:pointer;min-width:0;position:relative}.fleet-responsibility-controls input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.fleet-responsibility-controls label>span{border:1px solid var(--line);background:var(--paper-strong);min-height:46px;color:var(--ink-readable);font-size:var(--text-caption);font-weight:var(--weight-bold);border-radius:5px;justify-content:center;align-items:center;gap:6px;padding:0 8px;display:flex}.fleet-responsibility-controls input:checked+span{background:var(--sea-wash);color:var(--sea-deep);border-color:#9cc3c7;box-shadow:inset 0 0 0 1px #176b871f}.fleet-responsibility-controls input:focus-visible+span{outline-offset:2px;outline:3px solid #e9613561}.fleet-responsibility-controls input:disabled+span{cursor:wait;opacity:.55}.fleet-roster-note{border-top:1px solid var(--line);background:var(--sand);color:#54615d;font-size:var(--text-caption);margin:0;padding:14px 16px;line-height:1.5}.crew-page-heading{align-items:center;margin-top:14px;margin-bottom:12px}.crew-page-heading>span:first-child{gap:3px}.crew-page-heading .fleet-page-summary{justify-content:flex-start;gap:12px;height:auto;min-height:0}.crew-page-heading .fleet-page-summary span{text-transform:none;border:0;align-items:baseline;gap:6px;padding:0;display:flex}.crew-page-heading .fleet-page-summary .is-attention{color:#95502f}.crew-page-heading .fleet-page-summary .is-pending{color:var(--sea-deep)}.crew-page-actions{align-items:center;gap:7px;display:flex}.crew-page-actions .crew-export-button,.crew-page-actions .fleet-add-button{height:44px;min-height:44px}.crew-export-menu{position:relative}.crew-export-button{background:var(--paper-strong);min-height:52px;color:var(--sea-deep);font-size:var(--text-caption);font-weight:var(--weight-bold);border:1px solid #9fc4c8;border-radius:7px;justify-content:center;align-items:center;gap:7px;padding:0 15px;text-decoration:none;display:flex}.crew-export-button:hover{background:var(--sea-wash)}.crew-export-button:focus-visible{outline-offset:2px;outline:3px solid #e9613561}.crew-export-caret{place-items:center;margin-left:2px;font-style:normal;display:grid}.crew-export-options{z-index:30;width:362px;max-height:min(520px, calc(100vh - var(--app-header-height) - 24px));border:1px solid var(--line);background:var(--paper-strong);border-radius:8px;padding:5px;display:grid;position:absolute;top:calc(100% + 7px);right:0;overflow-y:auto;box-shadow:0 14px 34px #102b3a29}.crew-export-heading{color:var(--ink-readable);justify-content:space-between;align-items:baseline;gap:12px;padding:7px 9px 6px;display:flex}.crew-export-heading strong{color:var(--ink)}.crew-export-heading span{font-size:var(--text-caption);font-weight:var(--weight-medium)}.crew-export-option{grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:58px;padding:7px 9px;display:grid}.crew-export-option+.crew-export-option{border-top:1px solid var(--line)}.crew-export-option>i{background:var(--sea-wash);width:34px;height:34px;color:var(--yacht-color,var(--sea-deep));border-radius:5px;place-items:center;font-style:normal;display:grid}.crew-export-scope{gap:2px;min-width:0;display:grid}.crew-export-scope strong,.crew-export-scope small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.crew-export-scope strong{font-size:var(--text-caption)}.crew-export-scope small{color:var(--ink-readable);font-size:var(--text-caption);font-weight:var(--weight-medium)}.crew-export-formats{gap:4px;display:flex}.crew-export-formats a{border:1px solid var(--line);min-width:46px;min-height:42px;color:var(--sea-deep);font-size:var(--text-caption);font-weight:var(--weight-bold);border-radius:5px;place-items:center;padding:0 9px;text-decoration:none;transition:background .14s,border-color .14s;display:grid}.crew-export-formats a.is-primary{background:var(--sea-wash);border-color:#9fc4c8}.crew-export-formats a:hover{background:#176b8714;border-color:#9fc4c8}.crew-export-formats a:focus-visible{outline-offset:1px;outline:2px solid #e961357a}.crew-add-menu{position:relative}.crew-add-scrim{z-index:29;cursor:default;background:0 0;border:0;border-radius:0;outline:0;width:100%;height:100%;padding:0;position:fixed;inset:0}.crew-add-options{z-index:30;border:1px solid var(--line);background:var(--paper-strong);border-radius:8px;width:292px;padding:5px;display:grid;position:absolute;top:calc(100% + 7px);right:0;overflow:hidden;box-shadow:0 14px 34px #102b3a29}.crew-add-options button{min-height:58px;color:var(--ink);text-align:left;background:0 0;border-radius:0;grid-template-columns:36px minmax(0,1fr);align-items:center;gap:10px;padding:7px 9px;transition:background .14s;display:grid}.crew-add-options button+button{border-top:1px solid var(--line)}.crew-add-options button:hover{color:var(--ink);background:#176b870e}.crew-add-options button:focus-visible{outline-offset:-2px;background:#176b8709;outline:2px solid #e961357a}.crew-add-options button:hover>i{background:#176b8724}.crew-add-options button>i{background:var(--sea-wash);width:34px;height:34px;color:var(--sea-deep);border-radius:5px;place-items:center;font-style:normal;display:grid}.crew-add-options button>span{gap:2px;display:grid}.crew-add-options strong{font-size:var(--text-caption);line-height:1.25}.crew-add-options small{color:var(--ink-readable);font-size:var(--text-caption);font-weight:var(--weight-medium);letter-spacing:normal;text-transform:none;line-height:1.35}.crew-directory .fleet-roster-filter a{border:1px solid var(--line);background:var(--paper-strong);min-height:38px;color:var(--ink-readable);font-size:var(--text-caption);font-weight:var(--weight-bold);border-radius:5px;flex:none;align-items:center;gap:6px;padding:0 10px;text-decoration:none;display:flex}.crew-directory .fleet-roster-filter a.is-active{border-color:var(--sea-deep);background:var(--sea-deep);color:#fff}.crew-directory .fleet-roster-filter a span{background:var(--sand);min-width:22px;height:22px;color:inherit;font-size:var(--text-caption);border-radius:4px;place-items:center;padding:0 5px;display:grid}.crew-directory .fleet-roster-filter a.is-active span{background:#ffffff29}.crew-pending-invitations{border-bottom:1px solid var(--line);background:#e7f2f180;display:grid}.crew-pending-invitations>summary{cursor:pointer;align-items:center;gap:8px;min-height:48px;padding:8px 14px;list-style:none;display:flex}.crew-pending-invitations>summary::-webkit-details-marker{display:none}.crew-pending-invitations[open]>summary{border-bottom:1px solid var(--line)}.crew-pending-invitations[open]>summary>svg{rotate:90deg}.crew-pending-invitations>summary strong{color:var(--sea-deep);font-size:var(--text-label);flex:1}.crew-pending-invitations>summary em{background:var(--sea-wash);color:var(--sea-deep);font-size:var(--text-caption);font-style:normal;font-weight:var(--weight-bold);white-space:nowrap;border-radius:4px;padding:4px 7px}.crew-pending-invitations>div{display:grid}.crew-pending-row{min-height:62px;color:var(--ink-readable);font-size:var(--text-caption);border-bottom:1px solid #a0bebe6b;grid-template-columns:minmax(220px,1.45fr) minmax(110px,.72fr) minmax(110px,.66fr) minmax(120px,.72fr) minmax(140px,.9fr);align-items:center;gap:14px;padding:7px 50px 7px 14px;display:grid}.crew-pending-row:last-child{border-bottom:0}.crew-pending-row>span:not(.crew-pending-person){text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.crew-pending-person{grid-template-columns:38px minmax(0,1fr);align-items:center;gap:10px;min-width:0;display:grid}.crew-pending-person>span{gap:2px;min-width:0;display:grid}.crew-pending-person strong,.crew-pending-person small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.crew-pending-person strong{color:var(--ink);font-family:var(--display);font-size:var(--text-body)}.crew-pending-person small{color:var(--ink-readable);font-size:var(--text-caption)}.crew-pending-row .crew-invite-status{color:var(--sea-deep);font-weight:var(--weight-bold);align-items:center;gap:5px;display:inline-flex}.crew-directory-header,.crew-directory-row{grid-template-columns:var(--crew-directory-columns,minmax(220px, 1.45fr) minmax(110px, .72fr) minmax(110px, .66fr) minmax(120px, .72fr) minmax(140px, .9fr) 22px);align-items:center;gap:14px;display:grid}.crew-directory.is-completed{--crew-directory-columns:minmax(220px, 1.45fr) minmax(110px, .72fr) minmax(110px, .66fr) minmax(140px, .9fr) 22px}.crew-directory-header{border-bottom:1px solid var(--line);min-height:40px;color:var(--ink-readable);font-size:var(--text-caption);font-weight:var(--weight-bold);letter-spacing:.08em;text-transform:uppercase;background:#fffefab8;padding:0 14px}.crew-readiness-column-heading{align-items:center;gap:5px;display:flex;overflow:visible}.crew-readiness-filter{width:30px;height:30px;color:var(--ink-readable);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:5px;place-items:center;margin-block:-4px;padding:0;display:grid;position:relative}.crew-readiness-filter:before{content:"";position:absolute;inset:-6px}.crew-readiness-filter:hover{color:#934526;background:#fff3e9;border-color:#d9b9a6}.crew-readiness-filter.is-active{color:#843d20;background:#f9dfcf;border-color:#d39a79;box-shadow:inset 0 0 0 1px #93452614}.crew-readiness-filter:focus-visible{outline-offset:1px;outline:3px solid #e9613561}.crew-directory-list{display:grid}.crew-directory-row{border-bottom:1px solid var(--line);min-height:70px;color:var(--ink-readable);font-size:var(--text-caption);padding:9px 14px;text-decoration:none}.crew-directory-row:last-child{border-bottom:0}.crew-directory-row:hover{background:var(--sea-wash);color:var(--ink)}.crew-directory-row>svg{color:var(--sea-deep)}.crew-directory-row>span:not(.crew-directory-person){text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.crew-directory-person{grid-template-columns:38px minmax(0,1fr);align-items:center;gap:10px;min-width:0;display:grid}.crew-directory-person>span{gap:2px;min-width:0;display:grid}.crew-directory-person strong,.crew-directory-person small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.crew-directory-person strong{color:var(--ink);font-family:var(--display);font-size:var(--text-body)}.crew-directory-person small{color:var(--ink-readable);font-size:var(--text-caption)}.crew-directory-mobile-meta{display:none}.crew-directory-row .is-ready,.crew-member-facts .is-ready{color:#3f7a58;font-weight:var(--weight-bold)}.crew-directory-row .is-attention,.crew-member-facts .is-attention{color:#9b542f;font-weight:var(--weight-bold)}.crew-directory-row .crew-readiness-badge{min-height:28px;font-size:var(--text-caption);font-weight:var(--weight-bold);justify-self:start;align-items:center;gap:5px;display:inline-flex}.crew-directory-row .crew-readiness-badge.is-ready{color:#367451}.crew-directory-row .crew-readiness-badge.is-attention{color:#934526}.crew-readiness-badge .icon{stroke-width:2.2px;flex:none}.crew-member-page{align-content:start;gap:12px;display:grid}.crew-member-topline,.crew-member-hero,.crew-member-layout,.crew-member-danger-footer{width:100%;max-width:1120px;margin-inline:auto}.crew-member-topline{justify-content:space-between;align-items:center;min-height:42px;display:flex}.crew-member-topline a{min-height:42px;color:var(--sea-deep);font-size:var(--text-caption);font-weight:var(--weight-bold);align-items:center;gap:5px;padding:0 8px;text-decoration:none;display:flex}.crew-member-topline nav{grid-template-columns:repeat(2,minmax(76px,auto));gap:3px;display:grid}.crew-member-topline nav a{border:1px solid var(--line);background:var(--paper-strong);border-radius:6px;justify-content:center}.crew-member-topline .is-back{display:inline-flex;rotate:180deg}.crew-member-hero{border:1px solid var(--line);background:var(--paper-strong);border-radius:9px;grid-template-columns:58px minmax(0,1fr) auto;align-items:center;gap:14px;padding:18px;display:grid;box-shadow:0 8px 24px #102b3a0f}.crew-member-hero>.fleet-roster-avatar{width:54px;height:54px;font-size:15px}.crew-member-hero>span:nth-child(2){gap:2px;display:grid}.crew-member-hero small,.crew-member-card header small{color:var(--sea);font-size:var(--text-caption);font-weight:var(--weight-bold);letter-spacing:.11em;text-transform:uppercase}.crew-member-hero h1{font-size:var(--text-title)}.crew-member-hero p{color:var(--ink-readable);font-size:var(--text-body);margin:0}.crew-member-statuses{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:5px;display:flex}.crew-member-statuses span{background:var(--sand);min-height:28px;color:var(--ink-readable);font-size:var(--text-caption);font-weight:var(--weight-bold);text-align:center;border-radius:4px;justify-content:center;align-items:center;padding:0 9px;line-height:1;display:inline-flex}.crew-member-statuses span.is-ready{color:#3e7655;background:#e8f3ea}.crew-member-statuses span.is-attention{background:var(--coral-soft);color:#9b442a}.crew-member-layout{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.crew-member-card{border:1px solid var(--line);background:#f7f6f1f5;border-radius:9px;min-width:0;overflow:hidden;box-shadow:0 8px 24px #102b3a0d}.crew-member-card.is-wide{grid-column:1/-1}.crew-member-card>header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;min-height:60px;padding:10px 14px;display:flex}.crew-member-card>header>span{gap:2px;display:grid}.crew-member-card h2{font-family:var(--display);font-size:var(--text-section);margin:0}.crew-member-card>header>button{background:var(--paper-strong);min-height:40px;color:var(--sea-deep);font-size:var(--text-caption);font-weight:var(--weight-bold);border:1px solid #a8c8cc;border-radius:5px;align-items:center;gap:5px;padding:0 10px;display:flex}.crew-member-card>header>button.is-active{background:var(--sea-wash)}.crew-member-facts{margin:0;padding:3px 14px;display:grid}.crew-member-facts>div{border-bottom:1px solid var(--line);grid-template-columns:minmax(110px,.65fr) minmax(0,1fr);gap:12px;min-height:48px;padding:10px 0;display:grid}.crew-member-facts>div:last-child{border-bottom:0}.crew-member-facts dt{color:var(--ink-readable);font-size:var(--text-caption)}.crew-member-facts dd{color:var(--ink);font-size:var(--text-caption);font-weight:var(--weight-bold);text-align:right;margin:0}.crew-member-assignment-form{grid-template-columns:repeat(2,minmax(0,1fr));align-items:end;gap:10px;padding:14px;display:grid}.crew-member-assignment-form .fleet-responsibility-controls{grid-column:1/-1}.crew-member-card>.managed-sailor-name,.crew-member-card>.crew-account-access,.crew-member-card>.crew-documents{border-top:1px solid var(--line);background:var(--paper-strong)}.crew-member-card>:is(.managed-sailor-name,.crew-account-access)+.crew-documents{border-top:1px solid var(--line)}.crew-member-card>.crew-documents{gap:0}.crew-member-card>.crew-documents .crew-documents-toggle{border:0;border-radius:0;min-height:58px;padding:8px 14px}.crew-member-card>.crew-documents .crew-documents-form{margin:0 12px 12px}.crew-member-card>.crew-documents .crew-documents-fields{grid-template-columns:repeat(2,minmax(0,1fr));max-width:820px}.crew-member-account-link{background:var(--sea-wash);min-height:46px;color:var(--sea-deep);font-size:var(--text-caption);font-weight:var(--weight-bold);border-radius:6px;justify-content:space-between;align-items:center;margin:0 14px 14px;padding:0 12px;text-decoration:none;display:flex}.crew-member-card>.guest-controls{border-top:0;margin:0;padding:14px}.crew-member-card.is-danger-zone>.guest-remove-button{min-height:44px;margin:14px}.crew-member-card.is-danger-zone>.guest-remove{margin:14px}.crew-account-access{display:grid}.crew-account-access-toggle{width:100%;min-height:58px;color:var(--ink);text-align:left;background:0 0;justify-content:space-between;align-items:center;gap:14px;padding:8px 14px;display:flex}.crew-account-access-toggle:hover,.crew-member-card>.crew-documents .crew-documents-toggle:hover{background:#e3eef07a}.crew-account-access-toggle>span:first-child,.crew-documents-title{gap:2px;min-width:0;display:grid}.crew-account-access-toggle strong,.crew-documents-title strong{font-size:var(--text-caption);font-weight:var(--weight-bold)}.crew-account-access-toggle small,.crew-documents-title small{color:var(--ink-readable);font-size:var(--text-caption);font-weight:var(--weight-semibold);text-overflow:ellipsis;white-space:nowrap;line-height:1.35;overflow:hidden}.crew-account-access-toggle>span:last-child,.crew-documents-state{color:var(--sea-deep);font-size:var(--text-caption);font-weight:var(--weight-bold);flex:none;align-items:center;gap:8px;display:flex}.crew-account-access-toggle em{background:var(--sand);min-height:20px;color:var(--ink-readable);font-size:var(--text-caption);font-style:normal;font-weight:var(--weight-bold);border:1px solid #d8d4c5;border-radius:3px;align-items:center;padding:0 7px;display:inline-flex}.crew-account-access-toggle em.is-pending{background:var(--sea-wash);color:var(--sea-deep);border-color:#a7c8cd}.crew-account-access-chevron{border-bottom:2px solid;border-right:2px solid;width:8px;height:8px;margin:0 3px 3px 1px;transition:rotate .16s,margin .16s;rotate:45deg}.crew-account-access-chevron.is-open{margin-block:3px 0;rotate:225deg}.crew-account-access-panel{background:var(--sea-wash);border:0;border-top:1px solid #bad1d5;border-radius:0;gap:9px;margin:0;padding:13px 14px 14px;display:grid}.crew-account-invite{gap:8px;max-width:820px;display:grid}.crew-account-invite label{color:var(--ink-readable);font-size:var(--text-caption);font-weight:var(--weight-bold);gap:5px;display:grid}.crew-account-invite label span small{color:var(--ink-soft);font-size:var(--text-caption);font-weight:var(--weight-bold);letter-spacing:.06em;text-transform:uppercase;margin-left:4px}.crew-account-invite input{background:var(--paper-strong);width:100%;min-width:0;height:44px;color:var(--ink);font-size:var(--text-input);font-weight:var(--weight-medium);border:1px solid #b8ced2;border-radius:6px;outline:0;padding:0 10px}.crew-account-invite input:focus{border-color:var(--sea);box-shadow:0 0 0 3px #176b871f}.crew-account-invite>p{color:var(--ink-readable);font-size:var(--text-caption);margin:0;line-height:1.45}.crew-account-pending{gap:9px;max-width:820px;display:grid}.crew-account-pending-heading{gap:3px;min-width:0;display:grid}.crew-account-pending-heading strong{font-size:var(--text-caption)}.crew-account-pending-heading small{color:var(--ink-readable);font-size:var(--text-caption);line-height:1.45}.crew-account-link-control{grid-template-columns:minmax(0,1fr) auto;gap:6px;display:grid}.crew-account-link-control input{background:var(--paper-strong);width:100%;min-width:0;height:42px;color:var(--ink);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:var(--text-caption);border:1px solid #a8c8cc;border-radius:6px;outline:0;padding:0 10px}.crew-account-link-control input:focus{border-color:var(--sea);box-shadow:0 0 0 3px #176b871f}.crew-account-link-control button,.crew-account-secondary-actions button,.crew-account-confirmation button{background:var(--paper-strong);min-height:42px;color:var(--sea-deep);font-size:var(--text-caption);font-weight:var(--weight-bold);border:1px solid #a8c8cc;border-radius:6px;padding:0 12px}.crew-account-link-meta{color:var(--ink-readable);font-size:var(--text-caption);margin:-2px 0 0;line-height:1.4}.crew-account-secondary-actions{justify-content:flex-end;gap:6px;padding-top:2px;display:flex}.crew-account-secondary-actions button{background:0 0;min-height:36px}.crew-account-secondary-actions button.is-danger,.crew-account-confirmation button.is-danger{color:#93452f;border-color:#dfb6a8}.crew-account-confirmation{border-left:3px solid var(--route);background:var(--coral-soft);justify-content:space-between;align-items:center;gap:12px;padding:9px 10px;display:flex}.crew-account-confirmation p{color:#81412e;font-size:var(--text-caption);font-weight:var(--weight-bold);margin:0;line-height:1.4}.crew-account-confirmation>div{flex:none;gap:6px;display:flex}.crew-account-confirmation button{min-height:38px}.crew-account-confirmation button.is-primary{border-color:var(--ink);background:var(--ink);color:#fff}.crew-account-feedback{color:#93452f;font-size:var(--text-caption);font-weight:var(--weight-bold);background:#fff0ea;border-left:3px solid #c35a3b;margin:0;padding:7px 9px;line-height:1.4}.managed-sailor-name{display:grid}.managed-sailor-name-summary{justify-content:space-between;align-items:center;gap:12px;min-height:58px;padding:8px 14px;display:flex}.managed-sailor-name-summary>span{gap:2px;min-width:0;display:grid}.managed-sailor-name-summary strong,.managed-sailor-name-form label>span{color:var(--ink);font-size:var(--text-caption);font-weight:var(--weight-bold)}.managed-sailor-name-summary small{color:var(--ink-readable);font-size:var(--text-caption);font-weight:var(--weight-semibold);text-overflow:ellipsis;white-space:nowrap;line-height:1.35;overflow:hidden}.managed-sailor-name-summary button,.managed-sailor-name-actions button{background:var(--paper-strong);min-height:42px;color:var(--sea-deep);font-size:var(--text-caption);font-weight:var(--weight-bold);border:1px solid #a8c8cc;border-radius:6px;padding:0 12px}.managed-sailor-name-form{background:var(--sea-wash);grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:9px;padding:13px 14px 14px;display:grid}.managed-sailor-name-form label{gap:5px;min-width:0;display:grid}.managed-sailor-name-form input{background:var(--paper-strong);width:100%;min-width:0;height:44px;color:var(--ink);font-size:var(--text-input);font-weight:var(--weight-medium);border:1px solid #b8ced2;border-radius:6px;outline:0;padding:0 10px}.managed-sailor-name-form input:focus{border-color:var(--sea);box-shadow:0 0 0 3px #176b871f}.managed-sailor-name-actions{gap:6px;display:flex}.managed-sailor-name-actions button.is-primary{border-color:var(--ink);background:var(--ink);color:#fff}.managed-sailor-name-form>.crew-account-feedback{grid-column:1/-1}.crew-member-danger-footer{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:14px;min-height:58px;padding:8px 4px;display:flex}.crew-member-danger-footer>span{gap:2px;min-width:0;display:grid}.crew-member-danger-footer>span strong{color:var(--ink-readable);font-size:var(--text-caption);letter-spacing:.08em;text-transform:uppercase}.crew-member-danger-footer>span small{color:var(--ink-soft);font-size:var(--text-caption);line-height:1.4}.crew-member-danger-footer>.guest-remove-button{color:#8b5545;flex:none;min-height:42px}.crew-member-danger-footer>.guest-remove{flex:auto;max-width:580px}.guest-badge{background:var(--sand);color:#6d6753;min-height:22px;font-size:var(--text-caption);font-weight:var(--weight-bold);border:1px dashed #c9c3ae;border-radius:3px;align-items:center;padding:0 7px;display:inline-flex}.guest-badge.is-invited{background:var(--sea-wash);color:var(--sea-deep);border-style:solid;border-color:#a7c8cd}.guest-add-form{background:var(--sea-wash);border:1px solid #bad1d5;border-radius:8px;gap:10px;margin:10px 12px 4px;padding:13px;display:grid}.guest-add-heading{gap:2px;display:grid}.guest-add-heading strong{font-family:var(--display);font-size:15px}.guest-add-heading small{color:var(--ink-readable);font-size:var(--text-caption);line-height:1.45}.guest-add-fields{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:8px;display:grid}.guest-add-fields label{min-width:0;color:var(--ink-readable);font-size:var(--text-caption);font-weight:var(--weight-bold);gap:5px;display:grid}.guest-add-fields input,.guest-add-fields select{background:var(--paper-strong);width:100%;min-width:0;min-height:44px;color:var(--ink);font-size:var(--text-input);font-weight:var(--weight-medium);border:1px solid #b8ced2;border-radius:6px;outline:0;padding:0 10px}.guest-add-fields select{padding-right:26px}.guest-add-fields input:focus,.guest-add-fields select:focus{border-color:var(--sea);box-shadow:0 0 0 3px #176b871f}.crew-kitty-impact{border-left:3px solid var(--coral);color:var(--ink-readable);font-size:var(--text-caption);background:#e9613514;border-radius:4px;grid-template-columns:auto minmax(0,1fr);gap:7px;margin:0;padding:9px 10px;line-height:1.45;display:grid}.crew-kitty-impact strong{color:#9b442a;white-space:nowrap}.guest-add-matches{gap:5px;padding-top:2px;display:grid}.guest-add-matches>small{color:var(--sea-deep);font-size:var(--text-caption);font-weight:var(--weight-bold);letter-spacing:.07em;text-transform:uppercase}.guest-add-matches>button{min-height:50px;color:var(--ink);text-align:left;background:#fffefac7;border:1px solid #a9c6ca;border-radius:6px;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:8px;padding:5px 8px;display:grid}.guest-add-matches>button:hover{border-color:var(--sea);background:var(--paper-strong)}.guest-add-matches>button>span:nth-child(2),.guest-add-selected>span{gap:2px;min-width:0;display:grid}.guest-add-matches strong{font-size:var(--text-caption)}.guest-add-matches small,.guest-add-selected small{color:var(--ink-soft);font-size:var(--text-caption);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.guest-add-matches b{color:var(--sea-deep);font-size:var(--text-caption)}.guest-add-selected{border:1px solid var(--sea);background:var(--paper-strong);border-radius:6px;justify-content:space-between;align-items:center;gap:10px;min-height:50px;padding:6px 9px;display:flex}.guest-add-selected strong{font-size:var(--text-caption)}.guest-add-selected button{min-height:38px;color:var(--sea-deep);font-size:var(--text-caption);font-weight:var(--weight-bold);padding:0 10px}.guest-add-distinct{color:#7e4b34;min-height:36px;font-size:var(--text-caption);font-weight:var(--weight-bold);align-items:center;gap:7px;display:flex}.guest-add-distinct input{width:17px;height:17px;accent-color:var(--route)}.guest-add-actions{justify-content:flex-end;gap:6px;display:flex}.guest-add-actions button{min-height:42px;color:var(--ink-soft);font-size:var(--text-caption);font-weight:var(--weight-bold);background:#ffffffa6;border-radius:6px;padding:0 13px}.guest-add-actions button.is-primary{background:var(--ink);color:#fff}.guest-add-actions button:disabled{cursor:not-allowed;opacity:.55}.crew-reuse,.yacht-reuse{background:var(--sea-wash);border:1px solid #bad1d5;border-radius:8px;gap:10px;margin:10px 12px 4px;padding:13px;display:grid}.crew-reuse-list,.yacht-reuse-list{gap:5px;display:grid}.crew-reuse-row{border:1px solid #0000;border-radius:6px;grid-template-columns:minmax(210px,1.3fr) repeat(2,minmax(130px,.7fr));align-items:center;gap:7px;min-height:54px;padding:5px 7px;display:grid}.crew-reuse-row.is-single-yacht{grid-template-columns:minmax(210px,1.3fr) minmax(160px,.7fr)}.crew-reuse-row.is-selected{background:#fffefab8;border-color:#9fc7cc}.crew-reuse-person{cursor:pointer;grid-template-columns:18px 34px minmax(0,1fr);align-items:center;gap:8px;min-width:0;min-height:42px;display:grid}.crew-reuse-person input{width:17px;height:17px;accent-color:var(--sea)}.crew-reuse-person>span:last-child,.yacht-reuse-list button>span{text-align:left;gap:2px;min-width:0;display:grid}.crew-reuse-person strong,.yacht-reuse-list strong{font-size:var(--text-caption);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.crew-reuse-person small,.yacht-reuse-list small{color:var(--ink-soft);font-size:var(--text-caption);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.crew-reuse-row select{background:var(--paper-strong);width:100%;min-width:0;min-height:42px;color:var(--ink);font-size:var(--text-caption);border:1px solid #b8ced2;border-radius:5px;padding:0 24px 0 9px}.crew-reuse-row select:disabled{opacity:.52}.crew-reuse-outcome{color:var(--ink-readable);font-size:var(--text-caption);margin:0;line-height:1.4}.yacht-reuse-list button{min-height:52px;color:var(--ink);background:#fffefab8;border:1px solid #bed0d2;border-radius:6px;justify-content:space-between;align-items:center;gap:12px;padding:7px 10px;display:flex}.yacht-reuse-list button:hover:not(:disabled){border-color:var(--sea);background:var(--paper-strong)}.yacht-reuse-list button:disabled{cursor:wait;opacity:.6}.yacht-reuse-list em{background:var(--sea-wash);color:var(--sea-deep);font-size:var(--text-caption);font-style:normal;font-weight:var(--weight-bold);letter-spacing:.06em;text-transform:uppercase;border-radius:99px;flex:none;padding:4px 7px}.fleet-save-contact{min-height:42px;color:var(--sea-deep);font-size:var(--text-caption);font-weight:var(--weight-bold);background:0 0;border:1px solid #bad1d5;border-radius:5px;padding:0 10px}.fleet-save-contact[aria-pressed=true]{color:#6b5b20;background:#f7f0d8;border-color:#d3c592}.crew-import{background:var(--sea-wash);border:1px solid #9fc7cc;border-radius:8px;gap:11px;margin:10px 12px 4px;padding:13px;display:grid}.crew-import-source{color:var(--ink-readable);font-size:var(--text-caption);font-weight:var(--weight-bold);gap:5px;display:grid}.crew-import-source textarea{background:var(--paper-strong);width:100%;min-height:150px;color:var(--ink);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:var(--text-body);resize:vertical;border:1px solid #b8ced2;border-radius:6px;outline:0;padding:10px 11px;line-height:1.5}.crew-import-source textarea:focus{border-color:var(--sea);box-shadow:0 0 0 3px #176b871f}.crew-import-privacy{color:var(--ink-readable);font-size:var(--text-caption);margin:0;line-height:1.45}.crew-import-review-heading{justify-content:space-between;align-items:end;gap:12px;display:flex}.crew-import-review-heading>span{gap:2px;display:grid}.crew-import-review-heading small{color:var(--sea);font-size:var(--text-caption);font-weight:var(--weight-bold);letter-spacing:.09em;text-transform:uppercase}.crew-import-review-heading strong{font-family:var(--display);font-size:var(--text-input)}.crew-import-review-heading>button{background:var(--paper-strong);min-height:38px;color:var(--sea-deep);font-size:var(--text-caption);font-weight:var(--weight-bold);border-radius:5px;padding:0 10px}.crew-import-warnings{border-left:3px solid var(--route);color:#75542e;font-size:var(--text-caption);background:#fff6e8;gap:3px;margin:0;padding:8px 10px 8px 25px;line-height:1.4;display:grid}.crew-import-rows{overscroll-behavior:contain;gap:7px;max-height:min(620px,64dvh);display:grid;overflow:auto}.crew-import-row{background:var(--paper-strong);border:1px solid #bed0d2;border-radius:7px;grid-template-columns:auto minmax(0,1fr);gap:8px 10px;padding:10px;display:grid}.crew-import-row.is-selected{border-color:var(--sea);box-shadow:inset 3px 0 0 var(--sea)}.crew-import-row.is-existing{opacity:.62}.crew-import-select{min-height:44px;color:var(--sea-deep);font-size:var(--text-caption);font-weight:var(--weight-bold);align-self:start;align-items:center;gap:6px;display:flex}.crew-import-select input{width:17px;height:17px;accent-color:var(--sea);margin:0}.crew-import-main-fields{grid-template-columns:minmax(180px,1.4fr) repeat(2,minmax(145px,.8fr));gap:7px;display:grid}.crew-import-main-fields label,.crew-import-documents label{min-width:0;color:var(--ink-readable);font-size:var(--text-caption);font-weight:var(--weight-bold);letter-spacing:.04em;text-transform:uppercase;gap:4px;display:grid}.crew-import-main-fields input,.crew-import-main-fields select,.crew-import-documents input{border:1px solid var(--line);background:var(--paper);width:100%;min-width:0;min-height:42px;color:var(--ink);font-size:var(--text-caption);font-weight:var(--weight-semibold);letter-spacing:normal;text-transform:none;border-radius:5px;outline:0;padding:0 9px}.crew-import-main-fields input,.crew-import-main-fields select,.crew-import-documents input,.crew-import-documents .date-input-control{height:42px}.crew-import-main-fields input:focus,.crew-import-main-fields select:focus,.crew-import-documents input:focus{border-color:var(--sea);box-shadow:0 0 0 3px #176b871f}.crew-import-identity{background:var(--sea-wash);color:var(--ink-readable);font-size:var(--text-caption);font-weight:var(--weight-bold);letter-spacing:.04em;text-transform:uppercase;border:1px solid #b6ced1;border-radius:5px;grid-column:2;gap:4px;padding:7px 8px;display:grid}.crew-import-identity select{background:var(--paper-strong);width:100%;min-height:42px;color:var(--ink);font-size:var(--text-caption);font-weight:var(--weight-bold);letter-spacing:normal;text-transform:none;border:1px solid #a9c5c8;border-radius:5px;padding:0 28px 0 9px}.crew-import-identity small{color:var(--ink-soft);font-size:var(--text-caption);font-weight:var(--weight-semibold);letter-spacing:normal;text-transform:none;line-height:1.4}.crew-import-responsibilities{flex-wrap:wrap;grid-column:2;gap:6px;display:flex}.crew-import-responsibilities label{background:var(--sea-wash);min-height:32px;color:var(--sea-deep);font-size:var(--text-caption);font-weight:var(--weight-bold);border-radius:4px;align-items:center;gap:5px;padding:0 8px;display:flex}.crew-import-responsibilities input{width:15px;height:15px;accent-color:var(--sea);margin:0}.crew-import-documents{border-top:1px dashed var(--line);grid-column:2}.crew-import-documents summary{min-height:36px;color:var(--ink-readable);cursor:pointer;font-size:var(--text-caption);font-weight:var(--weight-bold);justify-content:space-between;align-items:center;display:flex}.crew-import-documents summary span{color:var(--ink-soft);font-weight:var(--weight-bold)}.crew-import-documents>div{grid-template-columns:repeat(4,minmax(120px,1fr));gap:7px;padding:3px 0 8px;display:grid}.crew-import-note{border-left:3px solid var(--route);color:#75542e;font-size:var(--text-caption);background:#fff6e8;grid-column:2;margin:0;padding:7px 9px;line-height:1.4}.crew-import-actions{justify-content:space-between;align-items:center;gap:10px;display:flex}.crew-import-actions>span{color:var(--ink-readable);font-size:var(--text-caption);font-weight:var(--weight-bold)}.crew-import-actions>div{gap:6px;display:flex}.crew-import-actions button{min-height:42px;color:var(--ink-soft);font-size:var(--text-caption);font-weight:var(--weight-bold);background:#ffffffb3;border-radius:6px;padding:0 13px}.crew-import-actions button.is-primary{background:var(--ink);color:#fff}.crew-import-actions button:disabled{cursor:not-allowed;opacity:.55}.guest-controls{border-top:1px dashed #b5c6c9;grid-column:1/-1;gap:8px;margin-top:4px;padding-top:10px;display:grid}.guest-invite{gap:6px;display:grid}.guest-invite-label{color:var(--ink-readable);font-size:var(--text-caption);font-weight:var(--weight-bold)}.guest-invite>div{grid-template-columns:minmax(0,1fr) auto;gap:6px;display:grid}.guest-invite input{background:var(--paper-strong);width:100%;min-width:0;min-height:44px;font-size:var(--text-input);font-weight:var(--weight-medium);border:1px solid #b8ced2;border-radius:6px;outline:0;padding:0 11px}.guest-invite input:focus{border-color:var(--sea);box-shadow:0 0 0 3px #176b871f}.guest-invite button{background:var(--sea-deep);color:#fff;min-height:44px;font-size:var(--text-caption);font-weight:var(--weight-bold);border-radius:6px;padding:0 13px}.guest-invite button:disabled{cursor:wait;opacity:.55}.guest-pending{background:var(--paper-strong);border:1px solid #a7c8cd;border-radius:7px;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;display:flex}.guest-pending>span{gap:2px;min-width:0;display:grid}.guest-pending strong{font-size:var(--text-caption);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.guest-pending small{color:var(--ink-readable);font-size:var(--text-caption);line-height:1.4}.guest-pending button{border:1px solid var(--line);background:var(--paper);min-height:38px;color:var(--sea-deep);font-size:var(--text-caption);font-weight:var(--weight-bold);border-radius:5px;flex:none;padding:0 11px}.guest-remove-button{min-height:34px;color:var(--ink-soft);font-size:var(--text-caption);font-weight:var(--weight-bold);background:0 0;border-radius:5px;justify-self:start;align-items:center;gap:5px;padding:0 9px;display:flex}.guest-remove-button:hover:not(:disabled){background:var(--coral-soft);color:#9b442a}.guest-remove{background:var(--coral-soft);border:1px solid #f1cabb;border-radius:7px;justify-content:space-between;align-items:center;gap:10px;padding:9px 11px;display:flex}.guest-remove>span:first-child{color:#8f3d22;font-size:var(--text-caption);font-weight:var(--weight-bold)}.guest-remove>span:last-child{gap:5px;display:flex}.guest-remove button{background:var(--paper-strong);min-height:36px;color:var(--ink-soft);font-size:var(--text-caption);font-weight:var(--weight-bold);border-radius:5px;padding:0 11px}.guest-remove button.is-danger{background:var(--danger);color:#fff}.docs-badge{color:#8a5f22;min-height:22px;font-size:var(--text-caption);font-weight:var(--weight-bold);background:#faf3e4;border:1px solid #e3cba4;border-radius:3px;align-items:center;padding:0 7px;display:inline-flex}.docs-badge.is-complete{color:#2e6a3c;background:#edf6ee;border-color:#b3d3ba}.crew-documents{grid-column:1/-1;gap:8px;display:grid}.fleet-roster-row>.crew-documents{border-top:1px dashed #b5c6c9;margin-top:4px;padding-top:10px}.crew-documents-toggle{border:1px solid var(--line);background:var(--paper-strong);min-height:40px;color:var(--ink);font-size:var(--text-caption);font-weight:var(--weight-bold);text-align:left;border-radius:7px;justify-content:space-between;align-items:center;gap:10px;padding:0 11px;display:flex}.crew-documents-toggle:hover{border-color:#a7c8cd}.crew-documents-title{gap:1px;min-width:0;display:grid}.crew-documents-title small{color:var(--ink-readable);font-size:var(--text-caption);font-weight:var(--weight-semibold)}.crew-documents-state{color:var(--sea-deep);font-size:var(--text-caption);font-weight:var(--weight-bold);flex:none;align-items:center;gap:8px;display:flex}.crew-documents-toggle em{color:#8a5f22;min-height:20px;font-size:var(--text-caption);font-style:normal;font-weight:var(--weight-bold);background:#faf3e4;border:1px solid #e3cba4;border-radius:3px;align-items:center;padding:0 7px;display:inline-flex}.crew-documents-toggle em.is-complete{color:#2e6a3c;background:#edf6ee;border-color:#b3d3ba}.crew-documents-form{background:var(--sea-wash);border:1px solid #bad1d5;border-radius:7px;gap:9px;padding:12px;display:grid}.crew-documents-hint{color:var(--ink-readable);font-size:var(--text-caption);margin:0;line-height:1.5}.crew-documents-hint a{color:var(--sea-deep);font-weight:var(--weight-bold)}.crew-documents-fields{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:8px;display:grid}.crew-documents-fields label{min-width:0;color:var(--ink-readable);font-size:var(--text-caption);font-weight:var(--weight-bold);gap:5px;display:grid}.crew-documents-fields input{background:var(--paper-strong);width:100%;min-width:0;min-height:44px;color:var(--ink);font-size:var(--text-input);font-weight:var(--weight-medium);border:1px solid #b8ced2;border-radius:6px;outline:0;padding:0 10px}.crew-documents-fields input,.crew-documents-fields .date-input-control{height:44px}.crew-documents-fields input:focus{border-color:var(--sea);box-shadow:0 0 0 3px #176b871f}.crew-documents-list{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:9px;margin:0;display:grid}.crew-documents-list div{gap:2px;min-width:0;display:grid}.crew-documents-list dt{color:var(--ink-readable);font-size:var(--text-caption);font-weight:var(--weight-bold);letter-spacing:.07em;text-transform:uppercase}.crew-documents-list dd{font-size:var(--text-body);font-weight:var(--weight-semibold);text-overflow:ellipsis;white-space:nowrap;margin:0;overflow:hidden}.crew-export-teaser{background:var(--paper-strong);min-height:36px;color:var(--sea-deep);font-size:var(--text-caption);font-weight:var(--weight-bold);border:1px solid #9fc4c8;border-radius:6px;flex:none;align-items:center;gap:6px;margin-left:auto;padding:0 12px;text-decoration:none;display:inline-flex}.crew-export-teaser:hover{background:var(--sea-wash)}.fleet-section-heading .crew-export-teaser+.fleet-assignment-count{margin-left:0}.trip-form-shell{grid-template:var(--app-header-height) minmax(0, 1fr) / minmax(0, .8fr) minmax(600px, 1fr);background:var(--canvas);width:100%;height:100dvh;display:grid;overflow:hidden}.trip-form-topbar{z-index:3;height:var(--app-header-height);min-height:var(--app-header-height);background:#f7f6f1f7;border-bottom:1px solid #d5dcd9d1;grid-column:1/-1;justify-content:space-between;align-items:center;padding:0 24px;display:flex}.trip-form-brand{color:var(--ink);font-family:var(--display);font-size:19px;font-weight:var(--weight-bold);align-items:center;gap:9px;text-decoration:none;display:flex}.trip-form-back{min-height:44px;color:var(--sea-deep);font-size:var(--text-body);font-weight:var(--weight-bold);padding:13px 4px 0;text-decoration:none}.trip-form-story{background-color:var(--ink);color:#fffefa;background-image:linear-gradient(#e3eef00f 1px,#0000 1px),linear-gradient(90deg,#e3eef00f 1px,#0000 1px);background-size:30px 30px;flex-direction:column;justify-content:center;min-width:0;padding:clamp(46px,7vw,96px);display:flex;position:relative;overflow:hidden}.trip-form-story:after{content:"";border:1px solid #e3eef024;border-radius:50%;width:430px;height:430px;position:absolute;bottom:-150px;right:-120px;box-shadow:0 0 0 55px #e3eef006,0 0 0 110px #e3eef005}.trip-form-story .eyebrow{color:#a9d4d7;font-size:var(--text-caption)}.trip-form-story h1{max-width:650px;font-family:var(--display);font-size:clamp(40px,5vw,72px);font-weight:var(--weight-semibold);letter-spacing:-.045em;margin:15px 0 18px;line-height:.98}.trip-form-story p{color:#fffefad1;max-width:570px;margin:0;font-size:clamp(15px,1.35vw,18px);line-height:1.65}.trip-form-route{z-index:1;color:#fffefab3;width:min(100%,480px);font-size:var(--text-caption);font-weight:var(--weight-bold);letter-spacing:.1em;grid-template-columns:auto minmax(36px,80px) auto minmax(36px,80px) auto;align-items:center;gap:9px;margin-top:clamp(38px,7vh,80px);display:grid}.trip-form-route i{background:repeating-linear-gradient(90deg,#8fc6cbbf 0 5px,#0000 5px 9px);height:1px}.trip-form-panel{overscroll-behavior:contain;background:var(--paper);place-items:center;min-width:0;min-height:0;padding:clamp(24px,4vw,58px);display:grid;overflow:auto}.trip-form-card{gap:19px;width:min(100%,680px);display:grid}.trip-form-heading{gap:7px;margin-bottom:4px;display:grid}.trip-form-heading .eyebrow{font-size:var(--text-caption)}.trip-form-heading h2{font-family:var(--display);font-size:var(--text-title);letter-spacing:-.035em;margin:0}.trip-form-heading p{color:var(--ink-readable);margin:2px 0 0;font-size:15px;line-height:1.55}.trip-form-field{color:var(--ink);font-size:var(--text-body);font-weight:var(--weight-bold);gap:8px;display:grid}.trip-form-field>span{justify-content:space-between;align-items:baseline;display:flex}.trip-form-field>span small{color:var(--ink-readable);font-size:var(--text-caption);font-weight:var(--weight-bold);letter-spacing:.04em;text-transform:uppercase}.trip-form-field input,.trip-form-field select,.trip-form-field textarea,.trip-date-fields input{background:var(--paper-strong);width:100%;min-width:0;min-height:54px;color:var(--ink);font-size:var(--text-input);font-weight:var(--weight-semibold);border:1px solid #b8c5c3;border-radius:7px;outline:0;padding:0 15px}.trip-form-field textarea{resize:vertical;padding-block:12px;line-height:1.5}.trip-form-field input::placeholder{color:#60737a;opacity:1}.trip-form-field input:focus,.trip-form-field select:focus,.trip-form-field textarea:focus,.trip-date-fields input:focus{border-color:var(--sea);box-shadow:0 0 0 3px #176b871f}.trip-form-field .field-error,.trip-date-fields .field-error{color:#91391f;font-size:var(--text-caption);font-weight:var(--weight-bold);margin:-2px 0 0}.trip-form-field .field-note{color:var(--ink-soft);font-size:var(--text-caption);font-weight:var(--weight-semibold);margin:-2px 0 0;line-height:1.5}.trip-form-yacht-choice{gap:12px;display:grid}.trip-date-choice{border:0;gap:9px;min-width:0;margin:0;padding:0;display:grid}.trip-date-choice legend{color:var(--ink);font-size:var(--text-body);font-weight:var(--weight-bold);margin-bottom:8px}.trip-date-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.trip-date-options.is-four{grid-template-columns:repeat(4,minmax(0,1fr))}.trip-date-options button{background:var(--paper-strong);min-height:82px;color:var(--ink);text-align:left;border:1px solid #c6cfcc;border-radius:7px;gap:6px;padding:14px 15px;transition:border-color .18s,background .18s,color .18s,box-shadow .18s;display:grid}.trip-date-options button:hover{border-color:#aac5c8}.trip-date-options button.is-active{border-color:var(--sea);background:var(--sea-wash);color:var(--sea-deep);box-shadow:inset 0 0 0 1px #176b8738}.trip-date-options small{color:var(--ink-readable);font-size:var(--text-caption);line-height:1.45}.trip-date-reveal{opacity:0;grid-template-rows:0fr;transition:grid-template-rows .26s,opacity .2s;display:grid;overflow:hidden}.trip-date-reveal.is-open{opacity:1;grid-template-rows:1fr}.trip-date-reveal>.trip-date-fields{min-height:0}.trip-date-fields{background:#fffefab8;border:1px solid #c6cfcc;border-radius:7px;margin-top:3px;padding:15px}.historical-date-fields,.historical-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.historical-crew-picker{border:0;gap:9px;min-width:0;margin:0;padding:0;display:grid}.historical-crew-picker legend{font-size:var(--text-body);font-weight:var(--weight-bold);margin-bottom:2px}.historical-crew-picker legend small{color:var(--ink-readable);font-size:var(--text-caption);letter-spacing:.05em;text-transform:uppercase}.historical-crew-picker>p{color:var(--ink-readable);font-size:var(--text-caption);margin:-3px 0 0;line-height:1.45}.historical-crew-picker>div{border:1px solid var(--line);background:var(--paper-strong);border-radius:7px;grid-template-columns:repeat(2,minmax(0,1fr));display:grid;overflow:hidden}.historical-crew-picker label{border-bottom:1px solid var(--line);min-height:48px;font-size:var(--text-caption);align-items:center;gap:10px;padding:7px 11px;display:flex}.historical-crew-picker label:nth-child(odd){border-right:1px solid var(--line)}.historical-crew-picker label>span{gap:1px;min-width:0;display:grid}.historical-crew-picker label small{color:var(--ink-soft);font-size:var(--text-caption)}.date-range-picker{gap:14px;min-width:0;display:grid}.date-range-inputs{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;display:grid}.date-range-inputs label{min-width:0;color:var(--ink);font-size:var(--text-label);font-weight:var(--weight-semibold);gap:5px;display:grid}.date-range-inputs input{border:1px solid var(--line);border-radius:var(--control-radius);background:var(--paper-strong);width:100%;min-width:0;min-height:44px;color:var(--ink);font-size:var(--text-input);padding:8px 12px}.date-range-calendar{background:var(--paper-strong);border:1px solid #b9c8c7;border-radius:7px;overflow:hidden}.date-range-calendar[aria-disabled=true]{opacity:.55}.date-range-toolbar{background:var(--sea-wash);grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;min-height:50px;display:grid}.date-range-toolbar button{width:44px;height:44px;color:var(--sea-deep);font-size:20px;font-weight:var(--weight-bold);background:0 0;border:0;border-radius:0;place-items:center;display:grid}.date-range-toolbar button:hover:not(:disabled){background:#176b871a}.date-range-toolbar button:focus-visible{z-index:1;outline-offset:-3px;outline:3px solid #176b8747}.date-range-toolbar button:disabled{cursor:default}.date-range-jump{justify-content:center;align-items:center;gap:12px;min-width:0;padding:4px 8px;display:flex}.date-range-jump select{width:auto;min-width:0;height:40px;color:var(--sea-deep);font-size:var(--text-body);font-weight:var(--weight-bold);background-color:#0000;border:0;border-bottom:2px dotted #0e50688c;border-radius:0;outline:0;padding:0 22px 0 3px}.date-range-jump select:hover:not(:disabled){border-bottom-color:var(--sea-deep);background-color:#fffefa59}.date-range-jump select:focus{border-bottom-color:var(--sea);background-color:#fffefa7a;border-bottom-style:solid;box-shadow:0 2px #176b871f}.date-range-status{background:var(--sea-wash);min-height:31px;color:var(--sea-deep);font-size:var(--text-caption);font-weight:var(--weight-bold);text-align:center;border-bottom:1px solid #d4dcda;justify-content:center;align-items:center;margin:0;padding:5px 52px;line-height:1.35;display:flex}.date-range-months{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:14px;display:grid}.date-range-month{min-width:0}.date-range-month+.date-range-month{border-left:1px solid #e0e5e2;padding-left:14px}.date-range-month h3{color:var(--ink);font-family:var(--display);font-size:15px;font-weight:var(--weight-bold);text-align:center;margin:0 0 11px}.date-range-weekdays,.date-range-days{grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.date-range-weekdays{margin-bottom:4px}.date-range-weekdays span{color:var(--ink-soft);font-size:var(--text-caption);font-weight:var(--weight-bold);letter-spacing:.04em;text-align:center;text-transform:uppercase}.date-range-day,.date-range-day-empty{aspect-ratio:1;min-width:0}.date-range-day{color:var(--ink-readable);font-size:var(--text-caption);font-weight:var(--weight-bold);touch-action:manipulation;background:0 0;border:0;border-radius:0;place-items:center;display:grid;position:relative}.date-range-day:hover:not(:disabled):not(.is-in-range){background:var(--sea-wash);color:var(--sea-deep)}.date-range-day:focus-visible{z-index:2;outline:2px solid var(--sea);outline-offset:-2px}.date-range-day[aria-current=date]:not(.is-in-range){box-shadow:inset 0 0 0 1px var(--coral);color:var(--ink)}.date-range-day.is-in-range{color:var(--sea-deep);background:#dcebed}.date-range-day.is-preview{background:#e8f2f2}.date-range-day.is-start{background:var(--sea);color:#fff;border-radius:50% 0 0 50%}.date-range-day.is-end{background:var(--sea);color:#fff;border-radius:0 50% 50% 0}.date-range-day.is-start.is-end{border-radius:50%}.date-range-day:disabled{cursor:default}.trip-date-fields label{min-width:0;color:var(--ink-readable);font-size:var(--text-caption);font-weight:var(--weight-bold);gap:7px;display:grid}.trip-form-danger{border-top:1px dashed var(--line);margin-top:6px;padding-top:14px}.trip-form-delete{color:#9b442a;font-size:var(--text-caption);font-weight:var(--weight-bold);text-underline-offset:3px;background:0 0;border:0;padding:0;text-decoration:underline}.trip-form-delete:hover{color:#7d3319}.trip-form-danger-confirm{background:var(--coral-soft);border:1px solid #ecc4b3;border-radius:7px;gap:11px;padding:14px 15px;display:grid}.trip-form-danger-confirm p{color:#6d4033;font-size:var(--text-caption);margin:0;line-height:1.55}.trip-form-danger-confirm strong{color:#8f3d22;font-size:var(--text-body)}.trip-form-danger-confirm div{justify-content:flex-end;gap:7px;display:flex}.trip-form-danger-confirm button{background:var(--paper-strong);min-height:40px;color:var(--ink-readable);font-size:var(--text-caption);font-weight:var(--weight-bold);border-radius:6px;padding:0 14px}.trip-form-danger-confirm button.is-danger{color:#fff;background:#b34a28}.trip-form-danger-confirm button.is-danger:hover:not(:disabled){background:#9b3d1f}.trip-form-danger-confirm button:disabled{cursor:wait;opacity:.55}.trip-form-actions{justify-content:flex-end;align-items:center;gap:8px;padding-top:3px;display:flex}.trip-form-actions a,.trip-form-actions button{min-height:52px;font-size:var(--text-body);font-weight:var(--weight-bold);border-radius:6px;justify-content:center;align-items:center;padding:0 20px;text-decoration:none;display:flex}.trip-form-actions a{color:var(--ink-readable)}.trip-form-actions button{background:var(--ink);color:#fff;min-width:140px}.trip-form-actions button:hover{background:#183a4b}.trip-form-actions button:disabled{cursor:wait;opacity:.6}.trip-form-setting-link{border-block:1px solid var(--line);min-height:60px;color:var(--ink);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;padding:8px 10px;text-decoration:none;display:grid}.trip-form-setting-link>span:first-child{gap:2px;min-width:0;display:grid}.trip-form-setting-link strong,.trip-form-setting-link small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.trip-form-setting-link strong{font-size:var(--text-label)}.trip-form-setting-link small{color:var(--ink-readable);font-size:var(--text-caption)}.trip-form-setting-link>span:last-child{min-height:42px;color:var(--sea-deep);font-size:var(--text-caption);font-weight:var(--weight-bold);align-items:center;gap:5px;display:flex}.trip-form-setting-link:hover{background:var(--sea-wash)}.map-panel{background:#cbdfe5;border:0;border-radius:0;min-width:0;min-height:0;position:relative;overflow:hidden}.planner-map-loading{color:var(--ink-readable);font-size:var(--text-caption);font-weight:var(--weight-bold);background:#cbdfe5;place-items:center;display:grid;position:absolute;inset:0}.map-wrap{position:absolute;inset:0;container-type:inline-size}.map-canvas{isolation:isolate;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;background:linear-gradient(140deg,#d8e8ea,#a9ccd6);width:100%;height:100%;inset:0;position:absolute!important}.live-map-cursor{z-index:8;opacity:1;filter:drop-shadow(0 2px 3px #102b3a38);pointer-events:none;will-change:transform;width:34px;height:36px;transition:transform 90ms linear,opacity .3s}.live-map-cursor.is-fading{opacity:0}.live-map-cursor-pointer{width:17px;height:23px;position:absolute;top:0;left:0}.live-map-cursor-pointer:before,.live-map-cursor-pointer:after{clip-path:polygon(0 0,16px 14px,9px 15px,6px 22px);content:"";position:absolute;inset:0}.live-map-cursor-pointer:before{background:#fffefafa}.live-map-cursor-pointer:after{background:var(--live-cursor-color,var(--sea));clip-path:polygon(0 0,12px 10px,6px 11px,3px 18px);inset:2px}.live-map-cursor-label{border:2px solid var(--paper);background:var(--live-cursor-color,var(--sea));color:#fff;width:22px;height:22px;font-size:var(--text-caption);font-weight:var(--weight-bold);letter-spacing:.02em;white-space:nowrap;border-radius:50%;place-items:center;padding:0;line-height:1;display:grid;position:absolute;top:14px;left:12px}.map-wrap.is-adding .map-canvas{cursor:crosshair}.map-wrap.is-adding:after{border:3px solid var(--coral);content:"";pointer-events:none;position:absolute;inset:0}.map-wrap.is-measuring .map-canvas{cursor:crosshair}.map-wrap.is-measuring:after{content:"";pointer-events:none;border:2px solid #0e5068b8;position:absolute;inset:0}.maplibregl-canvas{outline:none}.maplibregl-ctrl-top-left,.maplibregl-ctrl-top-right,.maplibregl-ctrl-bottom-left,.maplibregl-ctrl-bottom-right{z-index:20}.maplibregl-ctrl-bottom-right{bottom:env(safe-area-inset-bottom)}.map-wrap.has-google-attribution .maplibregl-ctrl-bottom-right{bottom:calc(35px + env(safe-area-inset-bottom))}.maplibregl-ctrl-top-right{filter:drop-shadow(0 5px 12px #102b3a24);flex-direction:column;align-items:flex-end;display:flex;top:70px;right:10px}.maplibregl-ctrl-group{border:1px solid var(--line);overflow:hidden;border-radius:6px!important;box-shadow:0 5px 15px #102b3a1f!important}.maplibregl-ctrl-group button{width:40px;height:40px}.maplibregl-ctrl-top-right>.maplibregl-ctrl{margin:0!important}.maplibregl-ctrl-top-right>.maplibregl-ctrl+.maplibregl-ctrl{margin-top:-1px!important}.maplibregl-ctrl-top-right>.maplibregl-ctrl-group{box-shadow:none!important;border-radius:0!important}.maplibregl-ctrl-top-right>.maplibregl-ctrl-group:first-child{border-radius:6px 6px 0 0!important}.maplibregl-ctrl-top-right>.maplibregl-ctrl-group:last-child{border-radius:0 0 6px 6px!important}.maplibregl-ctrl-top-right .maplibregl-ctrl-icon{background-size:19px 19px}.maplibregl-ctrl-top-right .maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon,.maplibregl-ctrl-top-right .maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon,.maplibregl-ctrl-top-right .maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-size:24px 24px}.maplibregl-ctrl-bottom-left .maplibregl-ctrl-scale{margin:0 0 60px 14px}.planner-workspace:not(.is-panel-collapsed) .maplibregl-ctrl-bottom-left .maplibregl-ctrl-scale{margin:0 0 10px 14px}.maplibregl-ctrl-scale{color:var(--ink);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:var(--text-caption);font-weight:var(--weight-bold);opacity:0;pointer-events:none;background:#fffefad1;border:2px solid #102b3a8c;border-top:0;border-radius:0 0 4px 4px;padding:1px 8px 0;transition:opacity .25s}.sailfolio-map-layer-trigger svg,.sailfolio-map-ruler-trigger svg{margin:auto;display:block}.sailfolio-map-ruler-trigger.is-active{color:#fff;background:var(--sea-deep)!important}.sailfolio-map-ruler-trigger:disabled{cursor:not-allowed;opacity:.4}.map-layer-control{top:var(--map-layer-top,107px);right:var(--map-layer-right,47px);z-index:7;position:absolute}.map-layer-panel{overscroll-behavior:contain;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fffefafa;border:1px solid #d2dbd9fa;border-radius:8px;width:310px;max-height:calc(100dvh - 180px);position:absolute;top:0;right:0;overflow:auto;box-shadow:0 14px 38px #102b3a33}.map-layer-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:14px 14px 11px;display:flex}.map-layer-heading>span{gap:2px;display:grid}.map-layer-heading small,.map-layer-label{color:var(--sea);font-size:var(--text-caption);font-weight:var(--weight-bold);letter-spacing:.1em;text-transform:uppercase}.map-layer-heading strong{font-family:var(--display);letter-spacing:-.02em;font-size:17px}.map-layer-heading button{width:34px;height:34px;color:var(--ink-soft);background:0 0;border-radius:5px;place-items:center;display:grid}.map-layer-heading button:hover{background:var(--canvas);color:var(--ink)}.map-layer-section{border-bottom:1px solid var(--line);gap:8px;padding:12px 14px;display:grid}.map-base-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;display:grid}.map-base-option{border:1px solid var(--line);background:var(--paper);min-width:0;color:var(--ink);text-align:left;border-radius:6px;display:grid;overflow:hidden}.map-base-option:hover{border-color:#a9c8d0}.map-base-option.is-active{border-color:var(--sea);box-shadow:inset 0 0 0 1px var(--sea)}.map-base-option:disabled{cursor:not-allowed;opacity:.48}.map-base-preview{border-bottom:1px solid var(--line);background-color:#a8cee1;height:47px;display:block;position:relative;overflow:hidden}.map-base-preview:before,.map-base-preview:after{content:"";position:absolute}.map-base-preview.is-chart{background:linear-gradient(145deg,#a9cdea 0 48%,#f5f0df 49% 100%)}.map-base-preview.is-chart:before{border:0 solid #d4a868;border-top-width:2px;border-radius:50%;width:68px;height:24px;top:8px;right:-5px;rotate:-10deg}.map-base-preview.is-chart:after{background:var(--coral);width:7px;height:7px;box-shadow:-61px -18px 0 var(--sea);border-radius:50%;bottom:7px;right:8px}.map-base-preview.is-satellite{background:radial-gradient(circle at 72% 28%,#7fa45e 0 13%,#0000 14%),linear-gradient(142deg,#315e70 0 43%,#8f9565 44% 68%,#555f3d 69% 100%)}.map-base-preview.is-satellite:before{background:#ecdbaaa6;height:3px;bottom:10px;left:0;right:0;rotate:-13deg}.map-base-preview.is-google{filter:saturate(1.2)contrast(1.06)}.map-base-preview.is-esri{filter:saturate(.9)brightness(1.08)}.map-base-preview.is-auto{background:linear-gradient(90deg,#5c8060 0 48%,#f8f6ee 49% 51%,#315e70 52% 100%)}.map-base-preview.is-auto:before{background:var(--paper-strong);width:2px;inset:0 auto 0 50%}.map-base-preview.is-auto:after{background:var(--coral);border-radius:50%;width:10px;height:10px;top:12px;left:calc(50% - 5px);box-shadow:0 0 0 2px #fffefae6}.map-base-option>span:last-child{gap:2px;padding:8px 9px 9px;display:grid}.map-base-option strong,.map-layer-toggle strong{font-size:var(--text-caption);font-weight:var(--weight-bold)}.map-base-option small,.map-layer-toggle small{color:var(--ink-soft);font-size:var(--text-caption);line-height:1.35}.map-base-option small{overflow-wrap:anywhere;white-space:normal}.map-layer-toggle small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.map-layer-toggle.is-multiline small{text-overflow:clip;white-space:normal;overflow:visible}.map-label-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;display:grid}.map-label-option{border:1px solid var(--line);background:var(--paper);min-height:48px;color:var(--ink);text-align:left;border-radius:6px;align-content:center;gap:2px;padding:7px 9px;display:grid}.map-label-option:hover{border-color:#a9c8d0}.map-label-option.is-active{border-color:var(--sea);background:var(--sea-wash);box-shadow:inset 0 0 0 1px var(--sea)}.map-label-option strong{font-size:var(--text-caption);font-weight:var(--weight-bold)}.map-label-option small{color:var(--ink-soft);font-size:var(--text-caption);line-height:1.25}.map-layer-toggle{cursor:pointer;justify-content:space-between;align-items:center;gap:14px;min-height:48px;display:flex}.map-layer-toggle>span{gap:3px;min-width:0;display:grid}.map-layer-toggle input{appearance:none;background:#dfe3df;border:1px solid #bfc8c6;border-radius:99px;outline:0;flex:none;width:34px;height:20px;transition:border-color .15s,background .15s;position:relative}.map-layer-toggle input:before{content:"";background:#fff;border-radius:50%;width:14px;height:14px;transition:translate .15s;position:absolute;top:2px;left:2px;box-shadow:0 1px 3px #102b3a42}.map-layer-toggle input:checked{border-color:var(--sea);background:var(--sea)}.map-layer-toggle input:checked:before{translate:14px}.map-layer-toggle input:focus-visible{box-shadow:0 0 0 3px #176b872e}.map-gesture-help p{color:var(--ink-soft);font-size:var(--text-caption);margin:0;line-height:1.45}.map-provider-error{background:var(--coral-soft);color:#8f3d22;font-size:var(--text-caption);border-radius:5px;margin:0;padding:8px 9px;line-height:1.4}.map-layer-caution{background:var(--sand);color:#6d7068;font-size:var(--text-caption);margin:0;padding:10px 14px 12px;line-height:1.45}.map-depth-sample{z-index:7;width:min(440px,100% - 28px);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffefafa;border:1px solid #9dbfc4fa;border-radius:8px;display:grid;position:absolute;bottom:14px;left:50%;overflow:hidden;translate:-50%}.map-depth-sample header{justify-content:space-between;align-items:center;gap:12px;min-height:58px;padding:9px 9px 9px 13px;display:flex}.map-depth-sample header>span{gap:2px;min-width:0;display:grid}.map-depth-sample header small{color:var(--sea);font-size:var(--text-caption);font-weight:var(--weight-bold);letter-spacing:.09em;text-transform:uppercase}.map-depth-sample header strong{font-family:var(--display);font-size:var(--text-section)}.map-depth-sample header button{width:42px;height:42px;color:var(--ink-soft);background:0 0;border-radius:5px;flex:none;place-items:center;display:grid}.map-depth-sample header button:hover{background:var(--canvas);color:var(--ink)}.map-depth-sample dl{gap:5px;margin:0;padding:0 13px 10px;display:grid}.map-depth-sample dl div{font-size:var(--text-caption);grid-template-columns:73px minmax(0,1fr);gap:8px;line-height:1.35;display:grid}.map-depth-sample dt{color:var(--ink-soft);font-weight:var(--weight-bold)}.map-depth-sample dd{min-width:0;color:var(--ink-readable);overflow-wrap:anywhere;margin:0}.map-depth-sample>p{color:var(--ink-readable);font-size:var(--text-caption);margin:0;padding:0 13px 10px;line-height:1.4}.map-depth-sample>p.map-depth-error{color:#9b442a}.map-depth-sample footer{border-top:1px solid var(--line);background:var(--sand);color:#6d7068;font-size:var(--text-caption);font-weight:var(--weight-bold);padding:8px 13px 9px;line-height:1.35}.map-depth-sample.is-loading header strong{color:var(--sea-deep)}.map-depth-marker{border:2px solid var(--paper-strong);background:var(--sea);pointer-events:none;border-radius:50%;width:22px;height:22px;position:relative;box-shadow:0 0 0 4px #176b8747,0 4px 10px #102b3a40}.map-depth-marker:before,.map-depth-marker:after{background:var(--paper-strong);content:"";position:absolute;top:50%;left:50%;translate:-50% -50%}.map-depth-marker:before{width:10px;height:2px}.map-depth-marker:after{width:2px;height:10px}.map-depth-marker.is-loading{animation:1s ease-in-out infinite alternate depth-marker-pulse}@keyframes depth-marker-pulse{to{box-shadow:0 0 0 8px #176b871f,0 4px 10px #102b3a40}}.google-map-attribution{z-index:5;color:#333;pointer-events:auto;background:#ffffffeb;border:1px solid #ffffffb3;border-radius:3px;align-items:center;gap:7px;max-width:calc(100% - 16px);min-height:25px;padding:4px 7px;font:10px/1.25 Arial,sans-serif;display:flex;position:absolute;bottom:26px;right:8px;box-shadow:0 1px 4px #102b3a2e}.google-map-attribution strong{font-size:var(--text-caption);font-weight:var(--weight-bold);flex:none}.google-map-attribution-inline{white-space:nowrap}.google-map-attribution-sources-trigger{display:none}.google-map-attribution-sources{color:#333;white-space:normal;background:#fffffff7;border:1px solid #ffffffc7;border-radius:5px;gap:5px;width:min(340px,100cqw - 20px);padding:10px 12px;display:none;position:absolute;bottom:calc(100% + 6px);right:0;box-shadow:0 5px 18px #102b3a3d}.google-map-attribution-sources strong{font-size:var(--text-caption)}.google-map-attribution-sources span{overflow-wrap:anywhere;font-size:var(--text-caption);line-height:1.35}.google-map-attribution.is-main{right:10px;bottom:calc(8px + env(safe-area-inset-bottom));z-index:6}@container (width<=680px){.map-wrap.has-google-attribution .maplibregl-ctrl-bottom-right{bottom:calc(50px + env(safe-area-inset-bottom))}.google-map-attribution{gap:6px;min-height:42px;padding:0 3px 0 10px}.google-map-attribution-inline{display:none}.google-map-attribution-sources-trigger{color:#333;background:0 0;border:0;border-left:1px solid #33333329;align-items:center;min-height:42px;padding:0 9px;font:700 12px/1 Arial,sans-serif;display:flex}.google-map-attribution-sources{display:grid}.google-map-attribution-sources-trigger:hover,.google-map-attribution-sources-trigger:focus-visible,.google-map-attribution-sources-trigger[aria-expanded=true]{color:var(--sea-deep);background:#176b871a}.google-map-attribution-sources-trigger:focus-visible{outline:2px solid var(--sea);outline-offset:-2px}}.map-marker{z-index:2;border:2px solid var(--paper-strong);background:var(--paper-strong);width:29px;height:29px;box-shadow:0 0 0 3px var(--coral), 0 4px 10px #102b3a42;color:var(--ink);font-family:var(--display);font-size:var(--text-caption);font-weight:var(--weight-bold);border-radius:50%;place-items:center;padding:0;transition:background .15s,box-shadow .15s,filter .15s,opacity .15s;display:grid}.map-marker-label,.map-marker-duration{grid-area:1/1}.map-marker-duration{border:1.5px solid var(--paper-strong);background:var(--sea-deep);color:#fff;min-width:17px;height:14px;font:800 7px/1 var(--sans);letter-spacing:-.02em;border-radius:7px;place-self:end;place-items:center;padding:0 3px;display:grid;translate:10px 7px}.map-marker.is-selected .map-marker-duration,.map-marker.is-moving .map-marker-duration{background:var(--ink)}.map-marker.is-day-stop{border:3px solid var(--sea);background:var(--paper-strong);color:var(--sea-deep);font-size:var(--text-caption);box-shadow:0 3px 9px #102b3a47}.map-marker:hover,.map-marker:focus-visible{z-index:4;box-shadow:0 0 0 4px var(--coral), 0 0 0 8px #fffefae6, 0 5px 13px #102b3a52}.map-marker.is-hovered{z-index:6;background:var(--sea-wash);box-shadow:0 0 0 4px var(--coral), 0 0 0 7px #fffefaf5, 0 0 0 12px #176b87c7, 0 7px 18px #102b3a61}.map-marker.is-selected{z-index:7;border-color:var(--paper-strong);background:var(--coral);color:var(--route-ink);box-shadow:0 0 0 4px #e96135ad,0 5px 13px #102b3a57}.map-marker.is-selected.is-hovered{z-index:8;background:var(--coral);box-shadow:0 0 0 4px var(--coral), 0 0 0 7px #fffefaf5, 0 0 0 12px #176b87c7, 0 7px 18px #102b3a66}.map-marker.is-moving{z-index:9;background:var(--coral);box-shadow:0 0 0 4px var(--coral), 0 0 0 8px #fffefafa, 0 0 0 14px #0e5068e6, 0 9px 22px #102b3a73;color:var(--route-ink);cursor:grab}.map-marker.is-day-stop:hover:not(.is-selected):not(.is-moving),.map-marker.is-day-stop:focus-visible:not(.is-selected):not(.is-moving),.map-marker.is-day-stop.is-hovered:not(.is-selected):not(.is-moving){background:var(--paper-strong);color:var(--sea-deep);box-shadow:0 0 0 5px #176b87b8,0 6px 15px #102b3a57}.map-marker.is-moving.is-dragging{z-index:10;cursor:grabbing}.map-place-marker{z-index:1;background:0 0;border:0;width:42px;height:42px;padding:0;transition:filter .15s,opacity .15s}.map-place-marker:before{border:2px solid var(--sea);content:"";background:#fffefaeb;border-radius:50% 50% 50% 4px;width:18px;height:22px;position:absolute;top:6px;left:12px;rotate:-45deg;box-shadow:0 3px 8px #102b3a38}.map-place-marker:after{background:var(--sea);content:"";border-radius:50%;width:5px;height:5px;position:absolute;top:13px;left:19px}.map-place-marker.is-must:before{border-color:var(--coral)}.map-place-marker.is-must:after{background:var(--coral)}.map-place-marker.is-maybe{opacity:.7}.map-place-marker:hover,.map-place-marker:focus-visible,.map-place-marker.is-selected{z-index:4;filter:drop-shadow(0 0 5px #176b8759);opacity:1}.map-place-marker.is-selected:before{background:var(--sea-wash);box-shadow:0 0 0 4px #176b8733,0 5px 11px #102b3a47}.map-wrap.is-moving-stop .map-place-marker{z-index:0;filter:none;opacity:.38;pointer-events:none}.map-insert-marker{border:2px solid var(--paper-strong);background:var(--coral);pointer-events:none;border-radius:50%;width:27px;height:27px;box-shadow:0 0 0 4px #e9613580,0 5px 13px #102b3a4d}.map-insert-marker:before,.map-insert-marker:after{content:"";background:#fff;border-radius:1px;width:12px;height:2px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.map-insert-marker:after{transform:translate(-50%,-50%)rotate(90deg)}.map-waypoint-marker{z-index:1;opacity:.82;background:0 0;border:0;width:22px;height:22px;padding:0;transition:opacity .15s}.map-waypoint-marker[aria-hidden=true]{pointer-events:none}.map-waypoint-marker:before{border:1.5px solid var(--paper-strong);content:"";background:#5c8ea1;border-radius:2px;position:absolute;inset:6px;transform:rotate(45deg);box-shadow:0 2px 6px #102b3a42}.map-waypoint-marker:after{background:var(--paper-strong);content:"";border-radius:50%;width:2px;height:2px;position:absolute;top:10px;left:10px}.map-waypoint-marker:hover,.map-waypoint-marker:focus-visible{z-index:3;opacity:1}.map-waypoint-marker:hover:before,.map-waypoint-marker:focus-visible:before{background:var(--sea);inset:4px;box-shadow:0 0 0 4px #176b8738,0 5px 12px #102b3a59}.map-waypoint-marker.is-dragging{z-index:5;opacity:1;pointer-events:none}.map-waypoint-marker.is-dragging:before{background:var(--sea);inset:3px;box-shadow:0 0 0 5px #176b873d,0 6px 14px #102b3a61}.map-waypoint-marker.is-coast-aware{opacity:.54}.map-waypoint-marker.is-coast-aware:before{background:var(--sea-deep);border-color:#fffefae6;border-radius:50%;inset:7px}.map-wrap:not(.is-places-focus) .map-marker{z-index:5}.map-wrap:not(.is-places-focus) .map-marker:hover,.map-wrap:not(.is-places-focus) .map-marker:focus-visible,.map-wrap:not(.is-places-focus) .map-marker.is-hovered{z-index:6}.map-wrap:not(.is-places-focus) .map-marker.is-selected{z-index:7}.map-wrap:not(.is-places-focus) .map-marker.is-moving{z-index:9}.map-wrap.is-places-focus .map-place-marker{z-index:5;opacity:1}.map-wrap.is-places-focus .map-place-marker:hover,.map-wrap.is-places-focus .map-place-marker:focus-visible,.map-wrap.is-places-focus .map-place-marker.is-selected{z-index:7}.map-wrap.is-places-focus:not(.is-measuring) .map-marker,.map-wrap.is-places-focus:not(.is-measuring) .map-waypoint-marker{z-index:0;filter:saturate(.35)opacity(.1);pointer-events:none}.coast-route-trigger{z-index:3;min-height:40px;color:var(--sea-deep);font-size:var(--text-caption);font-weight:var(--weight-bold);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffefaf5;border:1px solid #9dbfc4fa;border-radius:6px;align-items:center;gap:7px;padding:0 12px;display:flex;position:absolute;top:66px;left:14px;box-shadow:0 5px 17px #102b3a21}.coast-route-trigger:hover{border-color:var(--sea);background:var(--sea-wash)}.coast-route-engine{z-index:-1;opacity:0;pointer-events:none;width:960px;height:720px;position:fixed;top:0;left:0}.coast-route-prompt{z-index:7;width:min(630px,100% - 28px);min-height:74px;box-shadow:var(--shadow);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffefafa;border:1px solid #9dbfc4fa;border-radius:8px;align-items:center;gap:16px;padding:10px 11px 10px 15px;display:flex;position:absolute;bottom:14px;left:50%;translate:-50%}.coast-route-prompt.is-error{border-color:#c4785cbf}.coast-route-copy{flex:1;gap:3px;min-width:0;display:grid}.coast-route-copy small{color:var(--sea);font-size:var(--text-caption);font-weight:var(--weight-bold);letter-spacing:.09em;text-transform:uppercase}.coast-route-copy strong{font-family:var(--display);font-size:var(--text-body);line-height:1.25}.coast-route-copy strong em{color:var(--coral);font-style:normal}.coast-route-copy p{color:var(--ink-readable);font-size:var(--text-caption);margin:0;line-height:1.35}.coast-route-actions{flex:none;gap:6px;display:flex}.coast-route-actions button{border:1px solid var(--line);background:var(--canvas);min-width:78px;min-height:42px;color:var(--ink-soft);font-size:var(--text-caption);font-weight:var(--weight-bold);border-radius:5px;padding:0 12px}.coast-route-actions button:hover:not(:disabled){background:var(--sea-wash);color:var(--sea-deep);border-color:#9dbfc4}.coast-route-actions button.is-primary{border-color:var(--sea-deep);background:var(--sea-deep);color:#fff}.coast-route-actions button:disabled{cursor:wait;opacity:.6}.map-search{z-index:3;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffefaf5;border:1px solid #d2dbd9f2;border-radius:7px;align-items:center;gap:9px;width:min(350px,100% - 88px);height:43px;padding:0 10px 0 13px;display:flex;position:absolute;top:14px;left:14px;box-shadow:0 5px 17px #102b3a21}.map-search input{min-width:0;font-size:var(--text-caption);background:0 0;border:0;outline:0;flex:1}.map-search input::placeholder{color:#7e8988}.map-search kbd{border:1px solid var(--line);background:var(--paper);color:var(--ink-soft);font-family:var(--sans);font-size:var(--text-caption);border-radius:3px;padding:3px 6px}.map-search-results,.map-search-selection{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffefafa;border:1px solid #d2dbd9fa;border-radius:8px;width:100%;position:absolute;top:calc(100% + 7px);left:0;box-shadow:0 12px 26px #102b3a2b}.map-search-results{max-height:min(330px,100dvh - 180px);padding:5px;display:grid;overflow:auto}.map-search-feedback{color:var(--ink-readable);font-size:var(--text-caption);margin:0;padding:12px 10px;line-height:1.4}.map-search-feedback.is-error{color:#a4472d}.map-search-result{text-align:left;background:0 0;border-radius:6px;grid-template-columns:31px minmax(0,1fr) auto;align-items:center;gap:8px;width:100%;min-height:52px;padding:6px;display:grid}.map-search-result:hover,.map-search-result.is-highlighted{background:var(--sea-wash)}.map-search-result.is-highlighted{box-shadow:inset 0 0 0 1px #a7c8cd}.map-search-result-icon{width:29px;height:29px;color:var(--sea-deep);border:1px solid #aed0d4;border-radius:50%;place-items:center;display:grid}.map-search-result>span:nth-child(2){gap:2px;min-width:0;display:grid}.map-search-result strong,.map-search-result small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.map-search-result strong{font-size:var(--text-caption)}.map-search-result small{color:var(--ink-readable);font-size:var(--text-caption)}.map-search-result-source{color:var(--ink-soft);font-size:var(--text-caption);font-weight:var(--weight-bold);letter-spacing:.04em;text-transform:uppercase;align-self:start;margin-top:4px}.map-search-selection{overscroll-behavior:contain;gap:10px;max-height:max(160px,100dvh - 230px);padding:12px;display:grid;overflow:auto}.map-search-selection header{justify-content:space-between;align-items:start;gap:9px;display:flex}.map-search-selection header>span{gap:2px;min-width:0;display:grid}.map-search-selection header small{color:var(--sea);font-size:var(--text-caption);font-weight:var(--weight-bold);letter-spacing:.09em;text-transform:uppercase}.map-search-selection header strong{font-family:var(--display);font-size:var(--text-input);text-overflow:ellipsis;white-space:nowrap;line-height:1.1;overflow:hidden}.map-search-selection header em{color:var(--ink-readable);font-size:var(--text-caption);text-overflow:ellipsis;white-space:nowrap;font-style:normal;overflow:hidden}.map-search-selection header button{background:0 0;border-radius:5px;flex:none;place-items:center;width:42px;height:42px;display:grid}.map-search-selection header button:hover{background:var(--canvas)}.map-search-selection>p{color:var(--ink-readable);font-size:var(--text-caption);margin:0;line-height:1.45}.map-search-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;display:grid}.map-search-actions label{grid-column:1/-1;gap:4px;display:grid}.map-search-actions label>span{color:var(--ink-soft);font-size:var(--text-caption);font-weight:var(--weight-bold);letter-spacing:.08em;text-transform:uppercase}.map-search-actions select{border:1px solid var(--line);background:var(--paper);width:100%;min-height:42px;font:inherit;font-size:var(--text-input);border-radius:5px;padding:0 8px}.map-search-actions button{border:1px solid var(--line);background:var(--paper);min-height:42px;color:var(--sea-deep);font-size:var(--text-caption);font-weight:var(--weight-bold);border-radius:5px;padding:0 7px}.map-search-actions button:hover{background:var(--sea-wash);border-color:#9dbfc4}.map-search-actions button.is-primary{border-color:var(--sea-deep);background:var(--sea-deep);color:#fff}.map-search-actions button:disabled{cursor:not-allowed;opacity:.5}.map-search-waypoint{grid-column:1/-1}.map-search-waypoint summary{min-height:42px;color:var(--ink-soft);font-size:var(--text-caption);cursor:pointer;align-items:center;display:flex}.map-search-waypoint summary:before{content:"+";margin-right:6px}.map-search-waypoint[open] summary:before{content:"−"}.map-search-waypoint>button{margin-top:7px}.map-search-readonly{color:var(--ink-readable)}.map-search-selection.is-poi header small{color:var(--ink-soft);font-weight:var(--weight-normal);letter-spacing:0;text-transform:none}.map-search-selection.is-poi header strong{white-space:normal;overflow-wrap:anywhere}.map-poi-reference{border-top:1px solid var(--line);gap:6px;padding-top:8px;display:grid}.map-poi-reference .detail-open-in a{min-height:42px}.map-poi-reference>small{color:var(--ink-soft);font-size:var(--text-caption)}.map-poi-reference>small a{color:inherit;text-underline-offset:2px}.map-search-marker{border:2px solid var(--paper-strong);background:var(--sea);pointer-events:none;border-radius:4px;width:24px;height:24px;transform:rotate(45deg);box-shadow:0 0 0 4px #176b8745,0 5px 12px #102b3a47}.map-search-marker:after{background:var(--paper-strong);content:"";border-radius:50%;width:6px;height:6px;position:absolute;top:7px;left:7px}.stop-detail{z-index:4;width:min(380px,100% - 100px);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffefaf7;border:1px solid #d2dbd9f2;border-radius:8px;padding:15px 16px 14px;position:absolute;bottom:14px;left:auto;right:14px}.detail-close{background:0 0;border-radius:5px;place-items:center;width:36px;height:36px;display:grid;position:absolute;top:6px;right:6px}.detail-close:hover{background:var(--canvas)}.stop-detail h2{max-width:calc(100% - 28px);font-family:var(--display);font-size:var(--text-section);font-weight:var(--weight-bold);letter-spacing:-.025em;margin:4px 0 7px}.stop-detail p{color:var(--ink-soft);font-size:var(--text-caption);margin:11px 0 10px;line-height:1.5}.detail-tags{gap:6px;display:flex}.detail-tags span{background:var(--sea-wash);color:var(--sea-deep);font-size:var(--text-caption);font-weight:var(--weight-bold);border-radius:3px;padding:3px 6px}.detail-schedule{border:1px solid var(--line);background:var(--paper);border-radius:5px;grid-template-columns:auto minmax(0,1fr) auto minmax(0,1fr);align-items:baseline;gap:4px 7px;margin-top:10px;padding:8px 9px;display:grid}.detail-schedule span{color:var(--ink-soft);font-size:var(--text-caption);font-weight:var(--weight-bold);text-transform:uppercase}.detail-schedule strong{font-size:var(--text-caption);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.detail-position{gap:6px;margin-top:8px;display:grid}.detail-coordinates{width:100%;min-height:42px;color:var(--ink-readable);text-align:left;background:0 0;border:1px dashed #c2ccca;border-radius:5px;justify-content:space-between;align-items:center;gap:10px;padding:0 10px;display:flex}.detail-coordinates:hover{border-color:var(--sea);background:var(--sea-wash);color:var(--sea-deep)}.detail-coordinate-value{min-width:0;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:var(--text-caption);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.detail-coordinate-copy-status{color:var(--sea);font-size:var(--text-caption);font-weight:var(--weight-bold);flex:none;align-items:center;gap:4px;display:inline-flex}.detail-coordinate-copy-status.is-copied{color:var(--success)}.detail-coordinate-copy-status.is-failed{color:var(--danger)}.detail-open-in{flex-wrap:wrap;gap:4px;display:flex}.detail-open-in a{border:1px solid var(--line);background:var(--paper);min-height:30px;color:var(--sea-deep);font-size:var(--text-caption);font-weight:var(--weight-bold);border-radius:5px;align-items:center;padding:0 9px;text-decoration:none;display:inline-flex}.detail-open-in a:hover{background:var(--sea-wash);border-color:#9dbfc4}.stop-detail-open-in{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;display:grid}.stop-detail-open-in a{white-space:nowrap;justify-content:center;padding-inline:6px}.text-button{color:var(--sea);font-size:var(--text-caption);font-weight:var(--weight-bold);background:0 0;align-items:center;gap:3px;padding:0;display:flex}.detail-primary-actions{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:7px;margin-top:10px;display:grid}.detail-edit-button,.detail-move-button,.detail-point-actions button{min-width:0;min-height:42px;font-size:var(--text-caption);font-weight:var(--weight-bold);border-radius:5px;justify-content:center;align-items:center;gap:6px;padding:0 9px;display:flex}.detail-edit-button,.detail-move-button{background:var(--sea-wash);color:var(--sea-deep)}.detail-edit-button:hover,.detail-move-button:hover{background:#d8e9e5}.detail-move-button.is-active{background:var(--sea-deep);color:#fff}.detail-point-actions{border-top:1px solid var(--line);grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:7px;margin-top:14px;padding-top:12px;display:grid}.detail-point-actions button{background:var(--canvas);color:var(--ink-soft)}.detail-point-actions button.is-danger{background:var(--coral-soft);color:#9b442a}.detail-point-actions button:disabled{cursor:not-allowed;opacity:.42}.detail-stop-navigation{border-top:1px solid var(--line);grid-template-columns:48px minmax(0,1fr) 48px;align-items:center;gap:8px;margin-top:12px;padding-top:12px;display:grid}.detail-stop-navigation button{background:var(--sea-wash);min-width:48px;min-height:44px;color:var(--sea-deep);border-radius:5px;place-items:center;display:grid}.detail-stop-navigation button:first-child .icon{rotate:180deg}.detail-stop-navigation button:hover:not(:disabled){background:#d8e9e5}.detail-stop-navigation button:disabled{cursor:default;opacity:.35}.detail-stop-navigation>span{color:var(--ink-soft);font-size:var(--text-caption);font-weight:var(--weight-bold);text-align:center}.detail-confirmation{background:var(--coral-soft);border:1px solid #f1cabb;border-radius:6px;gap:5px;margin-top:12px;padding:10px;display:grid}.detail-confirmation>strong{font-size:var(--text-caption)}.stop-detail .detail-confirmation>p{color:#77594f;font-size:var(--text-caption);margin:0;line-height:1.45}.detail-confirmation-actions{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:6px;margin-top:4px;display:grid}.detail-confirmation-actions button{background:var(--paper-strong);min-height:38px;color:var(--ink-soft);font-size:var(--text-caption);font-weight:var(--weight-bold);border-radius:5px}.detail-confirmation-actions button.is-primary{background:var(--ink);color:#fff}.detail-confirmation-actions button.is-danger{background:var(--danger);color:#fff}.stop-detail.is-editing{overscroll-behavior:contain;width:min(380px,100% - 28px);max-height:calc(100% - 88px);overflow:auto}.stop-edit-form{gap:12px;display:grid}.stop-edit-field{min-width:0;color:var(--ink-soft);font-size:var(--text-caption);font-weight:var(--weight-bold);letter-spacing:.06em;text-transform:uppercase;gap:5px;display:grid}.stop-edit-field input,.stop-edit-field select{border:1px solid var(--line);background:var(--paper-strong);width:100%;min-width:0;min-height:42px;color:var(--ink);font-size:var(--text-caption);font-weight:var(--weight-semibold);letter-spacing:normal;text-transform:none;border-radius:5px;outline:none;padding:0 11px}.stop-edit-field textarea{border:1px solid var(--line);background:var(--paper-strong);width:100%;min-width:0;min-height:92px;color:var(--ink);font:inherit;font-size:var(--text-input);font-weight:var(--weight-medium);letter-spacing:normal;text-transform:none;resize:vertical;border-radius:5px;outline:none;padding:9px 10px;line-height:1.45}.stop-edit-field input,.stop-edit-field select,.stop-edit-field .date-input-control{height:42px}.stop-edit-field input:focus,.stop-edit-field select:focus,.stop-edit-field textarea:focus{border-color:var(--sea);box-shadow:0 0 0 3px #176b8721}.stop-edit-note>span{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.stop-edit-note>span small{color:var(--ink-soft);font-size:var(--text-caption);font-weight:var(--weight-semibold);letter-spacing:normal;text-transform:none}.stop-select-control{min-width:0;position:relative}.stop-select-control .icon{color:var(--sea);pointer-events:none;position:absolute;top:50%;right:11px;translate:0 -50%}.stop-edit-field .stop-select-control select{appearance:none;padding-right:38px}.date-input-control{--date-input-padding:10px;background:var(--paper-strong);width:100%;min-width:0;min-height:44px;color:var(--ink);font-size:var(--text-input);font-weight:var(--weight-medium);letter-spacing:normal;text-transform:none;cursor:text;border:1px solid #b8ced2;border-radius:6px;outline:0;align-items:stretch;padding:0;display:flex;position:relative;overflow:hidden}.date-input-control:focus-within{border-color:var(--sea);box-shadow:0 0 0 3px #176b871f}.date-input-control>input.date-input-text{width:100%;min-width:0;height:100%;min-height:0;padding:0 var(--date-input-padding);box-shadow:none;color:inherit;font:inherit;letter-spacing:normal;text-transform:none;background:0 0;border:0;border-radius:0;outline:0;flex:auto;margin:0}.date-input-control>input.date-input-text::placeholder{color:var(--ink-soft);opacity:1}.date-input-control>input.date-input-text:focus{box-shadow:none;border:0;outline:0}.date-input-picker{border-left:1px solid var(--line);color:var(--sea);cursor:pointer;flex:0 0 42px;align-self:stretch;place-items:center;display:grid;position:relative}.date-input-picker:hover{background:var(--sea-wash)}.date-input-picker .icon{pointer-events:none}.date-input-picker>input[type=date]{opacity:0;cursor:pointer;background:0 0;border:0;outline:0;width:100%;min-width:0;max-width:100%;height:100%;min-height:0;margin:0;padding:0;position:absolute;inset:0}.date-input-control.is-disabled{cursor:not-allowed;opacity:.58}.date-input-control.is-disabled .date-input-picker,.date-input-control.is-disabled .date-input-picker>input[type=date]{cursor:not-allowed}.stop-edit-field .date-input-control{--date-input-padding:11px;border-color:var(--line);background:var(--paper-strong);min-height:42px;font-size:var(--text-caption);font-weight:var(--weight-semibold);border-radius:5px}.crew-import-documents .date-input-control{--date-input-padding:9px;border-color:var(--line);background:var(--paper);min-height:42px;font-size:var(--text-caption);font-weight:var(--weight-semibold);border-radius:5px}.completion-grid .date-input-control{--date-input-padding:10px;min-height:44px;font-size:var(--text-body);font-weight:var(--weight-semibold);background:#fffefb;border-color:#b8c5c3;border-radius:6px}.account-field .date-input-control{--date-input-padding:13px;min-height:48px;font-size:var(--text-input);font-weight:var(--weight-medium);background:#fffefb;border-color:#b8c5c3;border-radius:7px}.stop-edit-row{grid-template-columns:minmax(0,1.55fr) minmax(88px,.45fr);gap:9px;display:grid}.stop-edit-error{background:var(--coral-soft);color:#9b442a;font-size:var(--text-caption);font-weight:var(--weight-bold);border-radius:8px;padding:8px 10px;line-height:1.35}.stop-edit-actions{grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);gap:7px;padding-top:2px;display:grid}.stop-edit-actions button{background:var(--canvas);min-height:42px;color:var(--ink-soft);font-size:var(--text-caption);font-weight:var(--weight-bold);border-radius:5px}.stop-edit-actions button.is-primary{background:var(--ink);color:#fff}.stop-edit-actions button:disabled{cursor:wait;opacity:.58}.map-stat{z-index:3;color:#fff;min-height:36px;font-size:var(--text-caption);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#102b3ae8;border-radius:5px;align-items:center;gap:8px;padding:0 11px;display:none;position:absolute;bottom:14px;left:14px;box-shadow:0 5px 16px #102b3a33}.map-stat strong{font-size:var(--text-caption)}.planner-workspace.is-panel-collapsed .map-stat{display:flex}.map-ruler{z-index:6;width:min(560px,100% - 28px);min-height:56px;box-shadow:var(--shadow);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffefaf7;border:1px solid #9dbfc4f5;border-radius:8px;align-items:center;gap:12px;padding:6px 6px 6px 12px;display:flex;position:absolute;bottom:14px;left:50%;translate:-50%}.map-ruler-copy{flex:1;gap:2px;min-width:0;display:grid}.map-ruler-copy>small{color:var(--sea);font-size:var(--text-caption);font-weight:var(--weight-bold);letter-spacing:.09em;text-transform:uppercase}.map-ruler-hint{font-family:var(--display);font-size:var(--text-caption);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.map-ruler-readout{white-space:nowrap;align-items:baseline;gap:10px;min-width:0;display:flex}.map-ruler-primary{color:var(--sea-deep);font-family:var(--display);align-items:baseline;gap:5px;display:flex}.map-ruler-primary b{font-size:var(--text-input)}.map-ruler-primary em{color:var(--coral);font-style:normal}.map-ruler-primary span{color:var(--ink-soft);font-size:var(--text-caption);font-weight:var(--weight-bold)}.map-ruler-last-leg{border-left:1px solid var(--line);color:var(--ink-soft);font-size:var(--text-caption);font-weight:var(--weight-bold);padding-left:10px}.map-ruler-last-leg b{color:var(--ink);font-size:inherit}.map-ruler-actions{flex:none;gap:5px;display:flex}.map-ruler-actions button{background:var(--canvas);min-width:50px;min-height:42px;color:var(--ink-soft);font-size:var(--text-caption);font-weight:var(--weight-bold);border-radius:5px;padding:0 9px}.map-ruler-actions button:hover:not(:disabled){background:var(--sea-wash);color:var(--sea-deep)}.map-ruler-actions button:disabled{cursor:default;opacity:.4}.map-ruler-actions button.is-icon{place-items:center;width:42px;min-width:42px;padding:0;display:grid}.map-ruler-actions button.is-close{background:0 0}.map-error,.add-stop-hint,.map-press-hint{z-index:5;font-size:var(--text-caption);font-weight:var(--weight-bold);white-space:nowrap;border-radius:99px;padding:9px 13px;position:absolute;top:74px;left:50%;translate:-50%;box-shadow:0 7px 20px #142b2c2e}.map-error{color:#9b442a;background:#fff4ee}.add-stop-hint{background:var(--ink);color:#fff;align-items:center;gap:8px;padding:4px 5px 4px 13px;display:flex}.add-stop-hint button{color:#fff;min-height:42px;font-size:var(--text-caption);font-weight:var(--weight-bold);background:#ffffff24;border-radius:99px;padding:0 12px}.add-stop-hint button:hover{background:#ffffff38}.map-press-hint{color:#fff;pointer-events:none;background:#102b3ae6;align-items:center;gap:8px;animation:5s both map-press-hint-visit;display:none}.pulse-dot{background:var(--coral);border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 4px #e9613538}@keyframes map-press-hint-visit{0%,82%{opacity:1}to{opacity:0}}.route-insert-prompt{z-index:6;width:min(470px,100% - 28px);min-height:66px;box-shadow:var(--shadow);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffefaf7;border:1px solid #d2dbd9f2;border-radius:8px;align-items:center;gap:16px;padding:10px 11px 10px 15px;display:flex;position:absolute;bottom:14px;left:50%;translate:-50%}.route-insert-copy{flex:1;gap:3px;min-width:0;display:grid}.route-insert-copy small{color:var(--ink-soft);font-size:var(--text-caption);font-weight:var(--weight-bold);letter-spacing:.08em;text-transform:uppercase}.route-insert-copy strong{font-family:var(--display);font-size:var(--text-caption);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.route-insert-copy strong span{color:var(--coral)}.route-insert-actions{flex:none;gap:5px;display:flex}.route-insert-actions button{background:var(--canvas);min-height:40px;color:var(--ink-soft);font-size:var(--text-caption);font-weight:var(--weight-bold);border-radius:5px;padding:0 11px}.route-insert-actions button.is-cancel{color:var(--ink-soft);background:0 0}.route-insert-actions button.is-cancel:hover{background:var(--canvas)}.route-insert-actions button.is-primary{background:var(--ink);color:#fff}.route-insert-actions button.is-danger{background:var(--coral-soft);color:#9b442a}@media (hover:hover) and (pointer:fine){.route-insert-prompt.is-pointer-anchored{top:var(--route-menu-top);bottom:auto;left:var(--route-menu-left);gap:10px;width:310px;min-height:0;padding:12px;display:grid;translate:0}.route-insert-prompt.is-pointer-anchored .route-insert-actions{grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.route-insert-prompt.is-pointer-anchored .route-insert-actions.append-actions,.route-insert-prompt.is-pointer-anchored .route-insert-actions.waypoint-insert-actions{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)}.route-insert-prompt.is-pointer-anchored .route-insert-actions.is-confirming{grid-template-columns:repeat(2,minmax(0,1fr))}.route-insert-prompt.is-pointer-anchored .route-insert-actions button{padding-inline:7px}}@media (hover:none),(pointer:coarse){.map-press-hint{display:flex}}@media (prefers-reduced-motion:reduce){.map-press-hint{animation:none}}.auth-shell{background:var(--paper);overscroll-behavior:contain;grid-template-columns:minmax(0,1.2fr) minmax(390px,.8fr);width:100%;height:100dvh;display:grid;overflow:auto}.auth-story{color:#f9f4e9;background:radial-gradient(circle at 75% 24%,#70b2a640,#0000 27%),linear-gradient(145deg,#123f43 0%,#185d5c 56%,#0f494e 100%);flex-direction:column;min-height:100dvh;padding:clamp(26px,4vw,58px);display:flex;position:relative;overflow:hidden}.auth-story:after{aspect-ratio:1;content:"";border:1px solid #ffffff1a;border-radius:45% 55% 52% 48%;width:78%;position:absolute;bottom:-29%;right:-18%;rotate:18deg;box-shadow:0 0 0 52px #ffffff06,0 0 0 108px #ffffff05}.auth-brand{z-index:2;color:inherit;font-family:var(--display);font-size:var(--text-title);font-weight:var(--weight-bold);letter-spacing:-.035em;align-self:flex-start;align-items:center;gap:10px;text-decoration:none;display:flex;position:relative}.auth-brand .brand-mark{stroke:#f7f1e5;width:37px;height:37px}.auth-brand .brand-mark .brand-sail-main{fill:#75b6aa;stroke:#75b6aa}.auth-brand .brand-mark .brand-sail-small{fill:#ef7d55;stroke:#ef7d55}.auth-story-copy{z-index:2;max-width:660px;margin:auto 0;padding:70px 0 200px;position:relative}.auth-kicker{color:#9dccbf;font-size:var(--text-caption);font-weight:var(--weight-bold);letter-spacing:.14em;text-transform:uppercase}.auth-story .auth-story-title{color:#fffaf0;font-family:var(--display);font-size:clamp(36px,4vw,56px);font-weight:var(--weight-semibold);letter-spacing:-.035em;margin:18px 0 20px;line-height:1.08}.auth-story-copy p{color:#f4f1e4b8;max-width:560px;margin:0;font-size:clamp(14px,1.4vw,18px);line-height:1.65}.auth-story-benefits{flex-wrap:wrap;gap:10px 20px;margin:24px 0 0;padding:0;list-style:none;display:flex}.auth-story-benefits li{color:#fffaf0e0;font-size:var(--text-caption);font-weight:var(--weight-bold);align-items:center;gap:7px;display:flex}.auth-story-benefits .icon{color:#ef8965}.auth-route{z-index:1;opacity:.88;height:240px;position:absolute;bottom:8%;left:5%;right:6%}.auth-route svg{width:100%;height:100%;position:absolute;inset:0;overflow:visible}.auth-route path{fill:none;stroke:#d8e8de78;stroke-dasharray:6 8;stroke-linecap:round;stroke-width:2px}.auth-route-point{top:var(--route-y);left:var(--route-x);z-index:2;background:var(--coral);width:31px;height:31px;color:var(--route-ink);font-family:var(--display);font-size:var(--text-caption);font-weight:var(--weight-bold);border:3px solid #fffaf0;border-radius:50%;place-items:center;display:grid;position:absolute;translate:-50% -50%;box-shadow:0 7px 20px #00000040}.auth-route-point.point-one{--route-x:9%;--route-y:77.3913%}.auth-route-point.point-two{--route-x:61%;--route-y:39.5652%;background:#75b6aa}.auth-route-point.point-three{--route-x:93.6%;--route-y:11.7391%}.auth-coordinate{z-index:3;color:#ffffff7a;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:var(--text-caption);letter-spacing:.08em;position:absolute;bottom:26px;left:clamp(26px,4vw,58px)}.auth-legal-links{z-index:3;gap:18px;display:flex;position:absolute;bottom:22px;right:clamp(26px,4vw,58px)}.auth-legal-links a{color:#ffffffad;min-height:42px;font-size:var(--text-caption);font-weight:var(--weight-bold);align-items:center;text-decoration:none;display:flex}.auth-legal-links a:hover{color:#fffaf0;text-underline-offset:3px;text-decoration:underline}.auth-mobile-legal-links{display:none}.auth-form-panel{background:var(--paper);place-items:center;min-height:100dvh;padding:clamp(28px,5vw,72px);display:grid}.auth-form-stack{width:min(100%,390px)}.auth-form-stage{isolation:isolate;width:100%;display:grid}.auth-form{flex-direction:column;width:min(100%,390px);display:flex}.auth-form-view{opacity:0;visibility:hidden;pointer-events:none;will-change:opacity, transform;grid-area:1/1;min-width:0;transition:opacity 90ms,transform 90ms,visibility 0s linear 90ms}.auth-form-view.is-before{transform:translate(-12px)}.auth-form-view.is-after{transform:translate(12px)}.auth-form-view.is-active{z-index:1;opacity:1;visibility:visible;pointer-events:auto;transition:opacity .12s 35ms,transform .12s 35ms,visibility linear;transform:translate(0)}.auth-form-heading h1{font-family:var(--display);font-size:var(--text-title);letter-spacing:-.025em;overflow-wrap:anywhere;margin:0 0 8px;line-height:1.2}.auth-form-heading p{color:var(--ink-soft);font-size:var(--text-body);margin:0;line-height:1.5}.field-label{color:var(--ink);font-size:var(--text-caption);font-weight:var(--weight-bold);margin:0 0 7px}.field-label-row{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.field-label-aside{color:var(--ink-soft);font-size:var(--text-caption);font-weight:var(--weight-bold);background:0 0;align-items:center;gap:6px;margin-bottom:7px;padding:0;display:flex}.auth-invite-note{color:var(--ink-soft);font-size:var(--text-caption);text-align:center;margin:18px 0 0;line-height:1.55}.field-hint{background:var(--sea-wash);color:var(--sea-deep);font-size:var(--text-caption);border-left:3px solid #a7c8cd;border-radius:0 5px 5px 0;margin:0;padding:8px 11px;line-height:1.5}.auth-inline-link{color:var(--sea-deep);font-weight:var(--weight-bold);text-underline-offset:3px;background:0 0;border:0;text-decoration:underline}.auth-inline-link:hover{color:var(--sea)}.auth-terms-note{color:var(--ink-readable);font-size:var(--text-caption);margin:0 0 16px;line-height:1.55}.auth-terms-note a{color:var(--sea-deep);font-weight:var(--weight-bold);text-underline-offset:3px}.auth-status{color:#2f6e4b;font-size:var(--text-caption);background:#eaf4ee;border-left:3px solid #4c9b73;margin:0 0 16px;padding:10px 12px;line-height:1.5}.beta-access-form{flex-direction:column;display:flex}.beta-access-heading{margin-bottom:20px}.beta-access-heading p,.beta-access-privacy{color:var(--ink-soft);font-size:var(--text-caption);margin:0;line-height:1.5}.beta-access-form .field-label span{color:var(--ink-soft);font-weight:var(--weight-medium)}.beta-access-form textarea.text-field{resize:vertical;min-height:94px;padding-block:12px;line-height:1.45}.beta-access-privacy{margin:-2px 0 14px}.beta-access-privacy a{color:var(--sea-deep);font-weight:var(--weight-bold);text-underline-offset:3px}.beta-access-honeypot{width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}@media (prefers-reduced-motion:reduce){.auth-form-view,.auth-form-view.is-active{transition:none;transform:none}}.legal-shell{overscroll-behavior:contain;background-color:var(--canvas);background-image:linear-gradient(#176b8707 1px,#0000 1px),linear-gradient(90deg,#176b8707 1px,#0000 1px);background-size:28px 28px;width:100%;height:100dvh;overflow:auto}.legal-header{z-index:10;height:var(--app-header-height);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#f7f6f1f5;border-bottom:1px solid #d5dcd9eb;justify-content:space-between;align-items:center;gap:20px;padding:0 max(24px,50vw - 460px);display:flex;position:sticky;top:0}.legal-brand{color:var(--ink);font-family:var(--display);font-size:var(--text-section);font-weight:var(--weight-bold);letter-spacing:-.025em;align-items:center;gap:9px;text-decoration:none;display:flex}.legal-brand .brand-mark{width:30px;height:30px}.legal-return{min-height:42px;color:var(--sea-deep);font-size:var(--text-caption);font-weight:var(--weight-bold);align-items:center;text-decoration:none;display:flex}.legal-return:hover{text-underline-offset:3px;text-decoration:underline}.legal-document{border:1px solid var(--line);background:var(--paper-strong);border-radius:10px;width:min(100% - 40px,820px);margin:28px auto 18px;padding:clamp(24px,5vw,50px);box-shadow:0 10px 32px #102b3a12}.legal-document>header{border-bottom:1px solid var(--line);margin-bottom:34px;padding-bottom:24px}.legal-kicker{color:var(--sea);font-size:var(--text-caption);font-weight:var(--weight-bold);letter-spacing:.13em;text-transform:uppercase}.legal-document h1{font-family:var(--display);letter-spacing:-.045em;margin:8px 0;font-size:clamp(32px,6vw,48px);line-height:1}.legal-document>header p{color:var(--ink-soft);font-size:var(--text-caption);margin:0}.legal-document section{margin-top:28px}.legal-document section:first-of-type{margin-top:0}.legal-document h2{color:var(--ink);font-family:var(--display);letter-spacing:-.015em;margin:0 0 8px;font-size:19px}.legal-document p{color:var(--ink-readable);margin:0 0 10px;line-height:1.7}.legal-document p:last-child{margin-bottom:0}.legal-document ul{color:var(--ink-readable);gap:8px;margin:10px 0 0;padding-left:22px;line-height:1.65;display:grid}.legal-document a{color:var(--sea-deep);font-weight:var(--weight-bold);text-underline-offset:3px}.legal-document strong{color:var(--ink)}.legal-footer{width:min(100% - 40px,820px);min-height:64px;padding-bottom:max(18px, env(safe-area-inset-bottom));color:var(--ink-soft);font-size:var(--text-caption);justify-content:space-between;align-items:center;gap:18px;margin:0 auto;display:flex}.legal-footer nav{gap:18px;display:flex}.legal-footer a{min-height:42px;color:var(--sea-deep);font-weight:var(--weight-bold);align-items:center;text-decoration:none;display:flex}.legal-footer a:hover{text-underline-offset:3px;text-decoration:underline}.personal-topbar{z-index:20;min-width:0;height:var(--app-header-height);min-height:var(--app-header-height);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#f7f6f1f7;border-bottom:1px solid #d5dcd9e6;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:24px;padding:0 24px;display:grid}.personal-nav{align-self:stretch;gap:4px;display:flex}.personal-nav a{min-height:44px;color:var(--ink-readable);font-size:var(--text-caption);font-weight:var(--weight-bold);align-items:center;padding:0 13px;text-decoration:none;display:flex;position:relative}.personal-nav a:hover,.personal-nav a.is-active{color:var(--sea-deep)}.personal-nav a.is-active:after{background:var(--coral);content:"";border-radius:3px 3px 0 0;height:3px;position:absolute;bottom:-1px;left:12px;right:12px}.personal-account-actions{align-items:center;display:flex}.sailing-home-shell{grid-template:var(--app-header-height) minmax(0, 1fr) / minmax(0, 1fr);background-color:var(--canvas);background-image:linear-gradient(#176b8706 1px,#0000 1px),linear-gradient(90deg,#176b8706 1px,#0000 1px);background-size:28px 28px;width:100%;height:100dvh;min-height:0;display:grid;overflow:hidden}.sailing-home-content{width:min(100%,1180px);min-height:0;padding:30px 24px max(64px, calc(32px + env(safe-area-inset-bottom)));overscroll-behavior:contain;grid-auto-rows:max-content;align-content:start;gap:18px;margin:0 auto;display:grid;overflow:auto}.home-heading{justify-content:space-between;align-items:end;gap:28px;padding:4px 2px 8px;display:flex}.home-heading>span{gap:5px;max-width:720px;display:grid}.home-invitations header small,.home-record-card header small,.home-readiness-card header small,.home-library-card header small{color:var(--sea);font-size:var(--text-caption);font-weight:var(--weight-bold);letter-spacing:.11em;text-transform:uppercase}.home-heading h1{font-family:var(--display);letter-spacing:-.045em;margin:0;font-size:clamp(30px,3.8vw,46px);line-height:1}.home-heading p{color:var(--ink-readable);font-size:var(--text-body);margin:3px 0 0;line-height:1.55}.home-primary-actions{flex:none;gap:8px;display:flex}.home-primary-actions a{background:var(--paper-strong);min-height:46px;color:var(--sea-deep);font-size:var(--text-caption);font-weight:var(--weight-bold);border:1px solid #b8c9c9;border-radius:7px;justify-content:center;align-items:center;gap:7px;padding:0 15px;text-decoration:none;display:flex}.home-primary-actions a.is-primary{border-color:var(--sea-deep);background:var(--sea-deep);color:#fff}.home-invitations{background:var(--sea-wash);border:1px solid #a9c8cd;border-radius:9px;display:grid;overflow:hidden;box-shadow:0 7px 20px #102b3a0a}.home-invitations>header{border-bottom:1px solid #a9c8cdb3;justify-content:space-between;align-items:end;gap:12px;padding:12px 15px 10px;display:flex}.home-invitations header>span{gap:2px;display:grid}.home-invitations h2,.home-record-card h2,.home-readiness-card h2,.home-library-card h2{font-family:var(--display);margin:0;font-size:19px}.home-invitations header>em{color:var(--sea-deep);font-size:var(--text-caption);font-style:normal;font-weight:var(--weight-bold);letter-spacing:.06em;text-transform:uppercase}.home-invitations>div{display:grid}.home-invitations article{border-bottom:1px solid #a9c8cd8c;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:11px;min-height:62px;padding:8px 14px;display:grid}.home-invitations article:last-child{border-bottom:0}.home-invite-icon{background:var(--paper-strong);width:34px;height:34px;color:var(--sea-deep);border-radius:6px;place-items:center;display:grid}.home-invitations article>span:nth-child(2){gap:2px;min-width:0;display:grid}.home-invitations strong{font-size:var(--text-caption);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.home-invitations article small{color:var(--ink-readable);font-size:var(--text-caption);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.home-invitations article a{background:var(--sea-deep);color:#fff;min-height:42px;font-size:var(--text-caption);font-weight:var(--weight-bold);border-radius:6px;place-items:center;padding:0 12px;text-decoration:none;display:grid}.home-dashboard-grid{grid-template-columns:minmax(0,1.75fr) minmax(280px,.75fr);align-items:start;gap:18px;display:grid}.home-voyages{min-width:0}.home-voyage-groups{gap:16px;display:grid}.home-voyage-group{gap:7px;min-width:0;display:grid}.home-voyage-group-heading{min-height:28px;padding:0 3px}.home-voyage-group-heading h2{font-family:var(--display);margin:0;font-size:17px}.home-voyage-group.is-sailing-now .home-voyage-group-heading h2{color:#347759}.home-trip-list{border:1px solid var(--line);background:var(--paper-strong);border-radius:9px;display:grid;overflow:hidden;box-shadow:0 7px 22px #102b3a0b}.home-trip-row{border-bottom:1px solid var(--line);min-width:0;min-height:78px;color:inherit;grid-template-columns:minmax(0,1fr) minmax(130px,auto) auto;align-items:center;gap:14px;padding:10px 10px 10px 15px;text-decoration:none;display:grid}.home-trip-row:last-child{border-bottom:0}.home-trip-row:hover{background:color-mix(in srgb, var(--sea-wash) 42%, var(--paper-strong))}.home-trip-row:focus-visible{z-index:1;outline-offset:-3px;outline:3px solid #176b874d;position:relative}.home-trip-copy,.home-trip-summary{gap:3px;min-width:0;display:grid}.home-trip-title{flex-wrap:wrap;align-items:center;gap:4px 8px;min-width:0;display:flex}.home-trip-copy h3{min-width:0;font-family:var(--display);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:17px;overflow:hidden}.home-trip-copy small{color:var(--ink-readable);font-size:var(--text-caption);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.home-trip-copy .home-trip-status{background:color-mix(in srgb, var(--coral-soft) 68%, var(--paper-strong));color:#8f452e;font-weight:var(--weight-bold);border-radius:4px;flex:none;align-items:center;gap:5px;padding:3px 6px;line-height:1.2;display:inline-flex}.home-trip-status>i{background:var(--coral);border-radius:50%;flex:none;width:6px;height:6px}.home-trip-copy .home-trip-last-opened{background:var(--sea-wash);color:var(--ink-soft);font-size:var(--text-caption);font-weight:var(--weight-bold);letter-spacing:.03em;text-transform:uppercase;border-radius:3px;flex:none;padding:2px 5px}.home-trip-summary small{color:var(--ink-readable);font-size:var(--text-caption);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.home-trip-summary{text-align:right;justify-items:end}.home-trip-summary strong{color:var(--ink-readable);font-size:var(--text-caption);font-weight:var(--weight-bold)}.home-trip-end{justify-content:flex-end;align-items:center;gap:7px;display:flex}.home-trip-row-action{background:var(--sea-deep);color:#fff;width:112px;min-height:42px;font-size:var(--text-caption);font-weight:var(--weight-bold);border-radius:6px;justify-content:center;align-items:center;gap:5px;padding:0 10px;display:flex}.home-empty-trip{text-align:center;background:#fffefaad;border:1px dashed #aebfbd;border-radius:9px;align-content:center;justify-items:center;gap:7px;min-height:290px;padding:28px;display:grid}.home-empty-mark{background:var(--sea-wash);width:52px;height:52px;color:var(--sea-deep);border-radius:50%;place-items:center;display:grid}.home-empty-trip h3{font-family:var(--display);margin:5px 0 0;font-size:20px}.home-empty-trip p{max-width:520px;color:var(--ink-readable);font-size:var(--text-caption);margin:0;line-height:1.55}.home-empty-trip>div{gap:7px;margin-top:5px;display:flex}.home-empty-trip a{background:var(--paper-strong);min-height:44px;color:var(--sea-deep);font-size:var(--text-caption);font-weight:var(--weight-bold);border:1px solid #b8c9c9;border-radius:6px;place-items:center;padding:0 13px;text-decoration:none;display:grid}.home-empty-trip a:first-child{border-color:var(--sea-deep);background:var(--sea-deep);color:#fff}.home-personal-column{gap:10px;display:grid}.home-record-card,.home-readiness-card,.home-library-card{border:1px solid var(--line);background:var(--paper-strong);border-radius:9px;display:grid;overflow:hidden;box-shadow:0 7px 22px #102b3a0b}.home-record-card>header,.home-readiness-card>header,.home-library-card>header{border-bottom:1px solid var(--line);gap:2px;padding:14px 15px 11px;display:grid}.home-record-stats{grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.home-record-stats>span{border-right:1px solid var(--line);text-align:center;gap:2px;min-width:0;padding:12px 8px;display:grid}.home-record-stats>span:last-child{border-right:0}.home-record-stats strong{font-family:var(--display);text-overflow:ellipsis;white-space:nowrap;font-size:19px;overflow:hidden}.home-record-stats small{color:var(--ink-soft);font-size:var(--text-caption);font-weight:var(--weight-bold);letter-spacing:.05em;text-transform:uppercase}.home-readiness-card>a,.home-library-card>a{border-bottom:1px solid var(--line);min-height:56px;color:inherit;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:9px;padding:6px 12px;text-decoration:none;display:grid}.home-readiness-card>a:last-child,.home-library-card>a:last-child{border-bottom:0}.home-readiness-card>a:hover,.home-library-card>a:hover{background:var(--sea-wash)}.home-readiness-card>a>span:first-child{background:var(--sand);width:30px;height:30px;color:var(--ink-soft);border-radius:6px;place-items:center;display:grid}.home-readiness-card>a>span:first-child.is-ready{color:#377449;background:#e7f2e9}.home-readiness-card>a>span:first-child.needs-attention{color:#946821;background:#faf0dc}.home-readiness-card>a>span:nth-child(2),.home-library-card>a>span{gap:2px;min-width:0;display:grid}.home-readiness-card strong,.home-library-card strong{font-size:var(--text-caption)}.home-readiness-card a small,.home-library-card a small{color:var(--ink-soft);font-size:var(--text-caption)}.home-library-card>a>.icon:first-child{width:30px;color:var(--sea-deep)}.account-shell{grid-template:var(--app-header-height) minmax(0, 1fr) / minmax(0, 1fr);background:var(--canvas);width:100%;height:100dvh;min-height:0;display:grid;overflow:hidden}.setup-content{grid-template-columns:minmax(0,620px);place-content:start center;gap:16px;width:100%;padding:26px 18px 60px;display:grid;overflow:auto}.setup-heading{gap:3px;display:grid}.setup-heading h1{font-size:var(--text-title);margin:0}.setup-stepper{counter-reset:step;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin:0;padding:0;list-style:none;display:grid}.setup-stepper a{border:1px solid var(--line);background:var(--paper-strong);min-height:46px;color:var(--ink-readable);font-size:var(--text-caption);font-weight:var(--weight-bold);border-radius:8px;align-items:center;gap:8px;padding:0 11px;text-decoration:none;display:flex}.setup-stepper i{border:2px solid var(--line);width:24px;height:24px;font-size:var(--text-caption);font-style:normal;font-weight:var(--weight-bold);border-radius:50%;flex:none;place-items:center;display:grid}.setup-stepper li.is-current a{border-color:var(--sea-deep);background:var(--sea-deep);color:#fff}.setup-stepper li.is-current i{color:#fff;background:#ffffff29;border-color:#ffffffb8}.setup-stepper li.is-done a{color:var(--ink-soft)}.setup-stepper li.is-done i{color:#fff;background:#4c9b73;border-color:#4c9b73}.setup-card{border:1px solid var(--line);background:var(--paper-strong);border-radius:11px;gap:13px;padding:20px;display:grid;box-shadow:0 8px 24px #102b3a0d}.setup-card-heading{gap:5px;display:grid}.setup-card-heading h2{font-family:var(--display);margin:0;font-size:22px}.setup-card-heading p{color:var(--ink-readable);font-size:var(--text-body);margin:0;line-height:1.55}.setup-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.setup-fields label,.setup-search{min-width:0;color:var(--ink);font-size:var(--text-caption);font-weight:var(--weight-bold);gap:6px;display:grid}.setup-fields label>span,.setup-search>span{justify-content:space-between;display:flex}.setup-fields small{color:var(--ink-soft);font-weight:var(--weight-semibold)}.setup-fields input,.setup-search input,.setup-invite input,.setup-invite select,.setup-link-invite select{width:100%;min-width:0;min-height:48px;font-size:var(--text-input);font-weight:var(--weight-medium);background:#fffefb;border:1px solid #b8c5c3;border-radius:7px;outline:0;padding:0 13px}.setup-invite select,.setup-link-invite select{width:auto;padding-right:30px}.setup-fields input:focus,.setup-search input:focus,.setup-invite input:focus,.setup-invite select:focus,.setup-link-invite select:focus{border-color:var(--sea);box-shadow:0 0 0 3px #176b871f}.setup-feedback{color:var(--ink-soft);font-size:var(--text-caption);margin:0}.setup-results{gap:5px;margin:0;padding:0;list-style:none;display:grid}.setup-results button{border:1px solid var(--line);background:var(--paper);text-align:left;border-radius:7px;gap:2px;width:100%;min-height:52px;padding:8px 12px;display:grid}.setup-results button:hover:not(:disabled){background:var(--sea-wash);border-color:#9dbfc4}.setup-results strong{font-size:var(--text-body)}.setup-results small{color:var(--ink-soft);font-size:var(--text-caption)}.setup-sent-invites{gap:7px;display:grid}.setup-sent-invites>header{justify-content:space-between;align-items:center;gap:10px;display:flex}.setup-sent-invites>header strong{font-size:var(--text-caption)}.setup-sent-invites>header small{color:var(--sea-deep);font-size:var(--text-caption);font-weight:var(--weight-bold)}.setup-results.is-invites li{border:1px solid var(--line);background:var(--paper);border-radius:7px;justify-content:space-between;align-items:center;gap:10px;min-height:48px;padding:6px 12px;display:flex}.setup-results.is-invites li>span{gap:2px;min-width:0;display:grid}.setup-results.is-invites li strong,.setup-results.is-invites li small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.setup-results.is-invites button{border:1px solid var(--line);background:var(--paper-strong);width:auto;min-height:38px;color:var(--sea-deep);font-size:var(--text-caption);font-weight:var(--weight-bold);border-radius:5px;padding:0 12px;display:inline}.setup-invite{gap:9px;display:grid}.setup-invite-rows{gap:7px;display:grid}.setup-invite-row{grid-template-columns:minmax(0,1fr) 150px 48px;gap:7px;display:grid}.setup-invite-row select{width:100%}.setup-invite-row .setup-invite-remove{border:1px solid var(--line);background:var(--paper);width:48px;min-height:48px;color:var(--ink-soft);font-size:22px;font-weight:var(--weight-medium);border-radius:7px;place-items:center;padding:0;display:grid}.setup-invite-row .setup-invite-remove:hover:not(:disabled){background:var(--coral-soft);color:#8f3d22;border-color:#d2a794}.setup-invite-add{min-height:38px;color:var(--sea-deep);font-size:var(--text-caption);font-weight:var(--weight-bold);text-underline-offset:4px;background:0 0;border:0;justify-self:start;padding:0;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.setup-invite-submit{justify-content:flex-end;padding-top:3px;display:flex}.setup-invite button.is-primary,.setup-link-invite button{background:var(--sea-deep);color:#fff;min-height:48px;font-size:var(--text-caption);font-weight:var(--weight-bold);border-radius:7px;padding:0 15px}.setup-invite button:disabled{cursor:wait;opacity:.55}.setup-link-invite{border:1px solid var(--line);background:var(--paper);border-radius:7px;justify-content:space-between;align-items:center;gap:14px;padding:11px 12px;display:flex}.setup-link-invite>span{gap:2px;display:grid}.setup-link-invite strong{font-size:var(--text-caption)}.setup-link-invite small{color:var(--ink-soft);font-size:var(--text-caption)}.setup-link-invite-actions{align-items:center;gap:7px;display:flex}.setup-link-invite button:disabled{cursor:wait;opacity:.55}.setup-actions{justify-content:space-between;align-items:center;gap:12px;padding-top:2px;display:flex}.setup-actions>a:not(.setup-finish){color:var(--ink-soft);font-size:var(--text-caption);font-weight:var(--weight-bold);text-underline-offset:3px;text-decoration:underline}.setup-actions>a:not(.setup-finish):hover{color:var(--ink)}.setup-actions button.is-primary,.setup-finish{background:var(--ink);color:#fff;min-height:48px;font-size:var(--text-body);font-weight:var(--weight-bold);border-radius:7px;align-items:center;gap:7px;margin-left:auto;padding:0 20px;text-decoration:none;display:flex}.setup-actions button.is-primary:hover,.setup-finish:hover{background:#183a4b}.setup-actions button:disabled{cursor:wait;opacity:.6}.account-content{width:100%;min-width:0;height:100%;min-height:0;padding:28px 18px max(60px, calc(32px + env(safe-area-inset-bottom)));overscroll-behavior:contain;-webkit-overflow-scrolling:touch;grid-template-columns:minmax(0,640px);grid-auto-rows:max-content;place-content:start center;gap:16px;display:grid;overflow:hidden auto}.account-heading{align-items:center;gap:14px;padding:4px 2px 8px;display:flex}.account-heading .user-avatar{width:52px;height:52px;font-size:var(--text-input);flex:none}.account-heading h1{font-size:var(--text-title);margin:0}.account-heading p{color:var(--ink-soft);font-size:var(--text-body);margin:3px 0 0}.account-card{border:1px solid var(--line);background:var(--paper-strong);border-radius:10px;gap:13px;padding:20px;display:grid;box-shadow:0 8px 24px #102b3a0d}.account-card-heading{gap:4px;display:grid}.account-card-heading h2{font-family:var(--display);margin:0;font-size:20px}.account-card-heading p{color:var(--ink-readable);font-size:var(--text-body);margin:0;line-height:1.5}.account-card-heading-with-action{justify-content:space-between;align-items:start;gap:18px;display:flex}.account-card-heading-with-action>span{gap:4px;display:grid}.avatar-settings-control{grid-template-columns:72px minmax(0,1fr) auto;align-items:center;gap:13px;display:grid}.avatar-preview{border:2px solid var(--paper);background:var(--sea-deep);color:#fff;width:72px;height:72px;font-size:20px;font-weight:var(--weight-bold);letter-spacing:.03em;border-radius:50%;flex:none;place-items:center;display:grid}.avatar-dropzone{min-height:72px;color:var(--sea-deep);cursor:pointer;background:#e7f1f16b;border:1px dashed #8baaaa;border-radius:7px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;padding:9px 12px;transition:border-color .12s,background .12s,box-shadow .12s;display:grid;position:relative}.avatar-dropzone input{clip:rect(0, 0, 0, 0);width:1px;height:1px;position:absolute;overflow:hidden}.avatar-dropzone>span{gap:2px;min-width:0;display:grid}.avatar-dropzone strong{font-size:var(--text-caption)}.avatar-dropzone small{color:var(--ink-readable);font-size:var(--text-caption);line-height:1.35}.avatar-dropzone:hover,.avatar-dropzone:focus-within{border-color:var(--sea);background:var(--sea-wash);box-shadow:0 0 0 3px #176b8714}.avatar-dropzone.is-dragging{border-color:var(--coral);color:#8d3c25;background:#fff0e8;border-style:solid;box-shadow:0 0 0 3px #ee69421f}.avatar-dropzone.is-uploading{cursor:wait;opacity:.72}.avatar-remove{color:#9b442a;min-height:42px;font-size:var(--text-caption);font-weight:var(--weight-bold);background:0 0;border:1px solid #d7aaa0;border-radius:6px;padding:0 10px}.avatar-remove:hover:not(:disabled){background:var(--coral-soft)}.sailing-library{gap:17px}.duplicate-people{background:#fff9ed;border:1px solid #dfc18b;border-radius:7px;gap:8px;padding:12px;display:grid}.duplicate-people-heading{gap:4px;display:grid}.duplicate-people-heading>span{gap:1px;display:grid}.duplicate-people-heading small{color:#946331;font-size:var(--text-caption);font-weight:var(--weight-bold);letter-spacing:.09em;text-transform:uppercase}.duplicate-people-heading strong{font-family:var(--display);font-size:15px}.duplicate-people-heading p{color:var(--ink-readable);font-size:var(--text-caption);margin:0;line-height:1.45}.duplicate-people>article{border-top:1px solid #ead8b6;gap:7px;padding-top:8px;display:grid}.duplicate-people-profiles{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;display:grid}.duplicate-people-profiles label{cursor:pointer;background:#fffefabf;border:1px solid #dac9a8;border-radius:6px;grid-template-columns:17px 34px minmax(0,1fr);align-items:center;gap:7px;min-height:58px;padding:6px;display:grid}.duplicate-people-profiles label.is-kept{border-color:var(--sea);box-shadow:inset 3px 0 0 var(--sea)}.duplicate-people-profiles input{width:16px;height:16px;accent-color:var(--sea)}.duplicate-people-profiles label>span:nth-of-type(2){gap:2px;min-width:0;display:grid}.duplicate-people-profiles strong{font-size:var(--text-caption)}.duplicate-people-profiles small{color:var(--ink-soft);font-size:var(--text-caption);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.duplicate-people-profiles b{color:var(--sea-deep);font-size:var(--text-caption);font-weight:var(--weight-bold);grid-column:3}.duplicate-people-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:5px;display:flex}.duplicate-people-actions>span{color:#805b35;font-size:var(--text-caption);font-weight:var(--weight-bold);margin-right:auto}.duplicate-people-actions button{background:var(--paper-strong);min-height:38px;color:var(--ink-readable);font-size:var(--text-caption);font-weight:var(--weight-bold);border:1px solid #d7c49f;border-radius:5px;padding:0 9px}.duplicate-people-actions button.is-primary{border-color:var(--ink);background:var(--ink);color:#fff}.duplicate-people-confirm{border-left:3px solid var(--route);color:#744d2c;font-size:var(--text-caption);background:#fff3df;margin:0;padding:7px 9px;line-height:1.4}.sailing-library-section{gap:7px;padding-top:1px;display:grid}.sailing-library-heading{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.sailing-library-heading strong{font-size:var(--text-body)}.sailing-library-heading small{color:var(--ink-soft);font-size:var(--text-caption);font-weight:var(--weight-bold);letter-spacing:.05em;text-transform:uppercase}.sailing-library-empty{color:var(--ink-readable);font-size:var(--text-caption);border:1px dashed #bdc8c6;border-radius:7px;margin:0;padding:13px;line-height:1.45}.sailing-library-list{display:grid}.sailing-library-list article{border-bottom:1px solid var(--line);grid-template-columns:36px minmax(0,1fr) auto auto;align-items:center;gap:8px;min-height:54px;padding:5px 0;display:grid}.sailing-library-list article:last-child{border-bottom:0}.sailing-library-profile{min-width:0;color:inherit;gap:1px;text-decoration:none;display:grid}.sailing-library-profile:hover strong{color:var(--sea-deep);text-underline-offset:3px;text-decoration:underline}.sailing-library-person-title{align-items:center;gap:6px;min-width:0;display:flex}.sailing-library-person-title strong{min-width:0}.sailing-library-identity{min-height:18px;font-size:var(--text-caption);font-style:normal;font-weight:var(--weight-bold);letter-spacing:.045em;text-transform:uppercase;border-radius:3px;flex:none;align-items:center;padding:0 6px;line-height:1;display:inline-flex}.sailing-library-identity.is-registered{background:var(--sea-wash);color:var(--sea-deep)}.sailing-library-identity.is-managed{background:var(--sand);color:#6d6753}.sailing-library-list strong{font-size:var(--text-caption);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.sailing-library-list small{color:var(--ink-soft);font-size:var(--text-caption);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.sailing-library-list button{border:1px solid var(--line);min-height:42px;color:var(--sea-deep);font-size:var(--text-caption);font-weight:var(--weight-bold);background:0 0;border-radius:5px;padding:0 9px}.sailing-library-list button.favorite-star{width:42px;min-width:42px;color:var(--ink-soft);border-color:#0000;place-items:center;padding:0;display:grid}.sailing-library-list button.favorite-star:hover,.sailing-library-list button.favorite-star:focus-visible{background:var(--sea-wash);color:var(--sea-deep);border-color:#b8c9c9}.sailing-library-list button.favorite-star[aria-pressed=true]{color:#a66f0d;background:#fff7dd;border-color:#dfc782}.sailing-library-list button.favorite-star[aria-pressed=true] .icon{fill:currentColor}.sailing-library-list button.is-danger{color:#9b472f;border-color:#0000}.sailing-library-list.is-yachts{grid-template-columns:repeat(auto-fit,minmax(min(100%,330px),1fr));gap:10px}.sailing-library-list.is-yachts .yacht-card{border:1px solid var(--line);grid-template-columns:minmax(0,1fr);align-items:stretch;gap:0;min-height:0;padding:0;display:grid}.sailing-library-list.is-yachts .yacht-card:last-child{border-bottom:1px solid var(--line)}.sailing-library-list.is-yachts .yacht-card-main{display:grid}.sailing-library-list.is-yachts .yacht-card-actions{display:flex}.sailing-library-list.is-yachts .yacht-card-actions button:first-of-type{grid-column:auto;justify-self:auto}.sailing-library-list.is-yachts .yacht-card-actions button.is-danger{grid-area:auto}.library-yacht-mark{background:var(--sea-wash);width:32px;height:32px;color:var(--sea-deep);font-size:var(--text-caption);font-weight:var(--weight-bold);border:1px solid #b8ced2;border-radius:6px;place-items:center;display:grid}.history-shell{grid-template:var(--app-header-height) minmax(0, 1fr) / minmax(0, 1fr);background:var(--canvas);width:100%;height:100dvh;min-height:0;display:grid;overflow:hidden}.history-content{width:min(100%,1060px);min-height:0;padding:28px 22px max(60px, calc(30px + env(safe-area-inset-bottom)));grid-auto-rows:max-content;align-content:start;gap:16px;margin:0 auto;display:grid;overflow:hidden auto}.history-content.is-narrow{width:min(100%,920px)}.history-heading{justify-content:space-between;align-items:end;gap:24px;padding:2px;display:flex}.history-heading>span:not(.history-avatar){gap:4px;min-width:0;display:grid}.history-heading small,.history-card-heading small,.history-note>small{color:var(--sea);font-size:var(--text-caption);font-weight:var(--weight-bold);letter-spacing:.11em;text-transform:uppercase}.history-heading h1{font-family:var(--display);letter-spacing:-.035em;margin:0;font-size:clamp(30px,4vw,48px)}.history-heading p{color:var(--ink-readable);font-size:var(--text-body);margin:0;line-height:1.55}.history-primary-action,.history-secondary-action{background:var(--sea-deep);color:#fff;min-height:46px;font-size:var(--text-caption);font-weight:var(--weight-bold);border-radius:7px;flex:none;justify-content:center;align-items:center;padding:0 16px;text-decoration:none;display:flex}.history-secondary-action{background:var(--paper-strong);color:var(--sea-deep);border:1px solid #a9c5c9}.history-heading>.history-heading-actions{flex:none;align-items:center;gap:8px;display:flex}.history-stats{background:var(--paper-strong);border:1px solid #cbd7d5;border-radius:9px;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));display:grid}.history-stats>span{border-right:1px solid var(--line);align-content:center;gap:2px;min-height:84px;padding:13px 18px;display:grid}.history-stats>span:last-child{border-right:0}.history-stats strong{font-family:var(--display);font-size:var(--text-title);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.history-stats small{color:var(--ink-soft);font-size:var(--text-caption);font-weight:var(--weight-bold);letter-spacing:.06em;text-transform:uppercase}.history-card{border:1px solid var(--line);background:var(--paper-strong);border-radius:9px;display:grid;overflow:hidden;box-shadow:0 7px 22px #102b3a0b}.history-card-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:end;gap:12px;padding:15px 17px 12px;display:flex}.history-card-heading>span{gap:3px;display:grid}.history-card-heading h2{font-family:var(--display);font-size:var(--text-section);margin:0}.history-trip-list{display:grid}.history-trip-row,.history-entity-row{border-bottom:1px solid var(--line);min-height:62px;color:inherit;justify-content:space-between;align-items:center;gap:14px;padding:9px 17px;text-decoration:none;display:flex}.history-trip-row:last-child,.history-entity-row:last-child{border-bottom:0}.history-trip-row:hover,a.history-entity-row:hover{background:var(--sea-wash)}.history-trip-row>span,.history-entity-row>span{gap:3px;min-width:0;display:grid}.history-trip-row strong,.history-entity-row strong{font-size:var(--text-body);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.history-trip-row small,.history-entity-row small{color:var(--ink-soft);font-size:var(--text-caption);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.history-trip-row em,.history-entity-row em{color:var(--sea-deep);font-size:var(--text-caption);font-style:normal;font-weight:var(--weight-bold);flex:none}.history-entity-row.is-static{background:#faf9f4}.history-entity-main{min-width:0;color:inherit;gap:3px;text-decoration:none;display:grid}.history-entity-main:hover strong{color:var(--sea-deep);text-underline-offset:3px;text-decoration:underline}.history-result-facts{justify-items:end;gap:5px;display:grid}.history-result-facts a{color:var(--sea-deep);font-size:var(--text-caption);font-weight:var(--weight-bold);text-underline-offset:3px}.history-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:16px;display:grid}.history-note{gap:8px;padding:17px}.history-note p{color:var(--ink-readable);font-size:var(--text-body);white-space:pre-wrap;margin:0;line-height:1.65}.history-empty{color:var(--ink-readable);text-align:center;gap:4px;padding:28px 18px;display:grid}.history-empty p{font-size:var(--text-caption);margin:0}.history-person-heading{justify-content:start;align-items:center}.history-managed-profile{width:100%}.history-managed-profile>.managed-sailor-name{border-top:0}.history-managed-profile .crew-account-invite,.history-managed-profile .crew-account-pending,.history-managed-profile>.crew-documents .crew-documents-fields{width:100%;max-width:none}.history-managed-profile>.crew-documents .crew-documents-form{border:0;border-top:1px solid #bad1d5;border-radius:0;margin:0;padding:13px 14px 14px}.history-avatar{background:var(--sea-deep);color:#fff;width:64px;height:64px;font-size:var(--text-section);font-weight:var(--weight-bold);border-radius:50%;flex:none;place-items:center;display:grid}.history-specs{grid-template-columns:repeat(2,minmax(0,1fr));margin:0;display:grid}.history-specs div{border-right:1px solid var(--line);border-bottom:1px solid var(--line);align-content:center;gap:3px;min-height:62px;padding:10px 16px;display:grid}.history-specs div:nth-child(2n){border-right:0}.history-specs dt{color:var(--ink-soft);font-size:var(--text-caption);font-weight:var(--weight-bold);letter-spacing:.08em;text-transform:uppercase}.history-specs dd{font-size:var(--text-body);font-weight:var(--weight-bold);margin:0}.completion-form{gap:14px;display:grid}.completion-grid{grid-template-columns:minmax(0,1fr);gap:10px;padding:15px;display:grid}.completion-grid label,.completion-yacht label{min-width:0;color:var(--ink-readable);font-size:var(--text-label);font-weight:var(--weight-semibold);gap:5px;display:grid}.completion-grid input,.completion-grid select,.completion-yacht input,.completion-yacht select,.completion-note textarea{border:1px solid var(--line);border-radius:var(--control-radius);background:var(--paper-strong);width:100%;min-width:0;min-height:44px;color:var(--ink);font-size:var(--text-input);font-weight:var(--weight-normal);padding:0 10px}.completion-dates{padding:0 15px 12px}.completion-dates summary{cursor:pointer;min-height:44px;font-size:var(--text-label);margin-bottom:8px}.completion-dates summary span{color:var(--ink-readable);font-size:var(--text-body);margin-top:4px;display:block}.completion-clear-dates{border:1px solid var(--line);border-radius:var(--control-radius);background:var(--paper-strong);min-height:44px;color:var(--sea-deep);margin-top:8px;padding:8px 12px}.completion-effect{color:var(--ink-readable);font-size:var(--text-body);margin:0}.completion-grid input,.completion-grid select,.completion-grid .date-input-control,.completion-yacht input,.completion-yacht select{height:44px}.completion-yacht{border-bottom:1px solid var(--line);grid-template-columns:minmax(150px,1.4fr) minmax(140px,1fr) 105px;align-items:end;gap:10px;padding:12px 15px;display:grid}.completion-yacht.has-distance{grid-template-columns:minmax(150px,1.4fr) minmax(140px,1fr) 105px 105px}.completion-yacht:last-child{border-bottom:0}.completion-yacht>span{align-self:center;gap:3px;display:grid}.completion-yacht strong{font-size:var(--text-body)}.completion-yacht small{color:var(--ink-soft);font-size:var(--text-caption)}.completion-yacht input[readonly]{color:var(--sea-deep);background:#eef3f2}.completion-track-picker{grid-column:2/-1;grid-template-columns:minmax(220px,1.1fr) minmax(180px,1fr);align-items:center;gap:10px;padding-top:2px;display:grid}.completion-track-picker input[type=file]{font-size:var(--text-caption);padding:8px}.completion-track-picker p,.completion-source-note,.completion-row-error{color:var(--ink-readable);font-size:var(--text-caption);margin:0;line-height:1.45}.completion-source-note,.completion-row-error{grid-column:2/-1}.completion-row-error{color:#943e28;font-weight:var(--weight-bold)}.completion-crew{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.completion-crew label{border-right:1px solid var(--line);border-bottom:1px solid var(--line);align-items:center;gap:10px;min-height:54px;padding:8px 15px;display:flex}.completion-crew label:nth-child(2n){border-right:0}.completion-crew label>span{gap:2px;display:grid}.completion-crew strong{font-size:var(--text-caption)}.completion-crew small{color:var(--ink-soft);font-size:var(--text-caption)}.completion-note{color:var(--ink);font-size:var(--text-caption);font-weight:var(--weight-bold);gap:7px;padding:15px}.completion-note textarea{resize:vertical;min-height:96px;padding:10px;line-height:1.5}.history-actions{justify-content:flex-end;align-items:center;gap:10px;display:flex}.history-actions a{min-height:44px;color:var(--ink-readable);font-size:var(--text-caption);font-weight:var(--weight-bold);padding:14px 8px 0;text-decoration:none}.history-actions button{background:var(--ink);color:#fff;min-height:46px;font-size:var(--text-caption);font-weight:var(--weight-bold);border-radius:7px;padding:0 18px}.history-error{border-left:3px solid var(--coral);background:var(--coral-soft);color:#88381f;font-size:var(--text-caption);margin:0;padding:10px 12px}.qualification-add{border:1px solid var(--sea);min-height:42px;color:var(--sea-deep);font-size:var(--text-caption);font-weight:var(--weight-bold);background:0 0;border-radius:6px;flex:none;padding:0 13px}.qualification-add:hover:not(:disabled){background:var(--sea-wash)}.qualification-add:disabled{opacity:.45}.qualification-empty{min-height:86px;color:var(--ink);text-align:left;background:#faf8f2;border:1px dashed #aebfbd;border-radius:8px;gap:4px;padding:17px;display:grid}.qualification-empty strong{font-size:var(--text-body)}.qualification-empty span{color:var(--ink-readable);font-size:var(--text-caption)}.qualification-list{gap:12px;display:grid}.qualification-entry{border:1px solid var(--line);background:#faf8f2;border-radius:8px;gap:13px;padding:15px;display:grid}.qualification-entry-heading{justify-content:space-between;align-items:center;gap:12px;min-height:26px;display:flex}.qualification-entry-heading strong{font-family:var(--display);text-overflow:ellipsis;white-space:nowrap;font-size:15px;overflow:hidden}.qualification-entry-heading button{color:#9b472f;font-size:var(--text-caption);font-weight:var(--weight-bold);background:0 0;flex:none;padding:5px 0}.qualification-entry-heading button:hover{text-decoration:underline}.qualification-dates{max-width:430px}.qualification-copy{border-top:1px solid var(--line);gap:10px;padding-top:13px;display:grid}.qualification-copy-heading{justify-content:space-between;align-items:start;gap:12px;display:flex}.qualification-copy-heading>span:first-child{gap:2px;display:grid}.qualification-copy-heading strong{font-size:var(--text-caption)}.qualification-copy-heading small,.qualification-copy-current small,.qualification-copy-picker small,.qualification-copy-note{color:var(--ink-readable);font-size:var(--text-caption);line-height:1.4}.qualification-copy-links{align-items:center;gap:10px;display:flex}.qualification-copy-links a,.qualification-copy-links button,.qualification-replace-file{color:var(--sea-deep);font-size:var(--text-caption);font-weight:var(--weight-bold);text-underline-offset:3px;background:0 0;padding:2px 0;text-decoration:underline}.qualification-copy-links button.is-remove{color:#9b472f}.qualification-file-list{gap:8px;display:grid}.qualification-copy-current{border:1px solid var(--line);background:var(--paper-strong);border-radius:7px;grid-template-columns:54px minmax(0,1fr) auto;align-items:center;gap:10px;min-width:0;padding:9px;display:grid}.qualification-copy-current.is-pending-removal{background:#fbeee8}.qualification-copy-current img,.qualification-copy-file{object-fit:cover;border-radius:4px;flex:none;width:54px;height:42px}.qualification-copy-file{background:var(--sea-wash);color:var(--sea-deep);font-size:var(--text-caption);font-weight:var(--weight-bold);place-items:center;display:grid}.qualification-copy-name{gap:2px;min-width:0;display:grid}.qualification-copy-name strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.qualification-replace-file{cursor:pointer}.qualification-replace-file input{clip:rect(0, 0, 0, 0);width:1px;height:1px;position:absolute;overflow:hidden}.qualification-file-error{grid-column:2/-1}.qualification-new-files{gap:6px;display:grid}.qualification-new-files>span{background:var(--sea-wash);border-radius:6px;justify-content:space-between;align-items:center;gap:10px;padding:8px 10px;display:flex}.qualification-new-files>span>span{gap:2px;min-width:0;display:grid}.qualification-new-files strong{font-size:var(--text-caption);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.qualification-new-files small{color:var(--ink-readable);font-size:var(--text-caption)}.qualification-new-files button{color:#9b472f;font-size:var(--text-caption);font-weight:var(--weight-bold);background:0 0;flex:none}.qualification-copy-picker{cursor:pointer;background:#e7f1f16b;border:1px dashed #8baaaa;border-radius:7px;flex-direction:column;justify-content:center;align-items:center;gap:3px;width:100%;min-height:92px;padding:14px;transition:border-color .14s,background .14s,box-shadow .14s;display:flex;position:relative}.qualification-copy-picker input{clip:rect(0, 0, 0, 0);width:1px;height:1px;position:absolute;overflow:hidden}.qualification-copy-picker>span{color:var(--sea-deep);font-size:var(--text-caption);font-weight:var(--weight-bold);text-align:center}.qualification-copy-picker:hover,.qualification-copy-picker:focus-within{border-color:var(--sea);background:var(--sea-wash);box-shadow:0 0 0 3px #176b8714}.qualification-copy-picker.is-dragging{border-color:var(--coral);background:#fff0e8;border-style:solid;box-shadow:0 0 0 3px #ee69421f}.qualification-copy-picker.is-dragging>span{color:#8d3c25}.qualification-copy-picker.is-full{cursor:not-allowed;opacity:.58}.qualification-copy-picker small{text-align:center;min-width:0}.qualification-drop-error{margin:0}.qualification-copy-note{color:#2f6e4b}.account-field-row{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:13px;display:grid}.account-field-row .account-field{min-width:0}.account-field{color:var(--ink);font-size:var(--text-caption);font-weight:var(--weight-bold);gap:6px;display:grid}.account-field input{width:100%;min-width:0;min-height:48px;font-size:var(--text-input);font-weight:var(--weight-medium);background:#fffefb;border:1px solid #b8c5c3;border-radius:7px;outline:0;padding:0 13px}.account-field input,.account-field .date-input-control{height:48px}.account-field input:focus{border-color:var(--sea);box-shadow:0 0 0 3px #176b871f}.account-actions{justify-content:flex-end;align-items:center;gap:12px;display:flex}.account-status{color:#2f6e4b;font-size:var(--text-caption);font-weight:var(--weight-bold)}.account-actions button{background:var(--ink);color:#fff;min-height:48px;font-size:var(--text-caption);font-weight:var(--weight-bold);border-radius:6px;padding:0 18px}.account-actions button:hover:not(:disabled){background:#183a4b}.account-actions button:disabled{cursor:not-allowed;opacity:.5}.text-field{width:100%;height:50px;font-size:var(--text-body);background:#fffefb;border:1px solid #cbc8bc;border-radius:11px;outline:none;margin:0 0 18px;padding:0 14px;transition:border-color .15s,box-shadow .15s}.text-field:focus{border-color:var(--sea);box-shadow:0 0 0 3px #176b871f}.text-field[readonly]{background:var(--sea-wash);color:var(--ink);cursor:default;border-color:#b8ced2}.text-field.has-error{border-color:var(--coral);margin-bottom:5px}.auth-claim-hint{margin:-8px 0 18px}.field-error{color:#a4472d;font-size:var(--text-caption);margin-bottom:14px;line-height:1.4}.country-field{gap:5px;min-width:0;display:grid}.country-field>label{color:var(--ink-readable);font-size:var(--text-caption);font-weight:var(--weight-bold);display:block}.account-field.country-field>label{color:var(--ink);font-size:inherit}.crew-import-documents .country-field>label{font-size:var(--text-caption);letter-spacing:.04em;text-transform:uppercase}.country-combobox{min-width:0;position:relative}.country-combobox input{width:100%;min-width:0;padding-right:40px!important}.country-combobox>button{border-left:1px solid var(--line);width:38px;height:calc(100% - 4px);color:var(--sea-deep);background:0 0;border-radius:0 5px 5px 0;place-items:center;padding:0;display:grid;position:absolute;top:50%;right:2px;translate:0 -50%}.country-combobox>button:hover:not(:disabled){background:var(--sea-wash)}.country-combobox>button:disabled{cursor:not-allowed;opacity:.45}.country-combobox>button .icon{rotate:90deg}.country-field>.field-error{margin:0}.country-combobox-menu{z-index:120;overscroll-behavior:contain;touch-action:pan-y;-webkit-overflow-scrolling:touch;background:#fffefafc;border:1px solid #a9bec0;border-radius:7px;padding:4px;position:fixed;overflow-y:auto;box-shadow:0 14px 34px #102b3a33}.country-combobox-menu>button{width:100%;min-height:44px;color:var(--ink);text-align:left;background:0 0;border-radius:4px;grid-template-columns:25px minmax(0,1fr) auto;align-items:center;gap:8px;padding:5px 8px;display:grid}.country-combobox-menu>button:hover,.country-combobox-menu>button.is-active{background:var(--sea-wash)}.country-combobox-menu>button.is-selected{box-shadow:inset 3px 0 0 var(--sea)}.country-combobox-menu>button>span{font-size:var(--text-section);line-height:1}.country-combobox-menu strong{font-size:var(--text-caption);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.country-combobox-menu small{color:var(--ink-soft);font-size:var(--text-caption);font-weight:var(--weight-bold)}.country-combobox-menu>p{color:var(--ink-readable);font-size:var(--text-caption);margin:0;padding:13px 10px}.remember-field{color:var(--ink-soft);font-size:var(--text-caption);align-items:center;gap:9px;margin:1px 0 24px;display:flex}.remember-field input{width:17px;height:17px;accent-color:var(--sea)}.auth-submit{background:var(--sea);color:#fff;min-height:50px;font-size:var(--text-caption);font-weight:var(--weight-bold);border-radius:8px;box-shadow:0 8px 20px #176b872e}.auth-submit:hover{background:var(--sea-deep)}.auth-submit:disabled{cursor:wait;opacity:.65}.demo-login{border:1px solid var(--line);background:#f5f1e7;border-radius:13px;margin-top:28px;padding:18px 18px 17px;position:relative}.demo-login>span{background:var(--sand);color:var(--ink-soft);font-size:var(--text-caption);font-weight:var(--weight-bold);letter-spacing:.08em;text-transform:uppercase;border-radius:9px;padding:2px 7px;position:absolute;top:-9px;left:13px}.demo-login p{color:var(--ink-soft);font-size:var(--text-caption);margin:0 0 10px;line-height:1.5}.demo-login button{color:var(--sea);font-size:var(--text-caption);font-weight:var(--weight-bold);background:0 0;padding:0}.app-shell{grid-template:var(--app-header-height) minmax(0, 1fr) / 72px minmax(0, 1fr);min-height:560px}.topbar{gap:12px;padding-inline:12px}.topbar-identity{gap:14px}.brand{font-size:var(--text-section);gap:7px}.brand-mark{width:30px;height:30px}.trip-switcher-wrap{padding-left:14px}.trip-switcher{gap:10px;min-width:240px;padding:4px 8px}.trip-switcher-copy{gap:1px}.trip-switcher-copy strong,.trip-switcher-copy small{font-size:var(--text-caption)}.topbar-actions{gap:8px}.archive-status{padding-inline:9px}.crew-avatar,.user-avatar{width:32px;height:32px}.user-avatar{width:36px;height:36px}.share-button{padding-inline:11px}.primary-nav{gap:5px;padding:10px 6px}.nav-item{width:60px;min-height:56px;font-size:var(--text-caption);border-radius:6px;gap:4px}.nav-item.is-active:before{height:28px;left:-6px}.section-workspace{gap:10px;padding:16px}.section-heading{gap:14px}.section-heading>span{gap:2px}.section-heading h1{font-size:var(--text-title)}.section-heading p{font-size:var(--text-caption);line-height:1.4}.section-add-button,.section-story-button,.kitty-currency,.yacht-detail-add,.yacht-detail-remove{min-height:44px}.kitty-currency{height:44px}.kitty-stats article{border-radius:7px;padding:10px 12px}.kitty-stats strong{font-size:19px}.kitty-form,.log-form{border-radius:7px;gap:8px;padding:11px}.kitty-card,.log-entries,.yacht-detail-crew{border-radius:8px;padding:11px}.log-entry{gap:9px;padding-block:8px}.panel-heading{gap:10px;padding:10px 14px 7px}.eyebrow,.detail-eyebrow{font-size:var(--text-caption);letter-spacing:.1em}h1{font-size:var(--text-title)}.plan-switcher{gap:3px;padding:4px 14px 6px}.plan-tabs-row,.plan-tabs{gap:4px}.plan-tab{height:42px;min-height:42px;font-size:var(--text-caption);border-radius:5px;gap:5px;padding-inline:9px}.plan-add{border-radius:5px;width:42px;height:42px}.plan-card{border:0;border-top:1px solid var(--line);box-shadow:none;background:0 0;border-radius:0;gap:5px;padding:6px 0 0}.plan-card .plan-meta{padding-top:7px}.route-heading-meta{font-size:var(--text-caption);margin-top:4px}.planning-context{gap:6px;margin-top:7px}.planning-context>span{font-size:var(--text-caption)}.planning-context select{min-height:36px;font-size:var(--text-caption);padding-inline:8px}.itinerary-list{padding:5px 7px 12px 10px}.stop-card{grid-template-columns:35px minmax(0,1fr);min-height:58px;padding-block:5px}.stop-copy{gap:2px}.stop-copy strong{font-size:var(--text-body)}.stop-meta{font-size:var(--text-caption);gap:5px}.leg-summary{min-height:42px;font-size:var(--text-caption);padding-left:40px}.sailing-day-summary{padding-left:40px}.sailing-day-arrival:before,.sailing-day-summary:before{left:18px}.itinerary-item:before{top:36px;left:18px}.panel-footer{padding:7px 10px 8px}.primary-button,.secondary-button{min-height:42px}.map-ruler{bottom:10px}.fleet-workspace{padding:16px}.fleet-page-heading{align-items:center;gap:16px;margin-bottom:11px}.fleet-page-heading>span:first-child{gap:2px}.fleet-page-heading small,.fleet-section-heading small,.yacht-editor-heading small{font-size:var(--text-caption)}.fleet-page-heading h1{font-size:var(--text-title)}.fleet-page-heading p{font-size:var(--text-caption);line-height:1.35}.fleet-page-summary{background:0 0;border:0;border-radius:0;gap:0;min-height:44px;padding:0}.fleet-page-summary span{border-right:1px solid var(--line);font-size:var(--text-caption);gap:1px;padding:0 11px}.fleet-page-summary span:first-child{padding-left:0}.fleet-page-summary span:last-child{border-right:0;padding-right:0}.fleet-page-summary strong{font-size:var(--text-body)}.fleet-add-button,.fleet-import-button,.crew-export-button{min-height:44px;font-size:var(--text-caption);padding-inline:14px}.fleet-page-grid{gap:10px}.fleet-roster-section{border-radius:7px}.fleet-section-heading{min-height:50px;padding:7px 11px}.fleet-section-heading strong{font-size:var(--text-input)}.fleet-yacht-command{min-height:44px;padding:5px 10px}.yacht-editor{gap:9px;margin:0 8px 8px;padding:11px}.fleet-roster-filter{padding:7px 9px}.fleet-roster-list{padding-inline:9px}.fleet-roster-row{gap:7px;min-height:60px;padding-block:8px}.fleet-roster-row.is-selected{margin-block:3px;padding:9px}.share-dialog{border-radius:8px;gap:10px;padding:14px}.share-form{gap:7px;padding:9px}.share-form input,.share-form select,.share-form button{min-height:44px}.share-invite{min-height:48px;padding:6px 8px}.setup-content{grid-template-columns:minmax(0,720px);gap:11px;padding:18px 16px 36px}.setup-heading h1{font-size:var(--text-title)}.setup-stepper a{min-height:42px;font-size:var(--text-caption);border-radius:6px;padding-inline:9px}.setup-card{border-radius:8px;gap:10px;padding:15px}.setup-card-heading{gap:3px}.setup-card-heading h2{font-size:19px}.setup-card-heading p{font-size:var(--text-caption);line-height:1.4}.setup-fields{gap:8px}.setup-fields input,.setup-search input,.setup-invite input,.setup-invite select,.setup-link-invite select{min-height:44px;padding-inline:11px}.setup-invite button.is-primary,.setup-link-invite button,.setup-actions button.is-primary,.setup-finish{min-height:44px}.account-shell{grid-template-rows:var(--app-header-height) minmax(0, 1fr)}.account-content{padding:18px 16px max(28px, calc(18px + env(safe-area-inset-bottom)));display:block}.account-workspace{grid-template-columns:220px minmax(0,1fr);align-content:start;align-items:start;width:min(100%,1120px);min-height:100%;margin:0 auto;display:grid}.account-navigation{border-right:1px solid var(--line);gap:13px;padding:10px 16px 16px 0;display:grid;position:sticky;top:0}.account-navigation nav{gap:3px;display:grid}.account-navigation nav a{min-height:44px;color:var(--ink-readable);font-size:var(--text-caption);font-weight:var(--weight-bold);border-radius:6px;grid-template-columns:20px minmax(0,1fr) auto;align-items:center;gap:8px;padding:0 10px;text-decoration:none;display:grid}.account-navigation nav a:hover{color:var(--sea-deep);background:#e7f1f19e}.account-navigation nav a.is-active{background:var(--sea-deep);color:#fff;box-shadow:none}.account-navigation nav a.is-active:hover{color:#fff;background:#0b465c}.account-navigation nav a em{min-width:22px;color:var(--ink-soft);font-size:var(--text-caption);text-align:center;background:#102b3a12;border-radius:10px;padding:3px 6px;font-style:normal}.account-navigation nav a.is-active em{color:#fff;background:#ffffff29}.account-section{gap:12px;min-width:0;padding-left:18px;display:grid}.account-section-heading{align-content:center;gap:2px;min-height:70px;padding:0 2px 7px;display:grid}.account-section-heading small{color:var(--sea);font-size:var(--text-caption);font-weight:var(--weight-bold);letter-spacing:.11em;text-transform:uppercase}.account-section-heading h1{font-family:var(--display);font-size:var(--text-title);letter-spacing:-.025em;margin:0}.account-section-heading p{color:var(--ink-readable);font-size:var(--text-caption);margin:0;line-height:1.45}.account-settings{border:1px solid var(--line);background:var(--paper-strong);border-radius:8px;display:grid;overflow:hidden;box-shadow:0 8px 24px #102b3a0d}.account-card{border-radius:8px;gap:10px;padding:15px}.account-settings .account-card{border:0;border-bottom:1px solid var(--line);box-shadow:none;background:0 0;border-radius:0}.account-settings .account-card:last-child{border-bottom:0}.account-card-heading{gap:2px}.account-card-heading h2{font-size:17px}.account-card-heading p{font-size:var(--text-caption);line-height:1.4}.account-card-heading-with-action{gap:12px}.account-field-row{gap:9px}.account-field{font-size:var(--text-caption);gap:4px}.account-field>input,.account-field .date-input-control{height:44px;min-height:44px}.account-field>input{padding-inline:11px}.account-field .date-input-control{--date-input-padding:11px;padding:0}.account-actions{gap:9px}.account-actions button{min-height:44px;padding-inline:15px}.qualification-add{min-height:40px}.qualification-empty{min-height:68px;padding:12px}.qualification-list{gap:9px}.qualification-entry{gap:10px;padding:0 0 11px;overflow:hidden}.qualification-entry:not(.is-open){padding-bottom:0}.qualification-summary{width:100%;min-height:62px;color:var(--ink);text-align:left;background:0 0;grid-template-columns:minmax(0,1fr) auto 18px;align-items:center;gap:10px;padding:8px 12px;display:grid}.qualification-summary:hover,.qualification-summary:focus-visible{background:var(--sea-wash)}.qualification-summary>span{gap:3px;min-width:0;display:grid}.qualification-summary strong,.qualification-summary small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.qualification-summary strong{font-family:var(--display);font-size:var(--text-body)}.qualification-summary small{color:var(--ink-soft);font-size:var(--text-caption)}.qualification-summary em{color:var(--ink-soft);font-size:var(--text-caption);font-style:normal;font-weight:var(--weight-bold)}.qualification-summary>.icon{color:var(--sea-deep);transition:rotate .15s}.qualification-entry.is-open .qualification-summary{border-bottom:1px solid var(--line);background:#e7f1f16b}.qualification-entry.is-open .qualification-summary>.icon{rotate:90deg}.qualification-entry>.account-field-row,.qualification-entry>.qualification-copy,.qualification-entry>.qualification-entry-heading{margin-inline:11px}.qualification-entry-heading{color:var(--ink-soft);font-size:var(--text-caption);font-weight:var(--weight-bold)}.qualification-copy{gap:8px;padding-top:10px}.qualification-copy-picker{min-height:72px;padding:10px}.account-card-link{min-height:42px;color:var(--sea-deep);font-size:var(--text-caption);font-weight:var(--weight-bold);border:1px solid #a9c5c9;border-radius:6px;flex:none;justify-content:center;align-items:center;gap:4px;padding:0 10px;text-decoration:none;display:flex}.account-card-link:hover{background:var(--sea-wash)}.sailor-passport{gap:10px;display:grid}.passport-record{border:1px solid var(--line);border-radius:var(--surface-radius);background:var(--paper-strong);min-width:0;overflow:hidden}.passport-person{border-bottom:1px solid var(--line);align-items:center;gap:12px;padding:12px 16px;display:flex}.passport-person .user-avatar{flex-shrink:0}.passport-person>span:nth-child(2){overflow-wrap:anywhere;gap:3px;min-width:0;display:grid}.passport-person strong{font-size:var(--text-body)}.passport-person small{color:var(--ink-soft);font-size:var(--text-caption)}.passport-person a{min-height:44px;color:var(--sea-deep);font-size:var(--text-label);font-weight:var(--weight-semibold);align-items:center;gap:4px;margin-left:auto;text-decoration:none;display:inline-flex}.passport-person a:hover{text-decoration:underline}.passport-metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:0;padding:16px;display:grid}.passport-metrics>div{min-width:0}.passport-metrics dt{color:var(--ink-readable);font-size:var(--text-label);margin-bottom:8px}.passport-metrics dd{color:var(--ink);font-size:var(--text-title);font-weight:var(--weight-semibold);overflow-wrap:anywhere;margin:0;line-height:1.1}.passport-metrics dd small{font-size:var(--text-label);font-weight:var(--weight-medium)}.passport-coverage{padding:0 16px 16px}.passport-coverage p{color:var(--ink-soft);font-size:var(--text-caption);margin:0;line-height:1.5}.passport-coverage progress{appearance:none;background:var(--sea-wash);width:100%;height:4px;accent-color:var(--sea);border:0;border-radius:2px;margin-top:10px;display:block}.passport-coverage progress::-webkit-progress-bar{background:var(--sea-wash)}.passport-coverage progress::-webkit-progress-value{background:var(--sea)}.passport-card-note{color:var(--ink-readable);font-size:var(--text-body);margin:0;padding:12px;line-height:1.5}.sailor-passport-hero{border:1px solid var(--line);background:var(--paper-strong);border-radius:8px;grid-template-columns:minmax(0,1.35fr) minmax(200px,.65fr);display:grid;overflow:hidden;box-shadow:0 7px 22px #102b3a0a}.sailor-passport-primary{min-width:0;padding:16px;display:grid}.sailor-passport-person{grid-template-columns:46px minmax(0,1fr) auto;align-items:center;gap:10px;display:grid}.sailor-passport-person .user-avatar{width:46px;height:46px;font-size:var(--text-body)}.sailor-passport-person>span:nth-child(2){gap:2px;min-width:0;display:grid}.sailor-passport-person strong,.sailor-passport-person small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.sailor-passport-person strong{font-family:var(--display);font-size:17px}.sailor-passport-person small{color:var(--ink-soft);font-size:var(--text-caption)}.sailor-passport-private{border:1px solid var(--line);min-height:32px;color:var(--ink-soft);font-size:var(--text-caption);font-weight:var(--weight-bold);white-space:nowrap;border-radius:5px;align-items:center;gap:5px;padding:0 9px;display:flex}.sailor-passport-distance{border-top:1px solid var(--line);gap:5px;margin-top:14px;padding-top:13px;display:grid}.sailor-passport-distance>small,.sailor-passport-stats small,.sailor-passport-card>header small{color:var(--ink-soft);font-size:var(--text-caption);font-weight:var(--weight-bold);letter-spacing:.09em;text-transform:uppercase}.sailor-passport-distance>strong{font-family:var(--display);text-overflow:ellipsis;white-space:nowrap;font-size:clamp(25px,3vw,34px);line-height:1;overflow:hidden}.sailor-passport-distance>strong em{color:var(--ink-soft);font-family:var(--sans);font-size:var(--text-caption);font-style:normal;font-weight:var(--weight-bold)}.sailor-passport-distance p{color:var(--ink-readable);font-size:var(--text-caption);margin:0;line-height:1.4}.sailor-passport-coverage,.sailor-passport-role-track{background:var(--sea-wash);border-radius:2px;height:5px;overflow:hidden}.sailor-passport-coverage span{background:var(--sea);height:100%;display:block}.sailor-passport-stats{border-left:1px solid var(--line);grid-template-columns:minmax(0,1fr);display:grid}.sailor-passport-stats>span{border-bottom:1px solid var(--line);align-content:center;gap:2px;min-width:0;min-height:72px;padding:10px 14px;display:grid}.sailor-passport-stats>span:last-child{border-bottom:0}.sailor-passport-stats strong{font-family:var(--display);font-size:var(--text-section);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.sailor-passport-stats em{color:var(--ink-soft);font-size:var(--text-caption);font-style:normal}.sailor-passport-stats .is-skipper strong{color:#946821}.sailor-passport-detail-grid{grid-template-columns:minmax(0,1.45fr) minmax(235px,.55fr);align-items:start;gap:10px;display:grid}.sailor-passport-side{align-items:start;gap:10px;display:grid}.sailor-passport-card{border:1px solid var(--line);background:var(--paper-strong);border-radius:8px;align-content:start;display:grid;overflow:hidden;box-shadow:0 7px 22px #102b3a09}.sailor-passport-card>header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;min-height:54px;padding:9px 13px;display:flex}.sailor-passport-card>header>span{gap:2px;display:grid}.sailor-passport-card>header h2{font-family:var(--display);font-size:var(--text-input);margin:0}.sailor-passport-card>header>a{min-height:38px;color:var(--sea-deep);font-size:var(--text-caption);font-weight:var(--weight-bold);align-items:center;gap:3px;text-decoration:none;display:flex}.sailor-passport-card>header>a:hover{text-underline-offset:3px;text-decoration:underline}.sailor-passport-voyages{display:grid;container:passport-voyages/inline-size}.sailor-passport-voyages>a{border-bottom:1px solid var(--line);min-height:72px;color:inherit;grid-template-columns:18px minmax(0,1fr) auto 14px;align-items:center;gap:12px;padding:12px;text-decoration:none;display:grid}.sailor-passport-voyages>a:last-child{border-bottom:0}.sailor-passport-voyages>a:hover{background:var(--sea-wash)}.sailor-passport-voyages>a>.icon:first-child{color:var(--sea-deep)}.sailor-passport-voyage-title,.sailor-passport-voyage-distance{gap:4px;min-width:0;display:grid}.sailor-passport-voyage-title{overflow-wrap:anywhere}.sailor-passport-voyage-title strong,.sailor-passport-voyage-distance strong{font-size:var(--text-body);line-height:1.35}.sailor-passport-voyage-title small,.sailor-passport-voyage-distance small{color:var(--ink-soft);font-size:var(--text-caption);line-height:1.45}.sailor-passport-voyage-summary{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px 16px;min-width:0;display:flex}.sailor-passport-voyage-distance{text-align:right;justify-items:end}.sailor-passport-role{background:var(--sea-wash);color:var(--sea-deep);font-size:var(--text-caption);font-style:normal;font-weight:var(--weight-bold);letter-spacing:.05em;text-transform:uppercase;white-space:nowrap;border-radius:3px;padding:3px 5px}.sailor-passport-role.is-skipper{color:#8b5e1f;background:#faf0dc}.sailor-passport-role.is-co-skipper{background:var(--coral-soft);color:#8f4f37}.sailor-passport-empty{color:var(--ink-readable);text-align:center;justify-items:center;gap:5px;padding:30px 16px;display:grid}.sailor-passport-empty>.icon{color:var(--sea)}.sailor-passport-empty strong{font-family:var(--display);font-size:15px}.sailor-passport-empty p{font-size:var(--text-caption);margin:0;line-height:1.45}.sailor-passport-empty a{min-height:40px;color:var(--sea-deep);font-size:var(--text-caption);font-weight:var(--weight-bold);border:1px solid #a9c5c9;border-radius:5px;place-items:center;margin-top:4px;padding:0 11px;text-decoration:none;display:grid}.sailor-passport-roles{padding-bottom:6px}.sailor-passport-role-track{margin:12px 13px 9px;display:flex}.sailor-passport-role-track span{height:100%;display:block}.sailor-passport-role-track .is-skipper,.sailor-passport-roles dt i.is-skipper{background:#b7822f}.sailor-passport-role-track .is-co-skipper,.sailor-passport-roles dt i.is-co-skipper{background:var(--route)}.sailor-passport-role-track .is-crew,.sailor-passport-roles dt i.is-crew{background:var(--sea)}.sailor-passport-roles dl{gap:0;margin:0;padding:0 13px 5px;display:grid}.sailor-passport-roles dl>div{justify-content:space-between;align-items:center;gap:8px;min-height:30px;display:flex}.sailor-passport-roles dt{color:var(--ink-readable);font-size:var(--text-caption);font-weight:var(--weight-bold);align-items:center;gap:6px;display:flex}.sailor-passport-roles dt i{border-radius:50%;width:7px;height:7px}.sailor-passport-roles dd{font-size:var(--text-caption);font-weight:var(--weight-bold);white-space:nowrap;margin:0}.sailor-passport-roles dd small{color:var(--ink-soft);font-size:var(--text-caption);font-weight:var(--weight-semibold)}.sailor-passport-qualifications>a:not(.sailor-passport-qualification-empty){border-bottom:1px solid var(--line);min-height:54px;color:inherit;grid-template-columns:18px minmax(0,1fr) 14px;align-items:center;gap:7px;padding:7px 12px;text-decoration:none;display:grid}.sailor-passport-qualifications>a:last-child{border-bottom:0}.sailor-passport-qualifications>a:hover{background:var(--sea-wash)}.sailor-passport-qualifications>a>.icon:first-child{color:var(--sea-deep)}.sailor-passport-qualifications>a>span{gap:2px;min-width:0;display:grid}.sailor-passport-qualifications>a strong,.sailor-passport-qualifications>a small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.sailor-passport-qualifications>a strong{font-size:var(--text-caption)}.sailor-passport-qualifications>a small{color:var(--ink-soft);font-size:var(--text-caption)}.sailor-passport-qualification-empty{min-height:50px;color:var(--sea-deep);font-size:var(--text-caption);font-weight:var(--weight-bold);justify-content:space-between;align-items:center;padding:7px 12px;text-decoration:none;display:flex}.sailing-library-toolbar{grid-template-columns:auto minmax(0,280px);justify-content:space-between;align-items:center;gap:12px;display:grid}.sailing-library-tabs{align-items:center;gap:4px;display:flex}.sailing-library-tabs button{border:1px solid var(--line);background:var(--paper);min-height:42px;color:var(--ink-readable);font-size:var(--text-caption);font-weight:var(--weight-bold);border-radius:6px;padding:0 12px}.sailing-library-tabs button.is-active{border-color:var(--sea-deep);background:var(--sea-deep);color:#fff}.sailing-library-tabs button span{color:var(--ink-soft);font-size:var(--text-caption);margin-left:4px}.sailing-library-tabs button.is-active span{color:#ffffffbf}.sailing-library-search{align-items:center;width:100%;min-width:0;display:flex;position:relative}.sailing-library-search .icon{color:var(--ink-soft);pointer-events:none;position:absolute;left:11px}.sailing-library-search input{width:100%;min-width:0;min-height:var(--control-height);font-size:var(--text-input);background:#fffefb;border:1px solid #b8c5c3;border-radius:6px;outline:0;padding:0 11px 0 34px}.sailing-library-search input:focus{border-color:var(--sea);box-shadow:0 0 0 3px #176b871a}.sailing-library-more{border:1px solid var(--line);background:var(--paper);min-height:42px;color:var(--sea-deep);font-size:var(--text-caption);font-weight:var(--weight-bold);border-radius:6px;justify-self:center;padding:0 14px}.sailing-library-more:hover{background:var(--sea-wash)}.trip-form-shell{grid-template-rows:var(--app-header-height) minmax(0, 1fr)}.trip-form-topbar{padding-inline:18px}.trip-form-brand{font-size:var(--text-section);gap:7px}.trip-form-brand .brand-mark{width:29px;height:29px}.trip-form-story{padding:clamp(38px,5vw,72px)}.trip-form-story h1{margin:11px 0 13px;font-size:clamp(36px,4.5vw,62px)}.trip-form-story p{font-size:clamp(13px,1.15vw,16px);line-height:1.5}.trip-form-route{margin-top:clamp(26px,5vh,54px)}.trip-form-panel{padding:clamp(20px,3vw,40px)}.trip-form-card{gap:14px}.trip-form-heading{gap:4px;margin-bottom:1px}.trip-form-heading h2{font-size:var(--text-title)}.trip-form-heading p{font-size:var(--text-body);line-height:1.4}.trip-form-field{font-size:var(--text-caption);gap:5px}.trip-form-field input,.trip-form-field select,.trip-date-fields input{height:48px;padding-inline:12px}.trip-date-choice{gap:7px}.trip-date-options button{gap:3px;min-height:68px;padding:10px 12px}.trip-date-options strong{font-size:var(--text-body)}.trip-date-options small{font-size:var(--text-caption);line-height:1.35}.trip-date-fields{padding:11px}.date-range-picker{gap:10px}.date-range-months{gap:10px;padding:10px}.date-range-month+.date-range-month{padding-left:10px}.date-range-month h3{font-size:var(--text-body);margin-bottom:8px}.trip-form-actions a,.trip-form-actions button{min-height:46px;padding-inline:16px}.auth-form-heading{margin-bottom:24px}.auth-form-heading h1{font-size:var(--text-title)}.text-field{border-radius:8px;height:46px;margin-bottom:14px}.remember-field{margin-bottom:18px}.auth-submit{min-height:46px}.demo-login{border-radius:9px;margin-top:22px;padding:15px}.personal-context{flex:1;min-width:0}.personal-context a{max-width:100%;min-height:44px;color:var(--ink);font-weight:var(--weight-semibold);align-items:center;text-decoration:none;display:inline-flex}.breadcrumbs ol{flex-wrap:wrap;align-items:center;gap:4px 8px;margin:0;padding:0;list-style:none;display:flex}.breadcrumbs li{min-width:0;font-size:var(--text-caption);align-items:center;gap:8px;display:flex}.breadcrumbs li+li:before{content:"/";color:var(--ink-soft)}.breadcrumbs a{min-height:42px;color:var(--sea-deep);text-underline-offset:3px;align-items:center;display:inline-flex}.breadcrumbs [aria-current]{color:var(--ink-readable)}.library-profile-content>.history-heading{margin:0}.library-profile-content{padding-bottom:24px}.trip-form-panel>.breadcrumbs{width:min(100%,560px)}.plan-page-title{letter-spacing:-.02em;text-overflow:ellipsis;white-space:nowrap;flex:0 auto;min-width:0;font-size:20px;line-height:1.2;overflow:hidden}.plan-page-status{color:var(--ink-readable);font-size:var(--text-caption);font-weight:var(--weight-semibold);white-space:nowrap;flex:none;align-items:center;gap:5px;margin:0;line-height:1.2;display:inline-flex}.plan-page-status:before{content:"";background:#a8b4b3;border-radius:50%;flex:none;width:6px;height:6px}.plan-page-status.is-route{color:var(--sea-deep)}.plan-page-status.is-route:before{background:var(--coral)}.plan-summary-copy .title-line{align-items:center;gap:9px;display:flex}.route-heading-meta{flex-wrap:wrap}.account-nav-group{font-size:var(--text-caption);font-weight:var(--weight-semibold);color:var(--ink-readable);padding:12px 10px 6px;display:block}.account-navigation-item:first-child .account-nav-group{padding-top:0}.account-record-actions{flex-wrap:wrap;gap:8px 16px;display:flex}.account-record-actions a{min-height:42px;font-size:var(--text-body);color:var(--sea-deep);font-weight:var(--weight-semibold);text-underline-offset:3px;align-items:center;display:inline-flex}.places-view-choice{gap:3px;padding:0 13px 6px;display:flex}.places-view-choice button{min-width:64px;min-height:42px;color:var(--ink-soft);font-size:var(--text-caption);background:0 0;border-radius:4px;justify-content:center;align-items:center;gap:5px;padding:0 10px;display:inline-flex}.places-view-choice button[aria-pressed=true]{background:var(--sea-wash);color:var(--sea-deep);font-weight:var(--weight-semibold)}.place-select.has-photo{grid-template-columns:48px minmax(0,1fr)}.place-cover-thumbnail{background:var(--sea-wash);border-radius:4px;width:48px;height:48px;display:block;position:relative;overflow:hidden}.place-cover-thumbnail img{object-fit:cover;width:100%;height:100%}.place-cover-placeholder{place-items:center;display:grid}.places-list.is-photo-grid{grid-template-columns:repeat(auto-fit,minmax(min(160px,100%),1fr));grid-auto-rows:max-content;gap:10px}.is-photo-grid .place-row{border-color:var(--line);border-radius:5px;flex-direction:column;min-width:0;display:flex;overflow:hidden}.is-photo-grid .place-select{flex-direction:column;flex:1 0 auto;align-items:stretch;gap:0;padding:0;display:flex}.is-photo-grid .place-cover-thumbnail,.is-photo-grid .place-cover-placeholder{aspect-ratio:4/3;border-radius:0;flex-shrink:0;width:100%;height:auto}.is-photo-grid .place-cover-placeholder{background:var(--canvas);color:var(--ink-soft);align-content:center;gap:14px}.is-photo-grid .place-cover-thumbnail>small{color:#fff;background:#102b3acc;border-radius:3px;padding:3px 5px;font-size:12px;position:absolute;bottom:6px;right:6px}.is-photo-grid .place-copy{padding:9px 9px 3px}.is-photo-grid .place-row-actions{justify-content:space-between;padding:0 4px}.stop-photo-thumbnail{float:right;object-fit:cover;border-radius:4px;width:42px;height:42px;margin-left:7px}.planner-photos{gap:4px;margin:8px 0;display:grid}.place-map-detail>.planner-photos{margin:0 0 8px}.place-map-detail>.planner-photos .planner-photo-cover{border-radius:0}.place-map-detail>.planner-photos .planner-photo-manage{margin-left:12px}.stop-detail>.planner-photos:has(.planner-photo-cover){margin-inline:-16px}.stop-detail>.planner-photos:has(.planner-photo-cover) .planner-photo-cover{border-radius:0}.planner-photo-cover-shell{min-width:0;position:relative}.planner-photo-cover{background:var(--sea-wash);border-radius:4px;width:100%;height:clamp(100px,19vh,180px);padding:0;display:block;position:relative;overflow:hidden}.planner-photo-cover img{object-fit:cover;width:100%;height:100%;display:block}.planner-photo-cover>span{color:#fff;font-size:var(--text-caption);background:#102b3acc;border-radius:3px;padding:4px 7px;position:absolute;bottom:8px;right:8px}.planner-photo-cover-edit.ui-button{min-height:42px;color:var(--sea-deep);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fffefaeb;border-color:#ffffffb3;padding:0 10px;position:absolute;top:8px;right:8px;box-shadow:0 3px 12px #102b3a33}.planner-photos .planner-photo-manage{justify-self:start;min-height:42px}:is(.stop-detail:has(.planner-photos),.place-map-detail:has(.planner-photos)){overscroll-behavior:contain;max-height:calc(100% - 80px);overflow-y:auto}.planner-photo-backdrop{background:#0a1d268c;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.planner-photo-editor{background:var(--paper-strong);width:min(980px,100%);min-height:0;max-height:100%;color:var(--ink);border:1px solid #a7bfc2e6;border-radius:10px;flex-direction:column;display:flex;overflow:hidden;box-shadow:0 24px 64px #071d2847}.planner-photo-editor>header,.planner-photo-lightbox>header{border-bottom:1px solid var(--line);flex:none;justify-content:space-between;align-items:center;gap:12px;padding:16px 20px;display:flex}.planner-photo-editor>header small{max-width:55vw;color:var(--ink-soft);font-size:var(--text-caption);text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.planner-photo-editor h2{margin:1px 0 0;font-size:21px}.planner-photo-header-actions{color:var(--ink-soft);font-size:var(--text-caption);align-items:center;gap:8px;display:flex}.planner-photo-header-actions .ui-button{background:0 0;border-color:#0000;width:42px;min-width:42px;padding:0}.planner-photo-editor form{flex-direction:column;flex:1;min-height:0;display:flex}.planner-photo-editor-scroll{overscroll-behavior:contain;outline:none;min-height:0;padding:0 20px 20px;position:relative;overflow:auto}.planner-photo-draft{outline:none;min-width:0;position:relative}.planner-photo-draft:focus-visible{outline:2px solid var(--sea);outline-offset:2px}.planner-photo-toolbar{z-index:2;-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);background:#fffefaf5;justify-content:space-between;align-items:center;gap:16px;min-height:72px;display:flex;position:sticky;top:0}.planner-photo-toolbar>span{gap:1px;display:grid}.planner-photo-toolbar strong{font-size:var(--text-body)}.planner-photo-toolbar small{color:var(--ink-soft);font-size:var(--text-caption)}.planner-photo-paste.ui-button{background:var(--sea-wash);border-color:#0000;min-height:42px;padding:0 10px}.planner-photo-input-notice{color:var(--sea-deep);font-size:var(--text-caption);margin:-2px 0 10px}.planner-photo-workspace{grid-template-columns:minmax(0,1fr) 280px;align-items:start;gap:24px;display:grid}.planner-photo-workspace:not(.has-selection){grid-template-columns:minmax(0,1fr)}.planner-photo-library{background:#f0f3f1;border-radius:8px;min-width:0;padding:12px;position:relative}.planner-photo-empty{color:var(--ink-soft);text-align:center;justify-items:center;gap:5px;padding:24px 12px 16px;display:grid}.planner-photo-empty strong{color:var(--ink);font-size:var(--text-caption)}.planner-photo-empty span{max-width:300px;font-size:var(--text-caption);line-height:1.4}.planner-photo-edit-grid{grid-template-columns:repeat(auto-fill,minmax(144px,1fr));gap:12px;margin:0;padding:0;list-style:none;display:grid}.planner-photo-edit-grid>li{aspect-ratio:4/3;min-width:0}.planner-photo-edit-grid>.planner-photo-add-cell:only-child{aspect-ratio:auto;min-height:112px}.planner-photo-edit-preview{cursor:grab;background:#dfe8e7;border:2px solid #0000;border-radius:6px;outline:none;width:100%;height:100%;padding:0;display:block;position:relative;overflow:hidden}.planner-photo-edit-preview:hover{border-color:#9ebfc4}.planner-photo-edit-preview.is-selected{border-color:var(--sea-deep);box-shadow:0 0 0 2px #1468842e}.planner-photo-edit-preview:focus-visible{outline:2px solid var(--route);outline-offset:2px}.planner-photo-edit-preview img{object-fit:cover;width:100%;height:100%;display:block}.planner-photo-order{color:#fff;min-width:24px;height:24px;font-size:11px;font-weight:var(--weight-bold);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#102b3ab8;border-radius:12px;place-items:center;padding:0 6px;display:grid;position:absolute;top:6px;left:6px}.planner-photo-cover-label{color:var(--sea-deep);font-size:11px;font-weight:var(--weight-bold);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#fffefaeb;border-radius:12px;align-items:center;gap:4px;padding:4px 7px;display:inline-flex;position:absolute;bottom:6px;right:6px}.planner-photo-add-cell{position:relative}.planner-photo-add-tile{width:100%;height:100%;color:var(--sea-deep);cursor:pointer;background:#fffefab3;border:1px dashed #97b9be;border-radius:6px;align-content:center;justify-items:center;gap:3px;display:grid;position:relative;overflow:hidden}.planner-photo-add-tile:hover{background:var(--sea-wash);border-style:solid}.planner-photo-add-tile strong{font-size:var(--text-caption)}.planner-photo-add-tile span{color:var(--ink-soft);font-size:11px}.planner-photo-add-tile input{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;inset:0}.planner-photo-add-tile:focus-within{outline:2px solid var(--route);outline-offset:2px}.planner-photo-add-tile.is-disabled{opacity:.45;cursor:default}.planner-photo-inspector{border-left:1px solid var(--line);gap:16px;min-width:0;padding:6px 0 6px 24px;display:grid}.planner-photo-inspector-heading{min-height:24px;color:var(--ink-soft);font-size:var(--text-caption);justify-content:space-between;align-items:center;gap:8px;display:flex}.planner-photo-inspector-heading strong{color:var(--sea-deep);align-items:center;gap:4px;font-size:11px;display:inline-flex}.planner-photo-caption-field{gap:6px;display:grid}.planner-photo-caption-field>span{font-size:var(--text-caption);font-weight:var(--weight-semibold)}.planner-photo-caption-field textarea{width:100%;min-height:112px;color:var(--ink);resize:vertical;background:#f0f3f1;border:1px solid #0000;border-radius:6px;outline:none;padding:11px 12px;font-size:16px;line-height:1.4}.planner-photo-caption-field textarea:focus{background:var(--paper);border-color:#8db7bd;box-shadow:0 0 0 2px #1468841a}.planner-photo-inspector-actions{grid-template-columns:minmax(0,1fr) auto;gap:8px;display:grid}.planner-photo-inspector-actions .ui-button{min-width:42px;min-height:42px;padding:0 9px}.planner-photo-cover-action{grid-column:1/-1}.planner-photo-order-actions{gap:4px;display:flex}.planner-photo-remove.ui-button{color:#98523e;background:0 0;border-color:#0000}.planner-photo-drop-overlay{z-index:5;border:2px dashed var(--sea);border-radius:inherit;color:var(--sea-deep);pointer-events:none;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:#e8f4f5f0;place-content:center;justify-items:center;gap:8px;display:grid;position:absolute;inset:0}.planner-photo-editor footer{border-top:1px solid var(--line);background:#fffefafa;flex-wrap:wrap;flex:none;justify-content:flex-end;align-items:center;gap:8px;padding:12px 20px;display:flex}.planner-photo-editor footer .planner-photo-cancel{background:0 0;border-color:#0000}.photo-upload-progress{color:currentColor;flex:0 0 20px;place-items:center;width:20px;height:20px;display:inline-grid}.photo-upload-progress svg{width:20px;height:20px;display:block;overflow:visible;rotate:-90deg}.photo-upload-progress circle{fill:none;stroke-width:2.25px}.photo-upload-progress-track{stroke:currentColor;opacity:.22}.photo-upload-progress-value{stroke:currentColor;stroke-linecap:round;stroke-dasharray:100;transition:stroke-dashoffset .18s ease-out}.photo-upload-progress.is-finalizing svg{animation:.8s linear infinite photo-upload-finish}@keyframes photo-upload-finish{to{transform:rotate(360deg)}}.place-editor-dialog.has-photo-draft{width:min(720px,100%);max-height:min(820px,100dvh - 28px)}.place-editor-photo-draft{grid-column:1/-1;gap:6px;min-width:0;display:grid}.place-editor-photo-draft .planner-photo-toolbar{-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;min-height:50px;position:static}.place-editor-photo-draft .planner-photo-workspace{grid-template-columns:minmax(0,1fr) 232px;gap:16px}.place-editor-photo-draft .planner-photo-workspace:not(.has-selection){grid-template-columns:minmax(0,1fr)}.place-editor-photo-draft .planner-photo-library{padding:8px}.place-editor-photo-draft .planner-photo-edit-grid{grid-template-columns:repeat(auto-fill,minmax(112px,1fr));gap:8px}.place-editor-photo-draft .planner-photo-inspector{gap:12px;padding:4px 0 4px 16px}.place-editor-photo-draft .planner-photo-caption-field textarea{min-height:82px}.planner-photo-lightbox{color:#fff;background:#102b3a;border-radius:6px;flex-direction:column;width:min(1200px,100%);height:100%;min-height:0;padding-bottom:10px;display:flex;overflow:hidden}.planner-photo-lightbox>header{border-color:#46606b}.planner-photo-lightbox>header>div{align-items:center;gap:10px;min-width:0;display:flex}.planner-photo-lightbox>header strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.planner-photo-lightbox>header small{flex:none}.planner-photo-stage{touch-action:pan-y pinch-zoom;flex:1;place-items:center;min-height:0;padding:8px 54px;display:grid;position:relative}.planner-photo-stage>img{object-fit:contain;width:100%;height:100%;min-height:0}.planner-photo-stage>button{min-width:44px;min-height:44px;padding:0;position:absolute;top:50%;translate:0 -50%}.planner-photo-stage .photo-previous{left:7px}.planner-photo-stage .photo-next{right:7px}.planner-photo-caption{text-align:center;max-height:72px;font-size:var(--text-body);flex:none;margin:5px 16px 10px;overflow:auto}.planner-photo-filmstrip{flex:none;gap:7px;padding:0 12px 5px;display:flex;overflow-x:auto}.planner-photo-filmstrip button{border:2px solid #0000;border-radius:4px;flex:0 0 70px;height:52px;overflow:hidden}.planner-photo-filmstrip button.is-active{border-color:var(--coral)}.planner-photo-filmstrip img{object-fit:cover;width:100%;height:100%}@media (width<=760px){.planner-photo-backdrop{padding:12px}.planner-photo-editor-scroll{padding:0 14px 14px}.planner-photo-toolbar{min-height:64px}.planner-photo-workspace{grid-template-columns:minmax(0,1fr);gap:18px}.planner-photo-inspector{border-top:1px solid var(--line);border-left:0;padding:18px 0 2px}.place-editor-photo-draft .planner-photo-workspace{grid-template-columns:minmax(0,1fr);gap:14px}.place-editor-photo-draft .planner-photo-inspector{border-top:1px solid var(--line);border-left:0;padding:14px 0 2px}.planner-photo-editor footer{padding:10px 14px}}@media (width<=600px){.planner-photo-backdrop{padding:max(8px, env(safe-area-inset-top)) 8px max(8px, env(safe-area-inset-bottom))}.planner-photo-editor{max-height:calc(100dvh - 16px)}.planner-photo-editor>header,.planner-photo-lightbox>header{padding:10px}.planner-photo-editor-scroll{padding:0 10px 10px}.planner-photo-toolbar{min-height:58px}.planner-photo-toolbar small{display:none}.planner-photo-workspace{grid-template-columns:minmax(0,1fr);gap:14px}.planner-photo-edit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.planner-photo-inspector{border-top:1px solid var(--line);border-left:0;padding:14px 0 0}.planner-photo-editor footer{padding:8px 10px max(8px, env(safe-area-inset-bottom))}.planner-photo-stage{padding-inline:0}.planner-photo-lightbox>header{flex-wrap:wrap}.planner-photo-lightbox>header>div{max-width:100%}}@media (prefers-reduced-motion:reduce){.photo-upload-progress-value{transition:none}.photo-upload-progress.is-finalizing svg{animation:none}}}@layer responsive{@media (width<=1050px){.home-dashboard-grid{grid-template-columns:minmax(0,1.5fr) minmax(260px,.8fr)}.home-trip-row{grid-template-columns:minmax(0,1fr) auto;gap:7px 12px;padding:12px}.home-trip-copy{grid-area:1/1}.home-trip-summary{text-align:left;grid-area:2/1/auto/-1;justify-items:start}.home-trip-end{grid-area:1/2}.app-shell{grid-template:var(--app-header-height) minmax(0, 1fr) 64px / 1fr}.topbar{grid-column:1;padding-inline:12px}.topbar-identity{gap:12px}.trip-switcher-wrap{padding-left:12px}.topbar-actions .crew-stack{display:none}.briefing-trigger{width:40px;padding:0}.briefing-trigger>span{display:none}.briefing-trigger em{border:2px solid var(--paper);background:var(--coral);min-width:17px;height:17px;color:var(--route-ink);font-size:var(--text-caption);border-radius:9px;padding-inline:4px;position:absolute;top:-4px;right:-5px}.brand span{display:none}.primary-nav{width:100%;padding:4px max(10px, env(safe-area-inset-right)) max(4px, env(safe-area-inset-bottom)) max(10px, env(safe-area-inset-left));border-top:1px solid var(--line);border-right:0;grid-row:3;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;display:grid}.nav-item{width:100%;min-width:0;min-height:51px}.nav-item.is-active:before{border-radius:0 0 3px 3px;width:26px;height:3px;top:-6px;left:50%;translate:-50%}.planner-workspace{grid-row:2;grid-template-columns:var(--panel-width,minmax(310px, 370px)) minmax(0, 1fr);padding:0}.fleet-workspace,.unbuilt-section,.section-workspace{grid-area:2/1}.itinerary-panel{border-right:1px solid var(--line);border-radius:0}.map-panel{border-radius:0}.sync-state,.finish-trip-button span{display:none}.finish-trip-button{width:42px;padding:0}.auth-shell{grid-template-columns:minmax(0,1fr) minmax(370px,.9fr)}.auth-story-copy{padding-bottom:160px}.auth-route{height:190px}}@media (orientation:portrait) and (width<=900px){.home-dashboard-grid{grid-template-columns:minmax(0,1fr)}.home-personal-column{grid-template-columns:repeat(3,minmax(0,1fr))}.sailor-passport-detail-grid{grid-template-columns:minmax(0,1fr)}.sailor-passport-side{grid-template-columns:repeat(2,minmax(0,1fr))}.sailor-passport-person{grid-template-columns:46px minmax(0,1fr)}.sailor-passport-private{grid-column:2;justify-self:start}.planner-workspace{grid-template:minmax(315px,42%) minmax(0,1fr)/1fr;gap:0}.planner-workspace.is-panel-collapsed{grid-template:minmax(315px,42%) minmax(0,1fr)/1fr}.planner-workspace.is-panel-collapsed .itinerary-panel{display:flex}.panel-resize-handle,.panel-toggle{display:none}.itinerary-panel{border:0;border-bottom:1px solid var(--line);border-radius:0;grid-row:1}.map-panel{border-radius:0;grid-row:2}.panel-heading{padding:10px 14px 7px}.itinerary-list{padding-top:5px}.stop-card{min-height:58px}.leg-summary{min-height:42px}.stop-detail{bottom:12px;left:auto;right:12px}.map-stat{bottom:12px;left:12px}.fleet-page-grid{grid-template-columns:minmax(0,1fr)}.crew-directory-header{justify-content:flex-end;min-height:42px;padding-block:5px;display:flex}.crew-directory-header>span:not(.crew-readiness-column-heading),.crew-directory.is-completed .crew-directory-header{display:none}.crew-directory-row{grid-template-columns:42px minmax(0,1fr) 22px;gap:8px 10px;min-height:92px;padding:11px 12px}.crew-directory-person{display:contents}.crew-directory-person>.fleet-roster-avatar{grid-area:1/1/span 2;align-self:start;width:38px;height:38px}.crew-directory-person>span{grid-area:1/2}.crew-directory-row>svg{grid-area:1/3/span 2}.crew-directory-row>span:not(.crew-directory-person){display:none}.crew-directory-row>span.crew-directory-mobile-meta{color:var(--ink-readable);font-size:var(--text-caption);white-space:nowrap;grid-area:2/2;align-items:center;gap:7px;display:flex;overflow:hidden}.crew-directory-mobile-meta>span{text-overflow:ellipsis;overflow:hidden}.crew-directory-mobile-meta strong{min-height:22px;font-size:var(--text-caption);flex:none;align-items:center;gap:3px;display:inline-flex}.crew-directory-mobile-meta strong.is-ready{color:#367451}.crew-directory-mobile-meta strong.is-attention{color:#934526}.crew-pending-row{grid-template-columns:42px minmax(0,1fr);gap:4px 10px;min-height:96px;padding:10px 12px}.crew-pending-person{display:contents}.crew-pending-person>.fleet-roster-avatar{grid-area:1/1/span 3;align-self:start;width:38px;height:38px}.crew-pending-person>span{grid-area:1/2}.crew-pending-row>span[data-label=Yacht],.crew-pending-row>span[data-label=Role]{display:none}.crew-pending-row>.crew-invite-status{grid-area:2/2}.crew-pending-row>span[data-label=Expires]{grid-area:3/2}.crew-member-layout{grid-template-columns:minmax(0,1fr)}.crew-member-card.is-wide{grid-column:1}.fleet-manifest-heading{grid-template-columns:minmax(220px,1fr) auto auto;align-items:center}.fleet-manifest-heading>span,.fleet-manifest-summary,.fleet-manifest-heading>.fleet-add-button{grid-area:auto}.fleet-manifest-summary{overflow-x:visible}.shared-yacht-content{grid-template-columns:minmax(0,1fr)}.trip-form-shell{height:100dvh;display:block;overflow:auto}.trip-form-topbar{height:var(--app-header-height);display:flex;position:sticky;top:0}.trip-form-story{min-height:220px;padding:34px 40px}.trip-form-story h1{max-width:580px;font-size:40px}.trip-form-story p{max-width:600px}.trip-form-route{margin-top:28px}.trip-form-panel{min-height:auto;padding:32px 40px 48px;overflow:visible}}@media (width<=680px){.personal-topbar{height:var(--app-header-height);grid-template-columns:auto minmax(0,1fr) auto;gap:7px;padding:0 10px}.personal-topbar .trip-form-brand span{display:none}.personal-nav{justify-content:center;gap:0}.personal-nav a{min-width:0;font-size:var(--text-caption);padding-inline:8px}.personal-nav a.is-active:after{left:7px;right:7px}.sailing-home-shell{grid-template-rows:var(--app-header-height) minmax(0, 1fr)}.sailing-home-content{padding:16px 10px max(30px, calc(16px + env(safe-area-inset-bottom)));gap:12px}.home-heading{align-items:start;gap:14px;padding-inline:2px;display:grid}.home-heading h1{font-size:var(--text-title)}.home-heading p{font-size:var(--text-caption)}.home-primary-actions{grid-template-columns:repeat(2,minmax(0,1fr));width:100%;display:grid}.home-primary-actions a{min-width:0;padding-inline:9px}.home-invitations article{grid-template-columns:auto minmax(0,1fr)}.home-invitations article>a{grid-column:2;justify-self:start}.home-dashboard-grid{gap:12px}.home-trip-row{grid-template-columns:minmax(0,1fr) auto;gap:7px 12px;padding:12px}.home-trip-copy{grid-area:1/1}.home-trip-summary{text-align:left;grid-area:2/1/auto/-1;justify-items:start}.home-trip-end{flex-direction:column;grid-area:1/2;align-items:flex-end}.home-personal-column{grid-template-columns:minmax(0,1fr)}.home-empty-trip{min-height:260px;padding:22px 15px}.home-empty-trip>div{grid-template-columns:repeat(2,minmax(0,1fr));width:100%;display:grid}.topbar{gap:8px;padding-inline:10px}.topbar-identity{flex:1;gap:8px}.brand-mark{width:30px;height:30px}.fleet-switcher{width:100%}.trip-switcher-wrap{flex:1;width:auto;padding-left:8px}.trip-switcher{width:100%;min-width:0;padding:6px 8px}.trip-switcher-copy strong,.trip-switcher-copy small{font-size:var(--text-caption)}.topbar-actions{gap:6px}.topbar-actions .crew-stack{display:none}.archive-status>span{display:grid}.archive-status>svg{display:none}.archive-status{justify-content:center;min-height:42px;padding:4px 8px}.archive-status strong{text-transform:none}.share-button{width:42px;padding:0}.share-button span{display:none}.share-button em{min-width:16px;height:16px;box-shadow:0 0 0 2px var(--ink);pointer-events:none;border:0;border-radius:999px;padding-inline:3px;font-size:10px;line-height:1;position:absolute;top:3px;right:3px}.finish-trip-button{display:flex}.user-avatar{width:35px;height:35px}.briefing-drawer-shell{width:100%}.briefing-drawer{border-left:0}.briefing-resize-handle{display:none}.briefing-heading{min-height:calc(61px + env(safe-area-inset-top));padding-left:max(12px, env(safe-area-inset-left))}.briefing-content{padding-right:env(safe-area-inset-right);padding-left:env(safe-area-inset-left)}.briefing-note-list{padding-inline:9px}.briefing-composer{padding-inline:12px}.briefing-empty{padding-inline:20px}.planner-workspace{grid-template-rows:minmax(280px,46%) minmax(0,1fr);padding:6px}.panel-heading{padding:9px 12px 6px}h1{font-size:var(--text-title)}.itinerary-list{padding:4px 7px 12px 9px}.stop-card{min-height:58px}.panel-footer{padding:6px 9px 7px}.primary-button{min-height:43px}.map-search{width:calc(100% - 68px);top:10px;left:10px}.map-search kbd{display:none}.coast-route-trigger{min-height:42px;top:62px;left:10px}.maplibregl-ctrl-top-right{top:59px;right:6px}.map-layer-heading{padding:9px 9px 8px 11px}.map-layer-heading button{width:42px;height:42px}.map-layer-section{gap:6px;padding:9px 10px}.map-base-options{gap:6px}.map-base-option{align-content:center;min-height:48px;padding:0 11px}.map-base-preview{display:none}.map-base-option>span:last-child{padding:0}.map-base-option small{display:none}.map-layer-caution{padding:8px 10px 9px}.stop-detail{width:calc(100% - 24px);padding:14px 16px;right:12px}.stop-detail.is-editing{width:calc(100% - 20px);max-height:calc(100% - 80px)}.map-stat{display:none}.mobile-view-map .map-stat{display:flex;bottom:10px;left:10px}.map-ruler{gap:8px;width:calc(100% - 16px);min-height:54px;padding:6px 6px 6px 10px;bottom:8px}.map-depth-sample{width:calc(100% - 16px);bottom:8px}.map-ruler-copy{min-height:0}.map-ruler-copy>small{display:none}.map-ruler-readout{white-space:normal;flex-wrap:wrap;gap:1px 7px;line-height:1.2}.map-ruler-primary{white-space:nowrap;gap:4px}.map-ruler-primary b{font-size:var(--text-body)}.map-ruler-primary span{font-size:var(--text-caption)}.map-ruler-last-leg{width:100%;font-size:var(--text-caption);border-left:0;padding-left:0}.map-ruler-actions{gap:3px}.map-ruler-actions button{min-height:42px}.coast-route-prompt{gap:8px;width:calc(100% - 16px);min-height:0;padding:10px;display:grid;bottom:8px}.coast-route-copy{gap:2px}.coast-route-copy strong{font-size:var(--text-caption)}.coast-route-actions{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.coast-route-actions:has(button:only-child){grid-template-columns:1fr}.maplibregl-ctrl-bottom-left .maplibregl-ctrl-scale{margin:0 0 10px 10px}.mobile-view-map .maplibregl-ctrl-bottom-left .maplibregl-ctrl-scale{margin-bottom:54px}.nav-item{font-size:var(--text-caption)}.auth-shell{display:block}.auth-story{min-height:265px;padding:22px}.auth-brand{font-size:21px}.auth-brand .brand-mark{width:31px;height:31px}.auth-story-copy{margin:40px 0 0;padding:0 0 34px}.auth-kicker{font-size:var(--text-caption)}.auth-story .auth-story-title{margin:10px 0 0;font-size:35px;line-height:1}.auth-story-copy p,.auth-route,.auth-coordinate{display:none}.auth-legal-links{bottom:16px;right:22px}.auth-form-panel{min-height:calc(100dvh - 265px);padding:34px 22px 44px}.auth-form-heading{margin-bottom:26px}.auth-form-heading h1{font-size:var(--text-title)}.text-field{height:48px}.fleet-context-menu{width:auto;max-height:calc(100dvh - 132px - env(safe-area-inset-bottom));position:fixed;top:60px;left:8px;right:8px}.trip-menu-backdrop,.user-menu-backdrop{background:#102b3a33}.trip-menu{top:auto;right:8px;bottom:max(8px, env(safe-area-inset-bottom));transform-origin:bottom;border-radius:12px;width:auto;max-height:min(70dvh,620px);animation-name:trip-menu-sheet-in;position:fixed;left:8px}.trip-menu.is-closing{animation-name:trip-menu-sheet-out}input,select,textarea{font-size:var(--text-input)}.unbuilt-section{place-items:start center;padding:14px 10px 20px}.setup-invite-row{grid-template-columns:minmax(0,1fr) 48px}.setup-invite-row input{grid-column:1/-1}.setup-invite-row select{grid-area:2/1;width:100%}.setup-invite-row .setup-invite-remove{grid-area:2/2}.setup-invite-submit,.setup-link-invite{flex-direction:column;align-items:stretch}.setup-invite-submit button,.setup-link-invite-actions,.setup-link-invite select,.setup-link-invite button{width:100%}.setup-stepper a{justify-content:center}.setup-stepper a span{display:none}.section-workspace{gap:9px;padding:10px 8px 16px}.section-heading{flex-wrap:wrap;align-items:center}.section-heading h1{font-size:var(--text-title)}.section-heading p{display:none}.kitty-composer-backdrop{justify-items:stretch}.kitty-composer-sheet{width:100%;height:100dvh;box-shadow:none;border:0;animation-name:kitty-composer-sheet-mobile-in;animation-timing-function:ease-out}.kitty-composer-header{min-height:calc(62px + env(safe-area-inset-top));padding:max(9px, env(safe-area-inset-top)) max(10px, env(safe-area-inset-right)) 9px max(12px, env(safe-area-inset-left))}.kitty-composer-tabs{padding-inline:max(8px, env(safe-area-inset-left)) max(8px, env(safe-area-inset-right))}.kitty-composer-tabs button{padding-inline:5px}.kitty-composer-intro{padding-inline:max(12px, env(safe-area-inset-left)) max(12px, env(safe-area-inset-right))}.kitty-composer-body{padding:10px max(12px, env(safe-area-inset-right)) max(12px, env(safe-area-inset-bottom)) max(12px, env(safe-area-inset-left))}.kitty-composer-body>.kitty-form .kitty-form-actions{padding-right:max(12px, env(safe-area-inset-right));padding-bottom:max(12px, env(safe-area-inset-bottom));padding-left:max(12px, env(safe-area-inset-left));margin:auto -12px -12px;bottom:-12px}.kitty-settlement-header{min-height:calc(62px + env(safe-area-inset-top));padding:max(9px, env(safe-area-inset-top)) max(12px, env(safe-area-inset-right)) 9px max(12px, env(safe-area-inset-left))}.kitty-settlement-body{padding:10px max(12px, env(safe-area-inset-right)) max(14px, env(safe-area-inset-bottom)) max(12px, env(safe-area-inset-left))}.kitty-settlement-grouping{top:-10px}.yacht-profile-layout{grid-template-columns:minmax(0,1fr);gap:14px}.yacht-detail-media img{max-height:330px}.kitty-columns{grid-template-columns:minmax(0,1fr)}.kitty-stats strong{font-size:17px}.kitty-payment-source{flex-direction:column;align-items:stretch;gap:7px}.kitty-payment-source>div{grid-template-columns:minmax(0,1fr) minmax(0,1fr);display:grid}.kitty-split-options{grid-template-columns:minmax(0,1fr)}.kitty-split-options button{grid-template-columns:minmax(0,1fr) auto;align-items:center;min-height:48px}.kitty-yacht-split{grid-template-columns:minmax(0,1fr);align-items:stretch}.kitty-member-split>div{grid-template-columns:minmax(0,1fr)}.unbuilt-card{gap:10px;padding:22px 18px}.unbuilt-card h1{font-size:var(--text-title)}.unbuilt-card>p{font-size:var(--text-body)}.unbuilt-back{justify-content:center;width:100%}.save-alert{top:auto;bottom:calc(74px + env(safe-area-inset-bottom))}.fleet-workspace{padding:10px 8px 16px}.fleet-page-heading{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;margin-bottom:9px}.fleet-page-heading>span:first-child{gap:3px}.fleet-page-heading h1{font-size:var(--text-title)}.fleet-page-heading p{display:none}.fleet-page-summary{grid-area:2/1/auto/-1;justify-content:space-around;width:100%}.fleet-add-button{grid-area:1/2;width:44px;min-height:44px;padding:0}.fleet-page-summary{min-height:44px}.fleet-add-button svg{margin:0}.fleet-add-button{font-size:0}.fleet-heading-actions{grid-area:3/1/auto/-1;grid-template-columns:minmax(0,1fr) minmax(0,1fr);display:grid}.fleet-heading-actions .fleet-import-button,.fleet-heading-actions .fleet-add-button{width:100%;min-height:44px;font-size:var(--text-caption);grid-area:auto;padding:0 10px}.crew-page-heading .crew-page-actions{grid-area:1/2}.crew-page-heading .fleet-page-summary{justify-content:flex-start;min-height:0}.crew-page-heading .crew-add-menu{grid-area:auto}.crew-page-heading .crew-add-menu .fleet-add-button{width:auto;font-size:var(--text-label);gap:6px;padding-inline:10px}.crew-page-heading .crew-add-menu .fleet-add-button svg{margin:0}.crew-page-heading .crew-export-button{gap:0;width:44px;min-height:44px;padding:0;font-size:0}.crew-page-heading .crew-export-caret{display:none}.crew-export-options,.crew-add-options{left:10px;right:10px;top:calc(var(--app-header-height) + 8px);width:auto;position:fixed}.fleet-page-grid{grid-template-columns:minmax(0,1fr);gap:10px}.crew-workspace-tabs{gap:20px;width:100%}.fleet-manifest{gap:9px}.fleet-manifest-heading{grid-template-columns:minmax(0,1fr) 44px;gap:10px;padding-top:0}.fleet-manifest-heading>span{grid-area:1/1}.fleet-manifest-heading h1{font-size:var(--text-title)}.fleet-manifest-heading p{display:none}.fleet-manifest-summary{grid-area:2/1/auto/-1;width:100%}.fleet-manifest-summary>span{min-width:25%;padding-inline:6px}.fleet-manifest-heading>.fleet-add-button{grid-area:1/2;gap:0;width:44px;min-height:44px;padding:0;font-size:0}.fleet-manifest-heading>.fleet-add-button svg{margin:0}.fleet-manifest-grid{grid-template-columns:minmax(0,1fr)}.yacht-card-main{grid-template-columns:92px minmax(0,1fr) 18px;gap:10px;padding:8px}.yacht-card-media{width:92px;height:110px}.yacht-card-copy>strong{font-size:var(--text-section)}.yacht-card-facts{gap:4px}.fleet-sheet-backdrop{padding:0}.fleet-sheet{border:0;border-radius:0;width:100%;max-height:100dvh}.fleet-sheet.is-choose,.fleet-sheet.is-library,.fleet-sheet.is-listing{width:100%}.shared-yacht-heading{grid-template-columns:minmax(0,1fr);align-items:start}.shared-yacht-heading h1{font-size:var(--text-title)}.shared-yacht-actions{align-self:stretch}.shared-yacht-actions>.section-story-button{flex:1;justify-content:center}.yacht-profile-gallery{aspect-ratio:1;grid-template-rows:repeat(2,minmax(0,1fr));grid-template-columns:repeat(2,minmax(0,1fr));height:auto}.yacht-profile-gallery.is-4>button:first-child,.yacht-profile-gallery.is-4>button:nth-child(2),.yacht-profile-gallery.is-4>button:nth-child(3),.yacht-profile-gallery.is-4>button:nth-child(4){grid-area:auto}.yacht-profile-gallery.is-3{aspect-ratio:1;grid-template-rows:repeat(2,minmax(0,1fr));grid-template-columns:repeat(2,minmax(0,1fr));height:auto}.yacht-profile-gallery.is-3>button:first-child{grid-column:1/-1}.yacht-profile-gallery.is-2{aspect-ratio:2;grid-template-rows:minmax(0,1fr);grid-template-columns:repeat(2,minmax(0,1fr));height:auto}.yacht-profile-gallery.is-1{aspect-ratio:4/3;grid-template-rows:minmax(0,1fr);grid-template-columns:minmax(0,1fr);height:auto}.shared-yacht-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.shared-yacht-stats>span{padding:9px}.shared-yacht-stats strong{font-size:var(--text-body)}.shared-yacht-specs{grid-template-columns:minmax(0,1fr)}.shared-yacht-specs>div:nth-child(odd),.shared-yacht-specs>div:nth-child(2n){border-left:0;padding-inline:0}.yacht-gallery-lightbox{padding:0}.yacht-gallery-lightbox>section{border:0;border-radius:0;grid-template-rows:auto minmax(0,1fr) 68px auto;width:100%;height:100dvh;max-height:100dvh}.yacht-gallery-stage{min-height:0}.yacht-gallery-stage>img{max-height:calc(100dvh - 188px)}.yacht-gallery-stage>button{width:44px;height:50px}.yacht-gallery-filmstrip{padding:7px 9px}.yacht-gallery-filmstrip button{flex-basis:72px;height:50px}.yacht-lookup-input{grid-template-columns:minmax(0,1fr)}.yacht-lookup-input button{width:100%}.yacht-lookup-fields{grid-template-columns:minmax(0,1fr)}.yacht-lookup-actions{flex-direction:column;align-items:stretch}.yacht-lookup-actions button{width:100%}.yacht-editor-fields{grid-template-columns:minmax(0,1fr)}.yacht-editor-fields.is-specs{grid-template-columns:repeat(2,minmax(0,1fr))}.fleet-roster-summary{grid-template-columns:36px minmax(0,1fr)}.fleet-roster-row.is-selected{padding:12px}.crew-member-page{gap:8px}.crew-member-topline nav a span:not(.is-back){display:none}.crew-member-topline nav{grid-template-columns:repeat(2,44px)}.crew-member-topline nav a{padding:0}.crew-member-hero{grid-template-columns:46px minmax(0,1fr);gap:10px;padding:13px}.crew-member-hero>.fleet-roster-avatar{width:44px;height:44px;font-size:var(--text-caption)}.crew-member-hero h1{font-size:var(--text-title)}.crew-member-statuses{grid-column:1/-1;justify-content:flex-start}.crew-member-card>header{min-height:54px;padding:8px 11px}.crew-member-facts{padding-inline:11px}.crew-member-assignment-form{grid-template-columns:minmax(0,1fr);padding:11px}.crew-member-assignment-form .fleet-responsibility-controls{grid-column:1}.crew-account-access-toggle,.crew-member-card>.crew-documents .crew-documents-toggle{min-height:64px;padding-inline:11px}.crew-account-access-toggle>span:last-child,.crew-documents-state{gap:5px}.crew-account-access-toggle em,.crew-documents-state em{display:none}.crew-account-access-panel{margin:0;padding:11px}.managed-sailor-name-form{grid-template-columns:minmax(0,1fr);padding:11px}.managed-sailor-name-actions{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.managed-sailor-name-actions button{width:100%}.crew-member-card>.crew-documents .crew-documents-form{margin:0 8px 8px;padding:10px}.crew-member-card>.crew-documents .crew-documents-fields,.crew-account-link-control{grid-template-columns:minmax(0,1fr)}.crew-account-link-control button{width:100%}.crew-account-secondary-actions{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.crew-account-secondary-actions button{width:100%}.crew-account-confirmation{flex-direction:column;align-items:stretch}.crew-account-confirmation>div{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.crew-account-confirmation button{width:100%}.crew-member-danger-footer{flex-direction:column;align-items:stretch;padding:11px 4px}.crew-member-danger-footer>.guest-remove-button{border:1px solid #e3c2b6;justify-content:center;width:100%}.crew-member-danger-footer>.guest-remove{max-width:none}.fleet-roster-controls{grid-template-columns:minmax(0,1fr)}.fleet-roster-controls .fleet-responsibility-controls{grid-column:1/-1}.fleet-roster-controls.is-single-yacht{grid-template-columns:minmax(0,1fr)}.fleet-roster-controls.is-single-yacht .fleet-responsibility-controls{grid-column:1/-1}.crew-import{margin-inline:8px;padding:11px}.crew-import-main-fields,.crew-import-row{grid-template-columns:minmax(0,1fr)}.crew-import-select,.crew-import-main-fields,.crew-import-identity,.crew-import-responsibilities,.crew-import-documents,.crew-import-note{grid-column:1}.crew-import-documents>div{grid-template-columns:minmax(0,1fr)}.crew-import-actions{flex-direction:column;align-items:stretch}.crew-import-actions>div{grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);display:grid}.crew-reuse,.yacht-reuse{margin-inline:8px;padding:11px}.crew-reuse-row{grid-template-columns:minmax(0,1fr);padding:7px}.crew-reuse-row select{min-height:44px}.sailing-library-list article{grid-template-columns:34px minmax(0,1fr) 42px auto}.sailing-library-list article button.favorite-star{grid-column:3}.sailing-library-list article button.is-danger{grid-area:1/4}.sailing-library-list.is-yachts .yacht-card{grid-template-columns:minmax(0,1fr);display:grid}.duplicate-people-profiles{grid-template-columns:minmax(0,1fr)}.fleet-delete-confirmation{display:grid}.fleet-delete-confirmation>div{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.trip-form-topbar{padding:0 16px}.trip-form-brand span{display:none}.trip-form-story{min-height:195px;padding:26px 20px}.trip-form-story h1{font-size:var(--text-title);margin:9px 0 10px}.trip-form-story p{font-size:var(--text-caption)}.trip-form-route{margin-top:20px}.trip-form-panel{padding:24px 14px 38px}.trip-form-card{gap:13px}.trip-form-heading h2{font-size:var(--text-title)}.trip-date-options,.date-range-inputs{grid-template-columns:minmax(0,1fr)}.date-range-months{grid-template-columns:minmax(0,1fr);padding:12px}.date-range-month:nth-child(2){display:none}.date-range-month+.date-range-month{border-left:0;padding-left:0}.date-range-day{min-height:39px;font-size:var(--text-caption)}.date-range-status{padding-inline:12px}.trip-form-actions{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.trip-form-actions button{min-width:0}.trip-form-actions a:only-child,.trip-form-actions button:only-child{grid-column:1/-1}.account-content{padding:12px 10px max(20px, calc(12px + env(safe-area-inset-bottom)))}.account-workspace{grid-template-columns:minmax(0,1fr)}.account-navigation{border-right:0;border-bottom:1px solid var(--line);gap:0;padding:0 0 10px;position:static}.account-navigation nav{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px}.account-navigation nav a{min-width:0;min-height:44px;padding-inline:9px}.account-navigation nav a span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.account-section{gap:10px;padding:0}.account-section-heading{min-height:74px;padding:10px 2px 5px}.account-section-heading h1{font-size:var(--text-title)}.sailor-passport-hero{grid-template-columns:minmax(0,1fr)}.sailor-passport-stats{border-top:1px solid var(--line);border-left:0;grid-template-columns:repeat(3,minmax(0,1fr))}.sailor-passport-stats>span{border-right:1px solid var(--line);border-bottom:0;min-height:78px;padding:9px}.sailor-passport-stats>span:last-child{border-right:0}.sailor-passport-detail-grid,.sailor-passport-side{grid-template-columns:minmax(0,1fr)}.sailor-passport-person{grid-template-columns:44px minmax(0,1fr)}.sailor-passport-person .user-avatar{width:44px;height:44px}.sailor-passport-private{grid-column:1/-1;justify-self:start}.account-card{min-width:0;padding:13px}.account-card-heading-with-action{grid-template-columns:minmax(0,1fr);display:grid}.account-card-heading-with-action>span{min-width:0}.qualification-add{justify-self:start}.account-field-row{grid-template-columns:minmax(0,1fr)}.qualification-dates{max-width:none}.qualification-copy-heading{display:grid}.qualification-copy-links{flex-wrap:wrap}.qualification-copy-current{grid-template-columns:46px minmax(0,1fr)}.qualification-copy-current img,.qualification-copy-file{width:46px;height:40px}.qualification-copy-current .qualification-copy-links,.qualification-file-error{grid-column:1/-1}.qualification-copy-picker{width:100%;min-height:82px}.qualification-summary{grid-template-columns:minmax(0,1fr) 18px;min-height:66px}.qualification-summary em{grid-area:2/1}.qualification-summary>.icon{grid-area:1/2/span 2}.account-actions{flex-direction:column;align-items:stretch}.account-actions button{width:100%}.trip-date-options.is-four{grid-template-columns:repeat(2,minmax(0,1fr))}.historical-date-fields,.historical-grid,.historical-crew-picker>div{grid-template-columns:minmax(0,1fr)}.historical-crew-picker label:nth-child(odd){border-right:0}.history-shell{grid-template-rows:var(--app-header-height) minmax(0, 1fr)}.history-content{padding:16px 10px max(28px, calc(14px + env(safe-area-inset-bottom)));gap:12px}.history-heading{grid-template-columns:minmax(0,1fr);align-items:start;gap:12px;display:grid}.history-heading.history-person-heading{grid-template-columns:auto minmax(0,1fr)}.history-heading h1{font-size:var(--text-title)}.history-heading>.history-heading-actions{grid-template-columns:repeat(2,minmax(0,1fr));width:100%;min-width:0;display:grid}.history-heading-actions>*{justify-self:stretch;width:auto;min-width:0}.history-heading-actions>:only-child{grid-column:1/-1}.history-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.history-stats>span{min-height:70px;padding:10px 13px}.history-stats>span:nth-child(2){border-right:0}.history-stats>span:nth-child(n+3){border-top:1px solid var(--line)}.history-stats>span:nth-child(3):last-child{grid-column:1/-1}.history-detail-grid{grid-template-columns:minmax(0,1fr);gap:12px}.history-trip-row,.history-entity-row{padding-inline:13px}.history-trip-row{flex-direction:column;align-items:start;gap:5px}.completion-grid,.completion-yacht,.completion-track-picker{grid-template-columns:minmax(0,1fr)}.completion-track-picker,.completion-source-note,.completion-row-error{grid-column:1}.history-yacht-result{flex-direction:column;align-items:start;gap:7px}.history-result-facts{justify-items:start}.completion-crew{grid-template-columns:minmax(0,1fr)}.completion-crew label{border-right:0}.history-actions{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);display:grid}.history-actions a{text-align:center}}@media (width<=520px){.topbar .brand{display:none}.trip-switcher-wrap{border-left:0;padding-left:0}}@media (width<=420px){.briefing-add{width:42px;padding:0}.briefing-add>span{display:none}.briefing-note-confirm{grid-template-columns:repeat(2,minmax(0,1fr))}.briefing-note-confirm>span{grid-column:1/-1}.briefing-stop-link small{display:none}}@media (height<=720px) and (orientation:landscape){.app-shell{grid-template-rows:var(--app-header-height) minmax(0, 1fr)}.topbar{height:var(--app-header-height)}.panel-heading{padding-block:8px 6px}.stop-card{min-height:56px}.leg-summary{min-height:42px}}@media (width<=680px),(height<=560px) and (width<=950px){.app-shell{grid-template-rows:var(--app-header-height) minmax(0, 1fr) 60px;min-height:0}.primary-nav{padding-block:3px max(3px, env(safe-area-inset-bottom))}.nav-item{min-height:49px}.fleet-yacht-switcher>a{flex-basis:min(220px,70vw)}.yacht-detail.is-embedded .section-heading-actions{grid-template-columns:repeat(auto-fit,minmax(96px,1fr));width:100%;display:grid}.yacht-detail.is-embedded .section-heading-actions button{min-width:0;font-size:var(--text-caption);justify-content:center;padding-inline:8px}.yacht-profile-layout{grid-template-columns:minmax(0,1fr);gap:12px}.yacht-profile-placeholder{min-height:190px}.yacht-profile-specs{column-gap:12px}.yacht-profile-specs>div{align-content:center;justify-content:initial;gap:2px;min-height:54px;display:grid}}@media (width<=680px),(orientation:portrait) and (width<=1050px),(height<=560px) and (width<=950px){.place-editor-layer{align-items:end;padding:0}.place-editor-dialog{width:100%;max-height:calc(100dvh - max(8px, env(safe-area-inset-top)));border-bottom:0;border-left:0;border-right:0;border-radius:10px 10px 0 0}.place-editor-fields{grid-template-columns:minmax(0,1fr);padding:12px}.place-editor-priority,.place-editor-note,.place-editor-position{grid-column:1}.place-editor-actions{padding-inline:12px}.place-editor-delete-confirm{grid-template-columns:repeat(2,minmax(0,1fr));margin-inline:12px}.place-editor-delete-confirm>span{grid-column:1/-1}.place-editor-delete-confirm button{width:100%}.place-map-detail{width:auto;bottom:10px;left:10px;right:10px}.planner-undo-toast{right:10px;bottom:max(70px, calc(64px + env(safe-area-inset-bottom)));width:auto;left:10px}.planner-context-backdrop{background:#102b3a38}.planner-context-menu,.planner-context-layer.is-sheet .planner-context-menu{top:auto;right:max(10px, env(safe-area-inset-right));bottom:max(10px, env(safe-area-inset-bottom));left:max(10px, env(safe-area-inset-left));width:auto;max-height:calc(100dvh - 20px - env(safe-area-inset-top) - env(safe-area-inset-bottom));border-radius:10px}.planner-context-menu>header{gap:10px;padding:12px 9px 10px 14px}.planner-context-menu>header small{font-size:var(--text-caption)}.planner-context-menu>header strong{font-size:17px;line-height:1.2}.planner-context-menu>header p{font-size:var(--text-body);margin-top:1px;line-height:1.35}.planner-context-menu>header>button{width:44px;height:44px;margin:-4px -2px -2px 0}.planner-context-actions{padding:5px}.planner-context-actions>button{grid-template-columns:24px minmax(0,1fr);gap:10px;min-height:50px;padding:6px 9px}.planner-context-actions>button:not(:has(svg)){grid-template-columns:minmax(0,1fr);padding-left:10px}.planner-context-actions>button>.icon{width:20px;height:20px}.planner-context-actions>button>span{gap:2px}.planner-context-actions strong{font-size:var(--text-body);line-height:1.25}.planner-context-actions small{font-size:var(--text-caption);line-height:1.35}.planner-workspace{grid-template:42px minmax(0,1fr)/minmax(0,1fr);gap:0;min-height:0;padding:0;display:grid;position:relative}.planner-workspace.is-panel-collapsed{grid-template:42px minmax(0,1fr)/minmax(0,1fr)}.planner-workspace.is-panel-collapsed .itinerary-panel{display:flex}.panel-resize-handle,.panel-toggle{display:none}.mobile-workspace-switcher{z-index:8;border:0;border-bottom:1px solid var(--line);box-shadow:none;background:#f7f6f1fa;border-radius:0;grid-area:1/1;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;padding:0 8px;display:grid}.mobile-workspace-switcher button{min-width:0;color:var(--ink-soft);font-size:var(--text-caption);font-weight:var(--weight-bold);background:0 0;border-radius:0;justify-content:center;align-items:center;gap:7px;display:flex;position:relative}.mobile-workspace-switcher button.is-active{color:var(--sea-deep);box-shadow:none;background:0 0}.mobile-workspace-switcher button.is-active:after{background:var(--coral);content:"";height:2px;position:absolute;bottom:-1px;left:12px;right:12px}.mobile-workspace-switcher small{background:var(--sea-wash);color:inherit;font-size:var(--text-caption);font-weight:var(--weight-bold);border-radius:3px;padding:2px 5px}.itinerary-panel,.map-panel{border:0;border-radius:0;grid-area:2/1;min-width:0;min-height:0;transition:opacity .16s}.mobile-view-itinerary .itinerary-panel,.mobile-view-map .map-panel{z-index:4;visibility:visible;opacity:1;pointer-events:auto}.mobile-view-itinerary .map-panel,.mobile-view-map .itinerary-panel{z-index:1;visibility:hidden;opacity:0;pointer-events:none}.map-search{top:10px}.maplibregl-ctrl-top-right{top:59px}.map-layer-panel{top:calc(env(safe-area-inset-top) + var(--app-header-height) + 42px);right:10px;bottom:calc(60px + env(safe-area-inset-bottom));overscroll-behavior:contain;-webkit-overflow-scrolling:touch;width:auto;max-height:none;position:fixed;left:10px;overflow:hidden auto}.map-layer-heading{z-index:1;background:#fffefafa;position:sticky;top:0}.map-layer-toggle{min-height:52px}.route-insert-prompt.is-pointer-anchored{gap:9px;width:calc(100% - 20px);min-height:66px;padding:12px;display:grid;inset:auto auto 10px 50%;translate:-50%}.route-insert-actions{grid-template-columns:minmax(0,.65fr) minmax(0,.9fr) minmax(0,1.25fr);display:grid}.route-insert-actions.append-actions,.route-insert-actions.waypoint-insert-actions{grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr)}.route-insert-actions.waypoint-actions{grid-template-columns:minmax(0,.7fr) minmax(0,1.15fr) minmax(0,.8fr)}.route-insert-actions.waypoint-actions.is-confirming{grid-template-columns:repeat(2,minmax(0,1fr))}.route-insert-actions button{min-height:42px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (display-mode:standalone){body{overscroll-behavior:none}.app-shell{padding-top:env(safe-area-inset-top);padding-right:env(safe-area-inset-right);padding-left:env(safe-area-inset-left)}.auth-shell{min-height:100dvh;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left)}}:is(.home-heading,.account-section-heading,.section-heading,.fleet-page-heading,.fleet-manifest-heading,.history-heading,.shared-yacht-heading,.crew-member-hero,.setup-heading) h1{font-size:var(--text-title);font-weight:var(--weight-semibold);letter-spacing:-.025em;line-height:1.15}:is(.personal-nav,.primary-nav,.account-navigation nav) a{font-size:var(--text-label)}:is(.account-field,.trip-form-field,.setup-fields label)>span{font-size:var(--text-label);font-weight:var(--weight-semibold)}:is(.account-card-heading,.section-heading,.setup-card-heading,.home-heading) p{font-size:var(--text-body);line-height:1.5}:is(.account-actions,.setup-actions,.trip-form-actions,.section-heading-actions) button,.auth-submit{font-size:var(--text-label)}.plan-page-title{font-size:1.25rem;font-weight:var(--weight-semibold)}@media (width<=600px){:root{--text-title:1.5rem}}.ui-button,:is(.account-actions,.setup-actions,.trip-form-actions,.section-heading-actions,.kitty-form-actions)>button,.auth-submit{justify-content:center;align-items:center;gap:var(--space-2);min-height:var(--control-height);padding:var(--space-2) var(--space-4);border-radius:var(--control-radius);font-size:var(--text-label);font-weight:var(--weight-semibold);box-shadow:none;line-height:1.3;display:inline-flex}.ui-button{border:1px solid var(--line);background:var(--paper-strong);color:var(--sea-deep)}.ui-button.is-primary{border-color:var(--sea-deep);background:var(--sea-deep);color:#fff}.ui-button.is-danger{border-color:var(--danger);background:var(--danger);color:#fff}.ui-button:disabled{opacity:.6;cursor:default}.ui-button:hover:not(:disabled){filter:brightness(.95)}.log-filter-toggle.ui-button{min-height:42px;font-size:var(--text-caption);white-space:nowrap;background:0 0;border-color:#0000;gap:5px;padding:5px 8px}.log-filter-toggle.ui-button:hover,.log-filter-toggle.ui-button.is-active,.log-filter-toggle.ui-button[aria-expanded=true]{background:var(--sea-wash)}.ui-field{gap:var(--space-1);min-width:0;display:grid}.ui-field>label{font-size:var(--text-label);font-weight:var(--weight-semibold)}.ui-field-hint{color:var(--ink-readable);font-size:var(--text-caption);margin:0}:is(.ui-field,.account-field,.trip-form-field,.setup-fields label,.setup-search,.share-form label,.kitty-form-grid label)>:is(input:not([type=checkbox]):not([type=radio]),select,textarea),.text-field{width:100%;min-width:0;min-height:var(--control-height);padding:var(--space-2) var(--space-3);border:1px solid var(--line);border-radius:var(--control-radius);background:var(--paper-strong);color:var(--ink);font-size:var(--text-input);line-height:1.4}.date-input-control input{font-size:var(--text-input)}:is(.account-settings,.qualification-list,.setup-card,.home-record-card,.home-readiness-card,.home-library-card,.history-card,.sailor-passport-card,.sailor-passport-hero,.kitty-ledger,.kitty-balances){border-radius:var(--surface-radius);box-shadow:none}:is(.account-card,.setup-card,.history-card){padding:var(--space-4);gap:var(--space-3)}:is(.account-card-heading,.setup-card-heading,.share-heading) h2{font-size:var(--text-section);font-weight:var(--weight-semibold)}:is(.account-field-row,.setup-fields,.kitty-form-grid){gap:var(--space-3)}:is(.account-section-heading,.section-heading,.fleet-page-heading,.fleet-manifest-heading){margin-bottom:var(--space-3)}.account-settings,.account-section>.account-card:not(.sailing-library){width:min(100%, var(--content-form-width))}.icon-button{min-width:var(--control-height);min-height:var(--control-height)}:is(.ui-button,.account-actions button,.section-heading-actions button)>.icon{flex-shrink:0;width:18px;height:18px}.personal-context a{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.field-error,.share-error{color:var(--danger)}.sailing-library-list button.is-quiet{min-height:44px;color:var(--ink-readable);background:0 0;padding:8px 12px}.sailing-library-list button.is-quiet:hover{background:var(--sea-wash);color:var(--sea-deep)}.sync-state.is-error .sync-dot{background:var(--danger)}.account-navigation>.account-mobile-navigation{display:none}.account-section{container-type:inline-size}.account-section-heading{min-height:0;margin-bottom:4px;padding:0}.sailor-passport-card>header{min-height:52px}.sailor-passport-roles dl{padding:4px 12px 8px}.sailor-passport-roles dl>div{min-height:52px}.sailor-passport-roles dd{text-align:right;gap:4px;display:grid}.sailor-passport-roles dd small,.passport-unknown{color:var(--ink-soft);font-weight:var(--weight-medium)}@container (width<=440px){.passport-person{flex-wrap:wrap;gap:8px;padding:12px}.passport-person a{flex-basis:100%;margin:0}.passport-metrics{gap:12px;padding:12px}.passport-metrics dt{min-height:36px}.passport-coverage{padding:0 12px 12px}}@container passport-voyages (width<=620px){.sailor-passport-voyages>a{grid-template-columns:18px minmax(0,1fr) 14px;gap:8px 12px}.sailor-passport-voyages>a>.icon:first-child{align-self:start;margin-top:2px}.sailor-passport-voyages>a>.icon:last-child{grid-area:1/3/span 2}.sailor-passport-voyage-summary{grid-column:2;justify-content:flex-start}.sailor-passport-voyage-distance{text-align:left;justify-items:start}}@container (width<=560px){.account-field-row,.sailor-passport-detail-grid,.sailor-passport-hero,.sailing-library-toolbar{grid-template-columns:minmax(0,1fr)}.sailing-library-tabs{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}}@media (width<=850px){.account-content{padding-top:0}.account-workspace{grid-template-columns:minmax(0,1fr)}.account-navigation{z-index:4;border:0;border-bottom:1px solid var(--line);background:var(--canvas);margin:0 -10px 12px;padding:0 10px;position:sticky;top:0}.account-navigation>.account-desktop-navigation{display:none}.account-navigation .account-mobile-navigation{overscroll-behavior-x:contain;scrollbar-width:none;-webkit-overflow-scrolling:touch;gap:2px;display:flex;overflow-x:auto}.account-navigation .account-mobile-navigation::-webkit-scrollbar{display:none}.account-navigation .account-mobile-navigation a{min-height:46px;color:var(--ink-readable);white-space:nowrap;background:0 0;border-radius:0;flex:none;grid-template-columns:none;gap:6px;padding:0 11px;display:flex;box-shadow:inset 0 -3px #0000}.account-navigation .account-mobile-navigation a:hover{color:var(--sea-deep);background:0 0}.account-navigation .account-mobile-navigation a.is-active,.account-navigation .account-mobile-navigation a.is-active:hover{color:var(--sea-deep);box-shadow:inset 0 -3px var(--coral);background:0 0}.account-navigation .account-mobile-navigation a em{min-width:20px;padding:2px 5px}.account-navigation .account-mobile-navigation a.is-active em{color:var(--sea-deep);background:#0f5b731a}.account-section{padding-left:0}.account-section-heading{min-height:0;padding:0}}.trip-form-shell{grid-template:var(--app-header-height) minmax(0, 1fr) / minmax(0, 1fr);display:grid}.trip-form-panel{flex-direction:column;justify-content:flex-start;align-items:center;gap:12px;min-height:0;padding:16px 24px 32px;display:flex;overflow:auto}.trip-form-card{width:min(100%,720px);box-shadow:none;flex:none;padding:16px}.trip-form-panel>.breadcrumbs{flex-shrink:0}.trip-yacht-disclosure{border-top:1px solid var(--line);border-bottom:1px solid var(--line);min-width:0}.trip-yacht-disclosure summary{cursor:pointer;min-height:48px;color:var(--ink);font-size:var(--text-body);font-weight:var(--weight-semibold);padding:12px 0}.trip-yacht-disclosure summary small{color:var(--ink-soft);font-size:var(--text-caption);font-weight:var(--weight-medium);margin-left:8px}.trip-yacht-disclosure .trip-form-yacht-choice{padding-bottom:16px}.trip-form-panel>.breadcrumbs{width:min(100%,720px)}.trip-form-heading h1{font-size:var(--text-title);line-height:1.15}.trip-form-actions{margin-top:8px}.trip-setup-checklist{border-bottom:1px solid var(--line);background:var(--sea-wash);flex-shrink:0;max-height:35dvh;padding:8px 12px;overflow:auto}.trip-setup-checklist summary{cursor:pointer;align-content:center;min-height:42px;font-weight:600}.trip-setup-checklist p{font-size:var(--text-caption);margin:0}.trip-setup-checklist ul{margin:4px 0;padding:0;list-style:none}.trip-setup-checklist a{min-height:42px;color:var(--sea-deep);justify-content:space-between;align-items:center;gap:8px;text-decoration:none;display:flex}@media (width<=600px){.trip-form-panel{padding:8px 12px 24px}}.setup-stepper a span{gap:2px;display:grid}.setup-stepper small{font-size:var(--text-caption);font-weight:400}.setup-stepper a{min-height:56px}.setup-place-preview{border:1px solid var(--sea);border-radius:var(--surface-radius);background:var(--sea-wash);gap:8px;padding:12px;display:grid}.setup-place-preview p{margin:0}.setup-place-preview small{color:var(--ink-readable)}.setup-harbour-map{background:#cbdfe5;border:1px solid #aec8cc;border-radius:6px;height:clamp(150px,24vw,190px);position:relative;overflow:hidden}.setup-harbour-map>div{position:absolute;inset:0}.setup-harbour-map .maplibregl-canvas{cursor:grab}.setup-harbour-map .maplibregl-canvas:active{cursor:grabbing}.setup-harbour-map.is-unavailable{color:var(--ink-readable);font-size:var(--text-caption);place-items:center;display:grid}.setup-harbour-map.is-unavailable>div{display:none}.setup-harbour-marker{background:var(--coral);border:4px solid #fff;border-radius:50%;width:25px;height:25px;display:block;box-shadow:0 2px 8px #102b3a5c}.setup-harbour-map-help{margin-top:-2px}.crew-invitations,.crew-invitations form{gap:12px;min-width:0;display:grid}.invitation-modes{flex-wrap:wrap;gap:8px;display:flex}.invitation-explanation{font-size:var(--text-body);color:var(--ink-readable);margin:0}.invitation-email-row{border-bottom:1px solid var(--line);gap:8px;min-width:0;padding-bottom:12px;display:grid}.invitation-submit{justify-content:flex-end;display:flex}.invitation-list{gap:12px;display:grid}.invitation-list>summary{border-top:1px solid var(--line);cursor:pointer;min-height:44px;color:var(--ink);font-size:var(--text-body);font-weight:var(--weight-semibold);padding-block:12px}.invitation-list>summary span{background:var(--sea-wash);text-align:center;border-radius:4px;min-width:22px;margin-left:6px;padding:2px 6px;display:inline-block}.invitation-list article>strong{overflow-wrap:anywhere}.share-heading button{width:44px;height:44px}.invitation-list h3,.invitation-list p{margin:0}.invitation-list h3{font-size:var(--text-section)}.invitation-list article{border-top:1px solid var(--line);gap:8px;padding:12px 0;display:grid}.invitation-list article p{font-size:var(--text-caption);color:var(--ink-readable)}.invitation-list input{border:1px solid var(--line);background:var(--paper);width:100%;min-width:0;min-height:44px;color:var(--ink);border-radius:6px;padding:8px;font-size:16px}.invitation-row-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.share-dialog{overscroll-behavior:contain;width:min(560px,100vw - 24px);max-height:calc(100dvh - 32px);overflow:auto}.auth-context{border:1px solid var(--line);background:var(--sea-wash);border-radius:6px;gap:4px;margin-bottom:16px;padding:12px;display:grid}.auth-context p{font-size:var(--text-body);margin:0}.auth-context a{min-height:42px;color:var(--sea-deep);font-size:var(--text-label);align-items:center;display:inline-flex}.password-input{align-items:center;margin-bottom:16px;display:flex;position:relative}.password-input .text-field{margin-bottom:0;padding-right:64px}.password-input button{min-width:56px;min-height:42px;color:var(--sea-deep);font-size:var(--text-label);background:0 0;border-radius:4px;padding:8px;position:absolute;right:2px}.auth-password-hint,.auth-bound-email{font-size:var(--text-caption);color:var(--ink-readable);margin:0 0 12px;line-height:1.5}@media (width<=850px),(height<=560px){.auth-shell{flex-direction:column;display:flex}.auth-story{flex:0 0 var(--app-header-height);min-height:var(--app-header-height);justify-content:center;padding:8px 22px}.auth-brand{font-size:var(--text-section)}.auth-brand .brand-mark{width:28px;height:28px}.auth-story-copy,.auth-route,.auth-coordinate,.auth-story:after,.auth-legal-links{display:none}.auth-form-panel{flex-direction:column;flex:1 0 auto;justify-content:flex-start;align-items:center;min-height:0;padding:28px 22px 24px;display:flex}.auth-form-heading{margin-bottom:24px}.auth-mobile-legal-links{justify-content:center;gap:18px;width:min(100%,390px);margin-top:8px;display:flex}.auth-mobile-legal-links a{min-height:42px;color:var(--ink-soft);font-size:var(--text-caption);font-weight:var(--weight-bold);align-items:center;text-decoration:none;display:flex}.auth-mobile-legal-links a:hover{color:var(--sea-deep);text-underline-offset:3px;text-decoration:underline}}@media (width<=850px){.auth-shell-with-introduction .auth-story{flex-basis:auto;justify-content:stretch;gap:14px;min-height:0;padding:13px 16px 28px;display:grid}.auth-shell-with-introduction .auth-brand{font-size:var(--text-section)}.auth-shell-with-introduction .auth-story-copy{gap:8px;max-width:560px;margin:2px 0 0;padding:0;display:grid}.auth-shell-with-introduction .auth-kicker{font-size:10px}.auth-shell-with-introduction .auth-story .auth-story-title{margin:0;font-size:clamp(28px,8.5vw,36px);line-height:1.02;display:block}.auth-shell-with-introduction .auth-story-copy>p:not(.auth-story-title){color:#f4f1e4c7;font-size:var(--text-caption);line-height:1.45;display:block}.auth-shell-with-introduction .auth-story-benefits{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;margin:2px 0 0;display:grid}.auth-shell-with-introduction .auth-story-benefits li{grid-template-columns:16px minmax(0,1fr);align-items:center;gap:5px;font-size:11px;line-height:1.2;display:grid}.auth-shell-with-introduction .auth-form-panel{padding-top:28px}}@media (width<=560px){.legal-header{padding-inline:16px}.legal-brand span{display:none}.legal-document{border-radius:8px;width:calc(100% - 20px);margin-top:10px;padding:24px 18px}.legal-document>header{margin-bottom:28px}.legal-footer{flex-direction:column;align-items:flex-start;gap:0;width:calc(100% - 32px);padding-top:4px}.legal-footer nav{flex-wrap:wrap;gap:4px 18px}}.form-feedback:empty{display:none}.completion-form .history-card:not(.completion-note){padding:0}.form-feedback p{color:var(--ink-readable);font-size:var(--text-caption);margin:0}.form-error-summary{border-left:3px solid var(--danger);background:var(--danger-wash);color:var(--danger);margin-bottom:12px;padding:12px}.form-error-summary ul{margin:4px 0 0;padding-left:20px}[aria-invalid=true]{border-color:var(--danger)}.account-actions button[type=button]{color:var(--sea-deep);border:1px solid var(--line);background:0 0}.interaction-layer{z-index:250}.interaction-layer:focus{outline:none}.interaction-menu-layer{background:0 0;position:fixed;inset:0}.interaction-menu-layer:has(>.interaction-popover.plan-options-layer):before{pointer-events:none;content:"";animation:trip-menu-backdrop-in var(--menu-reveal-duration) ease-out both;background:#102b3a14;position:absolute;inset:0}.interaction-menu-layer:has(>.interaction-popover.plan-options-layer.is-closing):before{animation:trip-menu-backdrop-out var(--menu-hide-duration) ease-in both}.interaction-menu-layer:has(>.interaction-popover.nav-default-layer):before{pointer-events:none;content:"";animation:trip-menu-backdrop-in var(--menu-reveal-duration) ease-out both;background:#102b3a14;position:absolute;inset:0}.interaction-menu-layer:has(>.interaction-popover.nav-default-layer.is-closing):before{animation:trip-menu-backdrop-out var(--menu-hide-duration) ease-in both}.interaction-menu-layer:has(>.interaction-popover.log-location-preview-popover):before{pointer-events:none;content:"";animation:trip-menu-backdrop-in var(--menu-reveal-duration) ease-out both;background:#102b3a1f;position:absolute;inset:0}.interaction-popover{width:max-content;max-width:calc(100vw - 24px);position:fixed}.interaction-popover.log-location-preview-popover{width:min(440px,100vw - 24px);max-height:calc(100dvh - 24px);animation:trip-menu-in var(--menu-reveal-duration) cubic-bezier(.16, 1, .3, 1) both;overflow:visible}.interaction-popover.plan-options-layer>.plan-options-menu,.interaction-popover.plan-options-layer>.route-activate-confirm{transform-origin:100% 0;animation:trip-menu-in var(--menu-reveal-duration) cubic-bezier(.16, 1, .3, 1) both}.interaction-popover.plan-options-layer.is-closing>.plan-options-menu,.interaction-popover.plan-options-layer.is-closing>.route-activate-confirm{pointer-events:none;animation:trip-menu-out var(--menu-hide-duration) cubic-bezier(.4, 0, 1, 1) both}.interaction-popover.nav-default-layer>.nav-default-menu{transform-origin:0 100%;animation:trip-menu-in var(--menu-reveal-duration) cubic-bezier(.16, 1, .3, 1) both}.interaction-popover.nav-default-layer.is-closing>.nav-default-menu{pointer-events:none;animation:trip-menu-out var(--menu-hide-duration) cubic-bezier(.4, 0, 1, 1) both}.interaction-popover>[role=menu],.interaction-popover>[role=alertdialog]{overscroll-behavior:contain;max-width:calc(100vw - 24px);max-height:calc(100dvh - 24px);position:relative;inset:auto;overflow-y:auto}.interaction-popover [role=menuitem]:focus-visible{outline:2px solid var(--sea);outline-offset:-2px}.nav-default-menu{border:1px solid var(--line);background:var(--paper-strong);border-radius:8px;width:min(286px,100vw - 24px);padding:6px;display:grid;box-shadow:0 16px 38px #102b3a38}.nav-default-menu>header{border-bottom:1px solid var(--line);gap:2px;padding:7px 9px 8px;display:grid}.nav-default-menu>header small{color:var(--sea);font-size:var(--text-caption);font-weight:var(--weight-bold);letter-spacing:.09em;text-transform:uppercase}.nav-default-menu>header strong{color:var(--ink);font-family:var(--display);font-size:var(--text-body)}.nav-default-menu>button{min-height:52px;color:var(--sea-deep);text-align:left;background:0 0;border-radius:6px;align-items:center;gap:10px;padding:8px 9px;display:flex}.nav-default-menu>button:hover{background:var(--sea-wash)}.nav-default-menu>button>.icon{flex:none}.nav-default-menu>button>span{gap:2px;min-width:0;display:grid}.nav-default-menu>button strong{color:var(--ink);font-size:var(--text-caption)}.nav-default-menu>button small{color:var(--ink-soft);font-size:var(--text-caption);line-height:1.3}@media (prefers-reduced-motion:reduce){.interaction-popover.nav-default-layer>.nav-default-menu,.interaction-popover.log-location-preview-popover{animation:none}.interaction-menu-layer:has(>.interaction-popover.nav-default-layer):before{animation:none}.interaction-menu-layer:has(>.interaction-popover.log-location-preview-popover):before{animation:none}}@media (width<=680px){.interaction-popover.log-location-preview-popover{width:100%;max-width:none;max-height:calc(100dvh - 10px);inset:auto 0 0!important}.log-location-preview,.log-location-preview-loading{border-width:1px 0 0;border-radius:12px 12px 0 0;max-height:calc(100dvh - 10px)}.log-location-preview-chart{height:min(42dvh,300px);min-height:210px}.log-location-preview>footer{padding-bottom:max(12px, env(safe-area-inset-bottom))}}.yacht-actions-menu{border:1px solid var(--line);border-radius:var(--surface-radius);background:var(--paper-strong);width:220px;padding:6px;display:grid;box-shadow:0 12px 28px #102b3a29}.yacht-actions-menu button{min-height:var(--control-height);color:var(--danger);text-align:left;background:0 0;align-items:center;gap:8px;padding:8px;display:flex}.interaction-layer .fleet-sheet,.interaction-layer .share-dialog{overscroll-behavior:contain;max-height:calc(100dvh - 24px)}.confirmation-backdrop{background:#102b3a70;place-items:center;padding:12px;display:grid;position:fixed;inset:0}.confirmation-dialog{width:min(440px,100%);padding:var(--space-6);border:1px solid var(--line);border-radius:var(--surface-radius);background:var(--paper-strong)}.confirmation-dialog .form-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.confirmation-dialog h2{font-size:var(--text-section);margin:0 0 12px}.confirmation-dialog p{margin:0 0 20px;line-height:1.5}.place-plan-dialog{gap:12px;width:min(400px,100%);max-height:calc(100dvh - 24px);padding:18px;display:grid;overflow:auto}.place-plan-dialog h2,.place-plan-dialog p{margin:0}.place-plan-destination-name{font-size:var(--text-body);font-weight:var(--weight-semibold);overflow-wrap:anywhere}.place-plan-hint{color:var(--ink-soft);font-size:var(--text-caption)}.place-plan-dialog .form-feedback:empty{display:none}.place-plan-dialog .ui-button{white-space:normal;overflow-wrap:anywhere;max-width:100%}.place-copy-dialog{border-radius:var(--surface-radius);background:var(--paper-strong);border:1px solid #aac2c5;grid-template-rows:auto auto minmax(90px,1fr) auto auto auto;width:min(620px,100%);max-height:min(780px,100dvh - 24px);display:grid;overflow:hidden;box-shadow:0 24px 70px #0a1f2a57}.place-copy-dialog>header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:14px;padding:16px 12px 13px 18px;display:flex}.place-copy-dialog>header>span{gap:2px;min-width:0;display:grid}.place-copy-dialog>header small{color:var(--sea);font-size:var(--text-caption);font-weight:var(--weight-bold);letter-spacing:.07em;text-transform:uppercase}.place-copy-dialog>header h2{font-size:var(--text-section);margin:0}.place-copy-dialog>header p{color:var(--ink-readable);font-size:var(--text-caption);margin:2px 0 0;line-height:1.4}.place-copy-dialog>header button{border-radius:var(--control-radius);width:42px;height:42px;color:var(--ink-soft);background:0 0;flex:none;place-items:center;display:grid}.place-copy-dialog>header button:hover:not(:disabled){background:var(--canvas);color:var(--ink)}.place-copy-controls{border-bottom:1px solid var(--line);gap:10px;padding:12px 18px;display:grid}.place-copy-source{color:var(--ink-readable);font-size:var(--text-caption);font-weight:var(--weight-semibold);grid-template-columns:84px minmax(0,1fr);align-items:center;gap:4px 10px;display:grid}.place-copy-source select{border:1px solid var(--line);border-radius:var(--control-radius);background:var(--paper-strong);width:100%;min-width:0;min-height:44px;color:var(--ink);font-size:var(--text-input);padding:0 10px}.place-copy-source small{color:var(--ink-soft);font-weight:var(--weight-normal);grid-column:2}.place-copy-filter{align-items:center;gap:7px;display:flex}.place-copy-filter>label{border:1px solid var(--line);border-radius:var(--control-radius);min-width:0;min-height:42px;color:var(--ink-soft);flex:1;align-items:center;gap:7px;padding:0 10px;display:flex}.place-copy-filter input{min-width:0;color:var(--ink);font-size:var(--text-input);background:0 0;border:0;outline:0;flex:1}.place-copy-filter>button{border-radius:var(--control-radius);background:var(--sea-wash);min-height:42px;color:var(--sea-deep);font-size:var(--text-caption);font-weight:var(--weight-bold);white-space:nowrap;padding:0 10px}.place-copy-filter button:disabled{opacity:.5}.place-copy-list-wrap{overscroll-behavior:contain;min-height:0;overflow:auto}.place-copy-list{gap:3px;margin:0;padding:7px 10px;list-style:none;display:grid}.place-copy-list li{border:1px solid #0000;border-radius:6px;min-width:0}.place-copy-list li:hover{background:var(--canvas)}.place-copy-list li.is-selected{background:var(--sea-wash);border-color:#a9cbd0}.place-copy-list li.is-unavailable{opacity:.62}.place-copy-list label{cursor:pointer;grid-template-columns:24px 46px minmax(0,1fr) auto;align-items:center;gap:8px;min-height:58px;padding:5px 8px;display:grid}.place-copy-list input[type=checkbox],.place-copy-photos input[type=checkbox]{width:18px;height:18px;accent-color:var(--sea-deep)}.place-copy-list img,.place-copy-pin{background:var(--canvas);object-fit:cover;border-radius:5px;place-items:center;width:46px;height:46px;display:grid;overflow:hidden}.place-copy-pin .place-pin{scale:.78}.place-copy-pin.is-must .place-pin{border-color:var(--coral)}.place-copy-pin.is-must .place-pin:after{background:var(--coral)}.place-copy-pin.is-maybe .place-pin{opacity:.64}.place-copy-row-copy{gap:2px;min-width:0;display:grid}.place-copy-row-copy strong,.place-copy-row-copy small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.place-copy-row-copy strong{font-size:var(--text-body)}.place-copy-row-copy small{color:var(--ink-soft);font-size:var(--text-caption)}.place-copy-list em{background:var(--canvas);color:var(--ink-soft);font-size:var(--text-caption);font-style:normal;font-weight:var(--weight-semibold);white-space:nowrap;border-radius:4px;padding:3px 5px}.place-copy-list em.is-warning{background:var(--coral-soft);color:#91462f}.place-copy-photos{border-top:1px solid var(--line);cursor:pointer;align-items:center;gap:10px;min-height:58px;padding:8px 18px;display:flex}.place-copy-photos>span{gap:2px;display:grid}.place-copy-photos strong{font-size:var(--text-caption)}.place-copy-photos small{color:var(--ink-soft);font-size:var(--text-caption);line-height:1.35}.place-copy-dialog>.form-feedback{padding:0 18px}.place-copy-dialog>.form-feedback:empty{display:none}.place-copy-dialog>footer{padding:10px 18px max(10px, env(safe-area-inset-bottom));border-top:1px solid var(--line);background:var(--canvas);justify-content:space-between;align-items:center;gap:10px;display:flex}.place-copy-dialog>footer>span{color:var(--ink-soft);font-size:var(--text-caption)}.place-copy-dialog>footer>div{gap:7px;display:flex}.place-copy-loading,.place-copy-no-results{color:var(--ink-soft);font-size:var(--text-caption);text-align:center;margin:0;padding:26px 18px}.place-copy-empty{text-align:center;justify-items:center;gap:4px;padding:22px 12px;display:grid}.place-copy-empty p{max-width:42ch;color:var(--ink-soft);font-size:var(--text-caption);margin:0;line-height:1.45}.place-copy-load-error,.place-copy-limit{color:#9b442a;font-size:var(--text-caption);font-weight:var(--weight-semibold);margin:0}.place-copy-limit{padding:0 18px}.places-copy-notice{color:#2f6e4b;font-size:var(--text-caption);font-weight:var(--weight-semibold);background:#dfeee4;border-radius:5px;align-items:center;gap:6px;margin:0 13px 6px;padding:7px 9px;display:flex}@media (width<=680px),(orientation:portrait) and (width<=1050px){.place-copy-backdrop{align-items:end;padding:0}.place-copy-dialog{width:100%;max-height:calc(100dvh - max(8px, env(safe-area-inset-top)));border-bottom:0;border-left:0;border-right:0;border-radius:10px 10px 0 0}.place-copy-dialog>header,.place-copy-controls,.place-copy-photos,.place-copy-dialog>footer{padding-inline:12px}.place-copy-source{grid-template-columns:minmax(0,1fr)}.place-copy-source small{grid-column:1}.place-copy-list{padding-inline:7px}.place-copy-list label{grid-template-columns:24px 42px minmax(0,1fr);min-height:64px}.place-copy-list img,.place-copy-pin{width:42px;height:42px}.place-copy-list em{grid-column:3;justify-self:start}.place-copy-dialog>footer{flex-direction:column;align-items:stretch}.place-copy-dialog>footer>div{grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);display:grid}}:root select:not([multiple]):not([size]){appearance:none;background-image:linear-gradient(var(--line), var(--line)), url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 10'%3E%3Cpath d='m2 2 6 6 6-6' fill='none' stroke='%230e5068' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");cursor:pointer;background-position:right 38px center,right 13px center;background-repeat:no-repeat;background-size:1px calc(100% - 14px),14px 9px;padding-right:46px}:root select:not([multiple]):not([size]):disabled{cursor:not-allowed}:root :is(.date-range-jump,.planning-context,.kitty-person-filter) select:not([multiple]):not([size]),:root select.kitty-currency{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 10'%3E%3Cpath d='m2 2 6 6 6-6' fill='none' stroke='%230e5068' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:right 9px center;background-size:12px 8px;padding-right:29px}:root .stop-select-control select:not([multiple]):not([size]){background-image:none;padding-right:38px}@media (forced-colors:active){:root select:not([multiple]):not([size]){appearance:auto;-webkit-appearance:menulist;background-image:none;padding-right:12px}}}
