.tag-modal-backdrop{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;z-index:10000;background:transparent;opacity:0;visibility:hidden;transition:opacity .28s ease,visibility .28s ease}.tag-modal-backdrop.visible{opacity:1;visibility:visible}.tag-modal-backdrop.closing{opacity:0;visibility:hidden;transition:opacity .2s ease,visibility .2s ease}.tag-modal-card{position:relative;width:100%;max-width:600px;background:transparent;backdrop-filter:blur(100px);-webkit-backdrop-filter:blur(100px);border-radius:24px;border:none;overflow:hidden;display:flex;flex-direction:column;box-sizing:border-box;padding:20px;transform:translateY(100%);transition:transform .3s cubic-bezier(.16,1,.3,1)}@media (min-width:769px){.tag-modal-card{max-width:1000px;width:90vw;height:85vh;height:85dvh;max-height:85vh;max-height:85dvh;border-radius:16px;transform:scale(.95) translateY(20px);opacity:0;transition:transform .25s cubic-bezier(.16,1,.3,1),opacity .25s ease-out}.tag-modal-backdrop.visible .tag-modal-card{transform:scale(1) translateY(0);opacity:1}.tag-modal-backdrop.closing .tag-modal-card{transform:scale(.95) translateY(20px);opacity:0;transition:transform .25s ease-in,opacity .25s ease-in}}.tag-modal-backdrop.visible .tag-modal-card{transform:translateY(0)}.tag-modal-backdrop.closing .tag-modal-card{transform:translateY(100%);transition:transform .3s cubic-bezier(.32,0,.67,0)}.tag-modal-header{flex:0 0 auto;display:flex;flex-direction:column;gap:8px;position:relative;padding:0 48px 8px 0}.tag-modal-title{font-family:Outfit-Bold;font-size:22px;font-weight:600;color:#fff;margin:0;text-align:center}.tag-modal-subtitle{margin:0;color:hsla(0,0%,100%,.6);font-size:13px;text-align:center;font-family:Outfit-Medium}.tag-modal-close-btn{position:absolute;top:12px;right:12px;background:hsla(0,0%,100%,.1);border:none;color:#fff;font-size:17px;cursor:pointer;width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background .2s ease;z-index:2;line-height:1}.tag-modal-close-btn:hover{background:hsla(0,0%,100%,.2)}.tag-modal-search-wrap{flex:0 0 auto;display:flex;justify-content:center;margin-bottom:4px}.tag-modal-search-inner{position:relative;width:90%;max-width:600px}.tag-modal-search-wrap .tag-modal-search-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:hsla(0,0%,100%,.5);pointer-events:none;z-index:1;font-size:14px}.tag-modal-search-input{width:100%;padding:10px 16px 10px 44px;border:none;border-bottom:1px solid hsla(0,0%,100%,.2);font-size:14px;background:transparent;outline:none;color:#fff;font-family:Outfit,sans-serif;box-sizing:border-box;transition:border-color .2s ease}.tag-modal-search-input::placeholder{color:hsla(0,0%,100%,.5)}.tag-modal-search-input:focus{border-bottom-color:hsla(0,0%,100%,.4)}.tag-modal-grid-wrap{flex:1 1 auto;min-height:0;padding:0 16px 8px;overflow-y:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none}.tag-modal-grid-wrap::-webkit-scrollbar{display:none}.tag-modal-grid{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:10px;gap:10px}@media (min-width:769px){.tag-modal-grid{grid-template-columns:repeat(5,1fr);gap:10px}}.tag-modal-item{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;text-align:center;background:hsla(0,0%,100%,.05);border:none;border-radius:12px;padding:12px;cursor:pointer;transition:transform .2s,background .2s;-webkit-user-select:none;-moz-user-select:none;user-select:none}.tag-modal-item:hover{background:hsla(0,0%,100%,.1);transform:translateY(-2px)}.tag-modal-item.selected{background:rgba(139,92,246,.2);border:2px solid rgba(139,92,246,.6)}.tag-modal-item.fandom.selected{background:rgba(139,92,246,.25);border-color:rgba(139,92,246,.6)}.tag-modal-item-emoji{font-size:28px;line-height:1;margin-bottom:6px}.tag-modal-item-name{color:#fff;font-family:Outfit-Bold;font-size:14px;margin-bottom:4px;text-align:center;word-break:break-word;line-height:1.2}.tag-modal-item-count{color:hsla(0,0%,100%,.6);font-size:12px;text-align:center}.tag-modal-item-check{position:absolute;top:8px;right:8px;width:20px;height:20px;background:rgba(139,92,246,.9);border-radius:50%;color:#fff;font-size:10px;line-height:1}.tag-modal-item-check,.tag-modal-pagination{display:flex;align-items:center;justify-content:center}.tag-modal-pagination{flex:0 0 auto;gap:12px;padding:14px 24px}.tag-modal-pagination-in-scroll{margin-top:16px;padding-bottom:8px}.tag-modal-page-btn{background:hsla(0,0%,100%,.08);border:none;border-radius:10px;padding:9px 16px;color:#fff;font-size:14px;font-family:Outfit,sans-serif;cursor:pointer;transition:background .2s ease;white-space:nowrap}.tag-modal-page-btn:hover:not(:disabled){background:hsla(0,0%,100%,.14)}.tag-modal-page-btn:disabled{opacity:.5;cursor:not-allowed}.tag-modal-page-info{color:hsla(0,0%,100%,.5);font-family:Outfit,sans-serif}.tag-modal-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 40px;gap:16px;grid-column:1/-1;min-height:200px}.tag-modal-state,.tag-modal-state-text{color:hsla(0,0%,100%,.45);text-align:center}.tag-modal-state-text{font-size:14px;max-width:280px;line-height:1.5}.tag-modal-spinner{width:32px;height:32px;border:2px solid hsla(0,0%,100%,.2);border-top-color:hsla(0,0%,100%,.7);border-radius:50%;animation:tag-modal-spin .7s linear infinite;opacity:.5}@keyframes tag-modal-spin{to{transform:rotate(1turn)}}@media (max-width:768px){.tag-modal-backdrop{align-items:flex-end;justify-content:flex-end;padding:0;background:rgba(0,0,0,.5)}.tag-modal-card{max-width:100%;width:100%;height:90vh;height:90dvh;max-height:90vh;max-height:90dvh;min-height:70vh;border-radius:20px 20px 0 0;padding:16px 16px calc(16px + env(safe-area-inset-bottom, 0px));transform:translateY(20px)}.tag-modal-backdrop.visible .tag-modal-card{transform:translateY(0)}.tag-modal-title{font-size:19px}.tag-modal-item-emoji{font-size:24px}.tag-modal-grid-wrap{flex:1 1;min-height:0;display:flex;flex-direction:column}.tag-modal-pagination-in-scroll{padding-bottom:calc(16px + env(safe-area-inset-bottom, 0px));flex-shrink:0}}