:root{--ink:#203b34;--muted:#7c8279;--paper:#f7f7f1;--line:#dddfd6;--accent:#d7e0c7;--serif:Georgia,'Times New Roman',serif}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:14px Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer}button:disabled{cursor:wait;opacity:.55}button:focus-visible,a:focus-visible,#viewport:focus-visible{outline:3px solid #b38046;outline-offset:3px}button{transition:background .18s,border-color .18s,transform .18s}button:hover{filter:brightness(.96)}.header svg,.layout svg,#summary svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.icon-sprite{position:absolute;width:0;height:0;overflow:hidden}.header{height:92px;padding:0 3.5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);position:relative;z-index:2}.brand{font-size:37px;letter-spacing:-2.2px;line-height:.85;font-weight:800;text-decoration:none;color:var(--ink);display:flex;align-items:center;gap:16px}.brand span{font-size:10px;line-height:1.4;letter-spacing:2.5px;border-left:1px solid #bcc6b9;padding-left:16px;font-weight:400}.header-center{font-size:10px;letter-spacing:2px;display:flex;align-items:center;gap:10px}.tiny-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#708267}.text-button{display:flex;gap:13px;align-items:center;border:0;background:none;font-size:12px}.text-button>span{border:1px solid #cad1c4;border-radius:50%;width:26px;height:26px;display:grid;place-content:center;font-size:10px}.layout{display:grid;grid-template-columns:minmax(0,1fr) 385px;min-height:690px;height:calc(100dvh - 139px);max-height:1100px}.stage{position:relative;min-width:0;background:#dfded2;overflow:hidden}#viewport{position:absolute;inset:0 0 100px;touch-action:none}#viewport canvas{display:block;width:100%;height:100%;outline:0}.stage-heading{position:absolute;top:37px;left:5%;pointer-events:none}.eyebrow{font-size:9px;letter-spacing:2px;font-weight:600}.stage-heading h1{font:clamp(42px,4.6vw,77px)/1.05 var(--serif);letter-spacing:-3px;margin:15px 0 8px}.stage-heading h1 span{color:#758b5b}.stage-heading p{font-size:12px;letter-spacing:.4px;margin:0;color:#536055}.scene-label{position:absolute;top:41px;right:28px;display:flex;align-items:center;gap:8px;font-size:10px;letter-spacing:.2px}.slash{color:#83907a;padding:0 2px}.viewer-tools{position:absolute;right:26px;bottom:163px;display:flex;flex-direction:column;gap:7px}.icon-button{width:38px;height:38px;border:1px solid #c5ccc0;border-radius:50%;background:#f7f7f1dc;display:grid;place-items:center}.view-bottom{position:absolute;bottom:119px;left:5%;right:28px;display:flex;justify-content:space-between;align-items:center}.drag-hint{display:flex;gap:10px;align-items:center;font-size:10px;letter-spacing:.3px;color:#536055}.drag-hint svg{width:24px;height:24px}.drag-hint span{padding:0 4px}.view-label{background:none;border:0;font-size:10px;display:flex;gap:9px}.environment-bar{position:absolute;bottom:0;left:0;right:0;height:100px;background:#eeeee5ed;border-top:1px solid #cdd2c5;display:flex;gap:20px;align-items:center;padding:14px 5%}.env-label{font-size:8px;line-height:1.8;letter-spacing:1.8px;max-width:65px}.env-options{display:flex;gap:8px}.env-card{background:none;border:1px solid #c5cbbb;border-radius:5px;display:flex;align-items:center;gap:10px;padding:5px 11px 5px 5px;font-size:11px}.env-card[aria-pressed=true]{border-color:var(--ink);box-shadow:0 0 0 1px var(--ink)}.env-thumb{width:45px;height:42px;display:block;border-radius:2px;position:relative;overflow:hidden;background:linear-gradient(#c5cbbd 55%,#b1b4a5 55%)}.env-thumb.courtyard:before{content:'';position:absolute;left:6px;top:8px;width:30px;height:28px;background:repeating-linear-gradient(90deg,#aaa99b 0 7px,#c6c6b6 7px 10px);transform:skewY(-7deg)}.env-thumb.woodland{background:linear-gradient(#c8d1ba 50%,#a4b18e 50%)}.env-thumb.woodland:before{content:'';position:absolute;left:6px;top:6px;width:17px;height:25px;background:#566c4c;border-radius:60% 60% 35% 35%;box-shadow:17px 5px 0 #768760}.time-options{display:flex;gap:3px;margin-left:auto;padding-left:14px;border-left:1px solid #ccd1c2}.time-options button{display:flex;align-items:center;gap:5px;background:none;border:0;border-radius:4px;padding:10px 8px;font-size:10px;color:#76806f;white-space:nowrap}.time-options button[aria-pressed=true]{background:#dce2d1;color:var(--ink)}.time-options svg{width:16px;height:16px}.configuration{background:var(--paper);border-left:1px solid var(--line);padding:37px 30px 20px;display:flex;flex-direction:column;min-height:0;overflow:auto}.panel-intro h2{font:30px/1.1 var(--serif);letter-spacing:-.8px;margin:13px 0 10px}.panel-intro p{font-size:11px;color:var(--muted);margin:0}.steps{display:grid;grid-template-columns:repeat(4,1fr);margin:30px 0 28px;border-bottom:1px solid var(--line);gap:14px}.steps button{padding:0 0 12px;text-align:left;border:0;background:none;color:#93988d;font-size:11px;position:relative}.steps button span{display:block;font-size:8px;margin-bottom:7px;letter-spacing:1px}.steps button[aria-selected=true]{color:var(--ink)}.steps button[aria-selected=true]:after{content:'';position:absolute;bottom:-1px;left:0;right:0;height:2px;background:var(--ink)}.option-heading{display:flex;align-items:center;justify-content:space-between}.option-heading h3{font-size:14px;font-weight:500;margin:0}.option-heading span{font-size:9px;color:#7f8878}.option-description{font-size:11px;color:var(--muted);line-height:1.6;margin:9px 0 23px}.swatches{display:flex;justify-content:space-between;gap:10px;margin:25px 0 22px}.swatch{width:44px;height:44px;padding:4px;border-radius:50%;background:none;border:1px solid transparent;position:relative}.swatch:before{content:'';position:absolute;inset:4px;background:var(--swatch);border-radius:50%;box-shadow:inset 0 0 0 1px #0000000d}.swatch[aria-pressed=true]{border-color:var(--ink)}.swatch svg{position:relative;width:16px;height:16px;color:white;z-index:1}.swatch[data-light=true] svg{color:var(--ink)}.selected-color{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:23px}.selected-color strong{font-size:14px;font-weight:500}.selected-color small{display:block;font-size:10px;color:var(--muted);margin-top:5px}.pill{font-size:8px;border:1px solid #cbd3c1;padding:5px 7px;border-radius:3px;letter-spacing:.7px}.detail-card{background:#eceee5;border-radius:4px;padding:20px;margin-top:23px}.detail-card .eyebrow{font-size:8px;letter-spacing:1.5px;color:#647459}.detail-card p{font:19px/1.4 var(--serif);margin:12px 0 10px}.detail-card small{font-size:10px;line-height:1.6;color:#76816e;display:block}.part-list{display:grid;gap:11px}.part-card{position:relative;display:flex;align-items:center;gap:15px;background:transparent;border:1px solid #d8ddcf;border-radius:5px;padding:14px 11px;text-align:left;width:100%;min-height:97px}.part-card[aria-pressed=true]{border-color:#52684c;background:#eef0e6;box-shadow:inset 0 0 0 1px #52684c}.part-card strong{display:block;font-size:13px;font-weight:500;margin-bottom:7px}.part-card small{display:block;line-height:1.5;color:#7c8376;font-size:10px}.part-card .part-art{width:80px;height:57px;flex-shrink:0;color:#485647}.part-card>.choice-dot{position:absolute;right:9px;top:9px;width:11px;height:11px;border:1px solid #adbaa2;border-radius:50%}.part-card[aria-pressed=true]>.choice-dot{background:#536d4c;border:3px solid #dce4cf;box-shadow:0 0 0 1px #536d4c}.panel-footer{margin-top:auto;padding-top:27px}.primary-button{background:var(--ink);color:#fff;border:1px solid var(--ink);border-radius:3px;padding:17px 18px;width:100%;display:flex;align-items:center;justify-content:space-between;font-size:11px}.primary-button svg{width:18px;height:18px}.reset-link{display:block;margin:14px auto 0;background:none;border:0;padding:5px;font-size:9px;text-decoration:underline;text-underline-offset:3px;color:#7e8775}.footer{height:47px;padding:0 3.5%;display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:8px;letter-spacing:1.1px;color:#7e8877;border-top:1px solid var(--line)}.footer>span:nth-child(2){letter-spacing:.2px}.footer i{padding:0 9px;font-style:normal}.loading{position:absolute;inset:0 0 100px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:15px;background:#e3e5dce8;font-size:11px;z-index:3}.loading[hidden],.viewer-error[hidden]{display:none}.loader-ring{width:30px;height:30px;border:2px solid #bac4b2;border-top-color:var(--ink);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.viewer-error{position:absolute;left:15%;right:15%;top:40%;background:var(--paper);padding:25px;z-index:5;border:1px solid #9d725b}.viewer-error p{font-size:12px;line-height:1.6}.viewer-error button{padding:10px;background:var(--ink);color:white;border:0}#toast{position:fixed;left:50%;bottom:24px;transform:translate(-50%,20px);opacity:0;pointer-events:none;background:var(--ink);color:white;padding:14px 22px;z-index:20;border-radius:5px;font-size:12px;transition:.2s;max-width:90vw;text-align:center}#toast.visible{opacity:1;transform:translate(-50%,0)}dialog{color:var(--ink);border:0;border-radius:10px;padding:32px;width:min(480px,calc(100vw - 28px));max-height:90dvh;background:var(--paper)}dialog::backdrop{background:#14251bd9;backdrop-filter:blur(5px)}.dialog-header{display:flex;justify-content:space-between;align-items:center}dialog h2{font:40px var(--serif);letter-spacing:-1px;margin:25px 0 6px}.dialog-intro{font-size:12px;color:var(--muted)}.summary-color{height:9px;border-radius:5px;margin:25px 0}dl{margin:0 0 25px}.summary-row{display:flex;justify-content:space-between;gap:20px;padding:13px 0;border-bottom:1px solid var(--line);font-size:12px}dt{color:#7d8776}dd{margin:0}.secondary-button{padding:15px;border:1px solid #b9c5b1;background:none;width:100%;border-radius:3px;margin-top:9px;font-size:11px}.fine-print{font-size:10px;color:var(--muted);line-height:1.5;margin-top:18px}.stage:fullscreen{height:100dvh;width:100vw}.stage:fullscreen #viewport{bottom:100px}
@media(min-width:1550px){.layout{grid-template-columns:minmax(0,1fr) 430px}.configuration{padding:45px 40px}.env-card{padding-right:20px}}
@media(max-width:1150px) and (min-width:761px){.layout{grid-template-columns:minmax(0,1fr) 340px}.configuration{padding:30px 23px 18px}.environment-bar{gap:10px;padding:12px 18px}.env-label{display:none}.env-card{gap:6px;padding-right:7px}.env-thumb{width:33px}.time-options{padding-left:8px;gap:0}.time-options button{padding:9px 6px}.time-options button span{display:none}.header-center{display:none}.drag-hint{font-size:9px;gap:5px}.stage-heading h1{font-size:53px}.scene-label{top:24px;font-size:9px}.stage-heading{top:55px}}
@media(max-width:760px){.header{height:65px;padding:0 20px}.brand{font-size:29px;gap:12px}.brand span{font-size:8px;padding-left:12px;letter-spacing:1.8px}.header-center{display:none}.text-button{font-size:0;gap:8px}.text-button>span{font-size:10px}.layout{display:flex;flex-direction:column;height:auto;max-height:none;min-height:0}.stage{height:54dvh;min-height:365px;max-height:520px;flex-shrink:0}#viewport{bottom:72px}.stage-heading{top:22px;left:22px}.stage-heading .eyebrow{font-size:7px;letter-spacing:1.5px}.stage-heading h1{font-size:39px;letter-spacing:-1.7px;margin:8px 0 4px}.stage-heading p{font-size:9px}.scene-label{top:24px;right:19px;font-size:8px;gap:5px}.viewer-tools{right:16px;bottom:105px;gap:5px}.icon-button{width:33px;height:33px}.icon-button svg{width:16px;height:16px}.view-bottom{left:20px;bottom:84px;right:65px}.drag-hint{font-size:8px;gap:5px}.drag-hint svg{width:17px;height:17px}.drag-hint span{display:none}.view-label{display:none}.environment-bar{height:72px;padding:10px 17px;gap:10px}.env-label{display:none}.env-card{padding:4px 7px 4px 4px;font-size:9px;gap:6px}.env-thumb{width:31px;height:30px}.env-options{gap:7px}.time-options{padding-left:9px}.time-options button{padding:8px 7px;font-size:9px}.time-options button span{display:none}.time-options button[data-time=sunset] span{display:block;font-size:8px}.time-options svg{width:15px;height:15px}.configuration{padding:23px 22px 22px;border-left:0;border-top:1px solid var(--line);overflow:visible}.panel-intro{display:none}.steps{margin:0 0 22px;gap:20px}.steps button{text-align:center;font-size:12px;padding-bottom:12px}.steps button span{font-size:8px;display:inline;margin-right:7px}.option-description{font-size:11px;margin-bottom:17px}.swatches{justify-content:flex-start;gap:16px;margin:18px 0}.swatch{width:44px;height:44px}.selected-color{padding-bottom:17px}.detail-card{display:none}.panel-footer{padding-top:20px}.primary-button{padding:16px}.reset-link{margin-top:12px}.part-list{grid-template-columns:1fr 1fr;gap:10px}.part-card{padding:17px 13px;display:block;min-height:153px}.part-card .part-art{width:95px;height:51px;display:block;margin:0 auto 10px}.part-card strong{font-size:12px}.part-card small{font-size:9px}.footer{height:auto;min-height:55px;flex-wrap:wrap;padding:15px 22px;gap:9px;font-size:7px}.footer>span:nth-child(2){order:3;width:100%}.footer>span:last-child{margin-left:auto}.loading{bottom:72px}.viewer-error{left:5%;right:5%;top:30%;padding:15px;font-size:12px}.viewer-error p{font-size:10px}.stage:fullscreen #viewport{bottom:72px}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
/* E-MTB performance theme */
:root{--ink:#151719;--muted:#72777c;--paper:#fff;--line:#e2e3e5;--accent:#d71920;--serif:'Arial Narrow','Roboto Condensed',Impact,Arial,sans-serif}
body{font-family:Arial,Helvetica,sans-serif}.header{background:#111214;color:#fff;border:0;height:80px}.brand{color:#fff;font-style:italic;font-size:42px;font-weight:900;letter-spacing:-2px}.brand span{font-style:normal;font-weight:700;letter-spacing:2px;border-color:#494b4e}.header-center{font-weight:800;letter-spacing:2px}.tiny-dot{background:#e12028}.text-button>span{border-color:#555}.layout{height:calc(100dvh - 127px)}.stage-heading h1{font-family:Impact,'Arial Narrow',sans-serif;font-weight:900;font-style:italic;letter-spacing:-1px;font-size:clamp(48px,5.6vw,88px);line-height:.95}.stage-heading h1 span{color:#d71920}.stage-heading .eyebrow{font-weight:800;letter-spacing:2px}.stage-heading p{color:#31383d;font-weight:800;letter-spacing:1.4px;font-size:10px}.scene-label{background:#ffffffcf;padding:8px 10px;top:30px;color:#282d31}.panel-intro h2{font-family:Impact,'Arial Narrow',sans-serif;font-weight:800;font-size:34px;letter-spacing:.2px}.panel-intro .eyebrow{color:#d71920}.steps button{font-weight:700}.steps button[aria-selected=true]:after{background:#d71920;height:3px}.option-heading h3{font-size:14px;text-transform:uppercase;font-weight:800;letter-spacing:.5px}.primary-button{background:#d71920;border-color:#d71920;border-radius:0;font-weight:800;text-transform:uppercase;letter-spacing:.6px}.primary-button:hover{background:#b41017}.icon-button{border-radius:2px;color:#161a1d;background:#fffffff0}.swatch[aria-pressed=true]{border:2px solid #d71920}.swatch[data-light=true] svg{color:#222}.selected-color strong{font-weight:800}.pill{color:#d71920;border-color:#e7b5b8;border-radius:0;font-weight:700}.environment-bar{background:#151719;color:white;border-color:#33383d}.env-card{border-color:#4c5054;border-radius:0;font-weight:700}.env-card[aria-pressed=true]{border-color:#f13a40;box-shadow:0 0 0 1px #f13a40;background:#27292c}.env-thumb{border-radius:0;background-size:cover!important;background-position:center!important}.env-thumb.courtyard{background-image:url('assets/images/alpine.svg')}.env-thumb.woodland{background-image:url('assets/images/forest.svg')}.env-thumb:before{display:none}.time-options{border-color:#45494b}.time-options button{color:#c6c9cd;border-radius:0}.time-options button[aria-pressed=true]{background:#d71920;color:white}.detail-card{position:relative;background:linear-gradient(0deg,#080e13f0,#080e1320),url('assets/images/alpine.svg') center/cover;border-radius:0;color:#fff;padding:23px;min-height:195px}.detail-card .eyebrow{color:#e9ebee}.detail-card p{font-family:Impact,'Arial Narrow',sans-serif;font-weight:900;font-style:italic;font-size:29px;line-height:1.04;letter-spacing:.2px}.detail-card small{color:#d3d9df;max-width:245px}.part-card{border-radius:0;border-color:#d6d9dc}.part-card[aria-pressed=true]{border-color:#d71920;background:#faf4f4;box-shadow:inset 0 0 0 1px #d71920}.part-card strong{font-weight:800}.part-card[aria-pressed=true]>.choice-dot{background:#d71920;border-color:#ffe7e8;box-shadow:0 0 0 1px #d71920}.footer{background:#101113;color:#999fa5;border-color:#292c30}.loading{background:#e0e4e8ee}.loader-ring{border-top-color:#d71920}.reset-link,dialog{border-radius:0}dialog h2{font-family:Impact,'Arial Narrow',sans-serif;font-weight:900;font-style:italic}dialog::backdrop{background:#06090ddb}.secondary-button{border-radius:0;border-color:#b6bbc0}button:focus-visible,a:focus-visible,#viewport:focus-visible{outline-color:#e32129}
@media(max-width:760px){.header{height:65px}.brand{font-size:33px}.brand span{font-size:7px;letter-spacing:1px}.layout{height:auto}.stage-heading h1{font-size:48px}.stage-heading{top:33px}.stage-heading .eyebrow{font-size:7px;letter-spacing:1px}.stage-heading p{font-size:8px;letter-spacing:.7px}.scene-label{top:10px;right:12px;padding:4px 6px;font-size:7px}.environment-bar{padding-left:13px;padding-right:13px;gap:7px}.env-card{font-size:9px}.panel-intro h2{font-size:28px}.swatches{gap:16px}.footer{color:#a6abb0}}
/* Clearly visible independent-demo disclosure, including on small screens. */
.demo-notice{background:#fff0cb;color:#33280c;border-bottom:1px solid #dec787;padding:11px 3.5%;display:flex;align-items:baseline;justify-content:center;gap:14px;font-size:12px;line-height:1.5}.demo-notice strong{font-size:11px;letter-spacing:.8px;white-space:nowrap}.demo-notice a{color:inherit;text-decoration:underline;text-underline-offset:3px;font-weight:700;white-space:nowrap}.legal-notice{padding:24px 3.5%;background:#f0f1f2;color:#40454a;border-top:1px solid #d4d7da;scroll-margin-top:16px}.legal-notice h2{font:700 14px/1.5 Arial,Helvetica,sans-serif;margin:0 0 10px}.legal-notice p{font-size:12px;line-height:1.7;max-width:1150px;margin:8px 0}.layout{height:calc(100dvh - 170px)}
@media(max-width:760px){.demo-notice{display:block;padding:10px 20px;font-size:11px}.demo-notice strong{display:block;margin-bottom:3px}.layout{height:auto}.legal-notice{padding:22px}.legal-notice p{font-size:11px}}

/* Fullscreen reserves space only for an explicitly opened configuration panel. */
.menu-toggle{display:none;border:1px solid #4c5054;background:#151719;color:#fff;padding:11px 14px;font-weight:700;font-size:12px}
.viewer-fullscreen{overflow:hidden}.layout.is-fullscreen{width:100vw;height:100dvh!important;min-height:0;max-height:none;grid-template-columns:minmax(0,1fr);background:#151719}
.layout.fullscreen-fallback{position:fixed;inset:0;z-index:1000}
.layout.is-fullscreen .stage{height:100%;min-height:0;max-height:none}
.layout.is-fullscreen #viewport{inset:0!important}
.layout.is-fullscreen .configuration{display:none}
.layout.is-fullscreen .environment-bar,.layout.is-fullscreen .stage-heading,.layout.is-fullscreen .scene-label,.layout.is-fullscreen .view-bottom{display:none}
.layout.is-fullscreen .viewer-tools{right:20px;bottom:20px;flex-direction:row;align-items:center;z-index:6}
.layout.is-fullscreen .menu-toggle{display:block}
.layout.is-fullscreen .menu-toggle[aria-expanded=true]{background:#d71920;border-color:#d71920}
.layout.is-fullscreen .loading{inset:0}
.layout.is-fullscreen.menu-open{grid-template-columns:minmax(0,1fr) 385px}
.layout.is-fullscreen.menu-open .configuration{display:flex;overflow:auto}
.layout.is-fullscreen.menu-open .environment-bar{display:flex}
.layout.is-fullscreen.menu-open #viewport{bottom:100px!important}
.layout.is-fullscreen.menu-open .viewer-tools{bottom:120px}
@media(max-width:760px){
 .layout.is-fullscreen{display:flex;flex-direction:column}
 .layout.is-fullscreen .stage{flex:1;min-height:0}
 .layout.is-fullscreen.menu-open .configuration{flex:0 1 43dvh;min-height:0;max-height:43dvh;padding-top:16px;padding-bottom:16px}
 .layout.is-fullscreen.menu-open #viewport{bottom:72px!important}
 .layout.is-fullscreen.menu-open .viewer-tools{bottom:84px;right:12px;gap:6px}
 .layout.is-fullscreen .menu-toggle{font-size:11px;padding:9px 10px}
}

/* Externe Vorschaubilder: Pfade in config.js. */
img.part-art{object-fit:contain;display:block;}
img.env-thumb{object-fit:cover;display:block;}

.loading.environment-loading,.layout.is-fullscreen .loading.environment-loading{inset:50% auto auto 50%;transform:translate(-50%,-50%);width:max-content;max-width:calc(100% - 32px);padding:16px 20px;flex-direction:row;gap:12px;background:#151719ed;color:#fff;box-shadow:0 5px 24px #0004;pointer-events:none;text-align:center;border:1px solid #ffffff30}.environment-loading .loader-ring{width:22px;height:22px;flex-shrink:0;border-color:#ffffff40;border-top-color:#e12028}

/* Optionale Screencast-Anzeige; der Runtime-Hinweis bleibt im DOM erhalten. */
html[data-verge-trial-notice="hidden"] #viewport a[href="https://www.soft8soft.com/verge3d-trial/"]{visibility:hidden;pointer-events:none;}
