@import "https://fonts.googleapis.com/css2?family=Poppins:wght@400;500;600&display=swap";:root{--brand-orange:#d9542c;--brand-orange-dark:#c2451f;--text-dark:#1a1a1a;--hero-grad-top:#d7d7d7;--hero-grad-bottom:#fff;--value-green:#4a8f52;--content-max-width:420px}*{box-sizing:border-box}body{color:var(--text-dark);margin:0;font-family:Poppins,sans-serif}html,body,#root{height:100%}#root{flex-direction:column;display:flex}.page-container{max-width:var(--content-max-width);margin:0 auto}body.no-scroll-page{flex-direction:column;height:100dvh;max-height:874px;margin:0 auto;display:flex;overflow:hidden}body.no-scroll-page.shape-select-page{overflow-y:auto}.no-scroll-page .site-header{flex-shrink:0}.no-scroll-page .page-container{box-sizing:border-box;flex-direction:column;flex:auto;justify-content:space-between;width:100%;min-height:0;display:flex}.site-header{border-bottom:1px solid #eee;justify-content:space-between;align-items:center;padding:1.1rem 1.25rem;display:flex}.logo-wrap{align-items:center;gap:.5rem;display:flex}.logo-img{width:auto;height:26px;display:block}.menu-toggle{color:var(--text-dark);background:0 0;border:none;align-items:center;gap:.6rem;font-size:1.05rem;display:flex}.menu-toggle .bars{flex-direction:column;gap:4px;display:flex}.menu-toggle .bars span{background:var(--text-dark);width:26px;height:3px;display:block}.language-switch{align-items:center;gap:.5rem;display:flex}.language-flag{cursor:pointer;background:0 0;border:none;border-radius:50%;padding:0;display:flex}.language-flag svg{border-radius:50%;display:block}.hero{background:linear-gradient(to bottom, var(--hero-grad-top), var(--hero-grad-bottom) 85%);text-align:center;width:100%;padding:3.2rem 1.5rem 3rem}.hero-inner{max-width:var(--content-max-width);margin:0 auto}.hero h1{letter-spacing:.12em;margin-bottom:2.2rem;font-size:2.1rem;font-weight:500;line-height:1.25}.hero h5{text-align:center;letter-spacing:.05em;font-size:1rem;font-weight:500}.hero p{letter-spacing:.02em;margin:0;font-size:1.05rem;line-height:2.1}.no-scroll-page .hero{flex-shrink:0;padding:1.6rem 1.5rem 1.3rem}.no-scroll-page .hero h1{margin-bottom:1rem;font-size:clamp(1.5rem,5vw,2.1rem)}.no-scroll-page .hero p{font-size:.8rem;line-height:1.55}.action-buttons{flex-direction:column;gap:1.1rem;padding:1rem 1.5rem 3rem;display:flex}.no-scroll-page .action-buttons{flex-shrink:0;gap:.8rem;padding:0 1.5rem 1.3rem}.btn-brand{background:var(--brand-orange);color:#fff;cursor:pointer;border:none;border-radius:50px;padding:.85rem 1rem;font-size:1.15rem;font-weight:500;transition:background-color .15s}.btn-brand:hover,.btn-brand:focus{background:var(--brand-orange-dark);color:#fff}.btn:disabled,.btn-brand:disabled,.btn-secondary-brand:disabled{opacity:.45;cursor:not-allowed}.btn-brand:disabled:hover{background:var(--brand-orange)}.wizard{flex-direction:column;flex:auto;min-height:0;display:flex}.upload-section{padding:3rem 1.5rem 2.5rem}.no-scroll-page .upload-section{flex-direction:column;flex:auto;min-height:0;padding:1.2rem 1.5rem;display:flex}.camera-box{text-align:center;cursor:pointer;border:2px dashed #b9b9b9;border-radius:40px;flex-direction:column;justify-content:center;align-items:center;min-height:260px;padding:1.5rem 1rem;transition:background-color .15s,border-color .15s;display:flex;position:relative;overflow:hidden}.no-scroll-page .camera-box{flex:auto;width:100%;min-height:0}.camera-box:hover,.camera-box:focus-visible{border-color:var(--brand-orange);background:#fafafa}.camera-placeholder{flex-direction:column;align-items:center;display:flex}.camera-trigger{cursor:pointer;flex-direction:column;align-items:center;display:flex}.camera-icon{width:56px;height:56px;color:var(--brand-orange);margin-bottom:.9rem}.no-scroll-page .camera-icon{width:clamp(40px,8vw,56px);height:clamp(40px,8vw,56px)}.camera-label{letter-spacing:.05em;color:#4a4a4a;margin-bottom:.5rem;font-size:1.15rem;font-weight:500}.camera-sub{color:#8a8a8a;font-size:.85rem}.camera-sub a,.camera-sub .gallery-link{color:var(--brand-orange);font-weight:600;text-decoration:underline}.camera-sub .gallery-link{font:inherit;cursor:pointer;background:0 0;border:none;padding:0}.preview-img{object-fit:cover;border-radius:38px;width:100%;height:100%;position:absolute;inset:0}.retake-btn{color:#fff;z-index:2;background:#0000008c;border:none;border-radius:30px;padding:.5rem 1rem;font-size:.85rem;position:absolute;bottom:14px;right:14px}.example-photo{justify-content:center;padding:0 1.5rem;display:flex}.example-photo img{border-radius:12px;width:100%;max-width:360px;height:auto;margin:0 auto;display:block}.plate-section{padding:0 1.5rem 3rem}.no-scroll-page .plate-section{flex:auto;min-height:0;padding:.5rem 1.5rem 1rem;overflow-y:auto}.plate-form{flex-direction:column;gap:1.6rem;display:flex}.no-scroll-page .plate-form{gap:.9rem}.plate-field{flex-direction:column;gap:.5rem;display:flex}.no-scroll-page .plate-field{gap:.3rem}.plate-field label{color:#8a8a8a;font-size:1.05rem;font-weight:400}.no-scroll-page .plate-field label{font-size:.9rem}.plate-field input{color:var(--value-green);background:#fff;border:1.5px solid #cfcfcf;border-radius:8px;outline:none;width:100%;padding:.65rem .9rem;font-family:Poppins,sans-serif;font-size:.95rem;font-weight:500;transition:border-color .15s}.no-scroll-page .plate-field input{padding:.55rem .8rem}.plate-field input:focus{border-color:var(--brand-orange)}.plate-submit{width:100%;margin-top:.8rem}.no-scroll-page .plate-submit{margin-top:.3rem}.hero--shapes{padding-bottom:1.6rem}.no-scroll-page .hero--shapes{flex-direction:column;flex:none;align-items:center;padding:1.2rem 1.5rem 0;display:flex}.hero-question{letter-spacing:.02em;text-align:center;width:100%;max-width:340px;margin:0 auto;font-size:1.05rem;line-height:1.7}.shape-options{flex-direction:column;gap:1.8rem;width:100%;margin-top:1.8rem;display:flex}.no-scroll-page .shape-options{gap:.8rem;margin-top:1rem}.no-scroll-page .shape-img{height:100px}.no-scroll-page .shape-option-title{margin:0 0 .5rem}.shape-option-title{text-align:center;letter-spacing:.05em;color:var(--text-dark);margin:0 0 .9rem;font-size:1rem}.shape-option-row{justify-content:center;align-items:center;gap:1.8rem;display:flex}.shape-radio{appearance:none;border:2.5px solid var(--text-dark);cursor:pointer;background:#fff;border-radius:50%;outline:none;width:24px;min-width:24px;height:24px;margin:0;position:relative}.shape-radio:checked{border-color:var(--brand-orange)}.shape-radio:checked:after{content:"";background:var(--brand-orange);border-radius:50%;position:absolute;inset:5px}.shape-visual{cursor:pointer;border:2px solid #0000;border-radius:6px;margin:0;padding:4px;transition:border-color .15s;display:block}.shape-img{width:auto;height:150px;display:block}.shape-radio:checked+.shape-visual{border-color:var(--brand-orange)}.page-container--footer{width:100%}.diagram-icons{max-width:var(--content-max-width);box-sizing:border-box;justify-content:flex-end;gap:.8rem;width:100%;margin:.5rem auto 0;display:flex}.icon-btn{background:var(--text-dark);color:#fff;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;display:flex}.icon-btn svg{width:20px;height:20px}.hero--measure{padding-bottom:1.5rem}.no-scroll-page .hero--measure{flex-shrink:0;padding:1.4rem 1.5rem 1.2rem}.diagram-box{max-width:var(--content-max-width);box-sizing:border-box;border-radius:12px;flex-shrink:0;width:100%;margin:1.6rem auto 0;position:relative;overflow:hidden}.no-scroll-page .diagram-box{margin-top:1.1rem}.diagram-img{width:auto;max-width:100%;height:auto;max-height:220px;margin:0 auto;display:block}.measure-fields{padding:1.5rem}.no-scroll-page .measure-fields{flex:auto;min-height:0;padding:1rem 1.5rem;overflow-y:auto}.measure-form{flex-direction:column;gap:1rem;display:flex}.no-scroll-page .measure-form{gap:.7rem}.measure-field{align-items:center;gap:.9rem;display:flex}.measure-badge{color:#fff;background:#8a8a8a;border-radius:50%;justify-content:center;align-items:center;width:44px;min-width:44px;height:44px;font-size:1.05rem;font-weight:600;display:flex}.no-scroll-page .measure-badge{width:38px;min-width:38px;height:38px;font-size:.95rem}.measure-field input{min-width:0;color:var(--value-green);background:#fff;border:1.5px solid #cfcfcf;border-radius:8px;outline:none;flex:1;padding:.65rem .9rem;font-family:Poppins,sans-serif;font-size:.95rem;font-weight:500;transition:border-color .15s}.no-scroll-page .measure-field input{padding:.5rem .8rem}.measure-field input:focus{border-color:var(--brand-orange)}.auth-section{justify-content:center;padding:0 1.5rem 3rem;display:flex}.btn-secondary-brand{border:1.5px solid var(--brand-orange);color:var(--brand-orange);cursor:pointer;background:0 0;border-radius:50px;padding:.85rem 1rem;font-size:1.15rem;font-weight:500;transition:background-color .15s}.btn-secondary-brand:hover,.btn-secondary-brand:focus{background:#d9542c14}.summary-photo{margin-bottom:1.2rem}.summary-photo img{border-radius:12px;width:100%;max-width:100%;height:auto;display:block}.summary-measure-group{margin-bottom:1.5rem}.summary-measure-group-diagram{width:100%;max-width:280px;margin:0 auto .8rem;display:block}.summary-measure-group .measure-field{margin-bottom:.6rem}.summary-measure-group .measure-field span.summary-value{color:var(--value-black);flex:1;font-size:.95rem;font-weight:500}.hero--success{flex:auto;justify-content:center;align-items:center;display:flex}.measure-badge.required:after{content:"*";color:var(--brand-orange);font-size:14px;font-weight:700;position:absolute;top:-2px;right:-2px}.measure-badge{position:relative}.plate-form+.action-buttons{margin-top:1.2rem}.hero--success .hero-inner{flex-direction:column;align-items:center;display:flex}.matching-result{text-align:center;flex-direction:column;align-items:center;padding:2rem 1rem;display:flex}.matching-spinner{border:3px solid #e0e0e0;border-top-color:var(--brand-orange);border-radius:50%;width:48px;height:48px;margin-bottom:1.2rem;animation:.8s linear infinite matching-spin}@keyframes matching-spin{to{transform:rotate(360deg)}}.matching-icon{margin-bottom:1.2rem}.matching-icon--success{color:var(--value-green)}.matching-icon--warning{color:#c0392b}.matching-icon--error{color:#8a8a8a}.matching-status-text{color:var(--text-dark);margin:0;font-size:1.05rem;font-weight:500}.matching-status-text--success{color:var(--value-green)}.matching-status-text--warning{color:#c0392b}.matching-status-subtext{color:#8a8a8a;margin:.4rem 0 0;font-size:.85rem}.matching-details{background:#fafafa;border-radius:12px;width:100%;max-width:320px;margin-top:1.5rem;padding:1rem 1.2rem}.matching-detail-row{justify-content:space-between;padding:.4rem 0;font-size:.9rem;display:flex}.matching-detail-row span{color:#8a8a8a}.matching-detail-row strong{color:var(--text-dark)}.location-intro-text{text-align:center;color:#666;margin-bottom:1.5rem;font-size:14px}.location-status-text{text-align:center}.consent-checkbox-row{align-items:flex-start;gap:.6rem;margin-top:1.2rem;margin-bottom:1.2rem;display:flex}.consent-checkbox-row input[type=checkbox]{flex-shrink:0;margin-top:3px}.consent-checkbox-label{color:#4a4a4a;margin:0;font-size:.85rem}.consent-checkbox-label a{color:var(--brand-orange);text-decoration:underline}.field-error--centered{color:red;text-align:center;margin-top:.5rem}.match-result-card{text-align:center;background:#fafafa;border-radius:16px;width:100%;max-width:320px;margin:1.5rem auto 0;padding:1.5rem}.match-result-bezeichnung{color:var(--text-dark);margin:0 0 .8rem;font-size:1rem;font-weight:600;line-height:1.4}.match-result-hersteller-badge{background:var(--brand-orange);color:#fff;border-radius:50px;padding:.3rem .9rem;font-size:.8rem;font-weight:500;display:inline-block}.summary-card{background:#fafafa;border-radius:16px;margin-bottom:1.25rem;padding:1.25rem 1.5rem}.summary-card-title{text-transform:uppercase;letter-spacing:.06em;color:#8a8a8a;margin:0 0 .9rem;font-size:.75rem;font-weight:600}.summary-kv-list{flex-direction:column;gap:.55rem;margin:0;padding:0;list-style:none;display:flex}.summary-kv-row{justify-content:space-between;align-items:baseline;gap:1rem;font-size:.9rem;display:flex}.summary-kv-row span:first-child{color:#8a8a8a;flex-shrink:0}.summary-kv-row span:last-child{color:var(--text-dark);text-align:right;font-weight:500}.summary-plain-text{color:var(--text-dark);margin:0;font-size:.9rem}.summary-photo-card{background:#fafafa;border-radius:16px;margin-bottom:1.25rem;padding:.6rem}.summary-photo-card img{border-radius:12px;width:100%;display:block}.summary-photo-caption{color:#8a8a8a;text-align:center;margin:.5rem 0 0;font-size:.75rem}.summary-measure-group{background:#fff;border:1px solid #eee;border-radius:14px;margin-bottom:1rem;padding:1rem}.summary-measure-group:last-child{margin-bottom:0}.location-consent-icon{color:var(--brand-orange);margin:0 auto 1.5rem;display:block}.measure-legend{text-align:center;color:#8a8a8a;margin:.6rem 0 1.2rem;font-size:.75rem}.measure-legend .required-star{color:var(--brand-orange);font-weight:700}.zoom-modal-img{max-width:100%;height:auto}.kassettentiefe-icon{color:var(--brand-orange);margin:0 auto 1rem;display:block}.kassettentiefe-intro-text{text-align:center;color:#666;margin-bottom:2rem;font-size:14px}.camera-box--uploading{pointer-events:none;opacity:.6}.retake-btn--rotate{left:14px;right:auto}.scan-message{text-align:center;color:#8a8a8a;margin-top:.8rem}.auth-card{width:100%;max-width:var(--content-max-width);background:#fff;border:1px solid #eee;border-radius:32px;padding:1.75rem 1.5rem 2rem;box-shadow:0 18px 40px -24px #00000040}.auth-switch{background:#f2f2f2;border-radius:50px;margin-bottom:1.75rem;padding:4px;display:flex;position:relative}.auth-switch-btn{z-index:2;color:#8a8a8a;background:0 0;border:none;border-radius:50px;flex:1;padding:.6rem .5rem;font-size:.95rem;font-weight:500;transition:color .2s;position:relative}.auth-switch-btn.active{color:#fff}.auth-switch-indicator{background:var(--brand-orange);z-index:1;border-radius:50px;width:calc(50% - 4px);height:calc(100% - 8px);transition:transform .25s;position:absolute;top:4px;left:4px}.auth-switch-indicator.to-register{transform:translate(100%)}.auth-form{flex-direction:column;gap:1.15rem;display:flex}.form-field{flex-direction:column;gap:.4rem;display:flex}.form-field label{color:#4a4a4a;letter-spacing:.02em;font-size:.85rem;font-weight:500}.form-field input{color:var(--text-dark);border:1.5px solid #dcdcdc;border-radius:50px;outline:none;width:100%;padding:.75rem 1.15rem;font-family:Poppins,sans-serif;font-size:.95rem;transition:border-color .15s}.form-field input:focus{border-color:var(--brand-orange)}.form-field input::placeholder{color:#b3b3b3}.password-wrap{position:relative}.password-wrap input{padding-right:3rem}.toggle-password{color:#9a9a9a;background:0 0;border:none;padding:.4rem;display:flex;position:absolute;top:50%;right:6px;transform:translateY(-50%)}.toggle-password:hover{color:var(--brand-orange)}.eye-icon{width:20px;height:20px}.form-meta{justify-content:flex-end;margin-top:-.5rem;display:flex}.form-meta a,.auth-footnote a{color:var(--brand-orange);font-size:.85rem;font-weight:600;text-decoration:underline}.auth-footnote{text-align:center;color:#4a4a4a;margin:1.5rem 0 0;font-size:.9rem}.photo-grid{grid-template-columns:repeat(3,1fr);gap:.6rem;display:grid}.photo-grid-item{aspect-ratio:1;border-radius:16px;position:relative;overflow:hidden}.photo-grid-item img{object-fit:cover;width:100%;height:100%;display:block}.photo-grid-remove{color:#fff;background:#0009;border:none;border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;padding:0;font-size:14px;line-height:1;display:flex;position:absolute;top:4px;right:4px}.photo-grid-add{aspect-ratio:1;cursor:pointer;color:var(--brand-orange);background:0 0;border:2px dashed #b9b9b9;border-radius:16px;justify-content:center;align-items:center;display:flex}.photo-grid-add svg{width:28px;height:28px}.photo-swipe-gallery{scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;gap:.6rem;padding-bottom:.4rem;display:flex;overflow-x:auto}.photo-swipe-gallery::-webkit-scrollbar{height:4px}.photo-swipe-gallery::-webkit-scrollbar-thumb{background:#d5d5d5;border-radius:2px}.photo-swipe-item{scroll-snap-align:center;border-radius:16px;flex:none;width:78%;height:220px;overflow:hidden}.photo-swipe-item img{object-fit:cover;width:100%;height:100%;display:block}@media (width>=768px) and (width<=1279px){:root{--content-max-width:640px}.photo-swipe-item{height:340px}}@media (width>=1280px){:root{--content-max-width:460px}body.no-scroll-page{background:#fafafa;height:auto;max-height:none;display:block;position:relative;overflow:visible}body.no-scroll-page:before,body.no-scroll-page:after{content:"";pointer-events:none;z-index:0;border-radius:50%;position:fixed}body.no-scroll-page:before{background:radial-gradient(circle,#d9542c0f 0%,#d9542c00 70%);width:560px;height:560px;top:-220px;right:-220px}body.no-scroll-page:after{background:radial-gradient(circle,#00000008 0%,#0000 70%);width:420px;height:420px;bottom:-180px;left:-180px}.wizard{z-index:1;flex-direction:column;min-height:100vh;display:flex;position:relative}.wizard>.site-header{background:#fff;flex-shrink:0}.wizard>[class*=hero]{background:0 0;flex-shrink:0;margin-top:auto;padding:64px 40px 0}.wizard>[class*=hero]:before{content:"";background:var(--brand-orange);border-radius:3px;width:44px;height:6px;margin:0 auto 28px;display:block}.wizard>.hero--success{flex-grow:0;margin-top:auto;margin-bottom:auto;padding:0}.wizard>.hero--success:before{display:none}.wizard>.page-container,.wizard>.auth-section{width:100%;max-width:var(--content-max-width);box-sizing:border-box;background:#fff;border:1px solid #eee;border-radius:20px;flex:none;margin:32px auto auto;padding:40px;box-shadow:0 2px 10px #0000000a}.wizard>.auth-section{display:block}.wizard>.auth-section .auth-card{max-width:none;box-shadow:none;background:0 0;border:none;border-radius:0;padding:0}.wizard>.page-container.example-photo{box-shadow:none;margin-bottom:0;padding:24px}}
