/* Kulvar — ücretsiz deneme dersi sihirbazı (v5) */
.wz { display: grid; grid-template-columns: minmax(0, 1fr) 380px; gap: clamp(24px, 4vw, 60px); padding-top: clamp(50px, 6vw, 90px); padding-bottom: clamp(80px, 9vw, 130px); align-items: start; }
.wz-main { background: #fff; border-radius: var(--r); box-shadow: var(--sh2); padding: clamp(20px, 3vw, 36px); scroll-margin-top: 90px; }
.wz-pw { position: relative; margin-bottom: 30px; }
.wz-pl { position: absolute; left: 0; right: 0; top: 2px; height: 40px; opacity: .5; pointer-events: none; }
.wz-pl path { stroke: var(--line2); }
.wz-prog { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(5, 1fr); gap: 6px; position: relative; }
.wz-prog li { display: grid; gap: 8px; justify-items: start; padding-top: 50px; position: relative; cursor: default; }
.wz-prog li::before { content: ''; position: absolute; left: 0; right: 0; top: 40px; height: 4px; background: var(--mist2); transition: background .25s; }
.wz-prog li.done::before, .wz-prog li.on::before { background: var(--or); }
.wz-prog li.done { cursor: pointer; }
.wz-pn { position: absolute; left: 0; top: 0; width: 34px; height: 34px; display: grid; place-items: center; background: var(--mist); font: 700 18px/1 var(--fd); border-radius: 2px; transition: background .2s, color .2s; }
.wz-prog li.on .wz-pn { background: var(--ink); color: #fff; }
.wz-prog li.done .wz-pn { background: var(--or); color: #fff; }
.wz-pt { font-size: 13.5px; font-weight: 500; color: var(--mute); }
.wz-prog li.on .wz-pt { color: var(--ink); font-weight: 600; }
.wz-s { border: 0; padding: 0; margin: 0; min-width: 0; }
.wz-h { font: 700 clamp(34px, 3.4vw, 50px)/.96 var(--fd); text-transform: uppercase; padding: 0; margin-bottom: 8px; }
.wz-p { color: var(--ink3); margin-bottom: 20px; max-width: 620px; }
.wz-s[data-bad] .opts { outline: 2px solid var(--err); outline-offset: 6px; border-radius: var(--rb); }
.opts { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.opt { display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 14px; padding: 16px 18px; border: 1.5px solid var(--line2); border-radius: var(--rb); cursor: pointer; position: relative; transition: border-color .15s, background .15s, box-shadow .2s; }
.opt input { position: absolute; opacity: 0; }
.opt:hover { border-color: var(--ink); }
.opt:has(input:checked) { border-color: var(--ink); background: var(--ink); color: #fff; box-shadow: var(--sh2); }
.opt:has(input:checked) small { color: rgba(255, 255, 255, .7); }
.opt:has(input:focus-visible) { outline: 2px solid var(--or); outline-offset: 2px; }
.opt-t b { display: block; font-weight: 600; font-size: 16.5px; }
.opt-t small { display: block; font-size: 13.5px; color: var(--mute); line-height: 1.4; margin-top: 2px; }
.opt-ar { opacity: .35; }
.opt:hover .opt-ar { opacity: 1; transform: translateX(3px); }
.opt-k { grid-template-columns: auto 1fr auto; }
.opt-m { display: grid; justify-items: end; gap: 6px; font: 600 15px/1 var(--fd); }
.opt-rec { display: none; font: 600 11.5px/1 var(--ft); font-style: normal; padding: 4px 7px; background: var(--volt); color: var(--ink); border-radius: 2px; }
.opt.rec .opt-rec { display: inline-block; }
.opt.rec { border-color: var(--ink); }
.wz-days { display: flex; gap: 6px; overflow-x: auto; margin-bottom: 14px; scrollbar-width: none; }
.wz-days button { flex: 0 0 auto; display: grid; justify-items: start; gap: 1px; padding: 10px 14px; border: 1.5px solid var(--line2); border-radius: var(--rb); background: #fff; text-align: left; min-width: 96px; }
.wz-days b { font: 700 20px/1 var(--fd); text-transform: uppercase; }
.wz-days span { font-size: 13px; color: var(--mute); }
.wz-days small { font-size: 12px; font-weight: 600; }
.wz-days button[aria-selected=true] { background: var(--ink); color: #fff; border-color: var(--ink); }
.wz-days button[aria-selected=true] span { color: rgba(255, 255, 255, .65); }
.opts-t { grid-template-columns: 1fr 1fr; }
.opt-time { grid-template-columns: auto 1fr auto; }
.ot-t { font: 700 30px/1 var(--fd); }
.ot-c { font-size: 13px; font-weight: 600; }
.opt-time.is-full { opacity: .45; cursor: not-allowed; }
.wz-g { display: grid; grid-template-columns: 1fr 1fr; gap: 0 16px; margin-top: 10px; }
.hl { border: 0; padding: 22px; margin: 10px 0 20px; background: var(--mist); border-radius: var(--r); }
.hl legend { font: 700 28px/1 var(--fd); text-transform: uppercase; padding: 0; float: left; width: 100%; margin-bottom: 10px; }
.hl > p { clear: both; }
.hl-q { list-style: none; margin: 0; padding: 0; counter-reset: q; }
.hl-q > li { border-top: 1px solid var(--line); counter-increment: q; }
.hl-r { border: 0; padding: 12px 0; margin: 0; display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 8px 16px; align-items: center; }
.hl-r legend { float: left; font-size: 15px; line-height: 1.45; padding: 0; }
.hl-r legend::before { content: counter(q) '.'; font: 600 15px var(--fd); color: var(--mute); margin-right: 8px; }
.hl-o { display: flex; gap: 4px; }
.hl-o label { position: relative; }
.hl-o input { position: absolute; opacity: 0; }
.hl-o span { display: inline-grid; place-items: center; min-width: 70px; height: 40px; border: 1.5px solid var(--line2); border-radius: var(--rb); background: #fff; font-size: 14px; font-weight: 500; cursor: pointer; }
.hl-o input:checked + span { background: var(--ink); color: #fff; border-color: var(--ink); }
.hl-o label:last-child input:checked + span { background: var(--or); border-color: var(--or); }
.hl-o input:focus-visible + span { outline: 2px solid var(--or); }
.hl-r[data-bad] .hl-o span { border-color: var(--err); }
.hl-r .err { grid-column: 1 / -1; }
.hl-warn { margin: 14px 0 0; padding: 14px 16px; background: #FFE9E2; border-left: 4px solid var(--or); font-size: 14.5px; border-radius: 2px; }
.wz-c { margin-top: 10px; }
.wz-nav { display: flex; justify-content: space-between; gap: 12px; margin-top: 28px; padding-top: 20px; border-top: 1px solid var(--line); }
.wz-nav [data-next] { margin-left: auto; }
.wz-done { text-align: left; }
.wz-tl { list-style: none; margin: 22px 0; padding: 0; border-left: 3px solid var(--or); }
.wz-tl li { display: grid; grid-template-columns: 74px 1fr; gap: 10px; padding: 10px 0 10px 18px; position: relative; }
.wz-tl li::before { content: ''; position: absolute; left: -8px; top: 16px; width: 13px; height: 13px; background: var(--ink); }
.wz-tl b { font: 700 24px/1 var(--fd); }
.wz-ok-d { display: grid; grid-template-columns: 1fr 1fr; border-top: 1.5px solid var(--ink); margin-bottom: 18px; }
.wz-ok-d div { padding: 10px 0; border-bottom: 1px solid var(--line); }
.wz-ok-d dt { font-size: 12px; color: var(--mute); }
.wz-ok-d dd { font-weight: 500; font-size: 15px; }
.wz-ok-a { display: flex; flex-wrap: wrap; gap: 16px; align-items: center; }
.wz-side { display: grid; gap: 16px; position: sticky; top: 84px; }
.wz-img { border-radius: var(--r); overflow: hidden; aspect-ratio: 4 / 5; max-height: 380px; box-shadow: var(--sh2); }
.wz-sum { background: var(--ink); color: #fff; border-radius: var(--r); padding: 22px; }
.wz-sum h2 { font-size: 30px; text-transform: uppercase; font-weight: 700; margin-bottom: 10px; }
.wz-sum dl { display: grid; margin-bottom: 16px; }
.wz-sum dl div { display: flex; justify-content: space-between; gap: 12px; padding: 9px 0; border-bottom: 1px solid var(--lw); font-size: 14.5px; }
.wz-sum dt { color: rgba(255, 255, 255, .6); }
.wz-sum dd { text-align: right; font-weight: 600; }
.wz-inc li { font-size: 14px; color: rgba(255, 255, 255, .85); }
.wz-inc li::before { background: var(--volt); }

@media (max-width: 1080px) {
  .wz { grid-template-columns: 1fr; }
  .wz-side { position: static; grid-template-columns: 1fr 1fr; }
  .wz-img { max-height: none; }
}
@media (max-width: 680px) {
  .opts, .opts-t, .wz-g { grid-template-columns: 1fr; }
  .wz-pt { display: none; }
  .wz-prog li.on .wz-pt { display: block; position: absolute; top: 52px; left: 0; white-space: nowrap; }
  .wz-prog { padding-bottom: 24px; }
  .hl-r { grid-template-columns: 1fr; }
  .wz-side { grid-template-columns: 1fr; }
  .wz-img { display: none; }
  .wz-ok-d { grid-template-columns: 1fr; }
}
