/* DynamiX — order.css (T08) · order.html only · logical properties,tokens only */
.order-hero{padding-block:var(--s-8) var(--s-7);}
.order-hero__lead{max-width:62ch;margin-bottom:var(--s-6);}
.order-progress{margin-bottom:0;position:relative;}
.order-progress li{border:1px solid var(--kx-line);background:#fff;}
.order-progress li[aria-current="step"]{border-color:var(--kx-blue);}
.order-progress .num{font-size:var(--fs-micro);letter-spacing:var(--tracking-label);}
@media (max-width:639px){.order-progress{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch;scroll-snap-type:x proximity;padding-block:2px;}.order-progress::-webkit-scrollbar{display:none;}.order-progress li{flex:0 0 auto;white-space:nowrap;scroll-snap-align:start;}.order-progress:focus-visible{outline:2px solid var(--kx-blue);outline-offset:2px;}}

.order-body{background:var(--kx-surface);padding-block:var(--s-7) var(--s-11);}
.order-card{background:#fff;border:1px solid var(--kx-line);border-radius:var(--r-md);padding:var(--s-6) var(--s-5);box-shadow:var(--sh-1);}
@media (min-width:768px){.order-card{padding:var(--s-8);}}
.order-card legend{display:flex;align-items:center;gap:var(--s-3);}
.order-card legend::after{content:"";inline-size:48px;height:1px;background:var(--kx-blue-line);}
.order-req-note{font-size:var(--fs-small);color:var(--kx-ink-2);margin:0 0 var(--s-5);}
.order-req-note span{color:var(--kx-err);}
.field-row{display:grid;gap:0 var(--s-5);}
@media (min-width:640px){.field-row{grid-template-columns:1fr 1fr;}}
.field-row .field{align-content:start;}
.order-notes{min-height:88px;}
.input[aria-invalid="true"]:focus,.select[aria-invalid="true"]:focus,.textarea[aria-invalid="true"]:focus{border-color:var(--kx-err);outline-color:var(--kx-err);box-shadow:none;}
.field__error{margin:0;font-weight:var(--fw-med);}
.field__hint{margin:0;}

.order-pay-detail{margin:0;padding:var(--s-3) var(--s-4);border-radius:var(--r-sm);background:var(--kx-blue-tint);color:var(--kx-blue-ink);font-weight:var(--fw-bold);font-size:var(--fs-small);border-inline-start:3px solid var(--kx-blue);}

.order-consent{margin-bottom:var(--s-4);}
.order-consent .check{line-height:1.6;color:var(--kx-ink);padding:var(--s-3);border-radius:var(--r-sm);border:1px solid var(--kx-line-2);background:#fff;}
.order-consent .check:hover{border-color:var(--kx-blue-tint-2);background:var(--kx-surface);}
.order-consent .check input{width:24px;height:24px;}
.order-consent .check input:focus-visible{outline:3px solid var(--kx-blue-ink);outline-offset:2px;}
.order-consent:has(input[aria-invalid="true"]) .check{border-color:var(--kx-err);border-width:2px;}
.order-consent__more{margin-block-start:var(--s-1);}
.order-safety{margin:var(--s-5) 0 0;padding-block-start:var(--s-4);border-block-start:1px dashed var(--kx-line-2);}

#pay-error[hidden],.order-demo-note[hidden]{display:none;}
#pay-error{margin-bottom:var(--s-5);}
.order-submit{display:grid;gap:var(--s-4);}
.order-submit .btn[aria-busy="true"]{cursor:progress;opacity:.85;}
.order-demo-note{margin:0;}

/* Summary aside */
.order-summary{background:#fff;box-shadow:var(--sh-2);margin-block-start:var(--s-7);}
@media (min-width:960px){.order-summary{margin-block-start:0;}}
.order-summary h2{font-size:1.375rem;margin-bottom:var(--s-5);}
.order-summary__product{display:flex;gap:var(--s-4);align-items:center;padding-block-end:var(--s-5);border-block-end:1px solid var(--kx-line);}
.order-summary__product img{width:88px;height:88px;object-fit:cover;border-radius:var(--r-md);flex:none;}
.order-summary__sub{font-size:var(--fs-small);color:var(--kx-ink-2);font-weight:var(--fw-med);margin:var(--s-5) 0 var(--s-3);letter-spacing:var(--tracking-label);}
.order-summary__contents{gap:var(--s-2);font-size:var(--fs-small);}
.order-summary__contents li::before{width:20px;height:20px;margin-top:2px;}
.order-summary__rows{margin:var(--s-5) 0 0;padding-block-start:var(--s-3);border-block-start:1px solid var(--kx-line);}
.order-summary__rows dt,.order-mini__list dt{color:var(--kx-ink-2);}
.order-summary__rows dd,.order-mini__list dd{margin:0;text-align:end;font-weight:var(--fw-med);}
.order-summary .summary__total{border-block-start:2px solid var(--kx-ink);margin-block-start:var(--s-2);padding-block-start:var(--s-4);}
.order-summary .summary__total dt{color:var(--kx-ink);}
.order-summary .summary__total small{display:block;font-size:var(--fs-micro);color:var(--kx-ink-2);font-weight:var(--fw-med);}
.order-trust{list-style:none;padding:var(--s-4);margin:var(--s-5) 0;display:grid;gap:var(--s-2);background:var(--kx-warm);border-radius:var(--r-sm);font-size:var(--fs-small);}
.order-trust li{display:flex;gap:var(--s-2);align-items:flex-start;}
.order-trust .icon{color:var(--kx-blue-ink);margin-top:3px;}
.order-summary__help{font-size:var(--fs-small);margin-bottom:var(--s-3);}

/* Mobile mini summary (top) */
.order-mini{background:#fff;border:1px solid var(--kx-line);border-radius:var(--r-md);margin-bottom:var(--s-5);padding:0 var(--s-5);}
.order-mini summary{display:flex;justify-content:space-between;align-items:center;min-height:52px;cursor:pointer;font-weight:var(--fw-bold);list-style:none;}
.order-mini summary::-webkit-details-marker{display:none;}
.order-mini summary::after{content:"";width:10px;height:10px;border-inline-end:2px solid currentColor;border-block-end:2px solid currentColor;transform:rotate(45deg);margin-inline-start:var(--s-3);}
.order-mini[open] summary::after{transform:rotate(-135deg);}
.order-mini summary > span:first-child{flex:1;}
.order-mini summary:focus-visible{outline:3px solid var(--kx-blue-ink);outline-offset:2px;border-radius:var(--r-sm);}
.order-mini__list{margin:0;font-size:var(--fs-small);}
.order-mini > p{padding-block-end:var(--s-4);font-size:var(--fs-small);}
@media (min-width:960px){.order-mini{display:none;}}

/* Mobile submit bar — same form submit via form="order-form" */
.order-bar{position:fixed;inset-inline:0;inset-block-end:0;z-index:var(--z-sticky);display:flex;align-items:center;justify-content:space-between;gap:var(--s-3);padding:var(--s-3) var(--gutter);padding-block-end:max(var(--s-3),env(safe-area-inset-bottom));background:rgba(255,255,255,.97);border-block-start:1px solid var(--kx-line-2);box-shadow:0 -8px 24px -12px rgba(12,17,20,.18);}
.order-bar[hidden]{display:none;}
.order-bar__price{font-weight:var(--fw-black);font-size:1.25rem;line-height:1.2;}
.order-bar__price small{display:block;font-size:var(--fs-micro);font-weight:var(--fw-med);color:var(--kx-ink-2);}
.order-bar .btn{min-height:48px;padding-inline:var(--s-6);}
@media (min-width:960px){.order-bar,.order-bar:not([hidden]){display:none;}}
@media (max-width:959px){#order-form input,#order-form select,#order-form textarea,#order-form button,#order-form summary{scroll-margin-bottom:96px;}}
/* while a form field has focus (mobile keyboard open / tabbing), slide the bar away so it never covers the active field */
@media (max-width:959px){body:has(#order-form:focus-within) .order-bar{transform:translateY(110%);pointer-events:none;}}
@media (max-width:959px) and (prefers-reduced-motion:no-preference){.order-bar{transition:transform var(--t-med) var(--ease);}}

/* Payment demo dialog */
dialog:not([open]){display:none;}
.kx-modal-open{overflow:hidden;}
.pay-demo{border-block-start:4px solid var(--kx-blue) !important;max-height:calc(100vh - 32px);overflow:auto;}
.pay-demo[open]{animation:kx-pop var(--t-med) var(--ease);}
@keyframes kx-pop{from{opacity:0;transform:scale(.96);} to{opacity:1;transform:none;}}
@media (prefers-reduced-motion:reduce){.pay-demo[open]{animation:none;}}
.pay-demo__ornament{width:120px;height:40px;margin:0 auto var(--s-3);display:block;fill:none;stroke:var(--kx-blue-line);stroke-width:1.5;stroke-linecap:round;}
.pay-demo__ornament text{fill:var(--kx-blue-ink);stroke:none;font:var(--fw-bold) 11px var(--kx-font);}
.pay-demo__tag{margin:0 auto var(--s-3);background:#FFF6E5;color:#6B4600;}
.pay-demo h2{font-size:1.5rem;margin-bottom:var(--s-3);}
.pay-demo h2:focus{outline:none;}
.pay-demo h2:focus-visible{outline:3px solid var(--kx-blue-ink);outline-offset:4px;}
.pay-demo p{color:var(--kx-ink-2);font-size:var(--fs-small);}
.pay-demo__list{margin:var(--s-5) 0;padding:var(--s-4);background:var(--kx-surface);border-radius:var(--r-sm);text-align:start;font-size:var(--fs-small);display:grid;gap:var(--s-2);}
.pay-demo__list div{display:flex;justify-content:space-between;gap:var(--s-4);}
.pay-demo__list dt{color:var(--kx-ink-2);flex:none;}
.pay-demo__list dd{margin:0;text-align:end;font-weight:var(--fw-med);}
.pay-demo__actions{display:grid;gap:var(--s-3);}
.pay-demo.is-fallback{position:fixed;inset:0;margin:auto;height:fit-content;z-index:calc(var(--z-modal) + 1);}
.pay-demo-backdrop{position:fixed;inset:0;z-index:var(--z-modal);background:rgba(12,17,20,.48);}
