/* TravelGo Paket Wisata Mobile — consolidated v4.5.337 */
@media(min-width:601px){
.tg-mobile-sort,.tg-mobile-per-person,.tg-mobile-card-arrow,.tg-sort-sheet,.tg-sort-backdrop{display:none!important}
}
/* migrated: tg-tour-mobile-filter-sheet-45323 */
@media(max-width:600px){
  .tg-tour-filter-trigger{
    position:relative!important;
    border:1px solid #e6edf5!important;
    background:linear-gradient(180deg,#f7f9fc 0%,#f2f6fa 100%)!important;
    box-shadow:0 4px 12px rgba(25,49,80,.05)!important;
  }

  .tg-tour-filter-trigger svg{
    width:18px!important;
    height:18px!important;
    color:#18324f!important;
  }

  .tg-filter-active-dot{
    position:absolute!important;
    top:7px!important;
    right:7px!important;
    width:6px!important;
    height:6px!important;
    border-radius:50%!important;
    background:#1477f8!important;
    box-shadow:0 0 0 2px #fff!important;
    opacity:0!important;
    transform:scale(.75)!important;
    transition:.18s ease!important;
  }

  .tg-tour-filter-trigger.has-filter .tg-filter-active-dot{
    opacity:1!important;
    transform:scale(1)!important;
  }

  body.tg-filter-open{
    overflow:hidden!important;
  }

  .tg-filter-panel{
    position:fixed!important;
    left:8px!important;
    right:8px!important;
    bottom:8px!important;
    top:auto!important;
    z-index:99999!important;
    width:auto!important;
    max-width:none!important;
    max-height:min(78vh,620px)!important;
    margin:0!important;
    padding:0!important;
    overflow:hidden!important;
    border:1px solid #e3eaf2!important;
    border-radius:22px!important;
    background:#fff!important;
    box-shadow:0 22px 60px rgba(24,47,76,.24)!important;
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
    transform:translateY(22px) scale(.985)!important;
    transition:opacity .2s ease,transform .2s ease,visibility .2s ease!important;
    box-sizing:border-box!important;
  }

  .tg-filter-panel.is-open{
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
    transform:translateY(0) scale(1)!important;
  }

  .tg-filter-panel::before{
    content:""!important;
    display:block!important;
    width:38px!important;
    height:4px!important;
    margin:9px auto 3px!important;
    border-radius:999px!important;
    background:#d9e1ea!important;
  }

  .tg-filter-head{
    position:sticky!important;
    top:0!important;
    z-index:3!important;
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:12px!important;
    padding:12px 14px 10px!important;
    border-bottom:1px solid #eef2f6!important;
    background:#fff!important;
  }

  .tg-filter-head h2{
    margin:0!important;
    color:#17314f!important;
    font-size:14px!important;
    line-height:1.2!important;
    font-weight:700!important;
  }

  .tg-filter-head button{
    padding:6px 9px!important;
    border:0!important;
    border-radius:8px!important;
    background:#f2f6fb!important;
    color:#4f6680!important;
    font-size:9px!important;
    font-weight:600!important;
  }

  .tg-filter-panel form{
    display:grid!important;
    gap:10px!important;
    max-height:calc(min(78vh,620px) - 92px)!important;
    padding:12px 14px 14px!important;
    overflow-y:auto!important;
    overscroll-behavior:contain!important;
    background:#fff!important;
  }

  .tg-filter-panel form>label,
  .tg-filter-panel .tg-filter-two label{
    display:grid!important;
    gap:6px!important;
    margin:0!important;
    color:#536981!important;
    font-size:9.5px!important;
    font-weight:600!important;
  }

  .tg-filter-panel input,
  .tg-filter-panel select{
    width:100%!important;
    min-height:40px!important;
    padding:0 11px!important;
    border:1px solid #dfe7f0!important;
    border-radius:11px!important;
    background:#f8fafc!important;
    color:#253d59!important;
    font-size:10px!important;
    box-shadow:none!important;
    outline:none!important;
    box-sizing:border-box!important;
  }

  .tg-filter-panel input:focus,
  .tg-filter-panel select:focus{
    border-color:#7fb3ff!important;
    background:#fff!important;
    box-shadow:0 0 0 3px rgba(20,119,248,.08)!important;
  }

  .tg-filter-two{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:8px!important;
  }

  .tg-filter-panel .tg-btn{
    position:sticky!important;
    bottom:0!important;
    width:100%!important;
    min-height:42px!important;
    margin:2px 0 0!important;
    border:0!important;
    border-radius:12px!important;
    background:linear-gradient(180deg,#1679fa 0%,#0868ee 100%)!important;
    color:#fff!important;
    font-size:10.5px!important;
    font-weight:700!important;
    box-shadow:0 8px 18px rgba(8,104,238,.18)!important;
  }

  .tg-filter-backdrop{
    position:fixed!important;
    inset:0!important;
    z-index:99998!important;
    background:rgba(14,28,45,.28)!important;
    backdrop-filter:blur(2px)!important;
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
    transition:.18s ease!important;
  }

  .tg-filter-backdrop.is-open{
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
  }
}

/* migrated: tg-tour-dedicated-sort-sheet-45328 */
.tg-sort-sheet,.tg-sort-backdrop{display:none}
@media(max-width:600px){
 body.tg-sort-open{overflow:hidden!important}
 .tg-sort-backdrop{display:block;position:fixed;inset:0;z-index:100000;background:rgba(14,28,45,.28);backdrop-filter:blur(2px);opacity:0;visibility:hidden;pointer-events:none;transition:.18s ease}
 .tg-sort-backdrop.is-open{opacity:1;visibility:visible;pointer-events:auto}
 .tg-sort-sheet{display:block;position:fixed;left:8px;right:8px;bottom:8px;z-index:100001;padding:0 14px 14px;border:1px solid #e3eaf2;border-radius:22px;background:#fff;box-shadow:0 22px 60px rgba(24,47,76,.24);opacity:0;visibility:hidden;pointer-events:none;transform:translateY(22px) scale(.985);transition:.2s ease;box-sizing:border-box}
 .tg-sort-sheet.is-open{opacity:1;visibility:visible;pointer-events:auto;transform:none}
 .tg-sort-handle{width:38px;height:4px;margin:9px auto 8px;border-radius:999px;background:#d9e1ea}
 .tg-sort-sheet-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:4px 0 10px;border-bottom:1px solid #eef2f6}
 .tg-sort-sheet-head span{display:block;margin-bottom:2px;color:#7a8ba0;font-size:7px;font-weight:700;letter-spacing:.08em}
 .tg-sort-sheet-head h2{margin:0;color:#17314f;font-size:14px;line-height:1.2;font-weight:650}
 .tg-sort-sheet-head button{display:grid;place-items:center;width:30px;height:30px;padding:0;border:0;border-radius:9px;background:#f3f6fa;color:#526981;font-size:20px;font-weight:300}
 .tg-sort-options{display:grid;gap:4px;padding-top:9px}
 .tg-sort-options button{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:42px;padding:0 11px;border:0;border-radius:11px;background:#fff;color:#334b66;font-size:10.5px;font-weight:500;text-align:left}
 .tg-sort-options button:active{background:#f5f8fc}
 .tg-sort-options i{width:16px;height:16px;border:1.5px solid #cdd8e5;border-radius:50%;box-sizing:border-box;position:relative;flex:0 0 16px}
 .tg-sort-options button.is-active{background:#f2f7ff;color:#0868ee;font-weight:650}
 .tg-sort-options button.is-active i{border-color:#1477f8}
 .tg-sort-options button.is-active i:after{content:"";position:absolute;inset:3px;border-radius:50%;background:#1477f8}
}

/* migrated: tg-tour-mobile-meta-favorite-polish-45330 */
@media(max-width:600px){
  /* Naikkan chip durasi sedikit tanpa mengubah tinggi kartu. */
  .tg-archive-grid .tg-tour-meta{
    position:relative!important;
    top:-4px!important;
    margin-bottom:-2px!important;
  }

  /* Favorite button: lebih ringan dan modern seperti native app. */
  .tg-archive-grid .tg-favorite-btn,
  .tg-archive-grid [data-favorite]{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:30px!important;
    height:30px!important;
    min-width:30px!important;
    min-height:30px!important;
    padding:0!important;
    border:1px solid rgba(221,230,240,.92)!important;
    border-radius:50%!important;
    background:rgba(255,255,255,.94)!important;
    color:#718399!important;
    box-shadow:0 3px 10px rgba(25,49,80,.08)!important;
    backdrop-filter:blur(8px)!important;
    -webkit-backdrop-filter:blur(8px)!important;
  }

  .tg-archive-grid .tg-favorite-btn svg,
  .tg-archive-grid [data-favorite] svg{
    display:block!important;
    width:15px!important;
    height:15px!important;
    stroke:currentColor!important;
    stroke-width:1.8!important;
    fill:none!important;
    margin:0!important;
    transform:none!important;
  }

  .tg-archive-grid .tg-favorite-btn.is-active,
  .tg-archive-grid [data-favorite].is-active{
    color:#ef476f!important;
    border-color:#ffe0e8!important;
    background:#fff7f9!important;
  }

  .tg-archive-grid .tg-favorite-btn.is-active svg,
  .tg-archive-grid [data-favorite].is-active svg{
    fill:currentColor!important;
  }

  .tg-archive-grid .tg-favorite-btn:active,
  .tg-archive-grid [data-favorite]:active{
    transform:scale(.94)!important;
  }
}


/* TravelGo v4.5.337 — mobile filter trigger click-layer hard fix */
@media(max-width:600px){
  .tg-tour-mobile-appbar{
    position:relative!important;
    z-index:20!important;
    isolation:isolate!important;
    overflow:visible!important;
  }
  .tg-tour-mobile-inner,.tg-tour-mobile-top{
    position:relative!important;
    z-index:2!important;
    overflow:visible!important;
  }
  .tg-tour-filter-trigger{
    position:relative!important;
    z-index:30!important;
    pointer-events:auto!important;
    touch-action:manipulation!important;
    cursor:pointer!important;
    -webkit-tap-highlight-color:transparent!important;
  }
  .tg-tour-filter-trigger svg,
  .tg-tour-filter-trigger path,
  .tg-tour-filter-trigger .tg-filter-active-dot{
    pointer-events:none!important;
  }
}
