.order-modal-overlay{position:fixed;inset:0;z-index:var(--z-modal);display:flex;align-items:center;justify-content:center;padding:1rem;background:rgba(20,28,32,.55)}.order-modal{width:min(920px,100%);height:min(900px,calc(100vh - 2rem));max-height:calc(100vh - 2rem);display:flex;flex-direction:column;border-radius:var(--radius,10px);background:var(--surface-solid,#fff);color:var(--text,#243038);box-shadow:0 4px 18px rgba(0,0,0,.18);overflow:hidden}.order-modal__header{flex-shrink:0;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.1rem 1.4rem;border-bottom:1px solid var(--line,#e0e0e0);background:color-mix(in srgb,var(--bg-elevated,#f5f5f5) 88%,#fff)}.order-modal__header h2{margin:0;font-family:var(--font-display,system-ui),system-ui,sans-serif;font-size:1.4rem;font-weight:800}.order-modal__close{border:0;background:transparent;width:2rem;height:2rem;border-radius:8px;font-size:1.6rem;line-height:1;color:var(--text-muted,#666);cursor:pointer}.order-modal__close:hover{background:color-mix(in srgb,var(--accent,#0f6e72) 10%,transparent);color:var(--text,#243038)}.order-modal__scroll{flex:1 1 auto;min-height:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;display:flex;flex-direction:column;gap:0}.order-modal__list{display:flex;flex-direction:column;gap:.55rem;padding:1.1rem 1.4rem .85rem}.order-modal__item{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.65rem .85rem;border-radius:var(--radius-sm,6px);background:color-mix(in srgb,var(--bg-elevated,#f5f5f5) 70%,transparent);border:1px solid var(--line,#e8e8e8)}.order-modal__item-main{display:flex;align-items:center;gap:.65rem;min-width:0;flex:1 1 auto}.order-modal__item-no{font-weight:700;color:var(--text-muted,#666);flex-shrink:0;width:1.4rem}.order-modal__item-preview{flex-shrink:0;flex-grow:0;width:5.25rem;height:5.25rem;min-width:5.25rem;max-width:5.25rem;min-height:5.25rem;max-height:5.25rem;aspect-ratio:1/1;border-radius:0;border:none;background:#ffffff;display:flex;align-items:center;justify-content:center;overflow:hidden;padding:0;box-sizing:border-box;position:relative}.order-modal__item-preview-canvas{display:block;width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain}.order-modal__item-copy{min-width:0;flex:1 1 auto}.order-modal__item-name{font-weight:700;line-height:1.3;font-size:.95rem}.order-modal__item-meta{margin-top:.2rem;font-size:.82rem;color:var(--text-muted,#666);line-height:1.3}.order-modal__item-price{flex-shrink:0;display:grid;grid-gap:.15rem;gap:.15rem;justify-items:end;text-align:right;white-space:nowrap;align-self:center}.order-modal__item-price-unit{font-size:.78rem;font-weight:550;color:var(--text-muted,#666);line-height:1.25}.order-modal__item-price-total{font-size:.98rem;font-weight:800;color:var(--success,#3d8f6a);line-height:1.2}.order-modal__footer{gap:.9rem;padding:.85rem 1.4rem 1.1rem;background:color-mix(in srgb,var(--bg-elevated,#f5f5f5) 92%,#fff)}.order-modal__footer,.order-modal__summary-bar{display:flex;flex-direction:column;border-top:1px solid var(--line,#e0e0e0)}.order-modal__summary-bar{flex-shrink:0;gap:.65rem;padding:.75rem 1.4rem 1rem;background:color-mix(in srgb,var(--bg-elevated,#f5f5f5) 96%,#fff);box-shadow:0 -6px 16px rgba(20,28,32,.06)}.order-modal__summary{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.55rem 1rem;padding:.7rem .9rem;border-radius:var(--radius-sm,6px);border:1px solid var(--line,#e0e0e0);background:color-mix(in srgb,var(--accent,#0f6e72) 8%,transparent);font-size:.92rem}.order-modal__summary strong{font-weight:800}.order-modal__summary-actions{display:flex;width:100%}.order-modal__summary-actions .order-modal__submit{width:100%;margin-top:0}.order-modal__delivery-note{width:100%;color:var(--text-muted,#555);font-size:.9rem}.order-modal__login-link{border:0;padding:0;background:none;color:inherit;font:inherit;text-decoration:underline;cursor:pointer}.order-modal__delivery-status{font-size:.84rem;line-height:1.35;color:var(--text-muted,#555)}.order-modal__delivery-status--note{color:var(--text,#243038);font-weight:650}.order-modal__delivery-status--error{color:var(--danger,#b71c1c)}.order-modal__delivery-status-reason{margin:.35rem 0 0;font-weight:400;font-size:.8rem;color:var(--text-muted,#555);line-height:1.4}.order-modal__delivery-progress{display:grid;grid-gap:.4rem;gap:.4rem;padding:.7rem .85rem;border-radius:12px;border:1px solid color-mix(in srgb,var(--accent-strong,#0a5559) 22%,var(--line,#e0e0e0));background:color-mix(in srgb,var(--accent-strong,#0a5559) 6%,#fff)}.order-modal__delivery-progress-label{font-size:.88rem;font-weight:650;color:var(--accent-strong,#0a5559)}.order-modal__delivery-progress-track{height:8px;border-radius:999px;overflow:hidden;background:color-mix(in srgb,var(--accent-strong,#0a5559) 12%,#e8eef1)}.order-modal__delivery-progress-fill{height:100%;width:0;border-radius:inherit;background:linear-gradient(90deg,color-mix(in srgb,var(--accent-strong,#0a5559) 75%,#1a8a90),var(--accent-strong,#0a5559));animation:order-modal-delivery-progress 10s cubic-bezier(.22,.61,.36,1) forwards}@keyframes order-modal-delivery-progress{0%{width:4%}40%{width:55%}75%{width:82%}to{width:92%}}@media (prefers-reduced-motion:reduce){.order-modal__delivery-progress-fill{width:70%;animation:none}}.order-modal__delivery-details{border:1px solid var(--line,#e0e0e0);border-radius:12px;background:color-mix(in srgb,var(--bg-elevated,#f5f5f5) 55%,#fff);padding:.85rem}.order-modal__delivery-summary{margin:0 0 .65rem;padding:0;font-weight:750;font-size:.95rem;color:var(--text,#243038)}.order-modal__delivery-summary-meta{font-weight:550;color:var(--text-muted,#666)}.order-modal__delivery-panel{display:grid;grid-gap:.65rem;gap:.65rem}.order-modal__address-row{display:flex;gap:.5rem;align-items:flex-end}.order-modal__address-input-field{flex:1 1 auto;min-width:0}.order-modal__address-input-field input{width:100%}.order-modal__address-or{flex:0 0 auto;padding-bottom:.65rem;font-size:.82rem;font-weight:650;color:var(--text-muted,#555);line-height:1}.order-modal__map-pick-field{flex:0 0 auto}.order-modal__map-pick,.order-modal__map-pick-field .order-modal__map-pick{flex:0 0 auto;align-self:stretch;min-height:42px;border:1px solid var(--line,#d0d5d8);border-radius:8px;background:var(--surface-solid,#fff);color:var(--text,#243038);font-size:.84rem;font-weight:650;padding:.45rem .75rem;cursor:pointer;white-space:nowrap}.order-modal__map-pick.is-active{border-color:var(--accent,#0f6e72);background:color-mix(in srgb,var(--accent,#0f6e72) 12%,#fff);color:var(--accent-strong,#0a5559)}.order-modal__delivery-map-skeleton{width:100%;height:440px;border-radius:12px;background:color-mix(in srgb,var(--bg-elevated,#f5f5f5) 80%,#fff);border:1px solid var(--line,#e0e0e0)}.order-modal__delivery-compact{margin:0;font-size:.88rem;line-height:1.45;color:var(--text,#243038)}.order-modal__delivery-facts{display:grid;grid-gap:.45rem;gap:.45rem;margin:0;padding:.75rem .85rem;border-radius:12px;border:1px solid var(--line,#e0e0e0);background:color-mix(in srgb,var(--bg-elevated,#f5f5f5) 70%,#fff)}.order-modal__delivery-facts>div{display:grid;grid-template-columns:8.5rem 1fr;grid-gap:.5rem;gap:.5rem;align-items:baseline}.order-modal__delivery-facts dt{margin:0;font-size:.72rem;font-weight:750;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted,#666)}.order-modal__delivery-facts dd{margin:0;font-size:.88rem;line-height:1.35;color:var(--text,#243038)}.order-modal__form{display:flex;flex-direction:column;gap:.7rem}.order-modal__field{display:flex;flex-direction:column;gap:.3rem}.order-modal__field span{font-size:.82rem;font-weight:650;color:var(--text-muted,#555)}.order-modal__field-error{color:var(--danger,#b71c1c)!important;font-size:.8rem!important;font-weight:600!important}.order-modal__field input,.order-modal__field select{width:100%;min-height:42px;padding:.6rem .85rem;border:1px solid var(--line,#d0d5d8);border-radius:var(--radius-sm,6px);background:var(--surface-solid,#fff);color:var(--text,#243038);font-size:.95rem;outline:none}.order-modal__field input:focus,.order-modal__field select:focus{border-color:var(--accent,#0f6e72)}.order-modal__field input[aria-invalid=true]{border-color:color-mix(in srgb,var(--danger,#f44336) 55%,#d0d5d8)}.order-modal__submit{margin-top:.15rem;min-height:48px;border:0;border-radius:var(--radius-sm,6px);padding:.75rem 1.1rem;background:var(--accent-strong,#0a5559);color:#fff;font-size:.95rem;font-weight:750;cursor:pointer;transition:background .2s ease,opacity .2s ease;display:inline-flex;align-items:center;justify-content:center;text-decoration:none;box-sizing:border-box}.order-modal__submit:hover:not(:disabled){background:var(--accent,#0f6e72)}.order-modal__submit:disabled{opacity:.45;cursor:not-allowed;transform:none}.order-modal__error{padding:.65rem .8rem;border:1px solid color-mix(in srgb,var(--danger,#f44336) 28%,transparent);border-radius:10px;background:color-mix(in srgb,var(--danger,#f44336) 8%,transparent);color:var(--danger,#b71c1c);font-size:.86rem;line-height:1.35}.order-modal__body--success{flex:1 1;display:flex;align-items:center;justify-content:center;padding:1.25rem}.order-modal__success{text-align:center;padding:.5rem;width:100%;max-width:28rem}.order-modal__success p{margin:0 0 .75rem;font-size:1.05rem;line-height:1.45}.order-modal__success-lead{color:var(--text-muted,#555);font-size:.95rem!important}.order-modal__order-id{color:var(--text-muted,#666);font-size:.92rem!important;margin-bottom:1.25rem!important}@media (max-width:640px){.order-modal-overlay{padding:.5rem}.order-modal{width:100%;height:calc(100vh - 1rem);max-height:calc(100vh - 1rem)}.order-modal__item{align-items:flex-start}.order-modal__item-preview{width:4.75rem;height:4.75rem}.order-modal__footer,.order-modal__header,.order-modal__list,.order-modal__summary-bar{padding-left:1rem;padding-right:1rem}.order-modal__summary{flex-direction:column;align-items:flex-start}.order-modal__delivery-facts>div{grid-template-columns:1fr;gap:.15rem}.order-modal__address-row{flex-direction:column;align-items:stretch}.order-modal__address-or{padding-bottom:0;text-align:center}.order-modal__map-pick,.order-modal__map-pick-field .order-modal__map-pick{width:100%}}