.products{grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr))}.product .btn{display:inline-block;margin-top:12px}.product img{object-fit:contain;background:#15191b}.btn,button{cursor:pointer}button.btn{font-family:inherit;color:var(--ink);background:transparent}button.primary{color:#031012;background:var(--teal)}button:disabled{opacity:.5;cursor:not-allowed}.commerce-status{color:var(--muted);line-height:1.7}.commerce-error{color:#ffb6c7}dialog{width:min(920px,94vw);max-height:90dvh;overflow:auto;background:var(--panel);color:var(--ink);border:1px solid var(--teal);padding:28px}dialog::backdrop{background:#000b;backdrop-filter:blur(5px)}.dialog-close{float:right;position:sticky;top:0;z-index:2}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px;clear:both;padding-top:18px}.detail-grid img{width:100%;object-fit:contain}.commerce-form{display:grid;gap:16px}.commerce-form label{display:grid;gap:8px;font-size:14px}.commerce-form input,.commerce-form select,.commerce-form textarea{width:100%;font:inherit;background:#151d20;color:white;border:1px solid #496067;padding:12px;border-radius:0;color-scheme:dark}.commerce-form h3{margin-bottom:0}.cart-row{display:grid;grid-template-columns:70px 1fr auto;gap:18px;align-items:center;border-bottom:1px solid var(--line);padding:20px 0}.cart-row img{width:70px}.cart-row p{margin:8px 0}.cart-controls{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.cart-controls button{min-width:44px;min-height:44px;background:transparent;color:white;border:1px solid #496067}.slots{display:flex;flex-wrap:wrap;gap:8px}.slots button[aria-pressed=true]{background:var(--teal);color:#031012}.slots button{padding:12px;border:1px solid var(--teal);background:transparent;color:white;min-height:44px}.price{font-size:22px;color:var(--teal)}.cart-total{font-size:22px;margin-top:24px}.commerce-description{color:#bac5c8;line-height:1.7}.thumbs{display:flex;gap:8px;overflow:auto}.thumbs button{padding:0;border:1px solid #496067;background:transparent}.thumbs img{width:70px;height:70px;object-fit:contain}.booking-fields{display:grid;gap:16px}.booking-fields legend{padding:12px 0}.booking-fields fieldset{border:0;padding:0;margin:0}.notice{padding:14px;border-left:2px solid var(--pink);background:#182124;line-height:1.6}@media(max-width:680px){.detail-grid{grid-template-columns:1fr}dialog{padding:18px}.cart-row{grid-template-columns:50px 1fr}.cart-row>strong{grid-column:2}}
