.gyw{padding-top:24px;padding-bottom:40px}.gyw-intro{margin-bottom:24px}.gyw-intro>a{font-size:var(--chu-chu-thich);color:var(--chu-phu)}.gyw-intro h1{font-family:var(--font-tieu-de);font-size:var(--chu-trang);margin:8px 0}.gyw-intro p{max-width:700px;color:var(--chu-phu)}.gyw-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,360px);gap:28px;align-items:start}.gyw-catalog{grid-column:1;grid-row:1;min-width:0}.gyw-selection{grid-column:2;grid-row:1;border:1px solid var(--vien,#ddd);border-radius:20px;background:#fff;padding:20px;position:sticky;top:100px;max-height:calc(100vh - 120px);overflow:auto;min-width:0}.gyw h2{font-size:var(--chu-muc);margin-bottom:14px}.gyw-set-heading{display:flex;align-items:baseline;justify-content:space-between;gap:10px}.gyw-set-heading span{font-size:var(--chu-chu-thich);white-space:nowrap}.gyw-preview{background:#fff4f6;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:12px;border-radius:14px;min-height:116px;align-items:center}.gyw-preview>p{grid-column:1/-1;text-align:center;font-size:var(--chu-chu-thich);color:var(--chu-phu)}.gyw-preview figure{position:relative;margin:0;background:white;border-radius:8px;padding:6px}.gyw-preview img{width:100%;aspect-ratio:1;object-fit:contain}.gyw-preview figcaption{position:absolute;right:2px;bottom:2px;font-size:var(--chu-chu-thich);background:#0e2f66;color:#fff;padding:2px 5px;border-radius:5px}.gyw-caption{font-size:var(--chu-chu-thich);color:var(--chu-phu);margin:8px 0 14px}.gyw-item{padding:12px 0;border-bottom:1px solid #eee}.gyw-item p{font-size:var(--chu-chu-thich);margin:0 0 4px}.gyw-item small{display:block;color:var(--chu-phu);font-size:var(--chu-chu-thich)}.gyw-item-controls{display:flex;align-items:center;gap:8px;margin-top:8px}.gyw-item-controls button{min-width:32px;min-height:32px;border:1px solid #ddd;border-radius:7px;background:white}.gyw-item-controls .gyw-remove{margin-left:auto;padding:0 7px;font-size:var(--chu-chu-thich)}.gyw-total{display:flex;justify-content:space-between;gap:12px;margin:16px 0 4px;font-size:var(--chu-chu-thich)}.gyw-total strong{font-size:var(--chu-muc);color:#0e2f66}.gyw-selection>.nut{width:100%;margin-top:12px}.gyw-selection>.nut:disabled{opacity:.5;cursor:not-allowed}#gyw-status,#gyw-budget-status{font-size:var(--chu-chu-thich);margin-top:8px}.gyw-over{color:#b12d2d}.gyw-filters{display:grid;grid-template-columns:1fr 180px;gap:12px;margin-bottom:14px}.gyw-filters label{font-size:var(--chu-chu-thich);font-weight:600}.gyw-filters input:not([type=checkbox]){width:100%;box-sizing:border-box;padding:11px;border:1px solid #d7d7d7;border-radius:9px;margin-top:4px;font:inherit;font-size:var(--chu-noi-dung);min-width:0}.gyw-filters .gyw-check{grid-column:1/-1;display:flex;gap:8px;align-items:center}.gyw-check input{width:17px;height:17px}#gyw-results{font-size:var(--chu-chu-thich);color:var(--chu-phu);margin:8px 0 14px}.gyw-products{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.gyw-card{border:1px solid #e3e3e3;border-radius:14px;padding:12px;display:flex;flex-direction:column;min-width:0;background:white}.gyw-card img{width:100%;aspect-ratio:1;object-fit:contain}.gyw-card h3{font-size:var(--chu-noi-dung);line-height:1.5;margin:8px 0;overflow-wrap:anywhere}.gyw-card .gyw-price{font-weight:600;color:#0e2f66;font-size:var(--chu-noi-dung);margin-top:auto}.gyw-card select{width:100%;min-width:0;font-size:var(--chu-noi-dung);border:1px solid #ddd;border-radius:7px;padding:7px;margin:8px 0;background:white}.gyw-card button{border:0;border-radius:8px;background:#0e2f66;color:white;min-height:36px;padding:8px;font-weight:600;margin-top:8px}.gyw-card button:disabled{background:#eee;color:#666;cursor:default}.gyw-card .gyw-image-missing{aspect-ratio:1;display:grid;place-items:center;background:#fff4f6;color:#777;font-size:var(--chu-chu-thich);text-align:center;padding:10px}.gyw-notice{background:#fff4f6;padding:12px;border-radius:10px;margin:12px 0;font-size:var(--chu-chu-thich)}#gyw-more{margin:22px auto;display:block}#gyw-more[hidden]{display:none}.gyw [hidden]{display:none!important}body[data-trang=gifts-your-way] .noi{position:static}
@media(max-width:1000px){.gyw-products{grid-template-columns:repeat(2,minmax(0,1fr))}.gyw-layout{grid-template-columns:minmax(0,1fr) 300px;gap:20px}}
@media(max-width:700px){.gyw{padding-top:16px}.gyw-intro{margin-bottom:16px}.gyw-intro p{font-size:var(--chu-chu-thich)}.gyw-layout{display:flex;flex-direction:column;gap:20px}.gyw-selection{position:static;max-height:none;width:100%;box-sizing:border-box;padding:14px}.gyw-catalog{width:100%}.gyw-preview{grid-template-columns:repeat(4,minmax(0,1fr));min-height:72px}.gyw-preview figure{padding:3px}.gyw-filters{grid-template-columns:minmax(0,1fr) 145px;gap:8px}.gyw-products{gap:10px}.gyw-card{padding:9px}.gyw-card h3{font-size:var(--chu-noi-dung)}.gyw h2{font-size:var(--chu-muc)}.gyw-total strong{font-size:var(--chu-muc)}.gyw-card select{font-size:var(--chu-noi-dung)}#gyw-chosen{max-height:260px;overflow:auto}}

.gyw-combo-title{font-size:var(--chu-noi-dung);color:#0e2f66;margin:18px 0 6px}.gyw-saving{font-size:var(--chu-chu-thich);line-height:1.6}.gyw-combo-quantity{display:block;font-size:var(--chu-chu-thich);font-weight:600;margin-top:14px}.gyw-combo-quantity input{display:block;width:100%;box-sizing:border-box;margin-top:6px;font-size:var(--chu-noi-dung);padding:9px;border:1px solid #ddd;border-radius:8px}.gyw-order-total{font-size:var(--chu-chu-thich);margin:12px 0 4px}.gyw-discount{font-size:var(--chu-chu-thich);color:#666;margin-top:5px}
.gyw-preview .gyw-scene{grid-column:1/-1;width:100%;border-radius:8px}
.gyw-preview{display:block;padding:0;overflow:hidden}.gyw-preview>p{padding:28px 15px}.gyw-scene-stage{position:relative;aspect-ratio:1;width:100%;overflow:hidden;border-radius:14px;background-size:cover;background-position:center;isolation:isolate}.gyw-scene-stage[data-background=kitchen]{background-image:url('../anh/trang/gyw-background-kitchen.webp')}.gyw-scene-stage[data-background=home]{background-image:url('../anh/trang/gyw-background-home.webp')}.gyw-scene-stage[data-background=desk]{background-image:url('../anh/trang/gyw-background-desk.webp')}.gyw-scene-stage .gyw-scene-product{position:absolute;left:var(--x);bottom:var(--bottom);width:var(--w);height:var(--h);transform:translateX(-50%);margin:0;padding:0;border-radius:0;background:transparent;display:flex;align-items:flex-end;justify-content:center}.gyw-scene-product img{width:100%;height:100%;aspect-ratio:auto;object-fit:contain;object-position:center bottom;filter:drop-shadow(2px 7px 4px rgba(14,47,102,.24))}.gyw-scene-product figcaption{right:5%;bottom:-12px;background:#0e2f66;color:white;min-width:0;padding:2px 5px;font-size:var(--chu-chu-thich)}.gyw-scene-original img{mix-blend-mode:multiply;filter:none}.gyw-scene-name{position:absolute;left:14px;top:14px;color:#253849;background:rgba(255,255,255,.8);padding:5px 10px;border-radius:20px;font-size:var(--chu-chu-thich);font-weight:600;z-index:3}.gyw-scene-signature{position:absolute;bottom:10px;right:14px;font-size:var(--chu-chu-thich);letter-spacing:2px;color:#243a4c;opacity:.75;z-index:3}.gyw-visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.gyw-scene-controls{display:grid;gap:8px;margin-top:10px}.gyw-scene-controls label,.gyw-dialog-toolbar label{font-size:var(--chu-chu-thich);display:flex;align-items:center;gap:10px}.gyw-scene-controls select,.gyw-dialog-toolbar select{min-width:0;flex:1;padding:8px;border:1px solid #d9d9d9;border-radius:8px;background:#fff;font:inherit;font-size:var(--chu-noi-dung);color:#0e2f66}.gyw-scene-controls>.nut{width:100%;min-height:40px;background:#0e2f66;color:white;border:0}.gyw-scene-pages{display:flex;align-items:center;justify-content:center;gap:12px;font-size:var(--chu-chu-thich)}.gyw-scene-pages[hidden]{display:none}.gyw-scene-pages button{width:34px;height:34px;border:1px solid #ddd;border-radius:50%;background:#fff;color:#0e2f66;font-size:22px}.gyw-scene-pages button:disabled{opacity:.35}.gyw-preview-dialog{box-sizing:border-box;border:0;border-radius:20px;padding:20px;width:min(680px,calc(100% - 24px));max-height:92dvh;overflow:auto;color:#263549;box-shadow:0 20px 90px #0004}.gyw-preview-dialog::backdrop{background:rgba(15,28,48,.65);backdrop-filter:blur(5px)}.gyw-dialog-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px;gap:12px}.gyw-dialog-heading small{font-size:var(--chu-chu-thich);letter-spacing:2px;color:#0e2f66}.gyw-dialog-heading h2{font-family:var(--font-tieu-de);font-size:var(--chu-muc);margin:3px 0 0}.gyw-dialog-heading button{border:0;background:#f3f3f3;border-radius:50%;width:38px;height:38px;font-size:26px;flex-shrink:0}.gyw-dialog-toolbar{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;margin-top:14px}.gyw-dialog-toolbar label{flex:1}.gyw-preview-dialog #gyw-preview-summary{font-size:var(--chu-noi-dung);font-weight:600;margin:12px 0 4px}.gyw-preview-dialog .gyw-caption{margin-bottom:0}.gyw-preview-dialog .gyw-scene-name{font-size:var(--chu-chu-thich)}.gyw-preview-dialog .gyw-scene-signature{font-size:var(--chu-chu-thich)}@media(max-width:700px){.gyw-preview-dialog{padding:12px;border-radius:16px}.gyw-dialog-heading h2{font-size:var(--chu-muc)}.gyw-scene-controls select,.gyw-dialog-toolbar select{font-size:var(--chu-noi-dung)}.gyw-dialog-toolbar{gap:8px}.gyw-scene-stage .gyw-scene-product{padding:0}.gyw-preview-dialog .gyw-caption{font-size:var(--chu-chu-thich)}}
.gyw-item-controls .gyw-replace{margin-left:auto;font-size:var(--chu-chu-thich);padding:0 7px}.gyw-item-controls .gyw-remove{margin-left:0}.gyw-drop-active{outline:3px dashed #f8b6c8;outline-offset:4px}.gyw-drag-hint{font-size:var(--chu-chu-thich);color:#666}#gyw-cancel-replace{padding:5px 8px;margin:4px 0;border:1px solid #ddd;background:#fff;border-radius:6px}@media(pointer:coarse){.gyw-drag-hint{display:none}}

.gyw-preview-dialog{margin:auto;width:min(680px,calc(100% - 24px),calc(92dvh - 185px))}.gyw-scene-product figcaption.gyw-visually-hidden{padding:0}@media(max-width:700px){.gyw-preview-dialog{width:calc(100% - 24px)}}
.gyw-scene-original img{border-radius:8px;background:white;mix-blend-mode:normal;filter:drop-shadow(1px 3px 3px #0002)}.gyw-photo-note{position:absolute;bottom:2px;left:0;right:0;text-align:center;font-size:var(--chu-chu-thich);background:#ffffffe6;color:#53606c;padding:2px}.gyw-preview-dialog .gyw-photo-note{font-size:var(--chu-chu-thich)}
#gyw-mobile-preview{display:none}#gyw-mobile-preview[hidden]{display:none!important}@media(max-width:700px){#gyw-mobile-preview{display:block;position:fixed;bottom:14px;left:50%;transform:translateX(-50%);width:max-content;max-width:calc(100% - 28px);z-index:80;box-sizing:border-box;padding:12px 18px;border:0;border-radius:30px;background:#0e2f66;color:#fff;font-size:var(--chu-chu-thich);font-weight:600;box-shadow:0 4px 20px #0e2f6640}body[data-trang=gifts-your-way]{padding-bottom:64px}}

.gyw-scene-stage[data-background=gift-red]{background-image:url('../anh/trang/gyw-background-gift-red.webp')}.gyw-scene-stage[data-background=gift-navy]{background-image:url('../anh/trang/gyw-background-gift-navy.webp')}.gyw-scene-stage[data-background=gift-pink]{background-image:url('../anh/trang/gyw-background-gift-pink.webp')}
/* Interactive scene: keep the gift visible while replacing individual slots. */
.gyw-layout{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:24px}.gyw-selection{grid-column:1;grid-row:1;top:88px;max-height:calc(100vh - 104px)}.gyw-catalog{grid-column:2;grid-row:1}.gyw-products{grid-template-columns:repeat(2,minmax(0,1fr))}.gyw-filters{grid-template-columns:1fr}.gyw-intro{margin-bottom:18px}.gyw-intro h1{font-size:var(--chu-trang)}.gyw-intro p{margin-bottom:10px}.gyw-scene-price{position:absolute;top:14px;right:12px;z-index:5;padding:8px 12px;border-radius:10px;background:rgba(255,244,246,.95);box-shadow:0 2px 10px #0e2f661c;color:#0e2f66;text-align:right;pointer-events:none}.gyw-scene-price small{display:block;font-size:var(--chu-chu-thich);letter-spacing:1px}.gyw-scene-price strong{display:block;font-size:var(--chu-muc)}.gyw-scene-stage .gyw-scene-hit{position:absolute;inset:0;border:0;background:transparent;padding:0;cursor:pointer;border-radius:10px;color:#0e2f66}.gyw-hotspot{position:absolute;left:50%;top:72%;transform:translate(-50%,-50%);display:grid;place-items:center;width:25px;height:25px;border:3px solid #fff;border-radius:50%;background:#0e2f66;color:#fff;font-size:19px;line-height:1;box-shadow:0 0 0 4px #ffffff70,0 2px 6px #0005}.gyw-hotspot-label{position:absolute;left:50%;top:calc(72% + 19px);transform:translateX(-50%);white-space:nowrap;background:#0e2f66;color:#fff;border-radius:12px;padding:3px 8px;font-size:var(--chu-chu-thich);opacity:0;transition:opacity .12s}.gyw-scene-hit:hover .gyw-hotspot-label,.gyw-scene-hit:focus-visible .gyw-hotspot-label{opacity:1}.gyw-scene-hit:focus-visible{outline:3px solid #0e2f66;outline-offset:3px}.gyw-scene-hit:hover .gyw-hotspot{background:#0e2f66}.gyw-scene-hint{position:absolute;bottom:8px;left:10px;right:10px;text-align:center;font-size:var(--chu-chu-thich);color:#3b4554;background:#ffffffe6;border-radius:20px;padding:5px;z-index:5;pointer-events:none}.gyw-scene-signature{display:none}.gyw-empty-actions{position:absolute;left:7%;bottom:12%;width:65%;display:flex;flex-direction:column;align-items:flex-start;gap:10px}.gyw-empty-actions h3{font-size:var(--chu-muc);line-height:1.2;color:#0e2f66;margin:0 0 4px}.gyw-empty-actions button{border:0;background:#0e2f66;color:#fff;padding:12px 14px;border-radius:12px;font-size:var(--chu-chu-thich);font-weight:600;box-shadow:0 3px 12px #0002;text-align:left}.gyw-empty-actions button+button{background:#fff;color:#0e2f66;font-size:var(--chu-chu-thich)}.gyw-details{margin:12px 0;border-top:1px solid #eee;border-bottom:1px solid #eee;padding:10px 0}.gyw-details summary{font-size:var(--chu-chu-thich);font-weight:600;cursor:pointer;color:#0e2f66}.gyw-picker{margin:auto;border:0;border-radius:18px;padding:20px;width:min(760px,calc(100% - 24px));max-height:86dvh;overflow:auto;box-sizing:border-box;background:white;color:#263549;box-shadow:0 20px 90px #0004}.gyw-picker::backdrop{background:#09204799;backdrop-filter:blur(4px)}.gyw-picker [hidden]{display:none!important}.gyw-picker-search{display:block;font-size:var(--chu-chu-thich);font-weight:600;margin:12px 0}.gyw-picker-search input{display:block;width:100%;box-sizing:border-box;border:1px solid #ccc;border-radius:9px;padding:12px;margin-top:4px;font-size:var(--chu-noi-dung)}.gyw-picker .gyw-products{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}#gyw-picker-current,#gyw-picker-count{font-size:var(--chu-chu-thich);line-height:1.5;color:#5d6776}#gyw-picker-count{margin-bottom:12px}#gyw-picker-more{margin:16px auto 0;display:block}.gyw-picker .gyw-card h3{font-size:var(--chu-noi-dung)}.gyw-picker .gyw-card .gyw-price{font-size:var(--chu-chu-thich)}.gyw-picker .gyw-card select{font-size:var(--chu-noi-dung)}.gyw-scene-product figcaption{pointer-events:none;z-index:4}
@media(max-width:850px){.gyw-layout{display:flex;flex-direction:column}.gyw-selection{position:static;max-height:none;width:100%;box-sizing:border-box;overflow:visible}.gyw-catalog{width:100%}.gyw-filters{grid-template-columns:1fr 145px}.gyw-scene-price strong{font-size:var(--chu-noi-dung)}}
@media(max-width:700px){.gyw-intro h1{font-size:var(--chu-trang)}.gyw-picker{padding:12px}.gyw-picker .gyw-products{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.gyw-picker .gyw-card select{font-size:var(--chu-noi-dung)}.gyw-scene-price{top:10px;right:10px;padding:6px 8px}.gyw-scene-name{max-width:42%;top:10px;left:10px;font-size:var(--chu-chu-thich)}.gyw-scene-price small{font-size:var(--chu-chu-thich)}.gyw-scene-price strong{font-size:var(--chu-noi-dung)}.gyw-hotspot{width:22px;height:22px;font-size:16px}.gyw-hotspot-label{font-size:var(--chu-chu-thich)}.gyw-scene-hint{font-size:var(--chu-chu-thich)}.gyw-empty-actions button{font-size:var(--chu-chu-thich);padding:10px}.gyw-empty-actions button+button{font-size:var(--chu-chu-thich)}}

/* Supplied box artwork remains unchanged; electrical items stand outside. */
.gyw-scene-stage[data-background^="box-"]{background:radial-gradient(ellipse at 45% 90%,#f8b6c8 0,transparent 47%),linear-gradient(145deg,#fffafb,#fff4f6)}
.gyw-preview img.gyw-box-back,.gyw-preview img.gyw-box-front{position:absolute;left:0;bottom:10%;width:73%;height:82%;aspect-ratio:auto;object-fit:fill;pointer-events:none;filter:drop-shadow(0 8px 5px #0e2f6620)}
.gyw-preview img.gyw-box-back{z-index:0}.gyw-preview img.gyw-box-front{z-index:3;filter:none}
.gyw-scene-stage .gyw-scene-product[data-placement=outside]{z-index:4!important}
.gyw-scene-add{position:absolute;right:4%;bottom:8%;z-index:6;border:1px solid #f8b6c8;background:#fff4f6;color:#0e2f66;border-radius:20px;padding:8px 12px;font-size:var(--chu-chu-thich);font-weight:600}
.gyw-scene-stage:has([data-placement=outside]) .gyw-scene-add{right:4%;bottom:3%;}
.gyw-scene-hint{bottom:1%;font-size:var(--chu-chu-thich)}.gyw-scene-name{top:8px;left:8px;max-width:47%;font-size:var(--chu-chu-thich)}.gyw-empty-actions{z-index:4;left:12%;bottom:20%;width:55%}.gyw-empty-actions h3{font-size:var(--chu-muc);background:#fff9;padding:7px;border-radius:8px}.gyw-boxes{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;margin:12px 0}.gyw-boxes button{min-width:0;border:1px solid #ddd;border-radius:8px;background:#fff;padding:4px;cursor:pointer;color:#40516b}.gyw-boxes button[aria-pressed=true]{border:2px solid #0e2f66;background:#edf3fb;padding:3px}.gyw-boxes img{width:100%;height:56px;object-fit:contain}.gyw-boxes span{display:block;font-size:var(--chu-chu-thich);line-height:1.25;margin-top:3px}.gyw-scene-product .gyw-hotspot{top:60%}.gyw-scene-product .gyw-hotspot-label{top:calc(60% + 19px)}
@media(max-width:700px){.gyw-boxes img{height:44px}.gyw-boxes span{font-size:var(--chu-chu-thich)}.gyw-empty-actions h3{font-size:var(--chu-muc)}.gyw-scene-add{font-size:var(--chu-chu-thich);padding:6px}.gyw-hotspot{width:20px;height:20px;border-width:2px}.gyw-scene-hint{font-size:var(--chu-chu-thich)}}

.gyw-scene-stage .gyw-scene-hit{inset:auto;left:50%;top:var(--hit,60%);width:36px;height:36px;transform:translate(-50%,-50%);border-radius:50%}.gyw-scene-product .gyw-hotspot{top:50%}.gyw-scene-product .gyw-hotspot-label{top:calc(50% + 19px)}.gyw-scene-product>img{cursor:pointer}

/* Enlarge both box layers together while preserving room for appliances. */
.gyw-preview img.gyw-box-back,.gyw-preview img.gyw-box-front{transform:perspective(1600px) rotateX(8deg);transform-origin:50% 100%;width:76%;height:92%;bottom:3%}
.gyw-scene-stage[data-appliances="0"] img.gyw-box-back,.gyw-scene-stage[data-appliances="0"] img.gyw-box-front{left:1%;width:98%;height:94%}
.gyw-scene-stage[data-appliances="0"] .gyw-empty-actions{left:15%;width:70%}

/* Compact heading and bring the gift preview closer to the site header. */
.gyw{padding-top:12px}.gyw-intro{margin-bottom:10px}.gyw-intro>a{display:block;line-height:1.35}.gyw-intro h1{line-height:1.15;margin:4px 0 0}.gyw-set-heading h1{font-size:var(--chu-muc);line-height:1.3;margin:0 0 8px}
@media(max-width:700px){.gyw{padding-top:8px}.gyw-intro{margin-bottom:8px}.gyw-intro h1{margin-top:3px}.gyw-selection{padding:12px}.gyw-set-heading h1{margin-bottom:6px}}

/* Keep the set totals together; catalog does not use the site's full-section spacing. */
.gyw-catalog{padding:0}.gyw-catalog>h2{margin:0 0 10px}.gyw-details{margin:8px 0;padding:8px 0}.gyw-combo-title{margin:10px 0 4px}.gyw-saving{margin:0 0 8px;line-height:1.45}.gyw-total{align-items:center;margin:8px 0 2px;line-height:1.4}.gyw-combo-quantity{margin-top:8px;line-height:1.4}.gyw-combo-quantity input{margin-top:4px;padding:8px 10px;min-height:44px}.gyw-order-total{margin:8px 0 2px;line-height:1.45}.gyw-selection>small{display:block;line-height:1.4}.gyw-selection>#gyw-cart{margin-top:8px;min-height:44px;padding:10px 16px}#gyw-status:empty,#gyw-budget-status:empty,#gyw-saving:empty{display:none}.gyw-catalog .gyw-filters{margin-bottom:8px}
@media(max-width:850px){.gyw-layout{gap:16px}}

/* Image-only preview; customization controls remain in the main builder. */
.gyw-preview-dialog{position:relative;width:min(900px,calc(100% - 16px),calc(92dvh - 16px));padding:8px;overflow:auto}.gyw-preview-dialog .gyw-dialog-heading{height:0;margin:0;display:block}.gyw-preview-dialog .gyw-dialog-heading h2{margin:0}.gyw-preview-dialog #gyw-close-preview{position:absolute;top:8px;right:8px;z-index:20;width:32px;height:32px;font-size:24px;background:#fffffff2;box-shadow:0 1px 5px #0002}.gyw-preview-dialog .gyw-scene-name,.gyw-preview-dialog .gyw-scene-price,.gyw-preview-dialog .gyw-scene-hint,.gyw-preview-dialog .gyw-scene-hit,.gyw-preview-dialog .gyw-scene-add,.gyw-preview-dialog .gyw-empty-actions,.gyw-preview-dialog .gyw-photo-note,.gyw-preview-dialog figcaption,.gyw-preview-dialog .gyw-dialog-toolbar,.gyw-preview-dialog #gyw-preview-summary,.gyw-preview-dialog .gyw-caption{display:none}
@media(max-width:700px){.gyw-preview-dialog{width:min(calc(100% - 16px),calc(92dvh - 16px));border-radius:14px}}

.gyw-total{justify-content:space-between}.gyw-total .gyw-combo-title{margin:0;line-height:1.3}.gyw-total>strong{margin-left:auto;white-space:nowrap}
@media(max-width:700px){.gyw-total .gyw-combo-title{font-size:var(--chu-noi-dung)}}

/* Cỡ tên và giá trên thẻ dùng chung với danh sách sản phẩm. */
.gyw-card h3,.gyw-picker .gyw-card h3,.gyw-card .gyw-price,.gyw-picker .gyw-card .gyw-price{font-size:var(--chu-noi-dung)}
.gyw-boxes{grid-template-columns:repeat(4,minmax(0,1fr))}
.gyw-boxes span{overflow-wrap:anywhere}
.gyw-total{flex-wrap:wrap;align-items:baseline}
/* Replacement choices stay beside the scene in the document, without a modal. */
.gyw-inline-picker{padding:12px 0 4px;margin:0;border:0;background:transparent;scroll-margin-top:88px}.gyw-inline-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.gyw-inline-heading h3{font-size:var(--chu-noi-dung);margin:0;color:#0e2f66}.gyw-inline-heading button,#gyw-inline-more{border:1px solid #d9d9d9;border-radius:8px;background:white;padding:8px 12px;color:#0e2f66;font-size:var(--chu-chu-thich);min-height:40px}#gyw-inline-current{font-size:var(--chu-chu-thich);line-height:1.4;margin:6px 0 8px;color:var(--chu-phu)}#gyw-inline-search{box-sizing:border-box;width:100%;padding:8px 10px;border:1px solid #d9d9d9;border-radius:8px;font:inherit;font-size:var(--chu-noi-dung);margin-bottom:8px}.gyw-inline-products{display:flex;gap:8px;overflow-x:auto;padding:2px 2px 8px;scroll-snap-type:x proximity;overscroll-behavior-x:contain}.gyw-inline-card{flex:0 0 136px;min-width:0;border:1px solid #ddd;border-radius:10px;padding:6px;scroll-snap-align:start;display:flex;flex-direction:column;background:#fff}.gyw-inline-card[data-current=true]{border-color:#0e2f66;box-shadow:inset 0 0 0 1px #0e2f66;background:#f1f5fb}.gyw-inline-card>button{border:0;padding:0;background:transparent;text-align:left;display:flex;flex:1;flex-direction:column;color:#263549;cursor:pointer;font:inherit}.gyw-inline-card img{width:100%;height:82px;object-fit:contain}.gyw-inline-card button span{font-size:var(--chu-chu-thich);line-height:1.35;margin:4px 0;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.gyw-inline-card strong{font-size:var(--chu-noi-dung);font-weight:600;color:#0e2f66;margin-top:auto}.gyw-inline-card select{width:100%;min-width:0;margin-top:6px;padding:6px 2px;background:#fff;border:1px solid #ddd;border-radius:6px;font-size:var(--chu-noi-dung)}.gyw-inline-card small{font-size:var(--chu-chu-thich)}#gyw-inline-more{margin-top:2px}.gyw-scene-hit[aria-expanded=true] .gyw-hotspot{background:#0e2f66;box-shadow:0 0 0 5px #ffffffb0,0 2px 6px #0005}.gyw-scene-stage .gyw-scene-hit{width:44px;height:44px}.gyw-preview-dialog .gyw-scene-product>img{cursor:default}.gyw-inline-card button:focus-visible,.gyw-inline-heading button:focus-visible{outline:2px solid #0e2f66;outline-offset:3px}
/* Fit the scene and choices together while a slot is being edited. */
#gyw-preview{scroll-margin-top:90px}.gyw-selection:has(#gyw-inline-picker:not([hidden])) #gyw-preview{max-width:min(100%,max(220px,calc(100dvh - 570px)));margin-inline:auto}.gyw-inline-picker #gyw-inline-current{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip-path:inset(50%)}.gyw-inline-heading{margin-bottom:6px}.gyw-inline-card img{height:60px}.gyw-inline-card select{min-height:32px;padding:4px 2px}#gyw-inline-more{min-height:32px;padding:4px 12px}
@media(max-width:850px){.gyw-selection:has(#gyw-inline-picker:not([hidden])) #gyw-preview{max-width:min(100%,max(220px,calc(100dvh - 390px)))}}

.gyw-selection{scroll-margin-top:88px;overflow-anchor:none}.gyw-selection:has(#gyw-inline-picker:not([hidden])) .gyw-scene-hint,.gyw-selection:has(#gyw-inline-picker:not([hidden])) .gyw-scene-name{display:none}

.gyw-inline-heading{gap:8px}.gyw-inline-heading h3{flex-shrink:0;font-size:var(--chu-chu-thich)}.gyw-inline-heading #gyw-inline-search{flex:1;min-width:0;width:0;margin:0}.gyw-inline-card{position:relative}.gyw-inline-card small{position:absolute;top:48px;left:6px;right:6px;text-align:center;background:#ffffffe6;line-height:1.2}.gyw-inline-card strong{line-height:1.4}.gyw-selection:has(#gyw-inline-picker:not([hidden])){scroll-behavior:auto}body:has(#gyw-inline-picker:not([hidden])) #gyw-mobile-preview{display:none!important}

/* Draw the close icon geometrically, independent of font metrics on iOS. */
.gyw-preview-dialog #gyw-close-preview{padding:0;display:grid;place-items:center;line-height:1;font-size:0;appearance:none;-webkit-appearance:none;color:#263549}
.gyw-preview-dialog #gyw-close-preview::before,.gyw-preview-dialog #gyw-close-preview::after{content:"";position:absolute;left:50%;top:50%;width:14px;height:2px;border-radius:1px;background:currentColor;transform:translate(-50%,-50%) rotate(45deg);pointer-events:none}
.gyw-preview-dialog #gyw-close-preview::after{transform:translate(-50%,-50%) rotate(-45deg)}
/* Keep the scene calm while a decoded product photo crossfades in place. */
#gyw-preview{max-width:100%;margin-inline:auto;transition:max-width .22s ease}
.gyw-scene-stage .gyw-scene-product{transition:left .22s ease,bottom .22s ease,width .22s ease,height .22s ease}
.gyw-scene-product .gyw-scene-image{filter:drop-shadow(0 3px 2px #0e2f6624) drop-shadow(0 9px 7px #0e2f661c)}
.gyw-scene-product .gyw-image-outgoing{position:absolute;inset:0;pointer-events:none}
.gyw-scene-product .gyw-scene-hit{z-index:6}
.gyw-scene-original .gyw-scene-image,.gyw-scene-fallback .gyw-scene-image{border-radius:8px;background:#fff;filter:drop-shadow(0 3px 4px #0e2f6619)}
.gyw-scene-stage[data-background^="box-"]{background:radial-gradient(ellipse at 48% 88%,#f0d6de 0,transparent 51%),linear-gradient(145deg,#fffafb,#fff4f6)}
.gyw-image-loading::after{content:"";position:absolute;right:3px;top:3px;width:14px;height:14px;border:2px solid #0e2f6633;border-top-color:#0e2f66;border-radius:50%;z-index:7;animation:gyw-loading .7s linear infinite;pointer-events:none}
.gyw-image-error::after{content:"Chưa tải được ảnh";position:absolute;inset:0;display:grid;place-items:center;padding:6px;border-radius:8px;background:#fff9;color:#53606c;text-align:center;font-size:var(--chu-chu-thich)}
.gyw-scene-fallback::before{content:"Ảnh tham khảo";position:absolute;left:0;right:0;bottom:2px;z-index:5;text-align:center;background:#ffffffe6;color:#53606c;font-size:var(--chu-chu-thich);pointer-events:none}
#gyw-large-preview .gyw-scene-fallback::before{display:none}
.gyw-inline-card{flex-basis:144px;border-color:#f0d6de;transition:border-color .16s ease,background-color .16s ease,box-shadow .16s ease}
.gyw-inline-card img{height:76px;object-fit:contain;padding:3px;box-sizing:border-box}.gyw-inline-card small{top:64px}
.gyw-inline-card[data-current=true]{background:#f5f7fb;box-shadow:inset 0 0 0 1px #0e2f66,0 2px 6px #0e2f660d}
@media(hover:hover){.gyw-inline-card:hover{border-color:#f8b6c8;background:#fffafb}}
@keyframes gyw-loading{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){#gyw-preview,.gyw-scene-stage .gyw-scene-product,.gyw-inline-card{transition:none}.gyw-image-loading::after{animation:none}}

/* Keep the gift preview close to the main navigation. */
.gyw{padding-top:6px}.gyw-intro{margin-bottom:6px}

/* Compact viewing controls, with a return button only when the controls are above the viewport. */
.gyw-set-heading h1{font-size:var(--chu-noi-dung);line-height:1.35;margin-bottom:4px;font-weight:600}
.gyw-scene-controls{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:8px;margin-top:8px}
.gyw-scene-controls label{display:grid;gap:4px}
.gyw-scene-controls select{width:100%;min-height:44px;box-sizing:border-box}
.gyw-scene-controls>.nut{width:auto;min-height:44px;padding:8px 12px;background:#fff;color:#0e2f66;border:1px solid #c7cfdb;border-radius:9px;font-size:var(--chu-chu-thich);white-space:nowrap}
#gyw-mobile-preview:not([data-controls-above="true"]){display:none!important}
@media(max-width:700px){
  .gyw{padding-top:6px}
  .gyw-intro{display:none}
  .gyw-selection{padding:10px}
  .gyw-boxes{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:80px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x proximity;gap:6px;padding:2px 0 5px;margin:8px 0}
  .gyw-boxes button{scroll-snap-align:center;min-height:64px}
  .gyw-boxes img{height:46px}
}

@media(min-width:851px){
  #gyw-preview{max-width:min(100%,max(320px,calc(100dvh - 340px)))}
  .gyw-boxes{grid-template-columns:repeat(8,minmax(0,1fr))}
  .gyw-boxes img{height:46px}
}

/* Give the supplied box artwork the full canvas, without an extra frame. */
.gyw-selection{padding:0;border:0;border-radius:0;background:transparent}
#gyw-set-title{margin:0}
#gyw-preview,#gyw-large-preview{background:transparent;border-radius:0;overflow:visible}
#gyw-preview .gyw-scene-stage,#gyw-large-preview .gyw-scene-stage{aspect-ratio:705/765;background:none;border-radius:0}
.gyw-preview img.gyw-box-back,.gyw-preview img.gyw-box-front{transform:none}
.gyw-scene-stage[data-appliances="0"] img.gyw-box-back,.gyw-scene-stage[data-appliances="0"] img.gyw-box-front{left:0;bottom:0;width:100%;height:100%;filter:none}
.gyw-details #gyw-count{float:right;font-size:var(--chu-chu-thich);font-weight:400;color:var(--chu-phu)}
.gyw-preview-dialog{width:min(960px,calc(100% - 12px),calc(84dvh - 12px));padding:0;background:transparent;border-radius:0;box-shadow:none;overflow:visible}
.gyw-preview-dialog #gyw-close-preview{top:2px;right:2px}
@media(min-width:851px){#gyw-preview{max-width:min(100%,max(320px,calc(92dvh - 300px)))}}

.gyw-empty-actions h3{display:none}

.gyw-preview-dialog{max-width:calc(100% - 8px)}
@media(max-width:700px){.gyw.khung{width:calc(100% - 16px);padding-inline:0}}

/* Keep all edit buttons above product photos even where products overlap. */
.gyw-scene-stage .gyw-scene-product{left:calc(var(--x) - var(--w)/2);transform:none;z-index:auto!important;pointer-events:none}
.gyw-scene-product>.gyw-scene-image:not(.gyw-image-outgoing){position:relative}
.gyw-scene-product>img{z-index:var(--layer,1);pointer-events:auto}
.gyw-scene-product[data-placement=outside]>img{z-index:4}
.gyw-scene-product>.gyw-scene-hit{pointer-events:auto}
.gyw-scene-product>.gyw-image-outgoing{pointer-events:none}

/* Rotate the product only; labels and edit targets remain upright. */
.gyw-scene-product>.gyw-scene-image{transform:rotate(var(--rotation,0deg));transform-origin:50% 50%;transition:transform .22s ease}
.gyw-scene-stage .gyw-scene-hit{left:var(--hit-x,50%)}
.gyw-inline-card small{pointer-events:none}
.gyw-scene-product>.gyw-photo-note{z-index:4;pointer-events:none}
@media(prefers-reduced-motion:reduce){.gyw-scene-product>.gyw-scene-image{transition:none}}

.gyw-inline-card>button:disabled{opacity:.5;cursor:default}.gyw-inline-card>small{line-height:1.4;color:#0e2f66;margin-top:4px}
