.tb-container{color:#1a1a2e;background-color:#fafbfc;min-height:100vh;padding-bottom:4rem;font-family:-apple-system,BlinkMacSystemFont,Noto Sans KR,Segoe UI,Roboto,sans-serif}.tb-container.mode-modal{background:0 0;min-height:auto;padding-bottom:0}.tb-container.mode-embedded{min-height:auto;padding-bottom:1rem}.tb-header{background:linear-gradient(135deg,#6c5ce7 0%,#a29bfe 100%);padding:2rem 1.5rem 2.5rem}.tb-header-inner{max-width:1200px;margin:0 auto}.tb-header-title-row{align-items:center;gap:.6rem;margin-bottom:.3rem;display:flex}.tb-header h1{color:#fff;margin:0;font-size:1.4rem;font-weight:800}.tb-header p{color:#ffffffd9;margin:0;font-size:.88rem;line-height:1.5}.tb-back-btn{color:#ffffffe6;cursor:pointer;background:0 0;border:none;align-items:center;gap:.3rem;margin-bottom:.6rem;padding:0;font-family:inherit;font-size:.85rem;font-weight:600;display:flex}.tb-back-btn:hover{color:#fff}.mode-modal .tb-header,.mode-embedded .tb-header{display:none}.tb-search-wrap{max-width:1200px;margin:-1.2rem auto 0;padding:0 1rem}.mode-modal .tb-search-wrap,.mode-embedded .tb-search-wrap{margin-top:0;padding:0}.tb-search-box{background:#fff;border:1px solid #e5e7eb;border-radius:12px;align-items:center;gap:.5rem;padding:.7rem 1rem;display:flex;box-shadow:0 2px 8px #0000000f}.tb-search-box input{color:#1a1a2e;background:0 0;border:none;outline:none;flex:1;font-family:inherit;font-size:.93rem}.tb-search-box input::placeholder{color:#999}.tb-controls{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;max-width:1200px;margin:1rem auto 0;padding:0 1rem;display:flex}.mode-modal .tb-controls,.mode-embedded .tb-controls{margin-top:.75rem;padding:0}.tb-tabs{-webkit-overflow-scrolling:touch;scrollbar-width:none;flex:1;gap:.5rem;min-width:0;display:flex;overflow-x:auto}.tb-tabs::-webkit-scrollbar{display:none}.tb-tab{color:#555;cursor:pointer;background:#fff;border:1.5px solid #e5e7eb;border-radius:20px;flex-shrink:0;padding:.45rem 1rem;font-family:inherit;font-size:.85rem;font-weight:600;transition:all .2s}.tb-tab:hover{color:#6c5ce7;border-color:#6c5ce7}.tb-tab.active{color:#fff;background:#6c5ce7;border-color:#6c5ce7}.tb-sort{flex-shrink:0}.tb-sort select{color:#555;cursor:pointer;appearance:auto;background:#fff;border:1.5px solid #e5e7eb;border-radius:10px;outline:none;padding:.45rem .8rem;font-family:inherit;font-size:.82rem;font-weight:600}.tb-sort select:focus{border-color:#6c5ce7}.tb-grid{grid-template-columns:1fr 1fr;gap:.85rem;max-width:1200px;margin:1.2rem auto 0;padding:0 1rem;animation:.35s ease-out both tbFadeIn;display:grid}.mode-modal .tb-grid,.mode-embedded .tb-grid{margin-top:1rem;padding:0}.tb-card{cursor:pointer;background:#fff;border:1px solid #e5e7eb;border-radius:14px;flex-direction:column;transition:box-shadow .2s,transform .15s;display:flex;overflow:hidden}.tb-card:hover{transform:translateY(-2px);box-shadow:0 4px 16px #00000014}.tb-card.featured{border-color:#f59e0b;box-shadow:0 0 0 1px #f59e0b}.tb-card.featured:hover{box-shadow:0 4px 16px #f59e0b33}.tb-card-thumb{justify-content:center;align-items:center;height:200px;display:flex;position:relative;overflow:hidden}.tb-card-thumb-name{color:#fff;background:linear-gradient(#0000,#0000008c);padding:2rem .8rem .7rem;font-size:.88rem;font-weight:700;line-height:1.3;position:absolute;bottom:0;left:0;right:0}.tb-card-thumb-icon{opacity:.5;font-size:48px}.tb-featured-badge{color:#fff;z-index:1;background:#f59e0b;border-radius:6px;padding:.15rem .5rem;font-size:.65rem;font-weight:700;position:absolute;top:8px;left:8px}.tb-live-preview-badge{color:#fff;letter-spacing:-.01em;z-index:1;-webkit-backdrop-filter:blur(4px);background:#0f172ad9;border-radius:999px;padding:.2rem .55rem;font-size:.66rem;font-weight:700;position:absolute;bottom:8px;left:8px;box-shadow:0 1px 4px #0000002e}.tb-price-badge{z-index:1;border-radius:6px;padding:.2rem .5rem;font-size:.72rem;font-weight:700;position:absolute;top:8px;right:8px}.tb-price-badge.free{color:#00b894;background:#e8f8f5}.tb-price-badge.paid{color:#3b82f6;background:#eff6ff}.tb-lock-overlay{z-index:2;background:#00000059;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.tb-lock-icon{color:#fff;background:#00000080;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.tb-card-info{flex-direction:column;flex:1;padding:.7rem .8rem .5rem;display:flex}.tb-card-name{color:#1a1a2e;margin:0;font-size:.88rem;font-weight:700;line-height:1.3}.tb-card-author{color:#999;margin:.15rem 0 0;font-size:.72rem}.tb-card-meta{align-items:center;gap:.5rem;margin-top:.4rem;display:flex}.tb-card-stars{align-items:center;gap:1px;display:inline-flex}.tb-card-rating-num{color:#555;margin-left:3px;font-size:.7rem;font-weight:600}.tb-card-downloads{color:#999;align-items:center;gap:.2rem;font-size:.68rem;display:inline-flex}.tb-card-actions{gap:.4rem;padding:0 .8rem .7rem;display:flex}.tb-btn-apply{color:#fff;cursor:pointer;background:#6c5ce7;border:none;border-radius:8px;flex:1;padding:.4rem 0;font-family:inherit;font-size:.75rem;font-weight:700;transition:background .15s,transform .1s}.tb-btn-apply:hover{background:#5a4bd6}.tb-btn-apply:active{transform:scale(.96)}.tb-btn-fork{color:#555;cursor:pointer;background:#fff;border:1.5px solid #e5e7eb;border-radius:8px;padding:.4rem .6rem;font-family:inherit;font-size:.75rem;font-weight:600;transition:all .15s}.tb-btn-fork:hover{color:#6c5ce7;border-color:#6c5ce7}.tb-btn-preview{color:#999;cursor:pointer;background:0 0;border:none;border-radius:8px;padding:.4rem .6rem;font-family:inherit;font-size:.75rem;font-weight:600;transition:color .15s}.tb-btn-preview:hover{color:#6c5ce7}.tb-empty{text-align:center;color:#999;max-width:1200px;margin:0 auto;padding:3rem 1rem}.tb-empty-icon{opacity:.4;margin-bottom:.8rem}.tb-empty h3{color:#555;margin:0 0 .3rem;font-size:1rem;font-weight:700}.tb-empty p{margin:0;font-size:.85rem}.tb-load-more{text-align:center;max-width:1200px;margin:1.5rem auto 0;padding:0 1rem}.tb-load-more-btn{color:#555;cursor:pointer;background:#fff;border:1.5px solid #e5e7eb;border-radius:10px;padding:.6rem 2rem;font-family:inherit;font-size:.88rem;font-weight:600;transition:all .2s}.tb-load-more-btn:hover{color:#6c5ce7;border-color:#6c5ce7}.tb-load-more-btn:disabled{opacity:.5;cursor:default}.tb-loading{text-align:center;padding:3rem 0}.tb-spinner{border:3px solid #e5e7eb;border-top-color:#6c5ce7;border-radius:50%;width:32px;height:32px;margin:0 auto .5rem;animation:.8s linear infinite tbSpin}.tp-overlay{z-index:9999;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000080;justify-content:center;align-items:center;padding:1rem;animation:.25s ease-out tpFadeIn;display:flex;position:fixed;inset:0}.tp-modal{background:#fff;border-radius:20px;width:100%;max-width:560px;max-height:90vh;animation:.3s ease-out tpSlideUp;position:relative;overflow-y:auto}.tp-close-btn{z-index:10;color:#555;cursor:pointer;background:#00000014;border:none;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;transition:background .15s;display:flex;position:absolute;top:12px;right:12px}.tp-close-btn:hover{background:#00000026}.tp-preview-area{border-radius:20px 20px 0 0;justify-content:center;align-items:center;height:280px;display:flex;position:relative;overflow:hidden}.tp-preview-blocks{flex-direction:column;gap:.5rem;width:200px;display:flex}.tp-preview-block{background:#ffffff59;border-radius:6px;height:12px}.tp-preview-block.wide{width:100%}.tp-preview-block.med{width:75%}.tp-preview-block.short{width:50%}.tp-preview-circle{background:#ffffff4d;border-radius:50%;width:60px;height:60px;margin-bottom:.8rem}.tp-details{padding:1.2rem 1.4rem}.tp-name{color:#1a1a2e;margin:0;font-size:1.15rem;font-weight:800}.tp-author{color:#999;margin:.2rem 0 0;font-size:.82rem}.tp-desc{color:#555;margin:.8rem 0 0;font-size:.88rem;line-height:1.6}.tp-meta{flex-wrap:wrap;align-items:center;gap:1rem;margin-top:.8rem;display:flex}.tp-meta-item{color:#555;align-items:center;gap:.3rem;font-size:.78rem;display:inline-flex}.tp-meta-stars{align-items:center;gap:1px;display:inline-flex}.tp-tags{flex-wrap:wrap;gap:.4rem;margin-top:.8rem;display:flex}.tp-tag{color:#555;background:#f3f4f6;border-radius:6px;padding:.2rem .6rem;font-size:.72rem;font-weight:600}.tp-actions{gap:.6rem;margin-top:1.2rem;padding-bottom:.5rem;display:flex}.tp-btn-primary{color:#fff;cursor:pointer;background:#6c5ce7;border:none;border-radius:10px;flex:1;padding:.65rem 0;font-family:inherit;font-size:.9rem;font-weight:700;transition:background .15s,transform .1s}.tp-btn-primary:hover{background:#5a4bd6}.tp-btn-primary:active{transform:scale(.97)}.tp-btn-secondary{color:#555;cursor:pointer;background:#fff;border:1.5px solid #e5e7eb;border-radius:10px;padding:.65rem 1rem;font-family:inherit;font-size:.9rem;font-weight:600;transition:all .15s}.tp-btn-secondary:hover{color:#6c5ce7;border-color:#6c5ce7}.tp-btn-ghost{color:#999;cursor:pointer;background:0 0;border:none;border-radius:10px;padding:.65rem 1rem;font-family:inherit;font-size:.9rem;font-weight:600;transition:color .15s}.tp-btn-ghost:hover{color:#6c5ce7}.tp-reviews{border-top:1px solid #f3f4f6;margin-top:1rem;padding-top:.8rem}.tp-reviews h4{color:#1a1a2e;margin:0 0 .5rem;font-size:.88rem;font-weight:700}.tp-review-item{border-bottom:1px solid #f3f4f6;padding:.5rem 0}.tp-review-item:last-child{border-bottom:none}.tp-review-top{align-items:center;gap:.5rem;margin-bottom:.2rem;display:flex}.tp-review-author{color:#1a1a2e;font-size:.78rem;font-weight:700}.tp-review-text{color:#555;margin:0;font-size:.78rem;line-height:1.5}.tp-no-reviews{color:#999;font-size:.82rem;font-style:italic}@keyframes tbFadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes tbSpin{to{transform:rotate(360deg)}}@keyframes tpFadeIn{0%{opacity:0}to{opacity:1}}@keyframes tpSlideUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@media (width<=400px){.tb-card-thumb{height:160px}.tb-card-actions{flex-wrap:wrap}.tp-preview-area{height:220px}}@media (width>=640px){.tb-grid{grid-template-columns:repeat(3,1fr)}.tb-card-thumb{height:190px}}@media (width>=1024px){.tb-grid{grid-template-columns:repeat(4,1fr)}.tb-card-thumb{height:200px}.tp-modal{max-width:640px}}@media (width>=1280px){.tb-grid,.tb-controls,.tb-search-wrap{max-width:1400px}}
