.tartari-configurator{max-width:760px;margin:2rem auto;display:grid;gap:1rem}.tartari-configurator section,.tc-summary{padding:1.25rem;border:1px solid #ddd;border-radius:8px}.tartari-configurator h3{margin-top:0}.tartari-configurator label{display:block;margin:.75rem 0}.tartari-configurator label>span{display:block;font-weight:600;margin-bottom:.3rem}.tartari-configurator select,.tartari-configurator input[type=file]{width:100%;padding:.65rem}.tc-radios,.tc-purchase{display:flex;gap:1.25rem;flex-wrap:wrap}.tc-radios label,.tc-purchase label{display:inline-block}.tartari-configurator [hidden]{display:none!important}.tartari-configurator button{justify-self:start;padding:.8rem 1.25rem}.tc-summary{background:#f7f7f7}.tc-selected-work{font-size:1.1em;font-weight:600;margin:.5rem 0}.tc-price-note{font-size:.85em}.single-product .tartari-configurator{margin:1rem 0}.single-product .tartari-configurator section{padding:1rem}
.tartari-configurator .tc-field{border:0;padding:0;margin:1.2rem 0;min-width:0}.tc-field legend{font-weight:600;margin-bottom:.75rem}.tc-options{display:flex;flex-wrap:wrap;gap:.65rem}.tartari-configurator .tc-option{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;min-width:100px;max-width:180px;flex:1 1 100px;border:2px solid #ddd;border-radius:10px;background:#fff;color:#222;font:inherit;font-size:.9rem;padding:.8rem;cursor:pointer}.tartari-configurator .tc-option[aria-checked=true]{border-color:#222;background:#f0f0ec;box-shadow:0 0 0 1px #222}.tc-option img{width:64px;height:64px;object-fit:contain}.tc-icon{font-size:2rem;line-height:1}.tc-swatch{display:block;width:36px;height:36px;border-radius:50%;border:1px solid #aaa;box-shadow:0 1px 3px #0002}.tc-option[aria-checked=true] .tc-swatch{outline:2px solid #222;outline-offset:3px}.tartari-configurator .tc-radios label{position:relative;margin:0;cursor:pointer}.tc-radios input{position:absolute;opacity:0;width:1px;height:1px}.tartari-configurator .tc-radios label>span{padding:.8rem 1.2rem;border:2px solid #ddd;border-radius:8px;font-weight:500;margin:0}.tc-radios input:checked+span{background:#222;color:white;border-color:#222}.tc-radios input:focus-visible+span,.tc-option:focus-visible{outline:3px solid #2671c7;outline-offset:3px}.tartari-configurator button:disabled{opacity:.45;cursor:not-allowed}.tc-progress{font-size:.9rem;color:#555}.tc-summary{line-height:1.7}.tc-buy-button{display:inline-flex!important;align-items:center;justify-content:center;padding:.75em 1.5em!important;border-radius:6px;background:#222;color:#fff;text-decoration:none!important}.tc-buy-button:hover{background:#444;color:#fff}
.tc-modeler canvas{display:block;width:100%;height:auto;border-radius:8px;max-height:65vh;object-fit:contain}.tartari-configurator .tc-modeler{background:#f6f6f3}.tc-modeler small{display:block;font-size:.75rem;line-height:1.5;color:#555}.tc-model-caption{font-size:.9rem;margin:.6rem 0}.tc-crop-controls{padding:1rem;background:#f3f5f6;border-radius:8px;margin:1rem 0}.tc-crop-controls h4{margin:0}.tc-crop-controls input[type=range]{display:block;width:100%;accent-color:#222}.tc-crop-controls p,.tc-file-fallback{font-size:.9rem}.tc-crop-controls button{margin:.2rem 0}.tartari-configurator .tc-file-fallback{padding:1rem;background:#fff5dd}.tc-modeler h3{font-size:1.25rem}
.tc-model-gallery [hidden]{display:none!important}.tc-model-gallery .tc-modeler{padding:1rem;border:1px solid #ddd;border-radius:10px;background:#f6f6f3;margin:0}.tc-model-gallery .tc-modeler canvas{max-height:none}.tc-model-gallery .tc-modeler h3{margin-top:0}.tc-model-gallery{position:sticky!important;top:50px;align-self:start}@media(max-width:768px){.tc-model-gallery{position:relative!important;top:auto}}
.tc-model-shell{position:sticky!important;top:50px}.tc-model-gallery.tc-model-in-shell{position:relative!important;top:auto}.tc-model-gallery .tc-modeler{max-width:min(100%,calc((100vh - 240px)*1.25));box-sizing:border-box;margin-left:auto;margin-right:auto}@media(max-width:768px){.tc-model-shell{position:relative!important;top:auto}.tc-model-gallery .tc-modeler{max-width:100%}}
