/* Shared frosted controls, matching the navigation dock. */
:root{--control-surface:rgba(248,250,243,.93);--control-hover:#edf1e5;--control-selected:#dfe6d5;--control-ink:#435039;--control-muted:#727e65;--control-border:rgba(172,186,155,.38);--control-shadow:0 4px 25px #101e1110}
.button,.text-button,.drop-discover,.journey-end button,.entry-layer .entrance-foot button{border:1px solid var(--control-border);border-radius:999px;background:var(--control-surface);color:var(--control-ink);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:var(--control-shadow);padding:14px 23px;min-height:46px;line-height:1.3;font-size:14px;font-weight:500;transition:background .18s,border-color .18s,box-shadow .18s;filter:none}
.button.dark{background:var(--control-selected);color:#35422a;border-color:#acbb994d}
.button:hover,.text-button:hover,.drop-discover:hover,.journey-end button:hover,.entry-layer .entrance-foot button:hover{background:var(--control-hover);border-color:#92a37c80;filter:none;box-shadow:0 5px 22px #101e1117}.button.dark:hover{background:#d4dfc8}
.button:active,.text-button:active,.drop-discover:active{background:#dce5d0}
.text-button{gap:30px;align-items:center}.text-button span,.button span{font-size:18px;font-weight:400}.drop-discover{min-width:218px;padding:12px 25px}.drop-discover span{color:var(--control-muted);font-size:12px;margin-top:5px}.journey-end button{font-size:12px;min-height:40px;padding:10px 19px}.entry-layer .entrance-foot button{font-size:12px;min-height:40px;padding:10px 19px}
.encounter-label{border:1px solid var(--control-border);border-radius:20px;background:var(--control-surface);color:var(--control-ink);padding:10px 17px;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:var(--control-shadow);line-height:1.3}.encounter-label small{color:var(--control-muted);font-size:11px;margin-top:5px}.journey-tee:hover .encounter-label{background:var(--control-hover);border-color:#92a37c80}
dialog{border:1px solid #c9d3bd99;border-radius:26px;background:rgba(248,250,243,.97);box-shadow:0 24px 100px #101e113b;color:var(--control-ink)}dialog::backdrop{background:#17201482;backdrop-filter:blur(13px);-webkit-backdrop-filter:blur(13px)}.modal-head{border-bottom:1px solid var(--control-border);gap:16px}.modal-head h2{color:#303b29}.close{width:40px;height:40px;min-width:40px;display:grid;place-items:center;line-height:1;padding:0;border-radius:50%;border:1px solid var(--control-border);background:var(--control-surface);font-size:25px;color:var(--control-muted);box-shadow:0 2px 12px #101e1107}.close:hover{background:var(--control-selected);color:#35422a;filter:none}
.studio-preview{background:#e6ecde}.studio-controls textarea,.studio-controls select{background:#f4f7ed;border:1px solid var(--control-border);border-radius:16px;color:var(--control-ink);padding:13px 15px;box-shadow:inset 0 1px 2px #101e1105}.studio-controls textarea{resize:vertical;min-height:90px}.studio-controls select{border-radius:999px;padding-right:35px}.studio-controls input[type=range]{accent-color:#7c8e68}.studio-controls label{color:#59684b}.swatches{padding:5px 3px;gap:13px}.swatch{box-shadow:inset 0 0 0 3px #ffffff60;border:1px solid var(--control-border);min-width:38px}.swatch[aria-pressed=true]{outline:2px solid #84976f;outline-offset:3px}
.sizes{display:inline-flex;padding:6px;gap:5px;border:1px solid var(--control-border);border-radius:25px;background:#edf2e5}.size{border:1px solid transparent;border-radius:999px;background:transparent;padding:11px;min-width:43px;min-height:43px;color:var(--control-muted)}.size[aria-pressed=true]{background:#d9e3cd;color:#35422a;border-color:#acbb9940;box-shadow:0 2px 7px #101e1108}.size:hover{background:#e0e9d5;filter:none}
.detail-copy details{border:1px solid var(--control-border);border-radius:18px;background:#f1f5e9;padding:13px 16px;font-size:14px;margin-top:10px}.detail-copy summary{cursor:pointer}.detail-copy details p{font-size:13px;color:var(--control-muted)}
.search-body input{border:1px solid var(--control-border);border-radius:999px;background:#edf2e6;padding:14px 18px;color:var(--control-ink)}.search-body input::placeholder{color:#8a967e}.search-result{border:1px solid var(--control-border);border-radius:19px;padding:17px 18px;margin-top:11px;background:#f2f6eb;font-size:15px}.search-result:hover{background:var(--control-selected);color:#35422a;filter:none}.search-result small{color:var(--control-muted)}
.bag-row{border:1px solid var(--control-border);border-radius:20px;padding:18px;margin-bottom:12px;background:#f0f5e8}.bag-row p{color:var(--control-muted)}.remove{display:inline-block;border:1px solid var(--control-border);border-radius:999px;padding:7px 13px;background:#f8faf3;color:var(--control-muted);text-decoration:none;font-size:12px;margin-top:4px}.remove:hover{background:#e1e9d7;filter:none}.total{color:#35422a}#toast{border:1px solid var(--control-border);border-radius:999px;background:var(--control-surface);color:var(--control-ink);backdrop-filter:blur(14px);box-shadow:0 8px 35px #101e1125;bottom:95px}
button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:2px solid #82966f;outline-offset:4px}
@media(max-width:700px){dialog{border-radius:23px;max-height:92svh}.button,.text-button{padding:13px 20px;font-size:13px}.drop-discover{padding:10px 20px;min-width:196px;font-size:13px}.drop-discover span{font-size:11px}.encounter-label{padding:8px 12px;border-radius:17px;font-size:11px}.encounter-label small{font-size:10px}.sizes{border-radius:22px;gap:4px;padding:5px}.size{min-width:37px;min-height:40px;padding:9px}.search-body{padding:22px}.bag-row{padding:16px}.modal-head{padding:17px 19px}.studio-invitation .text-button{margin-top:12px}.close{width:38px;height:38px;min-width:38px}#toast{bottom:83px;font-size:12px;padding:12px 18px;max-width:90vw;width:max-content}}
@media(prefers-reduced-motion:reduce){.button,.text-button,.drop-discover{transition:none}}
/* Product controls sit on opposite sides of the garment. */
.journey-tee{cursor:default}.tee-name{position:absolute;left:10%;right:10%;top:-22px;text-align:center;font-size:12px;color:#516045;line-height:1.3}.tee-image-button{display:block;width:76%;margin:0 auto;padding:0;border:0;background:none;color:inherit}.tee-image-button:hover{filter:none}.journey-tee .encounter-tee{width:100%}.product-colors{position:absolute;left:0;top:45%;transform:translateY(-50%);display:flex;flex-direction:column;gap:7px;padding:9px 7px;border:1px solid var(--control-border);border-radius:999px;background:var(--control-surface);backdrop-filter:blur(14px);box-shadow:var(--control-shadow);z-index:2}.product-color{width:25px;height:25px;min-width:25px;border:3px solid #f7f9f1;box-shadow:0 0 0 1px #c1cab655;border-radius:50%;background:var(--swatch);padding:0;position:relative}.product-color[aria-pressed=true]{box-shadow:0 0 0 2px #788c60}.product-color:hover{filter:none;box-shadow:0 0 0 2px #98a783}.product-side-action{position:absolute;right:0;top:45%;transform:translateY(-50%);border:1px solid var(--control-border);border-radius:999px;min-width:43px;padding:10px 7px;background:var(--control-surface);color:var(--control-ink);backdrop-filter:blur(14px);box-shadow:var(--control-shadow);display:flex;flex-direction:column;align-items:center;gap:4px;z-index:2}.product-side-action>span{font-size:23px;line-height:1}.product-side-action small{font-size:10px}.product-side-action:hover{background:var(--control-hover);filter:none}.drop-discover{top:55%;left:calc(50% + min(22vw,260px));transform:translateY(-50%);width:130px;min-width:0;white-space:normal;padding:17px;font-size:13px;line-height:1.4;border-radius:26px}.drop-discover span{font-size:11px}#drop-colors{position:absolute;left:calc(50% - min(26vw,300px));top:55%;z-index:7}#drop-colors .product-colors{position:relative;left:auto;top:auto;transform:translateY(-50%);padding:12px 9px;gap:12px}#drop-colors .product-color{width:30px;height:30px}.sculpture-shirt.color-white img{filter:none}.sculpture-shirt.color-sand img{filter:sepia(.35) saturate(.6)}.sculpture-shirt.color-sage img{filter:sepia(.6) hue-rotate(35deg) saturate(.4) brightness(.83)}.sculpture-shirt.color-ink img{filter:brightness(.24)}.sculpture-shirt:not(.color-ink)>span{color:#3e5036}
@media(max-width:700px){.journey-tee{width:49%}.journey-tee-2{width:49%}.tee-image-button{width:76%}.tee-name{font-size:10px;top:-17px;left:0;right:0}.product-colors{gap:6px;padding:7px 5px;left:0;top:48%}.product-color{width:18px;height:18px;min-width:18px;border-width:2px}.product-side-action{top:48%;right:0;min-width:29px;padding:9px 4px}.product-side-action>span{font-size:19px}.product-side-action small{font-size:9px}.journey-tee .encounter-print{font-size:clamp(10px,2.7vw,16px)}.drop-discover{top:53%;left:auto;right:12px;width:76px;min-width:0;padding:13px 9px;font-size:11px;border-radius:23px}.drop-discover span{font-size:10px;line-height:1.4}#drop-colors{left:14px;top:53%}#drop-colors .product-colors{padding:10px 7px;gap:10px}#drop-colors .product-color{width:24px;height:24px}.drop-sculpture{width:56vw;left:48%}.sculpture-shirt>span{font-size:25px}}
