
/* Mike Handyman Services V14 */
.quick-actions{padding:28px 0 34px;background:linear-gradient(180deg,#fff,#f7f9fb);border-bottom:1px solid #edf0f3}
.quick-intro{text-align:center;max-width:760px;margin:0 auto 18px}.quick-intro h2{margin:.15rem 0 .35rem;color:var(--navy);font-size:clamp(1.55rem,3vw,2.25rem);line-height:1.15}.quick-intro p{margin:0;color:var(--muted);font-size:1rem}
.quick-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.quick-action{appearance:none;border:1px solid #e2e7ed;background:#fff;border-radius:18px;padding:16px 10px;min-height:118px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;text-align:center;color:var(--navy);font:inherit;font-weight:850;cursor:pointer;box-shadow:0 6px 18px rgba(8,42,80,.06);transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}
.quick-action:hover,.quick-action:focus-visible{transform:translateY(-3px);box-shadow:0 12px 26px rgba(8,42,80,.12);border-color:rgba(243,111,33,.5);outline:none}.quick-action:active{transform:translateY(0) scale(.97)}
.qa-icon{width:50px;height:50px;border-radius:15px;background:#fff4ec;display:grid;place-items:center;font-size:1.55rem}.qa-sub{display:block;color:var(--muted);font-size:.76rem;font-weight:700;line-height:1.25}
.quick-action.pay{background:linear-gradient(145deg,#082a50,#0f3b6b);color:#fff;border-color:transparent}.quick-action.pay .qa-icon{background:rgba(255,255,255,.13)}.quick-action.pay .qa-sub{color:rgba(255,255,255,.75)}
.brand img,.hero-logo img{transform-origin:center;animation:mhsLogoFloat 4.2s ease-in-out infinite}@keyframes mhsLogoFloat{0%,100%{transform:translateY(0) rotate(0deg)}45%{transform:translateY(-3px) rotate(-.5deg)}55%{transform:translateY(-3px) rotate(.5deg)}}.brand:active img{animation:mhsLogoTap .35s ease}@keyframes mhsLogoTap{0%{transform:scale(1)}50%{transform:scale(1.06) rotate(-1deg)}100%{transform:scale(1)}}
.site-modal-backdrop{position:fixed;inset:0;background:rgba(6,29,55,.64);display:none;align-items:center;justify-content:center;padding:18px;z-index:1000}.site-modal-backdrop.open{display:flex}.site-modal{width:min(520px,100%);background:#fff;border-radius:26px;padding:24px;box-shadow:0 24px 80px rgba(0,0,0,.25);position:relative}.site-modal h2{margin:.15rem 0 .6rem;color:var(--navy);font-size:1.7rem;line-height:1.15}.site-modal p{color:var(--muted);margin:.45rem 0 1rem}.site-modal-actions{display:flex;gap:10px;flex-wrap:wrap}.modal-close{position:absolute;top:12px;right:12px;border:0;background:#f1f4f7;width:38px;height:38px;border-radius:50%;font-size:1.3rem;cursor:pointer}.offer-badge{display:inline-block;padding:6px 10px;border-radius:999px;background:#fff4ec;color:var(--orange);font-size:.78rem;font-weight:900;letter-spacing:.03em}.offer-note{font-size:.8rem!important;color:#7a8594!important}
.form-status{display:none;margin-top:12px;padding:11px 13px;border-radius:12px;font-size:.9rem;font-weight:750}.form-status.show{display:block}.form-status.ok{background:#eaf8ef;color:#17653a}.form-status.err{background:#fff2ee;color:#9b321f}.file-help{font-size:.78rem;color:var(--muted);margin:-.55rem 0 1rem}input[type="file"]{padding:.75rem;background:#fbfcfd}
.chat-launch{position:fixed;right:18px;bottom:18px;z-index:900;border:0;border-radius:999px;background:var(--orange);color:#fff;font-weight:900;padding:14px 18px;box-shadow:0 14px 34px rgba(243,111,33,.35);cursor:pointer;display:flex;gap:8px;align-items:center}
.chat-panel{position:fixed;right:18px;bottom:78px;width:min(380px,calc(100vw - 24px));height:min(570px,calc(100vh - 120px));background:#fff;border-radius:24px;box-shadow:0 22px 70px rgba(8,42,80,.24);z-index:901;display:none;overflow:hidden;border:1px solid #e4e9ee}.chat-panel.open{display:flex;flex-direction:column}.chat-head{background:linear-gradient(135deg,var(--navy),var(--navy2));color:#fff;padding:15px 16px;display:flex;justify-content:space-between;align-items:center}.chat-head strong{display:block}.chat-head small{opacity:.78}.chat-close{border:0;background:rgba(255,255,255,.12);color:#fff;width:34px;height:34px;border-radius:50%;font-size:1.2rem;cursor:pointer}.chat-body{padding:14px;overflow:auto;flex:1;background:#f7f9fb}.chat-pre input{margin-bottom:9px}.chat-pre .btn{width:100%}.chat-privacy{font-size:.74rem;color:var(--muted);margin-top:8px}.chat-messages{display:flex;flex-direction:column;gap:9px}.chat-msg{max-width:84%;padding:9px 11px;border-radius:14px;background:#fff;border:1px solid #e1e6eb;align-self:flex-start}.chat-msg.owner{background:#eaf2fb;border-color:#d4e2f2;align-self:flex-end}.chat-msg p{margin:0;color:#243143;font-size:.92rem;white-space:pre-wrap}.chat-msg time{display:block;margin-top:4px;font-size:.68rem;color:#788494}.chat-compose{padding:11px;border-top:1px solid #e2e6ea;background:#fff;display:none;gap:7px}.chat-compose input{margin:0;min-width:0}.chat-compose button{border:0;border-radius:12px;background:var(--orange);color:#fff;font-weight:900;padding:0 14px;cursor:pointer}.chat-system{font-size:.82rem;color:var(--muted);text-align:center;padding:10px}.v12-online-note{display:inline-flex;align-items:center;gap:6px;font-size:.78rem;color:var(--muted)}.v12-online-note::before{content:"";width:8px;height:8px;border-radius:50%;background:#31a45b}
@media(max-width:800px){.quick-grid{grid-template-columns:repeat(2,1fr)}.quick-action{min-height:108px}}@media(max-width:430px){.quick-actions{padding-top:20px}.quick-grid{gap:9px}.quick-action{padding:13px 6px}.qa-icon{width:44px;height:44px;font-size:1.35rem}.chat-launch{right:12px;bottom:12px}.chat-panel{right:12px;bottom:68px}}@media (prefers-reduced-motion:reduce){.brand img,.hero-logo img{animation:none}.quick-action{transition:none}}
/* V18: logo repair + small waving engineer mascot only */
.brand{display:inline-flex;align-items:center;gap:9px}
.brand img{height:58px;width:auto;max-width:min(310px,52vw);object-fit:contain;opacity:1;filter:none}
.hero-logo img{width:100%;height:auto;object-fit:contain;opacity:1;filter:none}
.mhs-engineer{position:relative;display:inline-grid;place-items:center;width:44px;height:44px;flex:0 0 44px;border-radius:50%;background:linear-gradient(145deg,#fff7ef,#ffe7cf);box-shadow:0 7px 16px rgba(8,42,80,.14);overflow:visible}
.mhs-engineer-face{font-size:1.75rem;line-height:1;transform:translateY(1px)}
.mhs-engineer-hand{position:absolute;right:-6px;top:2px;font-size:1rem;line-height:1;transform-origin:70% 80%;animation:mhsWaveHand 1.7s ease-in-out infinite}
@keyframes mhsWaveHand{0%,55%,100%{transform:rotate(0deg)}10%,30%,50%{transform:rotate(22deg)}20%,40%{transform:rotate(-12deg)}}
@media(max-width:640px){.brand{gap:6px}.brand img{height:48px;max-width:58vw}.mhs-engineer{width:38px;height:38px;flex-basis:38px}.mhs-engineer-face{font-size:1.5rem}.mhs-engineer-hand{font-size:.88rem;right:-5px}}
@media(prefers-reduced-motion:reduce){.mhs-engineer-hand{animation:none}}
.wa-clock{font-variant-numeric:tabular-nums}
.review-summary{display:flex;align-items:center;gap:14px;margin:0 0 18px;padding:14px 18px;border:1px solid #dde5ec;border-radius:16px;background:#fff;color:#687386}.review-summary strong{font-size:1.65rem;color:#082a50}.review-summary span{font-weight:700}

.chat-attach-btn{border:0;background:#eef4fa;color:var(--navy);width:44px;min-width:44px;height:44px;border-radius:12px;font-size:1.15rem;font-weight:900;cursor:pointer;display:flex;align-items:center;justify-content:center}
.chat-attach-btn:hover{background:#e3edf7}

.chat-ai-label{display:block;font-size:.72rem;font-weight:900;color:#0b4f8a;margin-bottom:4px}.chat-system.typing{display:flex;align-items:center;justify-content:flex-start;gap:8px;text-align:left;padding:10px 4px 4px}.typing-label{font-size:.8rem;color:#64748b}.typing-bubble{display:inline-flex;align-items:center;gap:4px;background:#eaf2fb;border:1px solid #d4e2f2;border-radius:999px;padding:8px 11px}.typing-dot{width:6px;height:6px;border-radius:50%;background:#6a88ab;display:inline-block;animation:mhsTypingDot 1.2s infinite ease-in-out}.typing-dot:nth-child(2){animation-delay:.16s}.typing-dot:nth-child(3){animation-delay:.32s}@keyframes mhsTypingDot{0%,80%,100%{transform:scale(.7);opacity:.55}40%{transform:scale(1);opacity:1}}

.chat-file-preview{display:block;text-decoration:none;color:inherit}.chat-file-preview img,.chat-file-preview video{display:block;width:100%;max-height:260px;object-fit:contain;border-radius:11px;background:#eef3f8;border:1px solid #d7e2ed}.chat-file-preview span{display:block;font-size:.7rem;color:#788494;margin-top:5px;overflow-wrap:anywhere}.chat-file-card{display:flex;align-items:center;gap:9px;text-decoration:none;color:#243143;background:#f7f9fc;border:1px solid #dbe4ee;border-radius:12px;padding:9px}.chat-file-icon{font-size:1.45rem}.chat-file-card b{display:block;color:#082a50;font-size:.82rem;overflow-wrap:anywhere}.chat-file-card small{display:block;color:#788494;font-size:.7rem;margin-top:2px}

.chat-closed-state{margin:16px 4px;padding:18px;border:1px solid #dbe4ee;border-radius:16px;background:#f8fafc;color:#41566d;text-align:center}.chat-closed-state strong{display:block;color:#082f5b;font-size:1.05rem;margin:4px 0 7px}.chat-closed-state p{margin:0 auto 13px;max-width:310px;line-height:1.45}.chat-closed-icon{font-size:1.45rem}.chat-restart-btn{border:0;border-radius:999px;background:#f47721;color:#fff;font-weight:900;padding:11px 15px;cursor:pointer}
