/* Bowl Bar: tactile cards, clear selections and a quieter live workspace. */
.navcta,.hero-actions .button,.opening-info .button{border-radius:12px;gap:24px;padding:7px 7px 7px 20px;min-height:54px;font-weight:800;background:var(--pink);color:var(--wine);border:1px solid #ffffff20;box-shadow:0 5px 0 #210d1a35;transition:transform .2s,box-shadow .2s,background .2s}
.navcta>span,.hero-actions .button>span,.opening-info .button>span{display:grid;place-items:center;width:39px;height:39px;border-radius:8px;background:var(--wine);color:var(--cream);font-size:23px;flex-shrink:0;transition:transform .2s}
.navcta:hover,.hero-actions .button:hover,.opening-info .button:hover{background:#f3cbd9;transform:translateY(-2px);box-shadow:0 7px 0 #210d1a35}
.navcta:active,.hero-actions .button:active,.opening-info .button:active{transform:translateY(2px);box-shadow:0 2px 0 #210d1a35}
.builder{background:#f0e9e6;padding-top:85px}
.builder-heading{margin-bottom:32px}.builder-heading h2{font-size:clamp(44px,5.3vw,76px)}
.builder-toolbar{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 22px;margin-bottom:22px;border:1px solid #d7c8cb;border-radius:14px;background:#faf6f0}
.builder-toolbar>div:first-child{display:flex;align-items:center;flex-wrap:wrap;gap:9px 13px;font-size:11px}.builder-toolbar .status-dot{color:#7d9347}.builder-toolbar strong{font-size:12px}.builder-toolbar>div>span:last-child{color:#806874}
.restore-actions{display:flex;gap:8px;flex-wrap:wrap}.restore-actions button{font-size:11px;font-weight:700;padding:12px 14px;min-height:44px;border:1px solid #cbb7c0;border-radius:9px;background:transparent}.restore-actions button:hover{background:#eee1e5}
.builder-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.08fr);gap:24px;align-items:start}
.bowl-preview{border-radius:20px;background:radial-gradient(ellipse at 50% 28%,#fffdf6 0%,#f5e7e5 58%,#eedfdf 100%);border:1px solid #d7c5cc;box-shadow:0 20px 50px #491b3309;padding:24px;top:100px}
.preview-top{font-size:9px;letter-spacing:.15em}.preview-top:after{display:none}.live-dot{font-size:11px;background:#fffcf7;border:1px solid #e0d2d3;padding:5px 10px;border-radius:30px}
#live-bowl{width:calc(100% + 48px);margin:-4px -24px -15px}
.empty-bowl-note{position:relative;z-index:2;display:flex;align-items:center;justify-content:center;gap:8px;max-width:340px;margin:0 auto 17px;border:1px dashed #b99da9;border-radius:10px;padding:10px;font-size:10px;color:#6c4759;background:#fffaf4b8}.empty-bowl-note>span{font-size:18px;line-height:1}
.bowl-view-controls{background:#fffcf780;max-width:340px;margin:auto;padding:5px;border:1px solid #d9c5cf;border-radius:12px;gap:4px}.bowl-view-controls button{border:0;border-radius:8px;min-height:40px;flex:1;padding:9px 8px;font-size:10px}.bowl-view-controls button.active{box-shadow:0 3px 7px #491b331c}
.bowl-caption{padding-top:20px}.bowl-caption h3{font-size:32px;letter-spacing:-.055em}.bowl-caption>span{letter-spacing:.1em}.preview-price{font-size:24px}.preview-actions .text-button{padding:11px 13px;border-radius:9px;border:1px solid #cfb9c3;background:#fffaf46b;font-size:10px}.preview-actions{align-items:center;flex-wrap:wrap}
.bowl-controls{padding:0;display:flex;flex-direction:column;gap:16px}
.bowl-controls .step{padding:23px;margin:0;background:var(--paper);border:1px solid #ddd0d1;border-radius:18px}
.step-title{gap:10px;margin-bottom:20px}.step-title>span{border:0;border-radius:8px;width:30px;height:30px;background:#eee0e6;color:var(--wine);font-weight:800}.step-title h3{font-size:20px;letter-spacing:-.045em}.step-title>small{font-size:9px;font-weight:700;padding:5px 7px;border-radius:6px;background:#f1e6e9;white-space:nowrap}
.sizes{gap:9px}.sizes button{position:relative;border:1px solid #ddcdd3;border-radius:12px;background:#f9f5f0;padding:20px 6px 15px;gap:7px;box-shadow:none}.sizes button:before{content:'';width:12px;height:12px;border-radius:50%;border:1px solid #b79caa;position:absolute;right:9px;top:9px}.sizes button.active{background:#f4e5eb;color:var(--wine);border:1px solid var(--wine);box-shadow:inset 0 0 0 1px var(--wine)}.sizes button.active:before{background:var(--wine);border:3px solid #f4e5eb;box-shadow:0 0 0 1px var(--wine)}.sizes .size-letter{font-size:31px}.sizes strong{font-size:22px}.sizes small{font-size:9px;line-height:1.7;margin-top:4px}.sizes .size-volume{font-size:10px}
.tabs{gap:4px;border-radius:0;padding:0 0 10px;background:transparent;border-bottom:1px solid #e4d9dd;margin-bottom:13px}.tabs button{border:1px solid #e1d3d9;border-radius:8px;padding:10px 9px;font-size:10px;min-height:42px;background:#faf6f2}.tabs button.active{background:var(--wine);border-color:var(--wine);box-shadow:none}
.extras-rule{font-size:10px;color:#7a606c}.included-status{background:#edf0df;border:1px solid #dce2c8;padding:9px 11px;border-radius:8px;font-size:10px;line-height:1.6;min-height:0;margin-bottom:15px;color:#4c5932}
.ingredients{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.ingredient{min-width:0;min-height:132px;border:1px solid #e0d2d7;border-radius:12px;background:#faf6f2;padding:14px 10px 12px;font-size:11px;font-weight:700;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;line-height:1.45}.ingredient:hover{background:#f4e9ed;border-color:#bb96a8;transform:translateY(-2px)}.ingredient.active{background:#f3e2e9;border-color:var(--wine);box-shadow:inset 0 0 0 1px var(--wine)}
.ingredient-photo{width:62px;height:58px;margin:3px auto 10px}.ingredient-name{display:block;overflow-wrap:anywhere}.ingredient-toggle{position:absolute;top:7px;right:7px;display:grid;place-items:center;width:21px;height:21px;border:1px solid #d6c2cc;background:var(--paper);border-radius:7px;font-size:15px;font-weight:500;line-height:1}.ingredient.active .ingredient-toggle{background:var(--wine);color:var(--paper);border-color:var(--wine);font-size:12px}.topping-extra{margin-top:4px;font-size:9px}
.price-panel{margin:0;background:var(--wine);color:var(--cream);border-radius:18px;padding:24px;border:1px solid var(--wine)}.price-head{border-color:#ffffff26}.price-head>div>span{color:#edcbd9;letter-spacing:.14em}.price-head>strong{font-size:36px}.price-panel .price-detail{border-color:#ffffff1a}.price-panel .price-detail dt,.price-panel .price-detail dd{color:var(--cream)}.price-panel .price-detail small{color:#d7bac7}
.recipe-summary{background:var(--paper);border:1px solid #ddd0d1;border-radius:18px;padding:22px;margin:0;flex-direction:column;align-items:stretch;gap:15px}.bowl-order-actions{display:flex;flex-direction:column;gap:8px}.bowl-order-actions .button{border-radius:10px;min-height:54px;background:var(--pink);color:var(--wine);padding:10px 12px 10px 18px}.bowl-order-actions .button>span{display:grid;place-items:center;width:32px;height:32px;border-radius:7px;background:var(--wine);color:var(--paper)}.bowl-order-actions .text-button{border:1px solid #ddcdd3;border-radius:10px;min-height:44px}.builder-note{padding:0 5px;margin:0}
@media(max-width:1100px) and (min-width:801px){.bowl-controls .step{padding:18px}.step-title h3{font-size:17px}.tabs button{font-size:9px;padding:10px 6px}.sizes small{font-size:8px}.ingredient{font-size:10px}.ingredient-photo{width:52px;height:50px}}
@media(max-width:800px){.builder-grid{grid-template-columns:1fr;gap:20px}.bowl-preview{position:relative;top:0;max-height:none;overflow:visible}.builder-toolbar{align-items:flex-start;flex-direction:column}.builder-toolbar>div:first-child{gap:8px 10px}.builder-toolbar>div>span:last-child{flex-basis:100%;padding-left:16px}.builder-toolbar:has(.restore-actions:empty){gap:0}.restore-actions:not(:has(button:not([hidden]))){display:none}.ingredients{grid-template-columns:repeat(4,minmax(0,1fr))}.bowl-controls{gap:16px}.sizes small{font-size:10px}}
@media(max-width:640px){.navcta{font-size:10px;padding:5px 5px 5px 13px;gap:13px;min-height:44px;border-radius:10px}.navcta>span{width:32px;height:32px;font-size:21px;border-radius:6px}.hero-actions .button,.opening-info .button{padding:6px 6px 6px 17px;gap:24px;font-size:11px;min-height:50px}.hero-actions .button>span,.opening-info .button>span{height:36px;width:36px}.builder{padding:55px 14px}.builder-heading{padding:0 6px}.builder-heading h2{font-size:47px}.builder-toolbar{padding:16px;margin-bottom:16px;gap:13px}.builder-toolbar strong{font-size:11px}.builder-toolbar>div:first-child{font-size:10px}.bowl-preview{padding:22px 18px;border-radius:18px}#live-bowl{width:calc(100% + 36px);margin:0 -18px -10px}.empty-bowl-note{font-size:9px;margin-bottom:15px}.bowl-view-controls button{font-size:10px}.bowl-caption h3{font-size:28px}.bowl-controls .step{padding:20px 15px;border-radius:16px}.step-title h3{font-size:19px}.step-title{gap:8px}.step-title>small{font-size:8px;padding:5px}.step-title>span{width:26px;height:26px;font-size:9px}.sizes{gap:7px}.sizes button{padding:22px 4px 14px}.sizes small{font-size:8px}.sizes strong{font-size:21px}.sizes .size-letter{font-size:29px}.tabs{gap:5px}.tabs button{font-size:9px;padding:10px 8px;flex:1 0 auto}.ingredients{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.ingredient{min-height:126px;font-size:10px;padding:15px 7px 11px}.ingredient-photo{width:56px;height:53px}.ingredient-toggle{width:19px;height:19px;top:6px;right:6px;font-size:14px}.price-panel{padding:23px 20px}.price-head>strong{font-size:33px}.recipe-summary{padding:20px}.builder-note{font-size:9px}.preview-actions .text-button{font-size:9px;padding:10px}.restore-actions button{font-size:10px}}
@media(prefers-reduced-motion:reduce){.navcta,.hero-actions .button,.opening-info .button,.ingredient,.sizes button{transition:none;transform:none}}
