/* Jetcar Kromh V25 — premium order preparation journey */
:root{
  --oj-ink:#071522;
  --oj-ink-2:#10283a;
  --oj-porcelain:#f7f3eb;
  --oj-cyan:#9cc9cc;
  --oj-bronze:#a66f47;
  --oj-line:rgba(7,21,34,.12);
  --oj-enter:cubic-bezier(.16,1,.3,1);
  --oj-standard:cubic-bezier(.2,0,0,1);
}
.order-journey{
  width:min(760px,calc(100vw - 32px));
  max-width:none;
  max-height:min(92svh,900px);
  padding:0;
  border:0;
  border-radius:18px;
  overflow:visible;
  background:transparent;
  color:var(--oj-ink);
  opacity:0;
  transform:translate3d(0,20px,0) scale(.975);
  transition:opacity .28s var(--oj-standard),transform .44s var(--oj-enter),overlay .28s allow-discrete,display .28s allow-discrete;
}
.order-journey[open]{opacity:1;transform:none}
@starting-style{.order-journey[open]{opacity:0;transform:translate3d(0,20px,0) scale(.975)}}
.order-journey::backdrop{
  background:rgba(2,9,16,.78);
  opacity:0;
  backdrop-filter:blur(0);
  transition:opacity .3s ease,backdrop-filter .48s ease,overlay .3s allow-discrete,display .3s allow-discrete;
}
.order-journey[open]::backdrop{opacity:1;backdrop-filter:blur(12px)}
@starting-style{.order-journey[open]::backdrop{opacity:0;backdrop-filter:blur(0)}}
.order-journey-card{
  position:relative;
  max-height:min(92svh,900px);
  overflow:auto;
  overscroll-behavior:contain;
  scrollbar-width:thin;
  border:1px solid rgba(255,255,255,.34);
  border-radius:18px;
  background:linear-gradient(145deg,rgba(255,255,255,.98),rgba(247,243,235,.98));
  box-shadow:0 48px 140px rgba(0,8,16,.46);
}
.order-journey-card::before{
  content:"";
  position:absolute;
  inset:0 0 auto;
  height:3px;
  background:linear-gradient(90deg,var(--oj-bronze),var(--oj-cyan),var(--oj-bronze));
  background-size:220% 100%;
  animation:ojSheen 2.8s linear infinite;
}
.order-journey-close{
  position:absolute;
  z-index:5;
  top:14px;
  right:14px;
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  border:1px solid var(--oj-line);
  border-radius:50%;
  background:rgba(255,255,255,.72);
  color:var(--oj-ink);
  font:400 25px/1 Arial,sans-serif;
  cursor:pointer;
  transition:transform .16s ease,background .2s ease,border-color .2s ease,opacity .2s ease;
}
html[dir="rtl"] .order-journey-close{right:auto;left:14px}
.order-journey[data-state="processing"] .order-journey-close{opacity:0;pointer-events:none}
.order-journey-close:hover{background:#fff;border-color:rgba(7,21,34,.25)}
.order-journey-close:active{transform:scale(.94)}
.order-journey-view{display:none;padding:56px 58px 48px;text-align:center}
.order-journey-view.is-active{display:block;animation:ojViewIn .5s var(--oj-enter) both}
.order-journey-kicker{
  display:block;
  margin-bottom:12px;
  color:#45636e;
  font-size:10px;
  font-weight:800;
  letter-spacing:.16em;
  text-transform:uppercase;
}
.order-journey h2{
  max-width:620px;
  margin:0 auto 13px;
  color:var(--oj-ink);
  font-family:Manrope,"IBM Plex Sans Arabic",Arial,sans-serif!important;
  font-size:clamp(28px,4.8vw,48px);
  line-height:1.08;
  letter-spacing:-.05em;
}
html[dir="rtl"] .order-journey h2{font-family:"IBM Plex Sans Arabic",Manrope,Arial,sans-serif!important;letter-spacing:0;line-height:1.28}
.order-journey-view>p{max-width:590px;margin:0 auto;color:#64727b;font-size:13px;line-height:1.8}
.order-journey-visual{
  position:relative;
  width:154px;
  height:154px;
  display:grid;
  place-items:center;
  margin:4px auto 30px;
}
.order-journey-diamond{
  width:58px;
  color:var(--oj-ink);
  filter:drop-shadow(0 10px 18px rgba(7,21,34,.16));
  animation:ojDiamondFloat 2.4s var(--oj-enter) infinite alternate;
}
.order-journey-diamond path{stroke:currentColor;stroke-width:2;stroke-linejoin:round;stroke-dasharray:180;stroke-dashoffset:180;animation:ojDiamondDraw 1.4s var(--oj-enter) forwards}
.order-journey-diamond path+path{animation-delay:.18s}
.order-journey-orbit{position:absolute;inset:10px;border:1px solid rgba(7,21,34,.15);border-radius:50%;animation:ojOrbit 3.8s linear infinite}
.order-journey-orbit::before{content:"";position:absolute;top:-4px;left:50%;width:8px;height:8px;border-radius:50%;background:var(--oj-bronze);box-shadow:0 0 0 6px rgba(166,111,71,.11)}
.order-journey-orbit.orbit-two{inset:24px;border-color:rgba(49,93,109,.22);animation-direction:reverse;animation-duration:2.9s}
.order-journey-orbit.orbit-two::before{background:var(--oj-cyan);box-shadow:0 0 0 5px rgba(156,201,204,.14)}
.order-journey-progress{height:3px;max-width:520px;margin:31px auto 22px;overflow:hidden;border-radius:999px;background:rgba(7,21,34,.09)}
.order-journey-progress span{display:block;width:18%;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--oj-bronze),var(--oj-cyan));transition:width .65s var(--oj-enter);box-shadow:0 0 16px rgba(156,201,204,.4)}
.order-journey[data-stage="save"] .order-journey-progress span{width:58%}
.order-journey[data-stage="invoice"] .order-journey-progress span{width:86%}
.order-journey[data-state="success"] .order-journey-progress span{width:100%}
.order-journey-steps{max-width:560px;display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:0 auto;padding:0;list-style:none}
.order-journey-steps li{display:flex;align-items:center;justify-content:center;gap:8px;min-width:0;color:#829099;font-size:10px;font-weight:700;transition:color .32s ease,transform .35s var(--oj-enter)}
.order-journey-steps i{width:9px;height:9px;flex:0 0 auto;border:1px solid currentColor;border-radius:50%;background:transparent;transition:background .25s ease,box-shadow .25s ease,transform .35s var(--oj-enter)}
.order-journey[data-stage="validate"] [data-order-step="validate"],
.order-journey[data-stage="save"] [data-order-step="save"],
.order-journey[data-stage="invoice"] [data-order-step="invoice"]{color:var(--oj-ink);transform:translateY(-1px)}
.order-journey[data-stage="validate"] [data-order-step="validate"] i,
.order-journey[data-stage="save"] [data-order-step="save"] i,
.order-journey[data-stage="invoice"] [data-order-step="invoice"] i{background:var(--oj-bronze);border-color:var(--oj-bronze);box-shadow:0 0 0 5px rgba(166,111,71,.12);transform:scale(1.05)}
.order-journey[data-stage="save"] [data-order-step="validate"],
.order-journey[data-stage="invoice"] [data-order-step="validate"],
.order-journey[data-stage="invoice"] [data-order-step="save"]{color:#315d6d}
.order-journey[data-stage="save"] [data-order-step="validate"] i,
.order-journey[data-stage="invoice"] [data-order-step="validate"] i,
.order-journey[data-stage="invoice"] [data-order-step="save"] i{background:#315d6d;border-color:#315d6d;box-shadow:none}
.order-journey-pulse{height:18px;display:flex;justify-content:center;align-items:flex-end;gap:5px;margin-top:28px}
.order-journey-pulse span{width:4px;height:7px;border-radius:999px;background:#315d6d;animation:ojPulse .9s ease-in-out infinite alternate}
.order-journey-pulse span:nth-child(2){animation-delay:.15s}.order-journey-pulse span:nth-child(3){animation-delay:.3s}
.order-success-mark{width:84px;height:84px;margin:0 auto 24px}
.order-success-mark svg{width:100%;height:100%;overflow:visible}
.order-success-mark circle{fill:#edf5f1;stroke:#2e7b62;stroke-width:2;stroke-dasharray:160;stroke-dashoffset:160;animation:ojCircle .75s var(--oj-enter) .08s forwards}
.order-success-mark path{fill:none;stroke:#2e7b62;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:42;stroke-dashoffset:42;animation:ojCheck .5s var(--oj-enter) .52s forwards}
.order-journey-model{display:grid;grid-template-columns:150px 1fr;gap:18px;align-items:center;max-width:590px;margin:28px auto 16px;padding:12px;border:1px solid var(--oj-line);border-radius:12px;background:rgba(255,255,255,.62);text-align:left}
html[dir="rtl"] .order-journey-model{text-align:right}
.order-journey-model img{width:150px;aspect-ratio:16/9;height:auto;object-fit:cover;border-radius:8px;background:#dfe5e6}
.order-journey-model small,.order-journey-meta span{display:block;color:#7b878e;font-size:9px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.order-journey-model strong{display:block;margin:5px 0 3px;font-size:22px;letter-spacing:-.04em}
.order-journey-model span{color:#315d6d;font-size:12px;font-weight:800;font-variant-numeric:tabular-nums}
.order-journey-meta{display:grid;grid-template-columns:1fr 1fr;gap:1px;max-width:590px;margin:0 auto 18px;overflow:hidden;border:1px solid var(--oj-line);border-radius:10px;background:var(--oj-line);text-align:left}
html[dir="rtl"] .order-journey-meta{text-align:right}
.order-journey-meta div{min-width:0;padding:14px 16px;background:#fff}
.order-journey-meta strong{display:block;margin-top:6px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-variant-numeric:tabular-nums}
.order-journey-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;max-width:590px;margin:0 auto}
.order-journey-action{min-height:72px!important;display:flex!important;flex-direction:column;align-items:flex-start!important;justify-content:center!important;gap:5px!important;padding:14px 18px!important;text-align:left!important}
html[dir="rtl"] .order-journey-action{align-items:flex-end!important;text-align:right!important}
.order-journey-action span{font-size:11px;font-weight:800;letter-spacing:.02em}
.order-journey-action small{font-size:9px;font-weight:500;opacity:.62;text-transform:none;letter-spacing:0}
.order-journey-secondary{margin:17px auto 0;padding:8px 12px;border:0;background:transparent;color:#607079;font:700 10px/1.2 Manrope,"IBM Plex Sans Arabic",Arial,sans-serif;text-decoration:underline;text-underline-offset:4px;cursor:pointer}
.order-journey-security{display:flex;align-items:flex-start;justify-content:center;gap:8px!important;max-width:590px!important;margin-top:18px!important;font-size:9px!important;color:#7b878e!important}
.order-journey-security::before{content:"◇";flex:0 0 auto;color:#315d6d;font-size:15px;line-height:1}
.order-error-mark{width:70px;height:70px;display:grid;place-items:center;margin:0 auto 24px;border:1px solid #bd725f;border-radius:50%;background:#f9ece8;color:#9d4d3c;font-size:28px;font-weight:800}
.order-journey-error-actions{display:flex;justify-content:center;gap:10px;margin-top:28px}
body.order-journey-open{overflow:hidden}
@keyframes ojViewIn{from{opacity:0;transform:translate3d(0,12px,0)}to{opacity:1;transform:none}}
@keyframes ojSheen{to{background-position:220% 0}}
@keyframes ojOrbit{to{transform:rotate(360deg)}}
@keyframes ojDiamondFloat{from{transform:translateY(2px)}to{transform:translateY(-4px)}}
@keyframes ojDiamondDraw{to{stroke-dashoffset:0}}
@keyframes ojPulse{from{height:5px;opacity:.35}to{height:17px;opacity:1}}
@keyframes ojCircle{to{stroke-dashoffset:0}}
@keyframes ojCheck{to{stroke-dashoffset:0}}
@media(max-width:767px){
  .order-journey{width:calc(100vw - 18px);max-height:calc(100svh - 18px);margin:auto}
  .order-journey-card{max-height:calc(100svh - 18px);border-radius:14px}
  .order-journey-view{padding:48px 18px 30px}
  .order-journey-close{top:10px;right:10px;width:38px;height:38px}
  html[dir="rtl"] .order-journey-close{right:auto;left:10px}
  .order-journey-visual{width:126px;height:126px;margin-bottom:22px}
  .order-journey h2{font-size:31px}
  .order-journey-view>p{font-size:12px;line-height:1.75}
  .order-journey-steps{gap:5px}
  .order-journey-steps li{flex-direction:column;gap:6px;font-size:8px;line-height:1.35;text-align:center}
  .order-journey-model{grid-template-columns:110px 1fr;gap:12px}
  .order-journey-model img{width:110px}
  .order-journey-model strong{font-size:18px}
  .order-journey-meta{grid-template-columns:1fr}
  .order-journey-actions{grid-template-columns:1fr}
  .order-journey-action{min-height:66px!important}
  .order-journey-error-actions{flex-direction:column}
  .order-journey-error-actions .button{width:100%}
}
@media(prefers-reduced-motion:reduce){
  .order-journey,.order-journey::backdrop,.order-journey-progress span,.order-journey-steps li,.order-journey-steps i{transition-duration:.01ms!important}
  .order-journey-card::before,.order-journey-diamond,.order-journey-diamond path,.order-journey-orbit,.order-journey-pulse span,.order-success-mark circle,.order-success-mark path,.order-journey-view.is-active{animation:none!important}
  .order-journey-diamond path{stroke-dashoffset:0}.order-success-mark circle,.order-success-mark path{stroke-dashoffset:0}
}
