/* H031F1_SIGNATURE_SQUARE_AVATARS */
:root{
  --bg:#07182c;--bg2:#0d2948;--panel:#153d63;--panel2:#1b4a75;--panel3:#102f50;
  --brand-orange:#f47a2a;--brand-orange2:#ffad5b;--brand-blue:#2aa7f4;--brand-blue2:#74cfff;
  --gold:var(--brand-orange);--gold2:var(--brand-orange2);--coral:#e85d5a;--ice:#9ed4f3;--violet:#a9a0e8;
  --white:#f9fbfd;--muted:#b8c8d9;--line:rgba(207,222,235,.16);--dark:#102137;
  --shadow:0 18px 42px rgba(0,0,0,.28),0 0 18px rgba(42,167,244,.035);--radius:22px;
}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:"Manrope",system-ui,sans-serif;color:var(--white);background:var(--bg)}body{background:radial-gradient(circle at 12% 3%,rgba(232,93,90,.09),transparent 17%),radial-gradient(circle at 88% 4%,rgba(244,122,42,.08),transparent 15%),linear-gradient(180deg,#123858 0%,#0a2747 30%,#07182c 100%);overscroll-behavior-y:none}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{cursor:pointer}img{max-width:100%;display:block}.hop-shell{min-height:100dvh;overflow-x:hidden;position:relative}.hop-shell:before{content:"";position:fixed;left:0;right:0;bottom:0;height:36vh;background:url('/assets/img/scenic-strip.jpg') center bottom/cover no-repeat;opacity:.07;pointer-events:none;mask-image:linear-gradient(to bottom,transparent,black 45%)}.hop-page{position:relative;z-index:1;width:min(100%,430px);min-height:100dvh;margin:auto;padding:14px 18px 92px}.muted{color:var(--muted)}

/* shared */
.screen-head{display:grid;grid-template-columns:46px 1fr 46px;align-items:center;gap:8px;margin:2px 0 14px}.screen-head-copy{text-align:center}.screen-head h1{margin:0;font-size:20px;line-height:1.15;font-weight:800;letter-spacing:-.4px}.screen-head p{margin:4px 0 0;color:#c3d1df;font-size:11px}.head-button{width:46px;height:46px;border:1px solid rgba(196,214,231,.16);border-radius:16px;background:linear-gradient(180deg,#173f68,#0d2f52);color:#fff;font-size:19px;display:grid;place-items:center;box-shadow:0 9px 20px rgba(0,0,0,.16)}.panel{background:linear-gradient(150deg,rgba(27,74,117,.96),rgba(14,44,75,.98));border:1px solid rgba(205,221,234,.17);border-radius:22px;box-shadow:var(--shadow),inset 0 1px 0 rgba(255,255,255,.04)}.section-title{margin:18px 2px 10px;font-size:15px;font-weight:800}.section-title small{display:block;color:var(--muted);font-size:10px;font-weight:600;margin-top:3px}.btn{height:50px;border:0;border-radius:15px;padding:0 18px;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:800;font-size:14px}.btn.gold{background:linear-gradient(180deg,var(--gold2),var(--gold));color:#13273e;box-shadow:0 12px 25px rgba(244,122,42,.16),inset 0 1px 0 rgba(255,255,255,.45)}.btn.coral{background:linear-gradient(180deg,#f17873,#d94e4b);color:white;box-shadow:0 12px 24px rgba(232,93,90,.14)}.btn.ghost{background:rgba(10,35,62,.54);border:1px solid rgba(198,216,232,.16);color:#eef5fb}.btn.block{width:100%}.pill{display:inline-flex;align-items:center;gap:6px;min-height:27px;padding:0 10px;border-radius:999px;background:rgba(7,28,51,.50);border:1px solid rgba(200,219,235,.12);font-size:10px;font-weight:700}.pill.gold{color:#ffb15d;border-color:rgba(244,122,42,.25)}.pill.coral{color:#ffc2bd;border-color:rgba(232,93,90,.24)}

/* home */
.topbar{position:relative;text-align:center;padding:15px 0 13px}.brand-row{display:flex;align-items:center;justify-content:center;gap:7px}.brand-home-link{width:min(100%,390px);max-width:100%;margin-left:auto;margin-right:auto}.logo-mark{width:88px;height:auto;flex:0 0 88px;filter:drop-shadow(0 7px 16px rgba(42,167,244,.08)) drop-shadow(0 5px 13px rgba(244,122,42,.08))}.logo-word{color:var(--brand-orange);font-family:"Exo 2","Manrope",sans-serif;font-style:italic;font-size:clamp(38px,10.8vw,48px);font-weight:850;letter-spacing:-2.2px;line-height:1}.logo-word span{color:var(--brand-blue)}.hop-global-brand{margin-top:1px;margin-bottom:8px}.topbar .brand-home-link{width:min(calc(100% - 58px),360px)}.brand-inline strong{color:var(--brand-orange)}.brand-inline strong span{color:var(--brand-blue)}.tagline{margin-top:13px}.tagline strong{display:block;font-size:17px;line-height:1.24;font-weight:800}.tagline span{display:block;margin-top:4px;color:#d3dde6;font-size:11.5px;font-weight:600}.home-search{margin-top:4px}.search-card{position:relative;padding:10px;border-radius:25px;background:linear-gradient(180deg,rgba(17,57,99,.98),rgba(7,33,69,.99));border:1px solid rgba(195,215,232,.17);box-shadow:0 20px 44px rgba(0,0,0,.30),inset 0 1px 0 rgba(255,255,255,.04)}.search-card:before{content:"";position:absolute;left:24px;right:24px;top:-1px;height:2px;border-radius:99px;background:linear-gradient(90deg,var(--coral),#b4c9df 55%,var(--gold))}.route-box{position:relative;border-radius:19px;background:linear-gradient(180deg,rgba(3,21,53,.48),rgba(2,18,45,.56));border:1px solid rgba(210,224,236,.12);overflow:hidden}.route-field{display:grid;grid-template-columns:42px 1fr 42px;align-items:center;min-height:67px;padding:8px 9px;border-bottom:1px solid rgba(255,255,255,.07)}.route-field:last-child{border-bottom:0}.route-copy small,.mini-field small{display:block;color:#acbfd2;font-size:10.5px;font-weight:600}.route-copy strong,.mini-field strong{display:block;margin-top:1px;font-size:18px;line-height:1.2;font-weight:800}.route-pin{position:relative;z-index:2;width:25px;height:25px;margin-left:2px;border-radius:50% 50% 50% 0;transform:rotate(-45deg);display:grid;place-items:center;box-shadow:0 0 0 6px rgba(255,255,255,.035),0 7px 15px rgba(0,0,0,.24)}.route-pin:after{content:"";width:9px;height:9px;border-radius:50%;background:#fff}.route-pin.start{background:linear-gradient(145deg,#f07a75,var(--coral))}.route-pin.finish{background:linear-gradient(145deg,#ffad5b,var(--gold))}.home-road-arrows{position:absolute;left:22px;top:54px;width:22px;height:29px;z-index:3;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0;color:#e9772c;font-size:9px;line-height:7px;pointer-events:none}.swap{width:38px;height:38px;border-radius:50%;border:1px solid rgba(232,93,90,.24);background:linear-gradient(180deg,#173e66,#0d2e50);color:#fff;font-size:17px;display:grid;place-items:center;box-shadow:0 8px 18px rgba(0,0,0,.18)}.search-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.02fr);gap:8px;margin-top:8px}.mini-field{position:relative;min-width:0;min-height:62px;padding:8px 9px;display:grid;grid-template-columns:25px minmax(0,1fr) auto;align-items:center;gap:7px;border-radius:17px;background:linear-gradient(180deg,rgba(4,23,56,.46),rgba(3,20,48,.58));border:1px solid rgba(203,219,233,.12)}.mini-field:before{content:"";position:absolute;left:0;top:12px;bottom:12px;width:3px;border-radius:0 4px 4px 0;background:#8ccbf1}.mini-field.passenger:before{background:var(--coral)}.mini-field>.fa-solid,.mini-field>.fa-regular{font-size:19px;color:#eef5fb;text-align:center}.stepper{display:flex;align-items:center;justify-content:flex-end;gap:6px;min-width:75px}.stepper button{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;border:1px solid rgba(199,216,231,.13);font-size:17px;font-weight:900}.stepper .minus{background:rgba(232,93,90,.11);border-color:rgba(232,93,90,.27);color:#ffccc8}.stepper .plus{background:linear-gradient(180deg,var(--gold2),var(--gold));color:#112a45;border-color:rgba(255,255,255,.16)}.cta{width:100%;height:55px;margin-top:9px;border:0;border-radius:17px;background:linear-gradient(180deg,var(--gold2),var(--gold));color:#12273e;font-size:17px;font-weight:800;box-shadow:0 14px 28px rgba(244,122,42,.17),inset 0 1px 0 rgba(255,255,255,.44)}.free-note{text-align:center;padding:11px 5px 2px;color:#d2dce6;font-size:11px;font-weight:700}.free-note i{font-size:6px;color:var(--gold);vertical-align:2px;margin-right:7px}.road-card{height:222px;margin-top:13px;border-radius:21px;background:url('/assets/img/hero-road.jpg') center 55%/cover no-repeat;border:1px solid rgba(208,223,235,.15);box-shadow:var(--shadow);position:relative;overflow:hidden}.road-card:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 50%,rgba(5,23,43,.35))}.road-card:after{content:"Больше, чем просто поездка ♥";position:absolute;right:13px;bottom:14px;width:190px;text-align:right;font-family:"Caveat",cursive;font-size:21px;line-height:1;color:#fff;text-shadow:0 2px 8px #000;transform:rotate(-2deg)}.popular-block{margin-top:15px}.section-head{display:flex;justify-content:space-between;align-items:center;margin:0 1px 8px;font-size:14px;font-weight:800}.section-head a{font-size:11px;color:var(--gold)}.popular{display:flex;gap:8px;overflow:auto;scrollbar-width:none}.popular::-webkit-scrollbar{display:none}.popular a{flex:0 0 132px;padding:10px 10px 9px 12px;border-radius:14px;background:linear-gradient(180deg,#173b61,#102c4c);border:1px solid rgba(195,213,229,.13);font-size:10px;font-weight:800;position:relative}.popular a:before{content:"";position:absolute;left:0;top:9px;bottom:9px;width:3px;background:var(--coral);border-radius:0 4px 4px 0}.popular a:nth-child(2):before{background:var(--gold)}.popular a:nth-child(3):before{background:#8ac9ed}.popular b{display:block;margin-top:4px;color:#ffa654;font-size:9px}

/* nav */
.bottom-nav{position:fixed;left:50%;bottom:0;transform:translateX(-50%);z-index:50;width:min(100%,430px);height:76px;padding:8px 10px calc(8px + env(safe-area-inset-bottom));display:grid;grid-template-columns:repeat(4,1fr);gap:7px;background:rgba(5,20,37,.985);border-top:1px solid rgba(194,215,232,.14);box-shadow:0 -12px 30px rgba(0,0,0,.25);backdrop-filter:blur(18px)}.nav-item{position:relative;border-radius:17px;background:linear-gradient(180deg,rgba(20,53,88,.64),rgba(7,28,50,.72));border:1px solid rgba(190,211,228,.10);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;color:#afc0d4;font-size:8.8px;font-weight:750;min-width:0}.nav-item>i{font-size:23px;line-height:1}.nav-item.active{color:#ff9a3d;background:linear-gradient(180deg,rgba(244,122,42,.18),rgba(244,122,42,.06));border-color:rgba(244,122,42,.26);box-shadow:inset 0 1px 0 rgba(255,255,255,.04)}.nav-badge{position:absolute;right:18px;top:8px;width:8px;height:8px;border-radius:50%;background:var(--coral);box-shadow:0 0 0 3px rgba(232,93,90,.12)}

/* search results */
.date-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:13px}.date-card{min-height:91px;padding:10px 5px;border-radius:18px;border:1px solid rgba(198,215,230,.14);background:linear-gradient(180deg,#163f67,#0d2e50);color:#dfe8f1;text-align:center;box-shadow:0 10px 22px rgba(0,0,0,.12)}.date-card span,.date-card strong,.date-card small{display:block}.date-card .date-name{font-size:11px;font-weight:800}.date-card strong{margin-top:6px;font-size:13px}.date-card small{margin-top:7px;color:#afc1d3;font-size:10.5px;font-weight:700}.date-card.active{background:linear-gradient(160deg,#ffb15d,#f47a2a 76%,#e86a1f);color:#fff;border-color:#ffc17a;box-shadow:0 14px 30px rgba(244,122,42,.18),inset 0 1px 0 rgba(255,255,255,.45)}.date-card.active .date-name,.date-card.active strong{color:#fff;text-shadow:0 1px 2px rgba(21,38,58,.28)}.date-card.active small{color:#263a51;text-shadow:none}.ride-list{display:grid;gap:12px}.ride-card{position:relative;padding:13px 12px 11px;border-radius:23px;background:radial-gradient(circle at 100% 0%,rgba(244,122,42,.08),transparent 33%),linear-gradient(150deg,#1b4b77,#14375d 55%,#102d4d);border:1px solid rgba(203,219,232,.20);box-shadow:0 18px 38px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.045);overflow:hidden}.ride-card:after{content:"";position:absolute;left:0;top:17px;bottom:17px;width:2px;border-radius:0 3px 3px 0;background:linear-gradient(180deg,var(--coral),rgba(232,93,90,.18) 45%,rgba(244,122,42,.44))}.ride-card-link{display:block}.ride-card-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:7px}.car-title{display:flex;align-items:center;gap:9px;min-width:0}.car-emblem{width:33px;height:33px;border-radius:12px;display:grid;place-items:center;background:linear-gradient(180deg,rgba(156,206,240,.16),rgba(7,31,57,.40));border:1px solid rgba(164,208,238,.16);color:#bfe0f6;font-size:17px}.car-title strong{font-family:"Exo 2",sans-serif;font-size:17px;line-height:1.05;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.price{flex:0 0 auto;min-width:104px;padding:8px 13px 9px;text-align:center;border-radius:17px;background:linear-gradient(160deg,#ffad5b,#f47a2a 78%);border:1px solid rgba(255,247,216,.40);color:#14253a;font-size:17px;font-weight:800;box-shadow:0 8px 18px rgba(0,0,0,.12),inset 0 1px 0 rgba(255,255,255,.40)}.trip-path{display:grid;grid-template-columns:66px 27px 1fr;grid-template-rows:auto 22px auto;column-gap:7px;align-items:center;padding:3px 0 8px}.stop-time{font-size:20px;line-height:1;font-weight:800;letter-spacing:-.45px}.path-node{justify-self:center;width:16px;height:16px;border-radius:50%;border:3px solid #fff;box-shadow:0 0 0 5px rgba(255,255,255,.06);z-index:2}.path-node.start{background:var(--coral)}.path-node.finish{background:var(--gold)}.stop-place{min-width:0}.stop-place strong{display:block;font-size:18px;line-height:1.02;font-weight:800}.stop-place address{display:block;margin-top:2px;color:#edf3f9;font-size:13.6px;line-height:1.1;font-style:italic;font-weight:700;letter-spacing:.01px}.duration{color:#b6c7d8;font-size:10.5px;font-weight:750;white-space:nowrap}.path-arrows{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:-1px;color:#e9772c;font-size:9px;line-height:7px}.advantages-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;padding-top:9px;border-top:1px solid rgba(220,232,242,.09)}.advantage-cell{position:relative;min-height:78px;padding:7px 3px 6px;border-radius:15px;background:linear-gradient(180deg,rgba(7,28,50,.58),rgba(4,20,38,.78));border:1px solid rgba(199,217,232,.11);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:6px;overflow:hidden}.advantage-cell:before{content:"";position:absolute;top:0;left:14px;right:14px;height:3px;border-radius:0 0 5px 5px;background:#88b9d9}.feature-symbol{height:31px;display:grid;place-items:center;font-size:27px;color:#d9ebf7}.advantage-cell span:last-child{font-size:8px;line-height:1.08;font-weight:750;color:#eef5fb}.tone-gold:before{background:var(--gold)}.tone-gold .feature-symbol{color:#ffad5b}.tone-coral:before{background:var(--coral)}.tone-coral .feature-symbol{color:#f0b0ac}.tone-ice:before{background:#8bc8e8}.tone-ice .feature-symbol{color:#c5e9fb}.tone-violet:before{background:var(--violet)}.tone-violet .feature-symbol{color:#d0caf8}.tone-blue:before{background:#7da8cc}

/* detail */
.trip-hero{padding:13px}.trip-topline{display:flex;align-items:center;justify-content:space-between;gap:10px}.trip-topline .route-mini{font-size:11px;color:#c8d5e2}.trip-price{font-size:24px;font-weight:800;color:#ffad5b}.detail-route{margin-top:12px;padding:13px;border-radius:18px;background:rgba(5,25,47,.46);border:1px solid rgba(202,220,235,.10)}.detail-driver{display:grid;grid-template-columns:48px 1fr auto;gap:10px;align-items:center;padding:13px;margin-top:10px}.avatar{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(145deg,#dce7f1,#8aa6bf);color:#193452;font-weight:800;font-size:17px;border:2px solid rgba(255,255,255,.75)}.driver-copy strong{display:block;font-size:15px}.driver-copy small{display:block;color:#b6c6d7;font-size:10px;margin-top:2px}.rating{color:#ff9c45;font-size:12px;font-weight:800}.action-grid{display:grid;grid-template-columns:1fr 1.25fr;gap:8px;margin-top:12px}.info-list{display:grid;gap:8px}.info-row{display:grid;grid-template-columns:30px 1fr;gap:9px;align-items:center;padding:12px;border-radius:15px;background:rgba(8,30,54,.52);border:1px solid rgba(200,218,232,.10)}.info-row>i{font-size:17px;color:#b8dff5;text-align:center}.info-row strong{display:block;font-size:12px}.info-row span{display:block;color:#b8c8d8;font-size:10px;margin-top:2px}

/* forms / auth */
.form-card{padding:15px}.form-grid{display:grid;gap:10px}.input-group label{display:block;margin:0 0 5px 2px;color:#c0cedc;font-size:10px;font-weight:700}.input-shell{min-height:51px;display:grid;grid-template-columns:26px 1fr;align-items:center;gap:8px;padding:0 12px;border-radius:15px;background:rgba(4,22,43,.56);border:1px solid rgba(203,220,233,.12)}.input-shell i{color:#aed7f0;text-align:center}.input-shell input,.input-shell textarea,.input-shell select{width:100%;border:0;outline:0;background:transparent;color:#fff;font-size:13px}.input-shell textarea{padding:12px 0;min-height:88px;resize:vertical}.input-shell input::placeholder,.input-shell textarea::placeholder{color:#8298ae}.form-note{display:flex;gap:8px;padding:11px;border-radius:14px;background:rgba(244,122,42,.08);border:1px solid rgba(244,122,42,.15);color:#d7e1ea;font-size:10px;line-height:1.35}.form-note i{color:#ffad5b;margin-top:2px}.auth-logo{display:flex;justify-content:center;align-items:center;gap:9px;margin:25px 0 18px}.auth-logo img{width:52px}.auth-logo strong{font-size:31px;font-weight:800}.auth-logo span{color:var(--gold)}.auth-title{text-align:center;margin-bottom:15px}.auth-title h1{margin:0;font-size:23px}.auth-title p{margin:6px 0 0;color:#b7c8d9;font-size:11px}.auth-links{text-align:center;margin-top:13px;color:#bac9d8;font-size:10px}.auth-links a{color:#ffa64f;font-weight:800}

/* booking */
.booking-summary{padding:13px}.booking-summary .ride-card-head{margin:0}.booking-route-small{margin-top:8px;color:#cbd7e2;font-size:11px}.seat-choice{display:grid;grid-template-columns:1fr auto;align-items:center;gap:10px;padding:13px}.seat-choice strong{font-size:13px}.booking-total{display:flex;align-items:center;justify-content:space-between;padding:14px;border-top:1px solid rgba(255,255,255,.08);margin-top:10px}.booking-total span{color:#b8c7d6;font-size:11px}.booking-total strong{font-size:22px;color:#ffa64f}

/* messages/chat */
.message-list{display:grid;gap:8px}.message-row{display:grid;grid-template-columns:46px 1fr auto;gap:10px;align-items:center;padding:12px}.message-row .avatar{width:46px;height:46px}.message-main strong{display:block;font-size:13px}.message-main p{margin:3px 0 0;color:#b8c8d8;font-size:10.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.message-meta{text-align:right}.message-meta small{display:block;color:#8fa5ba;font-size:8.5px}.unread{margin-top:5px;margin-left:auto;width:20px;height:20px;border-radius:50%;display:grid;place-items:center;background:var(--coral);font-size:8px;font-weight:800}.chat-page{padding-bottom:86px}.chat-trip{padding:10px 12px;display:flex;align-items:center;justify-content:space-between;gap:9px;margin-bottom:10px}.chat-trip small{color:#afc0d1;font-size:9px}.chat-trip strong{display:block;font-size:12px}.chat-price{color:#ffa64f;font-weight:800}.chat-body{display:flex;flex-direction:column;gap:7px;padding:5px 2px 86px}.bubble{max-width:82%;padding:10px 11px;border-radius:16px;font-size:11px;line-height:1.35;box-shadow:0 8px 15px rgba(0,0,0,.10)}.bubble.them{align-self:flex-start;background:#173d65;border-bottom-left-radius:5px}.bubble.me{align-self:flex-end;background:#1d5b9d;border-bottom-right-radius:5px}.bubble time{display:block;margin-top:3px;color:#b8cbe0;font-size:8px;text-align:right}.chat-compose{position:fixed;left:50%;bottom:76px;transform:translateX(-50%);width:min(calc(100% - 28px),402px);padding:7px;border-radius:18px;background:rgba(7,27,50,.96);border:1px solid rgba(198,216,231,.13);display:grid;grid-template-columns:36px 1fr 40px;gap:5px;align-items:center;z-index:30;box-shadow:0 12px 28px rgba(0,0,0,.25)}.chat-compose input{border:0;outline:0;background:transparent;color:#fff;font-size:11px}.chat-compose button{width:36px;height:36px;border:0;border-radius:50%;display:grid;place-items:center}.attach{background:transparent;color:#9fb8d0}.send{background:linear-gradient(180deg,#2b85d4,#1767af);color:#fff}.chat-warning{padding:9px 10px;margin-bottom:8px;border-radius:14px;background:rgba(232,93,90,.08);border:1px solid rgba(232,93,90,.16);color:#f2d1cf;font-size:9px;line-height:1.35}

/* account */
.account-hero{padding:15px}.account-profile{display:grid;grid-template-columns:56px 1fr auto;gap:11px;align-items:center}.account-profile .avatar{width:56px;height:56px;border-radius:16px!important;overflow:hidden!important;border:1px solid rgba(255,202,109,.76)!important;box-shadow:0 0 0 1px rgba(69,184,255,.15),0 0 14px rgba(244,122,42,.16),0 0 22px rgba(47,168,255,.10)!important;}.account-profile h1{margin:0;font-size:18px}.account-profile p{margin:4px 0 0;color:#b8c8d8;font-size:10px}.verified{width:29px;height:29px;border-radius:50%;display:grid;place-items:center;background:rgba(125,200,153,.12);color:#91d7a9;border:1px solid rgba(125,200,153,.20)}.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-top:13px}.stat{padding:10px 5px;border-radius:14px;background:rgba(6,25,47,.44);text-align:center;border:1px solid rgba(198,216,231,.08)}.stat strong{display:block;font-size:17px}.stat span{display:block;margin-top:2px;color:#aebed0;font-size:8.5px}.next-trip{padding:13px}.next-trip-head{display:flex;justify-content:space-between;align-items:center}.status{display:inline-flex;align-items:center;gap:5px;padding:5px 8px;border-radius:999px;font-size:8.5px;font-weight:800}.status.ok{background:rgba(91,185,128,.13);color:#96deb1}.status.wait{background:rgba(244,122,42,.11);color:#ffa64f}.status.bad{background:rgba(232,93,90,.10);color:#ffc0bc}.menu-list{display:grid;gap:7px}.menu-link{display:grid;grid-template-columns:34px 1fr 18px;align-items:center;gap:7px;padding:11px 12px;border-radius:15px;background:linear-gradient(180deg,rgba(20,55,91,.62),rgba(9,31,55,.70));border:1px solid rgba(197,215,230,.10)}.menu-link>i:first-child{width:32px;height:32px;border-radius:11px;display:grid;place-items:center;background:rgba(152,203,236,.08);color:#b7dff5}.menu-link strong{display:block;font-size:11px}.menu-link small{display:block;color:#9fb1c3;font-size:8.5px;margin-top:2px}.menu-link>i:last-child{color:#748ca4;font-size:10px}.trip-mini{padding:12px}.trip-mini-top{display:flex;justify-content:space-between;gap:9px}.trip-mini h3{margin:0;font-size:14px}.trip-mini p{margin:4px 0 0;color:#b6c6d6;font-size:9.5px}.trip-mini-route{display:flex;justify-content:space-between;align-items:center;margin-top:11px;font-size:12px;font-weight:800}.trip-mini-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:10px}.trip-mini-actions .btn{height:39px;font-size:10px}.notification-card{display:grid;grid-template-columns:38px 1fr;gap:10px;padding:12px}.notification-icon{width:38px;height:38px;border-radius:13px;display:grid;place-items:center;background:rgba(143,203,238,.09);color:#b9e2f8}.notification-card h3{margin:0;font-size:11px}.notification-card p{margin:3px 0;color:#aec0d1;font-size:9.5px;line-height:1.3}.notification-card time{color:#8095a9;font-size:8px}

/* driver */
.driver-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.driver-card{padding:13px}.driver-card-top{display:flex;align-items:center;justify-content:space-between}.driver-card h3{margin:0;font-size:14px}.occupancy{font-size:10px;color:#b9c9d8}.progress{height:7px;margin:10px 0;border-radius:99px;background:#081f37;overflow:hidden}.progress i{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,var(--gold),#ffa64f);width:60%}.driver-trip-meta{display:grid;grid-template-columns:1fr 1fr;gap:6px}.driver-trip-meta div{padding:8px;border-radius:12px;background:rgba(7,27,49,.42);font-size:9px;color:#aebfd0}.driver-trip-meta strong{display:block;color:#fff;font-size:11px;margin-top:2px}.local-hint{display:flex;gap:9px;padding:12px;margin-bottom:10px;border-radius:16px;background:linear-gradient(135deg,rgba(232,93,90,.10),rgba(244,122,42,.06));border:1px solid rgba(232,93,90,.16)}.local-hint i{color:#ffa55d;margin-top:2px}.local-hint strong{display:block;font-size:11px}.local-hint span{display:block;margin-top:2px;color:#b7c7d7;font-size:9px}.stop-editor{display:grid;grid-template-columns:28px 1fr 90px;gap:8px;align-items:center;padding:10px;border-radius:15px;background:rgba(6,26,49,.51);border:1px solid rgba(195,214,230,.10)}.stop-editor>i{color:#b8def4;text-align:center}.stop-editor strong{display:block;font-size:11px}.stop-editor small{display:block;color:#9db0c3;font-size:8.5px;margin-top:2px}.stop-editor input{width:90px;height:38px;border-radius:11px;border:1px solid rgba(204,221,234,.12);background:#081f38;color:#fff;text-align:center}.feature-options{display:grid;grid-template-columns:1fr 1fr;gap:7px}.feature-option{position:relative;min-height:72px;padding:10px;border-radius:15px;background:linear-gradient(180deg,#14395f,#0d2c4c);border:1px solid rgba(196,214,229,.12);display:grid;grid-template-columns:34px 1fr 22px;align-items:center;gap:7px}.feature-option input{position:absolute;opacity:0}.feature-option>i{font-size:22px;color:#bddff3;text-align:center}.feature-option strong{font-size:9.5px;line-height:1.2}.feature-check{width:20px;height:20px;border-radius:50%;display:grid;place-items:center;border:1px solid rgba(200,218,232,.18);color:transparent;font-size:9px}.feature-option.selected{border-color:rgba(244,122,42,.28);background:linear-gradient(180deg,#19466f,#12375b)}.feature-option.selected .feature-check{background:var(--gold);border-color:var(--gold);color:#112a44}.vehicle-preview{padding:14px}.vehicle-visual{height:140px;border-radius:18px;background:linear-gradient(145deg,#193e63,#0a2542);display:grid;place-items:center;color:#c6e5f7;font-size:65px;border:1px solid rgba(199,218,232,.12)}.moderation-note{margin-top:9px;padding:10px;border-radius:14px;background:rgba(244,122,42,.07);color:#e0d6b6;font-size:9.5px;border:1px solid rgba(244,122,42,.14)}

/* admin */
.admin-page{width:min(100%,1000px);padding-bottom:40px}.admin-brand{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:10px 2px 13px}.brand-inline{display:flex;align-items:center;gap:7px}.admin-home-logo{color:inherit;text-decoration:none}.brand-inline img{width:39px}.brand-inline strong{font-size:23px}.brand-inline span{color:var(--gold)}.admin-brand>div:last-child{text-align:right}.admin-brand b{display:block;font-size:11px}.admin-brand small{display:block;color:#9fb1c3;font-size:8px;margin-top:2px}.admin-tabs{display:flex;gap:7px;overflow:auto;padding-bottom:3px;margin-bottom:14px;scrollbar-width:none}.admin-tabs a{flex:0 0 auto;height:42px;padding:0 13px;border-radius:13px;display:flex;align-items:center;gap:7px;background:linear-gradient(180deg,#15395f,#0d2c4c);border:1px solid rgba(199,217,232,.10);color:#aebfd0;font-size:9.5px;font-weight:700}.admin-tabs a.active{background:linear-gradient(180deg,rgba(244,122,42,.18),rgba(244,122,42,.07));border-color:rgba(244,122,42,.25);color:#f0d987}.admin-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.admin-stat{padding:13px;border-radius:17px;background:linear-gradient(150deg,#17436d,#102f50);border:1px solid rgba(199,217,232,.10)}.admin-stat i{color:#bce1f5}.admin-stat strong{display:block;margin-top:8px;font-size:22px}.admin-stat span{font-size:9px;color:#aebfd0}.table-list{display:grid;gap:7px}.table-row{display:grid;grid-template-columns:1.5fr 1fr auto;gap:10px;align-items:center;padding:11px 12px;border-radius:15px;background:linear-gradient(180deg,rgba(20,57,94,.72),rgba(8,30,53,.78));border:1px solid rgba(196,214,230,.09)}.table-row strong{display:block;font-size:11px}.table-row small{display:block;color:#9fb1c3;font-size:8.5px;margin-top:2px}.table-row .right{text-align:right}.moderation-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:9px}.moderation-item{padding:12px}.photo-placeholder{height:130px;border-radius:15px;background:linear-gradient(145deg,#1a466f,#0a2747);display:grid;place-items:center;color:#bbdff3;font-size:45px}.moderation-item h3{margin:10px 0 2px;font-size:12px}.moderation-item p{margin:0;color:#aebfd0;font-size:9px}.moderation-actions{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:9px}.moderation-actions .btn{height:38px;font-size:9px;padding:0 8px}

/* modal */
.auth-modal[hidden]{display:none}.auth-modal{position:fixed;inset:0;z-index:100;background:rgba(2,11,22,.72);backdrop-filter:blur(8px);display:grid;place-items:end center;padding:18px}.auth-modal-card{position:relative;width:min(100%,400px);padding:22px;border-radius:26px;background:linear-gradient(160deg,#19486f,#0c2b4a);border:1px solid rgba(205,222,235,.16);box-shadow:0 25px 60px rgba(0,0,0,.42);text-align:center}.modal-close{position:absolute;right:12px;top:12px;width:34px;height:34px;border:0;border-radius:50%;background:rgba(5,24,44,.55);color:#cbd9e5}.modal-icon{width:52px;height:52px;margin:0 auto 10px;border-radius:18px;background:rgba(244,122,42,.12);display:grid;place-items:center;color:#ffad5b;font-size:21px}.auth-modal h2{margin:0;font-size:19px}.auth-modal p{margin:8px auto 15px;color:#b9c9d9;font-size:10.5px;line-height:1.4;max-width:310px}.auth-modal .btn{width:100%;margin-top:7px}

@media(max-width:370px){.hop-page{padding-left:12px;padding-right:12px}.logo-word{font-size:31px}.tagline strong{font-size:15px}.route-field{grid-template-columns:38px 1fr 38px}.route-copy strong,.mini-field strong{font-size:17px}.search-row{gap:6px}.mini-field{padding-left:7px;padding-right:7px;grid-template-columns:22px minmax(0,1fr) auto;gap:5px}.stepper{gap:4px;min-width:67px}.stepper button{width:29px;height:29px}.trip-path{grid-template-columns:61px 24px 1fr;column-gap:5px}.stop-time{font-size:18px}.stop-place strong{font-size:16.5px}.stop-place address{font-size:12.5px}.price{min-width:94px;padding-left:10px;padding-right:10px}.advantage-cell{min-height:74px}.feature-symbol{font-size:24px}.advantage-cell span:last-child{font-size:7.4px}.admin-stats{grid-template-columns:repeat(2,1fr)}.moderation-grid{grid-template-columns:1fr}}
@media(min-width:900px){.hop-page{width:min(1180px,calc(100% - 48px));padding:96px 0 50px}.bottom-nav{display:grid;top:18px;bottom:auto;width:min(760px,calc(100% - 48px));height:64px;padding:7px 10px;border-radius:20px;background:rgba(7,24,44,.94);border:1px solid rgba(42,167,244,.18);box-shadow:0 14px 34px rgba(0,0,0,.24),0 0 18px rgba(244,122,42,.06)}.home-search{max-width:920px}.topbar{text-align:left}.brand-row{justify-content:flex-start}.tagline{text-align:left}.search-card{display:grid;grid-template-columns:1.35fr 1fr auto;gap:8px;align-items:center}.route-box{display:grid;grid-template-columns:1fr 1fr}.route-field{border-bottom:0}.route-field:first-child{border-right:1px solid rgba(255,255,255,.07)}.home-road-arrows{display:none}.search-row{display:contents}.cta{width:190px;margin:0;height:62px}.free-note{grid-column:1/-1}.road-card{height:280px}.results-page{max-width:850px}.date-cards{max-width:600px}.ride-card{padding:15px}.trip-path{grid-template-columns:80px 30px 1fr}.stop-time{font-size:23px}.stop-place strong{font-size:20px}.stop-place address{font-size:14.5px}.advantage-cell{min-height:85px}.feature-symbol{font-size:31px}.advantage-cell span:last-child{font-size:9px}.admin-page{width:min(1100px,calc(100% - 48px))}.moderation-grid{grid-template-columns:repeat(4,1fr)}}


/* =========================
   H012 — PREMIUM ROUTE SYSTEM
   ========================= */

/* Main search route: one real grid column for both pins and the road */
.home-route{
  display:grid;
  grid-template-columns:52px minmax(0,1fr) 48px;
  grid-template-rows:67px 67px;
  position:relative;
  overflow:hidden;
}
.home-route .home-route-visual{
  grid-column:1;
  grid-row:1 / 3;
  position:relative;
  display:grid;
  grid-template-rows:1fr auto 1fr;
  justify-items:center;
  align-items:center;
  z-index:2;
}
.home-route .route-pin{
  margin:0;
  width:25px;
  height:25px;
  align-self:center;
}
.home-route .route-pin.start{grid-row:1}
.home-route .mini-road{
  grid-row:2;
  width:8px;
  height:42px;
  border-radius:999px;
  position:relative;
  background:linear-gradient(90deg,#0c1b2b 0 18%,#30435a 18% 82%,#0c1b2b 82%);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.04),0 0 12px rgba(0,0,0,.18);
}
.home-route .mini-road:after{
  content:"";
  position:absolute;
  left:50%;
  top:5px;
  bottom:5px;
  width:1px;
  transform:translateX(-50%);
  background:repeating-linear-gradient(to bottom,rgba(236,214,145,.95) 0 4px,transparent 4px 8px);
}
.home-route .route-pin.finish{grid-row:3}
.home-route .route-field{
  grid-column:2 / 4;
  display:grid;
  grid-template-columns:minmax(0,1fr) 44px;
  min-height:67px;
  padding:8px 10px 8px 2px;
}
.home-route .route-from{grid-row:1}
.home-route .route-to{grid-row:2}
.home-route .route-copy{grid-column:1}
.home-route .swap{grid-column:2;grid-row:1;justify-self:end}
.home-route .route-field:first-of-type{border-bottom:1px solid rgba(255,255,255,.07)}

/* Bottom navigation: proper icon size and stable geometry */
.bottom-nav{height:78px;padding:8px 10px;gap:7px}
.nav-item{grid-template-rows:33px auto;gap:3px;border-radius:18px;font-size:9.5px}
.nav-item>i{font-size:27px;line-height:1}
.nav-item.active>i{color:var(--gold2)}
.nav-badge{right:18px;top:8px;width:8px;height:8px}

/* Shared route — same branded visual everywhere */
.trip-path.premium-road{
  position:relative;
  display:grid;
  grid-template-columns:64px 26px minmax(0,1fr);
  grid-auto-rows:auto;
  column-gap:8px;
  row-gap:4px;
  align-items:center;
}
.premium-road .stop-time{
  font-size:20px;
  line-height:1;
  font-weight:800;
  letter-spacing:-.45px;
}
.premium-road .path-node{
  position:relative;
  z-index:2;
  justify-self:center;
  width:16px;
  height:16px;
  border-radius:50%;
  border:3px solid #f9fbfd;
  box-shadow:0 0 0 5px rgba(255,255,255,.055),0 4px 10px rgba(0,0,0,.18);
}
.premium-road .path-node.start{background:var(--coral)}
.premium-road .path-node.middle{background:#86b8d7}
.premium-road .path-node.finish{background:var(--gold)}
.premium-road .road-segment{
  position:relative;
  justify-self:center;
  width:8px;
  height:28px;
  border-radius:999px;
  background:linear-gradient(90deg,#0b1b2c 0 18%,#33485f 18% 82%,#0b1b2c 82%);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.035);
}
.premium-road .road-segment i{
  position:absolute;
  left:50%;
  top:4px;
  bottom:4px;
  width:1px;
  transform:translateX(-50%);
  background:repeating-linear-gradient(to bottom,rgba(230,207,137,.94) 0 4px,transparent 4px 8px);
}
.premium-road .duration{
  align-self:center;
  color:#b9c9d8;
  font-size:10.5px;
  line-height:1.08;
  font-weight:700;
}
.premium-road .stop-place strong{
  display:block;
  font-size:18px;
  line-height:1.02;
  font-weight:800;
}
.premium-road .stop-place address{
  display:block;
  margin-top:2px;
  color:#edf3f8;
  font-size:13.6px;
  line-height:1.12;
  font-style:italic;
  font-weight:650;
}
.premium-road .mid-time{font-size:15px;color:#dce7ef}
.premium-road .mid-place strong{font-size:16px}

/* Premium feature icons: true icon font, no emoji, no cartoon tiles */
.advantages-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:1px;
  margin-top:9px;
  padding-top:0;
  overflow:hidden;
  border:1px solid rgba(205,220,234,.11);
  border-radius:16px;
  background:rgba(4,19,35,.34);
}
.advantage-cell{
  min-width:0;
  min-height:78px;
  border:0;
  border-radius:0;
  background:linear-gradient(180deg,rgba(13,44,73,.78),rgba(6,26,46,.84));
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:6px;
  padding:8px 4px;
  box-shadow:none;
}
.advantage-cell + .advantage-cell{border-left:1px solid rgba(207,222,235,.08)}
.advantage-cell:before{display:none}
.feature-symbol{
  position:relative;
  width:38px;
  height:38px;
  display:grid;
  place-items:center;
  border-radius:13px;
  background:linear-gradient(145deg,rgba(184,215,236,.12),rgba(255,255,255,.025));
  border:1px solid rgba(194,220,238,.12);
  color:#d9edf8;
  font-size:23px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04);
}
.tone-gold .feature-symbol{color:#e8ce7b}
.tone-coral .feature-symbol{color:#e9c6c4}
.tone-violet .feature-symbol{color:#c2b8ee}
.feature-symbol.crossed:after{
  content:"";
  position:absolute;
  width:32px;
  height:3px;
  border-radius:999px;
  background:#e85d5a;
  transform:rotate(-42deg);
  box-shadow:0 1px 0 rgba(0,0,0,.18);
}
.advantage-cell>span:last-child{
  color:#f0f5fa;
  font-size:8.2px;
  line-height:1.12;
  font-weight:700;
  text-align:center;
}

/* Driver plate and reviews */
.premium-driver{grid-template-columns:44px minmax(0,1fr) 18px;padding:12px 13px}
.driver-copy small{display:block}
.driver-chevron{color:#7890a7;font-size:11px}
.driver-profile-hero{padding:15px}
.driver-profile-top{display:flex;align-items:center;gap:12px}
.avatar.big{width:62px;height:62px;border-radius:20px;font-size:20px}
.driver-profile-top h1{margin:0 0 3px;font-size:21px}
.driver-profile-top p{margin:4px 0 0;color:#aebfd0;font-size:9.5px}
.driver-rating{color:#f1d77f;font-size:10.5px;font-weight:800}
.driver-profile-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-top:13px}
.driver-profile-stats div{padding:9px;border-radius:13px;background:rgba(5,24,44,.42);text-align:center}
.driver-profile-stats strong{display:block;font-size:17px}
.driver-profile-stats span{display:block;color:#aebfd0;font-size:8px;margin-top:2px}
.review-list{display:grid;gap:8px}
.review-card{padding:12px}
.review-head{display:flex;justify-content:space-between;align-items:center}
.review-head strong{font-size:11px}
.review-head span{font-size:9px;color:#f0d67c}
.review-card time{display:block;color:#8297ab;font-size:8px;margin-top:2px}
.review-card p{margin:7px 0 0;color:#d1dce6;font-size:10px;line-height:1.45}

/* Booking notice */
.connection-note{margin-top:10px}
.seat-caption{font-size:9px;margin-top:3px}

/* Messages */
.message-trip{margin-top:2px;color:#e3c978;font-size:8.5px;font-weight:700}
.message-main p{margin-top:4px}

/* My trips — passenger + driver in one feed */
.mytrip-tabs{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-bottom:12px}
.mytrip-tabs button{height:45px;border-radius:15px;border:1px solid rgba(197,215,230,.12);background:linear-gradient(180deg,#14395f,#0c2b4b);color:#b8c8d8;font-weight:800}
.mytrip-tabs button.active{color:#17263b;background:linear-gradient(160deg,#ffad5b,#f47a2a);border-color:#f89a45}
.mytrip-tabs b{display:inline-grid;place-items:center;min-width:20px;height:20px;margin-left:5px;border-radius:99px;background:rgba(12,31,49,.13)}
.mytrip-list{display:grid;gap:14px}
.mytrip-card{padding:12px;position:relative;overflow:hidden}
.mytrip-card:before{content:"";position:absolute;left:0;top:18px;bottom:18px;width:3px;border-radius:0 5px 5px 0}
.passenger-trip:before{background:#83c9ee}
.driver-trip:before{background:var(--gold)}
.mytrip-kicker{display:inline-flex;align-items:center;height:25px;padding:0 10px;border-radius:999px;font-size:8.5px;font-weight:800;text-transform:uppercase;letter-spacing:.35px}
.mytrip-kicker.passenger{background:rgba(131,201,238,.10);color:#bce4f8}
.mytrip-kicker.driver{background:rgba(244,122,42,.10);color:#f89a45}
.mytrip-summary{display:flex;justify-content:space-between;gap:10px;align-items:flex-start;margin:10px 0}
.mytrip-summary>div:first-child strong{display:block;font-size:14px}
.mytrip-summary>div:first-child>span{display:block;margin-top:4px;color:#c3d0dc;font-size:9.5px}
.mytrip-total{text-align:right}
.mytrip-total small{display:block;color:#9eb0c2;font-size:8px}
.mytrip-total b{display:block;margin-top:2px;color:#ff9c45;font-size:17px}
.driver-summary{align-items:center}
.published{color:#9ddab4!important}
.published i{margin-right:4px}
.btn.compact{height:38px;padding:0 11px;font-size:8.5px}
.embedded-trip{padding:11px;border-radius:18px;background:linear-gradient(150deg,rgba(24,66,104,.92),rgba(8,32,56,.96));border:1px solid rgba(204,219,232,.11)}
.mytrip-card .premium-driver{margin-top:9px;box-shadow:none}
.mytrip-actions{display:grid;gap:6px;margin-top:9px}
.mytrip-actions.three{grid-template-columns:repeat(3,1fr)}
.mytrip-actions .btn{height:41px;padding:0 7px;font-size:8.8px}
.btn.phone{background:linear-gradient(180deg,#214f72,#153a58);border:1px solid rgba(150,214,184,.17);color:#d8f1e2}
.btn.danger{background:linear-gradient(180deg,rgba(232,93,90,.19),rgba(109,43,47,.22));border:1px solid rgba(232,93,90,.22);color:#ffc9c5}
.passenger-title{margin-top:13px}
.passenger-booking{padding:10px;margin-top:8px;border-radius:16px;background:rgba(4,21,39,.44);border:1px solid rgba(198,215,229,.09)}
.passenger-line{display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:8px;align-items:center}
.avatar.small{width:38px;height:38px;border-radius:12px;font-size:10px}
.passenger-line strong{display:block;font-size:10.5px}
.passenger-line span{display:block;margin-top:2px;color:#aec0d1;font-size:8.5px}
.passenger-price{text-align:right}
.passenger-price b{display:block;color:#ff9c45;font-size:11px}
.passenger-price small{display:block;margin-top:2px;color:#9dafc0;font-size:8px}

/* Trip copy */
.trip-description{padding:13px;font-size:11px;line-height:1.55;color:#d6e0e9}

@media(max-width:370px){
  .home-route{grid-template-columns:46px minmax(0,1fr) 44px}
  .bottom-nav{padding-left:7px;padding-right:7px;gap:5px}
  .nav-item>i{font-size:25px}
  .premium-road{grid-template-columns:58px 24px minmax(0,1fr)!important;column-gap:6px!important}
  .premium-road .stop-time{font-size:18px}
  .premium-road .stop-place strong{font-size:16px}
  .premium-road .stop-place address{font-size:12.3px}
  .advantage-cell{min-height:73px;padding-left:2px;padding-right:2px}
  .feature-symbol{width:34px;height:34px;font-size:20px}
  .advantage-cell>span:last-child{font-size:7.5px}
  .mytrip-actions .btn{font-size:8px}
}


/* =========================
   H013 — ROUTE / PUBLISH / VEHICLES
   ========================= */

/* Selected passenger route: only city before pickup, full details only for passenger endpoints */
.passenger-route{padding:5px 0 2px}
.route-context{padding-left:96px}
.route-context span{display:block;color:#7890a7;font-size:10.5px;font-weight:700;letter-spacing:.08px}
.route-context-before{margin-bottom:5px}
.route-context-after{margin-top:6px}
.selected-route-row{display:grid;grid-template-columns:64px 26px minmax(0,1fr);column-gap:8px;align-items:center}
.selected-route-row time{font-size:20px;font-weight:800;line-height:1}
.selected-road{position:relative;align-self:stretch;display:flex;justify-content:center}
.selected-road .path-node{margin-top:2px}
.selected-road-line{position:absolute;top:18px;bottom:-5px;width:8px;border-radius:999px;background:linear-gradient(90deg,#091a2b 0 18%,#34495f 18% 82%,#091a2b 82%)}
.selected-road-line i{position:absolute;left:50%;top:4px;bottom:4px;width:1px;transform:translateX(-50%);background:repeating-linear-gradient(to bottom,#dec678 0 4px,transparent 4px 8px)}
.selected-place strong{display:block;font-size:18px;line-height:1.04}
.selected-place address{display:block;margin-top:2px;color:#edf3f8;font-size:13.5px;line-height:1.12;font-style:italic;font-weight:650}
.intermediate-toggle{width:calc(100% - 92px);margin:6px 0 7px 92px;min-height:36px;padding:0 12px;border:1px solid rgba(202,217,231,.10);border-radius:12px;background:rgba(3,20,37,.35);color:#9eb1c3;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:8px;text-align:left}
.intermediate-toggle b{font-size:18px;letter-spacing:2px;color:#d9c77f;line-height:1}
.intermediate-toggle span{font-size:9px;font-weight:700}
.intermediate-toggle i{font-size:9px;transition:transform .2s ease}
.intermediate-toggle.open i{transform:rotate(180deg)}
.intermediate-hidden{margin:0 0 7px 92px}
.intermediate-row{display:grid;grid-template-columns:48px 20px minmax(0,1fr);gap:7px;align-items:center;padding:7px 0;color:#c9d5df}
.intermediate-row + .intermediate-row{border-top:1px solid rgba(255,255,255,.06)}
.intermediate-row time{font-size:13px;font-weight:800}
.intermediate-row .path-node{width:12px;height:12px;border:2px solid #edf4f8}
.intermediate-row strong{display:block;font-size:13px}
.intermediate-row address{display:block;margin-top:2px;font-size:10.5px;font-style:italic;color:#b6c6d5}
.selected-segment-card .advantages-grid{margin-top:10px}

/* Vehicle photos */
.vehicle-trip-card{padding:12px}
.vehicle-trip-head{display:grid;grid-template-columns:44px minmax(0,1fr) 24px;gap:10px;align-items:center}
.vehicle-type-icon{width:44px;height:44px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(145deg,rgba(224,197,117,.15),rgba(255,255,255,.03));border:1px solid rgba(224,197,117,.18);color:#e8cf83;font-size:22px}
.vehicle-trip-head strong,.vehicle-profile-head strong{display:block;font-family:"Exo 2","Manrope",sans-serif;font-size:16px}
.vehicle-trip-head span,.vehicle-profile-head span{display:block;margin-top:3px;color:#aebfd0;font-size:9px}
.verified-photo{justify-self:end;color:#87c8a6;font-size:18px}
.vehicle-gallery{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:11px}
.vehicle-thumb{position:relative;aspect-ratio:1.55/1;border:1px solid rgba(205,220,233,.12);border-radius:14px;overflow:hidden;background:#081e34;padding:0}
.vehicle-thumb img{width:100%;height:100%;object-fit:cover}
.vehicle-thumb:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,rgba(2,14,25,.48))}
.vehicle-thumb>span{position:absolute;right:8px;bottom:7px;z-index:2;width:23px;height:23px;border-radius:8px;background:rgba(4,19,34,.78);display:grid;place-items:center;color:#fff;font-size:9px;font-weight:800}
.photo-modal{position:fixed;inset:0;z-index:120;background:rgba(2,8,15,.96);display:flex;align-items:center;justify-content:center;padding:18px}
.photo-modal[hidden]{display:none}
.photo-modal img{max-width:100%;max-height:88vh;border-radius:18px;box-shadow:0 24px 70px rgba(0,0,0,.5)}
.photo-modal-close{position:fixed;right:18px;top:max(18px,env(safe-area-inset-top));z-index:122;width:54px;height:54px;border-radius:18px;border:1px solid rgba(255,255,255,.20);background:rgba(9,24,39,.88);color:#fff;font-size:29px;display:grid;place-items:center;box-shadow:0 14px 32px rgba(0,0,0,.3)}

/* Publication layout */
.publish-page,.manage-page,.copy-page{padding-bottom:100px}
.premium-hint{margin-bottom:11px}
.publish-block{padding:13px;margin-bottom:11px}
.publish-heading{display:grid;grid-template-columns:32px minmax(0,1fr);gap:9px;align-items:center;margin-bottom:12px}
.publish-heading>span{width:32px;height:32px;border-radius:11px;display:grid;place-items:center;background:linear-gradient(160deg,#eedc9d,#ddbe68);color:#15273b;font-weight:900;font-size:12px}
.publish-heading strong{display:block;font-size:13px}
.publish-heading small{display:block;margin-top:2px;color:#9fb1c2;font-size:8.5px;line-height:1.35}
.route-editor{display:grid}
.route-point-editor{display:grid;grid-template-columns:30px minmax(0,1fr);gap:8px;position:relative}
.editor-road{position:relative;display:flex;justify-content:center}
.editor-road .path-node{margin-top:11px}
.editor-line{position:absolute;top:30px;bottom:-10px;width:7px;border-radius:999px;background:linear-gradient(90deg,#0a1a2a 0 18%,#34475b 18% 82%,#0a1a2a 82%)}
.editor-line i{position:absolute;left:50%;top:5px;bottom:5px;width:1px;transform:translateX(-50%);background:repeating-linear-gradient(to bottom,#dcc675 0 4px,transparent 4px 8px)}
.route-point-fields{padding:8px 0 13px}
.point-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:7px}
.point-title strong{font-size:10.5px;color:#e5edf4}
.point-remove{width:27px;height:27px;border:0;border-radius:9px;background:rgba(232,93,90,.12);color:#f2a7a1}
.route-point-fields label,.two-fields label{display:block}
.route-point-fields label>small,.two-fields label>small{display:block;margin:0 0 4px;color:#9eb1c2;font-size:8px;font-weight:700}
.route-point-fields input,.two-fields input{width:100%;height:42px;border-radius:12px;border:1px solid rgba(199,216,231,.12);background:#071f37;color:#f5f8fb;padding:0 11px;font-size:10.5px;outline:none}
.route-point-fields>label{margin-top:7px}
.two-fields{display:grid;grid-template-columns:1fr 1fr;gap:7px}
.add-route-point{margin-top:3px}

.segment-list{display:grid;gap:8px}
.segment-editor{padding:10px;border-radius:15px;background:linear-gradient(180deg,rgba(14,48,78,.72),rgba(6,27,48,.80));border:1px solid rgba(201,217,232,.10)}
.segment-name strong{display:block;font-size:10.5px}
.segment-name small{display:block;margin-top:2px;color:#91a5b7;font-size:8px}
.segment-price{position:relative;display:grid;grid-template-columns:1fr 25px;align-items:center;margin-top:8px}
.segment-price input{height:42px;border-radius:12px 0 0 12px;border:1px solid rgba(211,225,237,.12);border-right:0;background:#071e34;color:#f0d783;padding:0 10px;font-size:15px;font-weight:800}
.segment-price>span{height:42px;border-radius:0 12px 12px 0;border:1px solid rgba(211,225,237,.12);border-left:0;background:#071e34;display:grid;place-items:center;color:#d2bd7b;font-weight:800}
.segment-price.locked{grid-template-columns:1fr 25px 32px}
.segment-price.locked>i{height:42px;display:grid;place-items:center;color:#e5a39e}
.switch-row{display:grid;grid-template-columns:1fr 48px;gap:8px;align-items:center;margin-top:8px;color:#c9d5df;font-size:8.6px;font-weight:700}
.switch-row input{position:absolute;opacity:0;pointer-events:none}
.switch-row i{justify-self:end;width:45px;height:25px;border-radius:99px;background:#132d46;border:1px solid rgba(197,215,230,.12);position:relative;transition:.2s}
.switch-row i:after{content:"";position:absolute;width:19px;height:19px;left:3px;top:2px;border-radius:50%;background:#7890a6;transition:.2s}
.switch-row input:checked+i{background:rgba(244,122,42,.22);border-color:rgba(244,122,42,.34)}
.switch-row input:checked+i:after{left:21px;background:#f47a2a}
.switch-row.disabled{opacity:.45}
.segment-note,.segment-lock-note{display:flex;gap:7px;align-items:flex-start;margin-top:9px;color:#9fb2c4;font-size:8.3px;line-height:1.4}
.segment-note i{color:#85bad9;margin-top:1px}
.segment-lock-note{color:#e6aaa6}
.segment-lock-note i{color:#e85d5a}

.vehicle-choice-grid{display:grid;gap:7px}
.vehicle-choice{display:grid;grid-template-columns:40px minmax(0,1fr) 22px;gap:9px;align-items:center;padding:9px;border-radius:14px;border:1px solid rgba(197,215,230,.11);background:rgba(5,24,43,.46)}
.vehicle-choice input{display:none}
.vehicle-choice.selected{border-color:rgba(244,122,42,.32);background:linear-gradient(180deg,rgba(244,122,42,.09),rgba(8,29,51,.55))}
.vehicle-choice-icon{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:rgba(150,190,220,.09);color:#dce9f2;font-size:19px}
.vehicle-choice strong{display:block;font-size:10.5px}
.vehicle-choice small{display:block;margin-top:2px;color:#98abbc;font-size:8px}
.vehicle-choice>i{justify-self:end;color:#f47a2a}
.vehicle-limit-link{display:flex;align-items:center;gap:7px;margin-top:9px;color:#bdd0df;font-size:9px}
.vehicle-limit-link span{margin-left:auto;color:#f47a2a}
.compact-features .feature-option{min-height:58px}
.compact-features .feature-symbol{width:34px;height:34px;font-size:18px}
.publish-footer,.manage-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}

/* Manage trip */
.manage-status{padding:12px;display:flex;align-items:center;justify-content:space-between;gap:10px}
.manage-status strong,.manage-status small{display:block}
.manage-status strong{margin-top:5px;font-size:13px}
.manage-status small{margin-top:3px;color:#9fb1c2;font-size:8.5px}
.status-live{display:inline-flex;align-items:center;gap:5px;color:#a7d8bb;font-size:8.5px;font-weight:800}
.status-live i{width:7px;height:7px;border-radius:50%;background:#57c584;box-shadow:0 0 0 4px rgba(87,197,132,.10)}
.manage-route{padding:12px}
.inside-title{margin-top:0}
.full-route{display:grid}
.full-route-row{display:grid;grid-template-columns:48px 24px minmax(0,1fr);gap:7px;min-height:62px}
.full-route-row time{padding-top:4px;font-size:13px;font-weight:800}
.full-route-road{position:relative;display:flex;justify-content:center}
.full-route-road .path-node{margin-top:3px}
.full-road-line{position:absolute;top:19px;bottom:-3px;width:7px;border-radius:999px;background:linear-gradient(90deg,#0a1a2a 0 18%,#34475b 18% 82%,#0a1a2a 82%)}
.full-road-line i{position:absolute;left:50%;top:4px;bottom:4px;width:1px;transform:translateX(-50%);background:repeating-linear-gradient(to bottom,#dcc675 0 4px,transparent 4px 8px)}
.full-route-place strong{display:block;font-size:13px}
.full-route-place address{display:block;margin-top:2px;font-size:10px;color:#c5d1dc;font-style:italic}
.full-route-place small{display:block;margin-top:3px;color:#7f94a7;font-size:7.5px}
.manage-segments{gap:9px}
.manage-segment.pickup-passed{opacity:.62}
.locked-vehicle{display:grid;grid-template-columns:44px minmax(0,1fr) 22px;gap:10px;align-items:center;padding:11px}
.locked-vehicle strong,.locked-vehicle span{display:block}
.locked-vehicle strong{font-size:11px}
.locked-vehicle span{margin-top:3px;color:#96a9ba;font-size:8.2px}
.locked-vehicle>i{color:#f47a2a}

/* Copy */
.copy-modes{display:grid;gap:8px;margin-bottom:11px}
.copy-mode{display:grid;grid-template-columns:42px minmax(0,1fr) 22px;gap:9px;align-items:center;padding:11px;border-radius:16px;border:1px solid rgba(198,215,230,.12);background:linear-gradient(180deg,#14395f,#0c2b4a);color:#edf3f8;text-align:left}
.copy-mode.active{border-color:rgba(244,122,42,.34);background:linear-gradient(180deg,rgba(244,122,42,.12),rgba(13,43,70,.92))}
.copy-mode-icon{width:42px;height:42px;border-radius:13px;background:rgba(184,211,231,.08);display:grid;place-items:center;color:#e6ce84;font-size:19px}
.copy-mode strong{display:block;font-size:10.5px}
.copy-mode small{display:block;margin-top:3px;color:#9cafc0;font-size:8px;line-height:1.35}
.copy-mode>i{justify-self:end;color:#f47a2a}
.copy-time-card,.copy-preview{padding:12px;margin-bottom:10px}
.compact-hint{margin:10px 0 0}
.copy-route-preview{display:grid;gap:2px}
.copy-point{display:grid;grid-template-columns:50px 20px 1fr;gap:8px;align-items:center;min-height:42px}
.copy-point time{font-size:13px;font-weight:800}
.copy-point strong{font-size:11px}
.copy-point.intermediate.hidden-by-mode{display:none}

/* History */
.history-list{display:grid;gap:10px}
.history-card{padding:12px}
.history-head{display:flex;justify-content:space-between;gap:9px;align-items:flex-start}
.history-head strong,.history-head span{display:block}
.history-head strong{font-size:11.5px}
.history-head div>span{margin-top:3px;color:#95a8b9;font-size:8px}
.status.done{color:#a9c1d3;background:rgba(144,173,196,.08)}
.history-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:10px}
.history-meta div{padding:8px;border-radius:12px;background:rgba(5,23,41,.45)}
.history-meta small,.history-meta strong{display:block;text-align:center}
.history-meta small{color:#8fa2b3;font-size:7.5px}
.history-meta strong{margin-top:3px;font-size:10px}
.history-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:9px}
.history-actions .btn{font-size:7.8px;padding:0 7px}

/* Cars in profile */
.vehicle-list{display:grid;gap:10px}
.vehicle-profile-card{padding:12px}
.vehicle-profile-head{display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:9px;align-items:center}
.vehicle-profile-card .vehicle-gallery{margin-top:10px}
.vehicle-card-foot{display:flex;justify-content:space-between;align-items:center;margin-top:9px;color:#9fd2b4;font-size:8.5px}
.vehicle-card-foot i{margin-right:5px}
.vehicle-thumb.add-photo{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;color:#aebfd0;font-size:20px}
.vehicle-thumb.add-photo:after{display:none}
.vehicle-thumb.add-photo small{font-size:8px}
.limit-note{text-align:center;margin-top:8px;color:#90a4b5;font-size:8.5px}
.add-vehicle{margin-top:11px}

/* Tabs may be anchor now */
.mytrip-tabs a{height:45px;border-radius:15px;border:1px solid rgba(197,215,230,.12);background:linear-gradient(180deg,#14395f,#0c2b4b);color:#b8c8d8;font-weight:800;display:grid;place-items:center;font-size:10px}

@media(max-width:370px){
  .selected-route-row{grid-template-columns:57px 24px minmax(0,1fr);column-gap:6px}
  .route-context{padding-left:87px}
  .intermediate-toggle,.intermediate-hidden{margin-left:87px;width:calc(100% - 87px)}
  .selected-route-row time{font-size:18px}
  .selected-place strong{font-size:16px}
  .selected-place address{font-size:12.2px}
  .publish-footer,.manage-actions{grid-template-columns:1fr}
  .history-actions{grid-template-columns:1fr}
}


/* =========================
   H014 — compact My Trips + history + calendar
   ========================= */

.mytrips-page{padding-top:12px}
.mytrips-head{
  display:grid;
  grid-template-columns:46px 1fr 46px;
  align-items:center;
  gap:8px;
  margin-bottom:10px;
}
.mytrips-head h1{margin:0;text-align:center;font-size:20px;font-weight:800}
.mytrips-head p{margin:3px 0 0;text-align:center;color:#9fb2c4;font-size:9px}

.publish-cta{
  display:grid;
  grid-template-columns:44px minmax(0,1fr) 18px;
  gap:10px;
  align-items:center;
  margin-bottom:10px;
  padding:11px 13px;
  border-radius:18px;
  color:#13263d;
  background:linear-gradient(155deg,#f0e0a2,#e0c373 72%,#cfad50);
  border:1px solid rgba(255,244,202,.42);
  box-shadow:0 14px 28px rgba(224,195,115,.17),inset 0 1px 0 rgba(255,255,255,.42);
}
.publish-cta-icon{
  width:42px;height:42px;border-radius:14px;
  background:rgba(10,32,53,.10);
  display:grid;place-items:center;font-size:19px;
}
.publish-cta strong{display:block;font-size:12px;font-weight:900}
.publish-cta small{display:block;margin-top:2px;font-size:8.2px;font-weight:700;opacity:.72}
.publish-cta>i{justify-self:end}

.passenger-booking-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:10px;
  margin:9px 0 10px;
}
.passenger-booking-head>div:first-child strong{
  display:block;
  font-size:14px;
  line-height:1.15;
}
.passenger-booking-head time{
  display:block;
  margin-top:5px;
  color:#f0d784;
  font-size:11px;
  font-weight:800;
}
.driver-trip-top{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:8px;
  margin-bottom:9px;
}
.driver-trip-top time{
  display:block;
  margin-top:6px;
  color:#f0d784;
  font-size:11px;
  font-weight:800;
}
.driver-compact{padding:11px}
.compact-embedded{padding:0!important;background:transparent!important;border:0!important}
.compact-trip-card{
  padding:10px;
  border-radius:18px;
  background:
    radial-gradient(circle at 100% 0%,rgba(244,122,42,.07),transparent 30%),
    linear-gradient(150deg,#17466f,#102f50);
  border:1px solid rgba(194,212,228,.15);
}
.compact-trip-top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-bottom:9px;
}
.compact-car{display:flex;align-items:center;gap:7px;min-width:0}
.compact-car strong{
  font-family:"Exo 2","Manrope",sans-serif;
  font-size:14px;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.compact-price{
  flex:0 0 auto;
  padding:6px 11px;
  border-radius:13px;
  color:#17263b;
  background:linear-gradient(155deg,#ffad5b,#f47a2a);
  font-size:13px;
  font-weight:900;
}
.compact-route{display:grid;gap:2px}
.compact-stop{
  display:grid;
  grid-template-columns:47px 18px minmax(0,1fr);
  gap:7px;
  align-items:center;
}
.compact-stop time{font-size:15px;font-weight:900}
.compact-stop .path-node{width:12px;height:12px;border-width:2px}
.compact-stop strong{display:block;font-size:13px}
.compact-stop address{
  display:block;
  margin-top:1px;
  color:#c5d2de;
  font-size:9.8px;
  line-height:1.15;
  font-style:italic;
}
.compact-middle{
  margin:4px 0 4px 54px;
  display:flex;
  align-items:center;
  gap:8px;
  color:#91a6b9;
}
.compact-dots{
  color:#d9c577;
  font-size:17px;
  letter-spacing:3px;
  line-height:1;
}
.compact-middle small{font-size:8px;font-weight:700}
.driver-passengers-head{
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  margin:11px 2px 5px;
}
.driver-passengers-head strong{font-size:11px}
.driver-passengers-head small{color:#8ea2b5;font-size:8px}
.passenger-booking-compact{padding:8px;margin-top:7px}
.passenger-plate{
  display:grid;
  grid-template-columns:38px minmax(0,1fr) auto 12px;
  gap:8px;
  align-items:center;
}
.passenger-plate-main{min-width:0}
.passenger-plate-main strong{
  display:block;
  color:#f4f7fa;
  font-size:11.4px;
  line-height:1.15;
  font-weight:900;
}
.passenger-plate-main strong span{color:#f0d784}
.passenger-plate-main small{
  display:block;
  margin-top:4px;
  color:#a7b8c8;
  font-size:8.8px;
  font-weight:700;
}
.passenger-plate-total{
  color:#dce7f0;
  font-size:9.5px;
  font-weight:800;
  white-space:nowrap;
}
.passenger-profile-chevron{font-size:8px;color:#70879a}

/* Driver trips never need feature strip in My Trips */
.driver-trip .advantages-grid{display:none}

/* Driver profile: standard clickable passenger plates */
.passenger-review-list{display:grid;gap:8px}
.passenger-review{position:relative;padding:10px}
.passenger-review-person{
  display:grid;
  grid-template-columns:40px minmax(0,1fr) 14px;
  gap:8px;
  align-items:center;
}
.passenger-review-person strong{display:block;font-size:10.5px}
.passenger-review-person small{display:block;margin-top:2px;color:#8fa4b6;font-size:7.8px}
.passenger-review-person>i{justify-self:end;color:#71889c;font-size:8px}
.passenger-review .review-rating{
  position:absolute;
  top:13px;
  right:31px;
  color:#e9ce7c;
  font-size:8.5px;
  font-weight:800;
}
.passenger-review p{
  margin:8px 0 0 48px;
  color:#d1dce5;
  font-size:9.5px;
  line-height:1.42;
}

/* Trip page: date/time are the visual focus */
.trip-focus-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:10px;
  margin-bottom:10px;
}
.trip-date-strong{
  color:#f0d784;
  font-size:11px;
  font-weight:800;
}
.trip-time-strong{
  margin-top:3px;
  color:#fff;
  font-size:20px;
  font-weight:900;
  letter-spacing:-.35px;
}

/* History uses standard compact trip cards */
.history-trip-card{position:relative;padding:11px}
.history-trip-meta{
  display:flex;
  align-items:center;
  gap:8px;
  margin-bottom:9px;
  padding-right:130px;
}
.history-trip-meta time{color:#8fa3b6;font-size:8px}
.history-copy-actions{
  position:absolute;
  right:9px;
  top:8px;
  z-index:3;
  display:flex;
  gap:5px;
}
.history-copy-actions a{
  min-height:28px;
  padding:0 8px;
  border-radius:9px;
  display:inline-flex;
  align-items:center;
  gap:4px;
  color:#f0d784;
  background:rgba(244,122,42,.08);
  border:1px solid rgba(244,122,42,.16);
  font-size:7px;
  font-weight:800;
}

/* Calendar for My Trips */
.calendar-modal{
  position:fixed;
  inset:0;
  z-index:100;
  display:flex;
  align-items:flex-end;
  background:rgba(1,8,15,.72);
  backdrop-filter:blur(8px);
}
.calendar-modal[hidden]{display:none}
.calendar-sheet{
  width:min(100%,430px);
  margin:0 auto;
  padding:15px 15px calc(18px + env(safe-area-inset-bottom));
  border-radius:24px 24px 0 0;
  background:linear-gradient(180deg,#153c62,#071d33);
  border:1px solid rgba(202,219,233,.14);
  box-shadow:0 -20px 60px rgba(0,0,0,.36);
}
.calendar-sheet-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  margin-bottom:12px;
}
.calendar-sheet-head strong{display:block;font-size:14px}
.calendar-sheet-head small{display:block;margin-top:2px;color:#91a5b8;font-size:8px}
.calendar-sheet-head button{
  width:38px;height:38px;border-radius:12px;
  border:1px solid rgba(204,220,234,.12);
  background:#0a2947;color:#fff;
}
.calendar-week,.calendar-grid{
  display:grid;
  grid-template-columns:repeat(7,1fr);
  gap:5px;
}
.calendar-week span{
  padding:4px 0;
  text-align:center;
  color:#8297aa;
  font-size:8px;
  font-weight:800;
}
.calendar-grid button,.calendar-grid .empty{
  position:relative;
  aspect-ratio:1;
  border-radius:11px;
}
.calendar-grid button{
  border:1px solid rgba(193,211,227,.09);
  background:rgba(5,24,43,.52);
  color:#dfe8ef;
  font-size:10px;
  font-weight:800;
}
.calendar-grid button.has-trip{
  color:#17263b;
  background:linear-gradient(155deg,#ffad5b,#f47a2a);
  border-color:#ffad5b;
}
.calendar-grid button.has-trip i{
  position:absolute;
  width:5px;height:5px;border-radius:50%;
  left:50%;bottom:4px;transform:translateX(-50%);
  background:#e85d5a;
}
.calendar-help{
  display:flex;align-items:center;gap:7px;
  margin-top:10px;
  color:#93a7b9;font-size:8px;
}
.calendar-dot{width:6px;height:6px;border-radius:50%;background:#e85d5a}

/* True child seat icon from MDI */
.feature-symbol .mdi-car-child-seat{
  font-size:29px;
  line-height:1;
}

@media(max-width:370px){
  .passenger-booking-head{gap:6px}
  .passenger-booking-head>div:first-child strong{font-size:12.5px}
  .passenger-booking-head time{font-size:10px}
  .compact-car strong{font-size:12.5px}
  .compact-price{font-size:11.5px;padding:6px 9px}
  .passenger-plate-main strong{font-size:10.2px}
  .history-copy-actions a{padding:0 6px;font-size:6.5px}
}

.calendar-highlight{animation:calendarFlash 1.35s ease}
@keyframes calendarFlash{
  0%,100%{box-shadow:0 16px 34px rgba(0,0,0,.26)}
  35%{box-shadow:0 0 0 2px rgba(244,122,42,.72),0 18px 38px rgba(244,122,42,.16)}
}


/* =========================
   H015 — richer passenger card
   ========================= */

/* Passenger card: more depth and stronger premium contrast */
.mytrip-card.passenger-trip{
  background:
    radial-gradient(circle at 100% 0%,rgba(229,197,112,.11),transparent 30%),
    radial-gradient(circle at 0% 100%,rgba(76,170,229,.10),transparent 32%),
    linear-gradient(155deg,#1a4d79 0%,#123b63 48%,#0b2c4d 100%);
  border-color:rgba(210,224,237,.20);
  box-shadow:0 18px 38px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.045);
}
.mytrip-card.passenger-trip:before{
  width:4px;
  background:linear-gradient(180deg,#8fd9ff 0%,#5db5e9 42%,#f47a2a 100%);
}

/* Keep requested top block intact, but strengthen hierarchy */
.passenger-booking-head{
  padding:2px 2px 3px;
}
.passenger-booking-head>div:first-child strong{
  color:#ffffff;
}
.passenger-booking-head time{
  color:#f0d784;
  text-shadow:0 2px 10px rgba(244,122,42,.08);
}
.mytrip-total b{
  color:#f0d784;
  font-size:20px;
  letter-spacing:.2px;
}

/* Route-only card: no duplicate vehicle name / duplicate price */
.route-only-card{
  padding:12px 11px;
  background:
    radial-gradient(circle at 92% 8%,rgba(119,196,239,.08),transparent 30%),
    linear-gradient(150deg,#173f67 0%,#103455 58%,#0b2947 100%);
  border:1px solid rgba(181,213,235,.18);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035);
}
.route-only-card .compact-route{gap:3px}
.route-only-card .compact-stop time{
  color:#f7fbff;
  font-size:16px;
}
.route-only-card .compact-stop strong{
  color:#ffffff;
  font-size:14px;
}
.route-only-card .compact-stop address{
  color:#d6e1ea;
  font-size:10.3px;
}
.route-only-card .compact-dots{
  color:#e4ca77;
}
.route-only-card .compact-middle small{
  color:#9fb3c5;
}

/* Driver plate is a separate saturated layer */
.passenger-trip .premium-driver{
  background:
    linear-gradient(145deg,rgba(30,75,114,.98),rgba(13,45,73,.98));
  border-color:rgba(166,210,237,.20);
  box-shadow:0 12px 26px rgba(0,0,0,.16),inset 0 1px 0 rgba(255,255,255,.035);
}

/* Vehicle plate under driver — same visual system as trip page */
.mytrip-vehicle-card{
  margin-top:9px;
  padding:11px;
  background:
    radial-gradient(circle at 100% 0%,rgba(244,122,42,.09),transparent 34%),
    linear-gradient(150deg,#153e64,#0d2e4e);
  border-color:rgba(203,219,232,.16);
  box-shadow:0 12px 26px rgba(0,0,0,.14),inset 0 1px 0 rgba(255,255,255,.03);
}
.mytrip-vehicle-card .vehicle-trip-head{
  grid-template-columns:40px minmax(0,1fr) 22px;
}
.mytrip-vehicle-card .vehicle-type-icon{
  width:40px;height:40px;border-radius:13px;
}
.mytrip-vehicle-card .vehicle-trip-head strong{
  font-size:14px;
}
.mytrip-vehicle-card .vehicle-gallery{
  gap:7px;
  margin-top:9px;
}
.mytrip-vehicle-card .vehicle-thumb{
  border-radius:12px;
  box-shadow:0 9px 18px rgba(0,0,0,.15);
}

/* Buttons get clearer color coding without becoming loud */
.passenger-trip .mytrip-actions .phone{
  background:linear-gradient(180deg,#236f9e,#174b70);
  border-color:rgba(116,207,255,.30);
  box-shadow:0 8px 18px rgba(42,167,244,.10);
}
.passenger-trip .mytrip-actions .ghost{
  background:linear-gradient(180deg,#195480,#103958);
  border-color:rgba(116,207,255,.24);
  box-shadow:0 8px 18px rgba(42,167,244,.07);
}
.passenger-trip .mytrip-actions .danger{
  background:linear-gradient(180deg,rgba(244,122,42,.28),rgba(116,48,37,.34));
  border-color:rgba(244,122,42,.34);
  color:#ffd5c0;
  box-shadow:0 8px 18px rgba(244,122,42,.08);
}

/* Slightly more colorful section separators */
.passenger-route-block{
  position:relative;
}
.passenger-route-block:before{
  content:"";
  position:absolute;
  left:14px;right:14px;top:0;height:1px;
  background:linear-gradient(90deg,transparent,#6abde9 32%,#f47a2a 68%,transparent);
  opacity:.6;
}

@media(max-width:370px){
  .mytrip-total b{font-size:18px}
  .mytrip-vehicle-card .vehicle-trip-head strong{font-size:13px}
}


/* =========================
   H016 — clean create trip + obvious copy
   ========================= */

.copy-completed-trip-cta{
  display:grid;
  grid-template-columns:44px minmax(0,1fr) 18px;
  gap:10px;
  align-items:center;
  margin-bottom:10px;
  padding:11px 13px;
  border-radius:18px;
  background:
    radial-gradient(circle at 100% 0%,rgba(232,93,90,.10),transparent 30%),
    linear-gradient(150deg,#173f67,#0d2e4e);
  border:1px solid rgba(244,122,42,.22);
  box-shadow:0 14px 28px rgba(0,0,0,.18),inset 0 1px 0 rgba(255,255,255,.035);
}
.copy-completed-trip-cta .copy-completed-icon{
  width:42px;height:42px;
  border-radius:14px;
  display:grid;place-items:center;
  color:#17263b;
  background:linear-gradient(155deg,#ffad5b,#f47a2a);
  font-size:18px;
  box-shadow:0 9px 18px rgba(244,122,42,.16);
}
.copy-completed-trip-cta strong{display:block;font-size:11px;color:#fff}
.copy-completed-trip-cta small{
  display:block;margin-top:3px;
  color:#aebfd0;font-size:8px;line-height:1.35
}
.copy-completed-trip-cta>i{justify-self:end;color:#d9c77e;font-size:9px}

.segment-empty{
  min-height:118px;
  padding:16px 14px;
  border-radius:16px;
  background:linear-gradient(180deg,rgba(5,25,45,.52),rgba(5,22,40,.72));
  border:1px dashed rgba(180,204,225,.16);
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
}
.segment-empty>i{font-size:24px;color:#d9c77e;margin-bottom:7px}
.segment-empty strong{font-size:10.5px}
.segment-empty span{
  display:block;max-width:290px;margin-top:4px;
  color:#91a5b7;font-size:8px;line-height:1.45
}

/* bright copy action on every history card */
.history-trip-card{padding-top:50px}
.history-copy-icon{
  position:absolute;
  right:10px;
  top:9px;
  z-index:4;
  min-width:102px;
  height:32px;
  padding:0 11px;
  border-radius:11px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  color:#17263b;
  background:linear-gradient(155deg,#f2e2a4,#e0c36f);
  border:1px solid rgba(255,244,202,.48);
  box-shadow:0 9px 18px rgba(244,122,42,.18),inset 0 1px 0 rgba(255,255,255,.40);
  font-size:8px;
  font-weight:900;
}
.history-copy-icon i{font-size:13px}
.history-copy-actions{
  top:9px;
  right:120px;
}
.history-trip-meta{
  padding-right:0;
  margin-top:-31px;
  margin-bottom:10px;
}
.history-trip-card:nth-child(2) .history-trip-meta{
  padding-right:112px;
}

@media(max-width:370px){
  .copy-completed-trip-cta{grid-template-columns:40px minmax(0,1fr) 14px;padding:10px}
  .copy-completed-trip-cta .copy-completed-icon{width:38px;height:38px}
  .history-copy-icon{min-width:94px;padding:0 9px}
  .history-copy-actions{right:111px}
  .history-copy-actions a{font-size:6px;padding:0 5px}
}

/* H019 — live ERA TAXI feed */
.date-cards a.date-card{text-decoration:none;color:inherit}
.era-feed-note{display:flex;align-items:center;gap:7px;margin:4px 2px 10px;color:#9fb2c5;font-size:9px;font-weight:700}
.era-feed-note i{color:#dcc67b}
.era-state-card{margin-top:10px;text-align:center;padding:22px 16px}
.era-state-card .era-state-icon{width:44px;height:44px;border-radius:15px;margin:0 auto 10px;display:grid;place-items:center;background:rgba(244,122,42,.12);color:#dec77b;font-size:18px}
.era-state-card strong{display:block;font-size:13px;color:#fff}
.era-state-card p{margin:6px auto 0;max-width:310px;color:#95a9bb;font-size:9px;line-height:1.5}
.era-source-chip{align-self:center;padding:6px 8px;border-radius:9px;background:rgba(244,122,42,.13);border:1px solid rgba(244,122,42,.25);color:#e7cf82;font-size:8px;font-weight:900;white-space:nowrap}
.era-live-status{display:flex;align-items:center;gap:10px;margin-top:10px}
.era-live-dot{width:9px;height:9px;border-radius:50%;background:#7dd3a6;box-shadow:0 0 0 5px rgba(125,211,166,.10)}
.era-live-status strong,.era-live-status small{display:block}
.era-live-status strong{font-size:10px;color:#fff}.era-live-status small{margin-top:2px;color:#91a5b7;font-size:8px}
.btn.disabled,.btn:disabled{opacity:.55;cursor:not-allowed;pointer-events:none}

/* =========================
   H020F-r2 — vehicle mapping + final trip polish + working home search
   ========================= */
.local-time-banner{
  min-height:30px;
  margin:-1px 0 10px;
  padding:5px 10px;
  border-radius:11px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  white-space:nowrap;
  color:#d9e4ee;
  background:linear-gradient(180deg,rgba(17,48,78,.92),rgba(9,34,58,.94));
  border:1px solid rgba(244,122,42,.28);
  box-shadow:inset 3px 0 0 rgba(244,122,42,.82),0 7px 16px rgba(0,0,0,.12);
  font:600 12px/1.1 "Manrope",sans-serif;
}
.local-time-banner i{color:#e5cd80;font-size:12px}
.local-time-line{
  margin:8px 0 9px;
  text-align:center;
  white-space:nowrap;
  color:#b9c8d6;
  font:600 12px/1.15 "Manrope",sans-serif;
}
.trip-route-wrap{position:relative}
.trip-date-inline{
  margin:-1px 0 7px;
  color:#e7d083;
  font:700 11px/1.2 "Manrope",sans-serif;
}
.trip-vehicle-head{margin-bottom:5px!important}

/* Duration stays exactly between departure and arrival, below it — “в пути”. */
.premium-road .route-duration-center,
.route-duration-pill{
  position:absolute;
  z-index:4;
  left:0;
  top:50%;
  width:64px;
  transform:translateY(-50%);
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  pointer-events:none;
  color:#f2f6fa;
  text-align:center;
  white-space:nowrap;
  font-family:"Manrope",sans-serif;
  text-shadow:0 2px 8px rgba(0,0,0,.36);
}
.premium-road .route-duration-center strong,
.route-duration-pill strong{
  display:block;
  font-size:14px;
  line-height:1;
  font-weight:800;
  letter-spacing:-.15px;
}
.premium-road .route-duration-center span,
.route-duration-pill span{
  display:block;
  margin-top:3px;
  color:#9eb1c3;
  font-size:9px;
  line-height:1;
  font-weight:600;
}
.premium-road .duration-slot{display:block;min-height:28px}
.premium-road>.duration:not(.route-duration-center){display:none}

/* Dynamic ERA vehicle plate */
.era-dynamic-vehicle{margin-top:0}
.era-dynamic-vehicle .vehicle-trip-head>div{min-width:0}
.era-dynamic-vehicle .vehicle-trip-head strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.vehicle-photo-empty{
  margin-top:9px;
  min-height:62px;
  border-radius:13px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  color:#8fa5b7;
  background:rgba(5,24,44,.50);
  border:1px dashed rgba(180,204,223,.16);
  font-size:9px;
  font-weight:650;
}
.vehicle-photo-empty i{color:#d9c67a;font-size:15px}

/* Real home search */
.home-live-search .route-copy{min-width:0;width:100%}
.home-city-input{
  display:block;
  width:100%;
  min-width:0;
  margin-top:1px;
  padding:0;
  border:0;
  outline:0;
  background:transparent;
  color:#fff;
  caret-color:#e5cc7e;
  font:800 18px/1.2 "Manrope",sans-serif;
  appearance:none;
}
.home-city-input::placeholder{color:#8095a8;font-weight:650}
.home-date-field{overflow:hidden;cursor:pointer}
.home-date-copy{min-width:0}
.home-date-input{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  opacity:.01;
  cursor:pointer;
  color-scheme:dark;
  z-index:3;
}
.home-date-input::-webkit-calendar-picker-indicator{position:absolute;inset:0;width:100%;height:100%;cursor:pointer}
.home-popular-raised{margin-top:9px}
.home-road-after-popular{margin-top:12px;height:178px}

/* Vehicle mapping admin */
.era-vehicle-admin .vehicle-type-icon{flex:0 0 auto}
.era-car-map input[type=file]{font-size:9px}

@media(max-width:370px){
  .local-time-banner{font-size:11px;padding-left:7px;padding-right:7px;gap:5px}
  .local-time-line{font-size:11px;letter-spacing:-.12px}
  .premium-road .route-duration-center,.route-duration-pill{width:58px}
  .premium-road .route-duration-center strong,.route-duration-pill strong{font-size:13px}
  .home-city-input{font-size:17px}
}


/* H021A production/admin */
.admin-tabs .admin-logout{margin-left:auto;color:#f0b1b1;border-color:rgba(232,93,90,.18)}
.admin-live-note{display:flex;gap:8px;align-items:flex-start;padding:11px 12px;border-radius:14px;background:rgba(244,122,42,.07);border:1px solid rgba(244,122,42,.16);color:#c8d4df;font-size:9px;line-height:1.45}
.admin-live-note i{color:#f47a2a;margin-top:2px}
.admin-empty{padding:24px 16px;text-align:center;color:#9fb1c3}
.admin-empty i{display:block;font-size:28px;color:#a8cbe0;margin-bottom:9px}
.booking-live-success{padding:15px;margin-bottom:12px;border-color:rgba(113,201,147,.26);background:linear-gradient(160deg,rgba(39,105,71,.30),rgba(12,49,42,.42))}
.booking-live-success strong{display:block;font-size:17px;margin-bottom:5px;color:#c9f3d8}
.booking-live-success p{margin:0;color:#abc8bb;font-size:10px;line-height:1.5}
.booking-code{display:inline-flex;margin-top:9px;padding:7px 10px;border-radius:999px;background:rgba(255,255,255,.07);font-weight:800;letter-spacing:.04em}
.admin-booking-card{display:grid;gap:8px;padding:12px}
.admin-booking-head{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}
.admin-booking-head strong{font-size:12px}
.admin-booking-meta{display:flex;flex-wrap:wrap;gap:6px}
.admin-booking-meta span{padding:5px 8px;border-radius:999px;background:rgba(255,255,255,.05);font-size:8px;color:#b5c7d7}
.admin-booking-actions{display:flex;flex-wrap:wrap;gap:6px}
.admin-booking-actions button{height:34px;padding:0 10px;border-radius:11px;border:1px solid rgba(255,255,255,.10);background:#12385e;color:#dbe8f2;font:700 8.5px Manrope,sans-serif}
.admin-booking-actions button.danger{background:rgba(119,35,47,.52);color:#ffd8dd}
.admin-user-row{grid-template-columns:minmax(0,1.5fr) auto}
.admin-trip-source{display:flex;gap:6px;align-items:center;color:#9fb1c3;font-size:8px}
@media(max-width:520px){
  .admin-booking-head{display:block}
  .admin-booking-head .right{margin-top:5px}
}


/* H021A2 publish entry + admin-only nav */
.publish-trip-plus{position:absolute;right:3px;top:17px;width:46px;height:46px;border-radius:50%;border:1px solid rgba(244,122,42,.42);background:linear-gradient(180deg,rgba(29,70,111,.96),rgba(10,39,68,.98));color:var(--gold2);display:grid;place-items:center;font-size:22px;box-shadow:0 10px 24px rgba(0,0,0,.24),inset 0 1px 0 rgba(255,255,255,.08);z-index:4}.publish-trip-plus:active{transform:scale(.96)}
.publish-trip-sheet[hidden]{display:none!important}.publish-trip-sheet{position:fixed;inset:0;z-index:120;display:flex;align-items:flex-end;justify-content:center;background:rgba(1,9,18,.68);backdrop-filter:blur(5px);padding:16px 12px calc(12px + env(safe-area-inset-bottom))}.publish-trip-sheet-card{position:relative;width:min(100%,430px);padding:22px 18px 18px;border-radius:24px 24px 18px 18px;background:linear-gradient(180deg,#153d63,#0a2745);border:1px solid rgba(205,222,236,.17);box-shadow:0 -18px 48px rgba(0,0,0,.42);text-align:center}.publish-trip-sheet-close{position:absolute;right:12px;top:12px;width:36px;height:36px;border-radius:50%;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.05);color:#dce8f4;font-size:16px}.publish-trip-sheet-icon{width:50px;height:50px;margin:0 auto 10px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(180deg,var(--gold2),var(--gold));color:#102942;font-size:22px;box-shadow:0 10px 24px rgba(244,122,42,.18)}.publish-trip-sheet-card h2{margin:0;font-size:19px;line-height:1.25}.publish-trip-sheet-card>p{margin:8px auto 0;color:#cfdae5;font-size:12px;line-height:1.45;max-width:330px}.publish-trip-sheet-card .publish-trip-free{color:#ffb15d;font-weight:800;margin-top:10px}.publish-trip-sheet-action{margin-top:15px}.publish-sheet-open{overflow:hidden}.bottom-nav.has-admin{grid-template-columns:repeat(5,1fr);gap:5px}.bottom-nav.has-admin .nav-item{font-size:8.2px}.bottom-nav.has-admin .nav-item>i{font-size:24px}
@media(max-width:370px){.publish-trip-plus{right:0;width:43px;height:43px}.bottom-nav.has-admin{padding-left:5px;padding-right:5px;gap:4px}.bottom-nav.has-admin .nav-item{font-size:7.7px}.bottom-nav.has-admin .nav-item>i{font-size:22px}}


/* H021C — confirmed booking state + approved passenger trips */
.booked-state-button{
  background:linear-gradient(145deg,rgba(71,153,111,.82),rgba(31,99,79,.92))!important;
  border:1px solid rgba(151,229,185,.28)!important;
  color:#d9f7e6!important;
  box-shadow:0 12px 26px rgba(13,61,43,.22),inset 0 1px 0 rgba(255,255,255,.08)!important;
  opacity:1!important;
  cursor:default!important;
}
.booked-state-button i{color:#b9efcf}
.booking-seat-locked{grid-template-columns:1fr}
.booking-seat-confirmed{display:flex;align-items:center;gap:10px}
.booking-seat-check,.mytrip-booking-check{
  width:34px;height:34px;flex:0 0 34px;border-radius:50%;
  display:grid;place-items:center;background:rgba(116,214,156,.14);
  border:1px solid rgba(139,230,177,.25);color:#bcefd0
}
.booking-confirmed-note{border-color:rgba(113,201,147,.18);background:rgba(83,164,116,.08)}

.premium-mytrip-list{gap:20px}
.mytrip-premium-item{display:block}
.mytrip-booking-summary{
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  padding:13px 14px;margin-bottom:9px;
  background:
    radial-gradient(circle at 100% 0%,rgba(244,122,42,.12),transparent 38%),
    linear-gradient(150deg,#194c77,#0e3458);
  border-color:rgba(218,224,221,.18)
}
.mytrip-booking-copy{display:flex;align-items:center;gap:10px;min-width:0}
.mytrip-booking-copy strong{display:block;font-size:14px;color:#fff;line-height:1.2}
.mytrip-booking-copy small{display:block;margin-top:4px;color:#bdd0df;font-size:9px}
.mytrip-booking-summary .mytrip-total{text-align:right;flex:0 0 auto}
.mytrip-booking-summary .mytrip-total b{display:block;font-size:21px;color:#ff9c45;white-space:nowrap}
.mytrip-booking-summary .mytrip-total span{display:block;margin-top:1px;font-size:8px;color:#b8c7d5}
.mytrip-route-card{margin:0}
.mytrip-section-title{margin-top:11px}
.premium-mytrip-actions{grid-template-columns:repeat(3,minmax(0,1fr));margin:11px 0 4px}
.premium-mytrip-actions .btn,.premium-mytrip-actions>span.btn{
  min-width:0;height:52px;display:flex;align-items:center;justify-content:center;gap:7px;
  padding:0 8px;text-decoration:none;border-radius:16px;font-size:10px;font-weight:850
}
.premium-mytrip-actions .btn i,.premium-mytrip-actions>span.btn i{font-size:15px}
.premium-mytrip-actions .btn span{white-space:nowrap}
.mytrip-cancel-note{text-align:center;color:#8499ab;font-size:8px;margin:6px 0 2px}
.mytrip-premium-item+.mytrip-premium-item{
  padding-top:20px;border-top:1px solid rgba(244,122,42,.12)
}
@media(max-width:370px){
  .mytrip-booking-summary{padding:11px}
  .mytrip-booking-copy strong{font-size:12.5px}
  .mytrip-booking-summary .mytrip-total b{font-size:18px}
  .premium-mytrip-actions .btn,.premium-mytrip-actions>span.btn{font-size:9px;padding-left:4px;padding-right:4px}
}


/* HOPCAR_H021E_R5_MYTRIPS_MOBILE_START */
.premium-mytrips-page{
  width:100%;
  max-width:100%;
  padding-left:max(12px,env(safe-area-inset-left));
  padding-right:max(12px,env(safe-area-inset-right))
}
.premium-mytrip-list,.mytrip-premium-item,.mytrip-booking-summary,.mytrip-route-card,
.mytrip-route-card *,.premium-mytrip-actions,.premium-mytrip-actions>*{min-width:0;max-width:100%}
.mytrip-route-card{
  width:100%;
  padding-top:17px;
  padding-bottom:16px;
}
.mytrip-route-card .passenger-route{padding-top:10px;padding-bottom:8px}
.mytrip-route-card .selected-route-row{min-height:55px}
.mytrip-route-card .route-context{max-width:100%;overflow:hidden}
.mytrip-route-card .local-time-line{white-space:normal;line-height:1.35}
.mytrip-route-card .advantages-grid{width:100%}
.premium-mytrip-actions{width:100%;gap:7px}
.premium-mytrip-actions .btn,.premium-mytrip-actions>span.btn{
  width:100%;
  max-width:none;
  border:0;
  font-family:inherit;
  cursor:pointer
}
.hop-mytrip-flash{
  margin:0 0 10px;padding:11px 13px;border-radius:15px;
  border:1px solid rgba(240,112,112,.24);
  background:rgba(119,34,42,.35);color:#ffd6d8;font-size:11px;font-weight:800;text-align:center
}
.hop-mytrip-flash.ok{
  border-color:rgba(123,220,164,.24);
  background:rgba(48,126,83,.24);color:#c9f4da
}
.mytrip-premium-item.is-cancelled{opacity:.9}
.mytrip-premium-item.is-cancelled .mytrip-booking-summary{
  border-color:rgba(238,101,109,.30);
  background:linear-gradient(150deg,#60303b,#2a1c2b)
}
.mytrip-premium-item.is-cancelled .mytrip-booking-check{
  background:rgba(232,93,90,.15);border-color:rgba(232,93,90,.28);color:#ffc4c2
}
.hop-cancel-sheet[hidden]{display:none!important}
.hop-cancel-sheet{
  position:fixed;inset:0;z-index:180;display:flex;align-items:flex-end;justify-content:center;
  padding:16px 12px calc(14px + env(safe-area-inset-bottom));
  background:rgba(1,9,18,.72);backdrop-filter:blur(7px)
}
.hop-cancel-sheet-card{
  position:relative;width:min(100%,430px);padding:23px 17px 17px;border-radius:25px 25px 19px 19px;
  background:linear-gradient(160deg,#173e64,#0b2948);border:1px solid rgba(218,230,239,.16);
  box-shadow:0 28px 70px rgba(0,0,0,.48);text-align:center
}
.hop-cancel-sheet-close{
  position:absolute;right:11px;top:10px;width:36px;height:36px;border:0;border-radius:12px;
  background:rgba(255,255,255,.07);color:#dce7ef;font-size:16px
}
.hop-cancel-sheet-icon{
  width:50px;height:50px;margin:2px auto 11px;border-radius:17px;display:grid;place-items:center;
  background:rgba(232,93,90,.14);border:1px solid rgba(232,93,90,.25);color:#ffb2ae;font-size:21px
}
.hop-cancel-sheet-card>strong{display:block;font-size:18px}
.hop-cancel-sheet-card>p{margin:8px auto 15px;max-width:310px;color:#b9c9d6;font-size:11px;line-height:1.45}
#hopCancelForm{display:grid;gap:8px}
#hopCancelForm .btn{width:100%;height:46px;border:0;border-radius:15px;font-family:inherit;font-weight:850}
.hop-cancel-confirm{display:flex;align-items:center;justify-content:center;gap:7px}
@media(max-width:370px){
  .premium-mytrips-page{padding-left:9px;padding-right:9px}
  .mytrip-route-card{padding-left:10px;padding-right:10px}
  .premium-mytrip-actions{gap:5px}
  .premium-mytrip-actions .btn{font-size:8.8px;padding-left:3px;padding-right:3px}
}
/* HOPCAR_H021E_R5_MYTRIPS_MOBILE_END */






/* H022C_R7_THEME_START */

/* Approved premium brand: keep site/card base colors, refine only presentation */
.topbar{
  padding:7px 0 9px;
  background:
    radial-gradient(circle at 46% 14%,rgba(19,128,211,.10),transparent 48%),
    radial-gradient(circle at 28% 30%,rgba(244,122,42,.055),transparent 34%);
}
.brand-row{gap:0}
.brand-home-link{max-width:100%}
.logo-word{display:none!important}

.topbar .brand-home-link{
  width:min(88vw,430px)!important;
}
.topbar .logo-mark{
  width:100%!important;
  max-width:430px!important;
  height:auto!important;
  flex:0 1 auto!important;
  filter:drop-shadow(0 0 11px rgba(23,166,255,.14)) drop-shadow(0 0 9px rgba(255,126,37,.10))!important;
}

.hop-global-brand{
  width:min(88vw,410px)!important;
  margin:0 auto 4px!important;
}
.hop-global-brand .logo-mark{
  width:100%!important;
  max-width:410px!important;
  height:auto!important;
  flex:0 1 auto!important;
  filter:drop-shadow(0 0 9px rgba(23,166,255,.12)) drop-shadow(0 0 7px rgba(255,126,37,.08))!important;
}

/* Admin gets the same real logo, but compact */
.admin-home-logo strong{display:none!important}
.admin-home-logo img{
  width:178px!important;
  max-width:48vw!important;
  height:auto!important;
  filter:drop-shadow(0 0 8px rgba(23,166,255,.10)) drop-shadow(0 0 7px rgba(255,126,37,.08));
}

/* "+" from approved reference: thin dual-color ring, dark center, soft neon */
.publish-trip-plus{
  width:48px!important;
  height:48px!important;
  top:3px!important;
  right:-6px!important;
  border-radius:50%!important;
  border:1px solid transparent!important;
  background:
    radial-gradient(circle at 50% 48%,rgba(6,24,46,.98) 0 65%,rgba(4,17,34,.98) 67%) padding-box,
    conic-gradient(from 220deg,#ff8b2f,#ffb657 20%,#23468d 47%,#12aaff 72%,#ff8c31 100%) border-box!important;
  color:#ffb75a!important;
  box-shadow:
    inset 0 0 0 1px rgba(255,255,255,.02),
    0 0 8px rgba(255,137,44,.12),
    0 0 11px rgba(23,164,255,.10)!important;
  z-index:4!important;
}
.publish-trip-plus i{
  font-size:19px!important;
  font-weight:700!important;
  text-shadow:0 0 6px rgba(255,179,74,.23)!important;
}
.publish-trip-plus:active{transform:scale(.96)!important}

/* Search panel: premium dual blue/orange light, not a loud neon frame */
.search-card{
  border-color:rgba(87,185,245,.30)!important;
  box-shadow:
    0 18px 40px rgba(0,0,0,.27),
    0 0 0 1px rgba(47,169,245,.05),
    0 0 19px rgba(26,160,245,.10),
    0 0 13px rgba(244,122,42,.055),
    inset 0 1px 0 rgba(255,255,255,.045)!important;
}
.search-card:before{
  height:2px!important;
  left:26px!important;
  right:26px!important;
  background:linear-gradient(90deg,#ff7b2b 0%,#ffb04f 25%,#72b9df 53%,#15b2ff 100%)!important;
  box-shadow:-8px 0 10px rgba(255,122,43,.18),8px 0 10px rgba(21,178,255,.18);
}
.route-box,.mini-field{
  border-color:rgba(111,190,239,.15)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025),0 0 12px rgba(18,154,244,.035)!important;
}

/* Approved CTA: orange -> soft warm center -> electric blue, DARK text */
.cta{
  height:56px!important;
  border:1px solid rgba(255,255,255,.22)!important;
  border-radius:17px!important;
  background:linear-gradient(105deg,#ffb642 0%,#f47a2a 38%,#df6b55 57%,#2aa7f4 80%,#118fe9 100%)!important;
  color:#0b1e33!important;
  font-weight:850!important;
  box-shadow:
    -6px 0 15px rgba(255,130,39,.18),
    7px 0 17px rgba(18,151,255,.19),
    0 10px 24px rgba(0,0,0,.19),
    inset 0 1px 0 rgba(255,255,255,.30)!important;
  text-shadow:none!important;
}
.cta i,.cta span{color:#0b1e33!important}
.cta:active{transform:translateY(1px)}

/* Passenger plus/minus: compact and readable */
.stepper .plus{
  color:#102137!important;
  background:linear-gradient(155deg,#ffc25f,#ff8a31)!important;
  border-color:rgba(255,207,126,.42)!important;
  box-shadow:0 0 12px rgba(255,135,43,.14)!important;
}

/* Search date choices: active orange button must NEVER use white text */
.date-cards>.active,
.date-cards .date-card.active,
.date-cards .date-card.selected,
.date-cards .date-card.current,
.date-cards a[aria-current="page"],
.date-cards a[aria-current="true"]{
  color:#102137!important;
  background:linear-gradient(155deg,#ffb45c,#ff7c2a)!important;
  border-color:rgba(255,203,131,.58)!important;
  box-shadow:0 0 14px rgba(255,126,42,.16),inset 0 1px 0 rgba(255,255,255,.32)!important;
}
.date-cards>.active *,
.date-cards .date-card.active *,
.date-cards .date-card.selected *,
.date-cards .date-card.current *,
.date-cards a[aria-current="page"] *,
.date-cards a[aria-current="true"] *{
  color:#102137!important;
  text-shadow:none!important;
}

/* All orange/gold CTA buttons use dark text */
.btn.gold{
  color:#102137!important;
  background:linear-gradient(155deg,#ffb45d,#f47a2a)!important;
  box-shadow:0 9px 22px rgba(244,122,42,.13),inset 0 1px 0 rgba(255,255,255,.28)!important;
}
.btn.gold *{color:#102137!important}
.price{
  color:#102137!important;
  box-shadow:0 0 13px rgba(244,122,42,.10),inset 0 1px 0 rgba(255,255,255,.25)!important;
}

/* Subtle premium depth on cards without changing their base fill */
.ride-card,.mytrip-card,.account-hero,.menu-link,.admin-stat,.admin-card{
  box-shadow:
    0 13px 29px rgba(0,0,0,.17),
    0 0 12px rgba(23,160,246,.035),
    inset 0 1px 0 rgba(255,255,255,.025)!important;
}

/* Bottom dock: lighter visually, same 5 functions */
.bottom-nav{
  background:linear-gradient(180deg,rgba(8,31,55,.96),rgba(4,20,38,.98))!important;
  border-color:rgba(67,161,225,.16)!important;
  box-shadow:0 -9px 25px rgba(0,0,0,.24),0 0 15px rgba(18,151,245,.055)!important;
}
.nav-item{
  border-color:rgba(75,153,207,.14)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.02)!important;
}
.nav-item.active{
  color:#ffad58!important;
  border-color:rgba(244,122,42,.28)!important;
  background:linear-gradient(180deg,rgba(244,122,42,.13),rgba(244,122,42,.045))!important;
  box-shadow:0 0 13px rgba(244,122,42,.08),inset 0 1px 0 rgba(255,183,97,.09)!important;
}
.nav-item.active i,.nav-item.active span{color:#ffad58!important}

/* Internal controls get a small blue edge glow */
.head-button,.screen-back,.screen-action{
  border-color:rgba(64,171,239,.20)!important;
  box-shadow:0 0 11px rgba(22,155,244,.055),inset 0 1px 0 rgba(255,255,255,.025)!important;
}

/* Admin tabs: preserve function and avoid clipping on narrow screens */
.admin-tabs{
  overflow-x:auto!important;
  overscroll-behavior-x:contain;
  scrollbar-width:none;
}
.admin-tabs::-webkit-scrollbar{display:none}

/* Do NOT touch html/body/root overflow: H021E-r8 native scroll remains source of truth */
@media(max-width:370px){
  .topbar .brand-home-link{width:min(calc(100% - 66px),292px)!important}
  .publish-trip-plus{width:50px!important;height:50px!important}
  .hop-global-brand{width:min(100%,246px)!important}
}


/* Real transparent logo asset: no panel, no rectangle, no background. */
.brand-home-link,
.hop-global-brand,
.brand-inline,
.admin-home-logo{
  background:transparent!important;
  box-shadow:none!important;
}
.logo-mark,
.hop-global-brand .logo-mark,
.admin-home-logo img{
  background:transparent!important;
  border:0!important;
  outline:0!important;
}


/* H022C-r3 — COMPACT SEARCH RESULTS + EXACT TIME/CITY ALIGNMENT */

/* Search page top chrome: keep the logo wide, reduce everything around it. */
.results-page .hop-global-brand{
  width:min(88vw,410px)!important;
  margin:0 auto 2px!important;
}
.results-page .hop-global-brand .logo-mark{
  width:100%!important;
  max-width:410px!important;
  height:auto!important;
}
.results-page .screen-head{
  grid-template-columns:40px minmax(0,1fr) 40px!important;
  gap:6px!important;
  margin:0 0 7px!important;
}
.results-page .head-button{
  width:40px!important;
  height:40px!important;
  border-radius:13px!important;
  font-size:17px!important;
}
.results-page .screen-head h1{
  font-size:18px!important;
  line-height:1.05!important;
  letter-spacing:-.25px!important;
}
.results-page .screen-head p{
  margin-top:2px!important;
  font-size:9.5px!important;
}
.results-page .local-time-banner{
  min-height:27px!important;
  margin:0 0 7px!important;
  padding:3px 8px!important;
  border-radius:10px!important;
  gap:5px!important;
  font-size:10.2px!important;
}

/* Date selector: same information, much less height. */
.results-page .date-cards{
  gap:6px!important;
  margin-bottom:8px!important;
}
.results-page .date-card{
  min-height:67px!important;
  padding:6px 4px!important;
  border-radius:15px!important;
}
.results-page .date-card .date-name{
  font-size:9.5px!important;
}
.results-page .date-card strong{
  margin-top:3px!important;
  font-size:11.5px!important;
}
.results-page .date-card small{
  margin-top:4px!important;
  font-size:9px!important;
}

/* Results: target ~two useful cards in the mobile viewport. */
.results-page .ride-list{
  gap:8px!important;
}
.results-page .ride-card{
  padding:9px 9px 7px!important;
  border-radius:18px!important;
  box-shadow:
    0 11px 25px rgba(0,0,0,.20),
    0 0 10px rgba(23,160,246,.035),
    inset 0 1px 0 rgba(255,255,255,.025)!important;
}
.results-page .ride-card:after{
  top:11px!important;
  bottom:11px!important;
}
.results-page .ride-card-head{
  gap:7px!important;
  margin-bottom:4px!important;
}
.results-page .car-title{
  gap:7px!important;
}
.results-page .car-emblem{
  width:28px!important;
  height:28px!important;
  border-radius:10px!important;
  font-size:14px!important;
}
.results-page .car-title strong{
  font-size:14px!important;
  line-height:1!important;
}
.results-page .price{
  min-width:84px!important;
  padding:5px 8px 6px!important;
  border-radius:13px!important;
  font-size:14.5px!important;
}

/* Departure/arrival TIME and CITY start on exactly the same horizontal line. */
.results-page .trip-path.premium-road{
  grid-template-columns:52px 22px minmax(0,1fr)!important;
  column-gap:5px!important;
  row-gap:1px!important;
  align-items:start!important;
  padding:1px 0 3px!important;
}
.results-page .premium-road .stop-time{
  align-self:start!important;
  margin:0!important;
  padding:0!important;
  transform:translateY(-1px);
  font-size:16.5px!important;
  line-height:1!important;
}
.results-page .premium-road .stop-place{
  align-self:start!important;
}
.results-page .premium-road .stop-place strong{
  margin:0!important;
  font-size:15px!important;
  line-height:1!important;
}
.results-page .premium-road .stop-place address{
  margin-top:1px!important;
  font-size:11px!important;
  line-height:1.05!important;
}
.results-page .premium-road .path-node{
  align-self:start!important;
  width:13px!important;
  height:13px!important;
  border-width:2px!important;
  margin-top:0!important;
  box-shadow:0 0 0 4px rgba(255,255,255,.045),0 3px 7px rgba(0,0,0,.15)!important;
}
.results-page .premium-road .road-segment{
  width:6px!important;
  height:20px!important;
}
.results-page .premium-road .duration{
  font-size:8.5px!important;
  line-height:1!important;
}
.results-page .premium-road .route-duration-center{
  width:50px!important;
}
.results-page .premium-road .route-duration-center strong{
  font-size:11.5px!important;
}
.results-page .premium-road .route-duration-center span{
  margin-top:2px!important;
  font-size:7.5px!important;
}

/* Four features stay visible but stop taking a third of the card. */
.results-page .advantages-grid{
  margin-top:4px!important;
  border-radius:12px!important;
}
.results-page .advantage-cell{
  min-height:48px!important;
  padding:4px 2px!important;
  gap:2px!important;
}
.results-page .feature-symbol{
  width:27px!important;
  height:27px!important;
  font-size:17px!important;
}
.results-page .advantage-cell>span:last-child{
  font-size:6.5px!important;
  line-height:1.02!important;
}

/* My Trips: the time must sit on the same top line as the city. */
.mytrip-route-card .selected-route-row{
  align-items:start!important;
  min-height:49px!important;
}
.mytrip-route-card .selected-route-row time{
  align-self:start!important;
  margin:0!important;
  padding:0!important;
  transform:translateY(-1px);
  line-height:1!important;
}
.mytrip-route-card .selected-place{
  align-self:start!important;
}
.mytrip-route-card .selected-place strong{
  margin:0!important;
  line-height:1!important;
}
.mytrip-route-card .selected-road{
  align-self:stretch!important;
}
.mytrip-route-card .selected-road .path-node{
  margin-top:0!important;
}
.mytrip-route-card .selected-road-line{
  top:16px!important;
  bottom:-4px!important;
}

/* Slightly compact My Trips chrome, but keep the logo wide. */
.premium-mytrips-page .hop-global-brand{
  width:min(88vw,410px)!important;
  margin-bottom:2px!important;
}
.premium-mytrips-page .screen-head{
  margin-bottom:9px!important;
}
.premium-mytrips-page .mytrip-tabs{
  margin-bottom:9px!important;
}
.premium-mytrips-page .mytrip-tabs a,
.premium-mytrips-page .mytrip-tabs button{
  min-height:40px!important;
  height:40px!important;
}
.premium-mytrips-page .mytrip-booking-summary{
  padding-top:9px!important;
  padding-bottom:9px!important;
}

@media(max-width:370px){
  .topbar .brand-home-link,
  .hop-global-brand,
  .results-page .hop-global-brand,
  .premium-mytrips-page .hop-global-brand{
    width:90vw!important;
  }
}


/* H022C-r4 — ELEGANT SEARCH CARD REFINEMENT
   Bottom navigation intentionally untouched. */

/* Typography: lighter, more elegant hierarchy */
.results-page{
  font-family:"Manrope",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
}
.results-page .screen-head h1,
.results-page .car-title strong,
.results-page .premium-road .stop-time,
.results-page .premium-road .stop-place strong{
  font-weight:650!important;
}
.results-page .screen-head p,
.results-page .premium-road .stop-place address,
.results-page .advantage-cell>span:last-child{
  font-weight:500!important;
}

/* Search result card: flatter, tighter, subtler border/glow */
.results-page .ride-card{
  padding:8px 9px 7px!important;
  border-radius:15px!important;
  border-color:rgba(75,171,235,.18)!important;
  background:linear-gradient(180deg,rgba(18,55,88,.97),rgba(10,39,67,.97))!important;
  box-shadow:
    0 10px 22px rgba(0,0,0,.18),
    0 0 12px rgba(27,164,246,.045),
    inset 0 1px 0 rgba(255,255,255,.025)!important;
}
.results-page .ride-card-head{
  margin-bottom:3px!important;
}
.results-page .car-title strong{
  font-size:13.5px!important;
  letter-spacing:-.12px!important;
}

/* Price: no orange slab. Dark glass + orange neon outline */
.results-page .price{
  min-width:78px!important;
  padding:5px 8px!important;
  border-radius:12px!important;
  background:linear-gradient(180deg,rgba(10,34,58,.92),rgba(6,25,45,.96))!important;
  border:1px solid rgba(255,137,48,.62)!important;
  color:#ffb25f!important;
  font-family:"Manrope",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
  font-size:15px!important;
  font-weight:700!important;
  line-height:1!important;
  text-shadow:0 0 8px rgba(255,143,53,.18)!important;
  box-shadow:
    0 0 0 1px rgba(255,137,48,.035),
    0 0 11px rgba(255,126,42,.13),
    inset 0 1px 0 rgba(255,255,255,.025)!important;
}

/* Route hierarchy: city is primary, time compact but aligned */
.results-page .premium-road .stop-time{
  font-size:15px!important;
  line-height:1!important;
  color:#f3f7fb!important;
}
.results-page .premium-road .stop-place strong{
  font-size:14.2px!important;
  line-height:1!important;
  letter-spacing:-.08px!important;
}
.results-page .premium-road .stop-place address{
  margin-top:2px!important;
  font-size:10.3px!important;
  line-height:1.05!important;
  color:#bccddd!important;
}
.results-page .premium-road .duration{
  font-size:8px!important;
  color:#8fa8bc!important;
}
.results-page .premium-road .route-duration-center strong{
  font-size:10.5px!important;
  font-weight:650!important;
}
.results-page .premium-road .route-duration-center span{
  font-size:7px!important;
}

/* Advantages: deliberately small and elegant */
.results-page .advantages-grid{
  margin-top:4px!important;
  border-radius:11px!important;
  border-color:rgba(140,190,225,.08)!important;
  background:rgba(4,19,35,.24)!important;
}
.results-page .advantage-cell{
  min-height:42px!important;
  padding:3px 2px!important;
  gap:1px!important;
  background:linear-gradient(180deg,rgba(13,44,73,.56),rgba(6,26,46,.64))!important;
}
.results-page .feature-symbol{
  width:20px!important;
  height:20px!important;
  min-height:20px!important;
  font-size:14px!important;
  line-height:20px!important;
}
.results-page .advantage-cell>span:last-child{
  font-size:8px!important;
  line-height:1!important;
  color:#aebfce!important;
  letter-spacing:-.05px!important;
}
.results-page .advantage-cell:before{
  left:18px!important;
  right:18px!important;
  height:1px!important;
  opacity:.58!important;
}

/* Active date: dark premium tile, orange/blue edge glow instead of orange fill */
.results-page .date-cards>.active,
.results-page .date-cards .date-card.active,
.results-page .date-cards .date-card.selected,
.results-page .date-cards .date-card.current,
.results-page .date-cards a[aria-current="page"],
.results-page .date-cards a[aria-current="true"]{
  color:#eef6fc!important;
  background:
    linear-gradient(180deg,rgba(15,51,83,.98),rgba(7,31,55,.98)) padding-box,
    linear-gradient(115deg,#ff8a31 0%,#ffb05b 34%,#319ee8 72%,#16a9ff 100%) border-box!important;
  border:1px solid transparent!important;
  box-shadow:
    0 0 12px rgba(255,126,42,.08),
    0 0 13px rgba(30,163,246,.07),
    inset 0 1px 0 rgba(255,255,255,.035)!important;
}
.results-page .date-cards>.active *,
.results-page .date-cards .date-card.active *,
.results-page .date-cards .date-card.selected *,
.results-page .date-cards .date-card.current *,
.results-page .date-cards a[aria-current="page"] *,
.results-page .date-cards a[aria-current="true"] *{
  color:inherit!important;
  text-shadow:none!important;
}
.results-page .date-cards>.active .date-name,
.results-page .date-cards .date-card.active .date-name,
.results-page .date-cards .date-card.selected .date-name,
.results-page .date-cards .date-card.current .date-name,
.results-page .date-cards a[aria-current="page"] .date-name,
.results-page .date-cards a[aria-current="true"] .date-name{
  color:#ffad58!important;
}
.results-page .date-cards>.active small,
.results-page .date-cards .date-card.active small,
.results-page .date-cards .date-card.selected small,
.results-page .date-cards .date-card.current small,
.results-page .date-cards a[aria-current="page"] small,
.results-page .date-cards a[aria-current="true"] small{
  color:#72c7f8!important;
}

/* Slightly calmer inactive dates */
.results-page .date-card{
  font-family:"Manrope",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
  border-color:rgba(100,172,218,.13)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.018)!important;
}
.results-page .date-card strong{
  font-weight:650!important;
}


/* H022C-r5 — ROUTE RHYTHM + VEHICLE ACCENT + MY TRIPS CLEANUP
   Bottom navigation intentionally untouched. */

/* SEARCH: vehicle accent — blue-glow icon, orange italic vehicle name */
.results-page .car-emblem{
  width:28px!important;
  height:28px!important;
  border:1px solid rgba(76,190,255,.42)!important;
  background:linear-gradient(180deg,rgba(26,79,119,.88),rgba(10,39,66,.96))!important;
  color:#a8ddff!important;
  box-shadow:
    0 0 0 1px rgba(72,178,241,.05),
    0 0 12px rgba(38,169,247,.22),
    inset 0 1px 0 rgba(255,255,255,.06)!important;
  text-shadow:0 0 8px rgba(74,190,255,.46)!important;
}
.results-page .car-title strong{
  color:#ffad5d!important;
  font-size:13.7px!important;
  font-style:italic!important;
  font-weight:650!important;
  letter-spacing:.03px!important;
  text-shadow:0 0 9px rgba(255,126,42,.20)!important;
}

/* SEARCH ROUTE — keep the proven trip.php mechanism.
   Duration remains TWO lines: "6 ч" + "в пути".
   It is centered at 50% of the whole route, both vertically and horizontally.
   Cities are made denser only by shortening the middle segment. */
.results-page .trip-path.premium-road{
  position:relative!important;
  display:grid!important;
  grid-template-columns:58px 24px minmax(0,1fr)!important;
  grid-auto-rows:auto!important;
  column-gap:6px!important;
  row-gap:1px!important;
  align-items:center!important;
  padding:0 0 2px!important;
}
.results-page .premium-road .stop-time{
  margin:0!important;
  padding:0!important;
  transform:none!important;
  font-family:"Manrope",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
  font-size:15.5px!important;
  line-height:1!important;
  font-weight:700!important;
  letter-spacing:-.16px!important;
  color:#f4f8fb!important;
}
.results-page .premium-road .stop-place strong{
  display:block!important;
  margin:0!important;
  font-family:"Manrope",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
  font-size:14.5px!important;
  line-height:1.02!important;
  font-weight:700!important;
  letter-spacing:-.08px!important;
  color:#f5f8fb!important;
}
.results-page .premium-road .stop-place address{
  display:block!important;
  margin-top:2px!important;
  font-family:"Manrope",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
  font-size:10.5px!important;
  line-height:1.05!important;
  font-style:italic!important;
  font-weight:500!important;
  color:#c6d4df!important;
}
.results-page .premium-road .path-node{
  position:relative!important;
  z-index:2!important;
  justify-self:center!important;
  width:12px!important;
  height:12px!important;
  margin:0!important;
  border-radius:50%!important;
  border:2px solid #f9fbfd!important;
  box-shadow:0 0 0 4px rgba(255,255,255,.05),0 3px 8px rgba(0,0,0,.16)!important;
}
.results-page .premium-road .road-segment{
  position:relative!important;
  justify-self:center!important;
  width:6px!important;
  height:18px!important;
  min-height:18px!important;
  border-radius:999px!important;
  background:linear-gradient(90deg,#0b1b2c 0 18%,#33485f 18% 82%,#0b1b2c 82%)!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.035)!important;
}
.results-page .premium-road .road-segment i{
  position:absolute!important;
  left:50%!important;
  top:3px!important;
  bottom:3px!important;
  width:1px!important;
  transform:translateX(-50%)!important;
  background:repeating-linear-gradient(to bottom,rgba(230,207,137,.94) 0 3px,transparent 3px 6px)!important;
}
.results-page .premium-road .duration-slot{
  display:block!important;
  min-height:18px!important;
  height:18px!important;
}
.results-page .premium-road .route-duration-center{
  position:absolute!important;
  z-index:4!important;
  left:0!important;
  top:50%!important;
  width:58px!important;
  transform:translateY(-50%)!important;
  margin:0!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  pointer-events:none!important;
  text-align:center!important;
  white-space:nowrap!important;
  color:#f2f6fa!important;
  font-family:"Manrope",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
  text-shadow:0 2px 8px rgba(0,0,0,.30)!important;
}
.results-page .premium-road .route-duration-center strong{
  display:block!important;
  margin:0!important;
  font-size:10.5px!important;
  line-height:1!important;
  font-weight:750!important;
  letter-spacing:-.1px!important;
}
.results-page .premium-road .route-duration-center span{
  display:block!important;
  margin-top:2px!important;
  color:#9eb1c3!important;
  font-size:7.5px!important;
  line-height:1!important;
  font-weight:600!important;
}
.results-page .premium-road>.duration:not(.route-duration-center){
  display:none!important;
}

/* Search cards lose the bright left stripe — border/glow is enough */
.results-page .ride-card:before{
  width:1px!important;
  opacity:.28!important;
}

/* ADVANTAGES — restore the same visual system as current trip.php.
   Four equal premium cells, large clean icon tile, label below.
   User-requested difference: "Без животных" uses TWO red diagonals = a true X. */
.results-page .advantages-grid,
.mytrip-route-card .advantages-grid{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:1px!important;
  margin-top:9px!important;
  padding-top:0!important;
  overflow:hidden!important;
  border:1px solid rgba(205,220,234,.11)!important;
  border-radius:16px!important;
  background:rgba(4,19,35,.34)!important;
}
.results-page .advantage-cell,
.mytrip-route-card .advantage-cell{
  position:relative!important;
  min-width:0!important;
  min-height:78px!important;
  padding:8px 4px!important;
  border:0!important;
  border-radius:0!important;
  background:linear-gradient(180deg,rgba(13,44,73,.78),rgba(6,26,46,.84))!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:6px!important;
  text-align:center!important;
  overflow:hidden!important;
  box-shadow:none!important;
}
.results-page .advantage-cell+.advantage-cell,
.mytrip-route-card .advantage-cell+.advantage-cell{
  border-left:1px solid rgba(207,222,235,.08)!important;
}
.results-page .advantage-cell:before,
.mytrip-route-card .advantage-cell:before{
  display:none!important;
}
.results-page .feature-symbol,
.mytrip-route-card .feature-symbol{
  position:relative!important;
  width:38px!important;
  height:38px!important;
  min-width:38px!important;
  min-height:38px!important;
  margin:0!important;
  display:grid!important;
  place-items:center!important;
  border-radius:13px!important;
  background:linear-gradient(145deg,rgba(184,215,236,.12),rgba(255,255,255,.025))!important;
  border:1px solid rgba(194,220,238,.12)!important;
  color:#d9edf8!important;
  font-size:23px!important;
  line-height:1!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04)!important;
  overflow:hidden!important;
}
.results-page .tone-gold .feature-symbol,
.mytrip-route-card .tone-gold .feature-symbol{color:#e8ce7b!important}
.results-page .tone-coral .feature-symbol,
.mytrip-route-card .tone-coral .feature-symbol{color:#e9c6c4!important}
.results-page .tone-violet .feature-symbol,
.mytrip-route-card .tone-violet .feature-symbol{color:#c2b8ee!important}
.results-page .tone-ice .feature-symbol,
.mytrip-route-card .tone-ice .feature-symbol{color:#c5e9fb!important}
.results-page .feature-symbol .mdi-car-child-seat,
.mytrip-route-card .feature-symbol .mdi-car-child-seat{
  font-size:29px!important;
  line-height:1!important;
}
/* True X: exactly TWO lines, both clipped inside the icon tile. */
.results-page .feature-symbol.crossed:before,
.mytrip-route-card .feature-symbol.crossed:before,
.results-page .feature-symbol.crossed:after,
.mytrip-route-card .feature-symbol.crossed:after{
  content:""!important;
  position:absolute!important;
  z-index:5!important;
  left:50%!important;
  top:50%!important;
  width:29px!important;
  height:3px!important;
  margin:0!important;
  border-radius:999px!important;
  background:#e85d5a!important;
  box-shadow:0 1px 0 rgba(0,0,0,.18),0 0 5px rgba(232,93,90,.15)!important;
  transform-origin:center!important;
}
.results-page .feature-symbol.crossed:before,
.mytrip-route-card .feature-symbol.crossed:before{
  transform:translate(-50%,-50%) rotate(42deg)!important;
}
.results-page .feature-symbol.crossed:after,
.mytrip-route-card .feature-symbol.crossed:after{
  transform:translate(-50%,-50%) rotate(-42deg)!important;
}
.results-page .advantage-cell>span:last-child,
.mytrip-route-card .advantage-cell>span:last-child{
  display:block!important;
  width:100%!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
  color:#f0f5fa!important;
  font-family:"Manrope",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
  font-size:8.2px!important;
  line-height:1.12!important;
  font-weight:650!important;
  letter-spacing:-.04px!important;
  text-align:center!important;
  white-space:normal!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
}

/* MY TRIPS: card starts with date/route; vehicle header + per-seat price are removed in markup. */
.mytrip-route-card{
  padding-top:12px!important;
  padding-bottom:12px!important;
}
.mytrip-route-card .trip-date-inline{
  margin:0 0 7px!important;
  font-size:10.5px!important;
}
.mytrip-route-card .passenger-route{
  padding-top:2px!important;
  padding-bottom:2px!important;
}
.mytrip-route-card .selected-route-row{
  min-height:44px!important;
  grid-template-columns:64px 24px minmax(0,1fr)!important;
  column-gap:6px!important;
}
.mytrip-route-card .selected-route-row time{
  font-size:18px!important;
  line-height:1!important;
}
.mytrip-route-card .selected-place strong{
  font-size:16px!important;
  line-height:1!important;
}
.mytrip-route-card .selected-place address{
  margin-top:2px!important;
  font-size:11.7px!important;
  line-height:1.08!important;
}
.mytrip-route-card .selected-road-line{
  top:15px!important;
  bottom:-2px!important;
}
.mytrip-route-card .trip-route-wrap{
  position:relative!important;
}
.mytrip-route-card .route-duration-pill{
  position:absolute!important;
  z-index:4!important;
  left:0!important;
  top:50%!important;
  width:64px!important;
  margin:0!important;
  transform:translateY(-50%)!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  white-space:nowrap!important;
  pointer-events:none!important;
  font-family:"Manrope",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
}
.mytrip-route-card .route-duration-pill strong{
  display:block!important;
  margin:0!important;
  font-size:11px!important;
  line-height:1!important;
  font-weight:750!important;
}
.mytrip-route-card .route-duration-pill span{
  display:block!important;
  margin-top:2px!important;
  font-size:7.5px!important;
  line-height:1!important;
  font-weight:600!important;
}
.mytrip-route-card .local-time-line{
  margin:5px 0 7px!important;
  font-size:9.5px!important;
  line-height:1.15!important;
  color:#aebdcc!important;
}

/* MY TRIPS: same cleaner advantages row */
.mytrip-route-card .advantages-grid{
  margin-top:4px!important;
  border-radius:12px!important;
}

/* PHONE: the primary action is an outlined luminous brand CTA, not a heavy fill. */
.passenger-trip .premium-mytrip-actions .phone{
  position:relative!important;
  color:#ffffff!important;
  background:
    linear-gradient(180deg,rgba(10,40,66,.96),rgba(6,28,49,.98)) padding-box,
    linear-gradient(110deg,#ff9845 0%,#ffb45e 34%,#3cb2f4 70%,#1a9be9 100%) border-box!important;
  border:1px solid transparent!important;
  box-shadow:
    0 0 14px rgba(255,133,49,.13),
    0 0 16px rgba(37,164,239,.12),
    inset 0 1px 0 rgba(255,255,255,.035)!important;
}
.passenger-trip .premium-mytrip-actions .phone i{
  color:#ffad59!important;
  text-shadow:0 0 9px rgba(255,139,54,.26)!important;
}
.passenger-trip .premium-mytrip-actions .phone span{
  font-weight:800!important;
  letter-spacing:.05px!important;
}

/* Keep secondary actions quieter so "Позвонить" leads visually. */
.passenger-trip .premium-mytrip-actions .ghost{
  background:linear-gradient(180deg,rgba(19,59,92,.82),rgba(9,37,63,.88))!important;
  border:1px solid rgba(117,184,226,.12)!important;
}
.passenger-trip .premium-mytrip-actions .danger{
  background:linear-gradient(180deg,rgba(126,59,54,.24),rgba(77,35,42,.28))!important;
  border:1px solid rgba(226,111,93,.14)!important;
}

@media(max-width:370px){
  .results-page .trip-path.premium-road{grid-template-columns:56px 22px minmax(0,1fr)!important;column-gap:5px!important}
  .results-page .premium-road .route-duration-center{width:56px!important}
  .results-page .advantage-cell,
  .mytrip-route-card .advantage-cell{min-height:73px!important;padding-left:2px!important;padding-right:2px!important}
  .results-page .feature-symbol,
  .mytrip-route-card .feature-symbol{width:34px!important;height:34px!important;min-width:34px!important;min-height:34px!important;font-size:20px!important}
  .results-page .feature-symbol .mdi-car-child-seat,
  .mytrip-route-card .feature-symbol .mdi-car-child-seat{font-size:27px!important}
  .results-page .feature-symbol.crossed:before,
  .mytrip-route-card .feature-symbol.crossed:before,
  .results-page .feature-symbol.crossed:after,
  .mytrip-route-card .feature-symbol.crossed:after{width:26px!important;height:2.5px!important}
  .results-page .advantage-cell>span:last-child,
  .mytrip-route-card .advantage-cell>span:last-child{font-size:7.5px!important}
}


/* FONT DECISION:
   Manrope = cities, time, addresses, feature labels: best Cyrillic readability.
   Exo 2 = only vehicle model + price: automotive character without harming readability. */
.results-page .car-title strong{
  font-family:"Exo 2","Manrope",sans-serif!important;
}
.results-page .price{
  font-family:"Exo 2","Manrope",sans-serif!important;
}


/* H022C-r7 — screenshot cleanup.
   No bottom-nav selectors in this block. */

/* Home: logo stays dominant; headline is a little lighter and easier to read. */
.tagline strong{
  font-family:"Manrope",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
  font-weight:700!important;
  letter-spacing:-.16px!important;
}

/* Trip detail: vehicle title gets the same automotive identity as search,
   but long names may use two clean lines instead of technical ellipsis. */
.selected-segment-card .ride-card-head{
  align-items:flex-start!important;
  gap:8px!important;
}
.selected-segment-card .car-title{
  flex:1 1 auto!important;
  min-width:0!important;
  align-items:center!important;
}
.selected-segment-card .car-emblem{
  width:34px!important;
  height:34px!important;
  min-width:34px!important;
  border-radius:12px!important;
  border:1px solid rgba(76,190,255,.38)!important;
  background:linear-gradient(180deg,rgba(26,79,119,.88),rgba(10,39,66,.96))!important;
  color:#b8e5ff!important;
  box-shadow:0 0 11px rgba(38,169,247,.17),inset 0 1px 0 rgba(255,255,255,.045)!important;
  text-shadow:0 0 7px rgba(74,190,255,.34)!important;
}
.selected-segment-card .car-title strong{
  display:-webkit-box!important;
  -webkit-box-orient:vertical!important;
  -webkit-line-clamp:2!important;
  overflow:hidden!important;
  white-space:normal!important;
  text-overflow:clip!important;
  max-width:100%!important;
  font-family:"Exo 2","Manrope",sans-serif!important;
  font-size:15.5px!important;
  line-height:1.04!important;
  font-style:italic!important;
  font-weight:700!important;
  letter-spacing:.02px!important;
  color:#ffad5d!important;
  text-shadow:0 0 8px rgba(255,126,42,.16)!important;
}

/* Trip detail price: visible, but no longer a giant filled orange button. */
.selected-segment-card .price{
  flex:0 0 auto!important;
  min-width:92px!important;
  padding:7px 11px 8px!important;
  border-radius:16px!important;
  border:1px solid transparent!important;
  background:
    linear-gradient(180deg,rgba(8,31,53,.97),rgba(5,23,41,.99)) padding-box,
    linear-gradient(110deg,#ff9444 0%,#ffb258 44%,#239fe8 100%) border-box!important;
  color:#ffb15f!important;
  font-family:"Exo 2","Manrope",sans-serif!important;
  font-size:16.5px!important;
  line-height:1!important;
  font-weight:700!important;
  box-shadow:0 0 11px rgba(255,133,49,.09),0 0 11px rgba(36,158,232,.07),inset 0 1px 0 rgba(255,255,255,.025)!important;
}

/* Selected route only: full-route context after/before the booked segment is hidden.
   Intermediate points inside the selected segment remain available. */
.selected-segment-card .route-context{
  display:none!important;
}

/* Preserve readable Russian typography and give each selected stop enough room.
   We do NOT center duration from the wrapper's height anymore. */
.selected-segment-card .passenger-route{
  position:relative!important;
}
.selected-segment-card .selected-route-row{
  min-height:54px!important;
  grid-template-columns:64px 26px minmax(0,1fr)!important;
  column-gap:8px!important;
  align-items:center!important;
}
.selected-segment-card .selected-route-row time{
  font-family:"Manrope",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
  font-size:19px!important;
  line-height:1!important;
  font-weight:700!important;
  letter-spacing:-.16px!important;
}
.selected-segment-card .selected-place strong{
  font-family:"Manrope",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
  font-size:17px!important;
  line-height:1.04!important;
  font-weight:700!important;
  letter-spacing:-.08px!important;
}
.selected-segment-card .selected-place address{
  margin-top:2px!important;
  font-family:"Manrope",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
  font-size:12.6px!important;
  line-height:1.10!important;
  font-style:italic!important;
  font-weight:600!important;
  color:#e5edf4!important;
}
.selected-segment-card .intermediate-toggle{
  margin-top:4px!important;
  margin-bottom:4px!important;
}

/* Exact geometric center comes from the two visible route dots.
   JS writes --hop-duration-y in pixels from the wrapper top. */
.selected-segment-card .trip-route-wrap{
  position:relative!important;
}
.selected-segment-card .route-duration-pill{
  position:absolute!important;
  z-index:6!important;
  left:0!important;
  top:var(--hop-duration-y,50%)!important;
  width:64px!important;
  transform:translateY(-50%)!important;
  margin:0!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  white-space:nowrap!important;
  pointer-events:none!important;
  font-family:"Manrope",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
}
.selected-segment-card .route-duration-pill strong{
  display:block!important;
  margin:0!important;
  font-size:12px!important;
  line-height:1!important;
  font-weight:750!important;
  letter-spacing:-.12px!important;
}
.selected-segment-card .route-duration-pill span{
  display:block!important;
  margin-top:3px!important;
  color:#9eb1c3!important;
  font-size:8px!important;
  line-height:1!important;
  font-weight:600!important;
}

/* Trip.php advantages stay in their existing proven form.
   Only the user-requested "Без животных" symbol changes: a clean X of exactly two lines. */
.selected-segment-card .feature-symbol.crossed{
  position:relative!important;
  overflow:hidden!important;
}
.selected-segment-card .feature-symbol.crossed:before,
.selected-segment-card .feature-symbol.crossed:after{
  content:""!important;
  position:absolute!important;
  z-index:5!important;
  left:50%!important;
  top:50%!important;
  width:27px!important;
  height:2.5px!important;
  border-radius:999px!important;
  background:#e85d5a!important;
  box-shadow:0 0 4px rgba(232,93,90,.14)!important;
  transform-origin:center!important;
}
.selected-segment-card .feature-symbol.crossed:before{
  transform:translate(-50%,-50%) rotate(42deg)!important;
}
.selected-segment-card .feature-symbol.crossed:after{
  transform:translate(-50%,-50%) rotate(-42deg)!important;
}

@media(max-width:370px){
  .selected-segment-card .car-title strong{font-size:14.2px!important}
  .selected-segment-card .price{min-width:84px!important;font-size:15.2px!important;padding-left:8px!important;padding-right:8px!important}
  .selected-segment-card .selected-route-row{grid-template-columns:60px 24px minmax(0,1fr)!important;column-gap:6px!important}
  .selected-segment-card .route-duration-pill{width:60px!important}
  .selected-segment-card .selected-route-row time{font-size:17.5px!important}
  .selected-segment-card .selected-place strong{font-size:15.8px!important}
  .selected-segment-card .selected-place address{font-size:11.4px!important}
}

/* H022C_R7_THEME_END */

/* H025E4_TRIP_UI_START */

/* Date and price are one real row, not two stacked blocks. */
.trip-hero .trip-date-price-row{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    align-items:center!important;
    gap:10px!important;
    margin:0 0 10px!important;
    min-height:42px!important
}
.trip-hero .trip-date-price-row .trip-date-inline{
    margin:0!important;
    min-width:0!important;
    font-size:clamp(15px,4.25vw,18px)!important;
    line-height:1.1!important;
    font-weight:900!important;
    letter-spacing:-.2px!important;
    white-space:nowrap!important
}
.trip-hero .trip-date-price-row .price{
    margin:0!important;
    white-space:nowrap!important;
    flex:none!important
}

/* Route: departure time is opposite departure city; arrival time is opposite arrival city. */
.trip-hero .trip-route-wrap{position:relative!important}
.trip-hero .passenger-route{position:relative!important}
/* H026A_ROUTE_ROW_ALIGNMENT
   Time and city are the first visual line everywhere; address stays below city. */
.trip-hero .selected-route-row,
.selected-segment-card .selected-route-row,
.mytrip-route-card .selected-route-row{
    display:grid!important;
    grid-template-columns:82px 32px minmax(0,1fr)!important;
    column-gap:9px!important;
    min-height:76px!important;
    align-items:start!important
}
.trip-hero .selected-route-row>time,
.selected-segment-card .selected-route-row>time,
.mytrip-route-card .selected-route-row>time{
    display:flex!important;
    align-items:flex-start!important;
    justify-content:center!important;
    align-self:start!important;
    min-height:0!important;
    margin:0!important;
    padding:1px 0 0!important;
    font-size:23px!important;
    line-height:1.08!important;
    font-weight:900!important;
    text-align:center!important;
    white-space:nowrap!important
}
.trip-hero .selected-route-row .selected-road,
.selected-segment-card .selected-route-row .selected-road,
.mytrip-route-card .selected-route-row .selected-road{
    align-self:stretch!important;
    position:relative!important
}
.trip-hero .selected-route-row .selected-place,
.selected-segment-card .selected-route-row .selected-place,
.mytrip-route-card .selected-route-row .selected-place{
    align-self:start!important;
    display:flex!important;
    flex-direction:column!important;
    justify-content:flex-start!important;
    min-height:0!important;
    margin:0!important;
    padding:0!important
}
.trip-hero .selected-route-row .selected-place strong,
.selected-segment-card .selected-route-row .selected-place strong,
.mytrip-route-card .selected-route-row .selected-place strong{
    margin:0!important;
    font-size:19px!important;
    line-height:1.08!important
}
.trip-hero .selected-route-row .selected-place address,
.selected-segment-card .selected-route-row .selected-place address,
.mytrip-route-card .selected-route-row .selected-place address{
    margin-top:4px!important;
    font-size:13px!important;
    line-height:1.18!important
}

/* Shared search/result route cards use the same first-line alignment. */
.trip-path.premium-road>.stop-time{
    align-self:start!important;
    padding-top:1px!important;
    line-height:1.08!important
}
.trip-path.premium-road>.stop-place{
    align-self:start!important;
    padding-top:0!important
}
.trip-path.premium-road>.stop-place>strong{
    line-height:1.08!important
}

/* Exact requested geometry:
   X = center of time column.
   Y = exact midpoint between departure-time center and arrival-time center. */
.trip-hero .route-duration-pill{
    position:absolute!important;
    left:var(--hop-trip-duration-x,41px)!important;
    top:var(--hop-trip-duration-y,50%)!important;
    transform:translate(-50%,-50%)!important;
    z-index:6!important;
    width:62px!important;
    min-width:62px!important;
    max-width:62px!important;
    margin:0!important;
    padding:4px 1px!important;
    border-radius:9px!important;
    background:rgba(8,31,55,.90)!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    text-align:center!important;
    pointer-events:none!important
}
.trip-hero .route-duration-pill strong{
    display:block!important;
    margin:0!important;
    font-size:12px!important;
    line-height:1.02!important;
    white-space:nowrap!important
}
.trip-hero .route-duration-pill span{
    display:block!important;
    margin:2px 0 0!important;
    font-size:8px!important;
    line-height:1!important;
    white-space:nowrap!important
}

/* Search card: same exact midpoint rule using its two visible times. */
.results-page .trip-path.premium-road{position:relative!important}
.results-page .premium-road .route-duration-center{
    position:absolute!important;
    left:var(--hop-card-duration-x,50%)!important;
    top:var(--hop-card-duration-y,50%)!important;
    transform:translate(-50%,-50%)!important;
    z-index:5!important;
    width:58px!important;
    min-width:58px!important;
    max-width:58px!important;
    margin:0!important;
    padding:2px 0!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    text-align:center!important;
    pointer-events:none!important;
    background:rgba(7,29,52,.82)!important;
    border-radius:8px!important
}
.results-page .premium-road .route-duration-center strong{
    display:block!important;
    margin:0!important;
    font-size:11px!important;
    line-height:1!important;
    white-space:nowrap!important
}
.results-page .premium-road .route-duration-center span{
    display:block!important;
    margin-top:2px!important;
    font-size:8px!important;
    line-height:1!important;
    white-space:nowrap!important
}
.results-page .premium-road>.duration:not(.route-duration-center){display:none!important}

/* Source label "Без животных" must remain visible. */
.advantages-grid .advantage-cell .feature-label{
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
    min-height:16px!important;
    font-size:10px!important;
    line-height:1.15!important;
    text-align:center!important
}

/* Compact driver card. */
.detail-driver.premium-driver{
    display:grid!important;
    grid-template-columns:58px minmax(0,1fr) 22px!important;
    align-items:center!important;
    gap:11px!important;
    padding:12px 14px!important;
    min-height:84px!important;
    border-radius:22px!important
}
.detail-driver.premium-driver .avatar{
    width:58px!important;
    height:58px!important;
    min-width:58px!important;
    font-size:22px!important
}
.detail-driver.premium-driver .driver-copy{
    min-width:0!important;
    display:flex!important;
    flex-direction:column!important;
    justify-content:center!important;
    gap:5px!important
}
.detail-driver.premium-driver .driver-copy>strong{
    font-size:18px!important;
    line-height:1.05!important
}
.driver-hopcar-label{
    margin:0!important;
    font-size:11.5px!important;
    line-height:1.1!important;
    opacity:.70!important
}
.driver-rating-row{
    display:flex!important;
    align-items:center!important;
    gap:6px!important;
    min-width:0!important;
    white-space:nowrap!important
}
.driver-rating-number{
    font-size:14px!important;
    line-height:1!important;
    color:#8fdb74!important;
    font-weight:900!important
}
.driver-rating-stars{
    display:inline-flex!important;
    gap:1px!important;
    color:#ff9a2e!important;
    font-size:11px!important;
    line-height:1!important
}
.driver-review-count{
    min-width:0!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    color:#adbdcc!important;
    font-size:11px!important
}
.driver-rating-empty .driver-review-count{
    opacity:.72!important
}
.detail-driver.premium-driver .driver-chevron{
    justify-self:end!important;
    font-size:20px!important
}

/* Compact vehicle icon. Photos/card layout remain untouched. */
.vehicle-trip-card .vehicle-trip-head,
.mytrip-vehicle-card .vehicle-trip-head,
.era-dynamic-vehicle .vehicle-trip-head{
    display:grid!important;
    grid-template-columns:56px minmax(0,1fr) 28px!important;
    align-items:center!important;
    gap:12px!important
}
.vehicle-trip-card .vehicle-type-icon,
.mytrip-vehicle-card .vehicle-type-icon,
.era-dynamic-vehicle .vehicle-type-icon{
    width:56px!important;
    height:56px!important;
    min-width:56px!important;
    border-radius:16px!important;
    display:grid!important;
    place-items:center!important;
    font-size:30px!important
}
.vehicle-trip-card .vehicle-type-icon i,
.mytrip-vehicle-card .vehicle-type-icon i,
.era-dynamic-vehicle .vehicle-type-icon i{
    font-size:30px!important;
    line-height:1!important
}

@media(max-width:370px){
    .trip-hero .selected-route-row,
    .selected-segment-card .selected-route-row,
    .mytrip-route-card .selected-route-row{
        grid-template-columns:76px 30px minmax(0,1fr)!important;
        column-gap:7px!important
    }
    .trip-hero .selected-route-row>time,
    .selected-segment-card .selected-route-row>time,
    .mytrip-route-card .selected-route-row>time{font-size:21px!important}
    .trip-hero .selected-route-row .selected-place strong,
    .selected-segment-card .selected-route-row .selected-place strong,
    .mytrip-route-card .selected-route-row .selected-place strong{font-size:18px!important}
    .trip-hero .trip-date-price-row{gap:6px!important}
    .trip-hero .trip-date-price-row .trip-date-inline{font-size:14px!important}
    .detail-driver.premium-driver{
        grid-template-columns:54px minmax(0,1fr) 20px!important;
        gap:9px!important;padding:11px 12px!important
    }
    .detail-driver.premium-driver .avatar{width:54px!important;height:54px!important;min-width:54px!important}
    .detail-driver.premium-driver .driver-copy>strong{font-size:17px!important}
}
/* H025E4_TRIP_UI_END */
/* H025E7_TRIP_LEGAL_START */
.trip-legal-mini{
    margin:14px 2px 6px!important;
    border:1px solid rgba(164,190,214,.13)!important;
    border-radius:16px!important;
    background:rgba(8,31,55,.34)!important;
    overflow:hidden!important;
    color:#9fb2c4!important
}
.trip-legal-mini>summary{
    list-style:none!important;
    display:grid!important;
    grid-template-columns:22px minmax(0,1fr) 18px!important;
    align-items:center!important;
    gap:8px!important;
    min-height:42px!important;
    padding:9px 12px!important;
    cursor:pointer!important;
    -webkit-tap-highlight-color:transparent!important;
    user-select:none!important
}
.trip-legal-mini>summary::-webkit-details-marker{display:none!important}
.trip-legal-mini-icon{
    width:22px!important;
    height:22px!important;
    display:grid!important;
    place-items:center!important;
    border-radius:8px!important;
    background:rgba(255,139,38,.08)!important;
    color:#d8a05d!important;
    font-size:11px!important
}
.trip-legal-mini-title{
    min-width:0!important;
    color:#aebdca!important;
    font-size:11.5px!important;
    line-height:1.15!important;
    font-weight:750!important;
    letter-spacing:.01em!important
}
.trip-legal-mini-chevron{
    display:grid!important;
    place-items:center!important;
    color:#7890a5!important;
    font-size:10px!important;
    transition:transform .18s ease!important
}
.trip-legal-mini[open] .trip-legal-mini-chevron{transform:rotate(180deg)!important}
.trip-legal-mini-body{
    padding:0 12px 11px 42px!important;
    border-top:1px solid rgba(164,190,214,.08)!important
}
.trip-legal-mini-body p{
    margin:9px 0 0!important;
    color:#8fa5b8!important;
    font-size:9.8px!important;
    line-height:1.48!important;
    font-weight:500!important
}
.trip-legal-mini-body strong{
    color:#b8c7d4!important;
    font-weight:800!important
}
@media(max-width:370px){
    .trip-legal-mini{margin-left:0!important;margin-right:0!important}
    .trip-legal-mini>summary{padding:8px 10px!important}
    .trip-legal-mini-body{padding:0 10px 10px 40px!important}
    .trip-legal-mini-body p{font-size:9.4px!important}
}
/* H025E7_TRIP_LEGAL_END */

/* H031C1_PASSENGER_UI
   My Trips passenger only. Dark HopCar palette is preserved. */
.mytrip-premium-item.passenger-trip{
  display:grid;
  gap:9px;
  margin-bottom:14px;
}
.mytrip-premium-item.passenger-trip .mytrip-booking-summary{
  position:relative;
  overflow:hidden;
  padding:11px 12px;
  border-color:rgba(244,122,42,.22);
  background:
    radial-gradient(circle at 100% 0,rgba(244,122,42,.14),transparent 42%),
    linear-gradient(145deg,rgba(25,72,111,.98),rgba(10,39,68,.98));
}
.mytrip-premium-item.passenger-trip .mytrip-booking-summary:before{
  content:"";
  position:absolute;
  left:0;top:0;bottom:0;width:3px;
  background:linear-gradient(180deg,#68b8ec 0 50%,#f47a2a 50% 100%);
}
.mytrip-premium-item.passenger-trip .mytrip-booking-check{
  box-shadow:0 0 0 4px rgba(244,122,42,.08);
}
.mytrip-premium-item.passenger-trip .mytrip-total b{color:#ffad5b}

.mytrip-premium-item.passenger-trip .mytrip-route-card{
  margin:0!important;
  padding:11px 12px 9px!important;
  border-radius:20px!important;
}
.mytrip-premium-item.passenger-trip .h031c1-date-role{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin:0 0 7px;
}
.mytrip-premium-item.passenger-trip .h031c1-date-role .trip-date-inline{
  margin:0!important;
  font-size:18px!important;
  line-height:1.08!important;
  font-weight:900!important;
  letter-spacing:-.2px;
}
.mytrip-premium-item.passenger-trip .h031c1-date-role .h029-role-pill.passenger{
  flex:0 0 auto;
  margin:0;
  background:rgba(71,151,208,.15);
  border:1px solid rgba(104,184,236,.18);
  color:#c6e5f8;
}
.mytrip-premium-item.passenger-trip .trip-route-wrap{
  margin-top:0!important;
  margin-bottom:0!important;
  padding-bottom:0!important;
}
.mytrip-premium-item.passenger-trip .passenger-route{
  margin-bottom:0!important;
  padding-top:2px!important;
  padding-bottom:0!important;
}
.mytrip-premium-item.passenger-trip .selected-route-row{
  min-height:0!important;
  margin:0!important;
  padding-top:3px!important;
  padding-bottom:3px!important;
}
.mytrip-premium-item.passenger-trip .selected-route-row>time{
  font-size:19px!important;
  line-height:1!important;
}
.mytrip-premium-item.passenger-trip .selected-place strong{
  font-size:16px!important;
  line-height:1.08!important;
}
.mytrip-premium-item.passenger-trip .selected-place small{
  margin-top:2px!important;
  font-size:9.5px!important;
  line-height:1.15!important;
}
.mytrip-premium-item.passenger-trip .local-time-line{
  margin:4px 0 0!important;
  padding:0!important;
  font-size:8px!important;
  line-height:1.15!important;
}
.mytrip-premium-item.passenger-trip .advantages-grid{
  margin-top:7px!important;
  padding-top:7px!important;
  gap:5px!important;
}
.mytrip-premium-item.passenger-trip .advantages-grid>*{
  min-height:48px!important;
  padding:5px 3px!important;
}

/* Driver: same dark HopCar card, never white. Existing component/data/profile link preserved. */
.mytrip-premium-item.passenger-trip .premium-driver{
  margin-top:0!important;
  padding:11px 12px!important;
  grid-template-columns:52px minmax(0,1fr) 20px!important;
  gap:11px!important;
  align-items:center!important;
  border-radius:18px!important;
  background:linear-gradient(145deg,rgba(24,67,103,.96),rgba(9,37,64,.96))!important;
  border:1px solid rgba(184,211,231,.13)!important;
  box-shadow:none!important;
  color:#fff!important;
}
.mytrip-premium-item.passenger-trip .premium-driver .avatar{
  width:52px!important;height:52px!important;
  border-radius:50%!important;
  overflow:hidden!important;
}
.mytrip-premium-item.passenger-trip .premium-driver .avatar img{
  width:100%;height:100%;object-fit:cover;display:block;
}
.mytrip-premium-item.passenger-trip .premium-driver .driver-copy strong{
  font-size:16px!important;line-height:1.1!important;color:#fff!important;
}
.mytrip-premium-item.passenger-trip .premium-driver .driver-copy small{
  margin-top:4px!important;color:#aebfd0!important;font-size:10px!important;
}
.mytrip-premium-item.passenger-trip .premium-driver .rating,
.mytrip-premium-item.passenger-trip .premium-driver .driver-rating{
  color:#ffad5b!important;
}
.mytrip-premium-item.passenger-trip .premium-driver .driver-chevron{
  color:#9eb7ca!important;font-size:15px!important;
}

/* Full existing vehicle card/gallery is reused; no simplified replacement. */
.mytrip-premium-item.passenger-trip .vehicle-trip-card{
  margin-top:0!important;
}
.mytrip-premium-item.passenger-trip .mytrip-section-title{
  margin:11px 2px 7px!important;
}
/* /H031C1_PASSENGER_UI */

