body{font-family:Lucida Sans,Lucida Sans Regular,Lucida Grande,Lucida Sans Unicode,Geneva,Verdana,sans-serif;margin:0;padding:0;background:#f5f5f5}#app{display:flex;flex-direction:column;height:100vh}.site-header{display:flex;align-items:center;gap:10px;height:60px;padding:0 16px;background:#fff;box-shadow:0 1px #e0e0e0;flex-shrink:0;z-index:200;position:relative}.site-header__title{font-size:15px;font-weight:700;color:#222;flex:1;border-left:solid 1px #ddd;padding-top:4px}.site-header .logo{height:36px;margin-left:20px}.nav-drawer,.nav-drawer *{box-sizing:border-box}.nav-drawer__toggle{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:6px;color:#555;cursor:pointer;list-style:none;flex-shrink:0}.nav-drawer__toggle::-webkit-details-marker{display:none}.nav-drawer__toggle::marker{display:none}.nav-drawer__toggle:hover{background:#f0f0f0}.nav-drawer__panel{display:none;position:fixed;top:60px;left:0;bottom:0;width:240px;background:#fff;box-shadow:4px 0 16px #0000001f;z-index:300;overflow-y:auto}.nav-drawer[open] .nav-drawer__panel{display:block}.nav-drawer__list{list-style:none;margin:8px 0;padding:0}.nav-drawer__item{display:block;padding:12px 20px;font-size:14px;font-weight:500;color:#333;text-decoration:none}.nav-drawer__item:hover{background:#f5f5f5}.user-menu{margin-left:auto;position:relative}.user-menu__toggle{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;color:#555;cursor:pointer;list-style:none;flex-shrink:0}.user-menu__toggle::-webkit-details-marker{display:none}.user-menu__toggle::marker{display:none}.user-menu__toggle:hover{background:#f0f0f0}.user-menu__dropdown{display:none;position:absolute;top:calc(100% + 6px);right:0;min-width:160px;background:#fff;border:1px solid #e0e0e0;border-radius:8px;box-shadow:0 4px 16px #0000001f;overflow:hidden;z-index:300}.user-menu[open] .user-menu__dropdown{display:block}.user-menu__item{display:block;padding:10px 16px;font-size:13px;color:#333;text-decoration:none}.user-menu__item:hover{background:#f5f5f5}#root{flex:1;display:grid;grid-template-columns:1fr 260px;min-height:560px;height:100%}.main{display:flex;align-items:center;justify-content:center;overflow:hidden}.poster{aspect-ratio:var(--layout-aspect-ratio, 1/1.41421356);max-width:100%;max-height:100%;height:90%;overflow:hidden;box-shadow:0 4px 24px #0000002e;background:var(--color-map-bg);container-type:size}.poster,.poster *{box-sizing:border-box}.poster--render{aspect-ratio:unset;max-width:none;max-height:none;height:auto;width:auto}.poster__content{width:100%;height:100%;display:flex;flex-direction:column;padding-inline:4cqw;padding-block:3cqh}.map{position:relative;height:77.9%;min-height:0;flex:auto;overflow:hidden}.editor-toolbar{height:100%;min-height:0;background:#fff;padding-top:.5em;overflow-y:auto;box-shadow:0 4px 24px #0000002e}.toolbar-panel{border-top:solid 1px #ddd;background:#fff}.toolbar-panel:first-child{border-top:0}.toolbar-panel__header{display:flex;align-items:center;justify-content:space-between;width:100%;padding:10px 16px;background:none;border:none;cursor:pointer;text-align:left}.toolbar-panel__header:hover .toolbar-panel__chevron{border-color:#000!important}.toolbar-panel__title{font-size:13px;font-weight:600;color:#444}.toolbar-panel__subtitle{display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:600;color:#666;padding:4px 0}.toolbar-panel__chevron{width:6px;height:6px;color:#444;border-right:1.5px solid #999;border-bottom:1.5px solid #999;transform:rotate(-45deg);transition:transform .15s ease;flex-shrink:0}.toolbar-panel__header--open .toolbar-panel__chevron{transform:rotate(45deg)}.toolbar-panel__body{padding:6px 16px}.toolbar-panel__body .subtitle{margin:0 0 8px;font-size:12px;font-weight:600;color:#666}.toolbar-panel__body .placeholder{margin:0;font-size:13px;color:#888}.toolbar-panel-footer{display:flex;flex-direction:column;align-items:flex-end;margin:12px 0 0}.theme-switcher{display:flex;flex-wrap:wrap;gap:4px}.theme-pill{display:flex;height:24px;align-items:center;border-radius:999px;border:1.5px solid #ddd;overflow:hidden;cursor:pointer;padding:0}.theme-pill--active{border-color:#444;border-width:1.5px;box-shadow:0 2px 4px #00000094}.theme-pill__name{flex:1;font-size:10px;font-weight:600;padding:0 6px 0 5px;text-align:center;white-space:nowrap}.theme-color-editor{display:flex;flex-direction:column;gap:4px;padding:8px}.theme-color-editor__toggle{display:flex;align-items:center;justify-content:space-between;width:100%;padding:4px 0;background:none;border:none;cursor:pointer;font-size:20px;font-weight:400;color:#aaa}.theme-color-editor__toggle:hover{color:#333}.theme-color-row{display:flex;align-items:center;justify-content:space-between;cursor:pointer}.theme-color-row__label{font-size:11px;color:#666}.theme-color-row__input{width:28px;height:20px;padding:0;border:1px solid #ccc;border-radius:3px;cursor:pointer;background:none}.theme-color-row__input::-webkit-color-swatch-wrapper{padding:0}.theme-color-row__input::-webkit-color-swatch{border:none;border-radius:2px}.theme-color-row__input::-moz-color-swatch{border:none;border-radius:2px}.theme-color-row__input--number{width:44px;padding:0 4px;font-size:11px;text-align:center;cursor:default}.marker-row{display:flex;align-items:center;gap:8px;padding:6px 0;cursor:pointer}.marker-row__label{font-size:13px;color:#333}.marker-row__checkbox{display:grid;place-content:center;width:18px;height:18px;appearance:none;-webkit-appearance:none;background-color:#fff;border:2px solid #ddd;border-radius:4px}.marker-row__checkbox:before{content:"";width:12px;height:9px;transform:scale(0);background-color:#444;transform-origin:bottom left;clip-path:polygon(94.2% 15.6%,35.4% 93.9%,0% 46.7%,11.7% 31.1%,35.4% 62.8%,82.5% 0%)}.marker-row__checkbox:checked:before{transform:scale(1)}.units-row{display:flex;align-items:center;gap:24px;padding:6px 0}.units-row__option{display:flex;align-items:center;gap:8px;cursor:pointer}.units-row__label{font-size:13px;color:#333}.units-row__radio{display:grid;place-content:center;width:18px;height:18px;appearance:none;-webkit-appearance:none;background-color:#fff;border:2px solid #ddd;border-radius:50%}.units-row__radio:before{content:"";width:10px;height:10px;border-radius:50%;transform:scale(0);background-color:#444}.units-row__radio:checked:before{transform:scale(1)}.theme-reset-btn{margin-top:4px;align-self:flex-start;padding:3px 8px;font-size:10px;background:none;border:1px solid #ccc;border-radius:4px;cursor:pointer;color:#666}.theme-reset-btn:hover{border-color:#999;color:#333}.layout-switcher{display:flex;gap:8px;margin-bottom:10px}.layout-card{flex:1;display:flex;flex-direction:column;align-items:center;gap:6px;padding:10px 8px 8px;color:#aaa;background:#fff;border:2px solid #ddd;border-radius:10px;cursor:pointer}.layout-card--active{color:#444;border-color:#aaa}.layout-card:hover:not(.layout-card--active){border-color:#bbb}.layout-card__icon{width:32px;aspect-ratio:1/1.41421356;background:#ddd;border-radius:3px}.layout-card__label{font-size:11px;font-weight:500}.strava-disconnect{background:none;border:none;font-size:12px;color:#888;cursor:pointer;padding:6px 0}.strava-disconnect:hover{color:#333}.activity-id-input{display:flex;gap:6px;margin-top:8px}.activity-id-input__field{flex:1;min-width:0;padding:6px 8px;font-size:12px;border:1px solid #ccc;border-radius:4px;outline:none}.activity-id-input__field:focus{border-color:#fc4c02}.activity-id-input__btn{padding:6px 10px;font-size:12px;background:#fc4c02;color:#fff;border:none;border-radius:4px;cursor:pointer;white-space:nowrap}.activity-id-input__btn:disabled{opacity:.5;cursor:default}.strava-connect-btn{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;padding:10px 16px;background:#fff;border:1px solid #e0e0e0;border-radius:6px;font-size:14px;font-weight:700;color:#2d2d6b;cursor:pointer;text-transform:uppercase;letter-spacing:.04em}.strava-connect-btn:hover{background:#f5f5f5}.strava-connect-btn__brand{color:#fc4c02}.xsa-container{position:relative;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:6px;z-index:9999;margin:12px}.xsa-input{width:100%;height:40px;padding:0 12px;border:1px solid #ccc;border-radius:10px;font-size:14px;color:#2d2d2d;background:#fff;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);outline:none;transition:border-color .2s ease,box-shadow .2s ease}.xsa-input:focus{border-color:#ccc;box-shadow:0 0 0 2px #ccc}.xsa-input::placeholder{color:#666}.xsa-options{background:#fff;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-radius:10px;border:1px solid #ccc;box-shadow:0 8px 32px #ccc,0 0 0 1px #ccc;padding:4px;z-index:9999}.xsa-option{padding:8px 10px;cursor:pointer;color:#2d2d2d;border-radius:6px;font-size:14px;transition:background-color .12s ease,color .12s ease}.xsa-option-focused{background-color:#eee;color:#fc4c02}.xsa-option-selected{background-color:#fff}.xsa-option-label{font-size:14px;font-weight:400;line-height:1.5}.xsa-option-label-focused{font-weight:500}.xsa-option-no-match{padding:24px 10px;color:#2d2d2d;font-size:14px;text-align:center}.xsa-icon{position:absolute;right:0;width:20px;height:20px;z-index:1;color:#999;background-color:#fff;pointer-events:none;transition:transform .2s ease,color .2s ease}.xsa-icon path{stroke-width:2}.xsa-icon--open{transform:rotate(180deg);color:#999}.activity-details{background:var(--color-map-bg);height:22.1%}.elevation-chart{display:block;width:100%;height:40%;background:var(--color-map-bg)}.elevation-chart path{fill:var(--color-chart-fill);opacity:1}.activity-details__body{background:var(--color-map-bg);height:60%;padding:1cqh 0 0;text-align:center}.activity-details__name{margin:0;font-size:var(--font-size-activity-name, 2cqw);font-weight:800;color:var(--color-text-primary);text-transform:uppercase;letter-spacing:.02em;line-height:1.2}.activity-details__date{margin:.16cqh 0 .47cqh;font-size:var(--font-size-activity-date, 1.55cqw);color:var(--color-text-secondary)}.activity-details__stats{display:grid;grid-template-columns:repeat(3,1fr);gap:0}.stat-item{display:flex;flex-direction:column;gap:.16cqh;padding:.47cqh 0}.stat-item__value{font-size:var(--font-size-stat-value, 1.55cqw);font-weight:700;color:var(--color-text-primary);line-height:1}.stat-item__label{font-size:var(--font-size-stat-label, 1.32cqw);color:var(--color-text-secondary);line-height:1}.checkout-button{display:block;width:100%;margin:16px 0;padding:10px 16px;font-size:13px;font-weight:600;color:#fff;background:#222;border:none;border-radius:6px;cursor:pointer}.checkout-button:hover{background:#000}.checkout-button:disabled{background:#ccc;cursor:not-allowed}.checkout-page{max-width:560px;margin:0 auto;padding:2em 1.5em;display:flex;flex-direction:column;gap:1.5em}.checkout-page__title{font-size:22px;font-weight:700;margin:0}.checkout-page__section{display:flex;flex-direction:column;gap:12px;padding:0;border:none;margin:0}.checkout-page__section legend{font-size:13px;font-weight:600;color:#444;padding:0 0 4px}.checkout-page__error{margin:0;padding:10px 12px;font-size:13px;color:#a4271b;background:#fdecea;border:1px solid #f4c7c0;border-radius:6px}.checkout-page__btn{align-self:flex-start;padding:10px 20px;font-size:13px;font-weight:600;border-radius:6px;border:none;cursor:pointer;text-decoration:none;display:inline-block}.checkout-page__btn--primary{color:#fff;background:#222}.checkout-page__btn--primary:hover:not(:disabled){background:#000}.checkout-page__btn--primary:disabled{background:#ccc;cursor:not-allowed}.checkout-page__link-btn{background:none;border:none;padding:0;font-size:13px;color:#666;text-decoration:underline;cursor:pointer}.checkout-page__link-btn:hover{color:#222}.checkout-page__link-btn:disabled{color:#ccc;cursor:not-allowed}.product-list{display:flex;flex-direction:column;gap:10px}.product-card{display:grid;grid-template-columns:auto 1fr auto;align-items:center;column-gap:10px;row-gap:2px;padding:12px 14px;border:2px solid #ddd;border-radius:8px;background:#fff;cursor:pointer}.product-card--selected{border-color:#222}.product-card:hover:not(.product-card--selected){border-color:#bbb}.product-card__radio{grid-row:1/span 2}.product-card__name{font-size:14px;font-weight:600;color:#222}.product-card__price{font-size:14px;font-weight:600;color:#222;text-align:right}.product-card__shipping{grid-column:2/span 2;font-size:12px;color:#777}.checkout-form-fields__row{display:flex;flex-direction:column;gap:4px;font-size:13px;font-weight:600;color:#444}.checkout-form-fields__row input{font-size:14px;font-weight:400;color:#222;padding:8px 10px;border:1px solid #ccc;border-radius:6px}.checkout-form-fields__row input:focus{outline:none;border-color:#222}.checkout-payment{display:flex;flex-direction:column;gap:1.25em}.checkout-payment__actions{display:flex;align-items:center;justify-content:space-between}.checkout-result{align-items:flex-start;text-align:left}.checkout-result p{color:#444;font-size:14px;line-height:1.5}.render-status{display:flex;flex-direction:column;align-items:center;gap:12px;padding:24px 0;text-align:center}.render-status__spinner{width:32px;height:32px;border:3px solid #e8e8e8;border-top-color:var(--color-text-primary, #fc4c02);border-radius:50%;animation:render-status-spin .8s linear infinite}.render-status__message{margin:0;font-size:14px;color:var(--color-text-secondary, #888888)}.render-status--error .render-status__message{color:#c0392b}.render-status__download{display:inline-block;padding:10px 20px;font-weight:700;text-decoration:none;color:#fff;background:var(--color-text-primary, #fc4c02);border-radius:4px}@keyframes render-status-spin{to{transform:rotate(360deg)}}.dev-render-page{max-width:480px;margin:0 auto;padding:2em 1.5em;display:flex;flex-direction:column;gap:1.25em}.dev-render-page__title{font-size:20px;font-weight:700;margin:0}.dev-render-page__note{margin:0;font-size:13px;color:#666}.dev-render-page__section{display:flex;flex-direction:column;gap:8px;padding:0;border:none;margin:0}.dev-render-page__section legend{font-size:13px;font-weight:600;color:#444;padding:0 0 4px}.dev-render-page__product-list{display:flex;flex-direction:column;gap:6px}.dev-render-page__product{display:flex;align-items:center;gap:8px;font-size:13px;color:#222;cursor:pointer}.dev-render-page__btn{align-self:flex-start;padding:10px 20px;font-size:13px;font-weight:600;color:#fff;background:#222;border:none;border-radius:6px;cursor:pointer}.dev-render-page__btn:hover:not(:disabled){background:#000}.dev-render-page__btn:disabled{background:#ccc;cursor:not-allowed}.dev-render-page__error{margin:0;padding:10px 12px;font-size:13px;color:#a4271b;background:#fdecea;border:1px solid #f4c7c0;border-radius:6px}.dev-render-link{display:block;margin:8px 16px 0;font-size:11px;color:#999;text-align:center;text-decoration:none}.dev-render-link:hover{color:#444;text-decoration:underline}.lda-searchable-dropdown{--color-background: rgb(9, 9, 11);--color-disabled: rgb(20, 20, 24);--color-border: rgba(255, 255, 255, .1);--color-focus: #ef4723;--color-text: rgba(255, 255, 255, .9);--color-text-secondary: rgba(255, 255, 255, .4);--color-chip-bg: rgba(255, 255, 255, .1);--color-chip-hover: rgba(255, 255, 255, .15);--color-chip-close-hover-bg: rgba(255, 255, 255, .2);--color-chip-close-hover-text: rgba(255, 255, 255, .9);--color-option-hover: rgba(255, 255, 255, .06);--color-option-selected: rgba(239, 71, 35, .15);--color-option-group: rgba(239, 71, 35, .12);--color-option-disabled: rgba(255, 255, 255, .02);--spacing-xs: 2px;--spacing-sm: 4px;--spacing-md: 8px;--spacing-lg: 12px;--spacing-xl: 16px;--spacing-xxl: 20px;--width-container: 300px;--height-input: 40px;--border-radius-sm: 4px;--border-radius-md: 6px;--border-radius-circle: 50%;--font-size-sm: 12px;--font-size-base: 14px;--transition-fast: .1s;--transition-base: .15s;--z-dropdown: 10;--shadow-focus: 0 0 0 2px rgba(239, 71, 35, .2);--shadow-dropdown: 0 4px 6px -1px rgb(0 0 0 / .3), 0 2px 4px -2px rgb(0 0 0 / .2);--shadow-button: 0 0 0 2px rgba(0, 0, 0, .1)}.lda-dropdown-container{position:relative;width:var(--width-container);display:flex;align-items:center;min-height:var(--height-input);box-sizing:border-box;border:1px solid var(--color-border);border-radius:var(--border-radius-md);background-color:var(--color-background);cursor:text;transition:border-color var(--transition-base) ease,box-shadow var(--transition-base) ease}.lda-dropdown-container:focus-within{border-color:var(--color-focus);box-shadow:var(--shadow-focus)}.lda-dropdown-container.disabled{background-color:var(--color-disabled);opacity:.5;cursor:not-allowed}.lda-dropdown-search-query-input{width:100%;border:none;padding:var(--spacing-sm) var(--spacing-xxl) var(--spacing-sm) var(--spacing-lg);font-size:var(--font-size-base);outline:none;color:var(--color-text);background:transparent;border-radius:var(--border-radius-md)}.lda-dropdown-search-query-input:disabled{cursor:not-allowed}.lda-dropdown-search-query-input::placeholder{color:var(--color-text-secondary)}.lda-dropdown-trigger-icon{width:20px;height:20px;position:absolute;right:var(--spacing-lg);color:var(--color-text-secondary);pointer-events:none;transition:transform var(--transition-base) ease,color var(--transition-base) ease}.lda-dropdown-container:hover .lda-dropdown-trigger-icon{color:var(--color-text)}.lda-dropdown-trigger-icon-invert{transform:rotate(180deg)}.lda-dropdown-options{background-color:var(--color-background);border:1px solid var(--color-border);border-radius:var(--border-radius-md);z-index:var(--z-dropdown);box-shadow:var(--shadow-dropdown);padding:var(--spacing-sm)}.lda-dropdown-group{text-transform:uppercase;font-weight:600;font-size:var(--font-size-sm);color:var(--color-text-secondary);background-color:var(--color-option-group);padding:var(--spacing-md) var(--spacing-md);border-radius:var(--border-radius-sm)}.lda-dropdown-option{padding:var(--spacing-md);cursor:pointer;border-radius:var(--border-radius-sm);font-size:var(--font-size-base);transition:background-color var(--transition-fast) ease}.lda-dropdown-option-focused{background-color:var(--color-option-hover)}.lda-dropdown-option-selected{background-color:var(--color-option-selected)}.lda-dropdown-option-disabled{background-color:var(--color-option-disabled);cursor:not-allowed;opacity:.5}.lda-dropdown-option-label{font-size:var(--font-size-base);font-weight:400;line-height:1.5}.lda-dropdown-option-label-focused{font-weight:500;color:var(--color-text)}.lda-dropdown-option-no-match{padding:var(--spacing-xl) var(--spacing-md);color:var(--color-text-secondary);font-size:var(--font-size-base);text-align:center}
