[hidden]{display:none!important}.header nav [aria-current=page]{color:var(--forest);text-decoration:underline;text-underline-offset:5px}.gpx-main{padding-block:42px 28px}.gpx-heading{margin-bottom:30px}.gpx-heading .eyebrow,.viewer .eyebrow{color:#716759;margin-bottom:10px}.gpx-heading h1{color:var(--forest);font-size:clamp(42px,5vw,58px);line-height:1.05;letter-spacing:-.045em;margin:0}.gpx-heading h1 span{color:#697552}.gpx-heading p:last-child{color:#61574b;max-width:55ch;font-size:15px;margin-bottom:0}.workspace{display:grid;grid-template-columns:minmax(280px,340px) minmax(0,1fr);grid-template-rows:auto 1fr;align-items:start;gap:16px 22px}#route-settings,#controls,.viewer{min-width:0}.viewer{position:sticky;top:16px;grid-column:2;grid-row:1 / span 2;border:1px solid var(--line);border-radius:24px;background:var(--paper);overflow:hidden}.viewer-head{padding:20px 24px}.viewer h2{font-size:22px;letter-spacing:-.5px}.preview{position:relative;height:clamp(340px,50vh,530px);background:#eee3d1}.viewport,.empty{position:absolute;inset:0}.viewport canvas{display:block;width:100%;height:100%}.empty{display:grid;place-content:center;justify-items:center;gap:16px;padding:20px;color:var(--forest);text-align:center;pointer-events:none}.empty span{font-size:14px;font-weight:700}.toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:12px 20px;border-top:1px solid var(--line)}.toolbar label{margin-left:4px;font-size:12px}.toolbar input{width:min(96px,100%)}.viewer-notes>:not(:empty){margin:0;padding:10px 20px;border-top:1px solid var(--line)}.status,.error{font-size:13px}.status{color:var(--forest)}.error{color:#852e20;background:#f5e1d7;white-space:pre-wrap;overflow-wrap:anywhere}.control-card{min-width:0;margin:0 0 12px;padding:12px 16px 16px;border:1px solid var(--line);border-radius:16px;background:var(--paper)}#route-settings .control-card{margin-bottom:0}.control-card legend{padding:0 6px;color:var(--forest);font-size:15px;font-weight:750}.step{display:inline-block;margin-right:8px;color:#774421;font-size:10px;letter-spacing:.08em}details.control-card{padding:0 16px}.control-card summary{min-height:46px;padding:11px 0;color:var(--forest);cursor:pointer;font-size:14px;font-weight:750}.control-card summary:after{top:6px}.control-card[open]{padding-bottom:12px}.row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,134px);align-items:center;gap:8px;margin:8px 0;font-size:12px}.row label{font-weight:650}.row .unit{color:#716759;font-weight:400}.label-row{margin-bottom:14px}.label-row input{grid-column:1 / -1}.workspace :is(button,input,select){font:inherit}.workspace :is(button,input,select):focus-visible{outline:2px solid var(--forest);outline-offset:3px}.workspace input{accent-color:var(--forest)}.row :is(input[type=number],input[type=text],input[type=color],select){min-width:0;width:100%;min-height:38px;padding:5px 8px;border:1px solid var(--line);border-radius:8px;color:var(--ink);background:#fffcf6}.row :is(input[type=range],input[type=checkbox]){min-width:0;margin:0}.row input[type=checkbox]{justify-self:end;width:19px;height:19px}.workspace input[type=file]{max-width:100%;width:100%;color:#61574b;font-size:12px}.workspace button,.workspace ::file-selector-button{min-height:38px;padding:7px 13px;border:1px solid var(--line);border-radius:40px;color:var(--forest);background:var(--cream);cursor:pointer;font:700 12px Manrope,Arial,sans-serif}.workspace ::file-selector-button{margin-right:8px}.workspace button:hover:enabled,.workspace ::file-selector-button:hover{background:#e3e5d2}.workspace .primary{width:100%;min-height:44px;text-align:center;background:var(--forest);color:var(--paper);border-color:var(--forest)}.workspace .primary:hover:enabled{background:#1e3523}.workspace .secondary{margin-top:12px;background:transparent;color:var(--forest)}.workspace .secondary:hover:enabled{background:#e3e5d2}.workspace button:disabled{cursor:not-allowed;color:#586344;border-color:#c8cfb4;background:#e3e5d2}.file-info,.hint,.attribution,.warnings,.info,.report{overflow-wrap:anywhere}.file-info{margin-top:9px;font-size:12px;font-weight:650}.hint,.attribution,.info,.warnings,.report{color:#61574b;font-size:12px;line-height:1.55;margin:8px 0 0}.warnings:empty,.info:empty,.report:empty{display:none}.warnings,.report ul{padding-left:17px}.report .summary{color:var(--forest);font-weight:750}.report .bad,.report .fail{color:#852e20}.report .detail{display:block}.attribution a{text-decoration:underline;text-underline-offset:2px}.gpx-footer{display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px 20px;border-top:1px solid var(--line);padding-block:20px;color:var(--forest);font-size:11px}.gpx-footer a:hover{text-decoration:underline}@media(max-width:760px){.gpx-main{padding-top:28px}.workspace{grid-template-columns:minmax(0,1fr);grid-template-rows:auto}.viewer{position:static;grid-area:auto;border-radius:16px}.viewer-head{padding:14px 16px}.preview{height:clamp(230px,45vh,390px)}.toolbar{padding-inline:12px}}
