@font-face{font-family:'Noto Sans TC';src:url('../fonts/Noto-Sans-regular.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}*{margin:0;padding:0;box-sizing:border-box;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;font-family:'Noto Sans TC',sans-serif}html,body{width:100%;height:100%;background-color:#000!important;overflow:hidden!important;display:flex;justify-content:center;align-items:flex-start;font-family:'Noto Sans TC',sans-serif;-webkit-user-select:none;-ms-user-select:none;user-select:none}#wrapper{position:relative;width:min(100vw,calc(100vh * 9 / 16));height:min(100vh,calc(100vw * 16 / 9));background-color:#111;overflow:hidden;box-shadow:0 0 20px rgba(0,0,0,.8);container-type:size;isolation:isolate;view-transition-name:main-wrapper}#top-bar{position:absolute;top:0;left:0;width:100%;height:10cqh;z-index:100;display:flex;align-items:center;padding-left:3cqw;background:#111;box-shadow:0 2px 8px rgba(0,0,0,0.699)}#back-btn{width:12cqw;height:12cqw;cursor:pointer;border:none;background:none;padding:0;transition:transform 0.15s}#back-btn:active{transform:scale(0.85)}#back-btn img{width:100%;height:100%;object-fit:contain}#topbar-filters{display:flex;align-items:center;gap:1cqw;margin-left:auto;overflow:hidden}#topbar-filters img{width:5cqw;height:5cqw;object-fit:contain;flex-shrink:0}#sort-btn{margin-left:2cqw;position:relative;height:10cqw;cursor:pointer;border:none;background:none;padding:0;transition:transform 0.15s}#sort-btn .sort-bg{display:block;height:100%;width:auto}#sort-btn .sort-order,#sort-btn .sort-text{position:absolute;top:50%;transform:translateY(-50%)}#sort-btn .sort-order{left:10%;width:auto;height:55%;object-fit:contain}#sort-btn .sort-text{left:57%;transform:translate(-50%,-45%);color:rgba(255,255,255,0.85);font-size:4cqw;line-height:1;white-space:nowrap}#sort-btn:active,#filter-btn:active{transform:scale(0.95)}#filter-btn{margin-left:4cqw;margin-right:5cqw;width:10cqw;height:10cqw;cursor:pointer;border:none;background:none;padding:0;transition:transform 0.15s}#filter-btn img{width:100%;height:100%;object-fit:contain}#gallery-container{position:absolute;top:10cqh;left:0;width:100%;height:90cqh;overflow-y:auto;overflow-x:hidden;padding:2cqw;scrollbar-width:none}#gallery-container::-webkit-scrollbar{display:none}#scrollbar-track{position:absolute;top:11cqh;right:0cqw;width:2.2cqw;height:88cqh;z-index:50;border-radius:1cqw;background:rgba(255,255,255,0.08);opacity:0;transition:opacity 0.3s}#scrollbar-track::before{content:'';position:absolute;inset:0 -4cqw 0 -4cqw;pointer-events:none}#scrollbar-track.visible{opacity:1;pointer-events:auto}#scrollbar-thumb{width:100%;border-radius:1cqw;background-color:rgba(75,75,75,0.5);position:absolute;top:0;min-height:8cqh;cursor:grab}#scrollbar-thumb::before{content:'';position:absolute;inset:-1.5cqh -3cqw -1.5cqh -3cqw}#scrollbar-thumb:active{cursor:grabbing;background-color:rgba(100,100,100,0.7)}#gallery-grid{position:relative}.card-row{position:absolute;left:0;width:100%;display:flex;gap:2.5cqw}.card-cell{flex:0 0 calc((100% - 2.5cqw * 4) / 5);aspect-ratio:1;position:relative;cursor:pointer;transition:transform 0.15s,filter 0.15s}.card-inner{position:relative;width:100%;height:100%;border-radius:8%;overflow:hidden;background:#2a2a2a}@keyframes card-shimmer{0%{background-position:-200% 0}100%{background-position:200% 0}}.card-inner.loading{background:linear-gradient(90deg,#2a2a2a 25%,#3a3a3a 50%,#2a2a2a 75%);background-size:200% 100%;animation:card-shimmer 1.5s ease-in-out infinite}.card-cell:active .card-inner{transform:scale(0.98);filter:brightness(0.9)}#border-canvas{position:absolute;pointer-events:none;z-index:2}@media (max-width:768px){#border-canvas{display:none}}.card-icon{display:block;width:100%;height:100%;border-radius:8%;object-fit:cover;overflow:hidden;opacity:0;transition:opacity 0.2s ease}.card-icon.loaded{opacity:1}.card-label{position:absolute;left:0;right:0;bottom:0;transform:translateY(41%);height:24%;z-index:3;pointer-events:none;background:linear-gradient(90deg,#00000000 0%,#000000b3 13%,#000000 34%,#000000 66%,#000000 87%,#00000000 100%);display:flex;align-items:center;justify-content:center;color:#c8a832;font-style:italic;font-size:2.8cqw;white-space:nowrap;overflow:visible}.card-label.dual-max{font-weight:400}.card-label.all-max{font-weight:700}.card-id-label{position:absolute;left:0;right:0;bottom:-1px;transform:translateY(150%);text-align:center;color:rgba(255,255,255,0.5);font-size:2.5cqw;pointer-events:none}.refine-icon{position:absolute;left:-2%;height:90%;top:50%;transform:translateY(-50%);pointer-events:none}.card-label::before,.card-label::after{content:'';position:absolute;left:0;right:0;height:1.5px;pointer-events:none}.card-label::before{top:0;background:linear-gradient(90deg,transparent 0%,#000 15%,#000 85%,transparent 100%),linear-gradient(90deg,transparent 0%,#c8a832 15%,#c8a832 85%,transparent 100%),linear-gradient(90deg,transparent 0%,#000 15%,#000 85%,transparent 100%);background-size:100% 1px,100% 1px,100% 1px;background-position:0 0,0 50%,0 100%;background-repeat:no-repeat;height:3px;top:-1px}.card-label::after{bottom:0;background:linear-gradient(90deg,transparent 0%,#000 15%,#000 85%,transparent 100%),linear-gradient(90deg,transparent 0%,#c8a832 15%,#c8a832 85%,transparent 100%),linear-gradient(90deg,transparent 0%,#000 15%,#000 85%,transparent 100%);background-size:100% 1px,100% 1px,100% 1px;background-position:0 0,0 50%,0 100%;background-repeat:no-repeat;height:3px;bottom:-1px}#card-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,0);z-index:-1;display:flex;justify-content:center;align-items:center;pointer-events:none;transition:background 0.3s ease}#card-overlay.loading,#card-overlay.active,#card-overlay.closing{z-index:200}#card-overlay.loading{pointer-events:auto;background:rgba(0,0,0,0.5)}#card-overlay.active{pointer-events:auto;background:rgba(0,0,0,0.7)}#card-frame{width:100%;height:100%;border:none;transform:scale(0);opacity:0;transition:transform 0.3s ease,opacity 0.3s ease}#card-overlay.active #card-frame{transform:scale(1);opacity:1}#card-overlay.closing #card-frame{transform:scale(0);opacity:0}#sort-overlay{position:absolute;inset:0;z-index:-1;pointer-events:none}#sort-overlay.active{z-index:140;background:linear-gradient(90deg,transparent 75%,rgba(0,0,0,0.6) 100%);pointer-events:auto}#sort-panel{position:absolute;top:12cqh;right:0;transform:translateX(100%);z-index:145;display:flex;flex-direction:column;gap:0.2cqw;transition:transform 0.25s cubic-bezier(0.4,0,0.2,1);pointer-events:none}#sort-panel.active{transform:translateX(0);pointer-events:auto}#sort-panel{align-items:flex-end}.sort-option{position:relative;border:none;background:none;padding:0;cursor:pointer;height:10cqw}.sort-opt-bg{display:block;height:100%;width:auto}.sort-opt-label{position:absolute;inset:0;display:flex;align-items:center;padding:0 2cqw}.sort-opt-dir{width:5cqw;height:5cqw;object-fit:contain}.sort-opt-label span{position:absolute;left:20%;right:0;text-align:center;color:#fff;font-family:'Noto Sans TC',sans-serif;font-size:4cqw;white-space:nowrap;text-shadow:0 1px 0 rgba(0,0,0,0.8)}#filter-overlay{position:absolute;inset:0;z-index:-1;background:rgba(0,0,0,0);pointer-events:none;will-change:background}#filter-overlay.active{z-index:150;background:rgba(0,0,0,0.5);pointer-events:auto}#filter-panel{position:absolute;bottom:-11%;left:0;right:0;margin:0 auto;transform:translateY(100%);width:95%;z-index:160;opacity:0;pointer-events:none;transition:transform 0.25s cubic-bezier(0.4,0,0.2,1),opacity 0.25s ease}.filter-bg{border-radius:1%;border-color:#000;border-width:3px;border-style:solid}#filter-panel.active{transform:translateY(0);opacity:1;pointer-events:auto}#filter-panel .filter-bg{display:block;width:100%;height:auto}.filter-content{position:absolute;inset:0;display:flex;flex-direction:column;padding:3cqw 3cqw 0}.filter-row{flex-shrink:0}.filter-top-row{display:flex;align-items:center;gap:1.5cqw}.filter-slots{display:flex;gap:2cqw;flex:1;min-width:0}.filter-slot-group{display:flex;gap:1cqw}.filter-slot{width:5.5cqw;height:5.5cqw;flex-shrink:0;position:relative}.filter-slot .slot-overlay{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:78%;height:78%;object-fit:contain}.filter-slot img{width:100%;height:100%;object-fit:contain}.filter-actions{display:flex;gap:3cqw;flex-shrink:0}.filter-action-btn{width:5.5cqw;height:5.5cqw;border:none;background:none;padding:0;cursor:pointer}.filter-action-btn img{width:100%;height:100%;object-fit:contain}.filter-cards-row{position:relative;margin-top:2cqw;background:rgba(0,0,0,0.4);border-radius:1.5cqw;height:15cqw;overflow:hidden}.filter-cards-scroll{width:100%;height:100%;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;display:flex;align-items:center;padding:0 3cqw}.filter-cards-scroll::-webkit-scrollbar{display:none}.filter-cards-track{display:flex;gap:1.5cqw;flex-shrink:0}.filter-cards-track .filter-card-icon{width:12cqw;height:12cqw;border-radius:12%;object-fit:cover;flex-shrink:0;pointer-events:none}.filter-cards-fade-l,.filter-cards-fade-r{position:absolute;top:0;bottom:0;width:4cqw;pointer-events:none;z-index:1;opacity:0;transition:opacity 0.2s}.filter-cards-row.has-cards .filter-cards-fade-l,.filter-cards-row.has-cards .filter-cards-fade-r{opacity:1}.filter-cards-fade-l{left:0;background:linear-gradient(90deg,rgba(0,0,0,0.6) 0%,transparent 100%)}.filter-cards-fade-r{right:0;background:linear-gradient(-90deg,rgba(0,0,0,0.6) 0%,transparent 100%)}.filter-tabs-row{display:flex;gap:1cqw;margin-top:2cqw;padding:0.7cqw 0.7cqw;background:rgba(0,0,0,0.6);border-radius:1.5cqw}.filter-tab{flex:1;position:relative;border:none;background:none;padding:0;cursor:pointer}.filter-tab-bg{display:block;width:100%;height:auto}.filter-tab-label{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;gap:1cqw}.filter-tab-label img{height:65%;width:auto;object-fit:contain}.filter-tab-label span{color:#fff;font-size:2.8cqw;white-space:nowrap}.filter-tab:not(.active) .filter-tab-label{filter:brightness(0.5)}.filter-search-row{margin-top:2cqw}.filter-search-box{display:flex;align-items:center;background:rgba(0,0,0,0.4);border-radius:0.7cqw;padding:0.7cqw 1cqw;gap:1.5cqw}.search-icon{width:3.5cqw;height:3.5cqw;color:rgba(255,255,255,0.4);flex-shrink:0}#filter-search-input{flex:1;background:none;border:none;outline:none;color:#fff;font-family:'Noto Sans TC',sans-serif;font-size:3cqw;caret-color:#c8a832}#filter-search-input::placeholder{color:rgba(255,255,255,0.35)}.search-clear-btn{border:none;background:none;padding:0;cursor:pointer;flex-shrink:0;width:3cqw;height:3cqw}.search-clear-btn img{width:100%;height:100%;object-fit:contain}.filter-skill-row{display:none;margin-top:2cqw;gap:2cqw;align-items:center}.filter-skill-row.visible{display:flex}.filter-skill-group,.filter-logic-group{height:6.4cqw}.filter-skill-group{display:flex;gap:1cqw;background:rgba(0,0,0,0.5);border-radius:1cqw;padding:0.5cqw}.filter-skill-btn{position:relative;border:none;background:none;padding:0;cursor:pointer;height:100%;flex-shrink:0}.filter-skill-bg{display:block;height:100%;width:auto}.filter-skill-btn span{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:#fff;font-family:'Noto Sans TC',sans-serif;font-size:3cqw;white-space:nowrap;text-shadow:0 1px 3px rgba(0,0,0,0.7)}.filter-skill-btn:not(.active) span{filter:brightness(0.5)}.filter-logic-group{margin-left:auto;background:rgba(0,0,0,0.5);border-radius:1.5cqw;padding:0.5cqw;display:flex}.filter-logic-btn{position:relative;border:none;background:none;padding:0;cursor:pointer;height:100%}.filter-logic-bg{display:block;height:100%;width:auto}.filter-logic-btn span{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:#fff;font-family:'Noto Sans TC',sans-serif;font-size:3cqw;white-space:nowrap;text-shadow:0 2px 2px rgba(0,0,0,1)}.filter-tab-label span,.filter-skill-btn span,.filter-logic-btn span{text-shadow:0 2px 2px rgba(0,0,0,1)}.filter-body{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;margin-top:1.5cqw;padding-bottom:25cqw;scrollbar-width:none}.filter-body::-webkit-scrollbar{display:none}.filter-category{margin-bottom:1.5cqw}.filter-category-header{display:flex;align-items:center;background:rgba(0,0,0,0.4);border-radius:0.7cqw;padding:0.7cqw 1cqw;margin-bottom:1.5cqw;gap:1.5cqw}.filter-category-header span{color:rgba(255,255,255,0.85);font-family:'Noto Sans TC',sans-serif;font-size:2.5cqw;flex:1}.category-reset-btn{border:none;background:none;padding:0;cursor:pointer;width:3cqw;height:3cqw;flex-shrink:0}.category-reset-btn img{width:100%;height:100%;object-fit:contain}.filter-category-items{display:flex;flex-wrap:wrap;gap:1.5cqw;padding:1.5cqw;border-radius:0.7cqw}.filter-series-items,.filter-chars-items{background:rgba(0,0,0,0.4)}.filter-item{width:8cqw;height:8cqw;flex-shrink:0;position:relative;cursor:pointer}.filter-item img{width:100%;height:100%;object-fit:contain}.filter-item .item-icon{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:78%;height:78%;object-fit:contain}.filter-item.dimmed{filter:brightness(0.4);pointer-events:none}.filter-category.has-selection .filter-item:not(.selected){filter:brightness(0.5)}.filter-category.has-selection .filter-series-btn:not(.selected){filter:brightness(0.5)}.filter-series-items,.filter-chars-items{display:flex;flex-wrap:wrap;gap:1.5cqw;padding:1.5cqw 1.5cqw}.filter-series-items.collapsed,.filter-chars-items.collapsed{max-height:17cqw;overflow:hidden}.filter-series-btn{position:relative;border:none;background:none;padding:0;cursor:pointer;width:calc((100% - 3cqw) / 3)}.filter-series-btn img{display:block;width:100%;height:auto}.filter-series-btn span{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,0.85);font-family:'Noto Sans TC',sans-serif;font-size:3cqw;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-shadow:0 1px 0 rgba(0,0,0,0.8)}.filter-expand-btn{display:flex;align-items:center;justify-content:center;width:100%;border:none;background:none;padding:0.5cqw 0;cursor:pointer;transition:transform 0.2s}.filter-expand-btn svg{width:4cqw;height:4cqw;color:rgba(255,255,255,0.5);transition:transform 0.2s}.filter-expand-btn.expanded svg{transform:rotate(180deg)}.filter-body.hidden{display:none}.filter-skill-tags-items{background:none!important;padding:0!important;gap:2.5cqw}.skill-tag-btn{position:relative;border:none;background:none;padding:0;cursor:pointer;width:calc((100% - 3cqw) / 3.1);overflow:hidden;border-radius:1cqw}.skill-tag-btn .stb-bg{display:block;width:100%;height:auto}.skill-tag-btn .stb-border{position:absolute;inset:0;width:100%;height:100%;object-fit:fill;pointer-events:none}.skill-tag-btn .stb-color{position:absolute;bottom:0;left:0;right:0;height:60%;pointer-events:none}.skill-tag-btn .stb-label{position:absolute;inset:0;display:flex;align-items:center;padding:0 1cqw}.skill-tag-btn .stb-label img{height:55%;width:auto;object-fit:contain;flex-shrink:0}.skill-tag-btn .stb-label span{position:absolute;left:20%;right:0;text-align:center;color:#fff;font-family:'Noto Sans TC',sans-serif;font-size:3cqw;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-shadow:0 2px 2px rgba(0,0,0,1)}.filter-category.has-selection .skill-tag-btn:not(.selected){filter:brightness(0.4)}#loading-text{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:rgba(255,255,255,0.5);font-size:4cqw}::view-transition-new(root),::view-transition-old(root){animation-duration:.3s;animation-timing-function:ease-in-out}