/* by QOR — 2026-10-27 · ridoza.com "Nova" tasarım katmanı (Patron brief'i: koyu + açık tema; açık zemin buzlu kırık beyaz;
   mor-mavi gradient yok; marka renkleri — antrasit + turuncu yalnız eylemde; her araç pastel kart + içinde ne yaptığını
   gösteren küçük animasyon; başlıklarda sıkı grotesk (Geist), etiketlerde mono (Geist Mono); yaylı hareket).
   ridoza-apple-v2.css'in üstüne biner; yalnız <html class="ui-nova"> iken etkilidir. İşlev/Alpine/form değişmez. */

/* ---------- belirteçler ---------- */
html.ui-nova[data-theme="light"], html.ui-nova:not([data-theme]) {
  --bg: oklch(97.3% .006 235); --bg2: oklch(94.9% .009 235); --bg3: oklch(91.5% .011 235);
  --surface: oklch(99.3% .003 235);
  --text: oklch(21% .028 258); --text2: oklch(44% .02 255); --text3: oklch(56% .016 252);
  --border: oklch(89.5% .01 240); --line2: oklch(84% .012 240);
  --nav-bg: oklch(97.3% .006 235 / .86);
  --block: oklch(21% .028 258); --block-ink: oklch(96% .008 240);
  --p-peach: oklch(92.4% .055 55);  --i-peach: oklch(52% .14 45);
  --p-mint: oklch(92.8% .055 165);  --i-mint: oklch(46% .1 165);
  --p-sky: oklch(92.6% .045 232);   --i-sky: oklch(46% .11 240);
  --p-lilac: oklch(92.6% .045 300); --i-lilac: oklch(46% .12 300);
  --p-butter: oklch(94.4% .072 95); --i-butter: oklch(48% .11 80);
  --p-rose: oklch(92.6% .05 12);    --i-rose: oklch(52% .15 15);
  --p-sage: oklch(92.6% .042 140);  --i-sage: oklch(44% .08 145);
  --shadow: 0 1px 2px oklch(30% .03 255 / .05), 0 12px 32px -12px oklch(30% .04 255 / .16);
  --shadow-lg: 0 2px 4px oklch(30% .03 255 / .05), 0 30px 60px -24px oklch(30% .05 255 / .25);
  color-scheme: light;
}
html.ui-nova[data-theme="dark"] {
  --bg: #0b0f1a; --bg2: #111827; --bg3: #243049;
  --surface: #161e31;
  --text: oklch(95.5% .008 240); --text2: oklch(78% .014 240); --text3: oklch(64% .014 245);
  --border: oklch(28% .022 258); --line2: oklch(34% .024 258);
  --nav-bg: oklch(15.5% .018 258 / .86);
  --block: oklch(24% .024 258); --block-ink: oklch(96% .008 240);
  --p-peach: oklch(29% .045 50);  --i-peach: oklch(82% .1 55);
  --p-mint: oklch(28.5% .04 165); --i-mint: oklch(82% .09 165);
  --p-sky: oklch(28.5% .04 240);  --i-sky: oklch(82% .08 235);
  --p-lilac: oklch(28.5% .045 300); --i-lilac: oklch(83% .08 300);
  --p-butter: oklch(30% .045 90); --i-butter: oklch(86% .1 92);
  --p-rose: oklch(29% .045 15);   --i-rose: oklch(82% .09 15);
  --p-sage: oklch(28.5% .035 145); --i-sage: oklch(82% .07 145);
  --shadow: 0 1px 2px oklch(5% 0 0 / .4), 0 14px 34px -14px oklch(5% 0 0 / .6);
  --shadow-lg: 0 2px 4px oklch(5% 0 0 / .4), 0 30px 60px -24px oklch(5% 0 0 / .7);
  color-scheme: dark;
}
html.ui-nova {
  --accent: #f97316; --accent-hover: #ea640b; --on-accent: oklch(20% .05 45);
  --f: "Geist", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;
  --m: "Geist Mono", ui-monospace, "SF Mono", Menlo, Consolas, monospace;
  --spring: cubic-bezier(.34,1.38,.64,1); --out: cubic-bezier(.16,1,.3,1);
  background: var(--bg);
}
@supports (transition-timing-function: linear(0,1)) {
  html.ui-nova { --spring: linear(0,.009,.035 2.1%,.141 4.4%,.723 12.9%,.938 16.7%,1.017 19.4%,1.067,1.099 24.3%,1.108 26%,1.104,1.089 30.2%,1.006 39.1%,.993 42.3%,.986 45.2%,.989 52%,1 63.4%,1.002 76.6%,1); }
}

