/* ==========================================================================
   by_QOR — P2PRide web tasarım sistemi (qor-ui.css)
   Tek token seti + ortak bileşenler. Frontend layout'a BİR kez bağlanır
   (frontend/layouts/app.blade.php, filemtime cache-busting).
   Sayfa-içi <style> blokları bundan SONRA yüklenir ve üstüne yazabilir; bu
   yüzden buradaki kurallar düşük özgüllükte tutuldu.
   Tema: lacivert zemin + turuncu vurgu (koyu yüzey). Bileşenler koyu zeminde
   okunaklı olacak şekilde ayarlıdır ("dark-safe").
   ========================================================================== */

:root {
    /* --- marka --- */
    --qor-navy: #0b1220;            /* en koyu zemin */
    --qor-navy-2: #121d31;          /* marka lacivert */
    --qor-blue: #1c3b55;            /* marka mavi */
    --qor-orange: #ff7a1a;          /* marka turuncu */
    --qor-orange-dark: #e8600a;
    --qor-orange-soft: rgba(255, 122, 26, .14);
    --qor-orange-line: rgba(255, 122, 26, .40);

    /* --- yüzeyler (koyu tema) --- */
    --qor-bg: var(--qor-navy);
    --qor-surface: #16233a;
    --qor-glass: rgba(255, 255, 255, .06);
    --qor-glass-2: rgba(255, 255, 255, .10);
    --qor-sunken: rgba(0, 0, 0, .24);
    --qor-border: rgba(255, 255, 255, .14);
    --qor-border-strong: rgba(255, 255, 255, .24);

    /* --- metin --- */
    --qor-text: #f4f6fb;
    --qor-text-dim: rgba(255, 255, 255, .62);
    --qor-text-faint: rgba(255, 255, 255, .42);

    /* --- durum renkleri --- */
    --qor-success: #3ddc84;
    --qor-success-soft: rgba(61, 220, 132, .13);
    --qor-success-line: rgba(61, 220, 132, .40);
    --qor-danger: #ff6b6b;
    --qor-danger-soft: rgba(255, 107, 107, .13);
    --qor-danger-line: rgba(255, 107, 107, .40);
    --qor-warn: #ffc24b;
    --qor-warn-soft: rgba(255, 194, 75, .13);
    --qor-warn-line: rgba(255, 194, 75, .40);
    --qor-info: #6cb4ff;
    --qor-info-soft: rgba(108, 180, 255, .13);
    --qor-info-line: rgba(108, 180, 255, .40);

    /* --- gradyanlar --- */
    --qor-grad-cta: linear-gradient(135deg, var(--qor-orange), var(--qor-orange-dark));
    --qor-grad-page:
        radial-gradient(760px 420px at 10% -12%, rgba(255, 122, 26, .14), transparent 60%),
        linear-gradient(165deg, var(--qor-navy) 0%, var(--qor-navy-2) 55%, var(--qor-blue) 150%);

    /* --- radius: 10 / 14 / 20 / pill --- */
    --qor-r-sm: 10px;
    --qor-r-md: 14px;
    --qor-r-lg: 20px;
    --qor-r-pill: 999px;

    /* --- gölgeler --- */
    --qor-shadow-1: 0 2px 8px -2px rgba(0, 0, 0, .35);
    --qor-shadow-2: 0 18px 40px -18px rgba(0, 0, 0, .6);
    --qor-shadow-3: 0 40px 90px -30px rgba(0, 0, 0, .65);
    --qor-shadow-cta: 0 12px 26px -10px rgba(255, 122, 26, .55);

    /* --- boşluk ölçeği (4'lük) --- */
    --qor-s-1: 4px;
    --qor-s-2: 8px;
    --qor-s-3: 12px;
    --qor-s-4: 16px;
    --qor-s-5: 24px;
    --qor-s-6: 32px;
    --qor-s-7: 48px;
    --qor-s-8: 64px;

    /* --- tipografi --- */
    --qor-font-head: 'Space Grotesk', system-ui, -apple-system, 'Segoe UI', sans-serif;
    --qor-font-body: 'Plus Jakarta Sans', system-ui, -apple-system, 'Segoe UI', sans-serif;

    /* --- hareket --- */
    --qor-ease: cubic-bezier(.22, 1, .36, 1);   /* ease-out-quint */
    --qor-dur: .18s;

    /* --- odak halkası --- */
    --qor-ring: 0 0 0 3px rgba(255, 122, 26, .45);

    /* üst şerit + sabit olmayan (absolute) header yüksekliği (navigation.blade.php) */
    --qor-topbar-h: 44px;
    --qor-header-h: 68px;

    /* by_QOR — W1: opak katmanlı yüzeyler (cam yerine net katman) */
    --qor-surface-1: #121d31;       /* sayfa içi bölüm zemini */
    --qor-surface-2: #172640;       /* kart */
    --qor-surface-3: #1d2f4d;       /* kart üstü öğe / hover */
    --qor-line: rgba(255, 255, 255, .09);
}

/* ---------- temel ---------- */
body,
.navbar-nav .nav-link,
.tab-button,
.form-submit-button {
    font-family: var(--qor-font-body);
}

h1, h2, h3, h4, .navbar-brand {
    font-family: var(--qor-font-head);
}

/* Site tamamen koyu temalı: sayfa kenarlarında beyaz boşluk görünmesin */
body { background-color: var(--qor-navy); }

::selection { background: rgba(255, 122, 26, .35); color: #fff; }

/* Klavye odak halkası — yalnızca klavye ile gezinmede */
a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
[role="button"]:focus-visible,
[tabindex]:focus-visible {
    outline: 2px solid var(--qor-orange);
    outline-offset: 2px;
    box-shadow: none;
}

.qor-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;
}

/* Eski tema butonları: turuncu CTA */
.tab-button, .form-submit-button, button[type="submit"]:not(.qor-cta):not(.cab-logout):not(.qor-plain) {
    background: var(--qor-grad-cta) !important;
    border: none !important;
    box-shadow: 0 10px 22px -8px rgba(255, 122, 26, .5);
}

/* ---------- sayfa zemini ---------- */
.qor-page {
    min-height: 76vh;
    padding: var(--qor-s-7) 20px 80px;
    color: var(--qor-text);
    background: var(--qor-grad-page);
}
.qor-wrap { max-width: 1180px; margin: 0 auto; }
.qor-wrap--narrow { max-width: 640px; margin: 0 auto; }

.qor-h1 { font-family: var(--qor-font-head); font-weight: 700; font-size: clamp(22px, 3vw, 28px); line-height: 1.2; margin: 0 0 6px; color: var(--qor-text); }
.qor-lead { color: var(--qor-text-dim); font-size: 14px; line-height: 1.6; max-width: 68ch; margin: 0 0 var(--qor-s-5); }
.qor-eyebrow { font-size: 11px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; color: var(--qor-orange); }

/* ---------- card ---------- */
.qor-card {
    background: var(--qor-glass);
    border: 1px solid var(--qor-border);
    border-radius: var(--qor-r-lg);
    padding: 20px 22px;
    margin-bottom: var(--qor-s-4);
    color: var(--qor-text);
}
.qor-card--flat { background: transparent; }
.qor-card--raised { background: var(--qor-surface); box-shadow: var(--qor-shadow-2); }
.qor-card-title { font-family: var(--qor-font-head); font-weight: 700; font-size: 16px; margin: 0 0 var(--qor-s-3); }

/* ---------- CTA / butonlar ---------- */
.qor-cta {
    display: inline-flex; align-items: center; justify-content: center; gap: 8px;
    min-height: 46px; padding: 0 22px;
    border-radius: 12px; border: 1px solid transparent;
    font-family: var(--qor-font-body); font-weight: 700; font-size: 14px; line-height: 1;
    color: #fff !important; text-decoration: none !important; cursor: pointer; white-space: nowrap;
    background: var(--qor-grad-cta);
    box-shadow: var(--qor-shadow-cta);
    transition: transform var(--qor-dur) var(--qor-ease), box-shadow var(--qor-dur) var(--qor-ease), background-color var(--qor-dur) var(--qor-ease), border-color var(--qor-dur) var(--qor-ease);
}
.qor-cta:hover { transform: translateY(-1px); box-shadow: 0 16px 30px -10px rgba(255, 122, 26, .6); }
.qor-cta:active { transform: translateY(0); }
.qor-cta:disabled, .qor-cta[aria-disabled="true"] { opacity: .55; cursor: not-allowed; transform: none; box-shadow: none; }
.qor-cta--secondary { background: var(--qor-glass-2); border-color: var(--qor-border); box-shadow: none; }
.qor-cta--secondary:hover { background: rgba(255, 255, 255, .14); border-color: var(--qor-border-strong); box-shadow: none; }
.qor-cta--ghost { background: transparent; border-color: transparent; box-shadow: none; color: var(--qor-orange) !important; padding: 0 12px; }
.qor-cta--ghost:hover { background: var(--qor-orange-soft); box-shadow: none; }
.qor-cta--danger { background: transparent; border-color: var(--qor-danger-line); color: var(--qor-danger) !important; box-shadow: none; }
.qor-cta--danger:hover { background: var(--qor-danger-soft); box-shadow: none; }
.qor-cta--block { display: flex; width: 100%; }
.qor-cta--sm { min-height: 36px; padding: 0 14px; font-size: 12.5px; border-radius: var(--qor-r-sm); }
.qor-cta--lg { min-height: 52px; padding: 0 28px; font-size: 15px; }

/* ---------- pill / durum çipleri ---------- */
.qor-pill, .qor-chip {
    display: inline-flex; align-items: center; gap: 6px;
    font-size: 11.5px; font-weight: 700; line-height: 1;
    padding: 6px 11px; border-radius: var(--qor-r-pill);
    border: 1px solid var(--qor-border); color: var(--qor-text-dim); background: var(--qor-glass);
    white-space: nowrap;
}
.qor-chip::before {
    content: ""; width: 6px; height: 6px; border-radius: 50%; background: currentColor; flex-shrink: 0;
}
.qor-chip--plain::before { display: none; }
.qor-chip--success, .qor-pill.ok, .qor-pill.approved { color: var(--qor-success); background: var(--qor-success-soft); border-color: var(--qor-success-line); }
.qor-chip--warn, .qor-pill.pending { color: var(--qor-orange); background: var(--qor-orange-soft); border-color: var(--qor-orange-line); }
.qor-chip--danger, .qor-pill.rejected { color: var(--qor-danger); background: var(--qor-danger-soft); border-color: var(--qor-danger-line); }
.qor-chip--info { color: var(--qor-info); background: var(--qor-info-soft); border-color: var(--qor-info-line); }
.qor-chip--neutral { color: var(--qor-text-dim); }

/* ---------- boş durum ---------- */
.qor-empty,
.cab-empty {
    display: flex; flex-direction: column; align-items: center; text-align: center; gap: 6px;
    padding: 48px 24px;
    background: var(--qor-glass);
    border: 1px dashed var(--qor-border);
    border-radius: var(--qor-r-lg);
    color: var(--qor-text-dim);
    font-size: 13.5px; line-height: 1.6;
}
.qor-empty-icon,
.cab-empty::before {
    width: 52px; height: 52px; border-radius: 16px; margin-bottom: 8px;
    display: inline-flex; align-items: center; justify-content: center;
    background: var(--qor-orange-soft); color: var(--qor-orange);
    border: 1px solid var(--qor-orange-line);
}
/* Carrier sayfalarındaki metin-only .cab-empty'ye markup değiştirmeden ikon */
.cab-empty::before {
    content: "";
    background-color: var(--qor-orange-soft);
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ff7a1a' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 12h-6l-2 3h-4l-2-3H2'/%3E%3Cpath d='M5.45 5.11 2 12v6a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-6l-3.45-6.89A2 2 0 0 0 16.76 4H7.24a2 2 0 0 0-1.79 1.11z'/%3E%3C/svg%3E");
    background-repeat: no-repeat; background-position: center; background-size: 24px 24px;
}
.cab-empty { max-width: none; }
.qor-empty-title { font-family: var(--qor-font-head); font-weight: 700; font-size: 17px; color: var(--qor-text); margin: 0; }
.qor-empty-text { max-width: 46ch; margin: 0 0 10px; }

/* ---------- flash / bildirim şeridi ---------- */
.qor-flash {
    display: flex; align-items: flex-start; gap: 10px;
    padding: 12px 16px; margin-bottom: var(--qor-s-4);
    border-radius: 12px; border: 1px solid var(--qor-success-line);
    background: var(--qor-success-soft); color: var(--qor-success);
    font-size: 13.5px; font-weight: 600; line-height: 1.5;
}
.qor-flash--error { border-color: var(--qor-danger-line); background: var(--qor-danger-soft); color: var(--qor-danger); }
.qor-flash--warn { border-color: var(--qor-orange-line); background: var(--qor-orange-soft); color: var(--qor-orange); }
.qor-flash--info { border-color: var(--qor-info-line); background: var(--qor-info-soft); color: var(--qor-info); }
.qor-flash ul { margin: 0; padding-left: 18px; }
.qor-flash .qor-flash-action { margin-left: auto; flex-shrink: 0; }

