/* RafLift konfigüratörü – teknik sipariş föyü. Tüm sınıflar rlc- önekli. */
.rlc-host { display: block; }
.rlc {
  --rlc-paper: var(--rl-paper, #F2EFE7);
  --rlc-paper-2: #FBFAF6;
  --rlc-ink: var(--rl-ink, #14213D);
  --rlc-line: var(--rl-line, #1F4E8C);
  --rlc-accent: var(--rl-accent, #FF5A1F);
  --rlc-accent-soft: rgba(255, 90, 31, .14);
  --rlc-muted: var(--rl-muted, #6B7280);
  --rlc-ok: var(--rl-ok, #2E7D32);
  --rlc-warn: #C2410C;
  --rlc-err: #C62828;
  --rlc-dark: var(--rl-dark, #0E1526);
  --rlc-display: var(--rl-font-display, 'Archivo'), 'Archivo', system-ui, sans-serif;
  --rlc-body: var(--rl-font-body, 'Inter'), 'Inter', system-ui, -apple-system, 'Segoe UI', sans-serif;
  --rlc-mono: var(--rl-font-mono, 'JetBrains Mono'), 'JetBrains Mono', ui-monospace, 'SFMono-Regular', Menlo, monospace;
  --rlc-rule: rgba(20, 33, 61, .18);
  --rlc-grid: rgba(31, 78, 140, .07);
  --rlc-r: 4px;
  --rlc-anth: #2E333B;
  --rlc-water: #9CC9E8;
  --rlc-glass: rgba(190, 220, 235, .55);
  --rlc-smoke: #2A2F38;
  --rlc-panel: #ECE8DE;
  --rlc-cab-in: #E4E0D6;
  --rlc-unit-bg: #F7F5EF;
  --rlc-wall: #EEEBE3;
  --rlc-counter: #CDBFA6;
  --rlc-safety: #D81B60;
  box-sizing: border-box;
  position: relative;
  color: var(--rlc-ink);
  font-family: var(--rlc-body);
  font-size: 15px;
  line-height: 1.45;
  background-color: var(--rlc-paper);
  background-image:
    linear-gradient(var(--rlc-grid) 1px, transparent 1px),
    linear-gradient(90deg, var(--rlc-grid) 1px, transparent 1px);
  background-size: 24px 24px;
  border: 1.5px solid var(--rlc-ink);
  outline: 1px solid var(--rlc-ink);
  outline-offset: 5px;
  margin: 6px;
  max-width: 1320px;
  margin-inline: auto;
}
.rlc *, .rlc *::before, .rlc *::after { box-sizing: border-box; }
.rlc [hidden] { display: none !important; }
.rlc-sr-only { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }
.rlc-mono, .rlc-svg-mono { font-family: var(--rlc-mono); font-variant-numeric: tabular-nums; }
.rlc em { font-style: normal; }

/* Antet */
.rlc-head { display: grid; grid-template-columns: 1fr auto; border-bottom: 1.5px solid var(--rlc-ink); }
.rlc-head-title { padding: 22px 26px 20px; }
.rlc-kicker { margin: 0 0 6px; font: 600 11px/1 var(--rlc-mono); letter-spacing: .14em; text-transform: uppercase; color: var(--rlc-accent); }
.rlc-h2 { margin: 0; font: 800 clamp(26px, 3.2vw, 38px)/1.05 var(--rlc-display); letter-spacing: -.02em; }
.rlc-lead { margin: 8px 0 0; color: var(--rlc-muted); max-width: 56ch; }
.rlc-tb { margin: 0; display: grid; grid-template-columns: repeat(2, minmax(110px, auto)); border-left: 1.5px solid var(--rlc-ink); }
.rlc-tb > div { padding: 10px 14px; border-bottom: 1px solid var(--rlc-ink); border-right: 1px solid var(--rlc-ink); }
.rlc-tb > div:nth-child(2n) { border-right: 0; }
.rlc-tb > div:nth-last-child(-n+2) { border-bottom: 0; }
.rlc-tb dt { font: 600 10px/1 var(--rlc-mono); letter-spacing: .12em; text-transform: uppercase; color: var(--rlc-muted); }
.rlc-tb dd { margin: 6px 0 0; font: 600 13px/1.1 var(--rlc-mono); }
.rlc-tb-stamp { display: inline-block; color: var(--rlc-accent); border: 1.5px solid currentColor; padding: 2px 6px; transform: rotate(-3deg); }

/* Izgara */
.rlc-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(360px, 440px); align-items: start; }
.rlc-form { min-width: 0; border-right: 1.5px solid var(--rlc-ink); }
.rlc-step { padding: 22px 26px 24px; border-bottom: 1px solid var(--rlc-ink); }
.rlc-step:last-child { border-bottom: 0; }
.rlc-step-h { display: flex; align-items: center; gap: 12px; margin: 0 0 16px; font: 700 19px/1.1 var(--rlc-display); letter-spacing: -.01em; }
.rlc-num { display: inline-grid; place-items: center; width: 34px; height: 26px; font: 700 12px/1 var(--rlc-mono); color: var(--rlc-paper); background: var(--rlc-ink); letter-spacing: .04em; }
.rlc-fs { border: 0; margin: 0 0 14px; padding: 0; min-width: 0; }
.rlc-label { display: block; padding: 0; margin: 0 0 8px; font: 600 12px/1.2 var(--rlc-mono); letter-spacing: .08em; text-transform: uppercase; color: var(--rlc-ink); }
.rlc-hint { text-transform: none; letter-spacing: 0; font-weight: 400; color: var(--rlc-muted); margin-left: 6px; }

/* Ürün kartları */
.rlc-products { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.rlc-card, .rlc-pkg { position: relative; display: flex; gap: 12px; align-items: flex-start; padding: 12px 14px; background: var(--rlc-paper-2); border: 1.5px solid var(--rlc-rule); border-radius: var(--rlc-r); cursor: pointer; transition: border-color .15s, box-shadow .15s, transform .15s; }
.rlc-card:hover, .rlc-pkg:hover { border-color: var(--rlc-line); }
.rlc-card-input { position: absolute; opacity: 0; width: 1px; height: 1px; pointer-events: none; }
.rlc-card:has(.rlc-card-input:checked), .rlc-pkg:has(.rlc-card-input:checked) { border-color: var(--rlc-ink); box-shadow: 4px 4px 0 var(--rlc-ink); }
.rlc-card:has(.rlc-card-input:focus-visible), .rlc-pkg:has(.rlc-card-input:focus-visible) { outline: 3px solid var(--rlc-accent); outline-offset: 2px; }
.rlc-card-ic { flex: 0 0 44px; height: 44px; display: grid; place-items: center; border: 1px solid var(--rlc-rule); background: var(--rlc-paper); }
.rlc-card-ic svg { width: 34px; height: 34px; fill: none; stroke: var(--rlc-ink); stroke-width: 2.2; stroke-linecap: round; stroke-linejoin: round; }
.rlc-card-ic .rlc-ic-thin { stroke-width: 1.4; stroke: var(--rlc-line); }
.rlc-card:has(:checked) .rlc-card-ic { background: var(--rlc-ink); }
.rlc-card:has(:checked) .rlc-card-ic svg { stroke: var(--rlc-paper); }
.rlc-card:has(:checked) .rlc-card-ic .rlc-ic-thin { stroke: var(--rlc-accent); }
.rlc-card-txt { display: flex; flex-direction: column; gap: 3px; min-width: 0; }
.rlc-card-name { font: 700 15px/1.15 var(--rlc-display); }
.rlc-card-desc { font-size: 12.5px; color: var(--rlc-muted); line-height: 1.35; }

/* Çipler */
.rlc-chips { display: flex; flex-wrap: wrap; gap: 6px; }
.rlc-chip { position: relative; display: inline-flex; cursor: pointer; }
.rlc-chip input { position: absolute; opacity: 0; width: 1px; height: 1px; }
.rlc-chip span { display: inline-flex; align-items: center; gap: 6px; min-height: 36px; padding: 6px 12px; font: 500 13.5px/1.2 var(--rlc-body); background: var(--rlc-paper-2); border: 1.5px solid var(--rlc-rule); border-radius: 999px; transition: background .15s, color .15s, border-color .15s; }
.rlc-chip span em { font-size: 11.5px; color: var(--rlc-muted); }
.rlc-chip:hover span { border-color: var(--rlc-line); }
.rlc-chip input:checked + span { background: var(--rlc-ink); color: var(--rlc-paper); border-color: var(--rlc-ink); }
.rlc-chip input:checked + span em { color: #FFB089; }
.rlc-chip input:focus-visible + span { outline: 3px solid var(--rlc-accent); outline-offset: 2px; }

/* Alanlar */
.rlc-row2 { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; margin-bottom: 10px; }
.rlc-field label { display: block; margin-bottom: 6px; font: 600 12px/1.2 var(--rlc-mono); letter-spacing: .08em; text-transform: uppercase; }
.rlc-field-inline { margin-top: 10px; max-width: 260px; }
.rlc-mm { display: flex; align-items: stretch; border: 1.5px solid var(--rlc-ink); background: var(--rlc-paper-2); border-radius: var(--rlc-r); }
.rlc-mm input { flex: 1; min-width: 0; width: 100%; border: 0; background: transparent; padding: 9px 10px; font: 600 17px/1 var(--rlc-mono); color: var(--rlc-ink); font-variant-numeric: tabular-nums; }
.rlc-mm input:focus { outline: none; }
.rlc-mm:focus-within { outline: 3px solid var(--rlc-accent); outline-offset: 1px; }
.rlc-mm > span { display: grid; place-items: center; padding: 0 10px; font: 600 12px/1 var(--rlc-mono); color: var(--rlc-muted); border-left: 1px solid var(--rlc-rule); }
.rlc-mm:has(input:disabled) { border-style: dashed; opacity: .75; }
.rlc-mm:has(input[aria-invalid="true"]) { border-color: var(--rlc-err); }
.rlc-range { margin: 5px 0 0; font: 11.5px/1.3 var(--rlc-mono); color: var(--rlc-muted); }
.rlc-err { margin: 4px 0 0; font-size: 12.5px; color: var(--rlc-err); font-weight: 600; min-height: 0; }
.rlc-err:empty { display: none; }
.rlc-check { display: flex; gap: 10px; align-items: flex-start; cursor: pointer; font-size: 14px; }
.rlc-check input { width: 18px; height: 18px; margin: 1px 0 0; accent-color: var(--rlc-ink); flex: none; }
.rlc-check .rlc-mono { color: var(--rlc-muted); font-size: 12px; }

/* Stepper */
.rlc-steppers { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); border-top: 1px solid var(--rlc-rule); border-left: 1px solid var(--rlc-rule); margin-bottom: 12px; }
.rlc-stepper { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 8px 10px; border-right: 1px solid var(--rlc-rule); border-bottom: 1px solid var(--rlc-rule); background: rgba(251, 250, 246, .7); }
.rlc-stepper-l { display: flex; flex-direction: column; min-width: 0; }
.rlc-stepper-name { font-weight: 600; font-size: 14px; }
.rlc-stepper-u { font-size: 11px; color: var(--rlc-muted); }
.rlc-stepper-c { display: flex; align-items: center; border: 1.5px solid var(--rlc-ink); border-radius: var(--rlc-r); background: var(--rlc-paper-2); flex: none; }
.rlc-stepper-c input { width: 42px; text-align: center; border: 0; background: transparent; font: 700 15px/1 var(--rlc-mono); color: var(--rlc-ink); padding: 6px 0; -moz-appearance: textfield; appearance: textfield; }
.rlc-stepper-c input::-webkit-outer-spin-button, .rlc-stepper-c input::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
.rlc-stepper-c input:focus-visible { outline: 3px solid var(--rlc-accent); outline-offset: -2px; }
.rlc-sbtn { width: 36px; height: 36px; border: 0; background: transparent; color: var(--rlc-ink); font: 600 20px/1 var(--rlc-mono); cursor: pointer; }
.rlc-sbtn:hover { background: var(--rlc-ink); color: var(--rlc-paper); }
.rlc-sbtn:focus-visible { outline: 3px solid var(--rlc-accent); outline-offset: -2px; }
.rlc-total { display: flex; justify-content: space-between; align-items: baseline; margin: 0; padding: 10px 12px; background: var(--rlc-ink); color: var(--rlc-paper); font: 600 12px/1 var(--rlc-mono); letter-spacing: .08em; text-transform: uppercase; }
.rlc-total output { font-size: 15px; letter-spacing: 0; text-transform: none; color: #FFB089; }

/* Paketler */
.rlc-pkgs { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
.rlc-pkg { flex-direction: column; gap: 8px; }
.rlc-pkg-top { display: flex; justify-content: space-between; align-items: baseline; gap: 6px; width: 100%; flex-wrap: wrap; }
.rlc-pkg-name { font: 800 18px/1 var(--rlc-display); }
.rlc-pkg-price { font-size: 11.5px; color: var(--rlc-muted); }
.rlc-pkg-feats { display: flex; flex-direction: column; gap: 3px; font-size: 12.5px; color: var(--rlc-muted); }
.rlc-pkg-feats span::before { content: '— '; color: var(--rlc-line); }
.rlc-pkg:has(:checked) .rlc-pkg-name { color: var(--rlc-accent); }
.rlc-disclose { display: flex; align-items: center; gap: 10px; width: 100%; margin-top: 12px; padding: 11px 14px; border: 1.5px dashed var(--rlc-ink); border-radius: var(--rlc-r); background: transparent; color: var(--rlc-ink); font: 700 14px/1 var(--rlc-display); cursor: pointer; text-align: left; }
.rlc-disclose:hover { background: var(--rlc-paper-2); }
.rlc-disclose:focus-visible { outline: 3px solid var(--rlc-accent); outline-offset: 2px; }
.rlc-disclose-state { font-size: 11px; font-weight: 500; color: var(--rlc-muted); margin-left: auto; }
.rlc-disclose-ic { font: 600 18px/1 var(--rlc-mono); transition: transform .2s; }
.rlc-disclose[aria-expanded="true"] { border-style: solid; background: var(--rlc-paper-2); }
.rlc-disclose[aria-expanded="true"] .rlc-disclose-ic { transform: rotate(45deg); }
.rlc-custom { border: 1.5px solid var(--rlc-ink); border-top: 0; padding: 14px; background: var(--rlc-paper-2); border-radius: 0 0 var(--rlc-r) var(--rlc-r); }
.rlc-opt { padding-bottom: 12px; border-bottom: 1px dotted var(--rlc-rule); }
.rlc-opt:last-child { border-bottom: 0; margin-bottom: 0; padding-bottom: 0; }
.rlc-note { margin: 6px 0 0; font-size: 12px; color: var(--rlc-muted); }

/* Sonuç paneli */
.rlc-result { position: sticky; top: var(--rl-sticky-top, 12px); min-width: 0; }
.rlc-sheet { padding: 18px 20px 20px; }
.rlc-sheet-head { display: flex; justify-content: space-between; align-items: center; margin-bottom: 10px; }
.rlc-sheet-h { margin: 0; font: 600 12px/1 var(--rlc-mono); letter-spacing: .12em; text-transform: uppercase; }
.rlc-chip-mono { font: 600 10.5px/1 var(--rlc-mono); padding: 4px 6px; border: 1px solid var(--rlc-ink); letter-spacing: .1em; }
.rlc-views { display: grid; grid-template-columns: minmax(0, 1.6fr) minmax(0, 1fr); gap: 8px; margin: 0 0 14px; }
.rlc-view { margin: 0; border: 1px solid var(--rlc-ink); background: var(--rlc-paper-2); display: flex; flex-direction: column; min-width: 0; }
.rlc-view > div { flex: 1; display: grid; place-items: center; padding: 6px; min-height: 0; }
.rlc-view-front > div { height: 250px; }
.rlc-view-side > div { height: 250px; }
.rlc-view figcaption { padding: 5px 8px; border-top: 1px solid var(--rlc-ink); font: 600 10px/1 var(--rlc-mono); letter-spacing: .1em; text-transform: uppercase; color: var(--rlc-muted); }
.rlc-svg { width: 100%; height: 100%; max-height: 100%; display: block; overflow: visible; }
.rlc-svg text { font-weight: 600; }
.rlc-glow { mix-blend-mode: multiply; }

/* Etiket plakası */
.rlc-plate { position: relative; padding: 16px 18px 14px; color: #E9EEF7; background: linear-gradient(160deg, #24304A 0%, var(--rlc-dark) 55%, #1B2540 100%); border-radius: 6px; box-shadow: inset 0 1px 0 rgba(255,255,255,.12), inset 0 0 0 1px rgba(255,255,255,.08), 0 2px 0 var(--rlc-ink); margin-bottom: 14px; }
.rlc-plate-rivets i { position: absolute; width: 7px; height: 7px; border-radius: 50%; background: radial-gradient(circle at 35% 35%, #C9D1DF, #5B667D); }
.rlc-plate-rivets i:nth-child(1) { top: 7px; left: 7px; } .rlc-plate-rivets i:nth-child(2) { top: 7px; right: 7px; }
.rlc-plate-rivets i:nth-child(3) { bottom: 7px; left: 7px; } .rlc-plate-rivets i:nth-child(4) { bottom: 7px; right: 7px; }
.rlc-plate-top { display: flex; justify-content: space-between; font: 600 9.5px/1 var(--rlc-mono); letter-spacing: .14em; color: #8E9BB4; padding: 0 6px; }
.rlc-plate-sku { margin: 10px 0 2px; padding: 0 6px; font: 700 clamp(20px, 2.1vw, 26px)/1.1 var(--rlc-mono); color: #fff; letter-spacing: .02em; word-break: break-all; }
.rlc-plate-model { margin: 0 0 10px; padding: 0 6px; font-size: 13px; color: #B8C3D8; }
.rlc-plate-grid { display: grid; grid-template-columns: 1.3fr .9fr 1fr; margin: 0; border-top: 1px solid rgba(255,255,255,.14); }
.rlc-plate-grid > div { padding: 8px 6px 0; min-width: 0; }
.rlc-plate-grid dt { font: 600 9px/1 var(--rlc-mono); letter-spacing: .12em; text-transform: uppercase; color: #8E9BB4; }
.rlc-plate-grid dd { margin: 4px 0 0; font: 600 12px/1.2 var(--rlc-mono); color: #fff; overflow-wrap: anywhere; }

/* Yük çubuğu */
.rlc-load { margin-bottom: 14px; }
.rlc-load-h { display: flex; justify-content: space-between; gap: 8px; font-size: 13px; margin-bottom: 6px; }
.rlc-load-h strong { font-size: 15px; }
.rlc-meter { position: relative; height: 14px; border: 1.5px solid var(--rlc-ink); background: repeating-linear-gradient(90deg, transparent 0 9.6%, var(--rlc-rule) 9.6% 10%); }
.rlc-meter-fill { position: absolute; inset: 0 auto 0 0; background: var(--rlc-ok); transition: width .35s ease, background-color .2s; }
.rlc-meter-high .rlc-meter-fill { background: var(--rlc-accent); }
.rlc-meter-over .rlc-meter-fill { background: var(--rlc-err); }
.rlc-meter-over { animation: rlc-shake .35s 1; }
.rlc-meter-80 { position: absolute; left: 80%; top: -5px; bottom: -5px; width: 0; border-left: 1.5px dashed var(--rlc-ink); }
.rlc-load-f { display: flex; justify-content: space-between; font-size: 11px; margin-top: 4px; color: var(--rlc-muted); letter-spacing: .06em; }
.rlc-meter-over + .rlc-load-f span:last-child { color: var(--rlc-err); font-weight: 700; }
.rlc-meter-high + .rlc-load-f span:last-child { color: var(--rlc-warn); font-weight: 700; }
@keyframes rlc-shake { 0%,100% { transform: none; } 25% { transform: translateX(-3px); } 75% { transform: translateX(3px); } }

/* Özellik tablosu */
.rlc-specs { margin: 0 0 14px; border-top: 1px solid var(--rlc-ink); }
.rlc-specs > div { display: grid; grid-template-columns: 112px minmax(0, 1fr); gap: 8px; padding: 6px 0; border-bottom: 1px solid var(--rlc-rule); }
.rlc-specs dt { font: 600 10.5px/1.5 var(--rlc-mono); letter-spacing: .08em; text-transform: uppercase; color: var(--rlc-muted); }
.rlc-specs dd { margin: 0; font: 600 13px/1.35 var(--rlc-mono); overflow-wrap: anywhere; }

/* Uyarılar */
.rlc-warns { list-style: none; margin: 0 0 14px; padding: 0; display: flex; flex-direction: column; gap: 6px; max-height: 300px; overflow: auto; }
.rlc-w { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 10px; align-items: start; padding: 8px 10px; font-size: 13px; line-height: 1.4; border-left: 4px solid var(--rlc-muted); background: var(--rlc-paper-2); }
.rlc-w-tag { font: 700 9.5px/1.6 var(--rlc-mono); letter-spacing: .1em; text-transform: uppercase; padding: 1px 6px; border: 1px solid currentColor; white-space: nowrap; }
.rlc-w-error { border-left-color: var(--rlc-err); background: #FDECEC; } .rlc-w-error .rlc-w-tag { color: var(--rlc-err); }
.rlc-w-warn { border-left-color: var(--rlc-accent); background: #FFF1E8; } .rlc-w-warn .rlc-w-tag { color: var(--rlc-warn); }
.rlc-w-info { border-left-color: var(--rlc-line); } .rlc-w-info .rlc-w-tag { color: var(--rlc-line); }
.rlc-w-ok { border-left-color: var(--rlc-ok); } .rlc-w-ok .rlc-w-tag { color: var(--rlc-ok); }
.rlc-w-fix { display: block; margin-top: 3px; font-weight: 600; }

/* Fiyat */
.rlc-price { padding: 12px 14px; border: 1.5px solid var(--rlc-ink); background: var(--rlc-paper-2); margin-bottom: 14px; }
.rlc-price-h { display: flex; justify-content: space-between; align-items: center; font: 600 11px/1 var(--rlc-mono); letter-spacing: .1em; text-transform: uppercase; }
.rlc-badge { font: 700 10px/1 var(--rlc-mono); letter-spacing: .12em; text-transform: uppercase; padding: 4px 7px; color: var(--rlc-accent); border: 1.5px solid currentColor; transform: rotate(-2deg); }
.rlc-price-v { margin: 8px 0 6px; font-size: clamp(20px, 2vw, 25px); font-weight: 700; letter-spacing: -.01em; }
.rlc-price-d summary { cursor: pointer; font-size: 12.5px; color: var(--rlc-line); font-weight: 600; }
.rlc-price-d summary:focus-visible { outline: 3px solid var(--rlc-accent); }
.rlc-price-d ul { list-style: none; padding: 0; margin: 8px 0 0; font-size: 12.5px; }
.rlc-price-d li { display: flex; justify-content: space-between; gap: 10px; padding: 3px 0; border-bottom: 1px dotted var(--rlc-rule); }

/* Butonlar */
.rlc-actions { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.rlc-actions .rlc-btn-primary { grid-column: 1 / -1; }
.rlc-btn { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; padding: 10px 14px; border: 1.5px solid var(--rlc-ink); border-radius: var(--rlc-r); background: var(--rlc-paper-2); color: var(--rlc-ink); font: 700 13.5px/1.15 var(--rlc-display); cursor: pointer; text-align: center; transition: transform .12s, box-shadow .12s, background .15s; }
.rlc-btn:hover { box-shadow: 3px 3px 0 var(--rlc-ink); transform: translate(-1px, -1px); }
.rlc-btn:focus-visible { outline: 3px solid var(--rlc-accent); outline-offset: 2px; }
.rlc-btn-primary { background: var(--rlc-accent); border-color: var(--rlc-ink); color: #fff; font-size: 15px; }
.rlc-btn-sm { min-height: 36px; padding: 6px 12px; font-size: 13px; }

/* Toast */
.rlc-toast { position: fixed; left: 50%; bottom: 84px; transform: translate(-50%, 20px); z-index: 60; max-width: min(92vw, 420px); padding: 10px 16px; background: var(--rlc-ink); color: var(--rlc-paper); font-size: 13.5px; border-radius: var(--rlc-r); opacity: 0; pointer-events: none; transition: opacity .2s, transform .2s; }
.rlc-toast-on { opacity: 1; transform: translate(-50%, 0); }

/* Mobil özet çubuğu */
.rlc-bar { display: none; }

@media (max-width: 1080px) {
  .rlc-grid { grid-template-columns: minmax(0, 1fr) minmax(320px, 380px); }
  .rlc-pkgs { grid-template-columns: 1fr; }
  .rlc-steppers { grid-template-columns: 1fr; }
}
@media (max-width: 860px) {
  .rlc { outline: 0; margin: 0; border-left: 0; border-right: 0; }
  .rlc-head { grid-template-columns: 1fr; }
  .rlc-tb { border-left: 0; border-top: 1px solid var(--rlc-ink); grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .rlc-tb > div { border-bottom: 0; border-right: 1px solid var(--rlc-ink); padding: 8px 10px; }
  .rlc-tb > div:nth-child(2n) { border-right: 1px solid var(--rlc-ink); }
  .rlc-tb > div:last-child { border-right: 0; }
  .rlc-grid { grid-template-columns: 1fr; }
  .rlc-form { border-right: 0; border-bottom: 1.5px solid var(--rlc-ink); }
  .rlc-result { position: static; }
  .rlc-pkgs { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .rlc-bar { position: fixed; left: 0; right: 0; bottom: 0; z-index: 50; display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 4px 12px; align-items: center; padding: 10px 14px calc(10px + env(safe-area-inset-bottom)); background: var(--rlc-dark); color: #fff; border-top: 2px solid var(--rlc-accent); transform: translateY(110%); transition: transform .25s ease; }
  .rlc-bar-on { transform: none; }
  .rlc-bar-main { display: flex; flex-direction: column; min-width: 0; }
  .rlc-bar-sku { font: 700 14px/1.2 var(--rlc-mono); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
  .rlc-bar-price { font: 12px/1.3 var(--rlc-mono); color: #B8C3D8; }
  .rlc-bar-meter { grid-column: 1 / -1; grid-row: 2; height: 4px; background: rgba(255,255,255,.15); }
  .rlc-bar-meter span { display: block; height: 100%; background: var(--rlc-ok); transition: width .3s; }
  .rlc-bar-meter span.rlc-bar-fill-high { background: var(--rlc-accent); }
  .rlc-bar-meter span.rlc-bar-fill-over { background: var(--rlc-err); }
  .rlc-bar .rlc-btn { grid-row: 1; grid-column: 2; }
}
@media (max-width: 560px) {
  .rlc { font-size: 14.5px; }
  .rlc-head-title { padding: 18px 16px 16px; }
  .rlc-tb { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .rlc-tb > div:nth-child(2) { border-right: 0; }
  .rlc-tb > div:nth-child(-n+2) { border-bottom: 1px solid var(--rlc-ink); }
  .rlc-step { padding: 18px 16px 20px; }
  .rlc-sheet { padding: 16px; }
  .rlc-products { grid-template-columns: 1fr; gap: 8px; }
  .rlc-card { padding: 10px 12px; }
  .rlc-pkgs { grid-template-columns: 1fr; gap: 8px; }
  .rlc-pkg { padding: 10px 12px; gap: 6px; }
  .rlc-pkg-feats { flex-direction: row; flex-wrap: wrap; gap: 2px 10px; font-size: 12px; }
  .rlc-pkg-feats span::before { content: '· '; }
  .rlc-row2 { gap: 10px; }
  .rlc-views { grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr); }
  .rlc-view-front > div, .rlc-view-side > div { height: 210px; }
  .rlc-specs > div { grid-template-columns: 96px minmax(0, 1fr); }
  .rlc-plate-grid { grid-template-columns: 1fr 1fr; }
  .rlc-plate-grid > div:first-child { grid-column: 1 / -1; }
  .rlc-warns { max-height: none; }
}
/* ---------- v2: dikey RafLift ---------- */
.rlc-sheet-head { gap: 8px; flex-wrap: wrap; }
.rlc-stage { display: inline-flex; border: 1.5px solid var(--rlc-ink); border-radius: 999px; overflow: hidden; margin-left: auto; }
.rlc-stage-b { min-height: 32px; padding: 4px 12px; border: 0; background: var(--rlc-paper-2); color: var(--rlc-ink); font: 600 12px/1 var(--rlc-mono); letter-spacing: .04em; cursor: pointer; }
.rlc-stage-b + .rlc-stage-b { border-left: 1.5px solid var(--rlc-ink); }
.rlc-stage-b[aria-pressed="true"] { background: var(--rlc-ink); color: var(--rlc-paper); }
.rlc-stage-b:focus-visible { outline: 3px solid var(--rlc-accent); outline-offset: -3px; }
.rlc-migr { margin: 10px 0 0; padding: 8px 10px; font-size: 13px; background: var(--rlc-paper-2); border-left: 4px solid var(--rlc-line); display: flex; gap: 8px; align-items: baseline; flex-wrap: wrap; }
.rlc-migr .rlc-w-tag { color: var(--rlc-line); }
.rlc-mb { margin-bottom: 14px; }
.rlc-row2-fs { align-items: start; }
.rlc-row2-fs .rlc-fs { margin-bottom: 4px; }
.rlc-adv { margin-top: 6px; border-top: 1px dotted var(--rlc-rule); padding-top: 8px; }
.rlc-adv summary { cursor: pointer; font: 600 12px/1.4 var(--rlc-mono); letter-spacing: .08em; text-transform: uppercase; color: var(--rlc-line); min-height: 28px; }
.rlc-adv summary:focus-visible { outline: 3px solid var(--rlc-accent); }
.rlc-adv[open] summary { margin-bottom: 10px; }

.rlc-presets { display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 8px; align-items: stretch; }
.rlc-preset { position: relative; display: flex; flex-direction: column; gap: 3px; padding: 9px 11px; background: var(--rlc-paper-2); border: 1.5px solid var(--rlc-rule); border-radius: var(--rlc-r); cursor: pointer; transition: border-color .15s, box-shadow .15s; }
.rlc-preset:hover { border-color: var(--rlc-line); }
.rlc-preset:has(:checked) { border-color: var(--rlc-ink); box-shadow: 3px 3px 0 var(--rlc-ink); }
.rlc-preset:has(:focus-visible) { outline: 3px solid var(--rlc-accent); outline-offset: 2px; }
.rlc-preset-n { font: 700 14px/1.15 var(--rlc-display); }
.rlc-preset:has(:checked) .rlc-preset-n { color: var(--rlc-accent); }
.rlc-preset-h { font-size: 10.5px; font-weight: 500; color: var(--rlc-muted); white-space: nowrap; }
.rlc-preset-d { font-size: 12px; color: var(--rlc-muted); line-height: 1.3; display: -webkit-box; -webkit-line-clamp: 2; line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.rlc-preset-state { grid-column: 1 / -1; font-size: 11px; color: var(--rlc-muted); }

.rlc-tiers { display: flex; flex-direction: column; gap: 8px; margin-bottom: 12px; }
.rlc-tier { border: 1.5px solid var(--rlc-ink); border-radius: var(--rlc-r); background: rgba(251, 250, 246, .85); padding: 10px 12px; }
.rlc-tier-bad { border-color: var(--rlc-err); box-shadow: inset 4px 0 0 var(--rlc-err); }
.rlc-tier-h { display: flex; justify-content: space-between; align-items: baseline; gap: 8px; flex-wrap: wrap; margin-bottom: 8px; padding-bottom: 6px; border-bottom: 1px dashed var(--rlc-rule); }
.rlc-tier-n { font: 700 15px/1 var(--rlc-display); }
.rlc-tier-m { font-size: 11.5px; color: var(--rlc-line); }
.rlc-tier-empty { margin: 0 0 8px; font-size: 13px; color: var(--rlc-muted); }
.rlc-ins { border-left: 3px solid var(--rlc-line); padding: 4px 0 6px 10px; margin-bottom: 8px; }
.rlc-ins-h { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.rlc-ins-n { font-weight: 600; font-size: 14px; }
.rlc-ins-m { font-size: 11px; color: var(--rlc-muted); }
.rlc-x { margin-left: auto; width: 32px; height: 32px; border: 1.5px solid var(--rlc-rule); border-radius: 50%; background: var(--rlc-paper-2); color: var(--rlc-ink); font: 600 18px/1 var(--rlc-mono); cursor: pointer; }
.rlc-x:hover { border-color: var(--rlc-err); color: var(--rlc-err); }
.rlc-x:focus-visible { outline: 3px solid var(--rlc-accent); outline-offset: 1px; }
.rlc-ins-s { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 6px; margin-top: 6px; }
.rlc-stepper-sm { padding: 5px 8px; border: 1px solid var(--rlc-rule); }
.rlc-stepper-sm .rlc-sbtn { width: 32px; height: 32px; }
.rlc-stepper-sm .rlc-stepper-c input { width: 36px; }
.rlc-add { width: 100%; min-height: 40px; padding: 6px 10px; border: 1.5px dashed var(--rlc-ink); border-radius: var(--rlc-r); background: transparent; color: var(--rlc-ink); font: 600 13.5px/1.2 var(--rlc-body); cursor: pointer; }
.rlc-add:hover { background: var(--rlc-paper-2); }
.rlc-add:focus-visible { outline: 3px solid var(--rlc-accent); outline-offset: 1px; }
.rlc-front-opt { margin-bottom: 14px; padding: 12px 14px; border: 1.5px solid var(--rlc-ink); background: var(--rlc-paper-2); border-radius: var(--rlc-r); }
.rlc-front-opt .rlc-opt { border-bottom: 0; padding-bottom: 0; margin-bottom: 0; }

.rlc-acc { margin: 0 0 14px; }
.rlc-acc-h { margin: 0 0 6px; display: flex; justify-content: space-between; font: 600 11px/1 var(--rlc-mono); letter-spacing: .1em; text-transform: uppercase; }
.rlc-acc-h .rlc-mono { color: var(--rlc-muted); letter-spacing: 0; text-transform: none; }
.rlc-acc ul { list-style: none; margin: 0; padding: 0; border-top: 1px solid var(--rlc-ink); }
.rlc-acc li { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 8px; padding: 5px 0; border-bottom: 1px solid var(--rlc-rule); font-size: 12.5px; align-items: baseline; }
.rlc-acc-c { font-weight: 700; white-space: nowrap; }
.rlc-acc-l { min-width: 0; overflow-wrap: anywhere; }
.rlc-acc-l em { color: var(--rlc-muted); font-size: 11.5px; }
.rlc-view-front > div { height: 300px; }
.rlc-view-side > div { height: 300px; }
.rlc-unit, .rlc-unit-side { transition: none; }
@media (max-width: 560px) {
  .rlc-view-front > div, .rlc-view-side > div { height: 240px; }
  .rlc-presets { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .rlc-ins-s { grid-template-columns: 1fr; }
  .rlc-stage { margin-left: 0; }
  .rlc-row2-fs { grid-template-columns: 1fr; }
}

@media (prefers-reduced-motion: reduce) {
  .rlc *, .rlc *::before, .rlc *::after { transition: none !important; animation: none !important; scroll-behavior: auto !important; }
}
