@font-face{font-family:League Gothic;src:url(/fonts/league-gothic.ttf) format("truetype")}@font-face{font-family:Lobster;src:url(/fonts/Lobster-Regular.ttf) format("truetype")}@font-face{font-family:Great Vibes;src:url(/fonts/GreatVibes-Regular.ttf) format("truetype")}@font-face{font-family:Ultra;src:url(/fonts/Ultra-Regular.ttf) format("truetype")}@font-face{font-family:Remora Camilla;src:url(/fonts/Remora\ Camilla.otf) format("opentype")}@font-face{font-family:usuzi;src:url(/fonts/usuzi.ttf) format("truetype")}@font-face{font-family:Magneto;src:url(/fonts/MAGNETOB.TTF) format("truetype")}@font-face{font-family:Stencil;src:url(/fonts/STENCIL.TTF) format("truetype")}*{box-sizing:border-box}:root{font-family:Inter,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;justify-content:center;align-items:center;min-width:320px;min-height:100vh;background-color:#fff;overflow:hidden}html{overflow:hidden}#root{width:100%;display:flex;justify-content:center;align-items:center;padding:0}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}}@media(max-width:768px){body,html{overflow-y:auto}#root{align-items:flex-start;padding:20px 0}}.widget-container{display:flex;flex-direction:row;justify-content:center;align-items:center;gap:40px;width:1040px;height:840px;margin:0;padding:30px;background:#fff;border-radius:0;box-shadow:none;color:#333;-webkit-user-select:none;user-select:none;position:relative;box-sizing:border-box}.made-in-usa-badge{position:absolute;top:35px;left:35px;width:80px;height:auto;z-index:100;pointer-events:none}.bottom-left-logo{width:120px;height:auto;z-index:6000;pointer-events:none}.preview-section{flex:1.8;display:flex;flex-direction:column;justify-content:center;align-items:center;background:#f8f9fa;border-radius:12px;overflow:hidden;height:100%;min-width:500px;position:relative;box-shadow:inset 0 0 10px #00000005}.preview-stage{position:relative;width:95%;aspect-ratio:1 / 1;display:flex;justify-content:center;align-items:center;background:transparent;border-radius:50%;overflow:hidden}.preview-loading-overlay{position:absolute;inset:0;display:flex;justify-content:center;align-items:center;background:#fffc;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:100;opacity:0;pointer-events:none;transition:opacity .3s ease-in-out;border-radius:50%}.preview-loading-overlay.active{opacity:1;pointer-events:auto}.preview-loading-overlay.active~.preview-image,.preview-loading-overlay.active~.base-artwork-image,.preview-loading-overlay.active~.base-artwork-wrapper{opacity:0}.base-artwork-image{width:100%;height:100%;object-fit:contain;position:absolute;top:0;left:0;z-index:10;border-radius:50%;transition:opacity .3s ease-in-out}.preview-image{width:100%;height:100%;object-fit:contain;display:block;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;position:relative;z-index:20;transition:opacity .3s ease-in-out}.side-toggle{display:flex;gap:10px;background:#ffffffd9;padding:5px;border-radius:30px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);box-shadow:0 4px 15px #00000026;z-index:1000}.preview-footer{position:absolute;bottom:25px;left:0;right:0;height:50px;display:flex;align-items:center;justify-content:center;z-index:1000;padding:0 20px;pointer-events:none}.preview-footer>*{pointer-events:auto}.preview-footer .bottom-left-logo{position:absolute;left:15px}.preview-footer .view-3d-btn{position:absolute;right:20px}.side-toggle button{background:transparent;color:#666;border-radius:20px;padding:8px 20px;font-size:14px;border:none}.side-toggle button.active{background:#008060;color:#fff}.controls-section{flex:1 1 400px;width:100%;max-width:400px;display:flex;flex-direction:column;justify-content:center;position:relative;height:100%}.header-row{display:flex;justify-content:center;align-items:center;margin-bottom:15px}.header-row h2{margin:0;font-size:22px;color:#111;text-align:center}.earring-options-row{margin-bottom:20px;background:#f8f9fa;padding:12px 20px;border-radius:12px;border:1px solid #eee;transition:all .3s ease;box-sizing:border-box}.earring-options-row.coupled{display:flex;align-items:center;justify-content:space-between;padding:20px 25px}.earring-options-row.coupled .decouple-toggle-wrapper{flex-direction:row;justify-content:space-between;width:100%;align-items:center}.earring-options-row.coupled .toggle-label{font-size:18px;color:#111;letter-spacing:0;font-weight:800}.earring-options-row.coupled .mini-decouple-toggle{padding:4px;border-radius:30px}.earring-options-row.coupled .toggle-option{font-size:13px;padding:8px 20px;border-radius:25px}.earring-options-row.decoupled{display:flex;flex-direction:column;align-items:center;gap:15px;padding:15px 20px}.earring-options-row.decoupled .decouple-toggle-wrapper{flex-direction:column;align-items:center;gap:8px}.earring-options-row.decoupled .toggle-label{font-size:14px;text-align:center;color:#111;font-weight:800}.earring-options-row.decoupled .earring-selector{width:100%;justify-content:center}.decouple-toggle-wrapper{display:flex;flex-direction:column;gap:6px}.toggle-label{font-size:10px;font-weight:800;color:#aaa;text-transform:uppercase;letter-spacing:.5px}.earring-selector{display:flex;background:#fff;padding:3px;border-radius:8px;border:1px solid #ddd;box-shadow:0 2px 5px #0000000d}.earring-selector button{flex:1;padding:8px 16px;border:none;background:transparent;font-size:13px;font-weight:700;color:#666;border-radius:6px;cursor:pointer;transition:all .2s;white-space:nowrap}.earring-selector button.active{background:#008060;color:#fff}.hidden{visibility:hidden!important;pointer-events:none!important}.vertical-tiles-container{display:flex;flex-direction:column;gap:12px;height:100%}.vertical-tile-btn{flex:1;min-height:120px;display:flex;align-items:center;gap:24px;padding:0 30px;background:#fff;border:1px solid #eee;border-radius:16px;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);text-align:left;box-shadow:0 4px 12px #00000008}.vertical-tile-btn:hover{border-color:#008060;background:#fff;transform:translateY(-3px);box-shadow:0 8px 24px #00806014}.vertical-tile-btn.active{border-color:#008060;background:#f0fdf4;box-shadow:0 8px 24px #0080601f;border-width:2px}.tile-icon-wrapper{width:64px;height:64px;background:#f8f9fa;border-radius:16px;display:flex;align-items:center;justify-content:center;color:#666;flex-shrink:0;transition:all .3s}.vertical-tile-btn:hover .tile-icon-wrapper,.vertical-tile-btn.active .tile-icon-wrapper{background:#fff;color:#008060;transform:scale(1.1)}.tile-content{display:flex;flex-direction:column;gap:2px}.tile-title{font-size:19px;font-weight:800;color:#111}.vertical-tile-btn.active .tile-title{color:#008060}.tile-subtitle{font-size:14px;font-weight:600;color:#888}.vertical-tile-designs{flex:1.2;background:#fff;border:1px solid #eee;border-radius:12px;padding:12px 25px;display:flex;flex-direction:column;justify-content:center;gap:4px;overflow:hidden;box-shadow:0 2px 10px #00000005;position:relative}.tile-section-label{font-size:13px;font-weight:800;color:#aaa;text-transform:uppercase;letter-spacing:1px;margin-bottom:8px;text-align:center;display:block;width:100%}.tile-design-grid-wrapper{position:relative;width:100%;display:flex;align-items:center;min-height:110px}.tile-design-grid{display:flex;gap:20px;overflow-x:auto;padding:10px;scrollbar-width:none;align-items:center;width:100%;scroll-behavior:smooth}.tile-design-grid::-webkit-scrollbar{display:none}.tile-scroll-btn{position:absolute;top:50%;transform:translateY(-50%);width:32px;height:32px;background:#fff;border:1px solid #eee;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:20;box-shadow:0 4px 10px #0000001a;color:#666;transition:all .2s;padding:0}.tile-scroll-btn:hover{background:#f0fdf4;border-color:#008060;color:#008060;transform:translateY(-50%) scale(1.1)}.tile-scroll-btn.left{left:0}.tile-scroll-btn.right{right:0}.tile-scroll-btn.hidden{opacity:0;pointer-events:none}.tile-thumb-wrapper{position:relative;flex-shrink:0;display:flex;align-items:center;justify-content:center;margin:0 5px}.tile-thumb{width:95px;height:95px;border-radius:50%;border:2px solid transparent;background-size:cover;background-position:center;background-repeat:no-repeat;overflow:hidden;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);background-color:#f8f9fa;padding:0;box-shadow:none!important;flex-shrink:0;aspect-ratio:1 / 1}.mini-decouple-toggle{display:flex;align-items:center;gap:0;background:#f1f1f1;padding:2px;border-radius:20px;cursor:pointer;transition:all .2s;border:1px solid #eee}.toggle-option{font-size:8px;font-weight:800;color:#888;text-transform:uppercase;letter-spacing:.5px;padding:4px 8px;border-radius:18px;transition:all .2s}.toggle-option.active{background:#008060;color:#fff}.tile-thumb.active{border-color:#008060;transform:scale(1.08);box-shadow:0 0 0 2px #fff,0 0 0 4px #008060!important}.tile-thumb-actions{position:absolute;top:0;right:0;display:flex;gap:4px;opacity:0;transition:all .2s;z-index:10}.tile-thumb-wrapper:hover .tile-thumb-actions{opacity:1}.tile-action-btn{width:18px;height:18px;border-radius:50%;border:1.5px solid white;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#fff;box-shadow:0 2px 4px #0000001a;padding:0}.tile-action-btn.edit{background:#008060}.tile-action-btn.delete{background:#ff4757;font-size:12px;font-weight:700}.decouple-tile-header{display:flex;justify-content:space-between;align-items:center}.mini-decouple-btn{background:#f8f9fa;border:1px solid #eee;padding:4px 10px;border-radius:20px;font-size:10px;font-weight:700;color:#666;cursor:pointer;transition:all .2s}.mini-decouple-btn.active{background:#008060;color:#fff;border-color:#008060}.back-to-blank-btn{background:transparent;border:1.5px solid #eee;padding:8px 16px;border-radius:10px;display:flex;align-items:center;gap:8px;cursor:pointer;color:#666;font-weight:700;font-size:12px;transition:all .2s;width:fit-content;margin-bottom:4px}.back-to-blank-btn:hover{background:#f8f9fa;border-color:#ddd;color:#333}.tile-placeholder{font-size:12px;color:#ccc;font-style:italic;text-align:center;width:100%;padding:20px 0}.back-to-blank-btn{width:100%;background:#fff;border:1px solid #eee;padding:12px 20px;border-radius:12px;display:flex;align-items:center;gap:10px;cursor:pointer;transition:all .2s;font-weight:700;font-size:14px;color:#666}.back-to-blank-btn:hover{background:#f8f9fa;border-color:#008060;color:#008060}.relative-controls-area{position:relative;flex:1;background:#fafafa;border-radius:12px;padding:20px;border:1px solid #f0f0f0;display:flex;flex-direction:column;overflow:hidden;box-shadow:inset 0 2px 10px #00000005}.main-controls{display:flex;flex-direction:column;gap:12px;height:100%}.color-picker-overlay,.bbox-overlay{position:absolute;inset:0;background:#fff;z-index:1000;padding:20px 0 0;display:flex;flex-direction:column;animation:fadeIn .2s ease-out;box-sizing:border-box}.full-sidebar-overlay{height:100%;width:100%}.color-picker-content{flex:1;display:flex;flex-direction:column;justify-content:flex-start;align-items:center;width:100%;padding:0 20px 20px;min-height:0;gap:15px;box-sizing:border-box}.sidebar-bottom-controls{margin-top:auto;width:100%;display:flex;flex-direction:column;gap:20px}.sidebar-control-group{width:100%;display:flex;flex-direction:column;gap:8px}.sidebar-control-label{font-size:10px;font-weight:700;color:#888;text-align:center;letter-spacing:.5px}.sidebar-slider-container{position:relative;width:100%}.sidebar-slider-track{position:relative;height:10px;border-radius:5px;border:1px solid #ddd}.sidebar-slider-track input[type=range]{position:absolute;top:-4px;left:0;width:100%;opacity:0;cursor:pointer;z-index:2}.sidebar-slider-thumb{position:absolute;top:50%;width:18px;height:18px;border-radius:50%;border:2px solid #fff;box-shadow:0 2px 4px #0003;transform:translate(-50%,-50%);pointer-events:none;z-index:1;transition:left .1s ease-out}.overlay-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px;padding:0 20px 10px;border-bottom:1px solid #eee}.overlay-header h3{margin:0;font-size:14px;color:#666;letter-spacing:.5px}.overlay-actions{display:flex;gap:8px;align-items:center}.revert-btn{background:transparent;color:#dc3545;border:1px solid #dc3545;border-radius:4px;padding:4px 12px;font-size:12px;font-weight:600;cursor:pointer;transition:all .2s}.revert-btn:hover{background:#fff5f5}.close-overlay{background:#008060;color:#fff;border:none;border-radius:4px;padding:4px 12px;font-size:12px;font-weight:600;cursor:pointer}.bbox-visual-overlay{position:absolute;border:2px dashed #008060;background:#0080601a;pointer-events:auto;z-index:100;box-sizing:border-box;cursor:grab}.bbox-visual-overlay.dragging{cursor:grabbing}.bbox-corner{position:absolute;width:12px;height:12px;background:#fff;border:2px solid #008060;border-radius:50%;pointer-events:auto;cursor:nwse-resize}.bbox-corner.tl{top:-6px;left:-6px;cursor:nwse-resize}.bbox-corner.tr{top:-6px;right:-6px;cursor:nesw-resize}.bbox-corner.bl{bottom:-6px;left:-6px;cursor:nesw-resize}.bbox-corner.br{bottom:-6px;right:-6px;cursor:nwse-resize}.bbox-label{position:absolute;top:-25px;left:50%;transform:translate(-50%);background:#008060;color:#fff;font-size:10px;padding:2px 8px;border-radius:4px;white-space:nowrap;font-weight:700;text-shadow:none}.bbox-info-box{display:flex;flex-direction:column;gap:15px;padding:0 20px}.bbox-info-box p{margin:0 0 25px;font-size:16px;color:#444;line-height:1.6}.center-actions{display:flex;flex-direction:row;gap:20px;margin-top:15px;justify-content:center;align-items:center}.center-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:15px;background:#fff;border:2px solid #008060;border-radius:16px;padding:20px;width:160px;height:160px;font-size:14px;font-weight:700;color:#008060;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 12px #0080601f;text-align:center}.center-btn:hover{background:#f0fdf4;transform:translateY(-5px);box-shadow:0 8px 24px #00806033;border-color:#005e46;color:#005e46}.center-btn svg{width:40px;height:40px}.center-btn:hover{background:#e9ecef;border-color:#008060;color:#008060}.bottom-actions-area{display:flex;flex-direction:column;gap:10px;padding-top:20px;justify-content:center;position:relative;z-index:1100;background:#fff}.bottom-row-container{display:flex;justify-content:space-between;align-items:stretch;margin-top:10px;padding:15px 0;border-top:1px solid #f0f0f0;gap:12px}.bbox-toggle-btn{flex:1 1 0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;background:#fff;border:1px solid #ddd;border-radius:8px;padding:12px 8px;font-size:13px;line-height:1.25;font-weight:600;color:#444;cursor:pointer;transition:all .2s;min-height:80px;text-align:center;box-sizing:border-box}.bbox-toggle-btn span{display:block}.bbox-toggle-btn:hover{background:#f9f9f9;border-color:#ccc}.bbox-toggle-btn.active{background:#e7f3ff;border-color:#008060;color:#008060}.color-mode-toggle{display:flex;gap:4px;background:#f0f0f0;padding:3px;border-radius:6px}.color-mode-toggle button{background:transparent;border:none;padding:6px 12px;font-size:12px;font-weight:600;color:#666;border-radius:4px;cursor:pointer;transition:all .2s}.color-mode-toggle button.active{background:#fff;color:#008060;box-shadow:0 2px 4px #0000001a}.preview-image.eyedropper-mode{cursor:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='32' height='32' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'><path d='m2 22 1-1h3l9-9'/><path d='M3 21v-3l9-9'/><path d='m15 6 3.4-3.4a2.1 2.1 0 1 1 3 3L18 9l-3-3Z'/><path d='m2 22 1-1h3l9-9' stroke='black' stroke-width='1.5'/><path d='M3 21v-3l9-9' stroke='black' stroke-width='1.5'/><path d='m15 6 3.4-3.4a2.1 2.1 0 1 1 3 3L18 9l-3-3Z' stroke='black' stroke-width='1.5'/></svg>") 2 22,crosshair!important}.widget-container.grabbing-active *{cursor:grabbing!important}.view-3d-btn{display:flex;align-items:center;gap:8px;background:#ffffffd9;padding:8px 16px;border-radius:30px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);box-shadow:0 4px 15px #00000026;z-index:1000;border:1px solid #ddd;cursor:pointer;font-size:13px;font-weight:600;color:#444;transition:all .2s}.view-3d-btn:hover{background:#fff;border-color:#008060;color:#008060;transform:translateY(-2px)}.view-3d-btn svg{color:#008060}.three-d-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:#f8f9fa;z-index:5000;border-radius:12px;overflow:hidden;opacity:0;transition:opacity .5s ease-in-out;pointer-events:none}.three-d-overlay.ready{opacity:1;pointer-events:auto}.global-loading-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:#ffffffe6;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:6000;display:flex;justify-content:center;align-items:center;border-radius:12px;animation:fadeIn .3s ease-out}.loading-content{display:flex;flex-direction:column;align-items:center;gap:20px}.spinner-large{width:50px;height:50px;border:4px solid rgba(0,128,96,.1);border-top-color:#008060;border-radius:50%;animation:spin 1s linear infinite}.loading-content span{font-size:18px;font-weight:600;color:#333;letter-spacing:.5px}.three-d-footer{position:absolute;bottom:25px;left:0;right:0;height:50px;display:flex;align-items:center;justify-content:space-between;padding:0 30px;pointer-events:none;z-index:5100}.three-d-footer>*{pointer-events:auto}.return-editor-btn{display:flex;align-items:center;gap:10px;background:#008060;color:#fff;padding:12px 24px;border-radius:30px;border:none;cursor:pointer;font-weight:600;box-shadow:0 4px 15px #0080604d;transition:all .2s}.return-editor-btn:hover{background:#005e46;transform:translateY(-2px);box-shadow:0 6px 20px #00806066}.loading-3d{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:#666;font-weight:600;font-size:18px}@keyframes fadeIn{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}.cropper-modal-overlay{position:fixed;inset:0;background:#000000e6;display:flex;justify-content:center;align-items:center;z-index:2000;animation:fadeIn .3s ease-out}.cropper-container{background:#fff;width:450px;border-radius:12px;padding:25px;display:flex;flex-direction:column;align-items:center;gap:20px}.cropper-header{text-align:center}.cropper-header h3{margin:0 0 8px;font-size:20px}.cropper-header p{margin:0;font-size:14px;color:#666}.cropper-work-area{touch-action:none;position:relative;width:100%;max-width:400px;aspect-ratio:1 / 1;height:auto;background:#eee;border-radius:8px;overflow:hidden;display:flex;justify-content:center;align-items:center}.cropper-work-area img:not(.cropper-overlay){max-width:none;position:absolute;-webkit-user-select:none;user-select:none;pointer-events:none}.cropper-overlay{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:5;opacity:.8}.cropper-controls{width:100%;display:flex;flex-direction:column;gap:20px}.scale-slider{display:flex;flex-direction:column;gap:8px}.scale-slider label{font-size:13px;font-weight:700;color:#444}.scale-slider input{accent-color:#008060}.cropper-buttons{display:flex;gap:12px;width:100%}.cropper-buttons button{flex:1;padding:12px;border-radius:6px;font-weight:600;cursor:pointer;border:none}.cancel-btn{background:#f5f5f5;color:#666}.accept-btn{background:#008060;color:#fff}.control-group{display:flex;flex-direction:column;gap:8px;margin-bottom:15px}.control-group label{font-weight:600;font-size:14px;color:#666}.design-picker-wrapper{position:relative;display:flex;align-items:center;gap:10px;width:100%}.design-picker{display:flex;gap:12px;overflow-x:auto;padding:10px 5px;scroll-behavior:smooth;-ms-overflow-style:none;scrollbar-width:none;flex:1}.design-picker::-webkit-scrollbar{display:none}.picker-scroll-btn{background:#fff;border:1px solid #ddd;border-radius:50%;width:32px;height:32px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#444;transition:all .2s;box-shadow:0 2px 5px #0000001a;flex-shrink:0;z-index:10;padding:0}.picker-scroll-btn svg{width:20px;height:20px;stroke:#444!important;stroke-width:3px;display:block}.picker-scroll-btn:hover{background:#f0fdf4;border-color:#008060;color:#008060;transform:scale(1.1)}.picker-scroll-btn:active{transform:scale(.95)}.picker-scroll-btn.hidden{opacity:0;pointer-events:none;cursor:default}.design-thumb-wrapper{position:relative;flex-shrink:0}.design-thumb-wrapper:hover .delete-design-btn,.design-thumb-wrapper:hover .edit-design-btn{opacity:1}.thumb-actions{position:absolute;top:-5px;right:-5px;display:flex;flex-direction:column;gap:4px;z-index:10}.delete-design-btn,.edit-design-btn{width:20px;height:20px;border-radius:50%;color:#fff;border:2px solid white;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 2px 4px #0003;opacity:0;transition:opacity .2s,transform .2s;padding:0;line-height:1}.delete-design-btn{background:#ff4757;font-size:14px;font-weight:700}.edit-design-btn{background:#008060}.delete-design-btn:hover{background:#ff6b81;transform:scale(1.1)}.edit-design-btn:hover{background:#00a37b;transform:scale(1.1)}.design-thumb,.upload-thumb{width:64px;height:64px;border-radius:8px;cursor:pointer;flex-shrink:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;transition:all .2s;box-sizing:border-box;padding:0;margin:0;border:2px solid #eee;background-size:cover;background-position:center;background-color:#fff;color:#666}.color-footer-selector{display:flex;align-items:center;justify-content:center;background:#f8f9fa;padding:15px;border-radius:12px;border:1px solid #eee;margin-bottom:10px;width:100%;box-sizing:border-box;gap:15px}.footer-swatch-item{display:flex;flex-direction:column;align-items:center;gap:8px;cursor:pointer;transition:all .2s;padding:10px;border-radius:10px;width:130px;flex-shrink:0;box-sizing:border-box}.footer-swatch-item:hover{background:#fff}.footer-swatch-item.active{background:#fff;box-shadow:0 0 0 2px #008060,0 8px 20px #00806040;transform:translateY(-2px);z-index:10}.footer-swatch-item.active label{color:#008060}.footer-swatch-circle{width:40px;height:40px;border-radius:50%;border:2px solid white;box-shadow:0 4px 10px #0000001a}.footer-swatch-item label{font-size:11px;font-weight:800;color:#444;letter-spacing:.5px;cursor:pointer;text-align:center;max-width:90px;line-height:1.2}.footer-swap-btn{background:#fff;border:1px solid #ddd;border-radius:50%;width:48px;height:48px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#444;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 12px #00000014;flex-shrink:0;margin:0;padding:0;z-index:10}.footer-swap-btn svg{display:block;width:32px;height:32px;transform:rotate(90deg);stroke:currentColor;stroke-width:2.2}.footer-swap-btn:hover{border-color:#008060;color:#008060;transform:scale(1.1) rotate(0);box-shadow:0 6px 16px #00806026}.gallery-modal-overlay{position:fixed;inset:0;background:#000000d9;display:flex;justify-content:center;align-items:center;z-index:2500;animation:fadeIn .2s ease-out}.gallery-modal-container{background:#fff;width:800px;max-width:90vw;max-height:80vh;border-radius:16px;padding:30px;display:flex;flex-direction:column;gap:20px;box-shadow:0 10px 40px #0000004d}.gallery-header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #eee;padding-bottom:15px}.gallery-header h3{margin:0;font-size:24px;color:#111}.close-gallery{background:none;border:none;font-size:32px;color:#999;cursor:pointer;line-height:1}.close-gallery:hover{color:#333}.gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:20px;overflow-y:auto;padding:10px}.gallery-item{display:flex;flex-direction:column;align-items:center;gap:10px;cursor:pointer;transition:all .2s;padding:10px;border-radius:12px;border:2px solid transparent}.gallery-item:hover{background:#f0fdf4;border-color:#008060;transform:translateY(-4px)}.gallery-item img{width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:8px;box-shadow:0 4px 10px #0000001a}.gallery-item span{font-size:14px;font-weight:600;color:#444}.spinner{width:20px;height:20px;border:2px solid rgba(0,128,96,.2);border-top-color:#008060;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.upload-thumb span{font-size:10px;font-weight:700}.font-selector{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:5px}.font-btn{width:100%;padding:6px;background:#fff;border:1px solid #ddd;border-radius:8px;font-size:22px;cursor:pointer;transition:all .2s;color:#333;text-align:center;line-height:1.1;display:flex;align-items:center;justify-content:center;min-height:60px}.font-btn:hover{background:#f9f9f9;border-color:#ccc}.font-btn.active{border-color:#008060;color:#008060;background:#f0fdf4;box-shadow:0 0 0 3px #0080601a,0 0 8px #00806033;font-weight:600;transform:scale(1.02)}.back-design-inputs{display:flex;flex-direction:column;justify-content:space-between;height:100%;padding:5px 0}.back-design-inputs input{height:42px;margin-bottom:0!important;box-sizing:border-box}.control-group input[type=text]{width:100%;padding:12px;border:1px solid #ddd;border-radius:6px;font-size:16px;box-sizing:border-box;background-color:#fff;color:#333}.color-controls{display:flex;gap:20px}.color-controls .control-group{flex:1}.add-to-cart-btn{width:100%;margin-top:10px;padding:20px;background:#008060;color:#fff;border:none;border-radius:8px;font-size:22px;font-weight:700;cursor:pointer;transition:background .2s}.add-to-cart-btn:hover{background:#005e46}@media(max-width:768px){.gallery-grid{grid-template-columns:repeat(3,1fr)!important;gap:10px!important;padding:5px!important}.gallery-item{padding:5px!important;gap:5px!important}.gallery-item span{font-size:10px!important;text-align:center}.three-d-footer{justify-content:center!important;padding:0 15px!important;bottom:20px!important}.three-d-footer .bottom-left-logo{display:none!important}.return-editor-btn{width:auto!important;padding:12px 24px!important;font-size:14px!important;justify-content:center!important}.cropper-modal-overlay{position:fixed!important;inset:0!important;width:100vw!important;height:100%!important;z-index:99999!important;padding:0!important;margin:0!important;background:#fff!important;align-items:stretch!important}.cropper-container{width:100%!important;max-width:none!important;height:100%!important;max-height:none!important;border-radius:0!important;padding:20px!important;gap:15px!important;margin:0!important;overflow:hidden!important;justify-content:center!important;box-sizing:border-box!important;background:#fff!important;box-shadow:none!important}.artwork-declaration-container{width:100%!important;max-width:none!important;height:100%!important;max-height:none!important;border-radius:0!important;margin:0!important;padding:0!important;justify-content:center!important;box-sizing:border-box!important;box-shadow:none!important;background:#fff!important}.artwork-declaration-container>div:first-child{padding:12px 15px!important}.artwork-declaration-container>div:first-child h3{font-size:18px!important}.artwork-declaration-container>div:first-child svg{width:20px!important;height:20px!important}.artwork-declaration-container>div:first-child p{font-size:11px!important;margin-top:4px!important}.artwork-declaration-container>div:nth-child(2){padding:10px 15px 15px!important;display:flex!important;flex-direction:column!important}.artwork-declaration-container>div:nth-child(2)>div:first-child{padding:12px!important;margin-bottom:12px!important;gap:8px!important}.artwork-declaration-container>div:nth-child(2)>div:first-child input{width:18px!important;height:18px!important;margin-top:1px!important}.artwork-declaration-container>div:nth-child(2)>div:first-child label{font-size:11px!important;line-height:1.35!important}.artwork-declaration-container>div:nth-child(2)>div:nth-child(2) button{padding:10px!important;font-size:14px!important}.cropper-work-area{width:250px!important;height:250px!important;max-width:100%!important;max-height:250px!important;aspect-ratio:1 / 1!important;margin:0 auto!important}.cropper-header h3{font-size:18px!important;margin-bottom:4px!important}.cropper-header p{font-size:12px!important}.cropper-buttons .cancel-btn{flex:.35!important;padding-left:5px!important;padding-right:5px!important}.cropper-buttons .accept-btn{flex:1!important}.widget-container{width:100%!important;max-width:100vw!important;flex-direction:column;padding:10px;height:auto;max-height:none;gap:15px;align-items:stretch}.preview-section{width:100%;min-width:0;height:400px;flex:none;background:transparent!important;box-shadow:none!important;overflow:visible!important}.three-d-overlay,.global-loading-overlay{position:fixed!important;inset:0!important;width:100vw!important;height:100vh!important;z-index:9999!important;border-radius:0!important}.controls-section{width:100%;max-width:none;flex:none;height:auto}.relative-controls-area{height:auto!important}.vertical-tiles-container{height:auto}.vertical-tile-btn{min-height:100px;padding:0 15px}.add-to-cart-btn{padding:15px;font-size:18px}.bottom-actions-area{padding-bottom:20px}.made-in-usa-badge{top:10px;left:10px;width:45px}.preview-footer{position:relative;bottom:0;height:auto;margin-top:5px;padding:0;justify-content:center}.preview-footer .bottom-left-logo{display:none}.preview-footer .view-3d-btn{position:static;margin-left:10px;box-shadow:none!important}}
