/* Shared coaster design experience: native touch scrolling, complete thumbnails. */
.design-carousel .wizard-panel[data-step="2"]{max-width:960px;margin-inline:auto}
.design-carousel .wizard-panel[data-step="2"]>fieldset,.design-carousel .message-block{background:#fff;border:1px solid #e0e5ed;border-radius:16px;padding:20px;margin:0 0 16px;min-width:0}
.design-carousel .wizard-panel[data-step="2"] legend,.design-carousel .clock-textures summary{font-size:19px;font-weight:700;color:#171a20}
.design-carousel #styles,.design-carousel .texture-grid{display:flex!important;flex-wrap:nowrap!important;gap:14px;overflow-x:auto;scroll-snap-type:x proximity;scrollbar-width:thin;scrollbar-color:#cad7fb transparent;padding:8px 2px 12px;min-width:0;touch-action:pan-x pan-y;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain}
.design-carousel #styles .style-option{flex:0 0 206px;min-width:0;scroll-snap-align:start}
.design-carousel #styles .style{display:flex;flex-direction:column;width:100%;height:auto;padding:0;margin:0;border:1px solid #dce3ed;border-radius:12px;overflow:hidden;background:#fff;color:#171a20}
.design-carousel #styles .style img{width:100%;height:auto!important;aspect-ratio:1;object-fit:contain!important;display:block;margin:0;border-radius:0;background:#f7f9fc!important}
.design-carousel #styles .style-name{padding:10px 6px;font-size:14px;line-height:1.4;font-weight:600;white-space:normal}
.design-carousel #styles .style-description,.design-carousel #styles .occasion-medium,.design-carousel #styles .style-badge,.design-carousel #style-sample-note,.design-carousel #wedding-style-example,.design-carousel #styles .style-example-open{display:none!important}
.design-carousel #styles .style.selected,.design-carousel .texture-grid button[aria-pressed="true"]{border:2px solid #164bde;box-shadow:0 0 0 1px #164bde}
.design-carousel #style-occasions,.design-carousel .texture-categories,.design-carousel .caption-ideas .people-modes{display:flex;flex-wrap:nowrap;gap:8px;overflow-x:auto;white-space:nowrap;scrollbar-width:none;touch-action:pan-x pan-y;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;padding:6px 0 12px}
.design-carousel #style-occasions button,.design-carousel .texture-categories button,.design-carousel .caption-ideas .people-modes button{flex:0 0 auto;border:1px solid #e0e5ed;border-radius:24px;padding:9px 16px;background:#fff;color:#596272;font-size:13px;margin:0;min-height:42px}
.design-carousel #style-occasions button[aria-pressed="true"],.design-carousel .texture-categories button[aria-pressed="true"],.design-carousel .caption-ideas .people-modes button[aria-pressed="true"]{background:#164bde;color:#fff;border-color:#164bde}
.design-carousel .texture-grid button{flex:0 0 158px;width:158px;padding:0;border:1px solid #dce3ed;border-radius:12px;overflow:hidden;background:white;scroll-snap-align:start;margin:0;color:#171a20}
.design-carousel .texture-grid button img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:contain}
.design-carousel .texture-grid button span{display:block;padding:9px 4px;font-size:13px}
.design-carousel .texture-none{border:1px solid #dce3ed;border-radius:20px;background:white;color:#164bde;padding:8px 14px}
.design-carousel .texture-none[aria-pressed="true"]{background:#edf3ff;border-color:#164bde}
.design-carousel .message-block input[type="text"]{width:100%;border:1px solid #dce3ed;border-radius:10px;background:#fcfdff;padding:14px;font:inherit}
.design-carousel .message-block input[type="checkbox"]{accent-color:#164bde}
.design-carousel .caption-ideas{border:0;border-top:1px solid #edf0f5;background:transparent;padding:16px 0 0;margin:16px 0 0}
.design-carousel .caption-ideas>strong{font-size:15px;color:#171a20}.design-carousel .caption-ideas>p{font-size:12px;color:#70798a}
.design-carousel .caption-group-title{display:none}
.design-carousel .caption-rail{display:flex;gap:10px;overflow-x:auto;touch-action:pan-x pan-y;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;scrollbar-width:thin;padding:4px 0 12px}
.design-carousel .caption-rail button{flex:0 0 auto;max-width:280px;border:1px solid #dce3ed;border-radius:10px;background:#f7f9ff;color:#23334e;padding:12px 16px;margin:0;text-align:right;font:inherit;font-size:13px}
.design-carousel #generate{background:#164bde;border-radius:12px}
@media(max-width:600px){.design-carousel .wizard-panel[data-step="2"]>fieldset,.design-carousel .message-block{padding:14px 12px;border-radius:13px;margin-bottom:12px}.design-carousel #styles .style-option{flex-basis:162px}.design-carousel #styles{gap:10px}.design-carousel .texture-grid button{flex-basis:126px;width:126px}.design-carousel #style-occasions button,.design-carousel .texture-categories button,.design-carousel .caption-ideas .people-modes button{font-size:12px;padding:8px 13px}.design-carousel .caption-rail button{flex-basis:245px}.design-carousel .wizard-panel[data-step="2"] legend,.design-carousel .clock-textures summary{font-size:17px}}
.design-carousel #style-occasions button,.design-carousel .texture-categories button,.design-carousel .caption-ideas .people-modes button{width:auto;max-width:none}
.design-carousel .caption-rail button{width:auto}
@media(max-width:600px){.design-carousel #styles,.design-carousel .texture-grid,.design-carousel .caption-rail{scrollbar-width:none}}
.design-carousel #styles .occasion-medium{display:block!important;order:3;font-size:11px;font-weight:400;color:#7c8491;padding:0 6px 10px;line-height:1.4;background:transparent;border:0;margin:0}
.design-carousel #styles .style-name{padding-bottom:4px}
