/* BankMovie V105 — advanced search modal aligned with the latest quick-search visual language. */
:root{
  --bm-adv-violet:#8b5cf6;
  --bm-adv-pink:#ec4899;
  --bm-adv-blue:#3b82f6;
  --bm-adv-panel:#090a10;
  --bm-adv-panel-2:#11131c;
  --bm-adv-muted:rgba(255,255,255,.48);
}

/* ===== Advanced-filter toolbar ===== */
.search-page .filter-toolbar.bm-advanced-toolbar{
  max-width:1400px;
  margin:0 auto 22px;
  padding:14px 16px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  border:1px solid rgba(255,255,255,.075);
  border-radius:22px;
  background:
    radial-gradient(circle at 88% 0%,rgba(139,92,246,.13),transparent 38%),
    linear-gradient(145deg,rgba(255,255,255,.045),rgba(255,255,255,.018));
  box-shadow:0 16px 42px rgba(0,0,0,.22),inset 0 1px 0 rgba(255,255,255,.035);
}
.bm-advanced-toolbar-copy{min-width:0;display:flex;align-items:center;gap:12px}
.bm-advanced-toolbar-icon{
  width:44px;height:44px;flex:0 0 44px;border-radius:15px;display:grid;place-items:center;
  color:#fff;background:linear-gradient(135deg,var(--bm-adv-pink),var(--bm-adv-violet));
  box-shadow:0 12px 26px rgba(139,92,246,.2),inset 0 1px 0 rgba(255,255,255,.25)
}
.bm-advanced-toolbar-icon svg{width:20px;height:20px}
.bm-advanced-toolbar-text{min-width:0;display:flex;flex-direction:column;gap:2px}
.bm-advanced-toolbar-text strong{font-size:13px;font-weight:950;color:#fff}
.bm-advanced-toolbar-text small{font-size:10px;font-weight:700;color:rgba(255,255,255,.43);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.search-page .filter-modal-btn{
  min-height:46px;padding:0 15px 0 11px;border-radius:16px;display:inline-flex;align-items:center;justify-content:center;gap:10px;
  color:#fff;font-family:inherit;font-size:12px;font-weight:950;cursor:pointer;white-space:nowrap;
  background:linear-gradient(135deg,rgba(244,47,127,.92),rgba(139,39,244,.92));
  border:1px solid rgba(255,255,255,.15);box-shadow:0 12px 28px rgba(139,39,244,.18),inset 0 1px 0 rgba(255,255,255,.2);
  transition:transform .18s ease,box-shadow .18s ease,filter .18s ease
}
.search-page .filter-modal-btn:hover{transform:translateY(-2px);filter:brightness(1.07);box-shadow:0 16px 34px rgba(139,39,244,.27)}
.search-page .filter-modal-btn:active{transform:translateY(0) scale(.985)}
.filter-modal-btn-main-icon{width:28px;height:28px;border-radius:10px;display:grid;place-items:center;background:rgba(0,0,0,.18);border:1px solid rgba(255,255,255,.12)}
.filter-modal-btn-main-icon svg{width:15px;height:15px}
.filter-modal-btn-arrow{width:15px;height:15px;opacity:.7;transition:transform .18s ease}
.filter-modal-btn[aria-expanded="true"] .filter-modal-btn-arrow{transform:rotate(180deg)}
.filter-count-badge{
  min-width:23px;height:23px;padding:0 7px;border-radius:999px;display:inline-grid;place-items:center;
  color:#1b0920;background:#fff;font-size:10px;font-weight:1000;box-shadow:0 5px 16px rgba(0,0,0,.18)
}
.filter-count-badge[hidden]{display:none!important}

/* ===== Overlay ===== */
.search-page .filter-modal{
  display:flex!important;position:fixed!important;inset:0!important;z-index:2147483000!important;
  align-items:center!important;justify-content:center!important;padding:28px 16px!important;
  overflow:hidden!important;background:radial-gradient(circle at 50% 18%,rgba(139,39,244,.12),transparent 35%),rgba(1,3,9,.91)!important;
  -webkit-backdrop-filter:blur(15px) saturate(118%)!important;backdrop-filter:blur(15px) saturate(118%)!important;
  opacity:0!important;visibility:hidden!important;pointer-events:none!important;
  transition:opacity .22s ease,visibility .22s ease!important
}
.search-page .filter-modal.active{opacity:1!important;visibility:visible!important;pointer-events:auto!important}
.filter-modal-grid{
  position:absolute;inset:-20%;pointer-events:none;opacity:.27;
  background-image:linear-gradient(to right,rgba(66,44,87,.24) 1px,transparent 1px),linear-gradient(to bottom,rgba(66,44,87,.24) 1px,transparent 1px);
  background-size:18px 18px;
  -webkit-mask-image:radial-gradient(circle at 50% 44%,#000 0%,transparent 65%);mask-image:radial-gradient(circle at 50% 44%,#000 0%,transparent 65%)
}
.filter-modal-shell{
  position:relative;isolation:isolate;width:min(980px,100%);max-height:calc(100dvh - 56px);padding:1px;border-radius:32px;overflow:hidden;
  transform:translateY(18px) scale(.975);opacity:0;
  box-shadow:0 34px 100px rgba(0,0,0,.62),0 0 60px rgba(139,39,244,.10);
  transition:transform .28s cubic-bezier(.2,.8,.2,1),opacity .2s ease
}
.filter-modal.active .filter-modal-shell{transform:translateY(0) scale(1);opacity:1}
.filter-modal-shell::before{
  content:"";position:absolute;width:180%;aspect-ratio:1;left:50%;top:50%;z-index:-2;
  transform:translate(-50%,-50%) rotate(0deg);
  background:conic-gradient(from 0deg,transparent 0 14%,rgba(244,47,127,.9) 18%,transparent 28% 50%,rgba(139,39,244,.95) 57%,rgba(59,130,246,.75) 64%,transparent 74% 100%);
  animation:bmAdvancedOrbit 7s linear infinite
}
.filter-modal-shell::after{content:"";position:absolute;inset:1px;z-index:-1;border-radius:31px;background:#090a10}
@keyframes bmAdvancedOrbit{to{transform:translate(-50%,-50%) rotate(360deg)}}

.search-page .filter-modal-content{
  position:relative!important;z-index:1!important;width:100%!important;max-width:none!important;max-height:calc(100dvh - 58px)!important;
  margin:0!important;padding:0!important;overflow:hidden!important;border:0!important;border-radius:31px!important;
  background:radial-gradient(circle at 88% 0%,rgba(116,44,190,.13),transparent 34%),linear-gradient(155deg,rgba(16,10,25,.995),rgba(6,7,12,.997))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.045)!important
}
.filter-modal-mobile-handle{display:none;width:46px;height:5px;margin:10px auto 0;border-radius:999px;background:rgba(255,255,255,.16)}

/* ===== Header ===== */
.search-page .filter-modal-header{
  min-height:92px;margin:0!important;padding:18px 22px!important;display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;align-items:center!important;gap:16px!important;
  border-bottom:1px solid rgba(255,255,255,.065);background:linear-gradient(180deg,rgba(255,255,255,.026),transparent)
}
.filter-modal-heading{min-width:0;display:flex;align-items:center;gap:13px}
.filter-modal-heading-icon{
  width:48px;height:48px;flex:0 0 48px;border-radius:16px;display:grid;place-items:center;color:#fff;
  background:linear-gradient(135deg,var(--bm-adv-pink),var(--bm-adv-violet));box-shadow:0 12px 28px rgba(139,39,244,.22),inset 0 1px 0 rgba(255,255,255,.24)
}
.filter-modal-heading-icon svg{width:22px;height:22px}
.filter-modal-heading-copy{min-width:0}
.filter-modal-kicker{display:block;margin-bottom:3px;color:#c8b6e5;font-size:9px;font-weight:1000;letter-spacing:.2px}
.search-page .filter-modal-header h3{margin:0!important;color:#fff!important;font-size:21px!important;line-height:1.45!important;font-weight:1000!important;display:block!important}
.filter-modal-subtitle{display:block;margin-top:2px;color:rgba(255,255,255,.4);font-size:10px;font-weight:700;line-height:1.7}
.filter-modal-header-actions{display:flex;align-items:center;gap:9px}
.filter-live-stat{min-height:40px;padding:0 13px;border-radius:14px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.075)}
.filter-live-stat strong{font-size:13px;color:#fff;line-height:1.1}.filter-live-stat span{font-size:8px;color:rgba(255,255,255,.38);font-weight:850;margin-top:3px}
.search-page .filter-close{
  width:42px;height:42px;padding:0!important;border-radius:14px!important;display:grid;place-items:center;
  color:#fff;background:rgba(255,255,255,.035)!important;border:1px solid rgba(255,255,255,.08)!important;transition:.16s ease
}
.search-page .filter-close:hover{color:#fff;background:rgba(244,47,127,.13)!important;border-color:rgba(244,47,127,.36)!important;transform:rotate(4deg)}
.search-page .filter-close svg{width:18px!important;height:18px!important;stroke:currentColor!important}

/* ===== Scrollable body ===== */
.filter-modal-body{max-height:calc(100dvh - 150px);overflow:auto;overscroll-behavior:contain;padding:18px 22px 22px;scrollbar-gutter:stable}
.filter-modal-body::-webkit-scrollbar{width:6px}.filter-modal-body::-webkit-scrollbar-track{background:transparent}.filter-modal-body::-webkit-scrollbar-thumb{background:linear-gradient(var(--bm-adv-violet),var(--bm-adv-pink));border-radius:999px}

/* ===== Presets ===== */
.filter-presets{display:flex;align-items:center;gap:8px;overflow-x:auto;padding:0 0 12px;scrollbar-width:none}
.filter-presets::-webkit-scrollbar{display:none}
.filter-presets-title{flex:0 0 auto;color:rgba(255,255,255,.38);font-size:9px;font-weight:950;margin-inline-end:2px}
.filter-preset-btn{
  flex:0 0 auto;min-height:33px;padding:0 12px;border-radius:12px;border:1px solid rgba(255,255,255,.075);background:rgba(255,255,255,.03);color:rgba(255,255,255,.61);
  font-family:inherit;font-size:9px;font-weight:900;cursor:pointer;transition:.15s ease
}
.filter-preset-btn:hover,.filter-preset-btn.is-active{color:#fff;border-color:rgba(180,100,255,.34);background:linear-gradient(135deg,rgba(244,47,127,.13),rgba(139,39,244,.16))}

/* ===== Draft summary ===== */
.filter-draft-summary{
  display:flex;align-items:center;gap:10px;min-height:50px;margin-bottom:14px;padding:9px 11px;border-radius:16px;
  background:rgba(0,0,0,.23);border:1px solid rgba(255,255,255,.06)
}
.filter-draft-label{flex:0 0 auto;display:flex;align-items:center;gap:6px;color:rgba(255,255,255,.42);font-size:9px;font-weight:950}
.filter-draft-label svg{width:14px;height:14px;color:#b98be8}
.filter-draft-chips{min-width:0;flex:1;display:flex;align-items:center;gap:6px;overflow-x:auto;scrollbar-width:none}
.filter-draft-chips::-webkit-scrollbar{display:none}
.filter-draft-empty{color:rgba(255,255,255,.28);font-size:9px;font-weight:750;white-space:nowrap}
.filter-draft-chip{
  flex:0 0 auto;display:inline-flex;align-items:center;gap:7px;min-height:28px;padding:0 9px;border:1px solid rgba(180,100,255,.22);border-radius:10px;
  background:rgba(139,39,244,.1);color:#e8dcf7;font-size:9px;font-weight:850;cursor:pointer
}
.filter-draft-chip::after{content:"×";color:#f083b2;font-size:13px;line-height:1}
.filter-draft-reset{flex:0 0 auto;border:0;background:transparent;color:#ff7da8;font-family:inherit;font-size:9px;font-weight:950;cursor:pointer;padding:8px}

/* ===== Sections and fields ===== */
.filter-section{margin-top:13px;padding:15px;border:1px solid rgba(255,255,255,.065);border-radius:20px;background:linear-gradient(145deg,rgba(255,255,255,.033),rgba(255,255,255,.014))}
.filter-section:first-of-type{margin-top:0}
.filter-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:13px}
.filter-section-title{display:flex;align-items:center;gap:9px;color:#fff;font-size:11px;font-weight:1000}
.filter-section-title-icon{width:30px;height:30px;border-radius:10px;display:grid;place-items:center;color:#d6baf4;background:rgba(139,39,244,.12);border:1px solid rgba(180,100,255,.18)}
.filter-section-title-icon svg{width:15px;height:15px}
.filter-section-desc{color:rgba(255,255,255,.32);font-size:8px;font-weight:700;line-height:1.7;text-align:end}
.filter-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}
.filter-field-card{min-width:0;padding:11px;border-radius:15px;background:rgba(0,0,0,.22);border:1px solid rgba(255,255,255,.06);transition:border-color .16s ease,background .16s ease,transform .16s ease}
.filter-field-card:focus-within{border-color:rgba(180,100,255,.35);background:rgba(139,39,244,.065);transform:translateY(-1px)}
.filter-field-card.full{grid-column:1/-1}
.search-page .filter-field-card label,.filter-field-label{display:flex!important;align-items:center!important;gap:7px!important;margin:0 0 8px!important;color:rgba(255,255,255,.55)!important;font-size:9px!important;font-weight:950!important}
.filter-field-label svg,.search-page .filter-field-card label svg{width:14px;height:14px;color:#bb8de9}
.filter-control-wrap{position:relative}
.filter-control-wrap::after{content:"";position:absolute;top:50%;inset-inline-end:13px;width:7px;height:7px;border-inline-end:1.5px solid rgba(255,255,255,.46);border-bottom:1.5px solid rgba(255,255,255,.46);transform:translateY(-70%) rotate(45deg);pointer-events:none}
.search-page .filter-field-card select,.search-page .filter-field-card input[type="text"]{
  width:100%!important;height:43px!important;margin:0!important;padding:0 13px!important;border-radius:12px!important;
  color:#fff!important;background:linear-gradient(180deg,rgba(14,15,22,.95),rgba(6,7,11,.98))!important;border:1px solid rgba(255,255,255,.075)!important;
  outline:0!important;box-shadow:none!important;font-family:inherit!important;font-size:10px!important;font-weight:800!important;transition:.15s ease
}
.search-page .filter-field-card select{appearance:none;padding-inline-end:34px!important}
.search-page .filter-field-card select:focus,.search-page .filter-field-card input[type="text"]:focus{border-color:rgba(185,102,255,.45)!important;box-shadow:0 0 0 3px rgba(139,39,244,.08)!important}
.search-page .filter-field-card input::placeholder{color:rgba(255,255,255,.25)}
.search-page .filter-field-card option{background:#11131c;color:#fff}

/* ===== Segmented choices ===== */
.filter-choice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
.filter-choice-grid.five{grid-template-columns:repeat(5,minmax(0,1fr))}
.filter-choice{position:relative;min-width:0}
.filter-choice input{position:absolute;opacity:0;pointer-events:none}
.filter-choice span{
  min-height:39px;padding:6px 7px;border-radius:12px;display:flex;align-items:center;justify-content:center;gap:6px;text-align:center;
  color:rgba(255,255,255,.48);background:rgba(255,255,255,.025);border:1px solid rgba(255,255,255,.065);font-size:9px;font-weight:900;cursor:pointer;transition:.15s ease
}
.filter-choice span svg{width:13px;height:13px}
.filter-choice input:checked + span{color:#fff;background:linear-gradient(135deg,rgba(244,47,127,.82),rgba(139,39,244,.86));border-color:rgba(255,255,255,.15);box-shadow:0 8px 20px rgba(139,39,244,.16),inset 0 1px 0 rgba(255,255,255,.17)}
.filter-choice input:focus-visible + span{outline:2px solid rgba(255,255,255,.8);outline-offset:2px}

/* ===== Actions ===== */
.search-page .filter-actions{
  position:sticky;bottom:-22px;z-index:4;display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:10px!important;
  margin:18px -22px -22px!important;padding:14px 22px calc(14px + env(safe-area-inset-bottom))!important;
  background:linear-gradient(180deg,rgba(8,9,14,.72),rgba(8,9,14,.98) 35%);border-top:1px solid rgba(255,255,255,.065);-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px)
}
.search-page .apply-filters-btn{
  min-height:48px!important;border:1px solid rgba(255,255,255,.14)!important;border-radius:15px!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:9px!important;
  color:#fff!important;background:linear-gradient(135deg,var(--bm-adv-pink),var(--bm-adv-violet))!important;box-shadow:0 13px 30px rgba(139,39,244,.22),inset 0 1px 0 rgba(255,255,255,.2)!important;
  font-family:inherit!important;font-size:11px!important;font-weight:1000!important;cursor:pointer!important;transition:.18s ease
}
.search-page .apply-filters-btn:hover{transform:translateY(-1px);filter:brightness(1.07)}
.search-page .apply-filters-btn.is-loading{opacity:.72;pointer-events:none}
.search-page .apply-filters-btn .filter-submit-spinner{display:none;width:15px;height:15px;border:2px solid rgba(255,255,255,.35);border-top-color:#fff;border-radius:50%;animation:bmAdvancedOrbit .7s linear infinite}
.search-page .apply-filters-btn.is-loading .filter-submit-spinner{display:block}.search-page .apply-filters-btn.is-loading > svg{display:none}
.search-page .reset-filters-btn{
  min-width:132px;min-height:48px!important;padding:0 15px!important;border-radius:15px!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;
  color:#ff91b5!important;background:rgba(244,47,127,.08)!important;border:1px solid rgba(244,47,127,.2)!important;font-family:inherit!important;font-size:10px!important;font-weight:950!important;text-decoration:none!important;transition:.15s ease
}
.search-page .reset-filters-btn:hover{background:rgba(244,47,127,.14)!important;border-color:rgba(244,47,127,.35)!important}

/* ===== Active filters outside modal ===== */
.search-page .active-filters{
  max-width:1400px;margin:0 auto 22px!important;padding:12px!important;display:flex!important;align-items:center!important;gap:8px!important;
  border:1px solid rgba(255,255,255,.065);border-radius:18px;background:rgba(255,255,255,.022)
}
.search-page .filter-chip{
  min-height:31px!important;padding:0 10px!important;border-radius:11px!important;color:#eadff6!important;background:rgba(139,39,244,.09)!important;border:1px solid rgba(180,100,255,.18)!important;font-size:9px!important;font-weight:850!important
}
.search-page .filter-chip:first-child{color:rgba(255,255,255,.47)!important;background:rgba(255,255,255,.03)!important;border-color:rgba(255,255,255,.06)!important}
.search-page .filter-chip a{width:19px;height:19px;margin:0!important;border-radius:7px;display:grid;place-items:center;color:#ff8eb3!important;background:rgba(244,47,127,.09)}
.search-page .clear-filters{min-height:31px!important;padding:0 11px!important;border-radius:11px!important;font-size:9px!important;font-weight:950!important}

@media(max-width:760px){
  .search-page .filter-toolbar.bm-advanced-toolbar{margin-inline:12px;padding:11px 12px;border-radius:19px}
  .bm-advanced-toolbar-icon{width:39px;height:39px;flex-basis:39px;border-radius:13px}
  .bm-advanced-toolbar-text strong{font-size:11px}.bm-advanced-toolbar-text small{max-width:150px;font-size:8px}
  .search-page .filter-modal-btn{min-height:42px;padding:0 10px;font-size:10px}.filter-modal-btn-main-icon{display:none}.filter-modal-btn-arrow{display:none}
  .search-page .filter-modal{align-items:flex-end!important;padding:0!important}
  .filter-modal-shell{width:100%;max-height:94dvh;border-radius:27px 27px 0 0;transform:translateY(38px) scale(1)}
  .filter-modal-shell::after{border-radius:26px 26px 0 0}
  .search-page .filter-modal-content{max-height:94dvh!important;border-radius:26px 26px 0 0!important}
  .filter-modal-mobile-handle{display:block}
  .search-page .filter-modal-header{min-height:78px;padding:12px 14px!important;gap:10px!important}
  .filter-modal-heading{gap:10px}.filter-modal-heading-icon{width:40px;height:40px;flex-basis:40px;border-radius:13px}.filter-modal-heading-icon svg{width:18px;height:18px}
  .search-page .filter-modal-header h3{font-size:16px!important}.filter-modal-subtitle{font-size:8px}.filter-modal-kicker{font-size:8px}
  .filter-live-stat{display:none}.search-page .filter-close{width:38px;height:38px;border-radius:12px!important}
  .filter-modal-body{max-height:calc(94dvh - 88px);padding:13px 13px 18px}
  .filter-draft-summary{min-height:46px;padding:7px 9px}.filter-draft-label{display:none}
  .filter-section{padding:12px;border-radius:17px}.filter-section-head{margin-bottom:10px}.filter-section-desc{display:none}
  .filter-grid{grid-template-columns:1fr;gap:9px}.filter-field-card{padding:10px;border-radius:14px}.filter-field-card.full{grid-column:auto}
  .filter-choice-grid.five{grid-template-columns:repeat(3,minmax(0,1fr))}
  .search-page .filter-actions{bottom:-18px;margin:14px -13px -18px!important;padding:11px 13px calc(11px + env(safe-area-inset-bottom))!important;grid-template-columns:minmax(0,1fr) 105px!important}
  .search-page .reset-filters-btn{min-width:0;padding:0 9px!important}.search-page .apply-filters-btn{font-size:10px!important}
  .search-page .active-filters{margin-inline:12px!important;padding:9px!important;flex-wrap:nowrap!important;overflow-x:auto!important;scrollbar-width:none}.search-page .active-filters::-webkit-scrollbar{display:none}
  .search-page .filter-chip,.search-page .clear-filters{flex:0 0 auto}
}

@media(max-width:430px){
  .bm-advanced-toolbar-text small{display:none}.search-page .filter-modal-btn > span:not(.filter-count-badge){font-size:9px}
  .filter-choice-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.filter-choice-grid.five{grid-template-columns:repeat(3,minmax(0,1fr))}
  .filter-section-title{font-size:10px}.filter-section-title-icon{width:28px;height:28px}
}

@media(prefers-reduced-motion:reduce){
  .filter-modal-shell::before{animation:none!important}.filter-modal-shell,.search-page .filter-modal{transition:none!important}
}
html.bm-low-power .filter-modal-shell::before,html.bm-mobile-lite .filter-modal-shell::before{animation-duration:14s;opacity:.78}