/* ---------- temel ---------- */
html.ui-nova body.ap-ui { background: var(--bg) !important; color: var(--text) !important; font-family: var(--f) !important; }
html.ui-nova input, html.ui-nova select, html.ui-nova textarea, html.ui-nova button { font-family: var(--f) !important; }
html.ui-nova .rdz-parallax-bg, html.ui-nova .blob, html.ui-nova #booking > .absolute.inset-0 { display: none !important; }
html.ui-nova ::selection { background: var(--accent); color: var(--on-accent); }
html.ui-nova :focus-visible { outline: 2px solid var(--accent); outline-offset: 3px; }
html.ui-nova ::-webkit-scrollbar-track { background: var(--bg); }
html.ui-nova ::-webkit-scrollbar-thumb { background: var(--line2); }
html.ui-nova .is-dark, html.ui-nova .is-light, html.ui-nova .is-soft, html.ui-nova .is-light-warm { background: var(--bg) !important; color: var(--text) !important; }
html.ui-nova .is-soft { background: var(--bg2) !important; }
html.ui-nova section { border-color: var(--border) !important; }

/* tipografi: sıkı grotesk başlıklar, mono etiketler */
html.ui-nova .ap-title-hero { font-family: var(--f) !important; font-weight: 800 !important; letter-spacing: -.05em !important; line-height: .95 !important; color: var(--text) !important; }
html.ui-nova .ap-title-section, html.ui-nova section h2 { font-family: var(--f) !important; font-weight: 750 !important; letter-spacing: -.04em !important; line-height: 1.02 !important; color: var(--text) !important; text-wrap: balance; }
html.ui-nova section h3, html.ui-nova section h4 { font-family: var(--f) !important; letter-spacing: -.025em; color: var(--text) !important; }
html.ui-nova .ap-subhead, html.ui-nova .ap-body { color: var(--text2) !important; }
html.ui-nova .ap-eyebrow, html.ui-nova .ap-caption, html.ui-nova .hw-badge, html.ui-nova .ap-model__tag, html.ui-nova .ap-airport-code,
html.ui-nova .ap-price-pill .label, html.ui-nova [class*="tracking-widest"], html.ui-nova [class*="uppercase"][class*="text-[9px]"], html.ui-nova [class*="uppercase"][class*="text-[10px]"] {
  font-family: var(--m) !important; font-weight: 500 !important; letter-spacing: .06em !important; }
