.fold-configurator-app{
  --black:#111111;--text:#2F3135;--muted:#75787D;--line:#E7E7E1;
  --yellow:#FACA30;--yellow2:#FFD743;--beige:#F7F7F4;--white:#FFFFFF;
  --radius:16px;
  min-height:100%;
  font-family:Inter,Arial,sans-serif;
  color:var(--black);
  background:#fff;
}
.fold-configurator-app,
.fold-configurator-app *{box-sizing:border-box}
.fold-configurator-app button{font:inherit;color:inherit}
.fold-configurator-app .header{
  height:56px;display:flex;align-items:center;justify-content:space-between;padding:0 22px;
  position:sticky;top:0;z-index:60;background:rgba(255,255,255,.96);
  backdrop-filter:blur(9px);border-bottom:1px solid var(--line)
}
.fold-configurator-app .logo{font-size:22px;font-weight:900;letter-spacing:-1px}
.fold-configurator-app .header-meta{font-size:11px;color:var(--muted)}
.fold-configurator-app .pill{padding:7px 10px;background:var(--beige);border-radius:999px;font-size:10px;font-weight:800}
.fold-configurator-app .layout{display:grid;grid-template-columns:minmax(0,1.42fr) minmax(410px,.58fr);min-height:100vh}
.fold-configurator-app .stage{
  position:sticky;top:54px;height:calc(100vh - 54px);background:var(--beige);
  overflow:hidden;display:flex;flex-direction:column
}
.fold-configurator-app .viewer{position:relative;flex:1;min-height:0}
.fold-configurator-app #threeCanvas{width:100%;height:100%;display:block}
.fold-configurator-app .viewer-top{
  position:absolute;left:20px;right:20px;top:18px;display:flex;justify-content:space-between;
  pointer-events:none
}
.fold-configurator-app .viewer-badge{
  padding:8px 11px;border-radius:999px;background:rgba(255,255,255,.92);
  border:1px solid var(--line);font-size:10px;font-weight:800;backdrop-filter:blur(8px)
}
.fold-configurator-app .viewer-info{
  position:absolute;left:20px;bottom:18px;max-width:570px;padding:13px 15px;
  background:rgba(255,255,255,.92);border:1px solid var(--line);border-radius:16px;
  backdrop-filter:blur(8px)
}
.fold-configurator-app .viewer-info strong{display:block;font-size:14px;margin-bottom:4px}
.fold-configurator-app .viewer-info span{font-size:10px;color:var(--muted);line-height:1.45}
.fold-configurator-app .loading{
  position:absolute;inset:0;display:flex;align-items:center;justify-content:center;
  background:rgba(247,247,244,.76);font-size:12px;font-weight:800;z-index:4
}
.fold-configurator-app .loading.hidden{display:none}
.fold-configurator-app .foldbar{
  min-height:64px;border-top:1px solid rgba(17,17,17,.08);display:flex;align-items:center;
  gap:9px;padding:11px 18px;background:rgba(247,247,244,.96)
}
.fold-configurator-app .btn{border:0;border-radius:999px;padding:12px 17px;font-weight:800;cursor:pointer}
.fold-configurator-app .btn.primary{background:var(--yellow)}
.fold-configurator-app .btn.primary:hover{background:var(--yellow2)}
.fold-configurator-app .btn.secondary{background:#fff;border:1px solid var(--line)}
.fold-configurator-app .btn:disabled{opacity:.45;cursor:not-allowed}
.fold-configurator-app .fold-progress{flex:1;height:4px;background:#dddcd6;border-radius:99px;overflow:hidden}
.fold-configurator-app .fold-progress i{display:block;height:100%;width:0;background:#111;transition:width .12s linear}
.fold-configurator-app .panel{padding:28px 28px 122px;overflow:auto}
.fold-configurator-app .eyebrow{font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.fold-configurator-app h1{font-size:35px;line-height:1.04;letter-spacing:-1.35px;margin:8px 0 8px}
.fold-configurator-app .lead{font-size:13px;line-height:1.45;color:var(--muted);margin:0 0 18px}
.fold-configurator-app .factgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin-bottom:17px}
.fold-configurator-app .fact{background:var(--beige);border:1px solid var(--line);border-radius:13px;padding:9px}
.fold-configurator-app .fact strong{display:block;font-size:13px}
.fold-configurator-app .fact span{display:block;font-size:8px;color:var(--muted);line-height:1.25;margin-top:3px}
.fold-configurator-app .section{padding:21px 0;border-top:1px solid var(--line)}
.fold-configurator-app .section:first-of-type{border-top:0}
.fold-configurator-app .sectionhead{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:12px}
.fold-configurator-app .sectionhead h2{font-size:15px;margin:0}
.fold-configurator-app .step{font-size:10px;color:var(--muted)}
.fold-configurator-app .cards{display:grid;gap:9px}
.fold-configurator-app .option{
  border:1px solid var(--line);border-radius:14px;padding:13px;display:flex;
  justify-content:space-between;align-items:center;gap:12px;background:#fff;cursor:pointer
}
.fold-configurator-app .option.active{border:2px solid var(--black);padding:12px}
.fold-configurator-app .option b{font-size:13px}
.fold-configurator-app .option small{display:block;color:var(--muted);font-size:10px;line-height:1.35;margin-top:3px}
.fold-configurator-app .price{font-weight:850;font-size:12px;white-space:nowrap}
.fold-configurator-app .from{font-size:9px;color:var(--muted);margin-right:2px}
.fold-configurator-app .swatches{display:flex;gap:12px;flex-wrap:wrap}
.fold-configurator-app .swatchitem{text-align:center;font-size:9px;color:var(--muted)}
.fold-configurator-app .swatch{
  display:block;width:44px;height:44px;border:3px solid #fff;border-radius:50%;
  box-shadow:0 0 0 1px var(--line);cursor:pointer;margin:0 auto 5px
}
.fold-configurator-app .swatch.active{box-shadow:0 0 0 2px var(--black)}
.fold-configurator-app .grid2{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.fold-configurator-app .module{
  border:1px solid var(--line);border-radius:14px;padding:12px;cursor:pointer;background:#fff;position:relative
}
.fold-configurator-app .module.active{border:2px solid var(--black);padding:11px}
.fold-configurator-app .module.disabled{opacity:.42;cursor:not-allowed}
.fold-configurator-app .module b{font-size:12px}
.fold-configurator-app .module span{display:block;font-size:9px;color:var(--muted);line-height:1.35;margin-top:4px}
.fold-configurator-app .module .fold-configurator-app .price{margin-top:8px;color:var(--black)}
.fold-configurator-app .compat{margin-top:7px!important;font-weight:800;color:#5e6165!important}
.fold-configurator-app .note{font-size:9px;color:var(--muted);line-height:1.45;margin-top:8px}
.fold-configurator-app .details{font-size:10px;text-decoration:underline;text-underline-offset:3px;cursor:pointer;margin-top:6px;display:inline-block}
.fold-configurator-app .specblock{display:grid;gap:8px}
.fold-configurator-app .spec{
  background:var(--beige);border:1px solid var(--line);border-radius:13px;padding:11px 12px;
  display:flex;justify-content:space-between;gap:10px
}
.fold-configurator-app .spec b{font-size:11px}
.fold-configurator-app .spec small{display:block;font-size:9px;line-height:1.35;color:var(--muted);margin-top:3px}
.fold-configurator-app .tech-details{border:1px solid var(--line);border-radius:14px;overflow:hidden}
.fold-configurator-app .tech-details summary{list-style:none;cursor:pointer;padding:13px;font-size:12px;font-weight:800}
.fold-configurator-app .tech-details summary::-webkit-details-marker{display:none}
.fold-configurator-app .tech-details summary:after{content:"＋";float:right;color:var(--muted)}
.fold-configurator-app .tech-details[open] summary:after{content:"−"}
.fold-configurator-app .tech-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:0 10px 10px}
.fold-configurator-app .tech-card{background:var(--beige);border-radius:12px;padding:10px}
.fold-configurator-app .tech-card b{font-size:10px}
.fold-configurator-app .tech-card dl{display:grid;grid-template-columns:1fr 1.2fr;gap:4px 7px;margin:8px 0 0}
.fold-configurator-app .tech-card dt,.fold-configurator-app .tech-card dd{font-size:8px;line-height:1.25}
.fold-configurator-app .tech-card dt{color:var(--muted)}
.fold-configurator-app .tech-card dd{text-align:right;margin:0}
.fold-configurator-app .usecases{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.fold-configurator-app .usecase{border:1px solid var(--line);border-radius:13px;padding:10px;background:#fff;cursor:pointer;text-align:left}
.fold-configurator-app .usecase.active{border:2px solid var(--black);padding:9px}
.fold-configurator-app .usecase b{display:block;font-size:11px}
.fold-configurator-app .usecase span{display:block;font-size:8px;color:var(--muted);line-height:1.3;margin-top:3px}
.fold-configurator-app .summary{
  position:fixed;right:0;bottom:0;width:min(41vw,600px);min-width:410px;z-index:50;
  background:rgba(255,255,255,.97);backdrop-filter:blur(10px);border-top:1px solid var(--line);
  padding:13px 20px;display:flex;align-items:center;justify-content:space-between;gap:15px
}
.fold-configurator-app .total small{display:block;color:var(--muted);font-size:9px}
.fold-configurator-app .total strong{font-size:21px}
.fold-configurator-app .modal{
  position:fixed;inset:0;z-index:100;background:rgba(17,17,17,.38);display:none;
  align-items:center;justify-content:center;padding:20px
}
.fold-configurator-app .modal.open{display:flex}
.fold-configurator-app .modalbox{width:min(590px,100%);background:#fff;border-radius:20px;padding:23px}
.fold-configurator-app .modalbox button{float:right;border:0;background:var(--beige);width:36px;height:36px;border-radius:50%;cursor:pointer}
.fold-configurator-app .modalbox h3{margin:0 0 9px;font-size:21px}
.fold-configurator-app .modalbox p{font-size:12px;line-height:1.55;color:var(--text)}
.fold-configurator-app .warning{font-size:9px;color:#7a5c00;background:#fff8d6;border:1px solid #f4e19a;border-radius:11px;padding:8px 9px;margin-top:8px}
@media(max-width:1080px){.fold-configurator-app .tech-grid{grid-template-columns:1fr}.fold-configurator-app .factgrid{grid-template-columns:1fr 1fr}}
@media(max-width:900px){
  .fold-configurator-app .layout{display:block}.fold-configurator-app .stage{position:relative;top:auto;height:62vh;min-height:480px}
  .fold-configurator-app .panel{padding:23px 18px 112px}.fold-configurator-app .summary{width:100%;min-width:0}.fold-configurator-app .header-meta{display:none}
}
@media(max-width:520px){
  .fold-configurator-app .stage{height:56vh;min-height:420px}.grid2,.fold-configurator-app .usecases{grid-template-columns:1fr}
  .fold-configurator-app h1{font-size:30px}.fold-configurator-app .viewer-info{left:12px;right:12px;bottom:12px}.fold-configurator-app .factgrid{grid-template-columns:1fr 1fr}
}
.fold-configurator-app{
  width:100vw;
  max-width:100vw;
  margin-left:calc(50% - 50vw);
  margin-right:calc(50% - 50vw);
}

/* -------------------------------------------------
   Sticky Summary: Preiskarte sichtbarer + abgerundet
------------------------------------------------- */
.fold-configurator__summary{
    padding:14px 18px !important;
    gap:16px !important;
}

.fold-configurator__summary > div{
    display:flex;
    flex-direction:column;
    justify-content:center;
    min-width:190px;
    padding:14px 16px;
    background:var(--fc-beige);
    border:1px solid var(--fc-line);
    border-radius:16px;
    box-shadow:0 4px 16px rgba(17,17,17,.04);
}

.fold-configurator__summary > div > span{
    display:block;
    margin-bottom:4px;
    font-size:11px;
    font-weight:700;
    line-height:1.2;
    color:var(--fc-black);
    opacity:.72 !important;
}

.fold-configurator__summary > div > strong{
    display:block;
    font-size:22px !important;
    line-height:1.05;
    font-weight:800 !important;
    color:var(--fc-black);
}

@media (max-width:560px){
    .fold-configurator__summary > div{
        min-width:150px;
        padding:12px 14px;
        border-radius:14px;
    }

    .fold-configurator__summary > div > span{
        font-size:10px;
    }

    .fold-configurator__summary > div > strong{
        font-size:19px !important;
    }
}