/* TALBISTA luxury identity — deep forest silk, champagne gold, ivory type. */
:root {
  color-scheme: dark;
  --luxury-forest: #0a1a14;
  --luxury-forest-2: #10271e;
  --luxury-forest-3: #163327;
  --luxury-ivory: #f6f3ed;
  --luxury-muted: #c9c8be;
  --luxury-gold: #001F3F;
  --luxury-gold-soft: #001F3F;
  --luxury-line: rgba(0, 31, 63, .42);
  --luxury-line-soft: rgba(0, 31, 63, .2);
  --luxury-shadow: 0 18px 48px rgba(0,0,0,.28);
}
html { background: var(--luxury-forest) !important; color-scheme: dark !important; }
body {
  background: radial-gradient(120% 80% at 50% -15%, #183829 0%, var(--luxury-forest) 58%, #07110d 100%) !important;
  color: var(--luxury-ivory) !important;
  font-family: Tahoma, "Segoe UI", "Noto Sans Arabic", sans-serif !important;
  overflow-x: hidden;
}
body::before { content:""; position:fixed; inset:0; pointer-events:none; opacity:.18; z-index:-1; background:linear-gradient(112deg,transparent 0 42%,rgba(255,255,255,.06) 49%,transparent 56%); }
h1,h2,h3,h4,strong,b { color:var(--luxury-ivory) !important; }
p,.note,.intro,.sectionhead span { color:var(--luxury-muted) !important; }
header { background:rgba(10,26,20,.92) !important; border-bottom:1px solid var(--luxury-line) !important; box-shadow:0 8px 28px rgba(0,0,0,.2) !important; backdrop-filter:blur(18px); -webkit-backdrop-filter:blur(18px); }
header b { color:var(--luxury-gold) !important; }
.brandmark,.brand-mark,.tb-auth-logo { width:auto; height:auto; max-width:100%; object-fit:contain !important; border-radius:0 !important; background:transparent !important; box-shadow:none !important; }
.brandmark { width:58px; height:58px; }
.brand-mark { width:42px; height:42px; }
.tb-auth-logo { width:86px; height:86px; }
.brandcopy strong,.tb-auth-kicker,.eyebrow,.big { color:var(--luxury-gold) !important; }
.card,.tb-auth-card,.tb-audio-settings,.tb-driver-form-card { background:linear-gradient(145deg,rgba(16,39,30,.96),rgba(8,23,17,.98)) !important; border:1px solid var(--luxury-line-soft) !important; color:var(--luxury-ivory) !important; box-shadow:var(--luxury-shadow) !important; }
.hero { background:linear-gradient(135deg,#163b2b,#0c241a 68%,#0a1a14) !important; border:1px solid var(--luxury-line) !important; color:var(--luxury-ivory) !important; box-shadow:var(--luxury-shadow) !important; }
.hero p,.hero .eyebrow { color:var(--luxury-muted) !important; }
button,.btn { background:transparent !important; border:1px solid var(--luxury-line) !important; color:var(--luxury-ivory) !important; box-shadow:none !important; transition:transform .2s ease,border-color .2s ease,background .2s ease,color .2s ease !important; }
button.p,.btn.p,.tb-auth-submit { background:var(--luxury-gold) !important; border-color:var(--luxury-gold) !important; color:#172117 !important; box-shadow:0 8px 20px rgba(0, 31, 63, .16) !important; }
button:hover,.btn:hover { border-color:var(--luxury-gold-soft) !important; }
button:active,.btn:active { transform:translateY(1px) scale(.992); }
button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible { outline:2px solid var(--luxury-gold) !important; outline-offset:3px; }
input,textarea,select { background:#0b2118 !important; border:1px solid var(--luxury-line-soft) !important; color:var(--luxury-ivory) !important; box-shadow:none !important; }
input::placeholder,textarea::placeholder { color:#9da99e !important; }
input:focus,textarea:focus,select:focus { border-color:var(--luxury-gold) !important; box-shadow:0 0 0 3px rgba(0, 31, 63, .14) !important; }
.err { color:#f0a49a !important; }
.chip,.role-link:after { background:#172f23 !important; border:1px solid var(--luxury-line-soft) !important; color:var(--luxury-gold-soft) !important; }
.role-link { background:linear-gradient(145deg,#122d22,#0a1c15) !important; border:1px solid var(--luxury-line-soft) !important; color:var(--luxury-ivory) !important; box-shadow:var(--luxury-shadow) !important; }
.role-link:hover { border-color:var(--luxury-gold) !important; }
.role-link:before { background:linear-gradient(145deg,#193a2c,#0a1a14) !important; opacity:1 !important; }
.role-icon { background:#1a3527 !important; border-color:var(--luxury-line) !important; color:var(--luxury-gold) !important; box-shadow:none !important; }
.role-title { color:var(--luxury-ivory) !important; text-shadow:none !important; }
.role-desc { color:var(--luxury-muted) !important; text-shadow:none !important; }
.seg label,nav button { background:#0d241a !important; border-color:var(--luxury-line-soft) !important; color:var(--luxury-muted) !important; }
.seg label:has(input:checked),nav button.on { background:#1b3829 !important; border-color:var(--luxury-gold) !important; color:var(--luxury-gold-soft) !important; }
footer { background:rgba(10,26,20,.96) !important; border-top:1px solid var(--luxury-line) !important; box-shadow:0 -8px 28px rgba(0,0,0,.24) !important; }
footer button { color:var(--luxury-muted) !important; } footer button.on { background:#193426 !important; color:var(--luxury-gold) !important; }
.tl li { color:#8d9b91 !important; }.tl li.on { color:var(--luxury-gold-soft) !important; }.tl li:before { background:#415249 !important; box-shadow:0 0 0 4px #10271e !important; }.tl li.on:before { background:var(--luxury-gold) !important; box-shadow:0 0 0 4px #203a2a !important; }
table { background:#0c241a !important; color:var(--luxury-ivory) !important; border-color:var(--luxury-line-soft) !important; } th { background:#163327 !important; color:var(--luxury-gold-soft) !important; } td,th { border-bottom-color:var(--luxury-line-soft) !important; }
.city-dialog { background:#10271e !important; border-color:var(--luxury-line) !important; }.city-option { background:#0b2118 !important; border-color:var(--luxury-line-soft) !important; color:var(--luxury-ivory) !important; }.city-option.active { background:#193629 !important; border-color:var(--luxury-gold) !important; }.city-option small { color:var(--luxury-muted) !important; }
a { color:var(--luxury-gold-soft) !important; } hr { border-color:var(--luxury-line-soft) !important; }
[hidden] { display:none !important; }
@keyframes luxury-reveal { from { opacity:0; transform:translateY(8px); } to { opacity:1; transform:none; } }
body > header, body > main, #tbc { animation:luxury-reveal 760ms ease-out both; }
@media (max-width:560px) { .tb-auth-logo { width:72px; height:72px; } body > main,#tbc { animation-duration:680ms; } }
@media (prefers-reduced-motion:reduce) { *,*:before,*:after { animation:none !important; transition:none !important; scroll-behavior:auto !important; } }

/* Confirmed phone contrast fix: inherited light-theme form labels stay readable. */
label,.tb-auth-card label,.tb-audio-music label,.tb-admin .driver-form-grid label,.tb-admin .tb-driver-form-card legend{color:var(--luxury-ivory)!important}
.tb-auth-card small.tb-help,.tb-auth-status,.tb-admin .tb-driver-form-card small{color:var(--luxury-muted)!important}


/* Requested color-only palette: navy replaces gold; brand green is #00A86B. */
:root { --brand-navy:#001F3F; --brand-green:#00A86B; --luxury-gold:#001F3F; --luxury-gold-soft:#001F3F; --luxury-line:rgba(0,31,63,.48); --luxury-line-soft:rgba(0,31,63,.28); }
header b,.brandcopy strong,.tb-auth-kicker,.eyebrow,.big,.role-icon,.tl li.on,th,.city-option.active,a { color:var(--brand-green)!important; }
button.p,.btn.p,.tb-auth-submit { background:var(--brand-navy)!important; border-color:var(--brand-navy)!important; color:#fff!important; box-shadow:0 8px 20px rgba(0,31,63,.22)!important; }
button:hover,.btn:hover,.role-link:hover,.city-option.active { border-color:var(--brand-green)!important; }
button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible { outline-color:var(--brand-green)!important; }
input:focus,textarea:focus,select:focus { border-color:var(--brand-green)!important; box-shadow:0 0 0 3px rgba(0,168,107,.2)!important; }
.chip,.role-link:after,.seg label:has(input:checked),nav button.on { background:var(--brand-navy)!important; border-color:var(--brand-navy)!important; color:var(--brand-green)!important; }
.seg label.ur:has(input:checked),.chip.u,.u,#off { background:var(--brand-navy)!important; border-color:var(--brand-green)!important; color:var(--brand-green)!important; }
footer button.on,.tl li.on:before,.tb-carousel__dots button.is-active { color:var(--brand-green)!important; background:var(--brand-green)!important; }