html.ui-nova .ap-eyebrow { color: var(--text3) !important; }
html.ui-nova .ap-hero-badge { font-family: var(--m) !important; font-weight: 500; letter-spacing: .03em; background: var(--surface) !important; border: 1px solid var(--border) !important; color: var(--text2) !important; }
html.ui-nova .tabular-nums, html.ui-nova .ap-price-pill .price, html.ui-nova .ap-stat__num { font-family: var(--m) !important; }
html.ui-nova [class*="text-white"]:not(.ap-btn):not(.rdz-btn):not([class*="bg-emerald-5"]):not([style*="var(--accent)"]):not([class*="bg-orange-5"]):not([style*="background:#f97316"]):not([style*="#25D366"]):not(.ap-accordion__item *):not(#rdzWa *):not([class*="wa-"]) { color: var(--text) !important; }
html.ui-nova [class*="text-slate-300"], html.ui-nova [class*="text-slate-400"], html.ui-nova [class*="text-white/7"], html.ui-nova [class*="text-white/8"] { color: var(--text2) !important; }
html.ui-nova [class*="text-slate-500"], html.ui-nova [class*="text-slate-600"] { color: var(--text3) !important; }
html.ui-nova [class*="text-slate-800"], html.ui-nova [class*="text-slate-900"] { color: var(--text) !important; }
html.ui-nova [class*="border-white/"] { border-color: var(--border) !important; }
html.ui-nova [style*="background:rgba(0,0,0,0.3)"], html.ui-nova [style*="background:rgba(255,255,255,0.05)"], html.ui-nova [style*="background:rgba(255,255,255,0.07)"] { background: color-mix(in oklch, var(--surface) 70%, transparent) !important; }

/* ---------- polish (2026-10-27): turuncu zeminde koyu yazı (kontrast ≥4.5) ---------- */
html.ui-nova #hw-section h2 span, html.ui-nova #hw-section h2 em { color: var(--text3) !important; -webkit-text-fill-color: currentColor !important; background: none !important; }
html.ui-nova [style*="background:#f97316"], html.ui-nova [style*="background: #f97316"], html.ui-nova [style*="background:var(--accent)"], html.ui-nova [style*="background: var(--accent)"],
html.ui-nova [style*="background:#f97316"] *, html.ui-nova [style*="background: var(--accent)"] *, html.ui-nova [style*="background:var(--accent)"] * { color: var(--on-accent) !important; }
html.ui-nova [style*="background: var(--accent)"], html.ui-nova [style*="background:var(--accent)"] { box-shadow: 0 8px 22px -12px oklch(65% .2 45 / .7) !important; }

/* ---------- butonlar ---------- */
html.ui-nova .ap-btn, html.ui-nova .rdz-btn { background: var(--accent) !important; color: var(--on-accent) !important; font-family: var(--f) !important; font-weight: 650 !important; border-radius: 14px !important;
  box-shadow: 0 8px 22px -10px oklch(65% .2 45 / .7) !important; transition: transform .5s var(--spring), background .2s !important; }
html.ui-nova .ap-btn:hover, html.ui-nova .rdz-btn:hover { background: var(--accent-hover) !important; transform: translateY(-2px); }
html.ui-nova .ap-btn:active { transform: scale(.97); }
html.ui-nova .ap-btn-link { color: var(--text) !important; font-weight: 600; }
html.ui-nova .ap-btn-link::after { color: var(--text3); }
html.ui-nova a[style*="background:#f97316"] { color: var(--on-accent) !important; box-shadow: none !important; border-radius: 12px !important; transition: transform .5s var(--spring) !important; }

/* ---------- üst menü ---------- */
html.ui-nova body.ap-ui header { background: var(--nav-bg) !important; border-bottom: 1px solid var(--border) !important; -webkit-backdrop-filter: saturate(1.4) blur(14px); backdrop-filter: saturate(1.4) blur(14px); }
html.ui-nova body.ap-ui header .nav-link { color: var(--text2) !important; font-weight: 500; }
html.ui-nova body.ap-ui header .nav-link:hover { color: var(--text) !important; }
html.ui-nova header button.bg-white { background: var(--block) !important; color: var(--block-ink) !important; box-shadow: none !important; border-radius: 12px !important; }
html.ui-nova .rdz-theme-toggle { border-radius: 12px !important; border: 1px solid var(--border) !important; background: var(--surface) !important; color: var(--text2) !important; transition: transform .5s var(--spring) !important; }
html.ui-nova .rdz-theme-toggle:hover { transform: rotate(-14deg); }
html.ui-nova #mobileMenu { background: var(--surface) !important; }
html.ui-nova header .bg-white.shadow-xl { background: var(--surface) !important; border: 1px solid var(--border) !important; }
html.ui-nova header .bg-white.shadow-xl a { color: var(--text) !important; border-color: var(--border) !important; }
html.ui-nova header .bg-white.shadow-xl a:hover { background: var(--bg2) !important; }

/* ---------- hero + rezervasyon ---------- */
html.ui-nova #booking { background: var(--bg) !important; }
html.ui-nova .ap-title-hero { font-size: clamp(54px, 9vw, 120px) !important; }
html.ui-nova .hero-form-wrap { background: var(--surface) !important; border: 1px solid var(--border) !important; box-shadow: var(--shadow-lg) !important; border-radius: 32px !important; }
html.ui-nova .ap-reservation { background: transparent !important; box-shadow: none !important; border: 0 !important; }
html.ui-nova .ap-step { background: var(--bg3) !important; }
html.ui-nova .ap-step.is-active { background: var(--accent) !important; }
html.ui-nova .ap-reservation input, html.ui-nova .ap-reservation select, html.ui-nova .input-glass, html.ui-nova .ap-input { font-family: var(--f) !important; }
html.ui-nova .ap-reservation .map-panel { border-radius: 24px !important; overflow: hidden; }
html.ui-nova .ap-trust-chip { font-family: var(--m); font-size: 12px; letter-spacing: .02em; background: var(--surface) !important; border: 1px solid var(--border) !important; color: var(--text2) !important; border-radius: 99px !important; }

/* ---------- bölge akordiyonu, filo ---------- */
html.ui-nova .ap-accordion__item { border-radius: 24px !important; }
html.ui-nova .ap-vcard { background: var(--surface) !important; border: 1px solid var(--border) !important; border-radius: 26px !important; box-shadow: var(--shadow) !important; transition: transform .8s var(--spring), box-shadow .4s var(--out) !important; }
html.ui-nova .ap-vcard:hover { transform: translateY(-6px) rotate(-.3deg) !important; box-shadow: var(--shadow-lg) !important; }
html.ui-nova .ap-vcard .w-full.h-40 { background: var(--p-sky); border-radius: 20px; }
html.ui-nova .ap-vcard:nth-child(6n+1) .w-full.h-40 { background: var(--p-peach); }
html.ui-nova .ap-vcard:nth-child(6n+3) .w-full.h-40 { background: var(--p-mint); }
html.ui-nova .ap-vcard:nth-child(6n+4) .w-full.h-40 { background: var(--p-lilac); }
html.ui-nova .ap-vcard:nth-child(6n+5) .w-full.h-40 { background: var(--p-butter); }
html.ui-nova .ap-vcard:nth-child(6n) .w-full.h-40 { background: var(--p-sage); }
html.ui-nova .ap-vcard .w-full.h-40 img { border-radius: 16px !important; }
html.ui-nova .ap-vcard [style*="background: var(--bg)"] { background: var(--bg2) !important; border-color: var(--border) !important; }
html.ui-nova .ap-vcard [style*="text-shadow"] { text-shadow: none !important; font-family: var(--m) !important; }
html.ui-nova .ap-vcard [class*="bg-white/5"] { background: var(--bg2) !important; color: var(--text) !important; }
html.ui-nova .ap-airport-card { background: var(--surface) !important; border: 1px solid var(--border) !important; border-radius: 20px !important; transition: transform .7s var(--spring) !important; }
html.ui-nova .ap-airport-card:hover { transform: translateY(-4px); }
html.ui-nova .ap-airport-code { background: var(--p-peach) !important; color: var(--i-peach) !important; border-radius: 12px !important; }
html.ui-nova .ap-airport-card:nth-child(4n+2) .ap-airport-code { background: var(--p-sky) !important; color: var(--i-sky) !important; }
html.ui-nova .ap-airport-card:nth-child(4n+3) .ap-airport-code { background: var(--p-mint) !important; color: var(--i-mint) !important; }
html.ui-nova .ap-airport-card:nth-child(4n+4) .ap-airport-code { background: var(--p-butter) !important; color: var(--i-butter) !important; }

/* ---------- güven şeridi ---------- */
html.ui-nova [class*="bg-gradient-to-br"][class*="from-"] { background: var(--p-mint) !important; border-radius: 12px !important; }
html.ui-nova [class*="from-orange-100"] { background: var(--p-peach) !important; }
html.ui-nova [class*="from-blue-100"] { background: var(--p-sky) !important; }
html.ui-nova [class*="from-yellow-100"] { background: var(--p-butter) !important; }

/* ---------- 3 adım kartları: pastel + kendi işini gösteren döngü ---------- */
html.ui-nova #hw-section { background: var(--bg) !important; }
html.ui-nova #hw-section > .absolute, html.ui-nova #hw-section::before, html.ui-nova #hw-section::after { display: none !important; }
html.ui-nova #hw-section { background-image: none !important; }
html.ui-nova .hw3d-card { background: var(--p-peach) !important; border: 0 !important; border-radius: 28px !important; box-shadow: none !important; transform: none !important; transition: transform .8s var(--spring), box-shadow .4s var(--out) !important; }
html.ui-nova .hw3d-card:hover { transform: translateY(-8px) rotate(-.4deg) !important; box-shadow: var(--shadow-lg) !important; }
html.ui-nova .hw3d-card:nth-child(2) { background: var(--p-sky) !important; }
html.ui-nova .hw3d-card:nth-child(3) { background: var(--p-mint) !important; }
html.ui-nova .hw3d-card::before, html.ui-nova .hw3d-card::after { display: none !important; }
html.ui-nova .hw-watermark { color: color-mix(in oklch, var(--text) 8%, transparent) !important; font-family: var(--m) !important; -webkit-text-stroke: 0 !important; }
html.ui-nova .hw-badge { background: color-mix(in oklch, var(--surface) 70%, transparent) !important; color: var(--text2) !important; border: 0 !important; }
html.ui-nova .hw-icon-inner { background: color-mix(in oklch, var(--surface) 75%, transparent) !important; border: 0 !important; box-shadow: none !important; }
html.ui-nova .hw-icon-ring { border-color: color-mix(in oklch, var(--text) 14%, transparent) !important; }
html.ui-nova .hw3d-card .hw-ico-base { animation: nvBob 3.2s var(--spring) infinite; }
html.ui-nova .hw3d-card:nth-child(2) .hw-ico-base { animation: nvDrive 3.6s var(--spring) infinite; }
html.ui-nova .hw3d-card:nth-child(3) .hw-ico-base { animation: nvTilt 3.4s var(--spring) infinite; }

/* ---------- özellik kartları (bento): her araç pastel kart + küçük animasyon ---------- */
html.ui-nova .bento-card { background: var(--p-sky) !important; border: 0 !important; border-radius: 28px !important; box-shadow: none !important; transform: none; transition: transform .8s var(--spring), box-shadow .4s var(--out) !important; }
html.ui-nova .bento-card:hover { transform: translateY(-8px) rotate(-.4deg) !important; box-shadow: var(--shadow-lg) !important; }
html.ui-nova .bento-card::before, html.ui-nova .bento-card::after { display: none !important; }
html.ui-nova .bento-card:nth-child(1) { background: var(--p-peach) !important; --tk: var(--i-peach); }
html.ui-nova .bento-card:nth-child(2) { background: var(--p-sky) !important; --tk: var(--i-sky); }
html.ui-nova .bento-card:nth-child(3) { background: var(--p-mint) !important; --tk: var(--i-mint); }
html.ui-nova .bento-card:nth-child(4) { background: var(--p-butter) !important; --tk: var(--i-butter); }
html.ui-nova .bento-card:nth-child(5) { background: var(--p-lilac) !important; --tk: var(--i-lilac); }
html.ui-nova .bento-card:nth-child(6) { background: var(--p-rose) !important; --tk: var(--i-rose); }
html.ui-nova .bento-card:nth-child(7) { background: var(--p-sage) !important; --tk: var(--i-sage); }
html.ui-nova .bento-card .icon-spin-3d { background: color-mix(in oklch, var(--surface) 72%, transparent) !important; color: var(--tk) !important; border-radius: 14px !important; }
html.ui-nova .bento-card [style*="background:var(--bg2)"], html.ui-nova .bento-card [style*="background: var(--bg2)"] { background: color-mix(in oklch, var(--surface) 72%, transparent) !important; border-color: transparent !important; }
html.ui-nova .bento-card p { color: color-mix(in oklch, var(--text) 74%, transparent) !important; }
html.ui-nova .bento-card [class*="text-emerald"], html.ui-nova .bento-card [class*="text-orange"], html.ui-nova .bento-card [class*="text-blue"] { color: var(--tk) !important; }
/* her kartın kendi işi: rota (pin zıplar), uçuş (uçak süzülür), fiyat (€ döner), saatler (sırayla yanar), destek (zil sallanır), ödeme (kart kayar), WhatsApp (balon pıt pıt) */
html.ui-nova .bento-card:nth-child(1) .icon-spin-3d i { animation: nvBob 2.8s var(--spring) infinite; }
html.ui-nova .bento-card:nth-child(2) .icon-spin-3d i { animation: nvFly 3.4s ease-in-out infinite; }
html.ui-nova .bento-card:nth-child(3) .icon-spin-3d i { animation: nvFlip 3.6s var(--spring) infinite; }
html.ui-nova .bento-card:nth-child(4) .grid > div { animation: nvSlot 6s var(--spring) infinite; }
html.ui-nova .bento-card:nth-child(4) .grid > div:nth-child(2) { animation-delay: 1s; } html.ui-nova .bento-card:nth-child(4) .grid > div:nth-child(3) { animation-delay: 2s; }
html.ui-nova .bento-card:nth-child(4) .grid > div:nth-child(4) { animation-delay: 3s; } html.ui-nova .bento-card:nth-child(4) .grid > div:nth-child(5) { animation-delay: 4s; }
html.ui-nova .bento-card:nth-child(4) .grid > div:nth-child(6) { animation-delay: 5s; }
html.ui-nova .bento-card:nth-child(4) .icon-spin-3d i { animation: nvSpin 6s linear infinite; }
html.ui-nova .bento-card:nth-child(5) .icon-spin-3d i { animation: nvRing 2.6s var(--spring) infinite; }
html.ui-nova .bento-card:nth-child(6) .icon-spin-3d i { animation: nvSwipe 3s var(--spring) infinite; }
html.ui-nova .bento-card:nth-child(7) .icon-spin-3d i { animation: nvPop 2.4s var(--spring) infinite; }
html.ui-nova .bento-card:nth-child(2) [class*="rounded-xl"][class*="p-4"] { position: relative; overflow: hidden; }
html.ui-nova .bento-card:nth-child(2) [class*="rounded-xl"][class*="p-4"]::after { content: "\f072"; font-family: "Font Awesome 6 Free"; font-weight: 900; position: absolute; left: -14px; bottom: 4px; font-size: 11px; color: var(--tk); animation: nvCross 5s linear infinite; }
@keyframes nvBob { 0%,100% { transform: translateY(0) } 40% { transform: translateY(-6px) rotate(-6deg) } 60% { transform: translateY(0) rotate(3deg) } }
@keyframes nvFly { 0%,100% { transform: translate(-5px,4px) } 50% { transform: translate(6px,-5px) rotate(8deg) } }
@keyframes nvFlip { 0%,30% { transform: rotateY(0) } 60%,100% { transform: rotateY(360deg) } }
@keyframes nvSpin { to { transform: rotate(360deg) } }
@keyframes nvRing { 0%,60%,100% { transform: rotate(0) } 10%,30% { transform: rotate(-16deg) } 20%,40% { transform: rotate(16deg) } }
@keyframes nvSwipe { 0%,100% { transform: translateX(0) } 40% { transform: translateX(7px) } 55% { transform: translateX(-2px) } }
@keyframes nvPop { 0%,100% { transform: scale(1) } 30% { transform: scale(1.22) } 45% { transform: scale(.94) } }
@keyframes nvDrive { 0%,100% { transform: translateX(-4px) } 50% { transform: translateX(5px) } }
@keyframes nvTilt { 0%,100% { transform: rotate(0) } 50% { transform: rotate(-8deg) translateY(-3px) } }
@keyframes nvSlot { 0%,12%,100% { background: color-mix(in oklch, var(--surface) 72%, transparent); color: var(--text2) } 4%,9% { background: var(--accent); color: var(--on-accent) } }
@keyframes nvCross { from { transform: translateX(0) } to { transform: translateX(520px) } }

/* ---------- yorumlar, ortaklık, kapanış, alt bilgi ---------- */
html.ui-nova section [class*="rounded-2xl"][class*="bg-white"], html.ui-nova section [class*="rounded-3xl"][class*="bg-white"] { background: var(--surface) !important; border: 1px solid var(--border) !important; box-shadow: none !important; border-radius: 22px !important; }
html.ui-nova .nv-ava { width: 44px; height: 44px; border-radius: 50%; display: grid; place-items: center; font-weight: 700; flex: none; background: var(--p-peach) !important; color: var(--i-peach) !important; }
html.ui-nova .ap-feature-card, html.ui-nova .ap-model, html.ui-nova .ap-apply-card, html.ui-nova .ap-ai-card, html.ui-nova .ap-eticket { background: var(--surface) !important; border: 1px solid var(--border) !important; border-radius: 24px !important; box-shadow: none !important; transition: transform .7s var(--spring) !important; }
html.ui-nova .ap-model--featured { border: 2px solid var(--text) !important; }
html.ui-nova .ap-feature-card:hover, html.ui-nova .ap-model:hover { transform: translateY(-5px); }
html.ui-nova .ap-feature-icon { background: var(--p-peach) !important; color: var(--i-peach) !important; border-radius: 14px !important; }
html.ui-nova .ap-feature-icon.is-green { background: var(--p-mint) !important; color: var(--i-mint) !important; }
html.ui-nova footer { background: var(--bg2) !important; color: var(--text) !important; border-top: 1px solid var(--border) !important; }
html.ui-nova footer a { color: var(--text2) !important; } html.ui-nova footer a:hover { color: var(--text) !important; }

@media (prefers-reduced-motion: reduce) {
  html.ui-nova *, html.ui-nova *::before, html.ui-nova *::after { animation-duration: .001ms !important; animation-iteration-count: 1 !important; transition-duration: .001ms !important; }
}


/* ================= 2026-10-27 · Patron: "rezervasyon formu + harita katman katman CAM FANUS içinde, zemin kirli beyaz/grimsi"
   + "Ridoza VIP başlığı yine animasyonlu olsun" + "varsayılan koyu tema, marka renkleri" ================= */
html.ui-nova[data-theme="light"], html.ui-nova:not([data-theme]) {
  --glass: oklch(92.6% .006 85 / .52); --glass-2: oklch(95.2% .005 85 / .58); --glass-3: oklch(97.6% .004 85 / .74);
  --glass-rim: oklch(100% 0 0 / .78); --glass-rim2: oklch(100% 0 0 / .5); --glass-shade: oklch(40% .02 80 / .10);
}
html.ui-nova[data-theme="dark"] {
  /* koyuda kirli beyaz/grimsi cam = antrasit üstünde dumanlı açık cam */
  --glass: oklch(88% .006 85 / .10); --glass-2: oklch(88% .006 85 / .08); --glass-3: oklch(26% .03 258 / .78);
  --glass-rim: oklch(100% 0 0 / .20); --glass-rim2: oklch(100% 0 0 / .09); --glass-shade: oklch(0% 0 0 / .40);
}
/* fanusun arkasında yavaşça süzülen ışıklar — marka turuncusu + pastel; camın kırılmasını görünür kılar (mor-mavi yok) */
html.ui-nova #booking { isolation: isolate; }
html.ui-nova #booking::after { content: ""; position: absolute; inset: 0; z-index: -1; pointer-events: none;
  background:
    radial-gradient(34% 26% at 22% 34%, color-mix(in oklch, var(--p-peach) 90%, transparent), transparent 70%),
    radial-gradient(30% 24% at 80% 46%, color-mix(in oklch, var(--p-mint) 80%, transparent), transparent 70%),
    radial-gradient(26% 20% at 54% 76%, color-mix(in oklch, #f97316 22%, transparent), transparent 70%);
  filter: blur(20px); animation: nvDrift 22s ease-in-out infinite alternate; }
@keyframes nvDrift { 0% { transform: translate3d(0,0,0) } 50% { transform: translate3d(2.5%,-2%,0) } 100% { transform: translate3d(-2%,2%,0) } }

/* 1. katman — dış fanus: buzlu cam, üstte ışık yansıması, içte ikinci bir cam halkası */
html.ui-nova .hero-form-wrap { position: relative; background: var(--glass) !important;
  -webkit-backdrop-filter: blur(28px) saturate(1.35); backdrop-filter: blur(28px) saturate(1.35);
  border: 1px solid var(--glass-rim) !important; border-radius: 44px !important;
  box-shadow: inset 0 1px 0 var(--glass-rim), inset 0 -40px 80px -50px var(--glass-shade), 0 2px 4px oklch(30% .03 255 / .05), 0 40px 90px -40px oklch(10% .05 255 / .45) !important; }
html.ui-nova .hero-form-wrap::before { content: ""; position: absolute; left: 6%; right: 6%; top: 0; height: 120px; border-radius: 44px 44px 50% 50% / 44px 44px 100% 100%; pointer-events: none;
  background: linear-gradient(180deg, var(--glass-rim2), transparent); opacity: .9; }
html.ui-nova .hero-form-wrap::after { content: ""; position: absolute; inset: 10px; border-radius: 36px; border: 1px solid var(--glass-rim2); pointer-events: none; }
/* 2. katman — iç tepsi */
html.ui-nova .hero-form-wrap .ap-reservation { position: relative; z-index: 1; background: var(--glass-2) !important; border: 1px solid var(--glass-rim2) !important; border-radius: 34px !important;
  padding: clamp(14px, 2.2vw, 26px) !important; box-shadow: inset 0 1px 0 var(--glass-rim2) !important; -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px); }
/* 3. katman — form ve harita, fanusun içinde ayrı ayrı buzlu kartlar */
html.ui-nova .hero-form-wrap .form-panel { background: var(--glass-3) !important; border: 1px solid var(--glass-rim) !important; border-radius: 28px !important;
  -webkit-backdrop-filter: blur(16px) saturate(1.2); backdrop-filter: blur(16px) saturate(1.2);
  box-shadow: inset 0 1px 0 var(--glass-rim), 0 18px 40px -24px oklch(10% .04 255 / .45) !important; }
html.ui-nova .hero-form-wrap .map-panel { border: 1px solid var(--glass-rim) !important; border-radius: 28px !important;
  box-shadow: inset 0 0 0 6px var(--glass-rim2), 0 18px 40px -24px oklch(10% .04 255 / .45) !important; }
html.ui-nova .hero-form-wrap .map-panel::after { content: ""; position: absolute; inset: 0; border-radius: inherit; pointer-events: none; z-index: 50;
  background: linear-gradient(160deg, var(--glass-rim2), transparent 32%); }
html.ui-nova .hero-form-wrap .is-light, html.ui-nova .hero-form-wrap .is-light-warm { position: relative; z-index: 1; background: var(--glass-2) !important; border: 1px solid var(--glass-rim2) !important; border-radius: 34px !important; -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px); }
html.ui-nova .hero-form-wrap .ap-vcard { background: var(--glass-3) !important; border-color: var(--glass-rim) !important; }
@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
  html.ui-nova .hero-form-wrap { background: var(--bg2) !important; } html.ui-nova .hero-form-wrap .form-panel { background: var(--surface) !important; }
}