/* ---------- form alanları ---------- */
.qor-field { margin-bottom: 14px; }
.qor-field > label, .qor-label {
    display: block; font-size: 11.5px; font-weight: 700; letter-spacing: .03em; text-transform: uppercase;
    color: var(--qor-text-dim); margin-bottom: 6px;
}
.qor-input,
.qor-field input:not([type="radio"]):not([type="checkbox"]),
.qor-field select,
.qor-field textarea {
    width: 100%; min-height: 48px; padding: 0 14px;
    border-radius: 11px; border: 1px solid var(--qor-border);
    background: var(--qor-sunken); color: var(--qor-text);
    font-family: var(--qor-font-body); font-size: 14px; font-weight: 600;
    outline: none;
    transition: border-color var(--qor-dur) var(--qor-ease), box-shadow var(--qor-dur) var(--qor-ease);
}
.qor-field textarea, textarea.qor-input { padding: 12px 14px; min-height: 96px; resize: vertical; line-height: 1.5; }
.qor-input::placeholder, .qor-field input::placeholder, .qor-field textarea::placeholder { color: var(--qor-text-faint); font-weight: 500; }
.qor-input:focus, .qor-field input:focus, .qor-field select:focus, .qor-field textarea:focus {
    border-color: var(--qor-orange); box-shadow: var(--qor-ring);
}
.qor-field .qor-hint { font-size: 12px; color: var(--qor-text-faint); margin-top: 5px; }
.qor-field.has-error input, .qor-input[aria-invalid="true"] { border-color: var(--qor-danger); }
.qor-grid2 { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
@media (max-width: 520px) { .qor-grid2 { grid-template-columns: 1fr; gap: 0; } }

/* Segment / radio seçimi */
.qor-segment { display: flex; gap: 8px; flex-wrap: wrap; }
.qor-segment label {
    flex: 1; min-width: 110px; display: flex; align-items: center; justify-content: center; gap: 8px;
    min-height: 46px; padding: 0 14px; border-radius: 11px; border: 1px solid var(--qor-border);
    color: var(--qor-text-dim); font-weight: 700; font-size: 13px; cursor: pointer; margin: 0;
    transition: border-color var(--qor-dur) var(--qor-ease), background-color var(--qor-dur) var(--qor-ease), color var(--qor-dur) var(--qor-ease);
}
.qor-segment input { position: absolute; opacity: 0; pointer-events: none; }
.qor-segment label:has(input:checked) { border-color: var(--qor-orange); background: var(--qor-orange-soft); color: var(--qor-orange); }
.qor-segment label:has(input:focus-visible) { box-shadow: var(--qor-ring); }

/* ---------- spinner / skeleton ---------- */
.qor-spinner, .qor-spin {
    display: inline-block; width: 16px; height: 16px; flex-shrink: 0;
    border-radius: 50%; border: 2px solid var(--qor-border); border-top-color: var(--qor-orange);
    animation: qor-spin .8s linear infinite;
}
.qor-spinner--lg { width: 28px; height: 28px; border-width: 3px; }
@keyframes qor-spin { to { transform: rotate(360deg); } }

.qor-skeleton {
    display: block; border-radius: var(--qor-r-sm); min-height: 14px;
    background: linear-gradient(90deg, rgba(255,255,255,.05) 25%, rgba(255,255,255,.11) 45%, rgba(255,255,255,.05) 65%);
    background-size: 300% 100%;
    animation: qor-shimmer 1.4s ease-in-out infinite;
}
.qor-skeleton--card { height: 108px; border-radius: var(--qor-r-lg); margin-bottom: 12px; }
@keyframes qor-shimmer { from { background-position: 100% 0; } to { background-position: 0 0; } }

/* ---------- toast (assets/js/qor-ui.js → window.qorToast) ---------- */
.qor-toasts {
    position: fixed; left: 50%; bottom: 24px; transform: translateX(-50%);
    z-index: 100000; display: flex; flex-direction: column; gap: 10px; align-items: center;
    width: min(420px, calc(100vw - 32px)); pointer-events: none;
}
.qor-toast {
    pointer-events: auto; width: 100%;
    display: flex; align-items: flex-start; gap: 10px;
    padding: 13px 16px; border-radius: var(--qor-r-md);
    background: #1a2740; color: var(--qor-text);
    border: 1px solid var(--qor-border-strong);
    box-shadow: var(--qor-shadow-3);
    font-family: var(--qor-font-body); font-size: 13.5px; font-weight: 600; line-height: 1.45;
    animation: qor-toast-in .32s var(--qor-ease) both;
}
.qor-toast::before { content: ""; width: 8px; height: 8px; border-radius: 50%; margin-top: 6px; flex-shrink: 0; background: var(--qor-info); }
.qor-toast--success::before { background: var(--qor-success); }
.qor-toast--error::before { background: var(--qor-danger); }
.qor-toast--warn::before { background: var(--qor-orange); }
.qor-toast .qor-toast-x { margin-left: auto; background: none; border: 0; color: var(--qor-text-dim); cursor: pointer; font-size: 18px; line-height: 1; padding: 0 2px; }
.qor-toast.is-leaving { animation: qor-toast-out .22s ease-in both; }
@keyframes qor-toast-in { from { opacity: 0; transform: translateY(12px); } to { opacity: 1; transform: none; } }
@keyframes qor-toast-out { to { opacity: 0; transform: translateY(8px); } }

/* ---------- inline hata + yeniden dene ---------- */
.qor-retry {
    display: flex; align-items: center; gap: 12px; flex-wrap: wrap;
    padding: 14px 16px; margin-bottom: 12px; border-radius: var(--qor-r-md);
    background: var(--qor-danger-soft); border: 1px solid var(--qor-danger-line); color: var(--qor-text);
    font-size: 13.5px;
}
.qor-retry[hidden] { display: none; }
.qor-retry b { color: var(--qor-danger); }
.qor-retry .qor-cta { margin-left: auto; }

/* ==========================================================================
   Global kabuk: üst şerit + header + footer + giriş pop-up'ı
   (önceden frontend/layouts/app.blade.php içinde inline idi)
   ========================================================================== */

/* Header "position:absolute; top:0" (frontend-style.css) üst şeridin
   üzerine biniyordu → şerit görünmüyordu. Header'ı şeridin altına indir. */
.wrapper { position: relative; }
.wrapper > .qor-topbar ~ header { top: var(--qor-topbar-h); }
.qor-topbar { height: var(--qor-topbar-h); padding: 0 !important; display: flex; align-items: center; box-sizing: border-box; }
.qor-topbar-inner { width: 100%; }
.qor-topbar-pill { padding: 5px 14px !important; }

/* Header içerik akışında yer kaplamıyor (absolute). Marka sayfalarının ilk
   bloğu header'ın altında kalmasın diye üst boşluğu header yüksekliği kadar
   artır. #content ile özgüllük sayfa-içi <style>'ları geçer. */
#content > .qor-auth,
#content > .qor-trip-page,
#content > .qor-offers-page,
#content > .qor-pay-page,
#content > .qor-trips-page,
#content > .cab,
#content > .qor-notif-page { padding-top: calc(var(--qor-header-h) + 28px); }
#content > .qor-auth { padding-top: calc(var(--qor-header-h) + 40px); }
#content > .qor-dr-hero,
#content > .qor-faq-hero { padding-top: calc(var(--qor-header-h) + 48px); }

@media (max-width: 767px) {
    .qor-topbar-inner {
        flex-wrap: nowrap !important; justify-content: flex-start !important;
        overflow-x: auto; scrollbar-width: none; -webkit-overflow-scrolling: touch;
        padding: 0 16px !important;
    }
    .qor-topbar-inner::-webkit-scrollbar { display: none; }
    .qor-topbar-pill { flex-shrink: 0; }
}

footer {
    background: linear-gradient(165deg, var(--qor-navy) 0%, var(--qor-navy-2) 100%) !important;
    padding-top: 50px;
}
footer .footer-social a {
    width: 38px; height: 38px; border-radius: 50%;
    background: var(--qor-glass); border: 1px solid var(--qor-border);
    display: inline-flex; align-items: center; justify-content: center;
    color: #fff !important;
}
footer .footer-social a:hover { background: var(--qor-orange); border-color: transparent; }
footer p, footer a { color: var(--qor-text-dim) !important; }
footer .footer-logo img { filter: brightness(0) invert(1); }

.login-popup, .login-modal {
    background: linear-gradient(180deg, rgba(255,255,255,.10), rgba(255,255,255,.04)) !important;
    -webkit-backdrop-filter: blur(24px);
    backdrop-filter: blur(24px);
    border: 1px solid var(--qor-border) !important;
    box-shadow: var(--qor-shadow-3) !important;
}
.login-popup .text-input, .login-modal .text-input {
    background: rgba(255,255,255,.05) !important;
    border: 1px solid var(--qor-border) !important;
    color: #fff !important;
}
.login-popup label, .login-modal label,
.login-popup h2, .login-modal h2,
.login-popup .modal-title, .login-modal .modal-title { color: #fff !important; }
.login-popup .login-helper, .login-popup .login-helper span { color: var(--qor-text-dim) !important; }
.login-popup .link, .login-modal .link { color: var(--qor-orange) !important; }
.login-modal .back-primary { background: linear-gradient(165deg, var(--qor-navy) 0%, var(--qor-blue) 140%) !important; }

/* Hesap menüsü (navigation) — buton olarak render edilen öğeler */
.login-container .dropdown-toggle.qor-acct {
    color: #fff; font-weight: 600; font-size: 14px; cursor: pointer;
    display: inline-flex; align-items: center; gap: 8px;
}
.login-container .dropdown-toggle { white-space: nowrap; }
@media (max-width: 575px) {
    .login-container .dropdown-toggle { max-width: 42vw; overflow: hidden; text-overflow: ellipsis; padding: 8px 14px !important; font-size: 13px; }
}
.login-container .dropdown-menu button.dropdown-item { background: none; border: 0; width: 100%; text-align: left; cursor: pointer; box-shadow: none !important; }
.offcanvas-nav_links button.nav-link { background: none !important; border: 0 !important; box-shadow: none !important; width: 100%; text-align: left; cursor: pointer; color: rgba(255,255,255,.82); }

/* WhatsApp balonu (layout) */
.qor-wa-fab {
    position: fixed; right: 22px; bottom: 22px; z-index: 99999;
    width: 58px; height: 58px; border-radius: 50%;
    background: linear-gradient(135deg, #25D366, #1DA851);
    display: flex; align-items: center; justify-content: center;
    box-shadow: 0 10px 24px -6px rgba(0,0,0,.45);
    transition: transform var(--qor-dur) var(--qor-ease);
}
.qor-wa-fab:hover { transform: translateY(-2px); }
/* taşıyıcı kabinindeki mobil alt sekme çubuğunun üstünde kalsın */
body.qor-has-tabbar .qor-wa-fab { bottom: 86px; }
/* by_QOR — kabinde mobilde form alanlarını kapatmasın: daha küçük, yarı saydam */
@media (max-width: 900px) {
    body.qor-has-tabbar .qor-wa-fab { width: 46px; height: 46px; right: 12px; opacity: .88; }
    body.qor-has-tabbar .qor-wa-fab svg { width: 24px; height: 24px; }
}
body.cab-drawer-open .qor-wa-fab { display: none; }
@media (min-width: 901px) { body.qor-has-tabbar .qor-wa-fab { bottom: 22px; } }

/* ==========================================================================
   Taşıyıcı kabini (frontend/carrier/_shell.blade.php)
   ========================================================================== */
.cab {
    min-height: 82vh; color: var(--qor-text);
    background: radial-gradient(760px 420px at 92% -10%, rgba(255,122,26,.13), transparent 60%),
                linear-gradient(165deg, var(--qor-navy) 0%, var(--qor-navy-2) 55%, var(--qor-blue) 160%);
}
.cab-grid { max-width: 1200px; margin: 0 auto; display: grid; grid-template-columns: 252px minmax(0, 1fr); gap: 28px; padding: 34px 22px 70px; align-items: start; }

.cab-side { position: sticky; top: 20px; }
.cab-who {
    display: flex; align-items: center; gap: 10px; padding: 4px 6px 16px;
}
.cab-who .av {
    width: 38px; height: 38px; border-radius: 12px; flex-shrink: 0;
    background: linear-gradient(135deg, var(--qor-blue), var(--qor-navy-2));
    border: 1px solid var(--qor-border);
    display: flex; align-items: center; justify-content: center;
    font-family: var(--qor-font-head); font-weight: 700; font-size: 14px;
}
.cab-who .nm { font-weight: 700; font-size: 13.5px; line-height: 1.25; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.cab-who .kd { font-size: 11.5px; color: var(--qor-text-dim); }

.cab-nav { background: var(--qor-glass); border: 1px solid var(--qor-border); border-radius: 16px; padding: 8px; margin-bottom: 14px; }
.cab-nav-group + .cab-nav-group { margin-top: 6px; padding-top: 6px; border-top: 1px solid rgba(255,255,255,.07); }
.cab-nav-label {
    font-size: 10.5px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase;
    color: var(--qor-text-faint); padding: 8px 12px 4px; margin: 0;
}
.cab-nav a {
    display: flex; align-items: center; gap: 10px; padding: 9px 12px; border-radius: var(--qor-r-sm);
    color: var(--qor-text-dim); text-decoration: none; font-size: 13px; font-weight: 600;
    transition: background-color var(--qor-dur) var(--qor-ease), color var(--qor-dur) var(--qor-ease);
}
.cab-nav a svg { width: 17px; height: 17px; flex-shrink: 0; opacity: .85; }
.cab-nav a .lbl { flex: 1; min-width: 0; }
.cab-nav a:hover { color: #fff; background: rgba(255,255,255,.05); text-decoration: none; }
.cab-nav a[aria-current="page"], .cab-nav a.on { color: #fff; background: var(--qor-grad-cta); box-shadow: 0 8px 18px -10px rgba(255,122,26,.7); }
.cab-nav a[aria-current="page"] svg { opacity: 1; }
.cab-nav a[aria-disabled="true"] { opacity: .5; cursor: not-allowed; }
.cab-nav a[aria-disabled="true"]:hover { background: none; color: var(--qor-text-dim); }
.cab-nav .soon, .cab-nav .cnt {
    font-size: 9.5px; font-weight: 800; text-transform: uppercase; color: var(--qor-text-dim);
    border: 1px solid var(--qor-border); border-radius: var(--qor-r-pill); padding: 2px 7px;
}
.cab-nav .cnt { background: var(--qor-orange); color: #fff; border-color: transparent; min-width: 20px; text-align: center; }
.cab-nav a[aria-current="page"] .cnt { background: rgba(255,255,255,.25); }

.cab-logout {
    width: 100%; display: flex; align-items: center; gap: 10px; text-align: left; padding: 10px 14px; border-radius: var(--qor-r-sm);
    background: transparent !important; border: 1px solid var(--qor-border) !important; box-shadow: none !important;
    color: var(--qor-text-dim); font-size: 13px; font-weight: 700; cursor: pointer;
    transition: border-color var(--qor-dur) var(--qor-ease), color var(--qor-dur) var(--qor-ease);
}
.cab-logout svg { width: 17px; height: 17px; flex-shrink: 0; }
.cab-logout:hover { border-color: var(--qor-danger) !important; color: var(--qor-danger); }

.cab-stats { display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; margin-bottom: 22px; }
.cab-stat { background: var(--qor-glass); border: 1px solid var(--qor-border); border-radius: var(--qor-r-md); padding: 14px 16px; }
.cab-stat .v { font-family: var(--qor-font-head); font-weight: 700; font-size: 21px; line-height: 1.2; }
.cab-stat .v.orange { color: var(--qor-orange); }
.cab-stat .l { font-size: 11.5px; color: var(--qor-text-dim); font-weight: 600; margin-top: 3px; }

.cab-main { min-width: 0; }
.cab-h { font-family: var(--qor-font-head); font-weight: 700; font-size: 22px; margin: 0 0 4px; }
.cab-h-sub { color: var(--qor-text-dim); font-size: 13.5px; margin-bottom: 22px; max-width: 70ch; }
.cab-flash { background: var(--qor-success-soft); border: 1px solid var(--qor-success-line); color: var(--qor-success); border-radius: 12px; padding: 12px 16px; margin-bottom: 18px; font-size: 13.5px; font-weight: 600; }
.cab-flash.err { background: var(--qor-danger-soft); border-color: var(--qor-danger-line); color: var(--qor-danger); }
.cab-pendingbar { background: var(--qor-orange-soft); border: 1px solid var(--qor-orange-line); color: var(--qor-orange); border-radius: 12px; padding: 12px 16px; margin-bottom: 18px; font-size: 13px; font-weight: 600; }
.cab-soon { text-align: center; padding: 64px 22px; background: var(--qor-glass); border: 1px dashed var(--qor-border); border-radius: var(--qor-r-lg); }
.cab-soon h3 { font-size: 17px; margin-bottom: 8px; }
.cab-soon p { color: var(--qor-text-dim); font-size: 13px; }

/* Mobil alt sekme çubuğu + "Diğer" çekmecesi (yalnızca <=900px) */
.cab-tabbar, .cab-drawer, .cab-drawer-scrim { display: none; }

@media (max-width: 900px) {
    .cab-grid { grid-template-columns: 1fr; padding: 22px 16px 100px; gap: 0; }
    .cab-side { display: none; }
    .cab-stats { grid-template-columns: 1fr 1fr; gap: 10px; }
    .cab-stat { padding: 12px 14px; }
    .cab-stat .v { font-size: 18px; }

    .cab-tabbar {
        display: grid; grid-template-columns: repeat(5, 1fr);
        position: fixed; left: 0; right: 0; bottom: 0; z-index: 9990;
        background: rgba(11, 18, 32, .96);
        -webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px);
        border-top: 1px solid var(--qor-border);
        padding: 6px 6px calc(6px + env(safe-area-inset-bottom));
    }
    .cab-tabbar a, .cab-tabbar button {
        display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 3px;
        min-height: 52px; border-radius: 12px; position: relative;
        color: var(--qor-text-dim); font-size: 10.5px; font-weight: 700; text-decoration: none;
        background: none !important; border: 0 !important; box-shadow: none !important; cursor: pointer; padding: 0;
        font-family: var(--qor-font-body);
    }
    .cab-tabbar svg { width: 21px; height: 21px; }
    .cab-tabbar a[aria-current="page"], .cab-tabbar button[aria-expanded="true"], .cab-tabbar button.on { color: var(--qor-orange); }
    .cab-tabbar a[aria-current="page"]::before {
        content: ""; position: absolute; top: -6px; left: 30%; right: 30%; height: 3px; border-radius: 0 0 3px 3px; background: var(--qor-orange);
    }
    .cab-tabbar .cnt {
        position: absolute; top: 4px; left: calc(50% + 6px); min-width: 17px; height: 17px; padding: 0 4px;
        border-radius: 9px; background: var(--qor-orange); color: #fff; font-size: 10px; line-height: 17px; text-align: center;
    }

    .cab-drawer-scrim {
        position: fixed; inset: 0; z-index: 9991; background: rgba(3, 6, 12, .6);
        opacity: 0; pointer-events: none; transition: opacity .25s var(--qor-ease);
        display: block;
    }
    .cab-drawer {
        display: block; position: fixed; left: 0; right: 0; bottom: 0; z-index: 9992;
        max-height: 82vh; overflow-y: auto;
        background: var(--qor-navy-2); border-top: 1px solid var(--qor-border);
        border-radius: 22px 22px 0 0; padding: 10px 14px calc(18px + env(safe-area-inset-bottom));
        transform: translateY(105%); transition: transform .32s var(--qor-ease);
        visibility: hidden;
    }
    .cab-drawer .grip { width: 40px; height: 4px; border-radius: 2px; background: var(--qor-border-strong); margin: 4px auto 10px; }
    .cab-drawer .cab-nav { background: none; border: 0; padding: 0; margin: 0 0 12px; }
    body.cab-drawer-open .cab-drawer { transform: none; visibility: visible; }
    body.cab-drawer-open .cab-drawer-scrim { opacity: 1; pointer-events: auto; }
}

/* ==========================================================================
   Bildirim merkezi (Faz 2) — navbar zili + açılır panel + /bildirimler listesi
   Markup: frontend/includes/navigation.blade.php (zil + panel),
           frontend/partials/notif_list.blade.php (sayfa listesi)
   JS: assets/js/qor-ui.js → [data-qor-notif]
   ========================================================================== */
.qor-notif-wrap { position: relative; display: inline-flex; margin-right: 10px; }
.qor-bell {
    position: relative; width: 40px; height: 40px; border-radius: 50%; padding: 0;
    display: inline-flex; align-items: center; justify-content: center;
    background: var(--qor-glass) !important; border: 1px solid var(--qor-border) !important; box-shadow: none !important;
    color: var(--qor-text); cursor: pointer;
    transition: background-color var(--qor-dur) var(--qor-ease), border-color var(--qor-dur) var(--qor-ease), color var(--qor-dur) var(--qor-ease);
}
.qor-bell svg { width: 19px; height: 19px; }
.qor-bell:hover, .qor-bell[aria-expanded="true"] { background: var(--qor-glass-2) !important; border-color: var(--qor-border-strong) !important; color: #fff; }
.qor-bell[aria-expanded="true"] { border-color: var(--qor-orange-line) !important; color: var(--qor-orange); }
.qor-bell-badge {
    position: absolute; top: -4px; right: -5px; min-width: 19px; height: 19px; padding: 0 5px;
    border-radius: var(--qor-r-pill); background: var(--qor-orange); color: #fff;
    font: 800 10.5px/19px var(--qor-font-body); text-align: center; font-variant-numeric: tabular-nums;
    box-shadow: 0 0 0 2px var(--qor-navy);
}
.qor-bell-badge[hidden] { display: none; }
.qor-bell.is-ping .qor-bell-badge { animation: qor-badge-pop .5s var(--qor-ease); }
@keyframes qor-badge-pop { 0% { transform: scale(.4); } 60% { transform: scale(1.18); } 100% { transform: scale(1); } }

.qor-notif-panel {
    position: absolute; top: calc(100% + 10px); right: -8px; z-index: 10050;
    width: 384px; max-height: min(560px, calc(100vh - 140px));
    display: flex; flex-direction: column;
    background: var(--qor-surface); color: var(--qor-text);
    border: 1px solid var(--qor-border-strong); border-radius: var(--qor-r-lg);
    box-shadow: var(--qor-shadow-3);
    opacity: 0; transform: translateY(-6px); visibility: hidden; pointer-events: none;
    transition: opacity .18s var(--qor-ease), transform .22s var(--qor-ease), visibility 0s linear .22s;
}
.qor-notif-panel.is-open { opacity: 1; transform: none; visibility: visible; pointer-events: auto; transition-delay: 0s; }
.qor-notif-panel-head {
    display: flex; align-items: center; justify-content: space-between; gap: 12px;
    padding: 14px 16px 12px; border-bottom: 1px solid var(--qor-border);
}
.qor-notif-panel-head h2 { font-family: var(--qor-font-head); font-size: 15.5px; font-weight: 700; margin: 0; color: var(--qor-text); }
.qor-notif-panel-head h2 small { font-family: var(--qor-font-body); font-size: 12px; font-weight: 600; color: var(--qor-text-dim); margin-left: 6px; }
.qor-linkbtn {
    background: none !important; border: 0 !important; box-shadow: none !important; padding: 4px 2px; cursor: pointer;
    color: var(--qor-orange); font: 700 12.5px var(--qor-font-body); border-radius: 6px; white-space: nowrap;
}
.qor-linkbtn:hover { color: #ffa25e; text-decoration: underline; text-underline-offset: 3px; }
.qor-linkbtn:disabled { color: var(--qor-text-faint); cursor: default; text-decoration: none; }
.qor-notif-panel-body { overflow-y: auto; overscroll-behavior: contain; padding: 6px; flex: 1; min-height: 120px; }
.qor-notif-panel-foot { border-top: 1px solid var(--qor-border); padding: 10px 16px; text-align: center; }
.qor-notif-panel-foot a { color: var(--qor-text); font-size: 13px; font-weight: 700; text-decoration: none; }
.qor-notif-panel-foot a:hover { color: var(--qor-orange); }
.qor-notif-panel .qor-empty { background: none; border: 0; padding: 36px 20px; }

/* tekil bildirim satırı (panel + sayfa ortak) */
.qor-notif-list { list-style: none; margin: 0; padding: 0; }
.qor-notif {
    display: grid; grid-template-columns: 34px minmax(0, 1fr) 10px; gap: 12px; align-items: start;
    padding: 11px 10px; border-radius: 12px; color: var(--qor-text-dim) !important; text-decoration: none !important;
    transition: background-color var(--qor-dur) var(--qor-ease);
}
.qor-notif:hover, .qor-notif:focus-visible { background: rgba(255, 255, 255, .05); }
.qor-notif-ic {
    width: 34px; height: 34px; border-radius: 10px; display: inline-flex; align-items: center; justify-content: center;
    background: var(--qor-glass-2); color: var(--qor-text-dim);
}
.qor-notif-ic svg { width: 17px; height: 17px; }
.qor-notif-ic.k-offer, .qor-notif-ic.k-request { background: var(--qor-orange-soft); color: var(--qor-orange); }
.qor-notif-ic.k-ok { background: var(--qor-success-soft); color: var(--qor-success); }
.qor-notif-ic.k-ride { background: var(--qor-info-soft); color: var(--qor-info); }
.qor-notif-ic.k-cancel { background: var(--qor-danger-soft); color: var(--qor-danger); }
.qor-notif-t { display: block; font-size: 13.5px; font-weight: 600; line-height: 1.35; color: var(--qor-text-dim); }
.qor-notif-b {
    display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
    font-size: 12.5px; line-height: 1.5; margin-top: 2px; color: var(--qor-text-faint); overflow-wrap: anywhere;
}
.qor-notif-time { display: block; font-size: 11.5px; font-weight: 600; margin-top: 5px; color: var(--qor-text-faint); }
.qor-notif-dot { width: 8px; height: 8px; border-radius: 50%; margin-top: 7px; background: transparent; }
.qor-notif.is-unread { background: rgba(255, 122, 26, .07); }
.qor-notif.is-unread:hover, .qor-notif.is-unread:focus-visible { background: rgba(255, 122, 26, .12); }
.qor-notif.is-unread .qor-notif-t { color: var(--qor-text); font-weight: 800; }
.qor-notif.is-unread .qor-notif-b { color: var(--qor-text-dim); }
.qor-notif.is-unread .qor-notif-time { color: var(--qor-orange); }
.qor-notif.is-unread .qor-notif-dot { background: var(--qor-orange); }
.qor-notif-list li + li { margin-top: 2px; }

/* /bildirimler sayfası */
.qor-nc { max-width: 760px; }
.qor-nc-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 12px 20px; flex-wrap: wrap; margin-bottom: 18px; }
.qor-nc-head .qor-lead { margin: 0; }
.qor-nc-box { background: var(--qor-glass); border: 1px solid var(--qor-border); border-radius: var(--qor-r-lg); padding: 6px; }
.qor-nc-box .qor-notif { padding: 14px 14px; }
.qor-nc-box .qor-notif-t { font-size: 14.5px; }
.qor-nc-box .qor-notif-b { -webkit-line-clamp: 3; font-size: 13.5px; }
.qor-nc-pager { display: flex; justify-content: space-between; gap: 12px; margin-top: 16px; }
.qor-nc-pager span { flex: 1; }

@media (max-width: 575px) {
    .qor-notif-wrap { margin-right: 8px; position: static; }
    /* zil eklenince uzun hesap adı hamburger'i alt satıra itmesin */
    header .navbar { flex-wrap: nowrap; min-width: 0; }
    .login-container .qor-notif-wrap ~ .dropdown .dropdown-toggle { max-width: 32vw; }
    /* ad kısalır (…), açılır ok (::after) görünür kalır */
    .login-container .dropdown-toggle.qor-acct { overflow: visible; }
    .qor-acct-nm { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
    .qor-notif-panel {
        position: fixed; left: 12px; right: 12px; top: calc(var(--qor-topbar-h) + var(--qor-header-h) - 4px);
        width: auto; max-height: calc(100vh - var(--qor-topbar-h) - var(--qor-header-h) - 24px);
    }
    .qor-notif-panel-head { flex-wrap: wrap; }
}

/* ==========================================================================
   Hareket azaltma
   ========================================================================== */
@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after {
        animation-duration: .01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: .01ms !important;
        scroll-behavior: auto !important;
    }
}

/* ==========================================================================
   by_QOR — W1 müşteri web bileşenleri (sihirbaz, teklif v2 + karşılaştır,
   ödeme, Yolculuklarım, takip, sohbet, taşıyıcı profili, hesap alanı).
   Yüzeyler opak katmanlı (--qor-surface-*); vurgu yalnız turuncu.
   ========================================================================== */
#content > .qor-page,
#content > .qor-acct-page,
#content > .qor-track-page { padding-top: calc(var(--qor-header-h) + 32px); }
@media (max-width: 575px) {
    #content > .qor-page, #content > .qor-acct-page, #content > .qor-track-page,
    #content > .qor-trip-page, #content > .qor-offers-page, #content > .qor-pay-page, #content > .qor-trips-page {
        padding-top: calc(var(--qor-header-h) + 16px); padding-left: 16px; padding-right: 16px;
    }
}
.qor-num { font-variant-numeric: tabular-nums; }
.qor-muted { color: var(--qor-text-dim); }
.qor-faint { color: var(--qor-text-faint); }

/* ---- yüzey ---- */
.qor-panel {
    background: var(--qor-surface-2); border: 1px solid var(--qor-line); border-radius: var(--qor-r-lg);
    padding: 22px 24px; color: var(--qor-text);
}
.qor-panel + .qor-panel { margin-top: 16px; }
.qor-panel--flush { padding: 0; overflow: hidden; }
.qor-panel-h { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; margin: 0 0 14px; }
.qor-panel-h h2, .qor-panel-h h3 { font-family: var(--qor-font-head); font-weight: 700; font-size: 16px; margin: 0; color: var(--qor-text); }
.qor-panel-h small { color: var(--qor-text-dim); font-size: 12.5px; }
@media (max-width: 575px) { .qor-panel { padding: 18px 16px; border-radius: 16px; } }

/* ---- avatar ---- */
.qor-av {
    width: 44px; height: 44px; border-radius: 50%; flex-shrink: 0; overflow: hidden;
    display: inline-flex; align-items: center; justify-content: center;
    background: var(--qor-surface-3); color: var(--qor-text); border: 1px solid var(--qor-line);
    font-family: var(--qor-font-head); font-weight: 700; font-size: 15px;
}
.qor-av img { width: 100%; height: 100%; object-fit: cover; }
.qor-av--sm { width: 32px; height: 32px; font-size: 12px; }
.qor-av--lg { width: 88px; height: 88px; font-size: 30px; }

.qor-stars { color: var(--qor-orange); font-weight: 700; display: inline-flex; align-items: center; gap: 4px; }
.qor-stars svg { width: 13px; height: 13px; }

/* ---- sekme / segment (Transfer | Saatlik) ---- */
.qor-tabs { display: inline-flex; gap: 4px; padding: 4px; border-radius: 12px; background: var(--qor-sunken); border: 1px solid var(--qor-line); }
.qor-tabs button, .qor-tabs a {
    display: inline-flex; align-items: center; gap: 8px; min-height: 40px; padding: 0 16px; border-radius: 9px;
    background: transparent !important; border: 0 !important; box-shadow: none !important; cursor: pointer;
    color: var(--qor-text-dim); font: 700 13px var(--qor-font-body); text-decoration: none; white-space: nowrap;
    transition: background-color var(--qor-dur) var(--qor-ease), color var(--qor-dur) var(--qor-ease);
}
.qor-tabs button svg, .qor-tabs a svg { width: 16px; height: 16px; }
.qor-tabs button:hover, .qor-tabs a:hover { color: var(--qor-text); }
.qor-tabs [aria-selected="true"], .qor-tabs .is-on { background: var(--qor-surface-3) !important; color: var(--qor-text); box-shadow: inset 0 0 0 1px var(--qor-border) !important; }

/* ---- anahtar (switch) ---- */
.qor-switch { position: relative; width: 44px; height: 25px; flex-shrink: 0; display: inline-block; margin: 0; }
.qor-switch input { position: absolute; opacity: 0; width: 100%; height: 100%; margin: 0; cursor: pointer; z-index: 1; }
.qor-switch .track { position: absolute; inset: 0; background: rgba(255,255,255,.15); border-radius: 100px; transition: background-color .18s var(--qor-ease); }
.qor-switch .track::before { content: ''; position: absolute; width: 19px; height: 19px; left: 3px; top: 3px; background: #f4f6fb; border-radius: 50%; transition: transform .22s var(--qor-ease); }
.qor-switch input:checked + .track { background: var(--qor-orange); }
.qor-switch input:checked + .track::before { transform: translateX(19px); }
.qor-switch input:focus-visible + .track { box-shadow: var(--qor-ring); }

/* ---- stepper ---- */
.qor-stepper { display: inline-flex; align-items: center; gap: 4px; background: var(--qor-sunken); border: 1px solid var(--qor-line); border-radius: 11px; padding: 3px; }
.qor-stepper button {
    width: 34px; height: 34px; border-radius: 8px; padding: 0; cursor: pointer;
    background: transparent !important; border: 0 !important; box-shadow: none !important;
    color: var(--qor-text); font-size: 18px; font-weight: 600; line-height: 1;
}
.qor-stepper button:hover:not(:disabled) { background: var(--qor-surface-3) !important; color: var(--qor-orange); }
.qor-stepper button:disabled { opacity: .35; cursor: default; }
.qor-stepper .val { min-width: 28px; text-align: center; font-weight: 700; font-variant-numeric: tabular-nums; }

/* satır: etiket solda, kontrol sağda */
.qor-row { display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: 13px 0; border-top: 1px solid var(--qor-line); }
.qor-row:first-child { border-top: 0; }
.qor-row .lbl { font-size: 13.5px; font-weight: 600; min-width: 0; display: flex; align-items: center; gap: 12px; }
.qor-row .lbl small { display: block; font-size: 12px; color: var(--qor-text-dim); font-weight: 500; margin-top: 2px; }
.qor-row .ic { width: 34px; height: 34px; border-radius: 10px; flex-shrink: 0; display: inline-flex; align-items: center; justify-content: center; background: var(--qor-surface-3); color: var(--qor-text-dim); }
.qor-row .ic svg { width: 17px; height: 17px; }

/* ---- rota (A → duraklar → B) ---- */
.qor-route-list { list-style: none; margin: 0; padding: 0; position: relative; }
.qor-route-list li { position: relative; display: flex; align-items: flex-start; gap: 12px; padding: 0 0 12px 0; min-width: 0; }
.qor-route-list li:last-child { padding-bottom: 0; }
.qor-route-list li::before { content: ""; position: absolute; left: 5px; top: 14px; bottom: -2px; width: 2px; background: var(--qor-line); }
.qor-route-list li:last-child::before { display: none; }
.qor-route-list .pt { width: 12px; height: 12px; border-radius: 50%; margin-top: 4px; flex-shrink: 0; border: 2px solid var(--qor-orange); background: var(--qor-bg); position: relative; z-index: 1; }
.qor-route-list .pt.b { border-color: var(--qor-text); background: var(--qor-text); }
.qor-route-list .pt.s { width: 10px; height: 10px; margin-left: 1px; border-color: var(--qor-text-dim); }
.qor-route-list .ad { font-size: 14px; font-weight: 600; line-height: 1.45; overflow-wrap: anywhere; min-width: 0; }
.qor-route-list .ad small { display: block; font-size: 11px; color: var(--qor-text-faint); font-weight: 700; text-transform: uppercase; letter-spacing: .06em; }

/* ---- "fiyata dahil" satırı ---- */
.qor-inc-row { display: flex; flex-wrap: wrap; gap: 6px 14px; margin: 0; padding: 0; list-style: none; }
.qor-inc-row li { display: inline-flex; align-items: center; gap: 6px; font-size: 12.5px; color: var(--qor-text-dim); font-weight: 600; }
.qor-inc-row svg { width: 15px; height: 15px; color: var(--qor-success); flex-shrink: 0; }

/* ---- rozetler ---- */
.qor-badge {
    display: inline-flex; align-items: center; gap: 5px; padding: 4px 9px; border-radius: var(--qor-r-pill);
    font-size: 11px; font-weight: 800; letter-spacing: .02em; line-height: 1; white-space: nowrap;
    border: 1px solid var(--qor-border); color: var(--qor-text-dim); background: var(--qor-surface-3);
}
.qor-badge svg { width: 12px; height: 12px; }
.qor-badge--value { color: #1a1206; background: var(--qor-orange); border-color: transparent; }
.qor-badge--top { color: var(--qor-warn); background: var(--qor-warn-soft); border-color: var(--qor-warn-line); }
.qor-badge--cheap { color: var(--qor-success); background: var(--qor-success-soft); border-color: var(--qor-success-line); }
/* by_QOR — Ridoza sürücü ağı teklifi */
.qor-badge--network { color: #c2410c; background: rgba(249,115,22,.10); border-color: rgba(249,115,22,.35); }

/* ---- geri sayım ---- */
.qor-countdown { display: inline-flex; align-items: center; gap: 6px; font-size: 12px; font-weight: 700; color: var(--qor-text-dim); font-variant-numeric: tabular-nums; }
.qor-countdown svg { width: 14px; height: 14px; }
.qor-countdown.is-soon { color: var(--qor-warn); }
.qor-countdown.is-over { color: var(--qor-danger); }

/* ==========================================================================
   Talep sihirbazı (trip_details)
   ========================================================================== */
.qor-wz { max-width: 1240px; margin: 0 auto; }
.qor-wz-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 16px; flex-wrap: wrap; margin-bottom: 20px; }
.qor-wz-head .qor-h1 { margin: 4px 0 0; }
.qor-wz-grid { display: grid; grid-template-columns: minmax(0, 1fr) 440px; gap: 24px; align-items: start; }
.qor-wz-main > .qor-panel + .qor-panel { margin-top: 16px; }
.qor-wz-side { position: sticky; top: 16px; display: flex; flex-direction: column; gap: 16px; }
@media (max-width: 1100px) { .qor-wz-grid { grid-template-columns: minmax(0, 1fr) 380px; } }
@media (max-width: 991px) {
    .qor-wz-grid { grid-template-columns: 1fr; }
    .qor-wz-side { position: static; }
    .qor-wz-side .qor-mapcard { order: -1; }
}

/* adres yığını */
.qor-addr { display: flex; flex-direction: column; gap: 8px; position: relative; }
.qor-addr-row { display: grid; grid-template-columns: 22px minmax(0, 1fr) 36px; align-items: center; gap: 10px; }
.qor-addr-row .pin { width: 12px; height: 12px; border-radius: 50%; border: 2px solid var(--qor-orange); justify-self: center; background: var(--qor-bg); }
.qor-addr-row .pin.b { border-color: var(--qor-text); background: var(--qor-text); }
.qor-addr-row .pin.s { border-color: var(--qor-text-dim); width: 10px; height: 10px; }
.qor-addr-row .qor-input { min-height: 50px; }
.qor-addr-rm { width: 36px; height: 36px; border-radius: 10px; padding: 0; cursor: pointer; background: transparent !important; border: 1px solid var(--qor-line) !important; box-shadow: none !important; color: var(--qor-text-dim); display: inline-flex; align-items: center; justify-content: center; }
.qor-addr-rm:hover { color: var(--qor-danger); border-color: var(--qor-danger-line) !important; }
.qor-addr-rm svg { width: 16px; height: 16px; }
.qor-addr-add { align-self: flex-start; margin-left: 24px; }
.qor-quick { display: flex; gap: 6px; flex-wrap: wrap; margin: 2px 0 0 32px; }
.qor-quick button {
    display: inline-flex; align-items: center; gap: 6px; min-height: 30px; padding: 0 11px; border-radius: var(--qor-r-pill); cursor: pointer;
    background: var(--qor-surface-3) !important; border: 1px solid var(--qor-line) !important; box-shadow: none !important;
    color: var(--qor-text-dim); font: 600 12px var(--qor-font-body); max-width: 220px;
}
.qor-quick button span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.qor-quick button:hover { color: var(--qor-text); border-color: var(--qor-border-strong) !important; }
.qor-quick button svg { width: 13px; height: 13px; flex-shrink: 0; color: var(--qor-orange); }

/* saat seçici */
.qor-hours { display: grid; grid-template-columns: repeat(11, minmax(0, 1fr)); gap: 6px; }
.qor-hours label { margin: 0; position: relative; }
.qor-hours input { position: absolute; opacity: 0; pointer-events: none; }
.qor-hours span {
    display: flex; align-items: center; justify-content: center; min-height: 44px; border-radius: 10px; cursor: pointer;
    border: 1px solid var(--qor-line); background: var(--qor-sunken); font-weight: 700; font-size: 14px; font-variant-numeric: tabular-nums;
    transition: border-color var(--qor-dur) var(--qor-ease), background-color var(--qor-dur) var(--qor-ease);
}
.qor-hours input:checked + span { border-color: var(--qor-orange); background: var(--qor-orange-soft); color: var(--qor-orange); }
.qor-hours input:focus-visible + span { box-shadow: var(--qor-ring); }
@media (max-width: 640px) { .qor-hours { grid-template-columns: repeat(6, minmax(0, 1fr)); } }

/* sınıf kartları */
.qor-class-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
@media (max-width: 560px) { .qor-class-grid { grid-template-columns: 1fr; } }
.qor-class {
    display: flex; align-items: center; gap: 12px; padding: 12px 14px; border-radius: 14px; cursor: pointer; text-align: left; width: 100%;
    background: var(--qor-sunken) !important; border: 1px solid var(--qor-line) !important; box-shadow: none !important; color: var(--qor-text);
    transition: border-color var(--qor-dur) var(--qor-ease), background-color var(--qor-dur) var(--qor-ease);
}
.qor-class:hover { border-color: var(--qor-border-strong) !important; }
.qor-class[aria-pressed="true"] { border-color: var(--qor-orange) !important; background: var(--qor-orange-soft) !important; }
.qor-class .ic { width: 52px; height: 32px; display: flex; align-items: center; justify-content: center; color: var(--qor-text-dim); flex-shrink: 0; }
.qor-class .ic img { max-width: 100%; max-height: 100%; object-fit: contain; }
.qor-class .ic svg { width: 44px; height: 28px; }
.qor-class[aria-pressed="true"] .ic { color: var(--qor-orange); }
.qor-class .nm { display: block; font-size: 13.5px; font-weight: 700; }
.qor-class .mt { display: block; font-size: 12px; color: var(--qor-text-dim); }
.qor-class .pr { margin-left: auto; text-align: right; font-size: 11.5px; font-weight: 600; color: var(--qor-text-dim); white-space: nowrap; }
.qor-class .pr b { display: block; color: var(--qor-text); font-size: 14px; font-variant-numeric: tabular-nums; }

/* promosyon */
.qor-promo { display: flex; gap: 8px; }
.qor-promo .qor-input { text-transform: uppercase; letter-spacing: .08em; }
.qor-promo-res { display: flex; align-items: center; gap: 8px; margin-top: 8px; font-size: 13px; font-weight: 600; }
.qor-promo-res:empty { display: none; }
.qor-promo-res.ok { color: var(--qor-success); }
.qor-promo-res.bad { color: var(--qor-danger); }
.qor-promo-res svg { width: 16px; height: 16px; flex-shrink: 0; }

/* harita kartı */
.qor-mapcard { background: var(--qor-surface-2); border: 1px solid var(--qor-line); border-radius: var(--qor-r-lg); overflow: hidden; }
.qor-map { height: 380px; width: 100%; background: var(--qor-surface-1); position: relative; }
.qor-map-empty { position: absolute; inset: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 8px; color: var(--qor-text-faint); font-size: 13px; text-align: center; padding: 20px; }
.qor-map-empty svg { width: 28px; height: 28px; }
@media (max-width: 991px) { .qor-map { height: 260px; } }
.qor-mapstats { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border-top: 1px solid var(--qor-line); }
.qor-mapstats > div { padding: 12px 16px; min-width: 0; }
.qor-mapstats > div + div { border-left: 1px solid var(--qor-line); }
.qor-mapstats .l { font-size: 11px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--qor-text-faint); }
.qor-mapstats .v { font-family: var(--qor-font-head); font-weight: 700; font-size: 16px; margin-top: 2px; font-variant-numeric: tabular-nums; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }

/* özet + gönder */
.qor-sum { font-size: 13.5px; }
.qor-sum-line { display: flex; justify-content: space-between; gap: 12px; padding: 7px 0; }
.qor-sum-line .k { color: var(--qor-text-dim); }
.qor-sum-line .v { font-weight: 700; text-align: right; font-variant-numeric: tabular-nums; min-width: 0; overflow-wrap: anywhere; }
.qor-sum-line.disc .v { color: var(--qor-success); }
.qor-sum-total { display: flex; justify-content: space-between; align-items: baseline; gap: 12px; padding-top: 14px; margin-top: 6px; border-top: 1px solid var(--qor-line); }
.qor-sum-total .k { font-weight: 700; }
.qor-sum-total .v { font-family: var(--qor-font-head); font-weight: 700; font-size: 26px; font-variant-numeric: tabular-nums; text-align: right; }
.qor-sum-total .fx { display: block; font-family: var(--qor-font-body); font-size: 12.5px; font-weight: 600; color: var(--qor-text-dim); text-align: right; }
.qor-note { font-size: 12.5px; color: var(--qor-text-dim); line-height: 1.55; }
.qor-err { color: var(--qor-danger); font-size: 12.5px; font-weight: 600; margin-top: 6px; }
.qor-err:empty { display: none; }
.qor-check { display: flex; align-items: flex-start; gap: 10px; font-size: 12.5px; color: var(--qor-text-dim); line-height: 1.5; cursor: pointer; margin: 0; }
.qor-check input { margin-top: 2px; width: 17px; height: 17px; accent-color: var(--qor-orange); flex-shrink: 0; }
.qor-check a { color: var(--qor-orange); font-weight: 600; }

/* ==========================================================================
   Teklifler v2 (booking_offers)
   ========================================================================== */
.qor-ofr-wrap { max-width: 1240px; margin: 0 auto; }
.qor-ofr-grid { display: grid; grid-template-columns: minmax(0, 1fr) 380px; gap: 24px; align-items: start; }
.qor-ofr-side { position: sticky; top: 16px; display: flex; flex-direction: column; gap: 16px; }
@media (max-width: 1060px) { .qor-ofr-grid { grid-template-columns: 1fr; } .qor-ofr-side { position: static; } }

.qor-ofr-bar { display: flex; align-items: center; justify-content: space-between; gap: 12px 16px; flex-wrap: wrap; margin-bottom: 14px; }
.qor-ofr-count { font-family: var(--qor-font-head); font-weight: 700; font-size: 20px; margin: 0; }
.qor-ofr-count .n { color: var(--qor-orange); }
.qor-ofr-tools { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.qor-select {
    min-height: 40px; padding: 0 34px 0 12px; border-radius: 10px; border: 1px solid var(--qor-line); background-color: var(--qor-sunken);
    color: var(--qor-text); font: 600 13px var(--qor-font-body); appearance: none; -webkit-appearance: none; cursor: pointer;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23a9b1c2' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");
    background-repeat: no-repeat; background-position: right 10px center; background-size: 16px;
}
.qor-select option { background: #121d31; color: #f4f6fb; }

.qor-ofr {
    display: grid; grid-template-columns: 156px minmax(0, 1fr) 196px; margin-bottom: 14px;
    background: var(--qor-surface-2); border: 1px solid var(--qor-line); border-radius: var(--qor-r-lg); overflow: hidden;
    transition: border-color var(--qor-dur) var(--qor-ease), box-shadow var(--qor-dur) var(--qor-ease);
    animation: qor-rise .4s var(--qor-ease) both;
}
.qor-ofr:hover { border-color: var(--qor-border); }
.qor-ofr.is-value { border-color: var(--qor-orange-line); box-shadow: 0 18px 40px -26px rgba(255, 122, 26, .55); }
.qor-ofr.is-compared { box-shadow: inset 0 0 0 2px var(--qor-info-line); }
@keyframes qor-rise { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: none; } }

.qor-ofr-media { position: relative; background: var(--qor-surface-1); display: flex; align-items: center; justify-content: center; min-height: 100%; }
.qor-ofr-media img { width: 100%; height: 100%; object-fit: cover; position: absolute; inset: 0; }
.qor-ofr-media .ph { color: var(--qor-text-faint); display: flex; flex-direction: column; align-items: center; gap: 6px; font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: .06em; padding: 14px; text-align: center; }
.qor-ofr-media .ph svg { width: 72px; height: 44px; }
.qor-ofr-media .yr { position: absolute; left: 10px; bottom: 10px; padding: 3px 8px; border-radius: 7px; background: rgba(11, 18, 32, .82); font-size: 11px; font-weight: 700; color: var(--qor-text); font-variant-numeric: tabular-nums; }

.qor-ofr-body { padding: 16px 18px; min-width: 0; display: flex; flex-direction: column; gap: 10px; }
.qor-ofr-badges { display: flex; gap: 6px; flex-wrap: wrap; }
.qor-ofr-badges:empty { display: none; }
.qor-ofr-veh { font-family: var(--qor-font-head); font-weight: 700; font-size: 17px; line-height: 1.25; margin: 0; }
.qor-ofr-veh small { display: block; font-family: var(--qor-font-body); font-weight: 600; font-size: 12.5px; color: var(--qor-text-dim); margin-top: 3px; }
.qor-ofr-drv { display: flex; align-items: center; gap: 10px; min-width: 0; }
.qor-ofr-drv .who { min-width: 0; font-size: 13px; line-height: 1.4; }
.qor-ofr-drv .who b { font-weight: 700; }
.qor-ofr-drv .who a { color: var(--qor-text); text-decoration: none; }
.qor-ofr-drv .who a:hover { color: var(--qor-orange); }
.qor-ofr-drv .who .sub { color: var(--qor-text-dim); font-size: 12px; display: flex; gap: 4px 10px; flex-wrap: wrap; align-items: center; }
.qor-lang { display: inline-flex; gap: 4px; }
.qor-lang span { font-size: 10.5px; font-weight: 800; padding: 2px 6px; border-radius: 5px; background: var(--qor-surface-3); color: var(--qor-text-dim); letter-spacing: .04em; }
.qor-ofr-note { font-size: 12.5px; color: var(--qor-text-dim); line-height: 1.5; margin: 0; overflow-wrap: anywhere; }
.qor-ofr-terms { font-size: 12px; color: var(--qor-text-dim); display: flex; gap: 6px; align-items: center; }
.qor-ofr-terms svg { width: 14px; height: 14px; color: var(--qor-info); flex-shrink: 0; }

.qor-ofr-act { padding: 16px 18px; border-left: 1px solid var(--qor-line); display: flex; flex-direction: column; align-items: stretch; gap: 10px; background: var(--qor-surface-1); }
.qor-ofr-price { text-align: right; }
.qor-ofr-price .v { font-family: var(--qor-font-head); font-weight: 700; font-size: 28px; line-height: 1.05; font-variant-numeric: tabular-nums; }
.qor-ofr-price .fx { display: block; font-size: 12px; color: var(--qor-text-dim); font-weight: 600; margin-top: 3px; }
.qor-ofr-price .lbl { display: block; font-size: 11px; color: var(--qor-text-faint); font-weight: 600; margin-top: 2px; }
.qor-ofr-act .qor-countdown { justify-content: flex-end; }
.qor-ofr-act .grow { flex: 1; }
.qor-ofr-links { display: flex; gap: 6px; justify-content: flex-end; flex-wrap: wrap; }
.qor-iconbtn {
    display: inline-flex; align-items: center; justify-content: center; gap: 6px; min-height: 34px; padding: 0 10px; border-radius: 9px; cursor: pointer;
    background: transparent !important; border: 1px solid var(--qor-line) !important; box-shadow: none !important; color: var(--qor-text-dim) !important;
    font: 700 12px var(--qor-font-body); text-decoration: none !important; white-space: nowrap;
    transition: border-color var(--qor-dur) var(--qor-ease), color var(--qor-dur) var(--qor-ease);
}
.qor-iconbtn:hover { color: var(--qor-text) !important; border-color: var(--qor-border-strong) !important; }
.qor-iconbtn svg { width: 15px; height: 15px; }
.qor-iconbtn[aria-pressed="true"] { color: var(--qor-info) !important; border-color: var(--qor-info-line) !important; background: var(--qor-info-soft) !important; }

@media (max-width: 760px) {
    .qor-ofr { grid-template-columns: 112px minmax(0, 1fr); }
    .qor-ofr-media { min-height: 112px; }
    .qor-ofr-act { grid-column: 1 / -1; border-left: 0; border-top: 1px solid var(--qor-line); flex-direction: row; flex-wrap: wrap; align-items: center; }
    .qor-ofr-price { text-align: left; margin-right: auto; }
    .qor-ofr-price .v { font-size: 24px; }
    .qor-ofr-act .grow { display: none; }
    .qor-ofr-act .qor-cta { flex: 1 1 100%; }
    .qor-ofr-links { order: 3; flex: 1 1 100%; justify-content: flex-start; }
}
@media (max-width: 420px) {
    .qor-ofr { grid-template-columns: 1fr; }
    .qor-ofr-media { min-height: 150px; }
}

/* iskelet teklif */
.qor-ofr-skel { display: grid; grid-template-columns: 148px 1fr 170px; gap: 16px; padding: 16px; margin-bottom: 14px; background: var(--qor-surface-2); border: 1px solid var(--qor-line); border-radius: var(--qor-r-lg); }
.qor-ofr-skel > div { display: flex; flex-direction: column; gap: 10px; }
.qor-ofr-skel .qor-skeleton.tall { height: 104px; }
@media (max-width: 760px) { .qor-ofr-skel { grid-template-columns: 96px 1fr; } .qor-ofr-skel > :last-child { display: none; } }

/* bekleme */
.qor-wait { display: flex; gap: 16px; align-items: flex-start; padding: 22px 24px; border-radius: var(--qor-r-lg); background: var(--qor-surface-2); border: 1px solid var(--qor-line); margin-bottom: 14px; }
.qor-wait .pulse { width: 44px; height: 44px; border-radius: 50%; flex-shrink: 0; position: relative; background: var(--qor-orange-soft); display: flex; align-items: center; justify-content: center; color: var(--qor-orange); }
.qor-wait .pulse::after { content: ""; position: absolute; inset: 0; border-radius: 50%; border: 2px solid var(--qor-orange); animation: qor-pulse 1.8s var(--qor-ease) infinite; }
.qor-wait .pulse svg { width: 20px; height: 20px; }
@keyframes qor-pulse { from { transform: scale(.8); opacity: .8; } to { transform: scale(1.6); opacity: 0; } }
.qor-wait h3 { font-family: var(--qor-font-head); font-size: 16px; font-weight: 700; margin: 0 0 4px; }
.qor-wait p { margin: 0; color: var(--qor-text-dim); font-size: 13.5px; line-height: 1.55; max-width: 60ch; }
.qor-wait--done .pulse::after { display: none; }
.qor-wait--done .pulse { background: var(--qor-success-soft); color: var(--qor-success); }
.qor-wait--bad .pulse::after { display: none; }
.qor-wait--bad .pulse { background: var(--qor-danger-soft); color: var(--qor-danger); }

/* karşılaştırma tepsisi + sayfası */
.qor-cmp-tray {
    position: fixed; left: 50%; bottom: 20px; z-index: 9995; transform: translate(-50%, 160%);
    display: flex; align-items: center; gap: 12px; padding: 10px 10px 10px 18px; border-radius: 16px;
    background: #1f3150; border: 1px solid var(--qor-border-strong); box-shadow: var(--qor-shadow-3);
    width: min(560px, calc(100vw - 24px)); transition: transform .32s var(--qor-ease);
}
.qor-cmp-tray:not(.is-on) { visibility: hidden; transition: transform .32s var(--qor-ease), visibility 0s linear .32s; }
.qor-cmp-tray.is-on { transform: translate(-50%, 0); }
.qor-cmp-tray .txt { flex: 1; font-size: 13.5px; font-weight: 700; min-width: 0; }
.qor-cmp-tray .txt small { display: block; font-size: 12px; color: var(--qor-text-dim); font-weight: 600; }
body.qor-cmp-open .qor-wa-fab, body.qor-cmp-tray-on .qor-wa-fab { display: none; }
.qor-cmp-scrim { position: fixed; inset: 0; z-index: 9996; background: rgba(3, 6, 12, .66); opacity: 0; pointer-events: none; transition: opacity .25s var(--qor-ease); }
.qor-cmp-scrim.is-on { opacity: 1; pointer-events: auto; }
.qor-cmp-sheet {
    position: fixed; left: 0; right: 0; bottom: 0; z-index: 9997; max-height: 88vh; overflow: auto;
    background: var(--qor-surface-1); border-top: 1px solid var(--qor-border-strong); border-radius: 22px 22px 0 0;
    transform: translateY(104%); transition: transform .36s var(--qor-ease), visibility 0s linear .36s; visibility: hidden;
    padding: 12px 20px calc(24px + env(safe-area-inset-bottom));
}
.qor-cmp-sheet.is-on { transform: none; visibility: visible; transition-delay: 0s; }
.qor-cmp-sheet .grip { width: 44px; height: 4px; border-radius: 2px; background: var(--qor-border-strong); margin: 0 auto 14px; }
.qor-cmp-inner { max-width: 1100px; margin: 0 auto; }
.qor-cmp-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 14px; }
.qor-cmp-head h2 { font-family: var(--qor-font-head); font-size: 19px; font-weight: 700; margin: 0; }
.qor-cmp-scroll { overflow-x: auto; -webkit-overflow-scrolling: touch; }
.qor-cmp-table { width: 100%; border-collapse: separate; border-spacing: 0; min-width: 620px; color: var(--qor-text); }
.qor-cmp-table th, .qor-cmp-table td { padding: 12px 14px; text-align: left; vertical-align: top; font-size: 13.5px; border-bottom: 1px solid var(--qor-line); }
.qor-cmp-table thead th { vertical-align: bottom; border-bottom: 0; }
.qor-cmp-table tbody th { width: 150px; color: var(--qor-text-dim); font-weight: 600; font-size: 12.5px; position: sticky; left: 0; background: var(--qor-surface-1); z-index: 1; }
.qor-cmp-table td.win { color: var(--qor-success); font-weight: 700; }
.qor-cmp-col { display: flex; flex-direction: column; gap: 8px; }
.qor-cmp-col .img { height: 96px; border-radius: 12px; background: var(--qor-surface-2); overflow: hidden; display: flex; align-items: center; justify-content: center; color: var(--qor-text-faint); }
.qor-cmp-col .img img { width: 100%; height: 100%; object-fit: cover; }
.qor-cmp-col .img svg { width: 60px; height: 38px; }
.qor-cmp-col b { font-family: var(--qor-font-head); font-size: 15px; }
.qor-cmp-price { font-family: var(--qor-font-head); font-weight: 700; font-size: 22px; font-variant-numeric: tabular-nums; }

/* talep özeti (yan) */
.qor-req-meta { display: grid; grid-template-columns: 1fr 1fr; gap: 12px 16px; margin-top: 16px; padding-top: 16px; border-top: 1px solid var(--qor-line); }
.qor-req-meta .l { font-size: 11px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--qor-text-faint); }
.qor-req-meta .v { font-size: 13.5px; font-weight: 600; margin-top: 2px; }

/* para birimi seçici */
.qor-cur { display: inline-flex; align-items: center; gap: 6px; font-size: 12px; color: var(--qor-text-dim); font-weight: 600; margin: 0; }
.qor-cur .qor-select { min-height: 32px; font-size: 12px; padding: 0 28px 0 10px; background-position: right 7px center; }

/* ==========================================================================
   Ödeme (booking_payment)
   ========================================================================== */
.qor-pay-grid { max-width: 1040px; margin: 0 auto; display: grid; grid-template-columns: minmax(0, 1fr) 400px; gap: 24px; align-items: start; }
.qor-pay-grid .qor-pay-side { position: sticky; top: 16px; }
@media (max-width: 900px) { .qor-pay-grid { grid-template-columns: 1fr; } .qor-pay-grid .qor-pay-side { position: static; } }
.qor-redeem { display: flex; align-items: center; gap: 14px; padding: 14px 16px; border-radius: 14px; background: var(--qor-surface-3); border: 1px solid var(--qor-line); margin-top: 14px; }
.qor-redeem .ic { width: 38px; height: 38px; border-radius: 11px; background: var(--qor-orange-soft); color: var(--qor-orange); display: inline-flex; align-items: center; justify-content: center; flex-shrink: 0; }
.qor-redeem .ic svg { width: 19px; height: 19px; }
.qor-redeem .t { flex: 1; min-width: 0; font-size: 13.5px; font-weight: 700; }
.qor-redeem .t small { display: block; color: var(--qor-text-dim); font-weight: 600; font-size: 12px; margin-top: 2px; }
.qor-trust { list-style: none; margin: 14px 0 0; padding: 0; display: grid; gap: 8px; }
.qor-trust li { display: flex; gap: 10px; font-size: 12.5px; color: var(--qor-text-dim); line-height: 1.45; }
.qor-trust svg { width: 16px; height: 16px; color: var(--qor-success); flex-shrink: 0; margin-top: 1px; }

/* ==========================================================================
   Yolculuklarım (booking_history)
   ========================================================================== */
.qor-trips { max-width: 920px; margin: 0 auto; }
.qor-trips-top { display: flex; align-items: flex-end; justify-content: space-between; gap: 12px 20px; flex-wrap: wrap; margin-bottom: 18px; }
.qor-filter { display: flex; gap: 6px; overflow-x: auto; scrollbar-width: none; margin-bottom: 18px; padding-bottom: 2px; }
.qor-filter::-webkit-scrollbar { display: none; }
.qor-filter button {
    flex-shrink: 0; display: inline-flex; align-items: center; gap: 8px; min-height: 36px; padding: 0 14px; border-radius: var(--qor-r-pill); cursor: pointer;
    background: transparent !important; border: 1px solid var(--qor-line) !important; box-shadow: none !important; color: var(--qor-text-dim); font: 700 12.5px var(--qor-font-body);
}
.qor-filter button .c { font-size: 11px; padding: 1px 7px; border-radius: 99px; background: var(--qor-surface-3); font-variant-numeric: tabular-nums; }
.qor-filter button[aria-pressed="true"] { color: var(--qor-text); background: var(--qor-surface-3) !important; border-color: var(--qor-border-strong) !important; }

.qor-tc { background: var(--qor-surface-2); border: 1px solid var(--qor-line); border-radius: var(--qor-r-lg); margin-bottom: 14px; overflow: hidden; }
.qor-tc.is-action { border-color: var(--qor-orange-line); }
.qor-tc-top { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 16px 20px 0; flex-wrap: wrap; }
.qor-tc-when { font-family: var(--qor-font-head); font-weight: 700; font-size: 16px; }
.qor-tc-when small { font-family: var(--qor-font-body); font-weight: 600; font-size: 12px; color: var(--qor-text-faint); margin-left: 8px; }
.qor-tc-main { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 16px 24px; padding: 14px 20px 16px; align-items: start; }
.qor-tc-price { text-align: right; }
.qor-tc-price .v { font-family: var(--qor-font-head); font-weight: 700; font-size: 20px; font-variant-numeric: tabular-nums; }
.qor-tc-price small { display: block; font-size: 12px; color: var(--qor-text-dim); font-weight: 600; }
.qor-tc-facts { display: flex; flex-wrap: wrap; gap: 6px 14px; font-size: 12.5px; color: var(--qor-text-dim); margin-top: 12px; }
.qor-tc-facts span { display: inline-flex; align-items: center; gap: 6px; }
.qor-tc-facts svg { width: 14px; height: 14px; }
.qor-tc-drv { display: flex; align-items: center; gap: 10px; margin-top: 14px; padding: 10px 12px; border-radius: 12px; background: var(--qor-surface-1); border: 1px solid var(--qor-line); }
.qor-tc-drv .who { font-size: 13px; min-width: 0; flex: 1; }
.qor-tc-drv .who span { display: block; color: var(--qor-text-dim); font-size: 12px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.qor-tc-foot { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; padding: 12px 20px; border-top: 1px solid var(--qor-line); background: var(--qor-surface-1); }
.qor-tc-foot .sp { flex: 1; }
@media (max-width: 560px) {
    .qor-tc-top, .qor-tc-main, .qor-tc-foot { padding-left: 16px; padding-right: 16px; }
    .qor-tc-main { grid-template-columns: 1fr; }
    .qor-tc-price { text-align: left; }
    .qor-tc-foot > .qor-cta:first-child { flex: 1 1 100%; }
    .qor-tc-foot .sp { display: none; }
}

/* ilerleme çizelgesi (Talep → Teklif → Kabul → Ödeme → Yolculuk) */
.qor-prog { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); padding: 0 20px 16px; list-style: none; margin: 0; }
.qor-prog li { position: relative; font-size: 11.5px; font-weight: 700; color: var(--qor-text-faint); padding-top: 18px; padding-right: 6px; min-width: 0; }
.qor-prog li::before { content: ""; position: absolute; top: 4px; left: 0; width: 10px; height: 10px; border-radius: 50%; background: var(--qor-surface-1); border: 2px solid var(--qor-border); z-index: 1; box-sizing: border-box; }
.qor-prog li::after { content: ""; position: absolute; top: 8px; left: 12px; right: 2px; height: 2px; background: var(--qor-line); }
.qor-prog li:last-child::after { display: none; }
.qor-prog li.done { color: var(--qor-text-dim); }
.qor-prog li.done::before { background: var(--qor-success); border-color: var(--qor-success); }
.qor-prog li.done::after { background: var(--qor-success-line); }
.qor-prog li.now { color: var(--qor-text); }
.qor-prog li.now::before { background: var(--qor-orange); border-color: var(--qor-orange); box-shadow: 0 0 0 4px var(--qor-orange-soft); }
.qor-prog li.bad { color: var(--qor-danger); }
.qor-prog li.bad::before { background: var(--qor-danger); border-color: var(--qor-danger); }
.qor-prog li time { display: block; font-weight: 600; font-size: 11px; color: var(--qor-text-faint); margin-top: 2px; }
@media (max-width: 560px) { .qor-prog { padding: 0 16px 14px; } .qor-prog li { font-size: 10.5px; } .qor-prog li time { display: none; } }

/* satır içi açılır kutular (iptal / değerlendir / paylaş) */
.qor-drawer { display: none; padding: 16px 20px; border-top: 1px solid var(--qor-line); background: var(--qor-surface-1); }
.qor-drawer.is-open { display: block; animation: qor-rise .3s var(--qor-ease) both; }
.qor-drawer p { margin: 0 0 12px; font-size: 13px; color: var(--qor-text-dim); line-height: 1.6; }
.qor-drawer p b { color: var(--qor-text); }
.qor-drawer--danger { background: var(--qor-danger-soft); }
.qor-starpick { display: flex; flex-direction: row-reverse; justify-content: flex-end; gap: 4px; margin-bottom: 10px; }
.qor-starpick input { position: absolute; opacity: 0; pointer-events: none; }
.qor-starpick label { font-size: 28px; line-height: 1; color: var(--qor-border-strong); cursor: pointer; margin: 0; }
.qor-starpick label:hover, .qor-starpick label:hover ~ label, .qor-starpick input:checked ~ label { color: var(--qor-orange); }
.qor-starpick input:focus-visible + label { outline: 2px solid var(--qor-orange); border-radius: 4px; }
.qor-copy { display: flex; gap: 8px; }
.qor-copy .qor-input { flex: 1; font-size: 13px; min-width: 0; }

/* ==========================================================================
   Hesap alanı (/hesabim/*)
   ========================================================================== */
.qor-acct-page { min-height: 76vh; padding: 48px 20px 80px; color: var(--qor-text); background: var(--qor-grad-page); }
.qor-acct { max-width: 1080px; margin: 0 auto; display: grid; grid-template-columns: 240px minmax(0, 1fr); gap: 28px; align-items: start; }
.qor-acct-nav { position: sticky; top: 16px; }
.qor-acct-who { display: flex; align-items: center; gap: 12px; padding: 0 6px 16px; min-width: 0; }
.qor-acct-who > div { min-width: 0; }
.qor-acct-who .nm { font-weight: 700; font-size: 14px; line-height: 1.3; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.qor-acct-who .em { font-size: 12px; color: var(--qor-text-dim); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.qor-acct-links { display: flex; flex-direction: column; gap: 2px; padding: 6px; background: var(--qor-surface-2); border: 1px solid var(--qor-line); border-radius: 16px; }
.qor-acct-links a {
    display: flex; align-items: center; gap: 10px; padding: 10px 12px; border-radius: 10px; font-size: 13.5px; font-weight: 600;
    color: var(--qor-text-dim); text-decoration: none; white-space: nowrap;
    transition: background-color var(--qor-dur) var(--qor-ease), color var(--qor-dur) var(--qor-ease);
}
.qor-acct-links a svg { width: 17px; height: 17px; flex-shrink: 0; }
.qor-acct-links a:hover { color: var(--qor-text); background: var(--qor-surface-3); text-decoration: none; }
.qor-acct-links a[aria-current="page"] { color: var(--qor-text); background: var(--qor-surface-3); box-shadow: inset 0 0 0 1px var(--qor-border); }
.qor-acct-links a[aria-current="page"] svg { color: var(--qor-orange); }
.qor-acct-links .sep { height: 1px; background: var(--qor-line); margin: 4px 8px; }
.qor-acct-main { min-width: 0; }
.qor-acct-main > .qor-lead { margin-bottom: 20px; }
@media (max-width: 860px) {
    .qor-acct { grid-template-columns: 1fr; gap: 16px; }
    .qor-acct-nav { position: static; }
    .qor-acct-who { display: none; }
    .qor-acct-links { flex-direction: row; overflow-x: auto; scrollbar-width: none; border-radius: 14px; }
    .qor-acct-links::-webkit-scrollbar { display: none; }
    .qor-acct-links .sep { display: none; }
    .qor-acct-links a { flex-shrink: 0; padding: 9px 12px; font-size: 13px; }
}

.qor-kv { display: grid; grid-template-columns: 180px minmax(0, 1fr); gap: 10px 16px; font-size: 13.5px; margin: 0; }
.qor-kv dt { color: var(--qor-text-dim); font-weight: 600; }
.qor-kv dd { margin: 0; font-weight: 600; overflow-wrap: anywhere; }
@media (max-width: 520px) { .qor-kv { grid-template-columns: 1fr; gap: 2px; } .qor-kv dd { margin-bottom: 10px; } }

.qor-place { display: flex; align-items: center; gap: 14px; padding: 14px 18px; border-top: 1px solid var(--qor-line); }
.qor-place:first-child { border-top: 0; }
.qor-place .ic { width: 40px; height: 40px; border-radius: 12px; flex-shrink: 0; display: inline-flex; align-items: center; justify-content: center; background: var(--qor-surface-3); color: var(--qor-orange); }
.qor-place .ic svg { width: 19px; height: 19px; }
.qor-place .t { flex: 1; min-width: 0; }
.qor-place .t b { display: block; font-size: 14px; }
.qor-place .t span { display: block; font-size: 12.5px; color: var(--qor-text-dim); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.qor-iconpick { display: flex; gap: 6px; flex-wrap: wrap; }
.qor-iconpick label { margin: 0; position: relative; }
.qor-iconpick input { position: absolute; opacity: 0; pointer-events: none; }
.qor-iconpick span { width: 42px; height: 42px; border-radius: 11px; display: inline-flex; align-items: center; justify-content: center; border: 1px solid var(--qor-line); background: var(--qor-sunken); color: var(--qor-text-dim); cursor: pointer; }
.qor-iconpick span svg { width: 18px; height: 18px; }
.qor-iconpick input:checked + span { border-color: var(--qor-orange); color: var(--qor-orange); background: var(--qor-orange-soft); }
.qor-iconpick input:focus-visible + span { box-shadow: var(--qor-ring); }

.qor-points-hero { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 16px; align-items: end; }
.qor-points-hero .big { font-family: var(--qor-font-head); font-weight: 700; font-size: 44px; line-height: 1; font-variant-numeric: tabular-nums; }
.qor-points-hero .big small { font-size: 16px; color: var(--qor-text-dim); font-weight: 600; margin-left: 6px; }
@media (max-width: 560px) { .qor-points-hero { grid-template-columns: 1fr; } }
.qor-ledger { list-style: none; margin: 0; padding: 0; }
.qor-ledger li { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 4px 16px; padding: 13px 0; border-top: 1px solid var(--qor-line); font-size: 13.5px; }
.qor-ledger li:first-child { border-top: 0; }
.qor-ledger .d { font-size: 12px; color: var(--qor-text-faint); }
.qor-ledger .p { font-weight: 700; font-variant-numeric: tabular-nums; text-align: right; }
.qor-ledger .p.plus { color: var(--qor-success); }
.qor-ledger .p small { display: block; font-size: 11.5px; color: var(--qor-text-faint); font-weight: 600; }

.qor-danger-zone { border-color: var(--qor-danger-line); }

/* ==========================================================================
   Takip (booking_tracking + trip_share)
   ========================================================================== */
.qor-track-page { min-height: 76vh; padding: 40px 20px 80px; color: var(--qor-text); background: var(--qor-grad-page); }
.qor-track-wrap { max-width: 1180px; margin: 0 auto; }
.qor-track { display: grid; grid-template-columns: minmax(0, 1fr) 380px; gap: 20px; align-items: start; }
@media (max-width: 960px) { .qor-track { grid-template-columns: 1fr; } }
.qor-track-map { position: relative; border-radius: var(--qor-r-lg); overflow: hidden; border: 1px solid var(--qor-line); background: var(--qor-surface-1); }
.qor-track-map .qor-map { height: 560px; }
@media (max-width: 960px) { .qor-track-map .qor-map { height: 360px; } }
.qor-eta {
    position: absolute; left: 16px; right: 16px; top: 16px; z-index: 2;
    display: flex; align-items: center; gap: 14px; padding: 12px 16px; border-radius: 14px;
    background: rgba(18, 29, 49, .95); border: 1px solid var(--qor-border); box-shadow: var(--qor-shadow-2);
}
.qor-eta .dot { width: 10px; height: 10px; border-radius: 50%; background: var(--qor-text-faint); flex-shrink: 0; }
.qor-eta.is-live .dot { background: var(--qor-success); animation: qor-live 1.8s ease-out infinite; }
@keyframes qor-live { from { box-shadow: 0 0 0 0 rgba(61, 220, 132, .6); } to { box-shadow: 0 0 0 10px rgba(61, 220, 132, 0); } }
.qor-eta .t { flex: 1; min-width: 0; font-size: 13.5px; font-weight: 700; }
.qor-eta .t small { display: block; font-size: 12px; color: var(--qor-text-dim); font-weight: 600; }
.qor-eta .n { font-family: var(--qor-font-head); font-weight: 700; font-size: 22px; font-variant-numeric: tabular-nums; white-space: nowrap; }
.qor-eta .n small { font-size: 12px; color: var(--qor-text-dim); font-family: var(--qor-font-body); margin-left: 3px; }
.qor-plate { display: inline-flex; align-items: center; padding: 4px 10px; border-radius: 7px; background: #eef1f6; color: #0b1220; font-weight: 800; font-size: 13px; letter-spacing: .08em; font-family: var(--qor-font-head); border: 1px solid #c8cfdb; }
.qor-contact { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin-top: 14px; }

/* ==========================================================================
   Taşıyıcı profili (public_profile)
   ========================================================================== */
.qor-pp { max-width: 980px; margin: 0 auto; }
.qor-pp-head { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 20px; align-items: center; }
@media (max-width: 640px) { .qor-pp-head { grid-template-columns: auto minmax(0, 1fr); } .qor-pp-head > :last-child { grid-column: 1 / -1; } }
.qor-pp-stats { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); margin-top: 18px; border-top: 1px solid var(--qor-line); }
.qor-pp-stats > div { padding: 14px 16px 2px 0; }
.qor-pp-stats .v { font-family: var(--qor-font-head); font-weight: 700; font-size: 22px; font-variant-numeric: tabular-nums; }
.qor-pp-stats .l { font-size: 12px; color: var(--qor-text-dim); font-weight: 600; }
@media (max-width: 640px) { .qor-pp-stats { grid-template-columns: 1fr 1fr; } }
.qor-pp-cols { display: grid; grid-template-columns: minmax(0, 1fr) 300px; gap: 16px; margin-top: 16px; align-items: start; }
.qor-pp-cols > .qor-panel + .qor-panel { margin-top: 0; }
@media (max-width: 860px) { .qor-pp-cols { grid-template-columns: 1fr; } }
.qor-veh-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)); gap: 14px; }
.qor-veh { background: var(--qor-surface-1); border: 1px solid var(--qor-line); border-radius: 16px; overflow: hidden; }
.qor-veh .img { height: 150px; background: var(--qor-surface-3); display: flex; align-items: center; justify-content: center; color: var(--qor-text-faint); }
.qor-veh .img img { width: 100%; height: 100%; object-fit: cover; }
.qor-veh .img svg { width: 80px; height: 50px; }
.qor-veh .b { padding: 12px 14px; }
.qor-veh .b b { display: block; font-size: 14.5px; }
.qor-veh .b span { font-size: 12.5px; color: var(--qor-text-dim); }
.qor-dist { display: grid; gap: 7px; }
.qor-dist div { display: grid; grid-template-columns: 28px minmax(0, 1fr) 28px; gap: 10px; align-items: center; font-size: 12.5px; color: var(--qor-text-dim); font-weight: 600; font-variant-numeric: tabular-nums; }
.qor-dist .bar { height: 6px; border-radius: 3px; background: var(--qor-surface-3); overflow: hidden; }
.qor-dist .bar i { display: block; height: 100%; background: var(--qor-orange); border-radius: 3px; }
.qor-rev { padding: 16px 0; border-top: 1px solid var(--qor-line); }
.qor-rev:first-child { border-top: 0; padding-top: 0; }
.qor-rev-h { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; font-size: 13.5px; }
.qor-rev p { margin: 8px 0 0; font-size: 14px; line-height: 1.6; color: var(--qor-text); max-width: 70ch; }

/* ==========================================================================
   Sohbet (/mesajlar)
   ========================================================================== */
.qor-chat { max-width: 1100px; margin: 0 auto; display: grid; grid-template-columns: 320px minmax(0, 1fr);
    height: calc(100vh - var(--qor-header-h) - var(--qor-topbar-h) - 90px); min-height: 520px;
    background: var(--qor-surface-2); border: 1px solid var(--qor-line); border-radius: var(--qor-r-lg); overflow: hidden; }
.qor-chat--list { grid-template-columns: 1fr; max-width: 760px; height: auto; min-height: 0; }
.qor-chat-side { border-right: 1px solid var(--qor-line); display: flex; flex-direction: column; min-height: 0; background: var(--qor-surface-1); }
.qor-chat--list .qor-chat-side { border-right: 0; }
.qor-chat-side h2 { font-family: var(--qor-font-head); font-size: 16px; font-weight: 700; margin: 0; padding: 16px 18px; border-bottom: 1px solid var(--qor-line); }
.qor-chat-threads { overflow-y: auto; flex: 1; }
.qor-thr { display: flex; align-items: center; gap: 12px; padding: 13px 16px; color: var(--qor-text) !important; text-decoration: none !important; border-bottom: 1px solid var(--qor-line); transition: background-color var(--qor-dur) var(--qor-ease); }
.qor-thr:hover { background: var(--qor-surface-3); }
.qor-thr[aria-current="page"] { background: var(--qor-surface-3); }
.qor-thr .m { flex: 1; min-width: 0; }
.qor-thr .m b { display: flex; justify-content: space-between; gap: 8px; font-size: 13.5px; }
.qor-thr .m b time { font-size: 11px; color: var(--qor-text-faint); font-weight: 600; flex-shrink: 0; }
.qor-thr .m span { display: block; font-size: 12.5px; color: var(--qor-text-dim); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; margin-top: 2px; }
.qor-thr .m em { font-style: normal; font-size: 11px; color: var(--qor-text-faint); font-weight: 600; }
.qor-thr.is-unread .m span { color: var(--qor-text); font-weight: 700; }
.qor-thr .u { min-width: 20px; height: 20px; padding: 0 6px; border-radius: 10px; background: var(--qor-orange); color: #fff; font-size: 11px; font-weight: 800; display: inline-flex; align-items: center; justify-content: center; }
.qor-chat-main { display: flex; flex-direction: column; min-height: 0; min-width: 0; }
.qor-chat-head { display: flex; align-items: center; gap: 12px; padding: 12px 18px; border-bottom: 1px solid var(--qor-line); }
.qor-chat-head .who { flex: 1; min-width: 0; }
.qor-chat-head .who b { display: block; font-size: 14.5px; }
.qor-chat-head .who span { font-size: 12px; color: var(--qor-text-dim); display: inline-flex; align-items: center; gap: 6px; }
.qor-live-dot { width: 7px; height: 7px; border-radius: 50%; background: var(--qor-success); display: inline-block; }
.qor-live-dot.is-off { background: var(--qor-text-faint); }
.qor-chat-body { flex: 1; overflow-y: auto; padding: 20px 22px; display: flex; flex-direction: column; gap: 4px; overscroll-behavior: contain; }
.qor-day { align-self: center; margin: 14px 0 8px; padding: 4px 12px; border-radius: 99px; background: var(--qor-surface-3); font-size: 11.5px; font-weight: 700; color: var(--qor-text-dim); }
.qor-bub { max-width: min(72%, 560px); padding: 9px 13px 7px; border-radius: 16px; font-size: 14px; line-height: 1.5; white-space: pre-wrap; overflow-wrap: anywhere; }
.qor-bub.mine { align-self: flex-end; background: var(--qor-orange); color: #1a1206; border-bottom-right-radius: 5px; }
.qor-bub.theirs { align-self: flex-start; background: var(--qor-surface-3); color: var(--qor-text); border-bottom-left-radius: 5px; }
.qor-bub .t { display: block; font-size: 10.5px; margin-top: 2px; text-align: right; opacity: .72; font-variant-numeric: tabular-nums; }
.qor-bub.is-pending { opacity: .6; }
.qor-chat-form { display: flex; gap: 10px; align-items: flex-end; padding: 12px 14px; border-top: 1px solid var(--qor-line); background: var(--qor-surface-1); }
.qor-chat-form textarea.qor-input { flex: 1; min-height: 46px; max-height: 140px; resize: none; padding: 12px 14px; line-height: 1.4; }
.qor-chat-form .qor-cta { min-height: 46px; padding: 0 16px; }
.qor-chat-empty { margin: auto; text-align: center; color: var(--qor-text-dim); max-width: 36ch; font-size: 13.5px; line-height: 1.6; display: flex; flex-direction: column; align-items: center; }
.qor-chat-empty b { color: var(--qor-text); font-family: var(--qor-font-head); font-size: 16px; }
.qor-chat-back { display: none !important; }
@media (max-width: 820px) {
    .qor-chat { grid-template-columns: 1fr; height: calc(100vh - var(--qor-header-h) - var(--qor-topbar-h) - 40px); border-radius: 16px; }
    .qor-chat--thread .qor-chat-side { display: none; }
    .qor-chat-back { display: inline-flex !important; }
    .qor-bub { max-width: 84%; }
}


/* ==========================================================================
   W2 — carrier (P2PRide 2.0 taşıyıcı kabini: istek akışı, teklif formu,
   otomatik teklif kuralları, takvim, araç fotoğrafları, kazanç, puanlar).
   Tüm kurallar .cab altında. Önce eski sayfa içi <style> blokları (taşındı),
   sonra yeni W2 bileşenleri. Bu bölümü yalnız W2 düzenler.
   ========================================================================== */
/* --- taşınan sayfa içi stiller (frontend/carrier/*.blade.php) --- */
/* chat_thread */
.cab .th-wrap { display: flex; flex-direction: column; height: 60vh; background: var(--qor-glass); border: 1px solid var(--qor-border); border-radius: 16px; overflow: hidden; }
.cab .th-head { padding: 14px 18px; border-bottom: 1px solid var(--qor-border); font-weight: 700; display: flex; align-items: center; gap: 10px; }
.cab .th-head a { color: var(--qor-text-dim); text-decoration: none; font-size: 12px; font-weight: 600; margin-left: auto; }
.cab .th-body { flex: 1; overflow-y: auto; padding: 18px; display: flex; flex-direction: column; gap: 10px; }
.cab .th-msg { max-width: 72%; padding: 10px 14px; border-radius: 14px; font-size: 13px; line-height: 1.5; }
.cab .th-msg.mine { align-self: flex-end; background: linear-gradient(135deg, var(--qor-orange), var(--qor-orange-dark)); color: #fff; border-bottom-right-radius: 4px; }
.cab .th-msg.theirs { align-self: flex-start; background: rgba(255,255,255,.08); color: #fff; border-bottom-left-radius: 4px; }
.cab .th-msg .t { display: block; font-size: 9.5px; opacity: .7; margin-top: 4px; }
.cab .th-form { display: flex; gap: 10px; padding: 14px; border-top: 1px solid var(--qor-border); }
.cab .th-form input { flex: 1; padding: 11px 14px; border-radius: 10px; background: rgba(0,0,0,.24); border: 1px solid var(--qor-border); color: #fff; font-size: 13.5px; }
.cab .th-form input:focus { outline: none; border-color: var(--qor-orange); }
.cab .th-form button { padding: 0 22px; border-radius: 10px; border: none; font-weight: 700; font-size: 13px; color: #fff; background: linear-gradient(135deg, var(--qor-orange), var(--qor-orange-dark)); cursor: pointer; }

/* chats */
.cab .ch-list { display: flex; flex-direction: column; gap: 10px; }
.cab .ch-row { display: flex; align-items: center; gap: 14px; background: var(--qor-glass); border: 1px solid var(--qor-border); border-radius: 16px; padding: 14px 16px; text-decoration: none; color: inherit; }
.cab .ch-row:hover { background: rgba(255,255,255,.06); color: inherit; }
.cab .ch-av { width: 44px; height: 44px; border-radius: 13px; background: linear-gradient(135deg, var(--qor-blue), var(--qor-navy-2)); display: flex; align-items: center; justify-content: center; font-weight: 700; font-size: 13px; border: 1px solid var(--qor-border); flex-shrink: 0; }
.cab .ch-name { font-weight: 700; font-size: 13.5px; color: #fff; }
.cab .ch-preview { font-size: 12px; color: var(--qor-text-dim); margin-top: 2px; max-width: 420px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.cab .ch-meta { margin-left: auto; text-align: right; flex-shrink: 0; }
.cab .ch-time { font-size: 10.5px; color: var(--qor-text-dim); }
.cab .ch-unread { display: inline-block; margin-top: 5px; background: var(--qor-orange); color: #fff; font-size: 10px; font-weight: 800; border-radius: 100px; padding: 2px 8px; }

/* commission_credit */
.cab .cr-balance { background: linear-gradient(135deg, rgba(255,122,26,.16), rgba(255,122,26,.04)); border: 1px solid rgba(255,122,26,.35); border-radius: 16px; padding: 24px 26px; margin-bottom: 22px; display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 14px; }
.cab .cr-balance .l { font-size: 12.5px; color: var(--qor-text-dim); font-weight: 600; margin-bottom: 4px; }
.cab .cr-balance .v { font-family: 'Space Grotesk', system-ui, sans-serif; font-size: 30px; font-weight: 700; color: var(--qor-orange); }
.cab .cr-note { font-size: 12.5px; color: var(--qor-text-dim); max-width: 360px; line-height: 1.6; }
.cab .cr-row { background: var(--qor-glass); border: 1px solid var(--qor-border); border-radius: 12px; padding: 13px 18px; margin-bottom: 8px; display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; }
.cab .cr-row .type { font-size: 13px; font-weight: 700; }
.cab .cr-row .note { font-size: 12px; color: var(--qor-text-dim); margin-top: 2px; }
.cab .cr-row .amt { font-family: 'Space Grotesk', system-ui, sans-serif; font-weight: 700; font-size: 15px; }
.cab .cr-row .amt.pos { color: #4fd189; }
.cab .cr-row .amt.neg { color: #ff6b6b; }
.cab .cr-row .date { font-size: 11px; color: var(--qor-text-dim); }

/* dispatcher */
.cab .disp { background: var(--qor-glass); border: 1px solid var(--qor-border); border-radius: 16px; padding: 18px 22px; margin-bottom: 14px; }
.cab .disp-top { display: flex; justify-content: space-between; flex-wrap: wrap; gap: 8px; margin-bottom: 10px; }
.cab .disp-no { font-size: 12px; color: var(--qor-text-dim); font-weight: 600; }
.cab .disp-route { font-size: 14px; font-weight: 600; margin-bottom: 12px; }
.cab .disp-route small { display: block; color: var(--qor-text-dim); font-size: 12px; font-weight: 500; margin-top: 3px; }
.cab .disp-assign { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.cab .disp-assign label { font-size: 12px; color: var(--qor-text-dim); font-weight: 600; }
.cab .disp-assign select { background: rgba(255,255,255,.05); border: 1px solid var(--qor-border); color: #fff; border-radius: 10px; padding: 8px 12px; font-size: 13px; min-width: 220px; }
.cab .disp-assign select:focus { outline: none; border-color: var(--qor-orange); }
.cab .disp-assign button { background: linear-gradient(135deg, var(--qor-orange), var(--qor-orange-dark)); border: none; color: #fff; font-weight: 700; font-size: 12.5px; padding: 8px 16px; border-radius: 10px; cursor: pointer; }
.cab .disp-current { font-size: 11.5px; font-weight: 700; padding: 3px 11px; border-radius: 100px; background: rgba(46,204,113,.15); color: #4fd189; border: 1px solid rgba(46,204,113,.4); }
.cab .disp-current.none { background: rgba(255,255,255,.06); color: var(--qor-text-dim); border-color: var(--qor-border); }

/* documents */
.cab .dc-row { display: flex; align-items: center; gap: 14px; background: var(--qor-glass); border: 1px solid var(--qor-border); border-radius: 16px; padding: 15px 18px; margin-bottom: 12px; }
.cab .dc-ic { width: 42px; height: 42px; border-radius: 12px; background: rgba(255,255,255,.10); display: flex; align-items: center; justify-content: center; color: var(--qor-orange); flex-shrink: 0; }
.cab .dc-name { font-weight: 700; font-size: 13.5px; color: #fff; }
.cab .dc-sub { font-size: 11.5px; color: var(--qor-text-dim); margin-top: 2px; }
.cab .dc-status { margin-left: auto; font-size: 10px; font-weight: 800; padding: 4px 11px; border-radius: 100px; text-transform: uppercase; white-space: nowrap; }
.cab .dc-status.pending { background: rgba(255,122,26,.14); color: var(--qor-orange); border: 1px solid rgba(255,122,26,.4); }
.cab .dc-status.approved { background: rgba(79,209,137,.14); color: #4fd189; border: 1px solid rgba(79,209,137,.4); }
.cab .dc-status.rejected { background: rgba(255,90,90,.14); color: #ff5a5a; border: 1px solid rgba(255,90,90,.4); }
.cab .dc-upload { margin-left: 14px; }
.cab .dc-upload label { display: inline-block; padding: 8px 16px; border-radius: 10px; border: 1px solid var(--qor-border); background: rgba(0,0,0,.2); color: var(--qor-text-dim); font-size: 12px; font-weight: 700; cursor: pointer; }
.cab .dc-upload label:hover { border-color: var(--qor-orange); color: #fff; }
.cab .dc-upload input[type=file] { display: none; }

/* drivers */
.cab .dr { background: var(--qor-glass); border: 1px solid var(--qor-border); border-radius: 14px; padding: 15px 20px; margin-bottom: 10px; display: flex; align-items: center; gap: 14px; }
.cab .dr .av { width: 38px; height: 38px; border-radius: 11px; background: linear-gradient(135deg, var(--qor-blue), var(--qor-navy-2)); display: flex; align-items: center; justify-content: center; font-weight: 700; }
.cab .dr .nm { font-size: 13.5px; font-weight: 700; }
.cab .dr .sub { font-size: 12px; color: var(--qor-text-dim); }
.cab .dr .pill { margin-left: auto; font-size: 10.5px; font-weight: 700; padding: 3px 11px; border-radius: 100px; background: rgba(46,204,113,.15); color: #4fd189; border: 1px solid rgba(46,204,113,.4); }
.cab .dr .rm { background: none; border: 1px solid var(--qor-border); color: var(--qor-text-dim); font-size: 11px; font-weight: 700; padding: 5px 12px; border-radius: 100px; cursor: pointer; }
.cab .dr .rm:hover { border-color: rgba(255,90,90,.5); color: #ff5a5a; }
.cab .invite-box { background: var(--qor-glass); border: 1px solid var(--qor-border); border-radius: 14px; padding: 16px 18px; margin-bottom: 18px; }
.cab .invite-box label { font-size: 11.5px; font-weight: 700; color: var(--qor-text-dim); text-transform: uppercase; letter-spacing: .5px; }
.cab .invite-row { display: flex; gap: 10px; margin-top: 8px; }
.cab .invite-row input { flex: 1; background: rgba(0,0,0,.2); border: 1px solid var(--qor-border); border-radius: 10px; color: #fff; padding: 10px 12px; font-size: 12.5px; }
.cab .invite-row button { background: var(--qor-orange); border: none; color: #fff; font-weight: 700; font-size: 12.5px; padding: 0 18px; border-radius: 10px; cursor: pointer; white-space: nowrap; }

/* instructions */
.cab .ins-card { background: var(--qor-glass); border: 1px solid var(--qor-border); border-radius: 16px; padding: 26px 28px; }
.cab .ins-card p { font-size: 13.5px; line-height: 1.9; color: #fff; margin: 0 0 6px; white-space: pre-line; }

/* offers */
.cab .of-row { display: flex; align-items: center; gap: 16px; background: var(--qor-glass); border: 1px solid var(--qor-border); border-radius: 14px; padding: 16px 20px; margin-bottom: 12px; flex-wrap: wrap; }
.cab .of-info { flex: 1; min-width: 200px; }
.cab .of-no { font-size: 11.5px; color: var(--qor-text-dim); font-weight: 600; margin-bottom: 4px; }
.cab .of-route { font-size: 13.5px; font-weight: 600; }
.cab .of-note { font-size: 12px; color: var(--qor-text-dim); font-style: italic; margin-top: 4px; }
.cab .of-price { font-family: 'Space Grotesk', system-ui, sans-serif; font-weight: 700; font-size: 16px; white-space: nowrap; }
.cab .of-price small { display: block; font-size: 10.5px; color: #3ddc84; font-weight: 600; text-align: right; }
.cab .of-status { font-size: 11px; font-weight: 700; padding: 4px 12px; border-radius: 100px; white-space: nowrap; }
.cab .of-status.pending { background: rgba(255,255,255,.08); color: var(--qor-text-dim); border: 1px solid var(--qor-border); }
.cab .of-status.accepted { background: rgba(46,204,113,.15); color: #4fd189; border: 1px solid rgba(46,204,113,.4); }
.cab .of-status.rejected, .cab .of-status.expired { background: rgba(231,76,60,.14); color: #ff7a6b; border: 1px solid rgba(231,76,60,.4); }

/* payout */
.cab .po-grid { display: grid; grid-template-columns: 1fr 300px; gap: 18px; align-items: start; }
.cab .po-card { background: var(--qor-glass); border: 1px solid var(--qor-border); border-radius: 16px; padding: 22px; }
.cab .po-card .fld { margin-bottom: 14px; }
.cab .po-card label { display: block; font-size: 10.5px; text-transform: uppercase; font-weight: 700; color: var(--qor-text-dim); margin-bottom: 5px; }
.cab .po-card input, .cab .po-card select { width: 100%; padding: 10px 12px; border-radius: 9px; background: rgba(0,0,0,.24); border: 1px solid var(--qor-border); color: #fff; font-size: 13.5px; }
.cab .po-card input:focus { outline: none; border-color: var(--qor-orange); }
.cab .po-card button { padding: 12px 26px; border-radius: 10px; border: none; font-weight: 700; font-size: 13.5px; color: #fff; background: linear-gradient(135deg, var(--qor-orange), var(--qor-orange-dark)); cursor: pointer; }
.cab .po-rules { font-size: 12.5px; color: var(--qor-text-dim); line-height: 1.7; }
.cab .po-rules b { color: #fff; }
.cab .po-rules .line { display: flex; justify-content: space-between; padding: 7px 0; border-top: 1px solid var(--qor-border); }
.cab .po-rules .line:first-child { border-top: none; }
@media (max-width: 800px) {
.cab .po-grid { grid-template-columns: 1fr; }
}

/* profile */
.cab .cf { max-width: 620px; background: var(--qor-glass); border: 1px solid var(--qor-border); border-radius: 16px; padding: 24px; }
.cab .cf .row2 { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.cab .cf .fld { margin-bottom: 12px; }
.cab .cf label { display: block; font-size: 10.5px; text-transform: uppercase; font-weight: 700; color: var(--qor-text-dim); margin-bottom: 5px; letter-spacing: .3px; }
.cab .cf input, .cab .cf textarea { width: 100%; padding: 10px 12px; border-radius: 9px; background: rgba(0,0,0,.24); border: 1px solid var(--qor-border); color: #fff; font-size: 13.5px; font-weight: 500; }
.cab .cf input:focus, .cab .cf textarea:focus { outline: none; border-color: var(--qor-orange); }
.cab .cf button { margin-top: 8px; padding: 12px 26px; border-radius: 10px; border: none; font-weight: 700; font-size: 13.5px; color: #fff; background: linear-gradient(135deg, var(--qor-orange), var(--qor-orange-dark)); cursor: pointer; }
@media (max-width: 560px) {
.cab .cf .row2 { grid-template-columns: 1fr; }
}

/* referral */
.cab .rf-card { background: linear-gradient(135deg, rgba(255,122,26,.16), rgba(255,122,26,.04)); border: 1px solid rgba(255,122,26,.35); border-radius: 16px; padding: 24px 26px; margin-bottom: 22px; }
.cab .rf-card .l { font-size: 12.5px; color: var(--qor-text-dim); font-weight: 600; margin-bottom: 8px; }
.cab .rf-code-row { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.cab .rf-code { font-family: 'Space Grotesk', system-ui, sans-serif; font-size: 24px; font-weight: 700; color: var(--qor-orange); letter-spacing: 2px; }
.cab .rf-link { background: rgba(255,255,255,.06); border: 1px solid var(--qor-border); border-radius: 10px; padding: 10px 14px; font-size: 12.5px; color: #fff; word-break: break-all; margin-top: 12px; }
.cab .rf-note { font-size: 12.5px; color: var(--qor-text-dim); margin-top: 10px; line-height: 1.6; }
.cab .rf-row { background: var(--qor-glass); border: 1px solid var(--qor-border); border-radius: 12px; padding: 13px 18px; margin-bottom: 8px; display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; }
.cab .rf-row .nm { font-size: 13.5px; font-weight: 700; }
.cab .rf-row .sub { font-size: 12px; color: var(--qor-text-dim); }
.cab .rf-pill { font-size: 10.5px; font-weight: 700; padding: 3px 11px; border-radius: 100px; }
.cab .rf-pill.approved { background: rgba(46,204,113,.15); color: #4fd189; border: 1px solid rgba(46,204,113,.4); }
.cab .rf-pill.pending { background: rgba(255,122,26,.14); color: var(--qor-orange); border: 1px solid rgba(255,122,26,.4); }
.cab .rf-pill.rejected, .cab .rf-pill.suspended { background: rgba(255,255,255,.06); color: var(--qor-text-dim); border: 1px solid var(--qor-border); }
.cab .rf-bonus { font-size: 11.5px; font-weight: 700; color: #4fd189; }

/* region */
.cab .rg-grid { display: grid; grid-template-columns: 1fr 300px; gap: 18px; align-items: start; }
.cab .rg-card { background: var(--qor-glass); border: 1px solid var(--qor-border); border-radius: 16px; padding: 22px; }
.cab .rg-chips { display: flex; flex-wrap: wrap; gap: 10px; margin-bottom: 20px; }
.cab .rg-chip { position: relative; }
.cab .rg-chip input { position: absolute; opacity: 0; width: 100%; height: 100%; cursor: pointer; margin: 0; }
.cab .rg-chip label { display: block; padding: 10px 18px; border-radius: 100px; border: 1px solid var(--qor-border); background: rgba(0,0,0,.2); color: var(--qor-text-dim); font-size: 13px; font-weight: 700; cursor: pointer; transition: background .15s, border-color .15s, color .15s; }
.cab .rg-chip input:checked + label { background: linear-gradient(135deg, var(--qor-orange), var(--qor-orange-dark)); border-color: transparent; color: #fff; }
.cab .rg-card button { padding: 12px 26px; border-radius: 10px; border: none; font-weight: 700; font-size: 13.5px; color: #fff; background: linear-gradient(135deg, var(--qor-orange), var(--qor-orange-dark)); cursor: pointer; }
.cab .rg-note { font-size: 12.5px; color: var(--qor-text-dim); line-height: 1.7; }
.cab .rg-note b { color: #fff; }
@media (max-width: 800px) {
.cab .rg-grid { grid-template-columns: 1fr; }
}

/* resale_marketplace */
.cab .rs-sec { margin-bottom: 34px; }
.cab .rs-sec-h { font-size: 15px; font-weight: 700; margin-bottom: 4px; }
.cab .rs-sec-sub { font-size: 12.5px; color: var(--qor-text-dim); margin-bottom: 14px; }
.cab .rs-card { background: var(--qor-glass); border: 1px solid var(--qor-border); border-radius: 14px; padding: 16px 20px; margin-bottom: 10px; }
.cab .rs-top { display: flex; justify-content: space-between; flex-wrap: wrap; gap: 8px; margin-bottom: 8px; }
.cab .rs-no { font-size: 12px; color: var(--qor-text-dim); font-weight: 600; }
.cab .rs-route { font-size: 14px; font-weight: 600; margin-bottom: 4px; }
.cab .rs-route small { display: block; color: var(--qor-text-dim); font-size: 12px; font-weight: 500; margin-top: 3px; }
.cab .rs-price { font-family: 'Space Grotesk', system-ui, sans-serif; font-weight: 700; color: var(--qor-orange); font-size: 16px; }
.cab .rs-form { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; margin-top: 10px; }
.cab .rs-form input, .cab .rs-form select { background: rgba(255,255,255,.05); border: 1px solid var(--qor-border); color: #fff; border-radius: 10px; padding: 8px 12px; font-size: 13px; }
.cab .rs-form input[type=number] { width: 130px; }
.cab .rs-form input[type=text] { flex: 1 1 160px; min-width: 140px; }
.cab .rs-form select { min-width: 160px; }
.cab .rs-btn { background: linear-gradient(135deg, var(--qor-orange), var(--qor-orange-dark)); border: none; color: #fff; font-weight: 700; font-size: 12.5px; padding: 8px 16px; border-radius: 10px; cursor: pointer; }
.cab .rs-btn.ghost { background: transparent; border: 1px solid var(--qor-border); color: var(--qor-text-dim); }
.cab .rs-btn.danger:hover { border-color: #ff6b6b; color: #ff6b6b; }
.cab .rs-pill { font-size: 10.5px; font-weight: 700; padding: 3px 11px; border-radius: 100px; white-space: nowrap; }
.cab .rs-pill.pending { background: rgba(255,122,26,.14); color: var(--qor-orange); border: 1px solid rgba(255,122,26,.4); }
.cab .rs-pill.accepted, .cab .rs-pill.sold { background: rgba(46,204,113,.15); color: #4fd189; border: 1px solid rgba(46,204,113,.4); }
.cab .rs-pill.rejected, .cab .rs-pill.withdrawn, .cab .rs-pill.expired, .cab .rs-pill.cancelled { background: rgba(255,255,255,.06); color: var(--qor-text-dim); border: 1px solid var(--qor-border); }
.cab .rs-bidrow { border-top: 1px solid var(--qor-border); padding-top: 10px; margin-top: 10px; }
.cab .rs-bidrow:first-of-type { border-top: none; padding-top: 0; margin-top: 0; }
.cab .rs-bidrow-top { display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 8px; }
.cab .rs-bidder { font-size: 13px; font-weight: 700; }
.cab .rs-bidder small { display: block; color: var(--qor-text-dim); font-size: 11.5px; font-weight: 500; }
.cab .rs-actions { display: flex; gap: 8px; margin-top: 8px; flex-wrap: wrap; }

/* rides */
.cab .ride { background: var(--qor-glass); border: 1px solid var(--qor-border); border-radius: 16px; padding: 18px 22px; margin-bottom: 14px; }
.cab .ride-top { display: flex; justify-content: space-between; flex-wrap: wrap; gap: 8px; margin-bottom: 12px; }
.cab .ride-no { font-size: 12px; color: var(--qor-text-dim); font-weight: 600; }
.cab .ride-pill { font-size: 11px; font-weight: 700; padding: 4px 12px; border-radius: 100px; }
.cab .ride-pill.ok { background: rgba(46,204,113,.15); color: #4fd189; border: 1px solid rgba(46,204,113,.4); }
.cab .ride-pill.paid { background: rgba(255,122,26,.14); color: var(--qor-orange); border: 1px solid rgba(255,122,26,.4); }
.cab .ride-route { font-size: 14px; font-weight: 600; margin-bottom: 10px; }
.cab .ride-route small { display: block; color: var(--qor-text-dim); font-size: 12px; font-weight: 500; margin-top: 3px; }
.cab .ride-nums { display: flex; gap: 22px; flex-wrap: wrap; font-size: 12.5px; color: var(--qor-text-dim); }
.cab .ride-nums b { color: #fff; font-family: 'Space Grotesk', system-ui, sans-serif; }
.cab .ride-nums .payout b { color: #3ddc84; }
.cab .ride.awaiting { opacity: .82; border-style: dashed; }
.cab .ride-hint { margin-top: 10px; font-size: 12px; color: var(--qor-orange); }
.cab .ride-pills { display: flex; gap: 6px; flex-wrap: wrap; }
.cab .ride-pill.st { background: rgba(255,255,255,.06); color: var(--qor-text-dim); border: 1px solid var(--qor-border); }
.cab .ride-pill.st.ongoing { background: rgba(46,204,113,.15); color: #4fd189; border-color: rgba(46,204,113,.4); }
.cab .ride-pill.st.cancelled { background: rgba(231,76,60,.12); color: #ff8a7a; border-color: rgba(231,76,60,.4); }
.cab .ride.cancelled { opacity: .6; }
.cab .ride-actions { display: flex; gap: 8px; flex-wrap: wrap; align-items: flex-start; margin-top: 14px; }
.cab .ride-actions form { margin: 0; }
.cab .ride-btn { font: inherit; font-size: 13px; font-weight: 700; padding: 9px 16px; border-radius: 100px; border: 1px solid transparent; cursor: pointer; }
.cab .ride-btn.go { background: var(--qor-orange); color: #fff; }
.cab .ride-btn.done { background: #2ecc71; color: #0b1a10; }
.cab .ride-btn.ghost { background: transparent; color: var(--qor-text-dim); border-color: var(--qor-border); }
.cab .ride-cancel summary { list-style: none; }
.cab .ride-cancel summary::-webkit-details-marker { display: none; }
.cab .ride-cancel[open] summary { margin-bottom: 8px; }
.cab .ride-cancel textarea { width: 100%; min-width: 240px; min-height: 64px; border-radius: 12px; border: 1px solid var(--qor-border); background: rgba(0,0,0,.2); color: inherit; padding: 10px; font: inherit; font-size: 13px; }
.cab .ride-cancel .ride-btn { margin-top: 8px; }
.cab .ride-err { margin-bottom: 12px; font-size: 13px; color: #ff8a7a; }

/* --- W2 bileşenleri --- */
/* ---------- W2 ortak: başlık satırı, sayaç, segment, seçim ---------- */
.cab .w2-head { display: flex; justify-content: space-between; align-items: flex-start; gap: 16px; flex-wrap: wrap; margin-bottom: 14px; }
.cab .w2-head .cab-h-sub { margin-bottom: 0; }
.cab .w2-head-tools { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.cab .w2-count {
    display: inline-flex; align-items: center; justify-content: center; min-width: 26px; height: 22px; padding: 0 7px; margin-left: 6px;
    border-radius: var(--qor-r-pill); background: var(--qor-glass-2); border: 1px solid var(--qor-border);
    font-family: var(--qor-font-body); font-size: 12px; font-weight: 800; color: var(--qor-text-dim); vertical-align: 3px;
}
.cab h1.cab-h, .cab h2.qor-card-title { color: var(--qor-text); }
.cab .w2-i { width: 16px; height: 16px; flex-shrink: 0; }
.cab .w2-muted { color: var(--qor-text-faint); }
.cab .w2-fine { font-size: 12px; line-height: 1.5; color: var(--qor-text-faint); margin: 6px 0 0; }
.cab .w2-fine a, .cab .w2-wallet a { color: var(--qor-orange); }
.cab .w2-money-pos { color: var(--qor-success); }
.cab .w2-warn-text { color: var(--qor-warn); }
.cab .w2-danger-text { color: var(--qor-danger) !important; }
.cab .w2-row-gap { display: flex; gap: 8px; flex-wrap: wrap; justify-content: center; }
.cab .w2-select, .cab .w2-in {
    min-height: 38px; padding: 0 12px; border-radius: var(--qor-r-sm);
    border: 1px solid var(--qor-border); background: var(--qor-sunken); color: var(--qor-text);
    font-family: var(--qor-font-body); font-size: 13px; font-weight: 600; outline: none; color-scheme: dark;
    transition: border-color var(--qor-dur) var(--qor-ease), box-shadow var(--qor-dur) var(--qor-ease);
}
.cab .w2-select:focus, .cab .w2-in:focus { border-color: var(--qor-orange); box-shadow: var(--qor-ring); }
.cab .w2-select option, .cab .w2-in option, .cab .qor-field select option { background: var(--qor-navy-2); color: var(--qor-text); }
.cab .qor-field select, .cab .qor-field input { color-scheme: dark; }

.cab .w2-seg { display: inline-flex; padding: 3px; gap: 2px; border-radius: 11px; background: var(--qor-sunken); border: 1px solid var(--qor-border); }
.cab .w2-seg a {
    display: inline-flex; align-items: center; gap: 6px; min-height: 32px; padding: 0 12px; border-radius: 8px;
    font-size: 12.5px; font-weight: 700; color: var(--qor-text-dim); text-decoration: none;
    transition: background-color var(--qor-dur) var(--qor-ease), color var(--qor-dur) var(--qor-ease);
}
.cab .w2-seg a:hover { color: var(--qor-text); }
.cab .w2-seg a[aria-current="true"] { background: var(--qor-glass-2); color: var(--qor-text); box-shadow: var(--qor-shadow-1); }

.cab .w2-2col { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.cab .w2-3col { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; }
.cab .w2-4col { display: grid; grid-template-columns: 1.2fr 1.2fr .6fr 1fr; gap: 12px; }
.cab .w2-narrow { max-width: 320px; }
.cab .qor-field > label { font-size: 10.5px; }
.cab .qor-field input:not([type="radio"]):not([type="checkbox"]), .cab .qor-field select { min-height: 42px; font-size: 13.5px; }

/* ---------- filtre çubuğu ---------- */
.cab .w2-filters { margin-bottom: 16px; }
.cab .w2-filters-body {
    display: flex; flex-wrap: wrap; align-items: flex-end; gap: 12px 16px;
    padding: 12px 14px; border-radius: var(--qor-r-md);
    background: var(--qor-glass); border: 1px solid var(--qor-border);
}
.cab .w2-filters-toggle { display: none; }
.cab .w2-f { display: flex; flex-direction: column; gap: 5px; min-width: 0; }
.cab .w2-f-l { font-size: 10.5px; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; color: var(--qor-text-faint); }
.cab .w2-f-pair { display: flex; align-items: center; gap: 6px; color: var(--qor-text-faint); }
.cab .w2-f-pair .w2-in[type="date"] { width: 142px; }
.cab .w2-f-pair .w2-in[type="number"] { width: 84px; }
.cab .w2-f select.w2-in { min-width: 170px; }
.cab .w2-f-actions { display: flex; gap: 6px; margin-left: auto; align-items: center; }
.cab .w2-chips { display: flex; flex-wrap: wrap; gap: 6px; }
.cab .w2-chips label { position: relative; margin: 0; cursor: pointer; }
.cab .w2-chips input, .cab .cf .w2-chips input, .cab .w2-incl input {
    position: absolute; opacity: 0; width: 1px; height: 1px; padding: 0; margin: 0; pointer-events: none;
}
.cab .w2-chips span, .cab .w2-incl span {
    display: inline-flex; align-items: center; gap: 6px; min-height: 36px; padding: 0 13px; border-radius: var(--qor-r-pill);
    border: 1px solid var(--qor-border); background: var(--qor-sunken); color: var(--qor-text-dim);
    font-size: 12.5px; font-weight: 700; text-transform: none; letter-spacing: 0; white-space: nowrap;
    transition: border-color var(--qor-dur) var(--qor-ease), background-color var(--qor-dur) var(--qor-ease), color var(--qor-dur) var(--qor-ease);
}
.cab .w2-chips label:hover span, .cab .w2-incl label:hover span { border-color: var(--qor-border-strong); color: var(--qor-text); }
.cab .w2-chips input:checked + span, .cab .w2-incl input:checked + span { border-color: var(--qor-orange-line); background: var(--qor-orange-soft); color: var(--qor-orange); }
.cab .w2-chips input:focus-visible + span, .cab .w2-incl input:focus-visible + span { box-shadow: var(--qor-ring); }
.cab .w2-chips--multi span b { font-family: var(--qor-font-head); font-size: 11px; opacity: .8; }
.cab .w2-check { display: inline-flex; align-items: center; gap: 9px; min-height: 38px; margin: 0; cursor: pointer; font-size: 13px; font-weight: 600; color: var(--qor-text-dim); text-transform: none; letter-spacing: 0; }
.cab .w2-check input { width: 18px; height: 18px; accent-color: var(--qor-orange); margin: 0; }
.cab .w2-badge { display: inline-flex; align-items: center; justify-content: center; min-width: 20px; height: 20px; padding: 0 5px; border-radius: 10px; background: var(--qor-orange); color: #fff; font-size: 11px; font-weight: 800; }
.cab .w2-presets { display: flex; flex-wrap: wrap; gap: 4px; width: 100%; padding-top: 4px; }
.cab .w2-presets a { padding: 5px 10px; border-radius: var(--qor-r-pill); font-size: 12px; font-weight: 700; color: var(--qor-text-dim); text-decoration: none; }
.cab .w2-presets a:hover { color: var(--qor-text); background: var(--qor-glass); }
.cab .w2-presets a[aria-current="true"] { color: var(--qor-orange); background: var(--qor-orange-soft); }
.cab .w2-filters--inline .w2-f-actions { margin-left: 0; }

/* ---------- istek akışı: kart ---------- */
.cab .w2-list { display: flex; flex-direction: column; gap: 10px; }
.cab .w2-req {
    display: grid; grid-template-columns: 92px minmax(0, 1fr) 176px; gap: 0 18px;
    padding: 16px 18px; border-radius: var(--qor-r-md);
    background: var(--qor-surface); border: 1px solid var(--qor-border);
    scroll-margin-top: 90px;
    transition: border-color var(--qor-dur) var(--qor-ease), box-shadow .4s var(--qor-ease);
}
.cab .w2-req:hover { border-color: var(--qor-border-strong); }
.cab .w2-req.is-mine { border-color: var(--qor-success-line); }
.cab .w2-req.is-open { border-color: var(--qor-orange-line); box-shadow: var(--qor-shadow-2); }
.cab .w2-req.is-flash { box-shadow: 0 0 0 2px var(--qor-orange), var(--qor-shadow-2); }
.cab .w2-when { display: flex; flex-direction: column; gap: 2px; padding-right: 14px; border-right: 1px solid rgba(255, 255, 255, .08); }
.cab .w2-when-d { font-size: 11.5px; font-weight: 700; color: var(--qor-text-dim); text-transform: uppercase; letter-spacing: .04em; }
.cab .w2-when-t { font-family: var(--qor-font-head); font-size: 24px; font-weight: 700; line-height: 1.1; color: var(--qor-text); font-variant-numeric: tabular-nums; }
.cab .w2-when-r { font-size: 11.5px; font-weight: 600; color: var(--qor-text-faint); }
.cab .w2-when.is-soon .w2-when-r { color: var(--qor-warn); }
.cab .w2-req-body { min-width: 0; }
.cab .w2-req-top { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; margin-bottom: 8px; }
.cab .w2-id { font-size: 12px; font-weight: 700; color: var(--qor-text-faint); font-variant-numeric: tabular-nums; }
.cab .w2-req-top .qor-chip { padding: 4px 9px; font-size: 11px; }
.cab .w2-route { list-style: none; margin: 0 0 10px; padding: 0; }
.cab .w2-route li { position: relative; padding: 0 0 7px 20px; font-size: 14px; font-weight: 600; line-height: 1.4; color: var(--qor-text); overflow-wrap: anywhere; }
.cab .w2-route li::before { content: ""; position: absolute; left: 3px; top: 6px; width: 8px; height: 8px; border-radius: 50%; background: var(--qor-text-dim); }
.cab .w2-route li:not(:last-child)::after { content: ""; position: absolute; left: 6px; top: 16px; bottom: -1px; width: 2px; background: rgba(255, 255, 255, .12); }
.cab .w2-route li.is-a::before { background: var(--qor-orange); }
.cab .w2-route li.is-b::before { background: var(--qor-text); border-radius: 2px; }
.cab .w2-route li.is-stop { font-size: 12.5px; font-weight: 500; color: var(--qor-text-dim); }
.cab .w2-route li.is-stop::before { width: 6px; height: 6px; left: 4px; top: 6px; background: transparent; border: 1.5px solid var(--qor-text-dim); }
.cab .w2-route li:last-child { padding-bottom: 0; }
.cab .w2-facts { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 6px 14px; }
.cab .w2-facts li { display: inline-flex; align-items: center; gap: 5px; font-size: 12.5px; color: var(--qor-text-dim); }
.cab .w2-facts b { color: var(--qor-text); font-weight: 700; }
.cab .w2-facts .w2-i { color: var(--qor-text-faint); }
.cab .w2-sign { font-style: italic; color: var(--qor-text); }
.cab .w2-req-side { display: flex; flex-direction: column; align-items: flex-end; gap: 4px; text-align: right; }
.cab .w2-est { min-height: 38px; display: flex; flex-direction: column; align-items: flex-end; }
.cab .w2-est-l { font-size: 10.5px; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; color: var(--qor-text-faint); }
.cab .w2-est-v { font-family: var(--qor-font-head); font-size: 20px; font-weight: 700; color: var(--qor-text); font-variant-numeric: tabular-nums; }
.cab .w2-offers-n { font-size: 12px; color: var(--qor-text-dim); font-weight: 600; }
.cab .w2-mine { font-size: 12px; color: var(--qor-success); font-weight: 600; }
.cab .w2-req-side .w2-open { margin-top: auto; min-width: 132px; }

/* satır içi teklif paneli */
.cab .w2-offer { grid-column: 1 / -1; margin-top: 16px; padding-top: 16px; border-top: 1px solid rgba(255, 255, 255, .08); }
.cab .w2-offer[hidden] { display: none; }
.cab .w2-offer-grid { display: grid; grid-template-columns: 260px minmax(0, 1fr); gap: 22px; }
.cab .w2-price-in {
    display: flex; align-items: center; gap: 6px; padding: 0 14px; border-radius: 12px;
    background: var(--qor-sunken); border: 1px solid var(--qor-border-strong);
    transition: border-color var(--qor-dur) var(--qor-ease), box-shadow var(--qor-dur) var(--qor-ease);
}
.cab .w2-price-in:focus-within { border-color: var(--qor-orange); box-shadow: var(--qor-ring); }
.cab .w2-price-in span { font-family: var(--qor-font-head); font-size: 22px; font-weight: 700; color: var(--qor-text-faint); }
.cab .w2-price-in input {
    width: 100%; min-width: 0; min-height: 56px; border: 0; outline: none; background: transparent; color: var(--qor-text);
    font-family: var(--qor-font-head); font-size: 28px; font-weight: 700; font-variant-numeric: tabular-nums;
}
.cab .w2-price-in input:focus-visible { outline: none; }
.cab .w2-price-in input::-webkit-outer-spin-button, .cab .w2-price-in input::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
.cab .w2-price-in input[type="number"] { -moz-appearance: textfield; appearance: textfield; }
.cab .w2-when-d { white-space: nowrap; }
.cab .w2-price-in--sm span { font-size: 16px; }
.cab .w2-price-in--sm input { min-height: 40px; font-size: 17px; }
/* by_QOR — referans fiyat ipucu (PriceHint): soluk bantlar + canlı emoji */
.cab .w2-price-in.tone-good, .cab .w2-price-in.tone-good:focus-within { border-color: var(--qor-success); }
.cab .w2-price-in.tone-fair, .cab .w2-price-in.tone-fair:focus-within { border-color: var(--qor-warn); }
.cab .w2-price-in.tone-high, .cab .w2-price-in.tone-high:focus-within { border-color: var(--qor-danger); }
.cab .w2-hint { margin-top: 10px; }
.cab .w2-hint-now { display: flex; align-items: center; gap: 8px; min-height: 30px; font-size: 13px; font-weight: 700; }
.cab .w2-hint-face { font-size: 24px; line-height: 1; }
.cab .w2-hint.is-good .w2-hint-msg { color: var(--qor-success); }
.cab .w2-hint.is-fair .w2-hint-msg { color: var(--qor-warn); }
.cab .w2-hint.is-high .w2-hint-msg { color: var(--qor-danger); }
.cab .w2-hint-zone { margin-top: 4px; font-size: 11.5px; font-weight: 600; color: var(--qor-text-faint); }
.cab .w2-hint-bands { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 6px; opacity: .6; transition: opacity var(--qor-dur) var(--qor-ease); }
.cab .w2-hint-bands:hover, .cab .w2-hint-bands:focus-within { opacity: 1; }
.cab .w2-hint-bands button {
    display: inline-flex; align-items: center; gap: 4px; padding: 4px 9px; border-radius: 999px; cursor: pointer;
    background: transparent; border: 1px solid var(--qor-border-strong); color: var(--qor-text-dim); font-size: 12px; font-weight: 600;
}
.cab .w2-hint-bands b { font-variant-numeric: tabular-nums; }
.cab .w2-hint-bands .is-good b { color: var(--qor-success); }
.cab .w2-hint-bands .is-fair b { color: var(--qor-warn); }
.cab .w2-hint-bands .is-high b { color: var(--qor-danger); }
.cab .w2-est-v.is-faint { color: var(--qor-text-faint); }
.cab .w2-bd { margin: 12px 0 0; display: grid; gap: 6px; }
.cab .w2-bd div { display: flex; justify-content: space-between; align-items: baseline; gap: 10px; font-size: 13px; }
.cab .w2-bd dt { font-weight: 600; color: var(--qor-text-dim); }
.cab .w2-bd dd { margin: 0; font-weight: 700; color: var(--qor-text); font-variant-numeric: tabular-nums; }
.cab .w2-bd .is-you { padding-top: 8px; margin-top: 2px; border-top: 1px dashed var(--qor-border); }
.cab .w2-bd .is-you dt { color: var(--qor-text); }
.cab .w2-bd .is-you dd { font-family: var(--qor-font-head); font-size: 20px; color: var(--qor-success); }
.cab .w2-offer-opts .qor-field { margin-bottom: 12px; }
.cab .w2-incl { border: 0; margin: 0 0 12px; padding: 0; display: flex; flex-wrap: wrap; gap: 6px; }
.cab .w2-incl legend { width: 100%; margin-bottom: 6px; float: none; font-size: 10.5px; }
.cab .w2-incl label { position: relative; margin: 0; cursor: pointer; }
.cab .w2-incl input:checked + span::before { content: "✓"; font-size: 12px; }
.cab .w2-offer-actions { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; margin-top: 4px; }
.cab .w2-offer-actions .w2-withdraw { margin-left: auto; }

/* harita görünümü */
.cab .w2-feed.is-map { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 14px; align-items: start; }
.cab .w2-feed.is-map .w2-req { grid-template-columns: 84px minmax(0, 1fr); }
.cab .w2-feed.is-map .w2-req-side { grid-column: 1 / -1; flex-direction: row; align-items: center; justify-content: flex-end; flex-wrap: wrap; gap: 6px 14px; margin-top: 12px; text-align: left; }
.cab .w2-feed.is-map .w2-est { min-height: 0; flex-direction: row; align-items: baseline; gap: 6px; margin-right: auto; }
.cab .w2-feed.is-map .w2-est-v { font-size: 16px; }
.cab .w2-feed.is-map .w2-req-side .w2-open { margin-top: 0; }
.cab .w2-feed.is-map .w2-when-t { font-size: 20px; }
.cab .w2-feed.is-map .w2-offer-grid { grid-template-columns: 1fr; }
.cab .w2-map-wrap { position: sticky; top: 16px; }
.cab .w2-map { height: calc(100vh - 140px); min-height: 420px; max-height: 760px; border-radius: var(--qor-r-md); overflow: hidden; background: var(--qor-surface); border: 1px solid var(--qor-border); display: flex; align-items: center; justify-content: center; }
.cab .w2-map-msg { padding: 24px; text-align: center; color: var(--qor-text-dim); font-size: 13px; }
.cab .w2-map-note { font-size: 12px; color: var(--qor-text-faint); margin: 8px 2px 0; }
.cab .w2-map-note[hidden] { display: none; }

/* ---------- otomatik teklif ---------- */
.cab .w2-ab { display: grid; grid-template-columns: minmax(0, 1fr) 400px; gap: 20px; align-items: start; }
.cab .w2-sec-h { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-bottom: 10px; }
.cab .w2-sec-h h2, .cab .w2-sec-title { font-family: var(--qor-font-head); font-size: 16px; font-weight: 700; margin: 0; color: var(--qor-text); }
.cab .w2-rules { list-style: none; margin: 0; padding: 0; border-radius: var(--qor-r-md); border: 1px solid var(--qor-border); background: var(--qor-surface); overflow: hidden; }
.cab .w2-rule { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 14px 16px; }
.cab .w2-rule + .w2-rule { border-top: 1px solid rgba(255, 255, 255, .07); }
.cab .w2-rule.is-editing { background: var(--qor-orange-soft); }
.cab .w2-rule.is-off .w2-rule-main { opacity: .5; }
.cab .w2-rule-main { min-width: 0; display: flex; flex-direction: column; gap: 4px; }
.cab .w2-rule-scope { display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 10px; font-size: 12.5px; color: var(--qor-text-dim); }
.cab .w2-rule-scope b { font-size: 14px; color: var(--qor-text); }
.cab .w2-rule-price { display: flex; flex-wrap: wrap; gap: 4px 14px; font-size: 12.5px; color: var(--qor-text-dim); font-variant-numeric: tabular-nums; }
.cab .w2-rule-price b { color: var(--qor-text); }
.cab .w2-rule-ex { color: var(--qor-orange); font-weight: 700; }
.cab .w2-rule-actions { display: flex; align-items: center; gap: 2px; flex-shrink: 0; }
.cab .w2-rule-actions form { margin: 0; }
.cab .w2-switch { background: none !important; border: 0 !important; box-shadow: none !important; padding: 6px; cursor: pointer; }
.cab .w2-switch-track { position: relative; display: block; width: 38px; height: 22px; border-radius: 11px; background: rgba(255, 255, 255, .16); transition: background-color var(--qor-dur) var(--qor-ease); }
.cab .w2-switch-knob { position: absolute; top: 3px; left: 3px; width: 16px; height: 16px; border-radius: 50%; background: #e9edf5; transition: transform .22s var(--qor-ease); }
.cab .w2-switch[aria-checked="true"] .w2-switch-track { background: var(--qor-success); }
.cab .w2-switch[aria-checked="true"] .w2-switch-knob { transform: translateX(16px); }
.cab .w2-ab-form { position: sticky; top: 16px; margin: 0; }
.cab .w2-ab-form .w2-3col .qor-field input { padding: 0 10px; }
.cab .w2-preview { margin: 14px 0 16px; padding: 14px; border-radius: 12px; background: var(--qor-sunken); border: 1px solid var(--qor-border); }
.cab .w2-preview-line { margin: 0; font-size: 14px; color: var(--qor-text-dim); line-height: 1.9; }
.cab .w2-preview-line b { font-family: var(--qor-font-head); font-size: 20px; color: var(--qor-orange); font-variant-numeric: tabular-nums; }
.cab .w2-inline-in { width: 64px; min-height: 30px; padding: 0 6px; border-radius: 8px; border: 1px solid var(--qor-border-strong); background: var(--qor-navy); color: var(--qor-text); font: inherit; font-weight: 700; text-align: center; color-scheme: dark; }
.cab .w2-mini { width: 100%; border-collapse: collapse; margin-top: 10px; font-size: 12.5px; font-variant-numeric: tabular-nums; }
.cab .w2-mini th { text-align: right; font-size: 10.5px; font-weight: 800; text-transform: uppercase; letter-spacing: .05em; color: var(--qor-text-faint); padding: 6px 4px; border-bottom: 1px solid var(--qor-border); }
.cab .w2-mini th:first-child, .cab .w2-mini td:first-child { text-align: left; }
.cab .w2-mini td { text-align: right; padding: 7px 4px; color: var(--qor-text); border-bottom: 1px solid rgba(255, 255, 255, .06); }
.cab .w2-mini tr.is-off td { color: var(--qor-text-faint); }

/* ---------- takvim ---------- */
.cab .w2-cal-bar { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; margin-bottom: 12px; }
.cab .w2-cal-title { font-family: var(--qor-font-head); font-size: 18px; font-weight: 700; margin: 0 6px; min-width: 150px; text-align: center; color: var(--qor-text); }
.cab .w2-icon-btn { display: inline-flex; align-items: center; justify-content: center; width: 36px; height: 36px; border-radius: 10px; border: 1px solid var(--qor-border); color: var(--qor-text-dim); background: var(--qor-glass); }
.cab .w2-icon-btn:hover { color: var(--qor-text); border-color: var(--qor-border-strong); }
.cab .w2-legend { list-style: none; margin: 0 0 0 auto; padding: 0; display: flex; gap: 12px; flex-wrap: wrap; font-size: 12px; color: var(--qor-text-dim); }
.cab .w2-legend li { display: inline-flex; align-items: center; gap: 6px; }
.cab .w2-dot { display: inline-block; width: 8px; height: 8px; border-radius: 50%; background: var(--qor-text-faint); }
.cab .w2-dot.is-upcoming { background: var(--qor-info); }
.cab .w2-dot.is-awaiting { background: var(--qor-warn); }
.cab .w2-dot.is-ongoing { background: var(--qor-success); }
.cab .w2-dot.is-completed { background: rgba(255, 255, 255, .45); }
.cab .w2-dot.is-cancelled { background: var(--qor-danger); }
.cab .w2-cal { display: grid; grid-template-columns: minmax(0, 1fr) 280px; gap: 16px; align-items: start; }
.cab .w2-month { border-radius: var(--qor-r-md); border: 1px solid var(--qor-border); background: var(--qor-surface); overflow: hidden; }
.cab .w2-month-head, .cab .w2-month-row { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); }
.cab .w2-month-head span { padding: 8px 8px 6px; font-size: 10.5px; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; color: var(--qor-text-faint); }
.cab .w2-month-row + .w2-month-row, .cab .w2-month-head + .w2-month-row { border-top: 1px solid rgba(255, 255, 255, .07); }
.cab .w2-day { min-height: 104px; padding: 4px 5px 6px; display: flex; flex-direction: column; gap: 3px; min-width: 0; }
.cab .w2-day + .w2-day { border-left: 1px solid rgba(255, 255, 255, .07); }
.cab .w2-day.is-out { background: rgba(0, 0, 0, .14); }
.cab .w2-day.is-out .w2-day-n { color: var(--qor-text-faint); }
.cab .w2-day.is-selected { background: var(--qor-orange-soft); }
.cab .w2-day-n {
    align-self: flex-start; width: 26px; height: 26px; border-radius: 8px; border: 0 !important; box-shadow: none !important; background: none !important;
    font-size: 12.5px; font-weight: 700; color: var(--qor-text-dim); cursor: pointer; padding: 0;
}
.cab .w2-day-n:hover { color: var(--qor-text); background: var(--qor-glass-2) !important; }
.cab .w2-day.is-today .w2-day-n { background: var(--qor-orange) !important; color: #fff; }
.cab .w2-ev {
    display: block; width: 100%; text-align: left; padding: 3px 6px; border-radius: 6px; border: 0 !important; box-shadow: none !important;
    font-size: 11.5px; font-weight: 600; color: var(--qor-text); cursor: pointer; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
    background: var(--qor-glass-2) !important; font-family: var(--qor-font-body);
}
.cab .w2-ev { white-space: normal; line-height: 1.25; padding: 4px 6px; }
.cab .w2-ev b, .cab .w2-ev span { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.cab .w2-ev b { font-variant-numeric: tabular-nums; font-size: 11px; }
.cab .w2-ev span { font-size: 11px; font-weight: 500; opacity: .85; }
.cab .w2-ev.is-upcoming { background: var(--qor-info-soft) !important; color: #cfe5ff; }
.cab .w2-ev.is-awaiting { background: var(--qor-warn-soft) !important; color: #ffe2a6; }
.cab .w2-ev.is-ongoing { background: var(--qor-success-soft) !important; color: #b9f3d3; }
.cab .w2-ev.is-completed { color: var(--qor-text-dim); }
.cab .w2-ev.is-cancelled { color: var(--qor-text-faint); text-decoration: line-through; }
.cab .w2-ev.is-selected, .cab .w2-ag-item.is-selected { box-shadow: inset 0 0 0 1.5px var(--qor-orange) !important; }
.cab .w2-ev-more { border: 0 !important; background: none !important; box-shadow: none !important; padding: 0 6px; font-size: 11px; font-weight: 700; color: var(--qor-text-dim); text-align: left; cursor: pointer; }
.cab .w2-day-dots { display: none; }
.cab .w2-agenda { display: flex; flex-direction: column; gap: 10px; }
.cab .w2-ag-day { padding: 12px 14px; border-radius: var(--qor-r-md); background: var(--qor-surface); border: 1px solid var(--qor-border); }
.cab .w2-ag-day.is-today { border-color: var(--qor-orange-line); }
.cab .w2-ag-date { font-family: var(--qor-font-head); font-size: 14px; font-weight: 700; margin: 0 0 8px; color: var(--qor-text); }
.cab .w2-ag-date span { color: var(--qor-text-dim); font-weight: 600; margin-right: 4px; }
.cab .w2-ag-item {
    display: grid; grid-template-columns: 54px minmax(0, 1fr) auto; gap: 10px; align-items: center; width: 100%; text-align: left;
    padding: 9px 10px; margin-top: 4px; border-radius: 10px; border: 0 !important; box-shadow: none !important; cursor: pointer;
    background: var(--qor-glass) !important; color: var(--qor-text); font-family: var(--qor-font-body);
    position: relative; transition: background-color var(--qor-dur) var(--qor-ease);
}
.cab .w2-ag-item { padding-left: 24px; }
.cab .w2-ag-item::before { content: ""; position: absolute; left: 10px; top: 50%; width: 7px; height: 7px; margin-top: -3.5px; border-radius: 50%; background: var(--qor-text-faint); }
.cab .w2-ag-item.is-upcoming::before { background: var(--qor-info); }
.cab .w2-ag-item.is-awaiting::before { background: var(--qor-warn); }
.cab .w2-ag-item.is-ongoing::before { background: var(--qor-success); }
.cab .w2-ag-item.is-cancelled { opacity: .55; }
.cab .w2-ag-item:hover { background: var(--qor-glass-2) !important; }
.cab .w2-ag-time { font-family: var(--qor-font-head); font-weight: 700; font-size: 15px; font-variant-numeric: tabular-nums; display: flex; flex-direction: column; line-height: 1.2; }
.cab .w2-ag-time small, .cab .w2-ag-route small { display: block; font-family: var(--qor-font-body); font-size: 11.5px; font-weight: 600; color: var(--qor-text-faint); }
.cab .w2-ag-route { font-size: 13px; font-weight: 600; min-width: 0; overflow: hidden; text-overflow: ellipsis; }
.cab .w2-ag-pay { font-size: 13px; font-weight: 700; color: var(--qor-success); font-variant-numeric: tabular-nums; }
.cab .w2-ag-empty { font-size: 12.5px; color: var(--qor-text-faint); margin: 2px 0 0; }
.cab .w2-ag-day.is-empty { display: flex; align-items: baseline; gap: 12px; padding: 9px 14px; background: transparent; border-style: dashed; }
.cab .w2-ag-day.is-empty .w2-ag-date { margin: 0; font-size: 13px; color: var(--qor-text-dim); }
.cab .w2-ag-day.is-empty .w2-ag-empty { margin: 0; }
.cab .w2-ag-empty a { color: var(--qor-orange); }
.cab .w2-cal-side { position: sticky; top: 16px; padding: 14px; border-radius: var(--qor-r-md); background: var(--qor-surface); border: 1px solid var(--qor-border); scroll-margin-top: 16px; }
.cab .w2-side-h { font-family: var(--qor-font-head); font-size: 14px; font-weight: 700; margin: 0 0 8px; color: var(--qor-text); }
.cab .w2-cal-side .w2-ag-item { grid-template-columns: 50px minmax(0, 1fr); }
.cab .w2-back { border: 0 !important; background: none !important; box-shadow: none !important; padding: 0; margin-bottom: 10px; font-size: 12.5px; font-weight: 700; color: var(--qor-text-dim); cursor: pointer; }
.cab .w2-back:hover { color: var(--qor-text); }
.cab .w2-ride-top { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin-bottom: 4px; }
.cab .w2-state { font-size: 11px; font-weight: 800; padding: 4px 9px; border-radius: var(--qor-r-pill); background: var(--qor-glass-2); color: var(--qor-text-dim); }
.cab .w2-state.is-upcoming { background: var(--qor-info-soft); color: var(--qor-info); }
.cab .w2-state.is-awaiting { background: var(--qor-warn-soft); color: var(--qor-warn); }
.cab .w2-state.is-ongoing { background: var(--qor-success-soft); color: var(--qor-success); }
.cab .w2-state.is-cancelled { background: var(--qor-danger-soft); color: var(--qor-danger); }
.cab .w2-ride-when { margin: 0 0 10px; font-size: 13px; color: var(--qor-text-dim); }
.cab .w2-ride-when b { font-family: var(--qor-font-head); font-size: 17px; color: var(--qor-text); }
.cab .w2-ride-card .w2-route li { font-size: 13px; }
.cab .w2-kv { margin: 10px 0 0; display: grid; gap: 5px; }
.cab .w2-kv div { display: flex; justify-content: space-between; gap: 10px; font-size: 12.5px; }
.cab .w2-kv dt { font-weight: 600; color: var(--qor-text-dim); }
.cab .w2-kv dd { margin: 0; font-weight: 700; text-align: right; overflow-wrap: anywhere; }
.cab .w2-ride-actions { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 14px; }
.cab .w2-ride-actions form { margin: 0; }
.cab .w2-cancel { width: 100%; }
.cab .w2-cancel summary { list-style: none; display: inline-flex; }
.cab .w2-cancel summary::-webkit-details-marker { display: none; }
.cab .w2-cancel[open] summary { margin-bottom: 8px; }
.cab .w2-cancel textarea { min-height: 72px; margin-bottom: 8px; font-size: 13px; }

/* ---------- araçlar ---------- */
.cab .w2-docs { display: flex; align-items: center; gap: 14px 22px; flex-wrap: wrap; padding: 12px 16px; margin-bottom: 16px; border-radius: var(--qor-r-md); border: 1px solid var(--qor-border); background: var(--qor-glass); }
.cab .w2-docs-h { font-family: var(--qor-font-head); font-size: 14px; font-weight: 700; margin: 0; color: var(--qor-text); }
.cab .w2-docs .w2-fine { margin: 2px 0 0; }
.cab .w2-docs-list { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 6px 14px; flex: 1; }
.cab .w2-docs-list li { display: inline-flex; align-items: center; gap: 8px; font-size: 12.5px; color: var(--qor-text-dim); }
.cab .w2-docs-list .qor-chip { padding: 4px 8px; font-size: 10.5px; }
.cab .w2-veh { padding: 16px 18px; margin-bottom: 12px; border-radius: var(--qor-r-md); background: var(--qor-surface); border: 1px solid var(--qor-border); scroll-margin-top: 90px; }
.cab .w2-veh-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; margin-bottom: 12px; }
.cab .w2-veh-name { font-family: var(--qor-font-head); font-size: 17px; font-weight: 700; margin: 0; color: var(--qor-text); }
.cab .w2-veh-sub { margin: 2px 0 0; font-size: 12.5px; color: var(--qor-text-dim); }
.cab .w2-plate { display: inline-block; padding: 1px 7px; border-radius: 5px; border: 1px solid var(--qor-border-strong); font-family: var(--qor-font-head); font-weight: 700; font-size: 12px; letter-spacing: .06em; color: var(--qor-text); }
.cab .w2-photos { display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 10px; }
.cab .w2-photo { position: relative; margin: 0; border-radius: 10px; overflow: hidden; background: var(--qor-sunken); aspect-ratio: 16 / 10; }
.cab .w2-photo img { width: 100%; height: 100%; object-fit: cover; display: block; }
.cab .w2-photo.is-cover { outline: 2px solid var(--qor-orange); outline-offset: -2px; }
.cab .w2-photo-cover { position: absolute; top: 6px; left: 6px; padding: 3px 8px; border-radius: 6px; background: var(--qor-orange); color: #fff; font-size: 10.5px; font-weight: 800; }
.cab .w2-photo-tools {
    position: absolute; left: 0; right: 0; bottom: 0; display: flex; align-items: center; gap: 2px; padding: 16px 5px 5px;
    background: linear-gradient(transparent, rgba(5, 10, 20, .82));
    opacity: 0; transition: opacity var(--qor-dur) var(--qor-ease);
}
.cab .w2-photo:hover .w2-photo-tools, .cab .w2-photo:focus-within .w2-photo-tools { opacity: 1; }
.cab .w2-photo-tools form { margin: 0; }
.cab .w2-tool-end { margin-left: auto !important; }
.cab .w2-tool {
    display: inline-flex; align-items: center; justify-content: center; min-width: 30px; height: 30px; padding: 0 6px; border-radius: 8px;
    border: 0 !important; box-shadow: none !important; background: rgba(255, 255, 255, .14) !important; color: #fff; cursor: pointer; font-size: 11.5px; font-weight: 700;
}
.cab .w2-tool:hover { background: rgba(255, 255, 255, .26) !important; }
.cab .w2-tool--danger:hover { background: var(--qor-danger) !important; }
.cab .w2-upload { margin: 0; display: flex; flex-direction: column; gap: 6px; }
.cab .w2-upload-drop {
    flex: 1; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 3px; text-align: center; margin: 0;
    aspect-ratio: 16 / 10; padding: 10px; border-radius: 10px; border: 1.5px dashed var(--qor-border-strong); color: var(--qor-text-dim); cursor: pointer;
    transition: border-color var(--qor-dur) var(--qor-ease), color var(--qor-dur) var(--qor-ease), background-color var(--qor-dur) var(--qor-ease);
}
.cab .w2-upload-drop:hover, .cab .w2-upload-drop:focus-within { border-color: var(--qor-orange); color: var(--qor-orange); background: var(--qor-orange-soft); }
.cab .w2-upload-t { font-size: 13px; font-weight: 700; }
.cab .w2-upload-s { font-size: 10.5px; color: var(--qor-text-faint); line-height: 1.35; }
.cab .w2-upload-sel { font-size: 11.5px; font-weight: 700; color: var(--qor-success); }
.cab .w2-upload-sel.is-err { color: var(--qor-danger); }
.cab .w2-upload .qor-cta[hidden] { display: none; }
.cab .w2-veh-add { margin-top: 18px; background: var(--qor-glass); border-style: dashed; scroll-margin-top: 90px; }

/* ---------- kazanç ---------- */
.cab .w2-wallet { display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(0, 1fr); gap: 0; margin-bottom: 12px; border-radius: var(--qor-r-md); background: var(--qor-surface); border: 1px solid var(--qor-border); overflow: hidden; }
.cab .w2-wallet-main { padding: 18px 20px; display: flex; flex-direction: column; gap: 4px; }
.cab .w2-wallet-l { font-size: 11px; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; color: var(--qor-text-faint); }
.cab .w2-wallet-v { font-family: var(--qor-font-head); font-size: 34px; font-weight: 700; line-height: 1.1; color: var(--qor-text); font-variant-numeric: tabular-nums; }
.cab .w2-payout { display: flex; gap: 8px; align-items: center; margin: 10px 0 0; flex-wrap: wrap; }
.cab .w2-payout .w2-price-in { width: 160px; }
.cab .w2-wallet-side { margin: 0; padding: 14px 20px; display: grid; gap: 8px; align-content: center; background: rgba(0, 0, 0, .16); border-left: 1px solid rgba(255, 255, 255, .07); }
.cab .w2-wallet-side div { display: flex; justify-content: space-between; gap: 12px; font-size: 13px; }
.cab .w2-wallet-side dt { font-weight: 600; color: var(--qor-text-dim); }
.cab .w2-wallet-side dd { margin: 0; font-weight: 700; font-variant-numeric: tabular-nums; }
.cab .w2-wallet-side .is-muted dd, .cab .w2-wallet-side .is-muted dt { color: var(--qor-text-faint); }
.cab .w2-po-hist { margin-bottom: 16px; font-size: 13px; }
.cab .w2-po-hist summary { cursor: pointer; color: var(--qor-text-dim); font-weight: 700; padding: 4px 0; }
.cab .w2-po-hist ul { list-style: none; margin: 6px 0 0; padding: 0; }
.cab .w2-po-hist li { display: flex; align-items: center; gap: 12px; padding: 7px 0; border-bottom: 1px solid rgba(255, 255, 255, .06); color: var(--qor-text-dim); }
.cab .w2-po-hist li b { color: var(--qor-text); margin-left: auto; font-variant-numeric: tabular-nums; }
.cab .w2-period { display: flex; flex-wrap: wrap; gap: 6px 18px; margin: 0 0 10px; font-size: 13px; color: var(--qor-text-dim); }
.cab .w2-period b { color: var(--qor-text); font-variant-numeric: tabular-nums; }
.cab .w2-period .w2-money-pos { color: var(--qor-success); }
.cab .w2-table-wrap { border-radius: var(--qor-r-md); border: 1px solid var(--qor-border); background: var(--qor-surface); overflow-x: auto; }
.cab .w2-table { width: 100%; border-collapse: collapse; font-size: 13px; font-variant-numeric: tabular-nums; }
.cab .w2-table th { text-align: left; font-size: 10.5px; font-weight: 800; letter-spacing: .05em; text-transform: uppercase; color: var(--qor-text-faint); padding: 11px 12px; border-bottom: 1px solid var(--qor-border); white-space: nowrap; }
.cab .w2-table td { padding: 11px 12px; border-bottom: 1px solid rgba(255, 255, 255, .06); vertical-align: middle; }
.cab .w2-table tr:last-child td { border-bottom: 0; }
.cab .w2-table .num { text-align: right; white-space: nowrap; }
.cab .w2-table tr.is-awaiting td { color: var(--qor-text-dim); }
.cab .w2-table .qor-chip { font-size: 10.5px; padding: 4px 8px; }
.cab .w2-td-route { max-width: 320px; }

/* ---------- puanlar ---------- */
.cab .w2-rt { display: grid; grid-template-columns: 220px minmax(0, 1fr) minmax(0, 1fr); gap: 0; margin-bottom: 18px; border-radius: var(--qor-r-md); background: var(--qor-surface); border: 1px solid var(--qor-border); }
.cab .w2-rt > section { padding: 18px 20px; min-width: 0; }
.cab .w2-rt > section + section { border-left: 1px solid rgba(255, 255, 255, .07); }
.cab .w2-rt-big { font-family: var(--qor-font-head); font-size: 44px; font-weight: 700; line-height: 1; color: var(--qor-text); font-variant-numeric: tabular-nums; }
.cab .w2-rt-big span { font-size: 16px; color: var(--qor-text-faint); margin-left: 2px; }
.cab .w2-stars { display: inline-flex; gap: 1px; margin-top: 8px; }
.cab .w2-stars svg { fill: rgba(255, 255, 255, .16); }
.cab .w2-stars svg.is-full { fill: var(--qor-orange); }
.cab .w2-stars svg.is-half { fill: rgba(255, 122, 26, .5); }
.cab .w2-rt-count { margin: 8px 0 0; font-size: 12.5px; color: var(--qor-text-dim); }
.cab .w2-rt-delta { margin: 10px 0 0; font-size: 12.5px; color: var(--qor-text-dim); line-height: 1.5; }
.cab .w2-rt-delta.is-up b { color: var(--qor-success); }
.cab .w2-rt-delta.is-down b { color: var(--qor-danger); }
.cab .w2-rt-dist ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 7px; }
.cab .w2-rt-dist li { display: grid; grid-template-columns: 26px minmax(0, 1fr) 68px; gap: 8px; align-items: center; font-size: 12.5px; }
.cab .w2-rt-lbl { font-weight: 700; color: var(--qor-text-dim); }
.cab .w2-bar { display: block; height: 8px; border-radius: 4px; background: rgba(255, 255, 255, .07); overflow: hidden; }
.cab .w2-bar span { display: block; height: 100%; border-radius: 0 4px 4px 0; background: var(--qor-orange); }
.cab .w2-rt-n { font-weight: 700; text-align: right; font-variant-numeric: tabular-nums; white-space: nowrap; }
.cab .w2-cols { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 8px; align-items: end; height: 150px; }
.cab .w2-col { display: flex; flex-direction: column; align-items: center; gap: 4px; height: 100%; }
.cab .w2-col-v { font-size: 12px; font-weight: 700; font-variant-numeric: tabular-nums; }
.cab .w2-col-track { flex: 1; width: 100%; max-width: 26px; display: flex; align-items: flex-end; border-bottom: 1px solid var(--qor-border); }
.cab .w2-col-bar { display: block; width: 100%; border-radius: 4px 4px 0 0; background: var(--qor-orange); min-height: 2px; }
.cab .w2-col-bar.is-empty { background: transparent; }
.cab .w2-col-l { font-size: 11px; font-weight: 700; color: var(--qor-text-dim); }
.cab .w2-col-c { font-size: 10.5px; color: var(--qor-text-faint); }
.cab .w2-reviews ul { list-style: none; margin: 10px 0 0; padding: 0; }
.cab .w2-review { padding: 14px 0; border-bottom: 1px solid rgba(255, 255, 255, .07); }
.cab .w2-review-top { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; font-size: 13px; }
.cab .w2-review-top .w2-stars { margin-top: 0; }
.cab .w2-review-text { margin: 6px 0 0; font-size: 14px; line-height: 1.6; color: var(--qor-text); max-width: 72ch; overflow-wrap: anywhere; }

/* ---------- profil dilleri, e-posta uyarısı, tekliflerim ---------- */
.cab .cf .w2-langs { border: 0; padding: 0; margin: 4px 0 14px; }
.cab .cf .w2-langs legend { float: none; width: auto; margin-bottom: 8px; font-size: 10.5px; text-transform: uppercase; color: var(--qor-text-dim); font-weight: 700; letter-spacing: .03em; }
.cab .cf .w2-chips label { display: inline-block; font-size: inherit; text-transform: none; margin: 0; color: inherit; font-weight: inherit; }
.cab .w2-alert { margin-top: 0; }
.cab .w2-toggle-row { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin: 0; cursor: pointer; }
.cab .w2-toggle-row b { display: block; font-size: 14px; color: var(--qor-text); }
.cab .w2-switch-input {
    appearance: none; -webkit-appearance: none; flex-shrink: 0; position: relative; width: 42px; height: 24px; margin: 0; border-radius: 12px; cursor: pointer;
    background: rgba(255, 255, 255, .16); transition: background-color var(--qor-dur) var(--qor-ease);
}
.cab .w2-switch-input::after { content: ""; position: absolute; top: 3px; left: 3px; width: 18px; height: 18px; border-radius: 50%; background: #e9edf5; transition: transform .22s var(--qor-ease); }
.cab .w2-switch-input:checked { background: var(--qor-success); }
.cab .w2-switch-input:checked::after { transform: translateX(18px); }
.cab .of-actions { display: flex; gap: 6px; align-items: center; flex-wrap: wrap; }
.cab .of-actions form { margin: 0; }

/* ---------- W2 duyarlı ---------- */
@media (max-width: 1180px) {
    .cab .w2-ab { grid-template-columns: 1fr; }
    .cab .w2-ab-form { position: static; }
    .cab .w2-cal { grid-template-columns: 1fr; }
    .cab .w2-cal-side { position: static; }
    .cab .w2-feed.is-map { grid-template-columns: 1fr; }
    .cab .w2-map-wrap { position: static; }
    .cab .w2-map { height: 48vh; min-height: 300px; }
    .cab .w2-rt { grid-template-columns: 1fr 1fr; }
    .cab .w2-rt > .w2-rt-trend { grid-column: 1 / -1; border-left: 0; border-top: 1px solid rgba(255, 255, 255, .07); }
}
@media (max-width: 900px) {
    .cab .w2-filters-toggle {
        display: inline-flex; align-items: center; gap: 8px; min-height: 40px; padding: 0 14px; border-radius: 11px;
        border: 1px solid var(--qor-border) !important; background: var(--qor-glass) !important; box-shadow: none !important;
        color: var(--qor-text); font-size: 13px; font-weight: 700; cursor: pointer;
    }
    .cab .w2-filters .w2-filters-body { display: none; margin-top: 8px; }
    .cab .w2-filters.is-open .w2-filters-body, .cab .w2-filters--inline .w2-filters-body { display: flex; }
    .cab .w2-f, .cab .w2-f--range { width: 100%; }
    .cab .w2-f-pair .w2-in[type="date"], .cab .w2-f-pair .w2-in[type="number"] { flex: 1; width: auto; min-width: 0; }
    .cab .w2-f select.w2-in { width: 100%; }
    .cab .w2-f-actions { margin-left: 0; }
    .cab .w2-req { grid-template-columns: 74px minmax(0, 1fr); gap: 0 12px; padding: 14px; }
    .cab .w2-when-d { font-size: 10.5px; }
    .cab .w2-when { padding-right: 10px; }
    .cab .w2-when-t { font-size: 19px; }
    .cab .w2-req-side { grid-column: 1 / -1; flex-direction: row; align-items: center; flex-wrap: wrap; gap: 6px 12px; margin-top: 12px; text-align: left; }
    .cab .w2-est { min-height: 0; flex-direction: row; align-items: baseline; gap: 6px; margin-right: auto; }
    .cab .w2-est-v { font-size: 16px; }
    .cab .w2-req-side .w2-open { margin: 0; width: 100%; }
    .cab .w2-offer-grid { grid-template-columns: 1fr; gap: 14px; }
    .cab .w2-2col, .cab .w2-3col { grid-template-columns: 1fr 1fr; }
    .cab .w2-4col { grid-template-columns: 1fr 1fr; }
    .cab .w2-offer-actions .qor-cta:first-child { flex: 1; }
    .cab .w2-offer-actions .w2-withdraw { margin-left: 0; }
    .cab .w2-wallet { grid-template-columns: 1fr; }
    .cab .w2-wallet-side { border-left: 0; border-top: 1px solid rgba(255, 255, 255, .07); }
    .cab .w2-table thead { display: none; }
    .cab .w2-table, .cab .w2-table tbody, .cab .w2-table tr, .cab .w2-table td { display: block; width: 100%; }
    .cab .w2-table tr { padding: 10px 14px; border-bottom: 1px solid rgba(255, 255, 255, .07); }
    .cab .w2-table td { display: flex; justify-content: space-between; gap: 12px; padding: 3px 0; border: 0; text-align: right; }
    .cab .w2-table td::before { content: attr(data-l); font-size: 11.5px; font-weight: 700; color: var(--qor-text-faint); text-align: left; }
    .cab .w2-table .num { text-align: right; }
    .cab .w2-td-route { max-width: none; }
    .cab .w2-legend { margin-left: 0; width: 100%; }
    .cab .w2-cal-title { min-width: 0; font-size: 16px; flex: 1; }
    .cab .w2-day { min-height: 58px; padding: 3px; align-items: center; cursor: pointer; }
    .cab .w2-day .w2-ev, .cab .w2-day .w2-ev-more { display: none; }
    .cab .w2-day-dots { display: flex; gap: 3px; flex-wrap: wrap; justify-content: center; }
    .cab .w2-day-dots .w2-dot { width: 6px; height: 6px; }
    .cab .w2-day-n { align-self: center; }
    .cab .w2-month-head span { padding: 8px 0 6px; text-align: center; }
    .cab .w2-rule { flex-direction: column; align-items: stretch; }
    .cab .w2-rule-actions { justify-content: flex-end; }
    .cab .w2-rt { grid-template-columns: 1fr; }
    .cab .w2-rt > section + section { border-left: 0; border-top: 1px solid rgba(255, 255, 255, .07); }
    .cab .w2-photos { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .cab .w2-photo-tools { opacity: 1; }
    .cab .w2-head-tools { width: 100%; }
    .cab .w2-sort { flex: 1; }
    .cab .w2-sort .w2-select { width: 100%; }
}
@media (max-width: 480px) {
    .cab .w2-2col, .cab .w2-3col { grid-template-columns: 1fr; gap: 0; }
    .cab .w2-3col { grid-template-columns: 1fr 1fr; gap: 0 10px; }
    .cab .w2-3col .qor-field:last-child { grid-column: 1 / -1; }
    .cab .w2-docs { flex-direction: column; align-items: flex-start; }
}
/* ===== W2 — carrier sonu ===== */
.qor-chip svg, .qor-pill svg { width: 13px; height: 13px; flex-shrink: 0; }
.qor-chip:has(svg)::before { display: none; }
.qor-cta svg { width: 17px; height: 17px; flex-shrink: 0; }
.qor-cta--sm svg { width: 15px; height: 15px; }
.qor-empty-icon svg { width: 24px; height: 24px; }
.qor-tc-drv .qor-iconbtn { flex-shrink: 0; }
.qor-cmp-sheet { color: var(--qor-text); }
.qor-cmp-head h2 { color: var(--qor-text); }
.qor-cmp-table thead th { vertical-align: top; }
.qor-panel-h + .qor-row { border-top: 0; padding-top: 4px; }
.qor-panel-h { flex-wrap: wrap; }
@media (max-width: 860px) { .qor-acct { grid-template-columns: minmax(0, 1fr); } .qor-acct-nav { min-width: 0; } }
.qor-hint .qor-linkbtn { padding: 0; white-space: normal; text-align: left; }
body:has(.qor-chat--thread) .qor-wa-fab, body:has(.qor-cmp-tray.is-on) .qor-wa-fab { display: none; }
@media (max-width: 560px) { .qor-cmp-table { min-width: 500px; } .qor-cmp-table tbody th { width: 92px; font-size: 11.5px; } .qor-cmp-table th, .qor-cmp-table td { padding: 10px; font-size: 12.5px; } .qor-cmp-price { font-size: 18px; } }

/* ==========================================================================
   by_QOR — Yolculuklarım: teklif süresi zaman çizgisi (booking_history.blade.php)
   ========================================================================== */
.qor-tl { padding: 2px 20px 16px; }
@media (max-width: 560px) { .qor-tl { padding: 2px 16px 14px; } }
.qor-tl-track { position: relative; height: 6px; border-radius: 999px; background: rgba(255, 255, 255, .08); overflow: visible; }
.qor-tl-fill {
    position: relative; display: block; height: 100%; width: 0; border-radius: 999px;
    background: linear-gradient(90deg, #ffb36b, #ff7a1a 55%, #ffd166);
    box-shadow: 0 0 10px rgba(255, 140, 50, .75), 0 0 22px rgba(255, 122, 26, .35);
    transition: width .8s ease;
}
/* parlak uç + akan ışıltı */
.qor-tl-fill::after {
    content: ''; position: absolute; right: -4px; top: 50%; width: 12px; height: 12px; margin-top: -6px; border-radius: 50%;
    background: #fff; box-shadow: 0 0 0 3px rgba(255, 122, 26, .55), 0 0 14px 4px rgba(255, 170, 90, .8);
}
.qor-tl-fill::before {
    content: ''; position: absolute; inset: 0; border-radius: inherit;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, .55), transparent);
    background-size: 40% 100%; background-repeat: no-repeat; animation: qorTlShine 2.4s linear infinite;
}
@keyframes qorTlShine { from { background-position: -40% 0; } to { background-position: 140% 0; } }
.qor-tl-txt { display: flex; justify-content: space-between; gap: 10px; margin-top: 8px; font-size: 12px; color: var(--qor-text-faint); }
.qor-tl-txt b { color: var(--qor-orange); font-weight: 700; }
.qor-tl.is-late .qor-tl-fill { background: linear-gradient(90deg, #ff9a4d, #ff5a3c); box-shadow: 0 0 12px rgba(255, 90, 60, .8); animation: qorTlPulse 1.6s ease-in-out infinite; }
.qor-tl.is-late .qor-tl-txt b { color: #ff7b5c; }
@keyframes qorTlPulse { 50% { opacity: .65; } }
.qor-tc.is-expiring { transition: opacity 1.6s ease, transform 1.6s ease; opacity: .35; transform: scale(.985); }
@media (prefers-reduced-motion: reduce) { .qor-tl-fill::before, .qor-tl.is-late .qor-tl-fill { animation: none; } }

/* by_QOR — taşıyıcı paneli: evrak tamamlama bandı */
.cab-docbar {
    display: flex; align-items: center; gap: 14px; margin-bottom: 18px; padding: 14px 16px; border-radius: 14px; text-decoration: none;
    background: linear-gradient(135deg, rgba(255, 122, 26, .16), rgba(255, 122, 26, .05)); border: 1px solid var(--qor-orange-line); color: var(--qor-text);
}
.cab-docbar:hover { border-color: var(--qor-orange); color: var(--qor-text); text-decoration: none; }
.cab-docbar-ring {
    --p: 0; flex: none; display: grid; place-items: center; width: 46px; height: 46px; border-radius: 50%;
    background: conic-gradient(var(--qor-orange) calc(var(--p) * 1%), rgba(255, 255, 255, .12) 0);
}
.cab-docbar-ring b { display: grid; place-items: center; width: 36px; height: 36px; border-radius: 50%; background: var(--qor-navy-2); font-size: 12px; }
.cab-docbar-txt { flex: 1; min-width: 0; }
.cab-docbar-txt b { display: block; font-size: 14.5px; }
.cab-docbar-txt small { display: block; margin-top: 2px; font-size: 12.5px; color: var(--qor-text-dim); }
.cab-docbar-go { flex: none; font-weight: 800; color: var(--qor-orange); white-space: nowrap; }
@media (max-width: 560px) { .cab-docbar-go { display: none; } }

/* ==========================================================================
   by_QOR — Dil + para birimi seçici (partials/qor_locale_switch.blade.php)
   Stil hiç yazılmamıştı: <details> ham çiziliyor, "▶ TR · €" iki satıra kırılıp başlıktan taşıyordu.
   ========================================================================== */
.qor-lsw-wrap { display: flex; align-items: center; margin-right: 10px; flex: none; }
.qor-lsw { position: relative; }
.qor-lsw > summary { list-style: none; }
.qor-lsw > summary::-webkit-details-marker { display: none; }
.qor-lsw > summary::marker { content: ''; }
.qor-lsw-btn {
    display: inline-flex; align-items: center; gap: 7px; height: 40px; padding: 0 12px; white-space: nowrap; cursor: pointer;
    border-radius: 999px; border: 1px solid var(--qor-border); background: rgba(255, 255, 255, .05); color: var(--qor-text);
    font: 700 12.5px var(--qor-font-body); user-select: none; transition: border-color .15s, background .15s;
}
.qor-lsw-btn:hover, .qor-lsw[open] > .qor-lsw-btn { border-color: var(--qor-orange-line); background: rgba(255, 122, 26, .1); }
.qor-lsw-btn:focus-visible { outline: 2px solid var(--qor-orange); outline-offset: 2px; }
.qor-lsw-btn .qor-flag { flex: none; display: block; }
.qor-lsw-sep { color: var(--qor-text-faint); }
.qor-lsw-caret { opacity: .7; transition: transform .15s; }
.qor-lsw[open] .qor-lsw-caret { transform: rotate(180deg); }
.qor-lsw-panel {
    position: absolute; right: 0; top: calc(100% + 10px); z-index: 1050; width: 260px; padding: 12px;
    border-radius: 16px; background: #111c2f; border: 1px solid var(--qor-border-strong); box-shadow: var(--qor-shadow-3);
}
.qor-lsw-h { margin: 4px 4px 8px; font-size: 10.5px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; color: var(--qor-text-faint); }
.qor-lsw-list { display: grid; gap: 2px; margin: 0 0 10px; }
.qor-lsw-opt {
    display: flex; align-items: center; gap: 10px; width: 100%; padding: 9px 10px; border-radius: 10px; border: 0; background: none;
    color: var(--qor-text); font: 600 13.5px var(--qor-font-body); text-align: left; text-decoration: none; cursor: pointer;
}
.qor-lsw-opt:hover { background: rgba(255, 255, 255, .06); color: #fff; text-decoration: none; }
.qor-lsw-opt.is-on { background: var(--qor-orange-soft); color: #fff; }
.qor-lsw-sym { display: grid; place-items: center; width: 24px; height: 24px; border-radius: 7px; background: rgba(255, 255, 255, .08); font-size: 13px; }
.qor-lsw-note { margin: 2px 4px 0; font-size: 11.5px; line-height: 1.45; color: var(--qor-text-faint); }
/* mobil off-canvas varyantı */
.qor-lsw-m { margin: 18px 22px 24px; }
.qor-lsw-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px; margin-bottom: 12px; }
.qor-lsw-grid .qor-lsw-opt { border: 1px solid var(--qor-border); justify-content: center; }
@media (max-width: 991px) { .qor-lsw-wrap { display: none; } } /* mobilde menünün içinde */

/* by_QOR — ortak saat seçici (assets/js/qor-timepicker.js) */
.qtp { position: absolute; z-index: 1300; padding: 14px; border-radius: 18px; background: #111c2f; border: 1px solid var(--qor-border-strong); box-shadow: var(--qor-shadow-3); color: var(--qor-text); font-family: var(--qor-font-body); }
.qtp[hidden] { display: none; }
.qtp-head { display: flex; align-items: center; justify-content: space-between; padding-bottom: 10px; margin-bottom: 10px; border-bottom: 1px solid rgba(255,255,255,.1); }
.qtp-big { font: 700 30px/1 var(--qor-font-head); color: #fff; }
.qtp-done { height: 34px; padding: 0 14px; border: 0; border-radius: 10px; background: var(--qor-grad-cta); color: #fff; font-weight: 700; cursor: pointer; }
.qtp-body { display: grid; grid-template-columns: 1.5fr 1fr; gap: 14px; }
.qtp-l { margin-bottom: 6px; font-size: 10.5px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; color: var(--qor-text-faint); }
.qtp-part { display: grid; grid-template-columns: 50px 1fr; align-items: center; gap: 6px; margin-bottom: 5px; }
.qtp-part > span { font-size: 11px; font-weight: 700; color: var(--qor-text-faint); }
.qtp-grid { display: grid; grid-template-columns: repeat(6, 1fr); gap: 4px; }
.qtp-grid--m { grid-template-columns: repeat(3, 1fr); gap: 5px; }
.qtp-grid button { height: 33px; border: 0; border-radius: 9px; background: rgba(255,255,255,.05); color: var(--qor-text); font: 600 13px var(--qor-font-head); cursor: pointer; }
.qtp-grid--m button { height: 37px; }
.qtp-grid button:hover { background: rgba(255,122,26,.2); color: #fff; }
.qtp-grid button[aria-pressed="true"] { background: var(--qor-orange); color: #0b1220; font-weight: 700; }
.qtp-grid button:focus-visible { outline: 2px solid var(--qor-orange); outline-offset: 1px; }
@media (max-width: 560px) { .qtp-body { grid-template-columns: 1fr; } .qtp-part { grid-template-columns: 1fr; gap: 3px; } }

/* by_QOR — başlık (absolute) sayfa içeriğinin üstünde kalsın; yeni ana sayfa hero'su isolation ile üstüne biniyordu */
.wrapper > header { z-index: 1030; }

/* by_QOR — üst hizmet şeridi: dar ekranda taşmasın, yatay kaydırılsın */
@media (max-width: 720px) {
    .qor-topbar-inner { display: flex; flex-wrap: nowrap; justify-content: flex-start !important; gap: 8px; overflow-x: auto; scrollbar-width: none; padding-left: 12px !important; padding-right: 12px !important; }
    .qor-topbar-inner::-webkit-scrollbar { display: none; }
    .qor-topbar-pill { flex: none; white-space: nowrap; }
}
/* by_QOR — dil ve para birimi ayrı seçiciler */
.qor-lsw-pair { display: flex; align-items: center; gap: 6px; }
.qor-lsw-btn .qor-lsw-sym { width: 20px; height: 20px; border-radius: 6px; background: rgba(255, 122, 26, .18); color: var(--qor-orange); font-size: 12px; }
.qor-lsw-panel--lang { width: 300px; }
.qor-lsw-list--2 { grid-template-columns: 1fr 1fr; }
/* by_QOR — RTL (Arapça) dillerde marka "RideP2P" olarak ters dönmesin */
.navbar-brand-badge, .qh-chip, .qor-lsw-btn .qor-lsw-code { direction: ltr; unicode-bidi: isolate; }

/* by_QOR — 2026-10-12: WhatsApp sol altta, yapay zekâ asistanı sağ altta */
.qor-wa-fab { right: auto; left: 22px; }
@media (max-width: 900px) { body.qor-has-tabbar .qor-wa-fab { right: auto; left: 12px; } }
body.qas-open .qor-wa-fab { display: none; }

/* by_QOR — ödeme sayfası: ödeme süresi + sürücü onayı durumu (Ridoza köprüsü / GetTransfer akışı) */
.qor-paystate { margin-top: 16px; display: grid; gap: 10px; }
.qor-paystate-row { display: flex; align-items: center; gap: 10px; padding: 10px 12px; border-radius: 12px; border: 1px solid var(--qor-line, rgba(0,0,0,.08)); font-size: 14px; }
.qor-paystate-row small { display: block; color: var(--qor-muted, #64748b); font-size: 12px; margin-top: 2px; }
.qor-paystate-ic { display: inline-flex; color: #ea580c; }
.qor-paystate-ic svg { width: 20px; height: 20px; }
.qor-paystate-dot { width: 10px; height: 10px; border-radius: 50%; flex: none; background: #f59e0b; box-shadow: 0 0 0 4px rgba(245,158,11,.18); animation: qorPsPulse 1.6s ease-in-out infinite; }
.qor-paystate-row.is-ok { border-color: var(--qor-success-line, rgba(22,163,74,.35)); background: var(--qor-success-soft, rgba(22,163,74,.08)); }
.qor-paystate-row.is-ok .qor-paystate-dot { background: var(--qor-success, #16a34a); box-shadow: 0 0 0 4px rgba(22,163,74,.18); animation: none; }
@keyframes qorPsPulse { 50% { opacity: .35; } }
@media (prefers-reduced-motion: reduce) { .qor-paystate-dot { animation: none; } }
/* by_QOR — taşıyıcı: kabul edilen işi onayla / reddet */
.cab .of-accept { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
.cab .of-accept-state { font-size: 12px; color: var(--qor-text-dim); margin-right: 4px; }

/* by_QOR — 2026-10-21 (Patron: "GetTransfer'in aynısı"): İstekler — Yeni / Tekliflerim sekmeleri + teklif paneli
   (solda yolculuk + rota haritası, sağda "Teklifiniz": için geçerli, araç, özellik kutucukları, fiyat + %komisyon + gönder, fiyat çubuğu). */
.cab .gt-tabs { display: flex; gap: 4px; margin: 0 0 14px; border-bottom: 1px solid rgba(255, 255, 255, .08); }
.cab .gt-tabs a { padding: 10px 16px; font-weight: 700; color: var(--qor-text-muted, #9aa3b5); text-decoration: none; border-bottom: 2px solid transparent; margin-bottom: -1px; }
.cab .gt-tabs a span { display: inline-block; min-width: 22px; padding: 1px 7px; margin-left: 4px; border-radius: 999px; background: rgba(255, 255, 255, .07); font-size: 12px; text-align: center; }
.cab .gt-tabs a[aria-current="page"] { color: var(--qor-text); border-bottom-color: var(--qor-orange); }
.cab .gt-tabs a[aria-current="page"] span { background: var(--qor-orange-soft); color: var(--qor-orange); }
.cab .gt-grid { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr); gap: 22px; }
.cab .gt-when { display: flex; align-items: center; gap: 10px; margin-bottom: 10px; }
.cab .gt-rel { font-size: 12px; padding: 2px 8px; border-radius: 6px; border: 1px solid rgba(255, 255, 255, .14); color: var(--qor-text-faint); }
.cab .gt-route { list-style: none; margin: 0 0 14px; padding: 0; display: grid; gap: 6px; }
.cab .gt-route li { display: flex; gap: 10px; align-items: flex-start; }
.cab .gt-pin { flex: none; width: 22px; height: 22px; border-radius: 50%; display: grid; place-items: center; font-size: 11px; font-weight: 800; background: #fff; color: #111; }
.cab .gt-route .is-a .gt-pin { background: var(--qor-orange); color: #fff; }
.cab .gt-leg { padding-left: 32px; gap: 14px !important; font-size: 12.5px; color: var(--qor-text-faint); }
.cab .gt-h4 { margin: 12px 0 6px; font-size: 13.5px; font-weight: 800; }
.cab .gt-chips { display: flex; flex-wrap: wrap; gap: 6px; }
.cab .gt-chips span { padding: 4px 10px; border-radius: 999px; border: 1px solid rgba(255, 255, 255, .14); font-size: 12.5px; }
.cab .gt-map { margin-top: 14px; height: 220px; border-radius: 12px; overflow: hidden; background: rgba(255, 255, 255, .04); }
.cab .gt-title { margin: 0 0 8px; font-size: 18px; font-weight: 800; }
.cab .gt-row { display: flex; align-items: center; gap: 10px; padding: 10px 0; border-bottom: 1px solid rgba(255, 255, 255, .08); }
.cab .gt-row--stack { flex-direction: column; align-items: stretch; gap: 2px; }
.cab .gt-row-l { flex: none; color: var(--qor-text-faint); }
.cab .gt-small { font-size: 11.5px; }
.cab .gt-select { flex: 1; min-width: 0; background: transparent; border: 0; color: var(--qor-text); font: inherit; font-weight: 600; padding: 4px 0; }
.cab .gt-select option { color: #111; }
.cab .gt-amen { display: flex; flex-wrap: wrap; gap: 10px; border: 0; margin: 14px 0 10px; padding: 0; }
.cab .gt-amen label { width: 58px; display: flex; flex-direction: column; align-items: center; gap: 4px; cursor: pointer; position: relative; }
.cab .gt-amen input { position: absolute; opacity: 0; pointer-events: none; }
.cab .gt-amen-box { width: 48px; height: 48px; border-radius: 10px; display: grid; place-items: center; border: 1.5px solid rgba(255, 255, 255, .16); color: var(--qor-text-faint); position: relative; transition: .15s; }
.cab .gt-amen-box svg { width: 24px; height: 24px; }
.cab .gt-amen-l { font-size: 10.5px; line-height: 1.15; text-align: center; color: var(--qor-text-faint); }
.cab .gt-amen input:checked + .gt-amen-box { border-color: var(--qor-orange); color: var(--qor-orange); background: var(--qor-orange-soft); }
.cab .gt-amen input:checked + .gt-amen-box::after { content: '✓'; position: absolute; top: -7px; right: -7px; width: 17px; height: 17px; border-radius: 50%; background: var(--qor-orange); color: #fff; font-size: 11px; font-weight: 800; display: grid; place-items: center; }
.cab .gt-amen input:focus-visible + .gt-amen-box { box-shadow: var(--qor-ring); }
.cab .gt-tip { margin: 6px 0 10px; padding: 10px 12px; border: 1px solid rgba(255, 255, 255, .12); border-radius: 10px; font-size: 12.5px; line-height: 1.45; }
.cab .gt-price-row { display: flex; gap: 8px; align-items: stretch; }
.cab .gt-price { flex: 1; position: relative; padding-top: 14px; }
.cab .gt-price small { position: absolute; top: 4px; left: 14px; font-size: 10.5px; color: var(--qor-text-faint); }
.cab .gt-comm { flex: none; min-width: 104px; padding: 6px 10px; border-radius: 12px; background: rgba(255, 255, 255, .07); display: flex; flex-direction: column; justify-content: center; align-items: center; text-align: center; }
.cab .gt-comm-l { font-size: 11.5px; font-weight: 800; }
.cab .gt-comm b { font-size: 14px; color: var(--qor-text); }
.cab .gt-form .gt-send, .cab .gt-form button.gt-send { flex: none; width: 52px; border: 0; border-radius: 12px; background: #1fa463; background-image: none; box-shadow: none; color: #fff; display: grid; place-items: center; cursor: pointer; }
.cab .gt-send svg { width: 22px; height: 22px; }
.cab .gt-send:disabled { opacity: .45; cursor: not-allowed; }
.cab .gt-slider { margin-top: 10px; }
.cab .gt-range { width: 100%; height: 6px; -webkit-appearance: none; appearance: none; border-radius: 6px; outline: none;
    background: linear-gradient(90deg, #1fa463 0%, #9acd32 30%, #f5c518 55%, #f08a24 78%, #e5484d 100%); position: relative; }
.cab .gt-range::-webkit-slider-thumb { -webkit-appearance: none; width: 18px; height: 18px; border-radius: 50%; background: #fff; border: 3px solid var(--qor-orange); cursor: pointer; }
.cab .gt-range::-moz-range-thumb { width: 14px; height: 14px; border-radius: 50%; background: #fff; border: 3px solid var(--qor-orange); cursor: pointer; }
.cab .gt-slider { position: relative; }
.cab .gt-slider::before { content: '▼'; position: absolute; top: -12px; left: calc(var(--avg-pos, 50%) - 5px); font-size: 10px; color: #f5c518; }
.cab .gt-range-l { display: flex; justify-content: space-between; font-size: 11.5px; color: var(--qor-text-faint); margin-top: 4px; }
.cab .gt-earn { margin-top: 12px; font-size: 13.5px; color: var(--qor-text-faint); }
.cab .gt-earn b { color: var(--qor-orange); font-size: 17px; }
.cab .gt-more { margin-top: 12px; }
.cab .gt-more summary { cursor: pointer; font-size: 13px; color: var(--qor-text-faint); }
.cab .gt-more[open] summary { margin-bottom: 8px; }
@media (max-width: 900px) { .cab .gt-grid { grid-template-columns: 1fr; } }
