/* Chat Widget Styles */
.chat-fab{position:fixed;right:22px;bottom:22px;width:58px;height:58px;border-radius:50%;background:var(--accent);color:#fff;border:none;font-size:24px;cursor:pointer;box-shadow:0 8px 22px rgba(180,86,47,.4);z-index:90;transition:.2s}
.chat-fab:hover{transform:scale(1.06)}
.chat-panel{position:fixed;right:22px;bottom:92px;width:360px;max-width:calc(100vw - 44px);background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:0 18px 44px rgba(58,53,50,.18);z-index:90;overflow:hidden;display:none}
.chat-panel.open{display:block}
.chat-head{background:var(--accent);color:#fff;padding:14px 18px;font-weight:700}
.chat-head small{display:block;font-weight:400;opacity:.85;font-size:.75rem}
.chat-body{padding:18px;max-height:400px;overflow-y:auto}
.chat-body p{font-size:.88rem;color:var(--muted);margin-bottom:12px}
.chat-body textarea{width:100%;border:1px solid var(--line);border-radius:10px;padding:10px 12px;font-size:.9rem;font-family:inherit;resize:vertical;min-height:60px;margin-bottom:10px}
.chat-send{width:100%;background:var(--accent);color:#fff;border:none;border-radius:10px;padding:11px;font-weight:700;cursor:pointer;font-size:.95rem}
.chat-send:hover{opacity:.9}
.chat-alt{text-align:center;margin-top:10px;font-size:.82rem}
.chat-alt a{color:var(--accent);font-weight:600}

.chat-message{margin-bottom:10px;padding:10px 14px;border-radius:12px;max-width:85%;word-wrap:break-word}
.chat-message.visitor{background:#f5f5f5;align-self:flex-start}
.chat-message.admin{background:var(--accent-soft);color:var(--accent);align-self:flex-end;margin-left:auto}
.chat-message .sender{font-size:.75rem;color:var(--muted);margin-bottom:2px}
.chat-message .time{font-size:.7rem;color:#999;margin-top:4px}
#chatMessages{display:flex;flex-direction:column;min-height:100px}

/* Contact Form */
.contact-form-container input:focus,.contact-form-container textarea:focus{outline:none;border-color:var(--accent)!important}

/* Article styles */
.article-content h2,.article-content h3{margin:20px 0 10px;font-weight:700}
.article-content p{margin-bottom:12px}
.article-content img{max-width:100%;border-radius:8px;margin:12px 0}
.article-content ul,.article-content ol{margin-left:20px;margin-bottom:12px}
.article-content blockquote{border-left:3px solid var(--accent);padding-left:12px;color:var(--muted);margin:12px 0}

/* Articles page cards */
.cards .card{cursor:pointer}

/* Payment buttons */
.pay-now-btn{display:inline-block;background:#ffc439;color:#111;font-weight:800;font-size:1.1rem;padding:15px 46px;border-radius:999px;box-shadow:0 6px 18px rgba(255,196,57,.4);transition:.2s;text-decoration:none}
.pay-now-btn:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(255,196,57,.5)}
.pay-now-sub{margin-top:16px;font-size:.82rem;color:var(--muted)}

/* Additional responsive */
@media(max-width:480px){
  .chat-panel{width:auto;left:10px;right:10px;bottom:84px;max-width:none}
  .chat-fab{right:16px;bottom:16px}
  .chat-body{max-height:calc(100dvh - 240px)}
  .hero{padding:60px 0 50px}
  .hero h1{font-size:1.8rem}
}
