:root { color-scheme: light; }

body {
  min-height: 100vh;
  background:
    linear-gradient(180deg, rgba(5, 16, 13, .88) 0, rgba(12, 25, 20, .78) 34%, rgba(14, 28, 22, .84) 100%),
    url('hero-top-sushi-autentico.png') center top / cover fixed;
}

header {
  position: sticky;
  top: 0;
  z-index: 5;
  background: rgba(12, 37, 28, .92);
  border-bottom: 1px solid rgba(255, 255, 255, .13);
  box-shadow: 0 8px 24px rgba(0, 0, 0, .22);
  backdrop-filter: blur(12px);
}

main { padding-top: 42px; }

.hero {
  border: 1px solid rgba(255, 255, 255, .16);
  box-shadow: 0 24px 50px rgba(0, 0, 0, .34);
}

.section {
  padding: 24px;
  border: 1px solid rgba(255, 255, 255, .18);
  border-radius: 22px;
  background: rgba(249, 246, 237, .94);
  box-shadow: 0 16px 34px rgba(0, 0, 0, .18);
}

.section h2 {
  color: #162d22;
  font-size: 1.5rem;
  letter-spacing: -.02em;
}

.card {
  overflow: hidden;
  padding: 14px;
  border-color: rgba(26, 55, 41, .13);
  box-shadow: 0 7px 17px rgba(31, 38, 30, .10);
  transition: transform .18s ease, box-shadow .18s ease;
}

