:root{ --gmd-pink:#ff97cd; --gmd-dark:#0b0b0b; --gmd-panel:#141414; --gmd-border:rgba(255,151,205,.7); }
.gmd-wrap{margin:6px 0 14px}
.gmd-trigger.button{width:100%;text-align:center;font-weight:700}
.gmd-modal{position:fixed;z-index:99999;inset:0;background:rgba(0,0,0,.85);display:none}
.gmd-modal-inner{position:relative;background:var(--gmd-panel);color:#fff;max-width:860px;margin:4vh auto;height:92vh;border-radius:16px;box-shadow:0 10px 30px rgba(0,0,0,.45);padding:16px 16px 100px;overflow:auto;scroll-behavior:smoothpadding-bottom:96px;}
.gmd-close{position:absolute;right:14px;top:10px;background:transparent;border:0;color:#fff;font-size:28px;line-height:1;cursor:pointer}
.gmd-h{font-size:20px;margin:6px 0 14px;color:var(--gmd-pink);text-shadow:0 0 8px rgba(255,151,205,.8)}
.gmd-main{display:flex;gap:14px;align-items:flex-start}
.gmd-main-img img{width:140px;height:140px;object-fit:cover;border-radius:12px}
.gmd-main-title{font-size:18px;font-weight:700;margin-bottom:6px}
.gmd-main-price{font-size:16px;margin-bottom:8px;color:#ddd}
.gmd-apf .gmd-line{margin:2px 0}.gmd-k{opacity:.8;margin-right:6px}.gmd-v{color:#fff}
.gmd-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:14px}
.gmd-card{display:block;background:transparent;border:2px solid rgba(255,151,205,.35);border-radius:14px;padding:10px;text-align:center;cursor:pointer;transition:all .12s ease;position:relative}
.gmd-card-frame{width:100%;aspect-ratio:1/1;border-radius:12px;overflow:hidden;box-shadow:0 0 0 2px rgba(255,151,205,.35), 0 0 18px rgba(255,151,205,.55) inset}
.gmd-card img{width:100%;height:100%;object-fit:cover;display:block}
.gmd-card-title{margin-top:8px;font-weight:700}.gmd-card-price{font-size:13px;opacity:.85}
.gmd-card:hover,.gmd-card.active{border-color:var(--gmd-pink);box-shadow:0 0 12px var(--gmd-pink)}
.gmd-card.active .gmd-card-frame{box-shadow:0 0 0 2px var(--gmd-pink), 0 0 22px var(--gmd-pink) inset}
.gmd-review .gmd-block{background:#0f0f0f;border:1px solid rgba(255,151,205,.25);border-radius:12px;padding:10px;margin-bottom:10px}
.gmd-block-h{font-weight:800;color:var(--gmd-pink);margin-bottom:4px}
.gmd-totals .gmd-line{display:flex;justify-content:space-between;margin-top:4px}.gmd-total .gmd-v{font-weight:900}
.gmd-nav{position:sticky;bottom:0;display:flex;gap:10px;justify-content:space-between;align-items:center;padding:12px 12px;background:rgba(11,11,13,.92);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-top:1px solid rgba(255,151,205,.25);z-index:9999;margin-top:12px;}
.gmd-btn{padding:10px 14px;background:transparent;color:var(--gmd-pink);border:2px solid var(--gmd-pink);border-radius:12px;font-weight:800;text-transform:uppercase;letter-spacing:.03em;cursor:pointer;box-shadow:none}
.gmd-btn[disabled]{opacity:.5;cursor:not-allowed}
@media(max-width:720px){ .gmd-modal-inner{margin:0;height:100vh;max-width:none;border-radius:0;padding-bottom:calc(180px + env(safe-area-inset-bottom));} .gmd-main{flex-direction:column} } .gmd-main{flex-direction:column} }
body.gmd-lock{overflow:hidden}
.gmd-nav{padding-bottom:calc( env(safe-area-inset-bottom) + 0px );}


.gmd-modal-body {
  overflow-y: auto !important;
  padding-bottom: 400px !important; /* large scroll buffer for mobile */
}

.gmd-nav {
  position: relative !important;
  bottom: auto !important;
  background: transparent !important;
  padding-top: 40px !important;
  padding-bottom: 40px !important;
  z-index: 10 !important;
}

.gmd-nav {
  position: sticky !important;
  bottom: 0 !important;
  z-index: 99999 !important;
  background: rgba(0,0,0,0.65) !important;
  padding-top: 20px !important;
  padding-bottom: 20px !important;
}


/* === m5-scrollfix85: keep action buttons visible on mobile === */
.gmd-panel, .gmd-modal {
  max-height: 85vh !important;
  height: auto !important;
}
.gmd-body, .gmd-scrollbox, .gmd-modal, .gmd-modal-content {
  overflow-y: auto !important;
  -webkit-overflow-scrolling: touch !important;
}
.gmd-body, .gmd-scrollbox, .gmd-modal-content {
  padding-bottom: 80px !important;
}
body.gmd-lock, body.gmd-modal-open {
  overflow: hidden !important;
}


/* Price readability */
.gmd-main-price{background:var(--gmd-pink);color:#000;padding:6px 10px;border-radius:12px;font-weight:800;display:inline-block;}
.gmd-card-price{background:var(--gmd-pink);color:#000;padding:6px 10px;border-radius:12px;font-weight:800;display:inline-block;box-shadow:0 6px 18px rgba(0,0,0,.35);}
