/* One set of product parts changes its layout at every assembly step. */
.ds-assembly{--assembly-surface:color-mix(in srgb,var(--paper) 88%,var(--ink));--assembly-tile:var(--ds-ui-bg);--assembly-border:color-mix(in srgb,var(--ink) 16%,var(--paper));}
.ds-assembly .ds-assembly-tabs{padding:24px 22px 20px;gap:8px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));}
.ds-assembly-tabs button{display:flex;align-items:center;justify-content:center;gap:9px;border:1px solid var(--line);background:color-mix(in srgb,var(--ink) 5%,var(--paper));padding:13px 8px;font-size:12px;color:var(--soft);}
.ds-assembly-tabs button[aria-selected=true]{background:var(--primary);border-color:color-mix(in srgb,var(--primary) 65%,var(--ink));color:#202514;box-shadow:0 2px 0 #14121012;}
.ds-tab-number{font:9px var(--mono);opacity:.65;}.ds-assembly-tabs button:hover:not([aria-selected=true]){background:color-mix(in srgb,var(--ink) 10%,var(--paper));color:var(--ink);}
.ds-assembly-intro{display:flex;gap:20px;justify-content:space-between;align-items:start;padding:4px 24px 25px;min-height:154px;}.ds-assembly-intro .mono{font-size:9px;color:var(--soft);}.ds-case .ds-assembly-intro h3{font-size:24px;line-height:1.2;margin:12px 0 10px;letter-spacing:-.03em;}.ds-assembly-intro p{font-size:13px;line-height:1.75;color:var(--soft);margin:0;max-width:560px;}.ds-assembly-count{padding:9px 10px;white-space:nowrap;border:1px solid var(--line);background:color-mix(in srgb,var(--ink) 4%,var(--paper));margin-top:4px;}
.ds-assembly-stage{height:740px;padding:30px;overflow:hidden;background-color:var(--assembly-surface);background-image:radial-gradient(color-mix(in srgb,var(--ink) 12%,transparent) .7px,transparent .7px);background-size:16px 16px;border-block:1px solid var(--line);display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;isolation:isolate;}
.ds-piece{min-width:0;position:relative;transform-origin:top left;}.ds-piece-body{min-width:0;width:100%;}.ds-piece-label,.ds-group-label{display:none;}.ds-assembly .ds-real-state-picker{padding:20px 22px;margin:0;background:color-mix(in srgb,var(--ink) 2%,var(--paper));}.ds-assembly [data-ds-assembly-hint]{max-width:300px;line-height:1.6;}
.ds-assembly:not([data-layer=template]) .ds-gift-phone,.ds-assembly:not([data-layer=template]) .ds-product-overlay{display:contents;transform:none;position:static;width:auto;height:auto;aspect-ratio:auto;padding:0;border:0;border-radius:0;box-shadow:none;outline:0;background:none;backdrop-filter:none;animation:none;}
.ds-assembly:not([data-layer=template]) .ds-gift-base,.ds-assembly:not([data-layer=template]) .ds-mini-gift-list,.ds-assembly:not([data-layer=template]) .ds-product-toast{display:none!important;}
.ds-assembly .ds-real-gift-card{width:370px;max-width:100%;padding:20px 16px 16px;box-shadow:0 10px 30px #10182814;background:#fff;color:#181d27;}
.ds-assembly .ds-molecule{position:relative;min-width:0;}.ds-assembly .ds-molecule-header{display:flex;align-items:center;gap:8px;margin-bottom:20px;min-height:28px;}.ds-assembly .ds-molecule-header [data-assembly-piece=title]{flex:1;}.ds-assembly .ds-molecule-header [data-assembly-piece=action]{flex:none;}
.ds-case .ds-assembly [data-assembly-piece=title] h3{font:600 18px/28px Inter,Arial,sans-serif;letter-spacing:0;margin:0;color:inherit;}.ds-assembly [data-ds-not-available]{font:600 12px/20px Inter,Arial,sans-serif;color:#a4a7ae;white-space:nowrap;}.ds-assembly .ds-small-action{outline:0;}
.ds-assembly .ds-molecule-badges{display:flex;gap:4px;margin-bottom:8px;}.ds-assembly .ds-molecule-badges>.ds-piece{flex:1;}.ds-assembly-badge{display:flex;align-items:center;gap:6px;white-space:nowrap;background:#f5f5f8;border:1px solid #d0d1e3;border-radius:999px;padding:3px 5px;font:400 10px/18px Inter,Arial,sans-serif;color:#32346c;}.ds-assembly-badge b{font-weight:400;padding:0 4px;border:1px solid #d0d1e3;border-radius:999px;background:#fff;line-height:18px;}
.ds-assembly .ds-molecule-media{margin-bottom:8px;}.ds-assembly .ds-real-gift-image>img{width:100%;height:auto;aspect-ratio:338/177;}.ds-assembly .ds-molecule-actions{display:flex;gap:8px;}.ds-assembly .ds-molecule-actions>.ds-piece{flex:1;}
.ds-assembly-support{display:flex;align-items:center;justify-content:center;gap:7px;white-space:nowrap;width:100%;min-height:48px;background:#fff;border:1px solid #a7a8c5;border-radius:16px;padding:10px 5px;color:#32346c;font:600 14px/24px Inter,Arial,sans-serif;box-shadow:0 1px 2px #1018280d;}.ds-assembly-support:hover{background:#f5f5f8;}.ds-assembly-support svg{width:20px;height:20px;stroke-width:1.8;}
.ds-assembly .ds-gift-close{margin:0;color:var(--soft);}.ds-assembly [data-assembly-piece=close]{display:flex;align-items:center;justify-content:center;margin-bottom:24px;}.ds-assembly [data-assembly-piece=close] .ds-piece-body{width:auto;display:grid;place-items:center;}
.ds-assembly[data-layer=atom] .ds-assembly-stage{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:140px 230px 140px;gap:22px;align-content:center;}
.ds-assembly[data-layer=atom] .ds-real-gift-card,.ds-assembly[data-layer=atom] .ds-molecule{display:contents;}
.ds-assembly[data-layer=atom] .ds-piece{border:1px solid var(--assembly-border);border-radius:16px;background:var(--assembly-tile);color:var(--ds-ui-ink);padding:18px;box-shadow:0 4px 12px #10182806;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:18px;align-self:stretch;margin:0;}
.ds-assembly[data-layer=atom] .ds-piece-label{display:block;align-self:start;font-size:8px;letter-spacing:.04em;color:var(--ds-ui-copy);line-height:1.6;}
.ds-assembly[data-layer=atom] .ds-piece-body{flex:1;display:flex;align-items:center;justify-content:center;}.ds-assembly[data-layer=atom] [data-assembly-piece=title]{order:1;}.ds-assembly[data-layer=atom] [data-assembly-piece=action]{order:2;}.ds-assembly[data-layer=atom] [data-assembly-piece=quantity]{order:3;}.ds-assembly[data-layer=atom] [data-assembly-piece=reserved]{order:4;}.ds-assembly[data-layer=atom] [data-assembly-piece=photo]{order:5;grid-column:span 2;}.ds-assembly[data-layer=atom] [data-assembly-piece=store]{order:6;}.ds-assembly[data-layer=atom] [data-assembly-piece=link]{order:7;}.ds-assembly[data-layer=atom] [data-assembly-piece=close]{order:8;}
.ds-assembly[data-layer=atom] .ds-real-gift-image{width:100%;max-width:338px;}.ds-assembly[data-layer=atom] .ds-assembly-badge{width:100%;}.ds-assembly[data-layer=atom] [data-assembly-piece=close] .ds-gift-close{color:var(--ds-ui-copy);}
.ds-assembly[data-layer=molecule] .ds-assembly-stage{display:grid;grid-template-columns:1fr 1fr;grid-template-areas:'header header' 'badges media' 'actions media' 'close close';grid-template-rows:125px 135px 135px 75px;gap:22px;align-content:center;}
.ds-assembly[data-layer=molecule] .ds-real-gift-card{display:contents;}.ds-assembly[data-layer=molecule] .ds-molecule{padding:22px;background:var(--assembly-tile);color:var(--ds-ui-ink);border:1px solid var(--assembly-border);border-radius:20px;box-shadow:0 4px 14px #10182806;margin:0;align-self:stretch;align-items:center;}
.ds-assembly[data-layer=molecule] .ds-group-label{display:block;position:absolute;top:16px;left:20px;font-size:8px;line-height:1.6;color:var(--ds-ui-copy);letter-spacing:.04em;}.ds-assembly[data-layer=molecule] .ds-molecule-header{grid-area:header;padding-top:42px;}.ds-assembly[data-layer=molecule] .ds-molecule-badges{grid-area:badges;padding-top:42px;}.ds-assembly[data-layer=molecule] .ds-molecule-actions{grid-area:actions;padding-top:42px;}.ds-assembly[data-layer=molecule] .ds-molecule-media{grid-area:media;display:flex;padding-top:42px;}.ds-assembly[data-layer=molecule] .ds-molecule-media .ds-piece{width:100%;}.ds-assembly[data-layer=molecule] [data-assembly-piece=close]{grid-area:close;background:var(--assembly-tile);border:1px solid var(--assembly-border);border-radius:16px;padding:12px;margin:0;gap:20px;}.ds-assembly[data-layer=molecule] [data-assembly-piece=close] .ds-piece-label{display:block;font-size:8px;color:var(--ds-ui-copy);}.ds-assembly[data-layer=molecule] .ds-gift-close{color:var(--ds-ui-copy);}
.ds-assembly[data-layer=organism] .ds-real-gift-card{border:1px solid #e9eaeb;}.ds-assembly[data-layer=organism] .ds-molecule .ds-piece{background:transparent;}
.ds-assembly[data-layer=template] .ds-gift-phone{width:300px;max-width:100%;margin:0;outline:none;}.ds-assembly[data-layer=template] .ds-real-gift-card{width:100%;max-width:none;}.ds-assembly[data-layer=template] .ds-gift-close{color:#ddd;}.ds-assembly[data-layer=template] [data-assembly-piece=close]{margin-bottom:22px;}.ds-assembly[data-layer=template] .ds-product-overlay{animation:none;}.ds-assembly .ds-gift-destination{max-width:100%;}
@media(max-width:700px){.ds-assembly-intro{padding-inline:18px;flex-direction:column;gap:12px;min-height:195px;}.ds-assembly-count{font-size:8px!important;}.ds-assembly .ds-assembly-tabs{padding:20px 14px;gap:6px;}.ds-assembly-tabs button{flex-direction:column;gap:6px;padding:12px 3px;font-size:10px;}.ds-assembly .ds-assembly-stage{height:760px;padding:18px;}.ds-assembly[data-layer=atom] .ds-assembly-stage{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:110px 95px 180px 100px 75px;gap:14px;}.ds-assembly[data-layer=atom] .ds-piece{padding:12px;gap:10px;}.ds-assembly[data-layer=atom] .ds-piece-label{font-size:7px;}.ds-assembly[data-layer=atom] [data-assembly-piece=close]{grid-column:span 2;flex-direction:row;}.ds-case .ds-assembly[data-layer=atom] [data-assembly-piece=title] h3{font-size:14px;line-height:21px;}.ds-assembly[data-layer=atom] .ds-assembly-support{font-size:10px;gap:4px;min-height:40px;}.ds-assembly[data-layer=atom] .ds-assembly-support svg{width:16px;height:16px;}.ds-assembly[data-layer=molecule] .ds-assembly-stage{grid-template-columns:1fr;grid-template-areas:'header' 'badges' 'media' 'actions' 'close';grid-template-rows:105px 95px 200px 110px 65px;gap:14px;}.ds-assembly[data-layer=molecule] .ds-molecule{padding:36px 14px 12px;}.ds-assembly[data-layer=molecule] .ds-group-label{top:10px;left:14px;font-size:7px;}.ds-case .ds-assembly[data-layer=molecule] [data-assembly-piece=title] h3{font-size:15px;line-height:22px;}.ds-assembly[data-layer=molecule] .ds-assembly-support{font-size:12px;gap:5px;}.ds-assembly[data-layer=molecule] .ds-assembly-support svg{width:17px;height:17px;}.ds-assembly .ds-real-state-picker{padding:18px 14px;}.ds-assembly[data-layer=organism] .ds-assembly-stage{padding-inline:10px;}.ds-case .ds-assembly[data-layer=organism] [data-assembly-piece=title] h3{font-size:15px;line-height:24px;}.ds-assembly[data-layer=organism] .ds-assembly-support{font-size:11px;gap:4px;}.ds-assembly[data-layer=organism] .ds-assembly-support svg{width:17px;height:17px;}.ds-assembly[data-layer=organism] .ds-real-gift-card{padding:18px 12px 14px;}.ds-assembly[data-layer=template] .ds-gift-phone{width:min(300px,100%);}}
@media(prefers-reduced-motion:reduce){.ds-assembly *{animation:none!important;transition:none!important;}}

/* Reservation labels are independent parts until the media molecule is assembled. */
.ds-media-content{position:relative;width:100%;min-width:0}.ds-assembly .ds-real-reserver,.ds-assembly .ds-real-countdown{position:static;left:auto;top:auto;bottom:auto;transform:none;display:inline-block;}
.ds-assembly:not([data-layer=atom]) [data-assembly-piece=personal-status],.ds-assembly:not([data-layer=atom]) [data-assembly-piece=reservation-timer]{position:absolute;left:0;right:0;width:100%;margin:0;pointer-events:none;}
.ds-assembly:not([data-layer=atom]) [data-assembly-piece=personal-status]{top:8px}.ds-assembly:not([data-layer=atom]) [data-assembly-piece=reservation-timer]{bottom:8px}
.ds-assembly:not([data-layer=atom]) [data-assembly-piece=personal-status] .ds-piece-body,.ds-assembly:not([data-layer=atom]) [data-assembly-piece=reservation-timer] .ds-piece-body{display:flex;justify-content:center;}
.ds-assembly[data-layer=atom] .ds-media-content{display:contents}.ds-assembly[data-layer=atom] .ds-assembly-stage{grid-template-rows:110px 200px 110px 110px;gap:18px;}
.ds-assembly[data-layer=atom] [data-assembly-piece=personal-status]{order:6}.ds-assembly[data-layer=atom] [data-assembly-piece=reservation-timer]{order:7}.ds-assembly[data-layer=atom] [data-assembly-piece=store]{order:8}.ds-assembly[data-layer=atom] [data-assembly-piece=link]{order:9}.ds-assembly[data-layer=atom] [data-assembly-piece=close]{order:10}
.ds-assembly[data-layer=atom] .ds-piece-label{font-size:7px}.ds-assembly[data-layer=atom] .ds-piece{padding:14px;gap:10px;}.ds-assembly[data-layer=atom] .ds-real-gift-image{max-width:255px}.ds-assembly[data-layer=atom] .ds-real-reserver,.ds-assembly[data-layer=atom] .ds-real-countdown{font-size:11px;white-space:normal;text-align:center;}
@media(max-width:700px){.ds-assembly[data-layer=atom] .ds-assembly-stage{grid-template-rows:90px 80px 160px 95px 85px 65px;gap:14px;}.ds-assembly[data-layer=atom] .ds-piece{padding:10px}.ds-assembly[data-layer=atom] .ds-real-gift-image{max-width:220px}.ds-assembly[data-layer=atom] .ds-piece-label{font-size:6px}.ds-assembly[data-layer=atom] .ds-real-reserver{font-size:10px;padding:5px 7px;}}

/* All three reservation atoms remain present; only the applicable state is active. */
.ds-atom-state{display:none}.ds-assembly[data-layer=atom] .ds-piece[data-active=false]{background:color-mix(in srgb,var(--assembly-tile) 68%,var(--assembly-surface));border-style:dashed;color:var(--ds-ui-copy)}
.ds-assembly[data-layer=atom] .ds-piece[data-active=false] .ds-real-reserver,.ds-assembly[data-layer=atom] .ds-piece[data-active=false] .ds-real-countdown{opacity:.38;filter:grayscale(1)}
.ds-assembly[data-layer=atom] .ds-piece[data-active] .ds-piece-body{flex-direction:column;gap:8px}.ds-assembly[data-layer=atom] .ds-atom-state{display:block;font:8px var(--mono);color:var(--ds-ui-copy);opacity:.7;}
.ds-assembly[data-layer=atom] [data-assembly-piece=personal-status]{order:6}.ds-assembly[data-layer=atom] [data-assembly-piece=split-status]{order:7}.ds-assembly[data-layer=atom] [data-assembly-piece=reservation-timer]{order:8}.ds-assembly[data-layer=atom] [data-assembly-piece=store]{order:9}.ds-assembly[data-layer=atom] [data-assembly-piece=link]{order:10}.ds-assembly[data-layer=atom] [data-assembly-piece=close]{order:11}
.ds-assembly:not([data-layer=atom]) [data-assembly-piece=split-status]{position:absolute;top:8px;left:0;right:0;width:100%;margin:0;pointer-events:none}.ds-assembly:not([data-layer=atom]) [data-assembly-piece=split-status] .ds-piece-body{display:flex;justify-content:center}
.ds-assembly:not([data-layer=atom]) [data-active=false] .ds-piece-body{width:156px;min-height:28px;margin:auto;border:1px dashed #8d91a3;border-radius:999px;background:transparent;}
.ds-assembly:not([data-layer=atom]) [data-active=false] .ds-real-reserver,.ds-assembly:not([data-layer=atom]) [data-active=false] .ds-real-countdown{visibility:hidden}
.ds-assembly:not([data-layer=atom]):not([data-gift-state=split]) [data-assembly-piece=split-status],.ds-assembly:not([data-layer=atom])[data-gift-state=split] [data-assembly-piece=personal-status]{visibility:hidden}
@media(max-width:700px){.ds-assembly[data-layer=atom] .ds-assembly-stage{grid-template-rows:80px 70px 140px 90px 80px 70px 50px;gap:12px}.ds-assembly[data-layer=atom] .ds-piece{padding:8px;gap:6px}.ds-assembly[data-layer=atom] .ds-real-gift-image{max-width:190px}.ds-assembly[data-layer=atom] [data-assembly-piece=close]{grid-column:span 2}.ds-assembly[data-layer=atom] .ds-real-reserver{font-size:9px;line-height:14px;padding:4px 5px}.ds-assembly[data-layer=atom] .ds-piece-label{font-size:6px}}
