Files
tuhui/frontend/src/components/Footer.css

241 lines
3.8 KiB
CSS

.footer {
padding: 0 20px 24px;
}
.footer-shell {
max-width: 1400px;
margin: 0 auto;
border-radius: 32px;
overflow: hidden;
background:
radial-gradient(circle at top right, rgba(244, 178, 84, 0.14), transparent 26%),
linear-gradient(180deg, rgba(255, 251, 246, 0.96), rgba(250, 243, 236, 0.96));
border: 1px solid rgba(233, 221, 212, 0.92);
box-shadow: 0 22px 48px rgba(66, 42, 26, 0.08);
}
.footer-main {
display: grid;
grid-template-columns: 1.15fr 0.95fr 0.9fr;
gap: 28px;
padding: 34px 32px 28px;
}
.footer-brand {
display: flex;
flex-direction: column;
gap: 18px;
}
.footer-logo {
display: inline-flex;
align-items: center;
gap: 12px;
width: fit-content;
text-decoration: none;
}
.footer-logo-icon {
width: 46px;
height: 28px;
}
.footer-logo strong {
display: block;
color: #261f19;
font-size: 24px;
}
.footer-logo span {
color: #8b7f73;
font-size: 12px;
}
.footer-brand-text {
margin: 0;
color: #6f645a;
line-height: 1.9;
}
.footer-contact-card {
display: grid;
grid-template-columns: 44px minmax(0, 1fr);
gap: 14px;
padding: 16px;
border-radius: 22px;
background: rgba(255, 255, 255, 0.8);
border: 1px solid rgba(236, 223, 213, 0.94);
}
.footer-contact-card .anticon {
width: 44px;
height: 44px;
border-radius: 16px;
display: grid;
place-items: center;
background: #fff1e9;
color: var(--brand);
font-size: 18px;
}
.footer-contact-card span {
display: block;
color: #8b7f73;
font-size: 12px;
margin-bottom: 4px;
}
.footer-contact-card a {
color: #261f19;
font-size: 16px;
font-weight: 700;
text-decoration: none;
}
.footer-links {
display: grid;
grid-template-columns: repeat(2, minmax(0, 1fr));
gap: 18px;
}
.footer-link-group h4 {
margin: 0 0 12px;
color: #261f19;
font-size: 16px;
}
.footer-link-group {
display: flex;
flex-direction: column;
gap: 10px;
}
.footer-link {
display: inline-flex;
align-items: center;
gap: 10px;
padding: 12px 14px;
border-radius: 18px;
border: 1px solid rgba(236, 223, 213, 0.94);
background: rgba(255, 255, 255, 0.76);
color: #5f5449;
cursor: pointer;
transition: all 0.22s ease;
text-align: left;
}
.footer-link:hover {
border-color: rgba(239, 106, 91, 0.32);
color: var(--brand);
background: var(--brand-soft);
}
.footer-link .anticon {
font-size: 16px;
}
.footer-qr {
display: grid;
gap: 14px;
}
.footer-qr-card {
padding: 18px;
border-radius: 22px;
border: 1px solid rgba(236, 223, 213, 0.94);
background: rgba(255, 255, 255, 0.82);
display: flex;
flex-direction: column;
gap: 10px;
}
.footer-qr-icon {
width: 52px;
height: 52px;
border-radius: 18px;
background: linear-gradient(135deg, #fff1e9 0%, #ffe0d2 100%);
color: var(--brand);
display: grid;
place-items: center;
font-size: 24px;
}
.footer-qr-card strong {
color: #261f19;
font-size: 16px;
}
.footer-qr-card span {
color: #83776b;
font-size: 13px;
line-height: 1.7;
}
.footer-bottom {
display: flex;
flex-direction: column;
gap: 10px;
padding: 18px 32px 24px;
border-top: 1px solid rgba(233, 221, 212, 0.92);
}
.copyright-text,
.copyright-links {
margin: 0;
color: #8a7d70;
font-size: 12px;
line-height: 1.8;
}
.email-link {
color: var(--brand);
margin-left: 4px;
}
.copyright-links {
display: flex;
flex-wrap: wrap;
gap: 10px 14px;
}
.copyright-links a {
color: #7c6f63;
}
@media (max-width: 1100px) {
.footer-main {
grid-template-columns: 1fr;
}
.footer-links {
grid-template-columns: 1fr 1fr;
}
}
@media (max-width: 768px) {
.footer {
padding: 0 12px 16px;
}
.footer-shell {
border-radius: 26px;
}
.footer-main {
padding: 22px 18px 18px;
}
.footer-links {
grid-template-columns: 1fr;
}
.footer-bottom {
padding: 16px 18px 20px;
}
.copyright-links {
flex-direction: column;
gap: 4px;
}
}