/* R.S Films Group v23.8.18 — unified professional genre selector, desktop + mobile. */
.rsf-genre-field{min-width:0}
.rsf-genre-details{position:relative;width:100%}
.rsf-genre-details>summary{
  position:relative;list-style:none;box-sizing:border-box;width:100%;min-height:58px;padding:8px 58px 8px 52px;
  display:flex;align-items:center;gap:12px;border:1px solid #d7e0e5;border-radius:12px;
  background:linear-gradient(180deg,#fff 0%,#fbfcfd 100%);color:#152d39;cursor:pointer;
  -webkit-tap-highlight-color:transparent;user-select:none;transition:border-color .16s ease,box-shadow .16s ease,background .16s ease
}
.rsf-genre-details>summary::-webkit-details-marker{display:none}
.rsf-genre-details>summary::before{
  content:"♪";position:absolute;left:13px;top:50%;transform:translateY(-50%);width:28px;height:28px;
  display:grid;place-items:center;border-radius:9px;background:#fff6df;border:1px solid #ecd49a;color:#a87513;
  font:800 16px/1 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif
}
.rsf-genre-details>summary::after{
  content:"CHANGE";position:absolute;right:31px;top:50%;transform:translateY(-50%);padding:5px 7px;border-radius:7px;
  background:#f1f5f7;color:#60727c;font:800 9px/1 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;letter-spacing:.08em
}
.rsf-genre-details>summary>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:700;line-height:1.2}
.rsf-genre-details>summary>i{position:absolute;right:14px;top:50%;width:7px;height:7px;border-right:2px solid #60727c;border-bottom:2px solid #60727c;transform:translateY(-65%) rotate(45deg);transition:transform .16s ease}
.rsf-genre-details>summary:hover{border-color:#c8d4da;background:#fff}
.rsf-genre-details[open]>summary{border-color:#bf9130;background:#fffaf0;box-shadow:0 0 0 3px rgba(191,145,48,.10)}
.rsf-genre-details[open]>summary::after{content:"OPEN";background:#fff0c8;color:#8a6211}
.rsf-genre-details[open]>summary>i{transform:translateY(-35%) rotate(225deg)}
.rsf-genre-options{
  position:absolute;z-index:180;left:0;right:0;top:calc(100% + 8px);box-sizing:border-box;
  max-height:360px;overflow:hidden;padding:10px;border:1px solid #dce4e8;border-radius:16px;background:#fff;
  box-shadow:0 20px 48px rgba(16,38,50,.20)
}
.rsf-genre-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:9px 9px 12px;border-bottom:1px solid #edf1f3}
.rsf-genre-head>div{display:grid;gap:4px;min-width:0}
.rsf-genre-head strong{font-size:14px;color:#122934}
.rsf-genre-head small{font-size:11px;line-height:1.4;color:#71808a}
.rsf-genre-close{appearance:none;border:1px solid #d6dfe3;background:#f8fafb;color:#334b57;border-radius:10px;padding:8px 11px;font:800 12px/1 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;cursor:pointer}
.rsf-genre-close:hover{background:#eef3f5}
.rsf-genre-list{max-height:278px;overflow:auto;-webkit-overflow-scrolling:touch;padding:8px 0 0;overscroll-behavior:contain}
.rsf-genre-list>button{
  appearance:none;-webkit-appearance:none;box-sizing:border-box;width:100%;min-height:45px;
  display:flex;align-items:center;padding:0 13px;margin:0 0 4px;border:1px solid transparent;border-radius:10px;
  background:#fff;color:#19313d;text-align:left;font:650 14px/1.2 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  cursor:pointer;-webkit-tap-highlight-color:transparent
}
.rsf-genre-list>button:hover,.rsf-genre-list>button:focus-visible{background:#f4f7f8;outline:none}
.rsf-genre-list>button.selected{background:#fff7e7;border-color:#efdba9;color:#8b6414;font-weight:850}
@media(max-width:900px){
  body.rsf-genre-sheet-open{overflow:hidden;touch-action:none}
  body.rsf-genre-sheet-open::before{content:"";position:fixed;z-index:2147482990;inset:0;background:rgba(8,22,31,.48);backdrop-filter:blur(2px);pointer-events:none}
  .rsf-genre-details>summary{min-height:62px;padding:9px 60px 9px 54px;border-radius:14px;font-size:15px}
  .rsf-genre-details>summary::before{left:13px;width:30px;height:30px;border-radius:10px}
  .rsf-genre-details>summary::after{right:32px;font-size:8px}
  .rsf-genre-options{
    position:fixed;z-index:2147483000;left:10px;right:10px;top:auto;bottom:calc(10px + env(safe-area-inset-bottom));
    max-height:min(74dvh,620px);padding:11px;border-radius:22px;box-shadow:0 24px 72px rgba(8,24,34,.38)
  }
  .rsf-genre-head{position:sticky;top:0;z-index:2;background:#fff;padding:10px 8px 13px}
  .rsf-genre-head strong{font-size:17px}.rsf-genre-head small{font-size:12px}
  .rsf-genre-close{min-height:40px;padding:0 13px;font-size:13px}
  .rsf-genre-list{max-height:calc(min(74dvh,620px) - 88px)}
  .rsf-genre-list>button{min-height:52px;font-size:15px;border-bottom:1px solid #eef2f4;border-radius:11px}
}
