/* 3DToolBox – Generator „Werkbank“: große Vorschau-Bühne oben, Parameter als Reiter darunter, feste Leiste mit Download und Schätzung. */
.gk{display:block;margin:0 0 28px}
.gk-stage{position:relative;height:clamp(300px,54vh,580px);border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;background:linear-gradient(var(--stage-grid) 1px,transparent 1px) 0 0/36px 36px,linear-gradient(90deg,var(--stage-grid) 1px,transparent 1px) 0 0/36px 36px,var(--stage);color:var(--stage-ink)}
.gk-cv{position:absolute;inset:0;width:100%;height:100%;display:block;touch-action:none;cursor:grab}
.gk-cv:active{cursor:grabbing}
.gk-hud{position:absolute;left:14px;top:14px;display:flex;flex-direction:column;gap:8px;align-items:flex-start;pointer-events:none}
.gk-chip{font-family:var(--f-mono);font-size:12px;letter-spacing:.04em;text-transform:uppercase;padding:6px 10px;border:1px solid rgba(234,243,237,.22);border-radius:6px;background:rgba(10,20,16,.55);color:#c8dccf}
.gk-chip b{color:#fff;font-weight:600}
.gk-fit{display:inline-flex;align-items:center;gap:8px;font-family:var(--f-mono);font-size:12px;padding:6px 10px;border-radius:6px;border:1px solid rgba(234,243,237,.22);background:rgba(10,20,16,.55);color:#c8dccf}
.gk-fit i{width:8px;height:8px;border-radius:50%;background:#a9c9b8}
.gk-fit.ok i{background:#5fd9a0}
.gk-fit.bad i{background:#f0a46a}
.gk-fit.bad{border-color:#f0a46a;color:#fff}
.gk-tip{position:absolute;right:16px;bottom:14px;font-family:var(--f-mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:#a9c9b8;opacity:.9;pointer-events:none}
.gk-stat{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);padding:10px 16px;border-radius:var(--r-sm);background:rgba(10,20,16,.8);border:1px solid rgba(234,243,237,.22);font-size:14px;color:#fff;opacity:0;transition:opacity .2s;pointer-events:none;text-align:center}
.gk-stat.on{opacity:1}.gk-stat.bad{border-color:#f0a46a}
.gk-tabs{display:flex;gap:6px;margin:16px 0 0;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:thin;padding-bottom:2px}
.gk-tab{flex:0 0 auto;display:inline-flex;align-items:center;gap:9px;padding:10px 16px;border:1px solid var(--sel-line);border-radius:var(--r-sm);background:var(--sel);color:var(--ink);font:600 14px/1 var(--f-text);cursor:pointer}
.gk-tab .gk-tn{font-family:var(--f-mono);font-size:11px;color:var(--accent-2);opacity:.95}
.gk-tab.on .gk-tn{color:inherit}
.gk-tab:hover{border-color:var(--accent)}
.gk-tab.on{color:var(--on-accent);background:var(--accent);border-color:var(--accent)}
.gk-body{margin-top:12px}
.gk-pane{display:none;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:12px 18px;padding:18px;border:1px solid var(--line-soft);border-radius:var(--r-md);background:var(--panel)}
.gk-pane.on{display:grid}
.gk-f{display:flex;flex-direction:column;gap:6px;font-size:13px;color:var(--ink-dim);min-width:0}
.gk-f>span{display:flex;gap:6px;align-items:baseline}
.gk-f i{font-style:normal;font-family:var(--f-mono);font-size:11px;opacity:.7}
.gk-f em{font-style:normal;display:inline-grid;place-items:center;width:15px;height:15px;border-radius:50%;border:1px solid var(--line);font-size:10px;cursor:help}
.gk-f-wide{grid-column:1/-1}
.gk-f select,.gk-f input[type=number]{background:var(--sel);color:var(--ink);border:1px solid var(--line);border-radius:var(--r-sm);padding:9px 10px;font:500 14px var(--f-text);width:100%;min-width:0;box-sizing:border-box}
.gk-f-bool{flex-direction:row;align-items:center;gap:10px;color:var(--ink);padding-top:6px}
.gk-f-bool input{width:18px;height:18px;accent-color:var(--accent);flex:0 0 auto}
.gk-num{display:grid;grid-template-columns:1fr 92px;gap:10px;align-items:center}
.gk-num input[type=range]{width:100%;accent-color:var(--accent);min-width:0}
.gk-sticky{position:sticky;bottom:10px;z-index:20;margin-top:16px}
.gk-dock-top{display:flex;flex-wrap:wrap;gap:12px 20px;align-items:center;justify-content:space-between;padding:12px 16px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--panel);box-shadow:0 10px 30px rgba(19,34,27,.16)}
.gk-est{display:flex;flex-wrap:wrap;gap:6px 22px;align-items:center}
.gk-m{display:flex;flex-direction:column;line-height:1.15}
.gk-m b{font:700 18px var(--f-display);color:var(--ink)}
.gk-m span{font-family:var(--f-mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-dim)}
.gk-m-s b{font-size:15px;color:var(--ink-dim)}
.gk-note{flex-basis:100%;margin:0;font-size:11px;color:var(--ink-dim);opacity:.8}
.gk-dl{display:flex;gap:10px}
.gk-btn{padding:10px 16px;border-radius:var(--r-sm);border:1px solid var(--sel-line);background:var(--sel);color:var(--ink);font:600 14px/1 var(--f-text);cursor:pointer;min-height:44px}
.gk-btn:hover:not(:disabled){border-color:var(--accent)}
.gk-btn:disabled{opacity:.4;cursor:not-allowed}
.gk-btn-main{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}
.gk-btn-main:hover:not(:disabled){filter:brightness(1.08);border-color:var(--accent)}
.gk-dock{display:flex;flex-direction:column;gap:12px;margin-top:14px}
.gk-env{display:flex;flex-wrap:wrap;gap:12px 18px}
.gk-e{display:flex;flex-direction:column;gap:5px;font-size:12px;color:var(--ink-dim);min-width:0}
.gk-e select,.gk-e input{background:var(--bg-deep);color:var(--ink);border:1px solid var(--line);border-radius:var(--r-sm);padding:8px 10px;font:500 13px var(--f-text);box-sizing:border-box;max-width:100%}
.gk-e input[type=number]{width:96px}
.gk-acts{display:flex;flex-wrap:wrap;gap:8px}
.gk-acts .gk-btn{font-weight:500;font-size:13px;padding:9px 14px;background:transparent}
@media(max-width:700px){
  .gk-stage{height:clamp(260px,44vh,420px)}
  .gk-pane{padding:14px;grid-template-columns:1fr}
  .gk-dock-top{padding:10px 12px}.gk-m b{font-size:16px}.gk-m-s{display:none}.gk-note{display:none}
  .gk-dl{width:100%}.gk-dl .gk-btn{flex:1}
  .gk-tip{display:none}
}
/* Übersichtsseite */
.gk-hubq{width:100%;box-sizing:border-box;padding:13px 16px;border-radius:var(--r-sm);border:1px solid var(--sel-line);background:var(--sel);color:var(--ink);font:500 15px var(--f-text);margin:0 0 12px}
.gk-jump{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 6px}
.gk-jump a{padding:8px 14px;border-radius:var(--r-sm);border:1px solid var(--sel-line);background:var(--sel);color:var(--ink);text-decoration:none;font-weight:600;font-size:14px}
.gk-jump a:hover{border-color:var(--accent);background:var(--accent);color:var(--on-accent)}
.mp .gk-jump a{color:var(--ink)}.mp .gk-jump a:hover{color:var(--on-accent)}
.gk-cat{font-family:var(--f-mono)!important;font-size:12.5px!important;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--accent-2);margin:30px 0 8px!important;scroll-margin-top:84px}
.gk-rows{list-style:none;margin:0;padding:0;border-top:1px solid var(--line-soft)}
.gk-rows li{border-bottom:1px solid var(--line-soft)}
.gk-rows a{display:grid;grid-template-columns:minmax(150px,240px) 1fr auto;gap:6px 18px;align-items:baseline;padding:14px 4px;color:var(--ink)!important;text-decoration:none}
.gk-rows a b{font:700 16px var(--f-display)}
.gk-rows a span{color:var(--ink-dim);font-size:14px}
.gk-rows a i{font-style:normal;font-family:var(--f-mono);font-size:12px;color:var(--accent-2);opacity:0;transition:opacity .15s}
.gk-rows a:hover{background:var(--sel)}.gk-rows a:hover i,.gk-rows a:focus-visible i{opacity:1}
@media(max-width:700px){.gk-rows a{grid-template-columns:1fr}.gk-rows a i{opacity:1}}
/* schlanker Kopf auf Generator-Seiten, damit die Vorschau sofort sichtbar ist */
.bt-subhero.gk-hero{padding:16px 24px;display:flex;flex-wrap:wrap;align-items:center;gap:8px 22px;clip-path:none;margin-bottom:14px}
.gk-hero h1.fm-title{font-size:clamp(24px,3.2vw,36px)!important;margin:0!important}
.gk-hero .fm-sub{margin:0!important;flex:1 1 340px;font-size:14px!important;max-width:none}
.gk-hero .bt-pill{margin:0}
.gk-hero .bt-kpis{display:none}

.gk-acts .gk-btn-order{background:var(--accent);border-color:var(--accent);color:var(--on-accent);font-weight:600}
.gk-acts .gk-btn-order:hover:not(:disabled){filter:brightness(1.08)}

.gk-rows.gk-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px;border-top:0}
.gk-rows.gk-cards li{border:1px solid var(--line-soft);border-radius:var(--r-md,14px);overflow:hidden;background:var(--panel,transparent)}
.gk-rows.gk-cards a{display:flex;flex-direction:column;align-items:stretch;gap:4px;padding:0 0 14px}
.gk-rows.gk-cards a b,.gk-rows.gk-cards a>span:not(.gk-th){padding:0 14px}
.gk-rows.gk-cards a b{margin-top:10px}
.gk-rows.gk-cards a>span:not(.gk-th){font-size:13px;line-height:1.4}
.gk-rows.gk-cards a i{display:none}
.gk-th{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;background:#0f3d2b}
.gk-th0{display:grid;place-items:center;color:#7fb39a;font:700 34px var(--f-display)}
.gk-rows.gk-cards a:hover{background:var(--sel)}
@media(max-width:700px){.gk-rows.gk-cards{grid-template-columns:repeat(2,1fr);gap:12px}.gk-rows.gk-cards a b{font-size:14px}.gk-rows.gk-cards a>span:not(.gk-th){display:none}}
.gk-ext{margin:28px 0 8px;padding:14px 18px;border:1px solid var(--bd,rgba(0,0,0,.12));border-radius:14px;background:var(--bg2,rgba(16,90,60,.06))}
.gk-ext b{display:block;margin-bottom:4px}
.gk-ext p{margin:0;font-size:.95rem;line-height:1.5}
