/* Alpine Tile Studio — a dedicated working surface */
.studio-v25{--ink:#202925;--muted:#626c65;--accent:#315b48;--line:#dbe0d8;background:#f2f3ee;color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px}
.studio-v25 *{box-sizing:border-box}.studio-v25 [hidden]{display:none!important}.studio-v25 .topbar{position:relative;height:78px;padding:8px 3%;background:#fbfcf8;border-bottom:1px solid var(--line);color:var(--ink)}.studio-v25 .brand-logo{width:76px;height:58px}.studio-v25 .topbar nav a{color:var(--ink);font-size:14px}.studio-v25 .topbar .nav-design{background:var(--ink);color:white;border-radius:8px}.studio-v25 #menu{color:var(--ink)}
.studio-v25 .designer{padding:24px 3% 12px;max-width:1800px;margin:auto;background:transparent}.studio-v25 .designer-heading{margin:0 0 20px;align-items:center}.studio-v25 .designer-heading .eyebrow{font-size:12px;letter-spacing:.16em;color:var(--muted)}.studio-v25 #designer-title{font:500 38px/1.1 Arial,sans-serif;letter-spacing:-1.7px;margin:7px 0}.studio-v25 .designer-heading p{margin:0;font-size:15px;color:var(--muted)}.studio-v25 .mode{padding:4px;border:1px solid var(--line);border-radius:10px;background:#e6e9e1}.studio-v25 .mode button{font-size:14px;min-height:40px;padding:8px 17px;border:0;border-radius:7px;color:var(--ink);background:transparent}.studio-v25 .mode button.selected{background:#fff;box-shadow:0 1px 4px #20292518;color:var(--ink)}
.studio-v25 .designer-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(370px,1fr);gap:20px;align-items:start}.studio-v25 .preview-wrap{position:sticky;top:16px;border:1px solid #cdd5ca;border-radius:18px;overflow:hidden;background:#d8ded4;box-shadow:none}.studio-v25 .preview-top{padding:18px 20px;display:flex;gap:12px;justify-content:space-between;font-size:12px;color:#344339;background:#e4e9df;letter-spacing:.06em}.studio-v25 .room-viewport{height:clamp(430px,59vh,760px);min-height:0;background:#d8ded4}.studio-v25 #room-canvas{display:block;width:100%;height:100%;touch-action:pan-y}.studio-v25 .preview-bottom{padding:12px 18px;display:flex;gap:10px;align-items:center;justify-content:space-between;background:#e4e9df;color:#465347}.studio-v25 .preview-bottom>span{font-size:12px}.studio-v25 .zoom{display:flex;align-items:center;gap:3px}.studio-v25 .zoom button{min-width:40px;height:40px;padding:0 9px;border:1px solid #c4ccbf;background:#f8faf4;color:#26352b;border-radius:8px}.studio-v25 .zoom span{font-size:13px;min-width:45px;text-align:center}
.studio-v25 .controls{padding:0;background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden;box-shadow:none}.studio-tabs{display:grid;grid-template-columns:repeat(4,1fr);padding:8px;background:#f8f9f5;border-bottom:1px solid var(--line);gap:4px}.studio-tabs button{border:0;border-radius:7px;background:transparent;color:#626c65;min-height:46px;font-size:14px;font-weight:600;padding:5px}.studio-tabs button[aria-selected=true]{background:#263e31;color:white}.studio-panel{padding:26px}.studio-panel>h3{font-size:24px;font-weight:500;letter-spacing:-.6px;margin:0 0 8px}.studio-panel .panel-intro{font-size:14px;line-height:1.5;color:var(--muted);margin:0 0 24px}.studio-v25 .choice{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 24px;padding:0;border:0}.studio-v25 .choice legend,.studio-v25 .direction legend{font-size:14px;font-weight:600;color:var(--ink);margin-bottom:10px;padding:0}.studio-v25 .choice button{flex:1 0 25%;min-height:44px;border:1px solid var(--line);border-radius:9px;padding:11px 8px;background:#fff;color:#3d4941;font-size:14px;font-weight:500;box-shadow:none}.studio-v25 .choice button.selected{border-color:#315b48;background:#edf3eb;box-shadow:inset 0 0 0 1px #315b48;color:#203d2b}.studio-v25 .patterns button{flex-basis:40%;min-height:47px}.studio-v25 .colors button{flex:1 0 26%;height:68px;padding:39px 5px 5px;background:linear-gradient(var(--swatch),var(--swatch)) top/100% 34px no-repeat,#fff;font-size:12px;color:#26352b;border:1px solid #d0d8cc;border-radius:8px;text-shadow:none}.studio-v25 .colors button.selected{background:linear-gradient(var(--swatch),var(--swatch)) top/100% 34px no-repeat,#edf3eb;box-shadow:0 0 0 2px #315b48}.studio-v25 .dimensions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:22px 0}.studio-v25 .dimensions h3{grid-column:1/-1;font-size:14px;margin:0 0 4px}.studio-v25 .dimensions h3 small{font-size:12px;font-weight:400;color:var(--muted)}.studio-v25 label{font-size:14px;font-weight:500;color:var(--ink)}.studio-v25 input:not([type=radio]):not([type=checkbox]):not([type=range]):not([type=file]),.studio-v25 select{width:100%;min-height:48px;padding:12px;border:1px solid #cbd3c6;border-radius:8px;background:#fbfcf9;color:#202925;font-size:16px;margin-top:7px;box-shadow:none}.studio-v25 .two{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:24px}.studio-v25 .shower-options{padding:0;margin:0 0 24px;border:0;background:none;display:grid;gap:14px}.studio-v25 .shower-options h3{display:none}.studio-v25 .led-choice{display:flex;align-items:center;gap:9px}.studio-v25 input[type=checkbox],.studio-v25 input[type=radio]{accent-color:#315b48;width:19px;height:19px}.studio-v25 input[type=range]{accent-color:#315b48;width:100%;margin:12px 0 24px}.studio-v25 .advanced-only>label{display:block}.studio-v25 .tiny,.studio-v25 .simple-help{font-size:13px;line-height:1.55;color:#616c64;margin:12px 0}.studio-v25 .plan-drop{background:#f1f5ed;border:1px dashed #869780;padding:22px;border-radius:10px}.studio-v25 .plan-drop span{font-size:13px;line-height:1.5}.studio-v25 .direction{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:0;border:0;margin-bottom:24px}.studio-v25 .direction label{display:flex;align-items:center;gap:8px;padding:12px;background:#f7f9f3;border:1px solid var(--line);border-radius:8px}.studio-v25 .direction label b{font-size:14px}.studio-v25 .direction label small{display:block;font-size:12px;color:var(--muted);margin-top:3px}.studio-v25 .range{padding:18px;background:#edf2e8;border-radius:12px;box-shadow:none;margin:20px 0}.studio-v25 .metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.studio-v25 .metrics span{font-size:11px;letter-spacing:.06em;color:#4c5c4d}.studio-v25 .metrics b{font-size:21px;white-space:nowrap}.studio-v25 .range p{font-size:13px;line-height:1.65;margin:17px 0 0;border-top:1px solid #d1daca;padding-top:14px}.studio-v25 .studio-next,.studio-v25 #use-design{display:block;width:100%;padding:16px 18px;border:0;border-radius:9px;background:#263e31;color:#fff;font-size:15px;font-weight:600;min-height:52px;margin-top:24px}.studio-v25 button{cursor:pointer;transition:background .15s,border-color .15s}.studio-v25 button:disabled{opacity:.4;cursor:default}.studio-v25 :focus-visible{outline:3px solid #b87930;outline-offset:3px}.studio-footnote{text-align:center;font-size:12px;color:#687267;margin:15px 0 20px}
@media(max-width:900px){.studio-v25 .designer-layout{grid-template-columns:1fr}.studio-v25 .preview-wrap{position:relative;top:auto}.studio-v25 .room-viewport{height:390px}.studio-v25 .designer{padding:18px 16px}.studio-v25 .designer-heading{margin-bottom:16px}.studio-v25 #designer-title{font-size:30px}.studio-v25 .designer-heading p{font-size:14px}.studio-v25 .topbar{height:68px}.studio-v25 .brand-logo{height:52px}.studio-v25 .topbar nav.open{background:#fbfcf8}.studio-v25 .controls{min-width:0}.studio-panel{padding:22px}.studio-v25 .designer-layout{gap:14px}}
@media(max-width:540px){.studio-v25 .designer-heading{gap:10px}.studio-v25 .designer-heading .eyebrow{font-size:10px}.studio-v25 .mode button{padding:8px 10px;font-size:13px}.studio-v25 .designer-heading p{display:none}.studio-v25 .room-viewport{height:290px}.studio-v25 .preview-top{padding:12px;font-size:10px}.studio-v25 .preview-bottom{padding:9px 10px}.studio-v25 .preview-bottom>span{max-width:100px;font-size:11px;line-height:1.4}.studio-v25 .studio-tabs button{font-size:12px}.studio-panel{padding:20px 16px}.studio-panel>h3{font-size:22px}.studio-v25 .dimensions label{font-size:12px}.studio-v25 .metrics b{font-size:19px}.studio-v25 .direction label{padding:10px}.studio-v25 .direction label b{font-size:13px}.studio-v25 .preview-wrap{border-radius:12px}}
@media(prefers-reduced-motion:reduce){.studio-v25 *{transition:none!important;animation:none!important}}

.studio-v25 .brand-logo{filter:brightness(.25)}
