: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}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media(prefers-color-scheme:light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}.configurator-page{min-height:100vh;background:#f5f5f5}.configurator-header{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:2rem;text-align:center}.configurator-header h1{font-size:2.5rem;margin-bottom:.5rem}.configurator-header p{font-size:1.1rem;opacity:.9}.configurator-container{max-width:1400px;margin:0 auto;padding:2rem;display:grid;grid-template-columns:400px 1fr;gap:2rem}@media(max-width:1024px){.configurator-container{grid-template-columns:1fr}}.preview-panel{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 2px 8px #0000001a;height:fit-content;position:sticky;top:2rem}.preview-panel h2{margin-bottom:1.5rem;font-size:1.5rem}.canvas-wrapper{display:flex;justify-content:center;margin-bottom:1.5rem;background:#f8f9fa;border-radius:8px;padding:1rem}.avatar-canvas{max-width:100%;height:auto;border-radius:8px;image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges;-ms-interpolation-mode:nearest-neighbor}.export-buttons{display:flex;flex-direction:column;gap:.75rem}.config-panel{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 2px 8px #0000001a}.config-section{margin-bottom:2rem;padding-bottom:2rem;border-bottom:1px solid #e0e0e0}.config-section option{color:#1e1e1e}.config-section:last-child{border-bottom:none}.config-section h2{font-size:1.3rem;margin-bottom:1rem;color:#333}.preset-select{width:100%;padding:.75rem;border:2px solid #e0e0e0;border-radius:8px;font-size:1rem;background:#fff;cursor:pointer;transition:border-color .2s;color:#1e1e1e}.preset-select:focus{outline:none;border-color:#667eea}.size-inputs{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.size-inputs label{display:flex;flex-direction:column;gap:.5rem;font-weight:500}.size-inputs input{padding:.75rem;border:2px solid #e0e0e0;border-radius:8px;font-size:1rem;transition:border-color .2s}.size-inputs input:focus{outline:none;border-color:#667eea}.feature-toggles{display:flex;flex-direction:column;gap:.75rem}.feature-toggles label{display:flex;align-items:center;gap:.75rem;cursor:pointer;padding:.5rem;border-radius:6px;transition:background .2s}.feature-toggles label:hover{background:#f8f9fa}.feature-toggles input[type=checkbox]{width:20px;height:20px;cursor:pointer}.part-selector{margin-bottom:1.5rem}.part-selector h3{font-size:1.1rem;margin-bottom:.75rem;color:#555}.button-group{display:flex;flex-wrap:wrap;gap:.5rem}.button-group button{padding:.5rem 1rem;border:2px solid #e0e0e0;background:#fff;color:#1e1e1e;border-radius:6px;cursor:pointer;font-size:.9rem;transition:all .2s}.button-group button:hover{border-color:#667eea;background:#f8f9fa}.button-group button.active{background:#667eea;color:#fff;border-color:#667eea}.btn{width:100%;padding:.75rem;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.btn-secondary{background:#fff;color:#667eea;border:2px solid #667eea}.btn-secondary:hover{background:#f8f9fa}.modal-overlay{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;padding:2rem;z-index:10000}.modal-content{background:#fff;border-radius:12px;max-width:800px;width:100%;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 20px 60px #0000004d}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 2rem;border-bottom:1px solid #e0e0e0}.modal-header h2{margin:0;font-size:1.5rem}.close-btn{background:none;border:none;font-size:2rem;cursor:pointer;color:#999;line-height:1;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s}.close-btn:hover{background:#f0f0f0;color:#333}.modal-body{padding:2rem;overflow-y:auto;flex:1}.format-selector{display:flex;gap:.5rem;margin-bottom:1rem}.format-selector button{padding:.5rem 1rem;border:2px solid #e0e0e0;background:#fff;border-radius:6px;cursor:pointer;font-weight:500;transition:all .2s;color:#1e1e1e}.format-selector button.active{background:#667eea;color:#fff;border-color:#667eea}.config-code{background:#1e1e1e;color:#d4d4d4;padding:1.5rem;border-radius:8px;overflow-x:auto;max-height:400px;overflow-y:auto}.config-code code{font-family:Courier New,monospace;font-size:.85rem;line-height:1.6;white-space:pre}.modal-footer{padding:1.5rem 2rem;border-top:1px solid #e0e0e0;display:flex;gap:1rem}.modal-footer .btn{flex:1}
