*{box-sizing:border-box;margin:0;padding:0}html,body,#root{min-height:100%}body{background:#f7f9fc;color:#171c2a}button,input,select,textarea{font:inherit}.container{width:100%;min-height:100vh}.route-loading{display:grid;min-height:100vh;place-items:center;background:#f7f9fc;color:#353b55;font-weight:800}.configurator{position:absolute;top:92px;left:310px;right:auto;z-index:4;width:min(390px,calc(100vw - 620px));max-height:calc(100vh - 214px);overflow:auto;padding:16px;border:1px solid #d8deea;border-radius:8px;background:#fffffff0;box-shadow:0 18px 50px #161e361f;transform:translate(var(--configurator-drag-x, 0px));transition:box-shadow .2s ease}.configurator:has(.configurator_drag_handle:active){box-shadow:0 22px 58px #161e3633}.configurator_section+.configurator_section{margin-top:16px}.configurator_section_title{margin-bottom:10px;color:#2c3347;font-size:14px;font-weight:800}.configurator_drag_handle{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:-4px -4px 12px;padding:8px;border-radius:8px;cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none}.configurator_drag_handle:active{cursor:grabbing}.configurator_drag_handle span{display:block;color:#2c3347;font-size:14px;font-weight:800}.configurator_drag_handle small{display:block;margin-top:3px;color:#657089;font-size:11px;font-weight:700}.configurator_drag_handle button{min-height:32px;padding:0 10px;border:1px solid #d8deea;border-radius:8px;background:#fff;color:#20283a;cursor:pointer;font-size:12px;font-weight:800}.configurator_section_values{display:flex;flex-wrap:wrap;gap:8px}.configurator_section_values button,.upload-image input::file-selector-button{border:1px solid #d8deea;border-radius:8px;background:#fff;color:#20283a;cursor:pointer;font-size:12px;font-weight:800;padding:9px 10px}.configurator_section_values button:hover,.upload-image input::file-selector-button:hover{border-color:#353b55}.configurator_section_values button.active{border-color:#353b55;background:#353b55;color:#fff}.configurator_color_picker{max-width:100%;overflow:hidden}.color-picker-container{max-width:100%!important;box-shadow:none!important}.color-picker-container>div{max-width:100%}.upload-image{width:100%}.upload-image input{width:100%;color:#4f5a70;font-size:12px}.upload-image p{margin-top:8px;color:#4f5a70;font-size:12px}@media (max-width: 1180px){.configurator{order:4;position:relative;left:auto;right:auto;width:auto;max-height:none;margin:16px 18px;transform:none}}
