.sgp-wrap{--blue:#17466f;--blue2:#0e3557;--gold:#ffbd18;--text:#233746;--muted:#70808c;--line:#e4ebf0;max-width:1240px;margin:32px auto;padding:0 18px;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--text)}.sgp-header{display:flex;justify-content:space-between;align-items:end;margin-bottom:20px}.sgp-kicker{font-size:11px;font-weight:900;letter-spacing:2px;color:#7890a1;margin-bottom:7px}.sgp-header h2{margin:0;color:var(--blue);font-size:clamp(28px,4vw,44px);line-height:1.08;letter-spacing:-.7px}.sgp-header p{margin:9px 0 0;color:var(--muted);font-size:14px}.sgp-total{color:var(--blue);font-size:17px}.sgp-filters{display:grid;grid-template-columns:minmax(250px,1fr) 250px auto;gap:10px;margin-bottom:20px}.sgp-search{display:flex;height:50px}.sgp-search input,.sgp-group{height:50px;border:1px solid #d6e0e7;background:#fff;font:inherit;color:var(--text);outline:none}.sgp-search input{width:100%;padding:0 16px;border-radius:14px 0 0 14px}.sgp-search input:focus,.sgp-group:focus{border-color:#7ca2c2;box-shadow:0 0 0 3px rgba(31,91,139,.08)}.sgp-search-btn{width:55px;border:0;border-radius:0 14px 14px 0;background:var(--blue);color:#fff;font-size:25px;cursor:pointer}.sgp-group{width:100%;padding:0 13px;border-radius:14px}.sgp-reset{height:50px;padding:0 17px;border:1px solid #d6e0e7;border-radius:14px;background:#fff;color:var(--blue);font-weight:800;cursor:pointer}.sgp-reset:hover{background:#f5f8fa}.sgp-status{min-height:0;color:var(--muted);font-size:13px;margin:0 0 8px}.sgp-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.sgp-card{min-width:0}.sgp-card-button{display:block;width:100%;padding:0;border:1px solid var(--line);background:#fff;border-radius:18px;overflow:hidden;text-align:left;cursor:pointer;box-shadow:0 5px 20px rgba(19,51,76,.055);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.sgp-card-button:hover,.sgp-card-button:focus-visible{transform:translateY(-3px);box-shadow:0 12px 30px rgba(19,51,76,.12);border-color:#c7d8e4;outline:none}.sgp-thumb{aspect-ratio:1/1;position:relative;overflow:hidden;background:#edf2f5;content-visibility:auto}.sgp-thumb img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .35s ease}.sgp-card-button:hover .sgp-thumb img{transform:scale(1.025)}.sgp-noimg{height:100%;display:grid;place-items:center;color:#91a0aa}.sgp-count{position:absolute;right:10px;bottom:10px;background:rgba(17,34,49,.78);backdrop-filter:blur(4px);color:#fff;border-radius:999px;padding:6px 9px;font-size:11px;font-weight:800}.sgp-cardbody{padding:14px 15px 16px}.sgp-card h3{margin:0 0 7px;color:var(--blue);font-size:17px;line-height:1.25}.sgp-card p{margin:0;color:#687985;font-size:13px;line-height:1.5;min-height:39px}.sgp-chips{display:flex;flex-wrap:wrap;gap:5px;margin-top:11px}.sgp-chips span{border:1px solid #dbe4ea;border-radius:999px;padding:4px 8px;color:#687883;font-size:10px;font-weight:800;letter-spacing:.35px;white-space:nowrap}.sgp-load-more{display:block;margin:28px auto 8px;min-width:210px;height:48px;padding:0 22px;border:2px solid var(--blue);background:#fff;color:var(--blue);border-radius:999px;font-weight:900;cursor:pointer}.sgp-load-more:hover{background:var(--blue);color:#fff}.sgp-load-more.is-loading{opacity:.65;pointer-events:none}.sgp-empty{grid-column:1/-1;padding:60px 20px;text-align:center;background:#f5f8fa;border:1px dashed #d6e0e7;border-radius:18px;color:#71808b}.sgp-modal{display:none;position:fixed;inset:0;z-index:999999}.sgp-modal.is-open{display:block}.sgp-backdrop{position:absolute;inset:0;background:rgba(7,20,31,.76);backdrop-filter:blur(7px)}.sgp-dialog{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:min(1080px,94vw);max-height:91vh;overflow:auto;background:#fff;border-radius:24px;box-shadow:0 30px 100px rgba(0,0,0,.32)}.sgp-close{position:absolute;right:14px;top:13px;z-index:5;width:44px;height:44px;border:0;border-radius:50%;background:#fff;color:var(--blue);font-size:30px;line-height:1;cursor:pointer;box-shadow:0 4px 18px rgba(0,0,0,.13)}.sgp-modal-content{display:grid;grid-template-columns:1.12fr .88fr}.sgp-modal-img{min-height:420px;background:#edf2f5;display:flex;align-items:center;justify-content:center}.sgp-modal-img img{width:100%;height:auto;max-height:78vh;object-fit:contain;display:block}.sgp-modal-info{padding:48px 34px 32px}.sgp-modal-info h2{margin:0 0 13px;color:var(--blue);font-size:clamp(25px,3vw,38px);line-height:1.12}.sgp-desc{margin:0;color:#647581;font-size:15px;line-height:1.75}.sgp-meta{margin-top:22px;border-top:1px solid var(--line)}.sgp-meta div{display:flex;justify-content:space-between;gap:20px;padding:11px 0;border-bottom:1px solid var(--line);font-size:14px}.sgp-meta b{color:#71818c}.sgp-meta span{text-align:right;color:#243b4c;font-weight:700}.sgp-tags{display:flex;gap:6px;flex-wrap:wrap;margin-top:15px}.sgp-tags span{border:1px solid #d7e1e8;border-radius:999px;padding:5px 9px;color:#667783;font-size:11px;font-weight:800}.sgp-wa{display:flex;align-items:center;justify-content:center;min-height:52px;margin-top:23px;border:2px solid var(--blue);border-radius:999px;background:var(--gold);color:#17466f;text-decoration:none;font-weight:900}.sgp-wa:hover{filter:brightness(.97)}.sgp-skeleton{height:100px;background:linear-gradient(90deg,#f1f4f6,#fafbfc,#f1f4f6);background-size:200% 100%;animation:sgpShimmer 1.2s infinite}@keyframes sgpShimmer{to{background-position:-200% 0}}body.sgp-modal-open{overflow:hidden}@media(max-width:1050px){.sgp-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.sgp-filters{grid-template-columns:1fr 220px auto}}@media(max-width:760px){.sgp-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.sgp-filters{grid-template-columns:1fr 1fr}.sgp-search{grid-column:1/-1}.sgp-reset{width:100%}.sgp-modal-content{grid-template-columns:1fr}.sgp-modal-img{min-height:250px;max-height:47vh}.sgp-modal-img img{max-height:47vh}.sgp-modal-info{padding:38px 20px 24px}}@media(max-width:430px){.sgp-wrap{padding:0 12px}.sgp-grid{grid-template-columns:1fr}.sgp-filters{grid-template-columns:1fr}.sgp-search{grid-column:auto}.sgp-header h2{font-size:30px}}

.sgp-group-pills{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 20px}.sgp-pill{border:1px solid #dbe5eb;background:#fff;color:#35566d;border-radius:999px;padding:9px 13px;font:800 12px/1.1 inherit;cursor:pointer;transition:.18s}.sgp-pill b{margin-left:5px;color:#7890a1}.sgp-pill:hover,.sgp-pill.is-active{background:#17466f;color:#fff;border-color:#17466f}.sgp-pill:hover b,.sgp-pill.is-active b{color:#fff}.sgp-floating-wa{position:fixed;right:22px;bottom:22px;z-index:99990;display:flex;align-items:center;gap:9px;padding:12px 17px;border-radius:999px;background:#1f9d55;color:#fff;text-decoration:none;font:900 13px/1 inherit;box-shadow:0 12px 30px rgba(20,80,50,.25);transition:transform .18s,box-shadow .18s}.sgp-floating-wa:hover{color:#fff;transform:translateY(-2px);box-shadow:0 16px 35px rgba(20,80,50,.32)}.sgp-wa-icon{width:27px;height:27px;border-radius:50%;display:grid;place-items:center;background:#fff;color:#1f9d55;font-size:13px}@media(max-width:600px){.sgp-floating-wa{right:12px;bottom:12px;padding:11px 14px}.sgp-floating-wa span:last-child{display:none}}
/* V2.4 professional viewer */
.sgp-viewer{min-width:0;background:#0b1722;display:flex;flex-direction:column;min-height:100%;}
.sgp-viewer-toolbar{height:58px;display:flex;align-items:center;justify-content:flex-end;gap:7px;padding:8px 12px;background:rgba(7,20,31,.96);position:relative;z-index:3}
.sgp-viewer-toolbar button,.sgp-download{height:40px;min-width:40px;padding:0 12px;border:1px solid rgba(255,255,255,.18);border-radius:10px;background:rgba(255,255,255,.08);color:#fff;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;font:800 13px/1 system-ui;cursor:pointer}
.sgp-viewer-toolbar button:hover,.sgp-download:hover{background:rgba(255,255,255,.16);color:#fff}

.sgp-zoom-stage{height:min(72vh,760px);min-height:420px;overflow:hidden;position:relative;touch-action:none;display:flex;align-items:center;justify-content:center;background:radial-gradient(circle at center,#233b4e 0,#0b1722 65%);cursor:zoom-in}
.sgp-zoom-stage:before{content:"";position:absolute;inset:0;opacity:.05;background-image:linear-gradient(45deg,#fff 25%,transparent 25%),linear-gradient(-45deg,#fff 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#fff 75%),linear-gradient(-45deg,transparent 75%,#fff 75%);background-size:20px 20px;background-position:0 0,0 10px,10px -10px,-10px 0}
.sgp-zoom-image{position:relative;z-index:1;max-width:94%;max-height:94%;width:auto;height:auto;object-fit:contain;transform-origin:center center;transition:transform .12s ease;user-select:none;-webkit-user-drag:none;box-shadow:0 15px 55px rgba(0,0,0,.35)}
.sgp-zoom-image.is-dragging{transition:none;cursor:grabbing}.sgp-zoom-help{padding:8px 14px;color:#aebdca;background:#0b1722;text-align:center;font-size:11px}
.sgp-modal-kicker{font-size:10px;letter-spacing:2px;font-weight:900;color:#7b93a5;margin-bottom:8px}
.sgp-wa-symbol{display:inline-grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#17466f;color:#fff;font-size:10px;margin-right:4px}
@media(max-width:760px){.sgp-viewer-toolbar{height:52px}.sgp-zoom-stage{min-height:250px;height:47vh}.sgp-zoom-help{font-size:10px}.sgp-modal-info{padding-top:26px}.sgp-viewer-toolbar button{min-width:38px;padding:0 9px}}
/* V2.4.1 fixes */
.sgp-card-button{position:relative;z-index:1}.sgp-modal{pointer-events:none}.sgp-modal.is-open{pointer-events:auto}.sgp-dialog{z-index:2}.sgp-viewer-toolbar{pointer-events:auto}.sgp-zoom-stage{pointer-events:auto}
/* V2.4.2 final viewer fixes */
.sgp-card-button{appearance:none;-webkit-appearance:none;position:relative;z-index:2;pointer-events:auto!important;cursor:pointer!important;}
.sgp-card-button *{pointer-events:none;}
.sgp-modal{pointer-events:none;}
.sgp-modal.is-open{pointer-events:auto;}
.sgp-image-wrap{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;max-width:94%;max-height:94%;}
.sgp-image-wrap .sgp-zoom-image{max-width:100%;max-height:100%;}
.sgp-preview-watermark{position:absolute;z-index:5;display:flex;align-items:center;gap:9px;max-width:70%;pointer-events:none;user-select:none;}
.sgp-preview-watermark .sgp-wm-logo{display:block;width:auto;height:auto;max-width:110px;max-height:70px;object-fit:contain;filter:drop-shadow(0 2px 5px rgba(0,0,0,.45));}
.sgp-preview-watermark .sgp-wm-text{font-weight:900;font-size:18px;letter-spacing:.3px;color:#fff;text-shadow:0 2px 5px rgba(0,0,0,.7);white-space:nowrap;}
.sgp-wm-bottom-right{right:18px;bottom:18px;}
.sgp-wm-bottom-left{left:18px;bottom:18px;}
.sgp-wm-top-right{right:18px;top:18px;}
.sgp-wm-top-left{left:18px;top:18px;}
.sgp-wm-center{left:50%;top:50%;transform:translate(-50%,-50%);}
.sgp-viewer-toolbar{justify-content:flex-end;}
.sgp-download{display:none!important;}
@media(max-width:760px){.sgp-preview-watermark .sgp-wm-text{font-size:13px}.sgp-preview-watermark .sgp-wm-logo{max-width:80px;max-height:50px}.sgp-wm-bottom-right,.sgp-wm-bottom-left{bottom:12px}.sgp-wm-bottom-right,.sgp-wm-top-right{right:12px}.sgp-wm-bottom-left,.sgp-wm-top-left{left:12px}}
/* V2.4.6 interaction hardening */
.sgp-wrap{position:relative!important;z-index:9990!important;isolation:isolate!important;pointer-events:auto!important}
.sgp-wrap,.sgp-wrap *{pointer-events:auto}
.sgp-card-button,.sgp-pill,.sgp-search-btn,.sgp-reset,.sgp-group,.sgp-load-more{position:relative!important;z-index:9995!important;pointer-events:auto!important;cursor:pointer!important}
.sgp-card-button *{pointer-events:none!important}
.sgp-modal{z-index:1000000!important}
.sgp-modal:not(.is-open){display:none!important;pointer-events:none!important}
.sgp-modal.is-open{display:block!important;pointer-events:auto!important}

/* V2.4.7 interaction fix */
.sgp-wrap{position:relative!important;z-index:20!important;isolation:isolate!important;pointer-events:auto!important}.sgp-wrap .sgp-card-button,.sgp-wrap .sgp-pill,.sgp-wrap .sgp-search-btn,.sgp-wrap .sgp-reset,.sgp-wrap .sgp-group,.sgp-wrap .sgp-load-more{pointer-events:auto!important;position:relative!important;z-index:30!important}.sgp-wrap .sgp-modal{z-index:2147483000!important}.sgp-wrap .sgp-modal.is-open{display:block!important;pointer-events:auto!important}.sgp-wrap .sgp-modal .sgp-backdrop{pointer-events:auto!important}.sgp-wrap .sgp-modal .sgp-dialog{pointer-events:auto!important}.sgp-preview-watermark{pointer-events:none!important}

/* V2.5 Professional gallery UI */
.sgp-wrap{max-width:1320px;padding:0 22px;margin:28px auto 50px}
.sgp-header{margin-bottom:24px}.sgp-header h2{font-weight:800;letter-spacing:-1.2px}.sgp-filters{grid-template-columns:minmax(280px,1fr) 250px auto;gap:12px}.sgp-search input,.sgp-group,.sgp-reset{height:48px;border-radius:12px}.sgp-group{appearance:auto}.sgp-group-pills{gap:9px;margin-bottom:22px}.sgp-pill{padding:9px 14px;font-size:12px;background:#fff}.sgp-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.sgp-card-button{border:0;border-radius:14px;background:#f2f5f7;box-shadow:none;aspect-ratio:4/3;overflow:hidden}.sgp-card-button:hover,.sgp-card-button:focus-visible{transform:translateY(-2px);box-shadow:0 12px 28px rgba(19,51,76,.12);border:0}.sgp-thumb{aspect-ratio:4/3;width:100%;height:100%;background:#eef2f5}.sgp-thumb img{object-fit:cover}.sgp-cardbody,.sgp-count{display:none!important}.sgp-load-more{margin-top:30px}.sgp-wrap.is-loading .sgp-grid{opacity:.58;transition:opacity .15s}.sgp-modal{z-index:2147483640!important}.sgp-dialog{width:min(1240px,96vw);max-height:94vh;border-radius:22px;overflow:hidden}.sgp-modal-content{grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr);min-height:650px}.sgp-viewer{min-height:650px}.sgp-viewer-top{height:54px;display:flex;align-items:center;justify-content:space-between;padding:0 16px;background:#0b1722;color:#dce7ee}.sgp-viewer-count{font-size:12px;font-weight:800;letter-spacing:.3px}.sgp-viewer-tools{display:flex;gap:6px}.sgp-viewer-tools button{height:36px;min-width:38px;border:1px solid rgba(255,255,255,.16);border-radius:9px;background:rgba(255,255,255,.08);color:#fff;font-weight:800;cursor:pointer}.sgp-viewer-tools button:hover{background:rgba(255,255,255,.16)}.sgp-zoom-stage{height:calc(94vh - 110px);min-height:540px;background:#09151f}.sgp-image-wrap{max-width:94%;max-height:94%;width:100%;height:100%}.sgp-zoom-image{max-width:100%;max-height:100%;box-shadow:0 18px 65px rgba(0,0,0,.4)}.sgp-nav{position:absolute;top:50%;transform:translateY(-50%);z-index:10;width:48px;height:48px;border:1px solid rgba(255,255,255,.22);border-radius:50%;background:rgba(8,25,38,.74);color:#fff;font-size:38px;line-height:42px;display:grid;place-items:center;cursor:pointer;backdrop-filter:blur(6px)}.sgp-nav:hover{background:#17466f}.sgp-prev{left:18px}.sgp-next{right:18px}.sgp-modal-info{padding:52px 34px 30px;overflow:auto;background:#fff}.sgp-modal-index{font-size:11px;color:#8797a2;font-weight:800;margin-bottom:8px}.sgp-modal-info h2{font-size:clamp(27px,3vw,40px);letter-spacing:-.7px;margin-bottom:18px}.sgp-desc{font-size:14px;line-height:1.7}.sgp-meta{margin-top:22px}.sgp-meta div{justify-content:flex-start}.sgp-meta b{width:105px;flex:0 0 105px}.sgp-meta span{text-align:left}.sgp-tag-title{margin-top:20px;color:#6f808b;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:1px}.sgp-tags{margin-top:9px;gap:7px}.sgp-modal-tag{border:1px solid #d7e1e8;border-radius:999px;padding:7px 11px;background:#fff;color:#496476;font-size:11px;font-weight:800;cursor:pointer}.sgp-modal-groups{display:flex!important;align-items:center;justify-content:flex-start;gap:7px;flex-wrap:wrap;text-align:left!important}.sgp-modal-group-link{appearance:none;-webkit-appearance:none;border:1px solid #d8e3ea!important;border-radius:999px!important;padding:6px 11px!important;background:#f5f8fa!important;color:#496476!important;box-shadow:none!important;text-shadow:none!important;font:inherit;font-size:11px!important;font-weight:800!important;line-height:1.2;cursor:pointer;transition:background-color .15s ease,border-color .15s ease,color .15s ease}.sgp-modal-group-link:hover,.sgp-modal-group-link:focus{background:#eef4f7!important;border-color:#cbd9e1!important;color:#17466f!important;box-shadow:none!important;transform:none!important}.sgp-group-separator{display:none!important}.sgp-modal-tag:hover{background:#17466f;border-color:#17466f;color:#fff}.sgp-wa{margin-top:26px;min-height:54px;background:#ffbd18;border:0;box-shadow:0 8px 18px rgba(255,189,24,.22)}.sgp-wa:hover{background:#ffca3c;color:#17466f}.sgp-zoom-help{padding:8px 14px}.sgp-preview-watermark{opacity:.92}.sgp-close{right:12px;top:12px;width:42px;height:42px;background:#fff;box-shadow:0 5px 18px rgba(0,0,0,.22)}
@media(max-width:1050px){.sgp-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.sgp-modal-content{grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr)}}
@media(max-width:760px){.sgp-wrap{padding:0 12px;margin-top:20px}.sgp-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.sgp-card-button{border-radius:10px;aspect-ratio:4/3}.sgp-filters{grid-template-columns:1fr 1fr}.sgp-search{grid-column:1/-1}.sgp-reset{width:100%}.sgp-modal-content{grid-template-columns:1fr;min-height:0}.sgp-viewer{min-height:0}.sgp-viewer-top{height:48px}.sgp-zoom-stage{height:52vh;min-height:280px}.sgp-modal-info{padding:28px 20px 24px;max-height:42vh}.sgp-modal-info h2{font-size:27px}.sgp-nav{width:42px;height:42px;font-size:32px}.sgp-prev{left:10px}.sgp-next{right:10px}.sgp-close{top:7px;right:7px;width:38px;height:38px}.sgp-zoom-help{font-size:9px}.sgp-preview-watermark .sgp-wm-text{font-size:12px}.sgp-preview-watermark .sgp-wm-logo{max-width:75px;max-height:46px}}
@media(max-width:430px){.sgp-filters{grid-template-columns:1fr}.sgp-search{grid-column:auto}.sgp-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.sgp-header h2{font-size:29px}}

/* V2.5.1 interaction + square thumbnail fix */
.sgp-wrap{position:relative!important;z-index:2147483000!important;isolation:unset!important;pointer-events:auto!important;}
.sgp-wrap .sgp-grid,.sgp-wrap .sgp-filters,.sgp-wrap .sgp-group-pills,.sgp-wrap .sgp-header,.sgp-wrap .sgp-load-more{position:relative;z-index:2;}
.sgp-wrap .sgp-card-button,.sgp-wrap .sgp-pill,.sgp-wrap .sgp-search-btn,.sgp-wrap .sgp-reset,.sgp-wrap .sgp-group,.sgp-wrap .sgp-load-more{pointer-events:auto!important;cursor:pointer!important;}
.sgp-wrap .sgp-card-button{display:block;width:100%;height:auto;aspect-ratio:1/1!important;overflow:hidden;padding:0;}
.sgp-wrap .sgp-thumb{display:block;width:100%;height:100%;aspect-ratio:1/1!important;overflow:hidden;}
.sgp-wrap .sgp-thumb img{display:block;width:100%;height:100%;object-fit:cover;object-position:center;}
.sgp-wrap .sgp-card{min-width:0;}
.sgp-wrap .sgp-card-button:focus-visible{outline:3px solid rgba(23,70,111,.28);outline-offset:3px;}
@media(max-width:760px){.sgp-wrap{padding-left:10px;padding-right:10px}.sgp-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}.sgp-card-button{aspect-ratio:1/1!important;border-radius:10px!important}.sgp-thumb{aspect-ratio:1/1!important}}
@media(min-width:761px) and (max-width:1050px){.sgp-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}.sgp-card-button{aspect-ratio:1/1!important}}
@media(min-width:1051px){.sgp-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}.sgp-card-button{aspect-ratio:1/1!important}}


/* V2.5.2 clean professional header + compact controls */
.sgp-wrap .sgp-header{margin:0 0 14px!important;align-items:center!important}
.sgp-wrap .sgp-header h2{margin:0!important;font-size:clamp(28px,3.2vw,38px)!important;line-height:1.08!important;letter-spacing:-1px!important}
.sgp-wrap .sgp-header p,.sgp-wrap .sgp-kicker{display:none!important}
.sgp-wrap .sgp-filters{display:grid!important;grid-template-columns:minmax(0,1fr) 220px 92px!important;gap:8px!important;margin-bottom:10px!important;align-items:stretch!important}
.sgp-wrap .sgp-search{height:44px!important}
.sgp-wrap .sgp-search input,.sgp-wrap .sgp-group,.sgp-wrap .sgp-reset{height:44px!important;border-radius:10px!important;font-size:13px!important}
.sgp-wrap .sgp-search input{padding:0 13px!important}
.sgp-wrap .sgp-search-btn{width:48px!important;font-size:21px!important;border-radius:0 10px 10px 0!important}
.sgp-wrap .sgp-group{padding:0 11px!important}
.sgp-wrap .sgp-reset{padding:0 12px!important;font-size:13px!important}
.sgp-wrap .sgp-group-pills{display:flex!important;flex-wrap:nowrap!important;overflow-x:auto!important;overflow-y:hidden!important;gap:7px!important;margin:0 0 14px!important;padding:2px 1px 5px!important;scrollbar-width:none!important}
.sgp-wrap .sgp-group-pills::-webkit-scrollbar{display:none!important}
.sgp-wrap .sgp-pill{flex:0 0 auto!important;padding:7px 11px!important;border-radius:999px!important;font-size:11px!important;line-height:1.2!important;white-space:nowrap!important}
.sgp-wrap .sgp-pill b{font-size:10px!important}
.sgp-wrap .sgp-status{display:none!important}
.sgp-wrap .sgp-grid{gap:14px!important}
.sgp-wrap .sgp-card-button{border-radius:12px!important}
.sgp-wrap .sgp-load-more{height:44px!important;min-width:190px!important;margin:20px auto 6px!important;font-size:13px!important}
@media(max-width:760px){
 .sgp-wrap{padding-left:10px!important;padding-right:10px!important;margin-top:16px!important;margin-bottom:30px!important}
 .sgp-wrap .sgp-header{margin-bottom:10px!important}
 .sgp-wrap .sgp-header h2{font-size:28px!important}
 .sgp-wrap .sgp-filters{grid-template-columns:minmax(0,1fr) minmax(92px,34%)!important;gap:7px!important;margin-bottom:7px!important}
 .sgp-wrap .sgp-search{grid-column:1/-1!important}
 .sgp-wrap .sgp-group,.sgp-wrap .sgp-reset{width:100%!important}
 .sgp-wrap .sgp-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}
 .sgp-wrap .sgp-card-button{aspect-ratio:1/1!important;border-radius:9px!important}
 .sgp-wrap .sgp-thumb{aspect-ratio:1/1!important}
 .sgp-wrap .sgp-group-pills{margin-bottom:11px!important}
}
@media(min-width:761px) and (max-width:1050px){
 .sgp-wrap .sgp-filters{grid-template-columns:minmax(0,1fr) 210px 88px!important}
 .sgp-wrap .sgp-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}

/* V2.5.3: editable gallery title + reset removed */
.sgp-wrap .sgp-filters{grid-template-columns:minmax(0,1fr) 230px!important;}
@media(max-width:760px){.sgp-wrap .sgp-filters{grid-template-columns:1fr!important}.sgp-wrap .sgp-search{grid-column:auto!important}}
.sgp-wrap .sgp-reset{display:none!important}


/* V2.5.4: search + group compact single row and independent watermark opacity */
.sgp-wrap .sgp-preview-watermark{opacity:1!important}
.sgp-wrap .sgp-preview-watermark .sgp-wm-text,.sgp-wrap .sgp-preview-watermark .sgp-wm-logo{opacity:var(--sgp-wm-opacity,1)}
@media(max-width:760px){
 .sgp-wrap .sgp-filters{grid-template-columns:minmax(0,1fr) minmax(112px,34%)!important;gap:7px!important;align-items:stretch!important}
 .sgp-wrap .sgp-search{grid-column:auto!important;min-width:0!important}
 .sgp-wrap .sgp-search input{min-width:0!important}
 .sgp-wrap .sgp-group{min-width:0!important}
}
@media(max-width:380px){
 .sgp-wrap .sgp-filters{grid-template-columns:minmax(0,1fr) minmax(104px,36%)!important}
 .sgp-wrap .sgp-search input{font-size:12px!important;padding-left:10px!important}
 .sgp-wrap .sgp-search-btn{width:42px!important}
 .sgp-wrap .sgp-group{font-size:12px!important;padding:0 7px!important}
}


/* V2.5.5: Search + group selector ALWAYS stay on one professional row */
.sgp-wrap .sgp-filters{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(190px,260px)!important;
  gap:10px!important;
  width:100%!important;
  align-items:stretch!important;
}
.sgp-wrap .sgp-search{
  display:flex!important;
  grid-column:auto!important;
  min-width:0!important;
  width:100%!important;
}
.sgp-wrap .sgp-search input{
  min-width:0!important;
  width:100%!important;
}
.sgp-wrap .sgp-group{
  min-width:0!important;
  width:100%!important;
}
@media(max-width:760px){
  .sgp-wrap .sgp-filters{
    grid-template-columns:minmax(0,1.8fr) minmax(118px,1fr)!important;
    gap:7px!important;
  }
  .sgp-wrap .sgp-search{grid-column:auto!important}
  .sgp-wrap .sgp-search input{font-size:12px!important;padding-left:10px!important}
  .sgp-wrap .sgp-search-btn{width:43px!important;font-size:20px!important}
  .sgp-wrap .sgp-group{font-size:12px!important;padding:0 8px!important}
}
@media(max-width:380px){
  .sgp-wrap .sgp-filters{
    grid-template-columns:minmax(0,1.65fr) minmax(108px,1fr)!important;
  }
  .sgp-wrap .sgp-group{font-size:11px!important;padding:0 6px!important}
}


/* V2.5.7 preview refinements */
.sgp-dialog{position:relative!important}
.sgp-viewer-toolbar{padding-right:70px!important}
.sgp-close{top:8px!important;right:10px!important;z-index:20!important}
.sgp-zoom-stage{background:#fff!important}
.sgp-zoom-stage:before{display:none!important}
.sgp-zoom-image{box-shadow:0 8px 30px rgba(0,0,0,.12)!important}
.sgp-wa{background:var(--sgp-admin-bg,#ffbd18)!important;color:var(--sgp-admin-color,#17466f)!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:9px!important}
.sgp-wa:hover{background:var(--sgp-admin-bg,#ffbd18)!important;color:var(--sgp-admin-color,#17466f)!important;filter:brightness(.97)}
.sgp-admin-button-logo{width:auto!important;max-width:30px!important;max-height:25px!important;object-fit:contain!important;display:block!important}
@media(max-width:760px){.sgp-viewer-toolbar{padding-right:58px!important}.sgp-close{top:6px!important;right:7px!important}.sgp-zoom-stage{background:#fff!important}}


/* V2.5.9 - zoom toolbar centered + layout settings are authoritative */
.sgp-viewer-top{position:relative!important;display:flex!important;align-items:center!important;justify-content:flex-start!important}
.sgp-viewer-tools{position:absolute!important;left:50%!important;top:50%!important;transform:translate(-50%,-50%)!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:6px!important;z-index:12!important}
.sgp-viewer-tools button{position:relative!important;z-index:13!important}
.sgp-viewer-count{position:relative!important;z-index:11!important}
.sgp-close{z-index:30!important}
.sgp-wrap .sgp-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}
@media (min-width:761px) and (max-width:1050px){.sgp-wrap .sgp-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}}
@media (max-width:760px){.sgp-wrap .sgp-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.sgp-viewer-tools{gap:4px!important}.sgp-viewer-tools button{height:34px!important;min-width:36px!important}}

.sgp-wrap .sgp-card.sgp-layout-hidden{display:none!important}

/* V2.5.10 - Gallery title appearance settings */
.sgp-wrap .sgp-header{display:block!important;width:100%!important}
.sgp-wrap .sgp-title-wrap{width:100%!important;text-align:var(--sgp-title-align,left)!important}
.sgp-wrap .sgp-header h2{color:var(--sgp-title-color,#17466f)!important;font-family:var(--sgp-title-font,inherit)!important;font-size:clamp(22px,var(--sgp-title-size,38px),var(--sgp-title-size,38px))!important;line-height:1.12!important;font-weight:700!important;letter-spacing:-.5px!important;margin:0!important}
.sgp-wrap .sgp-header[style*="--sgp-title-align:center"] .sgp-title-wrap{text-align:center!important}
.sgp-wrap .sgp-header[style*="--sgp-title-align:right"] .sgp-title-wrap{text-align:right!important}
@media(max-width:760px){.sgp-wrap .sgp-header h2{font-size:clamp(20px,calc(var(--sgp-title-size,38px) * .78),48px)!important}}

/* V2.5.11 - Sticky Elementor/header safety: gallery cards stay below sticky UI. */
.sgp-wrap{position:relative;z-index:0;}
.sgp-grid,.sgp-card,.sgp-card-button,.sgp-thumb{position:relative;z-index:0;}
.sgp-floating-wa{z-index:900;}
/* Common Elementor sticky containers must remain above gallery content. */
.elementor-sticky--active,.elementor-sticky{z-index:10000 !important;}
@media(max-width:760px){
  /* Keep the last row comfortably above a fixed/sticky bottom bar. */
  .sgp-wrap{padding-bottom:120px;}
}
@media(min-width:761px){
  .sgp-wrap{padding-bottom:80px;}
}


/* V2.5.12 - Hard isolation from Elementor sticky layers.
 * Normal gallery content must always stay below sticky/fixed Elementor UI.
 * The lightbox remains above everything when intentionally opened.
 */
.sgp-wrap,
.sgp-wrap .sgp-grid,
.sgp-wrap .sgp-card,
.sgp-wrap .sgp-card-button,
.sgp-wrap .sgp-thumb{
  position:relative !important;
  z-index:0 !important;
}
.sgp-wrap{isolation:isolate !important;}
.sgp-wrap .sgp-card-button:hover,
.sgp-wrap .sgp-card-button:focus-visible{z-index:0 !important;}
/* Elementor sticky headers, bottom bars and sticky containers */
body .elementor-sticky--active,
body .elementor-sticky,
body .elementor-element.elementor-sticky--active,
body .elementor-element.elementor-sticky,
body .elementor-location-header .elementor-sticky--active,
body .elementor-location-header .elementor-sticky,
body .elementor-location-footer .elementor-sticky--active,
body .elementor-location-footer .elementor-sticky{
  z-index:2147483000 !important;
}
/* Common fixed/sticky Elementor containers */
body .elementor-sticky__spacer + .elementor-element,
body .elementor-sticky__spacer + section.elementor-section,
body .elementor-sticky__spacer + .e-con{
  z-index:2147483000 !important;
}
/* Keep gallery floating CTA below Elementor sticky UI as well. */
.sgp-floating-wa{z-index:100 !important;}
/* Only the gallery lightbox is allowed to cover the page UI while open. */
.sgp-modal{z-index:2147483646 !important;}
body.sgp-modal-open .elementor-sticky--active,
body.sgp-modal-open .elementor-sticky{
  z-index:2147483000 !important;
}


/* V2.5.13 - mobile speed / lightweight thumbnails */
.sgp-wrap .sgp-thumb{
  contain:layout paint;
  content-visibility:auto;
  contain-intrinsic-size:300px 300px;
}
.sgp-wrap .sgp-thumb img{
  width:100%;
  height:100%;
  object-fit:cover;
  aspect-ratio:1/1;
}
.sgp-wrap .sgp-card-button{transform:translateZ(0);}
.sgp-wrap.is-loading{opacity:.92;}
@media(max-width:760px){
  .sgp-wrap{font-size:14px;}
  .sgp-wrap .sgp-grid{gap:8px!important;}
  .sgp-wrap .sgp-card-button{box-shadow:0 2px 10px rgba(19,51,76,.06)!important;}
  .sgp-wrap .sgp-thumb{border-radius:8px;}
  .sgp-wrap .sgp-group-pills{margin-bottom:9px!important;}
}

/* V2.5.15 hierarchical group menu */
.sgp-group-menu{display:flex;align-items:flex-start;gap:8px;flex-wrap:wrap;margin:0 0 18px;position:relative;z-index:50}.sgp-menu-item{position:relative;flex:0 0 auto}.sgp-menu-item>.sgp-pill{display:inline-flex;align-items:center;gap:3px}.sgp-menu-item.has-children>.sgp-pill:after{content:'⌄';font-size:11px;margin-left:3px;opacity:.75}.sgp-submenu{display:none;position:absolute;left:0;top:calc(100% + 5px);min-width:190px;padding:6px;background:#fff;border:1px solid #dfe8ee;border-radius:12px;box-shadow:0 12px 32px rgba(19,51,76,.14);z-index:99999}.sgp-menu-item:hover>.sgp-submenu,.sgp-menu-item:focus-within>.sgp-submenu{display:block}.sgp-submenu .sgp-menu-item{display:block}.sgp-submenu .sgp-pill{width:100%;justify-content:space-between;border:0;border-radius:8px;text-align:left}.sgp-submenu .sgp-submenu{left:calc(100% + 5px);top:-6px}.sgp-menu-item .sgp-pill{white-space:nowrap}.sgp-menu-all{flex:0 0 auto}
@media(max-width:760px){.sgp-group-menu{flex-wrap:nowrap;overflow-x:auto;overflow-y:visible;padding:2px 2px 8px;scrollbar-width:none}.sgp-group-menu::-webkit-scrollbar{display:none}.sgp-submenu{position:fixed;left:10px;right:10px;top:auto;min-width:0;max-height:60vh;overflow:auto}.sgp-submenu .sgp-submenu{position:static;display:block;margin:4px 0 0 10px;box-shadow:none;border:0;border-left:1px solid #e2eaf0;border-radius:0;padding:2px 0 2px 7px}.sgp-menu-item:focus-within>.sgp-submenu{display:block}.sgp-menu-item:hover>.sgp-submenu{display:none}.sgp-menu-item:focus-within:hover>.sgp-submenu{display:block}}


/* V2.5.16 - mobile dropdown, preview spacing, admin toggle, pinch zoom */
.sgp-group-select{position:relative;min-width:0;width:100%;z-index:60}.sgp-group-toggle{width:100%;height:44px;border:1px solid rgba(255,255,255,.16);border-radius:10px;background:rgba(255,255,255,.06);color:inherit;padding:0 12px;display:flex;align-items:center;justify-content:space-between;gap:8px;font:inherit;cursor:pointer;text-align:left}.sgp-group-chevron{font-size:18px;line-height:1;opacity:.8;transition:transform .18s}.sgp-group-toggle[aria-expanded="true"] .sgp-group-chevron{transform:rotate(180deg)}.sgp-group-options{position:absolute;left:0;right:0;top:calc(100% + 6px);max-height:300px;overflow:auto;padding:6px;border-radius:12px;background:#17191c;border:1px solid rgba(255,255,255,.14);box-shadow:0 18px 45px rgba(0,0,0,.35);z-index:1000}.sgp-group-option{width:100%;border:0;background:transparent;color:#e7edf3;padding:10px 11px;border-radius:8px;display:flex;align-items:center;justify-content:space-between;gap:8px;text-align:left;font:inherit;font-size:13px;cursor:pointer}.sgp-group-option:hover,.sgp-group-option.is-selected{background:#235f91;color:#fff}.sgp-group-option b{opacity:.75;white-space:nowrap}.sgp-group-select .sgp-group{display:block!important}
.sgp-zoom-image{touch-action:none;will-change:transform}.sgp-zoom-stage{touch-action:none}
@media(max-width:760px){.sgp-modal .sgp-dialog{margin-top:58px!important;max-height:calc(94vh - 58px)!important}.sgp-modal .sgp-viewer-top{height:58px!important;padding:0 12px!important}.sgp-modal .sgp-zoom-stage{height:50vh!important;min-height:270px!important}.sgp-modal .sgp-viewer-tools{top:50%!important}.sgp-modal .sgp-viewer-count{font-size:11px!important}.sgp-modal .sgp-close{top:6px!important;right:7px!important}.sgp-group-options{max-height:52vh}.sgp-group-toggle{height:44px}}
.sgp-group-select>.sgp-group{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;clip-path:inset(50%)!important;white-space:nowrap!important}


/* V2.5.17 - robust mobile group dropdown */
.sgp-wrap .sgp-filters,
.sgp-wrap .sgp-group-select{overflow:visible!important;}
.sgp-wrap .sgp-group-select{z-index:2147483000!important;}
.sgp-wrap .sgp-group-options{display:block!important;z-index:2147483647!important;}
.sgp-wrap .sgp-group-options[hidden]{display:none!important;}
.sgp-wrap .sgp-group-options.is-open{visibility:visible!important;opacity:1!important;pointer-events:auto!important;}
.sgp-wrap .sgp-group-option{min-height:42px!important;touch-action:manipulation!important;-webkit-tap-highlight-color:transparent!important;}
@media(max-width:760px){
  .sgp-wrap .sgp-group-options{position:fixed!important;max-height:min(58vh,420px)!important;overflow-y:auto!important;overscroll-behavior:contain!important;-webkit-overflow-scrolling:touch!important;}
}

/* V2.5.18 - mobile group selector uses the native OS dropdown for reliable touch */
@media(max-width:760px){
  .sgp-wrap .sgp-group-select{position:relative!important;overflow:visible!important;z-index:2147483001!important;}
  .sgp-wrap .sgp-group-toggle{position:relative!important;z-index:1!important;pointer-events:none!important;}
  .sgp-wrap .sgp-group-select>.sgp-group{
    position:absolute!important;inset:0!important;width:100%!important;height:44px!important;
    opacity:0.01!important;pointer-events:auto!important;clip:auto!important;clip-path:none!important;
    margin:0!important;padding:0!important;border:0!important;background:transparent!important;
    appearance:auto!important;-webkit-appearance:auto!important;z-index:5!important;cursor:pointer!important;
  }
  .sgp-wrap .sgp-group-options{display:none!important;visibility:hidden!important;pointer-events:none!important;}
}
@media(min-width:761px){
  .sgp-wrap .sgp-group-select>.sgp-group{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important;clip:rect(0 0 0 0)!important;clip-path:inset(50%)!important;}
}

/* V2.5.20 - professional mobile group menu + reliable scroll-top */
.sgp-group-options{display:block!important;visibility:visible!important;opacity:1!important;pointer-events:auto!important;}
.sgp-group-options[hidden]{display:none!important;visibility:hidden!important;opacity:0!important;pointer-events:none!important;}
.sgp-group-option-level{display:flex;flex-direction:column;gap:3px;}
.sgp-group-option-node{position:relative;}
.sgp-group-option-row{display:flex;align-items:stretch;gap:3px;}
.sgp-group-option-row>.sgp-group-option{flex:1 1 auto;min-width:0;}
.sgp-group-option{min-height:42px!important;margin:0!important;}
.sgp-group-option .sgp-option-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.sgp-subtoggle{flex:0 0 40px;min-height:42px;border:0;border-radius:9px;background:rgba(255,255,255,.06);color:#b8c9d6;cursor:pointer;font-size:18px;line-height:1;transition:transform .16s,background .16s,color .16s;touch-action:manipulation;}
.sgp-subtoggle:hover,.sgp-group-option-node.is-expanded>.sgp-group-option-row>.sgp-subtoggle{background:#235f91;color:#fff;}
.sgp-group-option-node.is-expanded>.sgp-group-option-row>.sgp-subtoggle{transform:rotate(180deg);}
.sgp-option-submenu{margin:2px 0 3px 13px;padding:3px 0 3px 8px;border-left:1px solid rgba(116,151,177,.35);}
.sgp-option-submenu[hidden]{display:none!important;}
.sgp-option-submenu .sgp-group-option-row{padding-left:2px;}
.sgp-option-submenu .sgp-group-option{background:rgba(255,255,255,.025);}
.sgp-option-submenu .sgp-group-option:hover,.sgp-option-submenu .sgp-group-option.is-selected{background:#235f91;color:#fff;}
.sgp-group-select>.sgp-group{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important;clip:rect(0 0 0 0)!important;clip-path:inset(50%)!important;}
.sgp-scroll-top{position:fixed!important;right:14px!important;bottom:88px!important;width:44px!important;height:44px!important;border:1px solid rgba(255,255,255,.24)!important;border-radius:13px!important;background:rgba(20,31,41,.90)!important;color:#fff!important;display:grid!important;place-items:center!important;font-size:23px!important;line-height:1!important;box-shadow:0 10px 30px rgba(0,0,0,.22)!important;opacity:0!important;visibility:hidden!important;transform:translateY(10px)!important;pointer-events:none!important;transition:opacity .2s,transform .2s,visibility .2s!important;z-index:2147483005!important;cursor:pointer!important;backdrop-filter:blur(8px)!important;-webkit-backdrop-filter:blur(8px)!important;}
.sgp-scroll-top.is-visible{opacity:1!important;visibility:visible!important;transform:none!important;pointer-events:auto!important;}
.sgp-scroll-top:hover{background:#17466f!important;}
@media(max-width:760px){
  .sgp-group-options{position:fixed!important;max-height:min(62vh,480px)!important;overflow:auto!important;overscroll-behavior:contain!important;-webkit-overflow-scrolling:touch!important;padding:8px!important;border-radius:16px!important;box-shadow:0 22px 55px rgba(0,0,0,.32)!important;}
  .sgp-group-option{font-size:13px!important;min-height:44px!important;padding:10px 12px!important;}
  .sgp-subtoggle{flex-basis:42px;min-height:44px;}
  .sgp-scroll-top{right:12px!important;bottom:96px!important;width:42px!important;height:42px!important;border-radius:12px!important;}
}

/* V2.5.20 - touch-friendly hierarchical pill menu */
.sgp-menu-item.is-mobile-open>.sgp-submenu{display:block!important;}
@media(max-width:760px){
  .sgp-group-menu{position:relative!important;z-index:20!important;overflow-x:auto!important;overflow-y:visible!important;padding-bottom:12px!important;}
  .sgp-menu-item{position:relative!important;}
  .sgp-menu-item.has-children>.sgp-pill:after{content:'⌄';margin-left:5px;}
  .sgp-menu-item.is-mobile-open>.sgp-pill{background:#17466f!important;color:#fff!important;border-color:#17466f!important;}
  .sgp-menu-item.is-mobile-open>.sgp-submenu{position:absolute!important;left:0!important;top:calc(100% + 7px)!important;right:auto!important;width:min(250px,calc(100vw - 28px))!important;max-height:58vh!important;overflow:auto!important;background:#fff!important;border:1px solid #dce6ed!important;border-radius:14px!important;box-shadow:0 18px 42px rgba(15,42,61,.20)!important;padding:7px!important;z-index:2147483002!important;}
  .sgp-menu-item.is-mobile-open>.sgp-submenu .sgp-submenu{position:static!important;width:auto!important;max-height:none!important;margin:4px 0 0 10px!important;padding:3px 0 3px 8px!important;border-left:1px solid #dce6ed!important;box-shadow:none!important;display:block!important;}
  .sgp-menu-item.is-mobile-open>.sgp-submenu .sgp-pill{width:100%!important;justify-content:space-between!important;background:#fff!important;color:#496476!important;border:0!important;}
  .sgp-menu-item.is-mobile-open>.sgp-submenu .sgp-pill:hover,.sgp-menu-item.is-mobile-open>.sgp-submenu .sgp-pill.is-active{background:#edf5fb!important;color:#17466f!important;}
}

/* V2.5.20 - mobile dropdown/submenu stacking fix */
@media(max-width:760px){
  /* Never let the horizontal category strip clip its vertical submenu. */
  .sgp-wrap .sgp-group-menu{
    overflow:visible!important;
    overflow-x:visible!important;
    overflow-y:visible!important;
    flex-wrap:wrap!important;
    position:relative!important;
    z-index:2147483000!important;
  }
  .sgp-wrap .sgp-menu-item{z-index:2147483001!important;}
  .sgp-wrap .sgp-menu-item.is-mobile-open>.sgp-submenu,
  .sgp-wrap .sgp-submenu.sgp-mobile-portal{
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
    pointer-events:auto!important;
    position:fixed!important;
    background:#fff!important;
    color:#496476!important;
    border:1px solid #dce6ed!important;
    border-radius:16px!important;
    box-shadow:0 24px 60px rgba(15,42,61,.28)!important;
    padding:8px!important;
    overflow:auto!important;
    overscroll-behavior:contain!important;
    -webkit-overflow-scrolling:touch!important;
    z-index:2147483646!important;
  }
  .sgp-wrap .sgp-menu-item.is-mobile-open>.sgp-submenu .sgp-menu-item{
    position:relative!important;
    display:block!important;
  }
  .sgp-wrap .sgp-menu-item.is-mobile-open>.sgp-submenu .sgp-pill{
    width:100%!important;
    min-height:42px!important;
    justify-content:space-between!important;
    background:#fff!important;
    color:#496476!important;
    border:0!important;
    border-radius:10px!important;
    padding:9px 11px!important;
  }
  .sgp-wrap .sgp-menu-item.is-mobile-open>.sgp-submenu .sgp-pill.is-active{
    background:#edf5fb!important;
    color:#17466f!important;
  }
  .sgp-wrap .sgp-menu-item.is-mobile-open>.sgp-submenu .sgp-submenu{
    position:static!important;
    display:block!important;
    width:auto!important;
    max-height:none!important;
    margin:3px 0 3px 10px!important;
    padding:3px 0 3px 8px!important;
    border-left:1px solid #dce6ed!important;
    box-shadow:none!important;
    overflow:visible!important;
  }
  /* Main dropdown is portaled to <body> on mobile, so give it its own top layer. */
  body>.sgp-group-options[data-sgp-portal="1"]{
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
    pointer-events:auto!important;
    position:fixed!important;
    z-index:2147483647!important;
  }
}

/* V2.5.21 - FINAL MOBILE GROUP DROPDOWN FIX
   The previous native-select overlay could intercept the tap without opening the
   custom panel. Restore the custom toggle as the only interactive control. */
@media(max-width:760px){
  .sgp-wrap .sgp-group-select{
    position:relative!important;
    overflow:visible!important;
    z-index:2147483001!important;
  }
  .sgp-wrap .sgp-group-toggle{
    position:relative!important;
    z-index:10!important;
    pointer-events:auto!important;
    touch-action:manipulation!important;
    -webkit-tap-highlight-color:transparent!important;
    cursor:pointer!important;
  }
  .sgp-wrap .sgp-group-select>.sgp-group{
    position:absolute!important;
    width:1px!important;
    height:1px!important;
    inset:auto!important;
    opacity:0!important;
    pointer-events:none!important;
    clip:rect(0 0 0 0)!important;
    clip-path:inset(50%)!important;
    overflow:hidden!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
  }
  .sgp-wrap .sgp-group-options{
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
    pointer-events:auto!important;
    position:fixed!important;
    z-index:2147483647!important;
    max-height:min(62vh,480px)!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    -webkit-overflow-scrolling:touch!important;
    overscroll-behavior:contain!important;
    touch-action:pan-y!important;
  }
  .sgp-wrap .sgp-group-options[hidden]{
    display:none!important;
    visibility:hidden!important;
    opacity:0!important;
    pointer-events:none!important;
  }
  .sgp-wrap .sgp-group-option,
  .sgp-wrap .sgp-subtoggle{
    touch-action:manipulation!important;
    -webkit-tap-highlight-color:transparent!important;
  }
}


/* V2.5.22 - reliable mobile group picker
 * Use the real native <select> on touch devices. Native selects are opened by
 * the browser/OS itself, avoiding click/pointer/z-index conflicts from themes,
 * Elementor, WebViews and different Android browsers. The visual styling still
 * matches the Saffana Gallery control. Desktop keeps the custom dropdown.
 */
@media (max-width:760px){
  .sgp-wrap .sgp-group-select{
    position:relative!important;
    z-index:2147483640!important;
    overflow:visible!important;
    isolation:isolate!important;
    min-height:46px!important;
  }
  .sgp-wrap .sgp-group-toggle{
    pointer-events:none!important;
    user-select:none!important;
    -webkit-user-select:none!important;
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:46px!important;
    z-index:1!important;
    border:1px solid #d7e1e8!important;
    border-radius:13px!important;
    background:#fff!important;
    color:#243746!important;
    box-shadow:0 3px 14px rgba(23,70,111,.07)!important;
  }
  .sgp-wrap .sgp-group-toggle .sgp-group-chevron{
    color:#17466f!important;
    opacity:.9!important;
  }
  .sgp-wrap .sgp-group-select>.sgp-group{
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:46px!important;
    min-height:46px!important;
    margin:0!important;
    padding:0 42px 0 14px!important;
    border:1px solid #d7e1e8!important;
    border-radius:13px!important;
    background:#fff!important;
    color:#243746!important;
    font-family:inherit!important;
    font-size:14px!important;
    font-weight:600!important;
    line-height:46px!important;
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
    clip:auto!important;
    clip-path:none!important;
    appearance:none!important;
    -webkit-appearance:none!important;
    z-index:5!important;
    cursor:pointer!important;
    touch-action:manipulation!important;
    -webkit-tap-highlight-color:transparent!important;
    box-shadow:0 3px 14px rgba(23,70,111,.07)!important;
  }
  .sgp-wrap .sgp-group-select:after{
    content:'⌄';
    position:absolute!important;
    right:14px!important;
    top:50%!important;
    transform:translateY(-52%)!important;
    color:#17466f!important;
    font-size:17px!important;
    font-weight:700!important;
    line-height:1!important;
    pointer-events:none!important;
    z-index:7!important;
  }
  .sgp-wrap .sgp-group-select>.sgp-group:focus{
    outline:2px solid rgba(35,95,145,.22)!important;
    outline-offset:2px!important;
  }
  .sgp-wrap .sgp-group-options{
    display:none!important;
    visibility:hidden!important;
    pointer-events:none!important;
  }
}
@media (min-width:761px){
  .sgp-wrap .sgp-group-select>.sgp-group{
    position:absolute!important;width:1px!important;height:1px!important;
    opacity:0!important;pointer-events:none!important;clip:rect(0 0 0 0)!important;
    clip-path:inset(50%)!important;white-space:nowrap!important;
  }
}
\n\n/* V2.5.23 - mobile dropdown definitive touch fix\n * The native-select overlay used in 2.5.22 is removed.  The real custom\n * button is the only touch target; the menu is portaled to <body> by JS.\n */\n@media (max-width:760px){\n  .sgp-wrap .sgp-group-select{\n    position:relative!important;\n    z-index:2147483001!important;\n    overflow:visible!important;\n    isolation:auto!important;\n    min-height:46px!important;\n  }\n  .sgp-wrap .sgp-group-toggle{\n    position:relative!important;\n    inset:auto!important;\n    display:flex!important;\n    width:100%!important;\n    height:46px!important;\n    min-height:46px!important;\n    pointer-events:auto!important;\n    touch-action:manipulation!important;\n    cursor:pointer!important;\n    z-index:20!important;\n    -webkit-tap-highlight-color:transparent!important;\n  }\n  /* Hide the real select completely so it can never sit above/intercept the\n     button. JS keeps its value synchronized for filtering. */\n  .sgp-wrap .sgp-group-select>.sgp-group{\n    position:absolute!important;\n    width:1px!important;\n    height:1px!important;\n    min-height:1px!important;\n    left:0!important;\n    top:0!important;\n    opacity:0!important;\n    visibility:hidden!important;\n    pointer-events:none!important;\n    clip:rect(0 0 0 0)!important;\n    clip-path:inset(50%)!important;\n    appearance:none!important;\n    -webkit-appearance:none!important;\n  }\n  .sgp-wrap .sgp-group-options{\n    display:block!important;\n    position:fixed!important;\n    visibility:visible!important;\n    opacity:1!important;\n    pointer-events:auto!important;\n    z-index:2147483647!important;\n    max-height:min(62vh,480px)!important;\n    overflow-y:auto!important;\n    overflow-x:hidden!important;\n    -webkit-overflow-scrolling:touch!important;\n    touch-action:pan-y!important;\n  }\n  .sgp-wrap .sgp-group-options[hidden]{\n    display:none!important;\n    visibility:hidden!important;\n    opacity:0!important;\n    pointer-events:none!important;\n  }\n  .sgp-wrap .sgp-group-option,\n  .sgp-wrap .sgp-subtoggle{\n    min-height:42px!important;\n    touch-action:manipulation!important;\n    cursor:pointer!important;\n    -webkit-tap-highlight-color:transparent!important;\n  }\n}\n
/* V2.5.24 - single-event mobile dropdown fix */
@media (max-width:760px){
  .sgp-wrap .sgp-group-toggle{
    pointer-events:auto!important;
    touch-action:manipulation!important;
    -webkit-user-select:none!important;
    user-select:none!important;
  }
  .sgp-wrap .sgp-group-select,
  .sgp-wrap .sgp-group-toggle{
    -webkit-tap-highlight-color:transparent!important;
  }
}

/* V2.5.25 - friendly, reliable mobile group picker inspired by chip-style filters.
   Uses native <details>/<summary> opening on mobile, avoiding fragile click
   handlers for the main dropdown. */
.sgp-mobile-group-picker{display:none;}
@media(max-width:760px){
  .sgp-wrap .sgp-group-select{display:none!important;}
  .sgp-wrap .sgp-mobile-group-picker{display:block!important;position:relative!important;width:100%!important;z-index:2147483002!important;margin:0!important;}
  .sgp-wrap .sgp-mobile-group-picker>summary{list-style:none!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important;width:100%!important;min-height:52px!important;padding:0 16px!important;border:1.5px solid #17466f!important;border-radius:16px!important;background:#fff!important;color:#17466f!important;font:800 15px/1.2 inherit!important;cursor:pointer!important;touch-action:manipulation!important;-webkit-tap-highlight-color:transparent!important;box-shadow:0 5px 18px rgba(23,70,111,.08)!important;box-sizing:border-box!important;}
  .sgp-wrap .sgp-mobile-group-picker>summary::-webkit-details-marker{display:none!important;}
  .sgp-wrap .sgp-mobile-group-chevron{font-size:20px!important;line-height:1!important;transition:transform .18s ease!important;}
  .sgp-wrap .sgp-mobile-group-picker[open]>summary{border-color:#17466f!important;background:#f7fbfe!important;border-bottom-left-radius:10px!important;border-bottom-right-radius:10px!important;}
  .sgp-wrap .sgp-mobile-group-picker[open] .sgp-mobile-group-chevron{transform:rotate(180deg)!important;}
  .sgp-wrap .sgp-mobile-group-panel{position:absolute!important;left:0!important;right:0!important;top:calc(100% + 8px)!important;max-height:min(64vh,520px)!important;overflow-y:auto!important;overflow-x:hidden!important;padding:14px!important;border:2px solid #17466f!important;border-radius:18px!important;background:#fff!important;box-shadow:0 20px 55px rgba(15,48,76,.22)!important;z-index:2147483647!important;box-sizing:border-box!important;-webkit-overflow-scrolling:touch!important;overscroll-behavior:contain!important;}
  .sgp-wrap .sgp-mobile-group-head{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;padding:2px 2px 11px!important;margin-bottom:10px!important;border-bottom:1px solid #e5edf2!important;color:#17466f!important;font-weight:900!important;}
  .sgp-wrap .sgp-mobile-group-head small{color:#8393a0!important;font-size:11px!important;font-weight:700!important;}
  .sgp-wrap .sgp-mobile-group-chips{display:flex!important;flex-wrap:wrap!important;gap:9px!important;}
  .sgp-wrap .sgp-mobile-group-item{display:inline-flex!important;align-items:center!important;justify-content:space-between!important;gap:7px!important;min-height:42px!important;padding:8px 13px!important;border:1.5px solid #c8d6df!important;border-radius:999px!important;background:#fff!important;color:#17466f!important;font:800 13px/1.1 inherit!important;cursor:pointer!important;touch-action:manipulation!important;-webkit-tap-highlight-color:transparent!important;box-shadow:0 2px 7px rgba(23,70,111,.05)!important;}
  .sgp-wrap .sgp-mobile-group-item b{font-size:11px!important;color:#8495a2!important;}
  .sgp-wrap .sgp-mobile-group-item.is-selected{background:#17466f!important;border-color:#17466f!important;color:#fff!important;box-shadow:0 5px 14px rgba(23,70,111,.18)!important;}
  .sgp-wrap .sgp-mobile-group-item.is-selected b{color:#dcebf6!important;}
  .sgp-wrap .sgp-mobile-group-item.depth-1{margin-left:8px!important;}
  .sgp-wrap .sgp-mobile-group-item.depth-2{margin-left:16px!important;}
  .sgp-wrap .sgp-mobile-group-item.depth-3{margin-left:24px!important;}
  .sgp-wrap .sgp-mobile-group-item.depth-4{margin-left:32px!important;}
  .sgp-wrap .sgp-mobile-group-item.depth-5{margin-left:40px!important;}
}
\n/* V2.5.26 — professional mobile horizontal group submenu */\n@media(max-width:760px){.sgp-wrap .sgp-group-menu{display:flex!important;flex-wrap:nowrap!important;gap:8px!important;overflow-x:auto!important;overflow-y:visible!important;padding:2px 2px 10px!important;scrollbar-width:none!important;position:relative!important;z-index:2147483001!important}.sgp-wrap .sgp-group-menu::-webkit-scrollbar{display:none!important}.sgp-wrap .sgp-menu-item{flex:0 0 auto!important;position:relative!important;z-index:2147483002!important}.sgp-wrap .sgp-menu-item>.sgp-pill{min-height:40px!important;padding:9px 14px!important;border-radius:999px!important;font-size:12px!important;font-weight:800!important;box-shadow:0 2px 8px rgba(23,70,111,.07)!important}.sgp-wrap .sgp-menu-item.has-children>.sgp-pill:after{content:'⌄'!important;font-size:12px!important;margin-left:6px!important}body>.sgp-mobile-portal{display:block!important;visibility:visible!important;opacity:1!important;pointer-events:auto!important;background:#fff!important;border:1px solid #d7e3ea!important;border-radius:18px!important;box-shadow:0 18px 55px rgba(12,38,58,.22)!important;padding:8px!important}body>.sgp-mobile-portal .sgp-menu-item{display:block!important;position:relative!important;margin:0!important}body>.sgp-mobile-portal .sgp-pill{width:100%!important;min-height:44px!important;display:flex!important;align-items:center!important;justify-content:space-between!important;border:0!important;border-radius:11px!important;background:#fff!important;color:#254d67!important;padding:10px 12px!important;font-size:13px!important;font-weight:800!important;text-align:left!important}body>.sgp-mobile-portal .sgp-pill:after{display:none!important}body>.sgp-mobile-portal .sgp-pill:active,body>.sgp-mobile-portal .sgp-pill.is-active{background:#edf5fb!important;color:#17466f!important}body>.sgp-mobile-portal .sgp-pill b{margin-left:auto!important;color:#8298a7!important;font-size:11px!important}body>.sgp-mobile-portal .sgp-submenu{position:static!important;display:block!important;width:auto!important;max-height:none!important;margin:4px 0 5px 9px!important;padding:4px 0 4px 9px!important;border-left:2px solid #dce8ef!important;box-shadow:none!important;overflow:visible!important;background:transparent!important}}\n

/* V2.5.27 — mobile-first chip menu. The large duplicate dropdown is removed on
   phones. Parent chips open one professional, touch-friendly submenu panel. */
@media(max-width:760px){
  .sgp-wrap .sgp-group-select,
  .sgp-wrap .sgp-mobile-group-picker{display:none!important;}
  .sgp-wrap .sgp-group-menu{
    display:flex!important;flex-wrap:nowrap!important;align-items:center!important;gap:8px!important;
    width:100%!important;margin:0 0 12px!important;padding:2px 2px 10px!important;
    overflow-x:auto!important;overflow-y:visible!important;scrollbar-width:none!important;
    -webkit-overflow-scrolling:touch!important;touch-action:pan-x!important;
  }
  .sgp-wrap .sgp-group-menu::-webkit-scrollbar{display:none!important;}
  .sgp-wrap .sgp-menu-item{flex:0 0 auto!important;position:relative!important;z-index:2!important;}
  .sgp-wrap .sgp-menu-item>.sgp-pill,
  .sgp-wrap .sgp-menu-all>.sgp-pill{
    min-height:42px!important;padding:9px 14px!important;border-radius:999px!important;
    border:1px solid #d5e1e8!important;background:#fff!important;color:#17466f!important;
    box-shadow:0 3px 10px rgba(23,70,111,.07)!important;font-size:12px!important;font-weight:800!important;
    white-space:nowrap!important;touch-action:manipulation!important;-webkit-tap-highlight-color:transparent!important;
  }
  .sgp-wrap .sgp-menu-item>.sgp-pill.is-active,
  .sgp-wrap .sgp-menu-all>.sgp-pill.is-active{background:#17466f!important;border-color:#17466f!important;color:#fff!important;}
  .sgp-wrap .sgp-menu-item.has-children>.sgp-pill:after{content:'⌄'!important;margin-left:6px!important;font-size:12px!important;opacity:.8!important;}
  .sgp-wrap .sgp-menu-item.is-mobile-open>.sgp-pill{box-shadow:0 5px 16px rgba(23,70,111,.18)!important;transform:translateY(-1px)!important;}
}

/* Mobile submenu panel is portaled to body by JS so Elementor/galley overflow
   and image layers can never clip it. */
.sgp-mobile-submenu-panel{
  position:fixed!important;z-index:2147483647!important;box-sizing:border-box!important;
  background:#fff!important;color:#17466f!important;border:1.5px solid #17466f!important;
  border-radius:18px!important;padding:10px!important;box-shadow:0 22px 60px rgba(9,36,57,.25)!important;
  opacity:0!important;transform:translateY(-5px) scale(.985)!important;transition:opacity .16s ease,transform .16s ease!important;
  overflow:hidden!important;
}
.sgp-mobile-submenu-panel.is-visible{opacity:1!important;transform:none!important;}
.sgp-mobile-submenu-head{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important;padding:4px 4px 10px!important;margin-bottom:8px!important;border-bottom:1px solid #e2ebf0!important;}
.sgp-mobile-submenu-head strong{font-size:14px!important;font-weight:900!important;color:#17466f!important;}
.sgp-mobile-submenu-close{width:34px!important;height:34px!important;border:0!important;border-radius:50%!important;background:#edf4f8!important;color:#17466f!important;font-size:23px!important;line-height:1!important;cursor:pointer!important;touch-action:manipulation!important;}
.sgp-mobile-submenu-list{display:flex!important;flex-wrap:wrap!important;gap:8px!important;max-height:calc(62vh - 58px)!important;overflow:auto!important;padding:2px!important;-webkit-overflow-scrolling:touch!important;overscroll-behavior:contain!important;}
.sgp-mobile-submenu-item{display:inline-flex!important;align-items:center!important;justify-content:space-between!important;gap:7px!important;min-height:42px!important;padding:9px 13px!important;border:1px solid #cbd9e2!important;border-radius:999px!important;background:#fff!important;color:#17466f!important;font-size:12px!important;font-weight:800!important;cursor:pointer!important;touch-action:manipulation!important;-webkit-tap-highlight-color:transparent!important;}
.sgp-mobile-submenu-item:active,.sgp-mobile-submenu-item:hover{background:#eef6fb!important;border-color:#17466f!important;}
.sgp-mobile-submenu-item[data-depth="1"]{margin-left:8px!important;}
.sgp-mobile-submenu-item[data-depth="2"]{margin-left:16px!important;}
.sgp-mobile-submenu-item[data-depth="3"]{margin-left:24px!important;}
.sgp-mobile-submenu-item[data-depth="4"]{margin-left:32px!important;}
.sgp-mobile-submenu-item[data-depth="5"]{margin-left:40px!important;}
.sgp-mobile-submenu-item b{font-size:10px!important;color:#8296a3!important;}
@media(min-width:761px){.sgp-mobile-submenu-panel{display:none!important;}}

/* V2.5.29 — single professional group navigation on every device.
   The duplicate large group dropdown is intentionally removed. The pill row
   below the search field is now the only group navigation. */
.sgp-wrap .sgp-group-select,
.sgp-wrap .sgp-mobile-group-picker{display:none!important;}
.sgp-wrap .sgp-filters{grid-template-columns:minmax(250px,1fr) auto!important;align-items:start!important;}
.sgp-wrap .sgp-group-menu{
  display:flex!important;align-items:center!important;flex-wrap:wrap!important;gap:10px!important;
  width:100%!important;margin:0 0 18px!important;padding:2px 2px 12px!important;
  position:relative!important;z-index:30!important;
  border-bottom:1px solid #e8eef2!important;
}
.sgp-wrap .sgp-group-menu .sgp-menu-all,
.sgp-wrap .sgp-group-menu .sgp-menu-item{position:relative!important;flex:0 0 auto!important;}
.sgp-wrap .sgp-group-menu .sgp-pill{
  min-height:44px!important;padding:10px 15px!important;border-radius:999px!important;
  border:1px solid #d5e1e8!important;background:#fff!important;color:#17466f!important;
  box-shadow:0 3px 12px rgba(23,70,111,.07)!important;font-size:13px!important;font-weight:800!important;
  white-space:nowrap!important;cursor:pointer!important;touch-action:manipulation!important;
  -webkit-tap-highlight-color:transparent!important;transition:background .18s,transform .18s,box-shadow .18s,border-color .18s!important;
}
.sgp-wrap .sgp-group-menu .sgp-pill b{margin-left:5px!important;color:#8296a4!important;font-size:.92em!important;}
.sgp-wrap .sgp-group-menu .sgp-pill:hover{transform:translateY(-1px)!important;border-color:#a9c2d2!important;box-shadow:0 7px 18px rgba(23,70,111,.11)!important;}
.sgp-wrap .sgp-group-menu .sgp-pill.is-active,
.sgp-wrap .sgp-group-menu .sgp-menu-item.is-mobile-open>.sgp-pill{
  background:#17466f!important;border-color:#17466f!important;color:#fff!important;box-shadow:0 7px 18px rgba(23,70,111,.18)!important;
}
.sgp-wrap .sgp-group-menu .sgp-pill.is-active b{color:#dcebf6!important;}
.sgp-wrap .sgp-group-menu .sgp-menu-item.has-children>.sgp-pill:after{content:'⌄'!important;margin-left:7px!important;font-size:12px!important;opacity:.85!important;}
/* Desktop/tablet: click a parent to reveal a clean submenu directly under it. */
@media(min-width:761px){
  .sgp-wrap .sgp-group-menu .sgp-menu-item>.sgp-submenu{
    display:none!important;position:absolute!important;left:0!important;top:calc(100% + 8px)!important;min-width:210px!important;
    max-width:min(360px,70vw)!important;padding:8px!important;background:#fff!important;border:1px solid #d8e5ec!important;
    border-radius:16px!important;box-shadow:0 20px 55px rgba(15,42,61,.20)!important;z-index:2147483000!important;
  }
  .sgp-wrap .sgp-group-menu .sgp-menu-item.is-mobile-open>.sgp-submenu{display:block!important;}
  .sgp-wrap .sgp-group-menu .sgp-submenu .sgp-menu-item{display:block!important;margin:0!important;}
  .sgp-wrap .sgp-group-menu .sgp-submenu .sgp-pill{width:100%!important;display:flex!important;align-items:center!important;justify-content:space-between!important;border:0!important;border-radius:10px!important;box-shadow:none!important;background:#fff!important;color:#31566e!important;text-align:left!important;}
  .sgp-wrap .sgp-group-menu .sgp-submenu .sgp-pill:hover,
  .sgp-wrap .sgp-group-menu .sgp-submenu .sgp-pill.is-active{background:#edf5fb!important;color:#17466f!important;transform:none!important;}
  .sgp-wrap .sgp-group-menu .sgp-submenu .sgp-submenu{left:calc(100% + 6px)!important;top:0!important;}
}
@media(max-width:760px){
  .sgp-wrap .sgp-filters{grid-template-columns:1fr!important;}
  .sgp-wrap .sgp-group-menu{
    flex-wrap:nowrap!important;overflow-x:auto!important;overflow-y:visible!important;scrollbar-width:none!important;
    -webkit-overflow-scrolling:touch!important;touch-action:pan-x!important;padding-bottom:12px!important;
  }
  .sgp-wrap .sgp-group-menu::-webkit-scrollbar{display:none!important;}
  .sgp-wrap .sgp-group-menu .sgp-pill{min-height:42px!important;padding:9px 14px!important;font-size:12px!important;}
  .sgp-wrap .sgp-menu-item.is-mobile-open>.sgp-pill{transform:translateY(-1px)!important;}
}
/* Mobile submenu portal: one clean panel, no nested fly-out. */
.sgp-mobile-submenu-panel{
  position:fixed!important;z-index:2147483647!important;box-sizing:border-box!important;
  padding:10px!important;background:#fff!important;border:1px solid #d7e4eb!important;border-radius:20px!important;
  box-shadow:0 24px 70px rgba(10,35,54,.28)!important;max-height:62vh!important;overflow:auto!important;
  -webkit-overflow-scrolling:touch!important;overscroll-behavior:contain!important;opacity:0!important;transform:translateY(6px)!important;
  transition:opacity .16s ease,transform .16s ease!important;pointer-events:auto!important;
}
.sgp-mobile-submenu-panel.is-visible{opacity:1!important;transform:none!important;}
.sgp-mobile-submenu-head{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;padding:5px 4px 12px!important;margin-bottom:8px!important;border-bottom:1px solid #e5edf2!important;color:#17466f!important;}
.sgp-mobile-submenu-head strong{font-size:16px!important;font-weight:900!important;}
.sgp-mobile-submenu-close{width:38px!important;height:38px!important;border:0!important;border-radius:50%!important;background:#eef5f9!important;color:#17466f!important;font-size:24px!important;line-height:1!important;cursor:pointer!important;}
.sgp-mobile-submenu-list{display:flex!important;flex-wrap:wrap!important;gap:9px!important;}
.sgp-mobile-submenu-item{display:inline-flex!important;align-items:center!important;justify-content:space-between!important;gap:7px!important;min-height:42px!important;padding:9px 13px!important;border:1.5px solid #cbd9e2!important;border-radius:999px!important;background:#fff!important;color:#17466f!important;font:800 13px/1.1 inherit!important;cursor:pointer!important;touch-action:manipulation!important;-webkit-tap-highlight-color:transparent!important;}
.sgp-mobile-submenu-item:hover,.sgp-mobile-submenu-item:active{background:#edf5fb!important;border-color:#9fbacc!important;}
.sgp-mobile-submenu-item b{font-size:11px!important;color:#8295a3!important;}

/* V2.5.30 — mobile submenu anchors to the full horizontal category row, not the tapped pill. */
@media(max-width:760px){
  .sgp-mobile-submenu-panel{
    z-index:2147483647!important;
    border:1.5px solid #17466f!important;
    border-radius:18px!important;
    padding:12px!important;
    background:#fff!important;
    box-shadow:0 24px 70px rgba(10,35,54,.28)!important;
  }
  .sgp-mobile-submenu-head{
    padding:5px 4px 12px!important;
    margin-bottom:10px!important;
  }
  .sgp-mobile-submenu-list{
    gap:9px!important;
  }
  .sgp-mobile-submenu-item{
    min-height:44px!important;
    padding:9px 14px!important;
    font-size:13px!important;
  }
}

/* V2.5.31 — professional hierarchical mobile submenu */
@media(max-width:760px){
  .sgp-mobile-submenu-panel{
    overflow:hidden!important;
    padding:12px!important;
  }
  .sgp-mobile-submenu-head-left{display:flex!important;align-items:center!important;gap:8px!important;min-width:0!important;}
  .sgp-mobile-submenu-back{
    width:36px!important;height:36px!important;flex:0 0 36px!important;border:0!important;border-radius:50%!important;
    background:#eef5f9!important;color:#17466f!important;font-size:26px!important;line-height:1!important;
    cursor:pointer!important;touch-action:manipulation!important;-webkit-tap-highlight-color:transparent!important;
  }
  .sgp-mobile-submenu-list{
    max-height:calc(68vh - 68px)!important;overflow:auto!important;-webkit-overflow-scrolling:touch!important;
    align-items:stretch!important;padding:2px!important;gap:9px!important;
  }
  .sgp-mobile-submenu-row{
    display:flex!important;align-items:stretch!important;width:100%!important;gap:6px!important;
  }
  .sgp-mobile-submenu-row .sgp-mobile-submenu-item{
    flex:1 1 auto!important;min-width:0!important;justify-content:space-between!important;
    text-align:left!important;border-radius:14px!important;
  }
  .sgp-mobile-submenu-row.has-children .sgp-mobile-submenu-item{border-color:#c3d5df!important;}
  .sgp-mobile-submenu-next{
    width:44px!important;min-width:44px!important;min-height:44px!important;border:1.5px solid #cbd9e2!important;
    border-radius:14px!important;background:#f7fafc!important;color:#17466f!important;font-size:25px!important;line-height:1!important;
    cursor:pointer!important;touch-action:manipulation!important;-webkit-tap-highlight-color:transparent!important;
  }
  .sgp-mobile-submenu-next:active,.sgp-mobile-submenu-next:hover{background:#edf5fb!important;border-color:#17466f!important;}
  .sgp-mobile-submenu-empty{padding:18px 10px!important;text-align:center!important;color:#8295a3!important;font-size:13px!important;}
}

/* V2.5.33 — compact multi-select group filters with removable tags */
.sgp-selected-filters{display:flex;align-items:center;gap:8px;min-height:0;margin:-8px 0 16px;padding:0;flex-wrap:wrap;}
.sgp-selected-tags{display:flex;align-items:center;gap:7px;flex-wrap:wrap;min-width:0;}
.sgp-selected-tag{display:inline-flex!important;align-items:center!important;gap:8px!important;min-height:34px!important;padding:7px 10px 7px 12px!important;border:1px solid #17466f!important;border-radius:999px!important;background:#17466f!important;color:#fff!important;font:800 12px/1 inherit!important;cursor:pointer!important;touch-action:manipulation!important;-webkit-tap-highlight-color:transparent!important;}
.sgp-selected-tag:hover{background:#0e3557!important;border-color:#0e3557!important;}
.sgp-selected-x{display:grid!important;place-items:center!important;width:18px!important;height:18px!important;border-radius:50%!important;background:rgba(255,255,255,.18)!important;font-size:15px!important;line-height:1!important;}
.sgp-filter-reset{display:none!important;min-height:34px!important;padding:7px 13px!important;border:1px solid #cbd9e2!important;border-radius:999px!important;background:#fff!important;color:#17466f!important;font:800 12px/1 inherit!important;cursor:pointer!important;}
.sgp-selected-filters.has-selection .sgp-filter-reset{display:inline-flex!important;align-items:center!important;}
.sgp-wrap .sgp-group-menu{gap:6px!important;margin-bottom:12px!important;}
.sgp-wrap .sgp-group-menu .sgp-pill{min-height:36px!important;padding:7px 11px!important;font-size:11px!important;border-radius:999px!important;box-shadow:0 2px 7px rgba(23,70,111,.06)!important;}
.sgp-wrap .sgp-group-menu .sgp-pill b{font-size:.88em!important;}
@media(max-width:760px){
 .sgp-wrap .sgp-group-menu{gap:6px!important;padding:1px 1px 7px!important;margin-bottom:8px!important;}
 .sgp-wrap .sgp-group-menu .sgp-pill{min-height:34px!important;padding:7px 10px!important;font-size:11px!important;}
 .sgp-selected-filters{gap:6px;margin:-2px 0 12px;}
 .sgp-selected-tags{gap:6px;}
 .sgp-selected-tag,.sgp-filter-reset{min-height:32px!important;font-size:11px!important;padding-top:6px!important;padding-bottom:6px!important;}
 .sgp-mobile-submenu-item.is-selected{background:#17466f!important;border-color:#17466f!important;color:#fff!important;}
 .sgp-mobile-submenu-item.is-selected b{color:#dcebf6!important;}
}

/* V2.5.34 — compact submenu + wrapping category row */
@media(max-width:760px){
  /* Category chips may continue on the next line instead of disappearing off-screen. */
  .sgp-wrap .sgp-group-menu{
    display:flex!important;
    flex-wrap:wrap!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:6px!important;
    width:100%!important;
    overflow:visible!important;
    padding:1px 1px 8px!important;
    margin:0 0 9px!important;
    touch-action:manipulation!important;
  }
  .sgp-wrap .sgp-group-menu .sgp-menu-item,
  .sgp-wrap .sgp-group-menu .sgp-menu-all{flex:0 0 auto!important;min-width:0!important;}
  .sgp-wrap .sgp-group-menu .sgp-pill,
  .sgp-wrap .sgp-group-menu .sgp-menu-all>.sgp-pill{
    min-height:34px!important;
    height:34px!important;
    padding:6px 10px!important;
    font-size:11px!important;
    line-height:1!important;
    box-shadow:0 2px 7px rgba(23,70,111,.06)!important;
  }
  .sgp-wrap .sgp-group-menu .sgp-pill b{font-size:10px!important;margin-left:4px!important;}
  .sgp-wrap .sgp-group-menu .sgp-menu-item.has-children>.sgp-pill:after{margin-left:5px!important;font-size:11px!important;}

  /* Smaller, denser popup. No parent title text; only a compact close button remains. */
  .sgp-mobile-submenu-panel{
    width:min(92vw,520px)!important;
    max-width:92vw!important;
    max-height:50vh!important;
    padding:7px!important;
    border-radius:15px!important;
    border-width:1px!important;
    box-shadow:0 16px 42px rgba(10,35,54,.22)!important;
  }
  .sgp-mobile-submenu-head{
    height:30px!important;
    min-height:30px!important;
    padding:0!important;
    margin:0 0 5px!important;
    border-bottom:1px solid #edf2f5!important;
    display:flex!important;
    justify-content:flex-end!important;
    align-items:center!important;
  }
  .sgp-mobile-submenu-close{
    width:30px!important;
    height:30px!important;
    min-width:30px!important;
    padding:0!important;
    border-radius:50%!important;
    font-size:21px!important;
    line-height:30px!important;
  }
  .sgp-mobile-submenu-list{
    max-height:calc(50vh - 43px)!important;
    overflow:auto!important;
    gap:6px!important;
    padding:1px!important;
  }
  .sgp-mobile-submenu-item{
    min-height:38px!important;
    padding:7px 10px!important;
    border-radius:11px!important;
    font-size:12px!important;
    line-height:1.15!important;
  }
  .sgp-mobile-submenu-item b{font-size:10px!important;}
}

/* V2.5.35 — dedicated Karikatur type switcher */
.sgp-type-filter{
  width:min(760px,100%);
  margin:4px auto 12px;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px;
  align-items:stretch;
  justify-content:center;
}
.sgp-type-btn{
  min-width:0;
  min-height:42px;
  padding:9px 12px;
  border:1px solid #d6e1e8;
  background:var(--sgp-type-inactive-bg,#fff);
  color:var(--sgp-type-inactive-color,#17466f);
  border-radius:999px;
  font:700 14px/1.1 inherit;
  cursor:pointer;
  touch-action:manipulation;
  -webkit-tap-highlight-color:transparent;
  transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease,filter .16s ease;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.sgp-type-btn:not(.is-active){background:var(--sgp-type-inactive-bg,#fff)!important;color:var(--sgp-type-inactive-color,#17466f)!important;}
.sgp-type-btn.is-active{
  background:var(--sgp-type-active-bg,#000)!important;
  color:var(--sgp-type-active-color,#fff)!important;
  border-color:var(--sgp-type-active-bg,#000);
  box-shadow:0 5px 14px rgba(23,70,111,.13);
  transform:translateY(-1px);
}
.sgp-type-btn:active{transform:translateY(0);}
.sgp-type-shape-rounded .sgp-type-btn{border-radius:12px;}
.sgp-type-shape-square .sgp-type-btn{border-radius:6px;}
.sgp-type-filter[data-all-active="1"] .sgp-type-btn[data-type="standard"]::after,
.sgp-type-filter[data-all-active="1"] .sgp-type-btn[data-type="pro"]::after{content:' ✓';font-size:.9em;opacity:.72;}
@media(max-width:760px){
  .sgp-type-filter{width:100%;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin:3px 0 10px;}
  .sgp-type-btn{min-height:40px;padding:8px 5px;font-size:12px;letter-spacing:-.1px;}
}
@media(min-width:761px){
  .sgp-type-filter{margin-left:auto;margin-right:auto;}
  .sgp-type-btn:hover{filter:brightness(.985);box-shadow:0 5px 14px rgba(23,70,111,.09);}
}
.sgp-type-btn .sgp-type-count{font-size:.82em;opacity:.62;margin-left:3px;font-weight:800;}
.sgp-type-btn.is-active .sgp-type-count{opacity:.82;}


/* V2.5.36 — Type switcher is intentionally exactly two buttons: Standart / Pro. */
.sgp-wrap .sgp-type-filter{
  width:min(760px,100%)!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
}
.sgp-wrap .sgp-type-btn{
  min-width:0!important;
}
@media(max-width:760px){
  .sgp-wrap .sgp-type-filter{
    width:100%!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:6px!important;
  }
}

/* V2.5.36 — the lower group menu is rebuilt for the selected type. */
.sgp-wrap .sgp-group-menu{position:relative;z-index:50;}


/* V2.5.37 - Professional full-screen single-image preview */
body.sgp-preview-fullscreen-open .sgp-hidden-during-preview{display:none!important;visibility:hidden!important;pointer-events:none!important;}
body.sgp-preview-fullscreen-open .sgp-floating-wa{display:none!important;}
.sgp-modal.is-open{position:fixed!important;inset:0!important;width:100vw!important;height:100dvh!important;overflow:hidden!important;background:#07141f!important;}
.sgp-modal.is-open .sgp-backdrop{background:rgba(3,12,20,.94)!important;backdrop-filter:blur(4px)!important;}
.sgp-modal.is-open .sgp-dialog{position:relative!important;left:0!important;top:0!important;transform:none!important;width:100vw!important;max-width:none!important;height:100dvh!important;max-height:none!important;margin:0!important;border-radius:0!important;overflow:hidden!important;background:#fff!important;box-shadow:none!important;}
.sgp-modal.is-open .sgp-modal-content{width:100%;height:100%;min-height:0!important;grid-template-columns:minmax(0,1.35fr) minmax(330px,.65fr)!important;}
.sgp-modal.is-open .sgp-viewer{height:100%!important;min-height:0!important;background:#07141f!important;overflow:hidden!important;}
.sgp-modal.is-open .sgp-viewer-top{height:58px!important;min-height:58px!important;flex:0 0 58px!important;padding:0 18px!important;background:linear-gradient(180deg,#0c1d2b,#091723)!important;}
.sgp-modal.is-open .sgp-viewer-count{font-size:13px!important;color:#e8f0f5!important;}
.sgp-modal.is-open .sgp-viewer-tools button{height:38px!important;min-width:42px!important;border-radius:10px!important;background:rgba(255,255,255,.08)!important;border-color:rgba(255,255,255,.18)!important;}
.sgp-modal.is-open .sgp-zoom-stage{height:calc(100% - 58px)!important;min-height:0!important;background:#07141f!important;overflow:hidden!important;}
.sgp-modal.is-open .sgp-image-wrap{position:relative!important;width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;display:flex!important;align-items:center!important;justify-content:center!important;overflow:visible!important;}
.sgp-modal.is-open .sgp-zoom-image{max-width:calc(100% - 110px)!important;max-height:calc(100% - 56px)!important;box-shadow:0 18px 70px rgba(0,0,0,.42)!important;}
.sgp-modal.is-open .sgp-nav{width:48px!important;height:48px!important;}
.sgp-modal.is-open .sgp-modal-info{height:100%!important;max-height:none!important;min-width:0!important;padding:62px 30px 28px!important;overflow-y:auto!important;overscroll-behavior:contain!important;background:#fff!important;}
.sgp-modal.is-open .sgp-modal-info h2{font-size:clamp(26px,2.6vw,38px)!important;}
.sgp-modal.is-open .sgp-wa{position:sticky!important;bottom:8px!important;z-index:20!important;width:100%!important;min-height:58px!important;margin-top:24px!important;border:0!important;border-radius:16px!important;background:var(--sgp-admin-bg,#ffbd18)!important;color:var(--sgp-admin-color,#17466f)!important;box-shadow:0 12px 30px rgba(18,47,67,.18),0 0 0 1px rgba(23,70,111,.08)!important;}
.sgp-modal.is-open .sgp-wa:after{content:'›';font-size:25px;line-height:1;margin-left:auto;margin-right:2px;opacity:.7;}
.sgp-modal.is-open .sgp-close{top:10px!important;right:12px!important;width:44px!important;height:44px!important;z-index:100!important;}

/* V2.5.37 - watermark count, coordinate, spread and size */
.sgp-preview-watermark{position:absolute!important;inset:0!important;max-width:none!important;display:block!important;z-index:5!important;pointer-events:none!important;}
.sgp-preview-watermark .sgp-wm-item{position:absolute!important;transform:translate(-50%,-50%);display:flex!important;align-items:center!important;justify-content:center!important;gap:9px!important;max-width:42%!important;white-space:nowrap!important;pointer-events:none!important;user-select:none!important;}
.sgp-preview-watermark .sgp-wm-logo{display:block!important;width:auto!important;height:auto!important;object-fit:contain!important;}
.sgp-preview-watermark .sgp-wm-text{font-weight:900!important;letter-spacing:.3px!important;color:#fff!important;text-shadow:0 2px 5px rgba(0,0,0,.72)!important;white-space:nowrap!important;}
.sgp-preview-watermark.sgp-wm-size-small .sgp-wm-logo{max-width:70px!important;max-height:42px!important;}
.sgp-preview-watermark.sgp-wm-size-small .sgp-wm-text{font-size:12px!important;}
.sgp-preview-watermark.sgp-wm-size-medium .sgp-wm-logo{max-width:110px!important;max-height:70px!important;}
.sgp-preview-watermark.sgp-wm-size-medium .sgp-wm-text{font-size:18px!important;}
.sgp-preview-watermark.sgp-wm-size-large .sgp-wm-logo{max-width:150px!important;max-height:92px!important;}
.sgp-preview-watermark.sgp-wm-size-large .sgp-wm-text{font-size:25px!important;}

@media(max-width:760px){
 .sgp-modal.is-open .sgp-modal-content{display:flex!important;flex-direction:column!important;height:100dvh!important;overflow-y:auto!important;overflow-x:hidden!important;}
 .sgp-modal.is-open .sgp-viewer{height:62dvh!important;min-height:360px!important;flex:0 0 62dvh!important;}
 .sgp-modal.is-open .sgp-viewer-top{height:54px!important;min-height:54px!important;flex-basis:54px!important;padding:0 10px!important;}
 .sgp-modal.is-open .sgp-zoom-stage{height:calc(100% - 54px)!important;}
 .sgp-modal.is-open .sgp-zoom-image{max-width:calc(100% - 70px)!important;max-height:calc(100% - 30px)!important;}
 .sgp-modal.is-open .sgp-modal-info{height:auto!important;min-height:38dvh!important;max-height:none!important;overflow:visible!important;padding:28px 18px 34px!important;}
 .sgp-modal.is-open .sgp-close{top:5px!important;right:7px!important;width:40px!important;height:40px!important;}
 .sgp-modal.is-open .sgp-nav{width:42px!important;height:42px!important;}
 .sgp-modal.is-open .sgp-wa{position:sticky!important;bottom:8px!important;min-height:56px!important;border-radius:15px!important;}
 .sgp-preview-watermark.sgp-wm-size-small .sgp-wm-text{font-size:10px!important;}
 .sgp-preview-watermark.sgp-wm-size-medium .sgp-wm-text{font-size:13px!important;}
 .sgp-preview-watermark.sgp-wm-size-large .sgp-wm-text{font-size:18px!important;}
 .sgp-preview-watermark.sgp-wm-size-small .sgp-wm-logo{max-width:55px!important;max-height:34px!important;}
 .sgp-preview-watermark.sgp-wm-size-medium .sgp-wm-logo{max-width:80px!important;max-height:50px!important;}
 .sgp-preview-watermark.sgp-wm-size-large .sgp-wm-logo{max-width:110px!important;max-height:68px!important;}
}

/* V2.5.38 — Tanya Admin professional alignment and sticky modes */
.sgp-modal.is-open .sgp-wa.sgp-admin-align-left{justify-content:flex-start!important;text-align:left!important}
.sgp-modal.is-open .sgp-wa.sgp-admin-align-center{justify-content:center!important;text-align:center!important}
.sgp-modal.is-open .sgp-wa.sgp-admin-align-right{justify-content:flex-end!important;text-align:right!important}
.sgp-modal.is-open .sgp-wa.sgp-admin-sticky-floating{position:fixed!important;right:24px!important;bottom:24px!important;left:auto!important;width:auto!important;min-width:210px!important;max-width:min(86vw,360px)!important;min-height:52px!important;margin:0!important;padding:10px 18px!important;border-radius:999px!important;z-index:2147483647!important;box-shadow:0 16px 40px rgba(8,34,52,.28),0 0 0 1px rgba(255,255,255,.25)!important}
.sgp-modal.is-open .sgp-wa.sgp-admin-sticky-floating .sgp-admin-button-logo{max-width:28px!important;max-height:25px!important}
.sgp-modal.is-open .sgp-wa.sgp-admin-sticky-compact{width:auto!important;min-width:190px!important;max-width:70%!important;min-height:48px!important;margin-top:18px!important;padding:9px 16px!important;border-radius:999px!important;display:flex!important;align-self:flex-end!important;box-shadow:0 10px 25px rgba(18,47,67,.15)!important}
.sgp-modal.is-open .sgp-wa.sgp-admin-sticky-bar{width:100%!important}
@media(max-width:760px){
 .sgp-modal.is-open .sgp-wa.sgp-admin-sticky-floating{right:14px!important;bottom:14px!important;min-width:0!important;width:auto!important;max-width:calc(100vw - 28px)!important;padding:9px 14px!important;min-height:48px!important}
 .sgp-modal.is-open .sgp-wa.sgp-admin-sticky-compact{max-width:100%!important;width:auto!important;align-self:stretch!important}
}

/* V2.5.41 — fixed preview action layer, initial-count fallback, professional sticky styles */
.sgp-modal.is-open .sgp-wa{
  position:fixed!important;
  left:auto!important;
  right:auto!important;
  bottom:max(14px,env(safe-area-inset-bottom))!important;
  z-index:2147483647!important;
  box-sizing:border-box!important;
  margin:0!important;
  pointer-events:auto!important;
  isolation:isolate!important;
  -webkit-transform:translateZ(0)!important;
  transform:translateZ(0)!important;
}
.sgp-modal.is-open .sgp-wa:after{content:none!important;display:none!important}
.sgp-modal.is-open .sgp-wa.sgp-admin-sticky-bar{
  left:0!important;right:0!important;bottom:0!important;width:100vw!important;max-width:none!important;min-height:58px!important;padding:10px 28px max(10px,env(safe-area-inset-bottom))!important;border-radius:0!important;
  box-shadow:0 -8px 28px rgba(8,34,52,.20),0 -1px 0 rgba(255,255,255,.22)!important;
}
.sgp-modal.is-open .sgp-wa.sgp-admin-sticky-floating{
  right:22px!important;bottom:max(22px,calc(14px + env(safe-area-inset-bottom)))!important;width:auto!important;min-width:210px!important;max-width:min(86vw,380px)!important;min-height:54px!important;padding:10px 18px!important;border-radius:999px!important;
  box-shadow:0 18px 44px rgba(8,34,52,.30),0 0 0 1px rgba(255,255,255,.30)!important;
}
.sgp-modal.is-open .sgp-wa.sgp-admin-sticky-compact{
  right:22px!important;bottom:max(22px,calc(14px + env(safe-area-inset-bottom)))!important;left:auto!important;width:auto!important;min-width:170px!important;max-width:min(72vw,300px)!important;min-height:48px!important;padding:9px 16px!important;border-radius:999px!important;
  box-shadow:0 14px 34px rgba(8,34,52,.24),0 0 0 1px rgba(23,70,111,.08)!important;
}
.sgp-modal.is-open .sgp-wa.sgp-admin-sticky-card{
  right:22px!important;bottom:max(22px,calc(14px + env(safe-area-inset-bottom)))!important;left:auto!important;width:auto!important;min-width:220px!important;max-width:min(84vw,360px)!important;min-height:58px!important;padding:10px 18px!important;border-radius:16px!important;
  box-shadow:0 18px 46px rgba(8,34,52,.30),0 0 0 1px rgba(255,255,255,.42)!important;
}
.sgp-modal.is-open .sgp-wa .sgp-admin-button-logo{flex:0 0 auto!important;width:auto!important;height:auto!important;max-width:30px!important;max-height:28px!important;object-fit:contain!important}
.sgp-modal.is-open .sgp-wa span:not(.sgp-wa-icon){overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}
.sgp-modal.is-open .sgp-wa.sgp-admin-align-left{justify-content:flex-start!important}
.sgp-modal.is-open .sgp-wa.sgp-admin-align-center{justify-content:center!important}
.sgp-modal.is-open .sgp-wa.sgp-admin-align-right{justify-content:flex-end!important}

/* The preview itself owns the viewport. Only its content can scroll; the page underneath stays locked. */
body.sgp-preview-fullscreen-open{overflow:hidden!important;height:100%!important;overscroll-behavior:none!important}
.sgp-modal.is-open .sgp-modal-content{overflow:hidden!important}
@media(max-width:760px){
  .sgp-modal.is-open .sgp-modal-content{display:block!important;height:100dvh!important;overflow-y:auto!important;overflow-x:hidden!important;-webkit-overflow-scrolling:touch!important;overscroll-behavior:contain!important;padding-bottom:0!important}
  .sgp-modal.is-open .sgp-viewer{height:62dvh!important;min-height:360px!important;overflow:hidden!important}
  .sgp-modal.is-open .sgp-modal-info{height:auto!important;min-height:38dvh!important;max-height:none!important;overflow:visible!important;padding:28px 18px 100px!important}
  .sgp-modal.is-open .sgp-wa.sgp-admin-sticky-bar{left:0!important;right:0!important;bottom:0!important;width:100vw!important;min-height:56px!important;padding:9px 16px max(9px,env(safe-area-inset-bottom))!important;border-radius:0!important}
  .sgp-modal.is-open .sgp-wa.sgp-admin-sticky-floating{right:14px!important;bottom:max(14px,calc(10px + env(safe-area-inset-bottom)))!important;min-width:0!important;max-width:calc(100vw - 28px)!important;min-height:50px!important;padding:9px 14px!important}
  .sgp-modal.is-open .sgp-wa.sgp-admin-sticky-compact{right:14px!important;bottom:max(14px,calc(10px + env(safe-area-inset-bottom)))!important;min-width:0!important;max-width:calc(100vw - 28px)!important;min-height:48px!important;padding:9px 14px!important}
  .sgp-modal.is-open .sgp-wa.sgp-admin-sticky-card{right:14px!important;bottom:max(14px,calc(10px + env(safe-area-inset-bottom)))!important;min-width:0!important;max-width:calc(100vw - 28px)!important;min-height:52px!important;padding:9px 14px!important;border-radius:14px!important}
}

/* V2.5.41 — preview viewport polish
   Desktop: Tanya Admin stays inside the right information panel, directly below details.
   Mobile: preview owns the full viewport and the action bar stays fixed above the device safe area. */
.sgp-modal.is-open{
  background:#fff!important;
}
.sgp-modal.is-open .sgp-backdrop{
  background:#fff!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}
.sgp-modal.is-open .sgp-dialog{
  background:#fff!important;
}
@media(min-width:761px){
  .sgp-modal.is-open .sgp-modal-content{
    background:#fff!important;
  }
  .sgp-modal.is-open .sgp-modal-info{
    position:relative!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    overflow-y:auto!important;
    background:#fff!important;
  }
  .sgp-modal.is-open .sgp-wa{
    position:relative!important;
    left:auto!important;
    right:auto!important;
    bottom:auto!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin:24px 0 0!important;
    flex:0 0 auto!important;
    align-self:stretch!important;
    border-radius:14px!important;
    min-height:54px!important;
    padding:10px 18px!important;
    z-index:20!important;
    box-shadow:0 10px 26px rgba(8,34,52,.14),0 0 0 1px rgba(23,70,111,.07)!important;
  }
  .sgp-modal.is-open .sgp-wa.sgp-admin-sticky-floating,
  .sgp-modal.is-open .sgp-wa.sgp-admin-sticky-compact,
  .sgp-modal.is-open .sgp-wa.sgp-admin-sticky-card{
    position:relative!important;
    left:auto!important;
    right:auto!important;
    bottom:auto!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    align-self:stretch!important;
    border-radius:14px!important;
    margin:24px 0 0!important;
  }
}
@media(max-width:760px){
  .sgp-modal.is-open{
    background:#fff!important;
    isolation:isolate!important;
  }
  .sgp-modal.is-open .sgp-backdrop{
    background:#fff!important;
  }
  .sgp-modal.is-open .sgp-dialog{
    background:#fff!important;
    width:100vw!important;
    max-width:100vw!important;
    height:100dvh!important;
    max-height:100dvh!important;
  }
  .sgp-modal.is-open .sgp-modal-content{
    background:#fff!important;
  }
  .sgp-modal.is-open .sgp-viewer{
    background:#07141f!important;
  }
  .sgp-modal.is-open .sgp-modal-info{
    background:#fff!important;
  }
  .sgp-modal.is-open .sgp-wa.sgp-admin-sticky-bar{
    position:fixed!important;
    left:0!important;
    right:0!important;
    bottom:0!important;
    width:100vw!important;
    max-width:100vw!important;
    min-height:58px!important;
    border-radius:0!important;
    margin:0!important;
    z-index:2147483647!important;
    box-shadow:0 -8px 28px rgba(8,34,52,.18),0 -1px 0 rgba(255,255,255,.35)!important;
  }
  .sgp-modal.is-open .sgp-wa.sgp-admin-sticky-floating,
  .sgp-modal.is-open .sgp-wa.sgp-admin-sticky-compact,
  .sgp-modal.is-open .sgp-wa.sgp-admin-sticky-card{
    position:fixed!important;
    z-index:2147483647!important;
  }
}

/* V2.5.42: TRUE FULL-VIEWPORT MOBILE PREVIEW / CLEAN WHITE UNDERLAY */
html.sgp-preview-html-open,
html.sgp-preview-html-open body{
    background:#fff!important;
}
body.sgp-preview-fullscreen-open{
    background:#fff!important;
    overflow:hidden!important;
}
body.sgp-preview-fullscreen-open::before{
    content:"";
    position:fixed;
    inset:0;
    z-index:2147482990;
    background:#fff!important;
    pointer-events:none;
}
.sgp-modal.is-open{
    position:fixed!important;
    inset:0!important;
    width:100vw!important;
    height:100dvh!important;
    min-height:100vh!important;
    max-height:none!important;
    margin:0!important;
    padding:0!important;
    background:#fff!important;
    z-index:2147483647!important;
    overflow:hidden!important;
}
.sgp-modal.is-open .sgp-backdrop{
    position:absolute!important;
    inset:0!important;
    background:#fff!important;
    opacity:1!important;
    backdrop-filter:none!important;
}
.sgp-modal.is-open .sgp-dialog{
    position:absolute!important;
    inset:0!important;
    left:0!important;
    top:0!important;
    transform:none!important;
    width:100%!important;
    max-width:none!important;
    height:100dvh!important;
    max-height:none!important;
    margin:0!important;
    border-radius:0!important;
    overflow:hidden!important;
    background:#fff!important;
    box-shadow:none!important;
    z-index:2!important;
}
.sgp-modal.is-open .sgp-modal-target,
.sgp-modal.is-open .sgp-modal-content{
    width:100%!important;
    height:100%!important;
    min-height:0!important;
}
@media(max-width:760px){
    .sgp-modal.is-open .sgp-modal-content{
        display:flex!important;
        flex-direction:column!important;
        overflow:hidden!important;
        background:#fff!important;
    }
    .sgp-modal.is-open .sgp-viewer{
        flex:0 0 56dvh!important;
        width:100%!important;
        min-height:0!important;
        height:56dvh!important;
        background:#09151f!important;
        overflow:hidden!important;
    }
    .sgp-modal.is-open .sgp-viewer-top{
        flex:0 0 48px!important;
        height:48px!important;
    }
    .sgp-modal.is-open .sgp-zoom-stage{
        height:calc(56dvh - 48px)!important;
        min-height:0!important;
        max-height:none!important;
    }
    .sgp-modal.is-open .sgp-modal-info{
        flex:1 1 auto!important;
        width:100%!important;
        max-height:none!important;
        min-height:0!important;
        overflow-y:auto!important;
        overflow-x:hidden!important;
        background:#fff!important;
        padding:24px 20px calc(24px + env(safe-area-inset-bottom,0px))!important;
        box-sizing:border-box!important;
        -webkit-overflow-scrolling:touch!important;
    }
    .sgp-modal.is-open .sgp-wa{
        position:sticky!important;
        left:auto!important;
        right:auto!important;
        bottom:env(safe-area-inset-bottom,0px)!important;
        z-index:20!important;
        width:100%!important;
        box-sizing:border-box!important;
        margin-top:20px!important;
        margin-bottom:2px!important;
    }
    .sgp-modal.is-open .sgp-close{
        z-index:100!important;
    }
}

/* V2.5.44 — FINAL MOBILE PREVIEW STACKING FIX
   The gallery wrapper uses an isolated stacking context for normal gallery
   controls. When the fullscreen preview opens, that context must be released;
   otherwise the white page mask can sit above the fixed modal on mobile.
   The preview itself becomes the only visual layer. */
body.sgp-preview-fullscreen-open .sgp-wrap{
  position:static!important;
  z-index:auto!important;
  isolation:auto!important;
  transform:none!important;
  filter:none!important;
  perspective:none!important;
  contain:none!important;
}
body.sgp-preview-fullscreen-open .sgp-modal.is-open{
  position:fixed!important;
  inset:0!important;
  width:100vw!important;
  height:100dvh!important;
  min-height:100vh!important;
  max-height:none!important;
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  z-index:2147483647!important;
}
body.sgp-preview-fullscreen-open .sgp-modal.is-open .sgp-dialog,
body.sgp-preview-fullscreen-open .sgp-modal.is-open .sgp-modal-target,
body.sgp-preview-fullscreen-open .sgp-modal.is-open .sgp-modal-content{
  visibility:visible!important;
  opacity:1!important;
}
@media(max-width:760px){
  body.sgp-preview-fullscreen-open .sgp-modal.is-open .sgp-modal-content{
    display:flex!important;
    flex-direction:column!important;
    width:100vw!important;
    height:100dvh!important;
    min-height:100dvh!important;
    max-height:none!important;
    overflow:hidden!important;
    background:#fff!important;
  }
}

/* V2.5.45: WhatsApp deep-link fallback host. It creates only the preview shell on
   pages/templates that do not contain the gallery shortcode, so the shared link
   opens the selected artwork directly instead of showing an empty archive. */
.sgp-deeplink-host{position:static!important;max-width:none!important;width:0!important;height:0!important;margin:0!important;padding:0!important;overflow:visible!important;z-index:2147483000!important;}
.sgp-deeplink-host .sgp-grid{display:none!important;}
.sgp-deeplink-host .sgp-modal{z-index:2147483647!important;}

/* V2.5.63 — FINAL MOBILE/GRID VISUAL POLISH
   Square artwork cards and tighter, cleaner filter spacing.
   These rules intentionally come last so older responsive overrides cannot
   change the public gallery back to 4:3 cards. */
.sgp-wrap .sgp-header{
  margin-bottom:10px!important;
}
.sgp-wrap .sgp-filters{
  gap:7px!important;
  margin-bottom:7px!important;
}
.sgp-wrap .sgp-type-filter{
  margin:3px auto 7px!important;
  gap:6px!important;
}
.sgp-wrap .sgp-type-btn{
  min-height:40px!important;
  height:40px!important;
  padding:7px 10px!important;
  font-size:13px!important;
}
.sgp-wrap .sgp-group-menu{
  gap:5px!important;
  margin:0 0 8px!important;
  padding:1px 1px 7px!important;
  border-bottom:1px solid #e8eef2!important;
}
.sgp-wrap .sgp-group-menu .sgp-pill,
.sgp-wrap .sgp-group-menu .sgp-menu-all>.sgp-pill{
  min-height:34px!important;
  height:34px!important;
  padding:6px 10px!important;
  font-size:11px!important;
  line-height:1!important;
}
.sgp-wrap .sgp-group-menu .sgp-pill b{
  margin-left:4px!important;
  font-size:10px!important;
}
.sgp-wrap .sgp-grid{
  gap:12px!important;
}
.sgp-wrap .sgp-card{
  min-width:0!important;
  width:100%!important;
}
.sgp-wrap .sgp-card-button{
  display:block!important;
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  aspect-ratio:1/1!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  border-radius:12px!important;
  overflow:hidden!important;
  background:#eef2f5!important;
}
.sgp-wrap .sgp-thumb{
  display:block!important;
  position:relative!important;
  width:100%!important;
  height:100%!important;
  min-height:0!important;
  aspect-ratio:1/1!important;
  overflow:hidden!important;
  background:#eef2f5!important;
  content-visibility:visible!important;
}
.sgp-wrap .sgp-thumb img,
.sgp-wrap .sgp-thumb-image{
  display:block!important;
  width:100%!important;
  height:100%!important;
  min-width:100%!important;
  min-height:100%!important;
  max-width:none!important;
  object-fit:cover!important;
  object-position:center center!important;
}
.sgp-wrap .sgp-cardbody,
.sgp-wrap .sgp-count{
  display:none!important;
}
@media(max-width:760px){
  .sgp-wrap{
    padding-left:10px!important;
    padding-right:10px!important;
    margin-top:16px!important;
    margin-bottom:36px!important;
  }
  .sgp-wrap .sgp-header{
    margin-bottom:8px!important;
  }
  .sgp-wrap .sgp-header h2{
    font-size:29px!important;
    line-height:1.08!important;
  }
  .sgp-wrap .sgp-filters{
    margin-bottom:5px!important;
  }
  .sgp-wrap .sgp-search{
    height:44px!important;
  }
  .sgp-wrap .sgp-search input,
  .sgp-wrap .sgp-search-btn{
    height:44px!important;
  }
  .sgp-wrap .sgp-type-filter{
    margin:2px 0 6px!important;
    gap:5px!important;
  }
  .sgp-wrap .sgp-type-btn{
    min-height:38px!important;
    height:38px!important;
    padding:6px 8px!important;
    font-size:12px!important;
  }
  .sgp-wrap .sgp-group-menu{
    gap:5px!important;
    margin-bottom:7px!important;
    padding:0 0 6px!important;
    flex-wrap:wrap!important;
    overflow:visible!important;
  }
  .sgp-wrap .sgp-group-menu .sgp-pill,
  .sgp-wrap .sgp-group-menu .sgp-menu-all>.sgp-pill{
    min-height:33px!important;
    height:33px!important;
    padding:6px 9px!important;
    font-size:11px!important;
  }
  .sgp-wrap .sgp-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:10px!important;
    margin-top:0!important;
  }
  .sgp-wrap .sgp-card-button,
  .sgp-wrap .sgp-thumb{
    aspect-ratio:1/1!important;
  }
}
@media(max-width:360px){
  .sgp-wrap .sgp-grid{gap:8px!important;}
  .sgp-wrap .sgp-group-menu .sgp-pill,
  .sgp-wrap .sgp-group-menu .sgp-menu-all>.sgp-pill{
    padding-left:8px!important;
    padding-right:8px!important;
    font-size:10.5px!important;
  }
}
@media(min-width:761px){
  .sgp-wrap .sgp-grid{
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:14px!important;
  }
  .sgp-wrap .sgp-card-button,
  .sgp-wrap .sgp-thumb{
    aspect-ratio:1/1!important;
  }
}
@media(min-width:761px) and (max-width:1050px){
  .sgp-wrap .sgp-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;}
}

/* V2.5.64 — definitive mobile square cards + aligned compact category menu */
.sgp-wrap .sgp-grid{
  align-items:start!important;
}
.sgp-wrap .sgp-card{
  min-width:0!important;
  width:100%!important;
  margin:0!important;
  padding:0!important;
}
.sgp-wrap .sgp-card-button{
  position:relative!important;
  display:block!important;
  width:100%!important;
  height:auto!important;
  aspect-ratio:1 / 1!important;
  min-height:0!important;
  max-height:none!important;
  padding:0!important;
  margin:0!important;
  overflow:hidden!important;
  border:0!important;
  box-sizing:border-box!important;
  line-height:0!important;
}
.sgp-wrap .sgp-thumb{
  position:absolute!important;
  inset:0!important;
  display:block!important;
  width:auto!important;
  height:auto!important;
  min-width:0!important;
  min-height:0!important;
  max-width:none!important;
  max-height:none!important;
  aspect-ratio:auto!important;
  overflow:hidden!important;
  margin:0!important;
  padding:0!important;
  box-sizing:border-box!important;
  background:#eef2f5!important;
}
.sgp-wrap .sgp-thumb img,
.sgp-wrap .sgp-thumb-image{
  position:absolute!important;
  inset:0!important;
  display:block!important;
  width:100%!important;
  height:100%!important;
  min-width:100%!important;
  min-height:100%!important;
  max-width:none!important;
  max-height:none!important;
  margin:0!important;
  padding:0!important;
  object-fit:cover!important;
  object-position:center center!important;
}
.sgp-wrap .sgp-noimg{
  position:absolute!important;
  inset:0!important;
  display:grid!important;
  place-items:center!important;
}

/* Keep every category chip on the same baseline and make rows compact. */
.sgp-wrap .sgp-group-menu{
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:stretch!important;
  align-content:flex-start!important;
  justify-content:flex-start!important;
  column-gap:6px!important;
  row-gap:6px!important;
  margin:0 0 10px!important;
  padding:0!important;
  line-height:1!important;
}
.sgp-wrap .sgp-group-menu > .sgp-menu-item,
.sgp-wrap .sgp-group-menu > .sgp-menu-all{
  display:flex!important;
  align-items:stretch!important;
  align-self:stretch!important;
  position:relative!important;
  flex:0 0 auto!important;
  height:36px!important;
  min-height:36px!important;
  margin:0!important;
  padding:0!important;
  line-height:1!important;
}
.sgp-wrap .sgp-group-menu > .sgp-menu-item > .sgp-pill,
.sgp-wrap .sgp-group-menu > .sgp-menu-all > .sgp-pill{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  vertical-align:top!important;
  height:36px!important;
  min-height:36px!important;
  box-sizing:border-box!important;
  margin:0!important;
  padding:0 11px!important;
  line-height:1!important;
  white-space:nowrap!important;
  transform:none!important;
}
.sgp-wrap .sgp-group-menu > .sgp-menu-item.has-children > .sgp-pill:after{
  display:inline-block!important;
  line-height:1!important;
  margin-left:5px!important;
  transform:translateY(0)!important;
}

@media(max-width:760px){
  .sgp-wrap .sgp-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    column-gap:10px!important;
    row-gap:10px!important;
  }
  .sgp-wrap .sgp-card-button{
    aspect-ratio:1 / 1!important;
    border-radius:10px!important;
  }
  .sgp-wrap .sgp-group-menu{
    column-gap:5px!important;
    row-gap:5px!important;
    margin:0 0 8px!important;
    padding:0!important;
  }
  .sgp-wrap .sgp-group-menu > .sgp-menu-item,
  .sgp-wrap .sgp-group-menu > .sgp-menu-all,
  .sgp-wrap .sgp-group-menu > .sgp-menu-item > .sgp-pill,
  .sgp-wrap .sgp-group-menu > .sgp-menu-all > .sgp-pill{
    height:34px!important;
    min-height:34px!important;
  }
  .sgp-wrap .sgp-group-menu > .sgp-menu-item > .sgp-pill,
  .sgp-wrap .sgp-group-menu > .sgp-menu-all > .sgp-pill{
    padding:0 10px!important;
    font-size:11px!important;
  }
}
@media(max-width:360px){
  .sgp-wrap .sgp-grid{column-gap:8px!important;row-gap:8px!important;}
  .sgp-wrap .sgp-group-menu{column-gap:4px!important;row-gap:4px!important;}
  .sgp-wrap .sgp-group-menu > .sgp-menu-item > .sgp-pill,
  .sgp-wrap .sgp-group-menu > .sgp-menu-all > .sgp-pill{
    padding:0 8px!important;
    font-size:10.5px!important;
  }
}

/* V2.5.65 — mobile submenu final stacking + content-fit layout.
   The portal must always sit below every wrapped top-level category chip,
   never beside/behind a sibling menu. */
@media(max-width:760px){
  body > .sgp-mobile-submenu-panel{
    position:fixed!important;
    z-index:2147483647!important;
    width:min(92vw, 760px)!important;
    max-width:calc(100vw - 20px)!important;
    height:auto!important;
    min-height:0!important;
    max-height:62vh!important;
    overflow:hidden!important;
    box-sizing:border-box!important;
    background:#fff!important;
    isolation:isolate!important;
  }
  body > .sgp-mobile-submenu-panel .sgp-mobile-submenu-list{
    display:flex!important;
    flex-wrap:wrap!important;
    align-items:center!important;
    align-content:flex-start!important;
    gap:7px!important;
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    max-height:calc(62vh - 43px)!important;
    overflow:auto!important;
    box-sizing:border-box!important;
  }
  body > .sgp-mobile-submenu-panel .sgp-mobile-submenu-item{
    flex:0 0 auto!important;
    width:auto!important;
    min-width:0!important;
    min-height:40px!important;
    height:auto!important;
    margin:0!important;
    padding:8px 12px!important;
    box-sizing:border-box!important;
  }
  body > .sgp-mobile-submenu-panel .sgp-mobile-submenu-head{
    height:30px!important;
    min-height:30px!important;
    margin:0 0 6px!important;
    padding:0!important;
  }
  body > .sgp-mobile-submenu-panel .sgp-mobile-submenu-close{
    width:30px!important;
    min-width:30px!important;
    height:30px!important;
    min-height:30px!important;
    font-size:21px!important;
  }
  /* While the portal is open, the original category strip remains behind it. */
  .sgp-wrap .sgp-group-menu{position:relative!important;z-index:100!important;}
}


/* V2.5.66 — definitive mobile submenu chip layout.
   The submenu must be one compact panel below the entire category area.
   Direct children are horizontal chips; never render them as full-width rows. */
@media (max-width:760px){
  body > .sgp-mobile-submenu-panel{
    position:fixed!important;
    z-index:2147483647!important;
    left:10px!important;
    right:10px!important;
    width:auto!important;
    max-width:none!important;
    height:auto!important;
    min-height:0!important;
    max-height:70vh!important;
    padding:8px!important;
    margin:0!important;
    box-sizing:border-box!important;
    overflow:visible!important;
    background:#fff!important;
    border:1px solid #cbd9e2!important;
    border-radius:16px!important;
    box-shadow:0 12px 35px rgba(10,35,54,.22)!important;
  }
  body > .sgp-mobile-submenu-panel .sgp-mobile-submenu-head{
    position:relative!important;
    display:block!important;
    height:34px!important;
    min-height:34px!important;
    margin:0 0 6px!important;
    padding:0!important;
    border-bottom:1px solid #edf2f5!important;
  }
  body > .sgp-mobile-submenu-panel .sgp-mobile-submenu-close{
    position:absolute!important;
    top:0!important;
    right:0!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:32px!important;
    height:32px!important;
    min-width:32px!important;
    min-height:32px!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    border-radius:50%!important;
    background:#eef5f9!important;
    color:#17466f!important;
    font-size:22px!important;
    line-height:1!important;
    z-index:3!important;
  }
  body > .sgp-mobile-submenu-panel .sgp-mobile-submenu-list{
    display:flex!important;
    flex-direction:row!important;
    flex-wrap:wrap!important;
    align-items:center!important;
    align-content:flex-start!important;
    justify-content:flex-start!important;
    gap:7px!important;
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    max-height:calc(70vh - 48px)!important;
    margin:0!important;
    padding:2px!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    box-sizing:border-box!important;
  }
  body > .sgp-mobile-submenu-panel .sgp-mobile-submenu-item,
  body > .sgp-mobile-submenu-panel .sgp-mobile-submenu-list > button{
    display:inline-flex!important;
    flex:0 0 auto!important;
    width:auto!important;
    min-width:0!important;
    max-width:100%!important;
    height:40px!important;
    min-height:40px!important;
    margin:0!important;
    padding:8px 12px!important;
    box-sizing:border-box!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:7px!important;
    white-space:nowrap!important;
    border:1px solid #cbd9e2!important;
    border-radius:12px!important;
    background:#fff!important;
    color:#17466f!important;
    font-size:12px!important;
    line-height:1!important;
  }
  body > .sgp-mobile-submenu-panel .sgp-mobile-submenu-item b{
    margin-left:3px!important;
    font-size:10px!important;
    color:#8295a3!important;
  }
  body > .sgp-mobile-submenu-panel .sgp-mobile-submenu-item.is-selected{
    background:#17466f!important;
    border-color:#17466f!important;
    color:#fff!important;
  }
  body > .sgp-mobile-submenu-panel .sgp-mobile-submenu-item.is-selected b{color:#dcebf6!important;}
}
\n\n/* V2.5.67 — universal professional submenu panel\n * One layout for mobile, tablet and desktop. The submenu is a compact panel\n * below the complete category row; children are chips, never full-width rows.\n */\n.sgp-mobile-submenu-panel{\n  display:block!important;\n  position:fixed!important;\n  z-index:2147483647!important;\n  box-sizing:border-box!important;\n  width:min(920px,calc(100vw - 24px))!important;\n  max-width:calc(100vw - 24px)!important;\n  height:auto!important;\n  min-height:0!important;\n  max-height:72vh!important;\n  padding:10px!important;\n  margin:0!important;\n  overflow:hidden!important;\n  background:#fff!important;\n  border:1px solid #cfdde5!important;\n  border-radius:16px!important;\n  box-shadow:0 18px 48px rgba(10,35,54,.22)!important;\n  opacity:0!important;\n  transform:translateY(-4px)!important;\n  transition:opacity .15s ease,transform .15s ease!important;\n  isolation:isolate!important;\n}\n.sgp-mobile-submenu-panel.is-visible{opacity:1!important;transform:none!important;}\n.sgp-mobile-submenu-head{\n  display:flex!important;align-items:center!important;justify-content:flex-end!important;\n  height:34px!important;min-height:34px!important;margin:0 0 7px!important;padding:0 1px 7px!important;\n  border-bottom:1px solid #edf2f5!important;\n}\n.sgp-mobile-submenu-close{\n  display:flex!important;align-items:center!important;justify-content:center!important;\n  width:32px!important;height:32px!important;min-width:32px!important;min-height:32px!important;\n  padding:0!important;margin:0!important;border:0!important;border-radius:50%!important;\n  background:#eef5f9!important;color:#17466f!important;font-size:22px!important;line-height:1!important;\n  cursor:pointer!important;touch-action:manipulation!important;\n}\n.sgp-mobile-submenu-list{\n  display:flex!important;flex-direction:row!important;flex-wrap:wrap!important;align-items:center!important;\n  align-content:flex-start!important;justify-content:flex-start!important;gap:8px!important;\n  width:100%!important;height:auto!important;min-height:0!important;margin:0!important;padding:2px!important;\n  overflow:auto!important;box-sizing:border-box!important;-webkit-overflow-scrolling:touch!important;\n}\n.sgp-mobile-submenu-item,\n.sgp-mobile-submenu-list > button{\n  display:inline-flex!important;flex:0 0 auto!important;width:auto!important;min-width:0!important;max-width:100%!important;\n  height:42px!important;min-height:42px!important;margin:0!important;padding:9px 14px!important;\n  box-sizing:border-box!important;align-items:center!important;justify-content:space-between!important;gap:7px!important;\n  white-space:nowrap!important;border:1px solid #cbd9e2!important;border-radius:12px!important;\n  background:#fff!important;color:#17466f!important;font:800 13px/1.1 inherit!important;\n  cursor:pointer!important;touch-action:manipulation!important;-webkit-tap-highlight-color:transparent!important;\n}\n.sgp-mobile-submenu-item:hover,.sgp-mobile-submenu-item:active{background:#edf5fb!important;border-color:#9fbacc!important;}\n.sgp-mobile-submenu-item.is-selected{background:#17466f!important;border-color:#17466f!important;color:#fff!important;}\n.sgp-mobile-submenu-item b{margin-left:3px!important;font-size:11px!important;color:#8295a3!important;}\n.sgp-mobile-submenu-item.is-selected b{color:#dcebf6!important;}\n.sgp-mobile-submenu-item[data-depth]{margin-left:0!important;}\n@media(max-width:760px){\n  .sgp-mobile-submenu-panel{width:calc(100vw - 20px)!important;max-width:calc(100vw - 20px)!important;padding:9px!important;border-radius:15px!important;max-height:70vh!important;}\n  .sgp-mobile-submenu-head{height:33px!important;min-height:33px!important;margin-bottom:6px!important;}\n  .sgp-mobile-submenu-close{width:32px!important;height:32px!important;min-width:32px!important;min-height:32px!important;}\n  .sgp-mobile-submenu-list{gap:7px!important;max-height:calc(70vh - 48px)!important;}\n  .sgp-mobile-submenu-item,.sgp-mobile-submenu-list > button{height:40px!important;min-height:40px!important;padding:8px 12px!important;font-size:12px!important;border-radius:11px!important;}\n}\n@media(min-width:761px){\n  .sgp-mobile-submenu-panel{display:block!important;}\n}\n@media(max-width:360px){\n  .sgp-mobile-submenu-item,.sgp-mobile-submenu-list > button{padding-left:10px!important;padding-right:10px!important;font-size:11.5px!important;}\n}\n
/* V2.5.68 — submenu stacking/placement hardening.
   The complete top-level menu row must finish BEFORE the popup begins. */
.sgp-wrap.sgp-submenu-open .sgp-group-menu.sgp-submenu-parent-open{
  z-index:1!important;
}
.sgp-wrap.sgp-submenu-open .sgp-group-menu.sgp-submenu-parent-open > .sgp-menu-item,
.sgp-wrap.sgp-submenu-open .sgp-group-menu.sgp-submenu-parent-open > .sgp-menu-all{
  z-index:1!important;
}
body > .sgp-mobile-submenu-panel{
  z-index:2147483647!important;
}


/* V2.5.70 — FINAL category-row placement fix.
   Mobile category buttons must WRAP naturally. A horizontally scrolling/nowrap
   strip lets the last visible sibling (e.g. Swasta) paint beside the portal.
   The submenu portal is intentionally positioned after the complete wrapped row. */
@media (max-width:760px){
  .sgp-wrap .sgp-group-menu{
    display:flex!important;
    flex-direction:row!important;
    flex-wrap:wrap!important;
    align-items:center!important;
    align-content:flex-start!important;
    justify-content:flex-start!important;
    gap:7px!important;
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    margin:0 0 12px!important;
    padding:2px 2px 4px!important;
    overflow:visible!important;
    overflow-x:visible!important;
    overflow-y:visible!important;
    position:relative!important;
    z-index:10!important;
    box-sizing:border-box!important;
  }
  .sgp-wrap .sgp-group-menu > .sgp-menu-all,
  .sgp-wrap .sgp-group-menu > .sgp-menu-item{
    position:relative!important;
    z-index:auto!important;
    flex:0 0 auto!important;
    align-self:flex-start!important;
  }
  .sgp-wrap .sgp-group-menu > .sgp-menu-all > .sgp-pill,
  .sgp-wrap .sgp-group-menu > .sgp-menu-item > .sgp-pill{
    position:relative!important;
    z-index:auto!important;
  }
  /* No legacy nested submenu is allowed to participate in the category-row
     height or paint over the portal. The JS portal is the only mobile submenu. */
  .sgp-wrap .sgp-group-menu > .sgp-menu-item > .sgp-submenu{
    display:none!important;
    visibility:hidden!important;
    pointer-events:none!important;
  }
  .sgp-wrap.sgp-submenu-open .sgp-group-menu,
  .sgp-wrap.sgp-submenu-open .sgp-group-menu.sgp-submenu-parent-open{
    z-index:1!important;
  }
  .sgp-wrap.sgp-submenu-open .sgp-group-menu > .sgp-menu-all,
  .sgp-wrap.sgp-submenu-open .sgp-group-menu > .sgp-menu-item,
  .sgp-wrap.sgp-submenu-open .sgp-group-menu > .sgp-menu-item > .sgp-pill,
  .sgp-wrap.sgp-submenu-open .sgp-group-menu > .sgp-menu-all > .sgp-pill{
    z-index:auto!important;
  }
}

/* V2.5.71 — compact mobile category spacing + separate selected-filter colors.
   Category buttons and selected filter tags intentionally use different colors. */
.sgp-wrap .sgp-group-menu .sgp-pill.is-active,
.sgp-wrap .sgp-group-menu .sgp-menu-item.is-mobile-open > .sgp-pill{
  background:var(--sgp-group-active-bg,#17466f)!important;
  border-color:var(--sgp-group-active-bg,#17466f)!important;
  color:var(--sgp-group-active-color,#fff)!important;
}
.sgp-wrap .sgp-group-menu .sgp-pill.is-active b{color:color-mix(in srgb,var(--sgp-group-active-color,#fff) 82%,transparent)!important;}
.sgp-wrap .sgp-selected-tag{
  background:var(--sgp-selected-tag-bg,#2f86b3)!important;
  border-color:var(--sgp-selected-tag-bg,#2f86b3)!important;
  color:var(--sgp-selected-tag-color,#fff)!important;
}
.sgp-wrap .sgp-selected-tag:hover{
  background:var(--sgp-selected-tag-bg,#2f86b3)!important;
  border-color:var(--sgp-selected-tag-bg,#2f86b3)!important;
  filter:brightness(.92);
}
.sgp-wrap .sgp-selected-x{background:rgba(255,255,255,.20)!important;}
.sgp-wrap .sgp-filter-reset{
  background:var(--sgp-reset-bg,#fff)!important;
  border-color:var(--sgp-reset-color,#17466f)!important;
  color:var(--sgp-reset-color,#17466f)!important;
}
@media(max-width:760px){
  .sgp-wrap .sgp-group-menu{
    column-gap:3.5px!important;
    row-gap:3.5px!important;
    gap:3.5px!important;
    margin-bottom:6px!important;
  }
  .sgp-wrap .sgp-selected-filters{gap:3.5px!important;margin:-1px 0 8px!important;}
  .sgp-wrap .sgp-selected-tags{gap:3.5px!important;}
}

/* v2.5.72: design ID + professional work actions */
.sgp-design-id{display:inline-flex;align-items:center;gap:5px;margin-top:-8px;margin-bottom:14px;padding:6px 10px;border-radius:8px;background:#eef6fa;color:#55717f;font-size:11px;font-weight:800}
.sgp-work-actions{display:flex;flex-wrap:wrap;align-items:center;gap:7px;margin:4px 0 18px}
.sgp-work-action,.sgp-share-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:38px;padding:8px 11px;border:1px solid #d7e2e8;border-radius:10px;background:#fff;color:#17466f;font-weight:800;font-size:12px;cursor:pointer;transition:.16s ease}
.sgp-work-action:hover,.sgp-share-btn:hover{transform:translateY(-1px);border-color:#17466f;box-shadow:0 5px 15px rgba(23,70,111,.10)}
.sgp-favorite-action.is-active{background:#17466f;color:#fff;border-color:#17466f}.sgp-fav-total,.sgp-share-total{font-size:10px;opacity:.72}
.sgp-action-group{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.sgp-action-label{font-size:11px;font-weight:900;color:#607784}.sgp-share-buttons{display:flex;gap:5px;flex-wrap:wrap}.sgp-share-btn{min-height:34px;padding:6px 9px;font-size:10px}.sgp-share-whatsapp{background:#e9fff1}.sgp-share-instagram{background:#fff0f7}.sgp-share-tiktok{background:#f2f2f2}
@media(max-width:760px){.sgp-modal-info{padding:24px 16px 22px}.sgp-work-actions{gap:6px;margin-bottom:14px}.sgp-work-action{min-height:36px;padding:7px 9px;font-size:11px}.sgp-share-btn{min-height:32px;padding:6px 8px}.sgp-design-id{margin-bottom:11px}}


/* V2.5.76 — Mobile type row: Standard 40% / Pro 40% / All Produk 20% */
@media (max-width:760px){
  .sgp-wrap .sgp-type-filter{
    display:grid!important;
    grid-template-columns:minmax(0,2fr) minmax(0,2fr) minmax(70px,1fr)!important;
    gap:5px!important;
    width:100%!important;
    margin:2px 0 6px!important;
    padding:0!important;
    align-items:stretch!important;
    box-sizing:border-box!important;
  }
  .sgp-wrap .sgp-type-filter .sgp-type-btn,
  .sgp-wrap .sgp-type-filter .sgp-all-inline{
    width:100%!important;
    min-width:0!important;
    height:38px!important;
    min-height:38px!important;
    margin:0!important;
    padding:6px 7px!important;
    box-sizing:border-box!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:3px!important;
    border-radius:999px!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    font-size:11px!important;
    line-height:1!important;
  }
  .sgp-wrap .sgp-type-filter .sgp-type-btn{
    background:var(--sgp-type-inactive-bg,#fff)!important;
    color:var(--sgp-type-inactive-color,#17466f)!important;
    border:1px solid rgba(23,70,111,.12)!important;
  }
  .sgp-wrap .sgp-type-filter .sgp-type-btn.is-active,
  .sgp-wrap .sgp-type-filter .sgp-all-inline.is-active{
    background:var(--sgp-type-active-bg,#000)!important;
    color:var(--sgp-type-active-color,#fff)!important;
    border-color:var(--sgp-type-active-bg,#000)!important;
    box-shadow:0 3px 9px rgba(23,70,111,.12)!important;
  }
  .sgp-wrap .sgp-type-filter .sgp-all-inline{
    background:var(--sgp-type-inactive-bg,#fff)!important;
    color:var(--sgp-type-inactive-color,#17466f)!important;
    border:1px solid rgba(23,70,111,.12)!important;
    font-weight:800!important;
  }
  .sgp-wrap .sgp-type-filter .sgp-type-count,
  .sgp-wrap .sgp-type-filter .sgp-all-inline b{
    flex:0 0 auto!important;
    font-size:9px!important;
    line-height:1!important;
    opacity:.72;
  }
  /* The old group-menu All item must never create a second All Produk row. */
  .sgp-wrap .sgp-group-menu > .sgp-menu-all,
  .sgp-wrap .sgp-group-menu > .sgp-menu-all > .sgp-pill{
    display:none!important;
  }
}
@media (min-width:761px){
  .sgp-wrap .sgp-type-filter .sgp-all-inline{display:none!important;}
}

/* V2.5.77 — unified 3-button type switcher across mobile/tablet/desktop */
.sgp-wrap .sgp-type-filter{display:grid!important;grid-template-columns:minmax(0,2fr) minmax(0,2fr) minmax(70px,1fr)!important;gap:6px!important;width:100%!important;max-width:760px!important;margin:4px auto 8px!important;align-items:stretch!important;}
.sgp-wrap .sgp-type-filter .sgp-type-btn,.sgp-wrap .sgp-type-filter .sgp-all-inline{display:flex!important;width:100%!important;min-width:0!important;height:40px!important;min-height:40px!important;margin:0!important;box-sizing:border-box!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:3px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;border-radius:999px!important;}
.sgp-wrap .sgp-type-filter .sgp-type-btn:not(.is-active),.sgp-wrap .sgp-type-filter .sgp-all-inline:not(.is-active){background:var(--sgp-type-inactive-bg,#fff)!important;color:var(--sgp-type-inactive-color,#17466f)!important;}
.sgp-wrap .sgp-type-filter .sgp-type-btn.is-active,.sgp-wrap .sgp-type-filter .sgp-all-inline.is-active{background:var(--sgp-type-active-bg,#000)!important;color:var(--sgp-type-active-color,#fff)!important;border-color:var(--sgp-type-active-bg,#000)!important;box-shadow:0 4px 10px rgba(0,0,0,.12)!important;}
.sgp-wrap .sgp-type-filter .sgp-all-inline{font-weight:800!important;}
@media(max-width:760px){.sgp-wrap .sgp-type-filter{gap:5px!important;margin:2px 0 6px!important}.sgp-wrap .sgp-type-filter .sgp-type-btn,.sgp-wrap .sgp-type-filter .sgp-all-inline{height:38px!important;min-height:38px!important;padding:6px 7px!important;font-size:11px!important}.sgp-wrap .sgp-type-filter .sgp-type-count,.sgp-wrap .sgp-type-filter .sgp-all-inline b{font-size:9px!important}}
@media(min-width:761px){.sgp-wrap .sgp-type-filter{gap:8px!important}.sgp-wrap .sgp-type-filter .sgp-type-btn,.sgp-wrap .sgp-type-filter .sgp-all-inline{font-size:13px!important}}

/* V2.5.80 — typography hierarchy + compact professional submenu
 * Main type switcher is intentionally strongest, category menu lighter,
 * and submenu text compact. Values are editable from Settings and shared
 * across mobile, tablet and desktop. Submenu buttons match selected-filter tag size.
 */
.sgp-wrap .sgp-type-filter .sgp-type-btn,
.sgp-wrap .sgp-type-filter .sgp-all-inline{
  font-size:var(--sgp-type-font-size,13px)!important;
  font-weight:var(--sgp-type-font-weight,800)!important;
}
.sgp-wrap .sgp-type-filter .sgp-type-count,
.sgp-wrap .sgp-type-filter .sgp-all-inline b{
  font-size:calc(var(--sgp-type-font-size,13px) * .72)!important;
  font-weight:600!important;
}
.sgp-wrap .sgp-group-menu > .sgp-menu-item > .sgp-pill,
.sgp-wrap .sgp-group-menu > .sgp-menu-all > .sgp-pill,
.sgp-wrap .sgp-group-menu .sgp-pill{
  font-size:var(--sgp-group-font-size,11px)!important;
  font-weight:var(--sgp-group-font-weight,600)!important;
}
.sgp-wrap .sgp-group-menu .sgp-pill b{
  font-size:calc(var(--sgp-group-font-size,11px) * .82)!important;
  font-weight:600!important;
}
/* Submenu = selected-filter tag footprint: compact, not larger than category chips. */
body > .sgp-mobile-submenu-panel .sgp-mobile-submenu-head{
  position:absolute!important;
  top:9px!important;
  right:9px!important;
  z-index:5!important;
  height:34px!important;
  min-height:34px!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  width:34px!important;
}
body > .sgp-mobile-submenu-panel .sgp-mobile-submenu-close{
  width:32px!important;
  height:32px!important;
  min-width:32px!important;
  min-height:32px!important;
  font-size:20px!important;
}
body > .sgp-mobile-submenu-panel .sgp-mobile-submenu-list{
  padding:0 40px 0 2px!important;
  gap:7px!important;
  min-height:34px!important;
  align-items:center!important;
}
body > .sgp-mobile-submenu-panel .sgp-mobile-submenu-item,
body > .sgp-mobile-submenu-panel .sgp-mobile-submenu-list > button{
  height:34px!important;
  min-height:34px!important;
  padding:6px 10px!important;
  border-radius:999px!important;
  font-size:var(--sgp-submenu-font-size,11px)!important;
  font-weight:var(--sgp-submenu-font-weight,600)!important;
  line-height:1!important;
}
body > .sgp-mobile-submenu-panel .sgp-mobile-submenu-item b,
body > .sgp-mobile-submenu-panel .sgp-mobile-submenu-list > button b{
  font-size:calc(var(--sgp-submenu-font-size,11px) * .82)!important;
  font-weight:600!important;
}
@media(max-width:760px){
  .sgp-wrap .sgp-type-filter .sgp-type-btn,
  .sgp-wrap .sgp-type-filter .sgp-all-inline{font-size:var(--sgp-type-font-size,13px)!important;font-weight:var(--sgp-type-font-weight,800)!important;}
  .sgp-wrap .sgp-group-menu > .sgp-menu-item > .sgp-pill,
  .sgp-wrap .sgp-group-menu > .sgp-menu-all > .sgp-pill,
  .sgp-wrap .sgp-group-menu .sgp-pill{font-size:var(--sgp-group-font-size,11px)!important;font-weight:var(--sgp-group-font-weight,600)!important;}
  body > .sgp-mobile-submenu-panel .sgp-mobile-submenu-list{padding-right:40px!important;gap:6px!important;}
  body > .sgp-mobile-submenu-panel .sgp-mobile-submenu-item,
  body > .sgp-mobile-submenu-panel .sgp-mobile-submenu-list > button{height:34px!important;min-height:34px!important;padding:6px 10px!important;font-size:var(--sgp-submenu-font-size,11px)!important;font-weight:var(--sgp-submenu-font-weight,600)!important;}
}

/* V2.5.81 — single-image preview action row: ID / Menyukai / Bagikan */
.sgp-modal-info{position:relative}
.sgp-work-actions{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1fr);gap:10px!important;align-items:stretch!important;margin:0 0 22px!important;padding:0!important}
.sgp-work-action,.sgp-share-toggle{min-width:0!important;min-height:48px!important;height:48px!important;padding:10px 12px!important;border:1px solid #dce6ed!important;border-radius:12px!important;background:#f6f9fc!important;color:#173d5f!important;font-size:13px!important;font-weight:800!important;box-shadow:none!important;transform:none!important;white-space:nowrap!important}
.sgp-work-action:hover,.sgp-share-toggle:hover{background:#edf4f9!important;border-color:#c7d8e5!important;box-shadow:none!important;transform:none!important}
.sgp-id-action{cursor:default!important}
.sgp-id-action strong{font-weight:900!important}
.sgp-favorite-action.is-active{background:#17466f!important;color:#fff!important;border-color:#17466f!important}
.sgp-share-wrap{position:relative;min-width:0}
.sgp-share-toggle{width:100%!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;cursor:pointer!important}
.sgp-share-toggle .sgp-share-chevron{font-size:16px;line-height:1;transition:transform .18s ease}
.sgp-share-toggle.is-open .sgp-share-chevron{transform:rotate(180deg)}
.sgp-share-toggle .sgp-share-total{font-size:10px;opacity:.68;margin-left:1px}
.sgp-share-popover{position:absolute;z-index:2147483647;top:calc(100% + 10px);right:0;width:min(390px,calc(100vw - 32px));padding:12px;background:#fff;border:1px solid #dfe7ed;border-radius:14px;box-shadow:0 16px 42px rgba(15,43,62,.18)}
.sgp-share-popover:before{content:"";position:absolute;top:-7px;right:28px;width:13px;height:13px;background:#fff;border-left:1px solid #dfe7ed;border-top:1px solid #dfe7ed;transform:rotate(45deg)}
.sgp-share-popover[hidden]{display:none!important}
.sgp-share-copy{width:100%;min-height:44px!important;margin:0 0 9px!important;background:#eef5fa!important;color:#173d5f!important;border-color:#dce6ed!important;border-radius:10px!important;font-size:12px!important;font-weight:800!important}
.sgp-share-platforms{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
.sgp-share-btn{width:100%;min-height:40px!important;border-radius:10px!important;padding:7px 8px!important;font-size:11px!important;font-weight:800!important}
.sgp-share-whatsapp{background:#eafaf0!important;color:#138a45!important}.sgp-share-facebook{background:#edf4ff!important;color:#1877f2!important}.sgp-share-instagram{background:#fff0f7!important;color:#d62976!important}.sgp-share-tiktok{background:#f2f2f2!important;color:#111!important}.sgp-share-telegram{background:#edf8ff!important;color:#168acd!important}.sgp-share-x{background:#111!important;color:#fff!important}.sgp-share-pinterest{background:#fff0f2!important;color:#d60023!important}
.sgp-modal-kicker{margin-top:2px!important}
@media(max-width:760px){
 .sgp-work-actions{grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1fr);gap:6px!important;margin-bottom:18px!important}
 .sgp-work-action,.sgp-share-toggle{min-height:42px!important;height:42px!important;padding:8px 7px!important;border-radius:10px!important;font-size:10.5px!important;gap:5px!important}
 .sgp-work-action .sgp-fav-total,.sgp-share-toggle .sgp-share-total{font-size:9px!important}
 /* Mobile share menu is positioned by JS as a fixed overlay so it can never
    be clipped by the scrolling preview panel or covered by the sticky WA. */
 .sgp-share-popover{position:fixed!important;left:12px;right:auto;width:min(330px,calc(100vw - 24px));top:auto;z-index:2147483646!important;max-height:calc(100dvh - 24px);overflow:auto}
 .sgp-share-popover:before{left:var(--sgp-share-arrow-left,50%);right:auto;margin-left:-6px}
 .sgp-share-platforms{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
 .sgp-share-btn{min-height:38px!important;font-size:10px!important}
}
@media(min-width:761px){.sgp-share-popover{min-width:360px}}

/* V2.5.83 — share popover mobile viewport-safe positioning. */
.sgp-share-popover{z-index:2147483647!important}

/* V2.5.83 final mobile overlay safety */
@media(max-width:760px){
  .sgp-share-popover{z-index:2147483647!important;position:fixed!important;max-width:calc(100vw - 24px)!important;box-sizing:border-box!important;}
  .sgp-share-popover:before{left:var(--sgp-share-arrow-left,50%)!important;}
  .sgp-modal.is-open .sgp-wa{z-index:2147483000!important;}
}

/* V2.5.84 — preview action interaction: no color change, only a short press/shrink. */
.sgp-modal .sgp-work-action,
.sgp-modal .sgp-share-toggle{
  -webkit-tap-highlight-color:transparent!important;
  transform:scale(1)!important;
  transition:transform .12s ease,background-color .12s ease,border-color .12s ease,box-shadow .12s ease!important;
}
.sgp-modal .sgp-work-action:active,
.sgp-modal .sgp-share-toggle:active,
.sgp-modal .sgp-work-action.sgp-pressed,
.sgp-modal .sgp-share-toggle.sgp-pressed{
  transform:scale(.96)!important;
  background:inherit!important;
  color:inherit!important;
  border-color:inherit!important;
  box-shadow:none!important;
}
.sgp-modal .sgp-favorite-action.is-active{
  background:#f6f9fc!important;
  color:#173d5f!important;
  border-color:#dce6ed!important;
}
.sgp-modal .sgp-tag-title{margin-top:18px!important;margin-bottom:8px!important;font-size:12px!important;font-weight:800!important;color:#5e7481!important;}
.sgp-modal .sgp-tags{display:flex!important;flex-wrap:wrap!important;gap:6px!important;margin:0 0 18px!important;}
.sgp-modal .sgp-modal-tag{display:inline-flex!important;align-items:center!important;min-height:30px!important;padding:6px 10px!important;border-radius:999px!important;border:1px solid #dce6ed!important;background:#f6f9fc!important;color:#17466f!important;font-size:11px!important;font-weight:700!important;cursor:pointer!important;}
.sgp-modal .sgp-modal-tag:hover{background:#edf4f9!important;}
@media(max-width:760px){
 .sgp-modal .sgp-tag-title{margin-top:14px!important;font-size:11px!important;}
 .sgp-modal .sgp-modal-tag{min-height:28px!important;padding:5px 9px!important;font-size:10px!important;}
}

/* v2.5.88 — compact selected filter tags
 * Selected-filter tags must always be visually smaller than the main group menu.
 * Layout/function are unchanged; this only adjusts sizing across breakpoints.
 */
.sgp-wrap .sgp-selected-filters{
  gap:6px!important;
}
.sgp-wrap .sgp-selected-tags{
  gap:6px!important;
  align-items:center!important;
}
.sgp-wrap .sgp-selected-tag,
.sgp-wrap .sgp-filter-reset{
  min-height:30px!important;
  height:30px!important;
  padding:5px 9px!important;
  border-radius:999px!important;
  font-size:11px!important;
  line-height:1!important;
}
.sgp-wrap .sgp-selected-tag{
  gap:6px!important;
  font-weight:700!important;
}
.sgp-wrap .sgp-selected-x{
  width:16px!important;
  height:16px!important;
  min-width:16px!important;
  font-size:13px!important;
}
.sgp-wrap .sgp-filter-reset{
  font-weight:700!important;
}
@media (min-width:761px){
  .sgp-wrap .sgp-selected-tag,
  .sgp-wrap .sgp-filter-reset{
    min-height:30px!important;
    height:30px!important;
    padding:5px 9px!important;
    font-size:11px!important;
  }
}
@media (min-width:761px) and (max-width:1050px){
  .sgp-wrap .sgp-selected-tag,
  .sgp-wrap .sgp-filter-reset{
    min-height:29px!important;
    height:29px!important;
    padding:5px 9px!important;
    font-size:10.5px!important;
  }
}
@media (max-width:760px){
  .sgp-wrap .sgp-selected-filters{
    gap:4px!important;
    margin:-1px 0 8px!important;
  }
  .sgp-wrap .sgp-selected-tags{
    gap:4px!important;
  }
  .sgp-wrap .sgp-selected-tag,
  .sgp-wrap .sgp-filter-reset{
    min-height:28px!important;
    height:28px!important;
    padding:4px 8px!important;
    font-size:10px!important;
    line-height:1!important;
  }
  .sgp-wrap .sgp-selected-tag{
    gap:5px!important;
  }
  .sgp-wrap .sgp-selected-x{
    width:15px!important;
    height:15px!important;
    min-width:15px!important;
    font-size:12px!important;
  }
}
@media (max-width:430px){
  .sgp-wrap .sgp-selected-tag,
  .sgp-wrap .sgp-filter-reset{
    min-height:27px!important;
    height:27px!important;
    padding:4px 7px!important;
    font-size:9.5px!important;
  }
  .sgp-wrap .sgp-selected-x{
    width:14px!important;
    height:14px!important;
    min-width:14px!important;
    font-size:11px!important;
  }
}
/* v2.5.90 - dual WhatsApp admin buttons */
.sgp-admin-buttons{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px!important;width:100%!important;margin-top:24px!important;z-index:2147483647!important}
.sgp-admin-buttons .sgp-admin-button{margin-top:0!important;width:100%!important;min-width:0!important;box-sizing:border-box!important;background:var(--sgp-admin-bg,#ffbd18)!important;color:var(--sgp-admin-color,#17466f)!important;display:flex!important;align-items:center!important;justify-content:var(--sgp-admin-align,center)!important;gap:8px!important;text-decoration:none!important;min-height:56px!important;padding:10px 14px!important;border:0!important;border-radius:15px!important;box-shadow:0 10px 25px rgba(18,47,67,.15)!important}
.sgp-admin-buttons .sgp-admin-button:hover{filter:brightness(.97)!important;color:var(--sgp-admin-color,#17466f)!important}
.sgp-admin-buttons .sgp-admin-button-logo{flex:0 0 auto!important;width:auto!important;height:auto!important;max-width:30px!important;max-height:28px!important;object-fit:contain!important}
.sgp-admin-buttons .sgp-admin-button span:not(.sgp-wa-icon){overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}
.sgp-admin-buttons.sgp-admin-align-left .sgp-admin-button{justify-content:flex-start!important;text-align:left!important}
.sgp-admin-buttons.sgp-admin-align-center .sgp-admin-button{justify-content:center!important;text-align:center!important}
.sgp-admin-buttons.sgp-admin-align-right .sgp-admin-button{justify-content:flex-end!important;text-align:right!important}
.sgp-admin-buttons.sgp-admin-sticky-bar{position:sticky!important;bottom:8px!important}
.sgp-admin-buttons.sgp-admin-sticky-floating{position:sticky!important;bottom:14px!important;grid-template-columns:repeat(2,minmax(180px,1fr))!important}
.sgp-admin-buttons.sgp-admin-sticky-compact{position:sticky!important;bottom:8px!important;grid-template-columns:repeat(2,minmax(0,1fr))!important}
.sgp-admin-buttons.sgp-admin-sticky-card{position:sticky!important;bottom:8px!important;grid-template-columns:repeat(2,minmax(0,1fr))!important}
@media(max-width:600px){
 .sgp-admin-buttons{gap:8px!important;margin-top:20px!important}
 .sgp-admin-buttons .sgp-admin-button{min-height:52px!important;padding:9px 10px!important;border-radius:13px!important;font-size:13px!important}
 .sgp-admin-buttons .sgp-admin-button-logo{max-width:25px!important;max-height:24px!important}
}

/* v2.5.93 - performance: keep filter swaps visually immediate and reduce off-screen work. */
.sgp-wrap .sgp-grid{contain:layout style;}
.sgp-wrap .sgp-card{content-visibility:auto;contain-intrinsic-size:240px 240px;}
.sgp-wrap.is-loading .sgp-grid{pointer-events:none;}
.sgp-wrap.is-loading .sgp-card-button{transition:none!important;}
.sgp-wrap .sgp-thumb-image{backface-visibility:hidden;}
@media(max-width:760px){
  .sgp-wrap .sgp-grid{contain:layout style;}
  .sgp-wrap .sgp-card{contain-intrinsic-size:160px 160px;}
}
/* v2.5.97: configurable fast-search typography */
.sgp-wrap .sgp-search input{color:var(--sgp-search-color,#233746)!important;font-family:var(--sgp-search-font,inherit)!important;font-size:var(--sgp-search-size,13px)!important}
.sgp-wrap .sgp-search input::placeholder{color:var(--sgp-search-color,#233746)!important;opacity:.72}

/* v2.5.98 - prevent text/I-beam cursor in the group filter area. */
.sgp-wrap .sgp-group-pills{cursor:default!important;caret-color:transparent!important;user-select:none;-webkit-user-select:none;}
.sgp-wrap .sgp-group-pills .sgp-pill{cursor:pointer!important;caret-color:transparent!important;user-select:none;-webkit-user-select:none;}
.sgp-wrap .sgp-group-pills .sgp-pill *{cursor:pointer!important;user-select:none;-webkit-user-select:none;}


/* v2.5.101 - preview group controls: rectangular, distinct from tags/menus */
.sg-preview-group,
.sg-preview-groups .sg-preview-group,
.sg-preview-group-item,
.sg-preview-category,
.saffana-preview-group,
.gallery-preview-group,
.preview-group {
  border-radius: 3px !important;
  box-shadow: none !important;
  padding: 1.05em 1.12em !important;
  line-height: 1.05 !important;
}
.sg-preview-group-list,
.sg-preview-groups {
  gap: 6px !important;
}


/* v2.5.101 - single-image preview group buttons */
.sgp-modal-info .sgp-group-pills .sgp-pill,
.sgp-modal-info .sgp-group-pills .sgp-pill b,
.sgp-modal-info .sgp-pill {
  box-sizing:border-box!important;
}
.sgp-modal-info .sgp-group-pills .sgp-pill {
  border-radius:4px!important;
  box-shadow:none!important;
  min-height:calc(1.10 * 34px)!important;
  height:auto!important;
  padding:7.7px 12.1px!important;
  font-size:12.1px!important;
  line-height:1.1!important;
}
.sgp-modal-info .sgp-group-pills {
  gap:7px!important;
}
@media(max-width:760px){
  .sgp-modal-info .sgp-group-pills .sgp-pill {
    min-height:37.4px!important;
    padding:7.7px 12.1px!important;
    font-size:12.1px!important;
    border-radius:4px!important;
    box-shadow:none!important;
  }
}

/* v2.5.119: Jumlah Wajah uses its own clickable group button; legacy group/tag rows no longer duplicate it. */
.sgp-modal-people-groups .sgp-modal-people-group-link{min-width:48px;text-align:center;}
.sgp-meta-people-row .sgp-modal-groups{display:flex!important;align-items:center;justify-content:flex-start;gap:7px;flex-wrap:wrap;}

/* V2.5.127 — Gallery Karikatur Compact Professional UI
 * UI/CSS ONLY. No filter/search/AJAX/data/URL/query logic is changed.
 * Scoped to .sgp-wrap and the existing mobile submenu portal only.
 */
.sgp-wrap{
  margin-top:14px!important;
  margin-bottom:24px!important;
  padding-left:14px!important;
  padding-right:14px!important;
}
.sgp-wrap .sgp-header{
  margin-bottom:7px!important;
}
.sgp-wrap .sgp-header h2{
  font-size:clamp(25px,3.5vw,40px)!important;
  line-height:1.08!important;
  letter-spacing:-.55px!important;
}
.sgp-wrap .sgp-filters{
  gap:6px!important;
  margin-bottom:4px!important;
}
.sgp-wrap .sgp-search{
  height:40px!important;
}
.sgp-wrap .sgp-search input,
.sgp-wrap .sgp-search-btn{
  height:40px!important;
}
.sgp-wrap .sgp-search input{
  padding-left:12px!important;
  padding-right:10px!important;
  border-radius:12px 0 0 12px!important;
}
.sgp-wrap .sgp-search-btn{
  width:46px!important;
  border-radius:0 12px 12px 0!important;
  font-size:20px!important;
}

/* Main type switcher: keep its existing 3-button behaviour, only compact the UI. */
.sgp-wrap .sgp-type-filter{
  gap:5px!important;
  margin:2px auto 5px!important;
}
.sgp-wrap .sgp-type-filter .sgp-type-btn,
.sgp-wrap .sgp-type-filter .sgp-all-inline{
  height:35px!important;
  min-height:35px!important;
  padding:5px 8px!important;
  border-radius:999px!important;
}
.sgp-wrap .sgp-type-filter .sgp-type-count,
.sgp-wrap .sgp-type-filter .sgp-all-inline b{
  font-size:9px!important;
}

/* RED AREA: top-level category buttons. Compact, but still comfortable on touch screens. */
.sgp-wrap .sgp-group-menu{
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:center!important;
  align-content:flex-start!important;
  gap:4px!important;
  column-gap:4px!important;
  row-gap:4px!important;
  margin:0 0 5px!important;
  padding:0 0 5px!important;
  border-bottom:0!important;
}
.sgp-wrap .sgp-group-menu > .sgp-menu-item,
.sgp-wrap .sgp-group-menu > .sgp-menu-all{
  height:31px!important;
  min-height:31px!important;
  margin:0!important;
}
.sgp-wrap .sgp-group-menu > .sgp-menu-item > .sgp-pill,
.sgp-wrap .sgp-group-menu > .sgp-menu-all > .sgp-pill{
  height:31px!important;
  min-height:31px!important;
  padding:4px 9px!important;
  border-radius:999px!important;
  font-size:11px!important;
  line-height:1!important;
  gap:2px!important;
  box-sizing:border-box!important;
}
.sgp-wrap .sgp-group-menu .sgp-pill b{
  margin-left:3px!important;
  font-size:9px!important;
  line-height:1!important;
}
.sgp-wrap .sgp-group-menu .sgp-menu-item.has-children > .sgp-pill:after{
  font-size:9px!important;
  margin-left:3px!important;
}

/* Desktop: use the available horizontal space without making the filter block tall. */
@media(min-width:761px){
  .sgp-wrap .sgp-group-menu > .sgp-menu-item > .sgp-pill,
  .sgp-wrap .sgp-group-menu > .sgp-menu-all > .sgp-pill{
    font-size:11px!important;
  }
}

/* Existing submenu inside the category hierarchy: approximately 15% smaller than main chips. */
.sgp-wrap .sgp-group-menu .sgp-submenu{
  min-width:170px!important;
  padding:5px!important;
  border-radius:10px!important;
  top:calc(100% + 4px)!important;
}
.sgp-wrap .sgp-group-menu .sgp-submenu .sgp-pill{
  min-height:27px!important;
  height:27px!important;
  padding:4px 8px!important;
  border-radius:8px!important;
  font-size:9.5px!important;
  line-height:1!important;
}
.sgp-wrap .sgp-group-menu .sgp-submenu .sgp-pill b{
  font-size:8px!important;
}

/* The JS mobile submenu is portalled to body; keep its existing behaviour and only resize it. */
body > .sgp-mobile-submenu-panel .sgp-mobile-submenu-list{
  gap:5px!important;
  padding-right:38px!important;
}
body > .sgp-mobile-submenu-panel .sgp-mobile-submenu-item,
body > .sgp-mobile-submenu-panel .sgp-mobile-submenu-list > button{
  height:29px!important;
  min-height:29px!important;
  padding:5px 9px!important;
  border-radius:999px!important;
  font-size:9.5px!important;
  line-height:1!important;
}
body > .sgp-mobile-submenu-panel .sgp-mobile-submenu-item b,
body > .sgp-mobile-submenu-panel .sgp-mobile-submenu-list > button b{
  font-size:8px!important;
}

/* GREEN AREA: active filter tags, 20% smaller visually while keeping the × usable. */
.sgp-wrap .sgp-selected-filters{
  gap:4px!important;
  margin:-1px 0 5px!important;
}
.sgp-wrap .sgp-selected-tags{
  gap:4px!important;
}
.sgp-wrap .sgp-selected-tag,
.sgp-wrap .sgp-filter-reset{
  min-height:25px!important;
  height:25px!important;
  padding:4px 7px!important;
  border-radius:999px!important;
  font-size:9px!important;
  line-height:1!important;
}
.sgp-wrap .sgp-selected-tag{
  gap:4px!important;
}
.sgp-wrap .sgp-selected-x{
  width:14px!important;
  height:14px!important;
  min-width:14px!important;
  font-size:11px!important;
}
.sgp-wrap .sgp-filter-reset{
  font-weight:700!important;
}

/* Pull the product grid up immediately after the filter area. */
.sgp-wrap .sgp-status{
  margin:0!important;
  line-height:1!important;
}
.sgp-wrap .sgp-grid{
  margin-top:0!important;
  gap:10px!important;
}

@media(max-width:760px){
  .sgp-wrap{
    margin-top:8px!important;
    margin-bottom:24px!important;
    padding-left:10px!important;
    padding-right:10px!important;
  }
  .sgp-wrap .sgp-header{
    margin-bottom:6px!important;
  }
  .sgp-wrap .sgp-header h2{
    font-size:27px!important;
    line-height:1.06!important;
  }
  .sgp-wrap .sgp-filters{
    margin-bottom:3px!important;
  }
  .sgp-wrap .sgp-search,
  .sgp-wrap .sgp-search input,
  .sgp-wrap .sgp-search-btn{
    height:40px!important;
  }
  .sgp-wrap .sgp-search input{
    font-size:12px!important;
    padding-left:11px!important;
  }
  .sgp-wrap .sgp-search-btn{
    width:44px!important;
  }
  .sgp-wrap .sgp-type-filter{
    gap:4px!important;
    margin:2px 0 4px!important;
  }
  .sgp-wrap .sgp-type-filter .sgp-type-btn,
  .sgp-wrap .sgp-type-filter .sgp-all-inline{
    height:34px!important;
    min-height:34px!important;
    padding:5px 6px!important;
    font-size:11px!important;
  }
  .sgp-wrap .sgp-type-filter .sgp-type-count,
  .sgp-wrap .sgp-type-filter .sgp-all-inline b{
    font-size:8.5px!important;
  }
  .sgp-wrap .sgp-group-menu{
    gap:3px!important;
    column-gap:3px!important;
    row-gap:3px!important;
    margin-bottom:4px!important;
    padding-bottom:4px!important;
  }
  .sgp-wrap .sgp-group-menu > .sgp-menu-item,
  .sgp-wrap .sgp-group-menu > .sgp-menu-all,
  .sgp-wrap .sgp-group-menu > .sgp-menu-item > .sgp-pill,
  .sgp-wrap .sgp-group-menu > .sgp-menu-all > .sgp-pill{
    height:31px!important;
    min-height:31px!important;
  }
  .sgp-wrap .sgp-group-menu > .sgp-menu-item > .sgp-pill,
  .sgp-wrap .sgp-group-menu > .sgp-menu-all > .sgp-pill{
    padding:4px 8px!important;
    font-size:10.5px!important;
  }
  .sgp-wrap .sgp-group-menu .sgp-pill b{
    font-size:8.5px!important;
  }
  .sgp-wrap .sgp-group-menu .sgp-menu-item.has-children > .sgp-pill:after{
    font-size:9px!important;
    margin-left:2px!important;
  }
  .sgp-wrap .sgp-selected-filters{
    gap:3px!important;
    margin:-1px 0 4px!important;
  }
  .sgp-wrap .sgp-selected-tags{
    gap:3px!important;
  }
  .sgp-wrap .sgp-selected-tag,
  .sgp-wrap .sgp-filter-reset{
    min-height:24px!important;
    height:24px!important;
    padding:4px 6px!important;
    font-size:8.5px!important;
  }
  .sgp-wrap .sgp-selected-x{
    width:13px!important;
    height:13px!important;
    min-width:13px!important;
    font-size:10px!important;
  }
  .sgp-wrap .sgp-grid{
    gap:8px!important;
  }
}

@media(max-width:360px){
  .sgp-wrap .sgp-group-menu > .sgp-menu-item > .sgp-pill,
  .sgp-wrap .sgp-group-menu > .sgp-menu-all > .sgp-pill{
    padding-left:7px!important;
    padding-right:7px!important;
    font-size:10px!important;
  }
  .sgp-wrap .sgp-selected-tag,
  .sgp-wrap .sgp-filter-reset{
    font-size:8px!important;
    padding-left:5px!important;
    padding-right:5px!important;
  }
}

/* V2.5.128 — MOBILE SUBMENU FULL-PANEL PACKING
 * UI-only: keeps all existing submenu data/events intact.
 * The close control is visually floated outside the panel so it no longer
 * reserves horizontal space that should be available to submenu buttons.
 */
@media(max-width:760px){
  body > .sgp-mobile-submenu-panel{
    overflow:visible!important;
    padding:8px!important;
    border-radius:15px!important;
  }

  /* Remove the artificial right-side reservation previously used for X. */
  body > .sgp-mobile-submenu-panel .sgp-mobile-submenu-list{
    width:100%!important;
    padding:0!important;
    margin:0!important;
    gap:7px!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    box-sizing:border-box!important;
  }

  /* Keep the existing button dimensions; only let the flex layout pack them
     into every available line without reserving a column for the close icon. */
  body > .sgp-mobile-submenu-panel .sgp-mobile-submenu-item,
  body > .sgp-mobile-submenu-panel .sgp-mobile-submenu-list > button{
    flex:0 0 auto!important;
    width:auto!important;
    max-width:100%!important;
    margin:0!important;
    box-sizing:border-box!important;
  }

  /* X becomes a floating control outside the panel, as requested. */
  body > .sgp-mobile-submenu-panel .sgp-mobile-submenu-head{
    position:absolute!important;
    top:-17px!important;
    right:-17px!important;
    z-index:20!important;
    width:34px!important;
    height:34px!important;
    min-height:34px!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    background:transparent!important;
    pointer-events:none!important;
  }

  body > .sgp-mobile-submenu-panel .sgp-mobile-submenu-close{
    width:32px!important;
    height:32px!important;
    min-width:32px!important;
    min-height:32px!important;
    margin:0!important;
    padding:0!important;
    border:1px solid rgba(23,70,111,.16)!important;
    border-radius:50%!important;
    background:rgba(255,255,255,.92)!important;
    color:#17466f!important;
    font-size:20px!important;
    line-height:1!important;
    box-shadow:0 4px 12px rgba(10,35,54,.16)!important;
    pointer-events:auto!important;
    backdrop-filter:blur(4px)!important;
    -webkit-backdrop-filter:blur(4px)!important;
  }

  body > .sgp-mobile-submenu-panel .sgp-mobile-submenu-close:active{
    transform:scale(.94)!important;
  }
}

@media(max-width:360px){
  body > .sgp-mobile-submenu-panel .sgp-mobile-submenu-list{
    gap:6px!important;
  }
  body > .sgp-mobile-submenu-panel .sgp-mobile-submenu-close{
    width:30px!important;
    height:30px!important;
    min-width:30px!important;
    min-height:30px!important;
  }
}

/* V2.5.129 — MOBILE SUBMENU SIZE + FLOATING CLOSE REFINEMENT
 * UI/CSS ONLY. Mobile submenu buttons match the existing top-level category
 * chip footprint; the close button sits safely above/outside the panel.
 */
@media(max-width:760px){
  body > .sgp-mobile-submenu-panel{
    overflow:visible!important;
    padding:5px!important;
    border-radius:14px!important;
  }

  /* Do not reserve any horizontal space for the close button. */
  body > .sgp-mobile-submenu-panel .sgp-mobile-submenu-list{
    width:100%!important;
    min-height:0!important;
    padding:0!important;
    margin:0!important;
    gap:4px 5px!important;
    align-items:center!important;
    align-content:flex-start!important;
    justify-content:flex-start!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    box-sizing:border-box!important;
  }

  /* Match the mobile top-level category chip size: 31px height. */
  body > .sgp-mobile-submenu-panel .sgp-mobile-submenu-item,
  body > .sgp-mobile-submenu-panel .sgp-mobile-submenu-list > button{
    flex:0 0 auto!important;
    width:auto!important;
    max-width:100%!important;
    height:31px!important;
    min-height:31px!important;
    margin:0!important;
    padding:4px 8px!important;
    border-radius:999px!important;
    box-sizing:border-box!important;
    font-size:10.5px!important;
    font-weight:600!important;
    line-height:1!important;
    gap:3px!important;
  }

  body > .sgp-mobile-submenu-panel .sgp-mobile-submenu-item b,
  body > .sgp-mobile-submenu-panel .sgp-mobile-submenu-list > button b{
    margin-left:3px!important;
    font-size:8.5px!important;
    line-height:1!important;
    font-weight:600!important;
  }

  /* Floating X: completely outside the panel, but safely inside the viewport. */
  body > .sgp-mobile-submenu-panel .sgp-mobile-submenu-head{
    position:absolute!important;
    top:-40px!important;
    right:clamp(18px,8vw,42px)!important;
    z-index:20!important;
    width:32px!important;
    height:32px!important;
    min-height:32px!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    background:transparent!important;
    pointer-events:none!important;
  }

  body > .sgp-mobile-submenu-panel .sgp-mobile-submenu-close{
    width:32px!important;
    height:32px!important;
    min-width:32px!important;
    min-height:32px!important;
    margin:0!important;
    padding:0!important;
    border:1px solid rgba(23,70,111,.16)!important;
    border-radius:50%!important;
    background:rgba(255,255,255,.94)!important;
    color:#17466f!important;
    font-size:20px!important;
    line-height:1!important;
    box-shadow:0 4px 12px rgba(10,35,54,.16)!important;
    pointer-events:auto!important;
    backdrop-filter:blur(4px)!important;
    -webkit-backdrop-filter:blur(4px)!important;
  }
}

@media(max-width:360px){
  body > .sgp-mobile-submenu-panel .sgp-mobile-submenu-list{gap:3px 4px!important;}
  body > .sgp-mobile-submenu-panel .sgp-mobile-submenu-item,
  body > .sgp-mobile-submenu-panel .sgp-mobile-submenu-list > button{
    height:31px!important;
    min-height:31px!important;
    padding:4px 7px!important;
    font-size:10px!important;
  }
  body > .sgp-mobile-submenu-panel .sgp-mobile-submenu-item b,
  body > .sgp-mobile-submenu-panel .sgp-mobile-submenu-list > button b{font-size:8px!important;}
  body > .sgp-mobile-submenu-panel .sgp-mobile-submenu-head{right:18px!important;}
}

