.a360-shirt-order { border:1px solid #d7dce2; border-radius:8px; margin:1.25rem 0; padding:1.25rem; }
.a360-shirt-order section + section { border-top:1px solid #e3e7eb; margin-top:1.2rem; padding-top:1.2rem; }
.a360-shirt-order h3 { margin:0 0 .35rem; }
.a360-shirt-order section > p { margin:.25rem 0 1rem; }
.a360-size-grid { display:grid; gap:.55rem; max-width:360px; width:100%; }
.a360-size-grid label { align-items:center; display:grid; font-weight:600; gap:1rem; grid-template-columns:minmax(90px,1fr) 110px; margin:0; }
.a360-size-grid label span { line-height:42px; }
.a360-size-grid input { margin:0; text-align:center; width:100%; }
.a360-field { display:flex; flex-direction:column; font-weight:600; gap:.3rem; }
.a360-size-grid input,.a360-field input,.a360-field select { box-sizing:border-box; max-width:100%; min-height:42px; padding:.45rem; }
.a360-color-grid,.a360-upload-grid { display:grid; gap:1rem; grid-template-columns:repeat(auto-fit,minmax(210px,1fr)); margin-top:.8rem; }
.a360-choice { display:block; margin:.55rem 0; }
.a360-art-note { background:#f5f7f9; border-left:4px solid #2271b1; margin:.7rem 0; padding:.7rem .85rem; }
.a360-order-summary { background:#f5f7f9; border-radius:6px; display:flex; flex-wrap:wrap; gap:.5rem 1.25rem; margin-top:1.2rem; padding:.85rem 1rem; }
.a360-minimum-message { color:#b32d2e; flex-basis:100%; }
.a360-estimated-total { font-weight:700; }
[hidden] { display:none !important; }
form.cart:has(.a360-shirt-order) .quantity:not(.a360-shirt-order .quantity),.a360-shirt-order ~ .quantity,.a360-standard-quantity-hidden { display:none !important; }
/* Keep Brizy/WooCommerce product templates from placing the button in a side column. */
form.cart:has(.a360-shirt-order) { display:block !important; grid-template-columns:1fr !important; width:100% !important; }
form.cart:has(.a360-shirt-order) .a360-shirt-order { box-sizing:border-box; clear:both; float:none !important; width:100% !important; }
form.cart:has(.a360-shirt-order) button.single_add_to_cart_button,
form.cart:has(.a360-shirt-order) .single_add_to_cart_button { align-items:center; clear:both; display:inline-flex !important; float:none !important; justify-content:center; margin:1rem 0 0 !important; position:static !important; white-space:nowrap; width:auto !important; }
@media (max-width:520px) { .a360-shirt-order { padding:1rem; } .a360-size-grid label { grid-template-columns:minmax(75px,1fr) minmax(90px,110px); } .a360-color-grid,.a360-upload-grid { grid-template-columns:1fr; } form.cart:has(.a360-shirt-order) button.single_add_to_cart_button,form.cart:has(.a360-shirt-order) .single_add_to_cart_button { width:100% !important; } }
