fix(themes): restore pre-refactor visual design across all 9 non-aurora themes

Fixes introduced by the CSS class-based refactor (1712f77) that changed
visual layout, spacing, colors, and content rendering:

**Container/border displacement (neon):**
- Move background, border, box-shadow back to .email-wrap (outermost)
- Restore .email-card to padding-only; add color for content inheritance
- Fix link box padding, link label color, button margin, link URL padding

**Layout restructuring (ink, mono):**
- ink: Move button + link-box back into left column (was moved to
  separate full-width row); remove incorrectly-added divider
- mono: Remove incorrectly-added divider; restore link-box margin-top

**CSS specificity conflict (ink):**
- Exclude .email-btn from .card-body a rule to prevent button text
  being overridden to same color as background

**Content class cleanup (neon, terminal, terra):**
- Remove .aurora-content (aurora-specific) copied into other themes
- Replace with theme-appropriate .card-body scoped rules where needed

**Content color/contrast (horizon):**
- Fix .horizon-content in release.tmpl from dark-theme colors
  (#e2e8f0 on white) to light-theme colors matching issue/default.tmpl
- Fix .email-heading color to #1e293b for heading distinction

**register_notify text_3 placement:**
- Restore per-theme original design: inside .email-subtext (mono, ink)
  vs standalone <p> after button (heritage, horizon)
- Move raw text in button row into proper <p> elements

**Button CSS pattern (bloom):**
- Remove redundant inline style/bgcolor from button <td> (already in CSS)

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
KenanZhuandClaude Opus 4.8 committed 2026-06-05 13:44:24 +08:00
1 parent 6ae9c97be8
commit 73b9bd52f5
99 files changed
+10699 -3937

No files matched your search

+126 -42
View File
@@ -4,56 +4,140 @@
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<meta name="x-apple-disable-message-reformatting" />
<title>{{.locale.Tr "mail.activate_account.title" (.DisplayName|DotEscape)}}</title>
<title>
{{.locale.Tr "mail.activate_account.title" (.DisplayName|DotEscape)}}
</title>
<style type="text/css">
body,.ExternalClass,.ReadMsgBody{background-color:#ede4d4}
@media only screen and (max-width:480px){
.resp-pad{padding-left:16px!important;padding-right:16px!important}
.resp-col{width:100%!important;display:block!important;border-left:none!important;padding-left:28px!important;padding-right:28px!important;padding-top:0!important}
.resp-btn{display:block!important;width:auto!important;text-align:center!important}
/* Base */
body,.ExternalClass,.ReadMsgBody { background-color:#ede4d4 }
.email-wrap { max-width:600px;margin:20px auto;font-family:Georgia,'Times New Roman',serif;background:#fefdfb;border:1px solid #c4a97d }
/* Header */
.email-logo { display:inline-block;vertical-align:middle;margin-right:8px;border:0;outline:none }
.email-brand { font-size:18px;font-weight:700;color:#1a1a2e;font-variant:small-caps;letter-spacing:2px }
.email-header { padding:24px 28px 16px;border-bottom:3px double #1a1a2e }
/* Card */
.email-card { padding:24px 24px 16px 28px;vertical-align:top;color:#333 }
.email-heading { margin:0 0 16px;font-size:15px;color:#333;line-height:1.7 }
.email-text { margin:0 0 12px;font-size:13px;line-height:1.8;color:#444 }
.email-subtext { margin:0 0 20px;font-size:12px;line-height:1.8;color:#666;font-style:italic }
/* Divider */
.email-divider { height:1px;background:#ddd;margin:0 }
/* Button */
.email-btn-row { padding:0;text-align:left }
.email-btn { display:inline-block;padding:10px 24px;font-size:13px;font-weight:700;color:#fefdfb;text-decoration:none;background:#1a1a2e;border:1px solid #c4a97d;font-variant:small-caps;letter-spacing:1px }
.email-btn-table { margin:0 0 24px }
/* Fallback link */
.email-link-box { border:1px solid #c4a97d;background:#fefdfb }
.email-link-label { margin:0 0 4px;font-size:10px;color:#888;font-style:italic }
.email-link-url { margin:0;font-size:10px;font-family:monospace;color:#1a1a2e;background:#f5f0e8;padding:8px 10px;border:1px solid #ddd;word-break:break-all }
/* Footer */
.email-footer { padding:16px 28px;border-top:1px solid #ccc;text-align:center }
.email-footer-text { margin:0;font-size:11px;color:#888;font-style:italic }
.email-footer-link { color:#1a1a2e;text-decoration:none;font-weight:600;border-bottom:1px dotted #c4a97d }
/* Typography utilities */
.card-body a:not(.email-btn),.card-body a:not(.email-btn):link,.card-body a:not(.email-btn):visited { color:#1a1a2e!important;text-decoration:underline!important }
/* Responsive */
@media only screen and (max-width:480px) {
.email-header { padding-left:16px!important;padding-right:16px!important }
.email-card { width:100%!important;display:block!important;border-left:none!important;padding-left:28px!important;padding-right:28px!important;padding-top:0!important }
.email-btn { display:block!important;width:auto!important;text-align:center!important }
.email-footer { padding-left:16px!important;padding-right:16px!important }
}
</style>
</head>
<body style="margin:0;padding:0;background:#ede4d4;font-family:Georgia,'Times New Roman',serif;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;">
<body style="margin:0;padding:0;background:#ede4d4;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;">
<center style="width:100%;table-layout:fixed;">
<table width="100%" cellpadding="0" cellspacing="0" border="0" style="max-width:600px;background:#fefdfb;border:1px solid #c4a97d;">
<!-- masthead -->
<tr><td colspan="2" class="resp-pad" style="padding:24px 28px 16px;border-bottom:3px double #1a1a2e;">
<img src="{{AppUrl}}assets/img/favicon.png" alt="logo" width="24" height="24" style="display:inline-block;vertical-align:middle;margin-right:8px;border:0;outline:none;" />
<span style="font-size:18px;font-weight:700;color:#1a1a2e;font-variant:small-caps;letter-spacing:2px;">{{AppName}}</span><br />
<span style="font-size:11px;color:#888;font-style:italic;">Gitea Mail Templates</span>
</td></tr>
<!-- two-column body -->
<table width="100%" cellpadding="0" cellspacing="0" border="0" class="email-wrap">
<!-- Floating Title -->
<tr>
<!-- left column -->
<td class="resp-col" width="64%" style="padding:24px 24px 16px 28px;vertical-align:top;">
<p style="margin:0 0 16px;font-size:15px;color:#333;line-height:1.7;">
<span style="float:left;font-size:42px;line-height:1;font-weight:700;color:#1a1a2e;padding-right:8px;padding-top:2px;font-family:Georgia,serif;">D</span>{{.locale.Tr "mail.hi_user_x" (.DisplayName|DotEscape)}}
</p>
<p style="margin:0 0 12px;font-size:13px;line-height:1.8;color:#444;">{{.locale.Tr "mail.activate_account.text_1" (.DisplayName|DotEscape) AppName}}</p>
<p style="margin:0 0 20px;font-size:12px;line-height:1.8;color:#666;font-style:italic;">{{.locale.Tr "mail.activate_account.text_2" .ActiveCodeLives}}</p>
{{$activate_url := printf "%suser/activate?code=%s" AppUrl (QueryEscape .Code)}}
<table border="0" cellpadding="0" cellspacing="0" style="margin:0 0 24px;"><tr><td style="padding:10px 24px;background:#1a1a2e;border:1px solid #c4a97d;">
<a href="{{$activate_url}}" class="resp-btn" style="display:inline-block;font-size:13px;font-weight:700;color:#fefdfb;text-decoration:none;font-variant:small-caps;letter-spacing:1px;">Activate Account &raquo;</a>
</td></tr></table>
<table width="100%" cellpadding="0" cellspacing="0" border="0" style="border:1px solid #c4a97d;background:#fefdfb;"><tr><td style="padding:12px 14px;">
<p style="margin:0 0 4px;font-size:10px;color:#888;font-style:italic;">{{.locale.Tr "mail.link_not_working_do_paste"}}</p>
<p style="margin:0;font-size:10px;font-family:monospace;color:#1a1a2e;background:#f5f0e8;padding:8px 10px;border:1px solid #ddd;word-break:break-all;">{{$activate_url}}</p>
</td></tr></table>
</td>
<!-- right column / sidebar -->
<td class="resp-col" width="36%" style="padding:24px 28px 16px 0;vertical-align:top;border-left:1px solid #ddd;">
<p style="margin:0 0 10px;font-size:10px;color:#888;text-transform:uppercase;letter-spacing:1px;font-family:system-ui,sans-serif;font-weight:700;">Quick Info</p>
<table width="100%" cellpadding="0" cellspacing="0" border="0" style="border-top:1px solid #ddd;border-bottom:1px solid #ddd;">
<tr><td style="padding:8px 0;font-size:11px;color:#555;font-family:system-ui,sans-serif;">From<br /><strong style="color:#1a1a2e;">{{AppName}}</strong></td></tr>
<tr><td style="padding:8px 0;border-top:1px solid #ddd;font-size:11px;color:#555;font-family:system-ui,sans-serif;">Expires<br /><strong style="color:#1a1a2e;">{{.ActiveCodeLives}}</strong></td></tr>
</table>
<td colspan="2" class="email-header">
<img src="{{AppUrl}}assets/img/favicon.png" alt="logo" width="24" height="24" class="email-logo" />
<span class="email-brand">{{AppName}}</span>
<br />
<span style="font-size:11px;color:#888;font-style:italic;">Gitea Mail Templates</span>
</td>
</tr>
<!-- footer -->
<tr><td colspan="2" style="padding:16px 28px;border-top:1px solid #ccc;text-align:center;">
<p style="margin:0;font-size:11px;color:#888;font-style:italic;">&copy; <a href="{{AppUrl}}" style="color:#1a1a2e;text-decoration:none;font-weight:600;border-bottom:1px dotted #c4a97d;">{{AppName}}</a> &mdash; Gitea Mail Templates</p>
</td></tr>
<!-- Card -->
<tr>
<!-- left column -->
<td width="64%" class="email-card card-body">
<p class="email-heading">
<span style="float:left;font-size:42px;line-height:1;font-weight:700;color:#1a1a2e;padding-right:8px;padding-top:2px;font-family:Georgia,serif;">D</span>{{.locale.Tr "mail.hi_user_x" (.DisplayName|DotEscape)}}
</p>
<p class="email-text">
{{.locale.Tr "mail.activate_account.text_1" (.DisplayName|DotEscape) AppName}}
</p>
<p class="email-subtext">
{{.locale.Tr "mail.activate_account.text_2" .ActiveCodeLives}}
</p>
{{$activate_url := printf "%suser/activate?code=%s" AppUrl (QueryEscape .Code)}}
<table border="0" cellpadding="0" cellspacing="0" class="email-btn-table">
<tr>
<td>
<a href="{{$activate_url}}" class="email-btn">{{.locale.Tr "mail.activate_account"}} &raquo;</a>
</td>
</tr>
</table>
<table width="100%" cellpadding="0" cellspacing="0" border="0" class="email-link-box">
<tr>
<td style="padding:12px 14px;">
<p class="email-link-label">{{.locale.Tr "mail.link_not_working_do_paste"}}</p>
<p class="email-link-url">{{$activate_url}}</p>
</td>
</tr>
</table>
</td>
<!-- right column / sidebar -->
<td width="36%" style="padding:24px 28px 16px 0;vertical-align:top;border-left:1px solid #ddd;">
<p style="margin:0 0 10px;font-size:10px;color:#888;text-transform:uppercase;letter-spacing:1px;font-family:system-ui,sans-serif;font-weight:700;">Quick Info</p>
<table width="100%" cellpadding="0" cellspacing="0" border="0" style="border-top:1px solid #ddd;border-bottom:1px solid #ddd;">
<tr>
<td style="padding:8px 0;font-size:11px;color:#555;font-family:system-ui,sans-serif;">From<br /><strong style="color:#1a1a2e;">{{AppName}}</strong></td>
</tr>
<tr>
<td style="padding:8px 0;border-top:1px solid #ddd;font-size:11px;color:#555;font-family:system-ui,sans-serif;">Expires<br /><strong style="color:#1a1a2e;">{{.ActiveCodeLives}}</strong></td>
</tr>
</table>
</td>
</tr>
<!-- Footer -->
<tr>
<td colspan="2" class="email-footer">
<p class="email-footer-text">
&copy;
<a href="{{AppUrl}}" class="email-footer-link">{{AppName}}</a>
&mdash; Gitea Mail Templates
</p>
</td>
</tr>
</table>
</center>
</body>
+122 -42
View File
@@ -4,56 +4,136 @@
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<meta name="x-apple-disable-message-reformatting" />
<title>{{.locale.Tr "mail.activate_email.title" (.DisplayName|DotEscape)}}</title>
<title>
{{.locale.Tr "mail.activate_email.title" (.DisplayName|DotEscape)}}
</title>
<style type="text/css">
body,.ExternalClass,.ReadMsgBody{background-color:#ede4d4}
@media only screen and (max-width:480px){
.resp-pad{padding-left:16px!important;padding-right:16px!important}
.resp-col{width:100%!important;display:block!important;border-left:none!important;padding-left:28px!important;padding-right:28px!important;padding-top:0!important}
.resp-btn{display:block!important;width:auto!important;text-align:center!important}
/* Base */
body,.ExternalClass,.ReadMsgBody { background-color:#ede4d4 }
.email-wrap { max-width:600px;margin:20px auto;font-family:Georgia,'Times New Roman',serif;background:#fefdfb;border:1px solid #c4a97d }
/* Header */
.email-logo { display:inline-block;vertical-align:middle;margin-right:8px;border:0;outline:none }
.email-brand { font-size:18px;font-weight:700;color:#1a1a2e;font-variant:small-caps;letter-spacing:2px }
.email-header { padding:24px 28px 16px;border-bottom:3px double #1a1a2e }
/* Card */
.email-card { padding:24px 24px 16px 28px;vertical-align:top;color:#333 }
.email-heading { margin:0 0 16px;font-size:15px;color:#333;line-height:1.7 }
.email-text { margin:0 0 12px;font-size:13px;line-height:1.8;color:#444 }
.email-subtext { margin:0 0 20px;font-size:12px;line-height:1.8;color:#666;font-style:italic }
/* Divider */
.email-divider { height:1px;background:#ddd;margin:0 }
/* Button */
.email-btn-row { padding:0;text-align:left }
.email-btn { display:inline-block;padding:10px 24px;font-size:13px;font-weight:700;color:#fefdfb;text-decoration:none;background:#1a1a2e;border:1px solid #c4a97d;font-variant:small-caps;letter-spacing:1px }
.email-btn-table { margin:0 0 24px }
/* Fallback link */
.email-link-box { border:1px solid #c4a97d;background:#fefdfb }
.email-link-label { margin:0 0 4px;font-size:10px;color:#888;font-style:italic }
.email-link-url { margin:0;font-size:10px;font-family:monospace;color:#1a1a2e;background:#f5f0e8;padding:8px 10px;border:1px solid #ddd;word-break:break-all }
/* Footer */
.email-footer { padding:16px 28px;border-top:1px solid #ccc;text-align:center }
.email-footer-text { margin:0;font-size:11px;color:#888;font-style:italic }
.email-footer-link { color:#1a1a2e;text-decoration:none;font-weight:600;border-bottom:1px dotted #c4a97d }
/* Typography utilities */
.card-body a:not(.email-btn),.card-body a:not(.email-btn):link,.card-body a:not(.email-btn):visited { color:#1a1a2e!important;text-decoration:underline!important }
/* Responsive */
@media only screen and (max-width:480px) {
.email-header { padding-left:16px!important;padding-right:16px!important }
.email-card { width:100%!important;display:block!important;border-left:none!important;padding-left:28px!important;padding-right:28px!important;padding-top:0!important }
.email-btn { display:block!important;width:auto!important;text-align:center!important }
.email-footer { padding-left:16px!important;padding-right:16px!important }
}
</style>
</head>
<body style="margin:0;padding:0;background:#ede4d4;font-family:Georgia,'Times New Roman',serif;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;">
<body style="margin:0;padding:0;background:#ede4d4;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;">
<center style="width:100%;table-layout:fixed;">
<table width="100%" cellpadding="0" cellspacing="0" border="0" style="max-width:600px;background:#fefdfb;border:1px solid #c4a97d;">
<!-- masthead -->
<tr><td colspan="2" class="resp-pad" style="padding:24px 28px 16px;border-bottom:3px double #1a1a2e;">
<img src="{{AppUrl}}assets/img/favicon.png" alt="logo" width="24" height="24" style="display:inline-block;vertical-align:middle;margin-right:8px;border:0;outline:none;" />
<span style="font-size:18px;font-weight:700;color:#1a1a2e;font-variant:small-caps;letter-spacing:2px;">{{AppName}}</span><br />
<span style="font-size:11px;color:#888;font-style:italic;">Gitea Mail Templates</span>
</td></tr>
<!-- two-column body -->
<table width="100%" cellpadding="0" cellspacing="0" border="0" class="email-wrap">
<!-- Floating Title -->
<tr>
<!-- left column -->
<td class="resp-col" width="64%" style="padding:24px 24px 16px 28px;vertical-align:top;">
<p style="margin:0 0 16px;font-size:15px;color:#333;line-height:1.7;">
<span style="float:left;font-size:42px;line-height:1;font-weight:700;color:#1a1a2e;padding-right:8px;padding-top:2px;font-family:Georgia,serif;">D</span>{{.locale.Tr "mail.hi_user_x" (.DisplayName|DotEscape)}}
</p>
<p style="margin:0 0 12px;font-size:13px;line-height:1.8;color:#444;">{{.locale.Tr "mail.activate_email.text" .ActiveCodeLives}}</p>
<p style="margin:0 0 20px;font-size:12px;line-height:1.8;color:#666;font-style:italic;"></p>
{{$activate_url := printf "%suser/activate_email?code=%s&email=%s" AppUrl (QueryEscape .Code) (QueryEscape .Email)}}
<table border="0" cellpadding="0" cellspacing="0" style="margin:0 0 24px;"><tr><td style="padding:10px 24px;background:#1a1a2e;border:1px solid #c4a97d;">
<a href="{{$activate_url}}" class="resp-btn" style="display:inline-block;font-size:13px;font-weight:700;color:#fefdfb;text-decoration:none;font-variant:small-caps;letter-spacing:1px;">Activate Account &raquo;</a>
</td></tr></table>
<table width="100%" cellpadding="0" cellspacing="0" border="0" style="border:1px solid #c4a97d;background:#fefdfb;"><tr><td style="padding:12px 14px;">
<p style="margin:0 0 4px;font-size:10px;color:#888;font-style:italic;">{{.locale.Tr "mail.link_not_working_do_paste"}}</p>
<p style="margin:0;font-size:10px;font-family:monospace;color:#1a1a2e;background:#f5f0e8;padding:8px 10px;border:1px solid #ddd;word-break:break-all;">{{$activate_url}}</p>
</td></tr></table>
</td>
<!-- right column / sidebar -->
<td class="resp-col" width="36%" style="padding:24px 28px 16px 0;vertical-align:top;border-left:1px solid #ddd;">
<p style="margin:0 0 10px;font-size:10px;color:#888;text-transform:uppercase;letter-spacing:1px;font-family:system-ui,sans-serif;font-weight:700;">Quick Info</p>
<table width="100%" cellpadding="0" cellspacing="0" border="0" style="border-top:1px solid #ddd;border-bottom:1px solid #ddd;">
<tr><td style="padding:8px 0;font-size:11px;color:#555;font-family:system-ui,sans-serif;">From<br /><strong style="color:#1a1a2e;">{{AppName}}</strong></td></tr>
<tr><td style="padding:8px 0;border-top:1px solid #ddd;font-size:11px;color:#555;font-family:system-ui,sans-serif;">Expires<br /><strong style="color:#1a1a2e;">{{.ActiveCodeLives}}</strong></td></tr>
</table>
<td colspan="2" class="email-header">
<img src="{{AppUrl}}assets/img/favicon.png" alt="logo" width="24" height="24" class="email-logo" />
<span class="email-brand">{{AppName}}</span>
<br />
<span style="font-size:11px;color:#888;font-style:italic;">Gitea Mail Templates</span>
</td>
</tr>
<!-- footer -->
<tr><td colspan="2" style="padding:16px 28px;border-top:1px solid #ccc;text-align:center;">
<p style="margin:0;font-size:11px;color:#888;font-style:italic;">&copy; <a href="{{AppUrl}}" style="color:#1a1a2e;text-decoration:none;font-weight:600;border-bottom:1px dotted #c4a97d;">{{AppName}}</a> &mdash; Gitea Mail Templates</p>
</td></tr>
<!-- Card -->
<tr>
<!-- left column -->
<td width="64%" class="email-card card-body">
<p class="email-heading">
<span style="float:left;font-size:42px;line-height:1;font-weight:700;color:#1a1a2e;padding-right:8px;padding-top:2px;font-family:Georgia,serif;">D</span>{{.locale.Tr "mail.hi_user_x" (.DisplayName|DotEscape)}}
</p>
<p class="email-text">
{{.locale.Tr "mail.activate_email.text" .ActiveCodeLives}}
</p>
{{$activate_url := printf "%suser/activate_email?code=%s&email=%s" AppUrl (QueryEscape .Code) (QueryEscape .Email)}}
<table border="0" cellpadding="0" cellspacing="0" class="email-btn-table">
<tr>
<td>
<a href="{{$activate_url}}" class="email-btn">{{.locale.Tr "mail.activate_email"}} &raquo;</a>
</td>
</tr>
</table>
<table width="100%" cellpadding="0" cellspacing="0" border="0" class="email-link-box">
<tr>
<td style="padding:12px 14px;">
<p class="email-link-label">{{.locale.Tr "mail.link_not_working_do_paste"}}</p>
<p class="email-link-url">{{$activate_url}}</p>
</td>
</tr>
</table>
</td>
<!-- right column / sidebar -->
<td width="36%" style="padding:24px 28px 16px 0;vertical-align:top;border-left:1px solid #ddd;">
<p style="margin:0 0 10px;font-size:10px;color:#888;text-transform:uppercase;letter-spacing:1px;font-family:system-ui,sans-serif;font-weight:700;">Quick Info</p>
<table width="100%" cellpadding="0" cellspacing="0" border="0" style="border-top:1px solid #ddd;border-bottom:1px solid #ddd;">
<tr>
<td style="padding:8px 0;font-size:11px;color:#555;font-family:system-ui,sans-serif;">From<br /><strong style="color:#1a1a2e;">{{AppName}}</strong></td>
</tr>
<tr>
<td style="padding:8px 0;border-top:1px solid #ddd;font-size:11px;color:#555;font-family:system-ui,sans-serif;">Expires<br /><strong style="color:#1a1a2e;">{{.ActiveCodeLives}}</strong></td>
</tr>
</table>
</td>
</tr>
<!-- Footer -->
<tr>
<td colspan="2" class="email-footer">
<p class="email-footer-text">
&copy;
<a href="{{AppUrl}}" class="email-footer-link">{{AppName}}</a>
&mdash; Gitea Mail Templates
</p>
</td>
</tr>
</table>
</center>
</body>
+123 -43
View File
@@ -4,57 +4,137 @@
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<meta name="x-apple-disable-message-reformatting" />
<title>{{.locale.Tr "mail.register_notify.title" (.DisplayName|DotEscape) AppName}}</title>
<title>
{{.locale.Tr "mail.register_notify.title" (.DisplayName|DotEscape) AppName}}
</title>
<style type="text/css">
body,.ExternalClass,.ReadMsgBody{background-color:#ede4d4}
@media only screen and (max-width:480px){
.resp-pad{padding-left:16px!important;padding-right:16px!important}
.resp-col{width:100%!important;display:block!important;border-left:none!important;padding-left:28px!important;padding-right:28px!important;padding-top:0!important}
.resp-btn{display:block!important;width:auto!important;text-align:center!important}
/* Base */
body,.ExternalClass,.ReadMsgBody { background-color:#ede4d4 }
.email-wrap { max-width:600px;margin:20px auto;font-family:Georgia,'Times New Roman',serif;background:#fefdfb;border:1px solid #c4a97d }
/* Header */
.email-logo { display:inline-block;vertical-align:middle;margin-right:8px;border:0;outline:none }
.email-brand { font-size:18px;font-weight:700;color:#1a1a2e;font-variant:small-caps;letter-spacing:2px }
.email-header { padding:24px 28px 16px;border-bottom:3px double #1a1a2e }
/* Card */
.email-card { padding:24px 24px 16px 28px;vertical-align:top;color:#333 }
.email-heading { margin:0 0 16px;font-size:15px;color:#333;line-height:1.7 }
.email-text { margin:0 0 12px;font-size:13px;line-height:1.8;color:#444 }
.email-subtext { margin:0 0 20px;font-size:12px;line-height:1.8;color:#666;font-style:italic }
/* Divider */
.email-divider { height:1px;background:#ddd;margin:0 }
/* Button */
.email-btn-row { padding:0;text-align:left }
.email-btn { display:inline-block;padding:10px 24px;font-size:13px;font-weight:700;color:#fefdfb;text-decoration:none;background:#1a1a2e;border:1px solid #c4a97d;font-variant:small-caps;letter-spacing:1px }
.email-btn-table { margin:0 0 24px }
/* Fallback link */
.email-link-box { border:1px solid #c4a97d;background:#fefdfb }
.email-link-label { margin:0 0 4px;font-size:10px;color:#888;font-style:italic }
.email-link-url { margin:0;font-size:10px;font-family:monospace;color:#1a1a2e;background:#f5f0e8;padding:8px 10px;border:1px solid #ddd;word-break:break-all }
/* Footer */
.email-footer { padding:16px 28px;border-top:1px solid #ccc;text-align:center }
.email-footer-text { margin:0;font-size:11px;color:#888;font-style:italic }
.email-footer-link { color:#1a1a2e;text-decoration:none;font-weight:600;border-bottom:1px dotted #c4a97d }
/* Typography utilities */
.card-body a:not(.email-btn),.card-body a:not(.email-btn):link,.card-body a:not(.email-btn):visited { color:#1a1a2e!important;text-decoration:underline!important }
/* Responsive */
@media only screen and (max-width:480px) {
.email-header { padding-left:16px!important;padding-right:16px!important }
.email-card { width:100%!important;display:block!important;border-left:none!important;padding-left:28px!important;padding-right:28px!important;padding-top:0!important }
.email-btn { display:block!important;width:auto!important;text-align:center!important }
.email-footer { padding-left:16px!important;padding-right:16px!important }
}
</style>
</head>
<body style="margin:0;padding:0;background:#ede4d4;font-family:Georgia,'Times New Roman',serif;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;">
<body style="margin:0;padding:0;background:#ede4d4;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;">
<center style="width:100%;table-layout:fixed;">
<table width="100%" cellpadding="0" cellspacing="0" border="0" style="max-width:600px;background:#fefdfb;border:1px solid #c4a97d;">
<!-- masthead -->
<tr><td colspan="2" class="resp-pad" style="padding:24px 28px 16px;border-bottom:3px double #1a1a2e;">
<img src="{{AppUrl}}assets/img/favicon.png" alt="logo" width="24" height="24" style="display:inline-block;vertical-align:middle;margin-right:8px;border:0;outline:none;" />
<span style="font-size:18px;font-weight:700;color:#1a1a2e;font-variant:small-caps;letter-spacing:2px;">{{AppName}}</span><br />
<span style="font-size:11px;color:#888;font-style:italic;">Gitea Mail Templates</span>
</td></tr>
<!-- two-column body -->
<table width="100%" cellpadding="0" cellspacing="0" border="0" class="email-wrap">
<!-- Floating Title -->
<tr>
<!-- left column -->
<td class="resp-col" width="64%" style="padding:24px 24px 16px 28px;vertical-align:top;">
<p style="margin:0 0 16px;font-size:15px;color:#333;line-height:1.7;">
<span style="float:left;font-size:42px;line-height:1;font-weight:700;color:#1a1a2e;padding-right:8px;padding-top:2px;font-family:Georgia,serif;">D</span>{{.locale.Tr "mail.hi_user_x" (.DisplayName|DotEscape)}}
</p>
<p style="margin:0 0 12px;font-size:13px;line-height:1.8;color:#444;">{{.locale.Tr "mail.register_notify.text_1" AppName}}</p>
<p style="margin:0 0 20px;font-size:12px;line-height:1.8;color:#666;font-style:italic;">{{.locale.Tr "mail.register_notify.text_2" .Username}}
{{$set_pwd_url := printf "%suser/forgot_password" AppUrl}}
{{.locale.Tr "mail.register_notify.text_3" $set_pwd_url}}</p>
<table border="0" cellpadding="0" cellspacing="0" style="margin:0 0 24px;"><tr><td style="padding:10px 24px;background:#1a1a2e;border:1px solid #c4a97d;">
<a href="{{AppUrl}}user/login" class="resp-btn" style="display:inline-block;font-size:13px;font-weight:700;color:#fefdfb;text-decoration:none;font-variant:small-caps;letter-spacing:1px;">{{.locale.Tr "mail.view_it_on" AppName}} &raquo;</a>
</td></tr></table>
<table width="100%" cellpadding="0" cellspacing="0" border="0" style="border:1px solid #c4a97d;background:#fefdfb;"><tr><td style="padding:12px 14px;">
<p style="margin:0 0 4px;font-size:10px;color:#888;font-style:italic;">{{.locale.Tr "mail.link_not_working_do_paste"}}</p>
<p style="margin:0;font-size:10px;font-family:monospace;color:#1a1a2e;background:#f5f0e8;padding:8px 10px;border:1px solid #ddd;word-break:break-all;">{{AppUrl}}user/login</p>
</td></tr></table>
</td>
<!-- right column / sidebar -->
<td class="resp-col" width="36%" style="padding:24px 28px 16px 0;vertical-align:top;border-left:1px solid #ddd;">
<p style="margin:0 0 10px;font-size:10px;color:#888;text-transform:uppercase;letter-spacing:1px;font-family:system-ui,sans-serif;font-weight:700;">Quick Info</p>
<table width="100%" cellpadding="0" cellspacing="0" border="0" style="border-top:1px solid #ddd;border-bottom:1px solid #ddd;">
<tr><td style="padding:8px 0;font-size:11px;color:#555;font-family:system-ui,sans-serif;">From<br /><strong style="color:#1a1a2e;">{{AppName}}</strong></td></tr>
</table>
<td colspan="2" class="email-header">
<img src="{{AppUrl}}assets/img/favicon.png" alt="logo" width="24" height="24" class="email-logo" />
<span class="email-brand">{{AppName}}</span>
<br />
<span style="font-size:11px;color:#888;font-style:italic;">Gitea Mail Templates</span>
</td>
</tr>
<!-- footer -->
<tr><td colspan="2" style="padding:16px 28px;border-top:1px solid #ccc;text-align:center;">
<p style="margin:0;font-size:11px;color:#888;font-style:italic;">&copy; <a href="{{AppUrl}}" style="color:#1a1a2e;text-decoration:none;font-weight:600;border-bottom:1px dotted #c4a97d;">{{AppName}}</a> &mdash; Gitea Mail Templates</p>
</td></tr>
<!-- Card -->
<tr>
<!-- left column -->
<td width="64%" class="email-card card-body">
<p class="email-heading">
<span style="float:left;font-size:42px;line-height:1;font-weight:700;color:#1a1a2e;padding-right:8px;padding-top:2px;font-family:Georgia,serif;">D</span>{{.locale.Tr "mail.hi_user_x" (.DisplayName|DotEscape)}}
</p>
<p class="email-text">
{{.locale.Tr "mail.register_notify.text_1" AppName}}
</p>
<p class="email-subtext">
{{.locale.Tr "mail.register_notify.text_2" .Username}}
{{$set_pwd_url := printf "%suser/forgot_password" AppUrl}}
{{.locale.Tr "mail.register_notify.text_3" $set_pwd_url}}
</p>
<table border="0" cellpadding="0" cellspacing="0" class="email-btn-table">
<tr>
<td>
<a href="{{AppUrl}}user/login" class="email-btn">{{.locale.Tr "mail.view_it_on" AppName}} &raquo;</a>
</td>
</tr>
</table>
<table width="100%" cellpadding="0" cellspacing="0" border="0" class="email-link-box">
<tr>
<td style="padding:12px 14px;">
<p class="email-link-label">{{.locale.Tr "mail.link_not_working_do_paste"}}</p>
<p class="email-link-url">{{AppUrl}}user/login</p>
</td>
</tr>
</table>
</td>
<!-- right column / sidebar -->
<td width="36%" style="padding:24px 28px 16px 0;vertical-align:top;border-left:1px solid #ddd;">
<p style="margin:0 0 10px;font-size:10px;color:#888;text-transform:uppercase;letter-spacing:1px;font-family:system-ui,sans-serif;font-weight:700;">Quick Info</p>
<table width="100%" cellpadding="0" cellspacing="0" border="0" style="border-top:1px solid #ddd;border-bottom:1px solid #ddd;">
<tr>
<td style="padding:8px 0;font-size:11px;color:#555;font-family:system-ui,sans-serif;">From<br /><strong style="color:#1a1a2e;">{{AppName}}</strong></td>
</tr>
</table>
</td>
</tr>
<!-- Footer -->
<tr>
<td colspan="2" class="email-footer">
<p class="email-footer-text">
&copy;
<a href="{{AppUrl}}" class="email-footer-link">{{AppName}}</a>
&mdash; Gitea Mail Templates
</p>
</td>
</tr>
</table>
</center>
</body>
+122 -42
View File
@@ -4,56 +4,136 @@
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<meta name="x-apple-disable-message-reformatting" />
<title>{{.locale.Tr "mail.reset_password.title" (.DisplayName|DotEscape)}}</title>
<title>
{{.locale.Tr "mail.reset_password.title" (.DisplayName|DotEscape)}}
</title>
<style type="text/css">
body,.ExternalClass,.ReadMsgBody{background-color:#ede4d4}
@media only screen and (max-width:480px){
.resp-pad{padding-left:16px!important;padding-right:16px!important}
.resp-col{width:100%!important;display:block!important;border-left:none!important;padding-left:28px!important;padding-right:28px!important;padding-top:0!important}
.resp-btn{display:block!important;width:auto!important;text-align:center!important}
/* Base */
body,.ExternalClass,.ReadMsgBody { background-color:#ede4d4 }
.email-wrap { max-width:600px;margin:20px auto;font-family:Georgia,'Times New Roman',serif;background:#fefdfb;border:1px solid #c4a97d }
/* Header */
.email-logo { display:inline-block;vertical-align:middle;margin-right:8px;border:0;outline:none }
.email-brand { font-size:18px;font-weight:700;color:#1a1a2e;font-variant:small-caps;letter-spacing:2px }
.email-header { padding:24px 28px 16px;border-bottom:3px double #1a1a2e }
/* Card */
.email-card { padding:24px 24px 16px 28px;vertical-align:top;color:#333 }
.email-heading { margin:0 0 16px;font-size:15px;color:#333;line-height:1.7 }
.email-text { margin:0 0 12px;font-size:13px;line-height:1.8;color:#444 }
.email-subtext { margin:0 0 20px;font-size:12px;line-height:1.8;color:#666;font-style:italic }
/* Divider */
.email-divider { height:1px;background:#ddd;margin:0 }
/* Button */
.email-btn-row { padding:0;text-align:left }
.email-btn { display:inline-block;padding:10px 24px;font-size:13px;font-weight:700;color:#fefdfb;text-decoration:none;background:#1a1a2e;border:1px solid #c4a97d;font-variant:small-caps;letter-spacing:1px }
.email-btn-table { margin:0 0 24px }
/* Fallback link */
.email-link-box { border:1px solid #c4a97d;background:#fefdfb }
.email-link-label { margin:0 0 4px;font-size:10px;color:#888;font-style:italic }
.email-link-url { margin:0;font-size:10px;font-family:monospace;color:#1a1a2e;background:#f5f0e8;padding:8px 10px;border:1px solid #ddd;word-break:break-all }
/* Footer */
.email-footer { padding:16px 28px;border-top:1px solid #ccc;text-align:center }
.email-footer-text { margin:0;font-size:11px;color:#888;font-style:italic }
.email-footer-link { color:#1a1a2e;text-decoration:none;font-weight:600;border-bottom:1px dotted #c4a97d }
/* Typography utilities */
.card-body a:not(.email-btn),.card-body a:not(.email-btn):link,.card-body a:not(.email-btn):visited { color:#1a1a2e!important;text-decoration:underline!important }
/* Responsive */
@media only screen and (max-width:480px) {
.email-header { padding-left:16px!important;padding-right:16px!important }
.email-card { width:100%!important;display:block!important;border-left:none!important;padding-left:28px!important;padding-right:28px!important;padding-top:0!important }
.email-btn { display:block!important;width:auto!important;text-align:center!important }
.email-footer { padding-left:16px!important;padding-right:16px!important }
}
</style>
</head>
<body style="margin:0;padding:0;background:#ede4d4;font-family:Georgia,'Times New Roman',serif;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;">
<body style="margin:0;padding:0;background:#ede4d4;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;">
<center style="width:100%;table-layout:fixed;">
<table width="100%" cellpadding="0" cellspacing="0" border="0" style="max-width:600px;background:#fefdfb;border:1px solid #c4a97d;">
<!-- masthead -->
<tr><td colspan="2" class="resp-pad" style="padding:24px 28px 16px;border-bottom:3px double #1a1a2e;">
<img src="{{AppUrl}}assets/img/favicon.png" alt="logo" width="24" height="24" style="display:inline-block;vertical-align:middle;margin-right:8px;border:0;outline:none;" />
<span style="font-size:18px;font-weight:700;color:#1a1a2e;font-variant:small-caps;letter-spacing:2px;">{{AppName}}</span><br />
<span style="font-size:11px;color:#888;font-style:italic;">Gitea Mail Templates</span>
</td></tr>
<!-- two-column body -->
<table width="100%" cellpadding="0" cellspacing="0" border="0" class="email-wrap">
<!-- Floating Title -->
<tr>
<!-- left column -->
<td class="resp-col" width="64%" style="padding:24px 24px 16px 28px;vertical-align:top;">
<p style="margin:0 0 16px;font-size:15px;color:#333;line-height:1.7;">
<span style="float:left;font-size:42px;line-height:1;font-weight:700;color:#1a1a2e;padding-right:8px;padding-top:2px;font-family:Georgia,serif;">D</span>{{.locale.Tr "mail.hi_user_x" (.DisplayName|DotEscape)}}
</p>
<p style="margin:0 0 12px;font-size:13px;line-height:1.8;color:#444;">{{.locale.Tr "mail.reset_password.text" .ResetPwdCodeLives}}</p>
<p style="margin:0 0 20px;font-size:12px;line-height:1.8;color:#666;font-style:italic;"></p>
{{$recover_url := printf "%suser/recover_account?code=%s" AppUrl (QueryEscape .Code)}}
<table border="0" cellpadding="0" cellspacing="0" style="margin:0 0 24px;"><tr><td style="padding:10px 24px;background:#1a1a2e;border:1px solid #c4a97d;">
<a href="{{$recover_url}}" class="resp-btn" style="display:inline-block;font-size:13px;font-weight:700;color:#fefdfb;text-decoration:none;font-variant:small-caps;letter-spacing:1px;">{{.locale.Tr "mail.view_it_on" AppName}} &raquo;</a>
</td></tr></table>
<table width="100%" cellpadding="0" cellspacing="0" border="0" style="border:1px solid #c4a97d;background:#fefdfb;"><tr><td style="padding:12px 14px;">
<p style="margin:0 0 4px;font-size:10px;color:#888;font-style:italic;">{{.locale.Tr "mail.link_not_working_do_paste"}}</p>
<p style="margin:0;font-size:10px;font-family:monospace;color:#1a1a2e;background:#f5f0e8;padding:8px 10px;border:1px solid #ddd;word-break:break-all;">{{$recover_url}}</p>
</td></tr></table>
</td>
<!-- right column / sidebar -->
<td class="resp-col" width="36%" style="padding:24px 28px 16px 0;vertical-align:top;border-left:1px solid #ddd;">
<p style="margin:0 0 10px;font-size:10px;color:#888;text-transform:uppercase;letter-spacing:1px;font-family:system-ui,sans-serif;font-weight:700;">Quick Info</p>
<table width="100%" cellpadding="0" cellspacing="0" border="0" style="border-top:1px solid #ddd;border-bottom:1px solid #ddd;">
<tr><td style="padding:8px 0;font-size:11px;color:#555;font-family:system-ui,sans-serif;">From<br /><strong style="color:#1a1a2e;">{{AppName}}</strong></td></tr>
<tr><td style="padding:8px 0;border-top:1px solid #ddd;font-size:11px;color:#555;font-family:system-ui,sans-serif;">Expires<br /><strong style="color:#1a1a2e;">{{.ResetPwdCodeLives}}</strong></td></tr>
</table>
<td colspan="2" class="email-header">
<img src="{{AppUrl}}assets/img/favicon.png" alt="logo" width="24" height="24" class="email-logo" />
<span class="email-brand">{{AppName}}</span>
<br />
<span style="font-size:11px;color:#888;font-style:italic;">Gitea Mail Templates</span>
</td>
</tr>
<!-- footer -->
<tr><td colspan="2" style="padding:16px 28px;border-top:1px solid #ccc;text-align:center;">
<p style="margin:0;font-size:11px;color:#888;font-style:italic;">&copy; <a href="{{AppUrl}}" style="color:#1a1a2e;text-decoration:none;font-weight:600;border-bottom:1px dotted #c4a97d;">{{AppName}}</a> &mdash; Gitea Mail Templates</p>
</td></tr>
<!-- Card -->
<tr>
<!-- left column -->
<td width="64%" class="email-card card-body">
<p class="email-heading">
<span style="float:left;font-size:42px;line-height:1;font-weight:700;color:#1a1a2e;padding-right:8px;padding-top:2px;font-family:Georgia,serif;">D</span>{{.locale.Tr "mail.hi_user_x" (.DisplayName|DotEscape)}}
</p>
<p class="email-text">
{{.locale.Tr "mail.reset_password.text" .ResetPwdCodeLives}}
</p>
{{$recover_url := printf "%suser/recover_account?code=%s" AppUrl (QueryEscape .Code)}}
<table border="0" cellpadding="0" cellspacing="0" class="email-btn-table">
<tr>
<td>
<a href="{{$recover_url}}" class="email-btn">{{.locale.Tr "mail.reset_password"}} &raquo;</a>
</td>
</tr>
</table>
<table width="100%" cellpadding="0" cellspacing="0" border="0" class="email-link-box">
<tr>
<td style="padding:12px 14px;">
<p class="email-link-label">{{.locale.Tr "mail.link_not_working_do_paste"}}</p>
<p class="email-link-url">{{$recover_url}}</p>
</td>
</tr>
</table>
</td>
<!-- right column / sidebar -->
<td width="36%" style="padding:24px 28px 16px 0;vertical-align:top;border-left:1px solid #ddd;">
<p style="margin:0 0 10px;font-size:10px;color:#888;text-transform:uppercase;letter-spacing:1px;font-family:system-ui,sans-serif;font-weight:700;">Quick Info</p>
<table width="100%" cellpadding="0" cellspacing="0" border="0" style="border-top:1px solid #ddd;border-bottom:1px solid #ddd;">
<tr>
<td style="padding:8px 0;font-size:11px;color:#555;font-family:system-ui,sans-serif;">From<br /><strong style="color:#1a1a2e;">{{AppName}}</strong></td>
</tr>
<tr>
<td style="padding:8px 0;border-top:1px solid #ddd;font-size:11px;color:#555;font-family:system-ui,sans-serif;">Expires<br /><strong style="color:#1a1a2e;">{{.ResetPwdCodeLives}}</strong></td>
</tr>
</table>
</td>
</tr>
<!-- Footer -->
<tr>
<td colspan="2" class="email-footer">
<p class="email-footer-text">
&copy;
<a href="{{AppUrl}}" class="email-footer-link">{{AppName}}</a>
&mdash; Gitea Mail Templates
</p>
</td>
</tr>
</table>
</center>
</body>