
.wz [hidden], .mp [hidden] { display: none !important; }

.wz { margin: var(--s-5) 0; padding: var(--s-4) var(--s-5); background: var(--surface); border-radius: var(--radius-card); }
.wz-top { display: flex; align-items: center; justify-content: space-between; gap: var(--s-3); min-height: 2.75rem; }
.wz-pos { margin: 0; font-size: var(--fs-small); font-weight: 600; color: var(--muted); }
.wz-back, .wz-again, .wz-change { min-height: 2.75rem; padding: var(--s-1) var(--s-3); border: 1px solid var(--line-strong); border-radius: var(--radius); background: var(--bg); color: var(--navy); font: inherit; font-size: var(--fs-small); font-weight: 600; cursor: pointer; }
.wz-q { margin: var(--s-2) 0 0; padding: 0; border: 0; min-width: 0; }
.wz-qt { padding: 0; margin: 0 0 var(--s-2); font-size: var(--fs-h4, 1.15rem); font-weight: 700; color: var(--ink); }
.wz-qt:focus { outline: none; }
.wz-qh { margin: 0 0 var(--s-3); color: var(--muted); max-width: var(--measure); }
.wz-opts { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 15rem), 1fr)); gap: var(--s-2); }
.wz-opt { display: flex; flex-direction: column; align-items: flex-start; gap: .2rem; min-height: 3.25rem; padding: var(--s-2) var(--s-3); border: 1px solid var(--line-strong); border-left: 4px solid var(--line-strong); border-radius: var(--radius); background: var(--bg); color: var(--navy); font: inherit; text-align: left; cursor: pointer; }
.wz-opt:hover { border-left-color: var(--navy); }
.wz-opt:focus-visible, .wz-back:focus-visible, .wz-again:focus-visible, .wz-change:focus-visible, .mp-btn:focus-visible { outline: 2px solid var(--blue); outline-offset: 2px; }
.wz-opt[aria-pressed="true"] { border-color: var(--navy); border-left-color: var(--navy); background: var(--navy); color: var(--on-dark); }
.wz-ol { font-weight: 700; }
.wz-oh { font-size: var(--fs-small); color: var(--muted); }
.wz-opt[aria-pressed="true"] .wz-oh { color: inherit; opacity: .85; }
.wz-out { margin-top: var(--s-3); }
.wz-done { margin: var(--s-2) 0 var(--s-3); }
.wz-done:focus { outline: none; }
.wz-ah { margin: 0 0 var(--s-1); font-size: var(--fs-small); font-weight: 600; color: var(--muted); }
.wz-alist { display: flex; flex-wrap: wrap; gap: var(--s-2); margin: 0 0 var(--s-4); padding: 0; list-style: none; }
.wz-change { font-weight: 400; text-align: left; }
.wz-ak { color: var(--muted); }
.wz-av { font-weight: 700; color: var(--navy); }
.wz-static { color: var(--muted); font-size: var(--fs-small); }
.wz.is-enhanced .wz-static, .wz.is-enhanced .wz-when { display: none; }
.wz-group { margin: var(--s-4) 0 0; }
.wz-gt { margin: 0 0 var(--s-2); font-size: var(--fs-small); text-transform: uppercase; letter-spacing: .04em; color: var(--muted); }
.wz-r { margin: 0 0 var(--s-3); padding: var(--s-3) var(--s-4); background: var(--bg); border: 1px solid var(--line); border-left: 4px solid var(--navy); border-radius: var(--radius-card); }
.wz-group + .wz-group .wz-r { border-left-color: var(--line-strong); }
.wz-rt { margin: 0 0 var(--s-2); font-size: 1.05rem; }
.wz-rs, .mp-sum { cursor: pointer; list-style: none; }
.wz-rs::-webkit-details-marker, .mp-sum::-webkit-details-marker { display: none; }
.wz-rs .wz-rt, .mp-sum .mp-head { margin: 0; }
.wz-rs .wz-rt::before, .mp-sum .mp-head::before { content: "+"; display: inline-block; width: 1.1em; color: var(--blue); font-weight: 700; }
details[open] > .wz-rs .wz-rt::before, details[open] > .mp-sum .mp-head::before { content: "−"; }
details[open] > .wz-rs .wz-rt, details[open] > .mp-sum .mp-head { margin: 0 0 var(--s-2); }
.wz-rs:focus-visible, .mp-sum:focus-visible { outline: 2px solid var(--blue); outline-offset: 2px; }
details.wz-r:not([open]), details.mp-panel:not([open]) { padding-top: var(--s-2); padding-bottom: var(--s-2); }
.wz-rt .kbasis { margin-left: var(--s-1); vertical-align: middle; }
.wz-chain { display: flex; flex-wrap: wrap; align-items: center; gap: var(--s-1) var(--s-2); margin: 0 0 var(--s-3); padding: 0; list-style: none; }
.wz-c { display: inline-flex; align-items: center; gap: .35em; padding: .25em .65em; font-size: var(--fs-small); font-weight: 600; background: var(--surface); border: 1px solid var(--line-strong); border-radius: 999px; }
.wz-c::before { content: ""; width: .6em; height: .6em; border-radius: 50%; background: var(--muted); }
.wz-c + .wz-c { margin-left: 1.1em; position: relative; }
.wz-c + .wz-c::after { content: "\2192"; position: absolute; left: -1.05em; color: var(--muted); font-weight: 400; }
.wz-c--sensor::before { background: var(--c-detect); }
.wz-c--bediening::before { background: var(--muted); }
.wz-c--besturing::before, .wz-c--lms::before, .wz-c--gbs::before { background: var(--navy); }
.wz-c--bus::before { background: var(--c-dali); }
.wz-c--radio::before { background: var(--c-nlc); }
.wz-c--netwerk::before, .wz-c--gateway::before { background: var(--c-ethernet); }
.wz-c--driver::before { background: #d9a300; }
.wz-when { margin: 0 0 var(--s-2); font-size: var(--fs-small); color: var(--muted); }
.wz-when span { font-weight: 600; }
.wz-rx { margin: 0 0 var(--s-2); max-width: var(--measure); }
.wz-ph { margin: var(--s-2) 0 var(--s-1); font-size: var(--fs-small); font-weight: 700; }
.wz-pts ul, .wz-open ul { margin: 0; padding-left: 1.2rem; max-width: var(--measure); }
.wz-pts li, .wz-open li { margin: 0 0 .2rem; }
.wz-more { margin: var(--s-2) 0 0; font-size: var(--fs-small); }
.wz-none { padding: var(--s-3) var(--s-4); background: var(--bg); border-left: 4px solid var(--line-strong); }
.wz-disc { margin: var(--s-4) 0 0; padding-top: var(--s-3); border-top: 1px solid var(--line); font-size: var(--fs-small); color: var(--muted); max-width: var(--measure); }
.wz-live { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
.wz-sum { margin: 0 0 var(--s-4); padding: var(--s-4); background: var(--bg); border: 1px solid var(--line); border-top: 4px solid var(--navy); border-radius: var(--radius-card); }
.wz-sum-t { margin: 0 0 var(--s-3); font-size: 1.1rem; }
.wz-sum-rows { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 13rem), 1fr)); gap: var(--s-3); }
.wz-sum-row { padding: var(--s-3); background: var(--surface); border-radius: var(--radius); }
.wz-sum-l { margin: 0 0 var(--s-2); font-size: var(--fs-small); text-transform: uppercase; letter-spacing: .04em; color: var(--muted); }
.wz-sum-s { margin: 0 0 var(--s-2); }
.wz-chip { display: inline-block; padding: .2em .75em; font-size: var(--fs-small); font-weight: 700; border: 1px solid var(--navy); border-radius: 999px; }
.wz-chip--ja { background: var(--navy); color: var(--on-dark); }
.wz-chip--mogelijk, .wz-chip--value { background: var(--blue-pale); color: var(--navy); }
.wz-chip--nader { background: var(--bg); color: var(--ink); border-style: dashed; }
.wz-chip--niet { background: var(--bg); color: var(--muted); border-color: var(--line-strong); }
.wz-sum-from { margin: 0 0 var(--s-1); font-weight: 600; }
.wz-sum-fl { font-weight: 400; color: var(--muted); }
.wz-sum-x { margin: 0 0 var(--s-2); font-size: var(--fs-small); }
.wz-sum-more { margin: 0; font-size: var(--fs-small); }
.wz-sum-miss { margin: var(--s-3) 0 0; padding: var(--s-2) var(--s-3); border-left: 4px solid var(--line-strong); }
.wz-sum-mh { margin: 0 0 var(--s-1); font-size: var(--fs-small); font-weight: 700; }
.wz-sum-miss ul { margin: 0; padding-left: 1.2rem; font-size: var(--fs-small); }
.wz-sum-ok { margin: 0; font-size: var(--fs-small); color: var(--muted); }
.wz-sum-note { margin: var(--s-3) 0 0; font-size: var(--fs-small); color: var(--muted); max-width: var(--measure); }
.wz-sum-src { margin: var(--s-1) 0 0; font-size: var(--fs-small); }
@media (max-width: 40rem) {
  .wz { padding: var(--s-3); }
  .wz-r { padding: var(--s-3); }
}
@media (prefers-reduced-motion: no-preference) {
  .wz-opt { transition: background-color .15s ease, border-color .15s ease; }
  .wz.is-enhanced .wz-q:not([hidden]), .wz.is-enhanced .wz-r:not([hidden]), .wz.is-enhanced .wz-sum:not([hidden]) { animation: wz-in .25s ease-out; }
  @keyframes wz-in { from { opacity: 0; transform: translateY(4px); } to { opacity: 1; transform: none; } }
}