/* "Ridoza VIP": eski turuncu parıltı geri + girişte yaylı yükseliş; altında havalimanından bölgeye giden araç */
html.ui-nova .ap-hero-anim { animation: apShimmer 3.6s linear infinite, nvRise 1.2s var(--spring) both !important; }
@keyframes nvRise { from { opacity: 0; transform: translateY(26px) scale(.96) } to { opacity: 1; transform: none } }
html.ui-nova .nv-route { width: min(420px, 82vw); margin: 18px auto 4px; display: flex; align-items: center; gap: 10px; font-family: var(--m); font-size: 11.5px; letter-spacing: .05em; color: var(--text3); animation: nvRise 1.2s var(--spring) .25s both; }
html.ui-nova .nv-route b { font-weight: 600; color: var(--text); white-space: nowrap; }
html.ui-nova .nv-route .ln { position: relative; flex: 1; height: 2px; background: repeating-linear-gradient(90deg, var(--line2) 0 7px, transparent 7px 13px); border-radius: 2px; }
html.ui-nova .nv-route .ln::before { content: ""; position: absolute; left: 0; top: 0; height: 2px; width: 100%; background: var(--accent); transform-origin: left; animation: nvTrace 4.2s var(--out) infinite; border-radius: 2px; }
html.ui-nova .nv-route .car { position: absolute; top: 50%; left: 0; width: 26px; height: 26px; margin: -13px 0 0 -13px; border-radius: 9px; display: grid; place-items: center; font-size: 11px;
  background: var(--block); color: var(--accent); box-shadow: var(--shadow); animation: nvCar 4.2s var(--out) infinite; }
