body.bsqm-app-page{background:#f5f7fa!important}body.bsqm-app-page footer,body.bsqm-app-page #colophon,body.bsqm-app-page .site-footer,body.bsqm-app-page .wp-block-template-part{display:none!important}.bsqm-app,.bsqm-login-page,.bsqm-front-admin{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}.bsqm-app{--bsqm-accent:#ff6500;background:#f5f7fa;color:#101828;min-height:100vh;width:100vw;margin-left:calc(50% - 50vw);overflow-x:hidden}.bsqm-head{background:#fff}.bsqm-cover{height:210px;background-position:center;background-size:cover;position:relative}.bsqm-cover:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent,#0004)}.bsqm-brand{text-align:center;padding:18px 16px 22px}.bsqm-logo{display:flex;justify-content:center;align-items:center;min-height:85px}.bsqm-logo img{max-width:210px;max-height:115px;width:auto;height:auto;object-fit:contain}.bsqm-brand h1{font-size:28px;margin:8px 0 4px;letter-spacing:-.02em}.bsqm-brand p{margin:0;color:#667085}.bsqm-social{display:flex;justify-content:center;gap:9px;margin-top:14px}.bsqm-social a{width:37px;height:37px;border:1px solid #e4e7ec;border-radius:50%;display:grid;place-items:center;background:#fff;color:#344054;transition:.2s}.bsqm-social a:hover{color:var(--bsqm-accent);border-color:var(--bsqm-accent);transform:translateY(-2px)}.bsqm-social svg{width:18px;height:18px;fill:currentColor;stroke:currentColor;stroke-width:1.3}.bsqm-tools{display:flex;gap:8px;background:#fff;padding:12px max(14px,calc((100vw - 1160px)/2));border-top:1px solid #f0f1f3}.bsqm-search{display:flex;align-items:center;gap:8px;flex:1;background:#f7f8fa;border:1px solid #e4e7ec;border-radius:13px;padding:0 12px}.bsqm-search span{font-size:23px;color:#667085}.bsqm-search input{border:0;background:transparent;outline:0;width:100%;padding:12px 4px;font-size:15px}.bsqm-clear{border:0;background:#fff0ea;color:var(--bsqm-accent);border-radius:11px;padding:0 13px;font-weight:800;cursor:pointer}.bsqm-cats{display:flex;gap:8px;overflow:auto;background:#fff;padding:9px max(14px,calc((100vw - 1160px)/2));position:relative;top:auto;z-index:20;border-bottom:1px solid #eef0f3;scrollbar-width:none}.bsqm-cats::-webkit-scrollbar{display:none}.bsqm-cats a{white-space:nowrap;text-decoration:none;color:#667085;background:#f2f4f7;border-radius:999px;padding:9px 13px;font-size:13px;font-weight:700}.bsqm-cats a.active{background:var(--bsqm-accent);color:#fff}.bsqm-main{max-width:1160px;margin:auto;padding:25px 14px 70px}.bsqm-section{margin-bottom:34px;scroll-margin-top:65px}.bsqm-section-title{display:flex;justify-content:space-between;align-items:end;margin-bottom:12px}.bsqm-section-title h2{font-size:22px;margin:0;letter-spacing:-.02em}.bsqm-section-title span{font-size:12px;color:#98a2b3}.bsqm-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.bsqm-card{min-width:0}.bsqm-card-button{display:block;text-align:left;padding:0;width:100%;border:1px solid #eaecf0;background:#fff;border-radius:18px;overflow:hidden;box-shadow:0 7px 22px #1018280b;cursor:pointer;color:inherit;transition:.2s}.bsqm-card-button:hover{transform:translateY(-2px);box-shadow:0 12px 28px #10182816}.bsqm-pic{aspect-ratio:1/1;background:#fafbfc;position:relative;display:grid;place-items:center;overflow:hidden}.bsqm-pic img{width:100%;height:100%;object-fit:contain;display:block}.bsqm-placeholder{font-size:42px}.bsqm-badge{position:absolute;top:9px;left:9px;z-index:2;padding:5px 8px;border-radius:999px;font-size:9px;font-weight:900;color:#fff;background:var(--bsqm-accent)}.bsqm-badge.featured{left:auto;right:9px;background:#111827}.bsqm-body{padding:13px}.bsqm-card-top{display:flex;justify-content:space-between;gap:8px}.bsqm-card-top h3{font-size:15px;margin:0;line-height:1.25}.bsqm-card-top strong{color:var(--bsqm-accent);white-space:nowrap;font-size:14px}.bsqm-body p{font-size:12px;color:#667085;line-height:1.45;margin:7px 0}.bsqm-meta{display:flex;flex-wrap:wrap;gap:7px;color:#98a2b3;font-size:10px}.bsqm-empty{display:none;text-align:center;padding:60px 20px;color:#667085}.bsqm-modal{display:none;position:fixed;inset:0;z-index:999999}.bsqm-modal.open{display:block}.bsqm-modal-backdrop{position:absolute;inset:0;background:#101828aa;backdrop-filter:blur(4px)}.bsqm-modal-card{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:min(560px,calc(100vw - 24px));max-height:90vh;overflow:auto;background:#fff;border-radius:22px;box-shadow:0 30px 90px #0005}.bsqm-close{position:absolute;right:12px;top:12px;z-index:4;border:0;background:#fff;width:38px;height:38px;border-radius:50%;font-size:26px;box-shadow:0 3px 15px #0002;cursor:pointer}.bsqm-modal-image{height:310px;background:#f8fafc;display:grid;place-items:center}.bsqm-modal-image img{width:100%;height:100%;object-fit:contain}.bsqm-modal-content{padding:20px}.bsqm-modal-title{display:flex;justify-content:space-between;gap:12px}.bsqm-modal-title h2{margin:0;font-size:24px}.bsqm-modal-title strong{color:var(--bsqm-accent);white-space:nowrap}.bsqm-modal-content>p{color:#667085;line-height:1.55}.bsqm-modal-meta{display:flex;gap:8px;flex-wrap:wrap;color:#667085;font-size:12px}.bsqm-modal-block{margin-top:15px}.bsqm-modal-block strong{display:block;margin-bottom:5px}.bsqm-login-page{min-height:100vh;width:100vw;margin-left:calc(50% - 50vw);display:grid;place-items:center;padding:25px;background:radial-gradient(circle at top,#fff7f2,#f5f7fa 55%);box-sizing:border-box}.bsqm-login-card{width:min(430px,100%);background:#fff;border:1px solid #eaecf0;border-radius:24px;padding:32px;box-shadow:0 25px 70px #10182814;text-align:center}.bsqm-login-logo{min-height:90px;display:grid;place-items:center}.bsqm-login-logo img{max-width:220px;max-height:120px;object-fit:contain}.bsqm-login-mark{display:inline-grid;place-items:center;width:55px;height:55px;border-radius:16px;background:var(--bsqm-accent);color:#fff;font-weight:900;margin:12px 0}.bsqm-login-card h1{margin:5px 0;font-size:25px}.bsqm-login-card>p{color:#667085;margin:0 0 22px}.bsqm-login-card label{display:block;text-align:left;font-size:12px;font-weight:800;color:#344054;margin:12px 0}.bsqm-login-card input{display:block;width:100%;box-sizing:border-box;border:1px solid #d0d5dd;border-radius:10px;padding:12px;margin-top:6px}.bsqm-login-card button{width:100%;border:0;background:var(--bsqm-accent);color:#fff;border-radius:10px;padding:13px;font-weight:900;cursor:pointer;margin-top:8px}.bsqm-login-card .msg{color:#b42318;font-size:13px;margin-top:10px}.bsqm-front-admin{min-height:100vh;width:100vw;margin-left:calc(50% - 50vw);background:#f5f7fa;color:#101828}.bsqm-fa-head{height:76px;background:#fff;border-bottom:1px solid #eaecf0;display:flex;justify-content:space-between;align-items:center;padding:0 max(16px,calc((100vw - 1100px)/2))}.bsqm-fa-brand{display:flex;align-items:center;gap:10px}.bsqm-fa-brand img{width:42px;height:42px;object-fit:contain}.bsqm-fa-brand strong,.bsqm-fa-brand span{display:block}.bsqm-fa-brand span{font-size:11px;color:#98a2b3}.bsqm-logout{border:1px solid #d0d5dd;background:#fff;border-radius:9px;padding:8px 12px;cursor:pointer;font-weight:700}.bsqm-fa-tabs{display:flex;gap:5px;background:#fff;padding:8px max(16px,calc((100vw - 1100px)/2));border-bottom:1px solid #eaecf0}.bsqm-fa-tabs button{border:0;background:transparent;padding:10px 14px;border-radius:9px;font-weight:800;color:#667085}.bsqm-fa-tabs button.active{background:#fff0ea;color:var(--bsqm-accent)}.bsqm-fa-content{max-width:1100px;margin:auto;padding:24px 16px}.bsqm-fa-tab{display:none}.bsqm-fa-tab.active{display:block}.fa-title{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:18px}.fa-title h2{margin:0}.fa-title p{margin:5px 0;color:#667085}.fa-primary{border:0;background:var(--bsqm-accent);color:#fff;border-radius:10px;padding:11px 15px;font-weight:900}.fa-products{display:grid;gap:10px}.fa-product{background:#fff;border:1px solid #eaecf0;border-radius:14px;padding:10px;display:flex;align-items:center;gap:12px}.fa-product-img{width:66px;height:66px;border-radius:10px;background:#f8fafc;display:grid;place-items:center;overflow:hidden}.fa-product-img img{width:100%;height:100%;object-fit:contain}.fa-product-info{flex:1}.fa-product-info strong,.fa-product-info span,.fa-product-info b{display:block}.fa-product-info span{color:#98a2b3;font-size:12px;margin:3px 0}.fa-product-info b{color:var(--bsqm-accent);font-size:13px}.fa-product-actions button{border:0;background:transparent;font-weight:800;margin-left:7px}.fa-edit{color:#175cd3}.fa-delete,.fa-cat-del{color:#b42318}.fa-addcat{display:flex;gap:10px;background:#fff;border:1px solid #eaecf0;padding:15px;border-radius:14px}.fa-addcat input{flex:1;border:1px solid #d0d5dd;border-radius:9px;padding:11px}.fa-cat-list{display:grid;gap:9px;margin-top:14px}.fa-cat-list>div{background:#fff;border:1px solid #eaecf0;border-radius:12px;padding:13px;display:flex;justify-content:space-between}.fa-cat-del{border:0;background:#fff0ee;border-radius:8px;padding:6px 9px}.fa-settings{display:grid;gap:14px}.fa-setting-card{background:#fff;border:1px solid #eaecf0;border-radius:15px;padding:18px}.fa-setting-card h3{margin:0 0 12px}.fa-setting-card label{display:block;font-size:12px;font-weight:800;margin:10px 0}.fa-setting-card input{display:block;width:100%;box-sizing:border-box;margin-top:5px;border:1px solid #d0d5dd;border-radius:9px;padding:11px}.fa-setting-card input[type=color]{width:70px;height:42px;padding:3px}.fa-media-row{display:grid;grid-template-columns:130px 1fr;gap:10px;align-items:center;margin:12px 0}.fa-media-preview{height:110px;width:130px;background:#f8fafc;border:1px dashed #d0d5dd;border-radius:10px;display:grid;place-items:center;overflow:hidden}.fa-media-preview.wide{grid-column:1/-1;width:100%;height:130px}.fa-media-preview img{max-width:100%;max-height:100%;object-fit:contain}.fa-secondary{border:1px solid #d0d5dd;background:#fff;border-radius:9px;padding:10px;font-weight:800}.fa-save-settings{border:0;background:var(--bsqm-accent);color:#fff;border-radius:10px;padding:13px 18px;font-weight:900}.fa-save-msg{font-weight:800}@media(min-width:800px){.bsqm-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(min-width:1100px){.bsqm-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(max-width:600px){.bsqm-cover{height:160px}.bsqm-brand h1{font-size:23px}.bsqm-main{padding:20px 10px 60px}.bsqm-grid{gap:9px}.bsqm-card-button{border-radius:14px}.bsqm-body{padding:10px}.bsqm-card-top h3{font-size:13px}.bsqm-card-top strong{font-size:12px}.bsqm-modal-image{height:250px}.bsqm-login-card{padding:24px}.fa-title{align-items:flex-start;flex-direction:column}.fa-primary{width:100%}.fa-product-actions{display:flex;flex-direction:column}.bsqm-fa-tabs{overflow:auto}.bsqm-fa-tabs button{white-space:nowrap}.fa-media-row{grid-template-columns:100px 1fr}.fa-media-preview{width:100px}}

body.bsqm-app-page .site-header,body.bsqm-app-page .site-footer,body.bsqm-app-page #colophon{display:none!important}
body.bsqm-app-page .site-main,body.bsqm-app-page .content-area,body.bsqm-app-page .entry-content{margin:0!important;padding:0!important;max-width:none!important}
.bsqm-fa-modal{display:none;position:fixed;inset:0;z-index:1000000}.bsqm-fa-modal.open{display:block}.bsqm-fa-modal-backdrop{position:absolute;inset:0;background:rgba(16,24,40,.72);backdrop-filter:blur(5px)}.bsqm-fa-modal-panel{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:min(720px,calc(100vw - 18px));max-height:94vh;overflow:auto;background:#fff;border-radius:22px;box-shadow:0 30px 90px rgba(0,0,0,.28)}.bsqm-fa-modal-head{display:flex;justify-content:space-between;align-items:center;padding:20px 22px;border-bottom:1px solid #eaecf0;position:sticky;top:0;background:#fff;z-index:2}.bsqm-fa-modal-head h2{margin:4px 0 0;font-size:22px}.fa-eyebrow{font-size:10px;font-weight:900;letter-spacing:.12em;color:var(--bsqm-accent)}.fa-modal-close{border:0;background:#f2f4f7;width:36px;height:36px;border-radius:50%;font-size:25px;cursor:pointer}.fa-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px;padding:20px 22px 0}.fa-form-grid label{font-size:12px;font-weight:800;color:#344054}.fa-form-grid label.full{grid-column:1/-1}.fa-form-grid input,.fa-form-grid select,.fa-form-grid textarea{display:block;width:100%;box-sizing:border-box;margin-top:6px;border:1px solid #d0d5dd;border-radius:10px;padding:11px;font:inherit;background:#fff}.fa-form-grid textarea{min-height:82px;resize:vertical}.fa-image-editor{margin:16px 22px 0;padding:13px;border:1px solid #eaecf0;border-radius:14px;background:#fafbfc;display:grid;grid-template-columns:110px 1fr;gap:14px;align-items:center}.fa-image-preview{width:108px;height:108px;border:1px dashed #d0d5dd;border-radius:12px;background:#fff;display:grid;place-items:center;overflow:hidden;color:#98a2b3;font-size:12px;text-align:center}.fa-image-preview img{width:100%;height:100%;object-fit:contain}.fa-media-button{border:1px solid #d0d5dd;background:#fff;border-radius:9px;padding:10px 13px;font-weight:800;cursor:pointer}.fa-image-editor p{margin:7px 0 0;color:#98a2b3;font-size:11px}.fa-checks{display:flex;flex-wrap:wrap;gap:15px;padding:17px 22px}.fa-checks label{font-size:12px;font-weight:800}.fa-modal-footer{display:flex;align-items:center;gap:12px;padding:15px 22px;border-top:1px solid #eaecf0;background:#fff;position:sticky;bottom:0}.fa-modal-footer #fa-product-msg{margin-right:auto;color:#b42318;font-size:12px;font-weight:800}.fa-modal-footer .fa-primary{border:0;background:var(--bsqm-accent);color:#fff;border-radius:10px;padding:11px 16px;font-weight:900;cursor:pointer}@media(max-width:600px){.bsqm-fa-modal-panel{width:calc(100vw - 10px);max-height:97vh;border-radius:17px}.fa-form-grid{grid-template-columns:1fr;padding:16px}.fa-form-grid label.full{grid-column:auto}.fa-image-editor{margin:0 16px;grid-template-columns:90px 1fr}.fa-image-preview{width:88px;height:88px}.fa-checks{padding:15px 16px}.fa-modal-footer{padding:13px 16px}}

body.bsqm-modal-open{overflow:hidden}.fa-media-actions{display:flex;gap:8px;flex-wrap:wrap}.fa-upload-status{display:block;width:100%;font-size:11px;color:#667085;font-weight:700}.bsqm-card{cursor:pointer}


/* 3.1.9 - Kategori doğal akışta, ürün popup kapatma daha belirgin */
.bsqm-cats{position:relative!important;top:auto!important;z-index:20!important;}
.bsqm-close{display:flex!important;align-items:center;justify-content:center;gap:5px;width:auto!important;min-width:42px;height:42px!important;padding:0 11px!important;border:2px solid #e4e7ec!important;background:#fff!important;color:#101828!important;font-size:15px!important;font-weight:900!important;box-shadow:0 6px 18px rgba(16,24,40,.18)!important;}
.bsqm-close span{font-size:27px;line-height:1;font-weight:500;}
.bsqm-close b{font-size:12px;}
.bsqm-modal-card{z-index:2;}
@media(max-width:600px){.bsqm-cats{padding:9px 12px!important;box-shadow:none!important;border-top:1px solid #eef0f3!important;}.bsqm-main{padding-top:20px!important;}.bsqm-close{right:10px!important;top:10px!important;min-width:44px!important;height:44px!important;padding:0 10px!important;}.bsqm-modal-card{width:calc(100vw - 12px)!important;max-height:92vh!important;border-radius:18px!important;}}


/* 3.2.0 - QR menü üst bölümünün normal sayfa akışında kalması ve marka ikonları */
.bsqm-app .bsqm-head,
.bsqm-app .bsqm-brand,
.bsqm-app .bsqm-logo,
.bsqm-app .bsqm-cats {
  position: static !important;
  top: auto !important;
  bottom: auto !important;
  left: auto !important;
  right: auto !important;
  transform: none !important;
}
.bsqm-app .bsqm-head { z-index: auto !important; }
.bsqm-app .bsqm-cats { z-index: 1 !important; }
.bsqm-section { scroll-margin-top: 0 !important; }
.bsqm-social a,
.bsqm-social a:hover,
.bsqm-social a:focus,
.bsqm-social a:active {
  text-decoration: none !important;
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease !important;
}
.bsqm-social a svg {
  width: 19px !important;
  height: 19px !important;
  display: block !important;
}
.bsqm-social .bsqm-social-instagram { color: #E4405F !important; border-color: #E4405F !important; }
.bsqm-social .bsqm-social-facebook { color: #1877F2 !important; border-color: #1877F2 !important; }
.bsqm-social .bsqm-social-tiktok { color: #111111 !important; border-color: #111111 !important; }
.bsqm-social .bsqm-social-youtube { color: #FF0000 !important; border-color: #FF0000 !important; }
.bsqm-social .bsqm-social-whatsapp { color: #25D366 !important; border-color: #25D366 !important; }
.bsqm-social .bsqm-social-instagram:hover,
.bsqm-social .bsqm-social-instagram:focus-visible { background: #fff !important; color: #E4405F !important; box-shadow: 0 5px 18px rgba(228,64,95,.25) !important; transform: translateY(-2px); }
.bsqm-social .bsqm-social-facebook:hover,
.bsqm-social .bsqm-social-facebook:focus-visible { background: #fff !important; color: #1877F2 !important; box-shadow: 0 5px 18px rgba(24,119,242,.25) !important; transform: translateY(-2px); }
.bsqm-social .bsqm-social-tiktok:hover,
.bsqm-social .bsqm-social-tiktok:focus-visible { background: #fff !important; color: #111 !important; box-shadow: 0 5px 18px rgba(17,17,17,.2) !important; transform: translateY(-2px); }
.bsqm-social .bsqm-social-youtube:hover,
.bsqm-social .bsqm-social-youtube:focus-visible { background: #fff !important; color: #FF0000 !important; box-shadow: 0 5px 18px rgba(255,0,0,.22) !important; transform: translateY(-2px); }
.bsqm-social .bsqm-social-whatsapp:hover,
.bsqm-social .bsqm-social-whatsapp:focus-visible { background: #fff !important; color: #25D366 !important; box-shadow: 0 5px 18px rgba(37,211,102,.25) !important; transform: translateY(-2px); }
.bsqm-social a:hover svg,
.bsqm-social a:focus-visible svg { fill: currentColor !important; stroke: currentColor !important; }
@media (max-width:600px) {
  .bsqm-head, .bsqm-brand, .bsqm-cats { position: static !important; }
  .bsqm-cats { overflow-x: auto !important; overflow-y: hidden !important; }
  .bsqm-social a { flex: 0 0 37px; }
}

/* 3.2.2 - QR menu upper area must scroll naturally; never sticky/fixed */
html body.bsqm-app-page .bsqm-app,
html body.bsqm-app-page .bsqm-app .bsqm-head,
html body.bsqm-app-page .bsqm-app .bsqm-cover,
html body.bsqm-app-page .bsqm-app .bsqm-brand,
html body.bsqm-app-page .bsqm-app .bsqm-tools,
html body.bsqm-app-page .bsqm-app .bsqm-cats {
  position: static !important;
  top: auto !important;
  bottom: auto !important;
  left: auto !important;
  right: auto !important;
  transform: none !important;
}
html body.bsqm-app-page .bsqm-app .bsqm-head,
html body.bsqm-app-page .bsqm-app .bsqm-brand,
html body.bsqm-app-page .bsqm-app .bsqm-tools,
html body.bsqm-app-page .bsqm-app .bsqm-cats {
  float: none !important;
}
html body.bsqm-app-page .bsqm-app .bsqm-cats {
  z-index: auto !important;
}
/* Keep social brand colors on hover/focus too */
html body.bsqm-app-page .bsqm-social a:hover,
html body.bsqm-app-page .bsqm-social a:focus,
html body.bsqm-app-page .bsqm-social a:active { transform: translateY(-2px) !important; }


/* 3.2.2 - QR menu must use the document/page scroll, never an internal sticky container */
html body.bsqm-app-page,
html body.bsqm-app-page #page,
html body.bsqm-app-page .site,
html body.bsqm-app-page .site-content,
html body.bsqm-app-page .site-main,
html body.bsqm-app-page .content-area,
html body.bsqm-app-page article,
html body.bsqm-app-page .entry-content,
html body.bsqm-app-page .elementor,
html body.bsqm-app-page .elementor-section,
html body.bsqm-app-page .elementor-container,
html body.bsqm-app-page .elementor-column,
html body.bsqm-app-page .elementor-widget-wrap,
html body.bsqm-app-page .bsqm-app {
  overflow-y: visible !important;
  overflow-x: visible !important;
  height: auto !important;
  max-height: none !important;
}
html body.bsqm-app-page .bsqm-app {
  position: static !important;
  display: block !important;
  min-height: 0 !important;
}
html body.bsqm-app-page .bsqm-head,
html body.bsqm-app-page .bsqm-cover,
html body.bsqm-app-page .bsqm-brand,
html body.bsqm-app-page .bsqm-logo,
html body.bsqm-app-page .bsqm-social,
html body.bsqm-app-page .bsqm-tools,
html body.bsqm-app-page .bsqm-cats {
  position: static !important;
  inset: auto !important;
  transform: none !important;
  float: none !important;
}
html body.bsqm-app-page .bsqm-cats {
  width: 100% !important;
  max-width: none !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
}
.bsqm-menu-footer {
  width: 100%;
  box-sizing: border-box;
  background: #fff;
  border-top: 1px solid #eaecf0;
  margin-top: 10px;
  padding: 26px 18px 34px;
  text-align: center;
}
.bsqm-menu-footer-inner {
  max-width: 900px;
  margin: 0 auto;
  color: #667085;
  font-size: 14px;
  line-height: 1.7;
  white-space: normal;
}
@media(max-width:600px){
  .bsqm-menu-footer { padding: 22px 15px 30px; }
  .bsqm-menu-footer-inner { font-size: 13px; }
}


/* 3.2.4 - Final page-scroll lockout: the QR menu must never create its own scroll box. */
html.bsqm-app-page,
html.bsqm-app-page body,
html.bsqm-app-page #page,
html.bsqm-app-page .site,
html.bsqm-app-page .site-content,
html.bsqm-app-page .site-main,
html.bsqm-app-page .content-area,
html.bsqm-app-page article,
html.bsqm-app-page .entry-content,
html.bsqm-app-page .elementor,
html.bsqm-app-page .elementor-section,
html.bsqm-app-page .elementor-container,
html.bsqm-app-page .elementor-column,
html.bsqm-app-page .elementor-widget-wrap,
html.bsqm-app-page .bsqm-app {
  position: static !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  overflow-y: visible !important;
}
html.bsqm-app-page { overflow-y: auto !important; }
html.bsqm-app-page body { overflow-y: auto !important; overflow-x: hidden !important; }
html.bsqm-app-page .bsqm-head,
html.bsqm-app-page .bsqm-brand,
html.bsqm-app-page .bsqm-social,
html.bsqm-app-page .bsqm-tools,
html.bsqm-app-page .bsqm-cats { position: static !important; inset: auto !important; transform: none !important; }
html.bsqm-app-page .bsqm-cats { overflow-x: auto !important; overflow-y: hidden !important; }

/* Clearly visible, editable menu footer. */
.bsqm-menu-footer { display:block !important; position:static !important; clear:both !important; }
.bsqm-menu-footer-inner { display:block !important; }


/* 3.2.5 - SAFE NATURAL PAGE FLOW: no fixed/sticky/JS ancestor manipulation */
.bsqm-app{position:relative!important;top:auto!important;left:auto!important;right:auto!important;bottom:auto!important;transform:none!important;height:auto!important;max-height:none!important;min-height:100vh!important;overflow:visible!important;}
.bsqm-app .bsqm-head,.bsqm-app .bsqm-brand,.bsqm-app .bsqm-logo,.bsqm-app .bsqm-social,.bsqm-app .bsqm-tools,.bsqm-app .bsqm-cats{position:relative!important;top:auto!important;left:auto!important;right:auto!important;bottom:auto!important;transform:none!important;}
.bsqm-app .bsqm-head{height:auto!important;overflow:visible!important;}
.bsqm-app .bsqm-cats{position:relative!important;top:auto!important;bottom:auto!important;z-index:2!important;}
.bsqm-app .bsqm-main{position:relative!important;height:auto!important;max-height:none!important;overflow:visible!important;}
.bsqm-menu-footer{padding:32px 16px 45px;text-align:center;background:#fff;border-top:1px solid #eaecf0;}
.bsqm-menu-footer-inner{max-width:900px;margin:0 auto;color:#667085;font-size:14px;line-height:1.7;white-space:normal;}
body.bsqm-app-page,body.bsqm-app-page .site,body.bsqm-app-page .site-content,body.bsqm-app-page .site-main,body.bsqm-app-page .content-area,body.bsqm-app-page .entry-content{overflow:visible!important;height:auto!important;max-height:none!important;}
@media(max-width:600px){.bsqm-app{width:100%!important;margin-left:0!important;margin-right:0!important;}.bsqm-menu-footer{padding:26px 14px 38px}.bsqm-menu-footer-inner{font-size:13px;}}


/* 3.2.7 FINAL: normal document scroll + sticky category bar + visible menu footer */
html:has(body.bsqm-app-page),
html:has(body.bsqm-app-page) body { overflow-y:auto !important; height:auto !important; max-height:none !important; }
body.bsqm-app-page { overflow-y:auto !important; height:auto !important; max-height:none !important; }
body.bsqm-app-page .bsqm-app,
body.bsqm-app-page .bsqm-head,
body.bsqm-app-page .bsqm-brand,
body.bsqm-app-page .bsqm-tools,
body.bsqm-app-page .bsqm-main { height:auto !important; max-height:none !important; overflow:visible !important; }
body.bsqm-app-page .bsqm-cats {
  position:sticky !important;
  position:-webkit-sticky !important;
  top:var(--bsqm-sticky-top,0px) !important;
  bottom:auto !important;
  z-index:9990 !important;
  overflow-x:auto !important;
  overflow-y:hidden !important;
  transform:none !important;
  width:100% !important;
  box-sizing:border-box !important;
}
/* Theme footer hiding must not hide our QR menu footer. */
body.bsqm-app-page footer.bsqm-menu-footer,
body.bsqm-app-page .bsqm-menu-footer { display:block !important; visibility:visible !important; position:static !important; clear:both !important; }
body.bsqm-app-page .bsqm-menu-footer-inner { display:block !important; visibility:visible !important; }
/* Strong, unmistakable product popup close control. */
body.bsqm-app-page .bsqm-close { display:flex !important; align-items:center !important; justify-content:center !important; gap:5px !important; min-width:76px !important; height:42px !important; padding:0 12px !important; border:2px solid #ff6500 !important; background:#fff !important; color:#111827 !important; font-weight:900 !important; z-index:10 !important; }
body.bsqm-app-page .bsqm-close span { font-size:25px !important; line-height:1 !important; }
body.bsqm-app-page .bsqm-modal { z-index:1000000 !important; }
@media(max-width:600px){
  body.bsqm-app-page .bsqm-cats { top:var(--bsqm-sticky-top,0px) !important; padding-left:12px !important; padding-right:12px !important; }
  body.bsqm-app-page .bsqm-close { right:9px !important; top:9px !important; min-width:74px !important; height:44px !important; }
}

/* 3.2.8 - Reliable sticky categories and independent menu footer */
html body.bsqm-app-page .bsqm-app { overflow: visible !important; }
html body.bsqm-app-page .bsqm-head,
html body.bsqm-app-page .bsqm-tools,
html body.bsqm-app-page .bsqm-main { overflow: visible !important; }
html body.bsqm-app-page .bsqm-cats-fixed {
  position: fixed !important;
  left: 0 !important;
  top: var(--bsqm-sticky-top,0px) !important;
  width: 100vw !important;
  z-index: 99990 !important;
  box-sizing: border-box !important;
  box-shadow: 0 5px 18px rgba(16,24,40,.10) !important;
}
.bsqm-cats-placeholder { display:block !important; width:100% !important; }
.bsqm-menu-footer { display:block !important; position:static !important; clear:both !important; visibility:visible !important; }
.bsqm-menu-footer-inner { display:block !important; visibility:visible !important; }
.fa-menu-footer-card textarea[name="menu_footer"] { min-height:120px !important; display:block !important; width:100% !important; box-sizing:border-box !important; }
.fa-footer-msg { display:inline-block; margin-left:10px; font-weight:800; font-size:12px; }
@media(max-width:600px){ .bsqm-cats-fixed{left:0!important;width:100vw!important;} }

/* 3.2.9 - Elementor/Kadence shortcode-safe sticky category */
.bsqm-app .bsqm-cats-fixed {
  position: fixed !important;
  left: 0 !important;
  top: var(--bsqm-sticky-top,0px) !important;
  width: 100vw !important;
  z-index: 99990 !important;
  box-sizing: border-box !important;
  box-shadow: 0 5px 18px rgba(16,24,40,.10) !important;
}
.bsqm-app .bsqm-cats-placeholder { display:block !important; width:100% !important; }
.bsqm-app .bsqm-menu-footer { display:block !important; visibility:visible !important; position:static !important; clear:both !important; }
@media(max-width:600px){.bsqm-app .bsqm-cats-fixed{left:0!important;width:100vw!important;}}

/* 3.3.2 - Logo rendering reliability + final category behavior. The nav is reparented to body when fixed,
   so Elementor/Kadence overflow/transform ancestors cannot break it. */
.bsqm-cats-placeholder{display:block!important;width:100%!important;min-height:1px!important;visibility:hidden!important;}
.bsqm-cats-fixed{position:fixed!important;left:0!important;right:auto!important;width:100vw!important;top:var(--bsqm-sticky-top,0px)!important;bottom:auto!important;z-index:999999!important;box-sizing:border-box!important;}
.bsqm-cats-fixed .bsqm-cats-inner{max-width:none!important;}
.bsqm-menu-footer{display:block!important;visibility:visible!important;position:static!important;clear:both!important;}
@media(max-width:600px){.bsqm-cats-fixed{width:100vw!important;left:0!important;right:auto!important;}}

/* 3.3.2 - Never hide the selected restaurant logo; render the attachment URL directly. */
.bsqm-logo{display:flex!important;align-items:center;justify-content:center;width:100%;margin:0 auto 12px;}
.bsqm-logo img{display:block!important;width:auto!important;height:auto!important;max-width:min(240px,80vw)!important;max-height:120px!important;object-fit:contain!important;opacity:1!important;visibility:visible!important;}
/* 3.3.2 - Robust sticky category clone. The original category stays in flow;
   the clone is attached directly to body so Elementor/Kadence ancestors cannot affect it. */
.bsqm-cats-sticky-clone{
  position:fixed!important;
  left:0;
  top:0;
  width:100%;
  z-index:2147483000!important;
  display:none;
  margin:0!important;
  box-sizing:border-box!important;
  background:#fff!important;
  box-shadow:0 5px 18px rgba(16,24,40,.10)!important;
  transform:none!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
}
.bsqm-cats-sticky-clone a{white-space:nowrap!important;}

/* 3.3.3 FINAL: stable mobile product image sizing and body-level sticky category clone */
.bsqm-modal-card{box-sizing:border-box!important;max-height:92vh!important;overflow-y:auto!important;overflow-x:hidden!important;}
.bsqm-modal-image{height:clamp(230px,58vw,360px)!important;min-height:230px!important;max-height:360px!important;display:flex!important;align-items:center!important;justify-content:center!important;overflow:hidden!important;background:#f8fafc!important;}
.bsqm-modal-image img{display:block!important;width:100%!important;height:100%!important;max-width:100%!important;max-height:100%!important;object-fit:contain!important;object-position:center!important;margin:0!important;padding:0!important;}
.bsqm-modal-content{position:relative!important;background:#fff!important;z-index:1!important;}
.bsqm-cats{position:relative!important;top:auto!important;bottom:auto!important;}
.bsqm-cats-sticky-clone{display:none;position:fixed!important;top:var(--bsqm-sticky-top,0px)!important;left:0!important;right:auto!important;width:100vw!important;z-index:2147483000!important;box-sizing:border-box!important;background:#fff!important;border-bottom:1px solid #eef0f3!important;box-shadow:0 5px 18px rgba(16,24,40,.10)!important;overflow-x:auto!important;overflow-y:hidden!important;transform:none!important;margin:0!important;padding:9px max(14px,calc((100vw - 1160px)/2))!important;scrollbar-width:none!important;}
.bsqm-cats-sticky-clone::-webkit-scrollbar{display:none!important;}
.bsqm-cats-sticky-clone a{white-space:nowrap!important;}
.fa-remove-media{border:1px solid #f04438!important;background:#fff!important;color:#b42318!important;border-radius:9px!important;padding:10px!important;font-weight:800!important;margin-left:6px!important;cursor:pointer!important;}
@media(max-width:600px){
 .bsqm-modal-card{width:calc(100vw - 20px)!important;max-height:92vh!important;border-radius:18px!important;}
 .bsqm-modal-image{height:clamp(220px,62vw,300px)!important;min-height:220px!important;max-height:300px!important;}
 .bsqm-modal-content{padding:16px!important;}
 .fa-remove-media{margin-left:0!important;margin-top:6px!important;width:100%!important;}
}

/* 3.3.4 FINAL: category follows logo/brand naturally; no sticky/fixed/clone behavior. */
html body.bsqm-app-page .bsqm-cats,
.bsqm-app .bsqm-cats,
html body .bsqm-cats {
  position: relative !important;
  top: auto !important;
  bottom: auto !important;
  left: auto !important;
  right: auto !important;
  width: auto !important;
  z-index: 20 !important;
  transform: none !important;
  margin: 0 !important;
}
.bsqm-cats-sticky-clone,
.bsqm-cats-fixed,
.bsqm-cats-placeholder {
  display: none !important;
}
/* Keep product detail popup fully functional and visible when opened. */
.bsqm-modal { display:none !important; }
.bsqm-modal.open { display:block !important; }
.bsqm-modal-card {
  width: min(560px, calc(100vw - 20px)) !important;
  max-height: 92vh !important;
  overflow-y: auto !important;
  overflow-x: hidden !important;
}
.bsqm-modal-image {
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  overflow:hidden !important;
  background:#f8fafc !important;
}
.bsqm-modal-image img {
  width:100% !important; height:100% !important;
  max-width:100% !important; max-height:100% !important;
  object-fit:contain !important; object-position:center !important;
}

/* 3.3.5 - kategori çubuğu yalnızca yatay kayar; sayfa içinde sabitlenmez. */
html body.bsqm-app-page .bsqm-cats,
html body .bsqm-app .bsqm-cats,
html body .bsqm-cats {
  position: relative !important;
  top: auto !important; right: auto !important; bottom: auto !important; left: auto !important;
  transform: none !important;
  float: none !important;
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  white-space: nowrap !important;
  -webkit-overflow-scrolling: touch !important;
  scrollbar-width: none !important;
  z-index: 2 !important;
}
html body .bsqm-cats::-webkit-scrollbar { display:none !important; }
html body .bsqm-cats > * { flex: 0 0 auto !important; }
html body .bsqm-cats-sticky-clone,
html body .bsqm-cats-fixed,
html body .bsqm-cats-placeholder { display:none !important; }

/* 3.3.7 - QR menu MUST use the document scroll, never an inner .bsqm-app scroll container. */
html body .bsqm-app { overflow-x: clip !important; overflow-y: visible !important; height: auto !important; max-height: none !important; }
html body .bsqm-cats { position: relative !important; top: auto !important; bottom: auto !important; left: auto !important; right: auto !important; transform: none !important; }
html body .bsqm-cats { display:flex !important; overflow-x:auto !important; overflow-y:hidden !important; touch-action:auto !important; -webkit-overflow-scrolling:touch !important; }


/* 3.4.0 STABLE: QR menu is portaled to BODY so Elementor/Kadence cannot create an inner scroll box. */
html body.bsqm-app-page,
html body.bsqm-app-page #page,
html body.bsqm-app-page .site,
html body.bsqm-app-page .site-content,
html body.bsqm-app-page .site-main,
html body.bsqm-app-page .content-area,
html body.bsqm-app-page article,
html body.bsqm-app-page .entry-content {
  overflow: visible !important;
  height: auto !important;
  max-height: none !important;
}
html body.bsqm-app-page { overflow-x:hidden !important; overflow-y:auto !important; }
html body.bsqm-app-page .bsqm-app {
  position: relative !important;
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: visible !important;
  transform: none !important;
}
html body.bsqm-app-page .bsqm-app .bsqm-head,
html body.bsqm-app-page .bsqm-app .bsqm-brand,
html body.bsqm-app-page .bsqm-app .bsqm-tools { position: relative !important; overflow: visible !important; height:auto !important; max-height:none !important; }
html body.bsqm-app-page .bsqm-app .bsqm-cats {
  position: sticky !important;
  top: 0 !important;
  z-index: 99990 !important;
  display:flex !important;
  flex-wrap:nowrap !important;
  width:100% !important;
  box-sizing:border-box !important;
  overflow-x:auto !important;
  overflow-y:hidden !important;
  white-space:nowrap !important;
  -webkit-overflow-scrolling:touch !important;
  touch-action:pan-x !important;
  scrollbar-width:none !important;
  background:#fff !important;
}
html body.bsqm-app-page .bsqm-app .bsqm-cats::-webkit-scrollbar { display:none !important; }
html body.bsqm-app-page .bsqm-app .bsqm-cats > a { flex:0 0 auto !important; }
html body.bsqm-app-page .bsqm-app .bsqm-main { height:auto !important; max-height:none !important; overflow:visible !important; }
html body.bsqm-app-page .bsqm-app .bsqm-section { scroll-margin-top:70px !important; }

/* 3.4.1 FINAL DESIGN OVERRIDES
   Normal page flow + compact sticky bar on scroll. */
html body.bsqm-app-page,
html body.bsqm-app-page #page,
html body.bsqm-app-page .site,
html body.bsqm-app-page .site-content,
html body.bsqm-app-page .site-main,
html body.bsqm-app-page .content-area,
html body.bsqm-app-page article,
html body.bsqm-app-page .entry-content,
html body.bsqm-app-page .elementor,
html body.bsqm-app-page .elementor-section,
html body.bsqm-app-page .elementor-container,
html body.bsqm-app-page .elementor-column,
html body.bsqm-app-page .elementor-widget-wrap,
html body.bsqm-app-page .bsqm-app {
  height:auto !important; min-height:0 !important; max-height:none !important;
  overflow:visible !important;
}
html body.bsqm-app-page { overflow-y:auto !important; overflow-x:hidden !important; }
html body.bsqm-app-page .bsqm-app { position:relative !important; width:100vw !important; margin-left:calc(50% - 50vw) !important; }
html body.bsqm-app-page .bsqm-cover { height:150px !important; }
html body.bsqm-app-page .bsqm-brand { padding:10px 14px 12px !important; }
html body.bsqm-app-page .bsqm-logo { min-height:62px !important; }
html body.bsqm-app-page .bsqm-logo img { max-width:180px !important; max-height:90px !important; }
html body.bsqm-app-page .bsqm-brand h1 { font-size:24px !important; margin:5px 0 2px !important; }
html body.bsqm-app-page .bsqm-social { margin-top:9px !important; }
html body.bsqm-app-page .bsqm-tools { padding-top:8px !important; padding-bottom:8px !important; }
html body.bsqm-app-page .bsqm-cats { position:relative !important; top:auto !important; left:auto !important; right:auto !important; bottom:auto !important; transform:none !important; display:flex !important; flex-wrap:nowrap !important; width:100% !important; box-sizing:border-box !important; overflow-x:auto !important; overflow-y:hidden !important; -webkit-overflow-scrolling:touch !important; touch-action:pan-x !important; overscroll-behavior-x:contain !important; scrollbar-width:none !important; }
html body.bsqm-app-page .bsqm-cats::-webkit-scrollbar { display:none !important; }
html body.bsqm-app-page .bsqm-cats > a { flex:0 0 auto !important; }
html body.bsqm-app-page .bsqm-main { padding-top:18px !important; }

/* Compact bar: logo on the left, categories beside it. */
html body.bsqm-app-page .bsqm-compactbar {
  position:fixed !important; left:0 !important; right:0 !important;
  top:var(--bsqm-sticky-top,0px) !important; z-index:999990 !important;
  height:60px !important; display:flex !important; align-items:center !important;
  gap:10px !important; padding:6px 10px !important; box-sizing:border-box !important;
  background:rgba(255,255,255,.98) !important; border-bottom:1px solid #e5e7eb !important;
  box-shadow:0 5px 18px rgba(16,24,40,.12) !important;
  transform:translateY(-120%) !important; opacity:0 !important; pointer-events:none !important;
  transition:transform .22s ease,opacity .18s ease !important;
}
html body.bsqm-app-page .bsqm-compactbar.show { transform:translateY(0) !important; opacity:1 !important; pointer-events:auto !important; }
html body.bsqm-app-page .bsqm-compact-logo { flex:0 0 72px !important; width:72px !important; height:48px !important; display:grid !important; place-items:center !important; overflow:hidden !important; }
html body.bsqm-app-page .bsqm-compact-logo img { display:block !important; max-width:70px !important; max-height:45px !important; width:auto !important; height:auto !important; object-fit:contain !important; }
html body.bsqm-app-page .bsqm-compact-logo span { width:40px !important; height:40px !important; border-radius:11px !important; display:grid !important; place-items:center !important; background:var(--bsqm-accent) !important; color:#fff !important; font-weight:900 !important; }
html body.bsqm-app-page .bsqm-compact-cats { flex:1 1 auto !important; min-width:0 !important; display:flex !important; align-items:center !important; gap:8px !important; overflow-x:auto !important; overflow-y:hidden !important; white-space:nowrap !important; -webkit-overflow-scrolling:touch !important; touch-action:pan-x !important; overscroll-behavior-x:contain !important; scrollbar-width:none !important; }
html body.bsqm-app-page .bsqm-compact-cats::-webkit-scrollbar { display:none !important; }
html body.bsqm-app-page .bsqm-compact-cats a { flex:0 0 auto !important; white-space:nowrap !important; text-decoration:none !important; color:#667085 !important; background:#f2f4f7 !important; border-radius:999px !important; padding:8px 12px !important; font-size:12px !important; font-weight:800 !important; }
html body.bsqm-app-page .bsqm-compact-cats a.active { background:var(--bsqm-accent) !important; color:#fff !important; }

/* The original category rail stays in the document to preserve layout; when compact bar is visible it is visually unobtrusive. */
html body.bsqm-app-page .bsqm-scrolled .bsqm-cats { visibility:hidden !important; }

/* Product cards: keep large photos inside their boxes. */
html body.bsqm-app-page .bsqm-pic img { object-fit:contain !important; object-position:center !important; }
html body.bsqm-app-page .bsqm-modal-image { min-height:220px !important; height:min(48vh,360px) !important; }
html body.bsqm-app-page .bsqm-modal-image img { object-fit:contain !important; object-position:center !important; }

@media (max-width:700px){
  html body.bsqm-app-page .bsqm-cover { height:115px !important; }
  html body.bsqm-app-page .bsqm-brand { padding:8px 12px 10px !important; }
  html body.bsqm-app-page .bsqm-logo { min-height:52px !important; }
  html body.bsqm-app-page .bsqm-logo img { max-width:150px !important; max-height:72px !important; }
  html body.bsqm-app-page .bsqm-brand h1 { font-size:20px !important; }
  html body.bsqm-app-page .bsqm-brand p { font-size:12px !important; }
  html body.bsqm-app-page .bsqm-social a { width:34px !important; height:34px !important; flex:0 0 34px !important; }
  html body.bsqm-app-page .bsqm-tools { padding:7px 10px !important; }
  html body.bsqm-app-page .bsqm-compactbar { height:56px !important; padding:5px 7px !important; gap:7px !important; }
  html body.bsqm-app-page .bsqm-compact-logo { flex-basis:58px !important; width:58px !important; height:44px !important; }
  html body.bsqm-app-page .bsqm-compact-logo img { max-width:56px !important; max-height:40px !important; }
  html body.bsqm-app-page .bsqm-compact-cats a { padding:7px 10px !important; font-size:11px !important; }
  html body.bsqm-app-page .bsqm-main { padding:14px 10px 55px !important; }
}
/* Elementor premium site sections */
.bsqm-hero-section .elementor-heading-title,
.bsqm-inner-hero .elementor-heading-title,
.bsqm-cta-section .elementor-heading-title{color:#fff!important}
.bsqm-hero-section .elementor-widget-text-editor,
.bsqm-inner-hero .elementor-widget-text-editor,
.bsqm-cta-section .elementor-widget-text-editor{color:#f5f5f5!important}
.bsqm-hero-section .elementor-button,
.bsqm-cta-section .elementor-button{background:#ff6500!important;color:#fff!important;border-color:#ff6500!important}
.bsqm-hero-section .elementor-button:hover,
.bsqm-cta-section .elementor-button:hover{background:#e85600!important;color:#fff!important}
.bsqm-feature-section .elementor-heading-title{color:#fff!important}
.bsqm-feature-section .elementor-widget-text-editor{color:#ddd!important}
.bsqm-feature-section .elementor-column{border-right:1px solid rgba(255,255,255,.14)}
.bsqm-feature-section .elementor-column:last-child{border-right:0}
@media(max-width:767px){
 .bsqm-feature-section .elementor-column{border-right:0;border-bottom:1px solid rgba(255,255,255,.14);padding-bottom:18px;margin-bottom:18px}
 .bsqm-feature-section .elementor-column:last-child{border-bottom:0;margin-bottom:0}
 .bsqm-hero-section .elementor-heading-title,.bsqm-inner-hero .elementor-heading-title{font-size:42px!important;line-height:1.05!important}
}
