/* design-v2.css — paigutuse- ja loetavusparandused (lisatud viimasena, kujundus ja värvid jäävad samaks) */
:root{--gold-deep:#8a5d14}

/* 1. Alumine riba: vestlusnupp on samas reas, mitte teise nupu all */
body .dock{padding-bottom:calc(10px + env(safe-area-inset-bottom,0px))}
body .dock .in{align-items:center}
.guide-slot{display:flex;align-items:center;flex:0 0 auto}
body .guide-launch.in-dock{position:static;right:auto;bottom:auto;z-index:auto;padding:10px 16px;min-height:46px;box-shadow:none;border-radius:6px;font-size:14px;white-space:nowrap}
body .guide-launch.in-dock span{font-size:18px}
body .guide-launch[hidden]{display:none}
body{padding-bottom:112px}

/* 2. Vestluspaneel ei kata päise nuppe ega jää alumise riba taha */
body .door-guide{right:24px;bottom:calc(78px + env(safe-area-inset-bottom,0px));height:min(700px,calc(100dvh - 78px - 150px - env(safe-area-inset-bottom,0px)))}

/* 3. Eelvaade ja skeem kasutavad vaba kõrgust; neutraalne skeem on piisavalt suur */
.main.independent-scroll .opera-photo,.main.independent-scroll .stage svg.scene{height:clamp(300px,calc(var(--column-height) - 235px),580px);max-height:none}
.preview-mode button{white-space:normal;line-height:1.2;text-align:center}
.preview-mode button small{display:block;font-size:11px;font-weight:500;opacity:.8}

/* 4. Päis kompaktsemaks */
.stepper{padding-bottom:12px}
.header-doors{padding-top:6px;padding-bottom:10px}
.header-doors.is-empty .header-total{display:none}

/* 5. Mudelisammu: tüübikaardid madalamaks, et mudelid jõuaksid nähtavale */
#panel .g3 .opt{min-height:92px;padding:12px}

/* 6. Opera 1F/2F selgitus */
.chip-profile{display:inline-flex;align-items:center;gap:10px;padding:8px 14px}
.chip-profile .profile-icon{flex:0 0 auto}
.profile-help{margin:10px 0 0;max-width:62ch;line-height:1.5}

@media(max-width:760px){
  body{padding-bottom:108px}
  body .dock{padding-bottom:calc(10px + env(safe-area-inset-bottom,0px))}
  body .guide-launch.in-dock{font-size:0;gap:0;padding:0;width:48px;min-width:48px;height:48px;justify-content:center;border-radius:6px}
  body .guide-launch.in-dock span{font-size:22px}
  body .dock .in{gap:8px;justify-content:flex-start}
  body .dock .in .btn{flex:1}
  .guide-slot{order:-1}
  body .door-guide{left:8px;right:8px;bottom:calc(72px + env(safe-area-inset-bottom,0px));height:min(48dvh,420px)}
  .header-doors{padding-top:0;padding-bottom:8px;gap:6px}
}

.app-version{display:inline-block;margin-left:.5em;padding:1px 8px;border:1px solid var(--line-strong);border-radius:999px;font-size:.85em;white-space:nowrap;color:var(--muted)}
.btn.clear-all.armed{background:var(--warn,#9c4210);border-color:var(--warn,#9c4210);color:#fff}

.guide-head.is-draggable{cursor:grab;touch-action:none;user-select:none}
.guide-head.is-draggable::before{content:"⠿";position:absolute;left:8px;top:6px;font-size:14px;opacity:.55;line-height:1}
.door-guide.is-dragging{cursor:grabbing;box-shadow:0 18px 50px #19234340;transition:none}
.door-guide.is-dragging .guide-head{cursor:grabbing}
.door-guide.is-moved{box-shadow:0 12px 40px #1923433a}
.guide-head.is-draggable{position:relative;padding-left:28px}

.guide-focus{animation:guideFocus 2.2s ease-out 1;border-radius:12px}
@keyframes guideFocus{0%{box-shadow:0 0 0 3px var(--gold),0 0 0 8px #e1ae6444}100%{box-shadow:0 0 0 3px transparent,0 0 0 8px transparent}}
@media(prefers-reduced-motion:reduce){.guide-focus{animation:none;outline:2px solid var(--gold)}}

.door-guide.is-nudge{animation:guideNudge 1.4s ease-out 1}
@keyframes guideNudge{0%{transform:translateX(0)}18%{transform:translateX(-14px) rotate(-.6deg)}36%{transform:translateX(12px) rotate(.5deg)}54%{transform:translateX(-8px)}72%{transform:translateX(5px)}100%{transform:none}}
@media(prefers-reduced-motion:reduce){.door-guide.is-nudge{animation:none}}

.panel h2{font-weight:800;color:var(--navy)}

.guide-resize{position:absolute;bottom:0;width:22px;height:22px;z-index:3;touch-action:none;opacity:.7}
.guide-resize:hover,.door-guide.is-dragging .guide-resize{opacity:1}
.guide-resize-br{right:0;cursor:nwse-resize;background:linear-gradient(135deg,transparent 50%,#192343 50% 56%,transparent 56% 68%,#192343 68% 74%,transparent 74% 86%,#192343 86% 92%,transparent 92%)}
.guide-resize-bl{left:0;cursor:nesw-resize;background:linear-gradient(225deg,transparent 50%,#192343 50% 56%,transparent 56% 68%,#192343 68% 74%,transparent 74% 86%,#192343 86% 92%,transparent 92%)}
.guide-resize-br{border-bottom-right-radius:14px}.guide-resize-bl{border-bottom-left-radius:14px}
@media(max-width:899px){.guide-resize{display:none}}

/* Calls attention until the visitor opens the assistant for the first time. */
.guide-launch.is-calling{animation:guideCall 2.8s ease-in-out infinite}
.guide-launch.is-calling::after{content:"";position:absolute;inset:-4px;border-radius:inherit;border:2px solid var(--gold,#e1ae64);opacity:0;animation:guideRing 2.8s ease-out infinite;pointer-events:none}
@keyframes guideCall{0%,55%,100%{transform:translateY(0)}62%{transform:translateY(-7px)}70%{transform:translateY(0)}78%{transform:translateY(-4px)}86%{transform:translateY(0)}}
@keyframes guideRing{0%,55%{opacity:0;transform:scale(1)}62%{opacity:.9}100%{opacity:0;transform:scale(1.12,1.35)}}
@media(prefers-reduced-motion:reduce){.guide-launch.is-calling{animation:none;box-shadow:0 0 0 3px var(--gold,#e1ae64)}.guide-launch.is-calling::after{animation:none;display:none}}
.guide-launch.is-calling.in-dock{position:relative}

/* v2.24: keelatud nupud selgelt hallid; suuremad puutealad telefonis */
.header-utility .btn.header-send:disabled,.header-utility .btn.header-pdf:disabled{background:#e4e2db;border-color:#d6d3c8;color:#7b8094;cursor:not-allowed;opacity:1}
@media(max-width:760px){
 .stepmob .bars button{position:relative;height:6px;overflow:visible}
 .stepmob .bars button::after{content:"";position:absolute;left:0;right:0;top:-14px;bottom:-14px}
 .stepmob .bars{margin-top:12px;margin-bottom:6px}
 .sum .edit,.link.edit{padding:11px 8px;margin:-11px -8px;display:inline-block}
}

/* v2.28: lävepaku tüübi alamvalik */
.sub-choice{margin:14px 0 6px;padding:14px 16px 8px;border-left:3px solid var(--gold);background:#faf6ec;border-radius:0 12px 12px 0}
.sub-choice h3{margin:0 0 2px;font-size:15px;font-weight:800;color:var(--navy)}
.sub-choice .hint{margin:0 0 10px}
#panel .g3 .opt b{font-size:14px}
.ref-photo{display:grid;grid-template-columns:130px 1fr;gap:16px;align-items:center;margin:12px 0 0;padding:12px;border:1px solid #d5d8df;border-radius:8px;background:#f9f8f4}
.ref-photo-btn{padding:0;border:0;background:none;cursor:zoom-in;border-radius:6px;overflow:hidden;line-height:0}
.ref-photo img{width:100%;height:auto;aspect-ratio:1/2;object-fit:cover;border-radius:6px;display:block}
.ref-photo figcaption{font-size:13px;line-height:1.55;color:var(--navy)}
.ref-photo figcaption b{display:block;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:#7a5410;margin-bottom:4px}
.ref-photo figcaption span{display:block}
@media(max-width:520px){.ref-photo{grid-template-columns:110px 1fr;gap:12px}}
.ref-photo-thr img{aspect-ratio:3/4}
.ref-photo-thr{grid-template-columns:150px 1fr}
.ref-photo-sq{grid-template-columns:130px 1fr}
.ref-photo-sq img{aspect-ratio:1/1}
.ref-photo-wide{grid-template-columns:240px 1fr;margin-top:20px}
.ref-photo-wide img{aspect-ratio:4/3}
@media(max-width:520px){.ref-photo-wide{grid-template-columns:1fr}}
.inspiration{margin-top:22px;border:1px solid var(--line-strong);border-radius:10px;background:#faf8f2;padding:0 14px}
.inspiration summary{cursor:pointer;list-style:none;display:flex;align-items:baseline;gap:10px;padding:14px 0;font-weight:800;color:var(--navy);font-size:15px;min-height:44px;align-items:center}
.inspiration summary::-webkit-details-marker{display:none}
.inspiration summary::before{content:"▸";display:inline-block;transition:transform .15s;color:var(--gold-deep)}
.inspiration[open] summary::before{transform:rotate(90deg)}
.inspiration summary small{font-weight:500;font-size:12px;color:var(--muted)}
.inspiration .ref-photo{margin:0 0 14px;border:0;padding:0;background:none}

/* Aru: ülemised menüüribad alati nähtaval (v2.46) */
html{scroll-padding-top:var(--topbars-h,0px)}
.topbars{position:sticky;top:0;z-index:40;background:var(--bg);box-shadow:0 0 0 100vmax var(--bg);clip-path:inset(0 -100vmax)}
.topbars .hdr{padding-block:12px 10px}
.topbars .header-doors{padding-block:6px}
.topbars .stepper{padding-bottom:10px}
.preview-column{top:calc(var(--topbars-h,0px) + 16px)}
.main.independent-scroll .panel{top:calc(var(--topbars-h,0px) + 12px)}
@media(max-width:959px){
 .topbars{display:contents}
 .stepmob{position:sticky;top:0;z-index:40;background:var(--bg);box-shadow:0 0 0 100vmax var(--bg);clip-path:inset(0 -100vmax)}
}

/* Selgemini allapoole viitav kerimisnool */
.scroll-cue{border:1.5px solid #405570;color:#192343;background:#fffffff2;box-shadow:0 2px 10px #1923432e}.scroll-cue.is-visible{opacity:.92}.scroll-cue.is-visible:hover,.scroll-cue.is-visible:focus-visible{opacity:1}

/* Ruumi nime valikunool alati nähtav */
#door-room-name{padding-right:44px!important;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='22' height='22'%3E%3Cpath d='m5.5 9 6.5 6.5L18.5 9' fill='none' stroke='%23192343' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-size:22px 22px;cursor:pointer}
#door-room-name::-webkit-calendar-picker-indicator{opacity:0;position:absolute;right:0;top:0;bottom:0;width:44px;height:100%;margin:0;padding:0;cursor:pointer}
#door-room-name{position:relative}

/* Ruumi nime oma valikunimekiri */
.room-pop{position:fixed;z-index:2000;background:#fff;border:1.5px solid #405570;border-radius:10px;box-shadow:0 10px 30px #19234333;overflow:auto;padding:4px}
.room-pop[hidden]{display:none}
.room-opt{padding:11px 12px;border-radius:7px;font-size:15px;color:#192343;cursor:pointer}
.room-opt:hover,.room-opt.is-active{background:#e8edf2}
#door-room-name::-webkit-calendar-picker-indicator{display:none!important}

/* v2.47: tahvelivaade (761–959 px) päis ei ületa ekraani laiust */
@media(min-width:761px) and (max-width:959px){.hdr{flex-wrap:wrap;row-gap:6px}.header-description{display:none}.header-guide .hg-full{display:none}.header-guide .hg-short{display:inline!important}.header-utility .btn{padding-left:12px;padding-right:12px}}

/* v2.47: mõõdu väli – sisestatav, selgelt aktiivne */
.size-combo{position:relative;display:flex;flex-direction:column}
.size-combo input{width:100%;box-sizing:border-box;padding:13px 52px 13px 14px;font:inherit;font-size:17px;color:#192343;background:#fff;border:1.5px solid #9aa3b4;border-radius:10px;cursor:text;transition:border-color .15s,box-shadow .15s}
.size-combo input::placeholder{color:#7b8094;font-weight:400}
.size-combo input:hover{border-color:#405570}
.size-combo input:focus{outline:none;border-color:#192343;box-shadow:0 0 0 3px #e1ae6466}
.size-combo input.need{border-color:#c0392b}
.size-unit{position:absolute;right:14px;top:13px;font-size:15px;color:#5d6580;pointer-events:none}
.size-hint{order:3;margin-top:5px;font-size:13px;color:#5d6580}
.size-combo input.need:focus{border-color:#192343!important;box-shadow:0 0 0 3px #e1ae6466!important}
.rowedit-split{display:inline-flex;gap:8px}
.rowedit-split .rowedit-edit:disabled{background:#e4e2db;border-color:#d6d3c8;color:#5d6580;cursor:default;opacity:1}
.rowedit-split .rowedit-save{box-shadow:0 0 0 3px rgba(225,174,100,.45)}
.rowedit-ok{color:#2f6b3a}
.dock .dock-pdf:disabled{background:#e4e2db;border-color:#d6d3c8;color:#7b8094;cursor:not-allowed;opacity:1}
.dock .in .dock-pdf+.dock-send{margin-left:8px}

/* v2.55: valikuabilise nupp kinnitub alla paremale (nagu vestlusnupp); päisesse ega dokki ei paigutata */
body:has(#header-guide) .guide-launch{display:none!important}
body .guide-launch,body .guide-launch.in-dock{position:fixed!important;right:20px;left:auto;bottom:calc(92px + env(safe-area-inset-bottom,0px));z-index:40;padding:13px 20px;min-height:0;border-radius:999px;font-size:15px;box-shadow:0 8px 26px rgba(25,35,67,.35)}
body .guide-launch>span{font-size:19px}
@media(max-width:560px){body .guide-launch,body .guide-launch.in-dock{right:14px;bottom:calc(84px + env(safe-area-inset-bottom,0px));width:52px;height:52px;padding:0;justify-content:center;font-size:0;gap:0}body .guide-launch>span{font-size:24px}}
.guide-launch.is-calling,.guide-launch.is-nudge{animation:guideCall 2.8s ease-in-out 2}
.guide-launch.is-calling::after,.guide-launch.is-nudge::after{content:"";position:absolute;inset:-4px;border-radius:inherit;border:2px solid var(--gold,#e1ae64);opacity:0;animation:guideRing 2.8s ease-out 2;pointer-events:none}
.header-doors.is-empty .clear-all{display:none!important}
/* v2.56: abinupu plink on taas 2× suurendus (2 korda), nagu päisenupul */
body .guide-launch.is-calling,body .guide-launch.is-nudge{animation:guideIntro 1.7s cubic-bezier(.4,0,.2,1) .5s 2 both;transform-origin:right bottom}
body .guide-launch.is-calling::after,body .guide-launch.is-nudge::after{display:none}
@media(prefers-reduced-motion:reduce){body .guide-launch.is-calling,body .guide-launch.is-nudge{animation:none;box-shadow:0 0 0 3px var(--gold,#e1ae64)}}

.header-doors.no-del [data-act="del"]{display:none!important}
.qty-box .qty-combo{width:150px;flex:none}.qty-box .qty-combo input{padding:10px 40px 10px 12px;text-align:left}

/* v2.59: alumised Edasi/Tagasi nupud – valge sisu, tugev sinine raam */
body .dock .btn[data-act="go"],body .dock .btn[data-act="save-door"]{background:#fff;color:var(--navy,#192343);border:2.5px solid var(--navy,#192343);font-weight:700}
body .dock .btn[data-act="go"]:hover:not(:disabled),body .dock .btn[data-act="save-door"]:hover{background:#f3f5fa;border-color:#0e1630}
body .dock .btn[data-act="go"]:disabled{background:#fff;border-color:#9aa3b4;color:#7b8094;opacity:.7}

/* v2.60: "Aitan Sul ust valida" väiksem puhkeolek; plingi tippsuurus jääb samaks (--plink-scale) */
body .guide-launch,body .guide-launch.in-dock{padding:8px 14px;font-size:13px;gap:6px;box-shadow:0 5px 16px rgba(25,35,67,.3)}
body .guide-launch>span{font-size:16px}
body .guide-launch{--plink-scale:2.4}
@keyframes guideIntroS{0%{transform:scale(1)}30%{transform:scale(var(--plink-scale,2.4))}55%{transform:scale(var(--plink-scale,2.4))}100%{transform:scale(1)}}
body .guide-launch.is-calling,body .guide-launch.is-nudge{animation-name:guideIntroS}
@media(max-width:560px){body .guide-launch,body .guide-launch.in-dock{width:44px;height:44px;padding:0;font-size:0}body .guide-launch>span{font-size:21px}body .guide-launch{--plink-scale:2.2}}

.header-doors.is-empty [data-act="dup"]{display:none!important}

/* v2.62: Tagasi/Edasi parempoolse (valikute) akna alla; vasakul jääb ukse info */
.dock .dock-actions{display:contents}
.dock .dock-back{order:0}.dock .mid{order:1}.dock .dock-actions>.btn:not(.dock-back){order:2}
@media(min-width:960px){
 body .dock .in{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);column-gap:24px;align-items:center}
 .dock .mid{order:0;text-align:left;grid-column:1}
 .dock .guide-slot{display:none}
 .dock .dock-actions{display:flex;grid-column:2;gap:12px;align-items:center;justify-content:space-between}
 .dock .dock-actions>.btn:not(.dock-back){order:0}
 .dock .dock-actions .dock-pdf+.dock-send{margin-left:0}
}
/* päise nupud murduvad mitmele reale kitsas vaates */
.header-door-actions{flex-wrap:wrap}
@media(min-width:960px){.dock .dock-actions{margin-left:8px}}
@media(max-width:760px){body .header-door-actions{display:flex;flex-wrap:wrap;overflow:visible;max-width:100%;gap:6px}body .header-door-actions .btn{flex:0 1 auto}}

/* v2.63: Tagasi ja Edasi täpselt ühesugused (suurus, stiil) */
body .dock .btn[data-act="go"],body .dock .btn[data-act="save-door"]{flex:0 0 150px;width:150px;min-width:150px;padding:10px 12px;font-size:15px;font-weight:700;text-align:center;justify-content:center;background:#fff;color:#192343;border:2.5px solid #192343}
.dock .dock-actions .dock-back{margin:0}
@media(max-width:760px){body .dock .btn[data-act="go"],body .dock .btn[data-act="save-door"]{flex:1 1 0;width:auto;min-width:0}}
/* v2.72: kahe veeruga vaates pole lehe kerimisnoolt vaja (vasak väli) */
body:has(.main.independent-scroll) .scroll-cue-root{display:none!important}

.header-doors.on-overview [data-act="del"]{display:none!important}
.rowedit-split .rowedit-save{box-shadow:none}

.rowedit-split .rowedit-del{color:#9c2f1f;border-color:#c58a80;background:#fff}
.rowedit-split .rowedit-del:hover{background:#fbeeea;border-color:#9c2f1f}
.rowedit-split .rowedit-del.armed{background:#9c2f1f;border-color:#9c2f1f;color:#fff}
.rowedit-split{flex-wrap:wrap}

.card-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}
.btn.small.rowedit-del{color:#9c2f1f;border-color:#c58a80;background:#fff}
.btn.small.rowedit-del:hover{background:#fbeeea;border-color:#9c2f1f}
.btn.small.rowedit-del.armed{background:#9c2f1f;border-color:#9c2f1f;color:#fff}

.row-focus{outline:3px solid #2f5fd0;outline-offset:6px;border-radius:6px;animation:rowFocusPulse 2.6s ease-out}
@keyframes rowFocusPulse{0%{background:rgba(47,95,208,.18)}100%{background:transparent}}

/* v2.92: abinupp 15% väiksem; plingi tippsuurus jääb samaks (skaala vastavalt suurem) */
body .guide-launch,body .guide-launch.in-dock{padding:7px 12px;font-size:11px;gap:5px;box-shadow:0 4px 14px rgba(25,35,67,.3)}
body .guide-launch>span{font-size:14px}
body .guide-launch{--plink-scale:2.82}
@media(max-width:560px){body .guide-launch,body .guide-launch.in-dock{width:37px;height:37px;padding:0;font-size:0}body .guide-launch>span{font-size:18px}body .guide-launch{--plink-scale:2.59}}
