/* 右下浮動鈕（2026-10-06 老闆選乙版並指定：兩顆都靠右、上下疊；平常是圓鈕，滑鼠指到才往左展開說明牌）
   上＝預約到廠評估（取代頁首那顆），下＝LINE 詢價（原位置）。同意條出現時由 consent.js 設 --fab-lift 整組往上避開 */

/* 頁首不再放預約鈕；手機選單打開時底部那顆照舊 */
.site-header .mobile-menu:not(.is-open) .mobile-menu__actions{display:none}

.fab-stack{--fab-d:66px;position:fixed;right:22px;bottom:calc(22px + var(--fab-lift,0px));z-index:50;display:flex;flex-direction:column;align-items:flex-end;gap:14px;pointer-events:none;transition:bottom .3s ease}
.menu-open .fab-stack{visibility:hidden}

/* 蓋掉舊 LINE 鈕（base.css、theme-3d.css）的膠囊與圓鈕樣式 */
.fab-stack .fab{position:relative;inset:auto;display:flex;align-items:center;justify-content:flex-end;width:var(--fab-d);height:var(--fab-d);padding:0;border:0;border-radius:50%;background:none;box-shadow:none;color:inherit;font-size:16px;font-weight:800;letter-spacing:0;line-height:1.25;text-decoration:none;text-shadow:none;pointer-events:auto}
.fab-stack .fab:hover,.fab-stack .fab:active{transform:none}
.fab-stack .line-fab::before{content:none}

/* 圓鈕：立體、靜止浮起、指到上浮、按下下壓；外圈慢慢擴散（兩顆錯開） */
.fab__ico{position:relative;z-index:2;display:grid;place-items:center;width:var(--fab-d);height:var(--fab-d);padding:calc(var(--fab-d) * .25);border-radius:50%;color:#fff;transition:transform .16s ease,box-shadow .16s ease}
.fab__ico svg{display:block;width:100%;height:100%}
.fab__ico::before{content:"";position:absolute;inset:0;border-radius:50%;animation:fabHalo 2.8s ease-out infinite;pointer-events:none}
.line-fab .fab__ico::before{animation-delay:1.4s}
@keyframes fabHalo{0%{box-shadow:0 0 0 0 var(--halo)}70%,100%{box-shadow:0 0 0 16px transparent}}
.book-fab .fab__ico{--halo:rgba(245,158,11,.45);--edge:#bf6405;--glow:rgba(217,119,6,.7);background:radial-gradient(circle at 34% 26%,#ffe7b0 0,#ffbe3d 38%,#f08c00 100%)}
.book-fab .fab__ico svg{filter:drop-shadow(0 1px 1px rgba(120,55,0,.45))}
.line-fab .fab__ico{--halo:rgba(6,199,85,.42);--edge:#027a32;--glow:rgba(6,170,72,.7);padding:calc(var(--fab-d) * .22);background:radial-gradient(circle at 34% 26%,#8ef7b4 0,#14d561 38%,#03a142 100%)}
.line-fab .fab__ico svg{filter:drop-shadow(0 1px 1px rgba(0,70,25,.4))}
.fab__ico{box-shadow:inset 0 2px 0 rgba(255,255,255,.6),inset 0 -4px 0 rgba(0,0,0,.14),0 6px 0 var(--edge),0 16px 26px -8px var(--glow)}
@media(hover:hover){.fab:hover .fab__ico{transform:translateY(-2px);box-shadow:inset 0 2px 0 rgba(255,255,255,.6),inset 0 -4px 0 rgba(0,0,0,.14),0 8px 0 var(--edge),0 20px 30px -8px var(--glow)}}
.fab:active .fab__ico{transform:translateY(5px);box-shadow:inset 0 2px 0 rgba(255,255,255,.6),inset 0 -3px 0 rgba(0,0,0,.14),0 1px 0 var(--edge),0 6px 12px -6px var(--glow)}

/* 說明牌：平常收在圓鈕後面看不見，指到（或鍵盤移到）才往左展開 */
.fab__tx{position:absolute;right:calc(var(--fab-d) / 2);top:50%;z-index:1;display:flex;flex-direction:column;justify-content:center;gap:2px;height:58px;padding:0 calc(var(--fab-d) / 2 + 16px) 0 22px;border:1px solid rgba(255,255,255,.9);border-bottom:3px solid #c3d6ec;border-radius:16px 0 0 16px;background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(238,245,253,.96));box-shadow:0 16px 28px -14px rgba(15,39,71,.45),0 2px 6px rgba(15,39,71,.08);text-align:right;white-space:nowrap;opacity:0;clip-path:inset(0 0 0 100% round 16px 0 0 16px);transform:translateY(-50%);pointer-events:none;transition:clip-path .28s cubic-bezier(.2,.8,.2,1),opacity .2s ease}
.fab__tx b{font-size:18px;letter-spacing:.04em}
.fab__tx small{font-size:14px;font-weight:700;color:var(--ink-3);letter-spacing:.02em}
.book-fab .fab__tx b{color:#9a4d00}
.line-fab .fab__tx b{color:#03833a}
@media(hover:hover){.fab:hover .fab__tx{opacity:1;clip-path:inset(-2px -2px -6px -2px round 16px 0 0 16px);pointer-events:auto}}
.fab:focus-visible .fab__tx{opacity:1;clip-path:inset(-2px -2px -6px -2px round 16px 0 0 16px)}
.fab:hover .fab__ico::before,.fab:focus-visible .fab__ico::before{animation:none}

@media(max-width:1199px){
 .fab-stack{--fab-d:60px;gap:13px}
 .fab__tx{height:54px}
 .fab__tx b{font-size:17px}
}
@media(max-width:600px){
 .fab-stack{--fab-d:54px;right:14px;bottom:calc(14px + var(--fab-lift,0px));gap:12px}
 .fab__tx{height:50px;padding-left:16px}
 .fab__tx b{font-size:16px}
}
