310 lines
7.5 KiB
HTML
310 lines
7.5 KiB
HTML
|
|
<!DOCTYPE html>
|
||
|
|
<html lang="en">
|
||
|
|
<head>
|
||
|
|
<meta charset="UTF-8" />
|
||
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||
|
|
<title>Appointment Request Update</title>
|
||
|
|
<style>
|
||
|
|
@import url("https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap");
|
||
|
|
|
||
|
|
* {
|
||
|
|
margin: 0;
|
||
|
|
padding: 0;
|
||
|
|
box-sizing: border-box;
|
||
|
|
}
|
||
|
|
|
||
|
|
body {
|
||
|
|
font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI",
|
||
|
|
Roboto, sans-serif;
|
||
|
|
line-height: 1.6;
|
||
|
|
color: #333;
|
||
|
|
background-color: #f8fafc;
|
||
|
|
}
|
||
|
|
|
||
|
|
.email-container {
|
||
|
|
max-width: 600px;
|
||
|
|
margin: 0 auto;
|
||
|
|
background: #ffffff;
|
||
|
|
border-radius: 12px;
|
||
|
|
overflow: hidden;
|
||
|
|
box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1),
|
||
|
|
0 2px 4px -1px rgba(0, 0, 0, 0.06);
|
||
|
|
}
|
||
|
|
|
||
|
|
.email-header {
|
||
|
|
background-image: linear-gradient(to right, #e11d48, #db2777, #f97316);
|
||
|
|
padding: 40px 30px;
|
||
|
|
text-align: center;
|
||
|
|
color: white;
|
||
|
|
}
|
||
|
|
|
||
|
|
.email-header h1 {
|
||
|
|
font-size: 28px;
|
||
|
|
font-weight: 700;
|
||
|
|
margin-bottom: 8px;
|
||
|
|
}
|
||
|
|
|
||
|
|
.email-header p {
|
||
|
|
font-size: 16px;
|
||
|
|
opacity: 0.9;
|
||
|
|
font-weight: 400;
|
||
|
|
}
|
||
|
|
|
||
|
|
.email-body {
|
||
|
|
padding: 40px 30px;
|
||
|
|
}
|
||
|
|
|
||
|
|
.greeting {
|
||
|
|
font-size: 18px;
|
||
|
|
font-weight: 600;
|
||
|
|
color: #1f2937;
|
||
|
|
margin-bottom: 25px;
|
||
|
|
line-height: 1.8;
|
||
|
|
}
|
||
|
|
|
||
|
|
.status-card {
|
||
|
|
background: #fff5f5;
|
||
|
|
border: 1px solid #fed7d7;
|
||
|
|
border-radius: 12px;
|
||
|
|
padding: 30px;
|
||
|
|
text-align: center;
|
||
|
|
margin: 25px 0;
|
||
|
|
}
|
||
|
|
|
||
|
|
.status-icon {
|
||
|
|
font-size: 48px;
|
||
|
|
margin-bottom: 15px;
|
||
|
|
}
|
||
|
|
|
||
|
|
.status-title {
|
||
|
|
font-size: 22px;
|
||
|
|
color: #c53030;
|
||
|
|
margin-bottom: 15px;
|
||
|
|
font-weight: 600;
|
||
|
|
}
|
||
|
|
|
||
|
|
.reason-box {
|
||
|
|
background: #f7fafc;
|
||
|
|
border: 1px solid #e2e8f0;
|
||
|
|
border-radius: 8px;
|
||
|
|
padding: 20px;
|
||
|
|
margin: 20px 0;
|
||
|
|
}
|
||
|
|
|
||
|
|
.reason-title {
|
||
|
|
font-weight: 600;
|
||
|
|
color: #4a5568;
|
||
|
|
margin-bottom: 10px;
|
||
|
|
font-size: 16px;
|
||
|
|
}
|
||
|
|
|
||
|
|
.reason-message {
|
||
|
|
color: #4a5568;
|
||
|
|
font-style: italic;
|
||
|
|
line-height: 1.6;
|
||
|
|
margin-top: 8px;
|
||
|
|
}
|
||
|
|
|
||
|
|
.suggestions {
|
||
|
|
background: #f0fff4;
|
||
|
|
border: 1px solid #9ae6b4;
|
||
|
|
border-radius: 12px;
|
||
|
|
padding: 25px;
|
||
|
|
margin: 25px 0;
|
||
|
|
}
|
||
|
|
|
||
|
|
.suggestions-title {
|
||
|
|
font-weight: 600;
|
||
|
|
color: #22543d;
|
||
|
|
margin-bottom: 15px;
|
||
|
|
font-size: 18px;
|
||
|
|
}
|
||
|
|
|
||
|
|
.suggestions-list {
|
||
|
|
list-style: none;
|
||
|
|
}
|
||
|
|
|
||
|
|
.suggestions-list li {
|
||
|
|
margin-bottom: 12px;
|
||
|
|
padding-left: 25px;
|
||
|
|
position: relative;
|
||
|
|
color: #475569;
|
||
|
|
}
|
||
|
|
|
||
|
|
.suggestions-list li:before {
|
||
|
|
content: "💡";
|
||
|
|
position: absolute;
|
||
|
|
left: 0;
|
||
|
|
}
|
||
|
|
|
||
|
|
.next-steps {
|
||
|
|
background: #ebf8ff;
|
||
|
|
border: 1px solid #90cdf4;
|
||
|
|
border-radius: 12px;
|
||
|
|
padding: 25px;
|
||
|
|
margin: 25px 0;
|
||
|
|
}
|
||
|
|
|
||
|
|
.steps-title {
|
||
|
|
font-weight: 600;
|
||
|
|
color: #2c5282;
|
||
|
|
margin-bottom: 15px;
|
||
|
|
font-size: 18px;
|
||
|
|
}
|
||
|
|
|
||
|
|
.contact-box {
|
||
|
|
background: #edf2f7;
|
||
|
|
border-radius: 8px;
|
||
|
|
padding: 20px;
|
||
|
|
margin: 20px 0;
|
||
|
|
text-align: center;
|
||
|
|
color: #475569;
|
||
|
|
}
|
||
|
|
|
||
|
|
.action-section {
|
||
|
|
text-align: center;
|
||
|
|
margin: 35px 0 25px;
|
||
|
|
}
|
||
|
|
|
||
|
|
.button {
|
||
|
|
display: inline-block;
|
||
|
|
background-image: linear-gradient(to right, #e11d48, #db2777, #f97316);
|
||
|
|
color: white;
|
||
|
|
padding: 16px 32px;
|
||
|
|
text-decoration: none;
|
||
|
|
border-radius: 8px;
|
||
|
|
font-weight: 600;
|
||
|
|
font-size: 16px;
|
||
|
|
transition: transform 0.2s;
|
||
|
|
}
|
||
|
|
|
||
|
|
.button:hover {
|
||
|
|
transform: translateY(-2px);
|
||
|
|
}
|
||
|
|
|
||
|
|
.email-footer {
|
||
|
|
background-image: linear-gradient(to right, #e11d48, #db2777, #f97316);
|
||
|
|
padding: 30px;
|
||
|
|
text-align: center;
|
||
|
|
color: white;
|
||
|
|
}
|
||
|
|
|
||
|
|
.footer-text {
|
||
|
|
font-size: 14px;
|
||
|
|
margin-bottom: 10px;
|
||
|
|
opacity: 0.9;
|
||
|
|
}
|
||
|
|
|
||
|
|
.copyright {
|
||
|
|
font-size: 12px;
|
||
|
|
margin-top: 15px;
|
||
|
|
opacity: 0.8;
|
||
|
|
}
|
||
|
|
|
||
|
|
@media (max-width: 600px) {
|
||
|
|
.email-container {
|
||
|
|
margin: 10px;
|
||
|
|
border-radius: 8px;
|
||
|
|
}
|
||
|
|
|
||
|
|
.email-header,
|
||
|
|
.email-body,
|
||
|
|
.email-footer {
|
||
|
|
padding: 25px 20px;
|
||
|
|
}
|
||
|
|
|
||
|
|
.status-card,
|
||
|
|
.suggestions,
|
||
|
|
.next-steps {
|
||
|
|
padding: 20px;
|
||
|
|
}
|
||
|
|
|
||
|
|
.status-icon {
|
||
|
|
font-size: 36px;
|
||
|
|
}
|
||
|
|
|
||
|
|
.status-title {
|
||
|
|
font-size: 20px;
|
||
|
|
}
|
||
|
|
}
|
||
|
|
</style>
|
||
|
|
</head>
|
||
|
|
<body>
|
||
|
|
<div class="email-container">
|
||
|
|
<!-- Header -->
|
||
|
|
<div class="email-header">
|
||
|
|
<h1>Appointment Request Update</h1>
|
||
|
|
<p>Regarding your recent booking request</p>
|
||
|
|
</div>
|
||
|
|
|
||
|
|
<!-- Body -->
|
||
|
|
<div class="email-body">
|
||
|
|
<div class="greeting">
|
||
|
|
Hello <strong>{{ appointment.full_name }}</strong>,<br />
|
||
|
|
Thank you for your interest in scheduling an appointment. We've
|
||
|
|
reviewed your request and need to provide you with an update.
|
||
|
|
</div>
|
||
|
|
|
||
|
|
<!-- Status Card -->
|
||
|
|
<div class="status-card">
|
||
|
|
<div class="status-title">Request Not Accepted</div>
|
||
|
|
<p>
|
||
|
|
We're unable to accommodate your appointment request at this time.
|
||
|
|
</p>
|
||
|
|
</div>
|
||
|
|
|
||
|
|
<!-- Reason (if provided) -->
|
||
|
|
{% if rejection_reason %}
|
||
|
|
<div class="reason-box">
|
||
|
|
<div class="reason-title">Message from the therapist:</div>
|
||
|
|
<div class="reason-message">"{{ rejection_reason }}"</div>
|
||
|
|
</div>
|
||
|
|
{% endif %}
|
||
|
|
|
||
|
|
<!-- Suggestions -->
|
||
|
|
<div class="suggestions">
|
||
|
|
<div class="suggestions-title">Alternative Options</div>
|
||
|
|
<ul class="suggestions-list">
|
||
|
|
<li>
|
||
|
|
Submit a new request with different preferred dates or times
|
||
|
|
</li>
|
||
|
|
<li>Consider our group therapy sessions with more availability</li>
|
||
|
|
<li>Explore our self-guided resources and workshops</li>
|
||
|
|
<li>Join our waitlist for last-minute availability</li>
|
||
|
|
</ul>
|
||
|
|
</div>
|
||
|
|
|
||
|
|
<!-- Next Steps -->
|
||
|
|
<div class="next-steps">
|
||
|
|
<div class="steps-title">What You Can Do Next</div>
|
||
|
|
<p style="color: #475569; margin-bottom: 15px">
|
||
|
|
We value your interest in our services and want to help you find the
|
||
|
|
right fit:
|
||
|
|
</p>
|
||
|
|
<ul class="suggestions-list">
|
||
|
|
<li>Submit a new appointment request with adjusted preferences</li>
|
||
|
|
<li>Contact us directly to discuss alternative options</li>
|
||
|
|
<li>Check back next month for updated availability</li>
|
||
|
|
</ul>
|
||
|
|
</div>
|
||
|
|
</div>
|
||
|
|
|
||
|
|
<!-- Footer -->
|
||
|
|
<div class="email-footer">
|
||
|
|
<div class="company-name">{{ settings.SITE_NAME|default:"Attune Heart Therapy" }}</div>
|
||
|
|
<p class="support-info">
|
||
|
|
Need help? Contact our support team at
|
||
|
|
<a
|
||
|
|
href="mailto:hello@attunehearttherapy.com"
|
||
|
|
style="color: #fff; text-decoration: none"
|
||
|
|
>hello@attunehearttherapy.com</a
|
||
|
|
>
|
||
|
|
</p>
|
||
|
|
<p class="copyright">
|
||
|
|
© {% now "Y" %} {{ settings.SITE_NAME|default:"Attune Heart Therapy" }}. All rights reserved.
|
||
|
|
</p>
|
||
|
|
</div>
|
||
|
|
</div>
|
||
|
|
</body>
|
||
|
|
</html>
|