/* DI-TAX FAST 10s + VOICE V5 — 23.08.2026 */
.ttUltraFastBox{margin:0 0 10px;padding:10px;border:1px solid rgba(34,197,94,.35);border-radius:17px;background:linear-gradient(135deg,rgba(34,197,94,.10),rgba(14,165,233,.08));box-shadow:0 8px 22px rgba(0,0,0,.12)}
.ttUltraFastLabel{display:block;margin:0 0 6px;font-size:15px;font-weight:1000;color:#bbf7d0;letter-spacing:.02em}
.ttUltraFastRow{display:grid;grid-template-columns:minmax(0,1fr) 50px 50px;gap:8px;align-items:stretch}
.ttUltraFastInputWrap{position:relative;min-width:0}
.ttUltraFastInputWrap>span{position:absolute;left:11px;top:50%;transform:translateY(-50%);font-size:18px;z-index:2;pointer-events:none}
.ttUltraFastInput{width:100%;min-width:0;height:50px;padding:9px 12px 9px 39px!important;border-radius:14px!important;font-weight:900!important;font-size:16px!important;box-sizing:border-box}
.ttVoiceIconBtn,.ttFastTargetBtn,.ttStopAddBtn,.ttStopTinyBtn,.ttQuickMapBtnReworked{width:50px;height:50px;border-radius:14px;border:1px solid rgba(125,211,252,.28);background:rgba(14,165,233,.12);color:#e0f2fe;font-size:20px;font-weight:1000;display:flex;align-items:center;justify-content:center;box-shadow:0 5px 14px rgba(0,0,0,.18);touch-action:manipulation;position:relative;padding:0}
.ttFastTargetBtn,.ttQuickMapBtnReworked{background:rgba(250,204,21,.10);border-color:rgba(250,204,21,.30);color:#fde68a}
.ttStopAddBtn{background:rgba(34,197,94,.10);border-color:rgba(34,197,94,.28);color:#86efac}
.ttStopAddBtn.active{background:rgba(34,197,94,.18);box-shadow:0 0 0 3px rgba(34,197,94,.18),0 5px 14px rgba(0,0,0,.18)}
.ttBtnIcon{display:flex;align-items:center;justify-content:center;width:24px;height:24px;line-height:1}
.ttBtnIcon svg{width:24px;height:24px;display:block}
.ttBtnBadge{position:absolute;right:4px;bottom:4px;min-width:18px;height:18px;padding:0 4px;border-radius:999px;background:rgba(2,6,23,.75);color:#7dd3fc;font-size:9px;font-weight:1000;display:flex;align-items:center;justify-content:center;letter-spacing:.02em;border:1px solid rgba(125,211,252,.2)}
.ttVoiceIconBtn.attention{animation:ttMicIdle 1.85s ease-in-out infinite}
.ttVoiceIconBtn.listening{background:#dc2626;border-color:#fb7185;animation:ttMicPulse .8s ease-in-out infinite alternate;color:#fff}
@keyframes ttMicPulse{to{transform:scale(1.06);box-shadow:0 0 0 6px rgba(239,68,68,.16)}}
@keyframes ttMicIdle{0%,100%{transform:translateY(0);box-shadow:0 5px 14px rgba(0,0,0,.18)}50%{transform:translateY(-1px);box-shadow:0 0 0 4px rgba(59,130,246,.12),0 6px 16px rgba(0,0,0,.20)}}
.ttVoiceStatus{min-height:22px;margin-top:6px;color:#d7e8f7;font-size:13px;font-weight:900;line-height:1.38}
.ttVoiceStatus.ok{color:#86efac}.ttVoiceStatus.busy{color:#7dd3fc}.ttVoiceStatus.err{color:#fca5a5}
.ttManualFields{margin-top:8px;border:1px solid rgba(148,163,184,.18);border-radius:13px;background:rgba(15,23,42,.20);overflow:hidden}
.ttManualFields>summary{list-style:none;cursor:pointer;padding:10px 12px;font-size:12px;font-weight:1000;color:#cbd5e1;touch-action:manipulation}
.ttManualFields>summary::-webkit-details-marker{display:none}
.ttManualFields[open]>summary{border-bottom:1px solid rgba(148,163,184,.14);color:#f8fafc}
.ttManualInner{padding:10px}
.ttQuickPickupRecent,.ttQuickVoiceChips{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;margin-top:6px;padding-bottom:1px}.ttQuickPickupRecent::-webkit-scrollbar,.ttQuickVoiceChips::-webkit-scrollbar{display:none}
.ttFastChip{flex:0 0 auto;border:1px solid rgba(125,211,252,.20);border-radius:999px;background:rgba(14,165,233,.07);color:#dbeafe;padding:7px 10px;font-size:11px;font-weight:900;max-width:210px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ttQuickDestinationRow,.ttQuickDestinationRowV5{grid-template-columns:minmax(0,1fr) 50px 50px 50px!important;gap:8px!important;align-items:stretch!important}
.ttQuickDestinationHintV5{margin-top:6px!important;font-size:12px!important;line-height:1.4!important;color:#e6edf8!important}
body.ttBookStepPickup .ttBookHint,body.ttBookStepDestination .ttBookHint{display:none!important}
body.ttBookStepDestination .ttQuickDestinationHint{display:block!important}
body.ttBookStepPickup .ttBookStage,body.ttBookStepDestination .ttBookStage{padding-top:8px!important}
#ttPickupManualDetails .inp-group{margin:0!important}
#ttPickupManualDetails .gpsDetectedBox{display:none!important}
body.ttBookStepDestination .ttQuickDestinationBox{padding:9px!important;margin-bottom:6px!important}
body.ttBookStepDestination .ttQuickDestinationLabel{margin-bottom:6px!important}
.ttStopoverBox{margin-top:7px;padding:10px;border:1px solid rgba(250,204,21,.22);border-radius:16px;background:linear-gradient(180deg,rgba(250,204,21,.08),rgba(59,130,246,.05))}
.ttStopoverHead{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:7px}
.ttStopoverTitle{display:flex;align-items:center;gap:8px;color:#fde68a;font-size:13px;font-weight:1000;letter-spacing:.01em}
.ttStopoverTitleIcon{display:flex;width:18px;height:18px}
.ttStopoverTitleIcon svg{width:18px;height:18px;display:block}
.ttStopTinyBtn{width:36px;height:36px;border-radius:12px;background:rgba(15,23,42,.35);border-color:rgba(148,163,184,.2);color:#cbd5e1}
.ttStopoverRow{display:grid;grid-template-columns:minmax(0,1fr);gap:8px}
.ttStopInlineIcon{font-size:17px!important}
.ttStopQuickInput{padding-left:40px!important}
.ttStopoverStatus{margin-top:6px;font-size:12px;color:#dbeafe}
.ttRouteNum{font-weight:1000;color:#fff}
@media(max-width:420px){.ttUltraFastRow,.ttQuickDestinationRow,.ttQuickDestinationRowV5{grid-template-columns:minmax(0,1fr) 44px 44px 44px!important;gap:6px!important}.ttVoiceIconBtn,.ttFastTargetBtn,.ttStopAddBtn,.ttQuickMapBtnReworked{width:44px;height:46px}.ttUltraFastInput{height:46px;font-size:15px!important}.ttBtnIcon svg{width:22px;height:22px}.ttVoiceStatus{font-size:12px}}
@media(prefers-reduced-motion:reduce){.ttVoiceIconBtn.attention,.ttVoiceIconBtn.listening{animation:none}}


/* V7 — DESTINATION TOOLS: jedan red, centrirano, 5px razmaka */
.ttQuickDestinationRow,.ttQuickDestinationRowV5{display:block!important;grid-template-columns:none!important}
.ttQuickDestinationRow>.input-icon-wrapper,.ttQuickDestinationRowV5>.input-icon-wrapper{width:100%!important}
.ttDestToolRow{display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:center!important;gap:5px!important;margin:7px auto 3px!important;width:100%!important}
.ttDestToolRow .ttVoiceIconBtn,.ttDestToolRow .ttQuickMapBtnReworked,.ttDestToolRow .ttStopAddBtn{flex:0 0 auto!important;margin:0!important}
.ttDestVoiceStatus{margin:3px 6px 0!important;font-size:13px!important;line-height:1.4!important;text-align:left!important;color:#e7edf7!important}
.ttStopSequence{display:flex;flex-wrap:wrap;gap:5px;margin:7px 0 2px}.ttStopSequence[hidden]{display:none!important}
.ttStopSeqChip{display:inline-flex;align-items:center;gap:5px;padding:7px 9px;border-radius:999px;background:rgba(250,204,21,.09);border:1px solid rgba(250,204,21,.25);color:#fde68a;font-size:11px;font-weight:900}
.ttStopSeqChip b{display:inline-flex;align-items:center;justify-content:center;width:19px;height:19px;border-radius:50%;background:#facc15;color:#111827;font-size:10px}
.ttRouteSequence{display:inline-block;margin-top:4px;color:#fde68a;font-size:12px;font-weight:900;line-height:1.35}
.ttStopMarkerWrap{background:transparent!important;border:0!important}
.ttStopMarker{width:34px;height:40px;position:relative;filter:drop-shadow(0 4px 5px rgba(0,0,0,.38))}
.ttStopMarker:before{content:"";position:absolute;left:4px;top:2px;width:26px;height:26px;border-radius:50% 50% 50% 0;background:#f59e0b;border:3px solid white;transform:rotate(-45deg);box-sizing:border-box}
.ttStopMarker span{position:absolute;left:0;top:4px;width:34px;text-align:center;color:#111827;font-size:11px;font-weight:1000;z-index:2}
@media(max-width:420px){.ttDestToolRow{gap:5px!important}.ttDestToolRow .ttVoiceIconBtn,.ttDestToolRow .ttQuickMapBtnReworked,.ttDestToolRow .ttStopAddBtn{width:46px!important;height:46px!important}.ttDestVoiceStatus{font-size:12px!important}}

/* V7.6 — jasno višestruko zaustavljanje */
.ttStopSequence{display:grid;gap:7px;margin-top:8px}
.ttStopSequence[hidden]{display:none!important}
.ttStopSeqRow{display:grid;grid-template-columns:34px minmax(0,1fr) 38px;gap:7px;align-items:center;padding:7px;border:1px solid rgba(250,204,21,.20);border-radius:13px;background:rgba(250,204,21,.055)}
.ttStopSeqNum{width:31px;height:31px;border-radius:999px;display:flex;align-items:center;justify-content:center;background:#facc15;color:#422006;font-size:14px;font-weight:1000;box-shadow:0 3px 10px rgba(0,0,0,.18)}
.ttStopSeqFieldWrap{min-width:0}
.ttStopSeqLabel{font-size:10px;line-height:1.1;color:#fde68a;font-weight:1000;letter-spacing:.05em;margin:0 0 4px}
.ttStopSeqInput{width:100%;height:42px;box-sizing:border-box;border-radius:11px!important;padding:7px 10px!important;font-size:15px!important;font-weight:1000!important;background:#fff!important;color:#111827!important;border:1px solid rgba(250,204,21,.75)!important}
.ttStopSeqRemove{width:36px;height:36px;border-radius:11px;border:1px solid rgba(248,113,113,.24);background:rgba(127,29,29,.16);color:#fecaca;font-size:24px;font-weight:900;line-height:1}


/* =========================================================
   DI-TAX KORISNIK REDESIGN — FAZA 2
   Primarni BRZI UNOS + kompaktni ručni fallback + overlay prijedlozi.
   Funkcionalnost pretrage, glasa, PIN-a, zaustavljanja i rute nije mijenjana.
   ========================================================= */
body.ttBookStepDestination #ttDestinationGroup{position:relative;overflow:visible!important}
body.ttBookStepDestination .ttQuickDestinationBox{
  position:relative;z-index:30;margin:0 0 7px!important;padding:10px!important;
  border:1px solid rgba(34,197,94,.38)!important;border-radius:17px!important;
  background:linear-gradient(145deg,rgba(34,197,94,.11),rgba(14,165,233,.08))!important;
  box-shadow:0 8px 22px rgba(0,0,0,.14)!important
}
body.ttBookStepDestination .ttQuickDestinationLabel{
  display:block!important;margin:0 0 7px!important;font-size:16px!important;line-height:1.2!important;
  color:#bbf7d0!important;font-weight:1000!important;letter-spacing:.015em!important
}
body.ttBookStepDestination .ttQuickDestinationHint{
  margin:5px 2px 0!important;font-size:11.5px!important;line-height:1.35!important;color:#cbd5e1!important
}
body.ttBookStepDestination #ttDestToolRow{margin:6px auto 2px!important}
body.ttBookStepDestination #ttDestVoiceStatus{min-height:0!important;margin:4px 3px 0!important;font-size:12px!important;line-height:1.35!important}
body.ttBookStepDestination #ttDestinationManualDetails{margin-top:7px!important}
body.ttBookStepDestination #ttDestinationManualDetails>summary{
  padding:9px 11px!important;color:#cbd5e1!important;background:rgba(15,23,42,.24)!important
}
body.ttBookStepDestination #ttDestinationManualDetails .ttManualInner{padding:9px!important}

/* Prijedlozi su lebdeći panel: više ne guraju ostatak koraka prema dolje. */
body.ttBookStepDestination #ttSuggest_ttQuickDestination{
  position:absolute!important;left:10px!important;right:10px!important;top:82px!important;width:auto!important;
  max-width:none!important;margin:0!important;z-index:5000!important;max-height:260px!important;overflow-y:auto!important;
  border-radius:14px!important;box-shadow:0 18px 34px rgba(0,0,0,.48)!important;background:#07111f!important
}
body.ttBookStepDestination #ttSuggest_ttQuickDestination .ttSuggestItem{padding:9px 10px!important;min-height:50px!important}
body.ttBookStepDestination #ttSuggest_ttQuickDestination .ttSuggestMain{font-size:13px!important}
body.ttBookStepDestination #ttSuggest_ttQuickDestination .ttSuggestSub{font-size:10.5px!important;margin-top:1px!important}

/* Ručna polja imaju svoj overlay samo kada su otvorena, također bez širenja glavnog toka. */
body.ttBookStepDestination #ttDestinationManualDetails[open]{position:relative;z-index:25;overflow:visible!important}
body.ttBookStepDestination #ttDestinationManualDetails .ttSuggestBox.open{
  position:absolute!important;left:9px!important;right:9px!important;width:auto!important;margin:2px 0 0!important;
  z-index:4900!important;max-height:230px!important;overflow-y:auto!important;background:#07111f!important;
  box-shadow:0 16px 30px rgba(0,0,0,.44)!important
}

/* Na manjim ekranima prioritet je jedan viewport i veliki touch ciljevi. */
@media(max-width:430px){
  body.ttBookStepDestination .ttBookStage{padding:7px 9px 9px!important}
  body.ttBookStepDestination .ttQuickDestinationBox{padding:8px!important}
  body.ttBookStepDestination .ttQuickDestinationLabel{font-size:15px!important}
  body.ttBookStepDestination .ttQuickDestinationHint{font-size:10.8px!important}
  body.ttBookStepDestination #ttSuggest_ttQuickDestination{left:8px!important;right:8px!important;top:76px!important;max-height:240px!important}
}

/* FAZA 2 FINAL v3.22 — X unutar polja odredišta */
.ttDestinationInputWithClear{position:relative!important}
.ttDestinationInputWithClear #ttQuickDestination{padding-right:48px!important}
.ttDestinationClearBtn{position:absolute;right:8px;top:50%;transform:translateY(-50%);z-index:4;width:36px;height:36px;border:0;border-radius:50%;background:rgba(15,23,42,.10);color:#475569;font-size:30px;font-weight:900;line-height:32px;display:grid;place-items:center;cursor:pointer;padding:0}
.ttDestinationClearBtn:hover,.ttDestinationClearBtn:focus-visible{background:rgba(250,204,21,.20);color:#111827;outline:2px solid rgba(250,204,21,.72)}
.ttDestinationClearBtn[hidden]{display:none!important}


/* DI-TAX DOTJERIVANJE 2A/2B — jedan slot, dva međusobno isključiva pogleda */
.ttDestinationModeSlot{display:block;width:100%;min-width:0}
.ttDestinationModePanel{display:block;width:100%;min-width:0}
.ttDestinationModePanel[hidden]{display:none!important}
#ttDestinationManualPanel #ttDestinationManualDetails{display:block!important;margin:0!important;border:1px solid rgba(148,163,184,.18);border-radius:16px;overflow:hidden}
#ttDestinationManualPanel #ttDestinationManualDetails .ttManualInner{display:block!important;padding:10px!important}
#ttDestinationManualPanel #ttDestinationManualDetails>summary{display:none!important}
.ttInputModeSwitch{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:42px;padding:8px 13px;border-radius:13px;font:900 13px/1.1 inherit;letter-spacing:.02em;cursor:pointer;touch-action:manipulation}
.ttInputModeManual{margin:8px 0 0 auto;border:1px solid rgba(250,204,21,.62);background:rgba(250,204,21,.10);color:#fde68a}
.ttInputModeAi{margin:0 0 10px auto;border:1px solid rgba(56,189,248,.55);background:rgba(14,165,233,.12);color:#bae6fd}
.ttInputModeSwitch span{font-size:20px;line-height:1}
body.ttBookStepDestination #ttDestinationModeSlot{margin:0!important}
body.ttBookStepDestination #ttDestinationAiPanel,
body.ttBookStepDestination #ttDestinationManualPanel{margin:0!important}
@media(max-width:430px){
  .ttInputModeSwitch{min-height:38px;padding:7px 11px;font-size:12px}
  #ttDestinationManualPanel #ttDestinationManualDetails .ttManualInner{padding:8px!important}
}

/* DI-TAX FINAL 2A/2B — 2026-08-27
   Jedno polje = AI GOVORNI ILI RUČNI unos. Nema gumba RUČNI UNOS / AI UNOS. */
#ttSwitchToManual,#ttSwitchToAi,.ttInputModeSwitch{display:none!important}
.ttDestinationLegacyFields{display:none!important}
.ttDestinationUnifiedMode .ttQuickDestinationBox{margin-bottom:0!important}
.ttDestinationUnifiedMode #ttDestToolRow{margin-top:10px!important}
body.ttBookStepDestination .ttQuickDestinationLabel{font-size:18px!important;font-weight:1000!important;letter-spacing:.01em!important;text-transform:none!important}
body.ttBookStepDestination #ttQuickDestination{font-size:17px!important;font-weight:900!important}


/* EKRAN 2A — premještena postojeća funkcija odabira odredišta na karti. */
body.ttBookStepDestination .ttDestinationToolsOn2A{display:block!important;margin:10px 0 0!important}
body.ttBookStepDestination .ttDestinationToolsOn2A .ttMapPickBtn{display:flex!important;align-items:center!important;justify-content:center!important;width:100%!important;min-height:54px!important;font-size:15px!important;font-weight:1000!important}
