/* RUKH V42 — trip views, create-fuel cards, admin fleet editor, photo preview */
.ruh-view-switch{display:inline-flex;align-items:center;gap:4px;padding:4px;border:1px solid var(--border);border-radius:13px;background:var(--surface);box-shadow:var(--sh-sm)}
.ruh-view-switch button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:32px;padding:0 10px;border:0;border-radius:9px;background:transparent;color:var(--text-3);font:800 10px var(--font-b);cursor:pointer;white-space:nowrap;transition:.2s}
.ruh-view-switch button.is-active{background:var(--primary-soft);color:var(--primary);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--primary) 16%,transparent)}
.rk-trips[data-view="compact"]{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.rk-trips[data-view="compact"] .rk-card{display:grid;grid-template-columns:92px minmax(0,1fr);min-height:0;border-radius:15px;overflow:hidden}
.rk-trips[data-view="compact"] .rk-card__photo{grid-row:1 / span 2;min-height:100%;height:auto;aspect-ratio:auto}
.rk-trips[data-view="compact"] .rk-card__photo img{height:100%;min-height:120px;object-fit:cover}
.rk-trips[data-view="compact"] .rk-card__body{padding:11px;min-width:0}
.rk-trips[data-view="compact"] .rk-route{gap:6px;margin:5px 0}
.rk-trips[data-view="compact"] .rk-stop__city{font-size:11px}
.rk-trips[data-view="compact"] .rk-card__details,.rk-trips[data-view="compact"] .rk-card__footer{display:none}
.rk-trips[data-view="list"]{grid-template-columns:1fr;gap:9px}
.rk-trips[data-view="list"] .rk-card{display:grid;grid-template-columns:150px minmax(0,1fr);align-items:stretch}
.rk-trips[data-view="list"] .rk-card__photo{height:100%;min-height:150px}
.rk-home-head__tools{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.rk-results__tools{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.rk34-duo{gap:14px!important;align-items:stretch}
.rk34-tile{border-radius:20px!important;border:1px solid rgba(148,163,184,.2)!important;box-shadow:0 12px 30px rgba(24,39,75,.055)!important;transition:transform .2s,box-shadow .2s}
.rk34-tile:hover{transform:translateY(-2px);box-shadow:0 18px 38px rgba(24,39,75,.09)!important}
.rk34-tile--seats{background:linear-gradient(145deg,#fff 0%,#f5f7ff 100%)!important}
.rk34-tile--fuel{background:radial-gradient(circle at 100% 0%,rgba(20,184,166,.13),transparent 45%),linear-gradient(145deg,#f0fdfa,#fff)!important}
.rk34-tile__ico{box-shadow:0 8px 18px rgba(79,70,229,.2)}
.rk34-money{border-radius:15px!important;border:1px solid #d8e2f0!important;background:#fff!important;box-shadow:0 5px 15px rgba(15,23,42,.04)}
.rk34-money input{font-weight:850!important;font-size:19px!important}
.rk34-quick button{transition:.18s;min-width:42px}
.rk34-quick button:hover,.rk34-quick button.is-active{background:linear-gradient(120deg,#4f46e5,#06b6d4)!important;color:#fff!important;border-color:transparent!important;transform:translateY(-1px)}
.rk34-calc{gap:16px!important;padding:18px!important;border-radius:22px!important;background:linear-gradient(135deg,#f5f8ff,#effbff)!important;border:1px solid #dce6f6!important}
.rk34-calc__inputs{gap:11px!important}
.rk34-field{padding:13px!important;border-radius:15px!important;background:rgba(255,255,255,.92)!important;border:1px solid #dce6f6!important;box-shadow:0 5px 16px rgba(24,39,75,.035)}
.rk34-field input{border-radius:11px!important;background:#f8fafc!important}
.rk34-calc__result{position:relative;overflow:hidden;border-radius:22px!important;padding:22px!important;background:radial-gradient(circle at 80% 20%,rgba(34,211,238,.42),transparent 40%),linear-gradient(145deg,#24215f,#1d4e89 65%,#087f8c)!important;box-shadow:0 18px 38px rgba(30,64,120,.2)}
.rk34-calc__result b{font-size:clamp(26px,3vw,38px)!important;letter-spacing:-.045em}
.rk34-apply{border-radius:13px!important;min-height:42px!important;font-weight:850!important;box-shadow:0 8px 20px rgba(0,0,0,.14)}
.preview-trip__car-photo{position:relative;margin:-1px -1px 13px;border-radius:14px;overflow:hidden;background:#e2e8f0;aspect-ratio:16/9}
.preview-trip__car-photo img{display:block;width:100%;height:100%;object-fit:cover}
.preview-trip__car-photo span{position:absolute;left:10px;bottom:10px;padding:7px 10px;border-radius:9px;background:rgba(15,23,42,.72);color:#fff;font-size:9px;font-weight:850;backdrop-filter:blur(8px)}
.preview-trip__car-photo span i{margin-right:5px}
.ruh-admin-fleet-form{display:block}.ruh-admin-fleet-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.ruh-admin-fleet-grid label{display:grid;gap:6px;font-size:11px;font-weight:800;color:var(--text-2)}.ruh-admin-fleet-grid input,.ruh-admin-fleet-grid textarea,.ruh-admin-fleet-grid select{width:100%;min-width:0;padding:11px 12px;border:1px solid var(--border);border-radius:11px;background:var(--surface-2);color:var(--text);font:600 12px var(--font-b)}.ruh-admin-fleet-grid .wide{grid-column:1/-1}.ruh-admin-fleet-logo{min-height:90px;display:flex;align-items:center;justify-content:center;border:1px dashed var(--border);border-radius:14px;background:var(--surface-2);color:var(--text-3);gap:10px}.ruh-admin-fleet-logo img{max-width:180px;max-height:100px;object-fit:contain}
@media(max-width:850px){.rk-trips[data-view="compact"]{grid-template-columns:1fr}.rk-trips[data-view="compact"] .rk-card{grid-template-columns:100px minmax(0,1fr)}}
@media(max-width:620px){.ruh-view-switch{width:100%;justify-content:space-between}.ruh-view-switch button{flex:1;padding:0 6px;font-size:9px}.rk-home-head__tools,.rk-results__tools{width:100%}.rk-trips[data-view="list"] .rk-card{grid-template-columns:1fr}.rk-trips[data-view="list"] .rk-card__photo{height:150px}.ruh-admin-fleet-grid{grid-template-columns:1fr}.ruh-admin-fleet-grid .wide{grid-column:auto}.rk34-duo{grid-template-columns:1fr!important}.rk34-calc{grid-template-columns:1fr!important;padding:12px!important}.rk34-calc__result{min-height:220px}}
/* Compact mode deliberately hides large photos and uses the full card width. */
.rk-trips[data-view="compact"] .rk-card{display:block;grid-template-columns:none}

/* V43 — password recovery and 3D smart weather alerts */
.ruh-auth-recovery{display:flex;justify-content:flex-end;margin:-7px 0 13px}.ruh-auth-recovery a{display:inline-flex;align-items:center;gap:7px;color:var(--primary);font-size:12px;font-weight:800;text-decoration:none}.ruh-auth-recovery a:hover{text-decoration:underline}.ruh-reset-form{width:100%;padding:28px;border:1px solid var(--border);border-radius:22px;background:var(--surface);box-shadow:0 24px 65px rgba(15,23,42,.14);animation:ruhResetIn .45s cubic-bezier(.2,.8,.2,1) both}.ruh-reset-form h2{font:800 clamp(25px,3vw,34px)/1.1 var(--font-d);margin:18px 0 8px;color:var(--text)}.ruh-reset-form>label{display:block;margin:16px 0 7px;font-size:12px;font-weight:800;color:var(--text-2)}.ruh-reset-form .ruh-auth-control{margin-bottom:10px}.ruh-reset-form .ruh-auth-control input{width:100%;min-width:0}.ruh-reset-form .ruh-auth-submit{margin-top:15px}.ruh-weather-alert{isolation:isolate;overflow:hidden;transform:perspective(1000px) rotateX(0deg) translateY(0);transform-origin:50% 0;animation:ruhWeatherEnter .72s cubic-bezier(.18,.82,.25,1) both;box-shadow:0 18px 42px rgba(15,23,42,.13),inset 0 1px 0 rgba(255,255,255,.8)!important;backdrop-filter:blur(16px);background:linear-gradient(118deg,rgba(255,247,237,.97),rgba(255,255,255,.91) 56%,rgba(254,243,199,.94))!important}.ruh-weather-alert:before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(circle at 12% 15%,rgba(255,255,255,.95),transparent 28%),linear-gradient(115deg,transparent 35%,rgba(255,255,255,.5),transparent 72%);animation:ruhWeatherShine 6s ease-in-out infinite}.ruh-weather-alert__icon{flex-basis:52px!important;width:52px!important;height:52px!important;border-radius:17px!important;font-size:22px!important;box-shadow:0 10px 22px rgba(15,23,42,.2),inset 0 1px 0 rgba(255,255,255,.4);transform:translateZ(22px);animation:ruhWeatherFloat 3.5s ease-in-out infinite}.ruh-weather-alert.is-danger{background:linear-gradient(118deg,rgba(255,241,242,.98),rgba(255,255,255,.93) 55%,rgba(254,226,226,.96))!important}.ruh-weather-alert.is-info{background:linear-gradient(118deg,rgba(239,246,255,.98),rgba(255,255,255,.93) 55%,rgba(224,242,254,.96))!important}.ruh-weather-alert__body b{font-size:14px!important;letter-spacing:-.015em}.ruh-weather-alert__body p{font-size:12px!important;line-height:1.6!important}.ruh-weather-alert__close{transition:transform .2s,background .2s,box-shadow .2s}.ruh-weather-alert__close:hover{transform:rotate(90deg) scale(1.08);background:#fff!important;box-shadow:0 5px 14px rgba(15,23,42,.13)}
@keyframes ruhWeatherEnter{0%{opacity:0;transform:perspective(1000px) rotateX(-9deg) translateY(-18px) scale(.985)}100%{opacity:1;transform:perspective(1000px) rotateX(0) translateY(0) scale(1)}}@keyframes ruhWeatherFloat{0%,100%{transform:translateY(0) rotate(-3deg)}50%{transform:translateY(-4px) rotate(3deg)}}@keyframes ruhWeatherShine{0%,65%,100%{opacity:.35;transform:translateX(-10%)}35%{opacity:.85;transform:translateX(10%)}}@keyframes ruhResetIn{from{opacity:0;transform:translateY(12px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}
@media(prefers-reduced-motion:reduce){.ruh-weather-alert,.ruh-weather-alert:before,.ruh-weather-alert__icon,.ruh-reset-form{animation:none!important;transition:none!important}}@media(max-width:560px){.ruh-reset-form{padding:20px 16px;border-radius:17px}.ruh-weather-alert__icon{width:42px!important;height:42px!important;flex-basis:42px!important;font-size:18px!important}}