.mp { margin: var(--s-5) 0; }
.mp-line { position: relative; display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 9.5rem), 1fr)); gap: var(--s-2); margin: var(--s-3) 0 var(--s-4); padding: 0; list-style: none; }
.mp-line li { display: flex; }
.mp-btn { position: relative; display: flex; flex-direction: column; align-items: flex-start; gap: .15rem; width: 100%; min-height: 3.5rem; padding: var(--s-2) var(--s-3) var(--s-2) 1.9rem; border: 1px solid var(--line-strong); border-radius: var(--radius); background: var(--bg); color: var(--navy); font: inherit; text-align: left; cursor: pointer; }
.mp-btn::before { content: ""; position: absolute; left: .7rem; top: 1rem; width: .55rem; height: .55rem; border-radius: 50%; border: 2px solid var(--navy); background: var(--bg); }
.mp-btn[aria-pressed="true"] { background: var(--navy); border-color: var(--navy); color: var(--on-dark); }
.mp-btn[aria-pressed="true"]::before { background: var(--light-vol); border-color: var(--light-vol); }
.mp-date { font-weight: 800; font-variant-numeric: tabular-nums; }
.mp-title { font-size: var(--fs-small); }
.mp-panel { margin: 0 0 var(--s-4); padding: var(--s-3) var(--s-4); background: var(--surface); border-left: 4px solid var(--navy); border-radius: var(--radius-card); }
.mp-head { margin: 0 0 var(--s-3); font-size: 1.05rem; }
.mp-head:focus { outline: none; }
.mp-hd { font-variant-numeric: tabular-nums; color: var(--navy); }
.mp-head .kbasis { margin-left: var(--s-1); vertical-align: middle; }
.mp-qa { display: grid; gap: var(--s-2); margin: 0; }
.mp-row { display: grid; grid-template-columns: minmax(9rem, 14rem) 1fr; gap: var(--s-3); padding: var(--s-2) 0; border-top: 1px solid var(--line); }
.mp-row dt { font-weight: 700; font-size: var(--fs-small); }
.mp-row dd { margin: 0; max-width: var(--measure); }
.mp-row--niet dt { color: var(--warn); }
.mp-more { margin: var(--s-2) 0 0; font-size: var(--fs-small); }
.mp-note { font-size: var(--fs-small); color: var(--muted); max-width: var(--measure); }
@media (max-width: 40rem) {
  .mp-row { grid-template-columns: 1fr; gap: var(--s-1); }
  .mp-panel { padding: var(--s-3); }
}
@media (prefers-reduced-motion: no-preference) {
  .mp-btn { transition: background-color .15s ease, border-color .15s ease; }
  .mp.is-enhanced .mp-panel:not([hidden]) { animation: wz-in .25s ease-out; }
}