.card:hover { transform: translateY(-3px); box-shadow: 0 13px 23px rgba(31, 38, 30, .17); }
.product-photo { margin: -2px 0 14px; }
.card h3 { color: #172c23; }
.card button, form > button, #saveOptions { box-shadow: 0 5px 12px rgba(167, 7, 83, .22); }

.order {
  border: 1px solid rgba(255, 255, 255, .32);
  background: rgba(255, 253, 248, .96);
  box-shadow: 0 18px 42px rgba(0, 0, 0, .24);
}

@media (max-width: 680px) {
  body { background-attachment: scroll; }
  main { padding-top: 24px; }
  .section { padding: 17px; border-radius: 17px; }
  .card:hover { transform: none; }
}

.order-link {
  display: block;
  padding: 13px 16px;
  border-radius: 10px;
  background: #d9107c;
  color: #fff;
  font-weight: 700;
  text-align: center;
  text-decoration: none;
}
.order-link:hover, .order-link:focus-visible { background: #a8085e; }
.floating-whatsapp {
  position: fixed;
  z-index: 6;
  right: 20px;
  bottom: 20px;
  border-radius: 999px;
  background: #25d366;
  color: #10261a;
  padding: 14px 20px;
  box-shadow: 0 10px 25px #0005;
  font-weight: 800;
  text-decoration: none;
}
.delivery-note { margin: 22px 2px 0; }
@media (max-width: 680px) {
  .floating-whatsapp { right: 12px; bottom: 12px; left: 12px; text-align: center; }
  main { padding-bottom: 95px; }
  .header-order { font-size: .85rem; }
}

.menu-section > h2 {
  color: #fff;
  text-shadow: 0 2px 8px rgba(0, 0, 0, .75);
}
#status{margin:12px 0}.open,.closed{padding:13px 16px;border-radius:10px;font-weight:700}.open{background:#e5f5eb;color:#17623a}.closed{background:#fff0e6;color:#8a370c}#categories{display:flex;gap:8px;overflow-x:auto;padding:0 0 16px;position:sticky;top:0;background:#f7f3e9;z-index:5}#categories a{white-space:nowrap;padding:9px 13px;border-radius:99px;background:#243d2f;color:white;text-decoration:none;font-weight:700;font-size:.9rem}.menu-section{scroll-margin-top:65px;margin:30px 0}.menu-section h2{font-size:1.4rem}.photo-fallback{height:154px;border-radius:10px;background:#ece2d3;color:#87576e;display:grid;place-items:center;font-size:1.3rem;font-weight:800}.card button{margin-top:auto;background:#dc147b;color:white;border:0;border-radius:9px;padding:11px;font:inherit;font-weight:700;cursor:pointer}.card button:disabled{background:#9e9e9e;cursor:not-allowed}.card .price s{color:#8e8e8e;font-size:.82rem;margin-left:5px}.cart-line{border-bottom:1px solid #ded4c7;padding:12px 0;display:flex;align-items:center;justify-content:space-between;gap:12px}.cart-line button{border:0;background:#e6157c;color:white;border-radius:8px;padding:7px 12px;font-size:1.2rem;cursor:pointer}#checkoutTotal,#transferInfo{color:#5c6660;line-height:1.45;margin:12px 0}#checkoutError{color:#a22537}.confirmation{grid-column:1/-1;text-align:center;padding:35px}.confirmation a{display:inline-block;background:#e5147c;color:white;padding:12px 16px;border-radius:10px;text-decoration:none;font-weight:700}.order{scroll-margin-top:80px}@media(max-width:680px){#categories{margin:0 -20px;padding:10px 20px}.cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.card{padding:10px;min-height:0}.product-photo,.photo-fallback{height:115px}.card h3{font-size:.9rem}.card p{font-size:.82rem}.card .price{font-size:1rem}}
.order-chat{position:fixed;right:18px;bottom:72px;z-index:10;font:14px/1.4 system-ui,sans-serif}.order-chat-toggle{border:0;border-radius:999px;background:#172c23;color:#fff;padding:12px 16px;font-weight:700;box-shadow:0 4px 18px #0004;cursor:pointer}.order-chat-panel{width:min(360px,calc(100vw - 28px));height:470px;background:#fff;border-radius:18px;box-shadow:0 12px 42px #0005;overflow:hidden;display:flex;flex-direction:column;margin-bottom:10px}.order-chat-head{display:flex;justify-content:space-between;align-items:center;padding:13px 16px;background:#172c23;color:#fff}.order-chat-head button{border:0;background:none;color:#fff;font-size:25px;cursor:pointer}.order-chat-log{flex:1;overflow:auto;padding:12px;background:#f7f7f4}.order-chat-log p{white-space:pre-line;margin:0 0 10px;padding:9px 11px;border-radius:12px;max-width:88%}.chat-bot{background:#fff;color:#172c23}.chat-customer{background:#df087e;color:#fff;margin-left:auto!important}.order-chat-form{display:flex;gap:7px;padding:10px;border-top:1px solid #ddd}.order-chat-form input{min-width:0;flex:1;border:1px solid #bbb;border-radius:9px;padding:9px}.order-chat-form button{border:0;border-radius:9px;background:#df087e;color:#fff;padding:9px 12px;font-weight:700}@media(max-width:520px){.order-chat{right:10px;bottom:62px}.order-chat-panel{height:58vh}}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.order-chat{position:fixed;right:18px;bottom:76px;z-index:10;font:14px/1.4 system-ui,sans-serif}.order-chat-toggle{border:0;border-radius:999px;background:#172c23;color:#fff;padding:12px 16px;font-weight:700;box-shadow:0 4px 18px #0004;cursor:pointer}.order-chat-panel{width:min(370px,calc(100vw - 28px));height:500px;background:#fff;border-radius:18px;box-shadow:0 12px 42px #0005;overflow:hidden;display:flex;flex-direction:column;margin-bottom:10px}.order-chat-head{display:flex;justify-content:space-between;align-items:center;padding:13px 16px;background:#172c23;color:#fff}.order-chat-head small{display:block;opacity:.78;margin-top:2px}.order-chat-head button{border:0;background:none;color:#fff;font-size:25px;cursor:pointer}.order-chat-quick{display:flex;gap:7px;padding:8px 10px;background:#edf3ed;border-bottom:1px solid #d6e1d6}.order-chat-quick button{border:1px solid #bbcfbe;border-radius:999px;background:#fff;color:#172c23;padding:5px 9px;font:inherit;font-weight:700;cursor:pointer}.order-chat-log{flex:1;overflow:auto;padding:12px;background:#f7f7f4}.order-chat-log p{white-space:pre-line;margin:0 0 10px;padding:9px 11px;border-radius:12px;max-width:88%}.chat-bot{background:#fff;color:#172c23}.chat-customer{background:#df087e;color:#fff;margin-left:auto!important}.order-chat-form{display:flex;gap:7px;padding:10px;border-top:1px solid #ddd}.order-chat-form input{min-width:0;flex:1;border:1px solid #bbb;border-radius:9px;padding:9px}.order-chat-form button{border:0;border-radius:9px;background:#df087e;color:#fff;padding:9px 12px;font-weight:700}@media(max-width:520px){.order-chat{right:10px;bottom:65px}.order-chat-panel{height:62vh}.floating-whatsapp{bottom:12px;right:12px;left:auto;padding:10px 13px;font-size:.82rem}}
