.codex-model-dialog{width:min(720px,calc(100% - 32px));max-height:calc(100dvh - 32px);margin:auto;padding:clamp(20px,4vw,32px);overflow:auto;border:1px solid #d1d8e0;border-radius:20px;background:#fff;color:#182231;box-shadow:0 32px 90px #0006;font:15px/1.6 system-ui,sans-serif}
.codex-model-dialog::backdrop{background:#091020b8;backdrop-filter:blur(6px)}
.codex-model-dialog h2{margin:0;font:700 clamp(23px,4vw,30px)/1.2 system-ui,sans-serif;letter-spacing:-.03em;color:#182231}
.codex-model-dialog p{color:#475569;margin:18px 0;font-size:14px}.codex-model-dialog-head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px}.codex-model-dialog-head small{display:block;letter-spacing:.14em;font-size:10px;margin-bottom:8px}.codex-model-dialog-head [data-close]{flex-shrink:0;width:44px;height:44px;padding:0;font-size:28px}
.codex-model-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.codex-model-fields .wide{grid-column:1/-1}.codex-model-fields label,.codex-model-review{display:grid;gap:8px;font:600 13px/1.5 system-ui,sans-serif}
.codex-model-fields :is(input,select,textarea),.codex-model-review textarea{width:100%;min-width:0;min-height:46px;padding:11px 13px;border:1px solid #b9c3d0;border-radius:9px;background:#fff;color:#17212e;font:400 16px/1.5 system-ui,sans-serif}.codex-model-fields input[type="color"]{padding:5px;cursor:pointer}.codex-model-fields textarea,.codex-model-review textarea{resize:vertical}
.codex-model-dialog-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}.codex-model-dialog :is(button,.codex-model-file,.codex-model-dialog-actions a){display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 16px;border:1px solid #b9c3d0;border-radius:9px;background:#f4f7fa;color:#182231;font:600 13px/1.4 system-ui,sans-serif;cursor:pointer;text-decoration:none;letter-spacing:0}.codex-model-dialog .primary{background:#172539;border-color:#172539;color:#fff}
.codex-model-file input{width:1px;height:1px;position:absolute;clip-path:inset(50%)}.codex-model-file:focus-within{outline:3px solid #2f61b6;outline-offset:3px}.codex-model-form-note{font-size:13px!important;line-height:1.6!important;color:inherit;opacity:.8;margin-top:18px!important}
.codex-model-contact{display:grid;grid-template-columns:1fr 1fr;gap:clamp(30px,5vw,80px);max-width:1440px;margin:auto;padding:clamp(60px,8vw,110px) clamp(20px,5vw,64px);border-top:1px solid #8884}.codex-model-contact h2{font-size:clamp(28px,4vw,44px);line-height:1.2;margin:14px 0 20px;letter-spacing:-.03em}.codex-model-contact small{font-size:11px;font-weight:700;letter-spacing:.14em}.codex-model-contact p{max-width:52ch}.codex-model-submit{min-height:48px;margin-top:20px;padding:12px 24px;border:0;border-radius:9px;background:#19283b;color:#fff;cursor:pointer;font:600 15px/1.4 system-ui,sans-serif}
.codex-model-menu{display:none}.codex-model-dock{position:fixed;z-index:9998;right:max(16px,env(safe-area-inset-right));bottom:max(16px,env(safe-area-inset-bottom));display:flex;align-items:center;gap:8px;padding:8px;border:1px solid #ffffff40;border-radius:14px;background:#111820f2;color:#fff;box-shadow:0 12px 38px #0004;font:600 12px/1.4 system-ui,sans-serif;max-width:calc(100vw - 32px)}
html[data-model-customized] :is(.primary-button,.hero .btn,.hero-buttons a:first-child,.codex-model-submit){background:var(--model-accent)!important;color:var(--model-accent-ink)!important;border-color:var(--model-accent)!important}
.codex-model-dock a,.codex-model-dock button{min-height:44px;display:flex;align-items:center;justify-content:center;gap:6px;padding:10px 16px;border:1px solid #ffffff40;border-radius:8px;background:#1c2633;color:#fff;text-decoration:none;font:inherit;cursor:pointer;white-space:normal;text-align:center}.codex-model-dock a{background:#fff;color:#17212e;border-color:#fff}.codex-model-dock small{display:block;color:#abbace;font-size:10px;font-weight:400;margin-top:3px}
body:has(.codex-model-dock){padding-bottom:100px}body:has(.codex-model-dock) .floating-actions{bottom:112px!important}body:has(dialog[open]) .codex-model-dock{visibility:hidden}
@media(max-width:800px){.codex-model-menu{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:8px 12px;border:1px solid currentColor;border-radius:7px;background:transparent;color:inherit;font:600 12px system-ui,sans-serif;cursor:pointer}.codex-model-contact{grid-template-columns:minmax(0,1fr)}}
@media(max-width:520px){.codex-model-fields{grid-template-columns:minmax(0,1fr)}.codex-model-dock{left:12px;right:12px;max-width:none;bottom:max(12px,env(safe-area-inset-bottom));justify-content:stretch}.codex-model-dock>a,.codex-model-dock>button{flex:1;font-size:11px;padding:10px 9px}.codex-model-dock>span{display:none}.codex-model-dialog-actions>*{flex:1 1 45%}.codex-model-dialog{padding:20px}.codex-model-contact{padding-inline:20px}}

.codex-model-mobile-links[hidden],.product-card[hidden]{display:none!important}
.codex-model-mobile-links{position:fixed!important;z-index:9997;left:16px;right:16px;display:flex!important;padding:16px;flex-direction:column;gap:8px;max-height:calc(100dvh - 240px);overflow:auto;background:#17212e!important;color:#fff!important;border-radius:10px;box-shadow:0 12px 40px #0004;transform:none!important;opacity:1!important;pointer-events:auto!important}
.codex-model-mobile-links a{min-height:44px;display:flex;align-items:center;padding:8px;color:#fff!important;font:600 14px/1.5 system-ui,sans-serif;letter-spacing:0;text-decoration:none}
.codex-model-product-search{max-width:640px;margin:0 auto 40px;text-align:left}.codex-model-product-search label{font:600 13px/1.5 system-ui,sans-serif}.codex-model-product-search input{display:block;width:100%;min-height:46px;margin-top:8px;padding:12px 16px;border:1px solid #b9c3d0;border-radius:9px;background:#fff;color:#17212e;font:400 16px/1.5 system-ui,sans-serif}.codex-model-product-search p{font:400 13px/1.5 system-ui,sans-serif}
body.menu-open>header{z-index:1001!important}.codex-model-mobile-links{margin:0!important;width:auto!important;align-items:stretch!important}.codex-model-mobile-links a{width:100%;justify-content:flex-start}
body:has(.cart.active,.lightbox.active,.modal.open,.modal.show) .codex-model-dock{visibility:hidden}
