:root{--navy:#101b2d;--blue:#126bb2;--cyan:#8bd2ff;--ink:#182334;--muted:#607187;--line:#dce6f0;--paper:#f3f7fb}*{box-sizing:border-box}[hidden]{display:none!important}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:15px/1.6 Arial,Helvetica,sans-serif}a{color:inherit}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.45}:focus-visible{outline:3px solid #3182ce;outline-offset:3px}.wrap{width:min(1180px,calc(100% - 56px));margin:auto}.skip{position:absolute;top:-100px;left:16px;background:white;padding:12px;z-index:9}.skip:focus{top:12px}.header{background:white;border-bottom:1px solid var(--line)}.header-inner{min-height:88px;display:flex;gap:28px;align-items:center}.logo{width:auto;max-width:190px;height:48px;display:block;object-fit:contain}.back{font-size:13px;text-decoration:none;color:var(--muted);margin-left:auto}.header-note{font-size:10px;font-weight:700;letter-spacing:.12em;color:var(--blue);border-left:1px solid var(--line);padding-left:28px}.intro{padding:60px 0 30px;max-width:880px}.eyebrow{font-size:10px;font-weight:800;letter-spacing:.14em;color:var(--blue);display:flex;align-items:center;gap:9px}.eyebrow span{width:7px;height:7px;border-radius:50%;background:#2f94dc}h1{font-size:clamp(32px,4.3vw,52px);line-height:1.12;letter-spacing:-.045em;margin:15px 0 20px;font-weight:800}h1 span{color:var(--blue)}.intro>p:not(.eyebrow){color:var(--muted);font-size:16px;max-width:650px}.intro-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}.intro-tags span{background:#e5f0fa;border:1px solid #dce8f3;color:#3d6080;font-size:11px;border-radius:30px;padding:5px 12px}.layout{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:28px;align-items:start;padding-bottom:65px}.steps{min-width:0}.part-bar{display:flex;gap:10px;align-items:center;margin:6px 0 20px;justify-content:space-between;flex-wrap:wrap}.tabs{display:flex;gap:7px;flex-wrap:wrap}.tabs button,.small-button{border:1px solid var(--line);border-radius:9px;padding:9px 15px;background:white;font-weight:700;font-size:12px;color:var(--muted)}.tabs button[aria-selected=true]{background:var(--navy);color:white;border-color:var(--navy)}.small-button{color:var(--blue)}.card{border:1px solid var(--line);border-radius:20px;background:white;padding:27px;margin-bottom:20px;box-shadow:0 9px 30px #101b2d04}.step-head{display:flex;align-items:center;gap:12px;margin-bottom:22px}.step-head h2{font-size:18px;letter-spacing:-.02em;margin:0;line-height:1.3}.number{font-size:11px;font-weight:800;color:var(--blue);display:grid;place-items:center;flex:0 0 28px;height:28px;border-radius:8px;background:#eaf5ff}.dropzone{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;border:1.5px dashed #b0c7dc;padding:26px 15px;background:#f8fbff;border-radius:13px;cursor:pointer;transition:background .2s,border-color .2s}.dropzone:hover,.dropzone.drag-over{background:#eaf5ff;border-color:var(--blue)}.dropzone:focus-within{outline:3px solid #3182ce;outline-offset:3px}.dropzone svg{width:42px;height:42px;color:var(--blue);margin-bottom:13px}.dropzone strong{font-size:14px;overflow-wrap:anywhere;max-width:100%}.dropzone span{color:var(--muted);font-size:11px;margin-top:7px}.dropzone input{position:absolute;inset:0;opacity:0;width:100%;height:100%;cursor:pointer}.file-actions{display:flex;justify-content:space-between;gap:15px;margin:8px 0}.quiet-button{background:none;border:0;padding:4px 0;font-size:11px;color:var(--muted);text-decoration:underline;text-underline-offset:3px}.danger{color:#b43b45}.hint{font-size:11px;line-height:1.65;color:var(--muted);margin:9px 0 0}.mode{display:inline-flex;border:1px solid var(--line);border-radius:9px;padding:3px;gap:3px;margin-bottom:21px;background:var(--paper)}.mode button{border:0;background:none;padding:7px 17px;border-radius:6px;font-size:12px;font-weight:700;color:var(--muted)}.mode button[aria-pressed=true]{background:white;color:var(--blue);box-shadow:0 2px 5px #1020300d}.field{margin-bottom:20px}.field:last-child{margin-bottom:0}.field label{display:block;font-size:12px;font-weight:700;margin-bottom:7px}.field label output{float:right;color:var(--blue)}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.field input:not([type=range]),select,textarea{display:block;width:100%;border:1px solid #ccd9e5;border-radius:9px;padding:11px 12px;background:white;color:var(--ink);min-height:44px}textarea{resize:vertical;font-size:13px;line-height:1.6}.quantity input{max-width:130px}.optional{color:var(--muted);font-weight:400;font-size:10px}.standard-info{font-size:11px;background:var(--paper);border:1px solid #e8eef5;padding:12px;border-radius:9px;color:var(--muted);margin:0 0 21px}.range-labels{display:flex;justify-content:space-between;font-size:10px;color:var(--muted)}input[type=range]{width:100%;accent-color:var(--blue)}input[type=checkbox]{accent-color:var(--blue);flex-shrink:0;width:17px;height:17px;margin:4px 0 0}.check{display:flex;align-items:flex-start;gap:12px;cursor:pointer}.check small{display:block;font-size:11px;color:var(--muted);font-weight:400;margin-top:4px}.express{background:var(--paper);border:1px solid var(--line);border-radius:10px;padding:15px}.express strong{font-size:12px}.price-card{background:var(--navy);color:white;border-color:var(--navy)}.price-card .number{background:#243b54;color:var(--cyan)}.tag{font-size:8px;letter-spacing:.09em;margin-left:auto;color:var(--cyan);border:1px solid #35506b;padding:3px 6px;border-radius:5px}.price-empty{font-size:13px;line-height:1.8;color:#becde0;margin:0}.weight-line{font-size:13px;color:#c8d6e7;margin:0 0 12px}.weight-line strong{color:white}.breakdown{margin:0}.breakdown>div{display:flex;justify-content:space-between;align-items:baseline;gap:15px;padding:7px 0;font-size:13px}.breakdown dt{color:#d3deeb}.breakdown dd{margin:0;font-variant-numeric:tabular-nums;font-weight:700;white-space:nowrap}.breakdown .total{margin-top:14px;padding-top:18px;border-top:1px solid #ffffff30;font-size:22px}.total dt,.total dd{color:var(--cyan);font-weight:800}.price-note{color:#b9c7d8;font-size:10px;line-height:1.75;margin:15px 0 0}.tax-note{font-size:11px;color:#e2edf8;margin:16px 0 0}.error{color:#a22436;font-size:12px;padding:10px 12px;background:#fff1f3;border-radius:8px;margin-bottom:0}.notice{font-size:11px;padding:12px;background:#fff7e5;color:#785316;border:1px solid #f0dfb6;border-radius:9px}.summary-list{font-size:12px}.summary-item{padding:14px 0;border-bottom:1px solid var(--line)}.summary-item:first-child{padding-top:0}.summary-item:last-child{border-bottom:none}.summary-item strong{display:block;overflow-wrap:anywhere;margin-bottom:3px}.summary-item span{display:block;color:var(--muted)}.consent{font-size:11px;color:var(--muted);margin:22px 0}.consent a{color:var(--blue)}.actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.button{padding:12px 16px;display:flex;align-items:center;justify-content:space-between;gap:8px;border-radius:10px;font-weight:700;font-size:12px;border:1px solid transparent;min-height:46px}.button span{font-size:16px}.primary{background:var(--blue);color:white}.secondary{background:white;border-color:#c9d8e6;color:var(--blue)}.eml-button{border:0;background:none;font-size:11px;color:var(--blue);text-decoration:underline;text-underline-offset:3px;padding:15px 0 4px;text-align:left}.status{font-size:12px;line-height:1.7;overflow-wrap:anywhere}.status.bad{color:#a22436}.status.good{color:#186b53}#manual-copy label{font-size:11px;font-weight:bold}#request-text{margin-top:8px}.preview-column{padding-top:6px;align-self:stretch}.preview-sticky{position:sticky;top:24px}.preview-card{background:white;border:1px solid var(--line);border-radius:20px;overflow:hidden;box-shadow:0 15px 40px #101b2d08}.preview-header{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:16px 19px;border-bottom:1px solid var(--line)}.preview-header>span{font-size:9px;font-weight:700;letter-spacing:.1em;display:flex;align-items:center;gap:7px}.preview-header i{width:6px;height:6px;background:#2f94dc;border-radius:50%}.preview-header button{font-size:9px}.viewer{height:360px;position:relative;background:radial-gradient(ellipse at 50% 40%,#f6fbff 0,#ecf3fb 85%);isolation:isolate}.viewer::before{content:"";position:absolute;inset:0;background-image:linear-gradient(#1679c908 1px,transparent 1px),linear-gradient(90deg,#1679c908 1px,transparent 1px);background-size:32px 32px;pointer-events:none}canvas{width:100%;height:100%;display:block;position:relative;touch-action:none;cursor:grab}canvas:active{cursor:grabbing}.viewer-placeholder{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;pointer-events:none;color:var(--muted)}.cube-icon{font-size:100px;line-height:1;color:#86badf;font-weight:400;margin-bottom:25px}.viewer-placeholder strong{color:var(--navy);font-size:19px;letter-spacing:-.02em}.viewer-placeholder span{font-size:12px;margin-top:9px}.viewer-badge{position:absolute;left:16px;bottom:15px;background:#ffffffcc;backdrop-filter:blur(6px);font-size:10px;padding:4px 9px;border:1px solid white;border-radius:5px;max-width:85%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;pointer-events:none}.viewer-instructions{text-align:center;font-size:9px;color:var(--muted);padding:11px 7px;margin:0;border-bottom:1px solid var(--line)}.model-stats{display:grid;grid-template-columns:1.5fr 1fr;gap:18px 12px;margin:0;padding:22px}.model-stats div:last-child{grid-column:1/-1}.model-stats dt{font-size:10px;color:var(--muted);margin-bottom:4px}.model-stats dd{font-size:14px;letter-spacing:-.02em;font-weight:700;margin:0;overflow-wrap:anywhere}.how-note{padding:22px 14px;font-size:12px}.how-note strong{font-size:13px;color:var(--navy)}.how-note p{color:var(--muted);font-size:11px;line-height:1.8;margin:7px 0 0}.footer{border-top:1px solid var(--line);padding-top:25px;padding-bottom:30px;display:flex;justify-content:space-between;gap:20px;font-size:10px;color:var(--muted)}.footer nav{display:flex;gap:20px}.footer a{text-decoration:none}@media(max-width:900px){.layout{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:18px}.card{padding:21px}.field-grid{grid-template-columns:1fr;gap:0}.viewer{height:300px}.model-stats{grid-template-columns:1fr}.model-stats div:last-child{grid-column:auto}.header-note{display:none}.tag{font-size:7px}.step-head{gap:9px}.step-head h2{font-size:16px}}@media(max-width:680px){.wrap{width:calc(100% - 30px)}.header-inner{min-height:73px}.logo{height:39px;max-width:160px}.back{font-size:11px}.intro{padding:34px 0 24px}.intro>p:not(.eyebrow){font-size:14px}.layout{display:flex;flex-direction:column;gap:0}.steps,.preview-column{width:100%}.preview-column{order:-1;margin-bottom:20px}.preview-sticky{position:static}.viewer{height:245px}.how-note{display:none}.model-stats{display:grid;grid-template-columns:1.4fr 1fr;padding:16px;gap:12px}.model-stats div:last-child{grid-column:1/-1}.model-stats dd{font-size:12px}.card{padding:22px 19px;border-radius:15px}.step-head h2{font-size:17px}.field-grid{grid-template-columns:1fr 1fr;gap:12px}.field input:not([type=range]),select,textarea{font-size:16px}.footer{flex-direction:column}.actions{grid-template-columns:1fr}.part-bar .small-button{padding:9px 10px}.tabs button{padding:9px 12px}.preview-header{padding:13px 16px}.intro-tags{gap:5px}.intro-tags span{padding:4px 9px;font-size:10px}}@media(max-width:380px){.field-grid{grid-template-columns:1fr;gap:0}.step-head h2{font-size:15px}.tag{font-size:6px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

@media(max-width:680px){.steps{display:contents}.part-bar{width:100%;order:0}.steps>.card{width:100%}.steps>.card:nth-of-type(1){order:1}.preview-column{order:2}.steps>.card:nth-of-type(2){order:3}.steps>.card:nth-of-type(3){order:4}.steps>.card:nth-of-type(4){order:5}.steps>.card:nth-of-type(5){order:6}}

/* Die Druckplatte bleibt auch vor dem ersten STL-Upload sichtbar. */
.viewer-placeholder{inset:12px 12px auto;padding:8px 12px;border-radius:8px;background:#ffffffd9;text-align:center}.viewer-placeholder .cube-icon{display:none}.viewer-placeholder strong{font-size:12px}.viewer-placeholder span{font-size:10px;margin-top:2px}.plate-info{margin:0;padding:9px 10px 0;text-align:center;color:#53647a;font-size:10px;font-weight:700}

.address-form{margin:22px 0;padding:20px 0;border-top:1px solid var(--line)}.address-form h3{font-size:15px;margin:0 0 5px}.address-form>.hint{margin-bottom:18px}.address-form input{width:100%;min-height:44px;border:1px solid #ccd9e5;border-radius:9px;padding:11px 12px;background:white;color:var(--ink)}.address-form input[readonly]{background:var(--paper)}.address-summary{white-space:pre-line;font-size:12px;padding:15px;background:var(--paper);border-radius:9px;margin-top:15px}.coupon-card h2{font-size:16px;margin:0 0 8px}.coupon-controls{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:10px}.coupon-controls input{min-width:0;flex:1;min-height:46px;border:1px solid #ccd9e5;border-radius:9px;padding:11px 12px;color:var(--ink);text-transform:uppercase}.coupon-controls .button{flex-shrink:0}.coupon-card .status{margin-bottom:0}.discount-row dt,.discount-row dd{color:#98e5bd}.coupon-card{order:5}
@media(max-width:680px){.address-form input{font-size:16px}.steps>.coupon-card{order:5}.steps>.price-card{order:6}.steps>section[aria-labelledby="summary-title"]{order:7}.coupon-controls input{font-size:16px}}

.delivery-options{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:20px}.delivery-options button{border:1px solid #ccd9e5;border-radius:11px;background:var(--paper);color:var(--ink);padding:17px;text-align:left}.delivery-options button[aria-pressed=true]{border-color:var(--blue);background:#eaf5ff;box-shadow:inset 0 0 0 1px var(--blue)}.delivery-options span{display:block;font-weight:700;font-size:14px}.delivery-options small{font-size:10px;color:var(--muted)}.radius-controls{display:flex;gap:6px;align-items:center}.radius-controls button{min-height:44px;min-width:35px;border:1px solid #ccd9e5;background:var(--paper);border-radius:7px;font-size:17px}.radius-controls input{min-width:0;text-align:center;padding-inline:5px}.radius-controls input[type=number]{appearance:textfield}.radius-controls input::-webkit-inner-spin-button{appearance:none}

.distance-info{padding:12px 14px;border:1px solid #cfe2f3;background:#edf6ff;border-radius:9px;color:#145b91;font-size:12px;font-weight:700}.express:has(input:disabled){opacity:.65}.preview-header{flex-wrap:wrap}.preview-header>span{margin-right:auto}
.color-heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:12px;font-size:12px;font-weight:700}.color-heading strong{color:var(--blue);font-size:11px}.color-options{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.color-choice{position:relative;min-height:97px;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:7px;padding:12px 5px 9px;border:1px solid #dbe4ee;border-radius:11px;background:white;color:var(--ink);text-align:center}.color-choice:hover{border-color:#8bbbe0;background:#f7fbff}.color-choice[aria-pressed=true]{border-color:var(--blue);box-shadow:inset 0 0 0 1px var(--blue);background:#edf6ff}.color-choice[aria-pressed=true]::after{content:'✓';position:absolute;top:5px;right:5px;background:var(--blue);color:white;border-radius:50%;width:15px;height:15px;line-height:15px;font-size:10px;font-weight:800}.color-swatch{width:34px;height:34px;border-radius:50%;border:1px solid #101b2d20;box-shadow:inset 0 2px 4px #ffffff24,0 2px 4px #101b2d10;flex-shrink:0}.color-label{font-size:10px;font-weight:700;line-height:1.3;overflow-wrap:anywhere}.color-choice small{font-size:8px;color:var(--muted);line-height:1.3;margin-top:-3px}.color-choice:focus-visible{outline:3px solid #3182ce;outline-offset:3px}.viewer.night-preview{background:radial-gradient(ellipse at 50% 40%,#213c31 0,#0b1420 85%)}.viewer.night-preview::before{opacity:.2}.viewer.night-preview .viewer-badge{background:#142b23db;color:#c3f8cd;border-color:#407a50}.color-field{margin-top:22px}@media(max-width:380px){.color-options{grid-template-columns:repeat(3,minmax(0,1fr))}}

[hidden]{display:none!important}

.billing-card fieldset{border:0;margin:0;padding:0;min-width:0}.billing-card .address-form{margin-top:12px}.billing-card .check{margin-bottom:18px}.billing-card .address-summary{white-space:pre-line}.billing-recipient-hint{margin-top:-6px;margin-bottom:20px}.billing-card [hidden]{display:none!important}.billing-card .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.billing-card .check input[type=checkbox]{flex:0 0 18px;width:18px;height:18px;min-height:18px;padding:0;margin:3px 0 0;border-radius:3px}.billing-card .check>span{flex:1;min-width:0;line-height:1.7;font-size:13px}

.fb-address-search{padding:16px;border:1px solid var(--line);border-radius:12px;background:var(--paper);margin:4px 0 20px}.fb-address-search .button{font-size:12px;min-height:42px}.fb-address-search .hint{font-size:11px;line-height:1.7;margin:10px 0 0}.fb-address-search .hint:empty{display:none}.fb-address-widget:empty{display:none}.fb-address-widget{margin-top:14px;max-width:100%;color-scheme:light}.fb-address-widget gmp-place-autocomplete{width:100%;max-width:100%;color-scheme:light}.fb-address-search [hidden]{display:none!important}

/* Eigene Adressvorschläge: keine externen UI-Skripte oder Fonts. */
.fb-address-search{position:relative;padding:17px;border:1px solid var(--line);border-radius:12px;margin-bottom:23px;background:var(--paper);min-width:0}
.fb-address-search input[type=search]{width:100%;box-sizing:border-box;min-height:46px;font:inherit;font-size:16px;padding:11px 12px;border:1px solid var(--line);border-radius:8px;color:var(--ink);background:var(--card,#fff)}
.fb-address-search .fb-address-results{list-style:none;margin:7px 0 0;padding:5px;max-height:245px;overflow-y:auto;overscroll-behavior:contain;border:1px solid var(--line);border-radius:9px;background:var(--card,#fff);box-shadow:0 10px 24px #152a3510;color:var(--ink)}
.fb-address-results>li{padding:12px 10px;line-height:1.6;font-size:13px;border-radius:5px;cursor:pointer;overflow-wrap:anywhere}
.fb-address-results>li+li{border-top:1px solid var(--line)}.fb-address-results>li:hover,.fb-address-results>li[aria-selected=true]{background:var(--paper);outline:2px solid var(--blue);outline-offset:-2px}
.fb-address-search .fb-address-status{margin-top:9px}.fb-address-search .fb-address-info{font-size:10px;margin-top:10px}.fb-address-info a{color:var(--ink);text-decoration:underline;text-underline-offset:3px}
body.halloween .fb-address-search{background:#201725;border-color:#624653}body.halloween .fb-address-search :is(input[type=search],.fb-address-results){background:#2a1d2e;color:#f8e7d8;border-color:#6c4c60}body.halloween .fb-address-results>li:is(:hover,[aria-selected=true]){background:#422b3b;outline-color:#ffad68}
body.newyear .fb-address-search :is(input[type=search],.fb-address-results){background:#fffaf0;color:#243849}body.christmas .fb-address-search :is(input[type=search],.fb-address-results){background:#fffdf5;color:#294332}
.fb-address-search [hidden]{display:none!important}

.advent-once-panel{margin-top:18px;padding:16px;border:1px solid var(--line,#8c786f55);border-radius:12px}.advent-once-choice{display:flex;align-items:flex-start;gap:10px;margin:12px 0;font-size:13px}.advent-once-choice input{width:18px;min-width:18px;height:18px;margin-top:2px}.advent-once-panel .hint{font-size:12px;line-height:1.6}

#advent-gift-note{display:block;width:100%;min-height:44px;padding:10px 12px;border:1px solid var(--line);border-radius:9px;background:var(--paper);color:var(--ink);margin-top:8px}
