:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}body{margin:0;min-width:320px;min-height:100vh}#root{width:100%}.navbar{position:fixed;top:0;left:0;right:0;z-index:var(--z-100);background:#0f0f14d9;backdrop-filter:blur(10px) saturate(180%);-webkit-backdrop-filter:blur(10px) saturate(180%);border-bottom:1px solid var(--white-8);transform:translateZ(0)}.navbar-content{max-width:100%;padding:var(--space-4) var(--space-16);display:flex;justify-content:space-between;align-items:center;gap:var(--space-16)}.navbar-brand{display:flex;align-items:center;gap:var(--space-8);cursor:pointer;transition:opacity var(--transition-fast) ease}.navbar-brand:hover{opacity:.8}.navbar-logo{display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--success),var(--success-dark));padding:var(--space-4);border-radius:var(--radius-lg);box-shadow:0 2px 8px var(--success-bg-medium)}.navbar-logo-icon{width:var(--text-2xl);height:var(--text-2xl);color:var(--white)}.navbar-brand-text{display:flex;flex-direction:column;gap:var(--space-1)}.navbar-title{font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--white);line-height:var(--leading-tight);letter-spacing:-.01em}.navbar-subtitle{font-size:var(--text-xs);font-weight:var(--font-normal);color:var(--white-50);letter-spacing:.02em}.navbar-links{display:flex;gap:.25rem;align-items:center}.navbar-search{position:relative;display:flex;align-items:center;margin-right:.25rem}.navbar-search-icon{position:absolute;left:.75rem;width:1.125rem;height:1.125rem;color:#fff6;pointer-events:none;transition:color .2s ease}.navbar-search-input{width:220px;padding:.5rem 1rem .5rem 2.5rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:.5rem;color:#fff;font-size:.875rem;font-weight:400;transition:all .2s ease;outline:none}.navbar-search-input::placeholder{color:#fff6}.navbar-search-input:focus{background:#ffffff14;border-color:#ffffff40;width:280px}.navbar-search-input:focus+.navbar-search-icon,.navbar-search:focus-within .navbar-search-icon{color:#ffffffb3}.navbar-link{color:#ffffffb3;text-decoration:none;font-weight:500;font-size:.9rem;transition:all .2s ease;padding:.5rem 1rem;border-radius:.375rem;display:flex;align-items:center;gap:.5rem}.navbar-link:hover{color:#fff;background:#ffffff0d}.navbar-link-icon{width:1.125rem;height:1.125rem}.navbar-toggle-btn{padding:.5rem 1rem;background:#ffffff14;border:1.5px solid rgba(255,255,255,.2);border-radius:.5rem;color:#ffffffb3;font-weight:500;font-size:.875rem;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);margin-left:.5rem;display:flex;align-items:center;gap:.5rem;position:relative;overflow:hidden}.navbar-toggle-btn.active{background:#10b98126;border-color:#10b98166;color:#10b981}.navbar-toggle-btn:hover{background:#ffffff1f;border-color:#ffffff4d;transform:translateY(-1px);box-shadow:0 4px 12px #0003}.navbar-toggle-btn.active:hover{background:#10b98140;border-color:#10b98180}.navbar-toggle-btn:disabled{opacity:.4;cursor:not-allowed;background:#ffffff0d;border-color:#ffffff1a}.navbar-toggle-btn:disabled:hover{transform:none;box-shadow:none}.navbar-upload-btn{padding:.5rem 1rem;background:#ffffff14;border:1.5px solid rgba(255,255,255,.2);border-radius:.5rem;color:#fff;font-weight:500;font-size:.875rem;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);margin-left:.5rem;display:flex;align-items:center;gap:.5rem;position:relative;overflow:hidden}.navbar-upload-btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.1),transparent);transition:left .5s ease}.navbar-upload-btn:hover:before{left:100%}.navbar-upload-btn:hover{background:#ffffff1f;border-color:#ffffff4d;transform:translateY(-1px);box-shadow:0 4px 12px #0003}.navbar-upload-btn:active{transform:translateY(0)}.navbar-btn-icon{width:1rem;height:1rem;transition:transform .2s ease}.navbar-upload-btn:hover .navbar-btn-icon{transform:translateY(-2px)}.main-layout{display:flex;gap:2rem;padding-top:4rem;min-height:100vh}.sidebar{position:fixed;left:0;top:4rem;width:220px;height:calc(100vh - 4rem);background:linear-gradient(135deg,#ffffff12,#ffffff08);backdrop-filter:blur(8px) saturate(180%);-webkit-backdrop-filter:blur(8px) saturate(180%);border-right:1px solid rgba(255,255,255,.1);padding:2rem 1.5rem;overflow-y:auto;overflow-x:clip;z-index:50;transform:translateZ(0)}.sidebar-header{display:flex;align-items:center;gap:.75rem;margin-bottom:2rem;padding-bottom:1rem;border-bottom:1px solid rgba(255,255,255,.1)}.sidebar-header-icon{width:1.5rem;height:1.5rem;color:#ffffffb3}.sidebar-header h2{margin:0;font-size:1.25rem;font-weight:600;color:hsl(var(--card-foreground))}.filter-section{margin-bottom:2rem}.filter-section-header{display:flex;align-items:center;gap:.5rem;margin-bottom:1rem;flex-wrap:nowrap;min-height:2rem}.filter-section-icon{width:1.125rem;height:1.125rem;color:#fff9;flex-shrink:0}.filter-section-header h3{margin:0;font-size:.95rem;font-weight:600;color:#fffc;flex:1;min-width:0}.clear-filters-btn{padding:.25rem .75rem;background:#ef444426;border:1px solid rgba(239,68,68,.3);border-radius:.375rem;color:#f87171;font-size:.75rem;font-weight:500;cursor:pointer;transition:all .2s ease;flex-shrink:0;white-space:nowrap;margin-left:auto}.clear-filters-btn:hover{background:#ef444440;border-color:#ef444480;color:#ef4444}.tag-filters{display:flex;flex-direction:column;gap:.5rem}.tag-filter{padding:.65rem 1rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:.5rem;color:#ffffffb3;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .25s cubic-bezier(.4,0,.2,1);text-align:left;position:relative;overflow:hidden;transform:translate(0)}.tag-filter:hover{background:#ffffff14;border-color:#fff3;color:#fff}.tag-filter.active{background:#10b98126;border-color:#10b98166;color:#10b981;font-weight:600;transform:translate(4px);box-shadow:0 0 0 1px #10b98133,0 2px 8px #10b98126}.filter-stats{margin-top:auto;padding-top:1.5rem;border-top:1px solid rgba(255,255,255,.1)}.filter-stats p{margin:0;font-size:.8rem;color:#ffffff80;text-align:center;font-weight:500}.sidebar-right{position:fixed;right:0;top:4rem;width:220px;height:calc(100vh - 4rem);background:linear-gradient(135deg,#ffffff12,#ffffff08);backdrop-filter:blur(8px) saturate(180%);-webkit-backdrop-filter:blur(8px) saturate(180%);border-left:1px solid rgba(255,255,255,.1);padding:2rem 1.5rem;overflow-y:auto;overflow-x:clip;z-index:50;transform:translateZ(0)}.option-item{margin-bottom:1.5rem}.option-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem}.option-icon{width:1.25rem;height:1.25rem;color:#ffffffb3;transition:transform .2s ease}.option-header h3{margin:0;font-size:1rem;font-weight:600;color:#ffffffe6}.option-description{margin:0 0 1rem;font-size:.8rem;color:#fff9;line-height:1.4}.option-toggle-btn{width:100%;padding:.75rem 1rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:.5rem;cursor:pointer;transition:all .25s cubic-bezier(.4,0,.2,1);display:flex;align-items:center;justify-content:space-between;gap:.75rem}.option-toggle-btn:hover{background:#ffffff14;border-color:#fff3}.option-toggle-btn.active{background:#10b98126;border-color:#10b98166;box-shadow:0 0 0 1px #10b98133,0 2px 8px #10b98126}.option-toggle-btn.disabled{opacity:.5;cursor:not-allowed;background:#ffffff08}.option-toggle-btn.disabled:hover{background:#ffffff08;border-color:#ffffff1a}.toggle-switch{position:relative;width:40px;height:22px;background:#ffffff1a;border-radius:11px;transition:background .3s ease;flex-shrink:0}.option-toggle-btn.active .toggle-switch{background:#10b98166}.toggle-slider{position:absolute;top:2px;left:2px;width:18px;height:18px;background:#fffc;border-radius:50%;transition:transform .3s ease;box-shadow:0 2px 4px #0003}.option-toggle-btn.active .toggle-slider{transform:translate(18px);background:#10b981}.toggle-label{font-size:.875rem;font-weight:600;color:#ffffffb3;transition:color .2s ease}.option-toggle-btn.active .toggle-label{color:#10b981}.option-divider{height:1px;background:#ffffff1a;margin:1.5rem 0}.option-note{margin:.5rem 0 0;font-size:.75rem;color:#ef4444b3;font-style:italic}.skin-gallery-container{flex:1;margin-left:220px;margin-right:220px;padding:1rem 3rem 3rem;width:calc(100% - 440px)}.skin-gallery-container h1{font-size:2.5rem;font-weight:700;letter-spacing:-.025em;color:hsl(var(--foreground));margin-bottom:.5rem;text-align:center}.subtitle{color:hsl(var(--muted-foreground));font-size:1rem;margin-bottom:3rem;text-align:center}.gallery-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:1.5rem;width:100%}.no-results{grid-column:1 / -1;text-align:center;padding:4rem 2rem;color:#ffffff80}.no-results p{margin:0;font-size:1.125rem;font-weight:500}.skin-card{background:linear-gradient(135deg,#ffffff12,#ffffff08);backdrop-filter:blur(8px) saturate(180%);-webkit-backdrop-filter:blur(8px) saturate(180%);border:1px solid rgba(255,255,255,.1);border-radius:.75rem;overflow:hidden;cursor:pointer;transition:transform .3s cubic-bezier(.4,0,.2,1),box-shadow .3s cubic-bezier(.4,0,.2,1),border-color .3s cubic-bezier(.4,0,.2,1);width:100%;animation:cardFadeIn .4s cubic-bezier(.4,0,.2,1) backwards;transform:translateZ(0)}.skin-card:hover{border-color:#fff3;box-shadow:0 8px 32px #0006;transform:translateY(-4px)}.skin-image-container{width:100%;background:#0003;display:flex;align-items:center;justify-content:center;overflow:hidden;border-bottom:1px solid rgba(255,255,255,.08);position:relative}.rotate-btn{position:absolute;bottom:.5rem;right:.5rem;width:1.75rem;height:1.75rem;background:#ffffff14;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);border:1.5px solid rgba(255,255,255,.2);border-radius:.375rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:opacity .2s cubic-bezier(.4,0,.2,1),transform .2s cubic-bezier(.4,0,.2,1),background .2s cubic-bezier(.4,0,.2,1),border-color .2s cubic-bezier(.4,0,.2,1),box-shadow .2s cubic-bezier(.4,0,.2,1);z-index:10;opacity:0;pointer-events:none}.rotate-btn.visible{opacity:1;pointer-events:auto}.rotate-btn:hover{background:#ffffff1f;border-color:#ffffff4d;transform:translateY(-1px);box-shadow:0 4px 12px #0003}.rotate-btn:active{transform:translateY(0)}.rotate-icon{width:1rem;height:1rem;color:#ffffffe6;transition:color .2s ease}.rotate-btn:hover .rotate-icon{color:#fff}.delete-btn{position:absolute;bottom:2.5rem;right:.5rem;width:1.75rem;height:1.75rem;background:#ef44441a;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);border:1.5px solid rgba(239,68,68,.3);border-radius:.375rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:opacity .2s cubic-bezier(.4,0,.2,1),transform .2s cubic-bezier(.4,0,.2,1),background .2s cubic-bezier(.4,0,.2,1),border-color .2s cubic-bezier(.4,0,.2,1),box-shadow .2s cubic-bezier(.4,0,.2,1);z-index:10;opacity:0;pointer-events:none}.delete-btn.visible{opacity:1;pointer-events:auto}.delete-btn:hover{background:#ef444433;border-color:#ef444480;transform:translateY(-1px);box-shadow:0 4px 12px #ef44444d}.delete-btn:active{transform:translateY(0)}.delete-icon{width:1rem;height:1rem;color:#ef4444e6;transition:color .2s ease}.delete-btn:hover .delete-icon{color:#ef4444}.generate-render-btn{position:absolute;bottom:.5rem;right:.5rem;width:1.75rem;height:1.75rem;background:#8b5cf61a;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);border:1.5px solid rgba(139,92,246,.3);border-radius:.375rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:opacity .2s cubic-bezier(.4,0,.2,1),transform .2s cubic-bezier(.4,0,.2,1),background .2s cubic-bezier(.4,0,.2,1),border-color .2s cubic-bezier(.4,0,.2,1),box-shadow .2s cubic-bezier(.4,0,.2,1);z-index:10;opacity:0;pointer-events:none}.generate-render-btn.visible{opacity:1;pointer-events:auto}.generate-render-btn:hover{background:#8b5cf633;border-color:#8b5cf680;transform:translateY(-1px);box-shadow:0 4px 12px #8b5cf64d}.generate-render-btn:active{transform:translateY(0)}.generate-render-icon{width:1rem;height:1rem;color:#8b5cf6e6;transition:color .2s ease}.generate-render-btn:hover .generate-render-icon{color:#8b5cf6}.edit-btn{position:absolute;bottom:4.5rem;right:.5rem;width:1.75rem;height:1.75rem;background:#3b82f61a;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);border:1.5px solid rgba(59,130,246,.3);border-radius:.375rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:opacity .2s cubic-bezier(.4,0,.2,1),transform .2s cubic-bezier(.4,0,.2,1),background .2s cubic-bezier(.4,0,.2,1),border-color .2s cubic-bezier(.4,0,.2,1),box-shadow .2s cubic-bezier(.4,0,.2,1);z-index:10;opacity:0;pointer-events:none}.edit-btn.visible{opacity:1;pointer-events:auto}.edit-btn:hover{background:#3b82f633;border-color:#3b82f680;transform:translateY(-1px);box-shadow:0 4px 12px #3b82f64d}.edit-btn:active{transform:translateY(0)}.edit-icon{width:1rem;height:1rem;color:#3b82f6e6;transition:color .2s ease}.edit-btn:hover .edit-icon{color:#3b82f6}.download-btn{position:absolute;bottom:6.5rem;right:.5rem;width:1.75rem;height:1.75rem;background:#10b9811a;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);border:1.5px solid rgba(16,185,129,.3);border-radius:.375rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:opacity .2s cubic-bezier(.4,0,.2,1),transform .2s cubic-bezier(.4,0,.2,1),background .2s cubic-bezier(.4,0,.2,1),border-color .2s cubic-bezier(.4,0,.2,1),box-shadow .2s cubic-bezier(.4,0,.2,1);z-index:10;opacity:0;pointer-events:none}.download-btn.visible{opacity:1;pointer-events:auto}.download-btn:hover{background:#10b98133;border-color:#10b98180;transform:translateY(-1px);box-shadow:0 4px 12px #10b9814d}.download-btn:active{transform:translateY(0)}.download-icon{width:1rem;height:1rem;color:#10b981e6;transition:color .2s ease}.download-btn:hover .download-icon{color:#10b981}.import-card-btn{position:absolute;top:.5rem;right:.5rem;width:1.75rem;height:1.75rem;background:linear-gradient(135deg,#fbbf2433,#f59e0b26);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);border:1.5px solid rgba(251,191,36,.4);border-radius:.375rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:transform .2s cubic-bezier(.4,0,.2,1),background .2s cubic-bezier(.4,0,.2,1),border-color .2s cubic-bezier(.4,0,.2,1),box-shadow .2s cubic-bezier(.4,0,.2,1);z-index:10;opacity:1;pointer-events:auto}.import-card-btn:hover{background:linear-gradient(135deg,#fbbf244d,#f59e0b33);border-color:#fbbf2499;transform:translateY(-1px);box-shadow:0 4px 12px #fbbf2466}.import-card-btn:active{transform:translateY(0)}.import-card-icon{width:1rem;height:1rem;color:#fbbf24;transition:color .2s ease}.import-card-btn:hover .import-card-icon{color:#f59e0b}.add-to-collection-btn{position:absolute;bottom:8.5rem;right:.5rem;width:1.75rem;height:1.75rem;background:#8b5cf61a;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);border:1.5px solid rgba(139,92,246,.3);border-radius:.375rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:opacity .2s cubic-bezier(.4,0,.2,1),transform .2s cubic-bezier(.4,0,.2,1),background .2s cubic-bezier(.4,0,.2,1),border-color .2s cubic-bezier(.4,0,.2,1),box-shadow .2s cubic-bezier(.4,0,.2,1);z-index:10;opacity:0;pointer-events:none}.add-to-collection-btn.visible{opacity:1;pointer-events:auto}.add-to-collection-btn:hover{background:#8b5cf633;border-color:#8b5cf680;transform:translateY(-1px);box-shadow:0 4px 12px #8b5cf64d}.add-to-collection-btn:active{transform:translateY(0)}.add-to-collection-icon{width:1rem;height:1rem;color:#8b5cf6e6;transition:color .2s ease}.add-to-collection-btn:hover .add-to-collection-icon{color:#8b5cf6}.skin-image{width:100%;height:100%;object-fit:contain;image-rendering:pixelated}.skin-info{padding:1rem;text-align:left}.skin-info h3{margin:0 0 .5rem;color:hsl(var(--card-foreground));font-size:.95rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.4}.import-skin-btn{display:flex;align-items:center;justify-content:center;gap:var(--space-3);padding:var(--space-4) var(--space-7);height:1.75rem;background:linear-gradient(135deg,var(--success-bg),var(--success-bg-light));border:1.5px solid var(--success-border);border-radius:var(--radius-md);cursor:pointer;transition:transform var(--transition-fast) var(--ease-smooth),box-shadow var(--transition-fast) var(--ease-smooth),background var(--transition-fast) var(--ease-smooth),border-color var(--transition-fast) var(--ease-smooth);flex-shrink:0}.import-skin-btn:hover{background:linear-gradient(135deg,var(--success-bg-medium),var(--success-bg-light));border-color:var(--success-border-strong);transform:translateY(-2px);box-shadow:0 4px 12px var(--success-border)}.import-skin-btn:active{transform:translateY(0)}.import-skin-btn.icon-only{padding:var(--space-4);width:1.75rem;min-width:1.75rem;gap:0}.import-icon{width:var(--text-sm);height:var(--text-sm);color:var(--success);transition:color var(--transition-fast) ease;flex-shrink:0}.import-label{font-size:var(--text-xs);font-weight:var(--font-semibold);color:var(--success);letter-spacing:-.01em;transition:color var(--transition-fast) ease;white-space:nowrap}.import-skin-btn:hover .import-icon,.import-skin-btn:hover .import-label{color:var(--success-dark)}.import-skin-btn.mod-connected{background:linear-gradient(135deg,#fbbf2426,#f59e0b1a);border-color:#fbbf244d}.import-skin-btn.mod-connected:hover{background:linear-gradient(135deg,#fbbf2440,#f59e0b26);border-color:#fbbf2480;box-shadow:0 4px 12px #fbbf244d}.import-skin-btn.mod-connected .import-icon,.import-skin-btn.mod-connected .import-label{color:#fbbf24}.import-skin-btn.mod-connected:hover .import-icon,.import-skin-btn.mod-connected:hover .import-label{color:#f59e0b}.skin-badges{display:flex;gap:.35rem;flex-wrap:nowrap;overflow:hidden}.badge{display:inline-block;padding:.15rem .5rem;background:#ffffff14;border:1px solid rgba(255,255,255,.15);border-radius:.25rem;font-size:.7rem;font-weight:500;color:#fffc;white-space:nowrap;flex-shrink:0;transition:background .2s ease,border-color .2s ease,color .2s ease}.badge:hover{background:#ffffff1f;border-color:#ffffff40;color:#fff}.badge-more{background:#ffffff0d;border-color:#ffffff1a;color:#fff9}.badge-more:hover{background:#ffffff14;border-color:#ffffff26;color:#ffffffb3}.author{color:hsl(var(--muted-foreground));font-size:.875rem;margin:0}.modal-overlay{position:fixed;inset:0;background:var(--modal-overlay-bg);backdrop-filter:blur(var(--modal-overlay-blur));-webkit-backdrop-filter:blur(var(--modal-overlay-blur));display:flex;align-items:center;justify-content:center;z-index:var(--z-overlay);transform:translateZ(0)}.modal-content{background:var(--modal-bg);backdrop-filter:blur(var(--modal-blur)) saturate(180%);-webkit-backdrop-filter:blur(var(--modal-blur)) saturate(180%);padding:var(--space-16);border-radius:var(--radius-2xl);border:1px solid var(--modal-border);max-width:900px;width:90%;position:relative;box-shadow:var(--modal-shadow);max-height:90vh;overflow-y:auto;transform:translateZ(0);will-change:transform,opacity}.close-btn{position:absolute;top:var(--space-8);right:var(--space-8);background:var(--white-8);border:1px solid var(--white-12);font-size:var(--text-2xl);cursor:pointer;color:hsl(var(--muted-foreground));width:36px;height:36px;border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast) ease}.close-btn:hover{background:var(--white-15);color:hsl(var(--foreground))}.modal-header{margin-bottom:1.5rem;padding-right:2.5rem}.modal-content h2{margin:0 0 .75rem;color:hsl(var(--card-foreground));font-size:1.75rem;font-weight:600;text-align:center}.modal-badges{display:flex;gap:.5rem;justify-content:center;flex-wrap:wrap}.modal-image{width:100%;max-height:400px;object-fit:contain;image-rendering:pixelated;margin-bottom:1rem;border-radius:.5rem;background:#0003}.modal-body{display:flex;gap:1.5rem;align-items:stretch}.modal-info{flex:1;min-width:0;display:flex;flex-direction:column;justify-content:center}.modal-description{margin-bottom:var(--space-16);padding:var(--space-12);background:var(--black-20);border:1px solid var(--white-10);border-radius:var(--radius-lg)}.modal-description .info-label{display:block;margin-bottom:var(--space-6);color:var(--white-70);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.1em;font-weight:var(--font-medium)}.description-text{color:var(--white-90);font-size:var(--text-sm);line-height:1.6;margin:0;white-space:pre-wrap;word-wrap:break-word}.info-grid{display:flex;flex-direction:column;gap:.85rem}.info-item{background:#0003;padding:.85rem 1.1rem;border-radius:.5rem;border:1px solid rgba(255,255,255,.08);display:flex;flex-direction:column;gap:.35rem;transition:all .2s ease}.info-item:hover{background:#0000004d;border-color:#ffffff26}.info-label{font-size:.7rem;color:#ffffff8c;text-transform:uppercase;letter-spacing:.08em;font-weight:600}.info-value{font-size:.9rem;color:hsl(var(--card-foreground));font-weight:600;line-height:1.3;word-break:break-word}.modal-content p{color:hsl(var(--muted-foreground));font-size:.875rem;text-align:center}@media(max-width:900px){.modal-content{max-width:95%;padding:1.5rem}.modal-body{flex-direction:column;align-items:center}.modal-viewer{width:100%;max-width:400px;height:450px}.modal-info{width:100%}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}@keyframes cardFadeIn{0%{opacity:0;transform:scale(.9) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes slideDown{0%{transform:translateY(0);opacity:1}to{transform:translateY(20px);opacity:0}}.modal-overlay.closing{animation:fadeOut .2s ease forwards}.modal-content.closing{animation:slideDown .2s ease forwards}@supports not (backdrop-filter: blur(10px)){.skin-card{background:#1e1e2de6}.modal-content,.style-panel{background:var(--modal-bg-fallback)}}@media(max-width:1024px){.sidebar,.sidebar-right{width:200px}.skin-gallery-container{margin-left:200px;margin-right:200px;padding:1rem 2rem 3rem;width:calc(100% - 400px)}}@media(max-width:768px){.navbar-content{padding:.5rem 1.5rem}.navbar-logo-icon{width:1.25rem;height:1.25rem}.navbar-title{font-size:1rem}.navbar-subtitle{font-size:.7rem}.navbar-search-input{width:160px}.navbar-search-input:focus{width:200px}.navbar-links{gap:.25rem}.navbar-link{font-size:.85rem;padding:.4rem .75rem}.navbar-link-icon{width:1rem;height:1rem}.navbar-upload-btn{padding:.4rem 1rem;font-size:.8rem}.navbar-btn-icon{width:.875rem;height:.875rem}.sidebar,.sidebar-right{display:none}.main-layout{padding-top:4rem}.skin-gallery-container{margin-left:0;margin-right:0;width:100%;padding:1rem 1rem 2rem}.gallery-grid{grid-template-columns:repeat(auto-fill,minmax(160px,200px));gap:1rem}.skin-card{backdrop-filter:blur(6px) saturate(180%);-webkit-backdrop-filter:blur(6px) saturate(180%)}}@media(max-width:640px){.navbar-brand-text{display:none}.navbar-search-input{width:120px;font-size:.8rem}.navbar-search-input:focus{width:160px}.navbar-link:not(:first-child){display:none}.navbar-links{gap:.5rem}}.modal-viewer{flex-shrink:0;width:350px;height:450px;display:flex;justify-content:center;align-items:center;border-radius:.5rem;overflow:hidden}.render-type-selector{display:flex;align-items:center;justify-content:center;gap:.75rem;margin-bottom:2.5rem;flex-wrap:wrap;padding:1.5rem;background:linear-gradient(135deg,#ffffff0d,#ffffff05);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.1);border-radius:.75rem}.render-type-selector label{font-weight:600;color:hsl(var(--foreground));margin-right:.5rem}.render-type-btn{padding:.5rem 1rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:.5rem;color:hsl(var(--muted-foreground));cursor:pointer;transition:all .2s ease;font-size:.875rem;font-weight:500}.render-type-btn:hover{background:#ffffff14;border-color:#fff3;color:hsl(var(--foreground))}.render-type-btn.active{background:linear-gradient(135deg,#8a2be24d,#3b82f64d);border-color:#8a2be280;color:hsl(var(--foreground));box-shadow:0 0 20px #8a2be24d}.toggle-controls-btn{display:block;margin:0 auto 2rem;padding:.75rem 1.5rem;background:linear-gradient(135deg,#8a2be24d,#3b82f64d);border:1px solid rgba(138,43,226,.5);border-radius:.5rem;color:hsl(var(--foreground));font-weight:600;cursor:pointer;transition:all .2s ease}.toggle-controls-btn:hover{background:linear-gradient(135deg,#8a2be266,#3b82f666);box-shadow:0 0 20px #8a2be266}.camera-controls{background:linear-gradient(135deg,#ffffff0d,#ffffff05);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.1);border-radius:.75rem;padding:2rem;margin-bottom:2rem}.camera-controls h3{color:hsl(var(--foreground));margin:0 0 1.5rem;text-align:center;font-size:1.25rem}.control-group{margin-bottom:1.5rem}.control-group label{display:block;color:hsl(var(--foreground));margin-bottom:.5rem;font-weight:500}.control-group input[type=range]{width:100%;height:6px;background:#ffffff1a;border-radius:3px;outline:none;-webkit-appearance:none}.control-group input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:18px;height:18px;background:linear-gradient(135deg,#8a2be2,#3b82f6);border-radius:50%;cursor:pointer;box-shadow:0 0 10px #8a2be280}.control-group input[type=range]::-moz-range-thumb{width:18px;height:18px;background:linear-gradient(135deg,#8a2be2,#3b82f6);border-radius:50%;cursor:pointer;border:none;box-shadow:0 0 10px #8a2be280}.control-values{margin-top:2rem;padding:1rem;background:#0000004d;border-radius:.5rem;border:1px solid rgba(255,255,255,.1)}.control-values h4{color:hsl(var(--foreground));margin:0 0 .75rem;font-size:.9rem}.control-values code{display:block;color:#a5d6ff;font-family:Courier New,monospace;font-size:.875rem;white-space:pre;line-height:1.6}.modal-camera-controls{margin-top:1.5rem;padding:1.5rem;background:#0003;border-radius:.75rem;border:1px solid rgba(255,255,255,.08)}.modal-camera-controls h3{color:#ffffffe6;margin:0 0 1rem;font-size:1rem;font-weight:600;text-align:center}.modal-camera-controls .control-group{margin-bottom:1rem}.modal-camera-controls .control-group:last-of-type{margin-bottom:1.5rem}.modal-camera-controls .control-group label{display:block;color:#fffc;margin-bottom:.5rem;font-weight:500;font-size:.875rem}.modal-camera-controls .control-group input[type=range]{width:100%;height:6px;background:#ffffff1a;border-radius:3px;outline:none;-webkit-appearance:none}.modal-camera-controls .control-group input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:16px;height:16px;background:linear-gradient(135deg,#10b981,#059669);border-radius:50%;cursor:pointer;box-shadow:0 0 8px #10b98180}.modal-camera-controls .control-group input[type=range]::-moz-range-thumb{width:16px;height:16px;background:linear-gradient(135deg,#10b981,#059669);border-radius:50%;cursor:pointer;border:none;box-shadow:0 0 8px #10b98180}.modal-camera-controls .reset-btn{width:100%;margin-top:0}.style-panel-overlay{position:fixed;inset:0;background:var(--modal-overlay-bg);display:flex;align-items:center;justify-content:center;z-index:var(--z-overlay);transform:translateZ(0)}.style-panel{background:var(--modal-bg);padding:var(--space-16);border-radius:var(--radius-2xl);border:1px solid var(--modal-border);max-width:500px;width:90%;position:relative;box-shadow:var(--modal-shadow);max-height:90vh;overflow-y:auto;transform:translateZ(0)}.style-panel-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid rgba(255,255,255,.1)}.style-panel-header h2{margin:0;color:#fff;font-size:1.5rem;font-weight:600}.style-panel-body{display:flex;flex-direction:column;gap:1.5rem}.style-panel .control-group{margin-bottom:0}.style-panel .control-group label{display:block;color:#ffffffe6;margin-bottom:.75rem;font-weight:500;font-size:.95rem}.style-panel .control-group input[type=range]{width:100%;height:6px;background:#ffffff1a;border-radius:3px;outline:none;-webkit-appearance:none;margin-top:.5rem}.style-panel .control-group input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:18px;height:18px;background:linear-gradient(135deg,#10b981,#059669);border-radius:50%;cursor:pointer;box-shadow:0 0 10px #10b98180}.style-panel .control-group input[type=range]::-moz-range-thumb{width:18px;height:18px;background:linear-gradient(135deg,#10b981,#059669);border-radius:50%;cursor:pointer;border:none;box-shadow:0 0 10px #10b98180}.reset-btn{padding:.75rem 1.5rem;background:#ef444426;border:1px solid rgba(239,68,68,.3);border-radius:.5rem;color:#f87171;font-weight:600;cursor:pointer;transition:all .2s ease;margin-top:1rem}.reset-btn:hover{background:#ef444440;border-color:#ef444480;color:#ef4444}.pagination{display:flex;justify-content:center;align-items:center;gap:1.5rem;margin-top:3rem;padding:2rem 0}.pagination-btn{padding:.75rem 2rem;background:linear-gradient(135deg,#ffffff12,#ffffff08);backdrop-filter:blur(8px) saturate(180%);-webkit-backdrop-filter:blur(8px) saturate(180%);border:1px solid rgba(255,255,255,.1);border-radius:.5rem;color:#ffffffe6;font-weight:600;font-size:.95rem;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1)}.pagination-btn:hover:not(:disabled){background:#ffffff1f;border-color:#fff3;transform:translateY(-2px);box-shadow:0 4px 12px #0000004d}.pagination-btn:disabled{opacity:.3;cursor:not-allowed}.pagination-info{padding:.75rem 1.5rem;background:#10b98126;border:1px solid rgba(16,185,129,.3);border-radius:.5rem;color:#10b981;font-weight:600;font-size:.95rem}.loading-state,.error-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 3rem;text-align:center;gap:1.5rem}.loading-spinner{width:48px;height:48px;border:3px solid rgba(16,185,129,.15);border-top-color:#10b981;border-radius:50%;animation:spin .8s linear infinite}.loading-state p{color:#ffffffb3;font-size:1rem;font-weight:500;letter-spacing:.01em}.error-state{background:#ef44440d;border:1px solid rgba(239,68,68,.2);border-radius:.75rem;margin:2rem auto;max-width:500px}.error-message{color:#ef4444;font-size:1rem;font-weight:600;margin:0}.error-note{color:#ffffff80;font-size:.875rem;margin:0}.navbar-link-btn{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:.5rem;color:#ffffffe6;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s ease}.navbar-link-btn:hover{background:#ffffff14;border-color:#ffffff26;color:#fff;transform:translateY(-1px)}.navbar-link-btn.active{background:#10b98126;border-color:#10b98166;color:#10b981}.navbar-link-btn.active:hover{background:#10b98133;border-color:#10b98180}.navbar-link-btn .navbar-link-icon{width:1.125rem;height:1.125rem}.navbar-user-info{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:#10b98114;border:1px solid rgba(16,185,129,.2);border-radius:.5rem;color:#10b981;font-weight:500;font-size:.875rem;letter-spacing:.01em}.navbar-user-info .navbar-link-icon{width:1.125rem;height:1.125rem;color:#10b981}.user-role-badge{padding:.2rem .5rem;background:#10b98126;border:1px solid rgba(16,185,129,.25);border-radius:.25rem;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#059669}.stats-fps{position:fixed!important;top:80px!important;left:10px!important;z-index:9999!important}.stats-ms{position:fixed!important;top:80px!important;left:90px!important;z-index:9999!important}.stats-mb{position:fixed!important;top:80px!important;left:170px!important;z-index:9999!important}.display-options-container{display:flex;flex-direction:column;gap:0}.display-option-group{padding:1.25rem 0}.display-option-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.option-title-group{display:flex;align-items:center;gap:.625rem}.display-option-icon{width:1.125rem;height:1.125rem;color:#10b981;flex-shrink:0}.display-option-title{margin:0;font-size:.95rem;font-weight:600;color:#fffffff2;letter-spacing:-.01em}.display-option-description{margin:0;font-size:.8rem;line-height:1.5;color:#ffffff80;padding-left:1.75rem}.modern-toggle{position:relative;width:44px;height:24px;cursor:pointer;flex-shrink:0}.modern-toggle input{opacity:0;width:0;height:0;position:absolute}.modern-toggle-slider{position:absolute;inset:0;background:#ffffff26;border-radius:24px;transition:all .3s cubic-bezier(.4,0,.2,1);border:1.5px solid rgba(255,255,255,.1)}.modern-toggle-slider:before{content:"";position:absolute;height:18px;width:18px;left:2px;bottom:2px;background:#ffffffe6;border-radius:50%;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 2px 4px #0003}.modern-toggle input:checked+.modern-toggle-slider{background:linear-gradient(135deg,#10b981,#059669);border-color:#10b9814d;box-shadow:0 0 12px #10b9814d}.modern-toggle input:checked+.modern-toggle-slider:before{transform:translate(20px);background:#fff;box-shadow:0 2px 6px #0000004d}.modern-toggle:hover .modern-toggle-slider{background:#fff3}.modern-toggle input:checked:hover+.modern-toggle-slider{background:linear-gradient(135deg,#10b981,#059669);box-shadow:0 0 16px #10b98166}.modern-toggle input:disabled+.modern-toggle-slider{opacity:.3;cursor:not-allowed}.modern-toggle input:disabled:hover+.modern-toggle-slider{background:#ffffff26}.modern-toggle input:disabled:checked+.modern-toggle-slider{background:linear-gradient(135deg,#10b981,#059669);opacity:.3;box-shadow:none}.modern-toggle input:disabled:checked:hover+.modern-toggle-slider{background:linear-gradient(135deg,#10b981,#059669);box-shadow:none}.arm-width-control{display:flex;background:#0000004d;border-radius:.5rem;padding:.25rem;gap:.25rem;margin-top:.75rem;border:1px solid rgba(255,255,255,.08);position:relative}.arm-width-option{flex:1;padding:.625rem .875rem;background:transparent;border:none;border-radius:.375rem;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center}.arm-width-option:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(255,255,255,.05),transparent);opacity:0;transition:opacity .2s ease;border-radius:.375rem}.arm-width-option:hover:not(.active):not(:disabled):before{opacity:1}.arm-width-option:hover:not(.active):not(:disabled){background:#ffffff08}.arm-width-option.active{background:linear-gradient(135deg,#10b98133,#05966926);box-shadow:0 0 0 1px #10b9814d,0 2px 8px #10b98133,inset 0 1px #ffffff1a,inset 0 -1px #0000001a}.arm-width-option:active:not(:disabled){transform:scale(.97)}.arm-width-label{font-size:.8rem;font-weight:600;color:#ffffffa6;letter-spacing:-.005em;transition:color .3s ease;z-index:1;white-space:nowrap}.arm-width-option.active .arm-width-label{color:#10b981;text-shadow:0 0 12px rgba(16,185,129,.3)}.arm-width-option:disabled{opacity:.3;cursor:not-allowed}.arm-width-option:disabled .arm-width-label{color:#ffffff4d}.arm-width-option.active:disabled{opacity:.3;box-shadow:none}.arm-width-option.active:disabled .arm-width-label{color:#10b98180;text-shadow:none}.glass-card{position:relative;border-radius:var(--glass-border-radius, var(--radius-2xl));border:var(--glass-border, 1px solid var(--white-15));backdrop-filter:blur(var(--glass-blur, 20px)) saturate(var(--glass-saturation, 180%));-webkit-backdrop-filter:blur(var(--glass-blur, 20px)) saturate(var(--glass-saturation, 180%));transform:translateZ(0)}.glass-overlay{position:fixed;inset:0;background:rgba(0,0,0,var(--overlay-bg-opacity, .75));backdrop-filter:blur(var(--overlay-blur, 8px));-webkit-backdrop-filter:blur(var(--overlay-blur, 8px));display:flex;align-items:center;justify-content:center;z-index:var(--z-overlay, 2000);transform:translateZ(0)}@supports not (backdrop-filter: blur(10px)){.glass-card{background:#121212fa!important}.glass-overlay{background:#000000d9}}.auth-modal-overlay{position:fixed;inset:0;background:var(--modal-overlay-bg);display:flex;align-items:center;justify-content:center;z-index:var(--z-overlay);opacity:0;visibility:hidden;transition:opacity var(--transition-fast) ease,visibility var(--transition-fast) ease;transform:translateZ(0);will-change:opacity}.auth-modal-overlay.visible{opacity:1;visibility:visible}.auth-modal-content{background:var(--modal-bg);border-radius:var(--radius-2xl);padding:var(--space-20);width:90%;max-width:440px;position:relative;box-shadow:var(--modal-shadow);border:1px solid var(--modal-border);transform:translateY(30px) translateZ(0);opacity:0;transition:transform var(--transition-base) ease-out,opacity var(--transition-base) ease-out;will-change:transform,opacity}.auth-modal-overlay.visible .auth-modal-content{transform:translateY(0) translateZ(0);opacity:1}.auth-modal-close{position:absolute;top:var(--space-8);right:var(--space-8);background:var(--white-8);border:1px solid var(--white-12);color:var(--white-60);font-size:var(--text-2xl);cursor:pointer;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-lg);transition:all var(--transition-fast) ease}.auth-modal-close:hover{background:var(--white-15);color:var(--white);border-color:var(--white-20)}.auth-modal-title{font-size:var(--text-3xl);font-weight:var(--font-bold);color:var(--white);margin:0 0 var(--space-16) 0;text-align:center;letter-spacing:-.02em}.auth-form{display:flex;flex-direction:column;gap:var(--space-10)}.auth-form-group{display:flex;flex-direction:column;gap:var(--space-4)}.auth-form-group label{color:var(--white-90);font-size:var(--text-sm);font-weight:var(--font-medium);letter-spacing:.01em}.auth-form-group input,.auth-form-group select{background:var(--white-5);border:1px solid var(--white-10);border-radius:var(--radius-lg);padding:var(--space-6) var(--space-8);color:var(--white);font-size:var(--text-sm);transition:all var(--transition-fast) ease;outline:none}.auth-form-group input:focus,.auth-form-group select:focus{background:var(--white-8);border-color:var(--white-25);box-shadow:0 0 0 3px var(--white-5)}.auth-form-group input:disabled,.auth-form-group select:disabled{opacity:.5;cursor:not-allowed}.auth-form-group input::placeholder{color:#fff6}.auth-form-group select{cursor:pointer}.auth-error{background:var(--error-bg);border:1px solid var(--error-border);border-radius:var(--radius-lg);padding:var(--space-6);color:var(--error);font-size:var(--text-sm);text-align:center}.auth-submit-btn{background:var(--white-8);border:1.5px solid var(--white-20);border-radius:var(--radius-lg);padding:var(--space-7) var(--space-12);color:var(--white);font-size:var(--text-base);font-weight:var(--font-semibold);cursor:pointer;transition:all var(--transition-fast) var(--ease-smooth);margin-top:var(--space-4);position:relative;overflow:hidden;transform:translateZ(0)}.auth-submit-btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,var(--white-10),transparent);transition:left var(--transition-slow)}.auth-submit-btn:hover:not(:disabled):before{left:100%}.auth-submit-btn:hover:not(:disabled){background:var(--white-12);border-color:var(--white-30, rgba(255, 255, 255, .3));transform:translateY(-1px);box-shadow:var(--shadow-sm)}.auth-submit-btn:active:not(:disabled){transform:translateY(0)}.auth-submit-btn:disabled{opacity:.4;cursor:not-allowed;background:var(--white-5);border-color:var(--white-10)}.auth-switch{margin-top:var(--space-12);padding-top:var(--space-12);border-top:1px solid var(--white-10);text-align:center}.auth-switch p{color:var(--white-70);font-size:var(--text-sm);margin:0}.auth-switch-btn{background:none;border:none;color:var(--success);font-weight:var(--font-semibold);cursor:pointer;transition:all var(--transition-fast) ease;padding:0;font-size:inherit;text-decoration:none}.auth-switch-btn:hover{color:var(--success-dark);text-decoration:underline}.upload-modal-overlay{position:fixed;inset:0;background:var(--modal-overlay-bg);display:flex;align-items:center;justify-content:center;z-index:var(--z-overlay);opacity:0;visibility:hidden;transition:opacity var(--transition-fast) ease,visibility var(--transition-fast) ease;transform:translateZ(0);will-change:opacity}.upload-modal-overlay.visible{opacity:1;visibility:visible}.upload-modal-content{background:var(--modal-bg);border-radius:var(--radius-2xl);padding:var(--space-20);width:90%;max-width:1000px;max-height:90vh;overflow-y:auto;position:relative;box-shadow:var(--modal-shadow);border:1px solid var(--modal-border);transform:translateY(30px) translateZ(0);opacity:0;transition:transform var(--transition-base) ease-out,opacity var(--transition-base) ease-out;will-change:transform,opacity}.upload-modal-overlay.visible .upload-modal-content{transform:translateY(0) translateZ(0);opacity:1}.upload-modal-close{position:absolute;top:var(--space-8);right:var(--space-8);background:var(--white-8);border:1px solid var(--white-12);color:var(--white-60);font-size:var(--text-2xl);cursor:pointer;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-lg);transition:all var(--transition-fast) ease}.upload-modal-close:hover{background:var(--white-15);color:var(--white);border-color:var(--white-20)}.upload-modal-title{font-size:var(--text-3xl);font-weight:var(--font-bold);color:var(--white);margin:0 0 var(--space-16) 0;text-align:center;letter-spacing:-.02em}.upload-form-wrapper{display:flex;flex-direction:column;gap:var(--space-16)}.upload-two-column-layout{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-20);align-items:start}.upload-preview-dropzone{position:relative}.upload-dropzone-label{cursor:pointer;display:block;width:100%}.upload-file-input{display:none}.upload-3d-dropzone{width:100%;height:450px;background:var(--black-20);border:2px dashed var(--white-20);border-radius:var(--radius-xl);overflow:hidden;position:relative;transition:all var(--transition-fast) ease}.upload-3d-dropzone:hover{border-color:var(--white-30);background:var(--black-25)}.upload-3d-dropzone.dragging{border-color:var(--success);border-style:solid;background:var(--success-bg);transform:scale(1.02)}.upload-drag-overlay{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-6);background:#00ff6426;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:2px solid var(--success);border-radius:var(--radius-xl);z-index:2;pointer-events:none}.drag-icon{font-size:56px;line-height:1;animation:bounce .6s ease-in-out infinite}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.drag-text{font-size:var(--text-xl);font-weight:var(--font-semibold);color:var(--success)}.upload-form-column{display:flex;flex-direction:column;gap:var(--space-12)}.upload-file-status{display:flex;align-items:center;gap:var(--space-10);padding:var(--space-10) var(--space-12);background:var(--success-bg);border:1px solid var(--success);border-radius:var(--radius-lg);animation:fadeIn var(--transition-base) ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.status-icon{font-size:32px;line-height:1}.status-info{display:flex;flex-direction:column;gap:var(--space-1);flex:1;min-width:0}.status-filename{font-size:var(--text-base);font-weight:var(--font-semibold);color:var(--white-95);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.status-hint{font-size:var(--text-xs);color:var(--white-60)}.skin-preview{display:flex;flex-direction:column;align-items:center;gap:var(--space-4);padding:var(--space-8);background:var(--black-20);border:1px solid var(--white-10);border-radius:var(--radius-lg)}.skin-preview img{width:128px;height:128px;image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges;border:1px solid var(--white-20);border-radius:var(--radius-sm)}.preview-label{color:var(--white-50);font-size:var(--text-xs);margin:0;text-transform:uppercase;letter-spacing:.05em}.upload-form-group{display:flex;flex-direction:column;gap:var(--space-4)}.upload-form-group label{color:var(--white-90);font-size:var(--text-sm);font-weight:var(--font-medium);letter-spacing:.01em}.upload-form-group input,.upload-form-group textarea,.upload-form-group select{background:var(--white-5);border:1px solid var(--white-10);border-radius:var(--radius-lg);padding:var(--space-6) var(--space-8);color:var(--white);font-size:var(--text-sm);transition:all var(--transition-fast) ease;outline:none;font-family:inherit}.upload-form-group textarea{resize:vertical;min-height:80px}.upload-form-group input:focus,.upload-form-group textarea:focus,.upload-form-group select:focus{background:var(--white-8);border-color:var(--white-25);box-shadow:0 0 0 3px var(--white-5)}.upload-form-group input:disabled,.upload-form-group textarea:disabled,.upload-form-group select:disabled{opacity:.5;cursor:not-allowed}.upload-form-group input::placeholder,.upload-form-group textarea::placeholder{color:#fff6}.upload-form-group select{cursor:pointer;appearance:none;-webkit-appearance:none;-moz-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='rgba(255,255,255,0.6)' d='M6 9L1 4h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right var(--space-8) center;padding-right:var(--space-20)}.upload-form-group select option{background:var(--black-80);color:var(--white);padding:var(--space-6) var(--space-8)}.upload-form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-8)}.toggle-advanced-btn{background:var(--white-5);border:1px solid var(--white-12);color:var(--white-70);font-size:var(--text-sm);font-weight:var(--font-medium);cursor:pointer;padding:var(--space-6) var(--space-12);border-radius:var(--radius-lg);transition:all var(--transition-fast) ease;display:flex;align-items:center;justify-content:center;gap:var(--space-3);font-family:inherit;white-space:nowrap;width:100%}.toggle-advanced-btn:hover:not(:disabled){background:var(--white-8);border-color:var(--white-20);color:var(--white-90)}.toggle-advanced-btn:disabled{opacity:.5;cursor:not-allowed}.upload-advanced-section{display:flex;flex-direction:column;gap:var(--space-10);padding:var(--space-10);background:var(--white-5);border:1px solid var(--white-10);border-radius:var(--radius-lg);animation:slideDown var(--transition-base) ease}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px);max-height:0}to{opacity:1;transform:translateY(0);max-height:500px}}.upload-checkboxes-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-12)}.upload-form-checkbox{display:flex;align-items:center;min-width:0}.upload-form-checkbox label{display:flex;align-items:center;gap:var(--space-4);cursor:pointer;color:var(--white-90);font-size:var(--text-sm);min-width:0;width:100%}.upload-form-checkbox label span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.upload-form-checkbox input[type=checkbox]{width:18px;height:18px;min-width:18px;cursor:pointer;accent-color:var(--success);flex-shrink:0}.upload-error{background:var(--error-bg);border:1px solid var(--error-border);border-radius:var(--radius-lg);padding:var(--space-6);color:var(--error);font-size:var(--text-sm);text-align:center}.upload-progress{position:relative;width:100%;height:36px;background:var(--black-30);border:1px solid var(--white-10);border-radius:var(--radius-lg);overflow:hidden}.upload-progress-bar{height:100%;background:linear-gradient(90deg,var(--success),var(--success-dark));transition:width var(--transition-base) ease;border-radius:var(--radius-lg)}.upload-progress-text{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:var(--white);font-weight:var(--font-semibold);font-size:var(--text-sm);text-shadow:0 1px 3px var(--black-50)}.upload-submit-btn{background:var(--white-8);border:1.5px solid var(--white-20);border-radius:var(--radius-lg);padding:var(--space-7) var(--space-12);color:var(--white);font-size:var(--text-base);font-weight:var(--font-semibold);cursor:pointer;transition:all var(--transition-fast) var(--ease-smooth);position:relative;overflow:hidden;transform:translateZ(0)}.upload-submit-btn-full{width:100%;padding:var(--space-10) var(--space-12);font-size:var(--text-lg);margin-top:var(--space-8)}.upload-submit-btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,var(--white-10),transparent);transition:left var(--transition-slow)}.upload-submit-btn:hover:not(:disabled):before{left:100%}.upload-submit-btn:hover:not(:disabled){background:var(--white-12);border-color:var(--white-25);transform:translateY(-1px);box-shadow:var(--shadow-sm)}.upload-submit-btn:active:not(:disabled){transform:translateY(0)}.upload-submit-btn:disabled{opacity:.4;cursor:not-allowed;background:var(--white-5);border-color:var(--white-10)}.loading-text{color:var(--white-50);font-size:var(--text-xs);font-weight:var(--font-normal);font-style:italic;animation:pulse 1.5s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.recent-tags-container{display:flex;flex-direction:column;gap:var(--space-4);margin-top:var(--space-6);padding-top:var(--space-6);border-top:1px solid var(--white-8);animation:fadeIn var(--transition-base) ease}.recent-tags-label{color:var(--white-60);font-size:var(--text-xs);font-weight:var(--font-medium);text-transform:uppercase;letter-spacing:.05em}.recent-tags-list{display:flex;flex-wrap:wrap;gap:var(--space-4)}.recent-tag-chip{background:var(--white-8);border:1px solid var(--white-15);color:var(--white-85);font-size:var(--text-xs);font-weight:var(--font-medium);padding:var(--space-3) var(--space-6);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast) ease;font-family:inherit;white-space:nowrap}.recent-tag-chip:hover:not(:disabled){background:var(--white-12);border-color:var(--white-25);color:var(--white);transform:translateY(-1px)}.recent-tag-chip:active:not(:disabled){transform:translateY(0)}.recent-tag-chip:disabled{opacity:.4;cursor:not-allowed}@media(max-width:900px){.upload-two-column-layout{grid-template-columns:1fr;gap:var(--space-16)}.upload-3d-dropzone{height:350px}}@media(max-width:600px){.upload-modal-content{padding:var(--space-16);width:95%}.upload-3d-dropzone{height:280px}.upload-form-row{grid-template-columns:1fr}.upload-checkboxes-row{grid-template-columns:1fr;gap:var(--space-8)}}.edit-modal-overlay{position:fixed;inset:0;background:var(--modal-overlay-bg);display:flex;align-items:center;justify-content:center;z-index:var(--z-overlay);opacity:0;visibility:hidden;transition:opacity var(--transition-fast) ease,visibility var(--transition-fast) ease;transform:translateZ(0);will-change:opacity}.edit-modal-overlay.visible{opacity:1;visibility:visible}.edit-modal-content{background:var(--modal-bg);border-radius:var(--radius-2xl);padding:var(--space-20);width:90%;max-width:1000px;max-height:90vh;overflow-y:auto;position:relative;box-shadow:var(--modal-shadow);border:1px solid var(--modal-border);transform:translateY(30px) translateZ(0);opacity:0;transition:transform var(--transition-base) ease-out,opacity var(--transition-base) ease-out;will-change:transform,opacity}.edit-modal-overlay.visible .edit-modal-content{transform:translateY(0) translateZ(0);opacity:1}.edit-modal-close{position:absolute;top:var(--space-8);right:var(--space-8);background:var(--white-8);border:1px solid var(--white-12);color:var(--white-60);font-size:var(--text-2xl);cursor:pointer;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-lg);transition:all var(--transition-fast) ease}.edit-modal-close:hover{background:var(--white-15);color:var(--white);border-color:var(--white-20)}.edit-modal-title{font-size:var(--text-3xl);font-weight:var(--font-bold);color:var(--white);margin:0 0 var(--space-16) 0;text-align:center;letter-spacing:-.02em}.edit-form-wrapper{display:flex;flex-direction:column;gap:var(--space-16)}.edit-two-column-layout{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-20);align-items:start}.edit-preview-container{position:relative}.edit-3d-preview{width:100%;height:450px;background:var(--black-20);border:2px solid var(--white-20);border-radius:var(--radius-xl);overflow:hidden;position:relative}.edit-form-column{display:flex;flex-direction:column;gap:var(--space-12)}.edit-form-group{display:flex;flex-direction:column;gap:var(--space-4)}.edit-form-group label{color:var(--white-90);font-size:var(--text-sm);font-weight:var(--font-medium);letter-spacing:.01em}.edit-form-group input,.edit-form-group textarea,.edit-form-group select{background:var(--white-5);border:1px solid var(--white-10);border-radius:var(--radius-lg);padding:var(--space-6) var(--space-8);color:var(--white);font-size:var(--text-sm);transition:all var(--transition-fast) ease;outline:none;font-family:inherit}.edit-form-group textarea{resize:vertical;min-height:80px}.edit-form-group input:focus,.edit-form-group textarea:focus,.edit-form-group select:focus{background:var(--white-8);border-color:var(--white-25);box-shadow:0 0 0 3px var(--white-5)}.edit-form-group input:disabled,.edit-form-group textarea:disabled,.edit-form-group select:disabled{opacity:.5;cursor:not-allowed}.edit-form-group input::placeholder,.edit-form-group textarea::placeholder{color:#fff6}.edit-form-group select{cursor:pointer}.edit-form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-8)}.edit-form-checkbox{display:flex;align-items:center;min-width:0}.edit-form-checkbox label{display:flex;align-items:center;gap:var(--space-4);cursor:pointer;color:var(--white-90);font-size:var(--text-sm);min-width:0;width:100%}.edit-form-checkbox label span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.edit-form-checkbox input[type=checkbox]{width:18px;height:18px;min-width:18px;cursor:pointer;accent-color:var(--success);flex-shrink:0}.edit-error{background:var(--error-bg);border:1px solid var(--error-border);border-radius:var(--radius-lg);padding:var(--space-6);color:var(--error);font-size:var(--text-sm);text-align:center}.edit-actions{display:flex;gap:var(--space-10);justify-content:flex-end;margin-top:var(--space-8)}.edit-cancel-btn,.edit-submit-btn{border-radius:var(--radius-lg);padding:var(--space-7) var(--space-16);font-size:var(--text-base);font-weight:var(--font-semibold);cursor:pointer;transition:all var(--transition-fast) var(--ease-smooth);position:relative;overflow:hidden;transform:translateZ(0);font-family:inherit}.edit-cancel-btn{background:var(--white-5);border:1.5px solid var(--white-15);color:var(--white-70)}.edit-cancel-btn:hover:not(:disabled){background:var(--white-8);border-color:var(--white-20);color:var(--white-90)}.edit-submit-btn{background:var(--white-8);border:1.5px solid var(--white-20);color:var(--white)}.edit-submit-btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,var(--white-10),transparent);transition:left var(--transition-slow)}.edit-submit-btn:hover:not(:disabled):before{left:100%}.edit-submit-btn:hover:not(:disabled){background:var(--white-12);border-color:var(--white-25);transform:translateY(-1px);box-shadow:var(--shadow-sm)}.edit-submit-btn:active:not(:disabled){transform:translateY(0)}.edit-submit-btn:disabled,.edit-cancel-btn:disabled{opacity:.4;cursor:not-allowed}@media(max-width:900px){.edit-two-column-layout{grid-template-columns:1fr;gap:var(--space-16)}.edit-3d-preview{height:350px}}.edit-core-tags-selector{display:flex;flex-wrap:wrap;gap:var(--space-4);margin-top:var(--space-3)}.edit-core-tag-btn{background:var(--white-5);border:1.5px solid var(--white-15);border-radius:var(--radius-md);padding:var(--space-4) var(--space-10);color:var(--white-70);font-size:var(--text-sm);font-weight:var(--font-medium);cursor:pointer;transition:all var(--transition-fast) ease;font-family:inherit}.edit-core-tag-btn:hover:not(:disabled){background:var(--white-8);border-color:var(--white-25);color:var(--white-90);transform:translateY(-1px)}.edit-core-tag-btn.active{background:var(--success-bg);border-color:var(--success);color:var(--success);font-weight:var(--font-semibold)}.edit-core-tag-btn.active:hover:not(:disabled){background:var(--success-bg-hover);border-color:var(--success-hover);color:var(--success-hover)}.edit-core-tag-btn:disabled{opacity:.4;cursor:not-allowed}.edit-selected-core-tags{margin-top:var(--space-4);padding:var(--space-4) var(--space-8);background:var(--white-5);border:1px solid var(--white-10);border-radius:var(--radius-md);color:var(--white-80);font-size:var(--text-xs);font-weight:var(--font-medium)}@media(max-width:600px){.edit-modal-content{padding:var(--space-16);width:95%}.edit-3d-preview{height:280px}.edit-form-row{grid-template-columns:1fr}.edit-actions{flex-direction:column-reverse}.edit-cancel-btn,.edit-submit-btn{width:100%}}.random-skin-modal-overlay{position:fixed;inset:0;background:var(--modal-overlay-bg);display:flex;align-items:center;justify-content:center;z-index:var(--z-overlay);opacity:0;visibility:hidden;transition:opacity var(--transition-fast) ease,visibility var(--transition-fast) ease;transform:translateZ(0);will-change:opacity}.random-skin-modal-overlay.visible{opacity:1;visibility:visible}.random-skin-modal-content{background:var(--modal-bg);border-radius:var(--radius-2xl);padding:var(--space-20);width:90%;max-width:500px;position:relative;box-shadow:var(--modal-shadow);border:1px solid var(--modal-border);transform:translateY(30px) translateZ(0);opacity:0;transition:transform var(--transition-base) ease-out,opacity var(--transition-base) ease-out;will-change:transform,opacity}.random-skin-modal-overlay.visible .random-skin-modal-content{transform:translateY(0) translateZ(0);opacity:1}.random-skin-modal-close{position:absolute;top:var(--space-8);right:var(--space-8);background:var(--white-8);border:1px solid var(--white-12);color:var(--white-60);font-size:var(--text-2xl);cursor:pointer;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-lg);transition:all var(--transition-fast) ease}.random-skin-modal-close:hover{background:var(--white-15);color:var(--white);border-color:var(--white-20)}.random-skin-modal-title{font-size:var(--text-3xl);font-weight:var(--font-bold);color:var(--white);margin:0 0 var(--space-16) 0;text-align:center;letter-spacing:-.02em}.random-skin-viewer{width:100%;height:350px;background:var(--white-5);border:1px solid var(--white-10);border-radius:var(--radius-xl);margin-bottom:var(--space-12);overflow:hidden;position:relative}.random-skin-canvas-container{width:100%;height:300px;background:linear-gradient(135deg,var(--white-5) 0%,var(--white-8) 100%)}.random-skin-info{padding:var(--space-8) var(--space-10);background:var(--white-8);border-top:1px solid var(--white-10)}.random-skin-username{font-size:var(--text-lg);font-weight:var(--font-bold);color:var(--white);margin:0 0 var(--space-2) 0;text-align:center}.random-skin-model{font-size:var(--text-sm);color:var(--white-60);margin:0;text-align:center}.random-skin-placeholder{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-8);color:var(--white-50)}.random-skin-placeholder-icon{width:80px;height:80px;opacity:.3}.random-skin-placeholder p{font-size:var(--text-base);margin:0;text-align:center;padding:0 var(--space-12)}.random-skin-error{background:var(--error-bg);border:1px solid var(--error-border);border-radius:var(--radius-lg);padding:var(--space-6);color:var(--error);font-size:var(--text-sm);text-align:center;margin-bottom:var(--space-12)}.random-skin-dice-btn{width:100%;background:var(--white-8);border:1.5px solid var(--white-20);border-radius:var(--radius-lg);padding:var(--space-8) var(--space-12);color:var(--white);font-size:var(--text-base);font-weight:var(--font-semibold);cursor:pointer;transition:all var(--transition-fast) var(--ease-smooth);position:relative;overflow:hidden;transform:translateZ(0);display:flex;align-items:center;justify-content:center;gap:var(--space-6)}.random-skin-dice-btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,var(--white-10),transparent);transition:left var(--transition-slow)}.random-skin-dice-btn:hover:not(:disabled):before{left:100%}.random-skin-dice-btn:hover:not(:disabled){background:var(--white-12);border-color:var(--white-30, rgba(255, 255, 255, .3));transform:translateY(-1px);box-shadow:var(--shadow-sm)}.random-skin-dice-btn:active:not(:disabled){transform:translateY(0)}.random-skin-dice-btn:disabled{opacity:.4;cursor:not-allowed;background:var(--white-5);border-color:var(--white-10)}.dice-icon{width:24px;height:24px;animation:none}.random-skin-dice-btn:not(:disabled):hover .dice-icon{animation:dice-roll .5s ease-in-out}@keyframes dice-roll{0%,to{transform:rotate(0)}25%{transform:rotate(90deg) scale(1.1)}50%{transform:rotate(180deg) scale(.9)}75%{transform:rotate(270deg) scale(1.1)}}.collection-card{background:#2a2a2ecc;border-radius:8px;overflow:hidden;transition:transform .2s ease,box-shadow .2s ease;display:flex;flex-direction:column}.collection-card:hover{transform:translateY(-4px);box-shadow:0 8px 16px #0000004d}.collection-image-container{position:relative;width:100%;height:200px;background:#1e1e2099;display:flex;align-items:center;justify-content:center;overflow:hidden}.collection-cover-image{max-width:100%;max-height:100%;object-fit:contain}.collection-placeholder{display:flex;align-items:center;justify-content:center;width:100%;height:100%;color:#ffffff4d}.folder-icon{width:64px;height:64px}.collection-overlay{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(to top,rgba(0,0,0,.8),transparent);padding:12px;opacity:0;transition:opacity .2s ease}.collection-overlay.visible{opacity:1}.collection-skin-count{color:#fff;font-size:.9rem;font-weight:600;text-align:center}.collection-info{padding:12px;display:flex;flex-direction:column;gap:4px}.collection-info h3{margin:0;font-size:1rem;font-weight:600;color:#fff;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.collection-author{font-size:.85rem;color:#fff9;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.collection-edit-btn{position:absolute;top:12px;left:12px;width:40px;height:40px;background:#3b82f6e6;border:1px solid rgba(59,130,246,1);border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;opacity:0;pointer-events:none;z-index:10}.collection-edit-btn.visible{opacity:1;pointer-events:auto}.collection-edit-btn:hover:not(:disabled){background:#3b82f6;transform:scale(1.1);box-shadow:0 4px 12px #3b82f666}.collection-edit-btn .edit-icon{width:20px;height:20px;color:#fff}.collection-download-btn{position:absolute;top:12px;right:12px;width:40px;height:40px;background:#10b981e6;border:1px solid rgba(16,185,129,1);border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;opacity:0;pointer-events:none;z-index:10}.collection-download-btn.visible{opacity:1;pointer-events:auto}.collection-download-btn:hover:not(:disabled){background:#10b981;transform:scale(1.1);box-shadow:0 4px 12px #10b98166}.collection-download-btn:disabled{opacity:.5;cursor:not-allowed}.collection-download-btn .download-icon{width:20px;height:20px;color:#fff}.collection-download-btn .spinner-small{width:20px;height:20px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin 1s linear infinite}.collections-gallery{width:100%;padding:20px}.collections-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:20px;width:100%}.collections-loading,.collections-error,.collections-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center;color:#ffffffb3}.collections-loading .spinner{width:40px;height:40px;border:3px solid rgba(255,255,255,.2);border-top-color:#fff;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:16px}.collections-error p{color:#ff6b6b;margin-bottom:16px}.retry-button{padding:10px 20px;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:6px;color:#fff;cursor:pointer;transition:background .2s ease}.retry-button:hover{background:#fff3}@media(max-width:768px){.collections-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px}.collections-gallery{padding:16px}}.collection-details{width:100%;padding:20px}.collection-header{margin-bottom:32px}.back-button{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:6px;color:#fff;cursor:pointer;transition:background .2s ease;font-size:.9rem;margin-bottom:24px}.back-button:hover{background:#ffffff26}.back-icon{width:16px;height:16px}.collection-title-section h1{margin:0 0 12px;font-size:2rem;color:#fff;font-weight:700}.collection-meta{display:flex;align-items:center;gap:8px;color:#fff9;font-size:.95rem;margin-bottom:12px}.collection-meta .separator{color:#ffffff4d}.collection-description{color:#fffc;font-size:1rem;line-height:1.6;max-width:800px}.collection-skins-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:20px;width:100%}.collection-skin-card{background:#2a2a2ecc;border-radius:8px;overflow:hidden;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.collection-skin-card:hover{transform:translateY(-4px);box-shadow:0 8px 16px #0000004d}.collection-skin-card .skin-image{width:100%;height:160px;background:#1e1e2099;display:flex;align-items:center;justify-content:center;overflow:hidden;position:relative}.collection-skin-card .skin-thumbnail{width:100%;height:100%;object-fit:cover;image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges}.collection-skin-card .skin-info{padding:12px}.collection-skin-card .skin-info h3{margin:0 0 4px;font-size:.95rem;font-weight:600;color:#fff;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.collection-skin-card .skin-author{font-size:.8rem;color:#fff9;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.collection-details-loading,.collection-details-error,.collection-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center;color:#ffffffb3}.collection-details-loading .spinner{width:40px;height:40px;border:3px solid rgba(255,255,255,.2);border-top-color:#fff;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:16px}.collection-details-error p{color:#ff6b6b;margin-bottom:16px}.remove-skin-btn{position:absolute;top:8px;right:8px;width:32px;height:32px;background:#ef4444e6;border:1px solid rgba(239,68,68,1);border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;opacity:0;pointer-events:none;z-index:10}.collection-skin-card:hover .remove-skin-btn{opacity:1;pointer-events:auto}.remove-skin-btn:hover:not(:disabled){background:#ef4444;transform:scale(1.1)}.remove-skin-btn:disabled{opacity:.6;cursor:not-allowed}.remove-icon{width:18px;height:18px;color:#fff}.spinner-tiny{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin 1s linear infinite}@media(max-width:768px){.collection-details{padding:16px}.collection-title-section h1{font-size:1.5rem}.collection-skins-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:16px}.remove-skin-btn{opacity:1;pointer-events:auto}}.create-collection-modal-overlay{position:fixed;inset:0;background:var(--modal-overlay-bg);display:flex;align-items:center;justify-content:center;z-index:var(--z-overlay);transform:translateZ(0);will-change:opacity}.create-collection-modal-content{background:var(--modal-bg);border-radius:var(--radius-2xl);padding:var(--space-20);width:90%;max-width:440px;position:relative;box-shadow:var(--modal-shadow);border:1px solid var(--modal-border);max-height:90vh;overflow-y:auto}.create-collection-modal-close{position:absolute;top:var(--space-8);right:var(--space-8);background:var(--white-8);border:1px solid var(--white-12);color:var(--white-60);font-size:var(--text-2xl);cursor:pointer;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-lg);transition:all var(--transition-fast) ease}.create-collection-modal-close:hover{background:var(--white-15);color:var(--white);border-color:var(--white-20)}.create-collection-modal-title{font-size:var(--text-3xl);font-weight:var(--font-bold);color:var(--white);margin:0 0 var(--space-16) 0;text-align:center;letter-spacing:-.02em}.create-collection-form{display:flex;flex-direction:column;gap:var(--space-10)}.char-count{text-align:right;font-size:var(--text-xs);color:var(--white-50)}.checkbox-group label{display:flex;align-items:center;gap:var(--space-4);cursor:pointer}.checkbox-group input[type=checkbox]{width:18px;height:18px;cursor:pointer}.checkbox-group span{color:var(--white-90);font-weight:var(--font-medium)}.form-hint{margin:var(--space-2) 0 0 0;font-size:var(--text-xs);color:var(--white-50)}.form-error{background:var(--error-bg);border:1px solid var(--error-border);border-radius:var(--radius-lg);padding:var(--space-6);color:var(--error);font-size:var(--text-sm);text-align:center}.form-actions{display:flex;gap:var(--space-6);margin-top:var(--space-4)}.btn-primary,.btn-secondary{padding:var(--space-7) var(--space-12);border-radius:var(--radius-lg);font-size:var(--text-base);font-weight:var(--font-semibold);cursor:pointer;transition:all var(--transition-fast) var(--ease-smooth);flex:1}.btn-primary{background:var(--white-8);border:1.5px solid var(--white-20);color:var(--white)}.btn-primary:hover:not(:disabled){background:var(--white-12);border-color:var(--white-30, rgba(255, 255, 255, .3));transform:translateY(-1px);box-shadow:var(--shadow-sm)}.btn-primary:active:not(:disabled){transform:translateY(0)}.btn-primary:disabled{opacity:.4;cursor:not-allowed;background:var(--white-5);border-color:var(--white-10)}.btn-secondary{background:transparent;border:1.5px solid var(--white-15);color:var(--white-70)}.btn-secondary:hover:not(:disabled){background:var(--white-5);border-color:var(--white-20);color:var(--white)}.btn-secondary:disabled{opacity:.4;cursor:not-allowed}.add-to-collection-modal-overlay{position:fixed;inset:0;background:var(--modal-overlay-bg);display:flex;align-items:center;justify-content:center;z-index:var(--z-overlay);transform:translateZ(0);will-change:opacity}.add-to-collection-modal-content{background:var(--modal-bg);border-radius:var(--radius-2xl);padding:var(--space-20);width:90%;max-width:440px;position:relative;box-shadow:var(--modal-shadow);border:1px solid var(--modal-border);max-height:80vh;overflow-y:auto}.add-to-collection-modal-close{position:absolute;top:var(--space-8);right:var(--space-8);background:var(--white-8);border:1px solid var(--white-12);color:var(--white-60);font-size:var(--text-2xl);cursor:pointer;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-lg);transition:all var(--transition-fast) ease}.add-to-collection-modal-close:hover{background:var(--white-15);color:var(--white);border-color:var(--white-20)}.add-to-collection-modal-title{font-size:var(--text-3xl);font-weight:var(--font-bold);color:var(--white);margin:0 0 var(--space-16) 0;text-align:center;letter-spacing:-.02em}.success-message{background:var(--success-bg-light);border:1px solid var(--success-border);border-radius:var(--radius-lg);padding:var(--space-6);color:var(--success);font-size:var(--text-sm);margin-bottom:var(--space-10);text-align:center}.error-message{background:var(--error-bg);border:1px solid var(--error-border);border-radius:var(--radius-lg);padding:var(--space-6);color:var(--error);font-size:var(--text-sm);margin-bottom:var(--space-10);text-align:center}.collections-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-20);color:var(--white-70)}.spinner{width:40px;height:40px;border:3px solid var(--white-20);border-top-color:var(--white);border-radius:var(--radius-full);animation:spin 1s linear infinite;margin-bottom:var(--space-10)}.spinner-small{width:20px;height:20px;border:2px solid var(--white-20);border-top-color:var(--white);border-radius:var(--radius-full);animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.create-new-collection-btn{width:100%;padding:var(--space-8);background:var(--white-5);border:2px dashed var(--white-20);border-radius:var(--radius-lg);color:var(--white);font-size:var(--text-base);font-weight:var(--font-semibold);cursor:pointer;transition:all var(--transition-fast) ease;display:flex;align-items:center;justify-content:center;gap:var(--space-4);margin-bottom:var(--space-12)}.create-new-collection-btn:hover{background:var(--white-8);border-color:var(--white-30, rgba(255, 255, 255, .3));transform:translateY(-1px)}.plus-icon{width:20px;height:20px}.no-collections{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-20);text-align:center;color:var(--white-70)}.no-collections .folder-icon{width:48px;height:48px;color:var(--white-25);margin-bottom:var(--space-10)}.no-collections p{margin:0 0 var(--space-4) 0;font-size:var(--text-base)}.no-collections .hint{color:var(--white-50);font-size:var(--text-sm)}.collections-list{display:flex;flex-direction:column;gap:var(--space-4)}.collections-list h3{margin:0 0 var(--space-6) 0;font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--white-60);text-transform:uppercase;letter-spacing:.05em}.collection-item{display:flex;align-items:center;justify-content:space-between;padding:var(--space-8);background:var(--white-5);border:1px solid var(--white-10);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-fast) ease}.collection-item:hover{background:var(--white-8);border-color:var(--white-20);transform:translate(4px)}.collection-item-info{display:flex;flex-direction:column;gap:var(--space-2);flex:1}.collection-item-name{color:var(--white);font-weight:var(--font-semibold);font-size:var(--text-base)}.collection-item-count{color:var(--white-50);font-size:var(--text-xs)}.add-icon{width:32px;height:32px;background:var(--white-10);border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;font-size:20px;color:var(--white);font-weight:300}.edit-collection-modal{background:var(--modal-bg);padding:var(--space-20);width:90%;max-width:600px;position:relative;box-shadow:var(--modal-shadow);max-height:90vh;overflow-y:auto}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-16)}.modal-header h2{font-size:var(--text-3xl);font-weight:var(--font-bold);color:var(--white);margin:0;letter-spacing:-.02em}.close-btn{background:var(--white-8);border:1px solid var(--white-12);color:var(--white-60);cursor:pointer;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-lg);transition:all var(--transition-fast) ease}.close-btn:hover{background:var(--white-15);color:var(--white);border-color:var(--white-20)}.close-icon{width:20px;height:20px}.modal-form{display:flex;flex-direction:column;gap:var(--space-10)}.form-group{display:flex;flex-direction:column;gap:var(--space-4)}.form-group label{color:var(--white-90);font-size:var(--text-sm);font-weight:var(--font-medium);letter-spacing:.01em}.form-group input[type=text],.form-group textarea{background:var(--white-5);border:1px solid var(--white-10);border-radius:var(--radius-lg);padding:var(--space-6) var(--space-8);color:var(--white);font-size:var(--text-sm);font-family:inherit;transition:all var(--transition-fast) ease;outline:none}.form-group input[type=text]:focus,.form-group textarea:focus{background:var(--white-8);border-color:var(--white-25);box-shadow:0 0 0 3px var(--white-5)}.form-group textarea{resize:vertical;min-height:80px}.form-group input::placeholder,.form-group textarea::placeholder{color:#fff6}.checkbox-label{display:flex;align-items:center;gap:var(--space-4);cursor:pointer}.checkbox-label input[type=checkbox]{width:18px;height:18px;cursor:pointer}.checkbox-label span{color:var(--white-90);font-weight:var(--font-medium)}.form-help-text{margin:0;font-size:var(--text-xs);color:var(--white-50)}.error-message{background:var(--error-bg);border:1px solid var(--error-border);border-radius:var(--radius-lg);padding:var(--space-6);color:var(--error);font-size:var(--text-sm);text-align:center}.skins-loading,.no-skins-message{text-align:center;color:var(--white-50);padding:var(--space-8);font-size:var(--text-sm)}.upload-section{display:flex;flex-direction:column;gap:var(--space-6);margin-bottom:var(--space-8)}.upload-btn{display:inline-flex;align-items:center;justify-content:center;padding:var(--space-7) var(--space-12);background:var(--white-8);border:1.5px solid var(--white-20);border-radius:var(--radius-lg);color:var(--white);font-size:var(--text-sm);font-weight:var(--font-semibold);cursor:pointer;transition:all var(--transition-fast) ease;align-self:flex-start}.upload-btn:hover{background:var(--white-12);border-color:var(--white-30);transform:translateY(-1px);box-shadow:var(--shadow-sm)}.uploaded-preview{position:relative;width:200px;height:200px;border:2px solid rgba(59,130,246,.8);border-radius:var(--radius-lg);overflow:hidden;box-shadow:0 0 0 3px #3b82f633}.uploaded-preview img{width:100%;height:100%;object-fit:cover}.remove-upload-btn{position:absolute;bottom:var(--space-4);left:50%;transform:translate(-50%);padding:var(--space-3) var(--space-6);background:#ef4444e6;border:1px solid rgba(239,68,68,1);border-radius:var(--radius-md);color:#fff;font-size:var(--text-xs);font-weight:var(--font-semibold);cursor:pointer;transition:all var(--transition-fast) ease}.remove-upload-btn:hover{background:#ef4444;transform:translate(-50%) scale(1.05)}.cover-skins-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:var(--space-6);margin-top:var(--space-4)}.cover-skin-option{aspect-ratio:1;border:2px solid var(--white-10);border-radius:var(--radius-lg);overflow:hidden;cursor:pointer;transition:all var(--transition-fast) ease;position:relative;background:var(--white-5)}.cover-skin-option:hover{border-color:var(--white-25);transform:translateY(-2px);box-shadow:0 4px 12px #0000004d}.cover-skin-option.selected{border-color:#3b82f6cc;box-shadow:0 0 0 3px #3b82f633}.cover-skin-option img{width:100%;height:100%;object-fit:cover;image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges}.cover-skin-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:var(--white-40);font-size:var(--text-xs);font-weight:var(--font-medium);text-align:center;padding:var(--space-4)}.cover-skin-name{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(to top,rgba(0,0,0,.8),transparent);color:#fff;font-size:.65rem;padding:4px;text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;opacity:0;transition:opacity var(--transition-fast) ease}.cover-skin-option:hover .cover-skin-name{opacity:1}.modal-actions{display:flex;gap:var(--space-6);margin-top:var(--space-4)}.cancel-btn,.submit-btn{padding:var(--space-7) var(--space-12);border-radius:var(--radius-lg);font-size:var(--text-base);font-weight:var(--font-semibold);cursor:pointer;transition:all var(--transition-fast) var(--ease-smooth);flex:1}.submit-btn{background:var(--white-8);border:1.5px solid var(--white-20);color:var(--white)}.submit-btn:hover:not(:disabled){background:var(--white-12);border-color:var(--white-30, rgba(255, 255, 255, .3));transform:translateY(-1px);box-shadow:var(--shadow-sm)}.submit-btn:active:not(:disabled){transform:translateY(0)}.submit-btn:disabled{opacity:.4;cursor:not-allowed;background:var(--white-5);border-color:var(--white-10)}.cancel-btn{background:transparent;border:1.5px solid var(--white-15);color:var(--white-70)}.cancel-btn:hover:not(:disabled){background:var(--white-5);border-color:var(--white-20);color:var(--white)}.cancel-btn:disabled{opacity:.4;cursor:not-allowed}*{margin:0;padding:0;box-sizing:border-box}:root{--background: 0 0% 3.9%;--foreground: 0 0% 98%;--card: 0 0% 7%;--card-foreground: 0 0% 98%;--muted: 0 0% 14.9%;--muted-foreground: 0 0% 63.9%;--border: 0 0% 14.9%;--border-hover: 0 0% 25%;--white-5: rgba(255, 255, 255, .05);--white-7: rgba(255, 255, 255, .07);--white-8: rgba(255, 255, 255, .08);--white-10: rgba(255, 255, 255, .1);--white-12: rgba(255, 255, 255, .12);--white-15: rgba(255, 255, 255, .15);--white-20: rgba(255, 255, 255, .2);--white-25: rgba(255, 255, 255, .25);--white-50: rgba(255, 255, 255, .5);--white-60: rgba(255, 255, 255, .6);--white-70: rgba(255, 255, 255, .7);--white-80: rgba(255, 255, 255, .8);--white-90: rgba(255, 255, 255, .9);--white: #ffffff;--black-20: rgba(0, 0, 0, .2);--black-30: rgba(0, 0, 0, .3);--black-50: rgba(0, 0, 0, .5);--black-60: rgba(0, 0, 0, .6);--black-75: rgba(0, 0, 0, .75);--black-80: rgba(0, 0, 0, .8);--success-light: #86efac;--success: #10b981;--success-dark: #059669;--success-bg: rgba(34, 197, 94, .1);--success-bg-light: rgba(34, 197, 94, .15);--success-bg-medium: rgba(34, 197, 94, .2);--success-border: rgba(34, 197, 94, .3);--success-border-strong: rgba(34, 197, 94, .5);--error-light: #fca5a5;--error: #ef4444;--error-dark: #dc2626;--error-bg: rgba(239, 68, 68, .1);--error-bg-light: rgba(239, 68, 68, .15);--error-bg-medium: rgba(239, 68, 68, .25);--error-border: rgba(239, 68, 68, .3);--error-border-strong: rgba(239, 68, 68, .5);--warning-light: rgb(252, 211, 77);--warning: rgb(251, 191, 36);--warning-dark: rgb(245, 158, 11);--warning-bg: rgba(251, 191, 36, .1);--warning-bg-light: rgba(251, 191, 36, .15);--warning-bg-medium: rgba(251, 191, 36, .25);--warning-border: rgba(251, 191, 36, .3);--warning-border-strong: rgba(251, 191, 36, .5);--info-light: #93c5fd;--info: #60a5fa;--info-dark: #3b82f6;--info-darker: #2563eb;--info-bg: rgba(59, 130, 246, .1);--info-bg-light: rgba(59, 130, 246, .15);--info-bg-medium: rgba(59, 130, 246, .25);--info-border: rgba(59, 130, 246, .3);--info-border-strong: rgba(59, 130, 246, .5);--accent: #8a2be2;--accent-bg: rgba(138, 43, 226, .3);--accent-bg-strong: rgba(138, 43, 226, .4);--accent-border: rgba(138, 43, 226, .5);--slate-50: #f8fafc;--slate-400: #94a3b8;--slate-300: #cbd5e1;--slate-700: #1e293b;--slate-800: #0f172a;--space-1: .125rem;--space-2: .25rem;--space-3: .375rem;--space-4: .5rem;--space-5: .625rem;--space-6: .75rem;--space-7: .875rem;--space-8: 1rem;--space-9: 1.125rem;--space-10: 1.25rem;--space-12: 1.5rem;--space-16: 2rem;--space-20: 2.5rem;--space-24: 3rem;--radius-sm: .25rem;--radius-md: .375rem;--radius-lg: .5rem;--radius-xl: .75rem;--radius-2xl: 1rem;--radius-full: 50%;--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--text-3xl: 1.875rem;--text-4xl: 2.25rem;--text-5xl: 3rem;--font-normal: 400;--font-medium: 500;--font-semibold: 600;--font-bold: 700;--leading-tight: 1.2;--leading-normal: 1.5;--leading-relaxed: 1.7;--blur-sm: 6px;--blur-md: 8px;--blur-lg: 10px;--blur-xl: 12px;--blur-2xl: 20px;--blur-3xl: 30px;--shadow-sm: 0 2px 4px rgba(0, 0, 0, .2);--shadow-md: 0 4px 12px rgba(0, 0, 0, .2);--shadow-lg: 0 8px 32px rgba(0, 0, 0, .4);--shadow-xl: 0 20px 60px rgba(0, 0, 0, .6);--backdrop-glass: blur(20px) saturate(180%);--backdrop-light: blur(10px) saturate(180%);--transition-fast: .2s;--transition-base: .3s;--transition-slow: .5s;--ease-smooth: cubic-bezier(.4, 0, .2, 1);--z-base: 1;--z-10: 10;--z-50: 50;--z-100: 100;--z-modal: 1000;--z-overlay: 2000;--z-max: 9999;--modal-overlay-bg: var(--black-75);--modal-overlay-blur: var(--blur-md);--modal-bg-start: rgba(18, 18, 18, .95);--modal-bg-end: rgba(10, 10, 10, .98);--modal-bg: linear-gradient(135deg, var(--modal-bg-start) 0%, var(--modal-bg-end) 100%);--modal-bg-fallback: rgba(18, 18, 18, .98);--modal-blur: var(--blur-2xl);--modal-border: var(--white-15);--modal-shadow: var(--shadow-xl)}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;background:#0a0a0a;color:hsl(var(--foreground));-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.App{min-height:100vh}
