/* ============================================================================
   Configurators v2 — shell.

   Layout per the konfigurator handover: tools rail · dark canvas with 46/44px
   bars · spec rail. Tokens come from poz/poz-tokens.css; nothing here invents
   a colour the design language doesn't have, except the two check states the
   handover fixes explicitly: pass #1f8a5b, warn #cc5500 — never red.
   ========================================================================== */

.poz-plan { background: var(--poz-page); }
.poz-plan__frame {
  position: relative;
  display: grid; grid-template-columns: 268px minmax(0, 1fr) 340px;
  max-width: 2040px; margin: 0 auto;
  border-top: 1px solid var(--poz-line);
  border-bottom: 1px solid var(--poz-line);
  min-height: 720px;
}
@media (max-width: 1560px) {
  .poz-plan__frame { grid-template-columns: 236px minmax(0, 1fr) 308px; }
}
@media (max-width: 1240px) {
  .poz-plan__frame { grid-template-columns: 1fr; }
  .poz-plan__canvas { min-height: 640px; order: -1; }
}
@media (max-width: 900px) {
  .poz-plan__canvas { min-height: 520px; }
}

/* ————— tools rail ————— */
.poz-plan__tools {
  display: flex; flex-direction: column;
  background: var(--poz-panel, #F2F4F6);
  border-right: 1px solid var(--poz-line);
  min-height: 0;
}
.poz-plan__tools-head {
  display: flex; align-items: center; justify-content: space-between;
  padding: 16px 18px; border-bottom: 1px solid var(--poz-line);
}
.poz-plan__tools-title {
  font: var(--poz-eyebrow); font-size: var(--poz-eyebrow-size, 10px);
  letter-spacing: 0.16em; text-transform: uppercase; color: var(--poz-text-2);
}
.poz-plan__tools-actions { display: flex; gap: 8px; }
.poz-plan__mini {
  border: 1px solid var(--poz-line-dark-soft, var(--poz-line));
  background: none; cursor: pointer; padding: 6px 10px;
  font: var(--poz-label); font-size: 10.5px;
  letter-spacing: 0.1em; text-transform: uppercase; color: var(--poz-text-2);
  transition: color 0.3s, border-color 0.3s;
}
.poz-plan__mini:hover { color: var(--poz-text); border-color: var(--poz-text-3); }

.poz-plan__toollist { border-bottom: 1px solid var(--poz-line); }
.poz-plan__tool {
  display: grid; grid-template-columns: 26px 1fr auto; gap: 10px; align-items: center;
  width: 100%; padding: 15px 18px; border: 0; border-bottom: 1px solid var(--poz-line);
  background: none; text-align: left; cursor: pointer;
  font: 400 13px/1.4 var(--poz-font-display); letter-spacing: 0.03em;
  color: var(--poz-text-2); position: relative;
  transition: color 0.3s, background-color 0.3s;
}
.poz-plan__tool:last-child { border-bottom: 0; }
.poz-plan__tool:hover { color: var(--poz-text); }
.poz-plan__tool.is-on { background: #fff; color: var(--poz-text); }
.poz-plan__tool.is-on::before {
  content: ""; position: absolute; left: 0; top: 0; bottom: 0; width: 2px;
  background: var(--acc, var(--poz-text));
}
.poz-plan__tool-num { font: var(--poz-label); font-size: var(--poz-label-size, 9px); letter-spacing: 0.1em; color: var(--acc-ink, var(--poz-text-3)); }
.poz-plan__tool-count { font: var(--poz-label); font-size: var(--poz-label-size, 9px); color: var(--poz-text-3); }

.poz-plan__panels { flex: 1 1 auto; overflow-y: auto; min-height: 0; }
.poz-plan__panel { display: none; padding: 18px; }
.poz-plan__panel.is-on { display: block; }
.poz-plan__tools-foot { padding: 14px 18px; border-top: 1px solid var(--poz-line); }

/* panel primitives — chips, steppers, rows, hints */
.poz-plan__lbl {
  display: block; margin: 20px 0 9px;
  font: var(--poz-eyebrow); font-size: 11px;
  letter-spacing: 0.13em; text-transform: uppercase; color: var(--poz-text-2);
}
.poz-plan__lbl:first-child { margin-top: 0; }
.poz-plan__chips { display: flex; flex-wrap: wrap; gap: 6px; }
.poz-plan__chip {
  border: 1px solid var(--poz-line-dark-soft, var(--poz-line)); background: #fff;
  cursor: pointer; padding: 10px 14px; min-height: 40px;
  font: 400 12.5px/1.3 var(--poz-font-body);
  color: var(--poz-text-2); transition: color 0.25s, border-color 0.25s, background-color 0.25s;
}
/* iconed chip: footprint drawing above the label */
.poz-plan__chip.has-ico { display: inline-flex; flex-direction: column; align-items: center; gap: 7px; padding: 10px 12px 9px; min-width: 74px; }
.poz-plan__chip.has-ico svg { display: block; width: 40px; height: 24px; }
.poz-plan__chip.has-ico svg rect { fill: currentColor; opacity: 0.55; }
.poz-plan__chip.is-on.has-ico svg rect { opacity: 0.95; }
.poz-plan__chip:hover { border-color: var(--poz-text-3); color: var(--poz-text); }
.poz-plan__chip.is-on { background: var(--poz-ink, #16171B); border-color: var(--poz-ink, #16171B); color: #fff; }
.poz-plan__step { display: flex; align-items: center; gap: 0; border: 1px solid var(--poz-line-dark-soft, var(--poz-line)); background: #fff; width: max-content; }
.poz-plan__step button {
  width: 34px; height: 34px; border: 0; background: none; cursor: pointer;
  font: 400 14px/1 var(--poz-font-mono); color: var(--poz-text-2);
}
.poz-plan__step button:hover { color: var(--poz-text); }
.poz-plan__step output {
  min-width: 48px; text-align: center;
  font: 400 14px/1 var(--poz-font-mono); color: var(--poz-text);
}
.poz-plan__hint { margin: 10px 0 0; font: 400 12.5px/1.6 var(--poz-font-body); color: var(--poz-text-3); max-width: 30ch; }
.poz-plan__row { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin: 0 0 10px; }
.poz-plan__toggle {
  display: inline-flex; align-items: center; gap: 9px; cursor: pointer;
  font: 400 13px/1.4 var(--poz-font-body); color: var(--poz-text-2);
}
.poz-plan__toggle input { accent-color: var(--acc-ink, #16171B); width: 16px; height: 16px; }
.poz-plan__range { width: 100%; accent-color: var(--acc-ink, #16171B); }
.poz-plan__val { font: 400 13px/1 var(--poz-font-mono); color: var(--poz-text); }

/* ————— canvas ————— */
.poz-plan__canvas {
  position: relative; display: flex; flex-direction: column; min-height: 0;
  background: #0C0D10; color: #B7BCC4;
}
.poz-plan__bar {
  display: flex; align-items: center; justify-content: space-between; gap: 16px;
  padding: 0 18px; flex: 0 0 auto; min-width: 0;
}
.poz-plan__bar--top { height: 46px; border-bottom: 1px solid #1E2127; }
.poz-plan__bar--bottom { height: 44px; border-top: 1px solid #1E2127; }
.poz-plan__file {
  font: var(--poz-label); font-size: 11px; letter-spacing: 0.1em;
  text-transform: uppercase; color: #8A9099;
  white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
.poz-plan__views { display: flex; gap: 4px; }
.poz-plan__view {
  border: 1px solid transparent; background: none; cursor: pointer; padding: 8px 15px;
  font: var(--poz-label); font-size: 11.5px; letter-spacing: 0.1em; text-transform: uppercase;
  color: #8A9099; transition: color 0.25s, border-color 0.25s, background-color 0.25s;
}
.poz-plan__view:hover { color: #E6E9EE; }
.poz-plan__view.is-on { background: #E6E9EE; color: #0C0D10; }
.poz-plan__scene {
  position: relative; flex: 1 1 auto; min-height: 0; overflow: hidden;
  background: radial-gradient(120% 90% at 50% 12%, #1A1D22 0%, #0C0D10 100%);
  touch-action: none;
}
.poz-plan__gl, .poz-plan__svg { position: absolute; inset: 0; width: 100%; height: 100%; display: block; }
.poz-plan__svg { pointer-events: auto; }
.poz-plan__scene.is-3d .poz-plan__svg { pointer-events: none; }
.poz-plan__media { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; }
.poz-plan__media[hidden] { display: none !important; }
.poz-plan__scene-hint {
  position: absolute; left: 50%; bottom: 22px; transform: translateX(-50%);
  padding: 10px 18px; pointer-events: none; white-space: nowrap;
  border: 1px solid #2A2E35; background: rgba(12, 13, 16, 0.78);
  font: 400 12.5px/1.4 var(--poz-font-body); color: #B7BCC4;
  opacity: 0; transition: opacity 0.4s;
}
.poz-plan__scene-hint.is-on { opacity: 1; }
.poz-plan__media video, .poz-plan__media img {
  max-width: 100%; max-height: 100%; object-fit: contain;
}
.poz-plan__legend { display: flex; align-items: center; gap: 14px; font: var(--poz-label); font-size: 10.5px; letter-spacing: 0.1em; text-transform: uppercase; color: #7C828C; white-space: nowrap; overflow: hidden; }
.poz-plan__legend .sw { display: inline-block; width: 10px; height: 10px; margin-right: 5px; vertical-align: -1px; }
.poz-plan__cursor { font: 400 11px/1 var(--poz-font-mono); color: #7C828C; white-space: nowrap; }
.poz-plan__zoom { display: flex; align-items: center; gap: 8px; font: 400 11px/1 var(--poz-font-mono); color: #B7BCC4; }
.poz-plan__zbtn {
  width: 26px; height: 26px; border: 1px solid #2A2E35; background: none; cursor: pointer;
  color: #B7BCC4; font: 400 13px/1 var(--poz-font-mono);
  transition: color 0.25s, border-color 0.25s;
}
.poz-plan__zbtn:hover { color: #fff; border-color: #4A505A; }

/* ————— spec rail ————— */
.poz-plan__spec {
  display: flex; flex-direction: column; min-height: 0;
  background: var(--poz-panel, #F2F4F6); border-left: 1px solid var(--poz-line);
}
@media (max-width: 1240px) {
  .poz-plan__tools { border-right: 0; }
  .poz-plan__spec { border-left: 0; border-top: 1px solid var(--poz-line); }
}
.poz-plan__spec-head {
  display: flex; align-items: center; justify-content: space-between;
  padding: 16px 18px; border-bottom: 1px solid var(--poz-line);
  font: var(--poz-eyebrow); font-size: var(--poz-eyebrow-size, 10px);
  letter-spacing: 0.16em; text-transform: uppercase; color: var(--poz-text-2);
}
.poz-plan__live { display: inline-flex; align-items: center; gap: 6px; color: #1f8a5b; }
.poz-plan__live i { width: 6px; height: 6px; border-radius: 50%; background: #1f8a5b; animation: pozPlanPulse 2s infinite; }
@keyframes pozPlanPulse { 0%,100% { opacity: 1; } 50% { opacity: 0.35; } }
.poz-plan__bom { flex: 0 1 auto; overflow-y: auto; padding: 8px 18px; min-height: 120px; }
.poz-plan__item {
  display: flex; justify-content: space-between; gap: 14px; align-items: baseline;
  padding: 10px 0; border-bottom: 1px solid var(--poz-line);
  font: 400 13px/1.5 var(--poz-font-body); color: var(--poz-text-2);
}
.poz-plan__item b { font: 400 13px/1 var(--poz-font-mono); color: var(--poz-text); white-space: nowrap; }
.poz-plan__item.is-sub { padding-left: 12px; font-size: 11px; }
.poz-plan__tots {
  display: grid; grid-template-columns: repeat(3, 1fr);
  border-top: 1px solid var(--poz-line); border-bottom: 1px solid var(--poz-line);
}
.poz-plan__tot { padding: 14px 12px 12px 18px; border-right: 1px solid var(--poz-line); min-width: 0; }
.poz-plan__tot:last-child { border-right: 0; }
.poz-plan__tot b {
  display: block; font: 400 22px/1.1 var(--poz-font-display); color: var(--poz-text);
  letter-spacing: 0.01em; white-space: nowrap;
}
.poz-plan__tot b small { font-size: 11px; letter-spacing: 0.04em; }
.poz-plan__tot span {
  display: block; margin-top: 4px;
  font: var(--poz-label); font-size: 9px; letter-spacing: 0.1em;
  text-transform: uppercase; color: var(--poz-text-3);
}
.poz-plan__checks { padding: 14px 18px; }
.poz-plan__checks-head {
  display: flex; justify-content: space-between; margin-bottom: 10px;
  font: var(--poz-eyebrow); font-size: var(--poz-eyebrow-size, 10px);
  letter-spacing: 0.14em; text-transform: uppercase; color: var(--poz-text-2);
}
.poz-plan__checks-head [data-check-count] { font-family: var(--poz-font-mono); }
.poz-plan__check { display: grid; grid-template-columns: 14px 1fr; gap: 10px; padding: 8px 0; }
.poz-plan__check-dot { width: 8px; height: 8px; border-radius: 50%; margin-top: 4px; background: #1f8a5b; }
.poz-plan__check.is-warn .poz-plan__check-dot { background: #cc5500; }
.poz-plan__check-name { font: 400 13px/1.4 var(--poz-font-body); color: var(--poz-text); }
.poz-plan__check-tx { font: 400 11.5px/1.5 var(--poz-font-mono); color: var(--poz-text-3); margin-top: 3px; }
.poz-plan__check.is-warn .poz-plan__check-tx { color: #cc5500; }
.poz-plan__spec-foot {
  margin-top: auto; padding: 16px 18px; border-top: 1px solid var(--poz-line);
  display: grid; gap: 10px;
}
.poz-plan__send { width: 100%; text-align: center; }
.poz-plan__spec-links { display: flex; gap: 8px; justify-content: space-between; }

/* ————— mode entry + wizard layers ————— */
.poz-plan__entry, .poz-plan__wizard {
  position: absolute; inset: 0; z-index: 6;
  background: rgba(12, 13, 16, 0.94);
  display: flex; align-items: center; justify-content: center;
}
.poz-plan__entry[hidden], .poz-plan__wizard[hidden] { display: none; }
.poz-plan__entry-inner { width: min(860px, 92%); }
.poz-plan__entry-title {
  margin: 0 0 28px; text-align: center;
  font: 400 clamp(20px, 2.2vw, 30px)/1.25 var(--poz-font-display); color: #F2F4F6;
}
.poz-plan__entry-cards { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
@media (max-width: 700px) { .poz-plan__entry-cards { grid-template-columns: 1fr; } }
.poz-plan__entry-card {
  text-align: left; padding: 26px 24px 30px; cursor: pointer;
  border: 1px solid #2A2E35; background: rgba(255, 255, 255, 0.02);
  transition: border-color 0.3s, background-color 0.3s, transform 0.3s;
}
.poz-plan__entry-card:hover {
  border-color: var(--acc, #7C828C); background: rgba(255, 255, 255, 0.05);
  transform: translateY(-2px);
}
.poz-plan__entry-num { display: block; font: var(--poz-label); font-size: 10px; letter-spacing: 0.14em; color: var(--acc, #7C828C); }
.poz-plan__entry-name { display: block; margin-top: 14px; font: 400 20px/1.2 var(--poz-font-display); color: #F2F4F6; }
.poz-plan__entry-sub { display: block; margin-top: 10px; font: 400 12.5px/1.65 var(--poz-font-body); color: #9AA0A8; max-width: 34ch; }

/* wizard body */
.poz-plan__wz { width: min(920px, 94%); max-height: 92%; overflow-y: auto; }
.poz-plan__wz-step { font: var(--poz-label); font-size: 10px; letter-spacing: 0.14em; text-transform: uppercase; color: var(--acc, #7C828C); }
.poz-plan__wz-q { margin: 14px 0 26px; font: 400 clamp(19px, 2vw, 27px)/1.3 var(--poz-font-display); color: #F2F4F6; max-width: 24ch; }
.poz-plan__wz-opts { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 12px; }
.poz-plan__wz-opt {
  text-align: left; padding: 18px 18px 20px; cursor: pointer;
  border: 1px solid #2A2E35; background: rgba(255, 255, 255, 0.02); color: #E6E9EE;
  transition: border-color 0.25s, background-color 0.25s;
}
.poz-plan__wz-opt:hover, .poz-plan__wz-opt.is-on { border-color: var(--acc, #9AA0A8); background: rgba(255, 255, 255, 0.06); }
.poz-plan__wz-opt b { display: block; font: 400 14px/1.35 var(--poz-font-display); letter-spacing: 0.02em; }
.poz-plan__wz-opt span { display: block; margin-top: 7px; font: 400 11.5px/1.55 var(--poz-font-body); color: #9AA0A8; }
.poz-plan__wz-nav { display: flex; justify-content: space-between; align-items: center; margin-top: 30px; }
.poz-plan__wz-nav .poz-plan__mini { border-color: #2A2E35; color: #9AA0A8; }
.poz-plan__wz-nav .poz-plan__mini:hover { color: #F2F4F6; border-color: #4A505A; }

/* ————— planner switcher band ————— */
.poz-plan-switch { display: grid; grid-template-columns: repeat(4, 1fr); border: 1px solid var(--poz-line); }
@media (max-width: 1100px) { .poz-plan-switch { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 600px) { .poz-plan-switch { grid-template-columns: 1fr; } }
.poz-plan-switch__card {
  display: block; padding: 20px 20px 24px; text-decoration: none;
  border-right: 1px solid var(--poz-line); border-bottom: 1px solid var(--poz-line);
  transition: background-color 0.3s;
}
.poz-plan-switch__card:hover { background: var(--poz-panel, #F2F4F6); }
.poz-plan-switch__card.is-current { background: var(--poz-panel, #F2F4F6); box-shadow: inset 0 2px 0 var(--acc, currentColor); }
.poz-plan-switch__num { font: var(--poz-label); font-size: 10px; letter-spacing: 0.12em; color: var(--acc-ink, var(--poz-text-3)); }
.poz-plan-switch__name { display: block; margin-top: 10px; font: 400 15px/1.3 var(--poz-font-display); color: var(--poz-text); }
.poz-plan-switch__spec { display: block; margin-top: 7px; font: 400 12px/1.55 var(--poz-font-body); color: var(--poz-text-3); }

/* ————— print: the spec rail is the sheet ————— */
@media print {
  .poz-header, .poz-utility, .poz-footer, .poz-plan__tools, .poz-plan__canvas,
  .poz-plan__spec-foot, .poz-plan-switch, .poz-plan__entry, .poz-plan__wizard,
  .poz-contact, .poz-plan-head ~ .poz-section { display: none !important; }
  .poz-plan__frame { display: block; border: 0; min-height: 0; }
  .poz-plan__spec { border: 0; }
}

@media (prefers-reduced-motion: reduce) {
  .poz-plan__live i { animation: none; }
  .poz-plan__entry-card, .poz-plan__entry-card:hover { transform: none; }
}

/* ————— lifter: light shell, sliders, tall film stage ————— */
.poz-plan--light .poz-plan__canvas { background: #FBFAF8; color: #3A3E45; }
.poz-plan--light .poz-plan__bar--top { border-bottom-color: #E7E4DE; }
.poz-plan--light .poz-plan__bar--bottom { border-top-color: #E7E4DE; }
.poz-plan--light .poz-plan__file { color: #7A7F87; }
.poz-plan--light .poz-plan__view { color: #7A7F87; }
.poz-plan--light .poz-plan__view:hover { color: #16171B; }
.poz-plan--light .poz-plan__view.is-on { background: #16171B; color: #fff; }
.poz-plan--light .poz-plan__scene {
  background: radial-gradient(120% 90% at 50% 16%, #FFFFFF 0%, #F3F1EC 100%);
  min-height: max(560px, 72vh);
}
.poz-plan--light .poz-plan__legend { color: #7A7F87; }
.poz-plan--light .poz-plan__cursor { color: #7A7F87; }
.poz-plan--light .poz-plan__zoom { display: none; }

/* sliders */
.poz-lift__sl { margin: 0 0 18px; }
.poz-lift__sl .poz-plan__lbl { display: flex; justify-content: space-between; align-items: baseline; }
.poz-lift__sl output { font: 400 13px/1 var(--poz-font-mono); color: var(--poz-text); letter-spacing: 0; text-transform: none; }
.poz-plan__lbl output { font: 400 12px/1 var(--poz-font-mono); color: var(--poz-text); letter-spacing: 0; text-transform: none; }
span.poz-plan__lbl output { float: right; }
.poz-lift__sl .poz-plan__range { margin-top: 4px; }

/* model cards */
.poz-lift__cards { display: grid; gap: 6px; }
.poz-lift__card {
  display: block; width: 100%; text-align: left; cursor: pointer;
  padding: 10px 13px; border: 1px solid var(--poz-line-dark-soft, var(--poz-line)); background: #fff;
  transition: border-color 0.25s, background-color 0.25s, color 0.25s;
}
.poz-lift__card b { display: block; font: 400 13.5px/1.3 var(--poz-font-display); letter-spacing: 0.02em; color: var(--poz-text); }
.poz-lift__card span { display: block; margin-top: 3px; font: 400 10.5px/1.4 var(--poz-font-mono); color: var(--poz-text-3); }
.poz-lift__card:hover { border-color: var(--poz-text-3); }
.poz-lift__card.is-on { background: #16171B; border-color: #16171B; }
.poz-lift__card.is-on b, .poz-lift__card.is-on span { color: #fff; }

/* the film stage */
.poz-lift__film { position: absolute; inset: 0; display: flex; flex-direction: column; }
.poz-lift__stagearea { position: relative; flex: 1 1 auto; min-height: 0; cursor: pointer; }
.poz-lift__stagearea video {
  position: absolute; inset: 0; width: 100%; height: 100%; object-fit: contain;
  opacity: 1; transition: opacity 0.3s ease; background: transparent;
}
.poz-lift__stagearea video.is-dim { opacity: 0; }
.poz-lift__still { position: absolute; inset: 26px; width: calc(100% - 52px); height: calc(100% - 52px); object-fit: contain; }
.poz-lift__placeholder {
  position: absolute; inset: 0; display: grid; place-items: center;
  font: 400 clamp(28px, 5vw, 64px)/1.1 var(--poz-font-display);
  color: #D9D5CD; letter-spacing: 0.04em; text-align: center; padding: 24px;
}
.poz-lift__pp {
  position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%);
  font: 400 22px/1 var(--poz-font-mono); color: #16171B;
  background: rgba(255, 255, 255, 0.82); border: 1px solid #E7E4DE;
  padding: 14px 20px; pointer-events: none;
}
.poz-lift__name {
  position: absolute; top: 16px; left: 22px;
  font: 400 clamp(20px, 2.4vw, 32px)/1 var(--poz-font-display);
  color: #16171B; letter-spacing: 0.03em; pointer-events: none;
}
.poz-lift__scrubhint {
  position: absolute; right: 22px; top: 22px;
  font: 400 11px/1 var(--poz-font-mono, 'IBM Plex Mono', monospace);
  letter-spacing: 0.1em; text-transform: uppercase; color: #A9ADB4;
  pointer-events: none;
}

/* the scrubber */
.poz-lift__timeline {
  position: relative; flex: 0 0 auto; height: 34px; margin: 0 22px 14px;
  cursor: ew-resize; touch-action: none;
}
.poz-lift__timeline[hidden] { display: none; }
.poz-lift__track {
  position: absolute; left: 0; right: 0; top: 50%; transform: translateY(-50%);
  display: flex; gap: 6px; height: 5px;
}
.poz-lift__seg { flex: 1; position: relative; background: #E3E0DA; border-radius: 3px; overflow: hidden; }
.poz-lift__seg i {
  position: absolute; inset: 0; background: #c35410;
  transform-origin: left center; transform: scaleX(0); display: block;
}
.poz-lift__timeline:hover .poz-lift__track { height: 7px; }
.poz-lift__playhead {
  position: absolute; top: 50%; width: 13px; height: 13px; border-radius: 50%;
  transform: translate(-50%, -50%); background: #16171B;
  box-shadow: 0 0 0 3px rgba(255, 255, 255, 0.85); pointer-events: none;
}
@media (max-width: 900px) {
  .poz-lift__name { font-size: 20px; }
  .poz-lift__scrubhint { display: none; }
}

/* ————— viewport toolbar ————— */
.poz-plan .poz-tb {
  position: absolute; left: 14px; top: 50%; transform: translateY(-50%); z-index: 6;
  display: flex; flex-direction: column; gap: 2px; padding: 6px;
  background: rgba(255, 255, 255, 0.72);
  -webkit-backdrop-filter: blur(16px) saturate(1.1);
  backdrop-filter: blur(16px) saturate(1.1);
  border: 1px solid rgba(22, 23, 27, 0.09);
  border-radius: 10px;
  box-shadow: 0 18px 44px -20px rgba(22, 23, 27, 0.35);
}
.poz-plan .poz-tb button {
  position: relative; width: 34px; height: 34px; padding: 0; border: 0; border-radius: 7px;
  display: grid; place-items: center; background: transparent; color: #4b5057; cursor: pointer;
  transition: background 0.18s, color 0.18s;
}
.poz-plan .poz-tb button svg { width: 19px; height: 19px; display: block; }
.poz-plan .poz-tb button:hover { background: rgba(22, 23, 27, 0.07); color: #16171b; }
.poz-plan .poz-tb button.is-on { background: #16171b; color: #fff; }
.poz-plan .poz-tb__sep { height: 1px; margin: 4px 6px; background: rgba(22, 23, 27, 0.1); }
.poz-plan .poz-tb button[data-tip]::after {
  content: attr(data-tip);
  position: absolute; left: calc(100% + 10px); top: 50%; transform: translateY(-50%) translateX(-4px);
  white-space: nowrap; padding: 5px 9px; border-radius: 6px;
  background: #16171b; color: #fff; font: 500 11px/1 var(--poz-font-body, sans-serif);
  opacity: 0; pointer-events: none; transition: opacity 0.16s, transform 0.16s;
}
.poz-plan .poz-tb button:hover::after { opacity: 1; transform: translateY(-50%) translateX(0); }
[data-scene].is-orbit canvas { cursor: grab; }
[data-scene].is-orbit canvas:active { cursor: grabbing; }
[data-scene].is-pan canvas { cursor: move; }
[data-scene].is-remove canvas { cursor: not-allowed; }
@media (max-width: 700px) {
  .poz-plan .poz-tb { left: 8px; padding: 4px; }
  .poz-plan .poz-tb button { width: 30px; height: 30px; }
  .poz-plan .poz-tb button[data-tip]::after { display: none; }
}

/* ————— assistant pill + compact wizard dialog + spotlight ————— */
.poz-plan .poz-assist {
  position: absolute; right: 16px; bottom: 16px; z-index: 6;
  display: flex; align-items: center; gap: 9px; padding: 11px 16px;
  border: 1px solid rgba(22, 23, 27, 0.09); border-radius: 999px;
  background: rgba(255, 255, 255, 0.78);
  -webkit-backdrop-filter: blur(16px) saturate(1.1);
  backdrop-filter: blur(16px) saturate(1.1);
  color: #16171b; font: 500 12px/1 var(--poz-font-body); cursor: pointer;
  box-shadow: 0 18px 44px -20px rgba(22, 23, 27, 0.4);
  transition: transform 0.2s, background 0.2s;
}
.poz-plan .poz-assist:hover { transform: translateY(-1px); background: #fff; }
.poz-plan .poz-assist__dot {
  width: 8px; height: 8px; border-radius: 50%;
  background: var(--acc, #3E7BFA);
  box-shadow: 0 0 0 4px color-mix(in srgb, var(--acc, #3E7BFA) 22%, transparent);
}
.poz-plan .poz-plan__wizard {
  inset: auto 16px 70px auto; width: min(430px, calc(100% - 32px));
  max-height: min(70%, 560px); overflow-y: auto;
  background: rgba(14, 15, 18, 0.97); border: 1px solid #2A2E35;
  border-radius: 14px; box-shadow: 0 30px 80px -30px rgba(0, 0, 0, 0.7);
  padding: 22px; align-items: stretch;
}
.poz-plan .poz-plan__wizard .poz-plan__wz { width: 100%; max-height: none; }
.poz-plan .poz-plan__wizard .poz-plan__wz-opts { grid-template-columns: 1fr; gap: 8px; }
.poz-plan .poz-plan__wizard .poz-plan__wz-opt { padding: 12px 14px 13px; }
.poz-plan .poz-plan__wz-close {
  position: absolute; top: 10px; right: 12px; padding: 6px;
  border: 0; background: transparent; color: #9AA0A8; font-size: 16px; cursor: pointer;
}
.poz-plan .poz-plan__wz-close:hover { color: #fff; }
.poz-spot { animation: pozSpot 1.3s ease-in-out 2; }
@keyframes pozSpot {
  0%, 100% { box-shadow: 0 0 0 0 rgba(62, 123, 250, 0); }
  50% { box-shadow: 0 0 0 5px rgba(62, 123, 250, 0.45); }
}

/* ————— picker header: tabs + animation backdrop ————— */
.poz-plan-head { position: relative; overflow: hidden; }
.poz-plan-head__bg {
  position: absolute; inset: 0; width: 100%; height: 100%;
  object-fit: cover; object-position: 50% 0%;
  filter: contrast(1.02) saturate(0.97) brightness(1.07);
}
.poz-plan-head__wash {
  position: absolute; inset: 0;
  background: linear-gradient(100deg, rgba(255, 255, 255, 0.96) 0%, rgba(255, 255, 255, 0.86) 44%, rgba(255, 255, 255, 0.55) 100%);
}
.poz-plan-head .poz-wrap { position: relative; }
.poz-plan-pick { display: flex; flex-wrap: wrap; gap: 10px; margin-top: clamp(18px, 2vw, 28px); }
.poz-plan-pick__tab {
  display: inline-flex; align-items: center; gap: 9px; padding: 10px 18px;
  border: 1px solid rgba(22, 23, 27, 0.12); border-radius: 999px;
  background: rgba(255, 255, 255, 0.66);
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
  color: #16171b; text-decoration: none;
  font: 500 12px/1 var(--poz-font-display); letter-spacing: 0.06em; text-transform: uppercase;
  transition: transform 0.18s, background 0.18s, border-color 0.18s, color 0.18s;
}
.poz-plan-pick__tab i { width: 8px; height: 8px; border-radius: 50%; background: var(--acc, #3E7BFA); }
.poz-plan-pick__tab:hover { transform: translateY(-1px); border-color: var(--acc, #3E7BFA); }
.poz-plan-pick__tab.is-on { background: var(--acc, #3E7BFA); border-color: var(--acc, #3E7BFA); color: #fff; }
.poz-plan-pick__tab.is-on i { background: #fff; }

/* ————— premium pass: depth, focus, motion ————— */
/* viewport vignette: gives the 3D stage physical depth */
.poz-plan__scene::after {
  content: ''; position: absolute; inset: 0; pointer-events: none; z-index: 1;
  box-shadow: inset 0 0 64px rgba(0, 0, 0, 0.28);
}
/* tool rows: quicker feedback, softer geometry */
.poz-plan .poz-plan__tool { border-radius: 8px; transition: background 0.16s, color 0.16s; }
.poz-plan .poz-plan__tool:hover { background: rgba(22, 23, 27, 0.05); }
.poz-plan .poz-plan__mini { border-radius: 7px; transition: border-color 0.16s, color 0.16s, background 0.16s; }
.poz-plan .poz-plan__mini:hover { border-color: var(--acc, #3E7BFA); }
/* one focus language everywhere in the planners */
.poz-plan :is(button, a, input, [tabindex]):focus-visible {
  outline: 2px solid var(--acc, #3E7BFA); outline-offset: 2px; border-radius: 6px;
}
/* quiet scrollbars in panels and dialogs */
.poz-plan ::-webkit-scrollbar { width: 8px; height: 8px; }
.poz-plan ::-webkit-scrollbar-thumb { background: rgba(22, 23, 27, 0.18); border-radius: 99px; }
.poz-plan ::-webkit-scrollbar-track { background: transparent; }

/* ————— lift film, reworked: the animation owns the full column ————— */
.poz-plan--light .poz-plan__scene { min-height: max(640px, 80vh); }
.poz-lift__film { position: absolute; inset: 0; display: flex; flex-direction: column; }
.poz-lift__stagearea { flex: 1 1 auto; min-height: 0; position: relative; }
.poz-lift__stagearea video { width: 100%; height: 100%; object-fit: contain; background: #FBFAF8; }
.poz-lift__name {
  position: absolute; top: 14px; left: 16px; z-index: 3;
  padding: 7px 13px; border-radius: 999px;
  background: rgba(255, 255, 255, 0.8); border: 1px solid rgba(22, 23, 27, 0.08);
  -webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px);
  font: 500 12px/1 var(--poz-font-display); letter-spacing: 0.05em; color: #16171b;
}
.poz-lift__name:empty { display: none; }
.poz-lift__dots {
  position: absolute; bottom: 16px; left: 50%; transform: translateX(-50%); z-index: 3;
  display: flex; gap: 8px; padding: 8px 12px; border-radius: 999px;
  background: rgba(255, 255, 255, 0.75); border: 1px solid rgba(22, 23, 27, 0.07);
  -webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px);
}
.poz-lift__dots button {
  width: 8px; height: 8px; border-radius: 50%; border: 0; padding: 0; cursor: pointer;
  background: rgba(22, 23, 27, 0.22); transition: background 0.2s, transform 0.2s;
}
.poz-lift__dots button.is-done { background: rgba(22, 23, 27, 0.45); }
.poz-lift__dots button.is-on { background: var(--acc, #F59E0B); transform: scale(1.35); }
.poz-lift__timeline, .poz-lift__scrubhint { display: none; }

/* ============================================================================
   R2-I — immersive layout: the scene runs full-bleed edge to edge; the tool
   and spec rails float over it as glass panels, each dockable to the side.
   Desktop only; below 1241px the stacked grid layout above still applies.
   ========================================================================== */
@media (min-width: 1241px) {
  .poz-plan__frame {
    display: block;
    height: clamp(720px, calc(100vh - 96px), 1080px);
    min-height: 0;
  }
  .poz-plan__canvas { position: absolute; inset: 0; }
  .poz-plan__tools, .poz-plan__spec {
    position: absolute; top: 62px; bottom: 60px; z-index: 5;
    border: 1px solid rgba(255, 255, 255, 0.5);
    border-radius: 16px;
    background: rgba(245, 247, 249, 0.92);
    -webkit-backdrop-filter: blur(18px) saturate(1.25);
    backdrop-filter: blur(18px) saturate(1.25);
    box-shadow: 0 24px 64px rgba(4, 6, 10, 0.5);
    overflow: hidden;
    transition: transform 0.45s cubic-bezier(0.22, 0.8, 0.24, 1), opacity 0.35s;
  }
  .poz-plan__tools { left: 24px; width: 292px; }
  .poz-plan__spec { right: 24px; width: 348px; }
  .poz-plan__panels { overflow-y: auto; }
  .poz-plan__bom { min-height: 90px; }
  .poz-plan__frame.is-tools-docked .poz-plan__tools { transform: translateX(calc(-100% - 32px)); opacity: 0; pointer-events: none; }
  .poz-plan__frame.is-spec-docked  .poz-plan__spec  { transform: translateX(calc(100% + 32px));  opacity: 0; pointer-events: none; }
  .poz-plan__restore { display: inline-flex; }
  .poz-plan__frame.is-tools-docked .poz-plan__restore--tools,
  .poz-plan__frame.is-spec-docked .poz-plan__restore--spec { opacity: 1; pointer-events: auto; }
}
.poz-plan__restore {
  display: none;   /* only the immersive layout shows these */
  position: absolute; top: 50%; z-index: 4;
  align-items: center; gap: 8px;
  padding: 14px 11px;
  border: 1px solid rgba(255, 255, 255, 0.35);
  border-radius: 999px;
  background: rgba(18, 20, 25, 0.66);
  -webkit-backdrop-filter: blur(12px);
  backdrop-filter: blur(12px);
  color: #E6E9EE; cursor: pointer;
  font: var(--poz-label); font-size: 10px; letter-spacing: 0.14em; text-transform: uppercase;
  writing-mode: vertical-rl;
  opacity: 0; pointer-events: none;
  transition: opacity 0.35s, background-color 0.3s;
}
.poz-plan__restore--tools { left: 12px; transform: translateY(-50%); }
.poz-plan__restore--spec { right: 12px; transform: translateY(-50%) rotate(180deg); }
.poz-plan__restore:hover { background: rgba(28, 32, 40, 0.85); }
.poz-plan__spec-headright { display: inline-flex; align-items: center; gap: 10px; }
/* immersive refinements: the 3D toolbar clears the floating tools panel, and
   the restore pills sit as horizontal chips under the top bar */
@media (min-width: 1241px) {
  .poz-plan .poz-tb { left: 340px; transition: left 0.45s cubic-bezier(0.22, 0.8, 0.24, 1); }
  .poz-plan__frame.is-tools-docked .poz-tb { left: 24px; }
  .poz-plan__restore {
    top: 62px; writing-mode: horizontal-tb; padding: 11px 18px;
  }
  .poz-plan__restore--tools { left: 24px; transform: none; }
  .poz-plan__restore--spec { right: 24px; transform: none; }
}
/* cascade fix: the base display:none above must lose in the immersive layout */
@media (min-width: 1241px) { .poz-plan__restore { display: inline-flex; } }

/* ============================================================================
   R3-A — inverted shell (Sven, 2026-08-01): the CANVAS goes light, the
   floating windows go dark frozen glass. Overrides earlier blocks; the scene
   JS greys (grid, fog, 2D editor inks) were flipped to match.
   ========================================================================== */
/* ——— light canvas ——— */
.poz-plan__canvas { background: #FAF9F7; color: #3A3E45; }
.poz-plan__bar--top { border-bottom-color: #E7E4DE; }
.poz-plan__bar--bottom { border-top-color: #E7E4DE; }
.poz-plan__file { color: #7A7F87; }
.poz-plan__view { color: #7A7F87; }
.poz-plan__view:hover { color: #16171B; }
.poz-plan__view.is-on { background: #16171B; color: #fff; }
.poz-plan__scene {
  background: radial-gradient(120% 90% at 50% 12%, #FFFFFF 0%, #F1EFEA 100%);
}
.poz-plan__scene::after { box-shadow: inset 0 0 64px rgba(20, 22, 30, 0.07); }
.poz-plan__legend { color: #7A7F87; }
.poz-plan__cursor { color: #7A7F87; }
.poz-plan__zoom { color: #5A5F67; }
.poz-plan__zbtn { border-color: #D8DAD6; color: #5A5F67; }
.poz-plan__zbtn:hover { color: #16171B; border-color: #9AA0A8; }
.poz-plan__scene-hint {
  border-color: #E7E4DE; background: rgba(255, 255, 255, 0.9); color: #3A3E45;
}
/* ——— dark frozen-glass floating windows ——— */
@media (min-width: 1241px) {
  .poz-plan__tools, .poz-plan__spec {
    background: rgba(15, 17, 22, 0.66);
    -webkit-backdrop-filter: blur(24px) saturate(1.2);
    backdrop-filter: blur(24px) saturate(1.2);
    border: 1px solid rgba(255, 255, 255, 0.1);
    box-shadow: 0 24px 64px rgba(10, 12, 18, 0.35);
  }
}
/* below the immersive breakpoint the rails are solid dark, no glass needed */
@media (max-width: 1240px) {
  .poz-plan__tools, .poz-plan__spec { background: #14161B; border-color: rgba(255, 255, 255, 0.08); }
}
.poz-plan__tools, .poz-plan__spec { color: #E7EAEE; }
.poz-plan__tools-head, .poz-plan__toollist, .poz-plan__tool, .poz-plan__tools-foot,
.poz-plan__spec-head, .poz-plan__checks { border-color: rgba(255, 255, 255, 0.08); }
.poz-plan__tools-title, .poz-plan__spec-head { color: #B9BFC8; }
.poz-plan__tool { color: #B9BFC8; border-bottom-color: rgba(255, 255, 255, 0.07); }
.poz-plan__tool:hover { color: #fff; background: rgba(255, 255, 255, 0.05); }
.poz-plan__tool.is-on { background: rgba(255, 255, 255, 0.1); color: #fff; }
.poz-plan__tool-num { color: var(--acc, #9AA0A8); }
.poz-plan__tool-count { color: #8A9099; }
.poz-plan__mini { border-color: rgba(255, 255, 255, 0.2); color: #C6CBD3; }
.poz-plan__mini:hover { color: #fff; border-color: rgba(255, 255, 255, 0.45); }
.poz-plan__lbl { color: #B9BFC8; }
.poz-plan__chips .poz-plan__chip, .poz-plan__chip {
  background: rgba(255, 255, 255, 0.06); border-color: rgba(255, 255, 255, 0.14); color: #D6DAE0;
}
.poz-plan__chip:hover { border-color: rgba(255, 255, 255, 0.4); color: #fff; }
.poz-plan__chip.is-on { background: #F2F4F6; border-color: #F2F4F6; color: #16171B; }
.poz-plan__chip.has-ico svg rect { fill: currentColor; }
.poz-plan__hint { color: #8A9099; }
.poz-plan__step { background: rgba(255, 255, 255, 0.06); border-color: rgba(255, 255, 255, 0.14); }
.poz-plan__step button { color: #C6CBD3; }
.poz-plan__step button:hover { color: #fff; }
.poz-plan__step output { color: #fff; }
.poz-plan__toggle { color: #C6CBD3; }
.poz-plan__val { color: #fff; }
.poz-plan__item { border-bottom-color: rgba(255, 255, 255, 0.08); color: #C6CBD3; }
.poz-plan__item b { color: #fff; }
.poz-plan__tots { border-color: rgba(255, 255, 255, 0.1); }
.poz-plan__tot { border-right-color: rgba(255, 255, 255, 0.1); }
.poz-plan__tot b { color: #fff; }
.poz-plan__tot span { color: #8A9099; }
.poz-plan__checks-head { color: #B9BFC8; }
.poz-plan__check-name { color: #E7EAEE; }
.poz-plan__check-tx { color: #9AA0A8; }
.poz-plan__spec-foot { border-top-color: rgba(255, 255, 255, 0.1); }
.poz-plan__restore { z-index: 5; }
/* lift model cards on the dark panel */
.poz-lift__card { background: rgba(255, 255, 255, 0.06); border-color: rgba(255, 255, 255, 0.14); }
.poz-lift__card b { color: #F2F4F6; }
.poz-lift__card span { color: #9AA0A8; }
.poz-lift__card:hover { border-color: rgba(255, 255, 255, 0.4); }
.poz-lift__card.is-on { background: #F2F4F6; border-color: #F2F4F6; }
.poz-lift__card.is-on b, .poz-lift__card.is-on span { color: #16171B; }
.poz-lift__sl output, .poz-plan__lbl output { color: #fff; }
/* ——— viewport toolbar + assistant pill: dark glass ——— */
.poz-plan .poz-tb {
  background: rgba(18, 20, 25, 0.78);
  border-color: rgba(255, 255, 255, 0.12);
  box-shadow: 0 18px 44px -18px rgba(10, 12, 18, 0.5);
}
.poz-plan .poz-tb button { color: #C8CDD5; }
.poz-plan .poz-tb button:hover { background: rgba(255, 255, 255, 0.09); color: #fff; }
.poz-plan .poz-tb button.is-on { background: #F2F4F6; color: #16171B; }
.poz-plan .poz-tb__sep { background: rgba(255, 255, 255, 0.12); }
.poz-plan .poz-assist {
  background: rgba(18, 20, 25, 0.8);
  border-color: rgba(255, 255, 255, 0.14);
  color: #F2F4F6;
}
.poz-plan .poz-assist:hover { background: rgba(10, 12, 16, 0.92); }
/* panel scrollbars on dark */
.poz-plan__tools ::-webkit-scrollbar-thumb, .poz-plan__spec ::-webkit-scrollbar-thumb { background: rgba(255, 255, 255, 0.22); }
/* the send button keeps its primary look; links row inherits mini */

/* ============================================================================
   R3-B — workflow guidance (Sven, 2026-08-01): step-group headings in the
   tools list, a four-step coach strip over the stage scene until the first
   deck lands, and always-visible micro-labels under every toolbar icon.
   ========================================================================== */
.poz-plan__toolgroup {
  padding: 13px 18px 6px;
  font: var(--poz-label, 600 10px/1 sans-serif); font-size: 9px;
  letter-spacing: 0.16em; text-transform: uppercase;
  color: var(--acc, #9AA0A8);
}
.poz-plan__toolgroup ~ .poz-plan__toolgroup { border-top: 1px solid rgba(255, 255, 255, 0.07); margin-top: 6px; }
.poz-coach {
  position: absolute; left: 50%; top: 16px; transform: translateX(-50%);
  z-index: 4; display: flex; align-items: center; gap: 10px;
  padding: 10px 18px; border-radius: 999px; white-space: nowrap;
  background: rgba(18, 20, 25, 0.82); color: #E7EAEE;
  -webkit-backdrop-filter: blur(14px); backdrop-filter: blur(14px);
  border: 1px solid rgba(255, 255, 255, 0.12);
  box-shadow: 0 14px 34px -14px rgba(10, 12, 18, 0.5);
  font: 400 11.5px/1 var(--poz-font-body, sans-serif);
  transition: opacity 0.6s, transform 0.6s;
}
.poz-coach__step { display: inline-flex; align-items: center; gap: 7px; }
.poz-coach__step b {
  display: inline-grid; place-items: center; width: 17px; height: 17px;
  border-radius: 50%; background: var(--acc, #3E7BFA); color: #fff;
  font: 600 9.5px/1 var(--poz-font-body, sans-serif);
}
.poz-coach__arrow { font-style: normal; color: #6A6F78; }
.poz-coach.is-done { opacity: 0; transform: translateX(-50%) translateY(-8px); pointer-events: none; }
@media (max-width: 1000px) { .poz-coach { display: none; } }
/* toolbar micro-labels */
.poz-plan .poz-tb button {
  width: 50px; height: auto; padding: 7px 2px 6px;
  display: flex; flex-direction: column; align-items: center; gap: 3px;
}
.poz-plan .poz-tb .poz-tb__lb {
  font: 500 8px/1 var(--poz-font-body, sans-serif); font-style: normal;
  letter-spacing: 0.07em; text-transform: uppercase; opacity: 0.72;
}
.poz-plan .poz-tb button.is-on .poz-tb__lb { opacity: 1; }
@media (max-width: 700px) {
  .poz-plan .poz-tb button { width: 40px; padding: 5px 2px 4px; }
  .poz-plan .poz-tb .poz-tb__lb { display: none; }
}
@media (prefers-reduced-motion: reduce) { .poz-coach { transition: none; } }

/* ============================================================================
   R3-C — lifter (Sven, 2026-08-01): one-take film with floating replay, and
   the Keynote-style spec rail — hero model name, two oversized stat cards,
   clean rows, why-list, adapter chips. The generic tots band is retired here.
   ========================================================================== */
.poz-plan--lift .poz-plan__tots { display: none; }
.poz-lift__hero { padding: 10px 0 2px; display: flex; flex-direction: column; gap: 8px; }
.poz-lift__hero-series {
  font: var(--poz-label, 600 10px/1 sans-serif); font-size: 9px;
  letter-spacing: 0.16em; text-transform: uppercase; color: var(--sc, #9AA0A8);
}
.poz-lift__hero-name {
  font: 400 30px/1.04 var(--poz-font-display, sans-serif);
  color: #fff; letter-spacing: 0.01em;
}
.poz-lift__stats { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; padding: 14px 0 10px; }
.poz-lift__stat {
  padding: 15px 14px 13px; border-radius: 14px;
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(255, 255, 255, 0.1); min-width: 0;
}
.poz-lift__stat b {
  display: block; font: 400 32px/1 var(--poz-font-display, sans-serif);
  color: #fff; letter-spacing: -0.01em; white-space: nowrap;
}
.poz-lift__stat b small { font-size: 13px; color: #8A9099; margin-left: 4px; letter-spacing: 0.04em; }
.poz-lift__stat span {
  display: block; margin-top: 8px;
  font: var(--poz-label, 600 10px/1 sans-serif); font-size: 8.5px;
  letter-spacing: 0.13em; text-transform: uppercase; color: #8A9099;
}
.poz-lift__rows { padding: 0; }
.poz-lift__sub {
  margin: 16px 0 4px;
  font: var(--poz-label, 600 10px/1 sans-serif); font-size: 9px;
  letter-spacing: 0.14em; text-transform: uppercase; color: #8A9099;
}
.poz-lift__why { margin: 0; padding: 0; list-style: none; }
.poz-lift__why li {
  position: relative; padding: 5px 0 5px 16px;
  font: 400 12px/1.5 var(--poz-font-body, sans-serif); color: #C6CBD3;
}
.poz-lift__why li::before {
  content: ''; position: absolute; left: 0; top: 11px; width: 5px; height: 5px;
  border-radius: 50%; background: var(--acc, #5E93D6);
}
.poz-lift__adapters { display: flex; flex-wrap: wrap; gap: 6px; padding: 2px 0 10px; }
.poz-lift__adapters span {
  padding: 5px 10px; border-radius: 999px;
  border: 1px solid rgba(255, 255, 255, 0.14); background: rgba(255, 255, 255, 0.05);
  font: 400 10.5px/1.3 var(--poz-font-body, sans-serif); color: #D6DAE0;
}
.poz-lift__replay {
  position: absolute; right: 16px; bottom: 16px; z-index: 3;
  width: 46px; height: 46px; border-radius: 50%; cursor: pointer;
  border: 1px solid rgba(255, 255, 255, 0.35);
  background: rgba(18, 20, 25, 0.62); color: #fff; font-size: 20px; line-height: 1;
  -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px);
  transition: transform 0.18s, background 0.18s;
}
.poz-lift__replay:hover { background: rgba(10, 12, 16, 0.85); transform: scale(1.07); }

/* ============================================================================
   R3-D — planner head explainer (Sven, 2026-08-01): a looping line-art
   storyboard on the right of the header showing how this configurator is
   used. Slot keyframes stagger the elements; clicks pulse in accent.
   ========================================================================== */
.poz-plan-head__demo {
  position: absolute; right: 12px; bottom: 26px; z-index: 2;
  width: min(320px, 26vw);
  padding: 16px 16px 11px; border-radius: 18px;
  background: rgba(12, 14, 19, 0.5);
  -webkit-backdrop-filter: blur(18px); backdrop-filter: blur(18px);
  border: 1px solid rgba(255, 255, 255, 0.14);
  box-shadow: 0 20px 50px -22px rgba(8, 10, 14, 0.55);
}
.poz-plan-head__demo svg { display: block; width: 100%; height: auto; }
.poz-plan-head__demo-cap {
  display: block; margin-top: 7px; text-align: center;
  font: var(--poz-label, 600 10px/1 sans-serif); font-size: 9px;
  letter-spacing: 0.15em; text-transform: uppercase;
  color: rgba(255, 255, 255, 0.72);
}
@media (max-width: 1100px) { .poz-plan-head__demo { display: none; } }
.poz-pd { opacity: 0; transform-box: fill-box; transform-origin: center; }
@keyframes pozPdS1 { 0%, 3% { opacity: 0; transform: translateY(9px); } 9%, 84% { opacity: 1; transform: translateY(0); } 92%, 100% { opacity: 0; transform: translateY(0); } }
@keyframes pozPdS2 { 0%, 13% { opacity: 0; transform: translateY(9px); } 19%, 84% { opacity: 1; transform: translateY(0); } 92%, 100% { opacity: 0; transform: translateY(0); } }
@keyframes pozPdS3 { 0%, 23% { opacity: 0; transform: translateY(9px); } 29%, 84% { opacity: 1; transform: translateY(0); } 92%, 100% { opacity: 0; transform: translateY(0); } }
@keyframes pozPdS4 { 0%, 33% { opacity: 0; transform: translateY(9px); } 39%, 84% { opacity: 1; transform: translateY(0); } 92%, 100% { opacity: 0; transform: translateY(0); } }
@keyframes pozPdS5 { 0%, 45% { opacity: 0; transform: translateY(9px); } 51%, 84% { opacity: 1; transform: translateY(0); } 92%, 100% { opacity: 0; transform: translateY(0); } }
.poz-pd--s1 { animation: pozPdS1 8s cubic-bezier(0.22, 0.75, 0.25, 1) infinite; }
.poz-pd--s2 { animation: pozPdS2 8s cubic-bezier(0.22, 0.75, 0.25, 1) infinite; }
.poz-pd--s3 { animation: pozPdS3 8s cubic-bezier(0.22, 0.75, 0.25, 1) infinite; }
.poz-pd--s4 { animation: pozPdS4 8s cubic-bezier(0.22, 0.75, 0.25, 1) infinite; }
.poz-pd--s5 { animation: pozPdS5 8s cubic-bezier(0.22, 0.75, 0.25, 1) infinite; }
@keyframes pozPdC1 { 0%, 1% { opacity: 0; transform: scale(0.4); } 5% { opacity: 0.95; transform: scale(1); } 10%, 100% { opacity: 0; transform: scale(1.7); } }
@keyframes pozPdC2 { 0%, 11% { opacity: 0; transform: scale(0.4); } 15% { opacity: 0.95; transform: scale(1); } 20%, 100% { opacity: 0; transform: scale(1.7); } }
@keyframes pozPdC3 { 0%, 21% { opacity: 0; transform: scale(0.4); } 25% { opacity: 0.95; transform: scale(1); } 30%, 100% { opacity: 0; transform: scale(1.7); } }
@keyframes pozPdC4 { 0%, 31% { opacity: 0; transform: scale(0.4); } 35% { opacity: 0.95; transform: scale(1); } 40%, 100% { opacity: 0; transform: scale(1.7); } }
.poz-pd--c1 { animation: pozPdC1 8s ease-out infinite; }
.poz-pd--c2 { animation: pozPdC2 8s ease-out infinite; }
.poz-pd--c3 { animation: pozPdC3 8s ease-out infinite; }
.poz-pd--c4 { animation: pozPdC4 8s ease-out infinite; }
@media (prefers-reduced-motion: reduce) {
  .poz-pd { animation: none !important; opacity: 1; }
  .poz-pd--c1, .poz-pd--c2, .poz-pd--c3, .poz-pd--c4 { opacity: 0; }
}

/* ============================================================================
   R4-A — quick pass (Sven, 2026-08-01): pure white technical canvas, tools
   vs. views separated in the toolbar, assistant pill re-homed + on-brand,
   spec totals overflow fix. Opšav UI removed in planner-stage.js.
   ========================================================================== */
/* ——— white canvas with technical markings (ivory out) ——— */
.poz-plan__canvas { background: #FFFFFF; }
.poz-plan--light .poz-plan__canvas { background: #FFFFFF; }
.poz-plan__scene {
  background:
    radial-gradient(circle at 1px 1px, #D9DDE3 1px, transparent 1.5px) 0 0 / 26px 26px,
    #FFFFFF;
}
.poz-plan__scene::after { box-shadow: inset 0 0 54px rgba(20, 22, 30, 0.05); }
.poz-plan__bar--top, .poz-plan--light .poz-plan__bar--top { border-bottom-color: #E4E7EB; }
.poz-plan__bar--bottom, .poz-plan--light .poz-plan__bar--bottom { border-top-color: #E4E7EB; }
/* ——— toolbar: TOOLS separated from VIEW presets ——— */
.poz-plan .poz-tb__sep { height: 2px; width: 22px; margin: 8px auto; border-radius: 2px; background: rgba(255, 255, 255, 0.16); }
.poz-plan .poz-tb button[data-tbview] {
  background: rgba(255, 255, 255, 0.07);
  border-radius: 9px;
  margin: 1px 3px;
  width: 44px;
}
.poz-plan .poz-tb button[data-tbview]:hover { background: rgba(255, 255, 255, 0.16); }
/* ——— assistant pill: away from the spec rail, on-brand ——— */
.poz-plan .poz-assist {
  right: auto; left: 16px;
  font: 600 11px/1 var(--poz-font-body, sans-serif);
  letter-spacing: 0.04em;
}
@media (min-width: 1241px) {
  .poz-plan .poz-assist { left: calc(268px + 48px); }
  .poz-plan .poz-plan__frame.is-tools-docked .poz-assist { left: 16px; }
}
/* ——— spec totals: stop the overflow ——— */
.poz-plan__tot { padding: 12px 10px 10px 14px; min-width: 0; overflow: hidden; }
.poz-plan__tot b { font-size: clamp(15px, 1.35vw, 20px); }
.poz-plan__tot span { white-space: normal; line-height: 1.3; }

/* ============================================================================
   R4-B — tools rail UX (Sven, 2026-08-01): the rail is an ACCORDION (each
   panel expands under its tool), every tool carries an explaining sublabel,
   module chips become premium deck cards, and the rail glass is deeper with
   fixed color contrast.
   ========================================================================== */
/* ——— accordion ——— */
.poz-plan__panels { display: none !important; }
.poz-plan__toollist { flex: 1 1 auto; overflow-y: auto; min-height: 0; }
.poz-plan__tool { grid-template-columns: 26px 1fr auto auto; align-items: center; }
.poz-plan__tool-name { display: flex; flex-direction: column; gap: 4px; min-width: 0; }
.poz-plan__tool-sub {
  font: 400 10.5px/1.35 var(--poz-font-body, sans-serif); font-style: normal;
  letter-spacing: 0; text-transform: none; color: #868D97;
}
.poz-plan__tool.is-on .poz-plan__tool-sub { color: #B9BFC8; }
.poz-plan__tool-chev { font-size: 12px; line-height: 1; color: #868D97; transition: transform 0.3s, color 0.3s; }
.poz-plan__tool.is-on .poz-plan__tool-chev { transform: rotate(180deg); color: #fff; }
.poz-plan__panelwrap {
  display: grid; grid-template-rows: 0fr;
  transition: grid-template-rows 0.38s cubic-bezier(0.25, 0.7, 0.25, 1);
  border-bottom: 1px solid rgba(255, 255, 255, 0.07);
}
.poz-plan__panelwrap.is-open { grid-template-rows: 1fr; }
.poz-plan__toollist .poz-plan__panel {
  display: block; overflow: hidden; min-height: 0;
  padding: 0 18px; opacity: 0;
  transition: opacity 0.3s, padding 0.3s;
}
.poz-plan__panelwrap.is-open .poz-plan__panel { padding: 8px 18px 18px; opacity: 1; }
/* ——— deeper frozen glass + contrast on the rails ——— */
@media (min-width: 1241px) {
  .poz-plan__tools, .poz-plan__spec {
    background: rgba(11, 13, 18, 0.52);
    -webkit-backdrop-filter: blur(30px) saturate(1.45);
    backdrop-filter: blur(30px) saturate(1.45);
  }
}
@media (max-width: 1240px) {
  .poz-plan__tools, .poz-plan__spec {
    background: rgba(15, 17, 22, 0.78);
    -webkit-backdrop-filter: blur(22px) saturate(1.3);
    backdrop-filter: blur(22px) saturate(1.3);
  }
}
.poz-plan__tool-num { color: var(--acc, #9AA0A8); }
.poz-plan__hint { color: #A7ADB7; }
.poz-plan__check-tx { color: #A7ADB7; }
.poz-plan__item { color: #CDD2D9; }
/* ——— premium module deck cards ——— */
.poz-plan__chip.poz-mod {
  min-width: 88px; padding: 13px 10px 11px; gap: 9px;
  border-radius: 14px;
  background: rgba(255, 255, 255, 0.05);
  border-color: rgba(255, 255, 255, 0.12);
  transition: transform 0.25s, border-color 0.25s, background-color 0.25s, box-shadow 0.25s;
}
.poz-plan__chip.poz-mod svg { width: 58px; height: 36px; }
.poz-mod__top { fill: currentColor; opacity: 0.2; stroke: currentColor; stroke-width: 1.1; }
.poz-mod__planks line { stroke: currentColor; stroke-width: 1; opacity: 0.45; }
.poz-plan__chip.poz-mod:hover {
  transform: translateY(-3px);
  border-color: rgba(255, 255, 255, 0.4);
  box-shadow: 0 16px 32px -16px rgba(0, 0, 0, 0.65);
}
.poz-plan__chip.poz-mod.is-on {
  background: #F4F6F8; border-color: #F4F6F8; color: #16171B;
  transform: translateY(-2px);
  box-shadow: 0 16px 34px -16px rgba(0, 0, 0, 0.55), inset 0 0 0 2px var(--acc, #3E7BFA);
}
.poz-plan__chip.poz-mod.is-on .poz-mod__top { opacity: 0.85; fill: var(--acc, #3E7BFA); stroke: none; }
.poz-plan__chip.poz-mod.is-on .poz-mod__planks line { stroke: #fff; opacity: 0.75; }

/* ============================================================================
   R4-C — 3D UX (Sven, 2026-08-01): graphic view switcher, one-time 2D nudge,
   projected module info marker (hidable), Uredi tool selection, and the
   pozornice.hr watermark in the preview window.
   ========================================================================== */
/* ——— graphic view switcher ——— */
.poz-plan__views {
  gap: 5px; padding: 4px;
  border-radius: 12px;
  background: rgba(18, 20, 25, 0.06);
  border: 1px solid rgba(18, 20, 25, 0.1);
}
.poz-plan__view {
  display: inline-flex; align-items: center; gap: 7px;
  padding: 8px 14px; border-radius: 8px;
  color: #5A5F67;
}
.poz-plan__view svg { width: 15px; height: 15px; display: block; }
.poz-plan__view:hover { color: #16171B; background: rgba(18, 20, 25, 0.07); }
.poz-plan__view.is-on { background: #16171B; color: #fff; }
/* ——— one-time "2D is easier" nudge ——— */
.poz-2dhint {
  position: absolute; top: 12px; right: 14px; z-index: 7;
  display: flex; align-items: center; gap: 10px;
  padding: 11px 14px; border-radius: 12px; max-width: 340px;
  background: rgba(18, 20, 25, 0.88); color: #F2F4F6;
  -webkit-backdrop-filter: blur(14px); backdrop-filter: blur(14px);
  border: 1px solid rgba(255, 255, 255, 0.16);
  box-shadow: 0 18px 44px -18px rgba(10, 12, 18, 0.55);
  font: 400 12px/1.45 var(--poz-font-body, sans-serif);
  animation: poz2dIn 0.45s cubic-bezier(0.2, 0.8, 0.25, 1);
}
@keyframes poz2dIn { from { opacity: 0; transform: translateY(-8px); } }
.poz-2dhint.is-out { opacity: 0; transform: translateY(-8px); transition: opacity 0.4s, transform 0.4s; }
.poz-2dhint__arr {
  position: absolute; top: -6px; right: 34px; width: 10px; height: 10px;
  background: rgba(18, 20, 25, 0.88); transform: rotate(45deg);
  border-left: 1px solid rgba(255, 255, 255, 0.16); border-top: 1px solid rgba(255, 255, 255, 0.16);
}
.poz-2dhint__go {
  flex: 0 0 auto; border: 0; cursor: pointer; padding: 7px 11px; border-radius: 8px;
  background: #F2F4F6; color: #16171B;
  font: 600 10.5px/1 var(--poz-font-body, sans-serif); letter-spacing: 0.04em; text-transform: uppercase;
}
/* ——— projected module marker ——— */
.poz-mark {
  position: absolute; z-index: 5; transform: translate(-50%, -110%);
  display: flex; flex-direction: column; gap: 2px; align-items: flex-start;
  padding: 8px 26px 8px 11px; border-radius: 10px; pointer-events: none;
  background: rgba(18, 20, 25, 0.82); color: #fff;
  -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px);
  border: 1px solid rgba(255, 255, 255, 0.15);
  transition: opacity 0.2s; white-space: nowrap;
}
.poz-mark b { font: 600 11px/1.2 var(--poz-font-body, sans-serif); }
.poz-mark span { font: 400 10px/1.2 var(--poz-font-body, sans-serif); color: #B9BFC8; }
.poz-mark__x {
  position: absolute; top: 3px; right: 4px; pointer-events: auto;
  border: 0; background: none; cursor: pointer; color: #8A9099;
  font: 400 12px/1 var(--poz-font-body, sans-serif); padding: 3px;
}
.poz-mark__x:hover { color: #fff; }
.poz-mark__show {
  position: absolute; right: 14px; top: 60px; z-index: 5;
  width: 30px; height: 30px; border-radius: 50%; cursor: pointer;
  border: 1px solid rgba(18, 20, 25, 0.2); background: rgba(255, 255, 255, 0.85);
  color: #16171B; font: 600 13px/1 serif; font-style: italic;
  -webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px);
}
/* ——— pozornice.hr watermark, centred in the preview ——— */
.poz-plan__scene::before {
  content: ""; position: absolute; inset: 0; z-index: 0; pointer-events: none;
  background-image: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 240 120'%3E%3Cg fill='none' stroke='%23161A22' stroke-width='5'%3E%3Crect x='70' y='28' width='100' height='16' rx='3'/%3E%3Cpath d='M82 44v26M158 44v26M104 44v14M136 44v14'/%3E%3C/g%3E%3Ctext x='120' y='102' text-anchor='middle' font-family='Arial, sans-serif' font-size='21' letter-spacing='7' fill='%23161A22'%3EPOZORNICE.HR%3C/text%3E%3C/svg%3E");
  background-repeat: no-repeat; background-position: center 46%;
  background-size: min(340px, 38%);
  opacity: 0.05;
}

/* ============================================================================
   R4-D — thin header + explained steps strip (Sven, 2026-08-01): the head is
   a single compact bar (no lead, no explainer demos), the planner frame fills
   the remaining viewport, and the coach strip is the redesigned explained
   steps element mounted on ALL planners.
   ========================================================================== */
/* ——— thin head ——— */
.poz-plan-head.poz-section { padding: 0; }
.poz-plan-head .poz-wrap {
  display: flex; align-items: center; justify-content: space-between; gap: 24px;
  padding-top: 12px; padding-bottom: 12px;
}
.poz-plan-head .poz-sechead { margin: 0; display: flex; align-items: center; }
.poz-plan-head .poz-sechead__spine { display: none; }
.poz-plan-head .poz-sechead__eyebrow { font-size: 8.5px; }
.poz-plan-head .poz-sechead__title { font-size: clamp(16px, 1.5vw, 21px); margin: 3px 0 0; line-height: 1.15; }
.poz-plan-head .poz-plan-pick { margin: 0; flex: 0 0 auto; }
@media (max-width: 900px) {
  .poz-plan-head .poz-wrap { flex-direction: column; align-items: flex-start; gap: 10px; }
}
/* ——— planner fills the viewport ——— */
@media (min-width: 901px) {
  .poz-plan__frame {
    height: calc(100vh - var(--poz-header-h, 124px) - 62px);
    min-height: 560px;
  }
}
/* ——— redesigned steps strip (all planners) ——— */
.poz-coach {
  top: 14px; gap: 0; padding: 0 6px;
  background: rgba(15, 17, 22, 0.8);
  -webkit-backdrop-filter: blur(20px) saturate(1.25);
  backdrop-filter: blur(20px) saturate(1.25);
  border-radius: 14px;
  border-color: rgba(255, 255, 255, 0.14);
}
.poz-coach__step { gap: 9px; padding: 12px 14px; }
.poz-coach__step b {
  width: 20px; height: 20px; font-size: 10px;
  box-shadow: 0 0 0 3px rgba(255, 255, 255, 0.07);
}
.poz-coach__tx { font: 500 11.5px/1.2 var(--poz-font-body, sans-serif); color: #E9ECF1; letter-spacing: 0.01em; }
.poz-coach__arrow { color: #5A6068; margin: 0 -3px; }

/* ============================================================================
   R4-G — lifter redesign (Sven, 2026-08-01): the film is a TALL panel docked
   to the right edge of the canvas (bottom bar to menu bar), the spec lives as
   interactive frozen-glass labels overlaying the film, model cards carry a
   product image, and the "nema modela" placeholder is a compact card.
   ========================================================================== */
/* ——— tall film panel, full canvas height ——— */
@media (min-width: 1241px) {
  .poz-plan--lift .poz-plan__media {
    inset: 0 0 0 auto; width: min(46%, 620px);
    background: linear-gradient(180deg, #FFFFFF 0%, #F1F0ED 100%);
    box-shadow: -34px 0 64px -44px rgba(10, 12, 16, 0.3);
    border-left: 1px solid #E7E4DE;
  }
  .poz-plan--lift .poz-lift__stagearea video { object-fit: cover; }
  .poz-plan--lift .poz-lift__still { inset: 40px; width: calc(100% - 80px); height: calc(100% - 80px); }
  /* the right spec rail retires on desktop — the overlay owns the spec */
  .poz-plan--lift .poz-plan__spec { display: none; }
}
/* ——— glass spec overlay on the film ——— */
.poz-lift__ov {
  position: absolute; left: 18px; top: 18px; bottom: 18px; z-index: 4;
  display: flex; flex-direction: column; align-items: flex-start; gap: 12px;
  max-width: min(64%, 300px); pointer-events: none;
}
.poz-lift__ov > * { pointer-events: auto; }
.poz-lift__ov[hidden] { display: none; }
.poz-lift__ov-hero {
  display: flex; flex-direction: column; gap: 6px;
  padding: 14px 16px; border-radius: 16px;
  background: rgba(15, 17, 22, 0.62);
  -webkit-backdrop-filter: blur(22px) saturate(1.3); backdrop-filter: blur(22px) saturate(1.3);
  border: 1px solid rgba(255, 255, 255, 0.16);
}
.poz-lift__ov-series {
  font: var(--poz-label, 600 10px/1 sans-serif); font-size: 8.5px;
  letter-spacing: 0.15em; text-transform: uppercase; color: #AEB5BF;
}
.poz-lift__ov-name { font: 400 30px/1 var(--poz-font-display, sans-serif); color: #fff; letter-spacing: 0.01em; }
.poz-lift__ov-stats { display: flex; flex-wrap: wrap; gap: 8px; }
.poz-lift__ov-stat {
  display: flex; flex-direction: column; gap: 4px;
  padding: 11px 13px 9px; border-radius: 13px;
  background: rgba(15, 17, 22, 0.55);
  -webkit-backdrop-filter: blur(18px); backdrop-filter: blur(18px);
  border: 1px solid rgba(255, 255, 255, 0.14);
  transition: transform 0.2s, background-color 0.2s;
}
.poz-lift__ov-stat:hover { transform: translateY(-2px); background: rgba(15, 17, 22, 0.72); }
.poz-lift__ov-stat b { font: 400 21px/1 var(--poz-font-display, sans-serif); color: #fff; }
.poz-lift__ov-stat b small { font-size: 11px; color: #9BA2AC; margin-left: 3px; }
.poz-lift__ov-stat i {
  font: var(--poz-label, 600 10px/1 sans-serif); font-size: 8px; font-style: normal;
  letter-spacing: 0.12em; text-transform: uppercase; color: #9BA2AC;
}
.poz-lift__ov-actions { display: flex; gap: 8px; }
.poz-lift__ov-more, .poz-lift__ov-send {
  border: 1px solid rgba(255, 255, 255, 0.2); border-radius: 999px; cursor: pointer;
  padding: 10px 16px;
  font: 600 10.5px/1 var(--poz-font-body, sans-serif); letter-spacing: 0.06em; text-transform: uppercase;
  -webkit-backdrop-filter: blur(16px); backdrop-filter: blur(16px);
  transition: background-color 0.2s, transform 0.2s;
}
.poz-lift__ov-more { background: rgba(15, 17, 22, 0.55); color: #E7EAEE; }
.poz-lift__ov-more:hover { background: rgba(15, 17, 22, 0.75); }
.poz-lift__ov-send { background: rgba(255, 255, 255, 0.92); color: #16171B; border-color: rgba(255, 255, 255, 0.92); }
.poz-lift__ov-send:hover { transform: translateY(-1px); background: #fff; }
.poz-lift__ov-sheet {
  overflow-y: auto; min-height: 0; max-height: 42%;
  padding: 13px 15px; border-radius: 14px; width: 100%;
  background: rgba(15, 17, 22, 0.68);
  -webkit-backdrop-filter: blur(24px) saturate(1.3); backdrop-filter: blur(24px) saturate(1.3);
  border: 1px solid rgba(255, 255, 255, 0.15);
}
.poz-lift__ov-row { display: flex; justify-content: space-between; gap: 12px; padding: 6px 0; border-bottom: 1px solid rgba(255,255,255,0.09); font: 400 11.5px/1.4 var(--poz-font-body, sans-serif); color: #C6CBD3; }
.poz-lift__ov-row b { font: 400 11.5px/1 var(--poz-font-mono, monospace); color: #fff; }
.poz-lift__ov-sub { margin: 12px 0 4px; font: var(--poz-label, 600 10px/1 sans-serif); font-size: 8.5px; letter-spacing: 0.13em; text-transform: uppercase; color: #9BA2AC; }
.poz-lift__ov-why { padding: 3px 0 3px 12px; position: relative; font: 400 11px/1.5 var(--poz-font-body, sans-serif); color: #C6CBD3; }
.poz-lift__ov-why::before { content: ''; position: absolute; left: 0; top: 9px; width: 4px; height: 4px; border-radius: 50%; background: var(--acc, #5E93D6); }
.poz-lift__ov-chips { display: flex; flex-wrap: wrap; gap: 5px; padding-top: 4px; }
.poz-lift__ov-chips span { padding: 4px 8px; border-radius: 999px; border: 1px solid rgba(255,255,255,0.16); font: 400 9.5px/1.3 var(--poz-font-body, sans-serif); color: #D6DAE0; }
@media (max-width: 1240px) { .poz-lift__ov { display: none; } }
/* ——— model cards with product image ——— */
.poz-lift__card { display: flex; align-items: center; gap: 11px; text-align: left; }
.poz-lift__card-im {
  flex: 0 0 44px; width: 44px; height: 56px; border-radius: 9px; overflow: hidden;
  display: grid; place-items: center;
  background: rgba(255, 255, 255, 0.09);
}
.poz-lift__card-im img { width: 100%; height: 100%; object-fit: cover; display: block; }
.poz-lift__card-im--ph svg { width: 26px; height: 36px; color: #8A9099; }
.poz-lift__card.is-on .poz-lift__card-im--ph svg { color: #4b5563; }
.poz-lift__card-tx { min-width: 0; }
/* ——— "nema modela": compact card, never a full-screen banner ——— */
.poz-lift__placeholder {
  position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%);
  inset: auto; display: block; max-width: 340px; width: max-content;
  font: 400 14px/1.55 var(--poz-font-body, sans-serif);
  color: #4A4F58; letter-spacing: 0; text-align: center;
  padding: 18px 22px; border-radius: 14px;
  background: rgba(255, 255, 255, 0.88);
  -webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px);
  border: 1px solid #E4E1DB;
  box-shadow: 0 18px 44px -20px rgba(20, 22, 30, 0.25);
  white-space: normal;
}
.poz-lift__placeholder[hidden] { display: none; }

/* ============================================================================
   R4-H — dark/light toggle (Sven, 2026-08-01): a moon/sun button beside the
   view switcher flips the shell between the default (white technical canvas,
   dark glass windows) and the pre-inversion look (dark canvas, light panels).
   The scene JS reads the same localStorage key for fog/grid/shadow.
   ========================================================================== */
.poz-plan__theme {
  display: inline-grid; place-items: center;
  width: 38px; height: 38px; margin-left: 8px;
  border-radius: 11px; cursor: pointer;
  border: 1px solid rgba(18, 20, 25, 0.12);
  background: rgba(18, 20, 25, 0.05); color: #5A5F67;
  transition: color 0.2s, background-color 0.2s;
}
.poz-plan__theme svg { width: 15px; height: 15px; }
.poz-plan__theme:hover { color: #16171B; background: rgba(18, 20, 25, 0.1); }
/* ——— the dark shell: dark canvas, LIGHT panels (pre-R3-A look) ——— */
.poz-plan.poz-dark .poz-plan__canvas { background: #0C0D10; color: #B7BCC4; }
.poz-plan.poz-dark .poz-plan__scene {
  background: radial-gradient(120% 90% at 50% 12%, #1A1D22 0%, #0C0D10 100%);
}
.poz-plan.poz-dark .poz-plan__scene::before { filter: invert(1); opacity: 0.06; }
.poz-plan.poz-dark .poz-plan__scene::after { box-shadow: inset 0 0 64px rgba(0, 0, 0, 0.4); }
.poz-plan.poz-dark .poz-plan__bar--top { border-bottom-color: #1E2127; }
.poz-plan.poz-dark .poz-plan__bar--bottom { border-top-color: #1E2127; }
.poz-plan.poz-dark .poz-plan__file, .poz-plan.poz-dark .poz-plan__legend,
.poz-plan.poz-dark .poz-plan__cursor, .poz-plan.poz-dark .poz-plan__zoom { color: #8A9099; }
.poz-plan.poz-dark .poz-plan__zbtn { border-color: #2A2E35; color: #8A9099; }
.poz-plan.poz-dark .poz-plan__views { background: rgba(255, 255, 255, 0.06); border-color: rgba(255, 255, 255, 0.1); }
.poz-plan.poz-dark .poz-plan__view { color: #8A9099; }
.poz-plan.poz-dark .poz-plan__view:hover { color: #E6E9EE; background: rgba(255, 255, 255, 0.08); }
.poz-plan.poz-dark .poz-plan__view.is-on { background: #E6E9EE; color: #0C0D10; }
.poz-plan.poz-dark .poz-plan__theme { border-color: rgba(255, 255, 255, 0.16); background: rgba(255, 255, 255, 0.07); color: #B7BCC4; }
.poz-plan.poz-dark .poz-plan__theme:hover { color: #fff; background: rgba(255, 255, 255, 0.14); }
.poz-plan.poz-dark .poz-plan__scene-hint { border-color: #2A2E35; background: rgba(14, 15, 18, 0.9); color: #B7BCC4; }
/* light floating panels */
@media (min-width: 1241px) {
  .poz-plan.poz-dark .poz-plan__tools, .poz-plan.poz-dark .poz-plan__spec {
    background: rgba(248, 250, 252, 0.86);
    -webkit-backdrop-filter: blur(26px) saturate(1.15);
    backdrop-filter: blur(26px) saturate(1.15);
    border: 1px solid rgba(22, 23, 27, 0.1);
    box-shadow: 0 24px 64px rgba(6, 8, 12, 0.5);
  }
}
@media (max-width: 1240px) {
  .poz-plan.poz-dark .poz-plan__tools, .poz-plan.poz-dark .poz-plan__spec {
    background: rgba(248, 250, 252, 0.94);
    -webkit-backdrop-filter: blur(18px); backdrop-filter: blur(18px);
    border-color: rgba(22, 23, 27, 0.12);
  }
}
.poz-plan.poz-dark .poz-plan__tools, .poz-plan.poz-dark .poz-plan__spec { color: #16171B; }
.poz-plan.poz-dark .poz-plan__tools-head, .poz-plan.poz-dark .poz-plan__toollist,
.poz-plan.poz-dark .poz-plan__tool, .poz-plan.poz-dark .poz-plan__tools-foot,
.poz-plan.poz-dark .poz-plan__spec-head, .poz-plan.poz-dark .poz-plan__checks,
.poz-plan.poz-dark .poz-plan__panelwrap { border-color: rgba(22, 23, 27, 0.09); }
.poz-plan.poz-dark .poz-plan__tools-title, .poz-plan.poz-dark .poz-plan__spec-head { color: #5A5F67; }
.poz-plan.poz-dark .poz-plan__tool { color: #3A3E45; }
.poz-plan.poz-dark .poz-plan__tool:hover { color: #16171B; background: rgba(22, 23, 27, 0.04); }
.poz-plan.poz-dark .poz-plan__tool.is-on { background: #fff; color: #16171B; }
.poz-plan.poz-dark .poz-plan__tool-sub { color: #7A7F87; }
.poz-plan.poz-dark .poz-plan__tool.is-on .poz-plan__tool-sub { color: #5A5F67; }
.poz-plan.poz-dark .poz-plan__tool-chev { color: #9AA0A8; }
.poz-plan.poz-dark .poz-plan__tool.is-on .poz-plan__tool-chev { color: #16171B; }
.poz-plan.poz-dark .poz-plan__mini { border-color: rgba(22, 23, 27, 0.16); color: #5A5F67; }
.poz-plan.poz-dark .poz-plan__mini:hover { color: #16171B; border-color: #9AA0A8; }
.poz-plan.poz-dark .poz-plan__lbl { color: #5A5F67; }
.poz-plan.poz-dark .poz-plan__chip { background: #fff; border-color: rgba(22, 23, 27, 0.14); color: #3A3E45; }
.poz-plan.poz-dark .poz-plan__chip:hover { border-color: #9AA0A8; color: #16171B; }
.poz-plan.poz-dark .poz-plan__chip.is-on { background: #16171B; border-color: #16171B; color: #fff; }
.poz-plan.poz-dark .poz-plan__chip.poz-mod { background: #fff; }
.poz-plan.poz-dark .poz-plan__chip.poz-mod.is-on { background: #16171B; color: #fff; box-shadow: inset 0 0 0 2px var(--acc, #3E7BFA); }
.poz-plan.poz-dark .poz-plan__hint, .poz-plan.poz-dark .poz-plan__check-tx { color: #7A7F87; }
.poz-plan.poz-dark .poz-plan__step { background: #fff; border-color: rgba(22, 23, 27, 0.14); }
.poz-plan.poz-dark .poz-plan__step button { color: #5A5F67; }
.poz-plan.poz-dark .poz-plan__step output, .poz-plan.poz-dark .poz-plan__val,
.poz-plan.poz-dark .poz-plan__item b, .poz-plan.poz-dark .poz-plan__tot b,
.poz-plan.poz-dark .poz-plan__check-name { color: #16171B; }
.poz-plan.poz-dark .poz-plan__item { color: #3A3E45; border-bottom-color: rgba(22, 23, 27, 0.08); }
.poz-plan.poz-dark .poz-plan__tot span { color: #7A7F87; }
.poz-plan.poz-dark .poz-plan__toggle { color: #3A3E45; }
.poz-plan.poz-dark .poz-lift__card { background: #fff; border-color: rgba(22, 23, 27, 0.12); }
.poz-plan.poz-dark .poz-lift__card b { color: #16171B; }
.poz-plan.poz-dark .poz-lift__card span { color: #7A7F87; }
.poz-plan.poz-dark .poz-lift__card-im { background: rgba(22, 23, 27, 0.06); }
/* toolbar + assistant back to light glass */
.poz-plan.poz-dark .poz-tb {
  background: rgba(255, 255, 255, 0.82);
  border-color: rgba(22, 23, 27, 0.1);
  box-shadow: 0 18px 44px -18px rgba(0, 0, 0, 0.6);
}
.poz-plan.poz-dark .poz-tb button { color: #5A5F67; }
.poz-plan.poz-dark .poz-tb button:hover { background: rgba(22, 23, 27, 0.07); color: #16171B; }
.poz-plan.poz-dark .poz-tb button.is-on { background: #16171B; color: #fff; }
.poz-plan.poz-dark .poz-tb button[data-tbview] { background: rgba(22, 23, 27, 0.05); }
.poz-plan.poz-dark .poz-tb__sep { background: rgba(22, 23, 27, 0.14); }
.poz-plan.poz-dark .poz-assist { background: rgba(255, 255, 255, 0.85); color: #16171b; border-color: rgba(22, 23, 27, 0.09); }
.poz-plan.poz-dark .poz-assist:hover { background: #fff; }

/* ============================================================================
   R5-A — global [hidden] safety (Sven, 2026-08-01): several components set
   display on elements that are later hidden via the hidden attribute (module
   marker, lifter view button, film placeholder). Per spec, a display rule
   defeats [hidden]; this restores the expected behaviour everywhere.
   ========================================================================== */
.poz-plan [hidden] { display: none !important; }

/* ============================================================================
   R5-B — light frozen glass menus (Sven, 2026-08-01): the DEFAULT skin flips —
   floating windows become LIGHT frozen glass over the white technical canvas;
   the dark-glass windows move to .poz-dark ("dark for dark mode"). This block
   is appended last so it deterministically overrides the R3-A dark-default
   panel skin and the R4-H light-panels-in-dark-mode set above.
   ========================================================================== */
/* ——— DEFAULT: light frozen glass windows ——— */
@media (min-width: 1241px) {
  .poz-plan__tools, .poz-plan__spec {
    background: rgba(250, 251, 253, 0.72);
    -webkit-backdrop-filter: blur(26px) saturate(1.15);
    backdrop-filter: blur(26px) saturate(1.15);
    border: 1px solid rgba(22, 23, 27, 0.1);
    box-shadow: 0 24px 64px rgba(20, 24, 34, 0.16);
  }
}
@media (max-width: 1240px) {
  .poz-plan__tools, .poz-plan__spec {
    background: rgba(250, 251, 253, 0.94);
    -webkit-backdrop-filter: blur(18px); backdrop-filter: blur(18px);
    border-color: rgba(22, 23, 27, 0.12);
  }
}
.poz-plan__tools, .poz-plan__spec { color: #16171B; }
.poz-plan__tools-head, .poz-plan__toollist, .poz-plan__tool, .poz-plan__tools-foot,
.poz-plan__spec-head, .poz-plan__checks, .poz-plan__panelwrap { border-color: rgba(22, 23, 27, 0.09); }
.poz-plan__toolgroup ~ .poz-plan__toolgroup { border-top-color: rgba(22, 23, 27, 0.09); }
.poz-plan__tools-title, .poz-plan__spec-head, .poz-plan__checks-head { color: #5A5F67; }
.poz-plan__tool { color: #3A3E45; border-bottom-color: rgba(22, 23, 27, 0.08); }
.poz-plan__tool:hover { color: #16171B; background: rgba(22, 23, 27, 0.04); }
.poz-plan__tool.is-on { background: #fff; color: #16171B; }
.poz-plan__tool-count { color: #7A7F87; }
.poz-plan__tool-sub { color: #7A7F87; }
.poz-plan__tool.is-on .poz-plan__tool-sub { color: #5A5F67; }
.poz-plan__tool-chev { color: #9AA0A8; }
.poz-plan__tool.is-on .poz-plan__tool-chev { color: #16171B; }
.poz-plan__mini { border-color: rgba(22, 23, 27, 0.16); color: #5A5F67; }
.poz-plan__mini:hover { color: #16171B; border-color: #9AA0A8; }
.poz-plan__lbl { color: #5A5F67; }
.poz-plan__chips .poz-plan__chip, .poz-plan__chip { background: #fff; border-color: rgba(22, 23, 27, 0.14); color: #3A3E45; }
.poz-plan__chip:hover { border-color: #9AA0A8; color: #16171B; }
.poz-plan__chip.is-on { background: #16171B; border-color: #16171B; color: #fff; }
.poz-plan__chip.poz-mod { background: #fff; }
.poz-plan__chip.poz-mod:hover { border-color: #9AA0A8; box-shadow: 0 16px 32px -16px rgba(20, 24, 34, 0.3); }
.poz-plan__chip.poz-mod.is-on { background: #16171B; border-color: #16171B; color: #fff; box-shadow: 0 16px 34px -16px rgba(20, 24, 34, 0.35), inset 0 0 0 2px var(--acc, #3E7BFA); }
.poz-plan__hint, .poz-plan__check-tx { color: #7A7F87; }
.poz-plan__step { background: #fff; border-color: rgba(22, 23, 27, 0.14); }
.poz-plan__step button { color: #5A5F67; }
.poz-plan__step button:hover { color: #16171B; }
.poz-plan__step output, .poz-plan__val, .poz-plan__item b,
.poz-plan__tot b, .poz-plan__check-name { color: #16171B; }
.poz-plan__item { color: #3A3E45; border-bottom-color: rgba(22, 23, 27, 0.08); }
.poz-plan__tots, .poz-plan__tot, .poz-plan__spec-foot { border-color: rgba(22, 23, 27, 0.1); }
.poz-plan__tot span { color: #7A7F87; }
.poz-plan__toggle { color: #3A3E45; }
.poz-lift__sl output, .poz-plan__lbl output { color: #16171B; }
.poz-lift__card { background: #fff; border-color: rgba(22, 23, 27, 0.12); }
.poz-lift__card b { color: #16171B; }
.poz-lift__card span { color: #7A7F87; }
.poz-lift__card:hover { border-color: #9AA0A8; }
.poz-lift__card.is-on { background: #16171B; border-color: #16171B; }
.poz-lift__card.is-on b { color: #fff; }
.poz-lift__card.is-on span { color: #B7BCC4; }
.poz-lift__card-im { background: rgba(22, 23, 27, 0.06); }
.poz-lift__card.is-on .poz-lift__card-im { background: rgba(255, 255, 255, 0.12); }
.poz-lift__card.is-on .poz-lift__card-im--ph svg { color: #E6E9EE; }
.poz-plan__tools ::-webkit-scrollbar-thumb, .poz-plan__spec ::-webkit-scrollbar-thumb { background: rgba(22, 23, 27, 0.25); }
/* toolbar + assistant pill: light glass */
.poz-plan .poz-tb {
  background: rgba(255, 255, 255, 0.82);
  border-color: rgba(22, 23, 27, 0.1);
  box-shadow: 0 18px 44px -18px rgba(20, 24, 34, 0.35);
}
.poz-plan .poz-tb button { color: #5A5F67; }
.poz-plan .poz-tb button:hover { background: rgba(22, 23, 27, 0.07); color: #16171B; }
.poz-plan .poz-tb button.is-on { background: #16171B; color: #fff; }
.poz-plan .poz-tb button[data-tbview] { background: rgba(22, 23, 27, 0.05); }
.poz-plan .poz-tb button[data-tbview]:hover { background: rgba(22, 23, 27, 0.12); }
.poz-plan .poz-tb__sep { background: rgba(22, 23, 27, 0.14); }
.poz-plan .poz-assist { background: rgba(255, 255, 255, 0.85); color: #16171B; border-color: rgba(22, 23, 27, 0.09); }
.poz-plan .poz-assist:hover { background: #fff; }
/* ——— .poz-dark: dark frozen-glass windows over the dark canvas ——— */
@media (min-width: 1241px) {
  .poz-plan.poz-dark .poz-plan__tools, .poz-plan.poz-dark .poz-plan__spec {
    background: rgba(15, 17, 22, 0.66);
    -webkit-backdrop-filter: blur(24px) saturate(1.2);
    backdrop-filter: blur(24px) saturate(1.2);
    border: 1px solid rgba(255, 255, 255, 0.1);
    box-shadow: 0 24px 64px rgba(6, 8, 12, 0.5);
  }
}
@media (max-width: 1240px) {
  .poz-plan.poz-dark .poz-plan__tools, .poz-plan.poz-dark .poz-plan__spec {
    background: #14161B;
    -webkit-backdrop-filter: blur(18px); backdrop-filter: blur(18px);
    border-color: rgba(255, 255, 255, 0.08);
  }
}
.poz-plan.poz-dark .poz-plan__tools, .poz-plan.poz-dark .poz-plan__spec { color: #E7EAEE; }
.poz-plan.poz-dark .poz-plan__tools-head, .poz-plan.poz-dark .poz-plan__toollist,
.poz-plan.poz-dark .poz-plan__tool, .poz-plan.poz-dark .poz-plan__tools-foot,
.poz-plan.poz-dark .poz-plan__spec-head, .poz-plan.poz-dark .poz-plan__checks,
.poz-plan.poz-dark .poz-plan__panelwrap { border-color: rgba(255, 255, 255, 0.08); }
.poz-plan.poz-dark .poz-plan__toolgroup ~ .poz-plan__toolgroup { border-top-color: rgba(255, 255, 255, 0.07); }
.poz-plan.poz-dark .poz-plan__tools-title, .poz-plan.poz-dark .poz-plan__spec-head,
.poz-plan.poz-dark .poz-plan__checks-head { color: #B9BFC8; }
.poz-plan.poz-dark .poz-plan__tool { color: #B9BFC8; border-bottom-color: rgba(255, 255, 255, 0.07); }
.poz-plan.poz-dark .poz-plan__tool:hover { color: #fff; background: rgba(255, 255, 255, 0.05); }
.poz-plan.poz-dark .poz-plan__tool.is-on { background: rgba(255, 255, 255, 0.1); color: #fff; }
.poz-plan.poz-dark .poz-plan__tool-count { color: #8A9099; }
.poz-plan.poz-dark .poz-plan__tool-sub { color: #868D97; }
.poz-plan.poz-dark .poz-plan__tool.is-on .poz-plan__tool-sub { color: #B9BFC8; }
.poz-plan.poz-dark .poz-plan__tool-chev { color: #868D97; }
.poz-plan.poz-dark .poz-plan__tool.is-on .poz-plan__tool-chev { color: #fff; }
.poz-plan.poz-dark .poz-plan__mini { border-color: rgba(255, 255, 255, 0.2); color: #C6CBD3; }
.poz-plan.poz-dark .poz-plan__mini:hover { color: #fff; border-color: rgba(255, 255, 255, 0.45); }
.poz-plan.poz-dark .poz-plan__lbl { color: #B9BFC8; }
.poz-plan.poz-dark .poz-plan__chips .poz-plan__chip, .poz-plan.poz-dark .poz-plan__chip {
  background: rgba(255, 255, 255, 0.06); border-color: rgba(255, 255, 255, 0.14); color: #D6DAE0;
}
.poz-plan.poz-dark .poz-plan__chip:hover { border-color: rgba(255, 255, 255, 0.4); color: #fff; }
.poz-plan.poz-dark .poz-plan__chip.is-on { background: #F2F4F6; border-color: #F2F4F6; color: #16171B; }
.poz-plan.poz-dark .poz-plan__chip.poz-mod { background: rgba(255, 255, 255, 0.05); border-color: rgba(255, 255, 255, 0.12); }
.poz-plan.poz-dark .poz-plan__chip.poz-mod:hover { border-color: rgba(255, 255, 255, 0.4); box-shadow: 0 16px 32px -16px rgba(0, 0, 0, 0.65); }
.poz-plan.poz-dark .poz-plan__chip.poz-mod.is-on {
  background: #F4F6F8; border-color: #F4F6F8; color: #16171B;
  box-shadow: 0 16px 34px -16px rgba(0, 0, 0, 0.55), inset 0 0 0 2px var(--acc, #3E7BFA);
}
.poz-plan.poz-dark .poz-plan__hint, .poz-plan.poz-dark .poz-plan__check-tx { color: #9AA0A8; }
.poz-plan.poz-dark .poz-plan__step { background: rgba(255, 255, 255, 0.06); border-color: rgba(255, 255, 255, 0.14); }
.poz-plan.poz-dark .poz-plan__step button { color: #C6CBD3; }
.poz-plan.poz-dark .poz-plan__step button:hover { color: #fff; }
.poz-plan.poz-dark .poz-plan__step output, .poz-plan.poz-dark .poz-plan__val,
.poz-plan.poz-dark .poz-plan__item b, .poz-plan.poz-dark .poz-plan__tot b,
.poz-plan.poz-dark .poz-plan__check-name { color: #fff; }
.poz-plan.poz-dark .poz-plan__item { color: #C6CBD3; border-bottom-color: rgba(255, 255, 255, 0.08); }
.poz-plan.poz-dark .poz-plan__tots, .poz-plan.poz-dark .poz-plan__tot,
.poz-plan.poz-dark .poz-plan__spec-foot { border-color: rgba(255, 255, 255, 0.1); }
.poz-plan.poz-dark .poz-plan__tot span { color: #8A9099; }
.poz-plan.poz-dark .poz-plan__toggle { color: #C6CBD3; }
.poz-plan.poz-dark .poz-lift__sl output, .poz-plan.poz-dark .poz-plan__lbl output { color: #fff; }
.poz-plan.poz-dark .poz-lift__card { background: rgba(255, 255, 255, 0.06); border-color: rgba(255, 255, 255, 0.14); }
.poz-plan.poz-dark .poz-lift__card b { color: #F2F4F6; }
.poz-plan.poz-dark .poz-lift__card span { color: #9AA0A8; }
.poz-plan.poz-dark .poz-lift__card:hover { border-color: rgba(255, 255, 255, 0.4); }
.poz-plan.poz-dark .poz-lift__card.is-on { background: #F2F4F6; border-color: #F2F4F6; }
.poz-plan.poz-dark .poz-lift__card.is-on b, .poz-plan.poz-dark .poz-lift__card.is-on span { color: #16171B; }
.poz-plan.poz-dark .poz-lift__card-im { background: rgba(255, 255, 255, 0.09); }
.poz-plan.poz-dark .poz-lift__card.is-on .poz-lift__card-im { background: rgba(22, 23, 27, 0.08); }
.poz-plan.poz-dark .poz-lift__card.is-on .poz-lift__card-im--ph svg { color: #4b5563; }
.poz-plan.poz-dark .poz-plan__tools ::-webkit-scrollbar-thumb,
.poz-plan.poz-dark .poz-plan__spec ::-webkit-scrollbar-thumb { background: rgba(255, 255, 255, 0.22); }
/* toolbar + assistant: dark glass in dark mode */
.poz-plan.poz-dark .poz-tb {
  background: rgba(18, 20, 25, 0.78);
  border-color: rgba(255, 255, 255, 0.12);
  box-shadow: 0 18px 44px -18px rgba(0, 0, 0, 0.6);
}
.poz-plan.poz-dark .poz-tb button { color: #C8CDD5; }
.poz-plan.poz-dark .poz-tb button:hover { background: rgba(255, 255, 255, 0.09); color: #fff; }
.poz-plan.poz-dark .poz-tb button.is-on { background: #F2F4F6; color: #16171B; }
.poz-plan.poz-dark .poz-tb button[data-tbview] { background: rgba(255, 255, 255, 0.07); }
.poz-plan.poz-dark .poz-tb button[data-tbview]:hover { background: rgba(255, 255, 255, 0.16); }
.poz-plan.poz-dark .poz-tb__sep { background: rgba(255, 255, 255, 0.12); }
.poz-plan.poz-dark .poz-assist {
  background: rgba(18, 20, 25, 0.8); border-color: rgba(255, 255, 255, 0.14); color: #F2F4F6;
}
.poz-plan.poz-dark .poz-assist:hover { background: rgba(10, 12, 16, 0.92); }
/* ============================================================================
   R5-C — header strip (Sven, 2026-08-01): the picker head is one display-font
   line (3D ALAT — PLANER …), no video/taglines; in the canvas top bar the view
   toggle moves LEFT and "Primjeri konfiguracije" render as chips in the strip.
   ========================================================================== */
.poz-plan-head__h1 {
  margin: 0;
  font: 600 clamp(15px, 1.5vw, 21px)/1.1 var(--poz-font-display, sans-serif);
  letter-spacing: 0.13em; text-transform: uppercase; color: #16171B;
  white-space: nowrap;
}
@media (max-width: 900px) { .poz-plan-head__h1 { white-space: normal; } }
/* top strip: views left · preset chips center · file right */
.poz-plan__bar--top { justify-content: flex-start; }
.poz-plan__bar--top .poz-plan__file { margin-left: auto; flex: 0 1 auto; }
.poz-plan__presetbar {
  display: inline-flex; align-items: center; gap: 6px;
  min-width: 0; flex: 0 1 auto; margin-left: 10px;
  overflow-x: auto; scrollbar-width: none;
}
.poz-plan__presetbar::-webkit-scrollbar { display: none; }
.poz-plan__presetbar-lb {
  font: var(--poz-label, 600 10px/1 sans-serif); font-size: 9px;
  letter-spacing: 0.14em; text-transform: uppercase; color: #7A7F87;
  white-space: nowrap; margin-right: 2px;
}
.poz-plan__pchip {
  white-space: nowrap; padding: 7px 13px; border-radius: 999px; cursor: pointer;
  border: 1px solid rgba(22, 23, 27, 0.14); background: #fff; color: #3A3E45;
  font: 500 11px/1 var(--poz-font-body, sans-serif);
  transition: border-color 0.16s, color 0.16s, background-color 0.16s;
}
.poz-plan__pchip:hover { border-color: #9AA0A8; color: #16171B; }
.poz-plan.poz-dark .poz-plan__presetbar-lb { color: #8A9099; }
.poz-plan.poz-dark .poz-plan__pchip { background: rgba(255, 255, 255, 0.06); border-color: rgba(255, 255, 255, 0.14); color: #D6DAE0; }
.poz-plan.poz-dark .poz-plan__pchip:hover { border-color: rgba(255, 255, 255, 0.4); color: #fff; }
@media (max-width: 900px) { .poz-plan__presetbar { display: none; } }

/* ============================================================================
   R5-G — lifter layout v2 (Sven, 2026-08-01): the film runs to the very top of
   the shell, the title strip is thin, the rail leads with a slider strip and
   shows big picture cards underneath, and the glass spec sits at the BOTTOM so
   it never covers the assembled tower. The 2D ruler view is gone for good.
   ========================================================================== */
/* ——— thin title strip on the lifter page ——— */
.poz-plan-head.poz-acc--lifting .poz-wrap { padding-top: 7px; padding-bottom: 7px; }
.poz-plan-head.poz-acc--lifting .poz-plan-head__h1 { font-size: clamp(13px, 1.15vw, 16px); letter-spacing: 0.11em; }
.poz-plan-head.poz-acc--lifting .poz-plan-pick__tab { padding: 7px 14px; font-size: 11px; }
/* ——— the film reaches the header: the top bar floats over the canvas ——— */
@media (min-width: 901px) {
  .poz-plan--lift .poz-plan__canvas { position: relative; }
  .poz-plan--lift .poz-plan__bar--top {
    position: absolute; inset: 0 0 auto 0; z-index: 6;
    border-bottom: 0; background: transparent; pointer-events: none;
  }
  .poz-plan--lift .poz-plan__bar--top > * { pointer-events: auto; }
  .poz-plan--lift .poz-plan__views, .poz-plan--lift .poz-plan__theme {
    -webkit-backdrop-filter: blur(16px); backdrop-filter: blur(16px);
    background: rgba(255, 255, 255, 0.72);
  }
  .poz-plan--lift .poz-plan__scene { margin-top: 0; }
}
@media (min-width: 1241px) {
  /* wider film — the assembly animation is the point of this planner */
  .poz-plan--lift .poz-plan__media { width: min(52%, 720px); }
  /* the rail is wider so the slider strip and two card columns breathe */
  .poz-plan--lift .poz-plan__tools { width: 348px; }
}
/* ——— slider strip across the top of the rail ——— */
.poz-lift__sls {
  display: grid; grid-template-columns: 1fr 1fr; gap: 12px 14px;
  padding-bottom: 14px; margin-bottom: 14px;
  border-bottom: 1px solid rgba(22, 23, 27, 0.09);
}
.poz-plan.poz-dark .poz-lift__sls { border-bottom-color: rgba(255, 255, 255, 0.08); }
.poz-lift__sls .poz-lift__sl { margin: 0; }
.poz-lift__ser { grid-column: 1 / -1; display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.poz-lift__ser .poz-plan__lbl { margin: 0; }
.poz-lift__ser .poz-plan__chips { margin: 0; }
.poz-lift__matching { display: flex; justify-content: space-between; align-items: baseline; }
/* ——— big picture cards ——— */
.poz-lift__cards { grid-template-columns: 1fr 1fr; gap: 10px; }
.poz-lift__card--big {
  display: flex; flex-direction: column; align-items: stretch; gap: 8px;
  padding: 10px 10px 12px; border-radius: 14px; text-align: left;
}
.poz-lift__card--big .poz-lift__card-im {
  flex: 0 0 auto; width: 100%; height: 104px; border-radius: 10px;
}
.poz-lift__card--big .poz-lift__card-im--ph svg { width: 34px; height: 46px; }
.poz-lift__card--big b { font-size: 14px; }
.poz-lift__card--big span { font-size: 10px; }
@media (max-width: 1240px) {
  .poz-lift__card--big .poz-lift__card-im { height: 88px; }
}
/* ——— glass spec: bottom-left, compact, sheet opens upward ——— */
.poz-lift__ov {
  top: auto; bottom: 18px; left: 18px; right: 18px;
  max-width: none; justify-content: flex-end;
  flex-direction: column; align-items: flex-start; gap: 10px;
}
.poz-lift__ov-hero { padding: 11px 14px; }
.poz-lift__ov-name { font-size: 24px; }
.poz-lift__ov-stats { gap: 7px; }
.poz-lift__ov-stat { flex-direction: row; align-items: baseline; gap: 7px; padding: 8px 12px; border-radius: 999px; }
.poz-lift__ov-stat b { font-size: 16px; }
.poz-lift__ov-stat i { font-size: 7.5px; }
.poz-lift__ov-sheet { order: -1; max-height: 46vh; overflow-y: auto; }
.poz-lift__ov-actions { order: 1; }
.poz-lift__sls .poz-plan__lbl { font-size: 9px; gap: 6px; min-width: 0; }
.poz-lift__sls output { font-size: 12px; white-space: nowrap; }

/* ============================================================================
   R6-A — lifter, reimagined (Sven, 2026-08-01): the configurator gets its own
   shell. Left: the parameter card. Centre: the assembly film, contained and
   uncropped, with the height scale in a gutter of its own. Right: the
   datasheet — matching models as chips, the numbers, why it fits, adapters and
   one enquiry button that names the model. Supersedes the R4-G/R5-G lifter.
   ========================================================================== */
/* ——— three panes, nothing floating ——— */
@media (min-width: 1101px) {
  .poz-plan--lift .poz-plan__frame {
    display: grid; grid-template-columns: 300px minmax(0, 1fr) 420px; gap: 18px;
    padding: 18px; align-items: stretch;
  }
  .poz-plan--lift .poz-plan__tools,
  .poz-plan--lift .poz-plan__canvas,
  .poz-plan--lift .poz-plan__spec {
    position: static; inset: auto; width: auto; height: auto; max-height: none;
    transform: none; opacity: 1; border-radius: 18px; overflow: hidden;
  }
  .poz-plan--lift .poz-plan__spec { display: flex; }
  .poz-plan--lift .poz-plan__canvas {
    background: linear-gradient(180deg, #FFFFFF 0%, #F4F3F0 100%);
    border: 1px solid rgba(22, 23, 27, 0.08);
  }
  .poz-plan--lift .poz-plan__restore { display: none; }
}
/* the shell chrome the lifter does not use */
.poz-plan--lift .poz-plan__bar--top,
.poz-plan--lift .poz-plan__bar--bottom,
.poz-plan--lift .poz-plan__gl,
.poz-plan--lift .poz-plan__svg,
.poz-plan--lift .poz-tb { display: none !important; }
.poz-plan--lift .poz-plan__scene { inset: 0; }
.poz-plan--lift .poz-plan__media {
  position: absolute; inset: 0; width: auto; height: auto;
  background: transparent; box-shadow: none; border-left: 0;
}
/* ——— centre stage ——— */
.poz-plan--lift .poz-lift__film {
  position: absolute; inset: 0; display: block;
  background: transparent;
}
.poz-lift__wm {
  position: absolute; left: 4%; top: 6%; z-index: 0;
  font: 700 clamp(52px, 8vw, 132px)/1 var(--poz-font-display, sans-serif);
  letter-spacing: 0.02em; color: rgba(22, 23, 27, 0.06); pointer-events: none;
  user-select: none;
}
.poz-plan--lift .poz-lift__stagearea {
  position: absolute; inset: 5% 190px 8% 5%; z-index: 1;
  display: grid; place-items: center;
}
.poz-plan--lift .poz-lift__stagearea video,
.poz-plan--lift .poz-lift__still {
  position: static; inset: auto;
  max-width: 100%; max-height: 100%; width: auto; height: auto;
  object-fit: contain; background: transparent;
}
.poz-plan--lift .poz-lift__placeholder {
  position: static; display: grid; place-items: center;
  font: 400 20px/1.2 var(--poz-font-display, sans-serif); color: #9AA0A8;
}
/* ——— the height scale, in its own gutter ——— */
.poz-lift__scale {
  position: absolute; right: 56px; top: 7%; bottom: 10%; width: 120px; z-index: 2;
  pointer-events: none; --f: 0.3;
}
.poz-lift__scale[hidden] { display: none; }
.poz-lift__scale-line {
  position: absolute; right: 0; top: 0; bottom: 0; width: 2px;
  background: linear-gradient(180deg, #E0281E 0%, #E0281E 100%);
  border-radius: 2px;
}
.poz-lift__scale-line::before, .poz-lift__scale-line::after {
  content: ''; position: absolute; right: -6px; width: 14px; height: 2px; background: #E0281E;
}
.poz-lift__scale-line::before { top: 0; }
.poz-lift__scale-line::after { bottom: 0; }
.poz-lift__scale-cap {
  position: absolute; right: 14px; top: -6px; text-align: right;
  display: flex; flex-direction: column; align-items: flex-end; gap: 2px;
}
.poz-lift__scale-cap b { font: 600 22px/1 var(--poz-font-display, sans-serif); color: #16171B; }
.poz-lift__scale-cap i {
  font: var(--poz-label, 600 10px/1 sans-serif); font-size: 8.5px; font-style: normal;
  letter-spacing: 0.14em; text-transform: uppercase; color: #8A9099;
}
.poz-lift__scale-fold {
  position: absolute; right: 0; bottom: calc(var(--f) * 100%);
  transform: translateY(50%);
}
.poz-lift__scale-fold span {
  position: absolute; right: 16px; top: 50%; transform: translateY(-50%);
  font: 400 11px/1 var(--poz-font-mono, monospace); color: #5A5F67; white-space: nowrap;
}
.poz-lift__scale-fold u {
  position: absolute; right: -4px; top: 50%; transform: translateY(-50%);
  display: block; width: 10px; height: 10px; border-radius: 50%;
  border: 2px solid #E0281E; background: #fff; text-decoration: none;
}
/* ——— stage bar: the view switch + the model name ——— */
.poz-lift__stagebar {
  position: absolute; left: 5%; right: 190px; bottom: 14px; z-index: 3;
  display: flex; align-items: center; justify-content: space-between; gap: 14px;
}
.poz-lift__switch { display: inline-flex; gap: 3px; padding: 3px; border-radius: 999px; background: rgba(22, 23, 27, 0.06); }
.poz-lift__switch button {
  border: 0; cursor: pointer; border-radius: 999px; padding: 8px 15px; background: transparent;
  font: 600 10.5px/1 var(--poz-font-body, sans-serif); letter-spacing: 0.08em; text-transform: uppercase;
  color: #5A5F67; transition: background-color 0.18s, color 0.18s;
}
.poz-lift__switch button:hover { color: #16171B; }
.poz-lift__switch button.is-on { background: #16171B; color: #fff; }
.poz-plan--lift .poz-lift__name {
  position: static; padding: 0; background: none; border: 0;
  font: var(--poz-label, 600 10px/1 sans-serif); font-size: 9.5px;
  letter-spacing: 0.16em; text-transform: uppercase; color: #8A9099;
}
/* ——— the datasheet ——— */
.poz-plan--lift .poz-plan__spec-head { padding: 16px 22px 12px; }
.poz-plan--lift .poz-plan__bom { padding: 0 22px 4px; }
.poz-plan--lift .poz-plan__checks { padding: 4px 22px 12px; }
.poz-plan--lift .poz-plan__spec-foot { padding: 14px 22px 18px; }
.poz-lift__models { display: flex; flex-wrap: wrap; gap: 7px; margin: 0 0 20px; }
.poz-lift__mchip {
  border: 1px solid rgba(22, 23, 27, 0.14); background: #fff; color: #3A3E45;
  border-radius: 999px; padding: 8px 14px; cursor: pointer;
  font: 500 11.5px/1 var(--poz-font-body, sans-serif);
  transition: border-color 0.16s, color 0.16s, background-color 0.16s;
}
.poz-lift__mchip:hover { border-color: #9AA0A8; color: #16171B; }
.poz-lift__mchip.is-on { background: #E0281E; border-color: #E0281E; color: #fff; }
.poz-plan--lift .poz-lift__hero { display: flex; flex-direction: column; gap: 5px; margin-bottom: 16px; }
.poz-plan--lift .poz-lift__hero-name {
  font: 400 clamp(26px, 2.4vw, 34px)/1 var(--poz-font-display, sans-serif);
  color: #16171B; letter-spacing: 0.01em;
}
.poz-plan--lift .poz-lift__hero-series {
  font: var(--poz-label, 600 10px/1 sans-serif); font-size: 9.5px;
  letter-spacing: 0.14em; text-transform: uppercase; color: #E0281E;
}
.poz-plan--lift .poz-lift__stats {
  display: grid; grid-template-columns: 1fr 1fr; gap: 1px; margin: 0 0 20px;
  background: rgba(22, 23, 27, 0.09); border: 1px solid rgba(22, 23, 27, 0.09);
  border-radius: 14px; overflow: hidden;
}
.poz-plan--lift .poz-lift__stat {
  display: flex; flex-direction: column; gap: 4px; padding: 15px 17px; background: #FAFAF9;
}
.poz-plan--lift .poz-lift__stat:last-child:nth-child(odd) { grid-column: 1 / -1; }
.poz-plan--lift .poz-lift__stat b { font: 400 23px/1 var(--poz-font-display, sans-serif); color: #16171B; }
.poz-plan--lift .poz-lift__stat span {
  font: 400 10.5px/1.2 var(--poz-font-mono, monospace); color: #7A7F87; text-transform: none; letter-spacing: 0;
}
.poz-plan--lift .poz-lift__sub {
  font: var(--poz-label, 600 10px/1 sans-serif); font-size: 8.5px;
  letter-spacing: 0.16em; text-transform: uppercase; color: #8A9099; margin: 0 0 9px;
}
.poz-plan--lift .poz-lift__why { list-style: none; margin: 0 0 20px; padding: 0; display: grid; gap: 8px; }
.poz-plan--lift .poz-lift__why li {
  position: relative; padding-left: 24px;
  font: 400 12.5px/1.45 var(--poz-font-body, sans-serif); color: #3A3E45;
}
.poz-plan--lift .poz-lift__why li::before {
  content: '✓'; position: absolute; left: 0; top: 0;
  color: #E0281E; font-size: 12px; font-weight: 700;
}
.poz-lift__adapters { display: grid; grid-template-columns: 1fr 1fr; gap: 8px 12px; margin-bottom: 4px; }
.poz-lift__adap {
  display: flex; align-items: flex-start; gap: 9px; padding: 0; cursor: pointer;
  background: none; border: 0; text-align: left;
  font: 400 11.5px/1.35 var(--poz-font-body, sans-serif); color: #3A3E45;
}
.poz-lift__adap i {
  flex: 0 0 auto; width: 14px; height: 14px; margin-top: 1px; border-radius: 4px;
  border: 1.5px solid rgba(22, 23, 27, 0.28); transition: background-color 0.16s, border-color 0.16s;
}
.poz-lift__adap:hover i { border-color: #E0281E; }
.poz-lift__adap.is-on i {
  background: #E0281E; border-color: #E0281E;
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M2.5 6.3 4.8 8.6 9.5 3.9' fill='none' stroke='%23fff' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-size: 12px 12px; background-position: center; background-repeat: no-repeat;
}
.poz-lift__adap span { color: inherit; }
.poz-lift__adap.is-on { color: #16171B; }
.poz-plan--lift .poz-plan__send {
  width: 100%; justify-content: center; border-radius: 999px; padding: 15px 20px;
  background: #E0281E; border-color: #E0281E; color: #fff;
  font: 600 12px/1 var(--poz-font-body, sans-serif); letter-spacing: 0.04em;
  box-shadow: 0 14px 30px -14px rgba(224, 40, 30, 0.8);
}
.poz-plan--lift .poz-plan__send:hover { background: #C61F16; border-color: #C61F16; }
/* dark mode keeps the same structure, darker skin */
.poz-plan.poz-dark.poz-plan--lift .poz-plan__canvas { background: linear-gradient(180deg, #16181D 0%, #0C0D10 100%); border-color: rgba(255, 255, 255, 0.08); }
.poz-plan.poz-dark .poz-lift__wm { color: rgba(255, 255, 255, 0.06); }
.poz-plan.poz-dark .poz-lift__scale-cap b { color: #fff; }
.poz-plan.poz-dark .poz-lift__scale-fold span { color: #B7BCC4; }
.poz-plan.poz-dark .poz-lift__scale-fold u { background: #16171B; }
.poz-plan.poz-dark .poz-lift__switch { background: rgba(255, 255, 255, 0.08); }
.poz-plan.poz-dark .poz-lift__switch button { color: #B7BCC4; }
.poz-plan.poz-dark .poz-lift__switch button.is-on { background: #fff; color: #16171B; }
.poz-plan.poz-dark .poz-lift__mchip { background: rgba(255, 255, 255, 0.06); border-color: rgba(255, 255, 255, 0.14); color: #D6DAE0; }
.poz-plan.poz-dark.poz-plan--lift .poz-lift__hero-name { color: #fff; }
.poz-plan.poz-dark.poz-plan--lift .poz-lift__stats { background: rgba(255, 255, 255, 0.09); border-color: rgba(255, 255, 255, 0.09); }
.poz-plan.poz-dark.poz-plan--lift .poz-lift__stat { background: rgba(255, 255, 255, 0.04); }
.poz-plan.poz-dark.poz-plan--lift .poz-lift__stat b { color: #fff; }
.poz-plan.poz-dark.poz-plan--lift .poz-lift__why li { color: #C6CBD3; }
.poz-plan.poz-dark .poz-lift__adap { color: #C6CBD3; }
.poz-plan.poz-dark .poz-lift__adap i { border-color: rgba(255, 255, 255, 0.3); }
/* ——— narrow screens: one column, film first ——— */
@media (max-width: 1100px) {
  .poz-plan--lift .poz-plan__canvas { min-height: 62vh; }
  .poz-plan--lift .poz-lift__stagearea { inset: 4% 130px 12% 4%; }
  .poz-lift__scale { right: 24px; width: 96px; }
  .poz-lift__stagebar { right: 130px; left: 4%; }
  .poz-lift__adapters { grid-template-columns: 1fr; }
}

/* ============================================================================
   R6-H — lifter layout v3 (Sven, 2026-08-01): white everywhere so the clips'
   own white ground disappears into the panel (no beige, no visible film edge);
   the animation column is narrow and takes the CLIP's aspect (set from
   video.videoWidth/Height as --clip-ar), so it fills its width and is never
   cut off vertically; the big centre space is the filtered catalogue with
   large stills and the numbers underneath. Supersedes the R6-A lifter panes.
   ========================================================================== */
@media (min-width: 1101px) {
  .poz-plan--lift .poz-plan__frame {
    grid-template-columns: 272px minmax(0, 1fr) 360px;
  }
  /* R6-A un-floated the panes with position:static, which handed the scene's
     absolute box to the frame — the catalogue then spilled under the rails.
     relative keeps the pane in flow AND anchors the scene inside it. */
  .poz-plan--lift .poz-plan__canvas { position: relative; background: #fff; }
}
@media (min-width: 1500px) {
  .poz-plan--lift .poz-plan__frame { grid-template-columns: 288px minmax(0, 1fr) 400px; }
}
.poz-plan--lift .poz-plan__scene { background: #fff; }
.poz-plan--lift .poz-plan__scene::before, .poz-plan--lift .poz-plan__scene::after { display: none; }
/* ——— centre: the filtered catalogue ——— */
.poz-lift__grid {
  position: absolute; inset: 0; overflow-y: auto;
  display: grid; align-content: start;
  grid-template-columns: repeat(auto-fill, minmax(212px, 1fr));
  gap: 14px; padding: 18px;
}
.poz-lift__empty { padding: 26px; }
.poz-lift__gcard {
  display: flex; flex-direction: column; gap: 10px; padding: 12px 12px 14px;
  border: 1px solid rgba(22, 23, 27, 0.1); border-radius: 14px; background: #fff;
  cursor: pointer; text-align: left;
  transition: border-color 0.18s, box-shadow 0.18s, transform 0.18s;
}
.poz-lift__gcard:hover { border-color: #9AA0A8; transform: translateY(-2px); box-shadow: 0 18px 34px -22px rgba(20, 24, 34, 0.35); }
.poz-lift__gcard.is-on { border-color: #E0281E; box-shadow: 0 0 0 1px #E0281E inset, 0 18px 34px -22px rgba(224, 40, 30, 0.5); }
/* R8-I: the model photos are TALL - the source files run 810x1400 (aspect
   0.58) up to 1400x1336. Fitting a 0.58 portrait into a 4/3 landscape box with
   object-fit: contain scales it to the box HEIGHT, so the lifter used only
   ~43% of the card width and read as a tiny object marooned in white. A
   portrait box lets the product fill the card; 4/5 is the compromise that
   suits both the very tall ELC masts and the squarer ULK units. */
.poz-lift__gim {
  display: grid; place-items: center; width: 100%; aspect-ratio: 4 / 5;
  border-radius: 10px; background: #fff; overflow: hidden;
}
.poz-lift__gim img { width: 100%; height: 100%; object-fit: contain; display: block; }
.poz-lift__gim-ph svg { width: 42px; height: 56px; color: #C6CBD3; }
.poz-lift__gname {
  display: flex; align-items: baseline; justify-content: space-between; gap: 8px;
  font: 400 15px/1.1 var(--poz-font-display, sans-serif); color: #16171B;
}
.poz-lift__gname i {
  font: var(--poz-label, 600 10px/1 sans-serif); font-size: 8px; font-style: normal;
  letter-spacing: 0.14em; text-transform: uppercase; color: #E0281E;
}
.poz-lift__gspecs { display: grid; grid-template-columns: 1fr 1fr; gap: 6px 10px; }
.poz-lift__gspecs span { display: flex; flex-direction: column; gap: 2px; }
.poz-lift__gspecs b { font: 400 13px/1 var(--poz-font-display, sans-serif); color: #16171B; }
.poz-lift__gspecs i {
  font: 400 8.5px/1.1 var(--poz-font-mono, monospace); font-style: normal;
  color: #8A9099; text-transform: uppercase; letter-spacing: 0.06em;
}
/* ——— right column: the film sits above the datasheet ——— */
.poz-plan--lift .poz-plan__spec { flex-direction: column; }
.poz-plan--lift .poz-plan__media {
  position: static; inset: auto; width: 100%; height: auto; flex: 0 0 auto;
  border-bottom: 1px solid rgba(22, 23, 27, 0.08); background: #fff;
}
.poz-plan--lift .poz-lift__film {
  position: relative; inset: auto; display: block; background: #fff;
}
.poz-plan--lift .poz-lift__stagearea {
  position: relative; inset: auto; width: 100%;
  aspect-ratio: var(--clip-ar, 3 / 4);
  display: grid; place-items: center; overflow: hidden; background: #fff;
}
/* the clip fills the width; its own white ground continues the panel, so the
   frame edge is invisible and the animation reads as endless */
.poz-plan--lift .poz-lift__stagearea video {
  position: static; width: 100%; height: auto; max-height: 100%;
  object-fit: contain; display: block; background: #fff;
}
.poz-plan--lift .poz-lift__still {
  position: static; width: 100%; height: auto; max-height: 100%; object-fit: contain; background: #fff;
}
.poz-plan--lift .poz-lift__stagebar {
  position: static; padding: 10px 14px 12px;
  display: flex; align-items: center; justify-content: space-between; gap: 10px;
}
/* the right column scrolls as ONE piece — an inner scroll box clipped the
   stat grid halfway through a row */
.poz-plan--lift .poz-plan__spec { overflow-y: auto; }
.poz-plan--lift .poz-plan__bom { flex: 0 0 auto; overflow: visible; }
.poz-plan--lift .poz-plan__checks, .poz-plan--lift .poz-plan__spec-foot { flex: 0 0 auto; }
/* the steps strip belongs to the drawing planners — the lifter's flow is the
   catalogue itself, and the strip only covered the first row of cards */
.poz-plan--lift .poz-coach { display: none; }
.poz-plan.poz-dark.poz-plan--lift .poz-plan__canvas,
.poz-plan.poz-dark.poz-plan--lift .poz-plan__scene { background: #101216; }
.poz-plan.poz-dark .poz-lift__gcard { background: rgba(255, 255, 255, 0.05); border-color: rgba(255, 255, 255, 0.12); }
.poz-plan.poz-dark .poz-lift__gname { color: #fff; }
.poz-plan.poz-dark .poz-lift__gspecs b { color: #F2F4F6; }
@media (max-width: 1100px) {
  .poz-lift__grid { position: static; inset: auto; min-height: 50vh; }
  .poz-plan--lift .poz-plan__media { border-bottom: 0; }
}

/* ============================================================================
   R6-I — lifter, four labelled windows (Sven, 2026-08-01): the animation gets
   the widest column it can have; the picked model's datasheet drops to the
   bottom of the centre column, under the catalogue; and every window carries
   its own label so it is obvious what each one holds.
   ========================================================================== */
@media (min-width: 1101px) {
  .poz-plan--lift .poz-plan__frame { grid-template-columns: 258px minmax(0, 1fr) minmax(380px, 30vw); }
  /* the centre column stacks: label · catalogue · label · datasheet */
  .poz-plan--lift .poz-plan__canvas { display: flex; flex-direction: column; }
  .poz-plan--lift .poz-plan__scene { position: relative; inset: auto; flex: 1 1 auto; min-height: 0; }
}
@media (min-width: 1500px) {
  .poz-plan--lift .poz-plan__frame { grid-template-columns: 272px minmax(0, 1fr) minmax(440px, 32vw); }
}
/* ——— the window label ——— */
.poz-lift__wlabel {
  flex: 0 0 auto; padding: 13px 18px 11px;
  font: var(--poz-label, 600 10px/1 sans-serif); font-size: 8.5px;
  letter-spacing: 0.16em; text-transform: uppercase; color: #8A9099;
  border-bottom: 1px solid rgba(22, 23, 27, 0.07);
  background: #fff;
}
.poz-plan.poz-dark .poz-lift__wlabel { color: #8A9099; border-bottom-color: rgba(255, 255, 255, 0.08); background: transparent; }
.poz-plan--lift .poz-plan__spec .poz-lift__wlabel { border-bottom: 0; padding-bottom: 4px; }
/* ——— centre bottom: the datasheet ——— */
.poz-lift__sheet {
  flex: 0 0 auto; max-height: 46%; overflow-y: auto;
  border-top: 1px solid rgba(22, 23, 27, 0.09); background: #fff;
  display: flex; flex-direction: column;
}
.poz-plan.poz-dark .poz-lift__sheet { background: transparent; border-top-color: rgba(255, 255, 255, 0.09); }
.poz-lift__sheet .poz-plan__spec-head { display: none; }   /* the window label says it */
.poz-lift__sheet .poz-plan__bom { padding: 4px 18px 6px; }
.poz-lift__sheet .poz-plan__checks { padding: 4px 18px 10px; }
/* the enquiry button stays reachable while the sheet scrolls */
.poz-lift__sheet .poz-plan__spec-foot {
  position: sticky; bottom: 0; z-index: 2;
  padding: 10px 18px 16px; background: #fff;
  box-shadow: 0 -12px 18px -14px rgba(20, 24, 34, 0.35);
}
.poz-plan.poz-dark .poz-lift__sheet .poz-plan__spec-foot { background: #101216; }
/* on a wide sheet the datasheet reads as three columns rather than one long list */
@media (min-width: 1101px) {
  .poz-lift__sheet .poz-plan__bom { columns: 2; column-gap: 26px; }
  .poz-lift__sheet .poz-lift__hero, .poz-lift__sheet .poz-lift__stats,
  .poz-lift__sheet .poz-lift__why, .poz-lift__sheet .poz-lift__adapters,
  .poz-lift__sheet .poz-lift__sub { break-inside: avoid; }
  .poz-plan--lift .poz-lift__stats { grid-template-columns: repeat(2, 1fr); }
}
/* ——— right column: film only, as large as the column allows ——— */
.poz-plan--lift .poz-plan__spec { padding: 0; }
/* the base media layer is a centring flexbox, which sized the film to the
   video's intrinsic width — the panel must own the width instead */
.poz-plan--lift .poz-plan__media { display: block; border-bottom: 0; }
.poz-plan--lift .poz-lift__film { width: 100%; }
.poz-plan--lift .poz-lift__stagebar { padding: 8px 16px 14px; }
@media (max-width: 1100px) {
  .poz-lift__sheet { max-height: none; }
  .poz-plan--lift .poz-plan__scene { min-height: 52vh; }
}

/* ————————————————————————————————————————————————————————————
   R6-J — the Uredi tool moved into the viewport toolbar, and its options
   open in a popover AT THE CURSOR. Editing a placed item is not a step in
   building a stage: the controls belong next to the thing they act on, not
   in a rail on the far side of the screen.
   ———————————————————————————————————————————————————————————— */
.poz-plan .poz-ctx {
  position: absolute; z-index: 9; left: 0; top: 0;
  width: 250px; max-width: calc(100% - 20px);
  max-height: calc(100% - 24px); overflow-y: auto;
  padding: 12px 13px 11px;
  background: rgba(255, 255, 255, 0.9);
  -webkit-backdrop-filter: blur(22px) saturate(1.5);
  backdrop-filter: blur(22px) saturate(1.5);
  border: 1px solid rgba(22, 23, 27, 0.1);
  border-radius: 10px;
  box-shadow: 0 22px 54px -18px rgba(12, 13, 16, 0.45), 0 2px 6px -2px rgba(12, 13, 16, 0.18);
  color: var(--poz-text, #16171b);
  animation: poz-ctx-in 0.13s ease-out;
}
@keyframes poz-ctx-in {
  from { opacity: 0; transform: translateY(-4px) scale(0.985); }
  to   { opacity: 1; transform: none; }
}
@media (prefers-reduced-motion: reduce) {
  .poz-plan .poz-ctx { animation: none; }
}
.poz-plan .poz-ctx[hidden] { display: none; }
/* The popover is narrow, so its chips wrap tighter than the rail's. */
.poz-plan .poz-ctx .poz-plan__chips { gap: 4px; margin-bottom: 8px; }
.poz-plan .poz-ctx .poz-plan__chip { padding: 5px 8px; font-size: 11px; }
.poz-plan .poz-ctx .poz-plan__lbl { margin-top: 2px; }
.poz-plan .poz-ctx .poz-plan__hint { font-size: 11px; line-height: 1.5; }
.poz-plan .poz-ctx .poz-plan__mini { margin: 0 4px 4px 0; }

/* Dark viewport: the popover follows the panel skin rather than staying white. */
.poz-plan--dark .poz-ctx,
.poz-dark .poz-plan .poz-ctx {
  background: rgba(16, 17, 20, 0.86);
  border-color: rgba(217, 222, 229, 0.14);
  color: #fff;
}

/* On a phone the cursor is a thumb — dock the sheet to the bottom instead. */
@media (max-width: 700px) {
  .poz-plan .poz-ctx {
    left: 10px !important; right: 10px; top: auto !important; bottom: 10px;
    width: auto; max-height: 52%;
  }
}

/* ============================================================================
   R8-F — PHONE LAYOUT (Sven, 2026-08-01)

   The planners were a three-column desktop grid that merely narrowed; below
   900 px the PRESET BAR was `display: none`, so on a phone none of the
   templates were reachable at all — the single fastest route to a useful
   configuration was hidden exactly where it mattered most.

   The phone layout keeps the same DOM and turns the two rails into bottom
   sheets: the drawing takes the whole screen, tools and specification pull up
   over it, and everything you tap sits in the lower half of the display.
   ========================================================================== */

@media (max-width: 760px) {
  /* the drawing owns the screen; the rails stop being columns */
  .poz-plan__frame {
    grid-template-columns: 1fr;
    grid-template-rows: 1fr;
    min-height: 0;
    height: calc(100dvh - var(--poz-plan-chrome, 132px));
  }
  .poz-plan__canvas { grid-column: 1; grid-row: 1; min-height: 0; }

  /* TEMPLATES BACK ON THE PHONE — a snapping, momentum-scrolled chip rail.
     This is the whole point of the block: they were hidden below 900 px. */
  .poz-plan__presetbar {
    display: flex; gap: 8px;
    overflow-x: auto; overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    scroll-snap-type: x proximity;
    scrollbar-width: none;
    padding: 8px 12px calc(8px + env(safe-area-inset-bottom, 0px));
    flex-wrap: nowrap;
  }
  .poz-plan__presetbar::-webkit-scrollbar { display: none; }
  .poz-plan__presetbar-lb { display: none; }
  .poz-plan__pchip {
    scroll-snap-align: start;
    flex: 0 0 auto;
    min-height: 44px; padding: 11px 14px;
    font-size: 12.5px;
  }

  /* tools + spec become bottom sheets over the drawing */
  .poz-plan__tools, .poz-plan__spec {
    position: fixed; left: 0; right: 0; bottom: 0;
    z-index: 40;
    max-height: 74dvh;
    overflow-y: auto; -webkit-overflow-scrolling: touch;
    border: 0; border-top: 1px solid var(--poz-line);
    border-radius: 14px 14px 0 0;
    box-shadow: 0 -10px 34px rgba(12, 13, 16, 0.18);
    transition: transform 220ms cubic-bezier(0.22, 0.61, 0.36, 1);
    padding-bottom: env(safe-area-inset-bottom, 0px);
  }

  /* the 52 px that stays on screen is the sheet's own header — it is the
     handle, so no extra affordance has to be invented */
  .poz-plan__tools-head, .poz-plan__spec-head {
    position: sticky; top: 0; z-index: 2;
    min-height: 52px; display: flex; align-items: center;
    background: inherit;
    -webkit-backdrop-filter: blur(18px); backdrop-filter: blur(18px);
    cursor: pointer;
  }
  .poz-plan__tools-head::after, .poz-plan__spec-head::after {
    content: ''; position: absolute; top: 7px; left: 50%;
    width: 34px; height: 4px; margin-left: -17px; border-radius: 999px;
    background: currentColor; opacity: 0.22;
  }
  /* Two sheets peeking at the same corner fought each other: the spec header
     landed on top of the tools header, so `elementFromPoint` at the tools
     header returned the SPEC head and the tools sheet could not be opened at
     all. They now peek at DIFFERENT heights — tools above spec — and the open
     one is lifted out of the stack entirely. */
  .poz-plan__tools { transform: translateY(calc(100% - 104px)); z-index: 41; }
  .poz-plan__spec  { transform: translateY(calc(100% - 52px)); z-index: 40; }
  .poz-plan__tools.is-open, .poz-plan__spec.is-open { transform: translateY(0); z-index: 42; }
  /* while one is open the other drops out of reach so it cannot intercept */
  .poz-plan__tools.is-open ~ .poz-plan__spec,
  .poz-plan__spec.is-open ~ .poz-plan__tools { transform: translateY(100%); }

  /* thumb reach: the floating viewport toolbar becomes a bottom row, clear of
     the two peeking sheets */
  .poz-plan .poz-tb {
    top: auto !important; left: 50% !important; right: auto !important;
    bottom: calc(164px + env(safe-area-inset-bottom, 0px));
    transform: translateX(-50%);
    flex-direction: row; gap: 2px;
    max-width: calc(100vw - 24px); overflow-x: auto;
    scrollbar-width: none;
  }
  .poz-plan .poz-tb::-webkit-scrollbar { display: none; }
  .poz-plan .poz-tb > * { min-width: 46px; }

  /* touch targets — 44 px is the floor, chips were as small as 28 px */
  .poz-plan__chip, .poz-plan__tool, .poz-plan__spec-links a,
  .poz-plan__spec-links button, [data-view], [data-zoom] {
    min-height: 44px;
  }
  [data-view], [data-zoom] { min-width: 44px; }

  /* condensed header — the tagline and the file line are desktop luxuries */
  .poz-plan-head__h1 { font-size: 17px; line-height: 1.25; }
  .poz-plan__file { font-size: 10px; }
  .poz-plan__bar--bottom .poz-plan__legend { display: none; }
}

/* tablet — keep two columns, drop the third rather than crushing all three */
@media (min-width: 761px) and (max-width: 1100px) {
  .poz-plan__frame { grid-template-columns: 232px minmax(0, 1fr); }
  /* the old `max-width: 900px -> display:none` rule was still hiding the
     templates on every small tablet; they are the fastest route to a working
     configuration and belong on a tablet more than anywhere */
  .poz-plan__presetbar {
    display: flex; gap: 8px; flex-wrap: nowrap;
    overflow-x: auto; -webkit-overflow-scrolling: touch;
    scroll-snap-type: x proximity; scrollbar-width: none;
  }
  .poz-plan__presetbar::-webkit-scrollbar { display: none; }
  .poz-plan__pchip { scroll-snap-align: start; flex: 0 0 auto; min-height: 44px; }
  /* a tablet is a touch device — the same 44 px floor applies */
  .poz-plan__chip, .poz-plan__tool, [data-view], [data-zoom] { min-height: 44px; }
  [data-view], [data-zoom] { min-width: 44px; }
  .poz-plan__spec {
    position: fixed; right: 0; top: auto; bottom: 0; left: 0;
    z-index: 40; max-height: 68dvh; overflow-y: auto;
    border-top: 1px solid var(--poz-line);
    border-radius: 14px 14px 0 0;
    box-shadow: 0 -10px 34px rgba(12, 13, 16, 0.16);
    transform: translateY(calc(100% - 52px));
    transition: transform 220ms cubic-bezier(0.22, 0.61, 0.36, 1);
  }
  .poz-plan__spec.is-open { transform: translateY(0); }
  .poz-plan__spec-head { position: sticky; top: 0; min-height: 52px; display: flex; align-items: center; cursor: pointer; }
}

/* R8-G - touch gestures and the tap-to-place confirmation.
   The canvas claims its own gestures below the tablet breakpoint so a one-
   finger orbit and a two-finger pinch are not stolen by page scroll. On the
   phone the planner viewport is already a fixed-height region, so nothing is
   lost by doing this - there is no page scroll inside it to preserve. */
@media (max-width: 1100px) {
  .poz-plan [data-gl], .poz-plan [data-svg2d],
  [data-scene] [data-gl], [data-scene] [data-svg2d] { touch-action: none; }
}
.poz-place {
  position: absolute; z-index: 30;
  transform: translate(-50%, -140%);
  display: flex; align-items: stretch; gap: 1px;
  background: rgba(255, 255, 255, 0.92);
  -webkit-backdrop-filter: blur(22px) saturate(1.5); backdrop-filter: blur(22px) saturate(1.5);
  border: 1px solid rgba(22, 23, 27, 0.14);
  border-radius: 999px; overflow: hidden;
  box-shadow: 0 10px 28px rgba(12, 13, 16, 0.22);
  font: var(--poz-label); font-size: 12.5px;
}
.poz-place button {
  border: 0; background: transparent; color: #16171B;
  padding: 0 16px; min-height: 44px; font: inherit; cursor: pointer; white-space: nowrap;
}
.poz-place [data-place-no] { padding: 0 14px; font-size: 17px; color: #7A7F87; border-left: 1px solid rgba(22, 23, 27, 0.12); }
.poz-place button:active { background: rgba(22, 23, 27, 0.07); }
.poz-plan.poz-dark .poz-place { background: rgba(20, 22, 26, 0.9); border-color: rgba(255, 255, 255, 0.16); }
.poz-plan.poz-dark .poz-place button { color: #EDEFF2; }
.poz-plan.poz-dark .poz-place [data-place-no] { color: #9AA0A8; border-left-color: rgba(255, 255, 255, 0.14); }
/* R8-I: first-frame fallback thumbnail for models with footage but no still. */
.poz-lift__gim video { width: 100%; height: 100%; object-fit: contain; display: block; background: #fff; }

/* ============================================================================
   R8-J — lifter: parameters across the top, datasheet left, models centre
   (Sven, 2026-08-01)

   The three parameters are the QUESTION, the filtered models are the ANSWER and
   the datasheet is the DETAIL. Putting the question on a full-width strip frees
   the centre column to show nothing but matching models, and moves the detail
   into the left rail where the sliders used to sit.
   ========================================================================== */

.poz-lift__top {
  grid-column: 1 / -1;
  border-bottom: 1px solid var(--poz-line);
  background: rgba(250, 251, 253, 0.94);
  -webkit-backdrop-filter: blur(18px); backdrop-filter: blur(18px);
}
.poz-lift__topinner { padding: 12px 18px; }
/* the three sliders and the series filter lie side by side; the series chips
   take whatever is left so the sliders keep equal, predictable widths */
.poz-lift__top .poz-plan__panel {
  display: grid; grid-template-columns: repeat(3, minmax(150px, 1fr)) minmax(180px, 1.4fr);
  gap: 10px 22px; align-items: end; padding: 0; border: 0; background: none;
}
.poz-lift__top .poz-plan__panel[hidden] { display: grid !important; }
.poz-lift__top .poz-lift__sl { margin: 0; }
.poz-lift__top .poz-plan__lbl { display: flex; justify-content: space-between; gap: 8px; }
.poz-lift__top .poz-plan__chips { display: flex; flex-wrap: wrap; gap: 6px; }
.poz-lift__top .poz-plan__lb { margin: 0 0 4px; }

/* left rail is now the datasheet — it scrolls on its own, the page does not */
.poz-plan--lift .poz-plan__tools { overflow-y: auto; }
.poz-plan--lift .poz-plan__tools .poz-lift__sheet {
  max-height: none; border: 0; padding: 0 14px 16px;
}
.poz-plan--lift .poz-plan__tools .poz-lift__sheet .poz-lift__wlabel { display: none; }

/* centre: models only, so give them room and a comfortable column count */
.poz-plan--lift [data-modelgrid] { padding-bottom: 18px; }
@media (min-width: 1101px) {
  .poz-plan--lift .poz-lift__grid { grid-template-columns: repeat(auto-fill, minmax(190px, 1fr)); }
}

@media (max-width: 900px) {
  .poz-lift__top .poz-plan__panel { grid-template-columns: 1fr 1fr; gap: 10px 16px; }
}
@media (max-width: 560px) {
  .poz-lift__top .poz-plan__panel { grid-template-columns: 1fr; }
  .poz-lift__topinner { padding: 10px 12px; }
}

/* R8-J follow-up: the datasheet was authored for the WIDE centre column and it
   breaks in a 258 px rail — the model name wrapped to three lines, the 2x2 stat
   grid clipped its own labels, and the why/adapters columns collapsed into each
   other. In the rail it becomes a single column with rail-sized type. */
@media (min-width: 1101px) {
  .poz-plan--lift .poz-plan__frame { grid-template-columns: 316px minmax(0, 1fr) minmax(380px, 30vw); }
}
@media (min-width: 1500px) {
  .poz-plan--lift .poz-plan__frame { grid-template-columns: 340px minmax(0, 1fr) minmax(440px, 32vw); }
}
.poz-plan--lift .poz-plan__tools .poz-lift__sheet .poz-lift__hero-name {
  font-size: 24px; line-height: 1.05; word-break: normal; hyphens: none;
}
/* stats: two columns is fine, but they need real room and no clipping */
.poz-plan--lift .poz-plan__tools .poz-lift__stats { margin: 0 0 16px; }
.poz-plan--lift .poz-plan__tools .poz-lift__stat { padding: 11px 10px 10px; min-width: 0; }
.poz-plan--lift .poz-plan__tools .poz-lift__stat b { font-size: 17px; }
.poz-plan--lift .poz-plan__tools .poz-lift__stat span,
.poz-plan--lift .poz-plan__tools .poz-lift__stat i {
  font-size: 8.5px; letter-spacing: 0.08em; white-space: nowrap;
  overflow: hidden; text-overflow: ellipsis; display: block;
}
/* anything that was a side-by-side pair in the wide layout stacks here */
.poz-plan--lift .poz-plan__tools .poz-lift__adapters { grid-template-columns: 1fr; gap: 6px; }
.poz-plan--lift .poz-plan__tools .poz-lift__ds,
.poz-plan--lift .poz-plan__tools .poz-lift__sheet > div { min-width: 0; }
.poz-plan--lift .poz-plan__tools .poz-lift__why li { font-size: 11.5px; line-height: 1.45; }
/* undo/reset belong to the drawing tools, not to a read-only datasheet */
.poz-plan--lift .poz-plan__tools-actions { display: none; }

/* R8-J: kill the wide-sheet multi-column treatment when the datasheet is in the
   rail. `columns: 2` on the BOM is what split the hero/stats away from the
   why-list and adapters, and it is what squeezed the stat boxes until their own
   values clipped ("4,00 r", "maks…"). In a rail it is one column, full stop. */
.poz-plan--lift .poz-plan__tools .poz-lift__sheet .poz-plan__bom {
  columns: 1 !important; column-gap: 0; padding: 4px 0 6px;
}
.poz-plan--lift .poz-plan__tools .poz-lift__sheet .poz-plan__checks { padding: 4px 0 10px; }
.poz-plan--lift .poz-plan__tools .poz-lift__stats { grid-template-columns: 1fr 1fr !important; }
.poz-plan--lift .poz-plan__tools .poz-lift__stat b { white-space: nowrap; }
.poz-plan--lift .poz-plan__tools .poz-lift__stat span,
.poz-plan--lift .poz-plan__tools .poz-lift__stat i { text-overflow: clip; }
.poz-plan--lift .poz-plan__tools .poz-lift__sheet .poz-plan__spec-foot { padding-left: 0; padding-right: 0; }
/* the tools rail head keeps its title but loses the drawing-tool buttons */
.poz-plan--lift .poz-plan__tools-head .poz-plan__tools-actions,
.poz-plan--lift .poz-plan__tools-foot { display: none; }

/* ============================================================================
   R8-K - lifter: the three parameters are the main control (Sven, 2026-08-01)

   They were sized like a sidebar detail. They are the thing the visitor came to
   move, so they get display-scale numbers, a proper track and room to breathe.
   The spec block below them was a grid of rounded cards nested inside another
   rounded card, which produced a visible notch where the four corners met; it
   is now flat and typographic, in keeping with the rest of the system.
   ========================================================================== */

.poz-lift__topinner { padding: 16px 18px 18px; }
.poz-lift__top .poz-plan__panel {
  grid-template-columns: repeat(3, minmax(190px, 1fr)) minmax(170px, 0.9fr);
  gap: 14px 30px; align-items: start;
}
.poz-lift__top .poz-lift__sl { display: flex; flex-direction: column; gap: 8px; }
/* label left, live value right - the value is the number that matters, so it
   is set at display scale rather than as a footnote on the label */
.poz-lift__top .poz-plan__lbl {
  display: flex; align-items: baseline; justify-content: space-between; gap: 10px;
  font: var(--poz-label); font-size: 11px; letter-spacing: 0.12em;
  text-transform: uppercase; color: #5A5F67; margin: 0;
}
.poz-lift__top .poz-plan__lbl output {
  font: 400 clamp(20px, 1.7vw, 26px)/1 var(--poz-font-display, sans-serif);
  letter-spacing: 0.01em; color: #16171B; text-transform: none;
}
/* a track you can actually hit - 26 px of vertical target, 6 px of rail */
.poz-lift__top .poz-plan__range {
  -webkit-appearance: none; appearance: none;
  width: 100%; height: 26px; background: transparent; cursor: pointer; margin: 0;
}
.poz-lift__top .poz-plan__range::-webkit-slider-runnable-track {
  height: 6px; border-radius: 999px; background: rgba(22, 23, 27, 0.12);
}
.poz-lift__top .poz-plan__range::-moz-range-track {
  height: 6px; border-radius: 999px; background: rgba(22, 23, 27, 0.12);
}
.poz-lift__top .poz-plan__range::-webkit-slider-thumb {
  -webkit-appearance: none; appearance: none;
  width: 22px; height: 22px; margin-top: -8px; border-radius: 50%;
  background: #16171B; border: 3px solid #fff;
  box-shadow: 0 2px 8px rgba(12, 13, 16, 0.3);
}
.poz-lift__top .poz-plan__range::-moz-range-thumb {
  width: 22px; height: 22px; border-radius: 50%;
  background: #16171B; border: 3px solid #fff;
  box-shadow: 0 2px 8px rgba(12, 13, 16, 0.3);
}
.poz-lift__top .poz-plan__range:focus-visible { outline: none; }
.poz-lift__top .poz-plan__range:focus-visible::-webkit-slider-thumb { box-shadow: 0 0 0 4px rgba(224, 40, 30, 0.35); }
.poz-lift__top .poz-plan__lb { font-size: 11px; letter-spacing: 0.12em; margin: 0 0 8px; }
.poz-lift__top .poz-plan__chip { min-height: 38px; padding: 9px 16px; font-size: 12.5px; }

/* --- the spec block: flat, hairline-ruled, no nested cards --- */
.poz-plan--lift .poz-plan__tools .poz-lift__stats {
  display: grid; grid-template-columns: 1fr 1fr;
  gap: 0; margin: 2px 0 20px;
  background: none; border: 0; border-top: 1px solid var(--poz-line, rgba(22,23,27,.12));
  border-radius: 0; overflow: visible;
}
.poz-plan--lift .poz-plan__tools .poz-lift__stat {
  background: none; border: 0;
  border-bottom: 1px solid var(--poz-line, rgba(22,23,27,.12));
  border-radius: 0; padding: 12px 0 11px; min-width: 0;
}
.poz-plan--lift .poz-plan__tools .poz-lift__stat:nth-child(odd) { padding-right: 14px; }
.poz-plan--lift .poz-plan__tools .poz-lift__stat:nth-child(even) {
  padding-left: 14px; border-left: 1px solid var(--poz-line, rgba(22,23,27,.12));
}
.poz-plan--lift .poz-plan__tools .poz-lift__stat b {
  display: block; white-space: nowrap;
  font: 400 22px/1.05 var(--poz-font-display, sans-serif);
  letter-spacing: 0.01em; color: #16171B;
}
.poz-plan--lift .poz-plan__tools .poz-lift__stat span,
.poz-plan--lift .poz-plan__tools .poz-lift__stat i {
  display: block; margin-top: 5px; font-style: normal;
  font: var(--poz-label); font-size: 9.5px; letter-spacing: 0.11em;
  text-transform: uppercase; color: #7A7F87;
  white-space: nowrap; overflow: hidden; text-overflow: clip;
}
.poz-plan.poz-dark .poz-plan--lift .poz-plan__tools .poz-lift__stat b,
.poz-plan--lift.poz-dark .poz-plan__tools .poz-lift__stat b { color: #F2F4F6; }
/* R8-K: the series filter is a label + a chip row, i.e. TWO grid children, so
   it flowed into cells 4 and 5 and pushed its own chips onto a second row while
   the label sat stranded beside the sliders. Both are pinned to column 4. */
.poz-lift__top .poz-plan__panel { grid-template-rows: auto auto; }
.poz-lift__top .poz-plan__panel > .poz-lift__sl { grid-row: 1 / 3; align-self: start; }
.poz-lift__top .poz-plan__panel > .poz-plan__lb { grid-column: 4 / 5; grid-row: 1 / 2; }
.poz-lift__top .poz-plan__panel > .poz-plan__chips { grid-column: 4 / 5; grid-row: 2 / 3; align-self: start; }

/* R8-L - animated filtering. Cards are reconciled rather than rebuilt, so these
   transitions have something stable to run on: a card that stays keeps its node
   and slides (FLIP sets the transform, this transitions it back to zero), one
   that stops matching collapses out, one that starts matching grows in. */
.poz-lift__gcard {
  transition: transform 320ms cubic-bezier(0.22, 0.61, 0.36, 1),
              opacity 200ms ease,
              border-color 0.18s, box-shadow 0.18s;
  will-change: transform;
}
.poz-lift__gcard.is-out {
  display: none;
  opacity: 0; transform: scale(0.94);
  pointer-events: none;
}
/* the count label ticks over with the grid rather than jumping */
.poz-plan--lift .poz-plan__file { transition: opacity 160ms ease; }
@media (prefers-reduced-motion: reduce) {
  .poz-lift__gcard { transition: none; will-change: auto; }
}
/* R8-L: grow-in for a card that re-enters the matching set */
@keyframes pozCardIn { from { opacity: 0; transform: scale(0.93); } to { opacity: 1; transform: none; } }
.poz-lift__gcard.is-in { animation: pozCardIn 260ms cubic-bezier(0.22, 0.61, 0.36, 1) both; }
@media (prefers-reduced-motion: reduce) { .poz-lift__gcard.is-in { animation: none; } }

/* ——— mode entry (restored 2026-08-26): dark glass cover over the frame,
   two glass cards — Vodič and Studio — in the house language ——— */
.poz-plan__frame { position: relative; }
.poz-plan__entry { position: absolute; inset: 0; z-index: 60; display: flex; align-items: center; justify-content: center; padding: 24px; background: rgba(10, 12, 15, 0.88); backdrop-filter: blur(16px); -webkit-backdrop-filter: blur(16px); border-radius: inherit; }
.poz-plan__entry-title { margin: 0 0 28px; text-align: center; font: 400 16px/1.4 var(--poz-font-display, Michroma, sans-serif); color: #fff; letter-spacing: 0.02em; }
.poz-plan__entry-card { display: block; width: 100%; text-align: left; padding: 26px 26px 30px; border: 1px solid rgba(255, 255, 255, 0.16); border-radius: 18px; background: linear-gradient(150deg, rgba(255, 255, 255, 0.09), rgba(255, 255, 255, 0.03)); box-shadow: 0 18px 44px rgba(0, 0, 0, 0.35); cursor: pointer; transition: border-color 0.25s ease, background-color 0.25s ease; }
.poz-plan__entry-card:hover { border-color: var(--acc, #5E93D6); background: rgba(255, 255, 255, 0.13); }
.poz-plan__entry-card:focus-visible { outline: 2px solid var(--acc, #5E93D6); outline-offset: 3px; }

/* ═════════ STUDIO SHELL — canvas direction A: the planner is the screen ═════════
   Dark full-bleed viewport, floating white panels, camera dock. Scoped to
   .poz-plan--studio so the other planners keep the panel-grid shell until
   they migrate. Desktop-only layout — below 901px the stacked shell holds. */

.poz-plan.poz-plan--studio { padding: 0; background: #0C0D10; }

@media (min-width: 901px) {
  .poz-plan.poz-plan--studio { position: relative; height: calc(100svh - 84px); min-height: 640px; }
  .poz-plan.poz-plan--studio .poz-plan__frame {
    position: absolute; inset: 0; display: block;
    width: 100%; max-width: none; margin: 0; padding: 0;
  }
  .poz-plan.poz-plan--studio .poz-plan__canvas {
    position: absolute; inset: 0; display: block; border: 0; border-radius: 0;
    background: radial-gradient(ellipse at 50% 36%, #171A20 0%, #0C0D10 58%, #08090C 100%);
    overflow: hidden;
  }
  .poz-plan.poz-plan--studio .poz-plan__scene { position: absolute; inset: 0; height: auto; }

  /* —— top bar: title chip · view pills · undo/reset + CTA —— */
  .poz-plan.poz-plan--studio .poz-plan__bar--top {
    position: absolute; z-index: 30; top: 14px; left: 18px; right: 18px;
    display: flex; align-items: center; gap: 12px;
    padding: 0; background: none; border: 0; box-shadow: none; pointer-events: none;
  }
  .poz-plan.poz-plan--studio .poz-plan__bar--top > * { pointer-events: auto; }
  .poz-plan.poz-plan--studio .poz-plan__titlechip {
    display: inline-flex; align-items: baseline; gap: 10px; padding: 12px 16px;
    border: 0; border-radius: 12px; background: rgba(255,255,255,0.94); color: #0C0D10;
    box-shadow: 0 14px 34px rgba(0,0,0,0.35);
    font-family: 'Michroma', var(--poz-font-head, sans-serif); font-size: 10.5px;
    letter-spacing: 0.08em; text-transform: uppercase; white-space: nowrap;
  }
  .poz-plan.poz-plan--studio .poz-plan__titlechip b { font-weight: 400; }
  .poz-plan.poz-plan--studio .poz-plan__titlechip .poz-plan__file {
    font-family: 'IBM Plex Mono', ui-monospace, monospace; font-size: 9.5px;
    letter-spacing: 0.12em; color: #8494A1;
  }
  .poz-plan.poz-plan--studio .poz-plan__views {
    position: absolute; left: 50%; top: 0; transform: translateX(-50%);
    display: inline-flex; gap: 2px; padding: 4px; border: 0; border-radius: 999px;
    background: rgba(255,255,255,0.94); box-shadow: 0 14px 34px rgba(0,0,0,0.35);
  }
  .poz-plan.poz-plan--studio .poz-plan__view {
    border: 0; background: none; color: #46525F; padding: 9px 18px; border-radius: 999px;
    font-family: 'Michroma', sans-serif; font-size: 9.5px; letter-spacing: 0.1em;
    text-transform: uppercase; cursor: pointer; transition: background 0.18s, color 0.18s;
  }
  .poz-plan.poz-plan--studio .poz-plan__view:hover { color: #0C0D10; }
  .poz-plan.poz-plan--studio .poz-plan__view.is-on { background: #0C0D10; color: #fff; }
  .poz-plan.poz-plan--studio .poz-plan__view svg { display: none; }
  .poz-plan.poz-plan--studio .poz-plan__presetbar { display: none !important; }
  .poz-plan.poz-plan--studio .poz-plan__topact { margin-left: auto; display: inline-flex; align-items: center; gap: 8px; }
  .poz-plan.poz-plan--studio .poz-plan__iconb {
    width: 42px; height: 42px; display: grid; place-items: center; border: 0; border-radius: 12px;
    background: rgba(255,255,255,0.94); color: #1C242C; cursor: pointer;
    box-shadow: 0 14px 34px rgba(0,0,0,0.35); transition: background 0.18s;
  }
  .poz-plan.poz-plan--studio .poz-plan__iconb:hover { background: #fff; }
  .poz-plan.poz-plan--studio .poz-plan__iconb svg { width: 17px; height: 17px; }
  .poz-plan.poz-plan--studio .poz-plan__send--top {
    padding: 13px 20px; border: 0; border-radius: 12px;
    font-family: 'Michroma', sans-serif; font-size: 9.5px; letter-spacing: 0.11em;
    background: #0066CC; color: #fff; box-shadow: 0 12px 30px rgba(0,80,160,0.45);
    transition: background 0.18s, transform 0.18s;
  }
  .poz-plan.poz-plan--studio .poz-plan__send--top:hover { background: #0074E8; transform: translateY(-1px); }

  /* —— floating panels: tools left, spec right —— */
  .poz-plan.poz-plan--studio .poz-plan__tools,
  .poz-plan.poz-plan--studio .poz-plan__spec {
    position: absolute; z-index: 25; top: 72px; bottom: 92px;
    display: flex; flex-direction: column; border: 0; border-radius: 16px;
    background: rgba(255,255,255,0.96); color: #0C0D10;
    box-shadow: 0 18px 44px rgba(0,0,0,0.42);
    -webkit-backdrop-filter: blur(14px); backdrop-filter: blur(14px);
    overflow: hidden; max-height: none;
  }
  .poz-plan.poz-plan--studio .poz-plan__tools { left: 18px; width: 272px; }
  .poz-plan.poz-plan--studio .poz-plan__spec { right: 18px; width: 332px; }
  .poz-plan.poz-plan--studio .poz-plan__toollist { flex: 0 0 auto; }
  .poz-plan.poz-plan--studio .poz-plan__panels { flex: 1 1 auto; overflow: auto; }
  .poz-plan.poz-plan--studio .poz-plan__bom { flex: 1 1 auto; overflow: auto; }
  .poz-plan.poz-plan--studio .poz-plan__tools-head .poz-plan__mini[data-undo],
  .poz-plan.poz-plan--studio .poz-plan__tools-head .poz-plan__mini[data-reset] { display: none; }
  .poz-plan.poz-plan--studio .poz-plan__spec-foot .poz-plan__send { display: none; }

  /* —— docking —— */
  .poz-plan.poz-plan--studio [data-planner-grid].is-tools-docked .poz-plan__tools { display: none; }
  .poz-plan.poz-plan--studio [data-planner-grid].is-spec-docked .poz-plan__spec { display: none; }
  .poz-plan.poz-plan--studio .poz-plan__restore { position: absolute; z-index: 25; top: 50%; transform: translateY(-50%); }
  .poz-plan.poz-plan--studio .poz-plan__restore--tools { left: 18px; }
  .poz-plan.poz-plan--studio .poz-plan__restore--spec { right: 18px; }

  /* —— rig bar → bottom camera dock —— */
  .poz-plan.poz-plan--studio .poz-tb {
    left: 50%; right: auto; top: auto; bottom: 18px; transform: translateX(-50%);
    z-index: 26; flex-direction: row; align-items: center; gap: 2px; padding: 6px;
    border: 0; border-radius: 999px; background: rgba(255,255,255,0.95);
    box-shadow: 0 16px 40px rgba(0,0,0,0.45);
  }
  .poz-plan.poz-plan--studio .poz-tb button { color: #39465A; border-radius: 999px; }
  .poz-plan.poz-plan--studio .poz-tb button.is-on { background: #0C0D10; color: #fff; }
  .poz-plan.poz-plan--studio .poz-tb__sep { width: 1px; height: 20px; align-self: center; background: rgba(70,82,95,0.22); }

  /* —— bottom-left: the quiet hint line —— */
  .poz-plan.poz-plan--studio .poz-plan__bar--bottom {
    position: absolute; z-index: 24; left: 18px; right: auto; bottom: 22px;
    display: flex; gap: 14px; padding: 0; background: none; border: 0; box-shadow: none;
    color: #6C7683; font-family: 'IBM Plex Mono', ui-monospace, monospace;
    font-size: 9.5px; letter-spacing: 0.12em; text-transform: uppercase; pointer-events: none;
  }
  .poz-plan.poz-plan--studio .poz-plan__zoom { display: none; }

  /* —— coach + assistant find their studio spots —— */
  .poz-plan.poz-plan--studio .poz-coach { top: 68px; z-index: 22; }
  .poz-plan.poz-plan--studio .poz-assist { right: auto; left: 18px; bottom: 48px; z-index: 24; }
  .poz-plan.poz-plan--studio [data-planner-grid]:not(.is-tools-docked) .poz-assist { left: 306px; }
}

@media (max-width: 900px) {
  .poz-plan.poz-plan--studio .poz-plan__titlechip,
  .poz-plan.poz-plan--studio .poz-plan__topact { display: none; }
}
/* studio: the 3D stage is dark; the 2D sheet stays technical paper */
@media (min-width: 901px) {
  .poz-plan.poz-plan--studio .poz-plan__scene.is-3d {
    background: radial-gradient(120% 90% at 50% 36%, #171A20 0%, #0C0D10 58%, #08090C 100%);
  }
  .poz-plan.poz-plan--studio .poz-plan__scene.is-3d::before { display: none; }
  .poz-plan.poz-plan--studio .poz-assist { left: 18px; bottom: 46px; }
  .poz-plan.poz-plan--studio [data-planner-grid]:not(.is-tools-docked) .poz-assist { left: 18px; }
}
/* studio refinements (Sven live round 1): both themes, working panel scroll,
   readable sizes. Light studio = paper viewport; dark adds .poz-studio-dark. */
@media (min-width: 901px) {
  /* theme split — the panels are white in both; only the stage flips */
  .poz-plan.poz-plan--studio .poz-plan__canvas { background: #EFF1F4; }
  .poz-plan.poz-plan--studio .poz-plan__scene.is-3d {
    background: radial-gradient(120% 90% at 50% 30%, #FFFFFF 0%, #EDEFF2 62%, #E3E6EA 100%);
  }
  .poz-plan.poz-plan--studio .poz-plan__scene.is-3d::before { display: block; }
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__canvas { background: #0C0D10; }
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__scene.is-3d {
    background: radial-gradient(120% 90% at 50% 36%, #171A20 0%, #0C0D10 58%, #08090C 100%);
  }
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__scene.is-3d::before { display: none; }

  /* hairline so the white cards read on the light stage too */
  .poz-plan.poz-plan--studio .poz-plan__tools,
  .poz-plan.poz-plan--studio .poz-plan__spec,
  .poz-plan.poz-plan--studio .poz-plan__titlechip,
  .poz-plan.poz-plan--studio .poz-plan__views,
  .poz-plan.poz-plan--studio .poz-plan__iconb,
  .poz-plan.poz-plan--studio .poz-tb { border: 1px solid rgba(20, 30, 42, 0.08); }

  /* the whole panel scrolls — no nested scroll traps */
  .poz-plan.poz-plan--studio .poz-plan__tools,
  .poz-plan.poz-plan--studio .poz-plan__spec { display: block; overflow-y: auto; overscroll-behavior: contain; }
  .poz-plan.poz-plan--studio .poz-plan__toollist,
  .poz-plan.poz-plan--studio .poz-plan__panels,
  .poz-plan.poz-plan--studio .poz-plan__bom { flex: none; overflow: visible; max-height: none; }

  /* readable sizes — the micro-mono look stays on labels, not on content */
  .poz-plan.poz-plan--studio .poz-plan__view { font-size: 11px; padding: 10px 20px; }
  .poz-plan.poz-plan--studio .poz-plan__titlechip { font-size: 11.5px; }
  .poz-plan.poz-plan--studio .poz-plan__titlechip .poz-plan__file { font-size: 10.5px; }
  .poz-plan.poz-plan--studio .poz-plan__send--top { font-size: 10.5px; padding: 14px 22px; }
  .poz-plan.poz-plan--studio .poz-plan__bar--bottom { font-size: 10.5px; color: #7C8794; }
  .poz-plan.poz-plan--studio .poz-plan__tools-title { font-size: 12.5px; }
  .poz-plan.poz-plan--studio .poz-plan__mini { font-size: 11px; }
  .poz-plan.poz-plan--studio .poz-tb button { min-width: 48px; padding: 7px 9px; }
  .poz-plan.poz-plan--studio .poz-tb__lb { font-size: 9.5px; letter-spacing: 0.08em; }
}
/* studio: obvious tools — bigger names, clear steps; toggle joins the capsule */
@media (min-width: 901px) {
  .poz-plan.poz-plan--studio .poz-plan__tool-name { font-size: 13.5px; font-weight: 600; letter-spacing: 0.01em; text-transform: none; }
  .poz-plan.poz-plan--studio .poz-plan__tool-sub { font-size: 11px; letter-spacing: 0.02em; }
  .poz-plan.poz-plan--studio .poz-plan__tool-num { font-size: 11px; }
  .poz-plan.poz-plan--studio .poz-plan__lbl { font-size: 10.5px; letter-spacing: 0.1em; }
  .poz-plan.poz-plan--studio .poz-plan__hint { font-size: 11px; line-height: 1.5; }
  .poz-plan.poz-plan--studio .poz-plan__tool { padding-top: 12px; padding-bottom: 12px; }
  .poz-plan.poz-plan--studio .poz-plan__theme {
    position: static; width: 38px; height: 38px; margin-left: 2px;
    display: grid; place-items: center; border: 0; border-radius: 999px;
    background: none; color: #46525F; box-shadow: none; cursor: pointer;
  }
  .poz-plan.poz-plan--studio .poz-plan__theme:hover { background: rgba(12, 13, 16, 0.07); color: #0C0D10; }
  .poz-plan.poz-plan--studio .poz-plan__theme svg { width: 16px; height: 16px; }
}
/* studio: the theme toggle docks left of the undo cluster, styled like it */
@media (min-width: 901px) {
  .poz-plan.poz-plan--studio .poz-plan__theme {
    order: 5; margin-left: auto; width: 42px; height: 42px; border-radius: 12px;
    background: rgba(255,255,255,0.94); color: #1C242C;
    border: 1px solid rgba(20, 30, 42, 0.08); box-shadow: 0 14px 34px rgba(0,0,0,0.35);
  }
  .poz-plan.poz-plan--studio .poz-plan__theme:hover { background: #fff; color: #0C0D10; }
  .poz-plan.poz-plan--studio .poz-plan__topact { order: 6; margin-left: 0; }
}
/* studio: step headers readable; the title chip yields on narrower desktops */
@media (min-width: 901px) {
  .poz-plan.poz-plan--studio .poz-plan__toolgroup { font-size: 10.5px; letter-spacing: 0.09em; }
}
@media (min-width: 901px) and (max-width: 1280px) {
  .poz-plan.poz-plan--studio .poz-plan__titlechip .poz-plan__file { display: none; }
}
@media (min-width: 901px) and (max-width: 1120px) {
  .poz-plan.poz-plan--studio .poz-plan__titlechip { display: none; }
}
/* studio round 2 (Sven): apple-glass chrome, dark glass in dark mode, full
   laptop-height workspace, redesigned dock, logo watermark, bigger text */
@media (min-width: 901px) {
  /* the workspace claims the whole screen; the fixed header floats over it */
  .poz-plan.poz-plan--studio { margin-top: -124px; height: 100svh; min-height: 700px; }
  .poz-plan.poz-plan--studio .poz-plan__bar--top { top: 112px; }
  .poz-plan.poz-plan--studio .poz-plan__tools,
  .poz-plan.poz-plan--studio .poz-plan__spec { top: 172px; bottom: 96px; }
  .poz-plan.poz-plan--studio .poz-coach { top: 168px; }

  /* —— glass chrome, light —— */
  .poz-plan.poz-plan--studio .poz-plan__tools,
  .poz-plan.poz-plan--studio .poz-plan__spec {
    background: rgba(251, 252, 254, 0.66);
    -webkit-backdrop-filter: blur(28px) saturate(1.6); backdrop-filter: blur(28px) saturate(1.6);
    border: 1px solid rgba(255, 255, 255, 0.66);
    box-shadow: 0 20px 50px rgba(15, 25, 40, 0.16), inset 0 1px 0 rgba(255, 255, 255, 0.7);
  }
  .poz-plan.poz-plan--studio .poz-plan__views,
  .poz-plan.poz-plan--studio .poz-plan__iconb,
  .poz-plan.poz-plan--studio .poz-plan__theme,
  .poz-plan.poz-plan--studio .poz-tb {
    background: rgba(251, 252, 254, 0.7);
    -webkit-backdrop-filter: blur(24px) saturate(1.5); backdrop-filter: blur(24px) saturate(1.5);
    border: 1px solid rgba(255, 255, 255, 0.6);
    box-shadow: 0 14px 36px rgba(15, 25, 40, 0.16);
  }

  /* —— glass chrome, dark —— (panel content colours come from poz-dark) */
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__tools,
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__spec {
    background: rgba(21, 23, 28, 0.6); color: #E8EAEE;
    border: 1px solid rgba(255, 255, 255, 0.12);
    box-shadow: 0 22px 54px rgba(0, 0, 0, 0.5), inset 0 1px 0 rgba(255, 255, 255, 0.08);
  }
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__views,
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__iconb,
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__theme,
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-tb {
    background: rgba(21, 23, 28, 0.62);
    border: 1px solid rgba(255, 255, 255, 0.12);
    box-shadow: 0 16px 40px rgba(0, 0, 0, 0.5);
  }
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__view { color: #9AA3AE; }
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__view:hover { color: #E8EAEE; }
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__view.is-on { background: #F2F4F7; color: #0C0D10; }
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__iconb,
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__theme { color: #D5D9DE; }
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__iconb:hover,
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__theme:hover { background: rgba(40, 44, 52, 0.8); color: #fff; }
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__bar--bottom { color: #7C8794; }

  /* —— dock: roomier, quieter, apple segmented feel —— */
  .poz-plan.poz-plan--studio .poz-tb { bottom: 20px; gap: 3px; padding: 8px 10px; border-radius: 20px; }
  .poz-plan.poz-plan--studio .poz-tb button {
    min-width: 60px; padding: 9px 10px 8px; border-radius: 13px;
    display: flex; flex-direction: column; align-items: center; gap: 5px;
    color: #46525F; background: none; border: 0;
  }
  .poz-plan.poz-plan--studio .poz-tb button svg { width: 19px; height: 19px; }
  .poz-plan.poz-plan--studio .poz-tb button:hover { background: rgba(12, 13, 16, 0.06); }
  .poz-plan.poz-plan--studio .poz-tb button.is-on { background: #0C0D10; color: #fff; }
  .poz-plan.poz-plan--studio .poz-tb__lb {
    font-family: inherit; font-size: 10px; font-weight: 600; letter-spacing: 0.04em; text-transform: none;
  }
  .poz-plan.poz-plan--studio .poz-tb__sep { height: 30px; margin: 0 5px; align-self: center; }
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-tb button { color: #A6ADB6; }
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-tb button:hover { background: rgba(255, 255, 255, 0.08); }
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-tb button.is-on { background: #F2F4F7; color: #0C0D10; }

  /* —— no more micro-text —— */
  .poz-plan.poz-plan--studio .poz-plan__chip { font-size: 12.5px; }
  .poz-plan.poz-plan--studio .poz-plan__bom { font-size: 12.5px; }
  .poz-plan.poz-plan--studio .poz-plan__tots { font-size: 12.5px; }
  .poz-plan.poz-plan--studio .poz-plan__checks { font-size: 12px; }
  .poz-plan.poz-plan--studio .poz-plan__tool-sub { font-size: 11.5px; }
  .poz-plan.poz-plan--studio .poz-plan__hint { font-size: 11.5px; }
  .poz-plan.poz-plan--studio .poz-plan__toolgroup { font-size: 11px; }
  .poz-plan.poz-plan--studio .poz-plan__bar--bottom { font-size: 11px; }

  /* —— watermark: the real mark, faded into the stage —— */
  .poz-plan.poz-plan--studio .poz-plan__scene::before {
    content: ""; position: absolute; inset: 0; z-index: 0; pointer-events: none; display: block;
    background: url('../../assets/logo/horizontal-transparent-dark.svg') center 44% / min(430px, 38%) no-repeat;
    opacity: 0.05; filter: grayscale(1);
  }
  .poz-plan.poz-plan--studio .poz-plan__scene.is-3d::before { display: block; }
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__scene::before,
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__scene.is-3d::before {
    display: block;
    background-image: url('../../assets/logo/horizontal-transparent-light.svg');
    opacity: 0.065;
  }
}
/* studio: the frame stretches with the section — no inherited fixed heights */
@media (min-width: 901px) {
  .poz-plan.poz-plan--studio .poz-plan__frame,
  .poz-plan.poz-plan--studio .poz-plan__canvas,
  .poz-plan.poz-plan--studio .poz-plan__scene { height: auto; min-height: 0; max-height: none; }
}
/* studio round 3: apple controls, correct watermark art, no footer, text up */
@media (min-width: 901px) {
  /* the configurator is an app screen — the site footer stays on the site */
  body:has(.poz-plan--studio) .poz-footer { display: none; }

  /* —— watermark: art variants were swapped (the "-dark" file carries the
     white wordmark FOR dark stages); also stronger —— */
  .poz-plan.poz-plan--studio .poz-plan__scene::before {
    background-image: url('../../assets/logo/horizontal-transparent-light.svg');
    background-size: min(470px, 40%); opacity: 0.09;
  }
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__scene::before,
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__scene.is-3d::before {
    background-image: url('../../assets/logo/horizontal-transparent-dark.svg');
    background-size: min(470px, 40%); opacity: 0.11;
  }

  /* —— controls, apple pass: pills and tints, no black squares —— */
  .poz-plan.poz-plan--studio .poz-plan__mini {
    border-radius: 999px; padding: 8px 14px; font-size: 11px; font-weight: 600;
    letter-spacing: 0.03em; text-transform: none;
    border: 1px solid rgba(20, 30, 42, 0.12); background: rgba(255, 255, 255, 0.55); color: #1C242C;
    transition: background 0.16s, color 0.16s;
  }
  .poz-plan.poz-plan--studio .poz-plan__mini:hover { background: #fff; color: #0C0D10; }
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__mini {
    border-color: rgba(255, 255, 255, 0.14); background: rgba(255, 255, 255, 0.08); color: #D5D9DE;
  }
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__mini:hover { background: rgba(255, 255, 255, 0.15); color: #fff; }

  .poz-plan.poz-plan--studio .poz-plan__chip {
    border-radius: 14px; border: 1px solid rgba(20, 30, 42, 0.1);
    background: rgba(255, 255, 255, 0.6); color: #1C242C;
    transition: border-color 0.16s, background 0.16s, box-shadow 0.16s;
  }
  .poz-plan.poz-plan--studio .poz-plan__chip:hover { border-color: rgba(0, 102, 204, 0.4); }
  .poz-plan.poz-plan--studio .poz-plan__chip.is-on {
    border-color: #0066CC; background: rgba(0, 102, 204, 0.1); color: #005AB5;
    box-shadow: 0 0 0 3px rgba(0, 102, 204, 0.14);
  }
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__chip {
    border-color: rgba(255, 255, 255, 0.1); background: rgba(255, 255, 255, 0.06); color: #D5D9DE;
  }
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__chip:hover { border-color: rgba(61, 155, 255, 0.5); }
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__chip.is-on {
    border-color: #3D9BFF; background: rgba(10, 132, 255, 0.18); color: #EAF4FF;
    box-shadow: 0 0 0 3px rgba(61, 155, 255, 0.2);
  }

  .poz-plan.poz-plan--studio .poz-plan__tool { border-radius: 12px; transition: background 0.16s; }
  .poz-plan.poz-plan--studio .poz-plan__tool:hover { background: rgba(0, 102, 204, 0.06); }
  .poz-plan.poz-plan--studio .poz-plan__tool.is-on { background: rgba(0, 102, 204, 0.1); }
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__tool:hover { background: rgba(10, 132, 255, 0.1); }
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__tool.is-on { background: rgba(10, 132, 255, 0.16); }

  .poz-plan.poz-plan--studio .poz-plan__tools input[type="range"],
  .poz-plan.poz-plan--studio .poz-plan__spec input[type="range"] { accent-color: #0066CC; }
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__tools input[type="range"],
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__spec input[type="range"] { accent-color: #3D9BFF; }

  /* the chooser remembers: last-used card wears the ring */
  .poz-plan.poz-plan--studio .poz-plan__entry-card.is-last {
    border-color: #3D9BFF; box-shadow: 0 0 0 3px rgba(61, 155, 255, 0.25);
  }

  /* —— text, third sweep —— */
  .poz-plan.poz-plan--studio .poz-plan__spec-head { font-size: 11.5px; }
  .poz-plan.poz-plan--studio .poz-plan__checks-head { font-size: 11px; }
  .poz-plan.poz-plan--studio .poz-plan__tots { font-size: 13px; }
  .poz-plan.poz-plan--studio .poz-plan__legend { font-size: 11px; }
  .poz-plan.poz-plan--studio .poz-assist { font-size: 12.5px; }
  .poz-plan.poz-plan--studio .poz-coach__tx { font-size: 12.5px; }
  .poz-plan.poz-plan--studio .poz-plan__tools-title { font-size: 13px; letter-spacing: 0.06em; }
}
/* studio: the coach strip stays between the panels */
@media (min-width: 901px) {
  .poz-plan.poz-plan--studio .poz-coach {
    max-width: calc(100% - 700px); flex-wrap: wrap; white-space: normal;
    justify-content: center; border-radius: 16px; row-gap: 6px;
  }
}
/* studio round 4: inverted panel headers, wizard as a centred sheet,
   premium vertical collapse bars */
@media (min-width: 901px) {
  /* —— headers invert against their panel —— */
  .poz-plan.poz-plan--studio .poz-plan__tools-head,
  .poz-plan.poz-plan--studio .poz-plan__spec-head {
    background: #0C0D10; color: #fff; border-bottom: 0;
  }
  .poz-plan.poz-plan--studio .poz-plan__tools-head .poz-plan__mini,
  .poz-plan.poz-plan--studio .poz-plan__spec-head .poz-plan__mini {
    border-color: rgba(255, 255, 255, 0.25); background: rgba(255, 255, 255, 0.1); color: #E8EAEE;
  }
  .poz-plan.poz-plan--studio .poz-plan__tools-head .poz-plan__mini:hover,
  .poz-plan.poz-plan--studio .poz-plan__spec-head .poz-plan__mini:hover { background: rgba(255, 255, 255, 0.22); color: #fff; }
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__tools-head,
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__spec-head {
    background: #F2F4F7; color: #0C0D10;
  }
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__tools-head .poz-plan__mini,
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__spec-head .poz-plan__mini {
    border-color: rgba(12, 13, 16, 0.2); background: rgba(12, 13, 16, 0.06); color: #1C242C;
  }
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__tools-head .poz-plan__mini:hover,
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__spec-head .poz-plan__mini:hover { background: rgba(12, 13, 16, 0.14); }
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__spec-head .poz-plan__live { color: #0C0D10; }

  /* —— wizard: a centred sheet above everything, never under a panel —— */
  .poz-plan.poz-plan--studio .poz-plan__wizard {
    position: absolute; inset: 0; z-index: 46; display: grid; place-items: center;
    background: rgba(8, 10, 14, 0.45);
    -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px);
  }
  .poz-plan.poz-plan--studio .poz-plan__wizard[hidden] { display: none; }
  .poz-plan.poz-plan--studio .poz-plan__wz {
    position: relative; width: min(580px, 92%); max-height: 78%; overflow: auto;
    border-radius: 20px; padding: 28px 30px;
    background: rgba(251, 252, 254, 0.92); color: #0C0D10;
    -webkit-backdrop-filter: blur(30px) saturate(1.5); backdrop-filter: blur(30px) saturate(1.5);
    border: 1px solid rgba(255, 255, 255, 0.65);
    box-shadow: 0 30px 80px rgba(0, 0, 0, 0.5);
  }
  .poz-plan.poz-plan--studio .poz-plan__wz-q { font-size: 19px; line-height: 1.35; margin: 8px 0 16px; }
  .poz-plan.poz-plan--studio .poz-plan__wz-step { font-size: 11px; letter-spacing: 0.12em; }
  .poz-plan.poz-plan--studio .poz-plan__wz-opt {
    border-radius: 14px; border: 1px solid rgba(20, 30, 42, 0.14); background: rgba(255, 255, 255, 0.7);
    padding: 14px 16px; font-size: 14px; transition: border-color 0.16s, background 0.16s;
  }
  .poz-plan.poz-plan--studio .poz-plan__wz-opt span { font-size: 12.5px; }
  .poz-plan.poz-plan--studio .poz-plan__wz-opt:hover { border-color: rgba(0, 102, 204, 0.5); }
  .poz-plan.poz-plan--studio .poz-plan__wz-opt.is-on {
    border-color: #0066CC; background: rgba(0, 102, 204, 0.1); box-shadow: 0 0 0 3px rgba(0, 102, 204, 0.14);
  }
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__wz {
    background: rgba(21, 23, 28, 0.88); color: #E8EAEE; border-color: rgba(255, 255, 255, 0.12);
  }
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__wz-opt {
    border-color: rgba(255, 255, 255, 0.14); background: rgba(255, 255, 255, 0.06); color: #E8EAEE;
  }
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__wz-opt:hover { border-color: rgba(61, 155, 255, 0.55); }
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__wz-opt.is-on {
    border-color: #3D9BFF; background: rgba(10, 132, 255, 0.16); box-shadow: 0 0 0 3px rgba(61, 155, 255, 0.2);
  }

  /* —— collapsed panels: tall rounded glass bars, obviously clickable —— */
  .poz-plan.poz-plan--studio .poz-plan__restore {
    display: none; position: absolute; top: 172px; bottom: 96px; width: 46px; z-index: 25;
    transform: none; flex-direction: column; align-items: center; justify-content: center; gap: 12px;
    border-radius: 18px; padding: 0; cursor: pointer;
    writing-mode: vertical-rl; text-orientation: mixed;
    font-size: 11px; font-weight: 600; letter-spacing: 0.16em; text-transform: uppercase;
    background: rgba(251, 252, 254, 0.7); color: #1C242C;
    -webkit-backdrop-filter: blur(24px) saturate(1.5); backdrop-filter: blur(24px) saturate(1.5);
    border: 1px solid rgba(255, 255, 255, 0.6);
    box-shadow: 0 14px 36px rgba(15, 25, 40, 0.16);
    transition: background 0.18s, width 0.18s;
  }
  .poz-plan.poz-plan--studio .poz-plan__restore:hover { background: rgba(255, 255, 255, 0.92); width: 50px; }
  .poz-plan.poz-plan--studio .poz-plan__restore--tools { left: 18px; }
  .poz-plan.poz-plan--studio .poz-plan__restore--spec { right: 18px; transform: none; }
  .poz-plan.poz-plan--studio .poz-plan__restore::before {
    content: '›'; writing-mode: horizontal-tb; font-size: 19px; line-height: 1; font-weight: 400;
  }
  .poz-plan.poz-plan--studio .poz-plan__restore--spec::before { content: '‹'; }
  .poz-plan.poz-plan--studio [data-planner-grid].is-tools-docked .poz-plan__restore--tools,
  .poz-plan.poz-plan--studio [data-planner-grid].is-spec-docked .poz-plan__restore--spec {
    display: flex; opacity: 1; pointer-events: auto;
  }
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__restore {
    background: rgba(21, 23, 28, 0.62); color: #D5D9DE; border-color: rgba(255, 255, 255, 0.12);
    box-shadow: 0 16px 40px rgba(0, 0, 0, 0.5);
  }
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__restore:hover { background: rgba(34, 38, 46, 0.85); color: #fff; }
}
/* studio: the wizard layer sheds the old compact-dialog box completely */
@media (min-width: 901px) {
  .poz-plan.poz-plan--studio .poz-plan__wizard {
    inset: 0; width: auto; height: auto; max-width: none; max-height: none;
    padding: 0; border: 0; overflow: hidden; box-shadow: none; border-radius: 0;
  }
}
/* studio round 5: headers designed, not inverted · Michroma collapse bars ·
   visible category boundaries · teaching wizard · preset library popover */
@media (min-width: 901px) {
  /* —— panel headers: glass again, Michroma, live accent sweep —— */
  .poz-plan.poz-plan--studio .poz-plan__tools-head,
  .poz-plan.poz-plan--studio .poz-plan__spec-head {
    background: transparent; color: inherit; position: sticky; top: 0;
    border-bottom: 0; padding-bottom: 14px;
  }
  .poz-plan.poz-plan--studio .poz-plan__tools-head::after,
  .poz-plan.poz-plan--studio .poz-plan__spec-head::after {
    content: ""; position: absolute; left: 18px; right: 18px; bottom: 0; height: 2px;
    border-radius: 2px;
    background: linear-gradient(90deg, rgba(0,102,204,0) 0%, rgba(0,102,204,0.85) 30%, rgba(61,155,255,0.9) 50%, rgba(0,102,204,0.85) 70%, rgba(0,102,204,0) 100%);
    background-size: 220% 100%;
    animation: pozsweep 5.5s ease-in-out infinite;
  }
  .poz-plan.poz-plan--studio .poz-plan__tools-title,
  .poz-plan.poz-plan--studio .poz-plan__spec-head > span:first-child {
    font-family: 'Michroma', sans-serif; font-size: 12px; letter-spacing: 0.12em;
    background: linear-gradient(100deg, #0C0D10 20%, #46525F 85%);
    -webkit-background-clip: text; background-clip: text; color: transparent;
  }
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__tools-title,
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__spec-head > span:first-child {
    background: linear-gradient(100deg, #FFFFFF 20%, #8B96A3 85%);
    -webkit-background-clip: text; background-clip: text; color: transparent;
  }
  .poz-plan.poz-plan--studio .poz-plan__tools-head .poz-plan__mini,
  .poz-plan.poz-plan--studio .poz-plan__spec-head .poz-plan__mini {
    border-color: rgba(20, 30, 42, 0.12); background: rgba(255, 255, 255, 0.55); color: #1C242C;
  }
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__tools-head .poz-plan__mini,
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__spec-head .poz-plan__mini {
    border-color: rgba(255, 255, 255, 0.14); background: rgba(255, 255, 255, 0.08); color: #D5D9DE;
  }
  @keyframes pozsweep {
    0% { background-position: 110% 0; } 50% { background-position: -10% 0; } 100% { background-position: 110% 0; }
  }
  @media (prefers-reduced-motion: reduce) {
    .poz-plan.poz-plan--studio .poz-plan__tools-head::after,
    .poz-plan.poz-plan--studio .poz-plan__spec-head::after { animation: none; }
  }

  /* —— collapsed bars carry the display face —— */
  .poz-plan.poz-plan--studio .poz-plan__restore {
    font-family: 'Michroma', sans-serif; font-size: 10.5px; font-weight: 400; letter-spacing: 0.3em;
  }

  /* —— the left rail reads as chapters —— */
  .poz-plan.poz-plan--studio .poz-plan__toolgroup {
    position: relative; margin: 18px 14px 6px; padding: 14px 4px 4px 14px;
    border-top: 1px solid rgba(20, 30, 42, 0.1);
    font-family: 'Michroma', sans-serif; font-size: 9.5px; letter-spacing: 0.16em;
    color: #0066CC; text-transform: uppercase;
  }
  .poz-plan.poz-plan--studio .poz-plan__toolgroup::before {
    content: ""; position: absolute; left: 0; top: 16px; bottom: 2px; width: 3px;
    border-radius: 3px; background: linear-gradient(180deg, #0066CC, rgba(0, 102, 204, 0.15));
  }
  .poz-plan.poz-plan--studio .poz-plan__toollist > .poz-plan__toolgroup:first-child { border-top: 0; margin-top: 8px; }
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__toolgroup { border-top-color: rgba(255, 255, 255, 0.1); color: #6FB4FF; }
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__toolgroup::before { background: linear-gradient(180deg, #3D9BFF, rgba(61, 155, 255, 0.12)); }
  .poz-plan.poz-plan--studio .poz-plan__panelwrap { border-bottom: 0; }

  /* —— wizard: the teaching paragraph —— */
  .poz-plan.poz-plan--studio .poz-plan__wz-e {
    margin: 0 0 18px; font-size: 13.5px; line-height: 1.6; color: #46525F;
    padding: 12px 14px; border-radius: 12px; background: rgba(0, 102, 204, 0.06);
    border-left: 3px solid rgba(0, 102, 204, 0.5);
  }
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__wz-e {
    color: #B9C2CC; background: rgba(61, 155, 255, 0.08); border-left-color: rgba(61, 155, 255, 0.5);
  }

  /* —— preset library: button + popover —— */
  .poz-plan.poz-plan--studio .poz-plan__presets-btn {
    display: inline-flex; align-items: center; gap: 9px; padding: 12px 18px;
    border-radius: 999px; cursor: pointer;
    font-family: 'Michroma', sans-serif; font-size: 10px; letter-spacing: 0.12em; text-transform: uppercase;
    background: rgba(251, 252, 254, 0.7); color: #1C242C;
    -webkit-backdrop-filter: blur(24px) saturate(1.5); backdrop-filter: blur(24px) saturate(1.5);
    border: 1px solid rgba(255, 255, 255, 0.6); box-shadow: 0 14px 36px rgba(15, 25, 40, 0.16);
    transition: background 0.18s;
  }
  .poz-plan.poz-plan--studio .poz-plan__presets-btn:hover { background: rgba(255, 255, 255, 0.95); }
  .poz-plan.poz-plan--studio .poz-plan__presets-btn svg { width: 15px; height: 15px; }
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__presets-btn {
    background: rgba(21, 23, 28, 0.62); color: #D5D9DE; border-color: rgba(255, 255, 255, 0.12);
    box-shadow: 0 16px 40px rgba(0, 0, 0, 0.5);
  }
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__presets-btn:hover { background: rgba(34, 38, 46, 0.85); color: #fff; }

  .poz-plan.poz-plan--studio .poz-plan__presetbar { display: none !important; }
  .poz-plan.poz-plan--studio.poz-presets-open .poz-plan__presetbar {
    display: grid !important; position: absolute; top: 56px; left: 0; z-index: 40;
    grid-template-columns: 1fr 1fr; gap: 8px; width: 460px; padding: 16px;
    border-radius: 18px;
    background: rgba(251, 252, 254, 0.88); color: #0C0D10;
    -webkit-backdrop-filter: blur(30px) saturate(1.5); backdrop-filter: blur(30px) saturate(1.5);
    border: 1px solid rgba(255, 255, 255, 0.65); box-shadow: 0 26px 70px rgba(15, 25, 40, 0.3);
  }
  .poz-plan.poz-plan--studio .poz-plan__presetbar-lb {
    grid-column: 1 / -1; font-family: 'Michroma', sans-serif; font-size: 9.5px;
    letter-spacing: 0.15em; text-transform: uppercase; color: #607181; padding: 2px 4px 6px;
  }
  .poz-plan.poz-plan--studio .poz-plan__pchip {
    display: block; text-align: left; padding: 12px 14px; border-radius: 12px;
    font-size: 13px; font-weight: 600; cursor: pointer;
    border: 1px solid rgba(20, 30, 42, 0.12); background: rgba(255, 255, 255, 0.7); color: #1C242C;
    transition: border-color 0.16s, background 0.16s;
  }
  .poz-plan.poz-plan--studio .poz-plan__pchip:hover { border-color: #0066CC; background: rgba(0, 102, 204, 0.07); }
  .poz-plan.poz-plan--studio.poz-studio-dark.poz-presets-open .poz-plan__presetbar {
    background: rgba(21, 23, 28, 0.9); color: #E8EAEE; border-color: rgba(255, 255, 255, 0.12);
    box-shadow: 0 30px 80px rgba(0, 0, 0, 0.6);
  }
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__pchip {
    border-color: rgba(255, 255, 255, 0.14); background: rgba(255, 255, 255, 0.06); color: #E8EAEE;
  }
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__pchip:hover { border-color: #3D9BFF; background: rgba(61, 155, 255, 0.14); }
}
/* studio: the dark theme sheds the abandoned inverted headers completely */
@media (min-width: 901px) {
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__tools-head,
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__spec-head { background: transparent; color: inherit; }
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__spec-head .poz-plan__live { color: inherit; }
  .poz-plan.poz-plan--studio .poz-plan__tools-title,
  .poz-plan.poz-plan--studio .poz-plan__spec-head > span:first-child {
    background: linear-gradient(100deg, #0C0D10 30%, #3D4854 95%);
    -webkit-background-clip: text; background-clip: text; color: transparent;
  }
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__tools-title,
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__spec-head > span:first-child {
    background: linear-gradient(100deg, #FFFFFF 30%, #C3CBD4 95%);
    -webkit-background-clip: text; background-clip: text; color: transparent;
  }
}
/* studio round 6: quotation cards with product photos · stat tiles that never
   crop · graphic step badges on the left rail */
@media (min-width: 901px) {
  /* —— component cards —— */
  .poz-plan.poz-plan--studio .poz-plan__bom { padding: 10px 12px; display: flex; flex-direction: column; gap: 8px; }
  .poz-plan.poz-plan--studio .poz-plan__itemcard {
    display: flex; align-items: center; gap: 12px; padding: 10px 12px;
    border-radius: 14px; border: 1px solid rgba(20, 30, 42, 0.1);
    background: rgba(255, 255, 255, 0.65);
  }
  .poz-plan.poz-plan--studio .poz-plan__itemcard-img {
    width: 46px; height: 46px; flex: none; border-radius: 10px; object-fit: cover;
    background: #fff; border: 1px solid rgba(20, 30, 42, 0.08);
  }
  .poz-plan.poz-plan--studio .poz-plan__itemcard-tx { flex: 1 1 auto; min-width: 0; display: flex; flex-direction: column; gap: 4px; }
  .poz-plan.poz-plan--studio .poz-plan__itemcard-name { font-size: 12.5px; font-weight: 600; line-height: 1.35; }
  .poz-plan.poz-plan--studio .poz-plan__itemcard-code {
    align-self: flex-start; padding: 2px 8px; border-radius: 7px;
    font-family: 'IBM Plex Mono', ui-monospace, monospace; font-size: 10.5px; letter-spacing: 0.04em;
    color: #005AB5; background: rgba(0, 102, 204, 0.09); border: 1px solid rgba(0, 102, 204, 0.18);
  }
  .poz-plan.poz-plan--studio .poz-plan__itemcard-qty { flex: none; font-size: 13px; font-weight: 700; white-space: nowrap; }
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__itemcard {
    border-color: rgba(255, 255, 255, 0.1); background: rgba(255, 255, 255, 0.05);
  }
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__itemcard-img { border-color: rgba(255, 255, 255, 0.16); }
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__itemcard-code {
    color: #7CBBFF; background: rgba(61, 155, 255, 0.12); border-color: rgba(61, 155, 255, 0.28);
  }

  /* —— stat tiles: Površina / Nosivost / Kapacitet, no cropping —— */
  .poz-plan.poz-plan--studio .poz-plan__tots {
    display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px;
    padding: 4px 12px 12px; border: 0; overflow: visible;
  }
  .poz-plan.poz-plan--studio .poz-plan__tot {
    min-width: 0; overflow: visible; padding: 12px 12px 10px; border-radius: 14px;
    border: 1px solid rgba(20, 30, 42, 0.1); background: rgba(0, 102, 204, 0.05);
    text-align: left; display: block; height: auto;
  }
  .poz-plan.poz-plan--studio .poz-plan__tot b {
    display: block; font-family: 'Michroma', sans-serif; font-weight: 400;
    font-size: 16px; line-height: 1.1; white-space: nowrap; letter-spacing: 0;
  }
  .poz-plan.poz-plan--studio .poz-plan__tot b small {
    display: block; margin-top: 3px; font-size: 10px; letter-spacing: 0.04em; color: #607181;
  }
  .poz-plan.poz-plan--studio .poz-plan__tot span {
    display: block; margin-top: 6px;
    font-family: 'IBM Plex Mono', ui-monospace, monospace; font-size: 9.5px;
    letter-spacing: 0.12em; text-transform: uppercase; color: #607181;
  }
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__tot {
    border-color: rgba(255, 255, 255, 0.1); background: rgba(61, 155, 255, 0.08);
  }
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__tot b small,
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__tot span { color: #8B96A3; }

  /* —— step badges on the left rail —— */
  .poz-plan.poz-plan--studio .poz-plan__toolgroup.has-num {
    display: flex; align-items: center; gap: 12px; padding-left: 14px;
  }
  .poz-plan.poz-plan--studio .poz-plan__toolgroup.has-num::before { display: none; }
  .poz-plan.poz-plan--studio .poz-plan__tg-num {
    flex: none; width: 34px; height: 34px; display: grid; place-items: center;
    border-radius: 11px; font-style: normal;
    font-family: 'Michroma', sans-serif; font-size: 13px;
    color: #0066CC; background: rgba(0, 102, 204, 0.1);
    border: 1px solid rgba(0, 102, 204, 0.25);
    box-shadow: 0 4px 14px rgba(0, 102, 204, 0.14);
  }
  .poz-plan.poz-plan--studio .poz-plan__tg-tx { line-height: 1.45; }
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__tg-num {
    color: #7CBBFF; background: rgba(61, 155, 255, 0.14); border-color: rgba(61, 155, 255, 0.35);
    box-shadow: 0 4px 16px rgba(61, 155, 255, 0.15);
  }
}
/* studio round 7: opaque glass sticky headers (no scroll-through), the mono
   face retired site-wide in studio, spec stats as iconed rows */
@media (min-width: 901px) {
  /* —— sticky headers mask what scrolls under them —— */
  .poz-plan.poz-plan--studio .poz-plan__tools-head,
  .poz-plan.poz-plan--studio .poz-plan__spec-head {
    background: rgba(251, 252, 254, 0.94);
    -webkit-backdrop-filter: blur(18px) saturate(1.4); backdrop-filter: blur(18px) saturate(1.4);
  }
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__tools-head,
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__spec-head {
    background: rgba(23, 25, 30, 0.94);
  }

  /* —— the small mono face is retired: Michroma for labels, Plex Sans for content —— */
  .poz-plan.poz-plan--studio .poz-plan__itemcard-code {
    font-family: 'Michroma', sans-serif; font-size: 10px; letter-spacing: 0.08em; padding: 4px 9px;
  }
  .poz-plan.poz-plan--studio .poz-plan__bar--bottom,
  .poz-plan.poz-plan--studio .poz-plan__bar--bottom .poz-plan__file,
  .poz-plan.poz-plan--studio .poz-plan__legend {
    font-family: 'Michroma', sans-serif; font-size: 9px; letter-spacing: 0.1em;
  }
  .poz-plan.poz-plan--studio .poz-plan__lbl { font-family: 'Michroma', sans-serif; font-size: 9.5px; letter-spacing: 0.12em; }
  .poz-plan.poz-plan--studio .poz-plan__tool-num { font-family: 'Michroma', sans-serif; font-size: 10px; }
  .poz-plan.poz-plan--studio .poz-plan__tool-count { font-family: inherit; font-size: 11px; font-weight: 600; }
  .poz-plan.poz-plan--studio .poz-plan__check-tx { font-family: inherit; font-size: 12px; line-height: 1.5; letter-spacing: 0; }
  .poz-plan.poz-plan--studio .poz-plan__check-name { font-size: 12.5px; }
  .poz-plan.poz-plan--studio .poz-plan__checks-head { font-family: 'Michroma', sans-serif; letter-spacing: 0.12em; }
  .poz-plan.poz-plan--studio .poz-plan__checks-head [data-check-count] { font-family: inherit; font-weight: 700; }
  .poz-plan.poz-plan--studio .poz-plan__wz-step { font-family: 'Michroma', sans-serif; }
  .poz-plan.poz-plan--studio .poz-plan__spec-head .poz-plan__live { font-family: 'Michroma', sans-serif; font-size: 9.5px; letter-spacing: 0.12em; }
  .poz-plan.poz-plan--studio .poz-coach__step b { font-family: 'Michroma', sans-serif; }

  /* —— the three stage facts: iconed rows, impossible to crop —— */
  .poz-plan.poz-plan--studio .poz-plan__tots {
    display: flex; flex-direction: column; gap: 6px; padding: 4px 12px 12px;
  }
  .poz-plan.poz-plan--studio .poz-plan__tot {
    display: flex; align-items: center; gap: 12px; min-width: 0; width: auto;
    padding: 10px 14px; border-radius: 14px; text-align: left;
    border: 1px solid rgba(20, 30, 42, 0.1); background: rgba(0, 102, 204, 0.05);
  }
  .poz-plan.poz-plan--studio .poz-plan__tot::before {
    content: ""; flex: none; width: 32px; height: 32px; border-radius: 10px;
    background-color: rgba(0, 102, 204, 0.12);
    background-position: center; background-repeat: no-repeat; background-size: 18px;
  }
  .poz-plan.poz-plan--studio .poz-plan__tot:nth-child(1)::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none' stroke='%230066CC' stroke-width='1.5'%3E%3Crect x='3' y='3' width='14' height='14' rx='2'/%3E%3Cpath d='M3 10h14M10 3v14'/%3E%3C/svg%3E");
  }
  .poz-plan.poz-plan--studio .poz-plan__tot:nth-child(2)::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none' stroke='%230066CC' stroke-width='1.5'%3E%3Cpath d='M10 3v6M7.2 6.4 10 9l2.8-2.6'/%3E%3Crect x='3' y='12' width='14' height='4.5' rx='1.4'/%3E%3C/svg%3E");
  }
  .poz-plan.poz-plan--studio .poz-plan__tot:nth-child(3)::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none' stroke='%230066CC' stroke-width='1.5'%3E%3Ccircle cx='7' cy='6.2' r='2.6'/%3E%3Cpath d='M2.8 17c.4-3.4 2.1-5.4 4.2-5.4 2.1 0 3.8 2 4.2 5.4'/%3E%3Ccircle cx='14.2' cy='7' r='2.1'/%3E%3Cpath d='M13 11.6c2.4-.6 4.3 1.4 4.6 4.6'/%3E%3C/svg%3E");
  }
  .poz-plan.poz-plan--studio .poz-plan__tot span {
    order: 1; flex: 1 1 auto; margin: 0;
    font-family: inherit; font-size: 11.5px; font-weight: 600; letter-spacing: 0.03em;
    text-transform: none; color: inherit;
  }
  .poz-plan.poz-plan--studio .poz-plan__tot b {
    order: 2; display: inline-flex; align-items: baseline; gap: 4px; margin: 0;
    font-family: 'Michroma', sans-serif; font-weight: 400; font-size: 14.5px; white-space: nowrap;
  }
  .poz-plan.poz-plan--studio .poz-plan__tot b small { display: inline; margin: 0; font-size: 10px; color: #607181; }
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__tot {
    border-color: rgba(255, 255, 255, 0.1); background: rgba(61, 155, 255, 0.08);
  }
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__tot::before { background-color: rgba(61, 155, 255, 0.16); }
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__tot:nth-child(1)::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none' stroke='%237CBBFF' stroke-width='1.5'%3E%3Crect x='3' y='3' width='14' height='14' rx='2'/%3E%3Cpath d='M3 10h14M10 3v14'/%3E%3C/svg%3E");
  }
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__tot:nth-child(2)::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none' stroke='%237CBBFF' stroke-width='1.5'%3E%3Cpath d='M10 3v6M7.2 6.4 10 9l2.8-2.6'/%3E%3Crect x='3' y='12' width='14' height='4.5' rx='1.4'/%3E%3C/svg%3E");
  }
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__tot:nth-child(3)::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none' stroke='%237CBBFF' stroke-width='1.5'%3E%3Ccircle cx='7' cy='6.2' r='2.6'/%3E%3Cpath d='M2.8 17c.4-3.4 2.1-5.4 4.2-5.4 2.1 0 3.8 2 4.2 5.4'/%3E%3Ccircle cx='14.2' cy='7' r='2.1'/%3E%3Cpath d='M13 11.6c2.4-.6 4.3 1.4 4.6 4.6'/%3E%3C/svg%3E");
  }
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__tot b small { color: #8B96A3; }
}
/* studio: sticky panel headers paint above their content */
@media (min-width: 901px) {
  .poz-plan.poz-plan--studio .poz-plan__tools-head,
  .poz-plan.poz-plan--studio .poz-plan__spec-head { z-index: 5; }
}

/* studio: the cursor popover (module editor) follows the theme — it was the
   one white window whose dark-themed content vanished into it */
@media (min-width: 901px) {
  .poz-plan.poz-plan--studio .poz-ctx {
    width: 290px; padding: 16px 18px 14px; border-radius: 16px;
    background: rgba(251, 252, 254, 0.92); color: #0C0D10;
    border: 1px solid rgba(255, 255, 255, 0.65);
    box-shadow: 0 24px 60px rgba(15, 25, 40, 0.3);
  }
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-ctx {
    background: rgba(21, 23, 28, 0.94); color: #E8EAEE;
    border-color: rgba(255, 255, 255, 0.14);
    box-shadow: 0 24px 60px rgba(0, 0, 0, 0.6);
  }
  .poz-plan.poz-plan--studio .poz-ctx .poz-plan__hint { font-size: 12px; }
  .poz-plan.poz-plan--studio .poz-ctx .poz-plan__chip { padding: 8px 12px; font-size: 12px; }
}
/* studio: formats a series does not sell are shown but clearly unavailable */
@media (min-width: 901px) {
  .poz-plan.poz-plan--studio .poz-plan__chip.is-unavail { opacity: 0.32; cursor: not-allowed; filter: grayscale(1); }
}
.poz-plan__scene.is-edit, .poz-plan__scene.is-edit canvas { cursor: pointer; }

/* studio round 8: the left rail becomes TOOL CARDS — each tool is its own
   rounded window (header + fold-out body), closed until opened */
@media (min-width: 901px) {
  .poz-plan.poz-plan--studio .poz-plan__toollist { padding-bottom: 10px; }
  .poz-plan.poz-plan--studio .poz-plan__tool {
    margin: 8px 12px 0; padding: 12px 14px; border-radius: 14px;
    border: 1px solid rgba(20, 30, 42, 0.1); background: rgba(255, 255, 255, 0.55);
    transition: background 0.16s, border-color 0.16s, border-radius 0.16s;
  }
  .poz-plan.poz-plan--studio .poz-plan__tool:hover { background: rgba(255, 255, 255, 0.85); border-color: rgba(0, 102, 204, 0.3); }
  .poz-plan.poz-plan--studio .poz-plan__tool.is-on {
    border-radius: 14px 14px 0 0; border-bottom: 0;
    background: rgba(0, 102, 204, 0.08); border-color: rgba(0, 102, 204, 0.35);
  }
  .poz-plan.poz-plan--studio .poz-plan__panelwrap { margin: 0 12px; border: 0; border-radius: 0 0 14px 14px; }
  .poz-plan.poz-plan--studio .poz-plan__panelwrap.is-open {
    border: 1px solid rgba(0, 102, 204, 0.35); border-top: 0;
    background: rgba(255, 255, 255, 0.45);
  }
  .poz-plan.poz-plan--studio .poz-plan__tool-chev { transition: transform 0.25s; }
  .poz-plan.poz-plan--studio .poz-plan__tool.is-on .poz-plan__tool-chev { transform: rotate(180deg); }
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__tool {
    border-color: rgba(255, 255, 255, 0.1); background: rgba(255, 255, 255, 0.05);
  }
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__tool:hover { background: rgba(255, 255, 255, 0.1); border-color: rgba(61, 155, 255, 0.4); }
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__tool.is-on {
    background: rgba(10, 132, 255, 0.14); border-color: rgba(61, 155, 255, 0.45);
  }
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__panelwrap.is-open {
    border-color: rgba(61, 155, 255, 0.45); border-top: 0; background: rgba(255, 255, 255, 0.04);
  }

  /* small inline icons in setting chips (the big palette cards keep theirs) */
  .poz-plan.poz-plan--studio .poz-plan__chip:not(.poz-mod) > svg {
    width: 16px; height: 16px; vertical-align: -3px; margin-right: 7px;
  }
}
/* studio round 9: the left rail becomes a Photoshop-style ICON TOOLBAR —
   a narrow glass strip of graphic tools; the active tool's options fly out
   to the right as their own glass panel */
@media (min-width: 901px) {
  .poz-plan.poz-plan--studio .poz-plan__tools { width: 82px; overflow: visible; }
  .poz-plan.poz-plan--studio .poz-plan__tools-head,
  .poz-plan.poz-plan--studio .poz-plan__tools-foot { display: none; }

  /* group headers shrink to hairline separators on the rail */
  .poz-plan.poz-plan--studio .poz-plan__toolgroup {
    margin: 10px 16px 2px; padding: 0; height: 1px; border: 0;
    background: rgba(20, 30, 42, 0.14); font-size: 0; box-shadow: none;
  }
  .poz-plan.poz-plan--studio .poz-plan__toolgroup * { display: none; }
  .poz-plan.poz-plan--studio .poz-plan__toollist > .poz-plan__toolgroup:first-child { margin-top: 8px; }
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__toolgroup { background: rgba(255, 255, 255, 0.12); }

  /* tools as icon tiles: graphic + tiny label, count as a badge */
  .poz-plan.poz-plan--studio .poz-plan__tool {
    position: relative; display: flex; flex-direction: column; align-items: center; gap: 5px;
    margin: 6px 10px 0; padding: 10px 4px 8px; text-align: center;
  }
  .poz-plan.poz-plan--studio .poz-plan__tool.is-on { border-radius: 12px; border: 1px solid rgba(0, 102, 204, 0.45); border-bottom: 1px solid rgba(0, 102, 204, 0.45); }
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__tool.is-on { border: 1px solid rgba(61, 155, 255, 0.5); }
  .poz-plan.poz-plan--studio .poz-plan__tool-ico { display: block; line-height: 0; color: #33404E; }
  .poz-plan.poz-plan--studio .poz-plan__tool-ico svg { width: 21px; height: 21px; }
  .poz-plan.poz-plan--studio .poz-plan__tool.is-on .poz-plan__tool-ico { color: #0066CC; }
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__tool-ico { color: #B9C2CC; }
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__tool.is-on .poz-plan__tool-ico { color: #7CBBFF; }
  .poz-plan.poz-plan--studio .poz-plan__tool-num,
  .poz-plan.poz-plan--studio .poz-plan__tool-sub,
  .poz-plan.poz-plan--studio .poz-plan__tool-chev { display: none; }
  .poz-plan.poz-plan--studio .poz-plan__tool-name {
    font-size: 9px; font-weight: 600; letter-spacing: 0.02em; line-height: 1.2; text-transform: none;
  }
  .poz-plan.poz-plan--studio .poz-plan__tool-count {
    position: absolute; top: 4px; right: 6px; font-size: 9px; font-weight: 700; color: #0066CC;
  }
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__tool-count { color: #7CBBFF; }

  /* the fly-out options panel, to the right of the rail */
  .poz-plan.poz-plan--studio .poz-plan__panelwrap { display: none; margin: 0; border: 0; }
  .poz-plan.poz-plan--studio .poz-plan__panelwrap.is-open {
    display: block; position: absolute; left: calc(100% + 12px); top: 6px; z-index: 3;
    width: 306px; max-height: calc(100% - 12px); overflow-y: auto; overscroll-behavior: contain;
    border-radius: 16px; border: 1px solid rgba(255, 255, 255, 0.66);
    background: rgba(251, 252, 254, 0.9);
    -webkit-backdrop-filter: blur(28px) saturate(1.6); backdrop-filter: blur(28px) saturate(1.6);
    box-shadow: 0 22px 54px rgba(15, 25, 40, 0.24);
  }
  .poz-plan.poz-plan--studio .poz-plan__panelwrap.is-open .poz-plan__panel { opacity: 1; padding: 16px 18px; }
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__panelwrap.is-open {
    border-color: rgba(255, 255, 255, 0.13); background: rgba(21, 23, 28, 0.92);
    box-shadow: 0 24px 60px rgba(0, 0, 0, 0.55);
  }
}
/* studio round 9b: rail debug + premium — product renders in the tools,
   badge that can never overlap, uniform tiles, stray accents killed */
@media (min-width: 901px) {
  .poz-plan.poz-plan--studio .poz-plan__tools { width: 92px; }
  .poz-plan.poz-plan--studio .poz-plan__tool {
    min-height: 82px; justify-content: center; margin: 7px 10px 0; padding: 12px 4px 9px;
    box-shadow: 0 4px 14px rgba(15, 25, 40, 0.06);
  }
  .poz-plan.poz-plan--studio .poz-plan__tool::before,
  .poz-plan.poz-plan--studio .poz-plan__tool::after { display: none !important; content: none !important; }
  .poz-plan.poz-plan--studio .poz-plan__tool:hover { transform: translateY(-1px); }
  .poz-plan.poz-plan--studio .poz-plan__tool-ico img {
    display: block; width: 38px; height: 38px; border-radius: 9px; object-fit: cover;
    background: #fff; border: 1px solid rgba(20, 30, 42, 0.1);
  }
  .poz-plan.poz-plan--studio .poz-plan__tool.is-on .poz-plan__tool-ico img {
    box-shadow: 0 0 0 2px rgba(0, 102, 204, 0.45);
  }
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__tool-ico img { border-color: rgba(255, 255, 255, 0.2); }
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__tool.is-on .poz-plan__tool-ico img {
    box-shadow: 0 0 0 2px rgba(61, 155, 255, 0.55);
  }
  .poz-plan.poz-plan--studio .poz-plan__tool-name { font-size: 9.5px; max-width: 70px; }
  .poz-plan.poz-plan--studio .poz-plan__tool-count {
    top: 3px; right: 3px; font-size: 8.5px; font-weight: 700; line-height: 1;
    padding: 3px 6px; border-radius: 999px; max-width: 58px;
    white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
    background: rgba(0, 102, 204, 0.1); color: #005AB5; border: 1px solid rgba(0, 102, 204, 0.22);
  }
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__tool-count {
    background: rgba(61, 155, 255, 0.16); color: #7CBBFF; border-color: rgba(61, 155, 255, 0.3);
  }
  .poz-plan.poz-plan--studio .poz-plan__panelwrap.is-open { left: calc(100% + 12px); }
}
/* studio round 9c: the rail ends where its tools end · value pills join the
   tile instead of covering the render · realistic option icons in flyouts */
@media (min-width: 901px) {
  /* no ghost strip under the last tool */
  .poz-plan.poz-plan--studio .poz-plan__tools { bottom: auto; height: auto; padding-bottom: 12px; }
  .poz-plan.poz-plan--studio .poz-plan__panelwrap.is-open {
    max-height: calc(100svh - 300px);
  }

  /* the count/value is PART of the tile: a pill under the label */
  .poz-plan.poz-plan--studio .poz-plan__tool-count {
    position: static; margin-top: 3px; max-width: 72px; order: 4;
  }
  .poz-plan.poz-plan--studio .poz-plan__tool-count:empty { display: none; }

  /* module format cards: the top reads as the real phenolic deck */
  .poz-plan.poz-plan--studio .poz-mod__top { fill: #33302e; stroke: #a9aeb5; stroke-width: 1.4; }
  .poz-plan.poz-plan--studio .poz-mod__planks { stroke: rgba(255, 255, 255, 0.16); }
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-mod__top { fill: #3a3735; stroke: #c4c9cf; }

  /* option-chip product photos, aligned */
  .poz-plan.poz-plan--studio .poz-plan__chip:not(.poz-mod) > img {
    width: 24px; height: 24px; border-radius: 6px; object-fit: cover;
    vertical-align: -7px; margin-right: 8px;
    background: #fff; border: 1px solid rgba(20, 30, 42, 0.12);
  }
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__chip:not(.poz-mod) > img {
    border-color: rgba(255, 255, 255, 0.2);
  }
}
/* studio round 10: group micro-captions on the rail, the modifier badge on
   Noge, and the one-time workflow card */
@media (min-width: 901px) {
  /* group labels come back as tiny Michroma captions over their hairline */
  .poz-plan.poz-plan--studio .poz-plan__toolgroup {
    height: auto; margin: 14px 10px 0; padding: 8px 0 0;
    background: none; border-top: 1px solid rgba(20, 30, 42, 0.14);
    font-family: 'Michroma', sans-serif; font-size: 7.5px; letter-spacing: 0.24em;
    color: #7C8794; text-align: center; text-transform: uppercase; box-shadow: none;
  }
  .poz-plan.poz-plan--studio .poz-plan__toollist > .poz-plan__toolgroup:first-child { border-top: 0; margin-top: 4px; padding-top: 0; }
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__toolgroup { border-top-color: rgba(255, 255, 255, 0.12); color: #8B96A3; }

  /* Noge is a SETTING, not a placement tool — the little dial badge says so */
  .poz-plan.poz-plan--studio .poz-plan__tool-ico { position: relative; }
  .poz-plan.poz-plan--studio [data-tool="0"] .poz-plan__tool-ico::after {
    content: ""; position: absolute; right: -5px; bottom: -4px; width: 15px; height: 15px;
    border-radius: 999px; background-color: #0066CC;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14 14' fill='none' stroke='%23ffffff' stroke-width='1.4'%3E%3Cpath d='M3 4.2h8M3 9.8h8'/%3E%3Ccircle cx='5.4' cy='4.2' r='1.5' fill='%230066CC'/%3E%3Ccircle cx='8.6' cy='9.8' r='1.5' fill='%230066CC'/%3E%3C/svg%3E");
    background-size: 11px; background-position: center; background-repeat: no-repeat;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.3);
  }

  /* the one-time workflow card, beside the rail */
  .poz-plan.poz-plan--studio .poz-intro {
    position: absolute; z-index: 28; left: 118px; top: 78px; width: 316px;
    padding: 18px 20px 14px; border-radius: 16px;
    background: rgba(251, 252, 254, 0.94); color: #0C0D10;
    -webkit-backdrop-filter: blur(28px) saturate(1.6); backdrop-filter: blur(28px) saturate(1.6);
    border: 1px solid rgba(255, 255, 255, 0.66);
    box-shadow: 0 24px 60px rgba(15, 25, 40, 0.28);
    transition: opacity 0.3s, transform 0.3s;
  }
  .poz-plan.poz-plan--studio .poz-intro.is-out { opacity: 0; transform: translateX(-8px); }
  .poz-plan.poz-plan--studio .poz-intro > b {
    display: block; margin-bottom: 10px;
    font-family: 'Michroma', sans-serif; font-weight: 400; font-size: 11px; letter-spacing: 0.12em; text-transform: uppercase;
  }
  .poz-plan.poz-plan--studio .poz-intro p { display: flex; gap: 10px; margin: 0 0 9px; font-size: 12.5px; line-height: 1.5; }
  .poz-plan.poz-plan--studio .poz-intro p i {
    flex: none; width: 20px; height: 20px; display: grid; place-items: center;
    border-radius: 999px; font-style: normal; font-family: 'Michroma', sans-serif; font-size: 9px;
    color: #fff; background: #0066CC; margin-top: 1px;
  }
  .poz-plan.poz-plan--studio .poz-intro__x {
    position: absolute; top: 8px; right: 10px; border: 0; background: none;
    font-size: 16px; color: #7C8794; cursor: pointer; padding: 4px;
  }
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-intro {
    background: rgba(21, 23, 28, 0.94); color: #E8EAEE; border-color: rgba(255, 255, 255, 0.13);
    box-shadow: 0 24px 60px rgba(0, 0, 0, 0.55);
  }
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-intro p i { background: #3D9BFF; }
}
@media (max-width: 900px) { .poz-intro { display: none; } }
/* studio round 10b: the rail loses its glass slab — only the tiles float
   (the "ghost bar behind the tokens"); tiles compact so the rail always
   fits; the spec splits into separate windows */
@media (min-width: 901px) {
  /* —— chromeless rail —— */
  .poz-plan.poz-plan--studio .poz-plan__tools {
    background: none; border: 0; box-shadow: none;
    -webkit-backdrop-filter: none; backdrop-filter: none;
    top: 168px; width: 96px;
  }
  .poz-plan.poz-plan--studio .poz-plan__tool {
    margin: 6px 8px 0; padding: 9px 4px 8px; min-height: 72px; gap: 4px;
    background: rgba(251, 252, 254, 0.82);
    -webkit-backdrop-filter: blur(18px) saturate(1.5); backdrop-filter: blur(18px) saturate(1.5);
    box-shadow: 0 8px 22px rgba(15, 25, 40, 0.14);
  }
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__tool {
    background: rgba(28, 31, 37, 0.78); box-shadow: 0 10px 26px rgba(0, 0, 0, 0.4);
  }
  .poz-plan.poz-plan--studio .poz-plan__tool-ico img { width: 32px; height: 32px; }
  .poz-plan.poz-plan--studio .poz-plan__tool-count { margin-top: 2px; padding: 2px 6px; }
  .poz-plan.poz-plan--studio .poz-plan__toolgroup { margin: 10px 8px 0; padding-top: 6px; }
  .poz-plan.poz-plan--studio .poz-plan__panelwrap.is-open { left: calc(100% + 8px); top: 0; }
  /* short screens: tighter still, so the rail can never run past the fold */
  @media (max-height: 810px) {
    .poz-plan.poz-plan--studio .poz-plan__tools { top: 150px; }
    .poz-plan.poz-plan--studio .poz-plan__tool { min-height: 58px; padding: 7px 3px 6px; gap: 3px; }
    .poz-plan.poz-plan--studio .poz-plan__tool-ico img { width: 24px; height: 24px; }
    .poz-plan.poz-plan--studio .poz-plan__tool-name { font-size: 8.5px; }
    .poz-plan.poz-plan--studio .poz-plan__tool-count { font-size: 8px; padding: 1px 5px; }
    .poz-plan.poz-plan--studio .poz-plan__toolgroup { margin-top: 6px; padding-top: 4px; font-size: 6.5px; }
  }

  /* —— intro card sits where the rail begins —— */
  .poz-plan.poz-plan--studio .poz-intro { left: 122px; top: 168px; }

  /* —— the right side becomes separate windows —— */
  .poz-plan.poz-plan--studio .poz-plan__spec {
    background: none; border: 0; box-shadow: none;
    -webkit-backdrop-filter: none; backdrop-filter: none;
    display: flex; flex-direction: column; gap: 10px; overflow-y: auto; overscroll-behavior: contain;
    padding: 2px;
  }
  .poz-plan.poz-plan--studio .poz-plan__spec-head,
  .poz-plan.poz-plan--studio .poz-plan__bom,
  .poz-plan.poz-plan--studio .poz-plan__tots,
  .poz-plan.poz-plan--studio .poz-plan__checks,
  .poz-plan.poz-plan--studio .poz-plan__spec-foot {
    flex: none; border-radius: 16px;
    background: rgba(251, 252, 254, 0.82); color: inherit;
    -webkit-backdrop-filter: blur(22px) saturate(1.5); backdrop-filter: blur(22px) saturate(1.5);
    border: 1px solid rgba(255, 255, 255, 0.6);
    box-shadow: 0 12px 30px rgba(15, 25, 40, 0.14);
  }
  .poz-plan.poz-plan--studio .poz-plan__spec-head { position: static; padding: 14px 18px; }
  .poz-plan.poz-plan--studio .poz-plan__spec-head::after { left: 18px; right: 18px; }
  .poz-plan.poz-plan--studio .poz-plan__bom { padding: 10px 12px; }
  .poz-plan.poz-plan--studio .poz-plan__tots { padding: 12px; }
  .poz-plan.poz-plan--studio .poz-plan__checks { padding: 6px 16px 12px; border-top: 1px solid rgba(255, 255, 255, 0.6); }
  .poz-plan.poz-plan--studio .poz-plan__spec-foot { padding: 12px 16px; }
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__spec-head,
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__bom,
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__tots,
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__checks,
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__spec-foot {
    background: rgba(24, 26, 31, 0.82); border-color: rgba(255, 255, 255, 0.12);
    box-shadow: 0 14px 34px rgba(0, 0, 0, 0.45);
  }
}
/* studio round 11: the tool rail goes BLUE GLASS so the eye lands on the
   tools first; assistant pill moves up; theme/undo/reset dock beside the
   view selector; a ? tile reopens the intro card */
@media (min-width: 901px) {
  /* —— blue glass tiles —— */
  .poz-plan.poz-plan--studio .poz-plan__tool,
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__tool {
    background: linear-gradient(150deg, rgba(0, 112, 220, 0.9), rgba(0, 62, 130, 0.92));
    border: 1px solid rgba(255, 255, 255, 0.3); color: #F2F7FC;
    box-shadow: 0 10px 26px rgba(0, 60, 140, 0.35);
  }
  .poz-plan.poz-plan--studio .poz-plan__tool:hover,
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__tool:hover {
    background: linear-gradient(150deg, rgba(20, 130, 240, 0.94), rgba(0, 80, 160, 0.94));
  }
  .poz-plan.poz-plan--studio .poz-plan__tool.is-on,
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__tool.is-on {
    background: linear-gradient(150deg, rgba(40, 145, 255, 0.96), rgba(0, 92, 184, 0.96));
    border-color: rgba(255, 255, 255, 0.65);
    box-shadow: 0 0 0 3px rgba(61, 155, 255, 0.35), 0 12px 30px rgba(0, 60, 140, 0.45);
  }
  .poz-plan.poz-plan--studio .poz-plan__tool-name { color: #F2F7FC; }
  .poz-plan.poz-plan--studio .poz-plan__tool-ico img { border-color: rgba(255, 255, 255, 0.75); }
  .poz-plan.poz-plan--studio .poz-plan__tool-count,
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__tool-count {
    background: rgba(255, 255, 255, 0.22); color: #fff; border-color: rgba(255, 255, 255, 0.4);
  }
  .poz-plan.poz-plan--studio [data-tool="0"] .poz-plan__tool-ico::after {
    background-color: #fff;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14 14' fill='none' stroke='%230066CC' stroke-width='1.4'%3E%3Cpath d='M3 4.2h8M3 9.8h8'/%3E%3Ccircle cx='5.4' cy='4.2' r='1.5' fill='%23ffffff'/%3E%3Ccircle cx='8.6' cy='9.8' r='1.5' fill='%23ffffff'/%3E%3C/svg%3E");
  }
  .poz-plan.poz-plan--studio .poz-plan__toolgroup,
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__toolgroup { color: #5E86B0; }

  /* —— the ? tile —— */
  .poz-plan.poz-plan--studio .poz-help {
    display: block; width: 34px; height: 34px; margin: 12px auto 0;
    border-radius: 999px; border: 1px solid rgba(255, 255, 255, 0.35); cursor: pointer;
    background: linear-gradient(150deg, rgba(0, 112, 220, 0.85), rgba(0, 62, 130, 0.88));
    color: #fff; font-family: 'Michroma', sans-serif; font-size: 13px;
    box-shadow: 0 8px 20px rgba(0, 60, 140, 0.3);
  }
  .poz-plan.poz-plan--studio .poz-help:hover { background: linear-gradient(150deg, rgba(30, 140, 250, 0.95), rgba(0, 80, 160, 0.95)); }

  /* —— assistant pill moves to the top, clear of everything —— */
  .poz-plan.poz-plan--studio .poz-assist {
    left: auto; right: 208px; bottom: auto; top: 119px; z-index: 29;
  }

  /* —— theme / undo / reset sit beside the view selector —— */
  .poz-plan.poz-plan--studio .poz-plan__theme {
    position: absolute; order: 0; margin: 0; left: calc(50% + 146px); top: 0;
  }
  .poz-plan.poz-plan--studio .poz-plan__topact .poz-plan__iconb[data-undo] {
    position: absolute; left: calc(50% + 194px); top: 0;
  }
  .poz-plan.poz-plan--studio .poz-plan__topact .poz-plan__iconb[data-reset] {
    position: absolute; left: calc(50% + 242px); top: 0;
  }
  .poz-plan.poz-plan--studio .poz-plan__topact { order: 6; margin-left: auto; }
}
/* studio: the assistant pill's move must out-rank the old docking rule */
@media (min-width: 901px) {
  .poz-plan.poz-plan--studio [data-planner-grid]:not(.is-tools-docked) .poz-assist,
  .poz-plan.poz-plan--studio [data-planner-grid].is-tools-docked .poz-assist {
    left: calc(50% - 478px); right: auto; top: 119px; bottom: auto; z-index: 29;
  }
}
/* studio round 12: TRUE separate spec fields (own scroll each), 2D-only
   legend, the 3D totals field, dimension-layer chrome */
@media (min-width: 901px) {
  /* the column no longer scrolls as one — each field manages itself */
  .poz-plan.poz-plan--studio .poz-plan__spec { overflow: visible; bottom: 96px; }
  .poz-plan.poz-plan--studio .poz-plan__spec-head {
    border-radius: 16px 16px 0 0; border-bottom: 0; margin-bottom: -10px; flex: none;
  }
  .poz-plan.poz-plan--studio .poz-plan__bom {
    border-radius: 0 0 16px 16px; border-top: 0;
    flex: 0 1 auto; min-height: 90px; overflow-y: auto; overscroll-behavior: contain;
  }
  .poz-plan.poz-plan--studio .poz-plan__tots { flex: none; }
  .poz-plan.poz-plan--studio .poz-plan__checks {
    flex: 0 1 auto; min-height: 64px; overflow-y: auto; overscroll-behavior: contain;
  }
  .poz-plan.poz-plan--studio .poz-plan__spec-foot { flex: none; }

  /* the colour legend is a 2D concept — hidden over the 3D stage */
  .poz-plan.poz-plan--studio .poz-plan__scene.is-3d ~ .poz-plan__bar--bottom .poz-plan__legend { display: none; }

  /* the 3D totals field */
  .poz-plan.poz-plan--studio .poz-dimsum {
    position: absolute; left: 118px; bottom: 18px; z-index: 5; pointer-events: none;
    padding: 13px 18px 11px; border-radius: 14px;
    background: rgba(251, 252, 254, 0.88); color: #0C0D10;
    -webkit-backdrop-filter: blur(22px) saturate(1.5); backdrop-filter: blur(22px) saturate(1.5);
    border: 1px solid rgba(255, 255, 255, 0.6); box-shadow: 0 14px 34px rgba(15, 25, 40, 0.2);
  }
  .poz-plan.poz-plan--studio .poz-dimsum b {
    display: block; font-family: 'Michroma', sans-serif; font-weight: 400;
    font-size: 17px; letter-spacing: 0.02em; white-space: nowrap;
  }
  .poz-plan.poz-plan--studio .poz-dimsum span {
    display: block; margin-top: 3px; font-size: 11.5px; font-weight: 600; color: #46525F;
  }
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-dimsum {
    background: rgba(21, 23, 28, 0.88); color: #F2F4F7; border-color: rgba(255, 255, 255, 0.13);
    box-shadow: 0 16px 40px rgba(0, 0, 0, 0.5);
  }
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-dimsum span { color: #AEB7C2; }
  .poz-plan.poz-plan--studio .poz-plan__scene:not(.is-3d) .poz-dimsum { display: none; }
}
/* studio round 13: the flyout belongs to its tile — docked at its height,
   connector notch, cinematic expand; the coach strip retires (the intro card
   and ? tile own onboarding, and the strip clashed with the spec on narrow
   screens) */
@media (min-width: 901px) {
  .poz-plan.poz-plan--studio .poz-coach { display: none; }

  .poz-plan.poz-plan--studio .poz-plan__panelwrap.is-open {
    overflow: visible; max-height: none;
    border-color: rgba(0, 102, 204, 0.35);
    transform-origin: -8px var(--poz-notch, 44px);
    animation: pozflyout 0.3s cubic-bezier(0.34, 1.3, 0.4, 1);
  }
  .poz-plan.poz-plan--studio .poz-plan__panelwrap.is-open .poz-plan__panel {
    max-height: calc(100svh - 320px); overflow-y: auto; overscroll-behavior: contain;
    border-radius: 16px;
  }
  .poz-plan.poz-plan--studio .poz-plan__panelwrap.is-open::before {
    content: ""; position: absolute; left: -6px; top: calc(var(--poz-notch, 44px) - 8px);
    width: 15px; height: 15px; transform: rotate(45deg); border-radius: 3px;
    background: rgba(251, 252, 254, 0.96);
    border-left: 1px solid rgba(0, 102, 204, 0.35); border-bottom: 1px solid rgba(0, 102, 204, 0.35);
  }
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__panelwrap.is-open { border-color: rgba(61, 155, 255, 0.4); }
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__panelwrap.is-open::before {
    background: rgba(21, 23, 28, 0.97);
    border-left-color: rgba(61, 155, 255, 0.4); border-bottom-color: rgba(61, 155, 255, 0.4);
  }
  @keyframes pozflyout {
    from { opacity: 0; transform: translateX(-14px) scale(0.92); }
    to { opacity: 1; transform: translateX(0) scale(1); }
  }
  @media (prefers-reduced-motion: reduce) {
    .poz-plan.poz-plan--studio .poz-plan__panelwrap.is-open { animation: none; }
  }
}
/* studio: the DARK theme's panel slabs must be chromeless too — the round-2
   dark rules out-rank the light-scoped strip removal */
@media (min-width: 901px) {
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__tools,
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__spec {
    background: none; border: 0; box-shadow: none;
    -webkit-backdrop-filter: none; backdrop-filter: none;
  }
}
/* studio: in 3D the totals field IS the bottom-left readout — the old info
   line (drawing id · dims · cursor) stays 2D-only, so nothing overlaps */
@media (min-width: 901px) {
  .poz-plan.poz-plan--studio .poz-plan__scene.is-3d ~ .poz-plan__bar--bottom { display: none; }
  .poz-plan.poz-plan--studio .poz-dimsum { left: 118px; bottom: 20px; }
}
/* studio: the ? lives in the top bar beside Primjeri */
@media (min-width: 901px) {
  .poz-plan.poz-plan--studio .poz-help {
    display: grid; place-items: center; width: 42px; height: 42px; margin: 0;
    align-self: center; font-size: 14px;
  }
}
/* studio: dark twin for the group captions — the old hairline background boxed them */
@media (min-width: 901px) {
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__toolgroup { background: none; box-shadow: none; }
}

/* studio round 15: render-style backdrops + dock trio */
@media (min-width: 901px) {
  .poz-plan.poz-plan--studio .poz-plan__scene.is-3d.is-env-dvorana,
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__scene.is-3d.is-env-dvorana {
    background: radial-gradient(120% 95% at 50% 26%, #251a10 0%, #0e0906 55%, #060404 100%);
  }
  .poz-plan.poz-plan--studio .poz-plan__scene.is-3d.is-env-dvorana::before { display: none; }
  .poz-plan.poz-plan--studio .poz-plan__scene.is-3d.is-env-skica,
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__scene.is-3d.is-env-skica {
    background: radial-gradient(120% 90% at 50% 30%, #FFFFFF 0%, #F1F2F4 62%, #E7E9EC 100%);
  }
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__scene.is-3d.is-env-skica::before {
    display: block;
    background-image: url('../../assets/logo/horizontal-transparent-light.svg');
    opacity: 0.06;
  }
  .poz-plan.poz-plan--studio .poz-tb [data-tbstyle] { min-width: 54px; }
}
/* studio round 16: graphite tool tiles — the custom renders float free, no
   white plates anywhere; blue survives only as the ACTIVE accent */
@media (min-width: 901px) {
  .poz-plan.poz-plan--studio .poz-plan__tool,
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__tool {
    background: linear-gradient(155deg, rgba(64, 70, 79, 0.92), rgba(26, 29, 34, 0.94));
    border: 1px solid rgba(255, 255, 255, 0.16); color: #EDF0F4;
    box-shadow: 0 10px 26px rgba(0, 0, 0, 0.35), inset 0 1px 0 rgba(255, 255, 255, 0.12);
  }
  .poz-plan.poz-plan--studio .poz-plan__tool:hover,
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__tool:hover {
    background: linear-gradient(155deg, rgba(78, 85, 95, 0.95), rgba(34, 38, 44, 0.96));
    border-color: rgba(255, 255, 255, 0.26);
  }
  .poz-plan.poz-plan--studio .poz-plan__tool.is-on,
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__tool.is-on {
    background: linear-gradient(155deg, rgba(52, 62, 76, 0.96), rgba(16, 30, 48, 0.96));
    border-color: rgba(61, 155, 255, 0.75);
    box-shadow: 0 0 0 3px rgba(61, 155, 255, 0.28), 0 12px 30px rgba(0, 0, 0, 0.45);
  }
  .poz-plan.poz-plan--studio .poz-plan__tool-ico img,
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__tool-ico img {
    width: 42px; height: 42px; background: none; border: 0; border-radius: 0;
    object-fit: contain; filter: drop-shadow(0 3px 6px rgba(0, 0, 0, 0.5));
  }
  .poz-plan.poz-plan--studio .poz-plan__tool.is-on .poz-plan__tool-ico img,
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__tool.is-on .poz-plan__tool-ico img { box-shadow: none; }
  .poz-plan.poz-plan--studio .poz-plan__tool-count,
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__tool-count {
    background: rgba(61, 155, 255, 0.22); color: #BFDFFF; border-color: rgba(61, 155, 255, 0.4);
  }
  .poz-plan.poz-plan--studio [data-tool="0"] .poz-plan__tool-ico::after { background-color: #3D9BFF; }
  .poz-plan.poz-plan--studio .poz-help {
    background: linear-gradient(155deg, rgba(64, 70, 79, 0.9), rgba(26, 29, 34, 0.92));
    border-color: rgba(255, 255, 255, 0.2);
  }
  .poz-plan.poz-plan--studio .poz-help:hover { border-color: rgba(61, 155, 255, 0.6); }
  /* flyout option thumbs lose their white plates too */
  .poz-plan.poz-plan--studio .poz-plan__chip:not(.poz-mod) > img,
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__chip:not(.poz-mod) > img {
    background: none; border: 0; object-fit: contain; width: 26px; height: 26px;
  }
}
/* studio: the Mjerilo caption goes with its retired tool */
@media (min-width: 901px) {
  .poz-plan.poz-plan--studio .poz-plan__toollist > .poz-plan__toolgroup:last-of-type { display: none; }
}
/* studio round 18: light-gray tiles · big option cards · spec owns the right
   · totals + checks dock bottom-left */
@media (min-width: 901px) {
  /* —— light gray tiles: the renders carry the colour —— */
  .poz-plan.poz-plan--studio .poz-plan__tool,
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__tool {
    background: linear-gradient(155deg, rgba(244, 246, 249, 0.96), rgba(214, 219, 226, 0.96));
    border: 1px solid rgba(255, 255, 255, 0.75); color: #1C242C;
    box-shadow: 0 10px 24px rgba(10, 20, 35, 0.28), inset 0 1px 0 rgba(255, 255, 255, 0.85);
  }
  .poz-plan.poz-plan--studio .poz-plan__tool:hover,
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__tool:hover {
    background: linear-gradient(155deg, rgba(252, 253, 255, 0.98), rgba(226, 230, 236, 0.98));
  }
  .poz-plan.poz-plan--studio .poz-plan__tool.is-on,
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__tool.is-on {
    background: linear-gradient(155deg, rgba(233, 242, 252, 0.98), rgba(199, 219, 240, 0.98));
    border-color: rgba(0, 102, 204, 0.65);
    box-shadow: 0 0 0 3px rgba(0, 122, 235, 0.3), 0 12px 28px rgba(10, 20, 35, 0.3);
  }
  .poz-plan.poz-plan--studio .poz-plan__tool-name,
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__tool-name { color: #1C242C; }
  .poz-plan.poz-plan--studio .poz-plan__tool-ico img,
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__tool-ico img {
    filter: drop-shadow(0 3px 5px rgba(10, 20, 35, 0.35));
  }
  .poz-plan.poz-plan--studio .poz-plan__tool-count,
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__tool-count {
    background: rgba(0, 102, 204, 0.12); color: #005AB5; border-color: rgba(0, 102, 204, 0.28);
  }
  .poz-plan.poz-plan--studio .poz-plan__tool-ico { color: #33404E; }
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__tool-ico { color: #33404E; }

  /* —— big picture option cards in the flyouts —— */
  .poz-plan.poz-plan--studio .poz-plan__chip.is-pic {
    display: inline-flex; flex-direction: column; align-items: center; gap: 7px;
    padding: 12px 14px 10px; min-width: 86px; border-radius: 14px;
  }
  .poz-plan.poz-plan--studio .poz-plan__chip.is-pic > img,
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__chip.is-pic > img {
    width: 52px; height: 52px; margin: 0; vertical-align: baseline;
    object-fit: contain; background: none; border: 0;
    filter: drop-shadow(0 3px 5px rgba(10, 20, 35, 0.3));
  }
  .poz-plan.poz-plan--studio .poz-plan__chip.is-pic > svg { width: 30px; height: 30px; margin: 0; }

  /* —— the right column is all specification —— */
  .poz-plan.poz-plan--studio .poz-plan__spec .poz-plan__tots,
  .poz-plan.poz-plan--studio .poz-plan__spec .poz-plan__checks { display: none; }
  .poz-plan.poz-plan--studio .poz-plan__bom { flex: 1 1 auto; max-height: none; }

  /* —— bottom-left dock: checks above, totals+dims below —— */
  .poz-plan.poz-plan--studio .poz-dock-left {
    position: absolute; left: 18px; bottom: 20px; z-index: 27; max-width: 330px;
    display: flex; flex-direction: column; gap: 10px; width: 330px;
  }
  .poz-plan.poz-plan--studio .poz-dock-left .poz-plan__checks,
  .poz-plan.poz-plan--studio .poz-sumcard {
    display: block; border-radius: 16px;
    background: rgba(251, 252, 254, 0.82); color: #0C0D10;
    -webkit-backdrop-filter: blur(22px) saturate(1.5); backdrop-filter: blur(22px) saturate(1.5);
    border: 1px solid rgba(255, 255, 255, 0.6);
    box-shadow: 0 12px 30px rgba(15, 25, 40, 0.16);
  }
  .poz-plan.poz-plan--studio .poz-dock-left .poz-plan__checks {
    padding: 2px 14px 8px; max-height: 132px; overflow-y: auto; overscroll-behavior: contain;
  }
  .poz-plan.poz-plan--studio .poz-dock-left .poz-plan__check { padding-top: 5px; padding-bottom: 5px; }
  .poz-plan.poz-plan--studio .poz-dock-left .poz-plan__check-tx { font-size: 11px; }
  .poz-plan.poz-plan--studio .poz-dock-left .poz-plan__check-name { font-size: 11.5px; }
  .poz-plan.poz-plan--studio .poz-sumcard { padding: 12px 14px; }
  .poz-plan.poz-plan--studio .poz-sumcard__dims b {
    display: block; font-family: 'Michroma', sans-serif; font-weight: 400; font-size: 16px;
  }
  .poz-plan.poz-plan--studio .poz-sumcard__dims span { display: block; margin: 3px 0 8px; font-size: 11.5px; font-weight: 600; color: #46525F; }
  .poz-plan.poz-plan--studio .poz-sumcard .poz-plan__tots { display: flex; flex-direction: row; gap: 6px; padding: 0; }
  .poz-plan.poz-plan--studio .poz-sumcard .poz-plan__tot { flex: 1 1 0; min-width: 0; padding: 8px 8px; gap: 8px; }
  .poz-plan.poz-plan--studio .poz-sumcard .poz-plan__tot::before { width: 24px; height: 24px; background-size: 14px; }
  .poz-plan.poz-plan--studio .poz-sumcard .poz-plan__tot span { font-size: 9px; }
  .poz-plan.poz-plan--studio .poz-sumcard .poz-plan__tot b { font-size: 11.5px; }
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-dock-left .poz-plan__checks,
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-sumcard {
    background: rgba(24, 26, 31, 0.85); color: #E8EAEE; border-color: rgba(255, 255, 255, 0.12);
    box-shadow: 0 14px 34px rgba(0, 0, 0, 0.45);
  }
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-sumcard__dims span { color: #AEB7C2; }
}
/* studio: the checks collapse to their status line and expand UPWARD over
   the stage on click — the corner stays small, the detail stays reachable */
@media (min-width: 901px) {
  .poz-plan.poz-plan--studio .poz-dock-left { width: 300px; }
  .poz-plan.poz-plan--studio .poz-dock-left .poz-plan__checks { max-height: none; overflow: visible; padding: 2px 14px 6px; }
  .poz-plan.poz-plan--studio .poz-dock-left .poz-plan__checks [data-check-list] { display: none; }
  .poz-plan.poz-plan--studio .poz-dock-left .poz-plan__checks.is-open [data-check-list] {
    display: block; max-height: 44svh; overflow-y: auto; overscroll-behavior: contain; padding-bottom: 6px;
  }
  .poz-plan.poz-plan--studio .poz-dock-left .poz-plan__checks-head { cursor: pointer; }
  .poz-plan.poz-plan--studio .poz-dock-left .poz-plan__checks-head::after {
    content: "⌄"; margin-left: 8px; font-size: 13px; opacity: 0.6; transition: transform 0.2s; display: inline-block;
  }
  .poz-plan.poz-plan--studio .poz-dock-left .poz-plan__checks.is-open .poz-plan__checks-head::after { transform: rotate(180deg); }
  .poz-plan.poz-plan--studio .poz-sumcard { padding: 10px 12px; }
  .poz-plan.poz-plan--studio .poz-sumcard__dims b { font-size: 15px; }
  .poz-plan.poz-plan--studio .poz-sumcard__dims span { margin: 2px 0 6px; font-size: 11px; }
}
/* studio: five tiles + the corner dock share the left edge — tighten the rail */
@media (min-width: 901px) {
  .poz-plan.poz-plan--studio .poz-plan__tool { min-height: 64px; padding: 8px 4px 7px; margin: 5px 9px 0; gap: 3px; }
  .poz-plan.poz-plan--studio .poz-plan__tool-ico img,
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__tool-ico img { width: 36px; height: 36px; }
  .poz-plan.poz-plan--studio .poz-plan__toolgroup { margin: 8px 8px 0; padding-top: 5px; }
}
/* studio round 19: the corner is ONE clean card — headline dims, a single
   facts line, a status chip; the check list is a popover */
@media (min-width: 901px) {
  .poz-plan.poz-plan--studio .poz-dock-left { width: auto; max-width: 380px; }
  .poz-plan.poz-plan--studio .poz-sumcard { padding: 13px 16px 12px; }
  .poz-plan.poz-plan--studio .poz-sumcard .poz-plan__tots { display: none !important; }
  .poz-plan.poz-plan--studio .poz-sumcard__dims b { font-size: 17px; }
  .poz-plan.poz-plan--studio .poz-sumcard__dims span { margin: 4px 0 0; font-size: 11.5px; white-space: nowrap; }
  .poz-plan.poz-plan--studio .poz-sumcard__chk {
    margin-top: 9px; display: inline-flex; align-items: center; gap: 7px;
    padding: 6px 12px; border-radius: 999px; cursor: pointer;
    border: 1px solid rgba(23, 160, 80, 0.35); background: rgba(23, 160, 80, 0.1);
    color: #0F7A3D; font-size: 11.5px; font-weight: 600;
  }
  .poz-plan.poz-plan--studio .poz-sumcard__chk i { width: 8px; height: 8px; border-radius: 999px; background: #17A050; }
  .poz-plan.poz-plan--studio .poz-sumcard__chk.is-warn {
    border-color: rgba(214, 106, 26, 0.4); background: rgba(214, 106, 26, 0.12); color: #B05A10;
  }
  .poz-plan.poz-plan--studio .poz-sumcard__chk.is-warn i { background: #D66A1A; }
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-sumcard__chk { color: #6FE0A0; }
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-sumcard__chk.is-warn { color: #F0A560; }

  .poz-plan.poz-plan--studio .poz-checkpop {
    position: absolute; left: 18px; bottom: 148px; z-index: 40; width: 370px;
    max-height: 52svh; overflow-y: auto; overscroll-behavior: contain;
    border-radius: 16px;
    background: rgba(251, 252, 254, 0.94); color: #0C0D10;
    -webkit-backdrop-filter: blur(26px) saturate(1.5); backdrop-filter: blur(26px) saturate(1.5);
    border: 1px solid rgba(255, 255, 255, 0.65);
    box-shadow: 0 22px 54px rgba(15, 25, 40, 0.3);
  }
  .poz-plan.poz-plan--studio .poz-checkpop[hidden] { display: none; }
  .poz-plan.poz-plan--studio .poz-checkpop .poz-plan__checks {
    display: block; padding: 2px 16px 10px; background: none; border: 0; box-shadow: none; max-height: none; overflow: visible;
  }
  .poz-plan.poz-plan--studio .poz-checkpop .poz-plan__checks [data-check-list] { display: block; }
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-checkpop {
    background: rgba(21, 23, 28, 0.95); color: #E8EAEE; border-color: rgba(255, 255, 255, 0.13);
    box-shadow: 0 24px 60px rgba(0, 0, 0, 0.55);
  }
}
/* studio round 20: summary joins the spec column; the corner is the full
   Provjere card, no click needed */
@media (min-width: 901px) {
  .poz-plan.poz-plan--studio .poz-plan__spec .poz-sumcard { flex: none; }
  .poz-plan.poz-plan--studio .poz-dock-left .poz-plan__checks [data-check-list] { display: block; }
  .poz-plan.poz-plan--studio .poz-dock-left .poz-plan__checks {
    padding: 2px 14px 8px;
    max-height: clamp(140px, calc(100svh - 706px), 300px);
    overflow-y: auto; overscroll-behavior: contain;
  }
  .poz-plan.poz-plan--studio .poz-dock-left .poz-plan__checks-head { cursor: default; }
  .poz-plan.poz-plan--studio .poz-dock-left .poz-plan__checks-head::after { display: none; }
}
/* studio round 21: dark theme gets graphite tiles; the checks header gets
   real typography — title and count breathe */
@media (min-width: 901px) {
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__tool {
    background: linear-gradient(155deg, rgba(58, 63, 71, 0.95), rgba(23, 26, 31, 0.96));
    border: 1px solid rgba(255, 255, 255, 0.14); color: #EDF0F4;
    box-shadow: 0 10px 26px rgba(0, 0, 0, 0.4), inset 0 1px 0 rgba(255, 255, 255, 0.1);
  }
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__tool:hover {
    background: linear-gradient(155deg, rgba(74, 80, 89, 0.96), rgba(32, 36, 42, 0.97));
    border-color: rgba(255, 255, 255, 0.24);
  }
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__tool.is-on {
    background: linear-gradient(155deg, rgba(38, 54, 74, 0.97), rgba(14, 28, 46, 0.97));
    border-color: rgba(61, 155, 255, 0.65);
    box-shadow: 0 0 0 3px rgba(61, 155, 255, 0.3), 0 12px 28px rgba(0, 0, 0, 0.5);
  }
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__tool-name { color: #EDF0F4; }
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__tool-count {
    background: rgba(61, 155, 255, 0.18); color: #8CC5FF; border-color: rgba(61, 155, 255, 0.35);
  }
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__tool-ico img {
    filter: drop-shadow(0 3px 6px rgba(0, 0, 0, 0.6)) brightness(1.12);
  }

  /* checks header: Michroma title, count as its own quiet pill, real padding */
  .poz-plan.poz-plan--studio .poz-dock-left .poz-plan__checks-head {
    display: flex; align-items: center; justify-content: space-between; gap: 14px;
    padding: 13px 4px 9px; min-height: 0; background: none; cursor: default;
    font-family: 'Michroma', sans-serif; font-size: 10.5px; letter-spacing: 0.14em;
  }
  .poz-plan.poz-plan--studio .poz-dock-left .poz-plan__checks-head [data-check-count] {
    font-family: 'Michroma', sans-serif; font-size: 10px; letter-spacing: 0.08em;
    padding: 4px 10px; border-radius: 999px; flex: none;
    background: rgba(0, 102, 204, 0.1); color: #005AB5; border: 1px solid rgba(0, 102, 204, 0.22);
  }
  .poz-plan.poz-plan--studio.poz-studio-dark .poz-dock-left .poz-plan__checks-head [data-check-count] {
    background: rgba(61, 155, 255, 0.16); color: #8CC5FF; border-color: rgba(61, 155, 255, 0.32);
  }
  .poz-plan.poz-plan--studio .poz-dock-left .poz-plan__check { padding-left: 2px; padding-right: 2px; }

  /* summary card typography inside the spec column */
  .poz-plan.poz-plan--studio .poz-plan__spec .poz-sumcard { padding: 14px 18px 13px; }
  .poz-plan.poz-plan--studio .poz-plan__spec .poz-sumcard__dims span { white-space: normal; line-height: 1.55; }
}
/* studio: flyouts must never sink under the checks corner */
@media (min-width: 901px) {
  .poz-plan.poz-plan--studio .poz-plan__tools { z-index: 31; }
  .poz-plan.poz-plan--studio .poz-dock-left { z-index: 24; }
}

/* ═══ VODIČ v2 — the Audi-pattern guided configurator ═══ */
@media (min-width: 901px) {
  .poz-plan.poz-plan--studio .poz-plan__wizard.poz-vodic {
    display: flex; flex-direction: column; align-items: stretch; justify-content: flex-start;
    background: #0A0B0D; z-index: 55; padding: 96px 0 0;
  }
  .poz-vodic__bar {
    flex: none; display: flex; align-items: center; gap: 26px;
    padding: 14px 28px; border-bottom: 1px solid rgba(255, 255, 255, 0.08);
  }
  .poz-vodic__brand {
    font-family: 'Michroma', sans-serif; font-size: 11px; letter-spacing: 0.12em;
    text-transform: uppercase; color: #EDF0F4; white-space: nowrap;
  }
  .poz-vodic__nav { flex: 1 1 auto; display: flex; justify-content: center; gap: 4px; }
  .poz-vodic__nav button {
    border: 0; background: none; color: #94949a; cursor: pointer;
    padding: 9px 14px 11px; font-size: 12.5px; font-weight: 600; letter-spacing: 0.02em;
    border-bottom: 2px solid transparent; transition: color 0.16s, border-color 0.16s;
  }
  .poz-vodic__nav button:hover { color: #EDF0F4; }
  .poz-vodic__nav button.is-on { color: #fff; border-bottom-color: #8a8a90; }
  .poz-vodic__nav button.is-locked { opacity: 0.4; cursor: default; }
  .poz-vodic__x {
    flex: none; width: 36px; height: 36px; border: 0; border-radius: 999px; cursor: pointer;
    background: rgba(255, 255, 255, 0.08); color: #C9D0D8; font-size: 17px;
  }
  .poz-vodic__x:hover { background: rgba(255, 255, 255, 0.16); color: #fff; }

  .poz-vodic__hero {
    flex: 1 1 46%; min-height: 220px; display: grid; place-items: center; overflow: hidden;
    background: radial-gradient(120% 100% at 50% 38%, #F2F3F5 0%, #DDE1E6 58%, #C9CEd5 100%);
  }
  .poz-vodic__hero img { max-width: min(92%, 1020px); max-height: 100%; object-fit: contain; }

  .poz-vodic__body { flex: 1 1 auto; overflow-y: auto; padding: 22px 28px 16px; max-width: 1060px; margin: 0 auto; width: 100%; }
  .poz-vodic__step {
    font-family: 'Michroma', sans-serif; font-size: 9.5px; letter-spacing: 0.16em;
    color: #6C7683; text-transform: uppercase; margin-bottom: 8px;
  }
  .poz-vodic__q { margin: 0 0 8px; font-size: 21px; font-weight: 650; color: #F4F6F8; letter-spacing: 0.01em; }
  .poz-vodic__e { margin: 0 0 16px; font-size: 13px; line-height: 1.55; color: #9AA3AE; max-width: 640px; }
  .poz-vodic__opts { display: flex; flex-wrap: wrap; gap: 12px; }
  .poz-vodic__opt {
    display: flex; align-items: center; gap: 14px; min-width: 250px; flex: 0 1 auto;
    padding: 15px 18px; border-radius: 14px; cursor: pointer; text-align: left;
    background: rgba(255, 255, 255, 0.05); border: 1px solid rgba(255, 255, 255, 0.13); color: #EDF0F4;
    transition: border-color 0.16s, background 0.16s;
  }
  .poz-vodic__opt:hover { border-color: rgba(138, 138, 144, 0.5); background: rgba(255, 255, 255, 0.08); }
  .poz-vodic__opt.is-on { border-color: #8a8a90; background: rgba(110, 110, 116, 0.14); box-shadow: 0 0 0 3px rgba(138, 138, 144, 0.2); }
  .poz-vodic__opt > img { width: 46px; height: 46px; object-fit: contain; filter: drop-shadow(0 3px 6px rgba(0,0,0,0.5)) brightness(1.1); }
  .poz-vodic__opt-tx { flex: 1 1 auto; display: flex; flex-direction: column; gap: 3px; }
  .poz-vodic__opt-tx b { font-size: 14.5px; font-weight: 650; }
  .poz-vodic__opt-tx i { font-style: normal; font-size: 12px; color: #9AA3AE; }
  .poz-vodic__radio {
    flex: none; width: 18px; height: 18px; border-radius: 999px;
    border: 2px solid rgba(255, 255, 255, 0.35);
  }
  .poz-vodic__opt.is-on .poz-vodic__radio { border-color: #8a8a90; background: radial-gradient(circle at center, #8a8a90 0 42%, transparent 46%); }

  .poz-vodic__foot {
    flex: none; display: flex; align-items: center; justify-content: space-between; gap: 20px;
    padding: 13px 28px; border-top: 1px solid rgba(255, 255, 255, 0.08); background: rgba(14, 15, 18, 0.9);
  }
  .poz-vodic__sum { display: flex; flex-direction: column; gap: 2px; }
  .poz-vodic__sum b { font-size: 12px; color: #EDF0F4; font-weight: 650; }
  .poz-vodic__sum span { font-family: 'Michroma', sans-serif; font-size: 11px; letter-spacing: 0.06em; color: #bbbbc1; }
  .poz-vodic__foot-btns { display: flex; gap: 10px; }
  .poz-vodic__back, .poz-vodic__next {
    border-radius: 12px; padding: 13px 22px; font-size: 12.5px; font-weight: 650; cursor: pointer;
    letter-spacing: 0.02em;
  }
  .poz-vodic__back { border: 1px solid rgba(255, 255, 255, 0.2); background: none; color: #C9D0D8; }
  .poz-vodic__back:disabled { opacity: 0.35; cursor: default; }
  .poz-vodic__next { border: 0; background: #535359; color: #fff; box-shadow: 0 10px 26px rgba(65, 65, 71, 0.4); }
  .poz-vodic__next:hover:not(:disabled) { background: #5f5f65; }
  .poz-vodic__next:disabled { opacity: 0.4; cursor: default; box-shadow: none; }
}
/* VODIČ v2.1 — premium graphical cards: media banner on every option,
   refined type, step transitions */
@media (min-width: 901px) {
  .poz-vodic__body > * { animation: pozvstep 0.34s cubic-bezier(0.3, 0.9, 0.3, 1) both; }
  .poz-vodic__q { animation-delay: 0.02s; }
  .poz-vodic__e { animation-delay: 0.05s; }
  .poz-vodic__opts { animation-delay: 0.08s; }
  @keyframes pozvstep {
    from { opacity: 0; transform: translateY(10px); }
    to { opacity: 1; transform: translateY(0); }
  }

  .poz-vodic__opts { display: grid; grid-template-columns: repeat(auto-fill, minmax(225px, 1fr)); gap: 14px; }
  .poz-vodic__opt {
    position: relative; display: flex; flex-direction: column; align-items: stretch; gap: 0;
    min-width: 0; padding: 0; overflow: hidden; border-radius: 16px;
    background: rgba(255, 255, 255, 0.05); border: 1px solid rgba(255, 255, 255, 0.13);
    transition: border-color 0.18s, background 0.18s, transform 0.18s, box-shadow 0.18s;
  }
  .poz-vodic__opt:hover { transform: translateY(-2px); box-shadow: 0 14px 34px rgba(0, 0, 0, 0.4); }
  .poz-vodic__opt.is-on { border-color: #8a8a90; box-shadow: 0 0 0 3px rgba(138, 138, 144, 0.22), 0 14px 34px rgba(0, 0, 0, 0.4); }
  .poz-vodic__media {
    position: relative; display: grid; place-items: center; height: 118px; overflow: hidden;
    background: radial-gradient(130% 120% at 50% 30%, #F2F3F5 0%, #DCE0E5 62%, #C8CDD4 100%);
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  }
  .poz-vodic__media img { max-width: 86%; max-height: 96px; object-fit: contain; filter: drop-shadow(0 4px 8px rgba(19, 19, 25, 0.3)); }
  .poz-vodic__media .poz-vodic__diag { width: 118px; height: 74px; }
  .poz-vodic__kg {
    position: absolute; right: 8px; top: 8px; font-style: normal;
    font-family: 'Michroma', sans-serif; font-size: 8.5px; letter-spacing: 0.06em;
    padding: 4px 8px; border-radius: 999px; background: rgba(12, 13, 16, 0.78); color: #EDF0F4;
  }
  .poz-vodic__opt-tx { padding: 12px 46px 13px 16px; }
  .poz-vodic__opt-tx b { font-size: 14px; }
  .poz-vodic__opt-tx i { font-size: 11.5px; line-height: 1.45; }
  .poz-vodic__radio { position: absolute; right: 13px; bottom: 15px; }
  .poz-vodic__opt > img { display: none; }

  .poz-vodic__hero { position: relative; }
  .poz-vodic__hero::after {
    content: ""; position: absolute; inset: auto 0 0 0; height: 34px;
    background: linear-gradient(180deg, rgba(10, 11, 13, 0) 0%, rgba(10, 11, 13, 0.35) 100%);
    pointer-events: none;
  }
}
/* VODIČ v2.2 — gallery hero (multiple fixed views with measurements),
   richer surfaces: no flat black slabs */
@media (min-width: 901px) {
  .poz-plan.poz-plan--studio .poz-plan__wizard.poz-vodic {
    background:
      radial-gradient(90% 60% at 50% -5%, rgba(50, 50, 56, 0.55) 0%, rgba(10, 11, 13, 0) 55%),
      linear-gradient(180deg, #101216 0%, #0A0B0D 45%, #08090B 100%);
  }
  .poz-vodic__bar {
    background: rgba(16, 18, 22, 0.72);
    -webkit-backdrop-filter: blur(20px) saturate(1.4); backdrop-filter: blur(20px) saturate(1.4);
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  }
  .poz-vodic__foot {
    background: rgba(16, 18, 22, 0.82);
    -webkit-backdrop-filter: blur(20px) saturate(1.4); backdrop-filter: blur(20px) saturate(1.4);
    border-top: 1px solid rgba(255, 255, 255, 0.1);
  }

  .poz-vodic__hero {
    flex: 0 0 42%; min-height: 240px; display: grid;
    grid-template-columns: 1.5fr 1fr 1fr; gap: 2px; place-items: stretch;
    background: #08090B; padding: 0;
  }
  .poz-vodic__hero::after { display: none; }
  .poz-vodic__view {
    position: relative; margin: 0; display: grid; place-items: center; overflow: hidden;
    background: radial-gradient(120% 100% at 50% 36%, #F2F3F5 0%, #DDE1E6 58%, #C9CED5 100%);
  }
  .poz-vodic__view img { max-width: 94%; max-height: calc(100% - 40px); object-fit: contain; }
  .poz-vodic__view .poz-vodic__plansvg { width: min(92%, 470px); height: auto; }
  .poz-vodic__view figcaption {
    position: absolute; left: 12px; bottom: 10px;
    font-family: 'Michroma', sans-serif; font-size: 8.5px; letter-spacing: 0.14em; text-transform: uppercase;
    padding: 5px 10px; border-radius: 999px;
    background: rgba(12, 13, 16, 0.72); color: #DCE4EC;
  }
  .poz-vodic__view--main img { max-width: 96%; }
}
/* VODIČ v2.3 — Audi split layout: renders left 2/3, options sidebar right;
   blue engineering backdrop instead of flat black */
@media (min-width: 901px) {
  .poz-plan.poz-plan--studio .poz-plan__wizard.poz-vodic {
    background:
      radial-gradient(85% 55% at 72% -4%, rgba(65, 65, 71, 0.5) 0%, rgba(10, 15, 24, 0) 58%),
      radial-gradient(70% 45% at 12% 108%, rgba(50, 50, 56, 0.35) 0%, rgba(10, 15, 24, 0) 55%),
      repeating-linear-gradient(0deg, rgba(140, 140, 146, 0.045) 0 1px, transparent 1px 44px),
      repeating-linear-gradient(90deg, rgba(140, 140, 146, 0.045) 0 1px, transparent 1px 44px),
      linear-gradient(180deg, #0D1420 0%, #0A101A 55%, #080C13 100%);
  }
  .poz-vodic__bar { background: rgba(13, 20, 32, 0.72); border-bottom-color: rgba(162, 162, 168, 0.14); }
  .poz-vodic__foot { background: rgba(13, 20, 32, 0.82); border-top-color: rgba(162, 162, 168, 0.14); }

  .poz-vodic__main { flex: 1 1 auto; display: grid; grid-template-columns: 1.72fr 1fr; min-height: 0; }
  .poz-vodic__hero {
    flex: none; display: grid; grid-template-columns: 1fr; grid-template-rows: minmax(0, 1fr) auto; gap: 10px;
    min-height: 0; background: transparent; padding: 14px 0 14px 16px;
  }
  .poz-vodic__subviews { display: grid; grid-template-columns: 1fr 1fr; gap: 2px; height: 168px; }
  .poz-vodic__view { border-radius: 14px; border: 1px solid rgba(162, 162, 168, 0.16); }
  .poz-vodic__view--main { border-radius: 16px; }
  .poz-vodic__view img { max-height: calc(100% - 30px); }

  .poz-vodic__body {
    flex: none; min-height: 0; overflow-y: auto; overscroll-behavior: contain;
    margin: 14px 16px 14px 14px; padding: 20px 20px 16px; max-width: none; width: auto;
    border-radius: 16px; background: rgba(15, 22, 34, 0.66);
    -webkit-backdrop-filter: blur(20px) saturate(1.4); backdrop-filter: blur(20px) saturate(1.4);
    border: 1px solid rgba(162, 162, 168, 0.16);
  }
  .poz-vodic__opts { grid-template-columns: repeat(auto-fill, minmax(178px, 1fr)); gap: 12px; }
  .poz-vodic__media { height: 100px; }
  .poz-vodic__media img { max-height: 82px; }
  .poz-vodic__media .poz-vodic__diag { width: 104px; height: 66px; }
  .poz-vodic__opt-tx { padding: 10px 40px 11px 13px; }
  .poz-vodic__opt-tx b { font-size: 13px; }
  .poz-vodic__opt-tx i { font-size: 11px; }
  .poz-vodic__radio { right: 11px; bottom: 13px; width: 16px; height: 16px; }
  .poz-vodic__q { font-size: 19px; }
}
/* ===== VODIČ v2.4 — dark premium option cards, size tiers, popular badge, inline heights ===== */
.poz-vodic__opts .poz-vodic__opt .poz-vodic__media {
  background: linear-gradient(155deg, #303a46 0%, #232b35 46%, #171d26 100%);
  border-bottom: 1px solid rgba(157, 157, 163, 0.14);
}
.poz-vodic__opts .poz-vodic__opt .poz-vodic__media img {
  filter: brightness(1.22) contrast(1.04) drop-shadow(0 10px 14px rgba(0, 0, 0, 0.45));
}
.poz-vodic__opts .poz-vodic__opt .poz-vodic__kg {
  background: rgba(10, 16, 24, 0.72);
  border: 1px solid rgba(157, 157, 163, 0.3);
  color: #dfdfe5;
}
.poz-vodic__opt.is-lg .poz-vodic__media { height: 122px; }
.poz-vodic__opt.is-sm .poz-vodic__media { height: 66px; }
.poz-vodic__opt.is-sm b { font-size: 12px; }
.poz-vodic__opt.is-sm i { font-size: 10.5px; }
.poz-vodic__pop {
  position: absolute; top: 8px; left: 8px; z-index: 2;
  font-family: Michroma, sans-serif; font-style: normal;
  font-size: 7.5px; letter-spacing: 0.09em; text-transform: uppercase;
  color: #fff; padding: 4px 8px 3px; border-radius: 999px;
  background: linear-gradient(120deg, #6a6a70, #4f4f55);
  box-shadow: 0 4px 12px rgba(79, 79, 85, 0.45);
}
.poz-vodic__opts .poz-vodic__opt .poz-vodic__media { position: relative; }
.poz-vodic__subq {
  margin-top: 14px; padding-top: 13px;
  border-top: 1px solid rgba(175, 175, 181, 0.14);
  animation: pozsubq 0.42s cubic-bezier(0.05, 0.7, 0.1, 1) both;
}
@keyframes pozsubq {
  from { opacity: 0; transform: translateY(-8px); }
  to { opacity: 1; transform: translateY(0); }
}
.poz-vodic__subq h4 {
  margin: 0 0 9px; font-family: Michroma, sans-serif; font-weight: 400;
  font-size: 10px; letter-spacing: 0.07em; text-transform: uppercase;
  color: rgba(226, 226, 232, 0.85);
}
.poz-vodic__chips { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 7px; }
.poz-vodic__chip {
  display: flex; flex-direction: column; align-items: center; gap: 2px;
  padding: 9px 6px 8px; border-radius: 11px; cursor: pointer;
  border: 1px solid rgba(175, 175, 181, 0.16);
  background: linear-gradient(155deg, rgba(48, 58, 70, 0.55), rgba(23, 29, 38, 0.65));
  color: #e8eef6; transition: border-color 0.18s, background 0.18s, transform 0.14s;
}
.poz-vodic__chip:hover { border-color: rgba(157, 157, 163, 0.45); transform: translateY(-1px); }
.poz-vodic__chip b { font-size: 12.5px; font-weight: 600; letter-spacing: 0.01em; }
.poz-vodic__chip i { font-style: normal; font-size: 10px; color: rgba(202, 202, 208, 0.75); }
.poz-vodic__chip.is-on {
  border-color: #8a8a90;
  background: linear-gradient(155deg, rgba(106, 106, 112, 0.4), rgba(79, 79, 85, 0.3));
  box-shadow: 0 0 0 1px rgba(138, 138, 144, 0.35), 0 8px 20px rgba(79, 79, 85, 0.25);
}
/* ===== VODIČ v2.5 — dark technical view tiles, deeper backdrop, data-strip foot ===== */
.poz-vodic {
  background:
    radial-gradient(ellipse 62% 50% at 30% 30%, rgba(86, 86, 92, 0.30) 0%, rgba(86, 86, 92, 0) 68%),
    radial-gradient(ellipse 55% 44% at 78% 76%, rgba(48, 48, 54, 0.34) 0%, rgba(48, 48, 54, 0) 70%),
    radial-gradient(ellipse 120% 90% at 50% 50%, rgba(0, 0, 0, 0) 40%, rgba(2, 5, 10, 0.55) 100%),
    repeating-linear-gradient(0deg, rgba(152, 152, 158, 0.05) 0 1px, transparent 1px 44px),
    repeating-linear-gradient(90deg, rgba(152, 152, 158, 0.05) 0 1px, transparent 1px 44px),
    repeating-linear-gradient(0deg, rgba(168, 168, 174, 0.075) 0 1px, transparent 1px 220px),
    repeating-linear-gradient(90deg, rgba(168, 168, 174, 0.075) 0 1px, transparent 1px 220px),
    linear-gradient(178deg, #0a111c 0%, #14141a 44%, #081019 100%);
}
.poz-vodic__hero .poz-vodic__view {
  display: flex; align-items: center; justify-content: center;
  overflow: hidden;
  background:
    radial-gradient(ellipse 70% 60% at 50% 42%, rgba(122, 122, 128, 0.16) 0%, rgba(122, 122, 128, 0) 74%),
    repeating-linear-gradient(0deg, rgba(152, 152, 158, 0.045) 0 1px, transparent 1px 36px),
    repeating-linear-gradient(90deg, rgba(152, 152, 158, 0.045) 0 1px, transparent 1px 36px),
    linear-gradient(165deg, #1b2430 0%, #131b26 52%, #0d141d 100%);
  border: 1px solid rgba(158, 158, 164, 0.16);
  box-shadow: inset 0 1px 0 rgba(211, 211, 217, 0.07), 0 18px 44px rgba(0, 0, 0, 0.4);
}
.poz-vodic__hero .poz-vodic__view img {
  width: 100%; height: 100%; object-fit: contain;
  filter: brightness(1.1) drop-shadow(0 16px 26px rgba(0, 0, 0, 0.5));
}
.poz-vodic__hero .poz-vodic__view .poz-vodic__plansvg {
  width: auto; height: auto; max-width: 92%; max-height: 92%;
}
.poz-vodic__hero .poz-vodic__view figcaption {
  background: rgba(8, 13, 21, 0.78);
  border: 1px solid rgba(158, 158, 164, 0.22);
  color: #dddde3;
  backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px);
}
/* foot: Audi-style data strip */
.poz-vodic__foot {
  gap: 22px;
  background: linear-gradient(180deg, rgba(13, 21, 34, 0.86), rgba(8, 13, 21, 0.94));
  border-top: 1px solid rgba(158, 158, 164, 0.16);
  backdrop-filter: blur(14px); -webkit-backdrop-filter: blur(14px);
}
.poz-vodic__sum { display: flex; align-items: center; gap: 20px; min-width: 0; flex: 1; }
.poz-vodic__sum > b {
  font-family: Michroma, sans-serif; font-weight: 400;
  font-size: 9px; letter-spacing: 0.13em; text-transform: uppercase;
  color: rgba(196, 196, 202, 0.7); white-space: nowrap;
}
.poz-vodic__facts { display: flex; align-items: center; gap: 16px; overflow: hidden; }
.poz-vodic__fact { display: flex; flex-direction: column; gap: 3px; white-space: nowrap; }
.poz-vodic__fact i {
  font-style: normal; font-family: Michroma, sans-serif;
  font-size: 7px; letter-spacing: 0.12em; text-transform: uppercase;
  color: rgba(168, 168, 174, 0.62);
}
.poz-vodic__fact b { font-size: 13.5px; font-weight: 600; color: #eaf1f9; letter-spacing: 0.01em; }
.poz-vodic__fsep { width: 1px; height: 26px; background: rgba(175, 175, 181, 0.16); flex: none; }
.poz-vodic__fhint { font-size: 12px; color: rgba(168, 168, 174, 0.55); }
.poz-vodic__fact { animation: pozfact 0.4s cubic-bezier(0.05, 0.7, 0.1, 1) both; }
@keyframes pozfact {
  from { opacity: 0; transform: translateY(6px); }
  to { opacity: 1; transform: translateY(0); }
}
/* v2.5.1 — foot strip on one line: label left, data flowing, actions right */
.poz-vodic__foot .poz-vodic__sum {
  display: flex; flex-direction: row; align-items: center;
  gap: 22px; text-align: left; justify-content: flex-start;
}
.poz-vodic__foot .poz-vodic__sum > b { padding-right: 2px; border-right: 1px solid rgba(175, 175, 181, 0.18); padding-right: 20px; }
.poz-vodic__foot { justify-content: space-between; }
/* ===== VODIČ v2.6 — tiered grid fixed, badge collision gone, steppers, live orbit ===== */
.poz-vodic__opts--tiered { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
.poz-vodic__opts--arch { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
.poz-vodic__opts--arch .poz-vodic__media { height: 112px; }
.poz-vodic__opt.is-sm .poz-vodic__media { height: 82px; }
/* kg pill drops to the bottom-right — the badge owns the top-left */
.poz-vodic__opts .poz-vodic__opt .poz-vodic__kg {
  top: auto; bottom: 8px; right: 8px; left: auto;
}
/* custom size stepper card */
.poz-vodic__opt--custom { cursor: pointer; }
.poz-vodic__opt--custom .poz-vodic__media { height: 82px; }
.poz-vodic__stepper {
  display: flex; align-items: center; justify-content: center; gap: 12px;
  padding: 8px 10px 11px;
}
.poz-vodic__stepper > b {
  min-width: 52px; text-align: center;
  font-size: 15px; font-weight: 650; color: #eaf1f9; letter-spacing: 0.01em;
  font-variant-numeric: tabular-nums;
}
.poz-vodic__stepper button {
  width: 30px; height: 30px; border-radius: 999px; cursor: pointer;
  display: grid; place-items: center;
  font-size: 17px; line-height: 1; font-weight: 500; color: #e6e6ec;
  border: 1px solid rgba(175, 175, 181, 0.28);
  background: linear-gradient(155deg, rgba(68, 68, 74, 0.6), rgba(28, 35, 46, 0.7));
  transition: border-color 0.16s, transform 0.12s, background 0.16s;
  padding: 0;
}
.poz-vodic__stepper button:hover { border-color: rgba(157, 157, 163, 0.55); transform: scale(1.06); }
.poz-vodic__stepper button:active { transform: scale(0.95); }
.poz-vodic__opt--custom.is-on .poz-vodic__stepper button { border-color: rgba(157, 157, 163, 0.5); }
/* live orbit canvas fills the main view */
.poz-vodic__view--main { position: relative; }
.poz-vodic__livecnv {
  position: absolute; inset: 0; width: 100%; height: 100%;
  cursor: grab; touch-action: none; display: block;
}
.poz-vodic__livecnv:active { cursor: grabbing; }
.poz-vodic__hero .poz-vodic__view figcaption { position: absolute; z-index: 2; }
/* ===== VODIČ v2.7 — caption anchor fix, summary step, richer mode entry ===== */
/* the absolute restate in v2.6 lost the inset — chips drifted with tile width */
.poz-vodic__hero .poz-vodic__view figcaption { left: 10px; bottom: 10px; right: auto; top: auto; }

/* summary: the mirrored spec cards, restyled for the dark sidebar */
.poz-vodic__speclist { display: flex; flex-direction: column; gap: 8px; margin: 2px 0 16px; }
.poz-vodic__speclist .poz-plan__itemcard {
  display: flex; align-items: center; gap: 12px; padding: 9px 12px;
  border-radius: 12px; border: 1px solid rgba(175, 175, 181, 0.14);
  background: linear-gradient(155deg, rgba(44, 54, 66, 0.5), rgba(20, 26, 35, 0.62));
}
.poz-vodic__speclist .poz-plan__itemcard-img {
  width: 44px; height: 44px; object-fit: contain; border-radius: 9px;
  background: #f4f6f8; padding: 3px; flex: none;
}
.poz-vodic__speclist .poz-plan__itemcard-tx { display: flex; flex-direction: column; gap: 3px; min-width: 0; flex: 1; }
.poz-vodic__speclist .poz-plan__itemcard-name { font-size: 12.5px; font-weight: 600; color: #e8eef6; line-height: 1.3; }
.poz-vodic__speclist .poz-plan__itemcard-code {
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
  font-size: 10px; letter-spacing: 0.03em; color: #c0c0c6;
  background: rgba(157, 157, 163, 0.1); border: 1px solid rgba(157, 157, 163, 0.24);
  padding: 2px 8px; border-radius: 999px; width: fit-content;
}
.poz-vodic__speclist .poz-plan__itemcard-qty { font-size: 13px; font-weight: 650; color: #fff; white-space: nowrap; }
.poz-vodic__speclist .poz-plan__item { display: flex; justify-content: space-between; gap: 10px; font-size: 12px; color: rgba(222, 222, 228, 0.8); padding: 4px 6px; }
.poz-vodic__speclist .poz-plan__item b { color: #eaf1f9; }

/* the two exits */
.poz-vodic__paths { display: flex; flex-direction: column; gap: 10px; margin-top: 4px; }
.poz-vodic__path {
  display: flex; align-items: center; gap: 14px; text-align: left;
  padding: 14px 16px; border-radius: 14px; cursor: pointer;
  border: 1px solid rgba(175, 175, 181, 0.2); color: #e8eef6;
  background: linear-gradient(155deg, rgba(48, 58, 70, 0.6), rgba(23, 29, 38, 0.7));
  transition: border-color 0.18s, transform 0.14s, box-shadow 0.18s;
}
.poz-vodic__path:hover { border-color: rgba(157, 157, 163, 0.5); transform: translateY(-1px); }
.poz-vodic__path-ico {
  width: 40px; height: 40px; flex: none; display: grid; place-items: center;
  border-radius: 11px; border: 1px solid rgba(175, 175, 181, 0.2);
  color: #c0c0c6; background: rgba(10, 16, 24, 0.5);
}
.poz-vodic__path-ico svg { width: 20px; height: 20px; }
.poz-vodic__path-tx { display: flex; flex-direction: column; gap: 3px; }
.poz-vodic__path-tx b { font-size: 13.5px; font-weight: 650; letter-spacing: 0.01em; }
.poz-vodic__path-tx i { font-style: normal; font-size: 11.5px; color: rgba(202, 202, 208, 0.78); line-height: 1.45; }
.poz-vodic__path--cta {
  border-color: rgba(138, 138, 144, 0.55);
  background: linear-gradient(150deg, rgba(106, 106, 112, 0.5), rgba(79, 79, 85, 0.36));
  box-shadow: 0 10px 26px rgba(79, 79, 85, 0.3);
}
.poz-vodic__path--cta .poz-vodic__path-ico { color: #fff; border-color: rgba(255, 255, 255, 0.25); background: rgba(255, 255, 255, 0.08); }
.poz-vodic__path--cta .poz-vodic__path-tx i { color: rgba(238, 238, 244, 0.85); }

/* mode entry: graphical cards + recommendation */
.poz-plan__entry-card { position: relative; }
.poz-plan__entry-media {
  position: relative; display: flex; align-items: center; justify-content: center;
  height: 96px; margin-bottom: 14px; border-radius: 14px; overflow: hidden;
  background:
    radial-gradient(ellipse 70% 60% at 50% 40%, rgba(88, 128, 178, 0.18) 0%, rgba(88, 128, 178, 0) 74%),
    repeating-linear-gradient(0deg, rgba(112, 160, 220, 0.05) 0 1px, transparent 1px 28px),
    repeating-linear-gradient(90deg, rgba(112, 160, 220, 0.05) 0 1px, transparent 1px 28px),
    linear-gradient(165deg, #1b2430 0%, #131b26 52%, #0d141d 100%);
  border: 1px solid rgba(120, 165, 220, 0.16);
}
.poz-plan__entry-media svg { width: 68%; height: 72%; }
.poz-plan__entry-flag {
  position: absolute; top: 8px; left: 8px;
  font-family: Michroma, sans-serif; font-style: normal;
  font-size: 7.5px; letter-spacing: 0.09em; text-transform: uppercase;
  color: #fff; padding: 4px 9px 3px; border-radius: 999px;
  background: linear-gradient(120deg, #1f7ae0, #0f5cb8);
  box-shadow: 0 4px 12px rgba(15, 92, 184, 0.45);
}
.poz-plan__entry-card--rec { border-color: rgba(61, 155, 255, 0.45); }
.poz-plan__entry-hint {
  margin: 18px 0 0; text-align: center;
  font-size: 12px; color: rgba(120, 138, 158, 0.85);
}
.poz-studio-dark .poz-plan__entry-hint { color: rgba(168, 188, 210, 0.65); }
/* ===== VODIČ v2.8 — hero stepper, token chips, credits everywhere ===== */
.poz-vodic__opts--tok { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; }
.poz-vodic__opt--hero { grid-column: 1 / -1; display: flex; align-items: stretch; gap: 0; }
.poz-vodic__opt--hero .poz-vodic__media { height: 116px; flex: 1.1; border-bottom: none; border-right: 1px solid rgba(157, 157, 163, 0.14); }
.poz-vodic__hero-ctl { flex: 1; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 7px; padding: 10px; }
.poz-vodic__stepper--big { padding: 0; gap: 14px; }
.poz-vodic__stepper--big > b { font-size: 21px; min-width: 74px; }
.poz-vodic__stepper--big button { width: 40px; height: 40px; font-size: 21px; }
.poz-vodic__hero-sub { font-style: normal; font-size: 10.5px; color: rgba(202, 202, 208, 0.7); }
.poz-vodic__chip--opt { min-height: 52px; justify-content: center; }
.poz-vodic__opts--tok .poz-vodic__opt--hero { min-height: 118px; }
/* credits — vodič bar */
.poz-vodic__credits { display: flex; align-items: center; gap: 12px; margin-left: auto; margin-right: 14px; opacity: 0.85; }
.poz-vodic__credits img { height: 13px; width: auto; display: block; }
.poz-vodic__credits img.poz-vodic__credits-lls { height: 17px; }
.poz-vodic__credits i {
  font-style: normal; font-family: Michroma, sans-serif;
  font-size: 7.5px; letter-spacing: 0.08em; color: rgba(186, 186, 192, 0.75); white-space: nowrap;
}
/* credits — studio bottom bar + entry */
.poz-plan__credits { display: inline-flex; align-items: center; gap: 10px; margin-left: 18px; opacity: 0.8; }
.poz-plan__credits img { height: 12px; width: auto; display: block; }
.poz-plan__credits img.poz-plan__credit-lls { height: 16px; }
.poz-plan__credits i {
  font-style: normal; font-family: Michroma, sans-serif;
  font-size: 7.5px; letter-spacing: 0.07em; white-space: nowrap;
  color: rgba(90, 108, 128, 0.9);
}
.poz-studio-dark .poz-plan__credits i { color: rgba(168, 190, 214, 0.7); }
/* theme-swapped logo variants: light theme shows .is-light, dark shows .is-dark */
.poz-plan__credits img.is-dark, .poz-plan__entry-credits img.is-dark { display: none; }
.poz-studio-dark .poz-plan__credits img.is-dark, .poz-studio-dark .poz-plan__entry-credits img.is-dark { display: block; }
.poz-studio-dark .poz-plan__credits img.is-light, .poz-studio-dark .poz-plan__entry-credits img.is-light { display: none; }
.poz-plan__entry-credits {
  display: flex; flex-direction: column; align-items: center; gap: 9px;
  margin-top: 26px; padding-top: 18px;
  border-top: 1px solid rgba(120, 145, 170, 0.16);
}
.poz-plan__credit-logos { display: flex; align-items: center; gap: 12px; opacity: 0.9; }
.poz-plan__credit-logos img { height: 16px; width: auto; display: block; }
.poz-plan__credit-logos img.poz-plan__credit-lls { height: 21px; }
.poz-plan__credit-logos i { font-style: normal; color: rgba(120, 145, 170, 0.6); font-size: 11px; }
.poz-plan__credit-tx {
  font-size: 10.5px; letter-spacing: 0.02em; text-align: center;
  color: rgba(100, 118, 138, 0.85);
}
.poz-studio-dark .poz-plan__credit-tx { color: rgba(168, 190, 214, 0.6); }
@media (max-width: 1100px) { .poz-plan__credits i { display: none; } }
/* studio: the classic bottom bar is hidden — credits float bottom-right */
.poz-plan__credits--float { position: absolute; right: 16px; bottom: 13px; z-index: 30; margin-left: 0; }

/* ===== VODIČ v2.9 — seamless step fade, summary redesign, blue item cards ===== */
.poz-vodic__body {
  animation: pozbodyin 0.34s cubic-bezier(0.05, 0.7, 0.1, 1);
  transition: opacity 0.18s ease, transform 0.18s ease;
}
.poz-vodic__body.is-leave { opacity: 0; transform: translateY(-8px); pointer-events: none; }
@keyframes pozbodyin {
  from { opacity: 0; transform: translateY(12px); }
  to { opacity: 1; transform: none; }
}

/* summary: content left two thirds, render right third */
.poz-vodic__main--sum .poz-vodic__hero { order: 2; padding: 14px 16px 14px 0; }
.poz-vodic__main--sum .poz-vodic__body { order: 1; max-width: none; display: flex; flex-direction: column; }
.poz-vodic__main--sum .poz-vodic__speclist {
  flex: 1 1 auto; min-height: 0; overflow: auto;
  display: grid; grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
  gap: 10px; align-content: start; margin: 8px 0 16px; padding-right: 4px;
}
.poz-vodic__main--sum .poz-vodic__speclist .poz-plan__itemcard { padding: 13px 14px; gap: 14px; border-radius: 14px; }
.poz-vodic__main--sum .poz-vodic__speclist .poz-plan__itemcard-img { width: 62px; height: 62px; border-radius: 11px; }
.poz-vodic__main--sum .poz-vodic__speclist .poz-plan__itemcard-name { font-size: 13.5px; }
.poz-vodic__main--sum .poz-vodic__speclist .poz-plan__itemcard-code { font-size: 11px; padding: 3px 9px; }
.poz-vodic__main--sum .poz-vodic__speclist .poz-plan__itemcard-qty { font-size: 16px; }
.poz-vodic__main--sum .poz-vodic__paths { flex: none; flex-direction: row; gap: 12px; margin-top: auto; }
.poz-vodic__main--sum .poz-vodic__path { flex: 1; padding: 18px 20px; }
.poz-vodic__main--sum .poz-vodic__path-ico { width: 46px; height: 46px; }
.poz-vodic__main--sum .poz-vodic__path-tx b { font-size: 15px; }
.poz-vodic__main--sum .poz-vodic__path-tx i { font-size: 12px; }

/* item cards join the blue theme — no more neutral gray */
.poz-vodic__speclist .poz-plan__itemcard {
  border: 1px solid rgba(157, 157, 163, 0.2);
  background: linear-gradient(155deg, rgba(48, 48, 54, 0.62), rgba(14, 22, 34, 0.74));
  box-shadow: inset 0 1px 0 rgba(211, 211, 217, 0.06);
}
.poz-vodic__speclist .poz-plan__itemcard-name { color: #ecf3fb; }
.poz-vodic__speclist .poz-plan__itemcard-qty { color: #e0e0e6; }
.poz-vodic__speclist .poz-plan__itemcard-img { background: #eef2f6; }
/* ===== VODIČ v2.9.1 — entry logos always white, summary cards truly dark, render thumbs ===== */
/* the choose panel is dark glass in BOTH themes — white marks, always */
.poz-plan__entry-credits img.is-dark { display: block !important; }
.poz-plan__entry-credits img.is-light { display: none !important; }

/* summary item cards: dark blue-graphite, (0,3,0) so nothing grey survives */
.poz-vodic .poz-vodic__speclist .poz-plan__itemcard {
  border: 1px solid rgba(157, 157, 163, 0.22);
  background: linear-gradient(155deg, rgba(41, 41, 47, 0.85), rgba(11, 18, 28, 0.92));
  box-shadow: inset 0 1px 0 rgba(211, 211, 217, 0.06), 0 10px 24px rgba(0, 0, 0, 0.3);
  color: #ecf3fb;
}
.poz-vodic .poz-vodic__speclist .poz-plan__itemcard-name { color: #ecf3fb; }
.poz-vodic .poz-vodic__speclist .poz-plan__itemcard-qty { color: #e0e0e6; }
.poz-vodic .poz-vodic__speclist .poz-plan__itemcard-code {
  color: #c0c0c6; background: rgba(157, 157, 163, 0.1); border: 1px solid rgba(157, 157, 163, 0.26);
}
/* our engine renders: no white tile — they float on a dark technical pad */
.poz-vodic .poz-vodic__speclist .poz-plan__itemcard-img.is-render {
  background:
    radial-gradient(ellipse 70% 60% at 50% 42%, rgba(122, 122, 128, 0.2) 0%, rgba(122, 122, 128, 0) 76%),
    linear-gradient(165deg, #26262c 0%, #101823 100%);
  border: 1px solid rgba(158, 158, 164, 0.18);
  padding: 5px;
  filter: none;
}
.poz-vodic .poz-vodic__speclist .poz-plan__itemcard-img.is-render { object-fit: contain; }
.poz-vodic .poz-vodic__speclist .poz-plan__itemcard-glyph {
  width: 44px; height: 44px; flex: none; display: grid; place-items: center;
  border-radius: 9px; border: 1px solid rgba(158, 158, 164, 0.18);
  background: linear-gradient(165deg, #26262c 0%, #101823 100%);
}
.poz-vodic .poz-vodic__speclist .poz-plan__itemcard-glyph svg { width: 26px; height: 26px; }
.poz-vodic__main--sum .poz-vodic__speclist .poz-plan__itemcard-glyph { width: 62px; height: 62px; border-radius: 11px; }
.poz-vodic__main--sum .poz-vodic__speclist .poz-plan__itemcard-glyph svg { width: 34px; height: 34px; }
/* ===== VODIČ v2.9.2 — editorial stats band + quotation-row item list ===== */
.poz-vodic__sumfacts {
  flex: none; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1px; margin: 10px 0 14px;
  border: 1px solid rgba(157, 157, 163, 0.18); border-radius: 14px; overflow: hidden;
  background: rgba(175, 175, 181, 0.14);
}
.poz-vodic__sumfacts .poz-vodic__fact {
  background: linear-gradient(155deg, rgba(40, 40, 46, 0.92), rgba(12, 19, 30, 0.96));
  padding: 13px 16px 12px; gap: 5px; animation: none;
}
.poz-vodic__sumfacts .poz-vodic__fact i { font-size: 7.5px; color: rgba(168, 168, 174, 0.72); }
.poz-vodic__sumfacts .poz-vodic__fact b { font-size: 17.5px; letter-spacing: 0.01em; }
.poz-vodic__sumfacts .poz-vodic__fsep, .poz-vodic__sumfacts .poz-vodic__fhint { display: none; }

/* items: one ledger, full-width quotation rows — not tabs */
.poz-vodic__main--sum .poz-vodic__speclist {
  display: flex; flex-direction: column; gap: 0; counter-reset: pozline;
  border: 1px solid rgba(157, 157, 163, 0.16); border-radius: 14px;
  background: linear-gradient(165deg, rgba(35, 35, 41, 0.55), rgba(10, 16, 26, 0.65));
  overflow: auto; padding: 0;
}
.poz-vodic__main--sum .poz-vodic__speclist .poz-plan__itemcard {
  counter-increment: pozline;
  border: none; border-radius: 0; box-shadow: none; background: transparent;
  border-bottom: 1px solid rgba(175, 175, 181, 0.1);
  padding: 11px 18px; gap: 14px;
}
.poz-vodic__main--sum .poz-vodic__speclist .poz-plan__itemcard:last-child { border-bottom: none; }
.poz-vodic__main--sum .poz-vodic__speclist .poz-plan__itemcard::before {
  content: counter(pozline, decimal-leading-zero);
  font-family: Michroma, sans-serif; font-size: 8px; letter-spacing: 0.08em;
  color: rgba(163, 163, 169, 0.55); width: 20px; flex: none;
}
.poz-vodic__main--sum .poz-vodic__speclist .poz-plan__itemcard-img,
.poz-vodic__main--sum .poz-vodic__speclist .poz-plan__itemcard-glyph { width: 46px; height: 46px; border-radius: 9px; }
.poz-vodic__main--sum .poz-vodic__speclist .poz-plan__itemcard-glyph svg { width: 26px; height: 26px; }
.poz-vodic__main--sum .poz-vodic__speclist .poz-plan__itemcard-tx {
  flex-direction: row; align-items: center; gap: 12px; flex-wrap: wrap;
}
.poz-vodic__main--sum .poz-vodic__speclist .poz-plan__itemcard-name { font-size: 13.5px; }
.poz-vodic__main--sum .poz-vodic__speclist .poz-plan__itemcard-code { font-size: 10.5px; }
.poz-vodic__main--sum .poz-vodic__speclist .poz-plan__itemcard-qty { font-size: 15px; margin-left: auto; }
.poz-vodic__main--sum .poz-vodic__speclist .poz-plan__item { padding: 9px 18px; }
/* ===== v2.10.1 — new LumiLas logo, readable wordmarks, vodič watermark ===== */
.poz-vodic__credits img { height: 17px; }
.poz-vodic__credits img.poz-vodic__credits-lls { height: 17px; }
.poz-plan__credits img { height: 15px; }
.poz-plan__credits img.poz-plan__credit-lls { height: 15px; }
.poz-plan__credit-logos img { height: 22px; }
.poz-plan__credit-logos img.poz-plan__credit-lls { height: 22px; }
.poz-vodic__view--main::after {
  content: '';
  position: absolute; right: 16px; bottom: 12px; z-index: 2;
  width: 148px; height: 26px;
  background: url('/wp-content/themes/pozornice/assets/logo/horizontal-transparent-dark.svg') no-repeat right center / contain;
  opacity: 0.2; pointer-events: none;
}
/* ===== v2.10.2 — viewer brand marks: centre watermark + branded corners ===== */
/* vodič main viewer */
.poz-vodic__view--main::after { content: none; }
.poz-vodic__hero .poz-vodic__view--main figcaption { top: 10px; bottom: auto; }
.poz-vodic__marks { position: absolute; inset: 0; pointer-events: none; z-index: 2; }
.poz-vodic__mark-c {
  position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%);
  width: 42%; max-width: 460px; height: auto; opacity: 0.12;
}
.poz-vodic__mark-p { position: absolute; right: 16px; bottom: 12px; height: 22px; width: auto; }
.poz-vodic__mark-l { position: absolute; left: 16px; bottom: 14px; height: 19px; width: auto; }
/* expert: full-opacity credits right, LumiLas mark above the checks card left */
.poz-plan__credits--float { opacity: 1; }
.poz-plan__credits--float img { height: 19px; }
.poz-dock-lls { display: block; margin: 0 0 10px 4px; }
.poz-dock-lls img { height: 19px; width: auto; display: block; }
.poz-dock-lls img.is-dark { display: none; }
.poz-studio-dark .poz-dock-lls img.is-dark { display: block; }
.poz-studio-dark .poz-dock-lls img.is-light { display: none; }
/* v2.10.2b — the generic viewer img rule (width/height 100%) was swallowing the marks */
.poz-vodic__hero .poz-vodic__view .poz-vodic__marks img { filter: none; position: absolute; }
.poz-vodic__hero .poz-vodic__view .poz-vodic__mark-c {
  width: 42%; max-width: 460px; height: auto;
  left: 50%; top: 50%; right: auto; bottom: auto;
  transform: translate(-50%, -50%); opacity: 0.12;
}
.poz-vodic__hero .poz-vodic__view .poz-vodic__mark-p {
  width: auto; height: 22px; right: 16px; bottom: 12px; left: auto; top: auto;
}
.poz-vodic__hero .poz-vodic__view .poz-vodic__mark-l {
  width: auto; height: 19px; left: 16px; bottom: 14px; right: auto; top: auto;
}
/* ===== v2.11 — Primjeri as a real dropdown panel (was sliding under the rail) ===== */
@media (min-width: 901px) {
  .poz-plan.poz-plan--studio .poz-plan__presetbar { display: none; }
  .poz-plan.poz-plan--studio.poz-presets-open .poz-plan__presetbar {
    display: flex; flex-direction: column; align-items: stretch; gap: 5px;
    position: absolute; z-index: 80; top: 60px; left: 14px;
    width: 320px; max-height: min(64vh, 520px); overflow-y: auto;
    margin: 0; padding: 14px;
    border-radius: 18px;
    border: 1px solid rgba(255, 255, 255, 0.55);
    background: linear-gradient(150deg, rgba(255, 255, 255, 0.92), rgba(240, 246, 250, 0.86));
    -webkit-backdrop-filter: blur(18px); backdrop-filter: blur(18px);
    box-shadow: 0 24px 60px rgba(10, 20, 34, 0.35);
  }
  .poz-plan.poz-plan--studio .poz-plan__presetbar-lb {
    font-family: Michroma, sans-serif; font-weight: 400; font-size: 8.5px;
    letter-spacing: 0.14em; color: #5c6a7a; margin: 0 0 6px 4px;
  }
  .poz-plan.poz-plan--studio .poz-plan__pchip {
    text-align: left; border-radius: 12px; padding: 11px 14px;
    font-size: 12.5px; letter-spacing: 0.01em;
    border: 1px solid rgba(22, 23, 27, 0.1); background: rgba(255, 255, 255, 0.75); color: #232a33;
    transition: border-color 0.16s, background 0.16s, transform 0.12s;
  }
  .poz-plan.poz-plan--studio .poz-plan__pchip:hover {
    border-color: rgba(0, 102, 204, 0.5); background: #fff; transform: translateX(2px);
  }
  .poz-studio-dark .poz-plan.poz-plan--studio.poz-presets-open .poz-plan__presetbar,
  .poz-plan.poz-plan--studio.poz-presets-open.poz-studio-dark .poz-plan__presetbar,
  .poz-studio-dark .poz-plan__presetbar {
    border-color: rgba(120, 165, 220, 0.24);
    background: linear-gradient(150deg, rgba(24, 32, 44, 0.92), rgba(13, 19, 29, 0.9));
  }
  .poz-studio-dark .poz-plan__presetbar-lb { color: rgba(168, 190, 214, 0.75); }
  .poz-studio-dark .poz-plan__pchip {
    border-color: rgba(150, 180, 215, 0.18);
    background: linear-gradient(155deg, rgba(48, 58, 70, 0.55), rgba(23, 29, 38, 0.65));
    color: #e8eef6;
  }
  .poz-studio-dark .poz-plan__pchip:hover { border-color: rgba(94, 170, 255, 0.5); background: rgba(31, 122, 224, 0.25); }
}
/* v2.11b — the presets panel clears the tools rail entirely */
.poz-plan.poz-plan--studio.poz-presets-open .poz-plan__presetbar { z-index: 130; left: 84px; top: 58px; }

/* v2.11c — the standing exit pill in the vodič bar */
.poz-vodic__toexpert {
  display: inline-flex; align-items: center; gap: 7px;
  margin-left: auto; padding: 7px 13px; border-radius: 999px; cursor: pointer;
  font-size: 11px; letter-spacing: 0.02em; font-weight: 550;
  color: #dddde3; border: 1px solid rgba(175, 175, 181, 0.28);
  background: linear-gradient(155deg, rgba(48, 58, 70, 0.5), rgba(23, 29, 38, 0.6));
  transition: border-color 0.16s, background 0.16s;
  white-space: nowrap;
}
.poz-vodic__toexpert svg { width: 13px; height: 13px; }
.poz-vodic__toexpert:hover { border-color: rgba(157, 157, 163, 0.55); background: rgba(106, 106, 112, 0.25); color: #fff; }
.poz-vodic__credits { margin-left: 14px; }
/* ===== v2.12 — templates: ? leads the strip, dropdown of render rows ===== */
@media (min-width: 901px) {
  .poz-plan.poz-plan--studio .poz-help { order: -2; }
  .poz-plan.poz-plan--studio .poz-plan__presets-btn { order: -1; }
  .poz-plan.poz-plan--studio.poz-presets-open .poz-plan__presetbar {
    left: 56px; top: 58px; width: 372px; flex-wrap: nowrap;
  }
  .poz-plan.poz-plan--studio .poz-plan__pchip {
    display: flex; align-items: center; gap: 13px;
    padding: 8px 12px; width: 100%;
  }
  .poz-plan__pchip-im {
    width: 104px; height: 58px; flex: none; object-fit: contain;
    border-radius: 9px; padding: 3px;
    background:
      radial-gradient(ellipse 70% 60% at 50% 42%, rgba(88, 128, 178, 0.18) 0%, rgba(88, 128, 178, 0) 76%),
      linear-gradient(165deg, #1d2836 0%, #101823 100%);
    border: 1px solid rgba(120, 165, 220, 0.16);
  }
}
/* v2.12b — an old rule set the open panel to a 2-col grid; rows it is */
.poz-plan.poz-plan--studio.poz-presets-open .poz-plan__presetbar { display: flex !important; flex-direction: column !important; left: 68px; z-index: 200; }

/* ===== v2.13 — the photoreal still on the summary ===== */
.poz-vodic__ptcnv {
  position: absolute; inset: 0; width: 100%; height: 100%;
  opacity: 0; transition: opacity 0.9s ease; z-index: 1; pointer-events: none;
}
.poz-vodic__ptcnv.is-on { opacity: 1; }
.poz-vodic__ptlab {
  position: absolute; top: 10px; right: 12px; z-index: 3;
  font-family: Michroma, sans-serif; font-size: 7.5px; letter-spacing: 0.11em;
  color: #dddde3; padding: 5px 10px 4px; border-radius: 999px;
  background: rgba(8, 13, 21, 0.78); border: 1px solid rgba(158, 158, 164, 0.22);
  -webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px);
}
.poz-vodic__ptlab.is-done { color: #9fe7bd; border-color: rgba(120, 220, 165, 0.3); }
/* v2.13b — Primjeri: the bar outranks the rail while open; panel under the pill; bare renders */
@media (min-width: 901px) {
  .poz-plan.poz-plan--studio.poz-presets-open .poz-plan__bar--top { z-index: 60; }
  .poz-plan.poz-plan--studio.poz-presets-open .poz-plan__presetbar { left: 96px; top: 56px; }
  .poz-plan__pchip-im { background: none !important; border: none; padding: 0; }
}
/* ===== v2.14 — photoreal progress bar + stronger watermark on the render ===== */
.poz-vodic__ptlab { display: none; }
.poz-vodic__ptprog {
  position: absolute; left: 50%; bottom: 46px; transform: translateX(-50%);
  z-index: 3; display: flex; flex-direction: column; align-items: center; gap: 7px;
  padding: 11px 18px 12px; border-radius: 14px; min-width: 290px;
  background: rgba(8, 13, 21, 0.8); border: 1px solid rgba(158, 158, 164, 0.24);
  -webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px);
  transition: opacity 0.6s ease, transform 0.5s ease;
}
.poz-vodic__ptprog-tx {
  font-style: normal; font-size: 11px; letter-spacing: 0.02em; color: #e6e6ec;
  font-variant-numeric: tabular-nums;
}
.poz-vodic__ptprog-track {
  width: 100%; height: 5px; border-radius: 999px; overflow: hidden;
  background: rgba(175, 175, 181, 0.16);
}
.poz-vodic__ptprog-fill {
  display: block; height: 100%; width: 2%; border-radius: 999px;
  background: linear-gradient(90deg, #6a6a70, #9d9da3 55%, #bcbcc2);
  background-size: 200% 100%;
  animation: pozptshimmer 1.4s linear infinite;
  transition: width 0.5s ease;
}
@keyframes pozptshimmer {
  from { background-position: 0% 0; }
  to { background-position: -200% 0; }
}
.poz-vodic__ptprog.is-done {
  opacity: 0; transform: translateX(-50%) translateY(8px); pointer-events: none;
  transition-delay: 1.6s;
}
/* the watermark asserts itself over the finished render */
.poz-vodic__view--main.is-pt .poz-vodic__mark-c { opacity: 0.16; }
/* v2.14b — summary is a fixed view: no orbit under the still */
.poz-vodic__view--main.is-pt .poz-vodic__livecnv { pointer-events: none; cursor: default; }

/* vodič-only configurators (zbor v1): no roads into the stage-tooled expert grid */
.poz-noexpert .poz-vodic__toexpert,
.poz-noexpert [data-vfinish='expert'],
.poz-noexpert .poz-vodic__x,
.poz-noexpert [data-mode-toggle] { display: none !important; }

/* ===== v2.15 — category colour coding: each configurator wears its accent =====
   Stage keeps its blue exactly as designed; choir and truss re-tint the key
   interactive chrome from the site's accent tokens (--acc / --acc-rgb). */
.poz-plan.poz-acc--choir, .poz-plan.poz-acc--truss, .poz-plan.poz-acc--lifting {
  --pzk: var(--acc, #3d9bff);
  --pzk-rgb: var(--acc-rgb, 61, 155, 255);
}
.poz-plan.poz-acc--choir .poz-plan__tool.is-on,
.poz-plan.poz-acc--truss .poz-plan__tool.is-on {
  border-color: rgba(var(--pzk-rgb), 0.65);
  box-shadow: 0 0 0 1px rgba(var(--pzk-rgb), 0.35), 0 10px 26px rgba(var(--pzk-rgb), 0.2);
}
.poz-plan.poz-acc--choir .poz-plan__chip.is-on,
.poz-plan.poz-acc--truss .poz-plan__chip.is-on {
  border-color: rgba(var(--pzk-rgb), 0.7);
  background: rgba(var(--pzk-rgb), 0.16);
}
.poz-plan.poz-acc--choir .poz-vodic__opt.is-on,
.poz-plan.poz-acc--truss .poz-vodic__opt.is-on,
.poz-plan.poz-acc--choir .poz-vodic__chip.is-on,
.poz-plan.poz-acc--truss .poz-vodic__chip.is-on {
  border-color: rgba(var(--pzk-rgb), 0.75);
  box-shadow: 0 0 0 1px rgba(var(--pzk-rgb), 0.35), 0 8px 20px rgba(var(--pzk-rgb), 0.22);
}
.poz-plan.poz-acc--choir .poz-vodic__next,
.poz-plan.poz-acc--truss .poz-vodic__next,
.poz-plan.poz-acc--choir .poz-vodic__path--cta,
.poz-plan.poz-acc--truss .poz-vodic__path--cta {
  background: linear-gradient(150deg, rgba(var(--pzk-rgb), 0.55), rgba(var(--pzk-rgb), 0.32));
  border-color: rgba(var(--pzk-rgb), 0.6);
}
.poz-plan.poz-acc--choir .poz-vodic__nav button.is-on,
.poz-plan.poz-acc--truss .poz-vodic__nav button.is-on {
  border-bottom-color: rgb(var(--pzk-rgb));
  color: #fff;
}
.poz-plan.poz-acc--choir .poz-vodic__ptprog-fill,
.poz-plan.poz-acc--truss .poz-vodic__ptprog-fill {
  background: linear-gradient(90deg, rgba(var(--pzk-rgb), 0.85), rgb(var(--pzk-rgb)) 55%, rgba(var(--pzk-rgb), 0.7));
  background-size: 200% 100%;
}
.poz-plan.poz-acc--choir .poz-vodic__pop,
.poz-plan.poz-acc--truss .poz-vodic__pop,
.poz-plan.poz-acc--choir .poz-vodic__kg,
.poz-plan.poz-acc--truss .poz-vodic__kg {
  border-color: rgba(var(--pzk-rgb), 0.45);
}
/* ═════ v2.16 — zbor generated icons: renders in chips, tiles and presets ═════ */
.poz-plan__chip.has-ico img { display: block; width: 56px; height: 32px; object-fit: contain; }
.poz-plan__chip.has-im3 { display: inline-flex; flex-direction: column; align-items: center; gap: 5px; padding: 9px 12px 8px; min-width: 84px; }
.poz-plan__chip-im3 { display: block; width: 66px; height: 36px; object-fit: contain; }
.poz-plan.poz-plan--studio .poz-plan__tool-ico img { width: 26px; height: 22px; object-fit: contain; display: block; }
/* ═════ v2.17 — zbor rail: four steps only, so everything breathes ——
   bigger tiles, bigger renders, wider flyout with larger option chips ═════ */
@media (min-width: 901px) {
  .poz-plan.poz-plan--studio[data-planner="zbor"] .poz-plan__tools { width: 152px; }
  .poz-plan.poz-plan--studio[data-planner="zbor"] .poz-plan__tool {
    min-height: 116px; margin: 9px 12px 0; padding: 14px 8px 12px; gap: 6px;
  }
  .poz-plan.poz-plan--studio[data-planner="zbor"] .poz-plan__tool-ico img {
    width: 92px; height: 60px; object-fit: contain;
  }
  .poz-plan.poz-plan--studio[data-planner="zbor"] .poz-plan__tool-ico svg { width: 42px; height: 42px; }
  .poz-plan.poz-plan--studio[data-planner="zbor"] .poz-plan__tool-name {
    font-size: 12px; max-width: 128px; line-height: 1.25;
  }
  .poz-plan.poz-plan--studio[data-planner="zbor"] .poz-plan__tool-count { font-size: 10px; max-width: 74px; }
  .poz-plan.poz-plan--studio[data-planner="zbor"] .poz-plan__panelwrap.is-open { width: 396px; }
  .poz-plan.poz-plan--studio[data-planner="zbor"] .poz-plan__chip.has-ico { min-width: 128px; font-size: 13px; }
  .poz-plan.poz-plan--studio[data-planner="zbor"] .poz-plan__chip.has-ico img { width: 104px; height: 58px; }
  .poz-plan.poz-plan--studio[data-planner="zbor"] .poz-plan__chip.has-im3 { min-width: 122px; font-size: 13px; }
  .poz-plan.poz-plan--studio[data-planner="zbor"] .poz-plan__chip-im3 { width: 100px; height: 54px; }
}
/* ═════ v2.18 — category colour coding, completed. ROOT CAUSE of the blue
   leak: --acc-rgb never existed on the planner section, so every v2.15 rule
   silently resolved to its blue fallback. The tokens are now defined here,
   and every blue-bearing interactive element gets an accent override for the
   choir (fuchsia) and truss (green) planners. Stage keeps its blue. ═════ */
.poz-plan.poz-acc--choir { --pzk: #C026D3; --pzk-rgb: 192, 38, 211; --pzk-hi: #E28BEF; }
.poz-plan.poz-acc--truss { --pzk: #1F8A5B; --pzk-rgb: 31, 138, 91; --pzk-hi: #6FC9A0; }
.poz-plan.poz-acc--lifting { --pzk: #DC2626; --pzk-rgb: 220, 38, 38; --pzk-hi: #F79393; }

/* —— studio rail —— */
.poz-plan.poz-plan--studio:is(.poz-acc--choir, .poz-acc--truss, .poz-acc--lifting) .poz-plan__tool:hover { background: rgba(var(--pzk-rgb), 0.07); border-color: rgba(var(--pzk-rgb), 0.3); }
.poz-plan.poz-plan--studio:is(.poz-acc--choir, .poz-acc--truss, .poz-acc--lifting) .poz-plan__tool.is-on { background: rgba(var(--pzk-rgb), 0.12); border-color: rgba(var(--pzk-rgb), 0.55); box-shadow: 0 0 0 1px rgba(var(--pzk-rgb), 0.3); }
.poz-plan.poz-plan--studio:is(.poz-acc--choir, .poz-acc--truss, .poz-acc--lifting) .poz-plan__tool.is-on .poz-plan__tool-ico { color: rgb(var(--pzk-rgb)); }
.poz-plan.poz-plan--studio.poz-studio-dark:is(.poz-acc--choir, .poz-acc--truss, .poz-acc--lifting) .poz-plan__tool.is-on .poz-plan__tool-ico { color: var(--pzk-hi); }
.poz-plan.poz-plan--studio:is(.poz-acc--choir, .poz-acc--truss, .poz-acc--lifting) .poz-plan__tool.is-on .poz-plan__tool-ico img { filter: drop-shadow(0 4px 10px rgba(var(--pzk-rgb), 0.45)); }
.poz-plan.poz-plan--studio:is(.poz-acc--choir, .poz-acc--truss, .poz-acc--lifting) .poz-plan__tool-count { color: rgb(var(--pzk-rgb)); background: rgba(var(--pzk-rgb), 0.1); border-color: rgba(var(--pzk-rgb), 0.3); }
.poz-plan.poz-plan--studio.poz-studio-dark:is(.poz-acc--choir, .poz-acc--truss, .poz-acc--lifting) .poz-plan__tool-count { color: var(--pzk-hi); background: rgba(var(--pzk-rgb), 0.18); border-color: rgba(var(--pzk-rgb), 0.45); }
.poz-plan.poz-plan--studio:is(.poz-acc--choir, .poz-acc--truss, .poz-acc--lifting) .poz-plan__tg-num { color: rgb(var(--pzk-rgb)); background: rgba(var(--pzk-rgb), 0.1); border-color: rgba(var(--pzk-rgb), 0.3); }
.poz-plan.poz-plan--studio.poz-studio-dark:is(.poz-acc--choir, .poz-acc--truss, .poz-acc--lifting) .poz-plan__tg-num { color: var(--pzk-hi); }
.poz-plan.poz-plan--studio:is(.poz-acc--choir, .poz-acc--truss, .poz-acc--lifting) .poz-plan__toolgroup::before { background: rgba(var(--pzk-rgb), 0.5); }
.poz-plan.poz-plan--studio:is(.poz-acc--choir, .poz-acc--truss, .poz-acc--lifting) [data-tool="0"] .poz-plan__tool-ico::after { background: rgb(var(--pzk-rgb)); box-shadow: 0 0 0 4px rgba(var(--pzk-rgb), 0.25); }

/* —— flyout panel + chips —— */
.poz-plan.poz-plan--studio:is(.poz-acc--choir, .poz-acc--truss, .poz-acc--lifting) .poz-plan__panelwrap.is-open { border-color: rgba(var(--pzk-rgb), 0.4); }
.poz-plan.poz-plan--studio:is(.poz-acc--choir, .poz-acc--truss, .poz-acc--lifting) .poz-plan__panelwrap.is-open::before { background: rgba(var(--pzk-rgb), 0.5); }
.poz-plan.poz-plan--studio:is(.poz-acc--choir, .poz-acc--truss, .poz-acc--lifting) .poz-plan__chip:hover { border-color: rgba(var(--pzk-rgb), 0.5); }
.poz-plan.poz-plan--studio:is(.poz-acc--choir, .poz-acc--truss, .poz-acc--lifting) .poz-plan__chip.is-on { background: rgba(var(--pzk-rgb), 0.14); border-color: rgba(var(--pzk-rgb), 0.65); color: inherit; box-shadow: 0 0 0 1px rgba(var(--pzk-rgb), 0.3); }

/* —— spec rail —— */
.poz-plan.poz-plan--studio:is(.poz-acc--choir, .poz-acc--truss, .poz-acc--lifting) .poz-plan__itemcard-code { color: rgb(var(--pzk-rgb)); background: rgba(var(--pzk-rgb), 0.09); border-color: rgba(var(--pzk-rgb), 0.3); }
.poz-plan.poz-plan--studio.poz-studio-dark:is(.poz-acc--choir, .poz-acc--truss, .poz-acc--lifting) .poz-plan__itemcard-code { color: var(--pzk-hi); background: rgba(var(--pzk-rgb), 0.16); }
.poz-plan.poz-plan--studio:is(.poz-acc--choir, .poz-acc--truss, .poz-acc--lifting) .poz-plan__tot { border-color: rgba(var(--pzk-rgb), 0.35); }
.poz-plan.poz-plan--studio:is(.poz-acc--choir, .poz-acc--truss, .poz-acc--lifting) .poz-plan__tot::before { background: rgba(var(--pzk-rgb), 0.5); }
.poz-plan.poz-plan--studio:is(.poz-acc--choir, .poz-acc--truss, .poz-acc--lifting) .poz-plan__send--top { background: linear-gradient(150deg, rgba(var(--pzk-rgb), 0.95), rgba(var(--pzk-rgb), 0.7)); border-color: rgba(var(--pzk-rgb), 0.8); }
.poz-plan.poz-plan--studio:is(.poz-acc--choir, .poz-acc--truss, .poz-acc--lifting) .poz-dock-left .poz-plan__checks-head [data-check-count] { color: rgb(var(--pzk-rgb)); }
.poz-plan.poz-plan--studio.poz-studio-dark:is(.poz-acc--choir, .poz-acc--truss, .poz-acc--lifting) .poz-dock-left .poz-plan__checks-head [data-check-count] { color: var(--pzk-hi); }

/* —— presets, help, intro, entry —— */
.poz-plan.poz-plan--studio:is(.poz-acc--choir, .poz-acc--truss, .poz-acc--lifting) .poz-plan__pchip:hover { border-color: rgba(var(--pzk-rgb), 0.55); box-shadow: 0 8px 22px rgba(var(--pzk-rgb), 0.2); }
.poz-plan.poz-plan--studio:is(.poz-acc--choir, .poz-acc--truss, .poz-acc--lifting) .poz-help:hover { border-color: rgba(var(--pzk-rgb), 0.6); color: rgb(var(--pzk-rgb)); }
.poz-plan.poz-plan--studio:is(.poz-acc--choir, .poz-acc--truss, .poz-acc--lifting) .poz-intro p i { background: rgba(var(--pzk-rgb), 0.14); color: rgb(var(--pzk-rgb)); }
.poz-plan.poz-plan--studio.poz-studio-dark:is(.poz-acc--choir, .poz-acc--truss, .poz-acc--lifting) .poz-intro p i { color: var(--pzk-hi); }
.poz-plan.poz-plan--studio:is(.poz-acc--choir, .poz-acc--truss, .poz-acc--lifting) .poz-plan__entry-card.is-last { border-color: rgba(var(--pzk-rgb), 0.55); }
.poz-plan:is(.poz-acc--choir, .poz-acc--truss, .poz-acc--lifting) .poz-plan__entry-card--rec { border-color: rgba(var(--pzk-rgb), 0.6); }
.poz-plan.poz-plan--studio:is(.poz-acc--choir, .poz-acc--truss, .poz-acc--lifting) .poz-plan__wz-e { background: rgba(var(--pzk-rgb), 0.07); border-left-color: rgba(var(--pzk-rgb), 0.5); }
.poz-plan.poz-plan--studio:is(.poz-acc--choir, .poz-acc--truss, .poz-acc--lifting) .poz-plan__wz-opt:hover { border-color: rgba(var(--pzk-rgb), 0.45); }
.poz-plan.poz-plan--studio:is(.poz-acc--choir, .poz-acc--truss, .poz-acc--lifting) .poz-plan__wz-opt.is-on { border-color: rgba(var(--pzk-rgb), 0.7); background: rgba(var(--pzk-rgb), 0.1); }
.poz-plan.poz-plan--studio:is(.poz-acc--choir, .poz-acc--truss, .poz-acc--lifting) .poz-plan__tools input[type="range"],
.poz-plan.poz-plan--studio:is(.poz-acc--choir, .poz-acc--truss, .poz-acc--lifting) .poz-plan__spec input[type="range"] { accent-color: rgb(var(--pzk-rgb)); }

/* —— vodič leftovers (the tokens fix revives the v2.15 rules; these finish it) —— */
.poz-plan:is(.poz-acc--choir, .poz-acc--truss, .poz-acc--lifting) .poz-vodic__opt:hover { border-color: rgba(var(--pzk-rgb), 0.5); }
.poz-plan:is(.poz-acc--choir, .poz-acc--truss, .poz-acc--lifting) .poz-vodic__opt.is-on .poz-vodic__radio { border-color: rgb(var(--pzk-rgb)); background: rgb(var(--pzk-rgb)); box-shadow: 0 0 0 4px rgba(var(--pzk-rgb), 0.25); }
.poz-plan:is(.poz-acc--choir, .poz-acc--truss, .poz-acc--lifting) .poz-vodic__pop { background: rgba(var(--pzk-rgb), 0.2); color: var(--pzk-hi, #fff); border-color: rgba(var(--pzk-rgb), 0.5); }
/* v2.18b — the intro always floats above the rail and the flyouts */
.poz-plan.poz-plan--studio .poz-intro { z-index: 44; }

/* v2.18c — mode-entry graphics follow the category accent too */
.poz-plan:is(.poz-acc--choir, .poz-acc--truss, .poz-acc--lifting) .poz-plan__entry-media svg g[stroke] { stroke: rgba(var(--pzk-rgb), 0.95); }
.poz-plan:is(.poz-acc--choir, .poz-acc--truss, .poz-acc--lifting) .poz-plan__entry-media svg g[fill] { fill: var(--pzk-hi); }
.poz-plan:is(.poz-acc--choir, .poz-acc--truss, .poz-acc--lifting) .poz-plan__entry-flag { background: rgba(var(--pzk-rgb), 0.2); color: var(--pzk-hi); }
/* v2.19 — the pulse dot on the first tool tile is gone (Sven, 2026-08-27) */
.poz-plan.poz-plan--studio [data-tool="0"] .poz-plan__tool-ico::after { display: none !important; content: none !important; }
/* v2.20 — the plan drawing fits its slot (the custom card cropped it) */
.poz-vodic__media .poz-vodic__plansvg,
.poz-vodic__opt--custom .poz-vodic__media svg { width: 100%; height: 100%; display: block; }
.poz-vodic__opt--custom .poz-vodic__media { overflow: hidden; }
/* ═════ v2.21 — the vodič wears neutral graphite (Sven, 2026-08-27).
   The blue-tinted glows, grids and ramps become achromatic greys on EVERY
   planner — colour now lives ONLY in the category accents (chips, CTAs,
   badges, radio dots), never in the canvas itself. Same layer structure:
   two soft key glows, a vignette, fine + major drafting grids, vertical ramp. ═════ */
.poz-plan__wizard.poz-vodic {
  background:
    radial-gradient(ellipse 62% 50% at 30% 30%, rgba(255, 255, 255, 0.05) 0%, rgba(255, 255, 255, 0) 68%),
    radial-gradient(ellipse 55% 44% at 78% 76%, rgba(255, 255, 255, 0.035) 0%, rgba(255, 255, 255, 0) 70%),
    radial-gradient(ellipse 120% 90% at 50% 50%, rgba(0, 0, 0, 0) 40%, rgba(0, 0, 0, 0.5) 100%),
    repeating-linear-gradient(0deg, rgba(255, 255, 255, 0.028) 0 1px, transparent 1px 44px),
    repeating-linear-gradient(90deg, rgba(255, 255, 255, 0.028) 0 1px, transparent 1px 44px),
    repeating-linear-gradient(0deg, rgba(255, 255, 255, 0.045) 0 1px, transparent 1px 220px),
    repeating-linear-gradient(90deg, rgba(255, 255, 255, 0.045) 0 1px, transparent 1px 220px),
    linear-gradient(178deg, #131416 0%, #17181B 44%, #0E0F11 100%);
}
.poz-plan__wizard .poz-vodic__bar { background: rgba(19, 20, 23, 0.74); }
.poz-plan__wizard .poz-vodic__body { background: rgba(21, 22, 25, 0.66); }
.poz-plan__wizard .poz-vodic__foot { background: linear-gradient(180deg, rgba(20, 21, 24, 0.88), rgba(13, 14, 16, 0.95)); }
.poz-plan__wizard .poz-vodic__fsep { background: rgba(255, 255, 255, 0.14); }
.poz-vodic .poz-vodic__hero .poz-vodic__view {
  background:
    radial-gradient(ellipse 70% 60% at 50% 42%, rgba(255, 255, 255, 0.055) 0%, rgba(255, 255, 255, 0) 74%),
    repeating-linear-gradient(0deg, rgba(255, 255, 255, 0.03) 0 1px, transparent 1px 36px),
    repeating-linear-gradient(90deg, rgba(255, 255, 255, 0.03) 0 1px, transparent 1px 36px),
    linear-gradient(165deg, #212327 0%, #17181C 52%, #101114 100%);
}
.poz-vodic .poz-vodic__hero .poz-vodic__view figcaption { background: rgba(12, 13, 15, 0.78); }
.poz-vodic .poz-vodic__view figcaption { background: rgba(12, 13, 15, 0.74); }
.poz-vodic .poz-vodic__opts .poz-vodic__opt .poz-vodic__media {
  background: linear-gradient(155deg, #34373C 0%, #26282D 46%, #1A1C20 100%);
}
.poz-vodic .poz-vodic__opts .poz-vodic__opt .poz-vodic__kg { background: rgba(12, 13, 15, 0.75); }
.poz-plan__wizard .poz-vodic__chip {
  background: linear-gradient(155deg, rgba(58, 61, 66, 0.55), rgba(26, 28, 32, 0.65));
}
.poz-plan__wizard .poz-vodic__stepper button {
  background: linear-gradient(155deg, rgba(66, 69, 75, 0.6), rgba(31, 33, 38, 0.7));
}
.poz-vodic .poz-vodic__speclist .poz-plan__itemcard {
  background: linear-gradient(155deg, rgba(52, 55, 61, 0.5), rgba(23, 25, 29, 0.62));
}
/* ═════ v2.22 — blue hunt, closed by COMPUTED-STYLE audit at 1440px.
   The v2.21 canvas override lost to a higher-specificity studio rule, and a
   dozen BORDERS (never re-tinted) still carried steel-blue. Everything below
   is from the live inventory — no guessing. ═════ */
.poz-plan.poz-plan--studio .poz-plan__wizard.poz-vodic,
.poz-plan .poz-plan__wizard.poz-vodic {
  background:
    radial-gradient(ellipse 62% 50% at 30% 30%, rgba(255, 255, 255, 0.05) 0%, rgba(255, 255, 255, 0) 68%),
    radial-gradient(ellipse 55% 44% at 78% 76%, rgba(255, 255, 255, 0.035) 0%, rgba(255, 255, 255, 0) 70%),
    radial-gradient(ellipse 120% 90% at 50% 50%, rgba(0, 0, 0, 0) 40%, rgba(0, 0, 0, 0.5) 100%),
    repeating-linear-gradient(0deg, rgba(255, 255, 255, 0.028) 0 1px, transparent 1px 44px),
    repeating-linear-gradient(90deg, rgba(255, 255, 255, 0.028) 0 1px, transparent 1px 44px),
    repeating-linear-gradient(0deg, rgba(255, 255, 255, 0.045) 0 1px, transparent 1px 220px),
    repeating-linear-gradient(90deg, rgba(255, 255, 255, 0.045) 0 1px, transparent 1px 220px),
    linear-gradient(178deg, #131416 0%, #17181B 44%, #0E0F11 100%);
}
/* —— the steel-blue borders go neutral —— */
.poz-plan.poz-plan--studio .poz-vodic__toexpert, .poz-plan .poz-vodic__toexpert { border-color: rgba(255, 255, 255, 0.22); }
.poz-plan.poz-plan--studio .poz-vodic__view, .poz-plan .poz-vodic__view { border-color: rgba(255, 255, 255, 0.12); }
.poz-plan.poz-plan--studio .poz-vodic__view figcaption, .poz-plan .poz-vodic__view figcaption { border-color: rgba(255, 255, 255, 0.16); }
.poz-plan.poz-plan--studio .poz-vodic__body, .poz-plan .poz-vodic__body { border-color: rgba(255, 255, 255, 0.12); }
.poz-plan.poz-plan--studio .poz-vodic__stepper button, .poz-plan .poz-vodic__stepper button { border-color: rgba(255, 255, 255, 0.2); }
.poz-plan.poz-plan--studio .poz-vodic__chip, .poz-plan .poz-vodic__chip { border-color: rgba(255, 255, 255, 0.14); }
.poz-plan.poz-plan--studio .poz-vodic__foot, .poz-plan .poz-vodic__foot { border-color: rgba(255, 255, 255, 0.12); }
/* —— mode-entry media plates: neutral graphite with a soft key glow —— */
.poz-plan .poz-plan__entry-media {
  background:
    radial-gradient(ellipse 70% 60% at 50% 42%, rgba(255, 255, 255, 0.07) 0%, rgba(255, 255, 255, 0) 74%),
    repeating-linear-gradient(0deg, rgba(255, 255, 255, 0.035) 0 1px, transparent 1px 24px),
    repeating-linear-gradient(90deg, rgba(255, 255, 255, 0.035) 0 1px, transparent 1px 24px),
    linear-gradient(170deg, #171A1F 0%, #101216 100%);
  border-color: rgba(255, 255, 255, 0.12);
}
.poz-plan .poz-plan__entry-credits { border-color: rgba(255, 255, 255, 0.12); }
/* the entry diagram's cursor arrow follows the accent, not stage blue */
.poz-plan:is(.poz-acc--choir, .poz-acc--truss, .poz-acc--lifting) .poz-plan__entry-media svg path[fill] { fill: var(--pzk-hi); }
/* —— checks counter pill wears the category accent —— */
.poz-plan.poz-plan--studio:is(.poz-acc--choir, .poz-acc--truss, .poz-acc--lifting) .poz-plan__checks-head [data-check-count] {
  background: rgba(var(--pzk-rgb), 0.14);
  border-color: rgba(var(--pzk-rgb), 0.4);
}
/* v2.22b — the checks pill: match the full .poz-dock-left chain so the accent
   actually outranks the studio-dark blue (specificity, not order, was the bug) */
.poz-plan.poz-plan--studio:is(.poz-acc--choir, .poz-acc--truss, .poz-acc--lifting) .poz-dock-left .poz-plan__checks-head [data-check-count] {
  background: rgba(var(--pzk-rgb), 0.12);
  border-color: rgba(var(--pzk-rgb), 0.34);
}
.poz-plan.poz-plan--studio.poz-studio-dark:is(.poz-acc--choir, .poz-acc--truss, .poz-acc--lifting) .poz-dock-left .poz-plan__checks-head [data-check-count] {
  background: rgba(var(--pzk-rgb), 0.18);
  border-color: rgba(var(--pzk-rgb), 0.42);
}
/* v2.22c — entry diagram: shapes carrying their OWN stroke attribute (the
   highlighted deck cell) follow the accent too, not just their parent group */
.poz-plan:is(.poz-acc--choir, .poz-acc--truss, .poz-acc--lifting) .poz-plan__entry-media svg rect[stroke],
.poz-plan:is(.poz-acc--choir, .poz-acc--truss, .poz-acc--lifting) .poz-plan__entry-media svg circle[stroke],
.poz-plan:is(.poz-acc--choir, .poz-acc--truss, .poz-acc--lifting) .poz-plan__entry-media svg path[stroke] { stroke: var(--pzk-hi); }
/* ═════ v2.23 — the LAST of the blue: chrome TYPOGRAPHY and GLOWS.
   Found by a computed-style audit at 1440px (not by reading source): every
   caption, fact, sub-label and credit line was a light STEEL BLUE, and the
   card/badge/CTA glows were blue halos — which is what made the choir vodič
   read blue even after the canvas went graphite. Text → neutral greys on all
   planners; glows → the category accent. ═════ */

/* —— vodič typography —— */
.poz-plan .poz-plan__wizard.poz-vodic .poz-vodic__toexpert,
.poz-plan .poz-plan__wizard.poz-vodic .poz-vodic__toexpert svg { color: #D7D9DC; stroke: currentColor; }
.poz-plan .poz-plan__wizard.poz-vodic .poz-vodic__credits i { color: rgba(255, 255, 255, 0.55); }
.poz-plan .poz-plan__wizard.poz-vodic .poz-vodic__view figcaption { color: #D7D9DC; }
.poz-plan .poz-plan__wizard.poz-vodic .poz-vodic__hero-sub { color: rgba(255, 255, 255, 0.62); }
.poz-plan .poz-plan__wizard.poz-vodic .poz-vodic__chip--opt i { color: rgba(255, 255, 255, 0.66); }
.poz-plan .poz-plan__wizard.poz-vodic .poz-vodic__sum b { color: rgba(255, 255, 255, 0.6); }
.poz-plan .poz-plan__wizard.poz-vodic .poz-vodic__facts,
.poz-plan .poz-plan__wizard.poz-vodic .poz-vodic__fact,
.poz-plan .poz-plan__wizard.poz-vodic .poz-vodic__fact b { color: #E7E9EB; }
.poz-plan .poz-plan__wizard.poz-vodic .poz-vodic__fact i { color: rgba(255, 255, 255, 0.55); }
.poz-plan .poz-plan__wizard.poz-vodic .poz-vodic__view { box-shadow: 0 18px 44px rgba(0, 0, 0, 0.45), inset 0 0 0 1px rgba(255, 255, 255, 0.06); }

/* —— shell typography —— */
.poz-plan.poz-studio-dark .poz-plan__entry-hint { color: rgba(255, 255, 255, 0.6); }
.poz-plan.poz-studio-dark .poz-plan__credit-tx { color: rgba(255, 255, 255, 0.55); }
.poz-plan .poz-plan__credit-logos i,
.poz-plan .poz-plan__credits--float i,
.poz-plan .poz-plan__entry-credits i { color: rgba(255, 255, 255, 0.5); }

/* —— glows follow the category, never stage blue —— */
.poz-plan.poz-plan--studio .poz-help { box-shadow: 0 10px 24px rgba(0, 0, 0, 0.38); }
.poz-plan:is(.poz-acc--choir, .poz-acc--truss, .poz-acc--lifting) .poz-plan__entry-card--rec {
  box-shadow: 0 22px 60px rgba(0, 0, 0, 0.5), 0 0 0 1px rgba(var(--pzk-rgb), 0.35), 0 12px 40px rgba(var(--pzk-rgb), 0.22);
}
.poz-plan:is(.poz-acc--choir, .poz-acc--truss, .poz-acc--lifting) .poz-plan__entry-flag {
  box-shadow: 0 6px 18px rgba(var(--pzk-rgb), 0.4);
}
.poz-plan.poz-plan--studio:is(.poz-acc--choir, .poz-acc--truss, .poz-acc--lifting) .poz-plan__send--top {
  box-shadow: 0 12px 30px rgba(var(--pzk-rgb), 0.42);
}
/* v2.23b — the "last used" ring on the mode chooser: its blue halo was a
   box-shadow the accent rules never touched (only its border was re-tinted),
   which is the blue glow around the magenta card in Sven's screenshot */
.poz-plan.poz-plan--studio:is(.poz-acc--choir, .poz-acc--truss, .poz-acc--lifting) .poz-plan__entry-card.is-last {
  box-shadow: 0 0 0 3px rgba(var(--pzk-rgb), 0.25);
}
.poz-plan.poz-plan--studio:is(.poz-acc--choir, .poz-acc--truss, .poz-acc--lifting) .poz-plan__entry-card.is-last.poz-plan__entry-card--rec {
  box-shadow: 0 0 0 3px rgba(var(--pzk-rgb), 0.25), 0 18px 46px rgba(0, 0, 0, 0.45);
}
/* v2.23c — the NAJPOPULARNIJE badge carried the same blue halo as the entry flag */
.poz-plan:is(.poz-acc--choir, .poz-acc--truss, .poz-acc--lifting) .poz-vodic__pop {
  box-shadow: 0 6px 18px rgba(var(--pzk-rgb), 0.4);
}
/* v2.23d — SELECTED-state leftovers: the active option's fill and the Dalje
   glow were still stage blue (earlier accent rules only re-tinted borders) */
.poz-plan:is(.poz-acc--choir, .poz-acc--truss, .poz-acc--lifting) .poz-vodic__opt.is-on { background: rgba(var(--pzk-rgb), 0.14); }
.poz-plan:is(.poz-acc--choir, .poz-acc--truss, .poz-acc--lifting) .poz-vodic__chip.is-on {
  background: linear-gradient(155deg, rgba(var(--pzk-rgb), 0.4), rgba(var(--pzk-rgb), 0.28));
}
.poz-plan:is(.poz-acc--choir, .poz-acc--truss, .poz-acc--lifting) .poz-vodic__next,
.poz-plan:is(.poz-acc--choir, .poz-acc--truss, .poz-acc--lifting) .poz-vodic__next:hover:not(:disabled) {
  box-shadow: 0 12px 30px rgba(var(--pzk-rgb), 0.4);
}
.poz-plan:is(.poz-acc--choir, .poz-acc--truss, .poz-acc--lifting) .poz-vodic__path--cta {
  box-shadow: 0 12px 30px rgba(var(--pzk-rgb), 0.4);
}
/* ═════ v2.24 — the animated header underline + the 2D dock/legend collision ═════ */

/* the sweeping line under SPECIFIKACIJA / the tools head was hard-coded stage
   blue (a ::after gradient — invisible to element-level colour audits) */
.poz-plan.poz-plan--studio:is(.poz-acc--choir, .poz-acc--truss, .poz-acc--lifting) .poz-plan__tools-head::after,
.poz-plan.poz-plan--studio:is(.poz-acc--choir, .poz-acc--truss, .poz-acc--lifting) .poz-plan__spec-head::after {
  background: linear-gradient(90deg,
    rgba(var(--pzk-rgb), 0) 0%,
    rgba(var(--pzk-rgb), 0.85) 30%,
    rgba(var(--pzk-rgb), 1) 50%,
    rgba(var(--pzk-rgb), 0.85) 70%,
    rgba(var(--pzk-rgb), 0) 100%);
  background-size: 220% 100%;
}

/* In 2D the bottom-left info strip (drawing id · dimensions · colour legend)
   shares the corner with the Napomene dock, which sits on top of it. The dock
   now floats ABOVE the strip whenever the 2D plan is showing, so the legend
   is always readable. (3D hides the strip entirely, so the dock stays low.) */
@media (min-width: 901px) {
  /* the 2D corner stacks bottom-up: viewport toolbar · info strip · Napomene,
     so neither the dock NOR the toolbar can cover the colour legend */
  .poz-plan.poz-plan--studio:has(.poz-plan__scene:not(.is-3d)) .poz-plan__bar--bottom { bottom: 100px; }
  .poz-plan.poz-plan--studio:has(.poz-plan__scene:not(.is-3d)) .poz-dock-left { bottom: 156px; left: 130px; }
  @media (max-height: 860px) {
    .poz-plan.poz-plan--studio:has(.poz-plan__scene:not(.is-3d)) .poz-plan__bar--bottom { bottom: 94px; }
    .poz-plan.poz-plan--studio:has(.poz-plan__scene:not(.is-3d)) .poz-dock-left { bottom: 146px; left: 130px; }
  }
  .poz-plan.poz-plan--studio .poz-plan__bar--bottom { z-index: 26; }
  .poz-plan.poz-plan--studio .poz-plan__scene:not(.is-3d) ~ .poz-plan__bar--bottom .poz-plan__legend { display: flex; }
}
/* v2.24b — the choir rail is wider (152px, four big tiles), so its 2D dock
   needs a bigger left offset than the stage's to clear the tiles */
@media (min-width: 901px) {
  .poz-plan.poz-plan--studio[data-planner="zbor"]:has(.poz-plan__scene:not(.is-3d)) .poz-dock-left { left: 188px; }
}
/* v2.25 - the truss rail: five steps, so tiles and renders get room */
@media (min-width: 901px) {
  .poz-plan.poz-plan--studio[data-planner="truss"] .poz-plan__tools { width: 140px; }
  .poz-plan.poz-plan--studio[data-planner="truss"] .poz-plan__tool {
    min-height: 104px; margin: 8px 12px 0; padding: 12px 8px 10px; gap: 6px;
  }
  .poz-plan.poz-plan--studio[data-planner="truss"] .poz-plan__tool-ico img {
    width: 84px; height: 54px; object-fit: contain;
  }
  .poz-plan.poz-plan--studio[data-planner="truss"] .poz-plan__tool-ico svg { width: 38px; height: 38px; }
  .poz-plan.poz-plan--studio[data-planner="truss"] .poz-plan__tool-name { font-size: 11.5px; max-width: 116px; line-height: 1.25; }
  .poz-plan.poz-plan--studio[data-planner="truss"] .poz-plan__tool-count { font-size: 10px; max-width: 66px; }
  .poz-plan.poz-plan--studio[data-planner="truss"] .poz-plan__panelwrap.is-open { width: 372px; }
  .poz-plan.poz-plan--studio[data-planner="truss"] .poz-plan__chip.has-im3 { min-width: 118px; font-size: 12.5px; }
  .poz-plan.poz-plan--studio[data-planner="truss"] .poz-plan__chip-im3 { width: 96px; height: 52px; }
  .poz-plan.poz-plan--studio[data-planner="truss"]:has(.poz-plan__scene:not(.is-3d)) .poz-dock-left { left: 176px; }
}
/* v2.25b - fallback line-art icons: neutral grey, never blue-slate */
.poz-plan.poz-plan--studio:is(.poz-acc--choir, .poz-acc--truss, .poz-acc--lifting) .poz-plan__tool-ico { color: #9AA0A8; }
.poz-plan.poz-plan--studio:is(.poz-acc--choir, .poz-acc--truss, .poz-acc--lifting) .poz-plan__tool.is-on .poz-plan__tool-ico { color: var(--pzk-hi); }

/* v2.26 - the lifter inherits every accent rule that predates :is() */
/* (token fallback rule intentionally NOT duplicated - it would reset the accent to blue) */
.poz-plan.poz-acc--choir .poz-plan__tool.is-on, .poz-plan.poz-acc--lifting .poz-plan__tool.is-on { border-color: rgba(var(--pzk-rgb), 0.65); box-shadow: 0 0 0 1px rgba(var(--pzk-rgb), 0.35), 0 10px 26px rgba(var(--pzk-rgb), 0.2); }
.poz-plan.poz-acc--choir .poz-plan__chip.is-on, .poz-plan.poz-acc--lifting .poz-plan__chip.is-on { border-color: rgba(var(--pzk-rgb), 0.7); background: rgba(var(--pzk-rgb), 0.16); }
.poz-plan.poz-acc--choir .poz-vodic__opt.is-on, .poz-plan.poz-acc--lifting .poz-vodic__opt.is-on, .poz-plan.poz-acc--choir .poz-vodic__chip.is-on, .poz-plan.poz-acc--lifting .poz-vodic__chip.is-on { border-color: rgba(var(--pzk-rgb), 0.75); box-shadow: 0 0 0 1px rgba(var(--pzk-rgb), 0.35), 0 8px 20px rgba(var(--pzk-rgb), 0.22); }
.poz-plan.poz-acc--choir .poz-vodic__next, .poz-plan.poz-acc--lifting .poz-vodic__next, .poz-plan.poz-acc--choir .poz-vodic__path--cta, .poz-plan.poz-acc--lifting .poz-vodic__path--cta { background: linear-gradient(150deg, rgba(var(--pzk-rgb), 0.55), rgba(var(--pzk-rgb), 0.32)); border-color: rgba(var(--pzk-rgb), 0.6); }
.poz-plan.poz-acc--choir .poz-vodic__nav button.is-on, .poz-plan.poz-acc--lifting .poz-vodic__nav button.is-on { border-bottom-color: rgb(var(--pzk-rgb)); color: #fff; }
.poz-plan.poz-acc--choir .poz-vodic__ptprog-fill, .poz-plan.poz-acc--lifting .poz-vodic__ptprog-fill { background: linear-gradient(90deg, rgba(var(--pzk-rgb), 0.85), rgb(var(--pzk-rgb)) 55%, rgba(var(--pzk-rgb), 0.7)); background-size: 200% 100%; }
.poz-plan.poz-acc--choir .poz-vodic__pop, .poz-plan.poz-acc--lifting .poz-vodic__pop, .poz-plan.poz-acc--choir .poz-vodic__kg, .poz-plan.poz-acc--lifting .poz-vodic__kg { border-color: rgba(var(--pzk-rgb), 0.45); }
.poz-plan.poz-acc--lifting { --pzk: #1F8A5B; --pzk-rgb: 31, 138, 91; --pzk-hi: #6FC9A0; }

/* v2.26b - the lifter's accent tokens, last word */
.poz-plan.poz-acc--lifting { --pzk: #DC2626; --pzk-rgb: 220, 38, 38; --pzk-hi: #F79393; }

/* v2.27 - the SUMMARY screen's own chrome went neutral (it only exists on the
   last step, which is why earlier sweeps never saw it): facts panel, spec
   list, photoreal progress, item cards and the hand-off paths. */
.poz-vodic .poz-vodic__sumfacts { background: rgba(255, 255, 255, 0.05); border-color: rgba(255, 255, 255, 0.12); }
.poz-vodic .poz-vodic__speclist { border-color: rgba(255, 255, 255, 0.12); }
.poz-vodic .poz-vodic__ptprog { border-color: rgba(255, 255, 255, 0.18); }
.poz-vodic .poz-vodic__ptprog-tx { color: #D7D9DC; }
.poz-vodic .poz-vodic__ptprog-track { background: rgba(255, 255, 255, 0.14); }
.poz-vodic .poz-vodic__speclist .poz-plan__itemcard-qty { color: #E7E9EB; }
.poz-vodic .poz-vodic__speclist .poz-plan__itemcard-img { border-color: rgba(255, 255, 255, 0.12); }
.poz-vodic .poz-vodic__path { border-color: rgba(255, 255, 255, 0.14); }
.poz-vodic .poz-vodic__path-tx i { color: rgba(255, 255, 255, 0.62); }
/* the hand-off icon follows the category (stage keeps its blue) */
.poz-plan:is(.poz-acc--choir, .poz-acc--truss, .poz-acc--lifting) .poz-vodic__path-ico,
.poz-plan:is(.poz-acc--choir, .poz-acc--truss, .poz-acc--lifting) .poz-vodic__path-ico svg { color: var(--pzk-hi); stroke: currentColor; }
/* v2.27b - the last two summary borders (higher-specificity rules outranked v2.27) */
.poz-plan .poz-vodic .poz-vodic__speclist .poz-plan__itemcard-img,
.poz-plan .poz-vodic .poz-vodic__speclist .poz-plan__itemcard-img.is-render { border-color: rgba(255, 255, 255, 0.12); }
.poz-plan .poz-vodic .poz-vodic__path .poz-vodic__path-ico { border-color: rgba(255, 255, 255, 0.16); }
/* v2.28 - THE NAVY GRADIENTS. Every surface below was painted with a
   blue-grey GRADIENT (backgroundImage), which is why flat-colour audits kept
   reporting the summary clean while it plainly read blue. Neutral graphite
   now, on every planner; the accent survives only on the CTA and the code
   chips. Selectors are deliberately heavy so nothing outranks them. */
.poz-plan .poz-vodic .poz-vodic__sumfacts .poz-vodic__fact {
  background: linear-gradient(160deg, rgba(46, 48, 54, 0.92), rgba(30, 32, 37, 0.92));
  border-color: rgba(255, 255, 255, 0.10);
}
.poz-plan .poz-vodic .poz-vodic__speclist {
  background: linear-gradient(160deg, rgba(38, 40, 45, 0.55), rgba(24, 26, 30, 0.55));
}
.poz-plan .poz-vodic .poz-vodic__path {
  background: linear-gradient(155deg, rgba(58, 61, 66, 0.6), rgba(30, 32, 37, 0.7));
}
.poz-plan .poz-vodic .poz-vodic__toexpert {
  background: linear-gradient(155deg, rgba(58, 61, 66, 0.5), rgba(30, 32, 37, 0.6));
}
.poz-plan .poz-vodic .poz-vodic__bar { border-bottom-color: rgba(255, 255, 255, 0.12); }
.poz-plan .poz-vodic .poz-plan__itemcard-img,
.poz-plan .poz-vodic .poz-plan__itemcard-img.is-render {
  background:
    radial-gradient(ellipse 70% 60% at 50% 42%, rgba(255, 255, 255, 0.14) 0%, rgba(255, 255, 255, 0) 74%),
    linear-gradient(165deg, #2A2C31 0%, #1B1D21 100%);
}
.poz-plan .poz-vodic .poz-plan__itemcard,
.poz-plan .poz-vodic .poz-plan__itemcard-tx,
.poz-plan .poz-vodic .poz-plan__itemcard-name { color: #ECEDEF; }
/* the CTA keeps the category accent */
.poz-plan:is(.poz-acc--choir, .poz-acc--truss, .poz-acc--lifting) .poz-vodic .poz-vodic__path--cta {
  background: linear-gradient(150deg, rgba(var(--pzk-rgb), 0.55), rgba(var(--pzk-rgb), 0.32));
}
/* v2.28b - the last two blue-grey controls (intro close, small chrome buttons) */
.poz-plan .poz-intro__x { color: #A6A9AE; border-color: rgba(255, 255, 255, 0.18); }
.poz-plan .poz-intro__x:hover { color: #E7E9EB; }
.poz-plan .poz-vodic .poz-vodic__back { color: #C9CBCE; border-color: rgba(255, 255, 255, 0.2); }
/* v2.28c - the step-nav labels (the active one keeps the category accent) */
.poz-plan .poz-vodic .poz-vodic__nav button { color: #9DA0A6; }
.poz-plan .poz-vodic .poz-vodic__nav button.is-on { color: #FFFFFF; }
/* v2.29 - the guided overlay is SELF-SUFFICIENT. Its layout used to require
   .poz-plan--studio on the root, which is why the lifter had to borrow that
   class - and borrowing it wrecked the lifter's own four-window expert layout
   underneath. These are the same rules, without the studio requirement, so any
   planner can open the vodic without touching its root classes. */
@media (min-width: 901px) {
  .poz-plan .poz-plan__wizard.poz-vodic {
    display: flex; flex-direction: column; align-items: stretch; justify-content: flex-start; background: #0A0B0D; z-index: 55; padding: 96px 0 0;
  }
  .poz-plan .poz-plan__wizard.poz-vodic {
    background: radial-gradient(90% 60% at 50% -5%, rgba(50, 50, 56, 0.55) 0%, rgba(10, 11, 13, 0) 55%), linear-gradient(180deg, #101216 0%, #0A0B0D 45%, #08090B 100%);
  }
  .poz-plan .poz-plan__wizard.poz-vodic {
    background: radial-gradient(85% 55% at 72% -4%, rgba(65, 65, 71, 0.5) 0%, rgba(10, 15, 24, 0) 58%), radial-gradient(70% 45% at 12% 108%, rgba(50, 50, 56, 0.35) 0%, rgba(10, 15, 24, 0) 55%), repeating-linear-gradient(0deg, rgba(140, 140, 146, 0.045) 0 1px, transparent 1px 44px), repeating-linear-gradient(90deg, rgba(140, 140, 146, 0.045) 0 1px, transparent 1px 44px), linear-gradient(180deg, #0D1420 0%, #0A101A 55%, #080C13 100%);
  }
}
  .poz-plan .poz-plan__wizard.poz-vodic, .poz-plan .poz-plan__wizard.poz-vodic {
    background: radial-gradient(ellipse 62% 50% at 30% 30%, rgba(255, 255, 255, 0.05) 0%, rgba(255, 255, 255, 0) 68%), radial-gradient(ellipse 55% 44% at 78% 76%, rgba(255, 255, 255, 0.035) 0%, rgba(255, 255, 255, 0) 70%), radial-gradient(ellipse 120% 90% at 50% 50%, rgba(0, 0, 0, 0) 40%, rgba(0, 0, 0, 0.5) 100%), repeating-linear-gradient(0deg, rgba(255, 255, 255, 0.028) 0 1px, transparent 1px 44px), repeating-linear-gradient(90deg, rgba(255, 255, 255, 0.028) 0 1px, transparent 1px 44px), repeating-linear-gradient(0deg, rgba(255, 255, 255, 0.045) 0 1px, transparent 1px 220px), repeating-linear-gradient(90deg, rgba(255, 255, 255, 0.045) 0 1px, transparent 1px 220px), linear-gradient(178deg, #131416 0%, #17181B 44%, #0E0F11 100%);
  }
  .poz-plan .poz-vodic__toexpert, .poz-plan .poz-vodic__toexpert {
    border-color: rgba(255, 255, 255, 0.22);
  }
  .poz-plan .poz-vodic__view, .poz-plan .poz-vodic__view {
    border-color: rgba(255, 255, 255, 0.12);
  }
  .poz-plan .poz-vodic__view figcaption, .poz-plan .poz-vodic__view figcaption {
    border-color: rgba(255, 255, 255, 0.16);
  }
  .poz-plan .poz-vodic__body, .poz-plan .poz-vodic__body {
    border-color: rgba(255, 255, 255, 0.12);
  }
  .poz-plan .poz-vodic__stepper button, .poz-plan .poz-vodic__stepper button {
    border-color: rgba(255, 255, 255, 0.2);
  }
  .poz-plan .poz-vodic__chip, .poz-plan .poz-vodic__chip {
    border-color: rgba(255, 255, 255, 0.14);
  }
  .poz-plan .poz-vodic__foot, .poz-plan .poz-vodic__foot {
    border-color: rgba(255, 255, 255, 0.12);
  }

/* v2.29b - the neutral graphite canvas has the last word (the v2.29 duplicates
   carried the retired blue gradients along with the layout rules) */
.poz-plan .poz-plan__wizard.poz-vodic,
.poz-plan.poz-plan--studio .poz-plan__wizard.poz-vodic {
  background:
    radial-gradient(ellipse 62% 50% at 30% 30%, rgba(255, 255, 255, 0.05) 0%, rgba(255, 255, 255, 0) 68%),
    radial-gradient(ellipse 55% 44% at 78% 76%, rgba(255, 255, 255, 0.035) 0%, rgba(255, 255, 255, 0) 70%),
    radial-gradient(ellipse 120% 90% at 50% 50%, rgba(0, 0, 0, 0) 40%, rgba(0, 0, 0, 0.5) 100%),
    repeating-linear-gradient(0deg, rgba(255, 255, 255, 0.028) 0 1px, transparent 1px 44px),
    repeating-linear-gradient(90deg, rgba(255, 255, 255, 0.028) 0 1px, transparent 1px 44px),
    repeating-linear-gradient(0deg, rgba(255, 255, 255, 0.045) 0 1px, transparent 1px 220px),
    repeating-linear-gradient(90deg, rgba(255, 255, 255, 0.045) 0 1px, transparent 1px 220px),
    linear-gradient(178deg, #131416 0%, #17181B 44%, #0E0F11 100%);
}
/* the summary panel scrolls instead of clipping a long datasheet */
.poz-plan .poz-vodic .poz-vodic__speclist { overflow-y: auto; overscroll-behavior: contain; }
/* v2.29c - on a planner that is not a full-viewport studio shell (the lifter),
   the guided layer pins to the VIEWPORT. Its own tool moves [data-wizard] into
   the scene column, so inset:0 would otherwise resolve to that narrow box. */
.poz-plan:not(.poz-plan--studio) .poz-plan__wizard.poz-vodic {
  position: fixed;
  inset: 0;
  z-index: 120;
}
/* ---- v2.29d — the guided overlay fills the viewport wherever the tool is not a studio shell ---- */
.poz-plan:not(.poz-plan--studio) .poz-plan__wizard.poz-vodic{position:fixed;inset:0;z-index:120;width:100%;max-width:none;height:100%;max-height:none;border-radius:0;}

/* ---- v2.29e — the datasheet rows keep their own height; the list scrolls instead of squeezing them ---- */
.poz-vodic__speclist > *{flex:0 0 auto;}
.poz-vodic__speclist .poz-lift__stats{overflow:visible;}

/* ---- v2.29f — in the summary the model's own figures ride in one compact row ---- */
.poz-vodic__speclist .poz-lift__stats{grid-template-columns:repeat(4,1fr);gap:8px;padding:10px 0 8px;}
.poz-vodic__speclist .poz-lift__stat{padding:9px 10px;gap:1px;}
.poz-vodic__speclist .poz-lift__stat b{font-size:17px;line-height:1.15;}
.poz-vodic__speclist .poz-lift__stat span{font-size:9px;}

/* ---- v2.29g — the adapters sit three across so the whole datasheet fits without a scroll ---- */
.poz-vodic__speclist .poz-lift__adapters{grid-template-columns:repeat(3,1fr);}
.poz-vodic__speclist .poz-lift__hero b,.poz-vodic__speclist .poz-lift__hero strong{line-height:1.05;}

/* ---- v2.30 — the model datasheet wears the overlay's dark surface whatever theme the tool itself is in ---- */
.poz-vodic__speclist .poz-lift__hero-name{color:#fff;}
.poz-vodic__speclist .poz-lift__stats{background:none;border:0;}
.poz-vodic__speclist .poz-lift__stat{background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.10);border-radius:12px;}
.poz-vodic__speclist .poz-lift__stat b{color:#fff;}
.poz-vodic__speclist .poz-lift__stat span,.poz-vodic__speclist .poz-lift__stat i{color:#8a9099;}
.poz-vodic__speclist .poz-lift__sub{color:#8a9099;}
.poz-vodic__speclist .poz-lift__why li{color:#c6cbd3;}
.poz-vodic__speclist .poz-lift__adap{color:#c6cbd3;}
.poz-vodic__speclist .poz-lift__adap i{border-color:rgba(255,255,255,.30);}
.poz-vodic__speclist .poz-lift__adap.is-on{color:#fff;}

/* ---- v2.31 — the chrome stays graphite; every chosen, hovered or coded detail wears the module accent (--acc) ---- */
.poz-vodic__nav button.is-on{color:#fff;border-bottom-color:var(--acc,#8a8a90);}
.poz-vodic__opt:hover{border-color:color-mix(in srgb,var(--acc,#8a8a90) 50%,transparent);}
.poz-vodic__opt.is-on{border-color:var(--acc,#8a8a90);background:color-mix(in srgb,var(--acc,#6e6e74) 14%,transparent);box-shadow:0 0 0 3px color-mix(in srgb,var(--acc,#6e6e74) 12%,transparent);}
.poz-vodic__opt.is-on .poz-vodic__radio{border-color:var(--acc,#8a8a90);background:radial-gradient(circle at center,var(--acc,#8a8a90) 0 42%,transparent 43%);}
.poz-vodic__chip:hover{border-color:color-mix(in srgb,var(--acc,#8a8a90) 45%,transparent);}
.poz-vodic__chip.is-on{border-color:var(--acc,#8a8a90);background:color-mix(in srgb,var(--acc,#6e6e74) 16%,transparent);color:#fff;}
.poz-vodic__chip.is-on i{color:var(--acc-ink,var(--acc,#8a8a90));}
.poz-vodic__stepper button:hover,.poz-vodic__opt--custom.is-on .poz-vodic__stepper button{border-color:color-mix(in srgb,var(--acc,#8a8a90) 55%,transparent);}
.poz-vodic__path:hover{border-color:color-mix(in srgb,var(--acc,#8a8a90) 50%,transparent);}
.poz-vodic__path-ico{color:var(--acc-ink,var(--acc,#c6cbd3));}
/* GUIL codes are a TECHNICAL label, not an accent (Sven, 2026-08-28). The v2.31
   accent pass tinted them with --acc, which on the stage planner is #0066cc — a
   dim blue on the graphite summary that could barely be read. They go back to
   the neutral grey the speclist already used, so the code stays legible on every
   module regardless of its hue. */
/* The studio-dark canvas paints EVERY .poz-plan__itemcard-code in the module's
   accent at four classes of specificity, which outranks anything scoped to the
   vodic alone — so the summary's chips are listed first here at five. Only the
   guided summary changes; the expert canvas keeps its accent chips. */
.poz-plan--studio.poz-studio-dark .poz-vodic .poz-vodic__speclist .poz-plan__itemcard-code,
.poz-plan--studio.poz-studio-dark .poz-vodic__speclist .poz-plan__itemcard-code,
.poz-vodic__speclist .poz-plan__itemcard-code,.poz-vodic .poz-vodic__speclist .poz-plan__itemcard-code{color:#c8c8ce;background:rgba(157,157,163,0.12);border:1px solid rgba(157,157,163,0.28);}
.poz-vodic__pop{background:var(--acc,#8a8a90);color:#fff;}

/* ---- v2.32 — the lifter's guided panel lives IN the page: the site header stays,
     the frame grows to fit it and the page scrolls normally. Lifter only. ---- */
.poz-plan--lift.is-vodic .poz-plan__frame > *:not(.poz-plan__wizard){display:none;}
.poz-plan--lift.is-vodic .poz-plan__wizard.poz-vodic{position:static;inset:auto;width:auto;max-width:none;height:auto;max-height:none;padding:0 clamp(16px,2vw,28px) 26px;border-radius:0;z-index:auto;display:flex;flex-direction:column;overflow:visible;}
.poz-plan--lift.is-vodic .poz-vodic__main{min-height:600px;height:auto;max-height:none;}
.poz-plan--lift.is-vodic .poz-vodic__hero{min-height:560px;}
.poz-plan--lift.is-vodic .poz-vodic__body{height:auto;max-height:none;overflow:visible;}
.poz-plan--lift.is-vodic .poz-vodic__speclist{max-height:none;overflow:visible;}
.poz-plan--lift.is-vodic .poz-vodic__bar{position:static;}

/* ---- v2.33 — while the guided panel is in the frame, the frame is one plain block ---- */
.poz-plan--lift.is-vodic .poz-plan__frame{display:block;height:auto;min-height:0;max-height:none;grid-template-columns:none;grid-template-rows:none;padding:0;gap:0;overflow:visible;}

/* ---- v2.34 — the steps fit one screen like the other tools; the summary flows and the page scrolls ---- */
.poz-plan--lift.is-vodic .poz-vodic__main{min-height:0;height:clamp(520px,calc(100vh - 300px),720px);}
.poz-plan--lift.is-vodic .poz-vodic__body{height:100%;max-height:none;overflow-y:auto;}
.poz-plan--lift.is-vodic .poz-vodic__main--sum{height:auto;min-height:0;}
.poz-plan--lift.is-vodic .poz-vodic__main--sum .poz-vodic__hero{max-height:720px;}
.poz-plan--lift.is-vodic .poz-vodic__main--sum .poz-vodic__body{height:auto;overflow:visible;}

/* ---- v2.35 — the lifter's panel fits the screen under the site header, like the other three tools:
     bar and foot are fixed bands, the right-hand column scrolls inside itself ---- */
.poz-plan--lift.is-vodic .poz-plan__wizard.poz-vodic{height:calc(100vh - 150px);min-height:520px;max-height:none;}
.poz-plan--lift.is-vodic .poz-vodic__bar,.poz-plan--lift.is-vodic .poz-vodic__foot{flex:0 0 auto;}
.poz-plan--lift.is-vodic .poz-vodic__main{flex:1 1 auto;height:auto;min-height:0;}
.poz-plan--lift.is-vodic .poz-vodic__main--sum{height:auto;min-height:0;}
.poz-plan--lift.is-vodic .poz-vodic__hero{min-height:0;max-height:none;}
.poz-plan--lift.is-vodic .poz-vodic__body,.poz-plan--lift.is-vodic .poz-vodic__main--sum .poz-vodic__body{height:100%;min-height:0;max-height:none;overflow-y:auto;overscroll-behavior:contain;}
.poz-plan--lift.is-vodic .poz-vodic__speclist{max-height:none;overflow:visible;}

/* ---- v2.36 — inside the scrolling summary column nothing gets squeezed: every block keeps
     its own height and the column scrolls past them ---- */
.poz-plan--lift.is-vodic .poz-vodic__body > *{flex:0 0 auto;}
.poz-plan--lift.is-vodic .poz-vodic__speclist{flex:0 0 auto;max-height:none;overflow:visible;}

/* ---- v2.37 — the datasheet card breathes: its content no longer touches the frame ---- */
.poz-plan--lift.is-vodic .poz-vodic__speclist{padding:18px 20px 20px;}

/* ---- v2.38 — the summary is never clipped: it grows to its own height and the page
     scrolls to it. Only the question steps stay locked to one screen. ---- */
.poz-plan--lift.is-vodic .poz-plan__wizard.poz-vodic:has(.poz-vodic__main--sum){height:auto;min-height:0;}
.poz-plan--lift.is-vodic .poz-vodic__main--sum{height:auto;min-height:0;}
.poz-plan--lift.is-vodic .poz-vodic__main--sum .poz-vodic__body{height:auto;max-height:none;overflow:visible;}
.poz-plan--lift.is-vodic .poz-vodic__main--sum .poz-vodic__hero{max-height:min(78vh,760px);}

/* ---- v2.39 — the fact strip never spills into its neighbour: cells hold a minimum
     width and drop to fewer columns instead, and a long value wraps ---- */
.poz-plan--lift.is-vodic .poz-vodic__sumfacts{grid-template-columns:repeat(auto-fit,minmax(158px,1fr));}
.poz-plan--lift.is-vodic .poz-vodic__sumfacts .poz-vodic__fact,
.poz-plan--lift.is-vodic .poz-vodic__sumfacts .poz-vodic__fact *{white-space:normal;overflow-wrap:anywhere;}

/* Guided configurators: one document-scrolling composition on touch widths.
   Desktop retains its existing studio. The classic floating mini-wizard and
   advanced sheets must not own the mobile guided layout. */
@media (max-width: 900px) {
  /* In the stacked advanced layout every drawing child is positioned. Give
     the scene its own bounded height so its bottom-anchored guide shortcut
     cannot collapse upward into the preceding toolbar. */
  .poz-plan--studio:not(:has(.poz-vodic:not([hidden]))) .poz-plan__scene {
    min-height: clamp(320px, 55svh, 620px);
  }
  .poz-plan:not(.is-dock-in-view) .poz-plan__tools,
  .poz-plan:not(.is-dock-in-view) .poz-plan__spec { visibility: hidden; pointer-events: none; }
  .poz-plan:has(.poz-vodic:not([hidden])) .poz-plan__frame {
    /* The shared architecture's mobile rescue uses !important grid/clip rules.
       They belong to advanced mode; a document-flow guide must size its frame. */
    display: block !important; height: auto !important; min-height: 0 !important;
    max-height: none; grid-template-rows: none !important; overflow: visible !important;
  }
  .poz-plan:has(.poz-vodic:not([hidden])) .poz-plan__frame > :not(.poz-plan__wizard):not(:has(.poz-plan__wizard)),
  .poz-plan:has(.poz-vodic:not([hidden])) .poz-plan__canvas > :not(.poz-plan__wizard):not(:has(.poz-plan__wizard)),
  .poz-plan:has(.poz-vodic:not([hidden])) .poz-tb,
  .poz-plan:has(.poz-vodic:not([hidden])) .poz-assist,
  .poz-plan:has(.poz-vodic:not([hidden])) .poz-plan__tools,
  .poz-plan:has(.poz-vodic:not([hidden])) .poz-plan__spec { display: none; }
  .poz-plan:has(.poz-vodic:not([hidden])) .poz-plan__canvas {
    display: block; height: auto; min-height: 0; max-height: none; overflow: visible;
  }
  .poz-plan .poz-plan__wizard.poz-vodic:not([hidden]),
  .poz-plan--lift.is-vodic .poz-plan__wizard.poz-vodic {
    position: relative; inset: auto; width: 100%; max-width: none;
    height: max-content; min-height: 0; max-height: none; margin: 0; padding: 0; box-sizing: border-box;
    display: flex; flex: none; flex-direction: column; align-items: stretch; justify-content: flex-start;
    overflow: visible; border-radius: 18px; border: 1px solid #303238;
    background: #111318; color: #edf0f4; box-shadow: none;
    font-family: var(--poz-font-body, 'IBM Plex Sans', sans-serif);
  }
  .poz-plan .poz-vodic button { font-family: inherit; cursor: pointer; min-height: 44px; }
  .poz-plan .poz-vodic button:focus-visible { outline: 2px solid var(--acc, #9dc2e8); outline-offset: 3px; }
  .poz-plan .poz-vodic button:disabled { cursor: default; opacity: .45; }
  .poz-plan .poz-vodic__bar {
    display: grid; grid-template-columns: minmax(0, 1fr) 44px; gap: 8px;
    padding: 12px; border-bottom: 1px solid #303238; position: static;
  }
  .poz-plan .poz-vodic__brand, .poz-plan .poz-vodic__credits { display: none; }
  .poz-plan .poz-vodic__nav {
    grid-column: 1 / -1; grid-row: 2; display: flex; gap: 4px;
    min-width: 0; overflow-x: auto; scrollbar-width: thin; scrollbar-color: #59616d transparent;
  }
  .poz-plan .poz-vodic__nav button {
    flex: 0 0 auto; border: 0; border-bottom: 2px solid transparent; padding: 8px 12px;
    background: transparent; color: #bac2cd; font-size: 13px; line-height: 1.3;
  }
  .poz-plan .poz-vodic__nav button.is-on { color: #fff; border-bottom-color: var(--acc, #9dc2e8); }
  .poz-plan .poz-vodic__nav button.is-locked { opacity: .5; }
  .poz-plan .poz-vodic__toexpert {
    display: inline-flex; align-items: center; justify-content: center; gap: 8px;
    grid-column: 1; grid-row: 1; margin: 0; padding: 10px 14px; min-width: 0;
    border: 1px solid #454a53; border-radius: 10px; background: #20242b; color: #edf0f4; font-size: 14px;
  }
  .poz-plan .poz-vodic__toexpert svg { width: 18px; height: 18px; flex: none; }
  .poz-plan .poz-vodic__x {
    grid-column: 2; grid-row: 1; width: 44px; height: 44px; border: 1px solid #454a53;
    border-radius: 50%; background: #20242b; color: #fff; font-size: 22px;
  }
  .poz-plan .poz-vodic__main, .poz-plan--lift.is-vodic .poz-vodic__main {
    display: flex; flex: none; flex-direction: column; height: auto; min-height: 0; max-height: none; overflow: visible;
  }
  .poz-plan .poz-vodic__hero, .poz-plan--lift.is-vodic .poz-vodic__hero,
  .poz-plan--lift.is-vodic .poz-vodic__main--sum .poz-vodic__hero {
    position: relative; display: block; flex: none; height: 210px; min-height: 0; max-height: 210px;
    overflow: hidden; background: #0c0e12; order: 0;
  }
  .poz-plan .poz-vodic__view--main { position: relative; width: 100%; height: 100%; margin: 0; overflow: hidden; }
  .poz-plan .poz-vodic__view--main > img { width: 100%; height: 100%; object-fit: contain; }
  .poz-plan .poz-vodic__view--main > canvas { width: 100% !important; height: 100% !important; object-fit: contain; }
  .poz-plan .poz-vodic__view figcaption { position: absolute; inset: auto 12px 8px; color: #c1c9d5; font-size: 11px; line-height: 1.4; }
  .poz-plan .poz-vodic__subviews, .poz-plan .poz-vodic__marks { display: none; }
  .poz-plan .poz-vodic__body, .poz-plan--lift.is-vodic .poz-vodic__body,
  .poz-plan--lift.is-vodic .poz-vodic__main--sum .poz-vodic__body {
    display: block; flex: none; width: 100%; max-width: none; height: auto; max-height: none;
    overflow: visible; padding: 22px 16px; margin: 0; box-sizing: border-box;
  }
  .poz-plan .poz-vodic__step { margin-bottom: 10px; font-size: 11px; letter-spacing: .08em; color: #aeb8c5; }
  .poz-plan .poz-vodic__q {
    margin: 0 0 12px; font: 400 20px/1.45 var(--poz-font-display, Michroma, sans-serif);
    color: #f4f6f8; overflow-wrap: normal; word-break: normal; scroll-margin-top: 104px;
  }
  .poz-plan .poz-vodic__e { margin: 0 0 20px; font-size: 15px; line-height: 1.55; color: #bdc5d0; }
  .poz-plan .poz-vodic__opts, .poz-plan .poz-vodic__opts--tok {
    display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 10px;
  }
  .poz-plan .poz-vodic__opt {
    position: relative; display: flex; flex-direction: column; align-items: stretch; min-width: 0;
    padding: 0; margin: 0; overflow: hidden; border: 1px solid #454a53; border-radius: 12px;
    background: #1c2027; color: #edf0f4; text-align: left;
  }
  .poz-plan .poz-vodic__opt.is-on { border-color: var(--acc, #9dc2e8); background: #28313e; box-shadow: none; }
  .poz-plan .poz-vodic__media {
    position: relative; display: grid; place-items: center; width: 100%; height: 90px; flex: none;
    overflow: hidden; border: 0; background: #13171e;
  }
  .poz-plan .poz-vodic__media img, .poz-plan .poz-vodic__media svg { display: block; width: 90%; height: 78px; max-width: 90%; max-height: 78px; object-fit: contain; }
  .poz-plan .poz-vodic__opt-tx { display: flex; flex-direction: column; gap: 5px; padding: 12px; min-width: 0; }
  .poz-plan .poz-vodic__opt-tx b { font-size: 14px; line-height: 1.4; color: #f4f6f8; }
  .poz-plan .poz-vodic__opt-tx i { font-style: normal; font-size: 13px; line-height: 1.45; color: #bdc5d0; }
  .poz-plan .poz-vodic__radio { display: none; }
  /* The same load is already printed in the option title. */
  .poz-plan .poz-vodic__kg { display: none; }
  .poz-plan .poz-vodic__opt--hero { grid-column: 1 / -1; }
  .poz-plan .poz-vodic__opt--hero .poz-vodic__media { width: 100%; flex: none; height: 100px; border: 0; }
  .poz-plan .poz-vodic__hero-ctl { padding: 14px; }
  .poz-plan .poz-vodic__stepper button { width: 44px; height: 44px; }
  .poz-plan .poz-vodic__chip { min-width: 0; min-height: 52px; font-size: 14px; white-space: normal; }
  .poz-plan .poz-vodic__chip i, .poz-plan .poz-vodic__hero-sub { font-size: 13px; line-height: 1.4; color: #bdc5d0; }
  .poz-plan .poz-vodic__foot {
    position: static; display: flex; flex-direction: column; gap: 16px; padding: 16px;
    border-top: 1px solid #303238; background: #171b22;
  }
  .poz-plan .poz-vodic__sum { display: flex; flex-direction: column; gap: 8px; width: 100%; }
  .poz-plan .poz-vodic__sum > b { font-size: 14px; color: #f4f6f8; }
  .poz-plan .poz-vodic__facts { display: flex; flex-wrap: wrap; gap: 12px; }
  .poz-plan .poz-vodic__fact i { font-size: 11px; color: #bdc5d0; }
  .poz-plan .poz-vodic__fact b { font-size: 13px; color: #fff; }
  .poz-plan .poz-vodic__foot-btns { display: flex; width: 100%; gap: 10px; }
  .poz-plan .poz-vodic__back, .poz-plan .poz-vodic__next {
    flex: 1; min-height: 48px; border: 1px solid #59616d; border-radius: 10px;
    padding: 12px 16px; font-size: 15px; background: #252b34; color: #fff;
  }
  .poz-plan .poz-vodic__next { background: #e5ebf3; color: #171b22; border-color: #e5ebf3; }
  .poz-plan .poz-vodic__sumfacts { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .poz-plan .poz-vodic__speclist { max-height: none; overflow: visible; }
  .poz-plan .poz-vodic__path { padding: 14px 12px; gap: 10px; min-width: 0; }
  .poz-plan .poz-vodic__path-tx b { font-size: 15px; }
  .poz-plan .poz-vodic__path-tx i { font-size: 13px; }
}
@media (max-width: 600px) {
  .poz-plan .poz-vodic__speclist .poz-lift__stats { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .poz-plan .poz-vodic__paths { flex-direction: column; }
}
@media (min-width: 761px) and (max-width: 900px) {
  /* Portrait keeps the existing vertical drawing toolbar at the left. */
  .poz-plan--studio .poz-assist { left: 88px; }
}

/* The advanced shortcuts share the available toolbar space. On stacked
   screens the bar grows around its controls and the example list occupies
   its own row; it must never spill out over the drawing tools. */
@media (max-width: 900px) {
  .poz-plan.poz-plan--studio .poz-plan__bar--top {
    height: auto; min-height: 64px; padding-block: 10px; gap: 8px;
    align-items: center; justify-content: flex-start;
  }
  .poz-plan.poz-plan--studio .poz-plan__presets-btn {
    display: inline-flex; align-items: center; gap: 8px; flex: none;
    min-height: 44px; padding: 10px 14px; border-radius: 999px;
    font: 400 10px/1.4 Michroma, sans-serif; letter-spacing: .08em;
    text-transform: uppercase; cursor: pointer;
    color: #edf0f4; background: #20242b; border: 1px solid #454a53;
  }
  .poz-plan.poz-plan--studio .poz-plan__presets-btn svg { width: 16px; height: 16px; flex: none; }
  .poz-plan.poz-plan--studio .poz-help {
    display: grid; place-items: center; flex: none; width: 44px; height: 44px;
    padding: 0; margin: 0; border-radius: 50%; border: 1px solid #454a53;
    color: #edf0f4; background: #20242b; cursor: pointer;
  }
  .poz-plan.poz-plan--studio .poz-plan__presetbar { display: none !important; }
  .poz-plan.poz-plan--studio.poz-presets-open .poz-plan__presetbar {
    display: flex !important; position: static; order: 10; margin: 0;
    flex: 1 1 100% !important; width: 100% !important; padding: 8px 0;
    gap: 8px; max-height: 240px; overflow-y: auto !important;
    overscroll-behavior-y: contain; scrollbar-width: thin;
    background: none; box-shadow: none; border: 0;
  }
  .poz-plan.poz-plan--studio .poz-plan__pchip {
    display: flex; align-items: center; gap: 12px; white-space: normal;
    width: 100%; min-height: 60px; padding: 8px 12px; border-radius: 10px;
    background: #20242b; color: #edf0f4; border: 1px solid #454a53;
    font-size: 13px; line-height: 1.4; text-align: left;
  }
  .poz-plan.poz-plan--studio .poz-plan__pchip-im {
    width: 84px; height: 48px; flex: none; object-fit: contain;
  }
  .poz-plan.poz-plan--studio:not(:has(.poz-vodic:not([hidden]))) .poz-plan__frame {
    height: auto;
  }
}
@media (min-width: 901px) and (max-width: 1399px) {
  /* The long guide label cannot fit between Examples and the view selector
     on laptop/landscape. A second row clears both the left rail and the sheet. */
  .poz-plan.poz-plan--studio [data-planner-grid]:not(.is-tools-docked) .poz-assist,
  .poz-plan.poz-plan--studio [data-planner-grid].is-tools-docked .poz-assist {
    left: 140px; right: auto; top: 174px; bottom: auto;
  }
}
@media (min-width: 901px) and (max-width: 1240px) {
  /* The shared stacked-layout rescue sets width:100% !important. Desktop
     has explicit left/right insets, so auto width keeps the right action in view. */
  .poz-plan.poz-plan--studio .poz-plan__bar--top { width: auto !important; }
}
@media (min-width: 1101px) and (max-width: 1240px) {
  /* Shared stacking starts at 1240, before the lifter's own 1100 breakpoint.
     Its positioned model grid still needs a scene to anchor the guide button. */
  .poz-plan--lift:not(.is-vodic) .poz-plan__frame { height: auto; }
  .poz-plan--lift:not(.is-vodic) .poz-plan__scene { min-height: 52vh; }
}
.poz-plan.poz-plan--lift .poz-plan__frame:not(.is-tools-docked) .poz-assist {
  left: 16px; right: auto;
}

/* ==================================================================
   v3.0 — the lifter's EXPERT mode, rebuilt in the studio language the
   other three planners speak: graphite plates on the dark canvas,
   mono micro-caps, and the category red only where something is chosen.
   Chrome only — every control keeps the behaviour it already had.
   ================================================================== */

/* ---- the duty bar: dark glass, not a white band ---- */
.poz-plan--lift .poz-lift__top{background:linear-gradient(180deg,rgba(24,27,32,.96),rgba(15,17,21,.97));border-bottom:1px solid rgba(255,255,255,.08);-webkit-backdrop-filter:blur(16px) saturate(1.15);backdrop-filter:blur(16px) saturate(1.15);box-shadow:0 24px 48px -34px rgba(0,0,0,.95);}
.poz-plan--lift .poz-lift__top .poz-plan__lbl{color:#7e858f;}
.poz-plan--lift .poz-lift__top .poz-plan__lbl output{color:#f2f4f7;}
.poz-plan--lift .poz-lift__top .poz-plan__panel{background:none;border:0;box-shadow:none;}

/* the range: a hairline track, an accent-lit thumb */
.poz-plan--lift .poz-plan__range{accent-color:var(--acc,#dc2626);background:none;}
.poz-plan--lift .poz-plan__range::-webkit-slider-runnable-track{height:2px;border-radius:2px;background:rgba(255,255,255,.16);}
.poz-plan--lift .poz-plan__range::-webkit-slider-thumb{-webkit-appearance:none;width:15px;height:15px;margin-top:-6.5px;border-radius:50%;background:#f4f6f8;border:1px solid rgba(0,0,0,.5);box-shadow:0 2px 8px rgba(0,0,0,.6),0 0 0 4px color-mix(in srgb,var(--acc,#dc2626) 24%,transparent);cursor:grab;transition:transform .16s cubic-bezier(.2,0,0,1),box-shadow .16s;}
.poz-plan--lift .poz-plan__range:hover::-webkit-slider-thumb{box-shadow:0 2px 10px rgba(0,0,0,.65),0 0 0 6px color-mix(in srgb,var(--acc,#dc2626) 30%,transparent);}
.poz-plan--lift .poz-plan__range:active::-webkit-slider-thumb{transform:scale(1.14);cursor:grabbing;}
.poz-plan--lift .poz-plan__range::-moz-range-track{height:2px;border-radius:2px;background:rgba(255,255,255,.16);}
.poz-plan--lift .poz-plan__range::-moz-range-thumb{width:15px;height:15px;border-radius:50%;background:#f4f6f8;border:1px solid rgba(0,0,0,.5);box-shadow:0 0 0 4px color-mix(in srgb,var(--acc,#dc2626) 24%,transparent);}

/* series chips */
.poz-plan--lift .poz-lift__top .poz-plan__chip{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.12);color:#c7ccd4;}
.poz-plan--lift .poz-lift__top .poz-plan__chip:hover{border-color:color-mix(in srgb,var(--acc,#dc2626) 45%,transparent);color:#fff;}
.poz-plan--lift .poz-lift__top .poz-plan__chip.is-on{color:#fff;border-color:var(--acc,#dc2626);background:color-mix(in srgb,var(--acc,#dc2626) 16%,transparent);box-shadow:0 0 0 3px color-mix(in srgb,var(--acc,#dc2626) 12%,transparent);}

/* ---- the model grid: graphite plates, the machine floating on the dark ---- */
.poz-plan--lift .poz-lift__gcard{background:linear-gradient(160deg,rgba(255,255,255,.05),rgba(255,255,255,.018));border:1px solid rgba(255,255,255,.09);border-radius:16px;transition:transform .18s cubic-bezier(.2,0,0,1),border-color .18s,box-shadow .18s;}
.poz-plan--lift .poz-lift__gcard:hover{transform:translateY(-2px);border-color:rgba(255,255,255,.2);box-shadow:0 18px 34px -22px rgba(0,0,0,.9);}
.poz-plan--lift .poz-lift__gim{background:radial-gradient(120% 85% at 50% 12%,rgba(255,255,255,.07),rgba(255,255,255,0) 68%);}
.poz-plan--lift .poz-lift__gspecs b{color:#eef1f5;}
.poz-plan--lift .poz-lift__gspecs i,.poz-plan--lift .poz-lift__gspecs span{color:#848b95;}
.poz-plan--lift .poz-lift__gcard[aria-pressed="true"]{border-color:var(--acc,#dc2626);background:linear-gradient(160deg,color-mix(in srgb,var(--acc,#dc2626) 13%,transparent),rgba(255,255,255,.02));box-shadow:0 0 0 1px color-mix(in srgb,var(--acc,#dc2626) 45%,transparent),0 22px 44px -24px color-mix(in srgb,var(--acc,#dc2626) 55%,transparent);}

/* ---- the film: a light table set into the dark rail ---- */
.poz-plan--lift .poz-plan__spec .poz-plan__media{background:none;}
.poz-plan--lift .poz-lift__film{background:none;padding:14px;}
.poz-plan--lift .poz-lift__stagearea{border-radius:14px;overflow:hidden;border:1px solid rgba(255,255,255,.10);box-shadow:inset 0 1px 0 rgba(255,255,255,.10),0 26px 52px -32px rgba(0,0,0,.95);}
.poz-plan--lift .poz-lift__stagebar{padding-top:12px;}
.poz-plan--lift .poz-lift__name{color:#e7eaee;}
.poz-plan--lift .poz-lift__switch button{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.12);color:#c7ccd4;}
.poz-plan--lift .poz-lift__switch button.is-on{color:#fff;border-color:var(--acc,#dc2626);background:color-mix(in srgb,var(--acc,#dc2626) 16%,transparent);}

/* ---- the invitation to the film: shown over the photo, one click to play ---- */
.poz-plan--lift .poz-lift__stagearea{position:relative;}
.poz-plan--lift .poz-lift__playfilm{position:absolute;left:50%;bottom:18px;transform:translateX(-50%);display:inline-flex;align-items:center;gap:10px;padding:10px 18px 10px 12px;border-radius:999px;cursor:pointer;border:1px solid rgba(255,255,255,.16);background:rgba(12,14,18,.72);-webkit-backdrop-filter:blur(12px) saturate(1.2);backdrop-filter:blur(12px) saturate(1.2);color:#eef1f5;font:400 12px/1 var(--poz-font-body,sans-serif);letter-spacing:.01em;box-shadow:0 16px 34px -18px rgba(0,0,0,.9);transition:transform .18s cubic-bezier(.2,0,0,1),border-color .18s,background .18s;}
.poz-plan--lift .poz-lift__playfilm:hover{transform:translateX(-50%) translateY(-2px);border-color:color-mix(in srgb,var(--acc,#dc2626) 55%,transparent);background:rgba(16,18,22,.86);}
.poz-plan--lift .poz-lift__playfilm i{width:22px;height:22px;flex:0 0 auto;border-radius:50%;display:grid;place-items:center;background:var(--acc,#dc2626);}
.poz-plan--lift .poz-lift__playfilm i::before{content:'';border-style:solid;border-width:5px 0 5px 8px;border-color:transparent transparent transparent #fff;margin-left:2px;}

/* the plate itself is dark — the cut-out product floats on it, and the film
   (which is rendered on a white studio backdrop) covers it while it plays */
.poz-plan--lift .poz-lift__stagearea{background:linear-gradient(170deg,#15171c 0%,#0e1013 100%);}
.poz-plan--lift .poz-lift__still{background:transparent;}
.poz-plan--lift .poz-lift__placeholder{background:transparent;color:#8a9099;}

/* ==================================================================
   v3.1 — the expert mode fits one screen. Only the model catalogue
   scrolls; the datasheet and the film are always whole.
   ================================================================== */

/* the shell and its three columns own the viewport, nothing spills */
.poz-plan--lift .poz-plan__tools,.poz-plan--lift .poz-plan__spec{overflow:hidden;}
.poz-plan--lift .poz-lift__sheet{overflow:hidden;display:flex;flex-direction:column;height:100%;padding-bottom:10px;}
.poz-plan--lift .poz-plan__bom{flex:0 0 auto;}
.poz-plan--lift .poz-plan__checks{flex:1 1 auto;min-height:0;overflow:hidden;}
.poz-plan--lift .poz-plan__spec-foot{flex:0 0 auto;}

/* ---- the datasheet, compacted so it never needs a scrollbar ---- */
.poz-plan--lift .poz-plan__tools-head{padding:11px 18px 9px;}
.poz-plan--lift .poz-plan__tools .poz-lift__hero{margin-bottom:8px;gap:3px;}
.poz-plan--lift .poz-plan__tools .poz-lift__hero-name{font-size:clamp(20px,1.7vw,25px);}
.poz-plan--lift .poz-plan__tools .poz-lift__stats{margin:0 0 10px;}
.poz-plan--lift .poz-plan__tools .poz-lift__stat{padding:8px 10px 7px;}
.poz-plan--lift .poz-plan__tools .poz-lift__stat b{font-size:16px;line-height:1.1;}
.poz-plan--lift .poz-plan__tools .poz-lift__stat span,.poz-plan--lift .poz-plan__tools .poz-lift__stat i{margin-top:2px;font-size:8px;}
.poz-plan--lift .poz-plan__tools .poz-lift__sub{margin:8px 0 3px;}
.poz-plan--lift .poz-plan__tools .poz-lift__why{gap:4px;margin-bottom:10px;}
.poz-plan--lift .poz-plan__tools .poz-lift__why li{font-size:11px;line-height:1.35;padding-left:20px;}
/* the adapters ride two across instead of one long column */
.poz-plan--lift .poz-plan__tools .poz-lift__adapters{grid-template-columns:1fr 1fr;gap:5px 10px;padding-bottom:4px;}
.poz-plan--lift .poz-plan__tools .poz-lift__adap{font-size:10.5px;gap:7px;}
.poz-plan--lift .poz-plan__tools .poz-lift__adap i{width:12px;height:12px;}
/* checks and the send block */
.poz-plan--lift .poz-plan__checks{padding-top:2px;}
.poz-plan--lift .poz-plan__spec-foot{padding:8px 0 10px;gap:7px;}
.poz-plan--lift .poz-plan__spec-foot .poz-plan__send{padding:12px 18px;font-size:11.5px;}

/* ---- the film: always whole, always the full height of its column ---- */
.poz-plan--lift .poz-plan__media{height:100%;}
.poz-plan--lift .poz-lift__film{height:100%;display:flex;flex-direction:column;padding:12px;}
.poz-plan--lift .poz-lift__stagearea{flex:1 1 auto;min-height:0;height:auto;aspect-ratio:auto;}
.poz-plan--lift .poz-lift__stagearea video,.poz-plan--lift .poz-lift__still{width:100%;height:100%;object-fit:contain;}
.poz-plan--lift .poz-lift__stagebar{flex:0 0 auto;padding-top:10px;}

/* ---- v3.2 — the last of the height: the rail fits whole, nothing is clipped ---- */
.poz-plan--lift .poz-plan__checks{flex:0 0 auto;overflow:visible;padding:2px 0 6px;}
.poz-plan--lift .poz-plan__checks .poz-plan__checks-head{margin-bottom:6px;}
.poz-plan--lift .poz-plan__check{padding:4px 0;gap:8px;}
.poz-plan--lift .poz-plan__check-name{font-size:11px;line-height:1.25;}
.poz-plan--lift .poz-plan__check-tx{font-size:9.5px;line-height:1.3;margin-top:1px;}
.poz-plan--lift .poz-plan__check-dot{width:7px;height:7px;margin-top:4px;}
.poz-plan--lift .poz-plan__tools .poz-lift__stats{margin:0 0 8px;}
.poz-plan--lift .poz-plan__tools .poz-lift__stat{padding:7px 10px 6px;}
.poz-plan--lift .poz-plan__tools .poz-lift__stat b{font-size:15px;}
.poz-plan--lift .poz-plan__tools .poz-lift__hero{margin-bottom:6px;}
.poz-plan--lift .poz-plan__tools .poz-lift__hero-name{font-size:clamp(19px,1.5vw,22px);}
.poz-plan--lift .poz-plan__tools .poz-lift__why{margin-bottom:8px;}
.poz-plan--lift .poz-plan__tools .poz-lift__why li{font-size:10.5px;padding:2px 0 2px 18px;}
.poz-plan--lift .poz-plan__tools .poz-lift__adapters{gap:4px 10px;}
.poz-plan--lift .poz-plan__tools .poz-lift__adap{font-size:10px;}
.poz-plan--lift .poz-lift__sheet{padding-bottom:6px;}
.poz-plan--lift .poz-plan__spec-foot{padding:6px 0 8px;gap:6px;}
.poz-plan--lift .poz-plan__spec-foot .poz-plan__send{padding:11px 16px;font-size:11px;}

/* the film box must include its own padding in the 100% — otherwise it
   overshoots its column by exactly the padding and the rail scrolls */
.poz-plan--lift .poz-lift__film{box-sizing:border-box;padding:10px;}
.poz-plan--lift .poz-lift__stagebar{padding-top:8px;}
.poz-plan--lift .poz-lift__switch button{padding:6px 12px;font-size:10.5px;}

/* ---- v3.3 — the final 51 px, so the rail lands inside its column ---- */
.poz-plan--lift .poz-plan__tools .poz-lift__sheet{padding-bottom:4px;}
.poz-plan--lift .poz-plan__tools .poz-plan__tools-head{padding:7px 18px 6px;}
.poz-plan--lift .poz-plan__tools .poz-plan__bom{padding:2px 0 2px;}
.poz-plan--lift .poz-plan__tools .poz-lift__stat{padding:6px 10px 5px;}
.poz-plan--lift .poz-plan__tools .poz-lift__stat b{font-size:14px;}
.poz-plan--lift .poz-plan__tools .poz-lift__why li{padding:1px 0 1px 18px;line-height:1.3;}
.poz-plan--lift .poz-plan__tools .poz-plan__checks{padding:2px 0 4px;}
.poz-plan--lift .poz-plan__tools .poz-plan__check{padding:3px 0;}
.poz-plan--lift .poz-plan__tools .poz-plan__spec-foot{padding:4px 0 6px;}

/* ---- v3.4 — the secondary actions ride low and quiet; the rail now closes ---- */
.poz-plan--lift .poz-plan__tools .poz-plan__mini{padding:4px 9px;font-size:9.5px;}
.poz-plan--lift .poz-plan__tools .poz-plan__spec-foot .poz-plan__send{padding:10px 16px;}
.poz-plan--lift .poz-plan__tools .poz-lift__adap{font-size:9.5px;}
.poz-plan--lift .poz-plan__tools .poz-lift__sub{margin:6px 0 2px;}
.poz-plan--lift .poz-plan__tools .poz-lift__hero{margin-bottom:4px;}

/* ---- v3.5 — the last 32 px: tighter rows everywhere, nothing hidden ---- */
.poz-plan--lift .poz-plan__tools .poz-lift__stat{padding:5px 9px 4px;}
.poz-plan--lift .poz-plan__tools .poz-lift__stat b{font-size:13.5px;}
.poz-plan--lift .poz-plan__tools .poz-lift__stat span,.poz-plan--lift .poz-plan__tools .poz-lift__stat i{margin-top:1px;font-size:7.5px;}
.poz-plan--lift .poz-plan__tools .poz-lift__adap{font-size:9.5px;line-height:1.2;}
.poz-plan--lift .poz-plan__tools .poz-lift__adapters{gap:3px 10px;}
.poz-plan--lift .poz-plan__tools .poz-lift__why li{font-size:10px;padding:0 0 0 17px;}
.poz-plan--lift .poz-plan__tools .poz-plan__check{padding:2px 0;}
.poz-plan--lift .poz-plan__tools .poz-plan__check-name{font-size:10.5px;}
.poz-plan--lift .poz-plan__tools .poz-plan__check-tx{font-size:9px;}
.poz-plan--lift .poz-plan__tools .poz-plan__spec-foot .poz-plan__send{padding:9px 16px;font-size:10.5px;}
.poz-plan--lift .poz-plan__tools .poz-plan__spec-foot{padding:3px 0 4px;gap:5px;}

/* ---- v3.6 — the rail is a flex column: the head takes its height, the sheet
     takes the rest. (height:100% on the sheet always overshot by the head.) ---- */
.poz-plan--lift .poz-plan__tools{display:flex;flex-direction:column;}
.poz-plan--lift .poz-plan__tools .poz-plan__tools-head{flex:0 0 auto;}
.poz-plan--lift .poz-plan__tools .poz-lift__sheet{height:auto;flex:1 1 auto;min-height:0;}
.poz-plan--lift .poz-plan__tools .poz-plan__bom{flex:0 0 auto;}
.poz-plan--lift .poz-plan__tools .poz-plan__checks{flex:0 0 auto;}
.poz-plan--lift .poz-plan__tools .poz-plan__spec-foot{flex:0 0 auto;margin-top:auto;}
.poz-plan--lift .poz-plan__tools .poz-plan__spec-links{flex:0 0 auto;}

/* ---- v3.7 — never hide the rail's content: on a screen too short for the
     whole datasheet it scrolls rather than clipping its last rows. On a normal
     desktop it fits whole and never scrolls. ---- */
.poz-plan--lift .poz-plan__tools{overflow-y:auto;overscroll-behavior:contain;}

/* ==================================================================
   v3.8 — two fixes found in the light theme:
   1. the clip was laid out at its own aspect (720x1280 -> 721px tall in a
      517px plate), so it overflowed by 204px and read as cropped with a
      black band. Pinning it to the plate makes 'contain' actually contain.
   2. the stage labels were written for the dark shell only, so on the light
      canvas they were near-white on near-white.
   ================================================================== */
.poz-plan--lift .poz-lift__stagearea{position:relative;}
.poz-plan--lift .poz-lift__stagearea video,
.poz-plan--lift .poz-lift__stagearea .poz-lift__still{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;}

/* the stage bar follows the canvas it sits on */
.poz-plan--lift.poz-dark .poz-lift__name{color:#e7eaee;}
.poz-plan--lift:not(.poz-dark) .poz-lift__name{color:#4a4f57;}
.poz-plan--lift:not(.poz-dark) .poz-lift__switch button{background:rgba(22,23,27,.04);border:1px solid rgba(22,23,27,.14);color:#3b4048;}
.poz-plan--lift:not(.poz-dark) .poz-lift__switch button:hover{border-color:color-mix(in srgb,var(--acc,#dc2626) 45%,transparent);color:#16171b;}
.poz-plan--lift:not(.poz-dark) .poz-lift__switch button.is-on{color:#fff;background:var(--acc,#dc2626);border-color:var(--acc,#dc2626);}
.poz-plan--lift:not(.poz-dark) .poz-lift__replay{background:rgba(22,23,27,.72);color:#fff;}
.poz-plan--lift:not(.poz-dark) .poz-lift__stagearea{background:#fff;border-color:rgba(22,23,27,.10);}

/* ==================================================================
   v3.9 — the plate wears the clip's own aspect (now a consistent 4:3 for
   every model), so the film fills it edge to edge: no letterbox, no bezel
   of a not-quite-matching white, nothing cropped. The photo view keeps the
   full column height, where the tall cut-out belongs.
   ================================================================== */
.poz-plan--lift .poz-lift__stagearea{flex:0 0 auto;width:100%;height:auto;aspect-ratio:var(--clip-ar,4/3);margin-block:auto;}
.poz-plan--lift .poz-lift__stagearea video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
.poz-plan--lift .poz-lift__stagearea .poz-lift__still{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;}
/* the photo view has no clip to match — give the cut-out the whole column */
.poz-plan--lift .poz-lift__film:has(.poz-lift__still:not([hidden])) .poz-lift__stagearea{aspect-ratio:auto;flex:1 1 auto;min-height:0;margin-block:0;}

/* ---- the light/dark toggle, rehoused in the duty strip ---- */
.poz-plan--lift .poz-lift__topinner{position:relative;}
.poz-plan--lift .poz-lift__topinner .poz-plan__theme{position:absolute;top:0;right:0;width:30px;height:30px;display:inline-grid;place-items:center;border-radius:9px;cursor:pointer;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.06);color:#c7ccd4;transition:border-color .16s,color .16s,background .16s;}
.poz-plan--lift .poz-lift__topinner .poz-plan__theme:hover{border-color:color-mix(in srgb,var(--acc,#dc2626) 55%,transparent);color:#fff;background:rgba(255,255,255,.10);}
.poz-plan--lift .poz-lift__topinner .poz-plan__theme svg{width:15px;height:15px;}
.poz-plan--lift:not(.poz-dark) .poz-lift__topinner .poz-plan__theme{border-color:rgba(255,255,255,.16);background:rgba(255,255,255,.08);color:#e7eaee;}

/* ==================================================================
   v4.0 — the narrow cut (Sven's call): every family's 9:16 render now feeds
   the player. A tall machine fills a tall frame, the plate takes exactly the
   clip's shape (so there is no bezel and no crop), and the film column gives
   its spare width back to the catalogue.
   ================================================================== */
.poz-plan--lift .poz-lift__film{align-items:center;}
.poz-plan--lift .poz-lift__stagearea{flex:1 1 auto;min-height:0;width:auto;height:auto;max-width:100%;aspect-ratio:var(--clip-ar,9/16);margin:0 auto;}
.poz-plan--lift .poz-lift__stagebar{align-self:stretch;}
@media (min-width: 1101px){
  .poz-plan--lift .poz-plan__frame{grid-template-columns:272px minmax(0,1fr) 300px;}
}
@media (min-width: 1500px){
  .poz-plan--lift .poz-plan__frame{grid-template-columns:288px minmax(0,1fr) 330px;}
}

/* ==================================================================
   v4.1 — one surface, not a panel on a panel: the film fills its whole
   window edge to edge, and the Animacija / Foto switch and the model name
   float on the film itself under a soft scrim.
   ================================================================== */
.poz-plan--lift .poz-plan__spec{overflow:hidden;}
.poz-plan--lift .poz-lift__film{padding:0;position:relative;height:100%;display:block;}
.poz-plan--lift .poz-lift__stagearea{position:absolute;inset:0;width:auto;height:auto;max-width:none;aspect-ratio:auto;margin:0;border:0;border-radius:0;box-shadow:none;}
.poz-plan--lift .poz-lift__stagearea video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
.poz-plan--lift .poz-lift__stagearea .poz-lift__still{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;padding:16px;box-sizing:border-box;}

/* the controls ride on the film */
.poz-plan--lift .poz-lift__stagebar{position:absolute;left:0;right:0;bottom:0;z-index:3;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:26px 14px 13px;background:linear-gradient(to top,rgba(8,9,12,.78) 0%,rgba(8,9,12,.45) 55%,rgba(8,9,12,0) 100%);pointer-events:none;}
.poz-plan--lift .poz-lift__stagebar > *{pointer-events:auto;}
.poz-plan--lift .poz-lift__stagebar .poz-lift__name,
.poz-plan--lift:not(.poz-dark) .poz-lift__stagebar .poz-lift__name{color:rgba(255,255,255,.86);}
.poz-plan--lift .poz-lift__stagebar .poz-lift__switch button,
.poz-plan--lift:not(.poz-dark) .poz-lift__stagebar .poz-lift__switch button{background:rgba(12,14,18,.55);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.22);color:#eef1f5;}
.poz-plan--lift .poz-lift__stagebar .poz-lift__switch button.is-on,
.poz-plan--lift:not(.poz-dark) .poz-lift__stagebar .poz-lift__switch button.is-on{background:var(--acc,#dc2626);border-color:var(--acc,#dc2626);color:#fff;}
/* the replay pill steps above the scrim so the two never overlap */
.poz-plan--lift .poz-lift__replay{bottom:62px;}

/* a touch more width, so filling the height crops almost nothing off the sides */
@media (min-width: 1101px){
  .poz-plan--lift .poz-plan__frame{grid-template-columns:272px minmax(0,1fr) 322px;}
}
@media (min-width: 1500px){
  .poz-plan--lift .poz-plan__frame{grid-template-columns:288px minmax(0,1fr) 344px;}
}

/* ==================================================================
   v4.2 — the catalogue reads in both themes, and the duty strip becomes a
   proper console: rounded like every other surface, with sliders designed
   to look like the controls you are meant to grab.
   ================================================================== */

/* --- the model cards: the figures were dark-theme white on a white card --- */
.poz-plan--lift.poz-dark .poz-lift__gspecs b{color:#eef1f5;}
.poz-plan--lift.poz-dark .poz-lift__gspecs i,.poz-plan--lift.poz-dark .poz-lift__gspecs span{color:#848b95;}
.poz-plan--lift:not(.poz-dark) .poz-lift__gspecs b{color:#16171b;}
.poz-plan--lift:not(.poz-dark) .poz-lift__gspecs i,.poz-plan--lift:not(.poz-dark) .poz-lift__gspecs span{color:#6b7280;}
.poz-plan--lift:not(.poz-dark) .poz-lift__gcard{background:#fff;border-color:rgba(22,23,27,.10);}
.poz-plan--lift:not(.poz-dark) .poz-lift__gcard:hover{border-color:rgba(22,23,27,.22);box-shadow:0 18px 34px -24px rgba(22,23,27,.45);}
.poz-plan--lift:not(.poz-dark) .poz-lift__gim{background:radial-gradient(120% 85% at 50% 12%,rgba(22,23,27,.045),rgba(22,23,27,0) 68%);}
.poz-plan--lift:not(.poz-dark) .poz-lift__gname{color:#16171b;}
.poz-plan--lift:not(.poz-dark) .poz-lift__gcard[aria-pressed="true"]{background:#fff;border-color:var(--acc,#dc2626);box-shadow:0 0 0 1px color-mix(in srgb,var(--acc,#dc2626) 40%,transparent),0 22px 44px -26px color-mix(in srgb,var(--acc,#dc2626) 60%,transparent);}

/* --- the duty strip: a console, not a band --- */
.poz-plan--lift .poz-lift__top{border-radius:18px;border:1px solid rgba(255,255,255,.09);border-bottom:1px solid rgba(255,255,255,.09);background:linear-gradient(180deg,rgba(28,31,37,.97),rgba(16,18,23,.98));box-shadow:0 26px 54px -34px rgba(0,0,0,.95),inset 0 1px 0 rgba(255,255,255,.07);overflow:hidden;}
.poz-plan--lift .poz-lift__top::before{content:'';position:absolute;left:0;right:0;top:0;height:1px;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--acc,#dc2626) 55%,transparent),transparent);}
.poz-plan--lift .poz-lift__top{position:relative;}

/* --- the sliders themselves -----------------------------------------
   The track fills with the category accent up to --p (the tool sets it on
   every input), the head is a lit puck that grows under the hand, and an
   untouched control breathes slowly so the eye finds it.
   -------------------------------------------------------------------- */
.poz-plan--lift .poz-lift__sl{position:relative;padding:2px 0 0;}
.poz-plan--lift .poz-lift__sl .poz-plan__lbl{display:block;font-family:var(--poz-font-mono,ui-monospace,monospace);font-size:9px;letter-spacing:.16em;text-transform:uppercase;color:#7c838d;}
.poz-plan--lift .poz-lift__sl .poz-plan__lbl output{display:block;margin-top:3px;font-family:'Michroma',sans-serif;font-size:clamp(17px,1.55vw,23px);letter-spacing:.01em;color:#fff;text-shadow:0 0 26px color-mix(in srgb,var(--acc,#dc2626) 32%,transparent);transition:text-shadow .25s ease;}
.poz-plan--lift .poz-lift__sl:hover .poz-plan__lbl output,
.poz-plan--lift .poz-lift__sl:focus-within .poz-plan__lbl output{text-shadow:0 0 30px color-mix(in srgb,var(--acc,#dc2626) 62%,transparent);}
.poz-plan--lift .poz-plan__range{-webkit-appearance:none;appearance:none;width:100%;height:30px;margin:6px 0 0;background:none;cursor:grab;}
.poz-plan--lift .poz-plan__range:active{cursor:grabbing;}
.poz-plan--lift .poz-plan__range:focus{outline:none;}
.poz-plan--lift .poz-plan__range::-webkit-slider-runnable-track{height:5px;border-radius:999px;background:linear-gradient(90deg,color-mix(in srgb,var(--acc,#dc2626) 92%,#fff) 0 var(--p,0%),rgba(255,255,255,.13) var(--p,0%) 100%);box-shadow:inset 0 0 0 1px rgba(255,255,255,.06),0 0 22px -6px color-mix(in srgb,var(--acc,#dc2626) 55%,transparent);}
.poz-plan--lift .poz-plan__range::-moz-range-track{height:5px;border-radius:999px;background:rgba(255,255,255,.13);}
.poz-plan--lift .poz-plan__range::-moz-range-progress{height:5px;border-radius:999px;background:var(--acc,#dc2626);}
.poz-plan--lift .poz-plan__range::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:20px;height:20px;margin-top:-7.5px;border-radius:50%;background:radial-gradient(circle at 34% 30%,#fff 0 42%,#e6e9ee 100%);border:0;box-shadow:0 2px 10px rgba(0,0,0,.55),0 0 0 4px color-mix(in srgb,var(--acc,#dc2626) 26%,transparent),0 0 24px -2px color-mix(in srgb,var(--acc,#dc2626) 70%,transparent);transition:transform .18s cubic-bezier(.2,0,0,1),box-shadow .18s ease;}
.poz-plan--lift .poz-plan__range:hover::-webkit-slider-thumb{transform:scale(1.14);box-shadow:0 3px 14px rgba(0,0,0,.6),0 0 0 7px color-mix(in srgb,var(--acc,#dc2626) 30%,transparent),0 0 32px 0 color-mix(in srgb,var(--acc,#dc2626) 85%,transparent);}
.poz-plan--lift .poz-plan__range:active::-webkit-slider-thumb{transform:scale(1.22);}
.poz-plan--lift .poz-plan__range::-moz-range-thumb{width:20px;height:20px;border:0;border-radius:50%;background:#fff;box-shadow:0 2px 10px rgba(0,0,0,.55),0 0 0 4px color-mix(in srgb,var(--acc,#dc2626) 26%,transparent);}
@keyframes pozSlBreathe{0%,100%{box-shadow:0 2px 10px rgba(0,0,0,.55),0 0 0 4px color-mix(in srgb,var(--acc,#dc2626) 26%,transparent),0 0 24px -2px color-mix(in srgb,var(--acc,#dc2626) 70%,transparent);}50%{box-shadow:0 2px 10px rgba(0,0,0,.55),0 0 0 9px color-mix(in srgb,var(--acc,#dc2626) 10%,transparent),0 0 32px 0 color-mix(in srgb,var(--acc,#dc2626) 95%,transparent);}}
.poz-plan--lift .poz-plan__range:not(.is-touched):not(:hover)::-webkit-slider-thumb{animation:pozSlBreathe 3.4s ease-in-out infinite;}
@media (prefers-reduced-motion: reduce){.poz-plan--lift .poz-plan__range::-webkit-slider-thumb{animation:none;transition:none;}}

/* ---- v4.3 — no scrim under the film: the pills carry their own contrast ---- */
.poz-plan--lift .poz-lift__stagebar{background:none;padding:14px;}
.poz-plan--lift .poz-lift__stagebar .poz-lift__name,
.poz-plan--lift:not(.poz-dark) .poz-lift__stagebar .poz-lift__name{color:rgba(22,23,27,.55);text-shadow:0 1px 0 rgba(255,255,255,.6);}
.poz-plan--lift .poz-lift__stagebar .poz-lift__switch button,
.poz-plan--lift:not(.poz-dark) .poz-lift__stagebar .poz-lift__switch button{background:rgba(255,255,255,.86);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(22,23,27,.14);color:#2c3138;box-shadow:0 6px 18px -12px rgba(0,0,0,.5);}
.poz-plan--lift .poz-lift__stagebar .poz-lift__switch button.is-on,
.poz-plan--lift:not(.poz-dark) .poz-lift__stagebar .poz-lift__switch button.is-on{background:var(--acc,#dc2626);border-color:var(--acc,#dc2626);color:#fff;}

/* ==================================================================
   v4.4 — the enquiry button. It wore a saturated red glow (0 14px 30px
   -14px at .8 alpha) that smeared onto the white plate under it. Real
   elevation instead: a lit top edge, a tight contact shadow and one soft
   neutral ambient shadow, so the button sits ON the plate rather than
   bleeding into it.
   ================================================================== */
.poz-plan--lift .poz-plan__spec-foot .poz-plan__send{position:relative;border:0;color:#fff;background:linear-gradient(180deg,color-mix(in srgb,var(--acc,#dc2626) 90%,#fff) 0%,var(--acc,#dc2626) 52%,color-mix(in srgb,var(--acc,#dc2626) 90%,#000) 100%);box-shadow:inset 0 1px 0 rgba(255,255,255,.30),inset 0 -1px 0 rgba(0,0,0,.12),0 1px 2px rgba(22,23,27,.20),0 10px 20px -14px rgba(22,23,27,.55);letter-spacing:.09em;font-size:11px;transition:transform .18s cubic-bezier(.2,0,0,1),box-shadow .18s ease,filter .18s ease;}
.poz-plan--lift .poz-plan__spec-foot .poz-plan__send:hover{transform:translateY(-1px);filter:brightness(1.05) saturate(1.03);box-shadow:inset 0 1px 0 rgba(255,255,255,.34),inset 0 -1px 0 rgba(0,0,0,.12),0 2px 4px rgba(22,23,27,.20),0 16px 26px -16px rgba(22,23,27,.6);}
.poz-plan--lift .poz-plan__spec-foot .poz-plan__send:active{transform:translateY(0);box-shadow:inset 0 1px 0 rgba(255,255,255,.18),inset 0 2px 5px rgba(0,0,0,.22),0 1px 2px rgba(22,23,27,.22);}
.poz-plan--lift .poz-plan__spec-foot .poz-plan__send:focus-visible{outline:none;box-shadow:inset 0 1px 0 rgba(255,255,255,.30),0 0 0 3px color-mix(in srgb,var(--acc,#dc2626) 34%,transparent),0 10px 20px -14px rgba(22,23,27,.55);}
/* on the dark rail the ambient shadow goes darker, never coloured */
.poz-plan--lift.poz-dark .poz-plan__spec-foot .poz-plan__send{box-shadow:inset 0 1px 0 rgba(255,255,255,.26),inset 0 -1px 0 rgba(0,0,0,.22),0 1px 2px rgba(0,0,0,.5),0 14px 26px -16px rgba(0,0,0,.85);}
.poz-plan--lift.poz-dark .poz-plan__spec-foot .poz-plan__send:hover{box-shadow:inset 0 1px 0 rgba(255,255,255,.30),inset 0 -1px 0 rgba(0,0,0,.22),0 2px 5px rgba(0,0,0,.55),0 20px 34px -18px rgba(0,0,0,.9);}
/* the two quiet actions beneath it line up with the same language */
.poz-plan--lift .poz-plan__spec-foot .poz-plan__mini{border-radius:999px;transition:border-color .16s ease,color .16s ease,background .16s ease;}
.poz-plan--lift .poz-plan__spec-foot .poz-plan__mini:hover{border-color:color-mix(in srgb,var(--acc,#dc2626) 45%,transparent);}

/* ===== TRUSS kit: image chips in the pickers ===== */
.poz-plan__chip.poz-chip-img {
  display: inline-flex; flex-direction: column; align-items: center; gap: 5px;
  padding: 8px 6px; width: 92px; height: auto;
}
.poz-plan__chip.poz-chip-img img { width: 62px; height: 62px; object-fit: contain; display: block; }
.poz-plan__chip.poz-chip-img span { font-size: 10px; line-height: 1.25; text-align: center; white-space: normal; }

/* Internal build metadata must not crowd the guide's navigation or close. */
.poz-vodic__credits i { display: none; }
@media (min-width: 901px) and (max-width: 1399px) {
  .poz-vodic__brand, .poz-vodic__credits { display: none; }
  .poz-vodic__bar { gap: 12px; }
}

/* ---- v2.40 (2026-09-08 configurator audit) ----
   1. The foot strip is TEXT ON THE STRIP, not a row of cards: the v2.28 graphite
      gradient was written for the summary's stats band but its selector caught
      every .poz-vodic__fact, which painted a dark box behind each label/value
      pair in the strip on all four planners. The v2.28 rule is now scoped to the
      band; this block pins the strip chips to nothing at all.
   2. The summary's stats band sizes its columns to the number of facts (--sumcols,
      set by the engine), so six facts sit 3 + 3 instead of 4 + 2 with holes, and a
      long value wraps instead of clipping ("20–60 cm · korak 20 c").
   3. The parts ledger carries a header (title + item count) and compact rows, so
      five or six lines fit before it has to scroll. ---- */
.poz-plan .poz-vodic .poz-vodic__foot .poz-vodic__fact { background: none; border: 0; padding: 0; box-shadow: none; }
.poz-vodic__sumfacts { grid-template-columns: repeat(var(--sumcols, 4), minmax(0, 1fr)); }
.poz-plan--lift.is-vodic .poz-vodic__sumfacts { grid-template-columns: repeat(var(--sumcols, 3), minmax(0, 1fr)); }
.poz-vodic__sumfacts .poz-vodic__fact, .poz-vodic__sumfacts .poz-vodic__fact b, .poz-vodic__sumfacts .poz-vodic__fact i { white-space: normal; overflow-wrap: anywhere; min-width: 0; }
.poz-vodic__sumfacts .poz-vodic__fact b { font-size: 16.5px; line-height: 1.2; }
.poz-vodic__spechead { flex: none; display: flex; align-items: baseline; justify-content: space-between; gap: 12px; margin: 2px 2px 8px; }
.poz-vodic__spechead b { font-family: Michroma, sans-serif; font-weight: 400; font-size: 9px; letter-spacing: 0.13em; text-transform: uppercase; color: rgba(255, 255, 255, 0.6); }
.poz-vodic__spechead i { font-style: normal; font-size: 12px; color: rgba(255, 255, 255, 0.55); }
.poz-vodic__main--sum .poz-vodic__speclist { margin-top: 0; }
.poz-vodic__main--sum .poz-vodic__speclist .poz-plan__itemcard { padding: 8px 16px; gap: 12px; }
.poz-vodic__main--sum .poz-vodic__speclist .poz-plan__itemcard-img, .poz-vodic__main--sum .poz-vodic__speclist .poz-plan__itemcard-glyph { width: 40px; height: 40px; }
.poz-vodic__main--sum .poz-vodic__speclist .poz-plan__item { padding: 6px 18px; }

/* ---- v2.41 (2026-09-08) — the lifter page slides under the glass bar the way the studios do (.poz-plan--studio pulls itself up by the header height). Without it the bar sat on a 124 px WHITE strip above a dark tool, so it read light while everything else was dark — and no mode switch could ever change that. ---- */
.poz-plan.poz-plan--lift { position: relative; margin-top: calc(-1 * var(--poz-header-h, 124px)); padding-top: var(--poz-header-h, 124px); box-sizing: border-box; }

/* ---- v2.42 (2026-09-08) — every mode carries the same bottom notice: © LumiLas d.o.o. + configurator version and build. The guide gets a legal line under its foot strip (the bar credits hide the build on purpose); the lifter's expert mode gets the generic line, since its bottom bar is not displayed; the studios keep their floating bar credits. ---- */
.poz-vodic__legal { flex: none; text-align: center; font-family: Michroma, sans-serif; font-size: 8px; letter-spacing: 0.12em; text-transform: uppercase; color: rgba(255, 255, 255, 0.42); padding: 6px 16px 7px; border-top: 1px solid rgba(255, 255, 255, 0.06); background: rgba(13, 14, 16, 0.96); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.poz-plan__legal { display: none; }
.poz-plan.poz-plan--lift .poz-plan__legal { display: block; position: absolute; right: 18px; bottom: 8px; z-index: 5; font-family: Michroma, sans-serif; font-size: 8px; letter-spacing: 0.12em; text-transform: uppercase; color: rgba(255, 255, 255, 0.42); pointer-events: none; }
.poz-plan.poz-plan--lift.is-vodic .poz-plan__legal { display: none; }
@media (max-width: 900px) { .poz-plan.poz-plan--lift .poz-plan__legal { position: static; text-align: center; padding: 10px 16px 14px; } .poz-vodic__legal { white-space: normal; } }

/* ---- v2.43 (2026-09-08) — ONE rail on every studio. The zbor and truss overrides above (152/140 px rails, 104–116 px tiles, 372–396 px fly-outs) made the left rail and its side panel read as a different tool from the stage planner. Same selectors, stage values: 96 px rail, 64 px tiles, 306 px fly-out; the picture chips inside the fly-out shrink so three still sit in a row. ---- */
@media (min-width: 901px) {
.poz-plan.poz-plan--studio[data-planner="zbor"] .poz-plan__tools, .poz-plan.poz-plan--studio[data-planner="truss"] .poz-plan__tools { width: 96px; }
.poz-plan.poz-plan--studio[data-planner="zbor"] .poz-plan__tool, .poz-plan.poz-plan--studio[data-planner="truss"] .poz-plan__tool { min-height: 64px; margin: 5px 9px 0; padding: 8px 4px 7px; gap: 3px; }
.poz-plan.poz-plan--studio[data-planner="zbor"] .poz-plan__tool-ico img, .poz-plan.poz-plan--studio[data-planner="truss"] .poz-plan__tool-ico img { width: 36px; height: 30px; object-fit: contain; }
.poz-plan.poz-plan--studio[data-planner="zbor"] .poz-plan__tool-ico svg, .poz-plan.poz-plan--studio[data-planner="truss"] .poz-plan__tool-ico svg { width: 24px; height: 24px; }
.poz-plan.poz-plan--studio[data-planner="zbor"] .poz-plan__tool-name, .poz-plan.poz-plan--studio[data-planner="truss"] .poz-plan__tool-name { font-size: 9.5px; max-width: 74px; line-height: 1.2; }
.poz-plan.poz-plan--studio[data-planner="zbor"] .poz-plan__tool-count, .poz-plan.poz-plan--studio[data-planner="truss"] .poz-plan__tool-count { font-size: 8.5px; max-width: 72px; }
.poz-plan.poz-plan--studio[data-planner="zbor"] .poz-plan__panelwrap.is-open, .poz-plan.poz-plan--studio[data-planner="truss"] .poz-plan__panelwrap.is-open { width: 306px; }
.poz-plan.poz-plan--studio[data-planner="zbor"] .poz-plan__chip.poz-chip-img, .poz-plan.poz-plan--studio[data-planner="truss"] .poz-plan__chip.poz-chip-img { width: 80px; padding: 7px 4px; }
.poz-plan.poz-plan--studio[data-planner="zbor"] .poz-plan__chip.poz-chip-img img, .poz-plan.poz-plan--studio[data-planner="truss"] .poz-plan__chip.poz-chip-img img { width: 54px; height: 54px; }
}

/* ---- v2.43b (2026-09-08) — the fly-out notch is a piece of the PANEL, not a badge: on zbor/truss/lifting the accent pass filled it with the category colour at 50 %, so the tile-to-panel joint read as a purple/green diamond while the stage shows a white one. Same paint as the panel, accent only on its two edges, light and dark. ---- */
.poz-plan.poz-plan--studio:is(.poz-acc--choir, .poz-acc--truss, .poz-acc--lifting) .poz-plan__panelwrap.is-open::before { background: rgba(251, 252, 254, 0.96); border-left-color: rgba(var(--pzk-rgb), 0.4); border-bottom-color: rgba(var(--pzk-rgb), 0.4); }
.poz-plan.poz-plan--studio.poz-studio-dark:is(.poz-acc--choir, .poz-acc--truss, .poz-acc--lifting) .poz-plan__panelwrap.is-open::before { background: rgba(21, 23, 28, 0.97); border-left-color: rgba(var(--pzk-rgb), 0.45); border-bottom-color: rgba(var(--pzk-rgb), 0.45); }

/* ---- v2.42b (2026-09-08) — the studio notice was white-on-white in the LIGHT theme (an earlier neutral pass set rgba(255,255,255,.5) for every floating credit). Ink on the light studio, the dark rule stays for the dark one. ---- */
.poz-plan.poz-plan--studio:not(.poz-studio-dark) .poz-plan__credits--float i, .poz-plan.poz-plan--studio:not(.poz-studio-dark) .poz-plan__credits i { color: rgba(22, 23, 27, 0.62); }
.poz-plan.poz-plan--studio:not(.poz-studio-dark) .poz-plan__legal { color: rgba(22, 23, 27, 0.55); }

/* Keep the initial mode chooser compact on stacked screens. Advanced controls
   return when the chooser closes; the guide has its own scoped rules above. */
@media (max-width: 900px) {
  .poz-plan:has([data-mode-entry]:not([hidden])) .poz-plan__tools,
  .poz-plan:has([data-mode-entry]:not([hidden])) .poz-plan__bar,
  .poz-plan:has([data-mode-entry]:not([hidden])) .poz-tb,
  .poz-plan:has([data-mode-entry]:not([hidden])) .poz-plan__presetbar { display: none !important; }
}

/* The guide body must fit its grid area before it becomes a scrollport.
   A content-box 100% height put the last height choices below the footer. */
@media (max-width: 480px) {
  .poz-plan--lift.is-vodic .poz-vodic__sumfacts {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (min-width: 901px) {
  .poz-plan--lift.is-vodic .poz-vodic__main:not(.poz-vodic__main--sum) .poz-vodic__body {
    height: auto; min-height: 0; box-sizing: border-box; align-self: stretch;
  }
}
@media (max-width: 760px) {
  .poz-plan .poz-plan__entry {
    align-items: flex-start; overflow-y: auto; overscroll-behavior-y: contain;
    padding: 24px 16px;
  }
  .poz-plan.poz-plan--studio .poz-tb { bottom: 12px; }
  .poz-plan.poz-plan--studio .poz-assist {
    top: 12px; bottom: auto; left: 12px; right: auto;
    max-width: calc(100% - 24px);
  }
  .poz-plan.poz-plan--studio .poz-plan__scene-hint {
    bottom: 64px; max-width: calc(100% - 24px); white-space: normal;
  }
}

/* Mode selector — shared light entry for all four configurators. */
.poz-plan .poz-plan__entry.pz-mode {
  --mode-ink:#20252c; --mode-muted:#626a75;
  box-sizing:border-box; padding:104px 32px 32px; overflow-y:auto;
  align-items:safe center; color:var(--mode-ink);
  background:linear-gradient(145deg,rgba(250,251,253,.96),rgba(237,240,244,.93));
  backdrop-filter:blur(24px); -webkit-backdrop-filter:blur(24px);
}
.pz-mode .pz-mode__inner { width:min(820px,100%); margin:auto; text-align:center; }
.pz-mode .pz-mode__brand { width:88px; height:44px; margin:0 auto 20px; }
.pz-mode .pz-mode__brand svg { width:100%; height:100%; display:block; }
.pz-mode .pz-mode__eyebrow { margin:0 0 14px; font:400 10px/1.6 var(--poz-font-display, Michroma,sans-serif); letter-spacing:.09em; text-transform:uppercase; color:var(--mode-muted); }
.pz-mode .pz-mode__title { margin:0; font:400 clamp(23px,2.5vw,34px)/1.4 var(--poz-font-display, Michroma,sans-serif); color:var(--mode-ink); letter-spacing:-.045em; text-wrap:balance; }
.pz-mode .pz-mode__intro { margin:14px 0 30px; font:400 16px/1.5 var(--poz-font-body); color:var(--mode-muted); }
.pz-mode .pz-mode__choices { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; }
.pz-mode .pz-mode__card { position:relative; display:flex; flex-direction:column; align-items:stretch; min-width:0; padding:24px 28px; border:1px solid rgba(255,255,255,.95); border-radius:26px; color:var(--mode-ink); background:linear-gradient(145deg,rgba(255,255,255,.88),rgba(255,255,255,.45)); box-shadow:0 2px 3px rgba(31,42,55,.025),0 16px 42px -24px rgba(31,42,55,.23),inset 0 0 0 1px rgba(51,65,83,.045); cursor:pointer; text-align:left; transition:transform .28s cubic-bezier(.22,1,.36,1),box-shadow .28s ease,background-color .28s ease; -webkit-tap-highlight-color:transparent; }
.pz-mode .pz-mode__card-top { display:flex; align-items:center; justify-content:space-between; gap:12px; min-height:26px; }
.pz-mode .pz-mode__badge,.pz-mode .pz-mode__label { font:500 11px/1.4 var(--poz-font-body); letter-spacing:.025em; }
.pz-mode .pz-mode__badge { color:#45576b; background:#e9edf2; border-radius:20px; padding:5px 10px; }
.pz-mode .pz-mode__label { color:var(--mode-muted); }
.pz-mode .pz-mode__arrow { font:400 22px/1 var(--poz-font-body); color:#747e8b; }
.pz-mode .pz-mode__visual { height:106px; position:relative; display:flex; justify-content:center; align-items:center; gap:28px; margin:8px 0 14px; }
.pz-mode .pz-mode__step { z-index:1; display:grid; place-items:center; width:40px; height:40px; border-radius:50%; border:1px solid #d2d9e1; background:linear-gradient(#fff,#edf0f4); color:#727d89; box-shadow:0 6px 12px -8px #718096; font:400 12px/1 var(--poz-font-display); transition:transform .4s cubic-bezier(.22,1,.36,1),color .3s,box-shadow .3s; }
.pz-mode .pz-mode__step:nth-last-child(3) { color:#273342; border-color:#acb8c7; }
.pz-mode .pz-mode__track { position:absolute; width:136px; height:1px; background:linear-gradient(90deg,#b4bfcd,#dce1e8); }
.pz-mode .pz-mode__visual svg { width:220px; height:100px; overflow:visible; color:#a4aebc; }
.pz-mode .pz-mode__grid { stroke-width:1; }
.pz-mode .pz-mode__tile { color:#8693a4; transform:translateY(-8px); transition:transform .4s cubic-bezier(.22,1,.36,1); }
.pz-mode .pz-mode__cursor { transition:transform .4s cubic-bezier(.22,1,.36,1); }
.pz-mode .pz-mode__name { font:400 19px/1.5 var(--poz-font-display); letter-spacing:-.04em; }
.pz-mode .pz-mode__desc { flex:1; margin-top:12px; max-width:34ch; font:400 15px/1.6 var(--poz-font-body); color:var(--mode-muted); }
.pz-mode .pz-mode__action { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-top:26px; padding-top:17px; border-top:1px solid #e0e5eb; font:500 13px/1.5 var(--poz-font-body); color:#394858; }
.pz-mode .pz-mode__action svg,.pz-mode .pz-mode__hint svg { flex:none; width:20px; height:20px; fill:none; stroke:currentColor; stroke-width:1.25; stroke-linecap:round; stroke-linejoin:round; }
.pz-mode .pz-mode__action svg { transition:transform .28s ease; }
.pz-mode .pz-mode__hint { display:flex; align-items:center; justify-content:center; gap:9px; margin:24px auto 0; max-width:600px; font:400 12px/1.6 var(--poz-font-body); color:var(--mode-muted); }
.pz-mode .pz-mode__credit { margin:26px 0 0; font:500 12px/1.5 var(--poz-font-body); letter-spacing:.01em; color:#485361; }
.pz-mode .pz-mode__credit span { margin-left:5px; font-weight:400; color:#757d87; }
.pz-mode .pz-mode__card:focus-visible { outline:2px solid #526e90; outline-offset:5px; }
.pz-mode .pz-mode__card:active { transform:scale(.985); }
@media(hover:hover) {
 .pz-mode .pz-mode__card:hover { transform:translateY(-4px); background-color:#fff; box-shadow:0 20px 44px -22px rgba(31,42,55,.3),inset 0 0 0 1px rgba(51,65,83,.07); }
 .pz-mode .pz-mode__card:hover .pz-mode__action svg { transform:translateX(4px); }
}
.pz-mode .pz-mode__card:is(:hover,:focus-visible) .pz-mode__step { transform:translateY(-3px); color:#273342; box-shadow:0 9px 16px -8px #718096; }
.pz-mode .pz-mode__card:is(:hover,:focus-visible) .pz-mode__step:nth-last-child(2) { transition-delay:45ms; }
.pz-mode .pz-mode__card:is(:hover,:focus-visible) .pz-mode__step:last-child { transition-delay:90ms; }
.pz-mode .pz-mode__card:is(:hover,:focus-visible) .pz-mode__tile { transform:translateY(-14px); }
.pz-mode .pz-mode__card:is(:hover,:focus-visible) .pz-mode__cursor { transform:translate(-4px,-3px); }
.pz-mode:not([hidden]) .pz-mode__inner { animation:pz-mode-in .65s cubic-bezier(.22,1,.36,1) both; }
@keyframes pz-mode-in { from {opacity:0;transform:translateY(10px)} to {opacity:1;transform:translateY(0)} }
@media(max-width:900px) {
 .poz-plan .poz-plan__entry.pz-mode { padding:30px 24px; }
}
@media(max-width:600px) {
 .poz-plan .poz-plan__entry.pz-mode { padding:26px 18px; }
 .pz-mode .pz-mode__brand { width:70px; height:35px; margin-bottom:18px; }
 .pz-mode .pz-mode__eyebrow { font-size:9px; margin-bottom:10px; }
 .pz-mode .pz-mode__title { font-size:23px; }
 .pz-mode .pz-mode__intro { font-size:14px; margin:12px 0 24px; }
 .pz-mode .pz-mode__choices { grid-template-columns:1fr; gap:14px; }
 .pz-mode .pz-mode__card { padding:20px 22px; border-radius:22px; }
 .pz-mode .pz-mode__visual { height:60px; margin:4px 0 8px; }
 .pz-mode .pz-mode__visual svg { width:166px; height:76px; }
 .pz-mode .pz-mode__step { width:32px;height:32px;font-size:10px; }
 .pz-mode .pz-mode__track { width:120px; }
 .pz-mode .pz-mode__name { font-size:17px; }
 .pz-mode .pz-mode__desc { font-size:14px; margin-top:8px; }
 .pz-mode .pz-mode__action { margin-top:18px; padding-top:12px; }
 .pz-mode .pz-mode__hint { align-items:flex-start; text-align:left; margin-top:20px; }
 .pz-mode .pz-mode__credit { margin-top:20px; }
}
@media(prefers-reduced-motion:reduce) {
 .pz-mode .pz-mode__inner { animation:none!important; }
 .pz-mode .pz-mode__card,.pz-mode .pz-mode__step,.pz-mode .pz-mode__tile,.pz-mode .pz-mode__cursor,.pz-mode .pz-mode__action svg { transition:none; transform:none!important; }
}

/* Keep the exposed header ground consistent while the chooser is open. */
body:has(.pz-mode:not([hidden])) { background:#eef1f4; }
.poz-plan:has(.pz-mode:not([hidden])) { background:#eef1f4; }

/* The collapsed specification tray belongs to the workspace, not mode entry. */
.poz-plan:has(.pz-mode:not([hidden])) .poz-plan__spec { visibility:hidden; pointer-events:none; }
.poz-plan:has(.pz-mode:not([hidden])) .poz-plan__frame { border-color:transparent; }

/* Lifting has a taller catalogue shell; entry stays within one screen. */
.poz-plan[data-planner="lift"]:has(.pz-mode:not([hidden])) .poz-plan__frame {
 height:calc(100svh - 124px)!important; min-height:0!important; overflow:hidden;
}
.poz-plan[data-planner="lift"] .poz-plan__entry.pz-mode { padding-top:28px; }
@media(max-width:900px) {
 .poz-plan:has(.pz-mode:not([hidden])) .poz-plan__frame {
  height:calc(100svh - 124px)!important; min-height:0!important; overflow:hidden;
 }
}

/* Selector hierarchy and the official brand signature. */
.pz-mode .pz-mode__title { max-width:26ch; margin:0 auto; font-size:clamp(24px,2.3vw,32px); line-height:1.4; }
.pz-mode .pz-mode__brand { margin-bottom:22px; }
.pz-mode .pz-mode__intro { margin:12px 0 28px; font-size:16px; }
.pz-mode .pz-mode__signature { margin:24px auto 0; }
.pz-mode .pz-mode__logos { display:flex; align-items:center; justify-content:center; gap:20px; }
.pz-mode .pz-mode__logos img { display:block; object-fit:contain; }
.pz-mode .pz-mode__poz-logo { width:168px; height:32px; }
.pz-mode .pz-mode__lumilas-logo { width:100px; height:24px; }
.pz-mode .pz-mode__logos > span { width:1px; height:20px; background:#cdd3db; }
.pz-mode .pz-mode__legal { margin:12px 0 0; font:400 10px/1.6 var(--poz-font-body); letter-spacing:.025em; color:#6b7480; }
.pz-mode .pz-mode__legal > span { margin:0 7px; }
.pz-mode .pz-mode__filter-knobs { transition:transform .35s cubic-bezier(.22,1,.36,1); }
.pz-mode .pz-mode__card:is(:hover,:focus-visible) .pz-mode__filter-knobs { transform:translateX(7px); }
@media(max-width:600px) {
 .pz-mode .pz-mode__title { font-size:23px; max-width:22ch; }
 .pz-mode .pz-mode__brand { margin-bottom:18px; }
 .pz-mode .pz-mode__intro { font-size:14px; margin-bottom:22px; }
 .pz-mode .pz-mode__signature { margin-top:22px; }
 .pz-mode .pz-mode__logos { gap:16px; }
 .pz-mode .pz-mode__poz-logo { width:146px; height:28px; }
 .pz-mode .pz-mode__lumilas-logo { width:86px; height:22px; }
}
@media(prefers-reduced-motion:reduce) { .pz-mode .pz-mode__filter-knobs { transition:none;transform:none!important; } }


/* Mobile is a guided-only experience, including touch tablets and phone landscape. */
.poz-vodic__mobile-note { display: none; }
@media (max-width: 767px), (hover: none) and (pointer: coarse) {
  .poz-plan [data-mode-entry], .poz-plan [data-mode="expert"],
  .poz-plan [data-vfinish="expert"], .poz-plan [data-vclose],
  .poz-plan [data-mode-toggle], .poz-plan .poz-assist { display: none !important; }
  .poz-plan .poz-vodic__bar { display: grid; grid-template-columns: minmax(0,1fr); gap: 12px; }
  .poz-plan .poz-vodic__nav { grid-column: 1; grid-row: 2; min-width: 0; }
  .poz-plan .poz-vodic__brand, .poz-plan .poz-vodic__credits { display: none; }
  .poz-plan .poz-vodic__mobile-note {
    display: flex; grid-column: 1; grid-row: 1; align-items: flex-start; gap: 12px;
    margin: 0; padding: 13px 15px; border: 1px solid #424b57; border-radius: 12px;
    background: #20262e; color: #cbd3de; font: 400 13px/1.5 var(--poz-font-body, sans-serif);
    text-align: left; white-space: normal;
  }
  .poz-vodic__mobile-note svg { width: 22px; height: 22px; margin-top: 2px; flex: none; color: #e4edf8; }
  .poz-vodic__mobile-note strong { display: block; margin-bottom: 2px; color: #f4f7fb; font-weight: 600; }
}

/* The Izlog skin also uses this mobile header; keep note and steps in separate rows. */
@media (max-width: 767px), (hover: none) and (pointer: coarse) {
  .poz-plan .poz-plan__wizard.poz-vodic .poz-vodic__bar {
    display: grid !important; grid-template-columns: minmax(0, 1fr) !important;
    gap: 10px; height: auto; min-height: 0; flex: none; align-items: stretch;
  }
  .poz-plan .poz-plan__wizard.poz-vodic .poz-vodic__nav {
    grid-row: 2 !important; grid-column: 1 !important; min-width: 0;
    justify-content: flex-start; overflow-x: auto; flex: none;
  }
  .poz-plan .poz-plan__wizard.poz-vodic .poz-vodic__mobile-note { width: 100%; box-sizing: border-box; }
}
@media (min-width: 901px) and (hover: none) and (pointer: coarse) {
  .poz-plan.poz-skin-izlog:not(.poz-plan--lift) .poz-plan__wizard.poz-vodic .poz-vodic__hero { top: 228px; }
}


/* ===== choir audit 2026-09-13: quote hold + Ukloni tool cursor ===== */
.poz-plan [data-send-spec]:disabled, .poz-plan [data-send-spec].is-held { opacity: 0.45; cursor: not-allowed; filter: grayscale(0.4); }
.poz-plan [data-scene].is-tool-brisi canvas, .poz-plan [data-scene].is-tool-brisi svg { cursor: not-allowed; }
.poz-plan [data-hold-note] { border-left: 3px solid #E0281E; padding-left: 10px; }
.poz-plan [data-hold-note] .poz-plan__chip { margin-top: 6px; }
/* Sven 2026-09-13: configurations are never printable or PDF-exportable — a print of the page shows nothing of the configurator */
@media print { .poz-plan, .poz-vodic, [data-poz-planner] { display: none !important; } }

/* ===== reset button 2026-09-13: a labelled pill that asks twice ===== */
.poz-plan.poz-plan--studio .poz-plan__topact .poz-plan__iconb[data-reset] { width: auto; padding: 0 14px 0 11px; display: inline-flex; align-items: center; gap: 7px; font: 600 10.5px/1 var(--poz-font-body, sans-serif); letter-spacing: 0.09em; text-transform: uppercase; white-space: nowrap; }
.poz-plan .poz-plan__iconb-lb { display: inline; }
.poz-plan .poz-plan__iconb[data-reset].is-armed { background: #E0281E !important; color: #fff !important; }
.poz-plan.poz-plan--studio.poz-studio-dark .poz-plan__iconb[data-reset].is-armed { background: #E0281E !important; color: #fff !important; }

/* reset armed override 2026-09-13: the izlog glass rule on .poz-plan__iconb is more specific than the plain armed rule */
.poz-plan.poz-skin-izlog:not(.poz-plan--lift).poz-plan--studio .poz-plan__topact .poz-plan__iconb[data-reset].is-armed,
.poz-plan.poz-skin-izlog:not(.poz-plan--lift).poz-plan--studio .poz-plan__topact .poz-plan__iconb[data-reset].is-armed:hover,
.poz-plan.poz-plan--studio .poz-plan__topact .poz-plan__iconb[data-reset].is-armed.is-armed { background: #E0281E !important; color: #fff !important; box-shadow: 0 10px 26px rgba(224,40,30,0.35) !important; }

/* ===== limit notice 2026-09-13: a card that fades in over the scene when an action is refused ===== */
.poz-plan [data-scene] { position: relative; }
.poz-plan .poz-plan__notice { position: absolute; left: 50%; top: 16%; z-index: 60; transform: translate(-50%, 12px); width: min(460px, calc(100% - 32px)); padding: 20px 24px 16px; border-radius: 16px; background: rgba(17, 20, 25, 0.95); color: #fff; box-shadow: 0 28px 70px rgba(0, 0, 0, 0.42), 0 0 0 1px rgba(255, 255, 255, 0.08) inset; font: 400 14.5px/1.5 var(--poz-font-body, sans-serif); opacity: 0; pointer-events: none; cursor: pointer; transition: opacity 0.3s ease, transform 0.3s ease; }
.poz-plan .poz-plan__notice.is-on { opacity: 1; transform: translate(-50%, 0); pointer-events: auto; }
.poz-plan .poz-plan__notice b { display: block; font-size: 17px; font-weight: 600; letter-spacing: -0.01em; margin-bottom: 8px; }
.poz-plan .poz-plan__notice span { display: block; color: rgba(255, 255, 255, 0.88); }
.poz-plan .poz-plan__notice i { display: block; margin-top: 12px; font-style: normal; font-size: 10.5px; letter-spacing: 0.1em; text-transform: uppercase; color: rgba(255, 255, 255, 0.5); }
.poz-plan.poz-dark .poz-plan__notice, .poz-plan.poz-studio-dark .poz-plan__notice { background: rgba(245, 246, 248, 0.97); color: #14161B; box-shadow: 0 28px 70px rgba(0, 0, 0, 0.5); }
.poz-plan.poz-dark .poz-plan__notice span, .poz-plan.poz-studio-dark .poz-plan__notice span { color: rgba(20, 22, 27, 0.82); }
.poz-plan.poz-dark .poz-plan__notice i, .poz-plan.poz-studio-dark .poz-plan__notice i { color: rgba(20, 22, 27, 0.5); }
@media (prefers-reduced-motion: reduce) { .poz-plan .poz-plan__notice { transition: opacity 0.15s linear; transform: translate(-50%, 0); } }
@media (max-width: 700px) { .poz-plan .poz-plan__notice { top: 10%; padding: 16px 18px 14px; font-size: 14px; } }


/* ============================================================================
   UX 2026-09-14 — the "Skica" modal (name · room · recent · QR · project),
   the load block and the transport line. The modal is FIXED and centred: the
   izlog skin floats the spec rail and the checks card, so nothing may be
   inserted into the rail itself.
   ========================================================================== */
.poz-plan__scrim { position: fixed; inset: 0; z-index: 10030; background: rgba(12, 14, 18, 0.42); }
.poz-plan__pop { position: fixed; z-index: 10031; left: 50%; top: 50%; transform: translate(-50%, -50%); width: min(460px, calc(100vw - 24px)); max-height: min(82vh, 720px); overflow: auto; padding: 18px 44px 18px 18px; border-radius: 14px; border: 1px solid rgba(20, 30, 42, 0.12); background: #fff; color: #16171B; box-shadow: 0 24px 60px -20px rgba(10, 12, 16, 0.55); font: 400 13.5px/1.5 "IBM Plex Sans", system-ui, sans-serif; box-sizing: border-box; }
.poz-plan__pop * { box-sizing: border-box; }
.poz-plan__pop-h { font-weight: 600; font-size: 15px; margin: 0 0 10px; }
.poz-plan__pop-sub { font-size: 11px; letter-spacing: 0.08em; text-transform: uppercase; color: #8B929E; margin: 14px 0 6px; }
.poz-plan__pop-x { position: absolute; top: 10px; right: 10px; width: 30px; height: 30px; border-radius: 50%; border: 1px solid rgba(20, 30, 42, 0.14); background: #fff; color: #4B5261; cursor: pointer; font-size: 18px; line-height: 1; }
.poz-plan__pop-back { display: inline-block; margin: 0 0 8px; padding: 4px 8px; border: 0; background: transparent; color: #1F8A5F; font: inherit; font-weight: 600; cursor: pointer; }
.poz-plan__pop-row { display: grid; grid-template-columns: 1fr auto auto; gap: 2px 8px; align-items: center; width: 100%; text-align: left; padding: 8px 10px; margin: 2px 0; border-radius: 10px; border: 1px solid transparent; background: transparent; color: inherit; font: inherit; cursor: pointer; }
.poz-plan__pop-row b { grid-column: 1; font-weight: 600; }
.poz-plan__pop-row span { grid-column: 1; font-size: 12px; color: #8B929E; }
.poz-plan__pop-row > .poz-plan__mini, .poz-plan__pop-row > a.poz-plan__mini { grid-row: 1 / span 2; align-self: center; text-decoration: none; }
.poz-plan__pop-row:not(.is-static):hover { border-color: rgba(20, 30, 42, 0.14); background: rgba(31,138,95,.06); }
.poz-plan__pop-row.is-static { cursor: default; }
.poz-plan__pop-fs { display: flex; flex-wrap: wrap; gap: 8px; align-items: flex-end; }
.poz-plan__pop-f { display: flex; flex-direction: column; gap: 3px; font-size: 12px; color: #4B5261; }
.poz-plan__pop-f--wide { width: 100%; }
.poz-plan__pop-f input { width: 84px; font: inherit; font-size: 13.5px; padding: 7px 9px; border-radius: 8px; border: 1px solid rgba(20, 30, 42, 0.16); background: #fff; color: #16171B; }
.poz-plan__pop-f--wide input { width: 100%; }
.poz-plan__pop-f input:focus { outline: 2px solid rgba(31,138,95,.45); outline-offset: 1px; }
.poz-plan__pop-act { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 12px; align-items: center; }
.poz-plan__pop-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin-top: 14px; }
.poz-plan__pop-btn { display: flex; flex-direction: column; align-items: flex-start; gap: 2px; padding: 10px 12px; border-radius: 10px; border: 1px solid rgba(20, 30, 42, 0.14); background: #fff; color: inherit; font: inherit; text-align: left; cursor: pointer; }
.poz-plan__pop-btn:hover { border-color: #1F8A5F; background: rgba(31,138,95,.06); }
.poz-plan__pop-btn b { font-weight: 600; }
.poz-plan__pop-btn span { font-size: 12px; color: #8B929E; }
.poz-plan__qr { display: grid; place-items: center; min-height: 120px; padding: 6px; }
.poz-plan__qr img { width: 200px; height: 200px; image-rendering: pixelated; border-radius: 8px; background: #fff; }
.poz-plan__mini[data-ux-open].is-on { color: #1F8A5F; border-color: #1F8A5F; }
.poz-plan__logi { display: flex; flex-wrap: wrap; gap: 4px 8px; align-items: baseline; margin: 6px 0 10px; padding: 8px 10px; border-radius: 8px; background: rgba(31,138,95,.06); font-size: 12.5px; }
.poz-plan__logi b { font-weight: 600; }
.poz-plan__logi span { color: var(--poz-text-2, #4B5261); }
.poz-plan__teret { margin: 4px 0 10px; padding: 10px 10px 8px; border-radius: 10px; border: 1px solid var(--poz-line, #DFE3E7); font-size: 13px; }
.poz-plan__teret-h { font-weight: 600; margin-bottom: 6px; }
.poz-plan__teret-row { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 6px 10px; margin: 4px 0; }
.poz-plan__teret-row > span:first-child { color: var(--poz-text-2, #4B5261); }
.poz-plan__teret-row .poz-plan__chips { margin: 0; }
.poz-plan__teret-in { display: inline-flex; align-items: center; gap: 4px; }
.poz-plan__teret-in input { width: 70px; font: inherit; font-size: 13px; padding: 4px 6px; border-radius: 7px; border: 1px solid var(--poz-line, #DFE3E7); background: transparent; color: var(--poz-text, #1A1C20); }
.poz-plan__teret-sum { margin-top: 6px; font-weight: 600; }
.poz-plan__stativ { margin-top: 8px; padding-top: 8px; border-top: 1px dashed var(--poz-line, #DFE3E7); display: flex; flex-direction: column; gap: 4px; }
.poz-plan__stativ span { color: var(--poz-text-2, #4B5261); font-size: 12.5px; }
.poz-plan__stativ a.poz-plan__chip { text-decoration: none; align-self: flex-start; }

/* the load block stays compact inside a 290 px rail: small chips, tight rows */
.poz-plan .poz-plan__teret { padding: 8px 10px 6px; font-size: 12.5px; }
.poz-plan .poz-plan__teret-row { margin: 2px 0; gap: 4px 8px; }
.poz-plan .poz-plan__teret .poz-plan__chips { gap: 4px; }
.poz-plan .poz-plan__teret .poz-plan__chip { padding: 4px 8px !important; font-size: 12px !important; min-height: 0 !important; border-radius: 8px !important; }
.poz-plan .poz-plan__teret .poz-plan__step { transform: scale(0.9); transform-origin: right center; }
.poz-plan .poz-plan__teret .poz-plan__step output { min-width: 28px; }
.poz-plan .poz-plan__teret-in input { width: 62px; padding: 3px 6px; }
.poz-plan .poz-plan__teret-sum { margin-top: 4px; font-size: 12.5px; }
.poz-plan .poz-plan__stativ { margin-top: 6px; padding-top: 6px; gap: 3px; }
.poz-plan .poz-plan__stativ span { font-size: 12px; }
.poz-plan .poz-plan__stativ a.poz-plan__chip { padding: 4px 8px !important; font-size: 12px !important; }
.poz-plan .poz-plan__logi { margin: 4px 0 8px; padding: 6px 10px; font-size: 12px; }

/* 768–900 px (a narrow window, a tablet in portrait): the spec rail and the checks dock share the
   left column and the dock (bottom-left, 240 px tall) covered the rail's foot with "Zatraži ponudu"
   (Sven's screenshot 2026-09-14). The rail now ends above the dock. */
@media (max-width: 1200px) {
  /* the stacked layout puts the rail's header 98 px into the canvas; the dock (bottom: 46px)
     covered it — the dock now ends above the rail */
  .poz-plan.poz-skin-izlog:not(.poz-plan--lift).poz-plan--studio .poz-dock-left { bottom: 108px !important; }
}