.mp-st { display: inline-block; margin: .1rem 0; padding: 0 .45rem; border: 1px solid currentColor; border-radius: 999px; font-size: .6875rem; font-weight: 700; letter-spacing: .04em; line-height: 1.6; text-transform: uppercase; white-space: nowrap; }
.mp-st--nu { color: var(--ok); background: var(--ok-pale); }
.mp-st--later { color: var(--muted); background: var(--bg); border-style: dashed; }
.mp-head .mp-st { margin-left: var(--s-1); vertical-align: middle; }
.mp--status .mp-line { grid-template-columns: repeat(auto-fit, minmax(min(100%, 11rem), 1fr)); gap: var(--s-3); }
.mp--status .mp-line::before { content: ""; position: absolute; left: var(--s-4); right: var(--s-4); top: 1.25rem; height: 2px; background: var(--line-strong); }
.mp--status .mp-btn { gap: .3rem; min-height: 6.5rem; padding-top: var(--s-3); }
.mp--status .mp-btn::before { top: 1.05rem; }
.mp--status .mp-date { font-size: 1.25rem; line-height: 1.2; }
.mp-li--nu .mp-btn::before { background: var(--ok); border-color: var(--ok); }
.mp-legend { display: flex; flex-wrap: wrap; gap: var(--s-1) var(--s-4); margin: var(--s-2) 0 0; padding: 0; list-style: none; font-size: var(--fs-small); font-weight: 650; color: var(--ink); }
.mp--status .mp-hd { display: block; font-size: var(--fs-small); font-weight: 700; color: var(--muted); }
.mp-tags { display: flex; flex-wrap: wrap; gap: .15rem .7rem; font-size: .75rem; font-weight: 600; }
.mp-tag::before { content: ""; display: inline-block; width: .6rem; height: .6rem; margin-right: .3rem; border-radius: 2px; }
.mp-tag--1::before { background: var(--blue); }
.mp-btn[aria-pressed="true"] .mp-tag--1::before { background: var(--on-dark); }
.mp-tag--2::before { background: var(--light-vol); box-shadow: inset 0 0 0 1px #8a6d12; }
@media (max-width: 40rem) {
  .mp--status .mp-line { grid-template-columns: 1fr; gap: var(--s-2); }
  .mp--status .mp-line::before { left: 1.1rem; right: auto; top: var(--s-3); bottom: var(--s-3); width: 2px; height: auto; }
  .mp--status .mp-btn { min-height: 0; }
}

.ux { margin: var(--s-5) 0; }
.ux-note { margin: var(--s-2) 0 0; font-size: var(--fs-small); color: var(--muted); max-width: var(--measure); }

.ux-sch { --ux-gap: var(--s-5); display: grid; justify-items: center; gap: var(--ux-gap); padding: var(--s-5) var(--s-4); background: var(--surface); border-radius: var(--radius-card); }
.ux-sch-top, .ux-sch-core, .ux-sch-g { position: relative; }
.ux-sch-top { margin: 0; padding: var(--s-2) var(--s-5); font-weight: 800; color: var(--navy); background: var(--bg); border: 2px solid var(--navy); border-radius: var(--radius); }
.ux-sch-top::after, .ux-sch-core::before { content: ""; position: absolute; left: 50%; width: 2px; height: var(--ux-gap); background: var(--line-strong); }
.ux-sch-top::after { top: 100%; }
.ux-sch-core::before { bottom: 100%; }
.ux-sch-groups { position: relative; display: grid; gap: var(--s-3); width: 100%; margin: 0; padding: 0; list-style: none; }
.ux-sch-g { display: flex; flex-direction: column; gap: .2rem; padding: var(--s-3); background: var(--bg); border: 1px solid var(--line); border-top: 4px solid var(--line-strong); border-radius: var(--radius); }
.ux-sch-g--accent { border-top-color: var(--light-vol); box-shadow: 0 0 0 1px #d9b54a; }
.ux-sch-gl { font-weight: 800; color: var(--navy); }
.ux-sch-gi { font-size: var(--fs-small); color: var(--text); }
.ux-sch-core { width: 100%; max-width: 36rem; padding: var(--s-4); color: var(--on-dark); text-align: center; background: var(--navy); border-radius: var(--radius-card); }
.ux-sch-cl { margin: 0; font-size: 1.3rem; font-weight: 800; letter-spacing: .03em; }
.ux-sch-ct { margin: .25rem auto var(--s-3); max-width: 30rem; font-size: var(--fs-small); color: var(--on-dark-soft); }
.ux-sch-cycle { display: flex; flex-wrap: wrap; justify-content: center; gap: var(--s-2) var(--s-5); margin: 0; padding: 0; list-style: none; }
.ux-sch-cycle li { position: relative; padding: .15rem .65rem; font-size: var(--fs-small); font-weight: 650; border: 1px solid var(--on-dark-muted); border-radius: 999px; }
.ux-sch-cycle li + li::before { content: "\2192"; position: absolute; left: -1.2rem; color: var(--light-vol); }
.ux-sch-cycle li:last-child::after { content: "\21BA"; margin-left: .45rem; color: var(--light-vol); }
@media (min-width: 40rem) {
  .ux-sch-groups--2 { grid-template-columns: repeat(2, 1fr); --n: 2; }
  .ux-sch-groups--3 { grid-template-columns: repeat(3, 1fr); --n: 3; }
  .ux-sch-groups--4 { grid-template-columns: repeat(4, 1fr); --n: 4; }
  .ux-sch-groups::before, .ux-sch-groups::after { content: ""; position: absolute; left: calc((100% - (var(--n) - 1) * var(--s-3)) / (2 * var(--n))); right: calc((100% - (var(--n) - 1) * var(--s-3)) / (2 * var(--n))); height: 2px; background: var(--line-strong); }
  .ux-sch-groups::before { top: calc(var(--ux-gap) / -2); }
  .ux-sch-groups::after { bottom: calc(var(--ux-gap) / -2); }
  .ux-sch-g::before, .ux-sch-g::after { content: ""; position: absolute; left: 50%; width: 2px; height: calc(var(--ux-gap) / 2); background: var(--line-strong); }
  .ux-sch-g::before { bottom: 100%; margin-bottom: 4px; }
  .ux-sch-g::after { top: 100%; }
  .ux-sch-top::after { height: calc(var(--ux-gap) / 2); }
  .ux-sch-core::before { height: calc(var(--ux-gap) / 2); }
}

.ux-vgl { display: grid; gap: var(--s-3); }
.ux-vgl-card { display: grid; align-content: start; padding: var(--s-3) var(--s-4); background: var(--bg); border: 1px solid var(--line); border-top: 4px solid var(--blue); border-radius: var(--radius); }
.ux-vgl-card--2 { border-top-color: var(--light-vol); }
.ux-vgl-card--3 { border-top-color: var(--c-dali); }
.ux-vgl-h { margin: 0; padding-bottom: var(--s-2); font-size: 1.15rem; color: var(--navy); }
.ux-vgl-s { display: block; margin-top: .1rem; font-size: var(--fs-small); font-weight: 400; color: var(--muted); }
.ux-vgl-h .kbasis { margin: .4rem 0 0; }
.ux-vgl-row { margin: 0; padding: var(--s-2) 0; border-top: 1px solid var(--line); }
.ux-vgl-row dt { font-size: var(--fs-small); font-weight: 700; color: var(--muted); }
.ux-vgl-row dd { margin: .15rem 0 0; }
.ux-vgl-c { margin: var(--s-4) 0 0; padding: var(--s-3) var(--s-4); max-width: var(--measure); background: var(--warn-pale); border-left: 4px solid var(--warn); border-radius: 0 var(--radius) var(--radius) 0; }
.ux-vgl-c strong { color: var(--ink); }
@media (min-width: 44rem) {
  .ux-vgl { grid-template-columns: repeat(auto-fit, minmax(0, 1fr)); column-gap: var(--s-4); }
  .ux-vgl-card { grid-template-rows: subgrid; row-gap: 0; }
  .ux-vgl--r2 .ux-vgl-card { grid-row: span 3; }
  .ux-vgl--r3 .ux-vgl-card { grid-row: span 4; }
  .ux-vgl--r4 .ux-vgl-card { grid-row: span 5; }
  .ux-vgl--r5 .ux-vgl-card { grid-row: span 6; }
  .ux-vgl--r6 .ux-vgl-card { grid-row: span 7; }
}

.ux-sc { padding: var(--s-4); background: var(--surface); border-radius: var(--radius-card); }
.ux-sc-scale, .ux-sc-bar { display: grid; grid-template-columns: repeat(4, 1fr); gap: 3px; }
.ux-sc-k { display: flex; flex-direction: column; align-items: center; text-align: center; font-size: .75rem; line-height: 1.3; color: var(--muted); }
.ux-sc-k b { font-size: 1.2rem; color: var(--navy); }
.ux-sc-row { margin-top: var(--s-4); padding-top: var(--s-3); border-top: 1px solid var(--line-strong); }
.ux-sc-rl { margin: 0 0 var(--s-2); font-weight: 800; color: var(--ink); }
.ux-sc-marks { display: grid; gap: var(--s-3); margin: 0; padding: 0; list-style: none; }
.ux-sc-m { display: grid; gap: .3rem; }
.ux-sc-ml { font-size: var(--fs-small); }
.ux-sc-seg { padding: .2rem 0; font-size: .75rem; font-weight: 700; text-align: center; color: var(--muted); background: var(--bg); border: 1px solid var(--line); }
.ux-sc-seg.is-ok { color: var(--ok); background: var(--ok-pale); border-color: var(--ok); }

.ux-l { display: grid; gap: var(--s-3); margin: 0; padding: 0; list-style: none; }
.ux-li { padding: var(--s-3) var(--s-4); background: var(--bg); border: 1px solid var(--line); border-left: 4px solid var(--warn); border-radius: var(--radius); }
.ux-claim { margin: 0 0 .3rem; font-weight: 700; color: var(--ink); }
.ux-ans { margin: 0 0 .4rem; max-width: var(--measure); }
.ux-ans strong { color: var(--navy); }
.ux-li .kbasis { margin: 0; }

.ux-leg { display: grid; gap: var(--s-2); margin: 0; }
.ux-leg-i { display: grid; align-content: start; gap: .3rem; padding: var(--s-2) var(--s-3); background: var(--bg); border: 1px solid var(--line); border-radius: var(--radius); }
.ux-leg-i dt .kbasis { margin: 0; }
.ux-leg-i dd { margin: 0; font-size: var(--fs-small); }
.ux-bron { display: grid; gap: var(--s-3); margin: 0; padding: 0; list-style: none; }
.ux-b { padding: var(--s-3) var(--s-4); background: var(--bg); border: 1px solid var(--line); border-radius: var(--radius); }
.ux-bt { margin: 0 0 .2rem; font-weight: 700; }
.ux-bt a::after { content: "\00a0\2197"; }
.ux-bm { margin: 0 0 .35rem; font-size: var(--fs-small); color: var(--muted); }
.ux-bx { margin: 0 0 .35rem; font-size: var(--fs-small); max-width: var(--measure); }
.ux-bc { margin: 0; font-size: .8125rem; color: var(--muted); }
@media (min-width: 44rem) {
  .ux-leg { grid-template-columns: repeat(auto-fit, minmax(15rem, 1fr)); }
  .ux-bron { grid-template-columns: repeat(2, 1fr); }
}

.ux-st { --ux-st-pad: 2.75rem; position: relative; display: grid; gap: var(--s-3); margin: 0; padding: 0 0 0 var(--ux-st-pad); list-style: none; }
.ux-st-step { position: relative; display: grid; gap: var(--s-2); min-width: 0; }
.ux-st-step:not(:last-child)::before { content: ""; position: absolute; left: calc(1rem - 1px - var(--ux-st-pad)); top: calc(var(--s-3) + 2rem); bottom: calc(-2 * var(--s-3)); width: 2px; background: var(--line-strong); }
.ux-st-card { position: relative; padding: var(--s-3) var(--s-4); background: var(--bg); border: 1px solid var(--line); border-radius: var(--radius-card); }
.ux-st-card--vraag { background: var(--blue-pale); border-color: var(--blue); }
.ux-st-t { margin: 0; font-weight: 700; color: var(--ink); }
.ux-st-n { position: absolute; left: calc(-1 * var(--ux-st-pad)); top: var(--s-3); display: grid; place-items: center; width: 2rem; height: 2rem; font-size: var(--fs-small); font-weight: 700; color: var(--on-dark); background: var(--navy); border-radius: 50%; box-shadow: 0 0 0 4px var(--bg); }
.ux-st-card--vraag .ux-st-n { background: var(--blue); }
.ux-st-x { margin: .35rem 0 0; font-size: var(--fs-small); max-width: var(--measure); }
.ux-st-chips { display: flex; flex-wrap: wrap; gap: .35rem; margin: var(--s-2) 0 0; padding: 0; list-style: none; }
.ux-st-chips li { padding: .15rem .6rem; font-size: var(--fs-small); background: var(--surface); border: 1px solid var(--line-strong); border-radius: 999px; }
.ux-st-exit { margin: var(--s-2) 0 0; padding: var(--s-2) var(--s-3); font-size: var(--fs-small); background: var(--surface); border-left: 3px solid var(--line-strong); border-radius: var(--radius); }
.ux-st-next { margin: 0; font-size: .75rem; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; color: var(--navy); }
.ux-st-side { padding: var(--s-3) var(--s-4); font-size: var(--fs-small); background: var(--blue-pale); border-left: 4px solid var(--blue); border-radius: var(--radius); }
.ux-st-sh { margin: 0 0 .3rem; font-weight: 700; color: var(--navy); }
.ux-st-side ul { margin: 0; padding-left: 1.1rem; }
.ux-st-sx { margin: .4rem 0 0; font-weight: 600; }
.ux-st-sn { margin: var(--s-2) 0 0; padding-top: var(--s-2); border-top: 1px solid var(--line-strong); }
.ux-st-split { display: grid; gap: var(--s-3); }
.ux-st-b { padding: var(--s-3); background: var(--surface); border-top: 4px solid var(--ok); border-radius: var(--radius-card); }
.ux-st-b--nee { border-top-color: var(--muted); }
.ux-st-bl { display: inline-block; margin: 0 0 var(--s-2); padding: .1rem .65rem; font-size: .75rem; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; color: var(--on-dark); background: var(--ok); border-radius: 999px; }
.ux-st-b--nee .ux-st-bl { background: var(--muted); }
.ux-st-bs { display: grid; gap: var(--s-2); margin: 0; padding: 0; list-style: none; }
.ux-st-bs li { position: relative; padding: var(--s-2) var(--s-3); background: var(--bg); border: 1px solid var(--line); border-radius: var(--radius); }
.ux-st-bs li + li::before { content: ""; position: absolute; left: 1.25rem; bottom: 100%; width: 2px; height: var(--s-2); background: var(--line-strong); }
@media (min-width: 44rem) {
  .ux-st-step.has-side { grid-template-columns: minmax(0, 1fr) minmax(13rem, 17rem); align-items: start; }
  .ux-st-step.has-side .ux-st-next { grid-column: 1 / -1; }
  .ux-st-split { grid-template-columns: 1fr 1fr; align-items: start; }
}
@media print { .ux-st-side, .ux-st-b { background: none; } }

.facts-list { display: grid; grid-template-columns: 1fr; gap: 0; margin: var(--s-3) 0; max-width: var(--measure); border-top: 1px solid var(--line-strong); }
.facts-list > div { display: grid; grid-template-columns: 1fr; gap: .1rem var(--s-4); padding: var(--s-2) 0; border-bottom: 1px solid var(--line); }
.facts-list dt { font-weight: 600; color: var(--ink); }
.facts-list dd { margin: 0; font-variant-numeric: tabular-nums; }
@media (min-width: 40rem) { .facts-list > div { grid-template-columns: minmax(12rem, 1fr) 1fr; } }
@media print { .ux-sch, .ux-sc { background: none; } }

.mp-line li { position: relative; }
.mp--status .mp-line { margin-bottom: var(--s-6); }
.mp--status .mp-btn { position: relative; z-index: 1; }
.mp--status .mp-li--nu::before { content: ""; position: absolute; left: 0; right: calc(-1 * var(--s-3)); top: 1.25rem; height: 2px; background: var(--ok); }
.mp--status .mp-li--nu:last-child::before { right: 0; }
.mp-now { position: absolute; z-index: 2; left: calc(-1 * var(--s-3) / 2); top: 100%; margin-top: .55rem; transform: translateX(-50%); padding: .1rem .55rem; font-size: .6875rem; font-weight: 700; letter-spacing: .03em; text-transform: uppercase; white-space: nowrap; color: var(--on-dark); background: var(--ok); border-radius: 999px; }
.mp-now::before { content: ""; position: absolute; left: 50%; bottom: 100%; margin-left: -5px; border: 5px solid transparent; border-bottom-color: var(--ok); }
@media (max-width: 40rem) {
  .mp--status .mp-li--nu::before { left: 1.1rem; right: auto; top: 0; bottom: calc(-1 * var(--s-2)); width: 2px; height: auto; }
  .mp--status .mp-li--nu:last-child::before { bottom: 0; }
  .mp--status .mp-li--next { flex-direction: column; align-items: stretch; }
  .mp-now { position: static; align-self: flex-start; margin: 0 0 var(--s-2) 2.2rem; transform: none; }
  .mp-now::before { display: none; }
}

.wz-prog { height: 4px; margin: 0 0 var(--s-3); background: var(--line); border-radius: 2px; overflow: hidden; }
.wz-prog-fill { display: block; width: 0; height: 100%; background: var(--navy); border-radius: 2px; }

.ux-sch-cycle li { padding: 0; border: 0; }
.ux-cy { display: inline-block; padding: .15rem .65rem; font: inherit; font-size: var(--fs-small); font-weight: 650; line-height: 1.5; color: inherit; background: transparent; border: 1px solid var(--on-dark-muted); border-radius: 999px; }
button.ux-cy { cursor: pointer; }
.ux-cy[aria-pressed="true"] { color: var(--navy); background: var(--light-vol); border-color: var(--light-vol); }
button.ux-cy:focus-visible { outline: 2px solid var(--light-vol); outline-offset: 2px; }
.ux-sch-cyt { margin: var(--s-3) 0 0; padding: 0 0 0 1.2rem; max-width: var(--measure); font-size: var(--fs-small); }
.ux-sch-cyt li { margin: 0 0 .2rem; }
.ux.is-enhanced .ux-sch-cyt { min-height: 2.9em; margin-top: var(--s-2); padding: 0; list-style: none; text-align: center; }
.ux.is-enhanced .ux-sch-cyt li { margin: 0; }
.ux-sch-flow { display: none; position: absolute; left: 50%; top: 100%; transform: translate(-50%, .1rem); font-size: .75rem; line-height: 1; font-weight: 800; color: var(--ok); }
.ux-sch[data-dir="in"] .ux-sch-flow, .ux-sch[data-dir="out"] .ux-sch-flow { display: block; }
.ux-sch[data-dir="in"] .ux-sch-flow::before { content: "\25BC"; }
.ux-sch[data-dir="out"] .ux-sch-flow { color: var(--blue); }
.ux-sch[data-dir="out"] .ux-sch-flow::before { content: "\25B2"; }
.ux-sch[data-dir="in"] .ux-sch-g::after, .ux-sch[data-dir="in"] .ux-sch-groups::after, .ux-sch[data-dir="in"] .ux-sch-core::before { background: var(--ok); }
.ux-sch[data-dir="out"] .ux-sch-g::after, .ux-sch[data-dir="out"] .ux-sch-groups::after, .ux-sch[data-dir="out"] .ux-sch-core::before { background: var(--blue); }
.ux-sch[data-dir="core"] .ux-sch-core, .ux-sch[data-dir="user"] .ux-sch-core { box-shadow: 0 0 0 3px var(--light-vol); }
.ux-sch[data-dir="user"] .ux-sch-cl::after { content: " \2192"; color: var(--light-vol); }
@media (max-width: 40rem) {
  .ux-sch-flow { position: static; transform: none; margin-left: .4rem; }
  .ux-sch[data-dir="in"] .ux-sch-flow, .ux-sch[data-dir="out"] .ux-sch-flow { display: inline; }
}

.ux-kern { display: grid; gap: var(--s-3); margin: 0; padding: 0; list-style: none; }
.ux-kt { display: grid; gap: .2rem; align-content: start; padding: var(--s-3) var(--s-4); background: var(--surface); border-left: 4px solid var(--navy); border-radius: 0 var(--radius) var(--radius) 0; }
.ux-kv { font-size: 1.5rem; line-height: 1.15; color: var(--navy); font-variant-numeric: tabular-nums; }
.ux-kl { font-weight: 700; }
.ux-kx { font-size: var(--fs-small); color: var(--muted); }
.ux-kt .kbasis { margin: .25rem 0 0; }
@media (min-width: 40rem) { .ux-kern { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 64rem) { .ux-kern { grid-template-columns: repeat(4, 1fr); } }

.ux-ov { display: grid; gap: var(--s-2); }
.ux-ov-s { padding: var(--s-3) var(--s-4); background: var(--bg); border: 1px solid var(--line); border-radius: var(--radius); }
.ux-ov-l { border-top: 4px solid var(--blue); }
.ux-ov-r { border-top: 4px solid var(--light-vol); }
.ux-ov-b { background: var(--surface); border-top: 4px solid var(--blue); border-bottom: 4px solid var(--light-vol); }
.ux-ov-h { margin: 0 0 var(--s-2); font-size: 1rem; color: var(--navy); }
.ux-ov-s ul { margin: 0; padding-left: 1.1rem; font-size: var(--fs-small); }
.ux-ov-s li { margin: 0 0 .3rem; }
@media (min-width: 48rem) {
  .ux-ov { grid-template-columns: 1fr 1.15fr 1fr; gap: 0; align-items: stretch; }
  .ux-ov-l { border-right: 0; border-radius: var(--radius) 0 0 var(--radius); }
  .ux-ov-r { border-left: 0; border-radius: 0 var(--radius) var(--radius) 0; }
  .ux-ov-b { position: relative; z-index: 1; margin: calc(-1 * var(--s-2)) 0; border: 1px solid var(--line-strong); border-top: 4px solid var(--blue); border-bottom: 4px solid var(--light-vol); border-radius: var(--radius); box-shadow: 0 2px 10px rgba(11, 31, 77, .08); }
}

button.ux-claim { display: flex; justify-content: space-between; align-items: center; gap: var(--s-3); width: 100%; margin: 0; padding: 0; font: inherit; font-weight: 700; color: var(--ink); text-align: left; background: transparent; border: 0; cursor: pointer; }
button.ux-claim:focus-visible { outline: 2px solid var(--blue); outline-offset: 4px; }
.ux-li.is-open button.ux-claim { margin-bottom: .4rem; }
.ux-claim-hint { flex: none; padding: .1rem .55rem; font-size: .75rem; font-weight: 700; color: var(--navy); border: 1px solid var(--line-strong); border-radius: 999px; }
.ux-li.is-open .ux-claim-hint { display: none; }
.ux-ans-wrap .kbasis { margin: 0; }
.ux-l-all { display: inline-flex; align-items: center; min-height: 2.5rem; margin: 0 0 var(--s-3); padding: 0 var(--s-3); font: inherit; font-size: var(--fs-small); font-weight: 600; color: var(--navy); background: var(--bg); border: 1px solid var(--line-strong); border-radius: var(--radius); cursor: pointer; }
.ux-l-all:focus-visible { outline: 2px solid var(--blue); outline-offset: 2px; }

.ux-sc-bar { align-items: end; }
.ux-sc-seg:nth-child(2) { padding-top: .45rem; }
.ux-sc-seg:nth-child(3) { padding-top: .7rem; }
.ux-sc-seg:nth-child(4) { padding-top: .95rem; }
.ux-sc-k { font: inherit; background: transparent; border: 0; border-radius: var(--radius); }
button.ux-sc-k { cursor: pointer; }
.ux-sc-k[aria-pressed="true"] { background: var(--bg); box-shadow: inset 0 0 0 2px var(--navy); }
button.ux-sc-k:focus-visible { outline: 2px solid var(--blue); outline-offset: 2px; }
.ux-sc[data-hi="1"] .ux-sc-seg:nth-child(1), .ux-sc[data-hi="2"] .ux-sc-seg:nth-child(2), .ux-sc[data-hi="3"] .ux-sc-seg:nth-child(3), .ux-sc[data-hi="4"] .ux-sc-seg:nth-child(4) { outline: 2px solid var(--navy); outline-offset: -2px; }

@media (prefers-reduced-motion: no-preference) {
  .wz-prog-fill { transition: width .3s ease; }
  .ux-cy { transition: background-color .2s ease, color .2s ease, border-color .2s ease; }
  .ux-sch-g::after, .ux-sch-groups::after, .ux-sch-core::before { transition: background-color .3s ease; }
  .ux-sch-core { transition: box-shadow .3s ease; }
  .ux.is-enhanced .ux-sch-cyt li:not([hidden]) { animation: wz-in .3s ease-out; }
  .ux.is-enhanced .ux-ans-wrap:not([hidden]) { animation: wz-in .25s ease-out; }
  .ux-sc-seg, .ux-sc-k { transition: outline-color .15s ease, box-shadow .15s ease; }
  .ux.is-enhanced .ux-sc .ux-sc-seg.is-ok { transform: scaleX(.12); transform-origin: left; transition: transform .6s ease; }
  .ux.is-enhanced .ux-sc.is-seen .ux-sc-seg.is-ok { transform: none; }
}

.kl, .nd { margin: var(--s-5) 0; }
.kl [hidden], .nd [hidden] { display: none !important; }
.kl-modes, .nd-pick { display: flex; flex-wrap: wrap; gap: var(--s-2); margin: var(--s-3) 0; }
.kl-mode, .kl-btn, .nd-btn { min-height: 2.75rem; padding: var(--s-1) var(--s-3); border: 1px solid var(--line-strong); border-radius: var(--radius); background: var(--bg); color: var(--navy); font: inherit; font-size: var(--fs-small); font-weight: 600; cursor: pointer; }
.kl-mode[aria-pressed="true"], .kl-btn[aria-pressed="true"], .nd-btn[aria-pressed="true"] { background: var(--navy); border-color: var(--navy); color: var(--on-dark); }
.kl-btn:disabled { opacity: .45; cursor: default; }
.kl-mode:focus-visible, .kl-btn:focus-visible, .nd-btn:focus-visible { outline: 2px solid var(--blue); outline-offset: 2px; }
.kl-stage, .nd-stage { max-width: 34rem; margin: var(--s-2) 0; padding: var(--s-2); background: var(--surface); border-radius: var(--radius-card); }
.kl-svg, .nd-svg { display: block; width: 100%; height: auto; }
.kl-t, .nd-t { font-size: 11px; text-anchor: middle; fill: var(--ink); font-weight: 600; }
.kl-t--s, .nd-t--s { font-size: 9.5px; font-weight: 400; fill: var(--muted); }
.kl-box, .nd-box { fill: var(--bg); stroke: var(--line-strong); stroke-width: 1.5; }
.kl-bus, .nd-bus { fill: none; stroke: var(--line-strong); stroke-width: 3; }
.kl-wire { stroke: var(--line-strong); stroke-width: 2; }
.kl-lum { fill: var(--bg); stroke: var(--line-strong); }
.kl-led { stroke: none; }
.kl-led--w { fill: #f2b54a; }
.kl-led--c { fill: #9fc3ff; }
.kl-led--one { fill: #f4d58d; display: none; }
.kl-beam { fill: #f8e3b0; opacity: .85; }
.kl[data-tc="warm"] .kl-beam { fill: #f6c46a; }
.kl[data-tc="neutraal"] .kl-beam { fill: #f8e7bf; }
.kl[data-tc="koel"] .kl-beam { fill: #dce9ff; }
.kl[data-tc="warm"] .kl-led--c, .kl[data-tc="koel"] .kl-led--w { opacity: .25; }
.kl[data-level="25"] .kl-beam { opacity: .3; }
.kl[data-level="50"] .kl-beam { opacity: .55; }
.kl[data-mode="dt6"] .kl-led--w, .kl[data-mode="dt6"] .kl-led--c, .kl[data-mode="dt6"] .kl-wire--c, .kl[data-mode="dt6"] .kl-lw, .kl[data-mode="dt6"] .kl-lc { display: none; }
.kl[data-mode="dt6"] .kl-led--one { display: inline; }
.kl[data-mode="dt8"] .kl-lo { display: none; }
.kl[data-mode="dt6"] .kl-beam { fill: #f8e3b0; }
.kl.ix-signal .kl-bus, .nd.ix-signal .nd-bus { stroke: var(--c-flow); }
.kl.ix-decide .kl-driver, .nd.ix-decide .nd-driver { stroke: var(--navy); stroke-width: 3; }
.kl-controls { display: grid; gap: var(--s-2); margin: var(--s-3) 0; }
.kl-row { display: flex; flex-wrap: wrap; align-items: center; gap: var(--s-2); }
.kl-rl { min-width: 9rem; font-size: var(--fs-small); font-weight: 700; }
.kl-note6 { margin: 0; font-size: var(--fs-small); color: var(--muted); }
.kl:not([data-mode="dt6"]) .kl-note6 { display: none; }
.kl-state { min-height: 1.5em; font-weight: 600; }
.kl-key, .nd-list { margin: var(--s-3) 0 0; padding-left: 1.2rem; max-width: var(--measure); }
.kl-key li, .nd-list li { margin: 0 0 var(--s-1); }
.nd.is-enhanced .nd-list { padding-left: 0; list-style: none; }
.nd-power { fill: none; stroke: var(--navy); stroke-width: 3; }
.nd[data-state="uitval"] .nd-power { stroke: var(--line-strong); stroke-dasharray: 5 5; }
.nd-feed { stroke: var(--line-strong); stroke-width: 3; }
.nd-bat { fill: var(--bg); stroke: var(--line-strong); stroke-width: 1.5; }
.nd-bat-cap { stroke: var(--line-strong); stroke-width: 3; }
.nd-lamp { fill: var(--bg); stroke: var(--line-strong); }
.nd-beam { fill: var(--light-vol); opacity: 0; }
.nd-result { fill: var(--bg); stroke: var(--line); }
.nd-rt { fill: var(--muted); }
.nd[data-state="uitval"] .nd-feed, .nd.is-done[data-state$="test"] .nd-feed { stroke: #d9a300; }
.nd[data-state="uitval"] .nd-beam, .nd.is-done[data-state$="test"] .nd-beam { opacity: .85; }
.nd[data-state="uitval"] .nd-lamp, .nd.is-done[data-state$="test"] .nd-lamp { fill: var(--light-vol); }
.nd.is-done .nd-result { stroke: var(--navy); stroke-width: 2; }
.nd.is-done .nd-rt { fill: var(--navy); font-weight: 700; }
@media (prefers-reduced-motion: no-preference) {
  .kl-beam, .kl-led, .nd-beam, .nd-feed, .kl-bus, .nd-bus { transition: opacity .3s ease, fill .3s ease, stroke .2s ease; }
  .kl-mode, .kl-btn, .nd-btn { transition: background-color .15s ease, border-color .15s ease; }
}

.sg { margin: var(--s-5) 0; }
.sg [hidden] { display: none !important; }
.sg-pick { display: flex; flex-wrap: wrap; gap: var(--s-2); margin: var(--s-3) 0; }
.sg-btn { min-height: 2.75rem; padding: var(--s-1) var(--s-3); border: 1px solid var(--line-strong); border-radius: var(--radius); background: var(--bg); color: var(--navy); font: inherit; font-size: var(--fs-small); font-weight: 600; cursor: pointer; }
.sg-btn[aria-pressed="true"] { background: var(--navy); border-color: var(--navy); color: var(--on-dark); }
.sg-btn:focus-visible { outline: 2px solid var(--blue); outline-offset: 2px; }
.sg-stage { max-width: 34rem; margin: var(--s-2) 0; padding: var(--s-2); background: var(--surface); border-radius: var(--radius-card); }
.sg-svg { display: block; width: 100%; height: auto; }
.sg-t { font-size: 11px; text-anchor: middle; fill: var(--ink); font-weight: 600; }
.sg-t--s { font-size: 9.5px; font-weight: 400; }
.sg-lab { fill: var(--muted); font-weight: 600; }
.sg-cloud, .sg-fw, .sg-jump, .sg-dev { fill: var(--bg); stroke: var(--line-strong); stroke-width: 1.5; }
.sg-fw { stroke: var(--navy); }
.sg-it, .sg-ot, .sg-one { fill: none; stroke: var(--line-strong); stroke-width: 1.5; stroke-dasharray: 5 4; }
.sg-ot { stroke: var(--c-ethernet); }
.sg-ctrl { stroke: var(--c-ethernet); }
.sg-l { fill: none; stroke-width: 2.5; }
.sg-l--open { stroke: var(--warn); stroke-dasharray: 6 4; }
.sg-l--fw { stroke: var(--navy); }
.sg-l--remote { stroke: var(--ok); }
.sg-warn { fill: var(--warn); font-weight: 700; }
.sg-ok { fill: var(--ok); font-weight: 700; text-anchor: end; }
.sg[data-state="plat"] .sg-it, .sg[data-state="plat"] .sg-ot, .sg[data-state="plat"] .sg-fw, .sg[data-state="plat"] .sg-jump, .sg[data-state="plat"] .sg-l--fw, .sg[data-state="plat"] .sg-l--remote, .sg[data-state="plat"] .sg-fw + text, .sg[data-state="plat"] .sg-jump + text { opacity: .15; }
.sg[data-state="plat"] .sg-lab, .sg[data-state="plat"] .sg-ok { opacity: 0; }
.sg:not([data-state="plat"]) .sg-one, .sg:not([data-state="plat"]) .sg-l--open, .sg:not([data-state="plat"]) .sg-warn { opacity: 0; }
.sg[data-state="gescheiden"] .sg-jump, .sg[data-state="gescheiden"] .sg-jump + text, .sg[data-state="gescheiden"] .sg-l--remote, .sg[data-state="gescheiden"] .sg-ok { opacity: .15; }
.sg-list { margin: var(--s-3) 0 0; padding-left: 1.2rem; max-width: var(--measure); }
.sg-list li { margin: 0 0 var(--s-1); }
.sg.is-enhanced .sg-list { padding-left: 0; list-style: none; }
@media (prefers-reduced-motion: no-preference) {
  .sg-svg * { transition: opacity .3s ease; }
  .sg-btn { transition: background-color .15s ease, border-color .15s ease; }
}

.rt { margin: var(--s-5) 0; }
.rt [hidden] { display: none !important; }
.rt-pick { display: flex; flex-wrap: wrap; gap: var(--s-2); margin: var(--s-3) 0; padding: 0; list-style: none; }
.rt-btn { display: inline-flex; align-items: center; gap: var(--s-2); min-height: 2.75rem; padding: var(--s-1) var(--s-3) var(--s-1) var(--s-1); border: 1px solid var(--line-strong); border-radius: 999px; background: var(--bg); color: var(--navy); font: inherit; font-size: var(--fs-small); font-weight: 600; text-align: left; cursor: pointer; }
.rt-btn[aria-pressed="true"] { background: var(--navy); border-color: var(--navy); color: var(--on-dark); }
.rt-n { display: inline-grid; place-items: center; flex: none; width: 1.8rem; height: 1.8rem; border: 1.5px solid currentColor; border-radius: 50%; font-size: .85rem; }
.rt-btn:focus-visible, .rt-next:focus-visible { outline: 2px solid var(--blue); outline-offset: 2px; }
.rt-stage { max-width: 34rem; margin: var(--s-2) 0; padding: var(--s-2); background: var(--surface); border-radius: var(--radius-card); }
.rt-svg { display: block; width: 100%; height: auto; }
.rt-room { fill: var(--bg); stroke: var(--line-strong); stroke-width: 2; }
.rt-win { stroke: #8fb4e8; stroke-width: 5; }
.rt-door { fill: none; stroke: var(--line-strong); stroke-width: 1.5; }
.rt-lum { fill: var(--bg); stroke: var(--navy); stroke-width: 1.5; }
.rt-zone { fill: #e6eefb; }
.rt-desk { fill: var(--surface); stroke: var(--line-strong); stroke-width: 1.5; }
.rt-person { fill: var(--muted); }
.rt-walk { fill: none; stroke: var(--muted); stroke-width: 1.5; stroke-dasharray: 3 4; }
.rt-grp { fill: none; stroke-width: 1.5; stroke-dasharray: 5 4; }
.rt-grp--a { stroke: #2f6fd6; }
.rt-grp--b { stroke: #0e7490; }
.rt-fill--a { fill: #2f6fd6; }
.rt-fill--b { fill: #0e7490; }
.rt-field { fill: rgba(11, 31, 77, .05); stroke: var(--navy); stroke-width: 1.2; stroke-dasharray: 4 4; }
.rt-sensor, .rt-key { fill: var(--navy); }
.rt-pool { fill: #f8e3b0; opacity: .9; }
.rt-pool--dim { opacity: .4; }
.rt-sun { fill: #f2b54a; }
.rt-rays { stroke: #f2b54a; stroke-width: 2; stroke-linecap: round; }
.rt-box { fill: var(--bg); stroke: var(--navy); stroke-width: 1.5; }
.rt-t { font-size: 14px; font-weight: 600; text-anchor: middle; fill: var(--ink); }
.rt-bus { fill: none; stroke: var(--navy); stroke-width: 2; }
.rt-link { fill: none; stroke: var(--navy); stroke-width: 1.5; stroke-dasharray: 5 4; }
.rt-check { fill: none; stroke: var(--ok); stroke-width: 2.5; stroke-linecap: round; stroke-linejoin: round; }
.rt-doc { fill: var(--bg); stroke: var(--ink); stroke-width: 1.5; }
.rt-docline { stroke: var(--line-strong); stroke-width: 1.5; }
.rt.is-enhanced .rt-l { opacity: 0; }
.rt.is-enhanced .rt-l.is-on { opacity: .45; }
.rt.is-enhanced .rt-l.is-now { opacity: 1; }
.rt-steps { max-width: var(--measure); margin: var(--s-3) 0 0; padding: 0; list-style: none; }
.rt-step { margin: 0 0 var(--s-3); padding: var(--s-3) var(--s-4); background: var(--bg); border: 1px solid var(--line); border-left: 4px solid var(--navy); border-radius: var(--radius-card); }
.rt-sn { margin: 0; color: var(--muted); font-size: var(--fs-small); font-weight: 600; }
.rt-q { margin: var(--s-1) 0 var(--s-2); font-size: 1.1rem; }
.rt-q:focus { outline: none; }
.rt-fix { margin: 0 0 var(--s-2); }
.rt-fix strong { color: var(--navy); }
.rt-more { margin: 0; }
.rt-nav { margin: var(--s-2) 0 0; }
.rt-next { min-height: 2.75rem; padding: var(--s-1) var(--s-4); border: 0; border-radius: var(--radius); background: var(--navy); color: var(--on-dark); font: inherit; font-weight: 600; cursor: pointer; }
@media (max-width: 40rem) {
  .rt-step { padding: var(--s-3); }
  .rt-pick { flex-wrap: nowrap; justify-content: space-between; gap: var(--s-1); }
  .rt-btn { justify-content: center; width: 2.75rem; padding: 0; border-radius: 50%; }
  .rt-n { border: 0; }
  .rt-bt { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
}
@media (prefers-reduced-motion: no-preference) {
  .rt-l { transition: opacity .3s ease; }
  .rt.is-enhanced .rt-step:not([hidden]) { animation: wz-in .25s ease-out; }
}