html.ui-nova[data-theme="dark"] .nv-route .car { background: #f97316; color: #0b0f1a; }
html.ui-nova .nv-route .pin { width: 9px; height: 9px; border-radius: 50%; border: 2px solid var(--accent); flex: none; }
html.ui-nova .nv-route .pin.end { background: var(--accent); animation: nvPing 4.2s var(--out) infinite; }
@keyframes nvTrace { 0% { transform: scaleX(0) } 70%,100% { transform: scaleX(1) } }
@keyframes nvCar { 0% { left: 0 } 70%,100% { left: 100% } }
@keyframes nvPing { 0%,66% { box-shadow: 0 0 0 0 oklch(70% .18 50 / .5) } 85% { box-shadow: 0 0 0 9px oklch(70% .18 50 / 0) } 100% { box-shadow: 0 0 0 0 oklch(70% .18 50 / 0) } }
/* ince ayar: fanus içindeki koyu/gri form blokları cam tonuna uyar; üst yansıma ince bir ışık yayı */
html.ui-nova .hero-form-wrap::before { height: 70px; opacity: .55; top: 1px; }
html.ui-nova .hero-form-wrap .form-panel [class*="bg-slate-8"]:not([style*="accent"]), html.ui-nova .hero-form-wrap .form-panel [class*="bg-slate-9"]:not([style*="accent"]),
html.ui-nova .hero-form-wrap .form-panel [class*="bg-[#"]:not([style*="accent"]) { background: color-mix(in oklch, var(--text) 7%, transparent) !important; border-color: var(--glass-rim2) !important; }
/* fanus arkasındaki süzülen ışıklar telefonda sayfayı yana taşırmasın */
html.ui-nova, html.ui-nova body { overflow-x: clip; }
html.ui-nova #booking { overflow: clip; }
/* e-bilet kartı: değerler kart zeminine göre okunur (koyuda beyaz, açıkta antrasit) — Patron 10-28 */
html.ui-nova .ap-eticket, html.ui-nova .ap-eticket .brand, html.ui-nova .ap-eticket .v { color: var(--text) !important; }
html.ui-nova .ap-eticket .k { color: var(--text3) !important; }
html.ui-nova .ap-eticket .v { font-family: var(--m); font-weight: 600; }

/* by QOR — 2026-10-28 kontrast taraması düzeltmeleri (koyu tema):
   turuncu zeminli butonlarda yazı koyu (on-accent); beyaz kutular tema yüzeyini alır */
html.ui-nova .rdz-btn, html.ui-nova .rdz-btn *, html.ui-nova [class*="bg-orange-5"]:not([class*="/"]), html.ui-nova [class*="bg-orange-5"]:not([class*="/"]) *,
html.ui-nova [class*="bg-primary-5"]:not([class*="/"]), html.ui-nova [class*="bg-primary-5"]:not([class*="/"]) *,
html.ui-nova [class*="from-orange-5"], html.ui-nova [class*="from-orange-5"] *, html.ui-nova [class*="from-emerald-5"].rdz-btn { color: var(--on-accent) !important; }
html.ui-nova section .bg-white, html.ui-nova footer .bg-white { background-color: var(--surface) !important; color: var(--text) !important; }
html.ui-nova section .bg-white [class*="text-slate-8"], html.ui-nova section .bg-white [class*="text-slate-9"] { color: var(--text) !important; }

/* by QOR — 2026-10-28 kontrast taraması 2: 3 adım kartı etiketleri ve başlık üstü yazı okunur; bölüm köşelerindeki eski turuncu/mavi ışıklar kapalı */
html.ui-nova .hw-tags span { color: color-mix(in oklch, var(--text) 78%, transparent) !important; background: color-mix(in oklch, var(--surface) 62%, transparent) !important; border-color: transparent !important; }
html.ui-nova #hw-section .text-center > .inline-flex[style*="color:#f97316"] { color: var(--text3) !important; letter-spacing: 4px !important; font-family: var(--m); }
html.ui-nova #hw-section > div[style*="radial-gradient"] { display: none !important; }
/* by QOR — 2026-10-28 kontrast taraması 3: ridoza-apple-v2'nin :root[data-theme] belirteçleri (daha güçlü seçici) Nova'nınkini eziyordu;
   turuncu zemin üstündeki yazı her temada koyu (≥4.5:1). Açık temada küçük turuncu yazılar koyu turuncu. */
html.ui-nova[data-theme="dark"], html.ui-nova[data-theme="light"] { --accent: #f97316; --accent-hover: #ea640b; --on-accent: oklch(20% .05 45); }
html.ui-nova[data-theme="light"] [class*="text-orange-"], html.ui-nova[data-theme="light"] [class*="text-primary-"], html.ui-nova[data-theme="light"] .text-accent,
html.ui-nova[data-theme="light"] [style*="color:#f97316"]:not([style*="background"]), html.ui-nova[data-theme="light"] [style*="color: #f97316"]:not([style*="background"]) { color: oklch(50% .16 45) !important; }
/* by QOR — 2026-10-28 kontrast taraması 4: kalan butonlar/sekmeler + açık temada sabit renkli metinler */
html.ui-nova [class*="bg-emerald-5"]:not([class*="/"]), html.ui-nova [class*="bg-emerald-5"]:not([class*="/"]) *,
html.ui-nova [class*="text-white"][style*="var(--accent)"], html.ui-nova [class*="text-white"][style*="var(--accent)"] * { color: var(--on-accent) !important; }
html.ui-nova .ap-feature-body { color: var(--text2) !important; }
html.ui-nova .ap-ai-live { color: var(--i-mint) !important; }
html.ui-nova[data-theme="light"] [style*="color:#16a34a"] { color: oklch(42% .12 150) !important; }
html.ui-nova[data-theme="light"] a[style*="color:var(--accent)"] { color: oklch(50% .16 45) !important; }
/* by QOR — 2026-10-28 kontrast taraması 5: ridoza-apple-v2'deki ":root[data-theme] body.ap-ui .is-light [class*=text-white]" (0,5,1) kuralını
   aşacak özgüllükte — turuncu zeminli bağlantı/butonların yazısı koyu, aktif sekme zemini turuncu */
html.ui-nova[data-theme] body.ap-ui [class*="text-white"][style*="var(--accent)"], html.ui-nova[data-theme] body.ap-ui [class*="text-white"][style*="var(--accent)"] *,
html.ui-nova[data-theme] body.ap-ui [class*="text-white"][class*="bg-emerald-5"]:not([class*="/"]), html.ui-nova[data-theme] body.ap-ui [class*="text-white"][class*="bg-emerald-5"]:not([class*="/"]) *,
html.ui-nova[data-theme] body.ap-ui .rdz-btn[class*="text-white"], html.ui-nova[data-theme] body.ap-ui .rdz-btn[class*="text-white"] * { color: var(--on-accent) !important; }
html.ui-nova[data-theme] body.ap-ui [class*="bg-emerald-5"]:not([class*="/"]):not([class*="hover:"]) { background-color: var(--accent) !important; }
html.ui-nova[data-theme="light"] body.ap-ui .ap-model__tag, html.ui-nova[data-theme="light"] body.ap-ui .ap-eticket .num { color: oklch(50% .16 45) !important; }
html.ui-nova[data-theme="light"] body.ap-ui .ap-eticket__live { color: oklch(42% .12 150) !important; }
