.marketplace-container{max-width:1440px;margin:0 auto;padding:2rem}@media (max-width:640px){.marketplace-container{padding:1rem;overflow-x:hidden}}.marketplace-header{border-bottom:1px solid var(--color-border);margin-bottom:3rem;padding-bottom:2rem}.header-top{justify-content:space-between;align-items:flex-start;margin-bottom:2rem;display:flex}.logo-section{align-items:center;gap:.75rem;margin-top:1rem;display:flex}.marketplace-title{letter-spacing:-.04em;margin:0;font-weight:700;font-size:2.25rem!important}.marketplace-subtitle{color:var(--color-text-muted);margin:0}.marketplace-filters{background:var(--color-surface);border-radius:var(--radius-lg);border:1px solid var(--color-border);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);flex-wrap:wrap;align-items:center;gap:1.5rem;padding:1rem;display:flex}.search-box{flex:1;align-items:center;min-width:300px;display:flex;position:relative}.search-icon{color:var(--color-text-muted);pointer-events:none;position:absolute;left:1rem}.search-input{background:var(--color-background);border:1px solid var(--color-border-solid);border-radius:var(--radius-md);width:100%;color:var(--color-text);padding:.75rem 1rem .75rem 3rem;font-size:.9375rem;transition:all .2s}.search-input:focus{border-color:var(--color-primary);outline:none;box-shadow:0 0 0 2px #3b82f61a}.filter-box{align-items:center;gap:.75rem;display:flex}.filter-box label{color:var(--color-text-muted);font-size:.875rem;font-weight:600}.filter-select{background:var(--color-background);border:1px solid var(--color-border-solid);border-radius:var(--radius-md);color:var(--color-text);cursor:pointer;min-width:180px;padding:.75rem 2rem .75rem 1rem;font-size:.9375rem}.loading-state,.empty-state{text-align:center;color:var(--color-text-muted);background:var(--color-surface);border-radius:var(--radius-xl);border:2px dashed var(--color-border);padding:6rem 2rem;font-size:1.125rem}@media (max-width:768px){.header-top{flex-direction:column;gap:1.5rem}.marketplace-title{font-size:1.75rem!important}.marketplace-filters{flex-direction:column;align-items:stretch}.search-box{min-width:0}.filter-select{flex:1}}.categories-container{-webkit-overflow-scrolling:touch;width:100%;margin-top:2rem;padding-bottom:.5rem;overflow-x:auto}.category-chips{gap:.75rem;min-width:max-content;padding:.25rem;display:flex}.category-chip{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-pill);color:var(--color-text-muted);cursor:pointer;white-space:nowrap;padding:.625rem 1.25rem;font-size:.875rem;font-weight:500;transition:all .2s cubic-bezier(.16,1,.3,1)}.category-chip:hover{background:var(--color-surface-hover);border-color:var(--color-text-muted)}.category-chip.active{background:var(--color-primary);color:#fff;border-color:var(--color-primary);box-shadow:var(--shadow-primary)}.results-count{color:var(--color-text-muted);margin-top:1.5rem;font-size:.875rem;font-weight:500}.marketplace-back-btn{border:1px solid var(--color-border-solid);color:var(--color-text-muted);background:0 0;padding:.5rem 1rem}.products-grid{gap:var(--space-8);grid-template-columns:repeat(auto-fill,minmax(280px,1fr));display:grid}@media (min-width:1440px){.products-grid{grid-template-columns:repeat(4,1fr)}}@media (max-width:1024px){.products-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}}@media (max-width:640px){.products-grid{gap:var(--space-4);grid-template-columns:repeat(2,1fr)}}@media (max-width:480px){.products-grid{gap:var(--space-4);grid-template-columns:1fr}}.product-card{background:var(--color-surface);border-radius:var(--radius-lg);color:inherit;border:1px solid var(--color-border);box-shadow:var(--shadow-sm);flex-direction:column;text-decoration:none;transition:all .4s cubic-bezier(.16,1,.3,1);animation:.6s cubic-bezier(.16,1,.3,1) backwards fadeInStagger;display:flex;overflow:hidden}.product-card:hover{box-shadow:var(--shadow-lg), 0 0 15px var(--color-primary-soft);border-color:var(--color-primary);transform:translateY(-8px)}.product-image-container{background-color:var(--color-background);padding-top:100%;position:relative;overflow:hidden}.product-image-container img{object-fit:cover;width:100%;height:100%;transition:transform .6s cubic-bezier(.16,1,.3,1);position:absolute;top:0;left:0}.product-card:hover .product-image-container img{transform:scale(1.03)}.nft-badge{background:var(--color-nft-badge-bg);-webkit-backdrop-filter:var(--blur-md);color:var(--color-text);border-radius:var(--radius-pill);letter-spacing:.05em;text-transform:uppercase;box-shadow:var(--shadow-sm);border:1px solid var(--color-nft-badge-border);padding:.375rem .75rem;font-size:.75rem;font-weight:600;position:absolute;top:1rem;right:1rem}.price-badge{-webkit-backdrop-filter:blur(8px);color:#fff;border-radius:var(--radius-pill);letter-spacing:.02em;pointer-events:none;background:#000000a6;padding:.3rem .65rem;font-size:.8rem;font-weight:700;position:absolute;bottom:.75rem;left:.75rem;box-shadow:0 2px 8px #0000004d}.region-selector-wrapper{margin-top:.5rem;display:inline-block;position:relative}.marketplace-region-badge{color:var(--color-primary);background:var(--color-primary-soft);border:1px solid var(--color-primary);border-radius:var(--radius-pill);cursor:pointer;align-items:center;gap:.4rem;padding:.4rem .85rem;font-size:.85rem;font-weight:600;transition:all .2s;display:inline-flex}.marketplace-region-badge:hover{background:var(--color-primary);color:#fff;box-shadow:var(--shadow-primary)}.region-chevron{transition:transform .2s}.marketplace-region-badge:hover .region-chevron{transform:translateY(2px)}.region-dropdown{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);min-width:180px;box-shadow:var(--shadow-xl);z-index:100;animation:.2s slideUpModal;position:absolute;top:calc(100% + .5rem);left:0;overflow:hidden}.region-dropdown button{width:100%;color:var(--color-text);cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:.5rem;padding:.75rem 1rem;font-size:.9rem;font-weight:500;transition:background .15s;display:flex}.region-dropdown button:hover{background:var(--color-surface-hover)}.region-dropdown button.active{background:var(--color-primary-soft);color:var(--color-primary);font-weight:700}.region-dropdown button+button{border-top:1px solid var(--color-border)}.product-info{padding:var(--space-4);background:var(--color-surface)}.product-title{letter-spacing:-.02em;-webkit-line-clamp:2;line-clamp:2;text-overflow:ellipsis;-webkit-box-orient:vertical;min-height:3.25rem;margin-bottom:.5rem;font-size:1.25rem;font-weight:600;line-height:1.3;display:-webkit-box;overflow:hidden}.product-meta{color:var(--color-text-muted);justify-content:space-between;align-items:center;font-size:.9375rem;font-weight:500;display:flex}.product-likes{align-items:center;gap:.375rem;display:flex}.product-detail-container{box-sizing:border-box;width:100%;max-width:1200px;margin:0 auto;padding:2rem;overflow-x:hidden}@media (max-width:640px){.product-detail-container{padding:1rem}}.breadcrumb{color:var(--color-text-muted);margin-bottom:2rem;font-size:.9375rem;font-weight:500}.breadcrumb a{color:var(--color-primary)}.breadcrumb a:hover{text-decoration:underline}.breadcrumb span{margin:0 .5rem}.detail-layout{grid-template-columns:1fr;gap:2rem;display:grid}@media (min-width:900px){.detail-layout{grid-template-columns:3fr 2fr;gap:3rem}}.detail-visualizer{background-color:var(--color-background);border-radius:var(--radius-xl);border:1px solid var(--color-border);box-shadow:var(--shadow-md);aspect-ratio:1;position:relative;overflow:hidden}.visualizer-content{background:var(--gradient-hero);width:100%;height:100%;position:relative}.visualizer-toggle-wrapper{z-index:10;padding:.25rem;position:absolute;top:1rem;left:1rem}.view-toggle-switch{background-color:var(--color-surface);border-radius:var(--radius-pill);cursor:pointer;box-shadow:inset 0 2px 4px #0000000d, var(--shadow-sm);border:1px solid var(--color-border);-webkit-user-select:none;user-select:none;align-items:center;padding:.25rem;display:inline-flex;position:relative}.switch-slider{background-color:var(--color-primary);border-radius:var(--radius-pill);z-index:1;width:calc(50% - .25rem);transition:transform .35s cubic-bezier(.25,1,.5,1);position:absolute;top:.25rem;bottom:.25rem;left:.25rem;box-shadow:0 2px 6px #00000040}.switch-slider.is-3d{transform:translate(100%)}.view-toggle-switch span{z-index:2;color:var(--color-text-muted);text-align:center;flex:1;padding:.35rem 1.2rem;font-size:.85rem;font-weight:600;transition:color .3s;position:relative}.view-toggle-switch span.active{color:#fff}.detail-info{flex-direction:column;display:flex}.detail-title{letter-spacing:-.04em;margin-bottom:.5rem;font-size:2.5rem;font-weight:700}.detail-creator{color:var(--color-text-muted);margin-bottom:2rem;font-size:1.125rem}.detail-description{color:var(--color-text);background:var(--color-surface);border-radius:var(--radius-lg);border:1px solid var(--color-border);margin-bottom:2.5rem;padding:1.5rem;font-size:1.0625rem;line-height:1.6}.fabric-info{color:var(--color-text-muted);align-items:center;gap:.5rem;margin-bottom:.75rem;font-size:.9375rem;display:flex}.action-buttons{gap:var(--space-4);margin-bottom:var(--space-8);display:flex}@media (max-width:640px){.action-buttons{flex-direction:column}}.action-buttons .btn{padding:var(--space-4);justify-content:center;align-items:center;gap:var(--space-2);flex:1;font-size:1rem;display:flex}.nft-details-box{background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:1.5rem}.nft-details-box h3{border-bottom:1px solid var(--color-border);margin-bottom:1rem;padding-bottom:.5rem;font-size:1.125rem}.detail-row{justify-content:space-between;gap:.5rem;display:flex}@media (max-width:640px){.detail-row{flex-direction:column;align-items:flex-start;gap:.25rem}}.detail-row-label{color:var(--color-text-muted)}.detail-row-value{font-weight:500}.detail-row-value.hash{word-break:break-all;font-size:.8rem}.detail-rows{flex-direction:column;gap:.75rem;display:flex}.nft-badge-inline{margin-bottom:1rem;display:inline-block}.region-modal-overlay{-webkit-backdrop-filter:blur(10px);z-index:9999;background:#000000b3;justify-content:center;align-items:center;animation:.3s ease-out fadeInModal;display:flex;position:fixed;inset:0}.region-modal{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);text-align:center;width:90%;max-width:450px;box-shadow:var(--shadow-xl), 0 0 40px #3b82f626;padding:2.5rem;animation:.4s cubic-bezier(.16,1,.3,1) slideUpModal}.region-modal-icon{filter:drop-shadow(0 0 10px #3b82f64d);margin-bottom:1rem;font-size:3.5rem}.region-modal h2{color:var(--color-text);margin-bottom:.5rem;font-size:1.5rem}.region-modal p{color:var(--color-text-muted);margin-bottom:2rem;line-height:1.5}.region-modal-actions button{width:100%;padding:1rem;font-size:1.1rem;font-weight:600}.region-modal-divider{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;margin:1.5rem 0;font-size:.85rem;position:relative}.region-modal-divider:before,.region-modal-divider:after{content:"";background:var(--color-border);width:30%;height:1px;position:absolute;top:50%}.region-modal-divider:before{left:0}.region-modal-divider:after{right:0}.region-modal-options{justify-content:center;gap:.75rem;display:flex}.region-modal-options button{background:var(--color-background);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text);cursor:pointer;flex:1;padding:.75rem .5rem;font-weight:600;transition:all .2s}.region-modal-options button:hover{background:var(--color-surface-hover);border-color:var(--color-primary-soft)}.region-modal-options button.active{background:var(--color-primary-soft);border-color:var(--color-primary);color:var(--color-primary)}@keyframes slideUpModal{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInModal{0%{opacity:0}to{opacity:1}}.creator-link{transition:opacity .2s,transform .2s;display:inline-block}.creator-link:hover{opacity:.8;text-decoration:underline!important}
