newsreport_agent_for_traffic/static/css/email_console.css

392 lines
6.0 KiB
CSS

:root {
--bg: #f5f2ea;
--ink: #17242b;
--ink-soft: #4f646e;
--card: #fffdf7;
--line: #d7cfc2;
--brand: #0f766e;
--brand-dark: #0a4f4a;
--warn: #9a3412;
--ok: #166534;
}
* {
box-sizing: border-box;
}
body {
margin: 0;
color: var(--ink);
background:
radial-gradient(circle at 12% 18%, #ffe5b8 0%, transparent 34%),
radial-gradient(circle at 92% 8%, #b3e4e0 0%, transparent 37%),
linear-gradient(155deg, #f9f5ee 0%, #f1eee7 100%);
font-family: "Source Han Sans SC", "Noto Sans CJK SC", "Microsoft YaHei", sans-serif;
min-height: 100vh;
}
.bg-glow {
position: fixed;
border-radius: 999px;
filter: blur(55px);
opacity: 0.35;
pointer-events: none;
z-index: 0;
}
.glow-a {
width: 240px;
height: 240px;
background: #f0b96a;
top: -80px;
right: 8%;
}
.glow-b {
width: 220px;
height: 220px;
background: #4cb6ac;
bottom: -70px;
left: 5%;
}
.container {
position: relative;
z-index: 1;
width: min(980px, 94vw);
margin: 28px auto 34px;
}
.hero {
border: 1px solid var(--line);
background: linear-gradient(125deg, #fff8e8 0%, #eff8f7 100%);
border-radius: 20px;
padding: 22px;
box-shadow: 0 10px 24px rgba(0, 0, 0, 0.06);
}
.eyebrow {
margin: 0;
font-size: 12px;
letter-spacing: 0.16em;
text-transform: uppercase;
color: var(--brand-dark);
font-weight: 700;
}
h1 {
margin: 8px 0 0;
font-size: clamp(28px, 4.2vw, 40px);
line-height: 1.08;
}
.subtitle {
margin: 10px 0 0;
color: var(--ink-soft);
}
.status-row {
display: flex;
gap: 10px;
flex-wrap: wrap;
margin-top: 16px;
}
.chip {
border-radius: 999px;
border: 1px solid #cfd7d7;
padding: 6px 11px;
background: #ffffffcc;
font-size: 13px;
}
.chip-ok {
border-color: #86efac;
color: var(--ok);
background: #ecfdf3;
}
.chip-warn {
border-color: #fdba74;
color: var(--warn);
background: #fff7ed;
}
.messages {
margin-top: 14px;
}
.msg {
border-radius: 12px;
padding: 11px 13px;
margin-bottom: 10px;
border: 1px solid var(--line);
}
.msg-success {
border-color: #86efac;
background: #ecfdf3;
color: #14532d;
}
.msg-error {
border-color: #fdba74;
background: #fff7ed;
color: #7c2d12;
}
.panel {
margin-top: 14px;
border-radius: 20px;
border: 1px solid var(--line);
background: var(--card);
box-shadow: 0 12px 24px rgba(0, 0, 0, 0.05);
padding: 18px;
}
.section-title {
margin: 0 0 12px;
font-size: 20px;
}
.grid {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 14px;
}
.block {
margin-bottom: 14px;
}
.schedule-enable-row {
margin-bottom: 10px;
}
.switch-row {
display: inline-flex;
align-items: center;
gap: 10px;
font-weight: 700;
margin: 0;
}
.switch-row input[type="checkbox"] {
width: 18px;
height: 18px;
margin: 0;
accent-color: var(--brand);
}
.schedule-grid {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 12px;
}
.schedule-disabled {
opacity: 0.56;
}
label {
display: inline-block;
margin-bottom: 6px;
font-weight: 700;
}
select,
input,
textarea {
width: 100%;
border: 1px solid #c9c6be;
border-radius: 12px;
background: #fff;
color: var(--ink);
font-size: 15px;
padding: 11px 12px;
}
textarea {
resize: vertical;
}
select:focus,
input:focus,
textarea:focus {
outline: none;
border-color: var(--brand);
box-shadow: 0 0 0 4px rgba(15, 118, 110, 0.15);
}
.label-row {
display: flex;
justify-content: space-between;
align-items: center;
gap: 10px;
}
.link-btn {
border: none;
background: transparent;
color: var(--brand-dark);
font-weight: 700;
cursor: pointer;
padding: 4px 0;
}
.recipient-grid {
display: grid;
grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
gap: 9px;
}
.recipient-card {
display: flex;
align-items: center;
gap: 10px;
margin: 0;
font-weight: 600;
border: 1px solid #d8d4cb;
border-radius: 12px;
padding: 9px 11px;
background: linear-gradient(140deg, #ffffff 0%, #fcf8ef 100%);
}
.recipient-card input {
width: auto;
margin: 0;
}
.hint {
margin: 2px 0 0;
color: var(--ink-soft);
}
.flow-hint {
margin: 0;
border: 1px dashed #b7cdc9;
border-radius: 12px;
padding: 10px 12px;
background: #f2fbf9;
color: #2b4d4a;
line-height: 1.5;
}
.recipient-add-form label {
margin-bottom: 8px;
}
.add-row {
display: grid;
grid-template-columns: 1fr auto;
gap: 10px;
}
.managed-list {
margin-top: 12px;
display: grid;
gap: 8px;
}
.managed-item {
border: 1px solid #d8d4cb;
border-radius: 12px;
padding: 10px 12px;
background: linear-gradient(145deg, #ffffff 0%, #f8f5ed 100%);
display: flex;
align-items: center;
justify-content: space-between;
gap: 10px;
}
.managed-item span {
word-break: break-all;
font-weight: 600;
}
.actions {
display: flex;
align-items: center;
justify-content: space-between;
gap: 12px;
margin-top: 4px;
flex-wrap: wrap;
}
.btn-primary {
border: none;
border-radius: 14px;
padding: 12px 20px;
font-size: 15px;
font-weight: 700;
background: linear-gradient(135deg, #0f766e 0%, #0c5f58 100%);
color: #f6fffe;
cursor: pointer;
box-shadow: 0 12px 18px rgba(12, 95, 88, 0.22);
}
.btn-secondary {
border: 1px solid #105f58;
border-radius: 12px;
padding: 10px 16px;
font-size: 14px;
font-weight: 700;
background: #ecfdf9;
color: #0f5f58;
cursor: pointer;
}
.btn-danger {
border: 1px solid #dc2626;
border-radius: 10px;
padding: 7px 12px;
font-size: 13px;
font-weight: 700;
background: #fef2f2;
color: #991b1b;
cursor: pointer;
}
.btn-primary:hover {
transform: translateY(-1px);
}
.counter {
margin: 0;
color: var(--ink-soft);
}
@media (max-width: 760px) {
.container {
width: min(98vw, 98vw);
margin-top: 12px;
}
.hero,
.panel {
border-radius: 14px;
padding: 14px;
}
.grid {
grid-template-columns: 1fr;
}
.add-row {
grid-template-columns: 1fr;
}
.schedule-grid {
grid-template-columns: 1fr;
}
.recipient-grid {
grid-template-columns: 1fr;
}
.managed-item {
flex-direction: column;
align-items: flex-start;
}
}