330 lines
6.5 KiB
Plaintext
330 lines
6.5 KiB
Plaintext
page {
|
|
/* Primitive → semantic → component tokens. */
|
|
--primitive-orange-500: #ff6b35;
|
|
--primitive-orange-600: #e85220;
|
|
--primitive-orange-50: #fff5ef;
|
|
--primitive-green-500: #34ad50;
|
|
--primitive-blue-500: #2f91ed;
|
|
--primitive-gray-950: #1f2429;
|
|
--primitive-gray-600: #687078;
|
|
--primitive-gray-200: #e8ebee;
|
|
--primitive-gray-50: #f6f7f8;
|
|
--primitive-white: #ffffff;
|
|
--color-primary: #f05a28;
|
|
--color-primary-pressed: #d94718;
|
|
--color-primary-soft: #fff0e8;
|
|
--color-primary-pale: #fff8f4;
|
|
--color-secondary: #f6a23c;
|
|
--color-success: #2f9b58;
|
|
--color-success-soft: #eaf7ef;
|
|
--color-info: #287fd1;
|
|
--color-info-soft: #ebf4fd;
|
|
--color-warning: #b76e00;
|
|
--color-warning-soft: #fff6dd;
|
|
--color-danger: #b42318;
|
|
--color-text: var(--primitive-gray-950);
|
|
--color-text-secondary: var(--primitive-gray-600);
|
|
--color-text-tertiary: #918a83;
|
|
--color-border: var(--primitive-gray-200);
|
|
--color-divider: #f0f1f2;
|
|
--color-background: var(--primitive-gray-50);
|
|
--color-surface: var(--primitive-white);
|
|
--radius-sm: 16rpx;
|
|
--radius-md: 24rpx;
|
|
--radius-lg: 32rpx;
|
|
--shadow-card: 0 10rpx 32rpx rgba(91, 62, 45, 0.07);
|
|
--shadow-hero: 0 16rpx 38rpx rgba(231, 79, 29, 0.22);
|
|
min-height: 100%;
|
|
color: var(--color-text);
|
|
background: var(--color-background);
|
|
font-family:
|
|
-apple-system, BlinkMacSystemFont, 'Helvetica Neue', 'PingFang SC', 'Microsoft YaHei',
|
|
sans-serif;
|
|
font-size: 32rpx;
|
|
line-height: 1.5;
|
|
}
|
|
|
|
button {
|
|
font: inherit;
|
|
}
|
|
button::after {
|
|
border: 0;
|
|
}
|
|
|
|
.page {
|
|
min-height: 100vh;
|
|
padding: 28rpx 28rpx calc(152rpx + env(safe-area-inset-bottom));
|
|
box-sizing: border-box;
|
|
}
|
|
|
|
.page-heading {
|
|
margin: 8rpx 4rpx 28rpx;
|
|
}
|
|
.page-title,
|
|
.page-subtitle,
|
|
.section-title,
|
|
.section-note {
|
|
display: block;
|
|
}
|
|
.page-title {
|
|
font-size: 44rpx;
|
|
font-weight: 700;
|
|
letter-spacing: 1rpx;
|
|
}
|
|
.page-subtitle {
|
|
margin-top: 8rpx;
|
|
color: var(--color-text-secondary);
|
|
font-size: 28rpx;
|
|
line-height: 1.65;
|
|
}
|
|
|
|
.section-heading {
|
|
display: flex;
|
|
margin: 40rpx 4rpx 20rpx;
|
|
align-items: flex-end;
|
|
justify-content: space-between;
|
|
gap: 20rpx;
|
|
}
|
|
.section-title {
|
|
font-size: 36rpx;
|
|
font-weight: 700;
|
|
}
|
|
.section-note {
|
|
color: var(--color-text-secondary);
|
|
font-size: 26rpx;
|
|
}
|
|
.eyebrow {
|
|
display: block;
|
|
color: var(--color-primary-pressed);
|
|
font-size: 26rpx;
|
|
font-weight: 700;
|
|
}
|
|
|
|
.primary-button,
|
|
.secondary-button {
|
|
display: flex;
|
|
min-height: 96rpx;
|
|
margin: 24rpx 0 0;
|
|
padding: 20rpx 32rpx;
|
|
align-items: center;
|
|
justify-content: center;
|
|
border-radius: 999rpx;
|
|
box-sizing: border-box;
|
|
font-size: 34rpx;
|
|
font-weight: 700;
|
|
line-height: 1.4;
|
|
}
|
|
.primary-button {
|
|
color: #fff;
|
|
background: linear-gradient(135deg, #ff713d, var(--color-primary));
|
|
box-shadow: 0 12rpx 24rpx rgba(240, 90, 40, 0.2);
|
|
}
|
|
.primary-button:active {
|
|
background: var(--color-primary-pressed);
|
|
}
|
|
.secondary-button {
|
|
color: var(--color-primary-pressed);
|
|
background: #fff;
|
|
border: 2rpx solid #f5a083;
|
|
}
|
|
.primary-button[disabled],
|
|
.secondary-button[disabled] {
|
|
opacity: 0.5;
|
|
box-shadow: none;
|
|
}
|
|
|
|
.state-card,
|
|
.form-card,
|
|
.detail-card,
|
|
.detail-summary,
|
|
.success-card,
|
|
.action-card,
|
|
.case-card,
|
|
.application-card {
|
|
border: 2rpx solid var(--color-border);
|
|
border-radius: var(--radius-lg);
|
|
background: var(--color-surface);
|
|
box-shadow: var(--shadow-card);
|
|
}
|
|
.form-card,
|
|
.detail-card,
|
|
.detail-summary,
|
|
.success-card {
|
|
padding: 32rpx;
|
|
}
|
|
.state-card {
|
|
display: flex;
|
|
min-height: 280rpx;
|
|
padding: 36rpx 30rpx;
|
|
flex-direction: column;
|
|
align-items: stretch;
|
|
justify-content: center;
|
|
box-sizing: border-box;
|
|
text-align: center;
|
|
}
|
|
.state-card::before {
|
|
content: '♡';
|
|
margin-bottom: 12rpx;
|
|
color: #f6a07d;
|
|
font-size: 56rpx;
|
|
}
|
|
.state-title {
|
|
font-size: 38rpx;
|
|
font-weight: 700;
|
|
}
|
|
.state-text {
|
|
display: block;
|
|
margin-top: 14rpx;
|
|
color: var(--color-text-secondary);
|
|
line-height: 1.7;
|
|
}
|
|
|
|
.action-card {
|
|
display: flex;
|
|
width: 100%;
|
|
min-height: 144rpx;
|
|
margin: 0 0 20rpx;
|
|
padding: 28rpx 30rpx;
|
|
flex-direction: column;
|
|
align-items: flex-start;
|
|
justify-content: center;
|
|
box-sizing: border-box;
|
|
color: var(--color-text);
|
|
text-align: left;
|
|
}
|
|
.action-card:active,
|
|
.case-card:active,
|
|
.application-card:active {
|
|
transform: scale(0.99);
|
|
opacity: 0.84;
|
|
}
|
|
.action-title {
|
|
font-size: 34rpx;
|
|
font-weight: 700;
|
|
}
|
|
.action-description {
|
|
display: block;
|
|
margin-top: 8rpx;
|
|
color: var(--color-text-secondary);
|
|
font-size: 28rpx;
|
|
line-height: 1.55;
|
|
}
|
|
.card-meta {
|
|
display: block;
|
|
margin-top: 16rpx;
|
|
color: var(--color-text-tertiary);
|
|
font-size: 25rpx;
|
|
}
|
|
|
|
.notice-card {
|
|
margin: 20rpx 0;
|
|
padding: 26rpx 28rpx;
|
|
border: 2rpx solid #f4dfc8;
|
|
border-radius: var(--radius-md);
|
|
background: #fffaf4;
|
|
}
|
|
.notice-title,
|
|
.notice-text {
|
|
display: block;
|
|
}
|
|
.notice-title {
|
|
font-weight: 700;
|
|
}
|
|
.notice-text {
|
|
margin-top: 8rpx;
|
|
color: #6f583f;
|
|
font-size: 28rpx;
|
|
line-height: 1.7;
|
|
}
|
|
|
|
.status-pill {
|
|
display: inline-flex;
|
|
min-height: 48rpx;
|
|
padding: 7rpx 16rpx;
|
|
align-items: center;
|
|
border-radius: 999rpx;
|
|
color: #17653a;
|
|
background: var(--color-success-soft);
|
|
font-size: 25rpx;
|
|
font-weight: 700;
|
|
line-height: 1.2;
|
|
}
|
|
.inline-error,
|
|
.form-message {
|
|
display: block;
|
|
margin: 20rpx 8rpx 0;
|
|
color: var(--color-danger);
|
|
font-size: 28rpx;
|
|
line-height: 1.6;
|
|
}
|
|
|
|
.skeleton-card,
|
|
.skeleton-line {
|
|
overflow: hidden;
|
|
border-radius: var(--radius-md);
|
|
background: linear-gradient(90deg, #eeeae6 25%, #faf8f6 50%, #eeeae6 75%);
|
|
background-size: 200% 100%;
|
|
animation: skeleton 1.4s ease-in-out infinite;
|
|
}
|
|
.skeleton-card {
|
|
height: 170rpx;
|
|
margin-bottom: 20rpx;
|
|
}
|
|
.skeleton-line {
|
|
width: 60%;
|
|
height: 28rpx;
|
|
margin: 12rpx auto;
|
|
}
|
|
.skeleton-line--wide {
|
|
width: 84%;
|
|
height: 44rpx;
|
|
}
|
|
|
|
.brand-card {
|
|
margin-bottom: 24rpx;
|
|
padding: 38rpx 32rpx;
|
|
overflow: hidden;
|
|
border-radius: var(--radius-lg);
|
|
color: #762b12;
|
|
background: linear-gradient(135deg, #fff4ea 0%, #ffd4be 100%);
|
|
box-shadow: 0 14rpx 36rpx rgba(208, 93, 41, 0.13);
|
|
}
|
|
.title {
|
|
display: block;
|
|
margin-top: 10rpx;
|
|
font-size: 46rpx;
|
|
font-weight: 700;
|
|
line-height: 1.3;
|
|
}
|
|
.message {
|
|
display: block;
|
|
margin-top: 14rpx;
|
|
color: #70432e;
|
|
font-size: 29rpx;
|
|
line-height: 1.7;
|
|
}
|
|
|
|
input,
|
|
textarea,
|
|
.picker-field,
|
|
.filter-picker {
|
|
color: var(--color-text);
|
|
background: #fff;
|
|
border-color: #dcd5ce !important;
|
|
}
|
|
|
|
@keyframes skeleton {
|
|
0% {
|
|
background-position: 200% 0;
|
|
}
|
|
100% {
|
|
background-position: -200% 0;
|
|
}
|
|
}
|
|
@media (prefers-reduced-motion: reduce) {
|
|
.skeleton-card,
|
|
.skeleton-line {
|
|
animation: none;
|
|
}
|
|
}
|