:root{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:dark;color:#ffffffde;background-color:#0f0f1a;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;min-width:320px;min-height:100vh}a{font-weight:500;color:#6366f1;text-decoration:none}a:hover{color:#818cf8}h1,h2,h3,h4,h5,h6{margin:0}button{font-family:inherit}*{box-sizing:border-box;margin:0;padding:0}:root{--bg-primary: #0f0f1a;--bg-secondary: #1a1a2e;--bg-tertiary: #252542;--text-primary: #ffffff;--text-secondary: #a0a0b0;--accent-primary: #6366f1;--accent-secondary: #818cf8;--success: #22c55e;--error: #ef4444;--border-color: #333355}body{background:var(--bg-primary);color:var(--text-primary);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;line-height:1.6;min-height:100vh}#root{max-width:100%;margin:0;padding:0}.app{min-height:100vh;display:flex;flex-direction:column}.header{background:var(--bg-secondary);border-bottom:1px solid var(--border-color);padding:1rem 2rem 1.5rem;text-align:center}.nav-links{display:flex;justify-content:center;gap:1rem;margin-bottom:1rem}.nav-link{padding:.5rem 1.25rem;background:var(--bg-tertiary);border-radius:8px;color:var(--text-secondary);text-decoration:none;font-size:.9rem;font-weight:500;transition:all .2s ease;border:1px solid transparent}.nav-link:hover{background:var(--bg-primary);color:var(--text-primary);border-color:var(--border-color)}.nav-link.active{background:var(--accent-primary);color:#fff;border-color:var(--accent-primary)}.header h1{font-size:1.8rem;font-weight:600;margin-bottom:.5rem;background:linear-gradient(135deg,var(--accent-primary),var(--accent-secondary));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.header p{color:var(--text-secondary);font-size:.95rem}.main{flex:1;padding:2rem;max-width:1600px;margin:0 auto;width:100%}.upload-section{margin-bottom:2rem}.upload-zone{border:2px dashed var(--border-color);border-radius:12px;padding:3rem 2rem;text-align:center;cursor:pointer;transition:all .3s ease;background:var(--bg-secondary)}.upload-zone:hover,.upload-zone.drag-active{border-color:var(--accent-primary);background:#6366f11a}.upload-zone.processing{pointer-events:none;opacity:.8}.upload-zone input[type=file]{display:none}.upload-zone label{cursor:pointer;display:block}.upload-icon{color:var(--accent-primary);margin-bottom:1rem}.upload-text{font-size:1.1rem;color:var(--text-primary);margin-bottom:.5rem}.upload-hint{font-size:.85rem;color:var(--text-secondary)}.processing-indicator{display:flex;flex-direction:column;align-items:center;gap:1.5rem;padding:1rem 0;width:100%;max-width:500px;margin:0 auto}.progress-container{width:100%;display:flex;align-items:center;gap:1rem}.progress-bar{flex:1;height:8px;background:var(--bg-tertiary);border-radius:4px;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,var(--accent-primary),var(--accent-secondary));border-radius:4px;transition:width .3s ease}.progress-percent{font-size:1.2rem;font-weight:600;color:var(--accent-primary);min-width:50px;text-align:right}.processing-file{font-size:.9rem;color:var(--text-secondary);margin:0}.processing-steps{display:flex;flex-direction:column;gap:.75rem;width:100%}.step{display:flex;align-items:center;gap:.75rem;padding:.5rem .75rem;background:var(--bg-tertiary);border-radius:8px;opacity:.5;transition:all .3s ease}.step.active{opacity:1;background:#6366f133;border:1px solid var(--accent-primary)}.step.completed{opacity:.8}.step-indicator{width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:var(--bg-secondary);color:var(--text-secondary);font-size:.75rem;font-weight:600}.step.active .step-indicator{background:var(--accent-primary);color:#fff}.step.completed .step-indicator{background:var(--success);color:#fff}.step-spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}.step-label{flex:1;font-size:.85rem;color:var(--text-secondary)}.step.active .step-label{color:var(--text-primary);font-weight:500}.step.completed .step-label{color:var(--text-secondary)}.step-progress{font-size:.75rem;color:var(--accent-secondary);font-weight:500}.step-number{font-size:.7rem}.spinner{width:40px;height:40px;border:3px solid var(--bg-tertiary);border-top-color:var(--accent-primary);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.error-message{background:#ef44441a;border:1px solid var(--error);border-radius:8px;padding:1rem;margin-bottom:2rem;color:var(--error)}.stats-bar{display:flex;justify-content:center;gap:2rem;padding:1rem;background:var(--bg-secondary);border-radius:8px;margin-bottom:2rem;flex-wrap:wrap}.stat{display:flex;flex-direction:column;align-items:center;gap:.25rem}.stat-value{font-size:1.5rem;font-weight:600;color:var(--accent-primary)}.stat-label{font-size:.8rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.content-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem}@media(max-width:1024px){.content-grid{grid-template-columns:1fr}}.preview-section,.code-section{background:var(--bg-secondary);border-radius:12px;overflow:hidden}.preview-section h2,.code-section h2{padding:1rem 1.5rem;border-bottom:1px solid var(--border-color);font-size:1rem;font-weight:500;color:var(--text-secondary)}.preview-container{height:400px;position:relative}.preview-placeholder{height:400px;display:flex;align-items:center;justify-content:center;color:var(--text-secondary)}.preview-overlay{position:absolute;top:0;left:0;right:0;z-index:100;padding:10px;display:flex;justify-content:space-between;align-items:flex-start;pointer-events:none}.preview-controls{display:flex;align-items:center;gap:6px;pointer-events:auto}.preview-btn{background:#000000b3;border:1px solid rgba(255,255,255,.1);border-radius:6px;padding:6px 10px;color:#aaa;font-size:.7rem;cursor:pointer;transition:all .2s;text-transform:uppercase;letter-spacing:.5px}.preview-btn:hover{background:#6366f199;color:#fff;border-color:var(--accent-primary)}.preview-help{display:flex;gap:12px;background:#00000080;border-radius:6px;padding:6px 12px;pointer-events:auto}.preview-help span{font-size:.65rem;color:#888;text-transform:uppercase;letter-spacing:.3px}.fps-display{background:#000000b3;border-radius:6px;padding:6px 12px;display:flex;align-items:baseline;gap:4px}.fps-value{font-size:1.1rem;font-weight:700;color:#22c55e;font-family:Consolas,Monaco,monospace;min-width:30px;text-align:right}.fps-label{font-size:.65rem;color:#888;text-transform:uppercase;letter-spacing:.5px}.stats-panel{position:absolute!important;top:50px!important;left:10px!important}.code-display{display:flex;flex-direction:column;height:100%}.code-tabs{display:flex;padding:.5rem;gap:.5rem;border-bottom:1px solid var(--border-color)}.tab{padding:.5rem 1rem;background:transparent;border:none;border-radius:6px;color:var(--text-secondary);cursor:pointer;font-size:.9rem;transition:all .2s}.tab:hover{background:var(--bg-tertiary);color:var(--text-primary)}.tab.active{background:var(--accent-primary);color:#fff}.tab-actions{margin-left:auto;display:flex;gap:.5rem}.action-btn{padding:.5rem 1rem;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);cursor:pointer;font-size:.85rem;transition:all .2s}.action-btn:hover{background:var(--accent-primary);border-color:var(--accent-primary)}.code-content{flex:1;overflow:auto;max-height:500px}.code-placeholder{height:400px;display:flex;align-items:center;justify-content:center;color:var(--text-secondary)}.line-count{font-size:.8rem;color:var(--text-secondary);margin-left:.5rem;padding:.25rem .5rem;background:var(--bg-tertiary);border-radius:4px}.simple-highlighter{height:100%;display:flex;flex-direction:column}.code-truncated-warning{background:#eab30833;color:#eab308;padding:.5rem 1rem;font-size:.8rem;text-align:center;border-bottom:1px solid rgba(234,179,8,.3)}.hl-code{margin:0;padding:1rem;background:#1e1e1e;color:#d4d4d4;font-family:Consolas,Monaco,Courier New,monospace;font-size:13px;line-height:1.5;overflow:auto;white-space:pre;flex:1}.hl-line-num{color:#6e7681;-webkit-user-select:none;user-select:none}.hl-keyword{color:#569cd6}.hl-string{color:#ce9178}.hl-number{color:#b5cea8}.hl-comment{color:#6a9955;font-style:italic}.hl-function{color:#dcdcaa}.hl-component{color:#4ec9b0}.footer{background:var(--bg-secondary);border-top:1px solid var(--border-color);padding:1rem 2rem;text-align:center}.footer p{color:var(--text-secondary);font-size:.85rem}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-tertiary)}::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--accent-primary)}.merge-stats{background:var(--bg-secondary);border-radius:12px;padding:2rem;margin-bottom:2rem}.stats-comparison{display:flex;align-items:center;justify-content:center;gap:2rem;margin-bottom:2rem;flex-wrap:wrap}.stats-column{background:var(--bg-tertiary);border-radius:10px;padding:1.5rem;min-width:180px}.stats-column h3{font-size:.9rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:1px;margin-bottom:1rem;text-align:center}.stats-column.merged{border:2px solid var(--accent-primary)}.stats-column.merged h3{color:var(--accent-primary)}.stat-item{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0;border-bottom:1px solid var(--border-color)}.stat-item:last-child{border-bottom:none}.stat-item .stat-label{color:var(--text-secondary);font-size:.85rem}.stat-item .stat-value{font-weight:600;color:var(--text-primary);font-size:1rem}.stat-item .stat-value.highlight{color:var(--success);font-size:1.2rem}.stats-arrow{color:var(--accent-primary);animation:pulse 2s infinite}@keyframes pulse{0%,to{opacity:1;transform:translate(0)}50%{opacity:.7;transform:translate(5px)}}.download-btn{display:flex;align-items:center;justify-content:center;gap:.75rem;width:100%;max-width:400px;margin:0 auto;padding:1rem 2rem;background:linear-gradient(135deg,var(--accent-primary),var(--accent-secondary));border:none;border-radius:10px;color:#fff;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease}.download-btn:hover{transform:translateY(-2px);box-shadow:0 10px 20px #6366f14d}.download-btn .file-size{font-weight:400;opacity:.8;font-size:.9rem}.preview-comparison{display:grid;grid-template-columns:1fr 1fr;gap:2rem}@media(max-width:1024px){.preview-comparison{grid-template-columns:1fr}.stats-comparison{flex-direction:column}.stats-arrow{transform:rotate(90deg)}}.quality-section{background:var(--bg-secondary);border-radius:12px;padding:1.5rem;margin-bottom:1.5rem;text-align:center}.quality-label{display:block;font-size:1rem;font-weight:500;color:var(--text-primary);margin-bottom:1rem}.quality-options{display:flex;justify-content:center;gap:.5rem;margin-bottom:.75rem}.quality-btn{padding:.75rem 1.5rem;background:var(--bg-tertiary);border:2px solid var(--border-color);border-radius:8px;color:var(--text-secondary);font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s ease}.quality-btn:hover:not(:disabled){background:var(--bg-primary);color:var(--text-primary);border-color:var(--accent-primary)}.quality-btn.active{background:var(--accent-primary);border-color:var(--accent-primary);color:#fff}.quality-btn:disabled{opacity:.5;cursor:not-allowed}.quality-hint{font-size:.8rem;color:var(--text-secondary);margin:0}@media(max-width:600px){.quality-options{flex-wrap:wrap}.quality-btn{padding:.5rem 1rem;font-size:.8rem}}.merge-options{display:flex;justify-content:center;gap:1.5rem;margin-bottom:1rem;flex-wrap:wrap}.merge-options .option-label{display:flex;align-items:center;gap:.75rem;background:var(--bg-secondary);padding:.75rem 1.25rem;border-radius:8px;border:1px solid var(--border-color)}.merge-options .option-label span{color:var(--text-secondary);font-size:.9rem}.merge-options select{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:6px;padding:.5rem 1rem;color:var(--text-primary);font-size:.9rem;cursor:pointer;transition:all .2s ease}.merge-options select:hover:not(:disabled){border-color:var(--accent-primary)}.merge-options select:focus{outline:none;border-color:var(--accent-primary);box-shadow:0 0 0 2px #6366f133}.merge-options select:disabled{opacity:.5;cursor:not-allowed}.compress-options{background:var(--bg-secondary);border-radius:12px;padding:1.5rem;margin-bottom:1.5rem}.compress-options .options-row{display:flex;justify-content:center;gap:1.5rem;flex-wrap:wrap;margin-bottom:1rem}.compress-options .options-row:last-child{margin-bottom:0}.compress-options .options-row.checkboxes{gap:2rem}.compress-options .option-label{display:flex;align-items:center;gap:.75rem;background:var(--bg-tertiary);padding:.75rem 1.25rem;border-radius:8px;border:1px solid var(--border-color)}.compress-options .option-label span{color:var(--text-secondary);font-size:.9rem;white-space:nowrap}.compress-options select{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:6px;padding:.5rem 1rem;color:var(--text-primary);font-size:.9rem;cursor:pointer;transition:all .2s ease}.compress-options select:hover:not(:disabled){border-color:var(--accent-primary)}.compress-options select:focus{outline:none;border-color:var(--accent-primary);box-shadow:0 0 0 2px #6366f133}.compress-options select:disabled{opacity:.5;cursor:not-allowed}.slider-container{display:flex;align-items:center;gap:.75rem}.slider-container input[type=range]{width:100px;height:6px;-webkit-appearance:none;appearance:none;background:var(--bg-primary);border-radius:3px;outline:none;cursor:pointer}.slider-container input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:16px;height:16px;background:var(--accent-primary);border-radius:50%;cursor:pointer;transition:all .2s ease}.slider-container input[type=range]::-webkit-slider-thumb:hover{background:var(--accent-secondary);transform:scale(1.1)}.slider-container input[type=range]:disabled{opacity:.5;cursor:not-allowed}.slider-container .slider-value{color:var(--accent-primary);font-weight:600;font-size:.9rem;min-width:40px}.checkbox-label{display:flex;align-items:center;gap:.5rem;cursor:pointer;padding:.5rem 1rem;background:var(--bg-tertiary);border-radius:8px;border:1px solid var(--border-color);transition:all .2s ease}.checkbox-label:hover{border-color:var(--accent-primary)}.checkbox-label input[type=checkbox]{width:18px;height:18px;accent-color:var(--accent-primary);cursor:pointer}.checkbox-label input[type=checkbox]:disabled{opacity:.5;cursor:not-allowed}.checkbox-label span{color:var(--text-secondary);font-size:.9rem}.compress-stats{background:var(--bg-secondary);border-radius:12px;padding:2rem;margin-top:2rem}.compress-stats .stats-column.compressed{border:2px solid var(--success)}.compress-stats .stats-column.compressed h3{color:var(--success)}@media(max-width:768px){.compress-options .options-row{flex-direction:column;align-items:center}.compress-options .options-row.checkboxes{gap:1rem}.slider-container input[type=range]{width:80px}}.analysis-overview{background:var(--bg-secondary);border-radius:12px;padding:1.5rem;margin-bottom:2rem}.analysis-overview h2{font-size:1.2rem;color:var(--text-primary);margin-bottom:1.5rem;text-align:center}.analysis-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:1rem}.analysis-stat{background:var(--bg-tertiary);border-radius:10px;padding:1rem;text-align:center;display:flex;flex-direction:column;gap:.5rem}.analysis-stat .stat-value{font-size:1.4rem;font-weight:700;color:var(--accent-primary)}.analysis-stat .stat-label{font-size:.75rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.analysis-section{background:var(--bg-secondary);border-radius:12px;padding:1.5rem;margin-bottom:2rem}.analysis-section h2{font-size:1.1rem;color:var(--text-primary);margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid var(--border-color)}.materials-list{display:flex;flex-direction:column;gap:1rem}.material-card{background:var(--bg-tertiary);border-radius:10px;padding:1rem;border:1px solid var(--border-color)}.material-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.material-info{display:flex;flex-direction:column;gap:.25rem}.material-name{font-weight:600;color:var(--text-primary);font-size:1rem}.material-type{font-size:.8rem;color:var(--text-secondary)}.material-color-swatch{width:32px;height:32px;border-radius:6px;border:2px solid var(--border-color)}.material-textures h4{font-size:.85rem;color:var(--text-secondary);margin-bottom:.5rem;font-weight:500}.texture-list{display:flex;flex-direction:column;gap:.5rem}.texture-item{display:flex;justify-content:space-between;align-items:center;background:var(--bg-secondary);padding:.5rem .75rem;border-radius:6px}.texture-info{display:flex;gap:1rem;align-items:center}.texture-type{color:var(--accent-secondary);font-size:.85rem;font-weight:500;min-width:140px}.texture-resolution{color:var(--text-secondary);font-size:.8rem;min-width:80px}.texture-size{color:var(--text-secondary);font-size:.8rem;min-width:70px}.no-textures{color:var(--text-secondary);font-size:.85rem;font-style:italic;margin:0}.textures-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:1rem}.texture-card{background:var(--bg-tertiary);border-radius:10px;overflow:hidden;border:1px solid var(--border-color);cursor:pointer;transition:all .2s ease}.texture-card:hover{border-color:var(--accent-primary);transform:translateY(-2px);box-shadow:0 4px 12px #0000004d}.texture-thumbnail{width:100%;height:100px;object-fit:cover;background:var(--bg-primary);display:block}.texture-thumbnail-placeholder{width:100%;height:100px;background:var(--bg-primary);display:flex;align-items:center;justify-content:center}.texture-card-info{padding:.75rem;display:flex;flex-direction:column;gap:.25rem}.texture-card-name{font-size:.85rem;color:var(--text-primary);font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.texture-card-type{font-size:.75rem;color:var(--accent-secondary)}.texture-card-resolution,.texture-card-size{font-size:.75rem;color:var(--text-secondary)}.section-header-with-controls{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;gap:1rem;flex-wrap:wrap}.section-header-with-controls h2{margin:0}.table-controls{display:flex;align-items:center;gap:.5rem;position:relative}.search-input{padding:.5rem 2.5rem .5rem 1rem;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);font-size:.9rem;min-width:250px;transition:all .2s ease}.search-input:focus{outline:none;border-color:var(--accent-primary);box-shadow:0 0 0 2px #6366f11a}.search-input::placeholder{color:var(--text-secondary)}.clear-search-btn{position:absolute;right:.5rem;background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:.25rem .5rem;font-size:1rem;line-height:1;transition:color .2s ease}.clear-search-btn:hover{color:var(--text-primary)}.search-results-info{font-size:.85rem;color:var(--text-secondary);margin-bottom:.5rem;font-style:italic}.meshes-table{display:flex;flex-direction:column;border:1px solid var(--border-color);border-radius:8px;overflow:hidden}.table-header{display:grid;grid-template-columns:2fr 1fr 1fr;background:var(--bg-tertiary);padding:.75rem 1rem;font-size:.8rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.table-header.sortable{-webkit-user-select:none;user-select:none}.sortable-header{display:flex;align-items:center;gap:.5rem;cursor:pointer;transition:color .2s ease}.sortable-header:hover{color:var(--text-primary)}.sortable-header.active{color:var(--accent-primary)}.sort-indicator{font-size:.7rem;line-height:1}.table-row{display:grid;grid-template-columns:2fr 1fr 1fr;padding:.75rem 1rem;border-top:1px solid var(--border-color);font-size:.9rem;color:var(--text-primary)}.table-row:nth-child(2n){background:var(--bg-tertiary)}.table-empty{padding:2rem;text-align:center;color:var(--text-secondary);font-style:italic}.mesh-name{color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.texture-preview-modal{position:fixed;inset:0;background:#000000d9;display:flex;align-items:center;justify-content:center;z-index:1000;padding:2rem}.texture-preview-content{background:var(--bg-secondary);border-radius:12px;max-width:90vw;max-height:90vh;overflow:hidden;display:flex;flex-direction:column}.texture-preview-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;border-bottom:1px solid var(--border-color)}.texture-preview-header h3{font-size:1rem;color:var(--text-primary);margin:0}.close-btn{background:none;border:none;color:var(--text-secondary);font-size:1.5rem;cursor:pointer;padding:0;line-height:1;transition:color .2s ease}.close-btn:hover{color:var(--text-primary)}.texture-preview-image{padding:1rem;overflow:auto;display:flex;align-items:center;justify-content:center;background:repeating-conic-gradient(#333 0% 25%,#444 0% 50%) 50% / 20px 20px}.texture-preview-image img{max-width:100%;max-height:70vh;object-fit:contain}@media(max-width:768px){.analysis-stats-grid{grid-template-columns:repeat(2,1fr)}.texture-info{flex-direction:column;align-items:flex-start;gap:.25rem}.texture-type,.texture-resolution,.texture-size{min-width:auto}.textures-grid{grid-template-columns:repeat(2,1fr)}.table-header,.table-row{grid-template-columns:1.5fr 1fr 1fr;font-size:.8rem;padding:.5rem .75rem}}.performance-issues{border:2px solid var(--error);background:#ef44440d}.performance-issues h2{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.issue-badge{font-size:.75rem;padding:.25rem .5rem;border-radius:4px;font-weight:600}.issue-badge.error{background:#ef444433;color:var(--error)}.issue-badge.warning{background:#eab30833;color:#eab308}.issues-group{margin-bottom:1.5rem}.issues-group:last-child{margin-bottom:0}.issues-group h3{font-size:.95rem;color:var(--text-secondary);margin-bottom:.75rem;font-weight:500}.issues-list{display:flex;flex-direction:column;gap:.75rem}.issue-card{background:var(--bg-tertiary);border-radius:8px;padding:1rem;border:1px solid var(--border-color)}.issue-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.75rem}.issue-texture-info{display:flex;flex-direction:column;gap:.25rem}.issue-texture-name{font-weight:600;color:var(--text-primary);font-size:.95rem}.issue-texture-meta{font-size:.8rem;color:var(--text-secondary)}.preview-btn.small{padding:.35rem .75rem;font-size:.75rem}.issue-messages{display:flex;flex-direction:column;gap:.5rem}.issue-message{display:flex;align-items:flex-start;gap:.5rem;padding:.5rem .75rem;border-radius:6px;font-size:.85rem}.issue-message.error{background:#ef444426;color:#fca5a5}.issue-message.warning{background:#eab30826;color:#fde047}.issue-message.info{background:#6366f126;color:var(--accent-secondary)}.issue-icon{font-weight:700;flex-shrink:0;width:18px;height:18px;display:flex;align-items:center;justify-content:center;border-radius:50%;font-size:.7rem}.issue-icon.error{background:var(--error);color:#fff}.issue-icon.warning{background:#eab308;color:#000}.issue-icon.info{background:var(--accent-primary);color:#fff}@media(max-width:768px){.issue-card-header{flex-direction:column;gap:.5rem}.preview-btn.small{align-self:flex-start}}.optimize-options{background:var(--bg-secondary);border-radius:12px;padding:1.5rem;margin-bottom:1.5rem}.optimize-options .options-row{display:flex;justify-content:center;gap:1.5rem;flex-wrap:wrap;margin-bottom:1rem}.optimize-options .options-row:last-child{margin-bottom:0}.optimize-options .options-row.checkboxes{gap:2rem}.optimize-options .option-label{display:flex;align-items:center;gap:.75rem;background:var(--bg-tertiary);padding:.75rem 1.25rem;border-radius:8px;border:1px solid var(--border-color)}.optimize-options .option-label span{color:var(--text-secondary);font-size:.9rem;white-space:nowrap}.optimize-options select{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:6px;padding:.5rem 1rem;color:var(--text-primary);font-size:.9rem;cursor:pointer;transition:all .2s ease}.optimize-options select:hover:not(:disabled){border-color:var(--accent-primary)}.optimize-options select:focus{outline:none;border-color:var(--accent-primary);box-shadow:0 0 0 2px #6366f133}.optimize-options select:disabled{opacity:.5;cursor:not-allowed}.optimize-stats{background:var(--bg-secondary);border-radius:12px;padding:2rem;margin-bottom:2rem}.optimize-stats .stats-column.optimized{border:2px solid var(--success)}.optimize-stats .stats-column.optimized h3{color:var(--success)}.optimize-stats .reduction{color:var(--success);font-size:.85rem;font-weight:500}.optimization-summary{text-align:center;padding:1rem;background:#22c55e1a;border-radius:8px;margin-bottom:1.5rem}.optimization-summary p{color:var(--text-secondary);margin:0;font-size:.95rem}.optimization-summary strong{color:var(--success)}@media(max-width:768px){.optimize-options .options-row{flex-direction:column;align-items:center}.optimize-options .options-row.checkboxes{gap:1rem}}.draco-options{background:var(--card-bg);padding:2rem;border-radius:12px;margin-bottom:2rem;border:1px solid var(--border-color)}.draco-options h3{margin:0 0 1.5rem;color:var(--text-primary);font-size:1.3rem;font-weight:600}.draco-options h4{margin:1.5rem 0 1rem;color:var(--text-secondary);font-size:1rem;font-weight:600;padding-top:1rem;border-top:1px solid var(--border-color)}.quantization-settings{margin-top:1.5rem}.compression-results{background:var(--card-bg);padding:2rem;border-radius:12px;border:1px solid var(--border-color);margin-top:2rem}.compression-results h3{margin:0 0 1.5rem;color:var(--text-primary);font-size:1.3rem;font-weight:600}.compression-results h4{margin:0 0 .5rem;color:var(--text-secondary);font-size:1rem;font-weight:600}.compression-results .stats-comparison{display:flex;align-items:center;justify-content:center;gap:2rem;margin-bottom:2rem}.compression-results .stats-column.compressed{background:linear-gradient(135deg,#22c55e1a,#22c55e0d);border:1px solid rgba(34,197,94,.2)}.compression-results .stat-value.reduction{color:var(--success);font-weight:700}@media(max-width:768px){.draco-options,.compression-results{padding:1.5rem}.compression-results .stats-comparison{flex-direction:column;gap:1rem}}
